Documenti di Didattica
Documenti di Professioni
Documenti di Cultura
1
Circuiti CMOS
3
CMOS Inverter
4
CMOS Inverter
7
Caratteristica di trasferimento
8
Caratteristica di trasferimento
VTN = |VTP| = VT
9
Caratteristica di trasferimento
10
Caratteristica di trasferimento
Vi>VT
11
Caratteristica di trasferimento
12
Caratteristica di trasferimento
Vo VDD
13
Caratteristica di trasferimento
14
Caratteristica di trasferimento
La caratteristica di trasferimento
è simmetrica quando le
caratteristiche dei dispositivi sono
uguali: VTN=|VTP| e Kn=Kp
N W W
assumeremo: 2.5 e quindi per invertitore simmetrico: 2.5
P L P L N
15
Ritardo di propagazione
16
Ritardo di propagazione
17
Ritardo di propagazione
18
Ritardo di propagazione
19
Ritardo di propagazione
Vdd / 2
t plh = C
Analogamente si ottiene il tplh: K p' W
( )
2
VDD - VT
2 L P
20
Ritardo di propagazione
Ricordiamo che:
W ' W W n W
Kn = Kp = K K = K p =
'
L
n
n
L
p L
p p L n
Vdd / 2
tp = C
1
K (VDD - VT )
2
21
Capacità di carico
Come sappiamo la capacità di carico è dovuta essenzialmente alla
capacità parassita della linea di interconnessione (che collega
l’invertitore al suo fan-out) ed alla capacità offerta dal fan-
out stesso. La Figura mostra il semplice caso di un invertitore che pilota
un fan-out unitario:
22
Capacità di carico
CG=(WNLNC'ox) + (WPLPC'ox)
23
Scelta della L dei MOS
CG=(WNLNC'ox) + (WPLPC'ox)
Vdd / 2
tp = C
1
K (VDD - VT )
2
24
Scelta della W dei MOS
Vdd / 2
tp = C CG=(WNLNC'ox) + (WPLPC'ox)
1
K (VDD - VT )
2
2
Mentre la scelta della L è immediata, lo stesso non può dirsi per la
W dei dispositivi. Aumentando la W aumenta K (e ciò tende a
ridurre i tempi di propagazione) ma al contempo aumenta la
capacità carico (peggiora il ritardo e, come vedremo fra breve, la
potenza dissipata).
In definitiva, per un invertitore CMOS simmetrico abbiamo un
solo grado di libertà, legato alla scelta di WN , infatti:
WP = 2.5 WN (per ottenere caratteristiche simmetriche)
LN=LP = dimensione minima offerta dalla tecnologia
25
Esempio 1
VDD = 3.3V A
K = 100
'
n
C = 0.1 pF V2
A
VTN = -VTP = 0.75V K p = 40 2
'
26
Esempio 1
27
Esempio 1
2 L n
per Lmin=100nm:
W VDD / 2
Wn = 203nm
= C K' = 2.03
L n n
t phl (VDD - VTN )
2
Wp = 507nm
2
28
Esempio 2
VDD=3.3V
2.5 2.5 K'N =75 A/V2
K'P = K'N /2.5
0.5 0.5
VTN = 0.8V
1 1 VTP=|VTn|,
0.5 0.5 C'OX =4 fF/m2
L=0.5m
fan-out=3
29
Esempio 2
CtotVDD / 2
tp = = 37 ps
K
(VDD - VT )
2
30
Esempio 3
2.5 2.5
0.5 Poiché
0.5 la capacità è 100 volte
maggiore rispetto all'esempio 2,
1 il 1tempo di propagazione sarà
0.5 anch'esso
0.5 100 volte maggiore:
tP=3.7 ns
fan-out=3
31
Stadi separatori (buffer)
32
Stadi separatori (buffer)
Il ritardo complessivo
2.5Wn/L 2.5 x Wn/L può essere
2.5 2.5 2.5 2.5
0.5 0.5 0.5 0.5 minimizzato, agendo
sulle dimensioni del
1 1 1 1 buffer, ovvero sul
xWn/L CL
0.5 0.5 0.5 0.5 parametro x
Co Wn/L
fan-out=3 fan-out=3
buffer
34
Stadi separatori (buffer)
1 1
xWn/L 1 1 ritardo del secondo invertitore è:
Il
0.5 0.5 0.5 CL 0.5
Co Wn/L xCo tpo (CL/xCo) (l'invertitore è più
fan-out=3 fan-out=3 grande di un fattore x rispetto al
primo, ma la capacità di carico è più
x tpo tpo CL/(xCo) grande di un fattore CL/Co
36
Stadi separatori (Esempio)
CoVDD / 2
t p0 =
2.5 2.5 K (V - V )2 = 12.3 ps
DD T
0.5 0.5
1 In 1assenza di buffer:
CL tp=tpo
0.5 0.5 CL/Co= 3.7 ns
fan-out=3
37
Stadi separatori (Esempio)
2.5/0.5 43.2/0.5
2.5 2.5 2.5 2.5
0.5 0.5 0.5 0.5
1 1 1 1
0.5 17.3/0.5
0.5 0.5 CL 0.5
Co 1/0.5 xCo
fan-out=3 fan-out=3
38
Buffer ottimo
y2Wp yN-1Wp
yWp
Wp
buffer
39
Buffer ottimo
y2Wp yN-1Wp
yWp
Wp
Co Wn yWn y2Wn
yN-1Wn
yCo y2Co yN-1Co
t1 = t po yCo / Co = yt po
t N = t po CL / ( y N -1Co)
t2 = t po y 2 Co / ( yCo) = yt po
40
Buffer ottimo
t1 = yt po
t2 = yt po imponendo:
... CL / ( y N -1Co) = y
t N -1 = yt po rendiamo uguali i
ritardi di tutti gli
t N = t po CL / ( y N -1Co)
stadi.
Deve essere:
ln(CL / Co)
y = CL / Co
N
N ln( y ) = ln(CL / Co) N=
ln( y )
41
Buffer ottimo
42
Buffer ottimo
Il ritardo ottimo è:
tTOT ,OPT = et po ln(CL / Co)
43
Stadi separatori (Esempio)
ovviamente il numero di
invertitori deve essere intero! Si
Nopt = ln(CL / Co) = 5.7 → 6 devono aggiungere 5 invertitori
allo stadio iniziale
44
Dissipazione di Potenza
45
Dissipazione di Potenza
46
Dissipazione di potenza dinamica
Consideriamo un invertitore CMOS,
sottoposto ad un ingresso che
produce delle commutazioni nel
circuito, con un periodo T.
Il generatore di tensione VDD, che
alimenta il circuito, eroga una
corrente i(t)
La potenza istantanea erogata dal generatore e dissipata nell'invertitore
è data da: p(t) = VDD i(t)
Il parametro più significativo è la potenza media erogata dal
generatore e dissipata nell'invertitore, data da:
1
PD = VDD i (t )dt
T T
47
Dissipazione di potenza dinamica
48
Dissipazione di potenza dinamica
49
Dissipazione di potenza dinamica
50
Dissipazione di potenza dinamica
T
uscita
i(t) Corrente
erogata
t dalla VDD
51
Dissipazione di potenza dinamica
52
Dissipazione di potenza dinamica
VDD
1 1
PD = CVDD dvO = CVDD
2
T 0
T
PD = f C V 2
DD
Dove f è la frequenza del segnale d’ingresso.
53
Dynamic Voltage and Frequency scaling
Ricordiamo che i ritardi di propagazione di un circuito CMOS
dipendono dalla tensione di alimentazione ed in particolare si
riducono al decrescere della tensione di alimentazione:
CVDD / 2
tp =
K
(VDD - VT )
2
2
Abbiamo dunque due esigenze contrastanti: al fine di massimizzare
la velocità dei circuiti è opportuno aumentare la tensione di
alimentazione, mentre è opportuno diminuirla per contenere la
potenza dissipata.
Nei microprocessori attuali si cerca di adattare la tensione di
alimentazione alla frequenza di funzionamento richiesta, in
modo da ottimizzare la dissipazione di potenza
54
Dynamic Voltage and Frequency scaling
55
Esempio
56
Esempio (cont.)
2
(VDD - VT )
2
Risulta, quindi: f
VDD
Questa relazione, ottenuta per un semplice invertitore, vale anche
per un sistema molto più complesso come un microprocessore
57
Esempio (cont.)
(VDD - VT )
2
(V 'DD - 0.5)
2
3
(V 'DD - 0.5)
2
3 = 4.44 = V 'DD
V 'DD 4.44
V'DD=1.51V
59
Esempio (cont.)
2
P ' f ' VDD '
Si ha quindi: =
P f VDD
Sostituendo i valori numerici:
P'=2.188P=65.7W
60
Multicore
61
Esempio 2
Un microprocessore opera ad un frequenza di 4GHz dissipando una
potenza di 80W. La tensione di alimentazione è: VDD=1.2V, la
tensione di soglia è: VT=0.4V.
62
Esempio 2 (continua)
63
Esempio 2 (continua)
64
Esempio 2 (continua)
1 CVDD / 2
Sappiamo che: f ; con: tp =
tp K
(VDD - VT )
2
2
(VDD - VT )
2
Ovvero: f = A
VDD
La costante di proporzionalità, A, si può ricavare dai dati del
problema:
fVDD
A= = 7.5GHz / V
(VDD - VT )
2
65
Esempio 2 (continua)
(VDD - 0.4 )
2
Si ha dunque: f = 7.5
VDD
Risolvendo l'equazione precedente in VDD, possiamo calcolare la tensione
di alimentazione che ci consente di operare ad f=2GHz.
Si ha: V'DD = 0.89V
La potenza dissipata da ogni core, essendo proporzionale a: f V2DD diviene:
Pcore / Piniziale = (1/2) (0.89/1.2)2 = 0.275
Si ha quindi: Pcore= 80×0.275 = 22W
Avendo due core: Ptot(dual-core)=44W
La dissipazione di potenza si riduce circa del 50%
66
Esempio 2 (continua)
Nel caso quad-core, ogni core può operare ad 1GHz; Risolvendo l'equazione
precedente in VDD, possiamo calcolare la nuova tensione di alimentazione:
Si ha: V"DD = 0.71V
La potenza dissipata da ogni core, essendo proporzionale a: f V2DD diviene:
Pcore / Piniziale = (1/4) (0.71/1.2)2 = 0.0875
Si ha quindi: Pcore= 80×0.0875 = 7W
Avendo quattro core: Ptot(quad-core)=28W
67
Riduzione in scala dei circuiti CMOS
68
Scaling CMOS
69
Scaling a campo costante
70
Scaling a campo costante
71
Scaling a campo costante
• Vediamo cosa accade per gli altri parametri:
C'ox=eox/tox → x C'ox (la capacità di gate per unità di area)
Cg=C'ox W L → C'ox / x (capacità di gate)
K'=C'ox → x K'
K=K'W/L → x K
Imax=0.5K(VDD-VT)2 → Imax / x (corrente in pinch-off)
Valutiamo ora il tempo di propagazione:
tp ≈ (VDD/2)Cg/Imax → tp / x
Il ritardo si riduce (migliora) del fattore di scaling x
La frequenza a cui può funzionare il circuito aumenta di x
f→fx
72
Scaling a campo costante
73
Scaling a campo costante
Riassumendo:
tp → tp / x
f→fx
PD → PD /x2
PD,tot → PD,tot
NM → NM / x
74
Scaling a campo costante
75
Esempio 1 – scaling a campo costante
77
Esempio 2 – scaling a tensione costante
79
Esempio 2 (continua)
80