Porte logiche CMOS - struttura statica complementare e dimensionamento
In questa pagina 6
Un circuito combinatorio ha uscite che dipendono solo dagli ingressi del momento (uno sequenziale ha anche uno stato: Latch, registri e parametri temporaliUn circuito sequenziale ha uno stato memorizzato in due modi: retroazione positiva (due inverter in anello, bistabile, i latch statici) o immagazzinamento di carica (circuiti dinamici). Un latch è sensibile al livello del clock (trasparente quando il clock è attivo, memorizza quando non lo è), un registro (flip-flop) è sensibile al fronte e si realizza con due latch sulle fasi opposte (master-slave). Il latch SR a porte NOR/NAND non ammette la combinazione S = R = 1 perché passando da lì alla memoria lo stato finale è imprevedibile. Parametri temporali del registro: ritardo clock-uscita t_c-q, tempo di setup t_su (dato stabile prima del fronte), tempo di hold t_hold (dato stabile dopo il fronte). Periodo minimo: T_min = t_c-q + t_p,logic(max) + t_su; vincolo di hold: t_cd,reg + t_cd,logic > t_hold. La pipeline spezza la logica con registri per aumentare la frequenza (a spese della latenza).Latch, registri e parametri temporali →). Qui si costruisce la porta logica combinatoria in logica CMOS statica complementare, il caso più diffuso, ereditando dall'inverter (Invertitore CMOS - caratteristica di trasferimento staticaL'inverter CMOS ha un p-MOS verso V_DD e un n-MOS verso massa con gli ingressi collegati: V_OH = V_DD, V_OL = 0, nessun cammino diretto in continua (consumo statico nullo). La VTC ha cinque regioni (n-MOS off; n sat/p lin; entrambi sat in V_M; n lin/p sat; p off). Con entrambi in saturazione e λ = 0: V_M = (V_Tn + r(V_DD + V_Tp))/(1 + r) con r = √(|k'_p|Z_p/(k'_n Z_n)). Bilanciamento statico (V_M = V_DD/2 con V_Tn = |V_Tp|): Z_p/Z_n = k'_n/|k'_p| (circa 3,8). Scalare Z_n e Z_p dello stesso fattore lascia V_M invariata e moltiplica la corrente di picco; aumentare Z_p/Z_n alza V_M, V_IL e V_IH; V_M segue V_DD. Margini NM_L = V_IL, NM_H = V_DD − V_IH (circa 1 V a 2,5 V).Invertitore CMOS - caratteristica di trasferimento statica →) l'idea di due reti complementari.
I transistor come interruttori controllati
- L'n-MOS è chiuso (conduce) quando il gate è alto. Due n-MOS in serie conducono se e sono alti (AND); due in parallelo conducono se o sono alti (OR).
- Il p-MOS è chiuso quando il gate è basso: due p-MOS in serie conducono se e sono entrambi bassi (), in parallelo se almeno uno dei due è basso ().
- L'n-MOS trasmette bene gli (porta il nodo a massa) ma male gli (arriva a ); il p-MOS trasmette bene gli ma male gli (si ferma a ). Per questo la PDN è fatta solo di n-MOS e la PUN solo di p-MOS: ognuna trasmette il livello che sa trasmettere bene (Logica a pass-transistor e gate di trasmissioneNella logica a pass-transistor gli ingressi pilotano sia i gate sia i terminali di source/drain di una rete di interruttori (N transistor per N ingressi, nessun consumo statico, alcune funzioni, come AND, MUX e XOR, richiedono pochi transistor). Gli n-MOS trasmettono bene gli 0 ma male gli 1 (V_DD − V_Tn, con effetto body: circa 1,8 V da 2,5 V), i p-MOS al contrario (V_Tp in modulo per lo 0): il livello degradato non è rigenerato e può far condurre un inverter successivo (consumo statico). Il gate di trasmissione (n-MOS e p-MOS in parallelo, con G e nG complementari) trasmette bene entrambi i livelli, con resistenza R_n‖R_p quasi costante, ma costa due transistor e raddoppia le capacità. Una catena di n pass-transistor ha ritardo ∝ n² (Elmore, 0,69 R C n(n+1)/2): si inseriscono buffer ogni m = 1,7√(t_buf/(R_eq C)) stadi.Logica a pass-transistor e gate di trasmissione →).
Struttura: PDN e PUN duali
Una porta statica complementare è formata da
- una rete di pull-down (PDN) di n-MOS tra l'uscita e massa;
- una rete di pull-up (PUN) di p-MOS tra e l'uscita;
- gli stessi ingressi pilotano i gate di entrambe.
La PDN, con i transistor chiusi sugli ingressi alti, realizza la funzione e, quando conduce, porta l'uscita a : l'uscita è . La PUN è la duale della PDN: dove la PDN ha una serie, la PUN ha un parallelo, e viceversa. Per costruire la PDN a partire dalla funzione: , con in forma AND (serie) / OR (parallelo) di sottoreti; la PUN si ottiene scambiando serie e parallelo (scomposizione gerarchica in sottoreti). Così per ogni combinazione degli ingressi esattamente una delle due reti conduce: non c'è mai un cammino diretto -massa (consumo statico nullo) e l'uscita non è mai flottante.
NAND a 2 ingressi: ; PDN: due n-MOS in serie; PUN: due p-MOS in parallelo. Tabella: per e per . NOR a 2 ingressi: ; PDN: due n-MOS in parallelo; PUN: due p-MOS in serie. solo per .
Funzione complessa. : PDN: in parallelo con la serie di con il parallelo di e ; PUN (duale): in serie con il parallelo di e della serie di e . In generale si possono realizzare in un solo stadio solo funzioni invertenti (negative unate): per ottenere (non invertente) servono due stadi (un NOR e un inverter) oppure, se si hanno a disposizione anche gli ingressi negati, un solo stadio: con PDN costituita da due n-MOS in serie pilotati da e si ha .
Proprietà della logica CMOS statica complementare
- Escursione logica completa ( e ): margini di rumore elevati ( metà di almeno).
- I livelli logici sono indipendenti dalle dimensioni dei transistor.
- In condizioni stazionarie esiste sempre un cammino a bassa resistenza verso massa o : bassa impedenza di uscita; impedenza di ingresso elevata (corrente praticamente nulla in ingresso).
- Nessun cammino diretto tra e massa: consumo statico nullo.
- Il ritardo è funzione della resistenza e della capacità di uscita (Porte logiche CMOS - ritardo di Elmore, fan-in e consumoIl ritardo di una porta dipende dalla configurazione degli ingressi: si calcola il caso peggiore (un solo cammino conduttivo, il più resistivo) e il caso migliore. Per una rete RC con transistor in serie si usa il ritardo di Elmore: t = 0,69 Σ_k C_k · R_k, con R_k la resistenza totale tra il nodo k e il generatore (massa o V_DD) lungo il cammino e C_k la capacità del nodo. Per NAND2 con R_n = R_p: t_pLH (caso peggiore) = 0,69 R_p C, t_pHL = 0,69·2R_n C, quindi t_pHL = 2 t_pLH; per NOR2 è l'opposto. Una NOR a N ingressi (tutti i transistor uguali, nodi interni trascurati): t_pLH = 0,69 R_p C N(N+1), t_pHL = 0,69 R_n C (N+1): il ritardo cresce col quadrato del fan-in, perciò si evitano fan-in maggiori di 4. Rimedi: dimensionamento progressivo (transistor più grandi dal lato opposto all'uscita), riordino degli ingressi (il più tardivo vicino all'uscita), cascata di porte con meno ingressi, buffer. La potenza dinamica dipende dalla probabilità di commutazione.Porte logiche CMOS - ritardo di Elmore, fan-in e consumo →).
- Costo: transistor per ingressi.
Resistenza equivalente e dimensionamento
Il riferimento è l'inverter minimo bilanciato: e (–), con resistenze , in salita e in discesa. Per una porta si vuole che, nel caso peggiore, la resistenza del cammino sia uguale a quella dell'inverter: il caso peggiore è quello in cui commuta l'ingresso la cui commutazione lascia conduttivo il solo cammino di massima resistenza (un solo transistor attivo in ciascun parallelo).
Regole:
- transistor in serie (due con fattore ) equivalgono a un solo transistor con (la resistenza raddoppia); in serie ;
- transistor in parallelo (due con fattore ) equivalgono a un transistor con (se conducono entrambi); nel caso peggiore ne conduce uno solo.
Per riportare a la resistenza di un cammino con n-MOS in serie, ciascuno deve avere (resistenza ciascuno, in serie ). Quindi, per dimensionare con la regola del cammino più lungo: ogni transistor riceve dove è il numero di transistor del cammino serie più lungo (resistenza massima) di cui fa parte.
| porta | (n-MOS) | (p-MOS) |
|---|---|---|
| inverter | ||
| NAND2 | ciascuno (serie di 2) | ciascuno (paralleli) |
| NOR2 | ciascuno (paralleli) | ciascuno (serie di 2) |
| NAND3 | ||
| NOR3 | ||
| : ; : (cammini , di 2) | : (cammino di 3); : (cammino di 2) |
Con (dati del corso) la porta complessa ha per e per . La NAND2 ha il doppio degli n-MOS (area e capacità di ingresso maggiori) rispetto all'inverter: la porta guadagna la stessa velocità dell'inverter al prezzo di area e capacità. Il p-MOS è già più grande dell'n-MOS, perciò le NOR costano più delle NAND (due p-MOS in serie), e a parità di fan-in si preferiscono le NAND.
Dimensionamento per un valore assegnato. Dato che nel caso peggiore la resistenza del pull-down vale ( n-MOS in serie di fattore uguale), per ottenere occorre . Analogamente per il pull-up (con p-MOS in serie nel cammino peggiore). Per avere pull-up uguale al pull-down basta .
Esempio. , , . PDN: serie di e in parallelo a ; PUN: in serie al parallelo di e . Il cammino peggiore del pull-down è – (): per serve per tutti gli n-MOS ( ciascuno). Il cammino peggiore del pull-up è + uno tra , (): . Esercizio completo: Esercizio 1 · porta AOI a tre ingressi, dimensionamento, ritardi e consumo dinamico (tema d'esame giugno 2025).
Minimizzare la capacità di uscita
Il nodo di uscita è collegato ai drain dei transistor adiacenti: ogni drain aggiunge una capacità . Per minimizzare la capacità di uscita a parità di funzione si dispone la PDN e la PUN in modo che all'uscita arrivi il minor numero di transistor: nella serie-parallelo si collega all'uscita il singolo transistor (o il ramo con meno transistor) invece del parallelo. Per : PDN con uscita collegata ai drain di e di (2 n-MOS, comunque obbligati); PUN con adiacente all'uscita (1 drain) e il parallelo verso : in totale drain sull'uscita ( n-MOS p-MOS) anziché posizionando vicino all'uscita. La stessa regola vale in generale: i nodi interni, collegati a source/drain di transistor in serie, hanno capacità minore e contano meno (Porte logiche CMOS - ritardo di Elmore, fan-in e consumoIl ritardo di una porta dipende dalla configurazione degli ingressi: si calcola il caso peggiore (un solo cammino conduttivo, il più resistivo) e il caso migliore. Per una rete RC con transistor in serie si usa il ritardo di Elmore: t = 0,69 Σ_k C_k · R_k, con R_k la resistenza totale tra il nodo k e il generatore (massa o V_DD) lungo il cammino e C_k la capacità del nodo. Per NAND2 con R_n = R_p: t_pLH (caso peggiore) = 0,69 R_p C, t_pHL = 0,69·2R_n C, quindi t_pHL = 2 t_pLH; per NOR2 è l'opposto. Una NOR a N ingressi (tutti i transistor uguali, nodi interni trascurati): t_pLH = 0,69 R_p C N(N+1), t_pHL = 0,69 R_n C (N+1): il ritardo cresce col quadrato del fan-in, perciò si evitano fan-in maggiori di 4. Rimedi: dimensionamento progressivo (transistor più grandi dal lato opposto all'uscita), riordino degli ingressi (il più tardivo vicino all'uscita), cascata di porte con meno ingressi, buffer. La potenza dinamica dipende dalla probabilità di commutazione.Porte logiche CMOS - ritardo di Elmore, fan-in e consumo →).
Errori comuni
- Dimensionare la PDN con senza tenere conto delle serie: la resistenza di caso peggiore sarebbe volte maggiore.
- Scambiare serie e parallelo nella PUN (non è un'immagine speculare: è la duale).
- Dimenticare che è negata rispetto alla funzione realizzata dalla PDN (AND di ingressi in serie nella PDN NAND).
- Pensare di poter realizzare una funzione non invertente in uno stadio senza ingressi negati: in uno stadio richiede (oppure due stadi).
- Usare per il p-MOS : la resistenza in salita sarebbe volte maggiore (Invertitore CMOS - ritardo di propagazioneIn commutazione l'inverter è un circuito RC del primo ordine: il tempo di propagazione al 50% vale t_p = ln2·τ = 0,69·R·C. Con R_n e R_p resistenze equivalenti e C_L = C_int + C_ext (intrinseca = capacità di drain di n-MOS e p-MOS; estrinseca = gate delle porte pilotate e interconnessioni): t_pHL = 0,69 R_n C_L, t_pLH = 0,69 R_p C_L. Con Z_p = βZ_n, R_p/R_n = r/β (r = R_p0/R_n0 ≈ 2,4): il bilanciamento dinamico (t_pHL = t_pLH) richiede β = r, mentre il minimo del ritardo medio con carico a gate si ha per β = √r. Moltiplicando Z_n e Z_p per S: t_p = t_p0 (1 + C_ext/(S C_int,ref)): a carico estrinseco dominante raddoppiare le larghezze dimezza il ritardo; con carico intrinseco dominante non cambia (autocaricamento).Invertitore CMOS - ritardo di propagazione →).
Versione ripasso
- Interruttori: n-MOS chiuso con ingresso alto (serie = AND, parallelo = OR), p-MOS chiuso con ingresso basso (serie = , parallelo = ); n-MOS: 0 forte; p-MOS: 1 forte.
- Struttura: PDN (n-MOS) a massa, PUN (p-MOS) a , duali (serie parallelo); PDN realizza , ; una sola rete conduce per ogni combinazione (no cammino -massa). NAND2: PDN serie, PUN parallelo; NOR2: PDN parallelo, PUN serie; : PDN . Solo funzioni invertenti in uno stadio (: ingressi negati o due stadi).
- Proprietà: escursione completa, livelli indipendenti dalle dimensioni, bassa , alta , consumo statico nullo, ritardo da e , transistor.
- Dimensionamento: riferimento , ; con = transistor del cammino serie peggiore (NAND2: , ; NOR2: , ; porta complessa: , n-MOS; , p-MOS). Con : (, k: , ).
- Capacità di uscita minima: all'uscita il ramo con meno transistor ( adiacente nella PUN: drain invece di ).
- Errori: senza le serie; PUN speculare; dimenticare la negazione; in uno stadio; .
Esercizi su questo argomento
- Esercizio 1 · porta AOI a tre ingressi, dimensionamento, ritardi e consumo dinamico (tema d'esame giugno 2025)
- Esercizio 5 · NAND e NOR con soglia logica assegnata, ritardi, potenza e uscite in contrasto (tema d'esame luglio 2025)
- Esercizio 6 · rete di pass-transistor n-MOS a quattro vie, funzione, livelli e ritardo (tema d'esame luglio 2025)
- Esercizio 7 · porta AOI a quattro ingressi, dimensionamento, ritardi e consumo dinamico (tema d'esame settembre 2026)
- Esercizio 21 · porta complessa D più A per B più C, dimensionamento e ritardi di Elmore (esempio dalle slide)
Teoria collegata
- Il transistor MOS come interruttore - soglia, caratteristiche e capacità
- Latch, registri e parametri temporali
- Logica a pass-transistor e gate di trasmissione
- Logica pseudo-nMOS e logiche a carico
- Logiche dinamiche - precarica e valutazione
- Porte logiche CMOS - ritardo di Elmore, fan-in e consumo
- VHDL - logica combinatoria