SRAM e DRAM
In questa pagina 4
| SRAM (statica) | DRAM (dinamica) | |
|---|---|---|
| dato | mantenuto finché la cella è alimentata (retroazione positiva) | carica su una capacità: refresh periodico |
| cella | grande ( transistor) | piccola (– transistor) |
| velocità | veloce | lenta |
| uscita | differenziale | singola (serve un sense amplifier) |
| uso | cache, registri | memoria principale |
Cella SRAM CMOS a 6 transistor
La cella è un latch statico: due inverter CMOS in anello ( e , nodi e ) più due n-MOS di accesso (, ) con i gate alla word line (WL), che collegano e alle bit line e (segnali complementari). Con WL bassa i transistor di accesso sono spenti e il latch mantiene il bit (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 →).
Lettura. Si precaricano e (di capacità elevata) a (o a un valore intermedio), poi si porta WL a . Se e : il transistor di accesso collegato a e l'n-MOS driver dell'inverter (, con gate a ) formano un cammino da a massa; scende lentamente, mentre resta a (il nodo è alto). Il sense amplifier differenziale amplifica la piccola differenza (–) fino a . Stabilità in lettura: durante la lettura il nodo (a ) sale per il partitore tra transistor di accesso e driver: perché il bit non si ribalti deve restare sotto la soglia logica dell'inverter opposto. Per questo il driver deve essere più forte dell'accesso (cell ratio ). Esempio (dati del corso, ): accesso e driver : ; con driver : ; con : (tutti sotto ma con margini diversi).
Scrittura. Si impongono sulle bit line i valori da scrivere (per scrivere si porta a e a ) e si attiva WL. Se valeva : il transistor di accesso (che ha ) tira verso massa in contrasto con il p-MOS di pull-up dell'inverter (, acceso perché ). Il nodo scende di quanto serve a superare la soglia logica dei due inverter in retroazione positiva: appena la retroazione fa il resto e il latch si ribalta ( sale, il p-MOS si spegne). La condizione "Se il nodo scende sotto la soglia logica dei due invertitori in retroazione positiva" è dunque necessaria e sufficiente (non serve portare a né a ). Rapporto di scrittura: l'accesso deve essere più forte del p-MOS di pull-up ( abbastanza grande). Esempio: accesso , pull-up : (: scrittura riuscita); accesso , pull-up : (ancora ).
La SRAM ha quindi un dimensionamento con vincoli opposti: driver > accesso (lettura) e accesso > pull-up (scrittura): pull-up < accesso < driver.
Cella DRAM a 3 transistor
Un transistor di scrittura (, write WL, WWL) carica il nodo (capacità di gate di più una capacità di storage ) dalla bit line di scrittura; è il gate del transistor , in serie a (read WL, RWL) verso la bit line di lettura: conduce solo se memorizza . La lettura è non distruttiva (il nodo non viene toccato). Quando si scrive un si perde una soglia: . Ci sono due bit line e due WL: celle grandi.
Cella DRAM a 1 transistor
Un solo n-MOS di accesso e una capacità di storage (di norma , realizzata con la capacità poli-diffusione, a trincea o stack, costosa in area). Collegamenti: gate alla WL, drain alla BL, source a .
- Scrittura: si abilita WL e si pone BL al valore da memorizzare ( o ): si carica o scarica. Scrivendo un si perde una soglia (con effetto body): ; l'elevazione ("bootstrap") della WL a una tensione maggiore di () permette di caricare fino a .
- Lettura: si precarica la BL (capacità ) a una tensione intermedia () e si abilita WL: la carica si ridistribuisce tra e (charge sharing) e il potenziale finale è : è piccolo (tipicamente ). Esempio: , , : per (con perdita di soglia) ; per : ; con WL elevata, dà (simmetrico). Se il sense amplifier richiede si ricava la capacità di storage minima: (Esercizio 3 · memoria DRAM a un transistor 1024 per 256, capacità, ritardo di linea e lettura (tema d'esame giugno 2025)): in una cella a 1T la dimensione minima della capacità di storage è determinata dalla sensibilità del sense amplifier.
Osservazioni:
- servono un sense amplifier per ciascuna bit line, per la ridistribuzione di carica;
- le celle DRAM sono a uscita singola (le SRAM differenziale);
- la lettura è distruttiva: la carica di viene alterata, quindi dopo la lettura il sense amplifier riscrive il valore ("restore") e comunque è necessario un refresh periodico di tutte le righe (circa ogni ) per compensare le perdite;
- a differenza della cella a 3T, la cella a 1T richiede una capacità addizionale (area) ma è molto piccola.
Errori comuni
- Dire che nella SRAM il bit si scrive portando esattamente a : basta scendere sotto la soglia logica degli inverter.
- Dimenticare i vincoli di rapporto (driver, accesso, pull-up) o invertirli.
- Dimenticare la perdita di una soglia scrivendo un in DRAM con WL a .
- Dire che la lettura DRAM 1T è non distruttiva (lo è quella della cella 3T).
- Usare senza il fattore .
Versione ripasso
- Confronto: SRAM 6T, veloce, differenziale, dato finché alimentata; DRAM 1–3T, piccola, lenta, singola, refresh.
- SRAM 6T: latch di due inverter + 2 n-MOS di accesso (WL), , . Lettura: precarica, WL alta, il lato a abbassa la BL, sense amplifier (– mV); driver più forte dell'accesso (, : , , V). Scrittura: BL a porta sotto (non V, non ), poi il latch si ribalta; accesso più forte del pull-up ( contro : V).
- DRAM 3T: nodo (gate di ), lettura non distruttiva, .
- DRAM 1T: n-MOS + ; scrittura con perdita di soglia (bootstrap WL ); lettura per charge sharing: ( fF: , mV; bootstrap mV); fissata dalla sensibilità del sense amplifier; lettura distruttiva (restore) + refresh ( ms); un sense amplifier per BL.
- Errori: a V; rapporti; soglia persa; lettura 1T non distruttiva; senza fattore capacità.