MEMORIE Le memorie sono circuiti in grado di contenere un elevato numero di informazioni binarie in maniera organizzata e fornirle in uscita mediante una operazione detta LETTURA della memoria. A seconda della modalita’ con cui vengono imagazzinati e letti i dati nella memoria : MEMORIE SEQUENZIALI: dati immagazzinati in modo sequenziale su un supporto e letti in modo sequenziale. per leggere l’ultimo bit e’ necessario che scorrano in uscita tutti i bits incamerati precedenti a quello in esame. Il tempo necessario per accedere ad un dato dipende dalla sua locazione in memoria MEMORIE AD ACCESSO CASUALE (Random Access Memory): organizzazione di tipo matriciale delle singole celle di memoria. tempo di accesso alla locazione di memoria uguale per tutte le locazioni ed idealmente indipendente dal numero di bit immagazzinabili. Una ulteriore classificazione distingue tra: MEMORIE A SOLA LETTURA (Read Only Memory): l’informazione e’ immagazzinata nella cella di memoria nella fase di realizzazione del circuito, possono essere solo lette MEMORIE A LETTURA/SCRITTURA (Read/Write Memory): le informazioni possono essere ripetutamente scritte nelle singole celle e lette con operazioni di lettura/scrittura C. Guazzoni, Fondamenti di Elettronica MEMORIA SEQUENZIALE C. Guazzoni, Fondamenti di Elettronica MEMORIA AD ACCESSO CASUALE C. Guazzoni, Fondamenti di Elettronica MEMORIE Classificazione data dalla capacita’ di conservare l’informazione memorizzata anche quando e’ tolta l’alimentazione dal sistema: MEMORIE NON VOLATILI: conservano l’informazione anche in assenza di alimentazione elettrica del circuito (le ROM). MEMORIE VOLATILI: l’informazione e’ persa in assenza di alimentazione (le RAM!) Le RAM possono essere ulteriormente suddivise in: RAM STATICHE (SRAM): ogni bit e’ memorizzato in un flip‐flop fino a che non e’ tolta l’alimentazione o memorizzato un nuovo dato, il dato precedente e’ mantenuto. necessario ampio spazio su silicio per la memorizzazione di un singolo bit. RAM DINAMICHE (DRAM): ogni bit e’ memorizzato come carica immagazzinata in un condensatore alta densita’ di impacchettamento condensatore tende a scaricarsi REFRESH periodico dei dati per leggere la tensione ai capi del condensatore e ricaricare la carica accumulato in esso. C. Guazzoni, Fondamenti di Elettronica MEMORIA READ/WRITE - RAM Indirizzamento bidimensionale delle celle: mediante opportune parole di indirizzo di n‐bit vengono selezionate sia le righe che le colonne della matrice solitamente quadrata (2n righe x 2n colonne) mediante opportuni decodificatori di riga e di colonna. Le operazioni di lettura/scrittura avvengono tramite le COLONNE della matrice dette BIT‐LINES. SOTTOINSIEMI FONDAMENTALI DI UNA RAM: decodificatori di riga (WORD‐LINES) decodificatori di colonna (BIT‐LINES) celle elementari di memoria circuiti di lettura e scrittura C. Guazzoni, Fondamenti di Elettronica CELLA DI MEMORIA BASE - CMOS SRAM L’elemento base di una SRAM e’ un flip‐flop che consente di memorizzare un livello logico 1 o 0 in modo PERMANENTE fino a che il dispositivo e’ alimentato. Ad esempio: SRAM indirizzabile con parole a 16 bit • 8 bit x righe • 8 bit x colonne • DECODER 8 28=256 • 256 amplificatori di lettura/scrittura • 28 x 28 celle di memoria 28 x 28 = 65536 64 kbit (n.b. ‘k’=210 bit = 1024 bit) La riga abilita tutte le celle connesse a quella riga. La colonna selezionata definisce la cella su cui eseguire le operazioni di lettura/scrittura. Ogni colonna fornisce sia il dato D che il suo negato per facilitare le operazioni di lettura/scrittura. Gli amplificatori di lettura/scrittura sono abilitati dal decodificatore di colonna che opera come un MUX perche’ permette anche l’instradamento dei dati alla linea abilitata. C. Guazzoni, Fondamenti di Elettronica CELLA DI MEMORIA BASE - CMOS SRAM T1 e T2 connettono la cella alla bit‐line e sono comandati dalla word‐line W Per ogni bit immagazzinato in una SRAM e’ necessario un flip‐flop cella a 6 transistori elevata occupazione su silicio. C. Guazzoni, Fondamenti di Elettronica ORGANIZZAZIONE DELLE RAM C. Guazzoni, Fondamenti di Elettronica CICLO DI LETTURA DI UNA SRAM Occorre leggere lo stato di uscita (alto o basso) per le due uscite del flip‐flop lasciando inalteratal’informazione contenuta nella cella Lettura in «free running» Viene applicato un valore al bus di indirizzo ed e’ mantenuto stabile per un certo tempo, in cui il dato in uscita e’ in uno stato sconosciuto. Trascorso tale tempo il dato in uscita e’ ritenuto valido. Quando l’indirizzo e’ cambiato, il dato «vecchio» resta disponibile in uscita per un certo tempo. Dati in uscita sempre presenti, anche se in certi istanti non sono quelli corretti. C. Guazzoni, Fondamenti di Elettronica CICLO DI LETTURA DI UNA SRAM Lettura con comando di output enable Il comando di OUTPUT ENABLE toglie l’uscita dalla condizione di HIGH‐Z (USCITA TRI‐ STATE) il bus dati della RAM esce dallo stato di HIGH‐Z solo nel ciclo di lettura e puo’ essere condiviso, quindi, con altre memorie o periferiche. Il ciclo di lettura e’ piu’ lungo del tempo di accesso alla cella per consentire alla circuiteria interna di prepararsi al ciclo successivo: Il ciclo di SCRITTURA e’ analogo, ma deve essere attivato il comando di WRITE che abilita la procedura di immagazzinamento del dato. C. Guazzoni, Fondamenti di Elettronica MEMORIE RAM DINAMICHE La cella base di una RAM dinamica e’ molto piu’ compatta e semplice di quella di una SRAM SCRITTURA: si seleziona la WORD LINE si applica il bit da memorizzare alla BIT‐LINE voluta La porta di trasmissione e’ aperta (cortocircuito) e il bit e’ immagazzinato nella capacita’ CM che sporta ad una certa tensione (0 0 VDD) in funzione del livello logico presente sulla bit‐line. C. Guazzoni, Fondamenti di Elettronica MEMORIE RAM DINAMICHE LETTURA: operazione piu’ delicata! si abilita la WORD LINE e si pone la capacita’ CM in contatto con la bit‐line, che assumiamo pre‐caricata alla tensione di riferimento VR, per leggere la tensione ai capi di CM MA LA BIT‐LINE E’ ANCH’ESSA MODELLIZZABILE COME UN CARICO CAPACITIVO La tensione che deve essere letta e’: (CL capacita’ di linea) tipici valori: CM = 25 fF, CL = 1 pF, VR = 5V; VD = 0V VR=125 mV particolare cura nella realizzazione dei «SENSE AMPLIFIER» che leggono il contenuto della cella (carica di CM) per fornire in uscita un segnale «full‐swing» (0 – VDD) C. Guazzoni, Fondamenti di Elettronica STRUTTURA GENERALE DI UNA DRAM a causa delle dimensioni elevate della matrice di memoria DRAM per ridurre il numero di piedini occorre multiplexare gli indirizzi di riga e di colonna sugli stessi piedini che provengono dall’esterno del circuito integrato SEGNALI per indicare se la parola di indirizzamento e’ per la selezione della riga o della colonna: RAS (ROW ADDRESS STROBE) CAS (COLUMN ADDRESS STROBE) C. Guazzoni, Fondamenti di Elettronica OPERAZIONE DI REFRESH DI UNA DRAM La capacita’ CM perde della carica per effetto delle correnti inverse delle giunzioni drain/substrato delle porte di trasmissione che la connettono alla bit‐line La capacita’ CM perde della carica all’atto della lettura dell’informazione memorizzata sulla capacita’. Occorre leggere ciclicamente l’informazione di tutte le celle connesse ad una word‐line e riscrivere l’informazione. Per questo scopo e’ abilitata la world‐line e tutti i sense‐amplifier delle bit‐line. Tale operazione prende il nome di REFRESH ed e’ effettuata ciclicamente con intervalli di refresh dell’ordine del ms. C. Guazzoni, Fondamenti di Elettronica CIRCUITI DI LETTURA DI UNA DRAM La lettura dell’informazione immagazzinata in una RAM dinamica e’ molto delicata: variazione di tensione da leggere molto ridotta (~100mV) accoppiamento del clock di pilotaggio della porta di trasmissione crea disturbi confrontabili informazione contenuta in CM parzialmente distrutta dalla lettura PRECARICA DELLA BIT‐LINE: per avere DVR uguali da leggere sia nel caso in cui nella cella sia immgazzinato ‘1’ sia ‘0’, cioe’: TENSIONE DI RIFERIMENTO: C. Guazzoni, Fondamenti di Elettronica OPERAZIONE DI LETTURA DI UNA DRAM Occorre un preciso timing dei diversi segnali di abilitazione nelle fasi di lettura e scrittura, che limita il tempo minimo per compiere l’intero ciclo di accesso casuale alla memoria DRAM che implementano cicli di accesso che realizzino piu’ letture o scritture consecutive del dispositivo , accedendo a piu’ celle di memoria di una PAGINA (= gruppo di celle di memoria con lo stesso indirizzo di colonna): FAST PAGE MODE RAM EXTENDED DATA OUT RAM C. Guazzoni, Fondamenti di Elettronica ORGANIZZAZIONE DRAM DA 128 kbit C. Guazzoni, Fondamenti di Elettronica ALTRE RAM SYNCHRONOUS DYNAMIC RAM (SDRAM): Si tratta di una memoria SINCRONA: tutti i dati e gli indirizzamenti vengono fatti fluire nella memoria in maniera sincrona con un segnale di clock che presiede all’operazione della memoria. E’ possibile una riduzione del tempo di accesso grazie a particolari tecniche di lettura/scrittura implementabili (ad esempio BURST: non richiede l’indirizzamento della singola bit‐line dall’esterno, poiche’ l’indirizzo della bit‐line e’ ottenuto mediante un incremento automatico interno al chip della memoria) RAM con architetture particolari: ad esempio VIDEO RAM (VRAM) Architettura della VRAM dedicata alla gestione di una matrice di memoria in grado di pilotare, mediante opportuni driver analogici, il monitor di un PC richiesta di scrittura informazioni in maniera casuale richiesta di lettura/scrittura veloce in maniera sequenziale C. Guazzoni, Fondamenti di Elettronica