Reconstruct SIC MOSFET switching losses out of datasheet - simscape model has a big deviation
Show older comments
Hello!
I'm trying to calculate switching losses of sic mosfets with a simscape model using the N-Channel MOSFET Block from the simscape foundation library.
I've already tried to do that with several sic mosfets, but im always getting switching losses (Eon and Eoff) that are too low. Right now i'm using the datasheet specifications from the sic module SKM500MB120SC.

I parameterized the MOSFET using the datasheet (R_DS(on), currents/voltages for R_DS(on), Capacitances etc.). Im controlling the MOSFET using the simscape driver, using the gate driver parameters given in the datasheet.
Now, the idea is to meet the conditions that are listed for Eon and Eoff (second column):

First of all, measuring the delay/rise/fall times according to a semikron application node, these are already not identical with the datasheet specifications.
The times, in seconds, extracted out of the simulation:
- Turn On Delay Time: 3.18e-09
- Rise Time: 1.58e-08
- Turn Off Delay Time: 5.00e-08
- Fall Time: 3.50e-08
(1) Despite that - looking at Eon, the condition di/dton = 9,8 kA/us is met (using only a resistor (resistance = Vdd / Id = 4 ohm)). -> Looking at the slope when the current rises from 0 A to 150 A di/dt is somewhat around 9.5 kA/us. Im not sure, but shouldnt fulfilling the slope of the current already give some good approximations of the datasheet value?

(2) Thinking of the rise time, where the most loss is generated (in comparision to the turn on delay time, where the product of current and voltage is nearly zero), my rise time is almost two times bigger than the one given in the datasheet. I'd expect, according to that, my Eon should be, if any, larger than the one in the datasheet, which is not the case:
Using ee_getPowerLossSummary(simulation.mos_simlog.N_Channel_MOSFET,x1x2) (and multiplicating it with the pulseduration x2-x1) gives me
- Eon: 6.759036e-04
- Eoff: 2.869943e-04
x1 and x2 are chosen as stated by an application node from Semikron.
Even using different ranges of x1 and x2, the result is still not in the near of the value in the datasheet.
Looking at the 2 things i mentioned in (1) and (2), i have no ideas how i could adjust the model. Im not expecting exact accordance from datasheet and model, but atleast somewhat in the range of 75-125+% of the datasheet value. (More is less of a problem than less...)
- Modifying values that directly affect the rise time (gate resistance, capacitances) can give better results - like adding 3 or 4 ohms to the gate resistor, gives me an Eon and Eoff in the range of the datasheet value. The rise time then is - of course - much bigger (70 ns) - but so is the Eon value (2,1 mJ).
- If also tried different circuit layouts to measure the losses (as given in other application nodes from other manufacturers), but sadly they often gave the same poor approximation.
- I tried varying variables that are not given in the datasheet (but needed in the model) - like Rsource and Rdrain - but they dont affect Eon/off that much.
- Using other gate blocks or doing my own "gate driver" didn't make a difference.
- Including gate driver losses by adding them to the losses given by the "getpowerlosssummary"-loss didn't help.
I also know that the SKM500MB120SC is an module and not a single mosfet - but shouldnt the things specified in the datasheet be valid for a single mosfet in the module?
I've attached the model i'm using to calculate everything, including a matlabfile to init, run, and calc the loss given a predefined range (bottom of the script). I hope that helps answering the question: how could i modify the model to fit the datasheet values? What am i doing wrong? Or is the model simply too "plain" to calculate a value from the datasheet that was measured "with hardware" in "real"?
Thanks in advance!
Stay healthy :)
Accepted Answer
More Answers (1)
Richard Scott
on 5 Apr 2023
Edited: Richard Scott
on 5 Apr 2023
1 vote
Adding to Rick's answer:
The datasheet values for the Semikron devices (and most manufacturers) will have been derived using the IEC 60747-x standards, which specify turn-on and turn-off characteristics are measured using an inductive load and a double-pulse test.
In your simulation, you are using a resistive load (which is more akin to MIL-STD tests, which are still used for testing small automotive switches). The current through the resistive load will increase in line with the MOSFET turn-on, as the two act as a variable resistor in combination. Conversely, an inductive load will drive the current higher faster, as it has stored energy. This will result in a higher VI product at any instant during turn-on and -off, and higher switching losses.
Categories
Find more on Converters (High Power) in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!


