TECNOLOGAS El sistema de memoria es uno de los componentes principales de los sistemas basados en uP como el PC. Su funcin es la de almacenar datos e instrucciones. Poco a poco las memorias electrnicas han ido separndose de ese primer diseo inicial para ir ofreciendo ms prestaciones y funciones. Las primeras memorias eran realizadas en telares donde se haca incidir por un anillo de grafito una serie de hilos cuya funcin era la de escribir o borrar datos aprovechando el ciclo de histresis (ste es el famoso efecto memoria que presentan las bateras de determinados instrumentos electrnicos, como es el caso de los telfonos mviles). 2 Hoy en da una configuracin "generosa y veloz" en memoria es imprescindible con los sistemas operativos bajo entornos grficos. Lejos quedan los tiempos donde se usaban KB para referenciar la memoria. Peter Norton habl de los PC XT de IBM de la siguiente forma: "IBM ha equipado a sus ordenadores PC XT con lo mnimo que se considera necesario para un ordenador personal serio. Disponer de 10 MB de disco duro y 128 KB de memoria (un octavo de MB!) es lo propio para una mquina profesional". No muy lejano quedaba Bill Gates al vaticinar dos aos antes que "640 KB debera ser suficiente para cualquier PC". Pinsese que un PC puede tener almacenados muchos programas en su disco duro, pero slo uno es el que se ejecuta en un momento determinado -salvando consideraciones como el multiproceso o la multitarea-. Ese programa en ejecucin est en la memoria del sistema. 3 El clculo de la memoria que precisa un PC es complejo, ya que depender de la funcin que se le desee dar. As no existirn los mismos requerimientos para pequeas aplicaciones en DOS que para complejos entornos grficos. Lo cierto es que un exceso de memoria rara vez es perjudicial y, en su defecto, aparecen de forma inevitable algunos problemas (ralentizacin del sistema, errores de memoria...). Hay muchas aplicaciones que exigen un mnimo de memoria para su correcto funcionamiento y una mala eleccin del tipo de memoria o un mdulo en mal estado puede provocar serios problemas en la mquina. Error comn de confundir la memoria RAM con el disco duro. Si bien ambos son dispositivos de almacenamiento y, lgicamente usan las mismas unidades para definir su capacidad, hay una caracterstica (adems de otras miles de ellas) que los distingue funcionalmente (volatilidad, velocidad....). 4 TIPOS DE MEMORIAS Un PC dispone principalmente de dos tipos de memoria: ROM y RAM. La diferencia evidente entre ellas es que la primera es de slo lectura, es decir, no se puede borrar ni escribir (inicialmente) y la segunda permite su uso completo al usuario, con el matiz de la volatilidad o lo que es lo mismo, la prdida de datos ante la falta de suministro elctrico. Como resulta evidente, la ROM no se puede modificar en s misma, sino que es preciso sustituirla en caso necesario. La RAM, de forma genrica, ser el tipo de memoria ms usado, ya no slo como memoria principal del sistema sino como complemento al vdeo, bferes de diferentes dispositivos, etc. En funcin de la tarea que realice, tendr unas caractersticas concretas y un formato especfico. 5 MEMORIAS ROM "Read Only Memory" o Memoria de slo lectura, implementada por el fabricante para uso del PC. Las ROM pueden ser ms lentas o muchsimo ms rpidas que las RAM. Se coloca en una base y normalmente no debe ser cambiada. Entre otras cosas, contiene rutinas del sistema BIOS ("BASIC Input Output System") que, en determinadas aplicaciones, reciben el nombre de FIRMWARE. Existen tres variaciones bsicas sobre esta memoria: PROM, EPROM y EEPROM. Memoria PROM: "Programmable ROM". Se trata de un chip ROM "en blanco", que permite su escritura o grabado. Slo se puede escribir una nica vez. Podra compararse con un disco de CD-R que admite una escritura y mltiples lecturas. Fsicamente la escritura lleva asociado una tarea destructiva que impide una nueva escritura del integrado. 6 Memoria EPROM: "Erasable Programmable ROM". Es similar en funcionalidad a la PROM, pero puede ser reescrita. El proceso de borrado consiste en la aplicacin de luz ultravioleta en una ventana que el chip habilita en su zona superior. El proceso de grabacin se basa en almacenar una carga electroesttica en transistores MOS-FET. 7 La luz ultravioleta provoca una alteracin en todo el sustrato hacindolo "conductor" y provocando la descarga de la electricidad esttica almacenada. Esto provoca una degradacin en el chip, generalmente el fabricante garantiza 10 ciclos de grabado (actualmente se admiten hasta 100 ciclos, siendo inversamente proporcional las veces de grabacin con la frecuencia mxima de trabajo). Existen ya en el mercado muchos microcontroladores y DSPs que incluyen memoria de programa, lo que sera la PROM en OTPs ("On Time Programable"), que incorporan memorias denominadas FLASH (Z-Flash, V-Flash, etc.). Este tipo de memoria se comporta como una EPROM, sin necesidad de borrado previo, sino que se reescriben nuevamente chancando" la escritura anterior. 8 Aunque an estn limitadas en velocidad de trabajo, existen dispositivos que funcionan a ms de 60 MHz (especialmente DSPs con set de instrucciones de tipo RISC). Sus ventajas principales son dos: son regrabables indefinidas veces y, muy importante, puede hacerse esto con el chip montado (soldado) en el circuito impreso (a travs de puertos de acceso especiales, como el JTAG de TEXAS INSTRUMENTS). Los principales fabricantes de microcontroladores con Flash son: HITACHI, TEXAS INSTRUMENTS, MOTOROLA y NATIONAL. Los microcontroladores con Flash son ms caros. Memoria EEPROM: "Electrically Erasable Programmable ROM". Es la popularmente conocida como "Flash BIOS". Esta memoria tiene prestaciones idnticas a la EPROM, elimina el molesto proceso de borrado y lo sustituye por un control por software. 9 Esto permite, en el caso de las BIOS, que el usuario pueda actualizar la misma con las mejoras que se implementen por software. La EEPROM se implementa tambin en mdulos DIMM como dispositivo SPD ("Serial Presence Detect"), manteniendo informacin relativa al mdulo como es el tamao, velocidad, nmero de filas y columnas. Esta informacin es usada por la BIOS para optimizar el modo de acceso a la memoria y es grabada por el fabricante. 10 MEMORIAS RAM "Random Access Memory o Memoria de acceso aleatorio. Se trata de una memoria extremadamente rpida que est a disposicin del usuario. Tiene la caracterstica de ser de lectura y escritura adems de voltil (cuando desaparece el fluido elctrico del PC, esta memoria se descarga). En funcin de cmo el usuario es capaz de mantener los datos se podr encontrar memorias estticas SRAM ("Static RAM") o dinmicas DRAM ("Dinamic RAM"). En la SRAM cada bit se representa mediante un circuito capaz de adoptar dos estados estables diferentes, manteniemdo estos datos sin ninguna otra aportacin que la carga de datos inicial y el fluido elctrico, naturalmente. As, un estado corresponder al 0 y otro al 1. Estos circuitos se implementan con biestables. De forma habitual usan un pin para la lnea de direcciones y el resto de los pines se quedan disponibles para el manejo de datos. 11 Aunque mucho ms rpida que la RAM dinmica, la SRAM resulta tambin mucho ms cara y se usa sobre todo para implementar la memoria cach. Existen diferentes tipos de SRAM: sncrona, asincrona, Pipeline Burst SRAM, etc. En las DRAM, cada bit se representa mediante la carga almacenada en un condensador que est acompaado de un transistor dedicado a la lectura de la celda. Cada celda en memoria DRAM ocupa superficialmente un cuarto de lo que ocupa la SRAM, siendo en definitiva la superficie el costo de la memoria (esta densidad de almacenamiento la hace idnea para sistemas cada vez ms miniaturizados). Las DRAM con el paso del tiempo tienden a perder la informacin almacenada por esta razn es necesario "recordar" a la memoria su contenido mediante refrescos peridicos, tambin llamados "refreshing", donde se lee la informacin y se vuelve a reescribir. Segn el tipo de memoria los refrescos, se realizarn con menor o mayor frecuencia. 12 Las celdas de la DRAM se organizan a travs de filas y columnas formando matrices, donde es necesario especificar ambos parmetros para acceder a un punto determinado de la memoria. 13 Dado que el tiempo usado por las filas es diferente al de las columnas se pueden compartir los mismos pines, consiguiendo as la fabricacin de mdulos ms pequeos y econmicos, a costa de distribuir las seales, a veces, en tiempos crticos. La integridad de dichas seales de control ser uno de los parmetros decisivos para evaluar la calidad de un tipo de memoria. El refresco de la memoria consume recursos del microprocesador (aunque el DMA alivie esta tarea). Dependiendo del tipo de mquina por cada ciclo de refresco se realizaban varios de microprocesador llegando a consumir hasta un 10% del tiempo total de uso del micro. En su momento, los mdulos DIMM en trabajo con los PENTIUM II y III reducieron este tiempo hasta un 1%. 14 Comparacin entre Memorias Estticas y Dinmicas La velocidad de acceso es baja. Necesita recargar la informacin. almacenada para retenerla. Diseo complejo. Mayor densidad y capacidad. Menor costo por bit. Menor consumo de potencia. DRAM Menor capacidad, debido a que cada celda de almacenamiento requiere mas transistores. Mayor costo por bit. Mayor consumo de potencia. La velocidad de acceso es alta. Para retener los datos solo necesita estar energizada. Son mas fciles de disear. SRAM Desventajas Ventajas Memoria 15 CONTROLADOR DE MEMORIAS Su misin es la de generar las seales de control precisas para leer y/o escribir desde/hacia la memoria, adems de realizar las veces de interfaz entre la memoria y el resto del sistema. De forma habitual, el controlador de memoria se encuentra implementado en el chipset de la placa base, formando parte del conjunto de elementos que definen la potencia del PC. Puesto que la memoria y la placa no "conocen" entre s sus tiempos de respuesta y propagacin, el controlador de memoria se encarga tambin de sincronizarlos a travs de los estados de espera o wait states (W/S). Los Wait States son perodos de inactividad encargados de obtener una adecuacin de frecuencia entre los diferentes componentes que integran la comunicacin con la memoria.