Está en la página 1de 13

IM

147

La memoria RAM
Introduccin Los programas que se ejecutan en el ordenador, as como los datos de las variables que utilizan estos programas, deben estar almacenados en un lugar accesible para el microprocesador. Este lugar es lo que se denomina memoria, y fsicamente est formada por una serie de circuitos integrados comunicados con el microprocesador por un bus de direcciones y un bus de datos. Los chips, de memoria de un ordenador pueden ser de los tipos: ROM (Read Only Memory Memoria de slo lectura), que son aquellos, cuya caracterstica principal es almacenar la informacin deforma permanente, dicha informacin no se borra cuando se apaga el equipo. Por ejemplo la BIOS, que contiene el software de arranque y las rutina bsicas de entrada y salida . En la actualidad no se empleam memorias de tipo ROM, sino memorias EEPROM Electrically Programmable ROM), o la Flash ROM, pudiendose regrabar la informacin que contienen, y de esta forma, actualizar con facilidad los programas y rutinas de inicio. Por otro lado, estn los chips de memoria RAM (Random Access Memory Memoria de acceso aleatorio), que son aquellos en los que la informacin puede ser leda y modificada tantas veces como se quiera. Esta informacin se borra cuando se apaga el PC. Es en la RAM donde se cargan las aplicaciones del usuario en el momento de ser ejecutadas, as como los valores de las variables que utilizan estos programas.

IM

148

Clasificacin primaria de la memorias RAM. La memoria RAM a su vez puede ser de dos tipos: DRAM (Dinamic RAM) que constituye la memoria principal del ordenador. SRAM (Static RAM) que corresponde habitualmente a la memoria cach. La principal ventaja de la memoria DRAM es que es su alta densidad de almacenamiento, y mucho ms barata que la memoria SRAM. Por el contrario, la memoria SRAM es mucho ms rpida que la DRAM (del orden de 4 a 6 veces). Cuando se enciende el ordenador, los chips de memoria RAM no almacenan ninguna informacin. Antes de que el ordenador pueda hacer cualquier cosa til, tiene que llevar los programas del disco a la RAM. En el caso de la memoria DRAM, los bits se almacenan en forma de cargas elctricas en pequesimos condensadores. Un condensador cargado representa un 1 y un condensador no cargado representa un 0. A partir de esto tan simple, el ordenador puede construir representaciones de los millones de nmeros de todos los sistemas numricos, cualquier palabra en cualquier lenguaje, y cientos de miles de colores y formas. Estos condensadores se descargan de forma natural, por lo que hay que recargarlos peridicamente. Este proceso recibe el nombre de refresco de la memoria. Cuando se apaga el ordenador , los condensadores se descargan, perdiendo toda la informacin almacenada en la memoria RAM. La memoria DRAM necesita refrescarse peridicamente mientras que la SRAM que se emplea para la memoria cach, no tiene que refrescarse y es por tanto mucho ms rpida y tambin ms cara, al ser su constitucin mucho ms compleja. Para que el P pueda acceder a cada grupo de 8 bits, se les otorga una direccin con lo que podemos distinguir dos canales de comunicacin entre el P y la memoria: el bus de direcciones y el bus de datos. Para ver cmo funciona la memoria DRAM del ordenador, dividimos el proceso en dos partes: Lectura de informacin de la memoria DRAM: Cuando el microprocesador necesita leer informacin almacenada en la DRAM, coloca una tensin en cada lnea de las lneas de direccin (bus de direcciones) indicando con ello una posicin concreta donde quiere acceder. Donde quiera que haya un condensador que contenga carga en la posicin indicada por las lneas de direccin, se descargar a travs del circuito creado entre la memoria y el microprocesador, enviando las cargas elctricas de cada condensador a lo largo de las lneas de informacin (bus de datos) al microprocesador. El microprocesador reconoce de qu lnea de informacin proceden los pulsos o cargas elctricas, e interpreta cada pulso como un 1, y cualquier lnea que no ha enviado un pulso como un 0. La combinacin de 1 y 0 desde las ocho lneas de informacin forman un solo byte de informacin.

IM

149

Escritura de informacin en la memoria DRAM: El microprocesador coloca una tensin en cada una de las lneas de direccin indicando con ello una posicin de memoria donde quiere acceder. Esta direccin identifica el lugar donde grabar la informacin entre las muchas posiciones del chip de memoria. En cada posicin de memoria de un chip de DRAM donde puede ser almacenada la informacin, la tensin carga un condensador que bsicamente es un transistor MOS. Cuando el pulso elctrico alcanza la posicin determinada, se produce una corriente y carga un condensador. Este mismo proceso se repite continuamente para refrescar la memoria y por tanto la carga de todos los condensadores que forman la memoria.

Arquitectura jerrquica de memoria. Para poder fabricar equipos a bajo costo y con buenas prestaciones, se debe utilizar una memoria DRAM que es econmica y de reducido tamao, pero al mismo tiempo que sea rpida. La solucin al problema de la lentitud de la DRAM ha sido el uso de arquitectura jerrquica de memoria, que distribuye los programas y los datos a lo largo de todo el sistema, segn se muestra en la figura.

Los microprocesadores actuales integran pequeas memorias cachs a la velocidad del microprocesador L1 (tpica de 64 Kbytes). Entre el microprocesador propiamente dicho y la memoria principal tambin se intercala una memoria cach de segundo nivel L2 (tpica de 512 Kbytes) a la velocidad del bus con capacidad de almacenamiento mayor que L1, pero menor que la memoria principal. Algunos fabricantes como AMD, llegaron a implantar una memoria cach de nivel 3 implementada en la placa base, L3. En la unidad de entrada/salida tambin puede haber memoria como cach de disco duro, buffer de vdeo, etc., de tal forma que se consigue un sistema ms rpido a menor precio.

IM

150

Caractersticas bsicas de las memorias Una caracterstica muy importante de los chips de memoria RAM es su velocidad de acceso. Los chips de memoria RAM necesitan un tiempo mnimo para identificar exactamente la informacin que se pretende leer, denominado tiempo de acceso, y otro para transvasar esa informacin al lugar de destino, denominado tiempo de carga. Al tiempo total requerido para efectuar toda la operacin se denomina tiempo de ciclo de memoria, y es el resultado de sumar los dos tiempos anteriores.

Ciclo de memoria = tiempo de acceso + tiempo de carga El tiempo de ciclo de memoria es el tiempo transcurrido desde que el P indica la orden de lectura del valor de la posicin X hasta que dicha informacin llega al lugar de destino. Cuando el microprocesador quiere leer datos de memoria, coloca la direccin de la posicin de la memoria en el bus de direcciones, cambia varias seales de control y espera a que el controlador de memoria indique que ha colocado correctamente los datos en el bus de datos. Este procedimiento, denominado ciclo de bus de procesador o ciclo de memoria, se repite millones de veces por segundo (a la velocidad del bus) Nomenclatura de los chips de memoria RAM Los chips de memoria RAM tienen una serie de referencias escritas en la parte superior que identifican todos los datos del mismo para dicho fabricante. En las

IM

151

memorias antiguas, se identificaba el tipo, capacidad y tiempo de acceso del chip, de tal forma que haba dos modelos, el 41 xxx-yy o 44xxx-yy: La cifra 41 la tenan los chips que organizaban su informacin en bits y la cifra 44 la tenan aquellos que organizaban su informacin en nibbles. La xxx representaba la capacidad del chip en bits o en nibbles, y la yy representaba el tiempo de acceso en decenas de nanosegundos, por ejemplo 41256-10 = 256 Kbits con 100 ns de tiempo de acceso. Este valor puede oscilar entre 50 y 120 ns. El tiempo de acceso tambin poda venir especificado directamente en nanosegundos, por ejemplo 441000-80 = 1.024 nibbles con 80 ns de tiempo de acceso. Los mdulos que trabajan con frecuencias de bus de 100 MHz incluyen PC100.

Aunque sta es la nomenclatura oficial, existen muchas excepciones, siguiendo cada fabricante sus propios criterios. Fabricante Hitachi Hyundai Samsung Oki Motorola Micron Toshiba Texas lnst. NEC Goldstar Siemens Mitsubishi Fujitsu Siglas HM HY SEC, KM M, NPNX MCM MT TMM TMS, TI PD,NEC GM HYB M5M MB

IM

152

junto a cada una de estas siglas los fabricantes indican el tipo de memoria. Por ejemplo, un 4 es la DRAM, 42 la VRAM y45 la SDRAM. En el caso de los mdulos SIP, SIMM, DIMM, tendremos que ir sumando la capacidad de los chips de memoria que la componen y obtendremos el total.

Deteccin y correccin de errores en las memorias Uno de los objetivos a cumplir en todas las transacciones de datos en informtica es que la informacin sea fiable, por lo que es comn incluir opciones de seguridad que ayuden a la fiabilidad de las transmisiones. En los sistemas de memoria tambin es posible implementar mtodos de seguridad. El camino que separa la memoria del P en una placa base es bastante corto y puede parecer extrao que se produzcan errores de transmisin de datos, pero hay que tener en cuenta que puede haber electos parsitos que intervienen en el proceso. El factor ms influyente es la frecuencia, que es lo suficientemente alta en equipos modernos como para que los componentes causen interferencias entre s, produciendo errores en las comunicaciones. Para aumentar la seguridad en la memoria se utilizan bsicamente dos mtodos: Aadir un bit de paridad para un cierto nmero de bits de datos: es el ms sencillo y consiste en aadir un bit de paridad por cada byte de datos. Esto permite detectar errores de bit sencillos y parar el sistema evitando daos mayores. ECC (Error Checking and Correcting -chequeo y correccin de error-): chequea y corrige un bit automticamente, sin detener el sistema; el sistema se detiene cuando se detectan ms de 2 bits errneos. Este sistema es mucho ms fiable que el anterior, pero tambin necesita ms chips de memoria. Al aadir un bit de paridad por cada byte, los mdulos SIMM de 30 contactos en lugar de ser de 8 bits sern de 9, los SIMM de 72 sern de 36 bits y los DIMM de 168 contactos sern de 72 bits; este aumento en el nmero de bits se aplica a los mdulos con ECC, teniendo en cuenta que se necesitarn ms bits para corregir un error en cada byte. (En estadsticas realizadas, en un sistema de memoria con 64 MB, se puede producir un error cada 5 aos con tcnicas de paridad, y un error cada 2.000 aos con ECC).

Disposicin de la memoria Para que los mdulos de la memoria puedan funcionar, deben comunicarse directamente con la CPU del ordenador. Anteriormente la memoria sola colocarse directamente en la placa madre, pero a medida que aumentaron los requisitos de memoria result poco factible soldar todos los chips de memoria en la placa base.

IM

153

Desde el punto de vista de la disposicin de la memoria existen cuatro tipos de microprocesadores: Los que tienen un bus de datos de 8 bits (8088) Bus de datos de 16 bits (8086, 286 y 386 SX) Bus de datos de 32 bits (clases 386DX y 486). Bus de datos de 64 bits (clase Pentium y superiores)

Microprocesadores con bus de datos de 8 bits En un PC con un bus de datos de 8 bits, del microprocesador salen 8 conexiones por donde tienen que circular los datos. Un chip 4164 tiene 64 K posiciones de 1 bit, teniendo una nica conexin con el exterior para leer y escribir datos, pudiendo leer los bits slo de uno en uno. Esto quiere decir que un ordenador de este tipo con 64 Kbytes de memoria RAM necesitara 8 chips del tipo 4164, conectando cada uno de ellos a una lnea del bus de datos. Sin embargo, para asegurar la integridad de los datos que se almacenan en la memoria RAM se ha colocado un noveno chip que se encarga de almacenar los bits de paridad. Mediante estos bits de paridad, se puede detectar si la informacin leda se corresponde o no con la informacin escrita. Adems de este noveno chip (denominado chip de paridad), se necesita otro chip, que es el que comprueba realmente la integridad de los datos. A este chip se le llama comparador. Cuando el chip comparador detecta un error, genera una interrupcin en el microprocesador del tipo no enmascarable, NMI (Non Maskable lnterrupt interrupcin no enmascarable), presentando a continuacin un mensaje de error en pantalla de tipo PARITY ERROR (ERROR DE PARIDAD). Cada una de las conexiones de datos de los 9 chips van al chip comparador, y de este salen 8 conexiones que van al bus de datos. Si en vez de utilizar chips del tipo 4lxx utilizamos chips del tipo 44xxx (nibbles), sera suficiente con dos chips 4464 (para los datos) y un 4164 (para la paridad) para tener 64 Kbytes en el ordenador. A cada grupo de 9 chips, o de 3 chips en el caso de emplearse chips nibbles, se le llama banco de memoria. Un ordenador basado en el microprocesador 8088 puede tener hasta cuatro bancos de memoria sobre la placa base. Como es lgico, todos los chips de un mismo banco deben ser del mismo tipo, ya que para cada posicin de memoria, cada chip solo guarda un bit (o cuatro bits) de los 8 que forman el byte.

Microprocesadores con bus de datos de 16 bits En los ordenadores con un bus de datos de 16 bits (8086, 80286 y 386SX) cada banco de memoria, en vez de tener 9 o 3 chips, tiene 18 o 6 chips, dependiendo de si se utilizan chips del tipo 41 o del tipo 44. En este caso se dispone de dos bancos de memoria, pudiendo tener instalados un total de 36 chips de memoria RAM (12 en caso de utilizarse nibbles). Otra diferencia es comn encontrarse con que la memoria RAM est formada con plaquitas SIP o SIMM (normalmente se encontrarn en SIMM). Un mdulo SIP o SIMM hace el trabajo de nueve chips (del

IM

154

tipo 4lxxx) o de 3 chips (dos del tipo 44xxx para los datos y uno del tipo 41 xxx para la paridad), por lo que un banco de memoria de este tipo estara formado por dos plaquitas SIP o SIMM.

SIMM de 30 contactos. Estos van insertados en un zcalo o directamente soldados a la placa base

Microprocesadores con bus de datos de 32 bits Los ordenadores con un bus de datos de 32 bits (clases 386DX y toda la gama 486) necesitaran 36 chips del tipo 41 xxx por banco de memoria (32 chips para los bits de datos y 4 chips para la paridad) o bien 12 chips (8 chips del tipo 44xxx para los bits de datos y 4 chips del tipo 41 xxx para la paridad). En este caso los ordenadores utilizan mdulos SIMM de dos tipos: 30 y 72 contactos. Si se utilizan mdulos SIMM de 30 contactos, cada banco de memoria estara formado por 4 mdulos SIMM, disponiendo, normalmente, de slo dos bancos y por tanto 8 zcalos como los mostrados en la figura anterior. En los mdulos SIMM de 72 contactos, la ventaja es que son mdulos de 32 bits, y los zcalos en la placa base donde se montan vienen preparados para trabajar con 32 bits, sin tenerlos que agrupar por grupos de 2 o 4 mdulos SIMM para formar un banco (como en los casos anteriores). Cada uno de esos mdulos SIMM forman por s mismo un banco. Slo hay que insertar uno de estos mdulos y se completa el banco.

Mdulo SIMM de 72 contactos

IM

155

En placas de P 486 de ltima generacin, se incluan zcalos para mdulos SIMM de 72 contactos (32 bits) y de 30 contactos (8 bits); en este caso suelen incluir 4 zcalos de 30 contactos y 2 de 72 contactos.

Microprocesadores con bus de datos de 64 bits


Este caso corresponde a los microprocesadores clase Pentium, Pentium II y superiores. Se utilizan mdulos SIMM de 72 contactos y DIMM de 168 contactos. Corno el microprocesador tiene un bus de datos de 64 bits, tiene que ir a memoria a coger 64 bits a la vez, por lo que habr que agrupar los mdulos SIMM de 72 contactos de dos en dos, siendo necesario un slo DIMM. Cada pareja de mdulos SIMM debe ser de la misma capacidad y caractersticas.

Equivalencia entre los mdulos SIMM de 30 y 72 contactos respecto al de 168 contactos

IM

156

Tipos de memorias por su constitucin y funcionamiento Existen varios tipos de memorias DRAM que se fabrican en los soportes SIMM y DIMM, y que tienen unas caractersticas tcnicas distintas y estn pensadas y diseadas para equipos especficos. Inicialmente las memorias DRAM eran de tipo en modo pgina (PM), sin embargo esto ha cambiado y en la actualidad no se dispone de ellas por ser demasiado lentas. Se citan a continuacin los tipos ms importantes.

FPM (Fast Page Mode modo de pgina rpida): este tipo es el que se inclua en los equipos basados en los P clase 386. clase 486 y algunos Pentium. lnicialmente se selecciona una fila en el chip de memoria y a continuacin se pueden hacer mltiples accesos a columnas sin modificar la direccin de la fila. Alcanz tiempos de acceso de hasta 60 ns (en equipos con Pentium y velocidad de bus de 66 MHz), accedindose a un nico byte en cada ciclo de lectura/escritura Se encontraba en ndulos SIMM de 30 y 72 contactos. Se conoce coloquialmente como memoria no EDO para diferenciarla de la EDO. En modo rfaga se configura en el SETUP como 5-3-3-3. EDO (Extended Data Output salida de datos extendida): mejoran el tiempo de acceso en modo pgina, incluyendo unos laches para guardar los datos de salida. De esta forma, cuando se presenta la direccin de pgina (fila), los datos seleccionados se guardan en estos laches al mismo tiempo que se envan al bus; esto permite al decodificador de direcciones y al circuito de camino de datos iniciar un acceso a la siguiente direccin de pgina, sin necesidad de inhabilitar los datos de salida. Este tipo de memoria permite mover un bloque completo de memoria en lugar de un nico byte. Alcanz tiempos de acceso de hasta 45 ns, habiendo EDO DRAM para 70, 60 y 50 ns; el chipset Tritn HX y VX necesita memorias de 60 ns. Se encuentra en los equipos basados en pP clase Pentium, Pentium pro y los primeros Pentium II. Se presentan en mdulos SIMM de 72 contactos y en DIMM de 168 contactos. En modo rfaga se configura como 5-2-2-2. La velocidad mxima de bus admisible es 66 MHz.

SDRAM (Synchronous DRAM DRAM sncrona): este tipo de memoria se sincroniza con la velocidad del procesador, por lo que evita los estados de espera que se producan anteriormente. Aprovecha el hecho de que en la mayora de los casos, la informacin que se requiere de la memoria principal se transfiere en modo rfaga. Para ello, se redisea el chip de forma que se optimice la transferencia de datos secuenciales. La idea bsica es que sea la memoria la que proporcione todos los datos solicitados simplemente indicndole la direccin de comienzo de la rfaga. Esta tcnica elimina los retardos asociados con la decodificacin de direcciones. Soportan velocidades de bus de 100 MHz, consiguiendo tiempos de acceso de 10 ns. Se presentan en mdulos DIMM de 168 contactos. Es la

IM

157

ms utilizada actualmente en los equipos que la soportan como el chipset Tritn VX y todos los nuevos chipset 580VP, 590VP y siguientes (para P clase Pentium y superiores) y la 680VP (para Pentium pro). En modo rfaga se configura como 5-1-1-1.

PC-lOO DRAM: es un tipo de memoria SDRAM que cumple unas estrictas normas referentes a calidad de los chips y diseo de los circuitos impresos establecidas por Intel para el correcto funcionamiento de la memoria RAM con su chipset BX a velocidad de bus de 100 MHz.

BEDO (Burst EDO rfaga EDO): diseada originalmente para el chipset HX, permite transferir datos en cada ciclo de reloj, pero no de forma continuada, sino a rfagas (burst), reduciendo los tiempos de espera del microprocesador. Este tipo de memoria lo soportan los chipset VIA 580VP, 59OVPy 680VP. Se configura en modo rfaga como 5-1-1-1. No puede trabajar a velocidades de bus mayores de 66 MHz lo cual es un serio inconveniente en la actualidad.

Direct RDRAM (Direct Rambus DRAM directa Rambus DRAM): Intel y Rambus trabajan conjuntamente para el desarrollo de la tecnologa Direct por extensin de la tecnologa Rambus existente. Es un tipo de memoria de 64 bits, que puede conseguir rfagas de 2 ns y picos de 1,6 Gbytes/s. Es el complemento ideal para las tarjetas grficas AGP, evitando cuellos de botella entre la tarjeta grfica y la memoria principal durante el acceso directo a memoria. El inconveniente es que no es una arquitectura abierta. por lo que los fabricantes han de pagar derechos a Intel por utilizarla.

DDR SDRAM (Double Data Rate SDRAM o SDRAM II SDRAM de doble velocidad de datos): funciona a velocidades de 83, 100 y 125 MHz en la transferencia de datos a memoria, pudiendo llegar a duplicarse, triplicarse o cuatriplicarse, con lo que se adaptara a los nuevos procesadores y velocidades del puerto AGP. El mayor inconveniente est en que aunque es una arquitectura abierta, Intel no la apoya al interesarle ms su RDRAM.

SLDRAM: funciona a velocidades de 400 MHz aunque puede llegar a los 800 MHz y 4Gbytes/s. Es idnea para servidores, pero, al igual que con la DDR SDRAM, a Intel no le interesa apoyarla.

IM

158

ESDRAM: es un tipo de memoria apoyada por Alpha, que piensa incluirla en futuros sistemas. Funciona a 133 MHz y alcanza los 1,6 Gbytes/s.

Chequeo inicial de la DRAM Al encender el PC se produce un chequeo de toda la Unidad Central, incluida la memoria. Si todo se ha llevado a cabo de la forma adecuada, se detectar de forma automtica la cantidad de DRAM instalada, indicndose adems si es de tipo FPM (por defecto, no se indica nada), si es EDO o SDRAM; en el cuadro resumen mostrado en pantalla antes de comenzar a cargar el sistema operativo, aparece si los zcalos 0, 1, 2, etc., tienen memoria EDO o SDRAM; si no indica nada es que la memoria instalada es FPM. Sin embargo, si hay problemas, pueden suceder, en general, dos cosas: Que el equipo no arranque: en este caso, el equipo se queda colgado en el chequeo y no contina arrancando. Debemos quitar la ltima modificacin de memoria realizada por no ser admitida por la placa base (asegurarse antes de que todo se ha hecho de la forma adecuada y que no existe ningn error). Que la cantidad de memoria que aparece sea incorrecta: aqu habr que seguir las pautas indicadas en la placa base en cuanto a colocacin de los mdulos SIMM y/o DIMM y del tipo de los mismos admisible.

Por ejemplo en las placas base que tienen zcalos SIMM de 72 contactos y DIMM de 168 contactos, al poner mdulos de memoria de ambos tipos, no se pueden colocar de cualquier forma, sino que 1 DIMM suele colocarse con 2 SIMM determinados (el DIMM 1 se puede colocar junto con los SIMM 3 y 4, y el DIMM 2 junto con los SIMM 1 y 2, de tal forma que si no se tiene en cuenta esto, posiblemente no llegue a arrancar el equipo) Si el sistema muestra un mensaje de error en pantalla indicando que hay que actualizar la configuracin de la memoria, se entrar en el SETUP y se actualizar el valor correspondiente a la cantidad de memoria DRAM instalada. Se podr comprobar con el comando MEM o CHKDSK del MS-DOS la cantidad de memoria

IM

159

disponible, y en el caso de Windows 9x en la pantalla de panel de control / sistema/ pestaa general aparece la cantidad de memoria instalada. Configuracin en el SETUP. Posibilidad de ampliacin en placa base En los equipos modernos no hay que tocar el SETUP para indicar la cantidad de memoria instalada, ya que es una tarea automtica del propio hardware. Sin embargo, habr que configurar en el SETUP el tipo de memoria instalada en cuanto a tiempos de acceso, velocidad en modo rfaga, etc., En el momento de decidir la cantidad de memoria DRAM que se va a instalar o ampliar en un PC, hay que tener en cuenta algunos factores, Como son: Nmero y tipo de zcalos presentes en la placa base. Cantidad de memoria mxima admisible por la placa base. Tipo de memoria admisible por la placa base.

Cantidad mxima de memoria cacheable (esto se tendr en cuenta si se desea instalar ms de 64 Mbytes). Para Intel, por citar algunos chipset usuales, la memoria cacheable es: 430VX=64MB. 430HX=512 MB. 430TX=64MB. En el caso del chipset de Intel 430VX, no interesara poner ms de 64 MB ya que se perdera el funcionamiento de la cach por encima de este valor y es la primera zona de memoria que se utiliza; esto implica que las aplicaciones irn ms lentas que antes.