Memoria de solo lectura
Romedit de componentes discretos
IBM utilizó el almacenamiento de solo lectura de condensadores (CROS) y el almacenamiento de solo lectura de transformadores (TROS) para almacenar microcódigo para los modelos más pequeños System/360, el 360/85 y los dos modelos iniciales System/370 (370/155 y 370/165). En algunos modelos también había un almacén de control grabable (WCS) para diagnósticos adicionales y soporte de emulación. La computadora de Guía Apollo usaba memoria de cuerda de núcleo, programada mediante el enhebrado de cables a través de núcleos magnéticos.,
ROMEdit de estado sólido
muchas consolas de juegos utilizan cartuchos ROM intercambiables, lo que permite que un sistema juegue varios juegos.
el tipo más simple de ROM de estado sólido es tan antiguo como la propia tecnología de semiconductores. Las puertas lógicas combinacionales se pueden unir manualmente para asignar la entrada de direcciones de n-bit a valores arbitrarios de la salida de datos de m-bit (una tabla de búsqueda). Con la invención del circuito integrado vino la máscara ROM., La ROM de máscara consiste en una cuadrícula de líneas de palabras (la entrada de dirección) y líneas de bits (la salida de datos), Unidas selectivamente con conmutadores de transistores, y puede representar una tabla de búsqueda arbitraria con un diseño físico regular y un retraso de propagación predecible.
en mask ROM, los datos están codificados físicamente en el circuito, por lo que solo se pueden programar durante la fabricación. Esto lleva a una serie de desventajas serias:
- solo es económico comprar ROM de máscara en grandes cantidades, ya que los usuarios deben contratar con una fundición para producir un diseño personalizado.,
- El tiempo de respuesta entre completar el diseño de una ROM de máscara y recibir el producto terminado es largo, por la misma razón.
- Mask ROM no es práctico para R&d trabajo ya que los diseñadores con frecuencia necesitan modificar el contenido de la memoria a medida que refinan un diseño.
- si un producto se envía con ROM de máscara defectuosa, la única manera de solucionarlo es retirar el producto y reemplazar físicamente la ROM en cada unidad enviada.
los acontecimientos posteriores han subsanado estas deficiencias., La memoria programable de solo lectura (PROM), inventada por Wen Tsing Chow en 1956, permitía a los usuarios programar su contenido exactamente una vez alterando físicamente su estructura con la aplicación de pulsos de alto voltaje. Esto solucionó los problemas 1 y 2 anteriores, ya que una empresa puede simplemente pedir un gran lote de chips de PROM frescos y programarlos con el contenido deseado a la conveniencia de sus diseñadores.,
el advenimiento del transistor de efecto de campo de óxido de metal–semiconductor (MOSFET), inventado en los Laboratorios Bell en 1959, permitió el uso práctico de transistores de óxido de metal–semiconductor (MOS) como elementos de almacenamiento de células de memoria en la memoria de semiconductores, una función previamente servida por núcleos magnéticos en la memoria de la computadora. En 1967, Dawon Kahng y Simon Sze de Bell Labs propusieron que la puerta flotante de un dispositivo semiconductor MOS podría usarse para la celda de una ROM reprogramable, lo que llevó a Dov Frohman de Intel a inventar la memoria de solo lectura programable borrable (EPROM) en 1971., La invención de 1971 de EPROM esencialmente resolvió el problema 3, ya que EPROM (a diferencia de PROM) se puede restablecer repetidamente a su estado no programado por exposición a luz ultravioleta fuerte.
Electrically erasable programmable read-only memory (EEPROM), desarrollado por Yasuo Tarui, Yutaka Hayashi y Kiyoko Naga en el laboratorio Electrotécnico en 1972, fue un largo camino para resolver el problema 4, ya que una EEPROM se puede programar en el lugar si el dispositivo que la contiene proporciona un medio para recibir el contenido del programa de una fuente externa (por ejemplo, una computadora personal a través de un cable serie)., La memoria Flash, inventada por Fujio Masuoka en Toshiba a principios de la década de 1980 y comercializada a finales de la década de 1980, es una forma de EEPROM que hace un uso muy eficiente del área del chip y se puede borrar y reprogramar miles de veces sin daños. Permite borrar y programar solo una parte específica del dispositivo, en lugar de todo el dispositivo. Esto se puede hacer a alta velocidad, de ahí el nombre «flash».
todas estas tecnologías mejoraron la flexibilidad de la ROM, pero a un costo significativo por chip, de modo que en grandes cantidades mask ROM seguiría siendo una opción económica durante muchos años., (La disminución del costo de los dispositivos reprogramables casi había eliminado el mercado de la máscara ROM para el año 2000.) Las tecnologías regrabables fueron concebidas como reemplazos para mask ROM.
el desarrollo más reciente es NAND flash, también inventado en Toshiba. Sus diseñadores rompieron explícitamente de la práctica pasada, afirmando claramente que «el objetivo de NAND flash es reemplazar los discos duros», en lugar del uso tradicional de ROM como una forma de almacenamiento primario no volátil., A partir de 2007, NAND ha logrado parcialmente este objetivo al ofrecer un rendimiento comparable a los discos duros, una mayor tolerancia a los golpes físicos, una miniaturización extrema (en forma de unidades flash USB y pequeñas tarjetas de memoria microSD, por ejemplo) y un consumo de energía mucho menor.,
Use for storing programsEdit
cada computadora con programa almacenado puede usar una forma de almacenamiento no volátil (es decir, almacenamiento que retiene sus datos cuando se elimina la energía) para almacenar el programa inicial que se ejecuta cuando el equipo está encendido o comienza la ejecución (un proceso conocido como bootstrapping, a menudo abreviado como «booting» o «booting up»). Del mismo modo, cada computadora no trivial necesita alguna forma de memoria mutable para registrar los cambios en su estado a medida que se ejecuta.,
Las formas de memoria de solo lectura se emplearon como almacenamiento no volátil para programas en la mayoría de las primeras computadoras de programas almacenados, como ENIAC después de 1948. (Hasta entonces no era una computadora de programa almacenado, ya que cada programa tenía que ser conectado manualmente a la máquina, lo que podía tomar días o semanas. La memoria de solo lectura era más fácil de implementar ya que solo necesitaba un mecanismo para leer los valores almacenados, y no para cambiarlos en el lugar, y por lo tanto podía implementarse con dispositivos electromecánicos muy crudos (ver ejemplos históricos a continuación)., Con el advenimiento de los circuitos integrados en la década de 1960, tanto la ROM como su contraparte mutable static RAM se implementaron como matrices de transistores en chips de silicio; sin embargo, una celda de memoria ROM podría implementarse utilizando menos transistores que una celda de memoria SRAM, ya que esta última necesita un pestillo (que comprende 5-20 transistores) para retener su contenido, mientras que una celda ROM podría consistir en la ausencia (0 lógico) o presencia (1 lógico) de un transistor que conecta una línea de bits a una línea de palabras. En consecuencia, la ROM podría implementarse a un menor costo por bit que la RAM durante muchos años.,
La mayoría de las computadoras domésticas de la década de 1980 almacenaban un intérprete básico o un sistema operativo en ROM, ya que otras formas de almacenamiento no volátil, como las unidades de disco magnético, eran demasiado costosas. Por ejemplo, el Commodore 64 incluía 64 KB de RAM y 20 KB de ROM contenía un intérprete básico y el «KERNAL» de su sistema operativo., Más tarde, las computadoras domésticas U de oficina como el IBM PC XT a menudo incluían unidades de disco magnético y grandes cantidades de RAM, lo que les permitía cargar sus sistemas operativos desde el disco a la RAM, con solo un núcleo de inicialización de hardware mínimo y un cargador de arranque restante en la ROM (conocido como BIOS en computadoras compatibles con IBM). Esta disposición permitió un sistema operativo más complejo y fácilmente actualizable.,
en PCs modernos, » ROM » se utiliza para almacenar el firmware básico de arranque para el procesador, así como los diversos firmware necesarios para controlar internamente dispositivos autónomos como tarjetas gráficas, Unidades de disco duro, unidades de estado sólido, unidades de disco óptico, pantallas TFT, etc. en el sistema. Hoy en día, muchas de estas memorias de «solo lectura», especialmente la BIOS/UEFI, a menudo se reemplazan con EEPROM o memoria Flash (ver más abajo), para permitir la reprogramación in situ en caso de que surja la necesidad de una actualización de firmware., Sin embargo, subsistemas simples y maduros (como el teclado o algunos controladores de comunicación en los circuitos integrados en la placa principal, por ejemplo) pueden emplear mask ROM u OTP (programable una sola vez).
ROM y tecnologías sucesoras como flash son frecuentes en los sistemas embebidos. Estos están en todo, desde robots industriales hasta electrodomésticos y Electrónica de consumo (reproductores de MP3, decodificadores, etc.).) todos los cuales están diseñados para funciones específicas, pero se basan en microprocesadores de propósito general., Con el software generalmente estrechamente acoplado al hardware, los cambios de programa rara vez son necesarios en dichos dispositivos (que generalmente carecen de discos duros por razones de costo, tamaño o consumo de energía). A partir de 2008, la mayoría de los productos utilizan Flash en lugar de máscara ROM, y muchos proporcionan algunos medios para conectarse a un PC para las actualizaciones de firmware; por ejemplo, un reproductor de audio digital puede ser actualizado para soportar un nuevo formato de archivo., Algunos aficionados han aprovechado esta flexibilidad para reprogramar productos de consumo para nuevos propósitos; por ejemplo, los proyectos iPodLinux y OpenWrt han permitido a los usuarios ejecutar distribuciones Linux con todas las funciones en sus reproductores MP3 y enrutadores inalámbricos, respectivamente.
ROM también es útil para el almacenamiento binario de datos criptográficos, ya que los hace difíciles de reemplazar, lo que puede ser deseable para mejorar la seguridad de la información.,
uso para almacenar datoseditar
dado que la ROM (al menos en forma de máscara cableada) no se puede modificar, solo es adecuada para almacenar datos que no se espera que necesiten modificación durante la vida útil del dispositivo. Con ese fin, ROM se ha utilizado en muchas computadoras para almacenar tablas de búsqueda para la evaluación de funciones matemáticas y lógicas (por ejemplo, una unidad de coma flotante podría tabular la función seno para facilitar un cálculo más rápido). Esto fue especialmente efectivo cuando las CPU eran lentas y la ROM era barata en comparación con la RAM.,
notablemente, los adaptadores de pantalla de los primeros ordenadores personales almacenaban tablas de caracteres de fuente con mapa de bits en la ROM. Esto generalmente significaba que la fuente de visualización de texto no se podía cambiar de forma interactiva. Este fue el caso de los adaptadores CGA y MDA disponibles con el IBM PC XT.
el uso de ROM para almacenar cantidades tan pequeñas de datos ha desaparecido casi por completo en las computadoras modernas de propósito general. Sin embargo, Nand Flash ha asumido un nuevo papel como medio de almacenamiento masivo o almacenamiento secundario de archivos.