Sei sulla pagina 1di 34

IL SIMULATORE SPICE

Corso di Microelettronica A.A. 2001/2002 Ing. G. Giustolisi


1

SPICE - Formato dei files


EDIT Blocco note
Word processor ASCII

libreria.lib
ASCII

EDIT Blocco note


Word processor ASCII

nomefile.out nomefile.cir
ASCII

SPICE
Simulatore

ASCII

nomefile.dat
binario

PROBE
Post-Processore Grafico

nomefile.sch
binario

SCHEMATIC
Disegno

libreria.slb
binario
2

SPICE - Nodi
R1 7 2 Vin 5 1.5 mH C1 10 uF L1 3

Vanno assegnati al circuito Gli elementi vanno connessi tra i nodi Sono definiti da numeri interi Il nodo 0 predefinito per la massa (gnd)
3

SPICE - Valore degli elementi


Valori ammessi
Notaz. in virgola mobile 5 5. 5.0 5e+3 5.0e+3 5.e3

Suffissi di Scala
F = 1e-15 P = 1e-12 N = 1e-9 U = 1e-6 M = 1e-3 K = 1e3 MEG = 1e6 G = 1e9 T= 1e12

Suffissi di Unit
V = volt A = amp HZ = hertz OHM = ohm H = henry F = farad DEG = degree

SPICE - Elementi circuitali


La prima lettera identifica lelemento Il nome pu contenere lettere o numeri
B C D E F G H I J GaAs MESFET Capacitori Diodi VCVS CCCS VCCS CCVS Generatori di corrente J-FET K L M Q R S V W Mutue induttanze Induttori MOSFET BJT Resistenze Switch contr. in tensione Generatori di tensione Switch contr. in corrente
5

SPICE - Formato del circuito


Titolo Descrizione del circuito Descrizione delle analisi Descrizione delle uscite .END
* + Indica un commento Indica una prosecuzione della linea precedente
6

SPICE - Modelli di generatori


Forma donda esponenziale
EXP (V1 V2 TRD TRC TFD TFC)

Forma donda quadra


PULSE (V1 V2 TD TR TF PW PER)

SPICE - Modelli di generatori


Forma donda PWL
PWL (T1 V1 T2 V2 TN VN)

Forma donda sinusoidale


SIN (VO VA FREQ TD ALP THETA)

V = Vo + V A e (t td )sin [2 f (t td ) ]

SPICE - Generatori indipend.


Generatori di tensione
V<nome> N+ N- [DC <val.>] [AC <(ampiezza) val.> <(fase) val.>] + [(valori di transitorio) + [PULSE] [SIN] [EXP] [PWL] [SFFM] [argomenti]]

Generatori di corrente
I<nome> N+ N- [DC <val.>] [AC <(ampiezza) val.> <(fase) val.>] + [(valori di transitorio) + [PULSE] [SIN] [EXP] [PWL] [SFFM] [argomenti]]

La corrente scorre dal nodo + al nodo -

SPICE - Generatori dipend.


Generatori di tensione controllati in tensione
E<nome> N+ N- NC+ NC- <(guadagno di tensione) val.>

Generatori di corrente controllati in tensione


G<nome> N+ N- NC+ NC- <(guadagno di transconduttanza) val.>

Generatori di corrente controllati in corrente


F<nome> N+ N- VN <(guadagno di corrente) val.>

Generatori di tensione controllati in corrente


H<nome> N+ N- VN <(guadagno di transresistenza) val.>

10

SPICE - Variabili di uscita


Vengono utilizzate le seguenti tabelle
Simboli a due terminali
C D E F G H L R I V capacitori diodi vcvs cccs vccs ccvs induttori resistori generatori di corrente generatori di tensione

Simboli a pi terminali
M Mosfet D (Drain) G (Gate) S (Source) B (Bulk) C (Colletore) B (Base) E (Emettitore) S (Substrato)

Q BJT

11

SPICE - Variabili di uscita


Analisi in DC e in transitorio
Uscite di tensione
V(<nodo>) Tensione V(N1,N2) Tensione V(<nome>) Tensione Vx(<nome>) Tensione Vxy(<nome>) Tensione al <nodo> rispetto a massa al nodo N1 rispetto al nodo N2 ai capi di un dispositivo a due terminali al terminale x del dispositivo a pi terminali tra i terminali x e y di un dispositivo a pi terminali

Uscite di corrente
I(<nome>) Corrente attraverso <nome> Ix(<nome>) Corrente al terminale x di <nome>

12

SPICE - Variabili di uscita


Analisi in AC
Bisogna tenere presente che si manipolano numeri complessi

Valgono le stesse regole viste in precedenza ma si possono aggiungere i seguenti suffissi


(none) M DB P R I Ampiezza Ampiezza Ampiezza in dB Fase Parte Reale Parte Immaginaria
13

SPICE - Sintassi per elementi


Elementi passivi
<nome elemento> <nodo +> <nodo -> <valore>

Elementi attivi
Diodi

D<nome> NA NK <nome modello> [(area) val.]

BJT
Q<nome> NC NB NE [NS] <nome modello> [(area) val.]

MOSFET
M<nome> ND NG NS NB <nome modello> [W=<val.>] [L=<val.>] + [AD=<val.>] [AS=<val.>] [PD=<val.>] [PS=<val.>] + [M=<val.>]

14

SPICE - Comandi punto


Esistono dei comandi per il simulatore che iniziano con un punto Permettono di specificare
Modelli Tipi di uscite Opzioni Tipi di analisi Fine del file
15

SPICE - .LIB e .INC


Il comando .LIB permette di specificare un file esterno contenente le librerie dei modelli adottati
.LIB <nomefile.lib>

Il comando .INC permette di includere un file nel file corrente


.INC <nomefile.cir>

16

SPICE - .PRINT
Il comando .PRINT permette di stampare sotto forma di tabella nel file .out il valore delle analisi DC, AC, di transitorio e di rumore
.PRINT .PRINT .PRINT .PRINT DC [variabili di uscita] AC [variabili di uscita] TRAN [variabili di uscita] NOISE [variabili di uscita]

Esempio
.PRINT DC V(2), V(3,5), I(VIN), IC(Q2)
17

SPICE - .PLOT e .PROBE


Il comando .PLOT genera un grafico con i caratteri ASCII delle variabili di uscita specificate (non vi aspettate
.PLOT .PLOT .PLOT .PLOT DC [variabili di uscita] AC [variabili di uscita] TRAN [variabili di uscita] NOISE [variabili di uscita]

qualit fotografica)

Il comando .PROBE genera il file .dat utilizzato dal post processore grafico
.PROBE
18

SPICE - .OPTIONS
Il comando .OPTIONS specifica delle opzioni per il simulatore
.OPTIONS [(opzioni) nome] [<(opzioni) nome>=<valore>]

Alcune opzioni utili


ITL5 Limite di iterazioni per lanalisi in transitorio [5000]
(ITL5=0 le setta a infinito)

RELTOL Accuratezza relativa di tensioni e correnti [1e-3] ABSTOL Miglior accuratezza delle correnti [1pA] VNTOL Miglior accuratezza delle tensioni [1uV]

19

SPICE - .OP e .NODESET


.OP (operating point) scrive una lista dettagliata del punto di lavoro di ogni dispositivo attivo nel file .out .NODESET specifica al simulatore di impostare la tensione di un nodo ad un determinato valore prima di calcolare il punto di lavoro. usato per facilitare la convergenza.
.NODESET V(1)=V1 V(2)=V2 V(N)=VN

20

SPICE - .TF
.TF ritorna il valore numerico del guadagno in continua tra due nodi nonch delle resistenze di ingresso e di uscita.
.TF VOUT VIN .TF IOUT VIN

21

SPICE - .DC DC Sweep


.DC calcola la transcaratteristica in continua spazzolando la variabile di ingresso nellintervallo specificato
.DC .DC .DC .DC VIN IIN VIN IIN VSTART ISTART VSTART ISTART VSTOP ISTOP VSTOP ISTOP VINCR IINCR VINCR IIN ISTART ISTOP IINCR IINCR VIN VSTART VSTOP VINCR

22

SPICE - .AC
.AC calcola la risposta in frequenza del circuito nellintervallo specificato
.AC LIN NP FSTART FSTOP .AC OCT NP FSTART FSTOP .AC DEC NP FSTART FSTOP

Nel caso di analisi lineare NP il numero totale di punti. Nel caso di analisi per decade o per ottava, NP rispettivamente il numero di punti per decade o per ottava.
23

SPICE - .NOISE
.NOISE analizza il rumore proveniente da resistori e semiconduttori.
Richiede il comando .AC .NOISE V(N+, N-) SOURCE M
Per ogni punto dellanalisi AC, calcola il rumore alluscita V(N+, N-) e il rumore equivalente in ingresso al generatore specificato M il numero di punti calcolati

24

SPICE - .TRAN
.TRAN esegue lanalisi in transitorio
.TRAN TSTEP TSTOP [TSTART TMAX] Lanalisi parte sempre da t=0 TSTEP lintervallo di stampa (.PRINT) TSTOP il tempo finale TSTART specifica da quale punto stampare i risultati TMAX specifica il massimo intervallo temporale
25

SPICE - .FOUR
.FOUR calcola le componenti delle armoniche di una data frequenza e la relativa THD
Richiede il comando .TRAN .FOUR FREQ V1 V2 VN .FOUR FREQ I1 I2 IN
FREQ la frequenza fondamentale V1, V2 VN (o I1, I2 IN) sono le uscite dellanalisi Lanalisi effettuata nellintervallo TSTOP-PERIOD
26

SPICE - Il file stud_lib.lib


Elementi disponibili
BJT
NPN PNP C2, C6, C8, C12, F12 QP NCH_1 PCH_1

MOSFET
PMOS NMOS

27

SPICE - Librerie BJT


Q1 1 2 3 0 C2
.MODEL C2 + NPN + IS =1.00E-018 + NF =1.00E+000 + TR =1.00E-008 + ITF =3.00E-003 + VAR =4.50E+000 + ISE =3.40E-017 + NC =1.50E+000 + IRB =0.00E+000 + CJE =5.63E-015 + CJC =8.20E-015 + XCJC =1.30E-001 + MJS =3.20E-001 + XTI =3.00E+000 + FC =8.00E-001 BF NR XTF PTF IKF NE RE RBM VJE VJC CJS EG KF =1.00E+002 =1.00E+000 =8.00E+000 =3.70E+001 =1.77E-003 =1.80E+000 =2.00E+001 =1.00E+002 =1.05E+000 =8.60E-001 =8.56E-015 =1.17E+000 =0.00E+000 BR TF VTF VAF IKR ISC RB RC MJE MJC VJS XTB AF =3.00E+000 =6.00E-012 =1.50E+000 =5.50E+001 =2.00E-004 =1.80E-017 =4.74E+002 =3.00E+002 =1.60E-001 =3.40E-001 =8.20E-001 =1.50E+000 =1.00E+000

28

SPICE - Librerie MOS


M1 1 + + + 2 3 0 NCH_1 W=2.8u L=1.2u AD=9.52e-12 AS=9.52e-12 PD=12.4u PS=12.4u M=3
=0.290E-09 =0.430E+00 =0.010E-03 =23.80E-09 =0.398E-06 =0.452E+12 =28.70E+04 =77.30E+03 =1.330E+00 CGBO CJSW PB XJ VTO NEFF UEXP DELTA =0.170E-09 =0.250E-09 =0.960E+00 =0.175E-06 =0.736E+00 =5.250E+00 =0.251E+00 =0.000E+00

.MODEL NCH_1 NMOS LEVEL=2 + CGSO =0.290E-09 CGDO + CJ =0.360E-03 MJ + MJSW =0.190E+00 JS + RSH =25.50E+00 TOX + LD =-.050E-06 WD + NSUB =33.30E+15 NFS + UO =515.0E+00 UCRIT + UTRA =0.000E+00 VMAX + KF =0.101E-25 AF

Lmin=1.2u Wmin=2.8u AD=AS=3.4u*W PD=PD=2*W+6.8u

29

SPICE - Esempio 1
Calcolo di F
Iin 3

E1 + 1 1 2 Q1 Vcc

Determinazione di Bf * * Elementi * Q1 C B E S Modello Q1 1 2 0 0 C2 E1 2 0 1 0 1 * Generatori Iin 3 1 1m Vcc 3 0 3 * mostra il punto di lavoro .op * .dc generatore start stop incr. .dc Iin 100n 2u .01u * Probe .lib stud_lib.lib .probe .end 30

SPICE - Esempio 1
Dati in uscita
**** BIPOLAR NAME MODEL IB IC VBE VBC VCE BETADC GM RPI RX RO CBE CBC CJS BETAAC CBX FT JUNCTION TRANSISTORS Q1 C2 2.17E-05 1.00E-03 9.40E-01 0.00E+00 9.40E-01 4.62E+01 2.70E-02 1.19E+03 2.73E+02 4.35E+04 8.65E-13 1.23E-15 7.12E-15 3.22E+01 8.25E-15 4.91E+09

31

SPICE - Esempio 2
Curve caratteristiche di un MOS
2

1 M1 Vgs + 0

+ -

Vds

Curve caratteristiche di un MOS * * Elementi * M1 D G S B Modello W=... L=... M1 2 1 0 0 NCH_1 W=30u L=1.2u * Generatori Vds 2 0 3 Vgs 1 0 1 * mostra il punto di lavoro .op * .dc generatore start stop incr. .dc Vds 0 3 .01 Vgs .5 2.5 .5 * Probe .lib stud_lib.lib .probe .end

32

SPICE - Esempio 2
Dati in uscita
**** MOSFETS NAME MODEL ID VGS VDS VBS VTH VDSAT GM GDS GMB CBD CBS CGSOV CGDOV CGBOV CGS CGD CGB M1 NCH_1 8.42E-05 1.00E+00 3.00E+00 0.00E+00 6.98E-01 2.43E-01 4.84E-04 4.50E-06 1.50E-04 0.00E+00 0.00E+00 8.47E-15 8.47E-15 2.21E-16 3.67E-14 0.00E+00 0.00E+00

33

SPICE - Il Manuale
Muhammad H. Rashid SPICE FOR CIRCUITS AND ELECTRONICS USING Pspice Prentice-Hall International Editions
34