Beruflich Dokumente
Kultur Dokumente
OTTI SPICE Palotas
OTTI SPICE Palotas
Simulationsprogrammen
Prof. Dr.-Ing. Laszlo Palotas
1 Einleitung
2 Leistungsmerkmale und Einsatzgrenzen von
Simulatoren
2.1 Ebenen der Modellierung und Simulation
2.2 Schaltungssimulatoren (Auswahl)
2.3 Einführung in die Schaltungssimulation
3 Modelle und Parametrisierung von
Halbleiterbauelementen
3.1 Die Diode
3.2 Der Bipolartransistor (BJT)
3.3 Der Sperrschicht Feldeffekttransistor (JFET)
3.4 Der MOSFET
Palotas - 2 -
4 Verhaltensmodellierung
4.1 Magnetische Bauelemente (Hysterese)
4.2 Entwicklung von digitalen Grundschaltungen
4.3 Spezielle Funktionselemente in LTspice
6 Simulatorgekoppelte Optimierung
Literatur
Palotas - 3 -
1 Einleitung
Entwurf, Dimensionierung und Optimierung
von Schaltungen hoher Komplexität (z.B. SNT)
erfordert
den konsequenten Einsatz von CAD/CAE-
Werkzeugen
Palotas - 4 -
2 Leistungsmerkmale und Einsatzgrenzen
von Simulatoren
2.1 Ebenen der Modellierung und Simulation
Gesamtsystemsimulation
S
Y
S
S T
M E
I O M
M D S
U E I
L Teilsystemsimulation L Lösung gewöhnlicher M
A L Differetialgleichungen U
T E L
O Differenzengleichungen
A
R T
K I
O O
P M N
P O
L D
U Bauelementesimulation E
N L
G L
E
Lösung partieller
Prozeßsimulation Differetialgleichungen
Palotas - 5 -
Halbleiterhersteller
• Simulation auf Transistorebene
(SPICE)
• technologieabhängige Parameter
sowie Strukturkenntnisse
Schaltungsentwickler
• Simulation von analogen
integrierten Funktionselementen
ist auf Transistorebene in der Regel
nicht möglich
Entwurf komplexer
elektrischer Schaltungen
• Modellierung auf höherer
Hierarchie - Ebene
• Beschreibung des Klemmenverhaltens
(Modelle)
Palotas - 6 -
2.2 Schaltungssimulatoren
Historical Timeline
1985 SPICE 3
Palotas - 7 -
LTspice IV http://www.linear.com SIMetrix http://www.catena.uk.com
Netzwerkanalyseprogramme
• Leistungsumfang (Analysearten)
Palotas - 10 -
Bei Makromodellen wird das Klemmverhalten von
Funktionselementen durch elektrische Schaltelemente
wiedergegeben, deren Anzahl meist weitaus geringer ist,
als die der Original-Schaltung. Dies führt zu einer
Reduzierung des Simulationsaufwandes.
Modellierung
Struktur Verifikation
Parameter
des Modells des Modells
Modell- physikalische
Applikationen
parameter Parameter
Palotas - 12 -
2.3.2 Leistungsumfang von Schaltungssimulatoren
Elementanweisungen (Circuit Elements, SPICE 2G6):
(Übersicht)
Passiv: R Widerstand
C Kapazität
L Induktivität
K Kopplungsfaktor gekoppelter Induktivitäten
T verlustfreie Leitung
O verlustbehaftete Leitung
Palotas - 13 -
Halbleiter: D Diode
Q Bipolartransistor
J Sperrschicht-Feldeffekttransistor
M MOSFET
Teilschaltung X Subcircuit
LTspice Ergänzungen:
Palotas - 14 -
Anweisungen (Dot Commands, Übersicht)
Standard analyses
.AC (AC analysis) frequency response Y Y
.DC (DC analysis) DC-Sweep Y Y
.FOUR (Fourier analysis) Fourier components Y Y
.NOISE (noise analysis) noise Y Y
.OP (bias point) bias point) bias point Y Y
.SENS (sensitivity analysis) DC sensitivity N Y
.TF (transfer) small-signal small-signal DC transfer function Y Y
.TRAN (transient analysis) nonlinear transient analysis Y Y
.END end of textual netlist Y Y
Simple multi-run analyses
.STEP (parametric analysis) parameter sweeps Y Y
.TEMP (temperature) temperature sweeps Y Y
Statistical analyses
Monte Carlo analysis Monte Carlo (mit mc und ABM möglich) Y Y
Palotas - 15 -
Palotas - 16 -
Initial conditions
.IC (initial bias point condition) clamp node voltage for bias point Y Y
calculation
.LOADBIAS (load bias point file) to restore a .NODESET bias point Y Y
.NODESET (set approximate to suggest a node voltage for bias Y Y
voltage for bias point) point calculation
.SAVEBIAS (save bias point to to store .NODESET bias point Y Y
file) information
Device modeling
.ENDS (end subcircuit) end of subcircuit definition Y Y
.MODEL (model definition) modeled device definition Y Y
.SUBCKT (subcircuit) to start subcircuit definition Y Y
Palotas - 17 -
Output Control
.PROBE (Probe) to send simulation results to Probe Autom. Y
Special commands
Palotas - 18 -
Teilschaltungen (Subcircuits, Makromodelle)
Syntax: .SUBCKT subname k1 [ k2 [ k3 ... ]] [params: Liste der Parameter]
- [.param Liste]
-
- Elementdefinition zur Teilschaltungs-Beschreibung
- (keine Steueranweisungen)
-
.ENDS [subname]
Vin ka kb DC 15V AC 1V
Ib kb ka 20uA
Palotas - 20 -
Transient Specifikation (Signalgeneratoren)
Time-dependent pulsed voltage current) source
Syntax: Vxxx n+ n- PULSE(V1 V2
+ Tdelay TriseTfall Ton Tperiod Ncycles)
name parameter units
-------------------------------------------
Voff initial value Volts
Von pulsed value Volts
Tdelay delay seconds
Tr rise time seconds
Tf fall time seconds
Ton on time seconds
Tperiod period seconds
Ncycles number of cycles wave cycles
Palotas - 21 -
Arbitrary Piecewise linear voltage source
Syntax: Vxxx n+ n- PWL(t1 v1 t2 v2 t3 v3...)
Time-dependent sine wave voltage source
V(time)=Voffset+Vamp*exp(-(time-Td)*Theta)*sin(2*pi*Freq*(time-Td)+pi*Phi/180)
Palotas - 23 -
Gesteuerte Quellen
Palotas - 24 -
Analog Behavioral Modeling (ABM), Verhaltensmodellierung
Funktionsgesteuerte Quellen (nichtlineare Quellen)
Palotas - 25 -
Laplace Transformation (Schlüsselwort: LAPLACE)
Palotas - 26 -
Passive Netzwerkelemente (Auswahl)
Widerstand: R1<name> <(+)node> <(-) node> [model name]
+ <value> TC = <TC1> [,<TC2>,…]] [temp=<value>]
.MODEL <model name> RES [model parameters]
+ -
TCE·(T-Tnom)
.param r1=10k {r1} „globale Parameter“ <value>R(1.01)
Palotas - 27 -
Beispiel: Temperaturabhängiger Spannungsteiler
Seite - 28 -
Kondensator: C<name> < ka node>< kb node>
+ [model name] <C> [IC=<initial value>]
+ [Rser=<value>] [Lser=<value>]
+ [Rpar=<value>][Cpar=<value>] [m=<value>]
+ [RLshunt=<value>] [temp=<value>]
.MODEL <model name> CAP [model parameters]
C ka kb 10nF [<ic=15V>
L1 ka kb 10nH [<ic=2m>]
L1 N001 0 Flux=1m*tanh(5*x)
Palotas - 30 -
Beispiel:
Eigenschaften des Tiefpasses kann durch ein RLC – Netzwerk
oder durch die s - Übertragungsfunktion realisiert werden
(ABM LAPLACE - Quelle):
1
H (s) =
1 + sR1C1 + L1C1s 2
Makromodell Verhaltensmodell
Bei LTspice stehen zwei Modelle für nichtlineare Induktivitäten zur Verfügung.
L_nl
in
b
Flux=4m*tanh(10*I(I1))
E_b
E_h
I1 SIN(0 300M 10K )
VALUE={I(L_nl)*N/lm} VALUE={sdt(V(in)/(N*A))}
.TRAN 100n 600u 0.0 1000n UIC .param N=100 lm=0.1 A=1.0e-4
Seite - 32 -
Modell mit Hysterese: Geometrie, Luftspalt berücksichtigt.
Die Hysteresekurve wird durch folgende Gleichung approximiert:
H + Hc
B u ,d ( H ) = B s ⋅ + μ 0 ·H
⎛ Bs ⎞
| H ± H c | + H c ·⎜ − 1⎟
⎝ Br ⎠
B m a g ( H ) = 0.5 ⋅ [ B u ( H ) + B d ( H ) ] Chan Model
b
in
E_h
E_b
I1 SIN(0 300M 10K )
VALUE={I(L_hys)*N/lm} VALUE={sdt(V(in)/(N*A))}
.TRAN 100n 600u 0.0 1000n UIC .param N=100 lm=0.1 A=1.0e-4
Seite - 33 -
wobei
Bemerkung:
Kopplung für nichtlineare Induktivitäten
bei LTspice ist nicht möglich.
Seite - 34 -
Modellgleichungen für das nichtlineare Kernmodell (PSPICE/LTspice):
Anhysteresische Magnetisierungskurve:
B1 B2
U1 H U2
V1 B H B H
R1 R2 R3 R4
in
L1 L2 in2 L1 L2
1 1 1 1
GND F1 GND
0
I1
V1 1
SIN(0 50M 100K 0 -30K 0)
Lhysp params: ur=7440 Ms=338K alpha=10U c=0.1 K=15 Tdyn=0U Lhysp params: ur=7440 Ms=338K alpha=10U c=0.1 K=15 Tdyn=50u
n=100 l=0.1 AREA=1.0e-4 n=100 l=0.1 AREA=1.0e-4
Kernmodell Kernmodell
Date/Time run: 07/28/02 16:21:04
Temperature: 27.0 Date/Time run: 07/28/02 11:35:06 Temperature: 27.0
500mT 500mT
B[mT]
B[mT]
0V
0V
-500mT
-500mT
-300A/m -200A/m -100A/m 0 100A/m 200A/m 300A/m -300A/m -200A/m -100A/m 0 100A/m 200A/m 300A/m
V(b) H[A/m] V(b) H[A/m]
Palotas - 36 -
KERNTEST (LTspice - PSpice kompatibel) * Fortsetzung
* J.Chan IEEE Transactions On Computer *
* Aided Design, Vol.10.No.4,April 1991 .subckt lint i dB_dH Ld B Hf Hg
.param Hc=16 Bs=0.44 Br=0.1 N=1000 XX1 Hf B hb
+ A=0.0000251 Lg=0.0006858 Lm=0.0198 XX2 Hf dB_dH dbdh01
+ Rs=1f Rp=10Meg Cp=1f i0=0 u0=1.256u E2 Ls 0 VALUE ={if (Abs(V(B))<1f,
* + A*N*N/(Lm/V(dB_dH)+Lg/u0), A*N*V(B)/V(i))}
A*N*V(B)/V(i))}
I1 0 in SIN(0 50M 100K 0 -30K 0) E1 Hf 0 VALUE ={(V(i)*N
={(V(i)*N-
-V(Hg)*Lg)/Lm}
V(Hg)*Lg)/Lm}
V1 in N001 0 E0 Hg 0 VALUE ={V(B)/u0}
XL1 N001 0 B Hf Hg Lmodp E3 Ld 0 VALUE={A*N*N/(Lm/V(dB_dH)+Lg/u0)}
.TRAN 10n 60u 0.0 100n UIC .ends lint
* *
.subckt lmodp P1 P2 B Hf Hg .subckt hb H B
XX1 di Is int .param alfa={Hc*(Bs/Br-
alfa={Hc*(Bs/Br-1)}
G1 P1 P2 Is 0 1 E1 Bu 0 VALUE =
XX5 Is dB_dH Ld B Hf Hg lint + {Bs*(V(H)+Hc)/(Abs(V(H)+Hc)+
{Bs*(V(H)+Hc)/(Abs(V(H)+Hc)+alfa)+u0*V(H)}
alfa)+u0*V(H)}
R1 P1 P2 {Rp} E2 Bd 0 VALUE={Bs*(V(H)-
VALUE={Bs*(V(H)-Hc)/(Abs(V(H)-
Hc)/(Abs(V(H)-Hc)+alfa)
C1 P1 P2 {Cp} + + u0*V(H)}
E2 di 0 VALUE = {V(vr)/V(Ld E0 B 0 VALUE={0.5*(V(Bu)+V(Bd))}
{V(vr)/V(Ld)}
)}
E3 vr 0 VALUE = {(V(P1,P2)- .ends hb
{(V(P1,P2)-Rs*V(Is))}
.ends lmodp *
* .subckt dbdh01 H dB
.subckt int IN OUT .param alfa={Hc*(Bs/Br-
alfa={Hc*(Bs/Br-1)}
.param y0={i0} E1 sqr1 0 VALUE={(Abs(V(H)+Hc)+alfa)**2}
G1 0 O1 0 ZERO 100G E2 sqr2 0 VALUE={(Abs(V(H)-
VALUE={(Abs(V(H)-Hc)+alfa)**2}
C1 ZERO O1 {1u*Kint} Eud dBu 0 VALUE={Bs*alfa/V(sqr1)+u0}
R1 ZERO IN {1Meg/Kint} Edd dBd 0 VALUE={Bs*alfa/V(sqr2)+u0}
R2 O1 0 100G E0 dB 0 VALUE={0.5*(V(dBu)+V(dBd))}
E1 OUT 0 VALUE={- .ends dbdh01
VALUE={-V(O1)}
.ic V(Zero)=0
.ic V(O1)={- .probe
V(O1)={-y0}
.param Kint=1000 .end
.ends int LTspice PSpice
Seite - 37 -
NLTrafo
Palotas - 38 -
.subckt tmod P1 P2 S1 S2 B Hg Hf
.param Rs1=0.1 Rp1=10G Cp1=1f i01=0
+ u0=4*Pi*1e-
u0=4*Pi*1e-7 Hc=16 Bs=0.44 Br=0.1
+ k12=1 k21=1 A=0.0000251 Lg=0.0006858 * Fortsetzung
+ Lm=0.0198 N1=1000 N2=2000 Rs2=.1 *
+ Rp2=10G Cp2=1f i02=0 .subckt tint i1 B i2 Ld1 Ld2 Hf Hg
* .param u0=4*Pi*1e-
u0=4*Pi*1e-7
X1 di1 is1 int params: y0={i01} X1 Hf B hb params: Hc={Hc}
Hc={Hc} Br={Br}
Br={Br} Bs={Bs}
Bs={Bs}
G1 P1 P2 is1 0 1 X2 Hf dB/dH dbdh01
R1 P1 P2 {Rp1} + params: Hc={Hc}
Hc={Hc} Br={Br}
Br={Br} Bs={Bs}
Bs={Bs}
C1 P1 P2 {Cp1} B0 Hg 0 V=V(B)/u0
X2 Is1 B Is2 Ld1 Ld2 Hf Hg tint B1 Hf 0 V=(V(i1)*N1+V(i2)*N2-
V=(V(i1)*N1+V(i2)*N2-V(Hg)*Lg)/Lm
+ params: N1={N1} N2={N2} Lg={Lg}
Lg={Lg} B4 Ld1 0 V=A*N1*N1/(Lm/V(dB/dH)+Lg/u0)
+ Lm={Lm}
Lm={Lm} Hc={Hc}
Hc={Hc} Bs={Bs}
Bs={Bs} Br={Br}
Br={Br} A={A} B5 Ld2 0 V=A*N2*N2/(Lm/V(dB/dH)+Lg/u0)
X3 di2 is2 int params: y0={i02} .ends tint
G2 S1 S2 is2 0 1 *
R2 S1 S2 {Rp2} .subckt hb H B
C2 S1 S2 {Cp2} .param u0=4*Pi*1e-
u0=4*Pi*1e-7
B2 di1 0 V=V(vr1)/V(Ld1) .param alfa={Hc*(Bs/Br-
alfa={Hc*(Bs/Br-1)}
B1 vr1 0 V=(V(P1,P2)-
V=(V(P1,P2)-Rs1*V(is1))-
Rs1*V(is1))- B1 Bu 0
+ k12*N2*V(di2)*V(Ld1)/N1 + V=Bs*(V(H)+Hc)/(Abs(V(H)+Hc)+alfa)+u0*V(H)
B3 vr2 0 V=(V(S1,S2)-
V=(V(S1,S2)-Rs2*V(is2))-
Rs2*V(is2))- B2 Bd 0
+ k21*N1*V(di1)*V(Ld2)/N2 + V=Bs*(V(H)-
V=Bs*(V(H)-Hc)/(Abs(V(H)-
Hc)/(Abs(V(H)-Hc)+alfa)+u0*V(H)
B4 di2 0 V=V(vr2)/V(Ld2) B0 B 0 V=0.5*(V(Bu)+V(Bd))
.ends tmod .ends hb
*
*
.subckt int IN OUT
.subckt dbdh01 H dB
G1 0 O1 0 ZERO 100G
.param u0=4*Pi*1e-
u0=4*Pi*1e-7
C1 ZERO O1 {1u*Kint}
.param alfa={Hc*(Bs/Br-
alfa={Hc*(Bs/Br-1)}
R1 ZERO IN {1Meg/Kint}
B1 sqr1 0 V=(Abs(V(H)+Hc)+alfa)**2
R2 O1 0 100G
B2 sqr2 0 V=(Abs(V(H)-
V=(Abs(V(H)-Hc)+alfa)**2
B1 OUT 0 V=- V=-V(O1)
Bud dBu 0 V=Bs*alfa/V(sqr1)+u0
.ic V(Zero)=0
Bdd dBd 0 V=Bs*alfa/V(sqr2)+u0
.ic V(O1)={-
V(O1)={-y0}
B0 dB 0 V=0.5*(V(dBu)+V(dBd))
.param Kint=1000
.ends dbdh01
.ends int
Seite - 39 -
Ideale Leitung: T<name>
+ <A port (+) node> <A port (-) node>
+ <B port (+)node> <B port (-)node>
+ Z0=<value> [TD=<value>] [F=<value>
+ [NL=<value>]]
Palotas - 41 -
3 Modelle und Parametrisierung von
Halbleiterbauelementen
Palotas - 42 -
Modellanweisungen:
D Diode
NPN Bipolarer npn-Transistor NJF n-Kanal Sperrschicht-FET
PNP Bipolarer pnp-Transistor PJF p-Kanal Sperrschicht-FET
NMOS n-Kanal MOSFET PMOS p-Kanal MOSFET
Palotas - 44 -
Beispiel: Did N009 out Dideal
.MODEL Dideal D(Ron=.1 Roff=1Meg Vfwd=.4)
Der wahlfreie
Palotas - 45 -
Modellgleichungen des Diodenmodells
kT
Temperaturspannung: UT = ≈ 25mV;
NA SPICE-Modell q
Boltzmann Konstante: k = 1,3806226 ⋅10−23Ws/K;
RS Elementarladung: q = 1,6021918 ⋅10−19 As
Bahnwiderstand: RS
I IB QB
Qd Qj G leichstrom dio de :
Gmin I = IS ⋅ [exp ( u / N ⋅ U T ) − 1]
Durchbruchdiode:
NC
IB = IBV ⋅ exp( −u − BV /UT )
Diodenstrom: (
I d = area ⋅ ( I F − I B ) I F = area ⋅ I ⋅ Kinj + I rec ⋅ K gen )
wenn: IKF > 0 Kinj = high-injection factor = ( IKF /( IKF + I ))1/ 2
dann:
sonst: Kinj = 1
QD =TT ⋅ I ; QB = TT ⋅ I B
Diodenkapazität (nichtlinear): Cd
= Ct + area·Cj
Ct = transit time capacitance = TT·Gd
dI F
Gd = DC conductance = area ⋅
du
Sperrschichtkapazität:
dQ j
Cj = = CJO ·(1 - u / VJ )- M wenn: u < FC ·VJ
du
Palotas - 47 -
Temperaturabhängigkeit der Parameter
BV Durchbruchspannung (rückwärts) V ∞
IBV Strom bei der Durchbruchspannung (rückwärts) A 1e-10
ISR Rekombinations-Stromparameter A 0
NR Emissionskoeffizient von ISR - 2
IKF Hochstrominjektion Knickstrom A ∞
TIKF TK von IKF (linear) 1/°C 0
TRS1 TK von RS (linear) 1/°C 0
TRS2 TK von RS (quadratisch) 1/°C2 0
Palotas - 49 -
Zusammenfassung:
Palotas - 50 -
Diode Parametrisierungstool
Material EG XTI
Silicon 1.11 3
Schottky .69 2
Germanium .67 3
GaAs 1.43 3
GaP 2.26 3
T_DC_BYV29-600
BYV29-600.pdf
Seite - 51 -
3.2 Der Bipolartransistor (BJT)
Symbol Namen: NPN, PNP, NPN2, PNP2
Syntax: Qxxx Collector Base Emitter [Substrate Node] model
+ [area] [off] [IC=<Vbe, Vce>] [temp=<T>]
Gummel-Poon-Modell RC QJS S
(QC)
ILC IEC/BR
QCB QCB'
RBB' IB'
B
ILE
QDE QJE
ICC/BF
(ICC-IEC)/QB
E RE
Gummel-Poon-Modell (GPM)
Prinzip der Ladungssteuerung
Palotas - 52 -
Gleichstromverhalten in Durchlassrichtung: Is, Bf, Nf, Ise, Ikf, und Ne
Sperrverhalten: Is, Br, Nr, Isc, Ikr, Nc
Ausgangsleitwert (Durchlass- und Sperrbereich): Vaf und Var
Seite - 54 -
The static SPICE parameters are Excel.pdf
IS -- Saturation Current
NF -- Forward Emission Coefficient
BF -- Max. Beta
NE -- Leakage Emission Coefficient
ISE -- Leakage Saturation Current
IKF -- Upper Current Corner
Seite - 55 -
Writing a SPICE .MODEL Statement
Once all parameters have been determined using Sheets 1, 2, and 3;
you can automatically create a file that will contain a SPICE .MODEL
statement incorporating the parameters you've found.
You do this by selecting (clicking ON) cell A1 in Sheet 1.
If A1 is already selected, then move off of it and then back on to write
the file.
The file will be called "bjt.mod"
bjt.mod and will be located in the same directory
as the "Save As" directory that you use for bjt.xls.
Seite - 56 -
3.3 Der Sperrschicht Feldeffekttransitor (JFET)
Symbol Namen: NJF, PJF (LTSpice)
Syntax: Jxxx D G S <model> [area][off][IC=Vds,Vgs][temp=T]
SPICE JFET-Modell
(N-Kanal Sperrschicht) Gleichstromverhalten: VTO, BETA,
QGd RD
LAMBDA (Ausgangsleitwert),
D IS, RD, RS
d Dynamisches Verhalten: (Ladungsstr.,
IGd
nichtlinearen Kapazitäten) Cgs, Cgd
Fittingsparameter: PB, B
G IGs ID
s Temperaturverhalten: XTI, Vtotc
S
Rauschverhalten: KF, AF
QGs RS
Seite - 57 -
3.4 Der MOSFET
Symbol Namen: NMOS, NMOS3, PMOS, PMOS3
Monolithic MOSFET:
Syntax: Mxxx Nd Ng Ns Nb <model> [m=<value>] [L=<len>]
+ [W=<width>] [AD=<area>] [AS=<area>]
+ [PD=<perim>] [PS=<perim>] [NRD=<value>]
+ [NRS=<value>] [off] [IC=<Vds, Vgs, Vbs>] [temp=<T>]
IBd
d LEVEL=1 Shichman-Hodges Modell
LEVEL=2 MOS2 (Geometrie-basietes,
analytisches Modell)
G ID B LEVEL=3 MOS3 Halbempirisches,
s Kurzkanal- Modell ([13])
IBs
LEVEL=4 BSIM Model
LEVEL=5 BSIM2
QGs QBs LEVEL=6 MOS6
LEVEL=8 BSIM3 (University of California,
S QGB Berkeley, Dec. 2001)
RS LEVEL=12 EKV 2.6 Modell
Seite - 59 -
Gleichstromverhalten (LEVEL 1,2,3): VTO, KAPPA, LAMBDA, PHI, GAMMA
VTO > 0 für N-Kanal selbstsperrende bzw. P-Kanal selbstleitende MOSFETs.
VTO < 0 für N-Kanal selbstleitende bzw. P-Kanal selbstsperrende MOSFETs.
Sind die Prozessparameter NSUB, TOX u.s.w. gegeben, so werden die DC-
Parameter berechnet und die Werte in der Modellanweisung überschrieben
Palotas - 60 -
MOSFET Parametrisierung
Intusoft SPICEMOD (DOS Fenster)
Seite - 61 -
SPICE Model
.MODEL M2N4351 NMOS (LEVEL=1 VTO=2.1 KP=1.12M GAMMA=2.6 PHI=.75
+ LAMBDA=2.49M RD=14 RS=14 IS=15F PB=.8 MJ=.46 CBD=7.95P CBS=9.54P
+ CGSO=11.7N CGDO=9.75N CGBO=16N)
Seite - 62 -
MOSFET Levels in HSPICE
Seite - 63 -
* PSpice/LTspice SIMULATORS (C) Analogy
* Pinbelegung D G S
10
.MODEL RDRAIN RES (TC1 = 0.009412 TC2 = 0)
.MODEL RSOURCE RES (TC1 = -0.00218 TC2 = 1.717e-05) MTW20N50E .SUBCKT MTW20N50E 10 20 30
.MODEL RDBODY RES (TC1 = 0.00342 TC2 = -2.02e-07) LDRAIN 10 11 4.5e-09
Ldrain
LGATE 20 21 1.3e-08
4.5u LSOURCE 30 31 1.3e-08
DGD
3 11 RDRAIN1 4 11 RDRAIN 0.2456
RDRAIN2 4 5 RDRAIN 0.001
DGD RSOURCE 31 6 RSOURCE 0.01001
CGD Rdrain1
RGD RDBODY 8 30 RDBODY 0.008396
100k
RDRAIN 0.2456 RGATE 21 2 1
5.5n
DBODY 8 11 DBODY
4
Dbody
DGD 3 11 DGD
Rdrain2
CGDMAX 2 3 5.5e-09
RDRAIN 1mDbody
RGDMAX 2 3 1e+08
CGS 2 6 3.619e-09
5
MAIN
M1 5 2 6 6 MAIN
8
M1
Lgate Rgate .MODEL RDRAIN RES (TC1 = 0.009412 TC2 = 0)
21
20
2 .MODEL RSOURCE RES (TC1 = -0.00218 TC2 = 1.717e-05)
13u
1 CGS 6 Rbody .MODEL RDBODY RES (TC1 = 0.00342 TC2 = -2.02e-07)
.MODEL MAIN NMOS (LEVEL=3 VTO=3.788 KP=30.42
3.619n
RDBODY 8.396m
+ GAMMA=2.5 PHI=0.6 RD=0 RS=0 CBD=0 CBS=0 IS=1e-14
.MODEL MAIN NMOS (LEVEL=3 VTO=3.788 KP=30.42 Rsource + PB=0.8 CGSO=0 CGDO=0 CGBO=0 RSH=0 CJ=0 MJ=0.5
+ GAMMA=2.5 PHI=0.6 RD=0 RS=0 CBD=0 CBS=0 IS=1e-14 RSOURCE 10.01m + CJSW=0 MJSW=0.33 JS=1e-14 TOX=1e-07 NSUB=5e+17
+ PB=0.8 CGSO=0 CGDO=0 CGBO=0 RSH=0 CJ=0 MJ=0.5 + NSS=0 NFS=6.121e+11 TPG=1 XJ=0 LD=0 UO=600
+ CJSW=0 MJSW=0.33 JS=1e-14 TOX=1e-07 NSUB=5e+17 + KF=0 AF=1 FC=0.5 DELTA=0 THETA=0 ETA=0
31
.ENDS MTW20N50E
Seite - 64 -
Ein weiteres Makromodell für MOS Transistoren zeigt die nächste
Schaltung:
Model Generated by MODPEX
Copyright (c) Symmetry Design Systems
Symmetry POWER MOS Model .MODEL MD D (IS=6.65214e-09 RS=0.00681888 N=1.44936 BV=55
+ IBV=0.00025 EG=1 XTI=2.81713 TT=1e-07
+ CJO=1.32544e-09 VJ=1.29661 M=0.493619 FC=0.5) D
D
.MODEL MM NMOS LEVEL=1 IS=1e-32
+ VTO=3.81531 LAMBDA=0 KP=35.6687
RD
+ CGSO=1.40569e-05 CGDO=3.21208e-07
100u
RL
10
D2 1
CAP
5
FI1 FI2
MD1 Rcap 18.6655n D1
11
Ev VFI2 -1
4
D3 1 VFI1 -1 RDS
VFI2 VFI1
9
0 MD 2.2meg
M1
MD2 1
6
0 G MM
RG
7
G
MD3 D4 4.2141 8
RS
14.35m
.MODEL MD1 D (IS=1e-32 N=50
+ CJO=1.5055e-09 VJ=0.5 M=0.677697 FC=1e-08) S
.MODEL MD2 D IS=1e-10 N=0.426578 RS=3e-06 S
Seite - 65 -
VDMOS Parametrisierungstool
H.J. Zwerver: “LTspice_MOStool.exe” (6.7)
verfügt auch über einen Library Manager.
Hinweis: LTspice build in VDmos model.pdf
Palotas - 66 -
Es werden mit Hilfe von Datenblattangaben nicht nur die wichtigsten
Modellparameter eines VDMOS Transistors bestimmt, sondern auch
Testfiles generiert, um die Eignung der erzeugten Modelle mit Hilfe
des Simulators LTspice überprüfen zu können.
20N60C3_Id(Vds,Vgs).asc
20N60C3_Id(Vgs).asc
20N60C3_GateCharge.asc
20N60C3_Cxss.asc
Test circuit
20N60C3 Infineon
Seite - 67 -
VDMOS Modelgenerator Version 1.71 C. Hsi © (Linear Technology)
Testfiles für Nch und Pch
MOSFETs:
NCH_diode.ASC
NCH_family.ASC
NCH_cap.ASC
NCH_qgate.ASC
NCH_rds.ASC
NCH_vgs.ASC
PCH_diode.ASC
PCH_family.ASC
PCH_cap.ASC
PCH_qgate.ASC
PCH_rds.ASC
PCH_vgs.ASC
4 Verhaltensmodellierung digitaler Schaltungen
4.1 Entwicklung von digitalen Grundschaltungen
arithmetische Operationen: + ; - ; * ; / ; **
logische bzw. relationale Operatoren: & (AND) ; | (OR) ; ^ (XOR) < ; >
Palotas - 69 -
Transistormodell eines TTL NAND Gatters
5V
R1 R2 R4
4k 1.6k 130
R
4k
7
Q4
4 TTLQ
2
Q3
Q1 TTLQ
8
TTLQ
A TTLQ 3 Dout TTLD
QL
Din1 TTLD Y
Q5 TTLD D1
Q2 5
B
TTLQ
R3 TTLQ TTLD D2
Din2 TTLD 1k
Palotas - 70 -
TTL 7400 (nand2) Transistormodel with subsircuits (D,Q, ttlload in user.lib)
14
Vcc
X1
RG1 Xload
11 1 5V
A 5V 5V
50 3
RG2 & Y in
Vin1 2
22 B
50
Vin2
TTLLO AD
Palotas - 71 -
Konzept: AtoD Æ 1V / 0V Logik Æ DtoA
* TTL -> 1V Logik
.param VCC=5V
* ttlin dout
.SUBCKT AtoD 1 2 Params: Hmin=2.3
Elim 2 0 VALUE = {if((V(1)<Hmin),0,1)}
Rlim 2 0 1meg
.ends AtoD
*
* din ttlout
.SUBCKT DtoA 1 2 Params: Hmax=3.5
Edtoa 2 0 VALUE = {Hmax*V(1)}
RdtoA 2 0 1meg
.ENDS DtoA
*
Palotas - 72 -
Beispiele: Realisierung von NAND, NOR und XOR Gatter mit 2 Eingängen
U1 U2 U3 U4 U5
A
A A A A A A A A A A
Va & Y and & Y nand > Y or > Y nor =1 Y xor
Vb
B B B B B B B B B B
PULSE(0 1 0 10n 10n 1u 5u) PULSE(0 1 300n 10n 10n 2u 5u) .tran 10n
n 10u
Palotas - 74 -
TFF with E Sources
*
LTSpice * PSpice kompatibel
*
Vin 1 0 pulse 0 5 10n 2n 2n 30n 100nu
* S clk Q QB
Xtog 5 1 2 3 TOG
Vset 5 0 DC 5
V *
.SUBCKT TOG 18 50 3 7
e *--------------SET
--------------SET TOGGLE Q QB
r *TOGGLE FLIP_FLOP
R2 3 19 100
h E1 2 0 VALUE={IF(V(3)>1,0,5)}
a C4 0 7 20P
R4 7 4 100
l E2 14 0 VALUE={IF(V(7)>1,0,5)}
t C6 0 10 20P
R6 10 5 100
e E3 15 0 VALUE={IF(V(10)>1,0,5)}
n C8 0 13 20P
R8 13 8 100
s E4 16 0 VALUE={IF(V(13)>1,0,5)}
m E5 19 0 VALUE={IF(V(18)<1,0,IF(V(17)<1,0,IF(V(2)<1,V(14),
+ IF(V(14)>1,IF(V(16)>1,V(14),0),V(14)))))}
o E6 4 0 VALUE={IF(V(18)<1,0,IF(V(17)<1,0,
d + IF(V(14)>1,IF(V(16)>1,0,V(2)),V(2))))}
E7 5 0 VALUE={IF(V(18)<1,0,IF(V(2)<1,0,V(16)))}
e E8 8 0 VALUE={IF(V(18)<1,0,IF(V(2)<1,2,IF(V(14)<1,0,V(15))))}
l E9 17 0 VALUE={IF(V(50)>1,0,5)}
C2 0 3 20P
l .ENDS
*
Pspice .OPTIONS TRTOL=7 ;plotwinsize=0
.tran 20n 1u 100n 10n UIC
.probe V(1) V(2) V(3)
.end
Palotas - 75 -
4.2 Spezielle Funktionselemente in LTspice
Symbol names: INV, BUF, AND, OR, XOR, SCHMITT,
SCHMTBUF, SCHMTINV, DFLOP
Syntax: Annn in1 in2 in3 in4 in5 out _out common
+ <model> [instance parameters]
PIN 1 - 5 : Eingänge
PIN 6, 7 : komplementäre Ausgänge; PIN 8 : COMMON
Instance Parameter der A - Elementanweisung
parameter | default | meaning
-----------+---------+-------------------------
Vhigh | 1V | logic high level
Vlow | 0V | logic low level
Ihigh | 1A | logic high drive current
Ilow | 0A | logic low drive current
Trise | 0 | Rise time
Tfall | Trise | Fall time
Tau | 0 | output RC time constant
Cout | 0 | output capacitance
Rout | 1 | output impedance
Rhigh | Rout | logic high level impedance
Rlow | Rout | logic low level impedance
tripdt | | can be set to stipulate a maximum
timestep size the simulator takes
across state changes.
Palotas - 76 -
Spezielle Funktionselemente in LTSpice
BUF SCHMITT SCHMITT AND SRFLOP
A7 A10 A13
A1 A4 1
1 2 7
1 7 1 7 7 3 1 S Q 7
2 4 6
5
8
2 R Q 6
8
BUF SCHMITT SCHMITT OR
8
A8 A11
A2 A5 1 DFLOP
1 2 7
1 6 1 6 6 3 4
2 4 6 A14
5
8
8
PRE
8
1 D Q 7
BUF SCHMITT SCHMITT XOR
3 CLK Q 6
A3 A6 A9
A12 CLR
7 7 1 7 1
1 1 2 7
8
6 6 2 6 3 5
4 6
5
8
8
A-SOURCE NETLISTS:
A1 1 8 8 8 8 8 7 8 BUF
A2 1 8 8 8 8 6 8 8 BUF PHASEDET MODULATOR
A3 1 8 8 8 8 6 7 8 BUF A15 A16
A4 1 8 8 8 8 8 7 8 SCHMITT
A5 1 8 8 8 8 6 8 8 SCHMITT 1 1 FM
7
A6 1 8 8 8 8 6 7 8 SCHMITT 2 Q 7
A7 1 2 8 8 8 8 7 8 SCHMITT 2 AM
A8 1 2 8 8 8 6 8 8 SCHMITT
8
A9 1 2 8 8 8 6 7 8 SCHMITT
8
A10 1 2 3 4 5 6 7 8 AND
A11 1 2 3 4 5 6 7 8 OR
VARISTOR SWITCHYARD
A12 1 2 3 4 5 6 7 8 XOR
A13 1 2 8 8 8 6 7 8 SRFLOP
7
A18
A14 1 8 3 4 5 6 7 8 DFLOP A17
1 A 7
A15 1 2 8 8 8 8 7 8 PHASEDET
A16 1 2 8 8 8 8 7 8 MODULATOR 2 1 T
A17 1 2 8 8 8 8 7 8 VARISTOR B 6
8
A18 1 8 8 8 8 6 7 8 SWITCHYARD
Palotas - 77 -
8
Kaffeepause
Seite - 78 -
5 Modellierung eines Schaltnetzteils mit PWM
Grundschaltungen von PWM-SNT
S L L D S D
Ue Ua Ue Ua Ue Ua
D C R C R L C R
S
Palotas - 79 -
CA3524 _1 Der Fehlerverstärker von CA3524
Palotas - 80 -
CA3524 _2
Palotas - 81 -
CA3524
P
U 15
REFERENCE
REGULATOR
+5 V TO ALL
INT. CKTS.
V+ 5V
L +5 V
12
CA
S 16
VREF FLIP
1 SA
FLOP
B
3 11
R OSC OUT
+5 V EA
E 13
6 OSCILLATOR
I CB
1
RT
SB
T +5 V
E 7
CT
EB
14
COMPARATOR
N +5 V +5 V
M 1
INV. INPUT
+
+ SENSE
4
ERROR
O AMP
C.L.
2 - 5
D NON-INV. - SENSE
INPUT
1K
U 10
SHUT-
L DOWN COMPENSATION
9
AND
A 10K COMPARATOR
8
T GND
O
R
Palotas - 82 -
Funktionseinheiten des PWM CA3524 sind:
• Oszillator • Strombegrenzung
• Fehlerverstärker • Ausgangsstufe
z Versorgungsspannung
z Last
Palotas - 83 -
* AGND U+ UREF
.SUBCKT REF3524 8 15 16
GREF1 0 17 15 8 0.625
RREF1 17 0 1
DREF1 17 171 REF
VREF1 171 0 DC 5
IREF2 8 16 100M
RREF2 16 8 100
dref1
15 DREF2 16 161 REF
rref1
EREF2 161 8 17 0 1
rsup gref1 vref1
RSUP 15 0 4K
8
.MODEL REF D(N=0.02 XTI=0
dref2 + EG=0.1)
16
rref2 .ENDS
iref2 eref2
Palotas - 84 -
5.1.2 Der Fehlerverstärker
*Datei ca3524_DB.PAR
*Datenblatt-Parameter
*
.param IB = 1uA .param Iout = 147uA
.param VOS = .5mV .param Vmax = 4.2
.param CMRR = 3162 .param Vmin = 50m
.param AV = 10000 .param Cjc = 1.5pF
.param fodB = 3meg .param IS = 100f
.param UT = 25.85m .param Rout = 5meg
.param SRP = 3705k .param Vcc = 5V
.param SRM = 572k .param Vee = 0
aus Messungen
*Berechnung der Modellparameter
*
.param Rc1 = 12.5k .param Gout = 14.73u
.param Rc2 = 12.5k .model SWITCH D(N=0.02 EG=0.1 XTI=0)
.param Iee = {AV*UT*4/Rout} .model Qin1 NPN (IS={IS1}
.param Ree = {200/iee} + NF={Nf} BF={bf} Cjc={Cjc} Eg=0.1)
.param Cout = {2*Iout/SRP} .model Qin2 NPN (IS={IS2}
.param cee = {iee/SRM - cout} + NF={Nf} BF={bf} Cjc={Cjc} Eg=0.1)
.param bf = {(iee-2*IB)/(2*IB) .param Nf = 1.39
.param Gcmrr = {AV/(2*Rout*CMRR)} .param IS1 = {IS*exp(-VOS/(2*UT*Nf)}
.param Rinter =100k .param IS2 = {IS*exp(VOS/(2*UT*Nf)}
.param Ibias = 100u
DT DB
ROUT CPOLE 10 20
2
NI G
VT VB
RIN2
GND
8
Palotas - 88 -
* FEHLERSPANNUNGSVERSTAERKER CA3524
* VERBINDUNGEN: AUSGANG LTspice
* INV NI AGND COMP UREF
.SUBCKT ERR3524 1 2 8 9 16
* INTERNE VERSORGUNGSSPANNUNG
EINT 160 8 16 8 1
* EINGANGSSTUFE
VIC2 160 21
RC1 160 161 12.5K
RC2 21 211 12.5K
QIN1 161 1 22 QIN1
QIN2 211 2 22 QIN2
REE 22 8 973.561K
IEE 22 8 DC 205.43U
CEE 22 8 279.16P
* ZWISCHENSTUFE
FIC2 0 10 VIC2 1
IBIAS2 10 0 DC 100U
GCMRR 0 10 VALUE = {316N*(V(1,8)+V(2,8))}
RINTER 10 0 100K
* AUSGANGSSTUFE
GOUT 8 9 10 0 14.732U
ROUT 9 8 5MEG
COUT 9 8 40.525P
VMAX 23 8 DC 4.2
DMAX 9 23 SWITCH
DMIN 24 9 SWITCH
VMIN 24 8 DC 0.05
.MODEL SWITCH D(N=0.01 EG=0.1 XTI=0.0)
.MODEL QIN1 NPN (IS=0.9072E-16 BF=101.72 NF=1.39
+ CJC=1.5P XTI=0 EG=0.1)
.MODEL QIN2 NPN (IS=1.1022E-16 BF=101.72 NF=1.39
+ CJC=1.5P XTI=0 EG=0.1)
.ENDS
TestCA3524.cir
Palotas - 89 -
Testschaltung_Oszillator_3524
5.1.3 Der Oszillator Vcc 16 0 5
Vgnd 8 0 0
RT 6 0 3k
CT 7 0 20n
Xosc 3 6 7 8 16 OSC3524
+ params: fs = 20k CT = 20n saw_l = 0.9
20n + saw_h = 3.6 pulse_l = 0 pulse_h = 4.1
Vcc CT 16 *
7 3 out .tran 100n 200u
.probe
osc * OSZILLATOR CA3524
6 * VERBINDUNGEN: OSZILLATORAUSGANG
DC 5 * | RT
RT 3k 8 * | | CT
* | | | MASSE
.tran 100n 200u * | | | | UREF
* | | | | |
* | | | | |
.SUBCKT OSC3524 3 6 7 8 16 PARAMS: fs = 20k
+ CT = 10n saw_l = 0.9 saw_h = 3.6 pulse_l = 0
+ pulse_h = 4.1
.PARAM period = {1/fs}
V(3) V(7)
.PARAM falltime = {39.2*CT + 0.222u}
VSAW 71 0 PULSE ({saw_l
({saw_l}
} {saw_h
{saw_h}
} 0
4V
+ {period
{period - 1.01*falltime}
+ {falltime
{falltime}}
+ {falltime/100} {period
{period})
})
RSPICE1 71 0 1MEG
VPULSE 31 0 PULSE ({pulse_l
({pulse_l}} {pulse_h
{pulse_h}
}
{period - falltime}
falltime} {falltime/100}
2V
+ {falltime/100} {falltime
{falltime}} {period
{period})
})
RSPICE2 31 0 1MEG
ESAW 7 8 VALUE = {0.2*V(71)*V(16,8)}
RSAW 7 8 1K
EPULSE 3 8 VALUE = {0.2*V(31)*V(16,8)}
RPULSE 3 8 3.3K
0
EMIRR 6 8 16 8 0.72
0 50us 100us 200us
RMIRR 6 8 1MEG
.ENDS OSC3524
.END
Palotas - 90 -
5.1.4 Logische Einheit
T - Kippschaltung (Flip-Flop) und zwei NOR-Glieder
LTspice oder
MASTER SLAVE
* T-KIPPSCHALTUNG * D-KIPPSCHALTUNG
* VERBINDUNGEN: UREF * VERBINDUNGEN: UREF
* | AGND * | AGND
* | | TAKT
* | | TAKT * | | | DATA
* | | | DATA * | | | | Q
* | | | | Q * | | | | | QNOT
* | | | | | QNOT * | | | | | |
* | | | | | | .SUBCKT DFF 16 8 1 2 3 4
XNAND1 16 8 1 5 6 NAND
.SUBCKT TFF 16 8 1 2 3 4 XNAND2 16 8 1 2 5 NAND
XCNOT 16 8 1 5 NOT XNAND3 16 8 6 3 4 NAND
XMASTER 16 8 5 2 6 7 DFF XNAND4 16 8 5 4 3 NAND
XSLAVE 16 8 1 6 3 4 DFF CFF1 3 0 10N IC=1
.ENDS CFF2 4 0 10N
.ENDS
Palotas - 91 -
5.1.5 Komparator
Subtrahiert Sägezahn- und Fehlerverstärkerspannung
verstärkt und begrenzt die Differenz
* KOMPARATOR CA3524
CMP3524 D2 * VERBINDUNGEN:
*
SAEGEZAHNSPANNUNG
| MASSE
* | | KOMPENSATION
* | | | AUSGANG
rsub .SUBCKT CMP3524 7 8 9 4
GSUB 0 4 POLY(2) 7 8 9 8
gsub D1 vlimit +
RSUB 4 0 1
0 1K -1K
D1 0 4 LIMIT
D2 4 5 LIMIT
VLIMIT 5 0 DC 1
.MODEL LIMIT D(N=0.02 XTI=0 EG=0.1)
.ENDS
.subckt comph in+ in- out agnd
E1 4 agnd VALUE =
+ {IF(V(in+)>V(in-),{hmax},0)}
RD 4 OUT {rd}
CD OUT agnd {cd}
R1 in+ agnd 1G
R2 in- agnd 1G
.param rd=100 cd=10p hmax=5V
.ends comph
Palotas - 94 -
5.1.6 Strombegrenzung und Abschaltung
* STROMBEGRENZUNG CA3524
* VERBINDUNGEN: POS. STROMBEGRENZUNG
* | NEG. STROMBEGR.
* | | KOMPENSATION
* | | |
.SUBCKT CL3524 4 5 9
VCL 41 4 DC 501.4742M
RCL 41 42 10K
QCL 9 42 5 CL
.MODEL CL NPN XTI=0 EG=0.1 CJC=1P)
.ENDS
* ABSCHALTUNG CA3524
* VERBINDUNGEN: MASSE
* | KOMPENSATION
* | | ABSCHALTUNG
* | | |
* | | |
.SUBCKT SD3524 8 9 10
RSD1 10 101 1K
RSD2 101 8 10K
QSD 9 101 8 QSD
.MODEL QSD NPN XTI=0 EG=0.1 CJC=1P)
.ENDS
Palotas - 95 -
* SUBCIRCUIT PULSBREITENMODULATOR CA3524
* VERBINDUNGEN: INV. EINGANG (INV)
* | N.INV. EINGANG (NI)
* | | OSZILLATORAUSGANG (oscout,CLK)
* | | | POS. STROMBEGRENZUNG (CL+)
* | | | | NEG. STROMBEGRENZUNG (CL-)
* | | | | | RT
* | | | | | | CT
* | | | | | | | AGND
* | | | | | | | | KOMPENSATION (COMP)
* | | | | | | | | | ABSCHALTUNG (SD)
* | | | | | | | | | | EMITTER A (EA)
* | | | | | | | | | | | KOLLEKTOR A (CA)
* | | | | | | | | | | | | KOLLEKTOR B (CB)
* | | | | | | | | | | | | | EMITTER B (EB)
* | | | | | | | | | | | | | | U+
* | | | | | | | | | | | | | | | UREF
* | | | | | | | | | | | | | | | |
.SUBCKT CA3524 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16
XREF 8 15 16 REF3524
XOSC 3 6 7 8 16 OSC3524
XERR 1 2 8 9 16 ERR3524
XCL 4 5 9 CL3524
XLOG 3 7 8 9 16 20 30 LOG3524
XOUTA 20 8 12 11 OUT3524
XOUTB 30 8 13 14 OUT3524
XSD 8 9 10 SD3524
.ENDS
Palotas - 96 -
5.2 Verifikation der Modelle
Applikationsschaltung: Abwärtswandler (Buck-Converter)
Palotas - 97 -
Spezifikation:
Eingangsspannung: 28V
Laststrom: 1A
Ausgangsspannung: 5V
Taktfrequenz: 20 kHz
Palotas - 98 -
Applikationsschaltung: (Intersil, TI, Philips))
Palotas - 99 -
5.3 Mittelwertmodell eines Pulsbreitenmodulators
5.3.1 Methode der Mittelung
t
Vout d= on
T
ton t
Verr
T
Palotas - 100 -
Grundschaltung des Abwärtswandlers
S L
Ue Ua
D C R
PWM
Palotas - 101 -
T T
dT dT
ic
Vc(d) i a(t) i c(t)
a ia ic c
ia
PWM Switch 0
u ap
uap ucp
u cp(t)
u ap(t)
p
u cp
0 0
Palotas - 102 -
5.3.2 Gleichungen des PWM - Mittelwertmodells
cntl: Sägezahnspannung
cntlmax
des Oszillators
Vc: Spannung am Ausgang
des Fehlerverstärkers
Vc T: Oszillatorperiode
ts Rampe der Sägezahnspannung:
cntlmin linear
ton tdead t Ts: Verzögerungszeit
T
Tdead:Totzeit
Palotas - 103 -
5.3.3 Struktur des Mittelwertmodells
+SENSE 4
15 V+
C.L. REF.
-SENSE 5 SOURCE
16 VREF
COMP. 9
INV.INPUT 1
Vc
ERR
AMP
N.INV.INPUT 2
1k Vc Rerrout
SHUTDOWN 10 PWMSW
a c
GROUND 8 10k
Palotas - 104 -
5.3.4 PWMSW Mittelwertmodell (CCMSW):
* PWM_Switch_Model
* Pins control voltage --
* common -------- |
* passiv ---- | |
* activ -- | | |
* | | | |
.SUBCKT CCMSW a p c Vc
+ PARAMS: cntlmax=3.6 cntlmin=0.9
+ fs = 20k CT= 20n ts = 300n
Ed d 0 table
+ {0.5*(V(vc)-cntlmin)/(cntlmax-cntlmin)*
+ (1-(39.1*CT+222n)*fs)+ts*fs} =
+ (0.006, 0.006) (0.486, 0.486)
Gap a p value = {V(d)*i(vcm)}
Ecp x p value = {V(d)*V(a,p)}
Vcm x c 0
Rspd d 0 1G
.ENDS CCMSW
Palotas - 105 -
Test des CCM-PWMSWitch-Modells
Testcircuit: test_ccmsw.cir
Palotas - 106 -
5.3.5 Mittelwert-Makromodell des Pulsbreitenmodulators
Palotas - 107 -
5.3.6 CCM - Mittelwertmodell der Applikationsschaltung
Rreil1
pulse 0 28 100u 1m 1m 1
5k
XPWMMW
Rteil2 Rref1
INV Uref
5k 5k U1
Vind
Rref2 Lind Rind
20
NI U+ a c
.9m
5K 0.34
0
Vein CL+ p Vc
ccmsw
CL-
CA3524MW Caus
HCL Rlast
500U
5
Vind 0.095
SD
Ckomp Resr
GND Comp Rsd
9 0.312
1n 1meg
CA3524MW Rkomp
50k
.tran 10u 5m 0 1u
.lib sntpwmsw.lib
Palotas - 108 -
Test des Großsignal- und Mittelwertmodells, CCM (mit Hierarchy)
Palotas - 109 -
5.3.7 Mittelwert - Modelle für den kontinuierlichen Betrieb
Rl1 Rl2 L Rl
L1 L2 Rc L1 L2 Rc
Ue R Ue R
u C S1 u C
S1
i L Re
q'i Rc
Ue q Ue q'U R
qi u C
Palotas - 110 -
5.3.8 Mittelwertmodelle für den diskontnuierlichen Bertrieb
Palotas - 111 -
mit der Abkürzung:
Vc(d)
dcm-pwmsw
a ia ip p a ia ip p
m u ac
m ip
uac u cp
uac u
c cp
c
Palotas - 112 -
5.3.9 Abwärtswandler im diskontinuierlichen Betrieb
a
u ac
ia
m ip L I aus
Ue m u ac
c
C R Ua
ip
u cp
Palotas - 113 -
Verifikation des DCM - Mittelwertmodells
Rreil1
pulse 0 28 100u 1m 1m 1
5k
X1
Rteil2 Rref1
INV Uref
5k 5k U1
Vind
Rref2 Lind Rind
20
NI U+ a c
.9m
5K 0.34
0
Vein CL+ p Vc
dcmsw
CL-
CA3524MWH Caus
HCL Rlast
500µ
100
Vind 0.095
SD
Ckomp Resr
Rsd
AGND Comp 0.312
9
1n 1meg
CA3524MWH
Rkomp
50k
.tran 0 5m 0 1u uic
Testschaltung für dcmsw - Modell (Rlast > 45 Ohm) .probe
*V(20) V(9) I(Vind)
Palotas - 114 -
Test des Großsignal- und Mittelwertmodells, DCM (mit Hierarchy)
5.4 Schaltnetzteilentwurf mit LTspice
(bis Version 2.19k Æ Internet)
Palotas - 116 -
Palotas - 117 -
5.4.2 Boost Converter: 12V Î 19V/2.5A (Projektarbeit)
Palotas - 118 -
5.4.3 Power IC Model Library
Palotas - 119 -
5.4.4 Boost Converter mit UC3845 (Current Mode)
Blockschaltbild
Palotas - 120 -
5.4.4.1 LTSpice Modell (analog@ieee.org)
B
-
S
O
U
R
C
E
-
A
B
M
-
M
O
D
E
L
L
Palotas - 121 -
5.4.4.2 PSpice Modell (AEi Systems – On Semiconductor)
Palotas - 122 -
5.4.4.3 Modellverifikation (AEi)
Palotas - 123 -
5.4.4.4 Modellverifikation (ieee.org)
Palotas - 124 -
6 Simulatorgekoppelte Optimierung
Das Perl - Programm optimize.exe
WINDOWS und LINUX Plattform lauffähig
Ein freeware Perl-Interpreter kann vom URL:
http://prdownloads.sourceforge.net/tinyperl
Palotas - 125 -
*.log
Perl
*.net
Optimizer
*.tmp SIMULATOR
Simplex
from LTSpice
Melder and Mead
*_opti.asc
Optimierercontrol Fehlerfunktion
(ftol, itermax) Zielfunktion
Optimierungs- Istfunktion
parameter
Optimierungs-
Start/Stop parameter
Simulator
optimizer initfile Schaltung
*_init.txt *.asc
Palotas - 126 -
Beispiel: Diode
diode_init.txt
* ftol=0.01
ftol<2*(abs(f(worst)-f(best))/((abs(f(worst))+abs(f(best)))
tiny=1e-10
delt=5
itermax=150
ndim=3;
funcfile=diode.log
ascfile=diode.asc
cirfile=diode.net
* cmd line without cirfilename !
spicecmdline=scad3 -b
simendfile=simend_ltspice.exe
lolimits=1e-19 2e-9 0.2 ;
uplimits=1e-8 50 5.0 ;
initvals=1e-20 0.001 0.01 ;
varnames={isopt}_{rsopt}_{Nopt}
idum=1
temptr=0
epsilon=0.4
nr_temp_iter=3
debug=0
absftol=1e-5
Palotas - 127 -
diode.asc
measckth
Startwerte gemessene
I-U Kennlinie I=(I(D1)-I(Rm))**2
.param isopt=2.5e-9
.param rsopt=.1
.param nopt=1.5 .DC LIN Vd 0.6V 1.2V 10mV
Palotas - 128 -
diode.log
Circuit: * C:spice\sim\optimierung\diode_DUT\diode.asc
Palotas - 129 -
Ergebnis der Optimierung
measckth
Startwerte gemessene
I-U Kennlinie I=(I(D1)-I(Rm))**2
.param isopt=2.5e-9
.param rsopt=.1 .meas DC cost RMS (v(costx))
.param nopt=1.5 .DC LIN Vd 0.6V 1.2V 10mV
Palotas - 130 -
2.6A
2.4A
2.2A
2.0A
1.8A
1.6A I(D1)
1.4A
1.2A
240mA
I(D1) I(Rm)
200mA
160mA
120mA
80mA
40mA
0mA
0.60V 0.66V 0.72V 0.78V 0.84V 0.90V 0.96V 1.02V 1.08V 1.14V 1.20V
Palotas - 131 -
7 Zu Modellierung und Simulation des EMV - Verhaltens
Palotas - 133 -
Spektrum: simuliert (Testcircuit: aufw_emv.cir)
120
120
80
60
50
100KHz 300KHz 1.0MHz 3.0MHz 10MHz 30MHz
FFT{V(60)} Frequency
Palotas - 134 -
Spektrum: gemessen
Palotas - 135 -