Logica Combinatoria - Ingegneria elettrica ed elettronica

Logica Combinatoria
Lucidi del Corso di Elettronica Digitale
Modulo 5
Università di Cagliari
Dipartimento di Ingegneria Elettrica ed Elettronica
Laboratorio di Elettronica (EOLAB)
Logica combinatoria
„
„
Un blocco di logica puramente combinatoria è
un blocco con N variabili di ingresso e M
variabili di uscita che sono funzione (booleana)
degli ingressi presenti in un certo istante.
istante
Ad ogni istante le uscite dipendono solo dagli
i
ingressi
i in
i quell’istante
ll’i t t e NON dalla
d ll storia
t i
passata del circuito
x1
x2
y1
y2
xN
23 Settembre 2009
yM
ED - Logica Combinatoria
Massimo Barbaro
2
Stili di progetto
„
„
Logica statica: l’uscita è sempre connessa
all’alimentazione
all
alimentazione o alla massa (es. static CMOS,
pseudo-NMOS, pass transistor). Esiste cioè sempre un
percorso diretto a bassa impedenza fra una delle
alimentazioni ed il nodo di uscita.
Logica dinamica: il nodo di uscita non è sempre
connesso ad
d una delle
d ll alimentazioni
li
t i i e il dato
d t viene
i
temporaneamente immagazzinato in forma di carica
su una capacità (es.
(es np,
np domino)
23 Settembre 2009
ED - Logica Combinatoria
Massimo Barbaro
3
Logica combinatoria
CMOS statico
Università di Cagliari
Dipartimento di Ingegneria Elettrica ed Elettronica
Laboratorio di Elettronica (EOLAB)
Logica statica CMOS
„
Dall’inverter CMOS è facile ottenere porte
logiche più complesse con gli stessi vantaggi del
singolo inverter:
„
„
„
„
VOH=VDD , VOL=0
Nessuna dissipazione di potenza statica
A i margini
Ampi
i i di rumore
Tempi di salita e discesa confrontabili
opportune regole di progetto)
23 Settembre 2009
ED - Logica Combinatoria
Massimo Barbaro
(con
5
Esempi di gate CMOS
A
B
B
B
A
23 Settembre 2009
A
Z=?
Z=?
A
ED - Logica Combinatoria
B
Massimo Barbaro
6
Logica statica CMOS
Come si capisce la funzione logica implementata da un circuito a
transistor?
■ Si considera ogni possibile combinazione di ingresso, ossia ogni riga
della tabella di verità.
verità
■ Per ogni combinazione di sostituisce
■ ad ogni NMOS:
■ un circuito APERTO se ll’ingresso
ingresso è 0
■ un circuito CHIUSO se l’ingresso è 1
■ ad ogni PMOS:
■ un circuito
i it CHIUSO se l’ingresso
l’i
è0
■ un circuito APERTO se l’ingresso è 1
■ Si verifica, dal circuito risultante, se l’uscita è connessa a massa (0)
oppure a VDD (1)
■ Si riporta il valore logico nella tabella della verità
23 Settembre 2009
ED - Logica Combinatoria
Massimo Barbaro
7
Porta NAND(1)
PMOS accesi,, NMOS spenti
p
1
A
M3
B
B
A
M4
A
B
Z
0
0
1
0
1
1
1
0
1
1
1
0
Z
M2
M1
Z
2
23 Settembre 2009
3
ED - Logica Combinatoria
Z è disconesso
da massa e
connesso a VDD
dunque l’uscita è
un 1 logico
Massimo Barbaro
8
Porta NAND (2)
M2 e M3 accesi, M1 e M4 spenti
1
A
M3
B
B
A
M4
A
B
Z
0
0
1
0
1
1
1
0
1
1
1
0
Z
M2
M1
Z
2
23 Settembre 2009
3
ED - Logica Combinatoria
Z è disconesso
da massa e
connesso a VDD
dunque l’uscita è
un 1 logico
Massimo Barbaro
9
Porta NAND (3)
M2 e M3 accesi, M1 e M4 spenti
1
A
M3
B
B
A
M4
A
B
Z
0
0
1
0
1
1
1
0
1
1
1
0
Z
M2
M1
Z
2
23 Settembre 2009
3
ED - Logica Combinatoria
Z è disconesso
da VDD e
connesso a
massa dunque
l’uscita è uno 0
logico
Massimo Barbaro
10
Porta NAND
„
„
La porta in figura è una
NAND perché l’uscita è
uguale a 0 solo se A e B
sono entrambi 1 (quando
i 2 NMOS del PDN sono
entrambi in conduzione). In
tale condizione il PUN è
sicuramente
i
t interdetto
i t d tt
Se anche uno solo fra A e
B è pari a 0 il percorso
verso massa si interdice e
si chiude uno dei due
percorsii verso VDD (PUN)
quindi l’uscita e 1
23 Settembre 2009
A
ED - Logica Combinatoria
B
A
Z=(AB)’
B
Massimo Barbaro
11
Porta NOR
„
„
La porta in figura è una NOR
perché l’uscita è uguale
p
g
a1
solo se A e B sono
entrambi 0 (quando i 2
PMOS del PUN sono
entrambi in conduzione). In
tale condizione il PDN è
sicuramente
i
t interdetto
i t d tt
Se anche uno solo fra A e B
è pari a 1 il percorso verso
VDD si interdice e si chiude
uno dei due percorsi verso
massa (PDN) quindi
i di l’uscita
l’
it
e0
23 Settembre 2009
ED - Logica Combinatoria
B
A
Z=(A+B)’
A
B
Massimo Barbaro
12
Logica statica CMOS
„
Una generica porta CMOS ha la struttura:
x1
x2
x3
PUN
F(x1,x2,x3)
x1
x2
x3
23 Settembre 2009
PDN
ED - Logica Combinatoria
Massimo Barbaro
13
Caratteristiche logica CMOS
„
„
„
PUN (Pull-Up Network): è una rete di interruttori
PMOS che connettono ll’uscita
uscita a VDD in
corrispondenza delle combinazioni di ingresso per
cui la funzione è F(…)
F(…)=1
1
PDN (Pull-Down Network): è una rete di
interruttori NMOS che connettono ll’uscita
uscita a 0 in
corrispondenza delle combinazioni di ingresso per
cui la funzione è F(…)=0
F( )=0
Le due reti sono complementari, ossia quando è
aperta
t una l’altra
l’ lt è chiusa
hi
e viceversa.
i
Q
Questo
t
evita che ci siano percorsi diretti fra alimentazione
e massa.
23 Settembre 2009
ED - Logica Combinatoria
Massimo Barbaro
14
Interruttori NMOS
Y
Y
A
A
B
B
X
X
Y=X SE A=1 E B=1 (A•B)
23 Settembre 2009
Y=X SE A=1 O B=1 (A+B)
ED - Logica Combinatoria
Massimo Barbaro
15
Interruttori PMOS
Y
Y
A
A
B
B
X
X
Y=X se A=0 E B=0 (A’•B’)
23 Settembre 2009
Y=X se A=0 O B=0 (A’+B’)
ED - Logica Combinatoria
Massimo Barbaro
16
Generica porta CMOS
„
„
„
„
Una generica porta CMOS può essere implementata
partendo dall’espressione
p
p
algebrica
g
o dalla tabella di
verità. La PDN deve essere tale da chiudere il percorso
a massa per le righe in cui F(…)=0 e la PUN tale da
chiudere il percorso a VDD per quelle in cui F(…)=1
F( )=1
Per la dualità delle due reti (teorema di DeMorgan) ogni
volta che i transistor sono in serie nella PDN sono in
parallelo nella PUN e viceversa
Si può sempre partire dall’implementazione della sola
PDN per poi ricavare la PUN oppure viceversa
Non tutte le funzioni sono direttamente implementabili, in
particolar modo le porte CMOS sono sempre invertenti
(per fare una AND è necessario implementare una
NAND con un inverter in cascata)
23 Settembre 2009
ED - Logica Combinatoria
Massimo Barbaro
17
Implementazione di una porta CMOS
PUN: F=G’(x1,x2,x3,+,•) = G(x1’,x2’,x3’ ,•,+)
x1
x2
x3
PUN
La PUN è funzione
L
f
i
di solili segnalili
negati perché è composta da switch
PMOS (si ottiene per DeMorgan
dalla PDN)
F(x
( 1,,x2,,x3)
x1
x2
x3
PDN
Quando G (solo funzione di
AND e OR e dei segnali NON
negati) è vera la PDN
cortocircuita l’uscita a massa
PDN: G(x1,x2,x3,+,•) => F=G’
23 Settembre 2009
ED - Logica Combinatoria
Massimo Barbaro
18
Implementazione di una porta CMOS
„
Realizzando la PDN si è in grado di implementare (sono
NMOS) una qualsiasi funzione G di soli operatori AND e
OR
„
„
(es.
Quando G=1 l’uscita è connessa a massa quindi F=0
allora:
„
„
PDN: G(x1,x2,…,xN,+,•)
G=AB+CD+F(A+B) )
F(x1,x2,…,xN)=G’(x1,x2,…,xN,+,•)
((es. F=[AB+CD+F(A+B)]’)
[
(
)] )
Il PUN invece implementa direttamente la funzione
(connette l’uscita a 1) ma può contenere solo operatori
NOR e NAND (quelli implementabili con switch PMOS)
„
F(x1’,x2’,…,xN’ ,+,•)= F’(x1,x2,…,xN, •,+)=
Dualità
=G(x1,x
x2,…,x
xN, •,+)
• +)
23 Settembre 2009
ED - Logica Combinatoria
del PDN e PUN
Massimo Barbaro
19
Esempio
Z=[A(B+C)+D]’
D
Funzione negata
di sole OR e AND
B
A
C
Z’=A(B+C)+D=G
Z
A(B+C)+D G
A
D
Implementabile con un PDN
B
C
(le OR sono NMOS in parallelo,
le AND sono NMOS in serie))
23 Settembre 2009
ED - Logica Combinatoria
Massimo Barbaro
20
Esempio
Z=(A’+B’C’)D’
D
Funzione di sole
OR e AND di
segnali negati
B
A
C
Implementabile con un PUN
(le OR di segnali negati sono
PMOS
in
parallelo
parallelo,
le AND di segnali negati sono
PMOS in serie)
23 Settembre 2009
ED - Logica Combinatoria
A
D
B
Massimo Barbaro
C
21
Procedura di sintesi (1)
■ Si considera la forma della funzione:
■ Se si tratta di un funzione NEGATA di sole variabili
NON negate ( Z = F(x1,x2,…,xN,+,•)’ ):
■ Si implementa una PDN
■ Se si tratta di un funzione NON NEGATA di sole
variabili negate ( Z = F(x1’,x
,x2’,…,x
,…,xN’,+,•)
, , ) ): :
■ Si implementa una PUN
■ Scelto il tipo di rete da realizzare si passa alla sua
implementazione per mezzo di transistor (interruttori)
23 Settembre 2009
ED - Logica Combinatoria
Massimo Barbaro
22
Procedura di sintesi (2)
■ Per la realizzazione di una PDN (PUN)
■ Si parte dall
dall’operatore
operatore logico a precedenza minore (tenendo
conto delle parentesi)
■ Se si tratta di una OR bisogna scegliere fra due possibili
strade
t d quindi
i di sii crea una biforcazione
bif
i
con due
d
percorsii in
i
parallelo
■ Se si tratta di una AND bisogna invece chiudere il percorso
solo quando entrambe le condizioni sono vere quindi si
mettono i rispettivi transistor in serie
■ Si p
procede allo stesso modo p
passando via via agli
g operatori
p
a
maggiore precedenza
■ Realizzata la rete PDN (PUN) per dualità si realizza la rete
complementare PUN (PDN),
(PDN) mettendo in parallelo i blocchi che erano
in serie e mettendo in serie ciò che era in parallelo.
23 Settembre 2009
ED - Logica Combinatoria
Massimo Barbaro
23
Procedura di sintesi (3)
Tornando
all’esempio:
Z=[A●(B+C)+D]’
Z=[A●(B+C)+D]
(2) Seleziono il primo
operatore da applicare.
applicare
E’ una disgiunzione
quindi
lo
realizzo
creando un bivio tra 2
possibili percorsi.
A ●(B+C)
(5) Per un blocco
corrispondente a
più variabili ripeto
l
la
procedura
d
dall’inizio
23 Settembre 2009
D
(1) Implemento una
PDN
perché
hé
d
devo
portare l’uscita a 0.
(3)
Disgiunzione:
ramificazione del circuito
che si divide nei due
percorsi
corrispondenti
alle due possibili opzioni.
(4) Se un blocco contiene
una
sola
variabile
corrisponde
ad
un
transistor con il gate
pilotato dalla variabile.
ED - Logica Combinatoria
Massimo Barbaro
24
Procedura di sintesi (4)
(7) Seleziono il primo
operatore da applicare.
E’ una AND quindi
corrisponde
a
due
percorsi che devono
essere
chiusi
contemporaneamente
p
(serie).
(6) Ripeto la procedura per il
sottoblocco rimanente.
A●(B+C)
A
D
(8) Se un blocco contiene
una sola
l variabile
i bil quello
ll
corrisponde
ad
un
transistor.
B+C
(9)
Per
un
blocco
corrispondente a più
variabili
ripeto
la
procedura dall
dall’inizio
inizio
23 Settembre 2009
(10) Procedo con i blocchi rimanenti. Se
in un blocco ci sono più variabili ma un
solo tipo di operatore (come nel caso in
esempio)
i ) sii sostituisce
tit i
di tt
direttamente
t con
un parallelo (se l’operatore è la OR) o
serie (se l’operatore è la AND) di tanti
transistor quante sono le variabili.
variabili
ED - Logica Combinatoria
Massimo Barbaro
25
Procedura di sintesi (5)
Z=[A●(B+C)+D]’
(11) Si procede adesso, PER DUALITA’,
alla realizzazione della PUN.
PUN
Applico De Morgan
A
D
Z = [A●(B+C)+D]’=
Z = [A●(B+C)]’●D’=
[ (
)]
Z = [A’+(B+C)’]●D’=
B
C
23 Settembre 2009
Z = [A
[A’+B’●C’]●D’
+B ●C ]●D
(12) Come si vede, tutti gli operatori AND
sono diventati OR e viceversa. La forma
finale è quella di una PUN perché
funzione NON NEGATA di variabili
negate.
g
ED - Logica Combinatoria
Massimo Barbaro
26
Esempio
Z=AB
Funzione (non negata) di sole OR e AND: non è
implementabile
p
né con un PUN né con un PDN
A
B
A
Ecco perché è preferibile
implementare
una
na
generica funzione con sole
NAND e NOR
23 Settembre 2009
Z1=(AB)’
Z=AB
B
ED - Logica Combinatoria
Massimo Barbaro
27
AOI
„
Implementazione diretta di 2 livelli di logica con
un solo blocco CMOS statico:
„
Z=(AB+CD)’
And-Or-Invert
A
B
C
D
Z
L’implementazione diretta usa solo 8
transistor anzi che i 2(4+2)+4+2=18 (2
NAND + INVERTER e 1 NOR +
INVERTER) di una implementazione
puramente logica
23 Settembre 2009
ED - Logica Combinatoria
A
C
B
D
Massimo Barbaro
28
OAI
„
Implementazione diretta di 2 livelli di logica con
un solo blocco CMOS statico:
„
F=[(A+B)(C+D)]’
A
C
B
D
Z
Or-And-Invert
23 Settembre 2009
ED - Logica Combinatoria
A
B
C
D
Massimo Barbaro
29
Dimensionamento
„
„
„
Un’opportuna tecnica di dimensionamento
consente di avere caratteristiche statiche e
dinamiche ottimali
I
In
particolare
ti l
è desiderabile
d id bil
avere delle
d ll
caratteristiche di trasferimento simmetriche e dei
t
tempi
i di propagazione
i
confrontabili
f t bili nelle
ll due
d
possibili commutazioni (HL e LH)
Bisogna chiedersi da cosa dipendono i tempi di
propagazione
23 Settembre 2009
ED - Logica Combinatoria
Massimo Barbaro
30
Tempi di propagazione
„
„
„
„
„
Come nel caso del singolo inverter, anche per una generica porta
CMOS è possibile calcolare i tempi di propagazione facendo
riferimento ad un modello semplificato con una capacità di carico CL
fra uscita e massa e delle resistenze equivalenti che rappresentino i
MOS
P ottenere
Per
tt
l capacità
la
ità CL che
h conterrà
t à i contributi
t ib ti di tutte
t tt le
l
capacità parassite nei vari nodi si sfruttano le tecniche viste per
l’inverter (l’uso del teorema di Miller per trasformare le capacità
gate/drain in capacità drain/massa)
La capacità di carico ottenuta deve poi essere caricata o scaricata
dalla rete di pull-up o pull-down che si è attivata
Si fa riferimento al caso peggiore (worst case) ossia a quelle
commutazioni che implicano la presenza di un solo percorso
conduttivo per la carica o scarica della capacità
Si calcola il transistor equivalente (sfruttando serie e paralleli)
corrispondente al percorso attivato e poi si applica la formula per
calcolare il tempo di propagazione classico dell’inverter
23 Settembre 2009
ED - Logica Combinatoria
Massimo Barbaro
31
Serie e parallelo di MOS
„
Nel seguito faremo le ipotesi semplificative (solo
parzialmente vere a causa dell
dell’effetto
effetto body ed altri effetti
del secondo ordine):
„
„
K MOS in serie con W=W0 e L=Lmin sono equivalenti ad un
MOS di lunghezza L=KLmin e W=W0 o ad un MOS con L=Lmin
e W=W0/K (K volte più resistivo)
K MOS in paralello di larghezza W
W=W
W0 sono equivalenti ad un
solo MOS con W=KW0 (K volte più conduttivo)
2
1
1
1
2
2
23 Settembre 2009
ED - Logica Combinatoria
Massimo Barbaro
32
Modello del primo ordine
„
„
„
In un modello del primo ordine si può pensare
che tutti i MOS in serie (o parallelo) lungo un
percorso si combinino in un solo MOS
equivalente
q
di W/L opportuna,
pp
, avente q
quindi una
certa resistenza equivalente (Req)
La capacità
p
equivalente
q
sarà la somma della
capacità parassite presenti su tutti i nodi
attraversati dal percorso di scarica (Ceq)
Identificate resistenza e capacità equivalente si
può calcolare il tempo di propagazione con la
solita
lit formula:
f
l
„
tp=0.69ReqCeq
23 Settembre 2009
ED - Logica Combinatoria
Massimo Barbaro
33
MOS in serie
W
W
L
L
Questo ovviamente a patto
che le larghezze siano le
stesse altrimenti avremo in
serie due canali differenti
quindi non si potrebbe
equiparare la struttura ad un
singolo MOS.
W
2L
23 Settembre 2009
Il nodo in comune è
equipotenziale
(silicio
fortemente drogato, quasi
metallico), quindi è come se i
2 canali fossero esattamente
uno dopo l’altro ossia se ci
fosse un unico transistor ma
lungo il doppio.
doppio
ED - Logica Combinatoria
Massimo Barbaro
34
MOS in parallelo
Pista di metallo: corto circuito
Allo stesso potenziale : come un cortocircuito
W
L
W
L
2W
L
23 Settembre 2009
Se:
■ i source e i drain sono cortocircuitati
tra loro e
■ i gate sono allo stesso potenziale
(come se fossero cortocircuitati)
Allora è come se i due MOS fossero
affiancati fra loro.
In tal caso sarebbero equivalenti ad un
singolo MOS di larghezad oppia.
Questo ovviamente a patto che le
lunghezze siano le stesse altrimenti
avremo in
i
parallelo
ll l
d
due
canalili
differenti, quindi non si potrebbe
equiparare la struttura ad un singolo
MOS
MOS.
ED - Logica Combinatoria
Massimo Barbaro
35
Esempio: NAND a 2 ingressi: tpHL
A
Calcolo di tpHL
B
B
Z=(AB)’
Z=(AB)
A
R2
R1
CL
C1
Ceq =C1 + CL
Req =R1 + R2 = 2RN
Si considera la somma di tutte di le
resistenze attraversate e la somma della
capacità di tutti i nodi che devono essere
scaricati (compresi i nodi interni)
23 Settembre 2009
ED - Logica Combinatoria
tpHL =0.69Req Ceq
Massimo Barbaro
36
Esempio: NAND a 2 ingressi: tpLH
A
Calcolo di tpLH
B
B
Z=(AB)’
Z=(AB)
R3
CL
A
Ceq = CL
Si considera la somma di tutte di le
resistenze attraversate e la somma della
capacità di tutti i nodi che devono essere
scaricati (compresi i nodi interni)
23 Settembre 2009
Req = R3 = RP
ED - Logica Combinatoria
tpLH =0.69Req Ceq
Massimo Barbaro
37
Dimensionamento
„
„
„
Allora per fare in modo di equalizzare i tempi di salita e discesa (di
caso peggiore) bisogna fare in modo che ciascun percorso di salita
(costituito da PMOS) abbia la stessa resistenza equivalente di
ciascun percorso di discesa (costituito da NMOS).
Bisogna equalizzare ciascun percorso singolarmente perché il caso
peggiore
i
è quello
ll in
i cuii un solo
l percorso è attivo.
tti
O i
Ovviamente
t se
più percorsi fossero attivi contemporaneamente il tempo di
propagazione sarebbe minore ma è necessario prevedere che il
circuito funzioni correttamente nella situazione più svantaggiosa.
svantaggiosa
Ricordando che la resistenza equivalente è data dalla somma delle
singole resistenze e che ogni resistenza è inversamente
proporzionale
i
l a kn (kp) bisognerà
bi
à equalizzare
li
sia
i il k degli
d li NMOS a
quello di un NMOS singolo a dimensione minima (basta agire sulle
W) che quello dei PMOS (in questo caso per dimensionare bisogna
anche tenere conto della diversa mobilità dei PMOS).
PMOS)
23 Settembre 2009
ED - Logica Combinatoria
Massimo Barbaro
38
Calcolo di Ron
„
„
„
La
Ron
è
sicuramente
inversamente
proporzionale alla W ed alla mobilità del
transistor (visto che la ID compare al
denominatore)
Perciò a parità di W la Ron di un pmos è circa 2
volte
lt quella
ll di un nmos
Per avere un pmos ed un nmos con Ron circa
equivalenti bisogna
dimensionare, come
nell’inverter, Wp=2Wn in modo da compensare
con la Wp la minore mobilità delle lacune
23 Settembre 2009
ED - Logica Combinatoria
Massimo Barbaro
39
Tempo di propagazione
„
„
„
Come visto nell’esempio per fare in modo che i
tempi della commutazione HL e LH siano uguali
è necessario dimensionare i PMOS e gli NMOS
in modo che 2Rn=Rp
Per fare questo è necessario dimensionare gli
NMOS con W=2
W 2 in
i modo
d che
h la
l loro
l
serie
i sia
i
equivalente ad un NMOS di W=1
A questo punto è necessario dimensionare i
PMOS con W=2 in modo che siano equivalenti
ad un NMOS con W=1
23 Settembre 2009
ED - Logica Combinatoria
Massimo Barbaro
40
Dimensionamento ottimo
„
Il dimensionamento finale è
Bisogna avere sempre in mente A
il caso peggiore (worst-case).
I questo
In
t esempio
i i due
d
NMOS
sono sempre in serie, mentre i
PMOS
possono
condurre
singolarmente
o
contemporaneamente.
Ovviamente se capita che i due
PMOS siano entrambi accesi il
t
tempo
di propagazione
i
sarà
à
ulteriormente minore
23 Settembre 2009
ED - Logica Combinatoria
2
B
A
B
2
Z=(AB)’
2
2
Massimo Barbaro
41
Dimensionamento ottimo
In generale si fa in modo che ciascun
percorso di NMOS verso massa sia
equivalente ad un NMOS con W=1 e
che ciascun percorso di PMOS verso
l’alimentazione sia equivalente ad un
PMOS con W=2 (che è poi equivalente
ad un NMOS con W=1).
Il rapporto
pp
di 2 fra PMOS e NMOS non
è esatto (il rapporto fra le mobilità degli
NMOS e dei PMOS è leggermente
maggiore)
i ) ma è utile
til per rendere
d
i
tempi
abbastanza
simili
senza
occupare troppa area.
area
23 Settembre 2009
ED - Logica Combinatoria
D
4
B
A
4
8
C
8
A
D
1
Massimo Barbaro
B
2
2
C
2
42
Tempo di propagazione: modello di Elmore
„
„
„
„
„
Un modello più raffinato per il calcolo del tempo di
propagazione
p
p g
dovrà tenere conto che le resistenze, in
realtà, non si sommano linearmente.
Quello che, al primo ordine, può essere ricondotto ad un
circuito compatto è,
è in realtà,
realtà un circuito distribuito.
distribuito
Infatti, alcuni dei transistor si trovano nel percorso di
scarica di certi capacitori e non di altri.
E’ necessario, per tenere conto di questo fatto, ricorrere
al modello di Elmore
Terremo conto solo di situazioni in cui commuta un
solo segnale per volta, sia perché è altamente
improbabile
che
2
segnali
commutino
contemporaneamente, sia per ragioni di semplicità.
23 Settembre 2009
ED - Logica Combinatoria
Massimo Barbaro
43
Modello di Elmore
„
Si applica ad una rete di resistenze e capacità se:
„
„
„
Si tratta di un albero (una rete senza anelli chiusi)
Tutti i capacitori hanno un terminale a massa
Esiste un solo ingresso
R1
Ingresso
s
1
R2
C1
In tale situazione il modello di
Elmore consente di calcolare la
costante di tempo (RC) per la
propagazione di un segnale fra
l’unico nodo di ingresso ed il
generico nodo i-esimo.
i esimo
23 Settembre 2009
ED - Logica Combinatoria
R3
2
C2
Massimo Barbaro
3
C3
R4
4
C4
44
Modello di Elmore
La costante di tempo che descrive l’evoluzione
della tensione al nodo i-esimo in corrispondenza
di una variazione
i i
all’ingresso
ll’i
è
è:
N
τ Di = ∑ Ck Rik
k =1
Dove il termine Rik rappresenta la resistenza dovuta al percorso condiviso
fra la sorgente s e ciascuno dei due nodi i e k. Mentre Ck è la capacità
associata al nodo k.
Rik = ∑ R j ⇒ (R j ∈ [ percorsi( s → i ) ∩ percorsi( s → k )])
Nel caso della rete precedente,
precedente ad esempio,
esempio la resistenza condivisa dai nodi 2 e 4 e dai
nodi 3 e 4 è data da:
R42 = R43 = R1 + R2
Dunque:
τ D 4 = C1 R1 + C2 (R1 + R2 ) + C3 (R1 + R2 ) + C4 (R1 + R2 + R4 )
23 Settembre 2009
ED - Logica Combinatoria
Massimo Barbaro
45
Modello di Elmore
Intuitivamente, il modello di Elmore si può comprendere
dal seguente ragionamento (qualitativo):
R1
1
R2
C1
2
C2
23 Settembre 2009
Perché la capacità C3 ha effetto
sulla costante di tempo di C4?
Per il fatto che, se C3 commuta
R3
contemporaneamente a C4, la
3
sua corrente di carica (o scarica)
C3 deve per forza passare attraverso
la resistenza R2.
R4
La corrente che scorre in R2,
dunque
dunque,
non è interamente
disponibile per la commutazione
4
del nodo 4 ma viene in parte
C4
utilizzata
ili
d l nodo
dal
d 3.
3
Questo limita la velocità con cui
può commutare il nodo 4.
ED - Logica Combinatoria
Massimo Barbaro
46
Modello di Elmore: logica combinatoria
Le conseguenze nel caso del calcolo del tempo di propagazione di una
porta CMOS consistono nel modo in cui si calcolerà la costante di tempo
equivalente ReqCeq
N
t pHL ( LH ) = 0.69∑ Ck Rik
k =1
La sommatoria è estesa a tutti i
nodi che si scaricano (tutti i
nodi connessi verso massa).
Per la commutazione HL il percorso da prendere in considerazione è
quello fra il nodo di uscita (il nodo i-esimo del modello di Elmore) e la
massa (la sorgente s del modello).
Per la commutazione LH il percorso è fra l’uscita e la VDD (che diventa la
sorgente s)
Su tale percorso saranno presenti tante resistenze quanti sono i MOS da
attraversare ed una capacità per ogni nodo.
23 Settembre 2009
ED - Logica Combinatoria
Massimo Barbaro
47
Modello di Elmore: NAND 2 ingressi
Commutazione HL
Consideriamo sempre
una sola commutazione
alla volta.
Non sono possibili due
commutazioni
contemporanee.
A
M3
B
A
B
Ci sono 2 possibili casi di commutazione:
a) A : 0 -> 1
B=1
(commuta A)
b) A = 1
B : 0 -> 1
(commuta B)
A questi due casi corrispondo diverse configurazioni
degli intetturrori durante la scarica.
M4
Z (AB)’
Z=(AB)’
M2
M1
23 Settembre 2009
Caso a)
M3 si spegne,
p g , M4 resta spento.
p
M1 si accende, M2 è acceso.
Caso b)
M3 resta spento, M4 si spegne.
M1 è acceso, M2 si accende.
ED - Logica Combinatoria
Massimo Barbaro
48
Modello di Elmore: NAND (HL)
Commutazione HL
b)
a)
Z
Z
R2
R1
CL
R1
C1
La rete si riduce a questa
perché i due PMOS sono spenti
(resistenza infinita) ed i 2 nodi
(corrispondenti a C1 e CL)
devono
entrambi
essere
scaricati
scaricati.
23 Settembre 2009
CL
R2
XC
1
C1 è g
già scarica!
La rete si riduce a questa
perché i due PMOS sono spenti
(resistenza infinita),
infinita) mentre C1
è già scarica perché il transistor
M1 era già acceso ed aveva già
scaricato il nodo 1.
1
ED - Logica Combinatoria
Massimo Barbaro
49
Modello di Elmore: NAND (HL)
Commutazione HL
A li
Applicando
d il modello
d ll di Elmore
El
alla
ll rete:
N
percorso
di scarica
R2
R1
t pHL = 0.69∑ Ck Rik
a)
Z
Esteso a TUTTI i nodi della rete
k =1
CL
C1
t pHL = 0.69[R1C1 + (R1 + R2 )C L ] =
= 0.69[R1 (C1 + C L ) + R2C L ]
S il dimensionamento
Se
di
i
t è ottimo
tti
e R1=R
R2=R
Rn
t pHL = 0.69 R1 (C1 + 2C L )
23 Settembre 2009
ED - Logica Combinatoria
Massimo Barbaro
50
Modello di Elmore: NAND (HL)
Commutazione HL
A li
Applicando
d il modello
d ll di Elmore
El
alla
ll rete:
percorso
di scarica
N
Z
k =1
CL
R2
R1
t pHL = 0.69∑ Ck Rik
b)
XC
1
C1 è già scarica!
23 Settembre 2009
t pHL = 0.69C L (R1 + R2 )
C1 è già scarica (cortocircuitata fra
massa e massa) quindi non fa parte
della rete di Elmore.
ED - Logica Combinatoria
Massimo Barbaro
51
Modello di Elmore: NAND (LH)
Commutazione LH
Consideriamo sempre
una sola commutazione
alla volta.
Non sono possibili due
commutazioni
contemporanee.
A
M3
B
A
B
Ci sono 2 possibili casi di commutazione:
a) A : 1 -> 0 B = 1
(commuta A)
b) A = 1
B : 1 -> 0
(commuta B)
A questi due casi corrispondo diverse configurazioni
degli intetturrori durante la scarica.
M4
Z (AB)’
Z=(AB)’
M2
M1
23 Settembre 2009
Caso a)
M3 si accende,, M4 resta spento.
p
M1 si spegne, M2 è acceso.
Caso b)
M3 resta spento, M4 si accende.
M1 è acceso, M2 si spegne.
ED - Logica Combinatoria
Massimo Barbaro
52
Modello di Elmore: NAND (LH)
Commutazione LH
a))
R3
R2
R4
Z
CL
Z
C1 è sconnessa
dal percorso di
carica!
CL
R1
C1
La rete si riduce a questa perché i
d M1 e M4 sono spentiti (resistenza
due
( i t
infinita) ed i 2 nodi (corrispondenti a
C1 e CL) devono entrambi essere
caricati
caricati.
23 Settembre 2009
b))
C1
La rete si riduce a questa perché i M3
e M2 sono spenti dunque la capacità
parassita C1 è disconnessa dal
percorso di carica e NON influisce sul
tempo di propagazione.
propagazione
ED - Logica Combinatoria
Massimo Barbaro
53
Modello di Elmore: NAND (LH)
Commutazione LH
Applicando il modello di Elmore alla rete:
N
t p = 0.69∑ Ck Rik
a)
R3
R2
percorso di carica
Z
CL
Esteso a TUTTI i nodi della rete
k =1
t pHL = 0.69[R3C1 + R3C L ] =
= 0.69 R3 (C1 + C L )
C1
Questo perché nel tener conto di C1 bisogna considerare il percorso
resistivo che il CL e C1 hanno in comune nel percorso di carica, ossia
della sola resistenza R3 (a differenza di quanto succede nel caso HL).
HL)
23 Settembre 2009
ED - Logica Combinatoria
Massimo Barbaro
54
Modello di Elmore: NAND (LH)
Commutazione LH
A li
Applicando
d il modello
d ll di Elmore
El
alla
ll rete:
b)
N
percorso di carica
R4
Z
CL
R1
C1
C1 è sconnessa
dal percorso di
carica!
23 Settembre 2009
t p = 0.69∑ Ck Rik
k =1
t pHL = 0.69(R4C L )
C1 non è nel percorso di carica di CL
quindi non fa parte della rete di Elmore
che ci interessa!
ED - Logica Combinatoria
Massimo Barbaro
55
Modello di Elmore: considerazioni
„
„
„
„
Come si vede dal risultato ottenuto, le resistenze associate a
ciascun MOS non si sommano semplicemente, ma vengono pesate
più o meno a seconda che si trovino più vicine alla massa
(all’alimentazione) o meno.
I MOS più vicini alla sorgente (cioè alla massa o all
all’alimentazione),
alimentazione),
infatti, devono essere attraversati dalla corrente di scarica (o carica)
di tutti i nodi intermedi e quindi limitano maggiormente il tempo di
commutazione.
commutazione
Da questo punto di vista, il MOS più critico è quello più in basso
(nelle HL) o in alto (nelle LH) che nella sommatoria delle resistenze
di Elmore compare in ogni termine.
Inoltre, anche se sto calcolando il tempo di propagazione LH (HL)
non ci si può dimenticare delle capacità parassite della PDN (PUN)
che potrebbero comunque avere un effetto e trovarsi sul percorso di
carica (scarica).
23 Settembre 2009
ED - Logica Combinatoria
Massimo Barbaro
56
Modello di Elmore: generalizzazione
J percorsi di carica
Fra i vari percorsi di
scarica
(carica)
si
identifica quello di caso
peggiore, ovvero quello
a cui corrispondono le
massime capacità e
resistenza equivalenti.
…
x1
x2
xN
F(x1,x2,…,xN)
A tale percorso si applica
il modello di Elmore per
ricavare la costante di
t
tempo
e dunque
d
il tempo
t
di propagazione.
…
x1
x2
xN
J+K=2N percorsi
Kp
percorsi di scarica
23 Settembre 2009
ED - Logica Combinatoria
Massimo Barbaro
57
Caso peggiore
Fra i percorsi quale è quello di CASO PEGGIORE?
Quello a cui corrispondono:
p
■ Maggior numero di transistor (resistenze) coinvolti
■ Maggior
M
i numero di nodi
di (capacità)
(
ità) coinvolti
i
lti
Evidentemente possono esistere più percorsi di caso
peggiore
p
gg
equivalenti
q
fra loro e basterà calcolarne uno solo.
23 Settembre 2009
ED - Logica Combinatoria
Massimo Barbaro
58
Tempo di propagazione: riassunto
1
Si identificano il percorso di carica e di scarica di caso peggiore
2
Si calcola la Req di ciascun MOS su tale percorso
3
Si calcolano le Ci associate a ciascun nodo del percorso
4
Si calcola la costante di Elmore τD associata al percorso mediante
la formula:
τ HL ( LH ) = C 1 R1 + C 2 (R1 + R ) +
... + C L (R1 + R 2 + ... + R N
5
)
Si calcola il tempo di propagazione con l’approssimazione
l approssimazione del
primo ordine:
t pHL ( LH ) = 0.69τ HL ( LH )
23 Settembre 2009
ED - Logica Combinatoria
Massimo Barbaro
59
Fan-In e Fan-Out
„
„
„
„
Porte CMOS con elevato fan-in diventano rapidamente
poco p
p
pratiche.
Infatti il numero totale di MOS è pari a 2N (con N
numero di ingressi) quindi all’aumentare degli ingressi
aumenta rapidamente ll’area
area
All’aumentare degli ingressi aumentano anche i
transistor in serie e quindi la porta diventa più lenta (Ron
più grandi). Questo fenomeno è solo in parte risolvibile
con la tecnica di dimensionamento vista, dato che
all’aumentare della W dei mos aumentano anche le
capacità parassite e quindi CL quindi ad un certo punto
non si ha p
più miglioramento
g
di tp ((il g
gate si fa da carico))
Anche gli elevati fan-out riducono la velocità della porta
(ogni gate connesso significa due transistor di carico, il
pmos e lo nmos)
23 Settembre 2009
ED - Logica Combinatoria
Massimo Barbaro
60
Fan-in elevati:tecniche di progettazione
„
In caso di elevato fan-in è possibile ricorrere a
tecniche di progettazione per aumentare la
velocità dei gate:
„
„
„
Aumentare la W dei transistor p
per compensare
p
l’elevata capacità di carico (è una soluzione
insufficiente perché all’aumentare di W aumentano
anche le capacità parassite e quindi il carico)
Usare un dimensionamento progressivo, ossia fare
più conduttivi q
p
quei transistor che p
pilotano i carichi
più elevati dovendo pilotare un numero maggiore di
capacità parassite
Ri di
Riordinare
i mos in
i modo
d che
h quelli
lli pilotati
il t ti dai
d i
segnali più critici siano connessi ai nodi con minori
p
parassite
p
capacità
23 Settembre 2009
ED - Logica Combinatoria
Massimo Barbaro
61
Fan-In: dimensionamento progressivo
„
I transistor più vicini alla massa devono pilotare
capacità via via più grandi (la somma di CL e di
tutti i nodi parassiti intermedi)
CL
Si dimensiona MN a dimensione
minima poi gli altri via via più larghi
minima,
WN-1=WN(CL+CpN-1)/CL
…
W1=W
WN(CL+C
CpN-1
… Cp1)/CL
pN 1 +…+C
23 Settembre 2009
ED - Logica Combinatoria
MN
Cp2
M2
M1
Massimo Barbaro
Cp1
62
Fan-In: riordinamento
„
Se un segnale è particolarmente critico in
genere è quello che arriva per ultimo (quando gli
altri hanno già commutato)
In tale situazione è preferibile usare
il segnale critico per pilotare il
transistor MN che è il più vicino a CL
e quindi “vede” la sola CL se gli altri
hanno già commutato.
commutato
Se invece si usasse il segnale
critico
iti
per pilotare
il t
M1 la
l capacità
ità
“vista”
sarebbe
Ctot
CL+CpN-1
t t=C
N 1+…+Cp1
1
23 Settembre 2009
ED - Logica Combinatoria
CL
MN
Cp2
M2
M1
Massimo Barbaro
Cp1
63
Logica CMOS: riassunto
„
„
„
„
„
L’escursione fra i simboli 0 e 1 è la massima
possibile (VDD)
Nessuna dissipazione di potenza statica
Tempi di propagazione confrontabili
Una p
porta a N ingressi
g
ha 2N transistor ((N nmos
e N pmos)
Ad ogni ingresso sono connessi sempre 2 mos
(1 nmos e 1 pmos)
23 Settembre 2009
ED - Logica Combinatoria
Massimo Barbaro
64
Logica Combinatoria
Pseudo-NMOS
Università di Cagliari
Dipartimento di Ingegneria Elettrica ed Elettronica
Laboratorio di Elettronica (EOLAB)
Limiti del CMOS
„
„
Il principale limite della logica CMOS è il numero
di mos (sempre pari a 2N) utilizzati che la rende
poco pratica per porte con elevato fan-in. Inoltre
in ingresso presenta sempre i gate di 2 mos (p e
n) quindi un carico almeno doppio del minimo
concepibile
(trascurando
i
diversi
dimensionamenti del p e del n)
P questo
Per
t motivo
ti sono state
t t concepite
it logiche
l i h
alternative che barattano alcune caratteristiche
CMOS in
i cambio
bi di un minore
i
i
ingombro
b
e
maggiore velocità
23 Settembre 2009
ED - Logica Combinatoria
Massimo Barbaro
66
Logica pseudo-NMOS
„
La logica pseudo-NMOS implementa la sola rete PDN e
sostituisce la PUN con un solo mos ((un PMOS sempre
p
acceso) che si incarica di portare a VDD l’uscita ogni
volta che la PDN è aperta
F(x1,x2,...,xN)
x1
x2
23 Settembre 2009
....
xN
PDN
ED - Logica Combinatoria
Massimo Barbaro
67
Pseudo-NMOS : funzionamento
„
„
L’analisi del circuito di massima è molto semplice e si basa su
quanto detto per la logica combinatoria CMOS statica con la sola
differenza che la rete di pull-up (PUN) è sostituita da un transistor
SEMPRE acceso (il PMOS con il gate connesso a massa).
Per riconoscere la funzione impementata, dunque, bisogna
verificare la sola PDN:
„
„
Per ogni combinazione per cui la PDN risulta accesa (ossia in cui c’è
almeno un percorso chiuso verso massa) ll’uscita
uscita sarà bassa (questo
a patto che il PMOS venga opportunamente dimensionato, come
vedremo in seguito).
Per ogni combinazione per cui la PDN risulta spenta (nessun
percorso verso massa), il nodo di uscita sarà cortocircuitato a VDD
dal PMOS e dunque l’uscita sarà alta.
23 Settembre 2009
ED - Logica Combinatoria
Massimo Barbaro
68
Pseudo-NMOS: funzionamento
Per una combinazione x1, x2, ... xN per cui nessun percorso della PDN
è chiuso verso massa l’intera PDN è un circuito aperto, dunque:
Il PMOS è sicuramente acceso,
dunque equivalente a un resistenza
F(x1,x2,...,x3)
F(x1,x2,x3)=VDD
xN
...
x1
x2
PDN
23 Settembre 2009
La PDN è spenta dunque
un circuito aperto
ED - Logica Combinatoria
L’uscita
è
cortocircuitata a VDD dunque
è alta.
Massimo Barbaro
69
Pseudo-NMOS: funzionamento
Per una combinazione x1, x2, ... xN per cui almeno un percorso della
PDN è chiuso verso massa, l’intera PDN è una resistenza, dunque:
Il PMOS è sicuramente acceso,
dunque equivalente a un resistenza
F(x1,x2,...,x3)
F(x1,x2,x3)=?
xN
...
x1
x2
PDN
23 Settembre 2009
La PDN è accesa dunque
una resistenza
ED - Logica Combinatoria
Quanto vale l’uscita?
Dipende dal valore delle
due resistenze (perché
dipende dal partitore
resistivo).
resistivo)
Massimo Barbaro
70
Pseudo-NMOS: funzionamento
Quanto vale l’uscita in caso di PDN accesa?
Rp
Ip
VRp= Rp Ip
Le resistenze sono in serie,
serie dunque sono
equivalenti ad una resistenza pari alla loro
somma. La caduta di potenziale ai capi della
serie delle due resistenze è pari a VDD.
VDD= (Rp+Rn)In
Ip= In
In
Rn
VRn= Rn In
In= VDD/(Rp+Rn)
Sostituiamo il valore ottenuto nell’espressione di
VRn:
La corrente che scorre nelle due
resistenze è la stessa (il carico NON
assorbe corrente perché è il gate di
un MOS).
23 Settembre 2009
Da q
questo ricaviamo la corrente:
VOUT = VRp
R = VDDRn/(Rp+Rn)
Se la resistenza equivalente della PDN (Rn) è
molto più piccola di quella del PMOS tale valore
tende a zero e dunque ll’uscita
uscita è bassa.
bassa
ED - Logica Combinatoria
Massimo Barbaro
71
Pseudo-NMOS: VOL
„
„
„
„
„
Il ragionamento svolto è però solo qualitativo perché in realtà i transistor MOS
non sono delle semplici resistenze ma hanno una caratteristica fortemente
non-lineare
non
lineare. Bisogna tenere conto di questo se si vuole conoscere il valore
esatto della tensione di uscita bassa che NON può essere pari a 0.
Per potere scrivere le equazioni corrette applichiamo il solito ragionamento
svolto anche per l’inverter CMOS e per la logica statica CMOS ed osserviamo
che (come visto nella slide precedente),
precedente) la corrente del PMOS deve essere
UGUALE alla corrente del NMOS (lo NMOS equivalente alla PDN). Questo
perché non esiste alcun altro percorso possibile per la corrente, quindi tutta la
corrente che scorre nel PMOS deve fluire verso massa attraverso la PDN.
Per potere procedere dobbiamo conoscere le condizioni di conduzione dei
due transistor (cutoff, triodo o saturazione).
Osserviamo che si desidera ottenere una porta logica con un buon margine di
rumore dunque si vuole che la VOL sia la più bassa possibile.
rumore,
possibile
In tali condizioni, poiché la VOL coincide con la VDS del NMOS equivalente,
tale transistor sarà ragionevolmente in triodo. Per la stessa ragione, la VSD
del PMOS sarà invece molto grande e dunque avremo ragionevolmente un
PMOS in saturazione.
sat ra ione
23 Settembre 2009
ED - Logica Combinatoria
Massimo Barbaro
72
Pseudo-NMOS: VOL
Come arriviamo a scrivere l’equazione per ricavare VOL?
Ip
VSDp
SD =VDD-VOL
VOL
VDD
23 Settembre 2009
In
VDSn=VOL
ED - Logica Combinatoria
Se la VOL deve essere
piccola lo NMOS tende ad
piccola,
andare in triodo ed il
PMOS in saturazione.
Facciamo questa ipotesi
che sarà verificata se
otterremo un valore di VOL
i f i
inferiore
a VDSATn.
Massimo Barbaro
73
Pseudo-NMOS: VOL
„
„
„
„
Siccome stiamo calcolando VOL l’ingresso sarà chiaramente alto.
Scriviamo l’equazione della corrente del PMOS che è in saturazione e ha la
VSG pari a VDD e la VSD pari a VDD-V
VOL.
Scriviamo l’equazione della corrente del NMOS che è in triodo e ha la VGS
pari a VDD e la VDS pari a VOL.
Uguagliamo le due correnti e ipotizziamo VTn=|V
|VTp|
Saturazione
Triodo
keq ,n (VDD − VTn )VOL −
VOL = (VDD − VTn ) −
23 Settembre 2009
keq ,n
2
VOL
(VDD − VTn )
2
2
VDSATp ⎞
⎛
⎟⎟
= k pVDSATp ⎜⎜VDD − VTn −
2 ⎠
⎝
VDSATp ⎞
⎛
⎟⎟
−2
VDSATp ⎜⎜VDD − VTp −
keq ,n
2 ⎠
⎝
kp
ED - Logica Combinatoria
Massimo Barbaro
74
Pseudo-NMOS: VOL
„
Supponendo di volere avere il valore più basso possibile VOL2 sarà
trascurabile rispetto a VOL e si ottiene quindi:
VOL
„
VDSATp ⎞
⎛
⎟⎟
k pVDSATp ⎜⎜VDD − VTp −
2 ⎠
⎝
≈
keq ,n (VDD − VTn )
Se si considera inoltre che, tipicamente VTn≈ VTnp e che VDSATp<<VDD-VTp
l’espressione si semplifica ulteriormente in:
VOL ≈
23 Settembre 2009
μp
Wp
V
L p DSATp
Weqn
μn
Ln
ED - Logica Combinatoria
Massimo Barbaro
75
Pseudo-NMOS: VOL
„
Osservando la cosa dal punto di vista grafico, rappresentiamo le due correnti
(del PMOS e del NMOS) su uno stesso grafico (funzione di VOUT). Il valore
della tensione di uscita corrisponde al punto di intersezione fra le curve (il
punto in cui le due correnti sono uguali).
NMOS (molto conduttivo
IDDn , IDp
perché grande W/L)
Vin=VDD
PMOS (poco conduttivo
perché piccolo W/L)
Al diminuire del W/L del PMOS la curva si
schiaccia verso il basso ed il punto di
intersezione si sposta a sinistra.
VOL
23 Settembre 2009
Vout
ED - Logica Combinatoria
Massimo Barbaro
76
VOL : considerazioni
„
„
„
La diminuzione della VOL comporta una diminuzione del
rapporto
pp
di forma del PMOS rispetto
p
al NMOS
equivalente.
Tale riduzione di può ottenere sia facendo lo NMOS più
conduttivo (più largo),
largo) sia riducendo la conduttività del
PMOS ossia NON facendolo a lunghezza minima
La maggiore controindicazione della diminuzione di VOL è
data dal fatto che,
che richiedendo una minore conduttività per
il PMOS, causa anche un aumento del tempo di
propagazione LH
23 Settembre 2009
ED - Logica Combinatoria
Massimo Barbaro
77
Consumo di potenza statico
„
„
„
Quando l’uscita è pari a VOL entrambi i transistor sono accesi e
scorre corrente (anche staticamente) fra alimentazione e massa.
Il consumo di potenza statica
i
associata
i
è dato
d
d l prodotto
dal
d
d ll
della
corrente (che coincide con la corrente di saturazione del PMOS) per
l’alimentazione
La riduzione di VOL comporta la riduzione della corrente di
saturazione del PMOS, il che comporta anche una diminuzione
della potenza dissipata. La controindicazione è l’aumento del tempo
di propagazione
i
LH (determinato
(d t
i t
proprio
i
d ll
dalla
corrente
t
di
saturazione del PMOS).
PSTAT
⎛
VDSATp
⎜V − V −
= VDD k p VDSATp
DSAT
T
Tp
⎜ DD
2
⎝
23 Settembre 2009
ED - Logica Combinatoria
Massimo Barbaro
⎞
⎟
⎟
⎠
78
Tempo di propagazione
„
I tempi di propagazione HL e LH sono differenti:
„
tpHL
HL è determinato dalla rete PDN e può essere valutato col
solito metodo (metodo di Elmore)
τ HL = 0 . 69 ∑ C i R ikk
„
„
Da notare che, in realtà, il tempo di propagazione è leggermente
più alto perché,
perché dato che il PMOS è sempre acceso,
acceso la scarica è
ostacolata dalla corrente di saturazione del PMOS
tpLH è determinato dal transistor PMOS di pull-up che carica la
CL con una corrente circa costante (la corrente di saturazione
del pmos). Si applica ancora il metodo di Elmore.
23 Settembre 2009
ED - Logica Combinatoria
Massimo Barbaro
79
Esempio: NAND
La rete PDN porta a 0 l’uscita
solo se A e B sono entrambi 1,
in tutti gli altri casi l’uscita è
portata a 1 dal pmos di pull-up
A
F=(AB)’
B
23 Settembre 2009
ED - Logica Combinatoria
Massimo Barbaro
80
Pseudo-NMOS: caratteristiche
„
„
„
E’ una logica a rapporto, dove cioè il rapporto
fra le dimensioni dei transistor determina le
caratteristiche statiche (VOL)
Il PMOS di pull-up
ll
h specifiche
ha
ifi h contraddittorie:
t dditt i
dovrebbe essere poco conduttivo (kp<<keq,n) per
minimizzare
i i i
VOL e il consumo di potenza
t
statico
t ti
ma dovrebbe anche essere molto conduttivo per
minimizzare
i i i
il tempo
t
di propagazione
i
LH
(caricare rapidamente CL)
E’ comunque una logica statica perché l’uscita è
sempre connessa a VDD o 0
23 Settembre 2009
ED - Logica Combinatoria
Massimo Barbaro
81
Vantaggi delle logiche pseudo-NMOS
„
Osservando che:
„
„
„
Il numero totale di transistor è N
N+1
1 (con N numero di ingressi)
Ogni porta pseudo-NMOS, avendo come carico un’altra porta
pseudo-NMOS, dovrà pilotare un solo transistor (poiché non
c’è
’è la
l PUN,
PUN bisogna
bi
pilotare
il t
il solo
l transistor
t
i t della
d ll PDN)
Risulta che:
„
„
„
E minore il numero di capacità parassite interno alla porta
E’
logica e dunque è minore il numero di nodi che portano un
contributo nella formula di Elmore.
E’ minore il valore della capacità di carico (dato che bisogna
pilotare solo un NMOS e non la coppia PMOS-NMOS)
Dunque è minore il tempo di propagazione
23 Settembre 2009
ED - Logica Combinatoria
Massimo Barbaro
82
Svantaggi della logica pseudo-NMOS
„
Osservando che:
„
„
„
La PUN è sempre accesa dunque quando ll’uscita
uscita deve essere
bassa (ossia quando si accende anche la PDN) esiste un
percorso diretto fra alimentazione e massa.
L’
L’uscita
it bassa
b
NON è parii a zero ma dipende
di
d dal
d l rapporto
t fra
f
le dimensioni del PMOS e degli NMOS
Risulta che:
„
„
Si ha dissipazione di potenza statica
Si ha una riduzione del minore margine di rumore (in caso di
uscita bassa). Infatti per uscita bassa il PMOS e la PDN
conducono entrambi, quindi VOL≠0
23 Settembre 2009
ED - Logica Combinatoria
Massimo Barbaro
83
Logica Combinatoria
Logiche dinamiche
Università di Cagliari
Dipartimento di Ingegneria Elettrica ed Elettronica
Laboratorio di Elettronica (EOLAB)
Logiche dinamiche
„
„
„
Le logiche dinamiche sono logiche in cui le
uscite non sono sempre connesse ad una delle
alimentazioni
L’i f
L’informazione
i
viene
i
t
temporaneamente
t
immagazzinata sotto forma di carica elettrica su
un capacitore
it
In genere sono logiche temporizzate, in cui cioè
si alternano fasi di valutazione della funzione
logica e di memorizzazione sulle capacità
23 Settembre 2009
ED - Logica Combinatoria
Massimo Barbaro
85
Concetto di base (φn)
φ
F(x1,x2,x3)
CL
x1
x2
x3
PDN
φ
23 Settembre 2009
ED - Logica Combinatoria
Massimo Barbaro
86
Concetto di base (φn): precarica
PRECARICA
F( 1,x2,x3)
F(x
x1
x2
x3
23 Settembre 2009
CL
PDN
ED - Logica Combinatoria
φ=0
Il PMOS è acceso e
cortocircuita ll’uscita
uscita a
VDD.
Lo NMOS è spento ed
i t di
interdice
il percorso
verso massa.
Il capacitore si carica
a VDD.
Massimo Barbaro
87
Concetto di base (φn): valutazione
VALUTAZIONE
F(x1,x2,x3)
CL
x1
x2
x3
23 Settembre 2009
PDN
ED - Logica Combinatoria
φ=1
Il PMOS è spento
t ed
d
interdice il percorso
verso VDD.
Lo NMOS è acceso ed
abilita il percorso verso
massa.
Se la combinazione di
ingresso è tale da
chiudere un percorso
nella PDN il capacitore
si scarica verso massa.
Massimo Barbaro
88
Concetto base
„
„
„
Quando il segnale φ (detto segnale di clock) è
basso la PDN è disabilitata (lo NMOS apre il
percorso a massa) ed il PMOS carica la CL in
uscita a VDD
Quando φ è alto il PMOS si interdice e la PDN è
abilitata,
bilit t quindi
i di l’uscita
l’
it potrà
t à andare
d
a 0 (se
(
PDN si chiude) o restare a 1 (altrimenti)
Il funzionamento è quindi sincronizzato dal
segnale φ e le operazioni sono divise in 2 fasi
„
„
Precarica (φ=0)
Valutazione (φ=1)
23 Settembre 2009
ED - Logica Combinatoria
Massimo Barbaro
89
Concetto di base (φp)
La stessa cosa si può
fare con una PUN.
PUN Le
fasi
saranno
ovviamente invertite.
φ
x1
x2
x3
PUN
F(x1,x2,x3)
φ
23 Settembre 2009
CL
ED - Logica Combinatoria
Massimo Barbaro
90
Caratteristiche
„
„
„
„
„
„
Sono necessari solo N+2 transistor
Ogni ingresso vede il carico di un solo MOS.
MOS
Non è una logica a rapporto.
Non cc’è
è dissipazione di potenza statica (il percorso
statico fra VDD e massa è sempre interdetto).
La PDN (o PUN) può essere realizzata come nel caso
del CMOS statico (quindi implementa solo funzioni
invertenti).
E’ più veloce e compatta dell’equivalente CMOS statico
(meno capacitori parassiti e minor carico dovuto alla
presenza di un solo gate anzi che due).
23 Settembre 2009
ED - Logica Combinatoria
Massimo Barbaro
91
Prestazione statiche
„
„
„
„
„
Il maggiore problema delle logiche dinamiche è
ll’immunità
immunità al rumore.
rumore
Poiché la commutazione dipende da soli
transistor NMOS si può dire che VM, VIL e VIH
coincidono con VT (tensione di soglia)
Questo rende i margini di rumore molto bassi
Inoltre il fatto che l’uscita alta sia immagazzinata
come carica su una capacità rende il circuito
molto sensibile a disturbi (accoppiamenti
capacitivi).
p
)
La presenza di correnti di leakage può scaricare
inavvertitamente l’uscita alta.
23 Settembre 2009
ED - Logica Combinatoria
Massimo Barbaro
92
Soglia logica
VDD
VTH
NMOS acceso
0
VIN
F(x1,x2,x3)
CL
Visto che il PMOS è
spento
l’uscita
è
disconnessa da VDD.
Basta
allora
che,
all’aumentare di VIN, si
crei
un
percorso
conduttivo verso massa,
ossia che lo NMOS si
accenda anche di poco
(VIN appena al di sopra
della tensione di soglia
VTH) perché l’uscita vada
a 0.
0
Inverter dinamico
23 Settembre 2009
ED - Logica Combinatoria
Massimo Barbaro
93
Prestazioni dinamiche
„
„
Il tempo di propagazione LH è zero! Questo
perché la fase di precarica pone già a 1 ll’uscita
uscita
prima ancora della valutazione
In
realtà
bisognerebbe
tenere
conto
dell’incidenza della precarica nel tempo totale di
valutazione. In molti p
progetti
g
però q
p
questa fase
può essere fatta coincidere con fasi in cui
comunque la logica non dovrebbe funzionare
( d esempio
(ad
i in
i un processore, mentre
t avviene
i
la decodifica dell’istruzione) e quindi è realistico
pensare che la precarica non incida sul ritardo
totale.
23 Settembre 2009
ED - Logica Combinatoria
Massimo Barbaro
94
Cause di rumore
„
„
„
„
Le correnti di perdita (leakage) attraverso la PDN
possono scaricare l’uscita q
p
quando deve essere alta
diminuendo l’affidabiltà del circuito
Clock feedthrough: il segnale di clock (φ) varia
rapidamente quindi può,
può per accoppiamento capacitivo,
capacitivo
deteriore il segnale alto immagazzinato sulla capacità
Charge sharing: se anche il percorso a massa attraverso
la PDN non si chiude può capitare che qualche segnale
di ingresso intermedio si chiuda mettendo CL in parallelo
con altre capacità e diminuendo il valore alto
immagazzinato
In generale il segnale di uscita più sensibile ai disturbi è
quello alto perché è memorizzato sulla capacità senza
percorsi a bassa impedenza verso VDD
23 Settembre 2009
ED - Logica Combinatoria
Massimo Barbaro
95
Leakage
φ
IDp
A
Z
IDn
φ
IS
Inverter dinamico
23 Settembre 2009
Le correnti di leakage sono dovute alla presenza
dei diodi parassiti associati alle diffusioni di drain
d l PMOS e degli
del
d li NMOS ed
d alla
ll correnti
ti di
sottosoglia.
Tali correnti tendono a scaricare (caricare nel
caso di IDp) il capacitore.
A seconda di quale corrente prevale, l’uscita
tenderà a scaricarsi ((o caricarsi)) in un tempo
p
ragionevolmente lungo.
Sarà necessario ripartire con una nuova fase di
precarica/valutazione prima che la scarica
(carica) porti la tensione di uscita al di sotto della
soglia logica del circuito successivo.
Questo impone un limite inferiore alla frequenza
di funzionamento del circuito dinamico (minima
frequenza di funzionamento).
ED - Logica Combinatoria
Massimo Barbaro
96
Charge sharing
φ
A
Z
CL
B
Ca
φ
Se durante la fase di precarica A e B sono entrambi bassi, il PMOS sarà in
grado di caricare il solo capacitore CL (Ca è isolato a causa del NMOS
spento).
S durante la fase
Se
f
di valutazione (con
(
il PMOS
OS spento)) B rimane basso
(quindi interdice il percorso verso massa, imponendo che l’uscita resti alta)
ma A diventa alto, il capacitore Ca viene messo in parallelo con CL ed i due
capacitori devono quindi condividere la stessa carica elettrica che si
redistribuisce
di t ib i
su entrambi.
t
bi
Per la conservazione della carica elettrica, la carica presente in CL prima
della commutazione di A (Q0= CL VDD) deve ora essere presente sul
capacitore totale dato dalla somma dei due (sono in parallelo). Poiché la
carica
i
è la
l stessa,
t
ma il capacitore
it
è diverso,
di
d
deve
essere cambiata
bi t la
l
tensione:
Q1 = (CL + Ca) VOUT
Q1 = Q0
=>
VOUT = CL / (CL + Ca) VDD
((nota
t bene
b
che
h questo
t è vero solo
l se il valore
l
cosìì calcolato
l l t è inferiore
i f i
a VDD di almeno
l
una
soglia, altrimenti lo NMOS pilotato da B si spegnerebbe e non sarebbe più vero che i due
capacitori sono esattamente in parallelo)
Questo impone un minimo valore del rapporto fra i due capacitori per
garantire che VOUT non scenda sotto la soglia
g
g logica
g
del circuito seguente.
g
Ovviamente, più complessa è la porta logica, maggiore è il numero di
tranistor, quindi maggiore la capacità complessiva Ca, dunque più difficile
evitare il problema del charge sharing.
Porta NAND dinamica
23 Settembre 2009
ED - Logica Combinatoria
Massimo Barbaro
97
Logiche dinamiche in cascata (1)
„
Mettere due blocchi in cascata può comportare problemi
di distruzione del segnale
φ
x1
x2
x3
OUT1
φ
PDN x4
PDN
x5
φ
23 Settembre 2009
OUT2
φ
ED - Logica Combinatoria
Se in corrispondenza degli
ingressi deve essere OUT1=0
(e OUT2=1) possono verificarsi
problemi.
Infatti all
all’inizio
inizio della valutazione
OUT1=1
(precarica).
Tale
valore
potrebbe
fare
commutare OUT2 a 0 se la
PDN1 non è abbastanza veloce
nello scaricare OUT1
Massimo Barbaro
98
Logiche dinamiche in cascata (2)
„
Esempio
„ OUT1 = (AB)’
( )
„ OUT2 = ( OUT1 + C)’ = ( (AB)’ + C)’
φ
OUT1
φ
Questo circuito ha dei
potenziali problemi per
alcune combinazioni in
cui ll’uscita
uscita deve essere
alta.
OUT2
A
C
B
φ
23 Settembre 2009
φ
ED - Logica Combinatoria
Ad
esempio,
la
combinazione
bi
i
A 1 B
A=1,
B=1,
1
C=0.
In
tali
condizioni
dovrebbe
essere
OUT1=0 e OUT2=1.
Massimo Barbaro
99
Logiche dinamiche in cascata (3)
„
A=1, B=1, C=0
„ In p
precarica risulta OUT1=1 e OUT2=1.
„ Al termine della precarica inizia la valutazione.
φ
M1
A
M2
B
φ
OUT1
All’inizio
della
valutazione
chiudono M4 e M8.
φ
M5
M3
M4
23 Settembre 2009
φ
M8
Poiché OUT1 è precaricato a 1 si
chiude il percorso M6-M8 che tende
a scaricare OUT2.
OUT2
M7
M6
si
C
Contemporaneamente si chiude il
percorso M2-M3-M4 che scarica
OUT1.
Nel
e funzionamento
u o a e to co
corretto,
etto, qua
quando
do
OUT1 va a 0 apre il percorso M6-M8
lasciando OUT2 a 1 come deve
essere.
ED - Logica Combinatoria
Massimo Barbaro
100
Logiche dinamiche in cascata (4)
„
φ
A
B
φ
Possibile malfunzionamento
M1
OUT1
φ
M5
Se la
a sca
scarica
ca att
attraverso
a e so il
percorso M6-M8 è più veloce
della scarica attraverso M2M3-M4 il nodo OUT2 si
M3-M4,
scarica prima che OUT1 vada
a 0.
OUT2
M2
M7
M6
M3
M4
23 Settembre 2009
φ
M8
C
Una volta che OUT2 si è
scaricato, l’uscita risulterà 0 e
non sarà più possibile riportarla
a 1 perché M5 è spento.
Dunque nel momento in cui
OUT1 arriverà finalmente a 0,
l’uscita
OUT2
sarà
erroneamente p
pari a 0.
ED - Logica Combinatoria
Massimo Barbaro
101
Logica DOMINO
Una possibile soluzione al problema è offerta
dalle logiche DOMINO
„
φ
x1
x2
x3
φ
OUT1
PDN
φ
23 Settembre 2009
La presenza dell’inverter
impedisce che OUT1=1 in
precarica
scarichi
inavvertitamente OUT2.
OUT2
PDN
x4
x5
φ
ED - Logica Combinatoria
Infatti quando OUT1 è
precaricato a 1 in ingresso
alla PDN di OUT2 c’è uno 0
che NON può chiudere
percorsi di scarica.
scarica
La logica è detta domino
perché la valutazione della
prima
PDN
innesca
l’eventuale
commutazione
della seconda PDN e così via
Massimo Barbaro
102
Logiche DOMINO: caratteristiche
„
„
„
Possono implementare solo funzioni non
invertenti (per la presenza dell
dell’inverter)
inverter)
Sono molto compatte e veloci
Vengono utilizzate nella realizzazione di blocchi
logici critici (ALU di processori ad alte
prestazioni)
23 Settembre 2009
ED - Logica Combinatoria
Massimo Barbaro
103
Logica np-CMOS
„
Una altra possibile soluzione al problema è
offerta dalle logiche np-CMOS
np CMOS
φ
x1
x2
x3
φ’
OUT1
PDN
φ
23 Settembre 2009
PUN
x4
x5
φ’
φ
OUT2
ED - Logica Combinatoria
Quando (in precarica)
OUT1=1 la rete PUN di
OUT2 sarà sicuramente
disabilitata (un 1 in
ingresso su dei PMOS
NON
può
chiudere
percorsi di carica) quindi
all’inizio
della
valutazione
l t i
non
cii
possono essere errori
indesiderati.
Massimo Barbaro
104
Logiche np-CMOS: caratteristiche
„
„
„
Sono ancora più veloci delle DOMINO (per via
dell’eliminazione
dell
eliminazione dell
dell’inverter
inverter fra i due blocchi
dinamici).
D
Danno
l
luogo
ad
d implementazioni
i l
t i i molto
lt dense
d
e
compatte.
Vengono utilizzate nella realizzazione di blocchi
logici critici (ALU di processori ad alte
prestazioni).
23 Settembre 2009
ED - Logica Combinatoria
Massimo Barbaro
105
Logica Combinatoria
Logica a pass-transistor
Università di Cagliari
Dipartimento di Ingegneria Elettrica ed Elettronica
Laboratorio di Elettronica (EOLAB)
Logica a pass-transistor
„
„
Visto che un MOS è equivalente ad un interuttore si può pensare di
realizzare una funzione logica semplicemente scegliendo, a
seconda della combinazione in ingresso,
ingresso cosa fare passare in uscita
fra 1 e 0
E’ NECESSARIO che almeno uno dei percorsi sia chiuso in modo
che
h il valore
l
d ll’
dell’uscita
it sia
i determinato
d t
i t in
i ognii istante
i t t
x1
x2
x3
F(x1,x2,x3)
Rete di
interruttori
Può essere sostituito da un semplice buffer,
buffer cioè una
porta non invertente col solo compito di isolare l’uscita
dall’ingresso (un buffer NON invertente sono 2 inverter in
cascata).
t )
23 Settembre 2009
ED - Logica Combinatoria
Massimo Barbaro
107
Esempio
„
La porta F=AB può essere realizzata così:
B
A
B
„
F=AB
B’
Se B=1
S
B 1 passa A (quindi
( i di 0 o 1 a
seconda del valore di A). Il
secondo percorso è necessario
per garantire una logica statica,
cioè un percorso a bassa
impedenza
p
fra l’uscita e 0 o
VDD
per
qualunque
configurazione di ingresso
La porta F=(AB)
F=(AB)’ può essere realizzata così:
B
A
B
F=(AB)’
B’
23 Settembre 2009
ED - Logica Combinatoria
Massimo Barbaro
108
Esempio: multiplexer
La logica a pass-transistor è particolarmente adatta alla
realizzazione di multiplexer
p
Nel caso di un multiplexer 2x1 (due ingressi A e B e 1
ingresso di selezione S), la cui espressione logica è
F=AS’+BS si ha la seguente implementazione:
„
„
S’
A
B
F AS’+BS
F=AS’+BS
S
23 Settembre 2009
ED - Logica Combinatoria
Se S=0 passa A (quindi 0
o 1 a seconda del valore
di A). Se S=1 passa B
(quindi 0 o 1 a seconda
del valore di B).
)
Massimo Barbaro
109
Esempio: multiplexer 4x1
„
A
B
C
Nel caso di un multiplexer 4x1 (mux4x1) in cui
gli ingressi di selezione sono 2 bit (S1 e S0):
S0’
S1’
S0
S1’
S0’
S1
Z=AS0’S1’+BS0S1’+CS0’S1+DS0S1
ƒSe S S =00 passa A
ƒSe S S =01 ppassa B
ƒSe S S =10 passa C
ƒSe S S =11
11 passa D
1 0
D
S0
S1
1 0
1 0
1 0
23 Settembre 2009
ED - Logica Combinatoria
Massimo Barbaro
110
Logica a pass-transistor: sintesi
„
„
„
„
Il meccanismo è quello di costruire un diverso
percorso per le varie combinazioni di ingressi
(non necessariamente tutte, ma quelle
mutuamente esclusive).
esclusive)
A seconda della combinazione di ingresso uno
ed
d uno solo
l dei
d i percorsii sii chiuderà.
hi d à
Tale percorso porterà in uscita uno degli
ingressi
Il meccanismo è p
particolarmente indicato nella
realizzazione di circuiti di selezione (come i
mutliplexer)
p
)
23 Settembre 2009
ED - Logica Combinatoria
Massimo Barbaro
111
Realizzazione degli switch
„
Gli interruttori potrebbero essere realizzati con dei
singoli MOS.
A
X
Se Y<X
VGS
VGS
Y
ID
A
X
Se Y>X
Y
ID
Il transistor MOS è un dispositivo simmetrico, dunque non si può definire uno dei due
terminali souce o drain senza sapere il verso della corrente.
Il source è il terminale verso cui è diretta la corrente. Dunque a seconda di come scorre la
corrente cambia la caduta di potenziale che devo considerare (VGS) per verificare se il
transistor è acceso o spento.
23 Settembre 2009
ED - Logica Combinatoria
Massimo Barbaro
112
Realizzazione degli switch
„
Un singolo transitor non è in grado di trasferire in modo
perfetto ll’informazione.
informazione.
A=VDD
VDD
VGS
Y
ID
In questo caso, infatti:
VGS = VDD – Y
Il transistor si spegne quando:
VGS < VTH
Ossia
Y > VDD – VTH
Lo NMOS ha problemi nel trasferire le tensioni alte.
alte La
massima tensione che compare su Y prima che lo switch si
interdica è VDD – VTH
23 Settembre 2009
ED - Logica Combinatoria
Massimo Barbaro
113
Realizzazione degli switch
„
Il PMOS ha evidentemente il problema opposto.
A=0
0
ID
VSG
Y
In questo caso, infatti:
VSG = Y – 0 = Y
Il transistor si spegne quando:
VSG < VTH
Ossia
Y < VTH
Il PMOS ha problemi nel trasferire le tensioni basse.
basse La
minima tensione che compare su Y prima che lo switch si
interdica è VTH
23 Settembre 2009
ED - Logica Combinatoria
Massimo Barbaro
114
Problemi con switch singoli
„
Un 1 “sporco” causa un consumo di potenza statico
nell’inverter
nell
inverter che segue ll’interruttore.
interruttore. Infatti il PMOS sarà
sull’orlo della conduzione ed avrà una corrente non nulla
Y=VDD- VTH
A=VDD
X=VDD
23 Settembre 2009
C
ED - Logica Combinatoria
Ishort
Massimo Barbaro
115
Transmission gate
„
La soluzione al problema è l’uso dei transmission gate
A
X
Y
A’
„
„
Simbolo
Il PMOS è pilotato dal segnale di ingresso del NMOS
i
invertito.
tit Il PMOS sii occupa di correggere glili 1 “sporco”
“
”
e lo NMOS di correggere gli 0 “sporchi”.
Svantaggi: ho bisogno del PMOS e del segnale invertito
23 Settembre 2009
ED - Logica Combinatoria
Massimo Barbaro
116
Esempio: multiplexer
„
Realizzazione di un multiplexer a 2 ingressi (un blocco
che, in base ad un segnale di selezione S sceglie se
fare passare A o B)
S
A
F=(AS+BS’)’
S’
B
S
23 Settembre 2009
ED - Logica Combinatoria
Massimo Barbaro
117
Esempio: XOR
„
E’ possibile realizzare un XOR con soli 4
transistor
B
Non VDD !
F=(AB’+A’B)
(
)
Se B=1 l’uscita
e A’
B’
B
A
A
B
Se B=0 l’uscita
è A ((l’inverter è
disabilitato)
Non 0 !
B’
23 Settembre 2009
ED - Logica Combinatoria
Massimo Barbaro
118
Tempo di propagazione
„
„
„
Si usa il solito metodo e si sostituiscono i MOS
con resistenze equivalenti (Ron)
Si utilizza il metodo di Elmore (esattamente
come per glili altri
lt i circuiti
i iti visti)
i ti) per calcolare
l l
l
la
costante di tempo da cui si ricava il tempo di
propagazione
i
( )
(τ)
Al valore così calcolato (il tempo di
propagazione attraverso la rete di switch)
bisogna aggiungere il tempo di propagazione
del buffer (invertente o non invertente)
„
tp = 0.69τ + tp,buff
23 Settembre 2009
Tempo di propagazione del buffer in
cascata
ED - Logica Combinatoria
Massimo Barbaro
119
Tempo di propagazione
„
Si dimostra (col modello di Elmore) che, in una
catena di switch il tempo di propagazione è:
C
C
C
N ( N + 1)
t = 0.69 R C
2
p
23 Settembre 2009
eq
ED - Logica Combinatoria
N: numero
interruttori
Massimo Barbaro
120
Implementazione con soli NMOS
„
L’implementazione con soli NMOS (che risolve il
problema di dovere avere a disposizione tutti i
segnali di ingresso negati) è possibile usando il
level restorer
A=5
X=5
23 Settembre 2009
Y
ED - Logica Combinatoria
Quando passa un
1 è sufficiente che
il nodo Y sia
abbastanza
alto
d fare
da
f
commutare
t
l’inverter
per
accendere il level
levelrestore che porta
Y stesso a VDD
Massimo Barbaro
121
Porte tri-state
Porte logiche bidirezionali
Università di Cagliari
Dipartimento di Ingegneria Elettrica ed Elettronica
Laboratorio di Elettronica (EOLAB)
Alta impedenza
„
Il segnale in alta impedenza (Z) è utilizzato per
gestire bus bidirezionali:
Unità 1
Unità 2
BUS
Se l’Unità 1 (ad esempio il processore) deve potere
inviare/ricevere dati a/da ll’Unità
Unità 2 (ad esempio la
memoria) è necessario che entrambe siano in grado di
pilotare lo stesso bus.
23 Settembre 2009
ED - Logica Combinatoria
Massimo Barbaro
123
Alta impedenza
„
Quando una delle due unità pilota il bus (cioè tenta di imporne il
valore di tensione) l’altra lo deve rilasciare (ossia mettersi in alta
impedenza) in modo da non generare confitti.
confitti Altrimenti si avrebbe
la situazione in figura con un corto-circuito fra alimentazione e
massa e l’impossibilità di stabilire la tensione d’uscita del bus (che
potrebbe essere anche VDD/2 a seconda del dimensionamento dei
transistor).
1
23 Settembre 2009
0
ED - Logica Combinatoria
Massimo Barbaro
124
Alta impedenza
„
Da un punto di vista circuitale
l’alta impedenza
p
si p
può
implementare
così.
„
EN=1 la porta è abilitata e
rappresenta
un
inverter
„
EN=0 il pmos in alto e lo
nmos in basso sono interdetti
e l’uscita è in alta impedenza
(non c’è percorso né verso
massa né verso VDD)
Questa porta è detta tri-state
(ha tre stati logici: 0,1 e Z)
EN’
IN
OUT
EN
„
23 Settembre 2009
ED - Logica Combinatoria
Massimo Barbaro
125