CONCEPTOS BÁSICOS SOBRE MEMORIAS Tal como se explica en la sección Componentes Básicos de un Computador un computador ejecuta las siguientes funciones: • Procesamiento de datos • Almacenamiento de datos • Transferencia de datos • Control En el almacenamiento de datos el computador debe almacenar información que es suministrada y utilizada a largo plazo y también almacenar provisionalmente la que es dada mientras ejecuta una instrucción. Para poder realizar esto el computador contiene una variedad de dispositivos para almacenar datos e instrucciones. Estos dispositivos más los algoritmos necesarios para controlar o manejar la información almacenada, constituyen el sistema de memoria de un computador, usado para el almacenamiento y recuperación de datos e instrucciones. ¿POR QUÉ SE NECESITAN VARIOS DISPOSITIVOS DE MEMORIA? Los procesadores necesitan acceder rápido y fácilmente a grandes cantidades de información para maximizar su rendimiento. Si el procesador no puede obtener el dato que necesita, para y espera por él. Los procesadores modernos corren a velocidades de 1 GHz o más y pueden llegar a utilizar grandes cantidades de bytes por segundo, el problema es que una memoria que pueda almacenar y entregar la información a la velocidad que el procesador la necesita es muy costosa. Para solucionar el problema inicialmente se utilizó memorias costosas en pequeñas cantidades y luego se reemplazó por grandes cantidades de memoria económica. La memoria más económica que se utiliza actualmente es el disco duro o memoria principal, almacena información que no es solicitada instantáneamente por el procesador y se gasta mucho tiempo en poder leer o escribir un bit en dicha memoria. La información que no es usada, se almacena en la memoria secundaria, la cual mantiene una copia de todos los programas y datos que necesita el computador, generalmente este tipo de almacenamiento son discos. El almacenamiento secundario utiliza mecanismos electromecánicos y por ello requiere grandes tiempos de acceso para encontrar la posición física de la información y su transferencia hacia los niveles anteriores. El manejo de transferencia entre la memoria principal y memoria secundaria es controlada por el sistema operativo, utilizando el concepto de memoria virtual, la cual da la apariencia de tener un espacio de memoria más grande del que realmente se tiene físicamente. Como la velocidad de la memoria principal no satisface los requerimientos del procesador se utiliza en el siguiente nivel de la jerarquía una memoria RAM. La velocidad del sistema de la RAM es limitada por el ancho y la velocidad del bus que la conecta al procesador. El ancho del bus se refiere al número de bits que se pueden transmitir al procesador simultáneamente, y la velocidad del bus se define como la cantidad de veces que se puede enviar el conjunto de bits por Segundo. Pero la RAM no es aún lo suficientemente rápida para la velocidad del procesador, por ello se necesita una memoria caché. La memoria caché tiene como propósito aumentar la velocidad de operación del procesador disponiendo de la información usada recientemente, para rápida recuperación. En este tipo de memorias el direccionamiento es realizado por contenido y no por dirección. Los elementos de memoria más rápidos se ubican cerca al procesador, algunos sistemas tiene un pequeño número de registros de alta velocidad, que se presentan como flip flops, los cuales almacenan temporalmente datos e instrucciones, usados frecuentemente por el procesador. Los registros pueden ser acumuladores, registros base, almacenamiento de localizaciones bases para el direccionamiento de la memoria principal, entre otros. CARACTERÍSTICAS DE LAS MEMORIAS Los sistemas de memorias pueden clasificarse de acuerdo a sus características. Las más importantes se encuentran a continuación: Ubicación: se refiere al lugar en donde se encuentra la memoria. Históricamente las memorias se han clasificados en internas y externas según si se encuentran o no dentro del computador. La memoria interna, es la que se encuentra dentro del computador, a veces identificada como memoria principal. La memoria externa, es la que se encuentra fuera del computador, y se accede a ella por medio de dispositivos de entrada / salida (cintas y discos por ejemplo). Dentro de las memorias internas suele diferenciarse al conjunto de registro que sirven como memoria local dentro del procesador, este conjunto se conoce como memoria del procesador. Actualmente esta clasificación no es válida para todos los casos, debido a que muchos de los dispositivos que se consideraban como elementos de memoria externos al computador se han colocado dentro de este. Por lo tanto se ha creado otra forma de clasificar las memorias según su ubicación, esta es en memoria primaria y en memoria secundaria. La memoria primaria es la que se encuentra cerca al procesador, es rápida y mejora el desempeño ya que almacena programas y datos que se ejecutan en ese momento. Las memorias secundarias están conformadas por bancos múltiples de memoria que almacenan programas y datos por mucho más tiempo. Capacidad: se define como el número total de unidades de datos que puede almacenar una memoria. En general, las memorias almacenan datos en unidades que tienen de uno a 8 bits. La unidad de medición se expresa típicamente en términos de bytes (usualmente un byte equivale a 8 bits). Un byte se puede dividir en dos unidades de 4 bits que reciben el nombre de nibbles. Una unidad completa de información se denomina palabra y esta formada, generalmente por uno o más bytes. La definición general de palabra dice que una palabra es una unidad completa de información, consistente en una unidad de datos binarios. Cuando se aplica a las instrucciones de un computador, se define de forma más específica como dos bytes. Unidad de transferencia: es la manera como se transmite la información entre la memoria y los demás dispositivos. Para la memoria interna es el número de bits leídos o escritos en la memoria, la información muchas veces se transfiere en conjunto de bits conocidos como palabras. Para la memoria externa los datos a menudo son transferidos en unidades mayores que las palabras, como los bloques. Características físicas: las memorias pueden ser volátiles, cuando la información se va perdiendo o desaparece en el momento de desconectar la alimentación. O no-volátiles cuando la información una vez grabada, permanece sin deteriorarse hasta que se modifique intencionalmente, en este caso no se necesita de la fuente de alimentación para retener la información. Métodos de acceso: una característica de las memorias es el orden o secuencia en que se tiene acceso a la información. Según esto las memorias se clasifican en: Acceso aleatorio: cuando una posición en la memoria puede ser accedida en cualquier orden y es independiente de la posición solicitada, la memoria se llama de acceso aleatorio (RAM random access memory). En una RAM cada posición de almacenamiento es independiente de cualquier otra, por lo tanto se puede tener un mecanismo de acceso separado o una cabeza de lectura y escritura par cada posición. El tiempo para acceder a una posición dada es constante e independiente de la secuencia de accesos previos. Por tanto, cualquier posición pude seleccionarse aleatoriamente y ser direccionada y accedida directamente. Acceso secuencial: memorias donde las posiciones de almacenamiento pueden ser accedidas únicamente en una secuencia predeterminada. En las memorias secuenciales el mecanismo de acceso es compartido para diferentes posiciones de almacenamiento. Acceso directo: se puede llegar directamente a cualquier posición física de la memoria, sin tener que leer todas las posiciones de almacenamiento secuencialmente. Acceso asociativo: este es un tipo de memoria aleatoria que es direccionable por contenido y no por dirección, llamada memoria asociativa. Desempeño: esta característica depende de tres parámetros que son: Tiempo de acceso: para memorias de acceso aleatorio es el tiempo que tarda en realizarse una operación de escritura o de lectura, es decir, el tiempo que transcurre desde el instante en el que se presenta una dirección a la memoria hasta que el dato o ha sido memorizado o esta disponible para su uso. Para memorias de otro tipo, el tiempo de acceso es el que se tarda en situar el mecanismo de lectura / escritura en la posición deseada. Tiempo de ciclo de memoria: este concepto se aplica primordialmente a las memorias de acceso aleatorio y consiste en el tiempo de acceso y algún tiempo más que se requiere antes de que pueda iniciarse en segundo acceso a memoria. Este tiempo adicional puede que sea necesario para que finalicen las transiciones en las líneas de señal o para regenerar los datos en el caso de lecturas destructivas. Velocidad de transferencia: es la velocidad a la que se pueden transferir datos a, o desde, una unidad de memoria. Para memorias de acceso aleatorio coincide con el inverso del tiempo de ciclo. Para otras se utiliza la siguiente relación: TN = TA+N/R Donde: TN = Tiempo medio de escritura en bits por segundo TA = Tiempo de acceso medio N = Número de bits R = Velocidad de transferencia, en bits por segundo TERMINALES DE CONEXIÓN DE DISPOSITIVOS DE MEMORIA Las terminales de conexión comunes a todos los dispositivos de memoria son: las entradas de dirección, salidas de datos o entradas / salidas de datos, algún tipo de entrada de selección y al menos una entrada de control utilizada para seleccionar una operación de lectura o escritura. A continuación, se describen las diferentes terminales de conexión. Conexiones de dirección: todos los dispositivos de memoria tienen una entrada de selección, para determinar una localidad de memoria en el dispositivo. Las entradas de selección casi siempre están etiquetadas desde A0, la entrada de dirección menos significativa, hasta la An, donde n indica cualquier valor. Este valor siempre es etiquetado como uno menos que el número total de terminales de dirección. Por ejemplo, un dispositivo con 10 terminales de dirección posee sus terminales etiquetadas como A0 a A9. Conexiones de datos: todos los dispositivos de memoria tienen un conjunto de salidas o de entradas / salidas de datos. Actualmente, muchos dispositivos de memoria tiene terminales bidireccionales comunes de entrada / salida. Las conexiones de datos son los puntos en los que los datos son escritos para su almacenamiento o de donde son leídos. Por ejemplo, las terminales de datos en los dispositivos de memoria están etiquetados desde D0 a D7 para un dispositivo de memoria de 8 bits. Conexiones de selección: cada dispositivo de memoria tiene una entrada (a veces más de una) que habilita o deshabilita al dispositivo. Estas pueden ser CE, habilitación de dispositivo; CS, selección de dispositivo; o simplemente de selección S. Si la entrada CE, CS o S está activa (un 1 lógico en este caso) el dispositivo de memoria realiza una operación de lectura o de escritura; si está inactiva (un 0 lógico en este caso), el dispositivo no puede realizar una lectura o escritura porque está apagado o deshabilitado. Conexiones de control: todos los dispositivos de memoria tienen alguna forma de entrada o entradas de control. Estas son OE (habilitación de salida) o G (compuerta) las cuales permiten el flujo de datos desde las terminales de salida de la memoria. Si OE está inactiva, la salida está deshabilitada y se encuentra en alta impedancia. Si OE se encuentra activa y el dispositivo se encuentra seleccionado, la salida está habilitada y puede haber flujo de datos. Para las memorias que son de lectura y escritura existe una señal de control que selecciona una operación de lectura o de escritura. Figura 1. Memoria con conexiones OPERACIONES BÁSICAS DE LAS MEMORIAS Las memorias deben poder realizar dos operaciones básicas, una de escritura y otra de lectura ya que los datos deben poderse recuperar y escribir en memoria cuando se necesiten. La operación de escritura coloca los datos en una posición específica de memoria. Para almacenar un byte de datos en memoria, se introduce en el bus de direcciones un código que se encuentra almacenado en el registro de direcciones (MAR). Una vez que el código de direcciones está ya en el bus, el decodificador de direcciones decodifica la dirección y selecciona la posición de memoria especificada. La memoria recibe una orden de escritura y los datos almacenados en el registro de datos (MDR) se introducen en el bus de datos y se almacenan en la dirección de memoria especificada. La operación de lectura extrae los datos de una dirección especificada de memoria. Para leer un byte se introduce en el bus de direcciones un código almacenado en el registro de direcciones (MAR), una vez que el código de dirección se encuentra en el bus, el decodificador de direcciones decodifica la dirección y selecciona la posición especificada de la memoria. La memoria recibe una orden de lectura y una copia del byte de datos almacenado en la dirección de memoria seleccionada se introduce en el bus de datos, así finaliza la operación de lectura. Cuando se lee un byte de datos de una dirección de memoria, este sigue almacenado en dicha dirección y no se destruye, lo cual se denomina lectura no destructiva. JERARQUÍA DE MEMORIA Según el costo, la capacidad y el tiempo de acceso, las memorias que tiene el computador se pueden clasificar de forma jerárquica. A continuación se muestra una forma de configuración jerárquica Registros Caché Memoria principal Caché de disco Disco magnético Cinta magnética Disco óptico. Figura 2. Jerarquía de memoria A medida que se disminuye en la jerarquía se tiene que: a. Disminuye el costo por bit. b. Aumenta la capacidad de almacenamiento. c. Aumenta el tiempo de acceso. d. Disminuye la frecuencia de accesos a la memoria por parte del procesador. Memoria Caché La tecnología caché utiliza una memoria pequeña de alta velocidad que almacena los datos o instrucciones más recientes utilizados de la memoria principal la cual es grande pero lenta. La tecnología Caching tiene como principal propósito acelerar al computador manteniendo un precio bajo. Se basa en la idea de que los computadores tienden a obtener instrucciones o datos de un área de la memoria principal antes de pasar a otra área, entonces el controlador de la caché “adivina” que área de la lenta memoria necesitará a continuación el procesador y mueve el contenido de dicha área a la memoria caché. Cuando el procesador solicita alguna información, la memoria caché es revisada para buscar la información deseada, si se encuentra ahí se llama caché hit y es suministrada inmediatamente en vez ir a buscarla en la memoria principal, minimizando el tiempo de búsqueda. Pero si no se encuentra se llama caché miss y es necesario que el procesador espere mientras se realiza la búsqueda en la memoria grande y lenta Cache de nivel 1 y nivel 2 Es posible tener varios niveles de memoria caché, cuando el procesador accede a la memoria principal lo hace en 60ns pero para un procesador que funciona a 2ns esperar 60ns es una eternidad. Entonces se crea una memoria pequeña y rápida, que funcione alrededor de 30ns, esto es dos veces más rápido que el acceso a la memoria principal, dicha memoria se denomina caché de nivel 2. Ahora se puede colocar una memoria también pequeña y más rápida que la anterior conectada directamente al procesador, por lo tanto ésta funcionará a la velocidad del procesador y no a la velocidad del bus que la interconecta, ésta es una memoria caché de nivel 1. La caché de nivel 1 está usualmente integrada al chip del procesador y tiene una capacidad de almacenamiento muy limitada, por ello es que se necesita una caché de nivel 2. La caché de nivel 2 es un chip o conjunto de chips de memoria independientes, externo al procesador y dispone de una capacidad de almacenamiento mayor que una caché de nivel 1. Suponiendo que se utiliza un procesador Pentium de 233MHZ la memoria caché L1 funcionará a 233MHz lo cual es 3.5 veces más rápido que la memoria caché L2 de 30ns que es 2 veces más rápida que el acceso a la memoria principal de 60ns. Reloj Procesador Caché L1 Bus de datos Bus de direcciones Controlador de Caché Memoria Principal Caché L2 Figura 3. Diagrama de bloques mostrando las memorias caché L1 y L2 Otras cachés del computador Ya que la tecnología caché utiliza una memoria pequeña de alta velocidad que almacena los datos o instrucciones más recientes utilizados en una memoria más grande pero lenta, se puede colocar varios tipos de memorias rápidas que funcionan como caché entre los subsistemas del computador para aumentar el rendimiento. Ejemplo: La conexión a Internet es lo más lento que hace el computador, entonces el navegador utiliza el disco duro para almacenar las páginas HTML colocándolas en un fólder especial en el disco. La primera vez que se accede a una página el navegador almacena una copia en el disco, la próxima vez que se acceda a la página el navegador revisa la fecha de ésta con la que se almacenó en el disco, si es la misma el navegador utiliza ésta copia en vez de bajarla de Internet, si no la baja de Internet. En este caso la pequeña pero rápida memoria es el disco duro y la grande y lenta es el Internet. La memoria caché también puede conectarse directamente a los periféricos. Algunos discos duros modernos vienen con memoria rápida directamente conectada para agilizar su funcionamiento; las unidades de floppy de los disquetes también funcionan con memoria caché. Actividad El floppy drive del computador utiliza una memoria caché la cual es la memoria principal y por medio de esta actividad se verá como funciona. 1. Acceda a un archivo grande (400 Kb) de texto que tenga almacenado en un disquete. La primera vez se verá la luz del floppy encendida y tocar esperar un tiempo. El disquete del floppy es muy lento y se tomará alrededor de unos 30 segundos en cargar el archivo. 2. Ahora cierre el archivo que anteriormente abrió. 3. Y vuélvalo a abrir. Ya no tendrá que esperar para acceder al disquete, el sistema operativo busca en la memoria caché del floppy y encuentra lo que estaba buscando, entonces en vez de esperar los 30 segundos, el archivo fue encontrado en un subsistema de memoria más rápido que el que se buscó por primera vez. Memoria Virtual La mayoría de los computadores tienen asignados 64 o 128 MB de RAM para el procesador, pero desafortunadamente esta cantidad de memoria no es suficiente para que todos los programas corran al tiempo. Para solucionar dicho inconveniente se creó la memoria virtual (un tipo de memoria caché) la cual revisa que áreas de la RAM no han sido utilizadas recientemente y les saca una copia en el disco duro, con ello el espacio queda libre para correr una nueva aplicación. Como esta copia se realiza de forma automática no es vista por el usuario y siente que tiene una memoria ilimitada dentro del computador. Lo que se pretende es mantener los datos activos en una memoria de alta velocidad y los datos inactivos en una memoria de baja velocidad y que el desempeño tienda a ser cercano al de memorias de alta velocidad y el costo tienda a ser cercano al costo por bit de una memoria de baja velocidad. El área donde el disco duro almacena la copia de la RAM se llama archivo de página. Se almacenan varias páginas en el disco duro y el sistema operativo es el encargado de moverlas entre la RAM y el disco. Por ejemplo en Windows dichas páginas de archivos se almacenan con extensión .SWP Las direcciones de memoria física son llamadas direcciones reales, los programas generan direcciones virtuales, las cuales conforman el espacio de direcciones virtuales. Al mover las direcciones virtuales estas no pasan en forma directa al bus de memoria, sino que van a una unidad de administración de memoria MMU, que asocia las direcciones virtuales con las direcciones de la memoria física. Figura 4.Ubicación de la memoria virtual TECNOLOGÍAS DE MEMORIA El almacenamiento de información en un computador se hace por medio de un conjunto de elementos individuales, capaces de almacenar un bit de información. Estos elementos deben tener las siguientes características • Poder representar dos estados • Tener un mecanismo para poner el dispositivo en un estado o en otro • Tener un mecanismo que pregunte en que estado se encuentra el dispositivo. Se crearon diversas tecnologías que contienen estas características, con las cuales se diseñaron variados tipos de memorias, algunas de estas tecnologías son: líneas de retardo, relees, tubos, núcleos de ferrita, dispositivos semiconductores (que utilizan tecnologías LSI o VLSI), de soporte magnético (utilizadas en discos y cintas), memorias ópticas y magneto-ópticas y memorias holográficas entre otras. Figura 5. Clasificación de las memorias según el tipo de tecnología A continuación se explicarán algunas de estas tecnologías y la forma como se emplearon para diseñar las memorias: • Los tubos se usaron para almacenar información en las primeras máquinas. Los tubos son dispositivos electrónicos que consisten en una cápsula de vacío de acero o de vidrio, con dos o más electrodos entre los cuales pueden moverse libremente los electrones. El diodo de tubo de vacío fue desarrollado por el físico inglés John Ambrose Fleming. Contiene dos electrodos: el cátodo, un filamento caliente o un pequeño tubo de metal caliente que emite electrones a través de emisión termoiónica, y el ánodo, una placa que es el elemento colector de electrones. En los diodos, los electrones emitidos por el cátodo son atraídos por la placa sólo cuando ésta es positiva con respecto al cátodo. Cuando la placa está cargada negativamente, no circula corriente por el tubo. Si se aplica un potencial alterno a la placa, la corriente pasará por el tubo solamente durante la mitad positiva del ciclo, actuando así como rectificador. Aunque ya no son utilizados para almacenar información como memorias porque fueron reemplazados por los transistores si se emplean por ejemplo en las etapas de potencia de los transmisores de radio y televisión o en equipos militares que deben resistir el pulso de voltaje inducido por las explosiones nucleares atmosféricas, que destruyen los transistores. Figura 6. Tubo • Posteriormente se comenzaron a utilizar núcleos de ferrita en donde se entrelazaban varios alambres. Dependiendo del sentido de la corriente de manejo que pasa por lo alambres, se representa un 1 o un 0 lógico. La ferrita tiene la ventaja que cuando la corriente se reduce a cero, el núcleo mantiene el estado previamente magnetizado. Esto hace que las ferritas sean memorias no volátiles. Esta tecnología genera memorias que son más costosas, grandes y con menor velocidad que las memorias desarrolladas con tecnología semiconductora desarrollada posteriormente. Figura 7. Núcleos de Ferrita • Figura 8. Memoria fabricada con núcleos de ferrita La tecnología semiconductora tiene como elemento básico a la celda de memoria que tiene las siguientes propiedades: a) Tiene dos estados, pueden representar el 1 o el 0 lógico. b) Puede ser escrita para determinar el estado. c) Es leída para censar el estado en que se encuentra. Las celdas se organizan en forma de un arreglo o matriz de forma rectangular que facilita la conexión entre ellas y los circuitos de acceso. Estas celdas se trabajan en grupos de tamaños fijos, llamados palabras. Palabra: es la unidad de organización de la memoria. Para proporcionar fácil acceso a cualquier palabra que se encuentre en la memoria, se asocia a cada localización de palabra un nombre diferente, dicho nombre se conoce como unidad de direccionamiento. Estos nombres son números que identifican localizaciones sucesivas, por lo que se denominan direcciones. En muchos sistemas la unidad de direccionamiento es la palabra, sin embargo, algunos permiten direccionamiento a nivel byte. La relación entre la longitud de una dirección (A) y el número de unidades que se pueden direccionar (N) es N = 2A CELDA 1 2 3 Unidad de direccionamiento Palabra Figura 9. Palabra y celda de memoria Cada fila de celdas constituye una palabra de la memoria y todas las celdas de una fila están conectadas a una línea común, que se conoce como línea de palabra. Las líneas de palabra están manejadas por el decodificador de direcciones. Las celdas de cada columna están conectadas por dos líneas, denominadas líneas de bit, con un circuito conocido como lectura / escritura. B bits Línea Bit Línea Palabra Decod de direccio nes Líneas Direcciones Lectura / Escritura W direcc W palabras Columnas de I/O Líneas de datos Figura10. Características de la memoria semiconductora • La tecnología magnética se caracteriza por utilizar medios magnéticos para almacenar la información, usualmente el material magnético es un disco que está organizado en pistas y sectores. Cada pista esta dividida en una serie de sectores y cada pista y sector tienen una dirección física que el sistema operativo utiliza para localizar un determinado registro de datos. La disposición de pistas y sectores en un disco se denomina formato. • La tecnología magneto-óptica se caracteriza por que los discos magneto-ópticos estan formados por una capa magnética que requiere calor para alterar la polarización magnética. Por tanto, el disco magnético-óptico es extremadamente estable a temperatura ambiente, haciendo que los datos no cambien. Para escribir un bit de datos, se enfoca un haz láser de alta potencia sobre un punto muy pequeño del disco y la temperatura de dicho punto se eleva por encima de un nivel de temperatura denominada punto de Curie (aproximadamente 200 oC). Una vez caliente, las partículas magnéticas en dicho punto pueden fácilmente cambiar su polarización debido al efecto del campo magnético generado por el cabezal de escritura. La información se lee del disco mediante un láser de menor potencia que el que se emplea para escribir, utilizando el efecto de Kerr, según el cual la polaridad de la luz del láser reflejado se altera dependiendo de la orientación de las partículas magnéticas. Los puntos con cierta polaridad representan los ceros y los puntos con polaridad opuesta los unos. TIPOS DE MEMORIAS SEMICONDUCTORAS Las memorias semiconductoras se pueden clasificar de la siguiente manera: Figura 11. Tipos de memorias semiconductoras Memorias SAM Las memorias SAM (Serial Access Memory) también llamadas memorias de tipo serie, almacenan los datos en celdas de memoria seriales que solo pueden ser accedidas secuencialmente. Cada bit almacenado se transfiere en secuencia a través de 64 o más localidades entre el momento en que se escribe en la memoria y el momento en que está disponible para lectura. Si el dato no se encuentra en la posición actual de memoria se chequea cada celda hasta encontrar el dato necesitado. El registro de desplazamiento es una forma de memoria en la que los datos se transfieren de celda a celda. Las memorias de superficie móvil constituyen la forma más lenta de memoria de tipo serie. El reproductor de cinta magnética es un ejemplo de este tipo. Esta forma de memoria es más económica que las memorias electrónicas debido a que no es necesario definir patrones físicos individuales o estructuras para cada celda de almacenamiento individual. Sin embargo, se necesita la precisión de los componentes mecánicos para transportar el medio de almacenamiento magnético, lo cual implica un costo más elevado. Las memorias de burbuja son de tipo serie en su organización, por lo que el tiempo de acceso depende del número de localidades de almacenamiento en una trayectoria en serie y de la tasa máxima de desplazamiento. Las trayectorias en serie se extienden en un intervalo de 10 localidades a más de 1000. Las tasas de desplazamiento van desde una fracción de microsegundo hasta varios microsegundos. La aplicación potencial más atractiva de las memorias burbuja es el reemplazo de memorias de cinta y disco, con capacidades de un millón a 10 millones de bits. Una característica importante de las memorias de burbuja es que la información almacenada se mantiene aun se interrumpa la alimentación externa. Memorias RAM Las memorias RAM (Random Access Memory) son las más conocidas en las memorias de los computadores. RAM es considerada de acceso aleatorio porque se puede acceder a cualquier celda de memoria directamente si se sabe la fila y columna que interceptan dicha celda. Los datos en las memorias RAM pueden accederse en cualquier orden. Las memorias RAM se dividen en memorias ROM, memorias RWM y FLASH. Memorias ROM La ROM (Read-Only Memory) almacena, en forma permanente o semipermanente, programas y datos que son residentes en el sistema y que no deben cambiar cuando la alimentación es desconectada. La ROM está permanentemente programada de forma que sus datos están siempre presentes, aún si la alimentación es desconectada. Se le conoce como memoria no volátil. Figura 12. La BIOS utiliza una memoria ROM ROM de máscara: la memoria ROM de máscara se denomina simplemente ROM. Está formada por una grilla de columnas y filas, en la intersección de las filas con las columnas se utiliza un diodo para realizar la unión. Si el diodo existe la celda tiene el valor de 1, si el diodo no existe no hay unión en la línea y la celda tiene el valor de 0. El diodo permite el flujo de corriente en un solo sentido y tiene un voltaje limite de polarización (forward breakover) el cual debe ser igualado o sobrepasado para iniciar dicha conducción. Cuando el diodo no existe en la intersección, la carga que se encuentra en la columna no puede ser transmitida a la fila y por ello el valor de la celda es 0. Actualmente la ROM está disponible en muchas formas, la ROM es comprada en masa por el fabricante y programada durante su elaboración en la fábrica. PROM: crear chips de memoria ROM consume mucho tiempo y si se hace en pocas cantidades es costoso. Por esta razón se creó un tipo de memoria ROM conocida como PROM (programmable read-only memory). Los chips de PROM nuevos se pueden comprar a bajo precio y pueden ser programados con una herramienta especial llamada el programador. Los chips de PROM tienen una grilla igual al de la ROM, la diferencia es que en vez de utilizar diodos utilizan un fusible de níquel – cromio o de óxido de silicio en las intersecciones. El fusible permite el paso de carga hacia la fila y esta indica el valor de 1, inicialmente todos los fusibles se encuentran funcionando entonces el valor inicial de la PROM es 1. Para cambiar el valor de una celda a 0 se utiliza el programador el cual aplica un voltaje alto el cual rompe la conexión quemando el fusible. Este proceso se conoce como quemar la PROM. Las PROMs no pueden ser programadas si no una vez y son más frágiles que las ROMs, la electricidad estática puede facilmente hacer que los fusibles se quemen y cambiar el valor de la celda de 1 a 0. Figura 13. PROM EPROM: las memorias ROM y PROM tiene un inconveniente, solo pueden programarse una vez y esto a la largo sale costoso para los fabricante. Por ello se inventaron las memorias EPROM (Erasable programmable read-only memory) cuyos chips pueden ser reescritos varias veces si antes se borra el programa existente en la matriz de memoria. Una EPROM utiliza una matriz con una estructura de puerta aislada donde cada celda tiene dos transistores en cada intersección, cada transistor está separado del otro por una capa delgada de óxido. Uno de los transistores es conocido como floating gate o puerta flotante el cual no tiene ninguna conexión eléctrica y puede almacenar una carga eléctrica durante un periodo de tiempo indefinido y el otro como control gate o puerta de control el cual selecciona la fila para la programación de la puerta flotante. Figura 14. Estructura de una celda EPROM Los dos tipos fundamentales de memoria EPROM son las PROM borrables por rayos ultravioletas UV PROM y las PROM borrables eléctricamente EEPROM. En cualquiera de los dos casos las EPROMs son programadas eléctricamente utilizando un programador que provee unos niveles específicos de voltaje dependiendo de la EPROM que se vaya a utilizar. UV PROM: en las memorias UV PROM la puerta flotante de la matriz de programación es un FET el cual esta flotando dentro de un material óxido aislante. Cada chip de EPROM tiene una ventana con un cuarzo en el cual debe ser aplicada una radiación ultravioleta de alta intensidad para borrarla. Para borrar una UV PROM es necesario un equipo especial que emite una frecuencia específica de luz ultravioleta, en UV PROMs estándares lo mejor es hacerlo con luz UV a frecuencia de 253.7 hertz porque dicha frecuencia no penetra la mayoría de plásticos o vidrios. La carga positiva almacenada en la puerta se neutraliza después de un periodo de tiempo de entre unos minutos y una hora de exposición. El borrado de la UV PROM no es selectivo, esto significa que se borrará completamente. Si se deja durante largos periodos expuesta a la luz UV se daña y no se puede volver a programar. Para programarla se coloca en un equipo que realiza el Tunneling, el cual es utilizado para alterar la ubicación de los electrones en los transistores. Se aplica una carga eléctrica alrededor de los 10 o 13 voltios al transistor, los electrones excitados son enviados hacia la capa de óxido generando una carga negativa y de esta manera se eliminan los transistores de la puerta flotante. EEPROM: aunque las UV PROM son muy buenas es necesario un equipo algo costoso para su borrado. Por ello se creó las memorias EEPROM (Electrically erasable programmable read-only memory) las cuales eliminan algunas de las desventajas de las UV PROM. Las PROM borrables eléctricamente se pueden borrar y programar mediante impulsos eléctricos por esto el chip no tiene que ser removido para ser reescrito, no tiene que ser completamente borrado para cambiar solamente una porción de él y para cambiar el contenido no se necesita equipo adicional. Existen dos tipos de EEPROM uno en que la puerta flotante de la matriz de programación es un MOS y otro en que es un MNOS (metal nitride-oxide silicon), la aplicación de una tensión en la puerta de control permite la eliminación y el almacenamiento de la carga en la puerta flotante. Por lo tanto se puede borrar el valor de la celda seleccionada solamente, esto hace al sistema versátil pero algo lento, especialmente cuando se necesita poder cambiar la información rápidamente. Para programarla se coloca en un equipo que realiza el Tunneling, el cual es utilizado para alterar la ubicación de los electrones en los transistores. Se aplica una carga eléctrica alrededor de los 10 o 13 voltios al transistor, los electrones excitados son enviados hacia la capa de óxido generando una carga negativa y de esta manera se eliminan los transistores de la puerta flotante. Memorias RWM Las RWM (Read-Write Memory) son memorias de lectura-escritura en las que los datos se pueden escribir o leer en cualquier dirección seleccionada en cualquier orden. Cuando se escriben los datos en una determinada dirección de la RWM, los datos almacenados previamente son reemplazados por la nueva unidad de datos. Figura 15. La flecha señala la memoria RWM dentro del computador Las dos categorías de memorias RWM son las RAM estática (SRAM) y la RAM dinámica (DRAM). La SRAM es rápida y costosa y se utiliza para la memoria caché del procesador. La DRAM es lenta y menos costosa y se utiliza como el sistema de RAM típico del computador. SRAM: la SRAM (Static random access memory) utiliza varios transistores tipo MOS, típicamente 4 o 6 para cada celda y no utiliza condensadores. Mantiene los datos mientras le sea aplicado el voltaje de alimentación. Debido a que no es necesario efectuar ninguna acción (excepto la aplicación de energía) para retener los datos en éstos dispositivos, son llamadas memorias estáticas, también se le conoce como memoria volátil porque no retiene datos sin energía. Es utilizada cuando el tamaño de la memoria de lectura / escritura es relativamente pequeño. Figura 16. Celda típica de almacenamiento de una SRAM Los tipos básicos de las SRAM son las memorias SRAM asíncronas (ASRAM) y las SRAM síncronas de ráfaga (SB SRAM). ASRAM: una SRAM asíncrona es aquella en la que su funcionamiento no está sincronizado con un reloj del sistema. Por lo tanto no trabaja a la misma frecuencia que el procesador y al no estar sincronizados las operaciones de lectura y escritura son más lentas. SBSRAM: una SRAM síncrona está sincronizada con el reloj del sistema. Opera con la misma señal de reloj que el procesador, de modo que el procesador y la memoria están sincronizados para conseguir una operación más rápida. La operación en modo ráfaga permite a la memoria leer o escribir en hasta cuatro posiciones utilizando una única dirección. Cuando se enclava una dirección externa en el registro de direcciones, los dos bits menos significativos de la dirección, A0 y A1, se aplican al circuito de la lógica ráfaga. Éste produce una secuencia de cuatro direcciones internas añadiendo 00, 01, 10 y 11 a los dos bits de dirección menos significativos en sucesivos pulsos de reloj. La secuencia comienzo siempre con la dirección base, que es la dirección externa almacenada en el registro de registros. DRAM: la DRAM (Dynamic random access memory) tiene en sus celdas de memoria un par de transistores y condensadores que requieren un refresco constantes. Figura 17. Celda de una DRAM típica La ventaja de este tipo de celda es que es muy sencilla, lo que permite construir matrices de memoria mayores en un chip, a un costo de bit más bajo que el de las memorias estáticas. La desventaja es que el condensador de almacenamiento no retiene los datos sino por 2 o 4 ms, por lo que el contenido de la DRAM debe ser completamente reescrito. Esta operación de refresco requiere circuitería de memoria adicional y complica el funcionamiento de la DRAM, haciendo a la memoria más lenta. Otra desventaja es que necesita muchas terminales de dirección, que complican el manejo de los datos. Los tipos básicos de DRAM son la FPM DRAM, EDO DRAM, BEDO RAM, SDRAM, RDRAM, Credit Card Memory, PCMCIA Memory Card y VRAM. FPM DRAM: la FPM DRAM (Fast page mode dynamic random access memory) se basa en la probabilidad de que las siguientes direcciones de memoria a las que se haya que acceder se encuentran en la misma fila (en la misma página). Esto sucede un gran porcentaje de las veces. El modo FPM ahorra tiempo, con respecto al acceso aleatorio, porque en el modo FPM la dirección de fila se especifica una única vez para acceder a varias direcciones de memoria sucesivas, mientras que en el modo aleatorio puro, hay que especificar una dirección de fila para cada dirección de columna. Maneja una taza de transferencia máxima de 176 MB por segundo. EDO DRAM: la EDO RAM (Extended data-out dynamic random access memory) algunas veces denominada DRAM con modo hiperpágina, permite acceder a la siguiente dirección de columna antes de que el sistema externo acepte los datos válidos actuales, la idea es acelerar el tiempo de acceso. Es aproximadamente un 5% más rápida que la FPM, tiene una tasa de transferencia máxima de 264 MB por segundo. BEDO RAM: la BEDO RAM es una DRAM síncrona de ráfaga. La operación en modo ráfaga permite a la memoria leer o escribir en hasta cuatro posiciones utilizando una única dirección. Cuando se enclava una dirección externa en el registro de direcciones, los dos bits menos significativos de la dirección, A0 y A1, se aplican al circuito de la lógica ráfaga. Este produce una secuencia de cuatro direcciones internas añadiendo 00, 01, 10 y 11 a los dos bits de dirección menos significativos en sucesivos pulsos de reloj. La secuencia comienza siempre con la dirección base, que es la dirección externa almacenada en el registro de registros. SDRAM: la (Synchronous dynamic random access memory) incrementa su rendimiento utilizando el concepto de modo de ráfaga, para ello se ubica en la fila del bit que es preguntado y se mueve rápidamente por todas las columnas leyendo los bits de todas ellas. Usualmente los bits que necesita el procesador están ubicados secuencialmente, por lo tanto de esta manera se adelanta a las necesidades del procesador. La SDRAM es aproximadamente un 5% más rápida que la EDO RAM y es comúnmente utilizada en los computadores de escritorio. Tiene una taza de transferencia máxima de 528 MB por segundo. RDRAM: la (Rambus dynamic random access memory) es posterior a la memoria DRAM. Diseñada por Rambus la RDRAM utiliza el estándar Rambus in-line memory module (RIMM). Los chips de la RDRAM trabajan en paralelo alcanzando una velocidad de 800 MHz. Credit Card Memory: la Credit card memory contiene una memoria DRAM que se coloca en un compartimiento de los computadores de bolsillo. PCMCIA Memory Card: es otro tipo de módulo de memoria DRAM para computadores de bolsillo, las tarjetas de este tipo no son propietarias de ninguna compañía por lo tanto son compatibles con diversos sistemas desde que el ancho de bus le sea compatible. VRAM: la VideoRAM que también es conocida como multiport dynamic random access memory (MPDRAM), es un tipo de RAM utilizada en adaptadores de video o aceleradores de 3-D. La VRAM esta formada por la unión de una memoria RAM y una SAM. La cantidad de VRAM es un factor determinante en la resolución y en el grado de profundidad de los displays, en la creación de datos geométrico en 3-D y para dar textura a los mapas hechos digitalmente. Memorias FLASH Las memorias flash son memorias de lectura / escritura de alta densidad (capaces de almacenar gran cantidad de bits) no volátiles. La memoria “FLASH” (marca registrada por Intel Corporation) es utilizada para almacenar información de configuración para diversos sistemas tales como la tarjeta de video del computador, para almacenar el BIOS. En algunos computadores portátiles se usan en lugar de las unidades de disquete o de las unidades de disco duro de baja capacidad y también se encuentra en muchas otras aplicaciones para almacenar información que tan sólo se cambia esporádicamente. La memoria FLASH es un tipo de EEPROM. Tiene una grilla de columnas y filas que conforman celdas. Cada celda tiene dos transistores en cada intersección, cada transistor está separado del otro por una capa delgada de óxido, uno de los transistores es conocido como floating gate o puerta flotante y el otro como control gate o puerta de control. La puerta flotante solamente se une a la fila formando la palabra (wordline) a través de las puertas de control. Cuando los transistores se encuentran activos las celdas tiene el valor de 1. Para cambiar el valor a 0 es necesario efectuar el procedimiento llamado Fowler-Nordheim tunneling. Tunneling es utilizado para alterar la ubicación de los electrones en los transistores, se aplica una carga eléctrica alrededor de los 10 o 13 voltios al transistor, los electrones excitados son enviados hacia la capa de óxido generando una carga negativa. Esta carga negativa actúa como una barrera entre el control gate y el floating gate. Un dispositivo especial llamado cell sensor monitorea el nivel de flujo de carga que pasa a través del floating gate. Si el flujo es mayor al 50 % de la carga este toma el valor de 1, cuando es menor al 50% toma el valor de 0. Una EEPROM nueva tiene todos los gates abiertos, por lo tanto cada celda tiene el valor de 1. La ventaja que presenta es que se puede borrar y programar el chip completo o una sección determinada del chip llamada bloque. Hay varias razones por las que se debe utilizar una memoria flash: No es ruidosa Es de rápido acceso Es de tamaño pequeño Es liviana No tiene parte removibles. Algunos ejemplos de memoria flash son: CompactFlash: utilizada frecuentemente en cámaras digitales Figura 18. Tarjeta CompactFlash SmartMedia: utilizada frecuentemente en cámaras digitales Figura 19. Tarjeta SmartMedia Memory Stick: utilizada frecuentemente en cámaras digitales. PCMICIA (Personal Computer Memory Card International Association) tipo I y tipo II tarjetas de memoria: utilizadas en laptops. Y tarjetas de memoria de video para consolas de juego. Hay un tipo de flash que se conoce como Flash RAM el cual es un término genérico con que se denomina a la pequeña memoria que se utiliza en TVs, VCRs y radios de carro para almacenar la información de programación. Cuando estos sistemas se apagan el sistema utiliza una batería pequeña para refrescar dicha información o utiliza la batería del carro. El disco duro del computador utiliza una pequeña FlashRAM para recordar la configuración que tiene por default. EXPANSIÓN DE MEMORIAS SEMICONDUCTORAS Las memorias disponibles se pueden ampliar para incrementar la longitud de palabra (número de bits en cada dirección) o la capacidad de palabra (número de direcciones diferentes), o ambos. La expansión de memoria se consigue añadiendo el número apropiado de chips de memoria a los buses de dirección, datos y control. Expansión de la longitud de palabra Para aumentar la longitud de palabra de una memoria, el número de bits del bus de datos debe aumentarse. Ejemplo: utilizando dos memorias ROM de 4 bits de datos generar una memoria de 8 bits de datos. Figura 20. Expansión de la longitud de palabra Expansión de la capacidad de palabra Para aumentar la capacidad de palabra de una memoria, el número de bits del bus de direcciones debe aumentarse. Ejemplo: utilizando dos memorias RAM de 1M X 8 para formar una memoria de 2M X 8. Figura 21. Expansión de la capacidad de palabra Estándares en los diseños de las tarjetas El tipo de tarjetas y conectores utilizados para las memorias semiconductoras en los computadores de escritorio ha evolucionado en los últimos años. Los primeros tipos eran propietarios de diferentes fabricantes que solo podían funcionar con sus sistemas específicos, por lo tanto generaban incompatibilidad si se trataba de utilizar dicha memoria en dispositivos realizados por otro fabricante. Para solucionar dicho problema se crearon estándares en el diseño de las tarjetas de memoria. SIMM: el primer estándar creado fue el SIMM (single in-line memory module), estas tarjetas utilizan conectores de 30 pines y tienen un tamaño de 9 cm por 2 cm. En la mayoría de los computadores se debe instalar SIMMs en parejas de igual capacidad y velocidad. Esto es porque el ancho del bus es mayor al de una sola SIMM. Posteriormente las tarjetas de SIMM se hicieron de 11 cm por 2.5 cm y con 72 pines en los conectores, permitiendo aumentar el ancho de banda. Figura 22. Módulo de memoria tipo SIMM DIMM: debido a que aumentaban las exigencias de velocidad y ancho de banda, se creó un nuevo estándar, el DIMM (dual in-line memory module), con conectores de 168 pines y un tamaño de 14 cm por 2.5 cm. Las tarjetas DIMM permitían capacidades de 8 MB a 128 MB por módulo y podían ser instaladas sencillas o en parejas. Figura 23. Módulo de memoria tipo DIMM RIMM: el estándar RIMM (Rambus in-line memory module) es comparable en tamaño y configuración de pines con la DIMM pero utiliza un bus de memoria especial para incrementar la velocidad que se llama Rambus channel. SODIMM: varias compañías de computadores de bolsillo utilizan módulos de memoria propietarios, pero muchos utilizan memorias tipo SODIMM (small outline dual in-line memory module) las cuales son tarjetas pequeñas de 5 cm por 2.5 cm y que tienen 144 pines. La mayoría de los computadores Apple iMac las utilizan. Figura 24. Módulo de memoria tipo SODIMM TIPOS DE MEMORIAS MAGNÉTICAS Las memorias magnéticas se pueden clasificar de la siguiente manera: Figura 25. Tipos de memorias magnéticas Discos Duros Los discos duros fueron inventados en 1950, inicialmente tenían un diámetro de 20 pulgadas para almacenar solamente unos pocos mega bytes, son empleados por los computadores como dispositivo interno de almacenamiento masivo. Se llamaban discos fijos o discos Winchesters (nombre dado a los productos IBM) pero luego le cambiaron el nombre a discos duros para diferenciarlos de las unidades de disquete. Los discos duros son placas rígidas de aleación de aluminio o de una mezcla de vidrio y cerámica recubiertas con una capa magnética de alta precisión, se encuentran selladas herméticamente para mantener al disco libre de polvo. Figura 26. Vista posterior del drive del disco duro. Figura 27. Dentro del drive del disco duro Normalmente se apilan dos o más discos sobre un eje común, que hace que el conjunto gire a alta velocidad, cada disco se encuentra separado del otro para que pueda pasar entre ellos la cabeza de lectura escritura. Hay una cabeza de lectura escritura para cada cara del disco ya que los datos se gravan en ambas superficies del disco. El brazo accionador sincroniza todos los cabezales de lectura escritura para mantenerlos alineados. El mecanismo que mueve los brazos dentro del disco debe ser increíblemente rápido y preciso por ello se utiliza un motor lineal de alta velocidad. Debido a esto se puede mover a cualquier punto de la superficie de manera casi instantánea y puede recorrer 3.000 pulgadas de disco por segundo lo que equivale a 272 kph. Figura 28. Disco y brazo del disco duro Figura 29. En esta imagen se puede apreciar la separación entre los discos y las cabezas de lectura / escritura entre ellos. La cabeza de lectura escritura: el disco duro es un dispositivo de acceso aleatorio ya que se puede recuperar datos almacenados en cualquier lugar del disco en cualquier orden. La dirección o polarización de las partículas magnéticas sobre la superficie del disco se controla mediante la dirección de las líneas de flujo magnético producidas por la cabeza de escritura, según la dirección de un impulso de corriente en el devanado. Este flujo magnético magnetiza un pequeño punto de la superficie del disco en la dirección del campo magnético, y se mantiene en ese estado hasta que un nuevo flujo lo cambie de dirección. Cuando una cabeza de lectura pasa por una superficie magnetizada, los puntos magnetizados generan campos magnéticos en la cabeza de lectura, lo que provoca impulsos de voltaje en el devanado. La polaridad de estos impulsos depende de la dirección del punto magnetizado e indica si el bis almacenado es un 1 o un 0. A menudo las cabezas de lectura y de escritura se combinan en una sola unidad. Formato del disco duro: un disco duro está organizado en pistas y sectores. Cada pista está dividida en una serie de sectores y cada pista y sector tienen una dirección física que el sistema operativo utiliza para localizar un determinado registro de datos. La disposición de pistas y sectores en un disco se denomina formato. El conjunto de todas las pistas correspondientes de cada placa constituye lo que se conoce colectivamente como cilindros. PISTA SECTOR Figura 30. Pistas y sectores del disco Parámetros de rendimiento: 1. Tiempo de búsqueda: tiempo medio de realización de la búsqueda, varía entre siete ms y diecisiete ms dependiendo de la unidad. 2. Tiempo de latencia: es el tiempo que tarda el sector deseado en colocarse debajo de la cabeza, una vez que se ha posicionado en la pista deseada. El periodo de latencia depende de la velocidad constante de rotación del disco, las velocidades de rotación de disco son diferentes según la unidad de disco, típicamente son 3600 rpm, 4500 rpm, 5400 rpm, 7200 rpm y los más recientes alcanzan a girar a 10033 rpm. 3. Tiempo de acceso: es la suma del tiempo de acceso y el tiempo de latencia. Discos flexibles El nombre de disco flexibles se debe a que este tipo de discos está hecho de un material de poliéster flexibles, cubierto por ambas caras con una capa magnética. Figura 31. Disquete de 5.25 pulgadas y de 3.5 pulgadas Los discos flexibles o disquetes fueron inventados por Alan Shugart de la IBM en 1967. El primer disquete tenia un diámetro de ocho pulgadas, luego evolucionó a uno con un diámetro de 5.25 pulgadas que fue utilizado por primera vez en agosto de 1981 en el primer computador personal de la IBM. Los actuales disquetes son capaces de almacenar 1.44 Mbytes y tienen un diámetro de 3.5 pulgadas y disponen de una funda de plástico rígido. Una puerta con muelle cubre la ventana de acceso y permanece cerrada hasta que el disquete se introduce en la unidad. El disco dispone de una placa metálica con un agujero para centrar el disquete y otro para hacerlo rotar dentro de la funda protectora. Los discos flexibles se formatean en pistas y sectores de forma similar a los discos duros, excepto por el número de pistas y sectores. Los discos de 1.44 M tienen 80 pistas por cada lado y 18 sectores por pista. Figura 32. Pistas y sectores del disco ZIP La unidad de ZIP es un tipo de dispositivo de almacenamiento magnético extraíble. El cartucho del disco ZIP es un disco flexible incluido en una carcasa rígida aproximadamente del mismo tamaño que el disquete, aunque más grueso. Tiene una velocidad de giro de 3000 rpm lo que la hace más rápida que los disquetes y tiene una capacidad de almacenamiento de cien Mbytes. Figura 33 . Unidad de ZIP JAZ La unidad de JAZ es similar a la unidad de disco duro excepto en que las dos placas se encuentran en un cartucho extraíble protegido por un obturador a prueba de polvo. Los cartuchos JAZ están disponibles con capacidades de almacenamiento de 1 o 2 Gbytes. TIPOS DE MEMORIAS ÓPTICAS Las memorias ópticas se pueden clasificar de la siguiente manera: Figura 34. Tipos de memorias ópticas CD–ROM La memoria de solo lectura de disco compacto (compact disc read only) es un disco de 120 mm de diámetro con tres capas dispuestas en forma de sándwich, la capa inferior de plástico de policarbonato, una hoja delgada de aluminio para la reflectividad y una capa superior de laca para protección. Figura 35. Sección transversal del CD-ROM El disco CD-ROM se formatea con una única pista en forma de espiral, son sectores secuenciales de dos Kbytes y tiene una capacidad de 680 Mbytes. Los datos se graban en forma de agujeros microscópicos denominados muescas y el área plana que rodea a estos agujeros se denomina planicie. Las muescas se imprimen en la capa de plástico y no pueden borrarse. Un reproductor de CD-ROM lee los datos en la pista espiral mediante un haz de láser de infrarrojos de baja potencia. La luz reflejada desde una muesca tiene un desfase de 180o respecto a la luz reflejada desde las planicies. Cuando el disco gira un fotodiodo detecta la diferencia en la luz reflejada. El resultado es una serie de unos y ceros, que corresponden a la configuración de las muescas y de las planicies a lo largo de la pista. WORM Los discos WORM (write once read many) son un tipo de dispositivo de almacenamiento óptico en los que se puede escribir una sola vez, después de lo cual no se pueden borrar los datos, aunque sí se pueden leer muchas veces. Para escribir los datos se utiliza un haz láser de baja potencia, que crea agujeros microscópicos en la superficie del material. Los unos y los ceros quedan representados por las áreas en las que hay y no hay agujeros. CD–R Los CD-R son prácticamente un tipo de WORM, la diferencia es que el CD grabable permite múltiples sesiones de escritura en diferentes áreas del disco. El disco CD-R tiene una pista en forma de espiral donde es emplea un láser para quemar agujeros microscópicos en una superficie con tinte orgánico. Durante la lectura, por medio de un haz láser se calienta la superficie y los puntos quemados cambian de color y reflejan menos luz que las zonas no quemadas. Los datos no pueden borrarse una vez escritos. CD-RW El disco CD regrabable puede utilizarse para leer y escribir datos. Usualmente se utiliza un compuesto cristalino especial, el cual al calentarse a una cierta temperatura y luego enfriarse se vuelve cristalino, pero si se calienta a una temperatura superior, se funde y se vuelve amorfo al enfriarse. Para escribir datos el haz láser calienta el material hasta fundirlo dando lugar al estado amorfo. Las áreas amorfas reflejan menos luz que las áreas cristalinas permitiendo así la detección de unos y ceros. El material se puede borrar o sobrescribir calentando las zonas y así generar superficies amorfas o cristalinas. Figura 36. CD-RW DVD-ROM Originalmente las siglas significaban Digital Video Disk (video disco digital) pero, actualmente corresponde a Digital Versatile Disk. Los datos se pregraban en el disco igual que el CD-ROM, pero el tamaño de las muescas es menor por lo que permite almacenar más datos en una pista, adicionalmente almacena los datos por las dos caras. Algunos discos tienen múltiples capas de datos semitransparentes colocadas sobre las capas de datos principales, proporcionando capacidades de almacenamiento de hasta 17 Gbytes, para acceder a todas las capas hay que cambiar el enfoque del haz láser para pasar de una capa a otra. MEMORIAS HOLOGRÁFICAS Para incrementar las capacidades de almacenamiento, los científicos están inventando un nuevo sistema de almacenamiento óptico, llamado memoria holográfica, por medio del cual no solo se utiliza la superficie del área para almacenar, sino todo su volumen. El almacenamiento de datos en tres dimensiones permitirá almacenar más información en espacios pequeños y ofrece velocidades de transferencia menores. Figura 37. En un dispositivo de memoria holográfica, el haz láser se divide en dos y los dos haces resultantes interactúan con el medio cristalino para crear una página holográfica de datos. La memoria holográfica ofrece la posibilidad de almacenar un Terabyte de datos en un cubo de cristal. El científico Pieter J. van Heerden de la empresa Polaroid propuso por primera vez la idea de almacenamiento holográfico (en tres dimensiones) en 1960. Una década después los científicos de los Laboratorios RCA demostraron esta tecnología almacenando 500 hologramas en un cristal de hierro dopado conocido como cristal de lithium-niobate, y 550 hologramas de imágenes de alta resolución en un material polímero de alta sensibilidad a la luz. El desarrollo de tecnologías más económicas, como la de semiconductores y la magnética hizo que el desarrollo de la holografía se estancara. En la década pasada la agencia DARPA (Defense Advanced Research Projects Agency), la IBM y los laboratorios Lucent's Bell han reiniciado el desarrollo de la memoria holográfica. Los prototipos desarrollados por Lucent y la IBM difieren ligeramente pero ambos sistemas (HDSS) están basados en el mismo concepto. La ventaja de la memoria holográfica es que una página cualquiera de datos puede ser almacenada y leída en un solo tiempo. Cada página de datos es almacenada en un área diferente del cristal teniendo en cuenta un ángulo de referencia específico que utiliza el haz de luz para escribirla. Este mismo ángulo es usado por el haz de lectura para leer y reconstruir dicha página. Durante la reconstrucción el haz láser es difractado por el cristal para permitir la recreación de la página original almacenada. La pagina reconstruida es proyectada en el CCD de una cámara que la interpreta a formato digital y la envía al computador. EJERCICIO Conteste las siguientes preguntas. 1. ¿Qué tipos de conexión son comunes para todos los dispositivos de memoria? 2. ¿Cuál es la función de la terminal CE o CS en un componente de memoria? 3. ¿Cuál es la función de la terminal OE en un dispositivo de memoria? 4. ¿Cuál es la función de la terminal WE en una RWM? 5. Una memoria RWM tiene una terminal G. Una terminal S y otra W. ¿Para que se utilizan estas terminales en dicha memoria.? 6. ¿En qué se diferencia la memoria PROM de la ROM de máscara? 7. Después del borrado ¿todos lo bits de una EPROM típica son 1s o 0s? 8. Enumere los tipos de SRAM 9. ¿Qué es una memoria caché? 10. Explique en que se diferencia la SRAM y la DRAM 11. Describa la operación de refresco de una DRAM 12. Enumere cuatro tipos de DRAM 13. ¿Qué significa SIMM? 14. ¿Qué significa DIMM? 15. ¿Cuántas RAM de 16k X 1 se requieren para conseguir una memoria con una capacidad de palabra de 16K y una longitud de palabra de 8 bits? Dibújelas. 16. Enumere los principales dispositivos de almacenamiento magnético. 17. ¿Cómo está organizado un disco magnético? 18. Explique los tipos de almacenamiento óptico. BIBLIOGRAFÍA BREY, Barry B. Los Microprocesadores Intel : Arquitectura, programación e interfaz de los procesadores 8086/8088, 80186/80188, 80286, 80386, 80486, Pentium, Pentium Pro y Pentium II. 5 ed. México : Prentice Hall, 2001. ISBN 970-17-0424-X. FLOYD, Thomas L. Fundamentos de Sistemas Digitales. 7 ed. México : Prentice Hall, 2000. ISBN 0-13-080-850-4. GOMEZ, Juan Carlos. Investigación Temática para el desarrollo de módulos de enseñanza en el área de Arquitectura de Computadores Digitales : Capitulo 3, Sistemas de Memoria. Trabajo de grado de la Carrera de Ingeniería Electrónica de la Pontificia Universidad Javeriana. Santa fe de Bogotá, DC, Colombia, 1995. HILL, Frederick J.; PETERSON, Gerald R. Digital Systems : Hardware Organization and Design. 3 ed. New York, United States : John Wiley & Sons Inc, 1987. "How Caching Works". HowStuffWorks <http://www.howstuffworks.com>. by Guy Provost. HowStuffWorks, Inc., 2002. "How Virtual Memory". HowStuffWorks <http://www.howstuffworks.com>. by Jeff Tyson. HowStuffWorks, Inc., 2002. "How Computer Memory Works". HowStuffWorks <http://www.howstuffworks.com>. by Jeff Tyson. HowStuffWorks, Inc., 2002. "How Flash Memory Works". HowStuffWorks <http://www.howstuffworks.com>. by Jeff Tyson. HowStuffWorks, Inc., 2002. "How RAM Works". HowStuffWorks <http://www.howstuffworks.com>. by Jeff Tyson. HowStuffWorks, Inc., 2002. "How Floppy Disk Drives Work". HowStuffWorks <http://www.howstuffworks.com>. by Gary Brown. HowStuffWorks, Inc., 2002. "How CDs Work". HowStuffWorks <http://www.howstuffworks.com>. by Marshall Brain. HowStuffWorks, Inc., 2002. "How Holographic Memory Will Work". HowStuffWorks <http://www.howstuffworks.com>. by Kevin Bonsor. HowStuffWorks, Inc., 2002. STALLINGS, William. Organización y Arquitectura de Computadores. 4 ed. España : Prentice Hall, 1997.