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
MEMORIA SEQUENZIALE
MEMORIA AD ACCESSO CASUALE
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.
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 (2 n righe x 2 n 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
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 2 8 =256 256 amplificatori di lettura/scrittura 2 8 x 2 8 celle di memoria 2 8 x 2 8 = 65536 64 kbit (n.b. k =2 10 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.
CELLA DI MEMORIA BASE - CMOS SRAM T 1 e T 2 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.
ORGANIZZAZIONE DELLE RAM
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.
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.
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 C M che sporta ad una certa tensione (0 0 V DD) in funzione del livello logico presente sulla bit line.
MEMORIE RAM DINAMICHE LETTURA: operazione piu delicata! si abilita la WORD LINE e si pone la capacita C M in contatto con la bit line, che assumiamo pre caricata alla tensione di riferimento V R, per leggere la tensione ai capi di C M MA LA BIT LINE E ANCH ESSA MODELLIZZABILE COME UN CARICO CAPACITIVO (C L capacita di linea) La tensione che deve essere letta e : tipici valori: C M = 25 ff, C L = 1 pf, V R = 5V; V D = 0V V R =125 mv particolare cura nella realizzazione dei «SENSE AMPLIFIER» che leggono il contenuto della cella (carica di C M ) per fornire in uscita un segnale «full swing» (0 V DD )
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)
OPERAZIONE DI REFRESH DI UNA DRAM La capacita C M perde della carica per effetto delle correnti inverse delle giunzioni drain/substrato delle porte di trasmissione che la connettono alla bit line La capacita C M 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.
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 C M 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:
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
ORGANIZZAZIONE DRAM DA 128 kbit
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