Salta al contenuto
Note per Studenti Esercizio 4 · invertitore CMOS bilanciato dinamicamente, correnti a V_DD diviso 2 e carico massimo (tema d'esame luglio 2025)

Esercizio 4invertitore CMOS bilanciato dinamicamente, correnti a V_DD diviso 2 e carico massimo (tema d'esame luglio 2025)

Esame
In questa pagina 4

Testo (tema d'esame 2 luglio 2025, esercizio 1). Si consideri l'invertitore CMOS in figura (n-MOS verso massa, p-MOS verso VDDV_{DD}, ingressi uniti, carico CLC_L all'uscita), con Zn=2Z_n=2 (Ln=Lp=0,35 μmL_n=L_p=0{,}35\ \mu\mathrm m). L'ingresso ViV_i commuta istantaneamente alla frequenza di 2 MHz2\ \mathrm{MHz}.

  1. Nell'ipotesi di bilanciamento dinamico, calcolare le correnti nei due transistor per Vi=VDD/2V_i=V_{DD}/2.
  2. Sempre nell'ipotesi di bilanciamento dinamico, determinare il massimo valore di CLC_L tale che il consumo di potenza dinamica sul nodo di uscita sia P<1 μWP<1\ \mu\mathrm W e il tempo di propagazione sia tp<0,5 nst_p<0{,}5\ \mathrm{ns}.

Dati. Kn′=100 μA/V2K'_n=100\ \mu\mathrm A/\mathrm V^2, Kp′=−30 μA/V2K'_p=-30\ \mu\mathrm A/\mathrm V^2, VT0n=0,66 VV_{T0n}=0{,}66\ \mathrm V, VT0p=−0,7 VV_{T0p}=-0{,}7\ \mathrm V, VDD=3 VV_{DD}=3\ \mathrm V, λn=0,04 V−1\lambda_n=0{,}04\ \mathrm V^{-1}, λp=−0,1 V−1\lambda_p=-0{,}1\ \mathrm V^{-1}, Rn0=12 kΩR_{n0}=12\ \mathrm{k\Omega}, Rp0=28,2 kΩR_{p0}=28{,}2\ \mathrm{k\Omega} (per Z=1Z=1), Cox=4,6 fF/μm2C_{ox}=4{,}6\ \mathrm{fF}/\mu\mathrm m^2, Cs0=Cd0=1,4 fF/μmC_{s0}=C_{d0}=1{,}4\ \mathrm{fF}/\mu\mathrm m.

Teoria usata: 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 →, 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 →, Consumo di potenza nei circuiti CMOSNella logica CMOS il consumo è quasi tutto dinamico. Per ogni carica di C_L da 0 a V_DD l'alimentazione eroga E_DD = C_L V_DD²; metà (½C_L V_DD²) viene immagazzinata nella capacità e metà dissipata nel p-MOS, indipendentemente dal valore di R; nella scarica l'energia immagazzinata è dissipata nell'n-MOS e dall'alimentazione non si assorbe nulla. La potenza media è P = α C_L V_DD² f (α = probabilità di una transizione 0→1 per periodo; per un inverter che commuta a ogni ciclo α = 1; con probabilità di uno p₁ all'uscita α = p₁(1−p₁) se i valori successivi sono indipendenti). Non dipende dalle dimensioni dei transistor (solo da C_L), scala col quadrato di V_DD (dimezzare V_DD: potenza ÷4) ma abbassare V_DD rallenta il circuito. Si aggiungono la corrente di corto circuito (ingressi lenti) e le correnti di perdita.Consumo di potenza nei circuiti CMOS →.


1. Dimensionamento e correnti a Vi=VDD/2V_i=V_{DD}/2

Bilanciamento dinamico: tpHL=tpLHt_{pHL}=t_{pLH}, cioè Rp=RnR_p=R_n: Rp0Zp=Rn0Zn\dfrac{R_{p0}}{Z_p}=\dfrac{R_{n0}}{Z_n}, quindi Zp=ZnRp0Rn0=2⋅28,212=4,7.Z_p=Z_n\frac{R_{p0}}{R_{n0}}=2\cdot\frac{28{,}2}{12}=4{,}7. (Il rapporto è r=2,35r=2{,}35, diverso da quello di bilanciamento statico kn′/∣kp′∣=3,33k'_n/\lvert k'_p\rvert=3{,}33.) Larghezze: Wn=2⋅0,35=0,7 μmW_n=2\cdot0{,}35=0{,}7\ \mu\mathrm m, Wp=4,7⋅0,35=1,645 μmW_p=4{,}7\cdot0{,}35=1{,}645\ \mu\mathrm m.

Con Vi=1,5 VV_i=1{,}5\ \mathrm V le tensioni di gate-soglia sono VGTn=1,5−0,66=0,84 VV_{GTn}=1{,}5-0{,}66=0{,}84\ \mathrm V e VGTp=1,5−0,7=0,8 VV_{GTp}=1{,}5-0{,}7=0{,}8\ \mathrm V. Il rapporto di forza è kn′Zn=200k'_nZ_n=200 contro ∣kp′∣Zp=141 μA/V2\lvert k'_p\rvert Z_p=141\ \mu\mathrm A/\mathrm V^2: l'n-MOS è più forte: la soglia logica, calcolata con VM=VTn+r(VDD+VTp)1+rV_M=\dfrac{V_{Tn}+r(V_{DD}+V_{Tp})}{1+r}, r=141/200=0,84r=\sqrt{141/200}=0{,}84, vale VM≈1,41 VV_M\approx1{,}41\ \mathrm V (1,43 V1{,}43\ \mathrm V con λ\lambda), minore di VDD/2=1,5 VV_{DD}/2=1{,}5\ \mathrm V. Quindi a Vi=1,5 VV_i=1{,}5\ \mathrm V l'ingresso è già sopra la soglia logica e l'uscita è bassa: n-MOS in zona lineare (VDS<VGTnV_{DS}<V_{GTn}) e p-MOS in saturazione (VSD≫VGTpV_{SD}\gg V_{GTp}). Le due correnti sono uguali (stesso ramo): IDn=kn′Zn[VGTnVout−Vout22]=200 (0,84 Vout−0,5 Vout2) μA,I_{Dn}=k'_nZ_n\Big[V_{GTn}V_{out}-\frac{V_{out}^2}2\Big]=200\,(0{,}84\,V_{out}-0{,}5\,V_{out}^2)\ \mu\mathrm A, ∣IDp∣=∣kp′∣2Zp VGTp2 (1+∣λp∣(VDD−Vout))=45,12 (1,3−0,1 Vout) μA.\lvert I_{Dp}\rvert=\frac{\lvert k'_p\rvert}2Z_p\,V_{GTp}^2\,\big(1+\lvert\lambda_p\rvert(V_{DD}-V_{out})\big)=45{,}12\,(1{,}3-0{,}1\,V_{out})\ \mu\mathrm A. Uguagliando: 168 Vout−100 Vout2=58,66−4,51 Vout168\,V_{out}-100\,V_{out}^2=58{,}66-4{,}51\,V_{out}, cioè 100 Vout2−172,5 Vout+58,66=0100\,V_{out}^2-172{,}5\,V_{out}+58{,}66=0, con la radice accettabile Vout=172,5−172,52−4⋅100⋅58,66200=0,466 V.V_{out}=\frac{172{,}5-\sqrt{172{,}5^2-4\cdot100\cdot58{,}66}}{200}=0{,}466\ \mathrm V. Controllo delle regioni: n-MOS: VDS=0,466<0,84V_{DS}=0{,}466<0{,}84 ✓ lineare; p-MOS: VSD=2,53 V>0,8V_{SD}=2{,}53\ \mathrm V>0{,}8 ✓ saturazione. Corrente: IDn=∣IDp∣=45,12 (1,3−0,0466)=56,6 μA\boxed{I_{Dn}=\lvert I_{Dp}\rvert=45{,}12\,(1{,}3-0{,}0466)=56{,}6\ \mu\mathrm A} (con λ=0\lambda=0 sarebbe 45,1 μA45{,}1\ \mu\mathrm A e Vout=0,336 VV_{out}=0{,}336\ \mathrm V).

2. Carico massimo

Capacità intrinseca: Cdn=1,4⋅0,7=0,98 fFC_{dn}=1{,}4\cdot0{,}7=0{,}98\ \mathrm{fF}, Cdp=1,4⋅1,645=2,30 fFC_{dp}=1{,}4\cdot1{,}645=2{,}30\ \mathrm{fF}, Cint=3,28 fFC_{int}=3{,}28\ \mathrm{fF}. Sul nodo di uscita la capacità totale è Ctot=CL+CintC_{tot}=C_L+C_{int}.

Potenza: P=CtotVDD2f<1 μWP=C_{tot}V_{DD}^2f<1\ \mu\mathrm W: Ctot<10−69⋅2⋅106=55,6 fF ⇒ CL<55,6−3,3=52,3 fF.C_{tot}<\frac{10^{-6}}{9\cdot2\cdot10^6}=55{,}6\ \mathrm{fF}\ \Rightarrow\ C_L<55{,}6-3{,}3=52{,}3\ \mathrm{fF}. Tempo di propagazione: con il bilanciamento Rn=Rp=Rn0/Zn=6 kΩR_n=R_p=R_{n0}/Z_n=6\ \mathrm{k\Omega}, tp=0,69 R Ctot<0,5 nst_p=0{,}69\,R\,C_{tot}<0{,}5\ \mathrm{ns}: Ctot<0,5 ns0,69⋅6 kΩ=120,8 fF ⇒ CL<117,5 fF.C_{tot}<\frac{0{,}5\ \mathrm{ns}}{0{,}69\cdot6\ \mathrm{k\Omega}}=120{,}8\ \mathrm{fF}\ \Rightarrow\ C_L<117{,}5\ \mathrm{fF}. Devono valere entrambe: il vincolo più stretto è quello di potenza. CL,max=52,3 fF\boxed{C_{L,max}=52{,}3\ \mathrm{fF}} (trascurando CintC_{int}: 55,6 fF55{,}6\ \mathrm{fF}). Con questo carico il tempo di propagazione è tp=0,69⋅6 kΩ⋅55,6 fF=0,23 nst_p=0{,}69\cdot6\ \mathrm{k\Omega}\cdot55{,}6\ \mathrm{fF}=0{,}23\ \mathrm{ns}, ben sotto 0,5 ns0{,}5\ \mathrm{ns}.

Verifica numerica

Python: soluzione numerica di IDn=∣IDp∣I_{Dn}=\lvert I_{Dp}\rvert con le formule del corso (Vout=0,4658 VV_{out}=0{,}4658\ \mathrm V, I=56,55 μAI=56{,}55\ \mu\mathrm A, VM=1,41V_M=1{,}41 e 1,43 V1{,}43\ \mathrm V), CtotC_{tot} massima per potenza (55,56 fF55{,}56\ \mathrm{fF}) e per ritardo (120,77 fF120{,}77\ \mathrm{fF}).

Errori comuni

  • Imporre Zp=Zn kn′/∣kp′∣Z_p=Z_n\,k'_n/\lvert k'_p\rvert (bilanciamento statico) invece di Rp0/Rn0R_{p0}/R_{n0} (dinamico).
  • Calcolare la corrente con entrambi i transistor in saturazione a Vi=VDD/2V_i=V_{DD}/2: la condizione vale solo in Vi=VMV_i=V_M.
  • Usare λ\lambda nella zona lineare.
  • Dimenticare che la potenza dinamica dipende da CtotC_{tot} (compresa quella intrinseca) e non dalle dimensioni dei transistor.
  • Considerare solo uno dei due vincoli (PP e tpt_p): il carico massimo è il minimo tra i due.

Versione ripasso

Testo. Inverter Zn=2Z_n=2, L=0,35 μL=0{,}35\ \mum, f=2f=2 MHz; kn′=100k'_n=100, kp′=−30 μk'_p=-30\ \muA/V2^2, VTn=0,66V_{Tn}=0{,}66, VTp=−0,7V_{Tp}=-0{,}7, VDD=3V_{DD}=3 V, λn=0,04\lambda_n=0{,}04, λp=−0,1\lambda_p=-0{,}1, Rn0=12R_{n0}=12 k, Rp0=28,2R_{p0}=28{,}2 k, Cd0=1,4C_{d0}=1{,}4 fF/μ\mum. Vi=VDD/2V_i=V_{DD}/2; CLC_L max per P<1 μP<1\ \muW e tp<0,5t_p<0{,}5 ns.

  • Bilanciamento dinamico: Rp=Rn⇒Zp=2⋅28,2/12=4,7R_p=R_n\Rightarrow Z_p=2\cdot28{,}2/12=4{,}7.
  • Correnti a 1,51{,}5 V: VGTn=0,84V_{GTn}=0{,}84, VGTp=0,8V_{GTp}=0{,}8; n-MOS lineare, p-MOS saturazione: 200(0,84Vo−0,5Vo2)=45,12(1,3−0,1Vo)200(0{,}84V_o-0{,}5V_o^2)=45{,}12(1{,}3-0{,}1V_o) ⇒Vo=0,466\Rightarrow V_o=0{,}466 V; I=56,6 μI=56{,}6\ \muA (con λ=0\lambda=0: 45,1 μ45{,}1\ \muA).
  • Carico: Cint=0,98+2,30=3,28C_{int}=0{,}98+2{,}30=3{,}28 fF; P=CtotVDD2f<1 μP=C_{tot}V_{DD}^2f<1\ \muW ⇒Ctot<55,6\Rightarrow C_{tot}<55{,}6 fF; tp=0,69⋅6k⋅Ctot<0,5t_p=0{,}69\cdot6\text{k}\cdot C_{tot}<0{,}5 ns ⇒Ctot<120,8\Rightarrow C_{tot}<120{,}8 fF; CL,max=55,6−3,3=52,3C_{L,max}=55{,}6-3{,}3=52{,}3 fF (potenza).
  • Errori: bilanciamento statico; entrambi saturi; λ\lambda in lineare; CintC_{int} dimenticata; un solo vincolo.

Esercizi su questo argomento

Teoria collegata