Salta al contenuto
Note per Studenti Esercizio 2 · pass-transistor a p-MOS, livelli degradati e ripristino con n-MOS di retroazione (tema d'esame giugno 2025)

Esercizio 2pass-transistor a p-MOS, livelli degradati e ripristino con n-MOS di retroazione (tema d'esame giugno 2025)

Esame
In questa pagina 6

Testo (tema d'esame 17 giugno 2025, esercizio 2). Si consideri il circuito della figura (a), in cui tutti i transistor sono p-MOS con fattore di forma Zp=8Z_p=8.

  1. Calcolare la funzione logica realizzata al nodo FF.
  2. Calcolare la tensione del nodo FF associata al livello alto VFHV_{FH} e quella associata al livello basso VFLV_{FL}.
  3. Considerando la figura (b) e assumendo A=B=1A=B=1, C=0C=0, calcolare il fattore di forma dell'n-MOS in modo che valga VF=VDD/2V_F=V_{DD}/2 (due p-MOS in serie con fattore ZpZ_p equivalgono a un p-MOS con Zp/2Z_p/2).
  4. Considerando la figura (c), in cui l'n-MOS ha il fattore calcolato al punto precedente e l'inverter è bilanciato staticamente, calcolare il valore finale (a regime) di VFV_F dopo che AA è passato da 11 a 00, con B=1B=1, C=0C=0.

Dati. kn′=125 μA/V2k'_n=125\ \mu\mathrm A/\mathrm V^2, kp′=−35 μA/V2k'_p=-35\ \mu\mathrm A/\mathrm V^2, VT0n=0,5 VV_{T0n}=0{,}5\ \mathrm V, VT0p=−0,5 VV_{T0p}=-0{,}5\ \mathrm V; l'effetto body (quando presente) produce ΔVTn=−ΔVTp=0,3 V\Delta V_{Tn}=-\Delta V_{Tp}=0{,}3\ \mathrm V; VDD=3 VV_{DD}=3\ \mathrm V; λn=0,06 V−1\lambda_n=0{,}06\ \mathrm V^{-1}, λp=−0,1 V−1\lambda_p=-0{,}1\ \mathrm V^{-1}; L=0,25 μmL=0{,}25\ \mu\mathrm m.

Figura (descritta). (a) Rete di sei p-MOS con gli ingressi A,B,CA,B,C e i loro negati, e l'uscita FF a un nodo in comune. Blocco alto: un p-MOS con gate B‾\overline B collega AA al nodo X1X_1; un p-MOS con gate BB collega BB allo stesso nodo X1X_1; un p-MOS con gate CC collega X1X_1 a FF. Blocco basso: un p-MOS con gate B‾\overline B collega A‾\overline A al nodo X2X_2; uno con gate BB collega B‾\overline B a X2X_2; uno con gate C‾\overline C collega X2X_2 a FF. (b) Stessa rete, con FF collegato al drain di un n-MOS con gate a VDDV_{DD} e source a massa. (c) Stessa rete, con FF collegato all'ingresso di un inverter e al drain di un n-MOS (source a massa) il cui gate è collegato all'uscita dell'inverter.

Teoria usata: 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 →, Il transistor MOS come interruttore - soglia, caratteristiche e capacitàIl MOS ha quattro terminali (gate, source, drain, bulk); il bulk dell'n-MOS va a massa, quello del p-MOS a V_DD. Il canale esiste (inversione) per V_GS > V_T nell'n-MOS (V_T > 0) e per V_GS < V_T nel p-MOS (V_T < 0). La soglia cresce in modulo con la tensione di source rispetto al bulk (effetto body): V_T = V_T0 + γ(√|−2Φ_F+V_SB| − √|2Φ_F|). Corrente: lineare per V_DS < V_GS − V_T, I_D = k'(W/L)[(V_GS−V_T)V_DS − V_DS²/2]; saturazione per V_DS > V_GS − V_T, I_D = (k'/2)(W/L)(V_GS−V_T)²(1+λV_DS). In digitale il transistor è un interruttore con resistenza equivalente R_eq ∝ 1/Z (Z = W/L) e capacità di gate C_g = C_ox W L, di drain e source ∝ W. Raddoppiando Z la resistenza dimezza e le capacità raddoppiano.Il transistor MOS come interruttore - soglia, caratteristiche e capacità →, 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 →.


1. Funzione logica

Un p-MOS conduce quando il suo gate è a 00.

  • Blocco alto: il transistor con gate B‾\overline B conduce se B=1B=1 e trasferisce AA a X1X_1; quello con gate BB conduce se B=0B=0 e trasferisce B=0B=0. Quindi X1=AX_1=A se B=1B=1, X1=0X_1=0 se B=0B=0: X1=A⋅BX_1=A\cdot B.
  • Blocco basso: con gate B‾\overline B (conduce per B=1B=1) passa A‾\overline A; con gate BB (conduce per B=0B=0) passa B‾=1\overline B=1. Quindi X2=A‾X_2=\overline A se B=1B=1, X2=1X_2=1 se B=0B=0: X2=A‾+B‾=AB‾X_2=\overline A+\overline B=\overline{AB}.
  • Uscita: il transistor con gate CC passa X1X_1 quando C=0C=0; quello con gate C‾\overline C passa X2X_2 quando C=1C=1. Dunque F=C‾ X1+C X2=C‾ (AB)+C AB‾=F=(A⋅B)⊕C.F=\overline C\,X_1+C\,X_2=\overline C\,(AB)+C\,\overline{AB}=\boxed{F=(A\cdot B)\oplus C.} Verifica sulle 88 combinazioni: ABC=000,010,100→0ABC=000,010,100\to0; 001,011,101→1001,011,101\to1; 110→1110\to1; 111→0111\to0 (uguale a AB⊕CAB\oplus C, controllata con Python).

2. Livelli logici

Un p-MOS trasmette bene l'11 ma male lo 00 (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 →).

  • VFHV_{FH}. Un 11 viene trasferito attraverso due p-MOS in serie con source collegato all'ingresso a VDDV_{DD}: VSG=VDDV_{SG}=V_{DD} e source=bulk, nessun effetto body e nessuna perdita: VFH=VDD=3 V\boxed{V_{FH}=V_{DD}=3\ \mathrm V}.
  • VFLV_{FL}. Per trasferire uno 00 il source (il nodo più alto) scende finché VSG=∣VTp∣V_{SG}=\lvert V_{Tp}\rvert; il bulk è a VDDV_{DD} e il source è basso, quindi c'è effetto body e ∣VTp∣=0,5+0,3=0,8 V\lvert V_{Tp}\rvert=0{,}5+0{,}3=0{,}8\ \mathrm V. Il primo transistor porta X1X_1 a 0,8 V0{,}8\ \mathrm V; il secondo, con gate a 00, può portare FF al più a 0,8 V0{,}8\ \mathrm V (non conduce più quando Vsource=0,8V_{source}=0{,}8). VFL=0,8 V\boxed{V_{FL}=0{,}8\ \mathrm V}. Il livello basso è quindi degradato: 0,8 V0{,}8\ \mathrm V invece di 00 (VDD/2=1,5 VV_{DD}/2=1{,}5\ \mathrm V è la soglia logica di un inverter bilanciato).

3. Figura (b): dimensionamento dell'n-MOS

Con A=B=1A=B=1, C=0C=0: X1=A=3 VX_1=A=3\ \mathrm V (il transistor con gate B‾=0\overline B=0 conduce con source a 3 V3\ \mathrm V: nessun effetto body, nessuna perdita) e il transistor con gate C=0C=0 trasferisce X1X_1 a FF. Il p-MOS equivalente (due in serie) ha Zp/2=4Z_p/2=4 e il gate a 00: VSG=3 VV_{SG}=3\ \mathrm V, VSD=VDD−VF=1,5 VV_{SD}=V_{DD}-V_F=1{,}5\ \mathrm V con VF=VDD/2V_F=V_{DD}/2. Soglia ∣VTp∣=0,5 V\lvert V_{Tp}\rvert=0{,}5\ \mathrm V (source a VDDV_{DD}: niente body): VGT=2,5 V>VSDV_{GT}=2{,}5\ \mathrm V>V_{SD}: zona lineare. Ip=∣kp′∣Zp2[VGTVSD−VSD22]=35⋅4 [2,5⋅1,5−1,125]=140⋅2,625=367,5 μA.I_p=\lvert k'_p\rvert\frac{Z_p}2\Big[V_{GT}V_{SD}-\frac{V_{SD}^2}2\Big]=35\cdot4\,\big[2{,}5\cdot1{,}5-1{,}125\big]=140\cdot2{,}625=367{,}5\ \mu\mathrm A. L'n-MOS ha VGS=VDD=3 VV_{GS}=V_{DD}=3\ \mathrm V, VDS=VF=1,5 VV_{DS}=V_F=1{,}5\ \mathrm V, soglia 0,5 V0{,}5\ \mathrm V (source a massa: nessun body): VGT=2,5 V>VDSV_{GT}=2{,}5\ \mathrm V>V_{DS}, anch'esso in zona lineare: In=kn′Zn[2,5⋅1,5−1,522]=125 Zn⋅2,625 μA.I_n=k'_nZ_n\Big[2{,}5\cdot1{,}5-\frac{1{,}5^2}2\Big]=125\,Z_n\cdot2{,}625\ \mu\mathrm A. Uguagliando In=IpI_n=I_p: Zn=367,5125⋅2,625=1,12.Z_n=\frac{367{,}5}{125\cdot2{,}625}=\boxed{1{,}12.} (λ\lambda non interviene: entrambi in zona lineare.)

4. Figura (c): ripristino del livello

Si parte da A=B=CA=B=C tali che F=AB⊕C=1F=AB\oplus C=1 (con A=1A=1, B=1B=1, C=0C=0): F=3 VF=3\ \mathrm V. L'inverter ha uscita 00, quindi l'n-MOS (gate a 00) è spento. Poi A→0A\to0 (B=1B=1, C=0C=0): F=AB⊕C=0F=AB\oplus C=0.

  1. Il p-MOS con gate B‾=0\overline B=0 passa A=0A=0 a X1X_1: X1X_1 scende fino a ∣VTp∣=0,8 V\lvert V_{Tp}\rvert=0{,}8\ \mathrm V (livello degradato), e il p-MOS con gate C=0C=0 porta FF a 0,8 V0{,}8\ \mathrm V.
  2. Passando sotto la soglia logica dell'inverter, VM=VDD/2=1,5 VV_M=V_{DD}/2=1{,}5\ \mathrm V, l'inverter (bilanciato) commuta: la sua uscita va a VDDV_{DD}.
  3. L'n-MOS di retroazione ha ora VGS=VDD=3 VV_{GS}=V_{DD}=3\ \mathrm V: si accende e tira FF verso massa.
  4. Quando FF scende sotto 0,8 V0{,}8\ \mathrm V, il p-MOS con gate C=0C=0 ha il source dal lato di X1X_1 (a 0,8 V0{,}8\ \mathrm V) e VSG=0,8 V=∣VTp∣V_{SG}=0{,}8\ \mathrm V=\lvert V_{Tp}\rvert: è spento. Nessun p-MOS fornisce corrente a FF e l'n-MOS porta FF fino a VDS→0V_{DS}\to0. VF=0 V a regime (X1 resta a 0,8 V isolato).\boxed{V_F=0\ \mathrm V\ \text{a regime}\ (X_1\text{ resta a }0{,}8\ \mathrm V\ \text{isolato}).} Il transistor di retroazione è un ripristinatore di livello (level restorer): rigenera il livello basso degradato del pass-transistor e porta l'inverter all'uscita a VDDV_{DD} completo, evitando la corrente statica. Il circuito (c) è la soluzione al problema della propagazione di livelli degradati (Logica pseudo-nMOS e logiche a caricoNella logica pseudo-nMOS (a rapporto, ratioed) la PUN della CMOS complementare è sostituita da un solo p-MOS con gate a massa, sempre acceso, che fa da carico per la PDN a n-MOS. Così servono N+1 transistor invece di 2N e la capacità di ingresso è minore, ma l'uscita bassa non è 0: V_OL si ricava uguagliando la corrente dell'n-MOS (zona lineare) a quella del p-MOS (saturazione), ed esiste potenza statica quando l'uscita è bassa (P = V_DD·I). V_OH = V_DD. Per V_OL piccola serve Z_n ≫ Z_p; il ritardo di salita è lento (carica solo il p-MOS debole: t_pLH = 0,69 R_p C_L), quello di discesa è più veloce (t_pHL ≈ 0,69 R_n C_L). Lo stesso schema (carichi p-MOS a massa) si ritrova nelle ROM a NOR.Logica pseudo-nMOS e logiche a carico →).

Perché serve il valore del punto 3. Nella transizione opposta (FF da 00 a 11) l'n-MOS di retroazione è acceso (l'inverter ha uscita VDDV_{DD}) e contrasta i p-MOS che cercano di portare FF in alto: affinché FF riesca a superare VM=VDD/2V_M=V_{DD}/2 e l'inverter possa commutare, i p-MOS devono vincere. Con Zn=1,12Z_n=1{,}12 le due correnti si pareggiano esattamente in VF=VDD/2V_F=V_{DD}/2: è il valore massimo accettabile (con ZnZ_n maggiore il ripristinatore è troppo forte e FF non supera la soglia). Il progetto sceglie quindi Zn≤1,12Z_n\le1{,}12, abbastanza grande da rigenerare lo 00, abbastanza piccolo da lasciar commutare.

Verifica numerica

Python: tabella di verità della rete (confermata F=AB⊕CF=AB\oplus C); Ip=367,5 μAI_p=367{,}5\ \mu\mathrm A, regioni (entrambi lineari) e Zn=1,120Z_n=1{,}120.

Errori comuni

  • Credere che i p-MOS trasmettano bene lo 00: lo degradano a ∣VTp∣\lvert V_{Tp}\rvert.
  • Dimenticare di sommare ΔVT=0,3 V\Delta V_T=0{,}3\ \mathrm V (effetto body): VFL=0,8 VV_{FL}=0{,}8\ \mathrm V, non 0,5 V0{,}5\ \mathrm V.
  • Usare la formula di saturazione dei due transistor del punto 3: sono entrambi in zona lineare (VDS<VGTV_{DS}<V_{GT}).
  • Scegliere ZnZ_n con il ZpZ_p intero (88) invece di Zp/2=4Z_p/2=4 (serie di due p-MOS).

Versione ripasso

Testo. Rete di p-MOS (Zp=8Z_p=8) con A,B,CA,B,C e negati; (b) FF su n-MOS con gate VDDV_{DD}; (c) n-MOS pilotato dall'uscita di un inverter bilanciato. VDD=3V_{DD}=3 V, VTn=0,5V_{Tn}=0{,}5, VTp=−0,5V_{Tp}=-0{,}5 (ΔVT=0,3\Delta V_T=0{,}3 con body), kn′=125k'_n=125, kp′=−35 μk'_p=-35\ \muA/V2^2.

  • Funzione: X1=ABX_1=AB (gate B‾\overline B passa AA, gate BB passa BB), X2=AB‾X_2=\overline{AB}; C=0C=0 passa X1X_1, C=1C=1 passa X2X_2: F=(AB)⊕CF=(AB)\oplus C.
  • Livelli: VFH=VDD=3V_{FH}=V_{DD}=3 V (p-MOS trasmette bene l'11); VFL=∣VTp∣=0,5+0,3=0,8V_{FL}=\lvert V_{Tp}\rvert=0{,}5+0{,}3=0{,}8 V (degradato, effetto body).
  • (b) A=B=1A=B=1, C=0C=0, VF=1,5V_F=1{,}5 V: p-MOS (Zp/2=4Z_p/2=4, VGT=2,5V_{GT}=2{,}5, VSD=1,5V_{SD}=1{,}5, lineare) Ip=35⋅4⋅2,625=367,5 μI_p=35\cdot4\cdot2{,}625=367{,}5\ \muA; n-MOS lineare In=125Zn⋅2,625I_n=125Z_n\cdot2{,}625 ⇒Zn=1,12\Rightarrow Z_n=1{,}12.
  • (c) A→0A\to0: FF scende a 0,80{,}8 V <VM=1,5<V_M=1{,}5 V, l'inverter commuta a VDDV_{DD}, l'n-MOS (VGS=3V_{GS}=3 V) porta FF a 00; il p-MOS è spento (VSG=0,8=∣VTp∣V_{SG}=0{,}8=\lvert V_{Tp}\rvert): VF=0V_F=0 V (ripristino di livello).
  • Errori: p-MOS e lo 00; body ΔVT\Delta V_T dimenticato; saturazione al punto 3; ZpZ_p invece di Zp/2Z_p/2.

Esercizi su questo argomento

Teoria collegata