Main Content

Choose the Right Block to Model Semiconductor Devices

Simscape™ Electrical™ often provides more than one block that can model the same type of semiconductor device. For example, the MOSFET (Ideal, Switching) and N-Channel MOSFET blocks both model an n-channel metal-oxide-semiconductor field-effect transistor (MOSFET). It is important to use a block that has sufficient modeling detail for the engineering design questions that you plan to answer using your model. It is also important not to use more detail than you need because this slows down simulation and makes the model more complex to parameterize. The right block to use therefore depends on the level of complexity that you need to meet your design goals. This guide shows you how to:

  1. Determine the level of fidelity that you need.

  2. Select the right block to model your semiconductor device at that level of fidelity.

  3. Parameterize the block.

Determine Fidelity Level

Simscape Electrical supports different fidelity levels for modeling semiconductor devices. You can define three levels of model fidelity:

  • Level 1 — Ideal switching device models with no thermal model

  • Level 2 — Ideal switching device models with tabulated switching losses and a thermal model

  • Level 3 — Physics-based electrothermal models

Each successive level requires increasing modeling complexity which restricts the design space that you can practically explore or optimize against. It is important to develop your model with the right level of complexity. You therefore need to use a different fidelity level depending on where you are in the design process. This table lists common design goals and the typical corresponding modeling assumptions at the three levels of fidelity. Use this table to determine the level of fidelity you need.

Fidelity Level


Modeling Assumptions

Level 1
  • Design inner-loop current controllers like PWM pattern or feedback controllers

  • Validate system behavior including other parts of the system like the motor and mechanical load or an electrical load

  • Assess the impact of the switching PWM pattern on electrical and mechanical harmonics

  • Optimize systems in which you deploy power electronics

  • Piecewise linear on-state I-V curve with a limited number of points

  • No charge model

  • Current averaging — This assumption is optional but particularly useful for optimizing systems in which you deploy power electronics.

  • No thermal model

Level 2
  • Determine semiconductor device losses as part of the overall efficiency calculation

  • Minimize semiconductor device losses by making adjustments to the PWM pattern

  • Calculate thermal losses for heat management or cooling system design

  • Select manufactured semiconductor device components

  • Confirm semiconductor devices stay within the operating envelope

  • Tabulated on-state I-V curve

  • No charge model

  • Tabulated switching losses

  • Junction and case thermal model

Level 3
  • Design gate drives

  • Analyze circuit transients down to device time constraints; for example, to confirm a suitable blanking time to prevent shoot through

  • Design circuits that use a semiconductor device over a range of on-state operating points; for example, in RF power amplifiers or resonant converters

  • Tabulated I-V curve or physics-based nonlinear model

  • Tabulated charge model or physics-based charge model

  • Junction and case thermal model

Choose Right Block

This table shows the blocks that you can use to represent different semiconductor device types at each level of fidelity. Use this table to select the right block to model your semiconductor device and set important parameters values.

Device Type

Level 1

Level 2

Level 3

  • Diode

    • Set Modeling option to No thermal port

    • Set Diode model to Piecewise Linear

    • Set Parametrization to Fixed or zero junction capacitance

    • Set Junction capacitance to zero

  • Diode

    • Set Modeling option to Show thermal port

    • Set Fidelity level to Ideal switching

  • Diode

    • Set Diode model to Exponential or Tabulated

    • Define nonzero Junction capacitance or enable charge dynamics

Bipolar transistorNot supportedNot supported
  • GTO — Set Modeling option to No thermal port

Not supported
JFETNot supportedNot supported
Composite and complete converter circuits
Not supportedNot supported


The Diode block parameterized at Level 1 is equivalent to the Diode block in the Simscape Foundation Library.

You can use a Gate Driver or Half-Bridge Driver block to drive a semiconductor block at any level of fidelity. With some blocks at Level 1 and Level 2, like the MOSFET (Ideal, Switching) block, you can choose to use a physical signal port for the gate terminal which eliminates the need for an electrical model of the gate driver. However, the best practice is to use an electrical port even at lower fidelities. This allows you to easily change between fidelity levels by changing the block that models the semiconductor device that you are driving without having to change the gate driver.

Parameterize Block

Once you have selected the right block, the next step is to parameterize it. Parameterization of semiconductor devices can be challenging, depending on what information the manufacturer provides. Datasheets are a good source for Level 1 and Level 2 modeling but are deficient for Level 3 modeling because they do not provide full charge information. For example, in the case of MOSFETs, you need to tabulate the gate-source charge in terms of gate-source voltage and drain-source voltage but datasheets often give the gate-source charge in terms of the gate-source voltage only.

Some manufacturers provide Level 2 parameterizations stored as an XML file which is essentially an electronic datasheet. You can import some of these files directly into Simscape using the ee_importDeviceParameters function.

SPICE subcircuits usually provide a Level 3 model but Simscape Electrical software cannot use these subcircuits directly. If you have a SPICE subcircuit that you want to simulate in Simscape Electrical software, choose one of these options:

  • Map the subcircuit to a table-based I-V and charge parameterization using the ee.spice.semiconductorSubcircuit2lookup function. This method is numerically more reliable and usually the better choice.

  • Convert the subcircuit to an equivalent Simscape component using the subcircuit2ssc function. The devices that you can model using the SPICE-Imported MOSFET block were converted to an equivalent Simscape component using this method. The main drawback of this method is that numerical simulation issues can arise as the original netlist is usually optimized for a specific SPICE simulation engine.

See Also

Related Topics