MOSFET (Ideal, Switching)
Ideal N-channel MOSFET for switching applications
Libraries:
Simscape /
Electrical /
Semiconductors & Converters
Description
The MOSFET (Ideal, Switching) block models the ideal switching behavior of an n-channel metal-oxide-semiconductor field-effect transistor (MOSFET).
The switching characteristic of an n-channel MOSFET is such that if the gate-source voltage exceeds the specified threshold voltage, the MOSFET is in the on state. Otherwise, the device is in the off state. This figure shows a typical i-v characteristic:
To define the I-V characteristic of the MOSFET, set the On-state behaviour and
switching losses parameter to either Specify constant
values
or Tabulate with temperature and current
.
The Tabulate with temperature and current
option is available only
if you expose the thermal port of the block.
In the on state, the drain-source path behaves like a linear resistor with resistance, Rds_on. However, if you expose the thermal port of the block and parameterize the device using tabulated I-V data, the tabulated resistance is a function of the temperature and current.
In the off state, the drain-source path behaves like a linear resistor with low off-state conductance, Goff.
Then, the defining Simscape™ equations for the block are:
if G > Vth v == i*Rds_on; else v == i/Goff; end
where:
G depends on the value of the Gate control port parameter.
If you set the Gate control port parameter to
PS
, you control the gate terminal through a physical signal. G is the value at the input port G.If you set the Gate control port parameter to
Electrical
, you control the gate terminal through an electrical signal. G is equal to:if v >= 0 G = G.v - S.v; else G = G.v - D.v; end
where G.v is the gate voltage, S.v is the source voltage, and D.v is the drain voltage.
Vth is the threshold voltage.
v is the drain-source voltage.
i is the drain-source current.
Rds_on is the on-state resistance.
Goff is the off-state conductance.
Using the Integral Diode settings, you can include the body diode or an integral protection diode. The integral diode provides a conduction path for reverse current. For example, to provide a path for a high reverse-voltage spike that is generated when a semiconductor device suddenly switches off the voltage supply to an inductive load.
Set the Integral protection diode parameter based on your goal.
Goals | Value to Select | Integral Protection Diode | |
---|---|---|---|
Do not include protection. | None | None | |
Include protection. | Prioritize simulation speed. | Diode with no dynamics | The Diode block |
Prioritize model fidelity by precisely specifying reverse-mode charge dynamics. | Diode with charge dynamics | The dynamic model of the Diode block |
Model Gate Port and Thermal Effects
You can choose between physical or electrical ports to control the gate terminal and expose
the thermal port to model the heat that switching events and conduction losses
generate. To choose the gate control port, set the Gate control
port parameter to PS
or
Electrical
. To expose the thermal port, set the
Modeling option parameter to either No
thermal port
or Show thermal
port
.
For more information about using thermal ports, see Simulating Thermal Effects in Semiconductors.
Thermal Losses
The figure shows an idealized representation of the output voltage, Vout, and the output current, Iout, of the semiconductor device. The interval shown includes the entire nth switching cycle, during which the block turns off and then on.
Switching losses are one of the main sources of thermal loss in semiconductors. During each on-off switching transition, the MOSFET parasitics store and then dissipate energy.
Switching losses depend on the off-state voltage and the on-state current. When a switching device is turned on, the power losses depend on the initial off-state voltage across the device and the final on-state current once the device is fully in its on state. Similarly, when a switching device is turned off, the power losses depend on the initial on-state current through the device and the final off-state voltage across the device when in the fully off state.
In this block, switching losses are applied by stepping up the junction temperature with a value equal to the switching loss divided by the total thermal mass at the junction. The Switch-on loss, Eon(Tj,Ids) and Switch-on loss, Eoff(Tj,Ids) parameter values set the sizes of the switching losses and they are either fixed or dependent on junction temperature and drain-source current. In both cases, losses are scaled by the off-state voltage prior to the latest device turn-on event.
Note
As the final current after a switching event is not known during the simulation, the block records the on-state current at the point that the device is commanded off. Similarly, the block records the off-state voltage at the point that the device is commanded on. For this reason, the simlog does not report the switching losses to the thermal network until one switching cycle later.
For all ideal switching devices, the switching losses are reported in the simlog as
lastTurnOffLoss
and lastTurnOnLoss
and recorded as
a pulse with amplitude equal to the energy loss. If you use a script to sum the total
losses over a defined simulation period, you must sum the pulse values at each pulse
rising edge. Alternatively, you can use the ee_getPowerLossSummary
and ee_getPowerLossTimeSeries
functions to extract conduction and switching
losses from logged data.
Note that the power_dissipated
variable in the simlog does not
include switching losses as they are modeled as instantaneous events. The
power_dissipated
variable therefore just reports instantaneous
on-state losses.
Reverse recovery loss is one of the main sources of thermal loss in diodes. The diode dissipates energy every time it turns off, from its conducting state to the open-circuit state.
In this block, reverse recovery losses are applied by stepping up the junction temperature with a value equal to the reverse recovery loss divided by the total thermal mass at the junction.
If you set the Reverse recovery loss model parameter to Tabulated loss
, the value of the Reverse recovery loss table, Erec(Tj, If) parameter specifies the dissipated energy in function of the junction temperature and the forward current just before the switching event. The off-state voltage linearly scales the losses prior to the latest device turn-off event. The table uses delayed values for current and voltage. To ensure the value used in the lookup table is close enough to the instantaneous value, set the Delay for voltage and current tabulation parameter to a value that is lower than the fastest switching period.
If you set the Reverse recovery loss model parameter to
Fixed loss
, the value of the Reverse recovery
loss parameter specifies the dissipated energy in each turn-off event,
regardless of the state of the diode before or after the switching event.
Note
The lastReverseRecoveryLoss
variable in the simlog includes the
reverse recovery losses as a pulse with amplitude equal to the energy loss. If you use a
script to sum the total losses over a defined simulation period, you must sum the pulse
values at each pulse rising edge. Alternatively, you can use the ee_getPowerLossSummary
and ee_getPowerLossTimeSeries
functions to extract conduction and switching
losses from logged data.
Note that the power_dissipated
variable in the simlog does not
include switching losses as they are modeled as instantaneous events. The
power_dissipated
variable reports instantaneous on-state
losses.
Predefined Parameterization
There are multiple available built-in parameterizations for the MOSFET (Ideal, Switching) block.
This pre-parameterization data allows you to set up the block to represent components by specific suppliers. The parameterizations of these MOSFETs match the manufacturer data sheets. To load a predefined parameterization, double-click the MOSFET (Ideal, Switching) block, click the <click to select> hyperlink of the Selected part parameter and, in the Block Parameterization Manager window, select the part you want to use from the list of available components.
Note
The predefined parameterizations of Simscape components use available data sources for the parameter values. Engineering judgement and simplifying assumptions are used to fill in for missing data. As a result, expect deviations between simulated and actual physical behavior. To ensure accuracy, validate the simulated behavior against experimental data and refine component models as necessary.
For more information about pre-parameterization and for a list of the available components, see List of Pre-Parameterized Components.
Variables
To set the priority and initial target values for the block variables prior to simulation, use the Initial Targets section in the block dialog box or Property Inspector. For more information, see Set Priority and Initial Target for Block Variables.
Nominal values provide a way to specify the expected magnitude of a variable in a model. Using system scaling based on nominal values increases the simulation robustness. Nominal values can come from different sources, one of which is the Nominal Values section in the block dialog box or Property Inspector. For more information, see System Scaling by Nominal Values.
Examples
Ports
The figure shows the block port names.