ESERCIZIO 17 Si simuli una cella SRAM a 6 transistori nella fase di scrittura, assumendo che la capacità di bitline CBL sia di 1 pF e la tensione di alimentazione sia di 3.3 V. In particolare, dopo aver generato gli opportuni segnali di precarica e di attivazione della wordline, si valuti il ritardo di propagazione assumendo che i transistori della cella siano di dimensioni minime ed i PMOS che effettuano la precarica delle bitline abbiano dimensioni 20/0.8. Il circuito da simulare è il seguente V10 3.3Vdc 0 WL WL M4 M2 M8 precharge Mbreakp Mbreakp M3 V C1 Mbreakp M1 C3 M5 V M6 0.0001p Mbreakn Mbreakn 0 C2 0 1p 1p 0 0 0 0 0 0 V6 precharge WL V5 0 dove le bitline sono schematizzate mediante due capacità equivalenti CBL che modellizzano la capacità parassita di ciascuna bitline e delle celle ad essa collegate. In fase di scrittura, le bitline sono precaricate a valori differenti, quella a sinistra al valore di 0 V (impostando IC a 0 V nella capacità C1), e quella a destra al valore di 3.3 V mediante il transistore PMOS M8 pilotatato dal segnale precharge. Tale segnale deve essere mantenuto al valore basso durante la precarica, e successivamente deve passare al valore alto per consentire la lettura. Tanto per fissare le idee, imponiamo che il tempo disponibile alla precarica sia di 50 ns (in pratica i tempi consentiti sono considerevolmente più bassi). La forma d’onda del segnale precharge è illustrata mediante la curva in blu nella figura seguente: Per effettuare la scrittura, è necessario attivare i transistori M5-M6 imponendo che la tensione della wordline WL effettui la transizione basso-alto dopo la fase di precarica. Supponiamo che tale transizione avvenga all’istante t=100 ns, come illustrato mediante la curva in verde nella figura precedente. Prima della attivazione della wordline, la cella SRAM è isolata rispetto alle bitline, e la coppia di inverter mantiene la tensione memorizzata in precedenza. Se il valore memorizzato precedentemente è uguale al valore che deve essere scritto nella cella, la scrittura è caratterizzata da un ritardo nullo. Il caso più significativo è quello in cui il valore da scrivere è opposto a quello memorizzato precedentemente. Per questo motivo, si impone che la tensione di gate di M3-M4 sia bassa (inserendo la capacità fittizia C3, come spiegato nell’esercizio n.16) inizialmente. A causa della transizione dei segnali di precarica e di WL, e del fatto che le capacità CBL sono piuttosto elevate, le tensioni di bitline permangono ai valori di 0 V e 3.3 V, rispettivamente. Successivamente, a causa dell’attivazione della wordline, le tensioni della cella SRAM vengono aggiornate. Più esplicitamente, la capacità C1 (carica a 0 V) impone che la tensione di gate di M3-M4 si porti allo stesso valore di 0 V, mentre la capacità C2 (carica a 3.3 V) impone che la tensione di gate di M1-M2 si porti al valore di 3.3 V. In altri termini, come desiderato, viene scritto nella cella SRAM un valore differente da quello memorizzato in precedenza. Il transitorio delle tensioni della cella SRAM (ovvero le tensioni di gate di M3M4 e di M1-M2) è descritto nella seguente figura Dall’analisi di questa figura, si deduce che il ritardo di propagazione in scrittura, ovvero il tempo necessario affinchè la tensione di gate di M1-M2 e di M3-M4 abbianona tensione pari a VDD/2, è pari a 218 ps. Ciò conferma che la fase di scrittura nella cella SRAM richiede un intervallo di tempo molto breve, e in pratica la velocità dell’intera operazione è limitata dalla precarica della bitline, oltre che dalle consuete operazioni di decodifica.