PDF

Reverse Recovery of a PIN Diode
This tutorial simulates the turn-off transient (reverse recovery) of a simple PIN diode with an inductive load, loosely based on the book “Fundamentals of Power Semiconductor Devices” by B.J. Baliga (p. 256, 2008 edition; Ref. 1). Unlike the book, which assumes an initial constant current ramp rate followed by an abrupt bottoming out of the device voltage at the supplied reverse voltage, this model uses the circuit capability of COMSOL Multiphysics to simulate the inductive load with a flyback diode in a more realistic fashion. The resulting time evolutions of the current, voltages, and carrier concentrations compare well to those shown in the book (Figs. 5.42–5.45).
Introduction
The PIN diode structure is an important building block for power electronic circuits. The process of switching the PIN rectifier from the on-state to the blocking state is referred to as the reverse recovery. The diode remains in the forward-biased mode for a short period of time after the applied voltage is switched, due to the large amount of stored charge carriers in the drift region during the on-state. This tutorial combines a simple 1D model of a PIN diode with a circuit of a voltage source, an inductive load, and a flyback diode to simulate the time evolutions of the current, voltages, and carrier concentrations.
Model Definition
The model simulates a diode of 80 μm length and 1 mm cross-section area. Important effects such as the Fletcher mobility model, Slotboom band gap narrowing, and Shockley-Read-Hall recombination are included. The device is grounded at the right endpoint and connected to the circuit at the left endpoint.
The circuit contains two voltage sources in parallel, but only one is activated at a time in the study steps. One voltage source is for the on-state and the other for the switching process. A Global Equation is used in the circuit to improve numerical stability, in the case when the time derivative of a dependent variable is used in the definition of a variable.
The Events interface is used to mark the abrupt changes in the slope of the applied voltage, so that the time-dependent solver can take appropriate actions.
The Semiconductor Equilibrium study step is used for the initial condition. Then the steady on-state is obtained by using a Stationary study step with the Auxiliary sweep, ramping the applied voltage from a small value up to the on-state voltage. Finally a Time Dependent study step is used to simulate the reverse recovery, first maintaining the applied voltage at the on-state value for 10 ns, then ramping it down to the reverse voltage in the next 10 ns, and then holding it there for the next 500 ns. The time axis is shifted so that at time = 0, the applied voltage has just been ramped down to the full reverse voltage.
Results and Discussion
Figure 1, Figure 2, and Figure 3 show the hole concentration at a few selected time points, the time evolution of the applied voltage and the device voltage, and the time evolution of the current, respectively. They exhibit the typical behavior as expected from the inductive load and the dissipation of the stored charge carriers in the drift region. The figures compare well with the corresponding figures in Ref. 1.
Figure 1: Hole concentration at a few selected time points.
Figure 2: Time evolution of the applied voltage and the device voltage.
Figure 3: Time evolution of the current.
Reference
1. B.J. Baliga, Fundamentals of Power Semiconductor Devices, 2008 ed., Springer, pp. 242–243.
Application Library path: Semiconductor_Module/Device_Building_Blocks/pin_reverse_recovery
Modeling Instructions
From the File menu, choose New.
New
In the New window, click  Model Wizard.
Model Wizard
1
In the Model Wizard window, click  1D.
2
In the Select Physics tree, select Semiconductor>Semiconductor (semi).
3
Click Add.
4
In the Select Physics tree, select AC/DC>Electrical Circuit (cir).
5
Click Add.
Add an Events interface to capture the abrupt change in the slope of the applied voltage.
6
In the Select Physics tree, select Mathematics>ODE and DAE Interfaces>Events (ev).
7
Click Add.
8
Click  Study.
The Semiconductor Equilibrium study can be used to obtain a good initial condition.
9
In the Select Study tree, select Preset Studies for Some Physics Interfaces>Semiconductor Equilibrium.
10
Geometry 1
The Model Wizard exits and starts the COMSOL Desktop at the Geometry node. We can set the length scale here right away.
1
In the Model Builder window, under Component 1 (comp1) click Geometry 1.
2
In the Settings window for Geometry, locate the Units section.
3
From the Length unit list, choose µm.
Import global parameters from a text file.
Global Definitions
Parameters 1
1
In the Model Builder window, under Global Definitions click Parameters 1.
2
In the Settings window for Parameters, locate the Parameters section.
3
Click  Load from File.
4
Build a simple 1D line interval of 80 um long.
Geometry 1
Interval 1 (i1)
1
In the Model Builder window, under Component 1 (comp1) right-click Geometry 1 and choose Interval.
2
In the Settings window for Interval, locate the Interval section.
3
Create a ramp function for turning off the bias voltage.
Global Definitions
Ramp 1 (rm1)
1
In the Home toolbar, click  Functions and choose Global>Ramp.
2
In the Settings window for Ramp, locate the Parameters section.
3
Select the Cutoff check box.
Add silicon material.
Add Material
1
In the Home toolbar, click  Add Material to open the Add Material window.
2
Go to the Add Material window.
3
In the tree, select Semiconductors>Si - Silicon.
4
Click Add to Component in the window toolbar.
5
In the Home toolbar, click  Add Material to close the Add Material window.
Materials
Si - Silicon (mat1)
Enter the cross-section area for the 1D model.
Semiconductor (semi)
1
In the Model Builder window, under Component 1 (comp1) click Semiconductor (semi).
2
In the Settings window for Semiconductor, locate the Cross-Section Area section.
3
In the A text field, type area.
Add a mobility model to account for the carrier-carrier scattering effect.
Semiconductor Material Model 1
In the Model Builder window, under Component 1 (comp1)>Semiconductor (semi) click Semiconductor Material Model 1.
Fletcher Mobility Model (C) 1
In the Physics toolbar, click  Attributes and choose Fletcher Mobility Model (C).
Note that the above step merely makes the mobility model available. To use it, we have to select it in the drop down menus in the Semiconductor Material Model node.
Semiconductor Material Model 1
1
In the Model Builder window, click Semiconductor Material Model 1.
2
In the Settings window for Semiconductor Material Model, locate the Mobility Model section.
3
From the μn list, choose Electron mobility, Fletcher (semi/smm1/mmfl1).
4
From the μp list, choose Hole mobility, Fletcher (semi/smm1/mmfl1).
Add band gap narrowing effect.
5
Click to expand the Band Gap Narrowing section. From the Band gap narrowing list, choose Slotboom.
Set up doping - first the background doping.
Analytic Doping Model 1
1
In the Physics toolbar, click  Domains and choose Analytic Doping Model.
2
In the Settings window for Analytic Doping Model, locate the Domain Selection section.
3
From the Selection list, choose All domains.
4
Locate the Impurity section. From the Impurity type list, choose Donor doping (n-type).
5
In the ND0 text field, type 5e13[1/cm^3].
Then the P and N doping.
Geometric Doping Model 1
1
In the Physics toolbar, click  Domains and choose Geometric Doping Model.
2
In the Settings window for Geometric Doping Model, locate the Domain Selection section.
3
From the Selection list, choose All domains.
4
Locate the Impurity section. In the NA0 text field, type 1e19[1/cm^3].
5
Locate the Profile section. In the dj text field, type 10[um].
6
From the Nb list, choose Donor concentration (semi/adm1).
Boundary Selection for Doping Profile 1
1
In the Model Builder window, expand the Geometric Doping Model 1 node, then click Boundary Selection for Doping Profile 1.
2
Geometric Doping Model 2
1
In the Physics toolbar, click  Domains and choose Geometric Doping Model.
2
In the Settings window for Geometric Doping Model, locate the Domain Selection section.
3
From the Selection list, choose All domains.
4
Locate the Impurity section. From the Impurity type list, choose Donor doping (n-type).
5
In the ND0 text field, type 1e19[1/cm^3].
6
Locate the Profile section. In the dj text field, type 10[um].
7
From the Nb list, choose Donor concentration (semi/adm1).
Boundary Selection for Doping Profile 1
1
In the Model Builder window, expand the Geometric Doping Model 2 node, then click Boundary Selection for Doping Profile 1.
2
Add ohmic contacts.
Metal Contact 1
1
In the Physics toolbar, click  Boundaries and choose Metal Contact.
2
Metal Contact 2
1
In the Physics toolbar, click  Boundaries and choose Metal Contact.
2
3
In the Settings window for Metal Contact, locate the Terminal section.
4
In the V0 text field, type V_circ.
The variable V_circ is not yet defined and turns to yellow colored. It will be defined later in the Electrical Circuit interface.
Add SRH recombination.
Trap-Assisted Recombination 1
1
In the Physics toolbar, click  Domains and choose Trap-Assisted Recombination.
2
In the Settings window for Trap-Assisted Recombination, locate the Domain Selection section.
3
From the Selection list, choose All domains.
4
Locate the Shockley-Read-Hall Recombination section. From the τn list, choose User defined. In the associated text field, type 1[us].
5
From the τp list, choose User defined. In the associated text field, type 1[us].
Now set up the electrical circuit - first a "current source" representing the 1D PIN diode model. The bidirectional coupling between the electrical circuit and the semiconductor model is done in two parts: 1) The current of the current source is specified by the terminal current from the Semiconductor interface. 2) The voltage of the semiconductor metal contact is specified by the voltage of the current source.
Electrical Circuit (cir)
In the Model Builder window, under Component 1 (comp1) click Electrical Circuit (cir).
Current Source 1 (I1)
1
In the Electrical Circuit toolbar, click  Current Source.
2
In the Settings window for Current Source, locate the Node Connections section.
3
4
Locate the Device Parameters section. In the isrc text field, type semi.I0_2.
This completes part 1).
For part 2), turn on Advanced Physics Options to make Global Equation available. In certain situations where the time derivative of a dependent variable is used in the definition of a variable, it helps to create an intermediate variable using a Global Equation, as shown in the following steps.
5
Click the  Show More Options button in the Model Builder toolbar.
6
In the Show More Options dialog box, in the tree, select the check box for the node Physics>Equation-Based Contributions.
7
Global Equations 1
1
In the Electrical Circuit toolbar, click  Global Equations.
2
In the Settings window for Global Equations, locate the Global Equations section.
3
4
Locate the Units section. Click  Select Dependent Variable Quantity.
5
In the Physical Quantity dialog box, type potential in the text field.
6
Click  Filter.
7
In the tree, select Electromagnetics>Electric potential (V).
8
The Global Equation makes a copy of the voltage of the current source, cir.I1_v, into the intermediate variable V_circ, which has been used to specify the semiconductor metal contact voltage in a previous step. This completes part 2).
Add the load inductor and a generic flyback diode.
Inductor 1 (L1)
1
In the Electrical Circuit toolbar, click  Inductor.
2
In the Settings window for Inductor, locate the Node Connections section.
3
4
Locate the Device Parameters section. In the L text field, type L0.
Diode 1 (D1)
1
In the Electrical Circuit toolbar, click  Diode.
2
In the Settings window for Diode, locate the Node Connections section.
3
Add two voltage sources, one for the initial steady state and the other for the time-dependent study.
Voltage Source 1 (V1)
1
In the Electrical Circuit toolbar, click  Voltage Source.
2
In the Settings window for Voltage Source, locate the Node Connections section.
3
4
Locate the Device Parameters section. In the vsrc text field, type V0.
Voltage Source 2 (V2)
1
In the Electrical Circuit toolbar, click  Voltage Source.
2
In the Settings window for Voltage Source, locate the Node Connections section.
3
4
Locate the Device Parameters section. In the vsrc text field, type Von+(Voff-Von)*rm1((t+10[ns])/10[ns]).
The voltage ramp is shifted 10 ns earlier so that at time = 0, the applied voltage is just ramped down to the full reverse voltage, Voff.
Add two events to mark the abrupt changes in the slope of the applied voltage, so that the time-dependent solver can take appropriate actions.
Events (ev)
In the Model Builder window, under Component 1 (comp1) click Events (ev).
Explicit Event 1
1
In the Physics toolbar, click  Global and choose Explicit Event.
2
In the Settings window for Explicit Event, locate the Event Timings section.
3
In the ti text field, type -10[ns].
Explicit Event 2
In the Physics toolbar, click  Global and choose Explicit Event.
Exclude the Events interface and the 2nd voltage source from the initial study step.
Study 1
Step 1: Semiconductor Equilibrium
1
In the Model Builder window, under Study 1 click Step 1: Semiconductor Equilibrium.
2
In the Settings window for Semiconductor Equilibrium, locate the Physics and Variables Selection section.
3
In the table, clear the Solve for check box for Events (ev).
4
Select the Modify model configuration for study step check box.
5
In the Physics and variables selection tree, select Component 1 (comp1)>Electrical Circuit (cir)>Voltage Source 2 (V2).
6
Click  Disable.
Add a stationary study step to ramp the applied voltage from a small value up to the on-state voltage Von. Exclude the Events interface and the 2nd voltage source from this study.
Stationary
1
In the Study toolbar, click  Study Steps and choose Stationary>Stationary.
2
In the Settings window for Stationary, locate the Physics and Variables Selection section.
3
In the table, clear the Solve for check box for Events (ev).
4
Select the Modify model configuration for study step check box.
5
In the Physics and variables selection tree, select Component 1 (comp1)>Electrical Circuit (cir)>Voltage Source 2 (V2).
6
Click  Disable.
7
Click to expand the Study Extensions section. Select the Auxiliary sweep check box.
8
9
10
From the Run continuation for list, choose No parameter.
11
From the Reuse solution from previous step list, choose Yes.
Add a time dependent study step using the 2nd voltage source to start the applied voltage at the on state voltage Von for 10 ns, ramp it down to the reverse voltage Voff in the next 10 ns, and keep it at Voff for 500 ns afterward. Set the tolerance to 1e-5 for better accuracy.
Time Dependent
1
In the Study toolbar, click  Study Steps and choose Time Dependent>Time Dependent.
2
In the Settings window for Time Dependent, locate the Physics and Variables Selection section.
3
Select the Modify model configuration for study step check box.
4
In the Physics and variables selection tree, select Component 1 (comp1)>Electrical Circuit (cir)>Voltage Source 1 (V1).
5
Click  Disable.
6
Locate the Study Settings section. From the Time unit list, choose ns.
7
In the Output times text field, type range(-20,1,0) range(10,10,500).
8
From the Tolerance list, choose User controlled.
9
In the Relative tolerance text field, type 1e-5.
For study steps 2 and 3, where the solution from the previous study step is used as the initial condition, we can use Initial value based scaling of the dependent variables to obtain better error estimate and better convergence.
Solution 1 (sol1)
1
In the Study toolbar, click  Show Default Solver.
2
In the Model Builder window, expand the Solution 1 (sol1) node, then click Dependent Variables 2.
3
In the Settings window for Dependent Variables, locate the Scaling section.
4
From the Method list, choose Initial value based.
5
In the Model Builder window, click Dependent Variables 3.
6
In the Settings window for Dependent Variables, locate the Scaling section.
7
From the Method list, choose Initial value based.
8
In the Study toolbar, click  Compute.
Plot the hole concentration at a few selected time points to see its evolution.
Results
Hole Concentration
1
In the Model Builder window, right-click Carrier Concentrations (semi) and choose Duplicate.
2
Click the  y-Axis Log Scale button in the Graphics toolbar.
3
In the Settings window for 1D Plot Group, type Hole Concentration in the Label text field.
4
Locate the Data section. From the Time selection list, choose Manual.
5
In the Time indices (1-71) text field, type 1 range(26,5,46) 48 49.
6
Locate the Plot Settings section. Clear the y-axis label check box.
Set the axis limits to the range of interest.
7
Locate the Axis section. Select the Manual axis limits check box.
8
In the x maximum text field, type 89.
9
In the y minimum text field, type -2e15.
10
In the y maximum text field, type 1e17.
Electron Concentration
1
In the Model Builder window, expand the Hole Concentration node.
2
Right-click Electron Concentration and choose Delete.
Hole Concentration
1
In the Model Builder window, click Hole Concentration.
2
In the Settings window for Line Graph, click to expand the Legends section.
3
From the Legends list, choose Automatic.
4
In the Hole Concentration toolbar, click  Plot.
Plot the time evolution of the applied voltage and the device voltage.
V(t)
1
In the Home toolbar, click  Add Plot Group and choose 1D Plot Group.
2
In the Settings window for 1D Plot Group, type V(t) in the Label text field.
Global 1
1
Right-click V(t) and choose Global.
2
In the Settings window for Global, locate the y-Axis Data section.
3
4
In the V(t) toolbar, click  Plot.
Plot the time evolution of the current.
I(t)
1
In the Home toolbar, click  Add Plot Group and choose 1D Plot Group.
2
In the Settings window for 1D Plot Group, type I(t) in the Label text field.
Global 1
1
Right-click I(t) and choose Global.
2
In the Settings window for Global, locate the y-Axis Data section.
3
4
In the I(t) toolbar, click  Plot.
Combine the voltage and current plots using 2 y-axes for the model thumbnail.
V(t) & I(t)
1
In the Model Builder window, right-click V(t) and choose Duplicate.
2
In the Settings window for 1D Plot Group, type V(t) & I(t) in the Label text field.
Global 1
In the Model Builder window, right-click Global 1 and choose Copy.
Global 2
In the Model Builder window, right-click V(t) & I(t) and choose Paste Global.
V(t) & I(t)
1
In the Settings window for 1D Plot Group, click to expand the Title section.
2
From the Title type list, choose None.
3
Locate the Plot Settings section. Select the y-axis label check box.
4
In the associated text field, type Applied and device voltage (V).
5
Select the Two y-axes check box.
6
In the table, select the Plot on secondary y-axis check box for Global 2.
7
Locate the Legend section. From the Position list, choose Middle right.
8
In the V(t) & I(t) toolbar, click  Plot.