Refresc de memòria

De la Viquipèdia, l'enciclopèdia lliure
Una il·lustració d'alt nivell de l'organització de la DRAM, que inclou cel·les de memòria (quadrats blaus), descodificadors d'adreces (rectangles verds) i amplificadors de sentit (quadrats vermells)

El refresc de memòria és el procés, amb la finalitat de preservar la informació, de llegir periòdicament informació d'una àrea de memòria de l'ordinador i reescriure immediatament la informació llegida a la mateixa àrea sense modificacions. L'actualització de memòria és un procés de manteniment en segon pla necessari durant el funcionament de la memòria d'accés aleatori dinàmic de semiconductors (DRAM), el tipus de memòria d'ordinador més utilitzat i, de fet, és la característica definidora d'aquesta classe de memòria.[1]

Cel·la de memòria DRAM del xip Intel i1103 1103. Va ser el primer DRAM comercial.

En un xip DRAM, cada bit de dades de memòria s'emmagatzema com a presència o absència d'una càrrega elèctrica en un petit condensador del xip.[2][3] A mesura que passa el temps, les càrregues de les cèl·lules de memòria s'esvaeixen, de manera que sense actualitzar-se, les dades emmagatzemades es perdrien. Per evitar-ho, els circuits externs llegeixen periòdicament cada cel·la i la reescriu, restaurant la càrrega del condensador al seu nivell original. Cada cicle d'actualització de la memòria actualitza una àrea següent de cel·les de memòria, de manera que s'actualitzen repetidament totes les cel·les en un cicle consecutiu. Aquest procés normalment es realitza automàticament en segon pla pels circuits de memòria i és transparent per a l'usuari.[2] Mentre es produeix un cicle d'actualització, la memòria no està disponible per a les operacions normals de lectura i escriptura, però a la memòria moderna aquesta sobrecàrrega no és prou gran com per alentir significativament el funcionament de la memòria.

Hi ha disponible memòria electrònica que no requereix actualització, anomenada memòria estàtica d'accés aleatori (SRAM).[4] Els circuits SRAM requereixen més àrea en un xip, perquè una cèl·lula de memòria SRAM requereix de quatre a sis transistors, en comparació amb un únic transistor i un condensador per a DRAM. Com a resultat, la densitat de dades és molt inferior als xips SRAM que a la DRAM i la SRAM té un preu per bit més alt. Per tant, la DRAM s'utilitza per a la memòria principal d'ordinadors, consoles de videojocs, targetes gràfiques i aplicacions que requereixen grans capacitats i baix cost. La necessitat d'actualitzar la memòria fa que el temps i els circuits DRAM siguin significativament més complicats que els circuits SRAM, però la densitat i els avantatges de cost de la DRAM justifiquen aquesta complexitat.

Com funciona el refresc de DRAM[modifica]

Mentre la memòria està en funcionament, cada cel·la de memòria s'ha d'actualitzar repetidament, dins de l'interval màxim entre actualitzacions especificat pel fabricant, que normalment es troba a la regió de mil·lisegons. L'actualització no utilitza les operacions de memòria normals (cicles de lectura i escriptura) que s'utilitzen per accedir a les dades, sinó cicles especialitzats anomenats cicles d'actualització que són generats per circuits comptadors separats en els circuits de memòria i intercalats entre accessos de memòria normals.[5][6]

Les cel·les d'emmagatzematge d'un xip de memòria es disposen en una matriu rectangular de files i columnes. El procés de lectura a la DRAM és destructiu i elimina la càrrega de les cèl·lules de memòria en una fila sencera, de manera que hi ha una fila de tancaments especialitzats al xip anomenats amplificadors de sentit, un per a cada columna de cèl·lules de memòria, per contenir temporalment les dades. Durant una operació de lectura normal, els amplificadors de detecció després de llegir i bloquejar les dades, reescriuen les dades a la fila a la qual s'accedeix [7] abans d'enviar el bit des d'una sola columna a la sortida. Això significa que l'electrònica de lectura normal del xip pot actualitzar una fila sencera de memòria en paral·lel, accelerant significativament el procés d'actualització. Un cicle normal de lectura o escriptura actualitza una fila de memòria, però no es pot confiar en els accessos normals a la memòria per colpejar totes les files dins el temps necessari, per la qual cosa es necessita un procés d'actualització independent. En lloc d'utilitzar el cicle de lectura normal en el procés d'actualització, per estalviar temps s'utilitza un cicle abreujat anomenat cicle d'actualització. El cicle d'actualització és similar al cicle de lectura, però s'executa més ràpidament per dos motius:

  • Per a una actualització, només cal l'adreça de fila, de manera que no cal aplicar una adreça de columna als circuits d'adreces del xip.
  • Les dades llegides de les cel·les no s'han d'introduir als buffers de sortida o al bus de dades per enviar-les a la CPU.

El circuit d'actualització ha de realitzar un cicle d'actualització a cadascuna de les files del xip dins de l'interval de temps d'actualització, per assegurar-se que cada cel·la s'actualitza.

Interval de refresc[modifica]

L'interval de temps màxim entre les operacions d'actualització està estandarditzat per JEDEC per a cada tecnologia DRAM i s'especifica a les especificacions del xip del fabricant. Normalment es troba en el rang de mil·lisegons per a DRAM i microsegons per a eDRAM. Per als xips DDR2 SDRAM és de 64 ms.[8] :20 Depèn de la relació entre la càrrega emmagatzemada als condensadors de la cèl·lula de memòria i els corrents de fuga. Malgrat que la geometria dels condensadors s'ha anat reduint amb cada nova generació de xips de memòria, de manera que els condensadors de generacions posteriors emmagatzemen menys càrrega, els temps d'actualització de la DRAM han anat millorant; de 8 ms per a xips d'1M, 32 ms per a xips de 16M, fins a 64 ms per a xips de 256M. Aquesta millora s'aconsegueix principalment mitjançant el desenvolupament de transistors que causen molt menys fuites. Un temps d'actualització més llarg significa que una fracció més petita del temps del dispositiu s'ocupa amb l'actualització, deixant més temps per als accessos a la memòria. Tot i que la sobrecàrrega d'actualització ocupava fins a un 10% del temps del xip a les DRAM anteriors, als xips moderns aquesta fracció és inferior a l'1%.

Aquesta actualització freqüent de DRAM consumeix un terç de la potència total consumida pels dispositius electrònics de baix consum en mode d'espera. Els investigadors han proposat diversos enfocaments per ampliar el temps d'execució de la bateria entre càrregues reduint la freqüència de refresc, inclosa l'actualització compensada per temperatura (TCR) i la col·locació conscient de la retenció a la DRAM (RAPID). Els experiments mostren que en un xip DRAM normal, només unes poques cèl·lules febles requereixen realment l'interval d'actualització de 64 ms en el pitjor dels casos, i fins i tot només a l'extrem alt del seu rang de temperatura especificat. A temperatura ambient (p. ex. 24 °C (75 °F) ), aquestes mateixes cel·les febles s'han d'actualitzar una vegada cada 500 ms per al funcionament correcte. Si el sistema pot evitar utilitzar l'1% més feble de les pàgines, només caldrà actualitzar una DRAM típica una vegada per segon, fins i tot a 70 °C (158 °F), per al correcte funcionament del 99% restant de les pàgines. Alguns experiments combinen aquestes dues tècniques complementàries, donant un funcionament correcte a temperatura ambient a intervals de refresc de 10 segons.

Referències[modifica]

  1. Ganssle, Jack Ganssle. Embedded Hardware (en anglès). Newnes, 2007, p. 106. ISBN 978-0750685849. 
  2. 2,0 2,1 Ganssle, Jack Ganssle. Embedded Hardware (en anglès). Newnes, 2007, p. 106. ISBN 978-0750685849. 
  3. Jacob, Bruce. Memory Systems: Cache, DRAM, Disk (en anglès). Morgan Kaufmann, 2007, p. 431–432. ISBN 978-0123797513. 
  4. Ganssle, Jack Ganssle. Embedded Hardware (en anglès). Newnes, 2007, p. 106. ISBN 978-0750685849. 
  5. Reinhardt, Steven K. «Memory, p. 9–3» (en anglès). EECS 373 Design of Microprocessor-based Systems, Lecture Notes, Fall 1999. Electrical Engineering Dept., Univ. of Michigan. Arxivat de l'original el January 2, 2014. [Consulta: August 26, 2012].
  6. Heath, Steve. Embedded Systems Design, 2nd Ed. (en anglès). Newnes, 2003, p. 88–89. ISBN 0750655461. 
  7. Ganssle, Jack Ganssle. Embedded Hardware (en anglès). Newnes, 2007, p. 106. ISBN 978-0750685849. 
  8. «JEDEC DDR2 SDRAM Specification» (en anglès). ECS.Baylor.edu. JEDEC Solid State Technology Assoc., January 2005. [Consulta: August 27, 2012].