Anteprima
Vedrai una selezione di 10 pagine su 87
Tesina ASI progettazione microprocessore pico Pag. 1 Tesina ASI progettazione microprocessore pico Pag. 2
Anteprima di 10 pagg. su 87.
Scarica il documento per vederlo tutto.
Tesina ASI progettazione microprocessore pico Pag. 6
Anteprima di 10 pagg. su 87.
Scarica il documento per vederlo tutto.
Tesina ASI progettazione microprocessore pico Pag. 11
Anteprima di 10 pagg. su 87.
Scarica il documento per vederlo tutto.
Tesina ASI progettazione microprocessore pico Pag. 16
Anteprima di 10 pagg. su 87.
Scarica il documento per vederlo tutto.
Tesina ASI progettazione microprocessore pico Pag. 21
Anteprima di 10 pagg. su 87.
Scarica il documento per vederlo tutto.
Tesina ASI progettazione microprocessore pico Pag. 26
Anteprima di 10 pagg. su 87.
Scarica il documento per vederlo tutto.
Tesina ASI progettazione microprocessore pico Pag. 31
Anteprima di 10 pagg. su 87.
Scarica il documento per vederlo tutto.
Tesina ASI progettazione microprocessore pico Pag. 36
Anteprima di 10 pagg. su 87.
Scarica il documento per vederlo tutto.
Tesina ASI progettazione microprocessore pico Pag. 41
1 su 87
D/illustrazione/soddisfatti o rimborsati
Disdici quando
vuoi
Acquista con carta
o PayPal
Scarica i documenti
tutte le volte che vuoi
Estratto del documento

.END

inseriscono le righe contenenti la descrizione dei dispositivi che compongono il

circuito e le modalità di analisi. Non vi è un ordine prestabilito da dare alle

righe di comando per una corretta descrizione del circuito.

Il comando consente di richiamare un altro listato SPICE

.include

Per ogni elemento che compone il circuito deve essere specificato, nell’ordine:

- il nome

- i nodi cui sono collegati i terminali

- il valore dell’elemento circuitale o il nome di un opportuno modello

- eventuali opzioni

La prima lettera del nome denota il tipo di dispositivo:

R per le resistenze

C per le capacità

L per le induttanze

V per i generatori di tensione

I per i generatori di corrente

M per i transistori MOS

Q per i transistori bipolari

D per i diodi

Separati da uno o più spazi, dopo il nome, si elencano i nodi relativi ai terminali

dei dispositivi, che possono essere in numero di due o più a seconda del

dispositivo in considerazione. E’ possibile utilizzare cifre o lettere per indicare i

nodi; il terminale di massa è individuato dal nodo ‘0’ che deve essere presente

in ogni circuito.

Per generatori di tensione, generatori di corrente, resistenze, condensatori ed

induttanze avremo due nodi da definire ed un unico parametro da assegnare. I

valori possono essere espressi con notazione scientifica; si possono inoltre

utilizzare fattori di scala mnemonici come:

9

G per 10 65

6

MEG per 10

3

M per 10

−6

U per 10

−9

N per 10

−12

P per 10

−14

F per 10

Ad esempio, la linea:

VGSn GateN 0 1

rappresenta un generatore di tensione, denominato VGSn, collegato fra il nodo

denominato GateN e massa (il nodo 0) di valore 1V.

Per i MOSFET l’ordine dei terminali è: DRAIN, GATE, SOURCE e BODY. Per ogni

MOS si deve inoltre specificare il valore di W e di L (opzionalmente è possibile

assegnare anche i valori di area e perimetro di source e drain).

Ad esempio, la linea:

MN1 DrainN GateN 0 0 NMOS_VTL L=45n W=90n

rappresenta un NMOS, in cui il drain è collegato al nodo DrainN, la gate al nodo

GateN, mentre source e body sono a massa. Il dispositivo ha la L di 45nm e W

di 90nm; il suo modello è denominato: NMOS_VTL

Il modello del dispositivo è descritto nel file richiamato con il comando

.include.

Il comando consente di definire la temperatura a cui si effettua la

.temp

simulazione

Il comando consente di effettuare una simulazione in continua, in cui il

.dc

valori del generatore viene variato da un valore minimo ad uno massimo, con

un certo step.

Eseguiamo dunque la simulazione col comando “spectre mos_curves.spice”

e visualizziamo il risultato, salvato nella cartella mos_curves.raw, col comando

“wavescan”. Scegliamo di visualizzare le correnti di drain dei MOS MN1 e MN2,

denominate i(MN1) e i(MN2): 66

Fig 5.1

Si osserva che il dispositivo MN1, cioè quello a canale corto, presenta una corrente di

saturazione con una pendenza maggiore rispetto al dispositivo MN2.

Si propone di seguito per il dispositivo MN1 un confronto tra i risultati ottenuti dalla

simulazione e i risultati previsti dai modelli analitici a canale corto e a canale lungo; in

particolare si confronta la corrente di drain valutata per Vgs=Vds=1.1V:

Modello a canale corto Modello a canale lungo

Spectre 2

V V

2

Corrente I = k [2(Vgs – V ) - ](1+

D n th sat sat

Spice 2

I = k (Vgs – V ) (1+ λ Vds)

D n th

λ Vds)

i(MN1) 116 µA 117.18 µA 179.18 µA

Si nota che il modello a canale corto si avvicina di più all’analisi in spice

rispetto al modello a canale lungo.

Si osserva inoltre che il nostro modello analitico, a differenza di spice come si

nota dalle caratteristiche, non prevede la diminuzione della tensione di soglia

all’aumentare della Vds. 67

Tracciamo ora la transcaratteristica dei due dispositivi, con Vds costante pari a

1.1V e Vgs variabile tra 0V e 1.1V, modificando in questo modo le righe di

codice relativi al generatore di tensione e all’analisi DC:

...

VDSn DrainN 0 1.1V

...

.dc VGSn 0 1.1 0.1

Si ottengono i seguenti andamenti: Fig 5.2

Si nota che per il dispositivo MN1, quello a canale più corto, l’andamento della

corrente rispetto a Vgs è lineare, mentre per il dispositivo MN2 l’andamento è

quadratico.

Studiamo ora le caratteristiche di un PMOS con dimensioni di canale pari a

L=45nm e W=90nm. Ecco il listato usato per la simulazione:

**** Title: pmos_curves.spice

.include /home/caduser/NCSU-FreePDK45-1.3/FreePDK45/ncsu_basekit/models/hspice/hspice_nom.include

*.include /home/caduser/NCSU-FreePDK45-1.3/FreePDK45/ncsu_basekit/models/hspice/hspice_ss.include

*.include /home/caduser/NCSU-FreePDK45-1.3/FreePDK45/ncsu_basekit/models/hspice/hspice_ff.include

*Generatori di segnali

* Alimentazione

VDD VDD 0 1.1

VSGp VDD Gatep 0V

VSDp VDD Drainp 0V

* Pmos di cui studiare le caratteristiche

MP1 VDD Gatep Drainp Vdd PMOS_VTL L=45n W=90n

**************************************************************

* PARAMETRI DELLA SIMULAZIONE

**************************************************************

.dc VSDp 0 1.1 0.01 VSGp 0 1.1 0.1

.temp 25

**************************************************************

* PROBES: 68

**************************************************************

.probe v(*)

.probe i(*)

.end

Si ottengono i seguenti andamenti: Fig 5.3

La corrente per Vsg=Vsd=1.1 V vale 48 µA. La corrente del NMOS a parità di

dimensioni e polarizzazione vale 116 µA; il rapporto i(MN1)/i(MP1) vale 2.42,

coerentemente con quanto ci si può aspettare a causa delle diverse mobilità

dei portatori.

Leakage

Effettuiamo ora una simulazione allo scopo di evidenziare la corrente di

leakage, che scorre nel dispositivo quando questo è interdetto. Simuliamo

ancora MN1, con Vds che varia tra 0 e 1.1V, e Vgs fissata a 0V. Mostriamo

l’andamento della corrente di leakage tra drain e source in scala logaritmica: 69

Fig 5.4

La corrente cresce con Vds, coerentemente a quanto previsto dal modello

analitico: −Vds

Vgs−Vt

Id = Is (1 - )

m Vt h Vt h

e e

dove “Vt” è la tensione di soglia, “Vth” la tensione termica e “m” una costante

(circa pari a 2).

La corrente massima ottenuta dalla simulazione, calcolata per Vds =1.1V, vale

circa 10.5 nA.

Aumentando la lunghezza del canale a 90nm si ottiene il seguente andamento,

con valore massimo della corrente pari a 400pA, di gran lunga inferiore alla

corrente di leakage ottenuta per l’altro dispositivo : 70

Fig 5.5

Eseguiamo ora delle simulazioni al variare della temperatura modificando la

scheda .temp come di seguito:

.temp -40 25 125

La corrente di leakage aumenta con la temperatura, come mostrato dal

seguente grafico in scala lineare: 71

Fig 5.6

Col modello fast i valori della corrente sono maggiori rispetto ai precedenti:

Fig 5.7

Analisi dinamica

Ci proponiamo di simulare il seguente listato:

**** Title: inverter.spice

.include /home/caduser/NCSU-FreePDK45-

1.3/FreePDK45/ncsu_basekit/models/hspice/hspice_nom.include

*.include /home/caduser/NCSU-FreePDK45-

1.3/FreePDK45/ncsu_basekit/models/hspice/hspice_ss.include

*.include /home/caduser/NCSU-FreePDK45-

1.3/FreePDK45/ncsu_basekit/models/hspice/hspice_ff.include

*Generatori di segnali

Vsupply VDD 0 1.1

Vin in 0 pulse 0 1.1 20p 10p 10p 500p 1n

MN out in 0 0 NMOS_VTL L=45n W=90n

MP VDD in out VDD PMOS_VTL L=45n W=180n

Cload out 0 5f

**************************************************************

* PARAMETRI DELLA SIMULAZIONE

**************************************************************

.tran 1p 1.2n

.temp 25

**************************************************************

* PROBES:

**************************************************************

.probe v(*)

.probe i(*) 72

.measure tran tpHLnom TRIG V(in) Val=0.55 RISE=1 TARG V(out) VAL=0.55 FALL=1

.measure tran tpLHnom TRIG V(in) Val=0.55 FALL=1 TARG V(out) VAL=0.55 RISE=1

.end

Il circuito simulato è il seguente: Fig 5.8

Ad esso abbiamo applicato una tensione d’ingresso che oscilla tra 0V e 1.1V

con ritardo iniziale pari a 20ps, tempi di salita e discesa pari a 10 ps, periodo di

1ns e duty cicle 50%; la capacità di carico vale 5fF. La simulazione in transitorio

dura 1.2ns con timestep di 1ps. I comandi .measure servono per calcolare i

tempi di propagazione. Ecco il circuit inventory, ovvero il numero di dispositivi

trovati dal simulatore.

Eseguiamo la simulazione ottenendo i seguenti andamenti dei segnali di

ingresso e uscita dell’invertitore: 73

Fig 5.9

I comandi .measure forniscono i seguenti valori dei tempi di propagazione:

Fig 5.10

Le resistenze equivalenti dei dispositivi, utilizzando i modelli switch-level sono:

t

Rn = = 8.56 kΩ

PHL

0.69∗C

t

Rp = = 10.37 kΩ

PLH

0.69∗C 74

Eseguiamo ora due analisi parametriche tese a valutare l’impatto della

capacità di carico e delle non idealità del segnale di ingresso sui tempi di

propagazione.

Nella prima simulazione consideriamo come parametro la capacità di carico; il

file da simulare è il seguente:

**** Title: inverter_cload.spice

.param KK=5f

.include /home/caduser/NCSU-FreePDK45-

1.3/FreePDK45/ncsu_basekit/models/hspice/hspice_nom.include

*.include /home/caduser/NCSU-FreePDK45-

1.3/FreePDK45/ncsu_basekit/models/hspice/hspice_ss.include

*.include /home/caduser/NCSU-FreePDK45-

1.3/FreePDK45/ncsu_basekit/models/hspice/hspice_ff.include

*Generatori di segnali

Vsupply VDD 0 1.1

Vin in 0 pulse 0 1.1 20p 10p 10p 500p 1n

MN out in 0 0 NMOS_VTL L=45n W=90n

MP VDD in out VDD PMOS_VTL L=45n W=180n

Cload out 0 KK

**************************************************************

* PARAMETRI DELLA SIMULAZIONE

**************************************************************

.tran 1p 1.2n sweep KK 2f 20f 1f

.temp 25

**************************************************************

* PROBES:

**************************************************************

.probe v(*)

.probe i(*)

.measure tran tpHLnom TRIG V(in) Val=0.55 RISE=1 TARG V(out) VAL=0.55 FALL=1

.measure tran tpLHnom TRIG V(in) Val=0.55 FALL=1 TARG V(out) VAL=0.55 RISE=1

.end

Nel listato è stato usato un parametro, di nome KK e valore 5f, al fine di definire

il valore della capacità di carico. Si esegue un’analisi in transitorio, variando il

parametro da 2f a 20f. Si mostrano quindi gli andamenti dei tempi di

propagazione in funzione della capacità d

Dettagli
Publisher
A.A. 2018-2019
87 pagine
SSD Ingegneria industriale e dell'informazione ING-INF/01 Elettronica

I contenuti di questa pagina costituiscono rielaborazioni personali del Publisher ProfElettr di informazioni apprese con la frequenza delle lezioni di Architettura dei sistemi integrati e studio autonomo di eventuali libri di riferimento in preparazione dell'esame finale o della tesi. Non devono intendersi come materiale ufficiale dell'università Università degli studi di Napoli Federico II o del prof Strollo Antonio Giuseppe Maria.