2. 1 Introducción
• Con frecuencia se confunden los tipos memorias y sus funciones. En el
campo de la informática, se emplea la palabra memoria para referirse
comúnmente a la memoria RAM, pero existen muchos otros tipos de
memoria o soportes. Y es que en la actualidad, la memoria se ha
convertido en uno de los recursos básicos, teniendo en cuenta las
necesidades de las actuales aplicaciones software.
• Hoy por hoy, independientemente de la memoria de que disponga,
cuando un PLD típico deja la fábrica de IC, aún no está listo para una
función específica, sino que debe ser programado por el usuario para que
realice la función requerida en una aplicación particular.
• Es por eso, que se pretende en este documento, abordar las nociones
básicas relativas a las memorias programables por el usuario, así como
sus funciones para que el usuario poco iniciado comprenda el
funcionamiento del dispositivo hardware programable al que se enfrenta.
3. 1.1 Memorias Programables
• La memoria es un dispositivo que sirve para almacenar la información. En
los dispositivos de memoria se realizan dos tipos de operaciones: obtener
la información que hay almacenada (lectura) y guardar o almacenar
nueva información (escritura). En cualquier caso, nos centraremos en las
memorias no volátiles, que mantienen la información indefinidamente,
una vez grabadas permanecen. Dado que cualquier sistema
microprocesado requiere de al menos un mínimo de memoria no volátil
donde almacenar ya sea un sistema operativo, un programa de aplicación,
un lenguaje intérprete, o una simple rutina, es necesario utilizar un
dispositivo que preserve su información de manera al menos semi-
permanente.
• Pueden ser no regrabables, como la memoria ROM y PROM. Ambos tipos,
una vez grabadas no pueden volver a grabarse. Las memorias
regrabables por el contrario pueden modificar o regrabar la información
que contienen, como EPROM que permite regrabar pero sólo si se borra
todo el contenido anterior a través de radiaciones ultravioletas. EEPROM
igual, pero se puede borrar selectivamente a través de elevadas
corrientes eléctricas. FLASH es de características análogas a la EEPROM.
Aunque el proceso de reprogramación suele ser poco frecuente y
relativamente lento.
4. 1.1 Memorias Programables
• La memoria suele estar integrada en forma de circuitos integrados. La
calidad de estos chips es un factor determinante a la hora de determinar
su durabilidad y su tolerancia frente a fallos. Generalmente, la
programación de estos dispositivos consiste en la supresión de
determinadas conexiones realizadas mediante un diódo o un transistor
que actúan como fusibles.
• Aunque la velocidad de lectura relativa de la ROM ha ido variando con el
tiempo desde el año 2007, la memoria RAM sigue siendo más rápida que
la mayoría de las memorias ROM, por lo tanto el contenido de las ROM se
suele traspasar normalmente a la memoria RAM cuando se utiliza.
5. 2 ROM
• La ROM (Read-Only Memory), memoria de sólo lectura, forma parte del
grupo de componentes llamados dispositivos lógicos programables (PLD,
programmable logic devices), que emplean la información almacenada
para definir circuitos lógicos. La memoria ROM constituye lo que se ha
venido llamando firmware, es decir, el software metido físicamente en
hardware. Dispositivos que son capaces de proveer el medio físico para
almacenar esta información.
• Desarrollada por Toshiba, es el tipo más simple y de la misma antigüedad
que la propia tecnología semiconductora. Los ordenadores domésticos a
comienzos de los años 1980 venían con todo su sistema operativo en
ROM. La mayoría de los ordenadores personales contienen una cantidad
pequeña de ROM (algunos tantos miles de bytes) que salve programas
críticos tales como la BIOS. Además, las ROM se utilizan extensivamente
en calculadoras y dispositivos periféricos tales como impresoras láser.
6. 2 ROM
• El elevado coste del diseño de la máscara sólo hace aconsejable el empleo
de los microcontroladores con este tipo de memoria cuando se precisan
cantidades superiores a varios miles de unidades. Son memorias
perfectas para guardar microprogramas, sistemas operativos, tablas de
conversión, generación de caracteres etc.
• A pesar de la simplicidad de la ROM, los dispositivos reprogramables son
más flexibles y económicos, por lo cual las antiguas máscaras ROM no se
suelen encontrar en hardware producido a partir de 2007.
7. 2.1 Estructura
• Generalmente una ROM suele estar fabricada con transistores de
tecnología bipolar o con MOS para representar los dos estados lógicos (1
ó 0). Compuesta por una matriz de puertas AND fija, cuyas salidas (cada
bit) son conectadas, a través de un fusible, a una matriz de puertas OR
programable .
• Fig. 1. La figura muestra celdas ROM bipolar. La presencia de una unión
desde una línea de fila a la base de un transistor representa un ‘1’ en esa
posición. En las uniones fila/columna en las que no existe conexión de
base, las líneas de la columna permanecerán a ‘0’ cuando se direccione la
fila.
8. 2.1 Estructura
• Fig. 2. La figura muestra la organización interna de una memoria ROM.
9. 2.2 Programación
• La programación se desarrolla mediante el diseño de un negativo
fotográfico llamado máscara donde se especifican las conexiones internas
de la memoria. El contenido de las celdas de memoria se almacena
durante el proceso de fabricación para mantenerse después de forma
irrevocable, desde el instante en que el fabricante grabo las instrucciones
en el chip, por lo tanto la escritura de este tipo de memorias ocurre una
sola vez y queda grabado su contenido aunque se le retire la energía.
10. 3 PROM
• La PROM (Programmable Read-Only Memory), memoria de sólo lectura
programable, es una variación de la ROM manufactura como chips en
blanco en los cuales los datos pueden ser escritos una sola vez con un
dispositivo llamado programador de PROM mediante aplicación de pulsos
de alto voltaje, permiten ahorrándose así al usuario el alto costo de la
producción de la máscara.
• Un PROM es un chip de memoria en la cual el usuario puede salvar un
programa, pero una vez que se haya utilizado la PROM, no puede ser re-
usado para salvar algo más. Como las ROM, las PROMS son permanentes.
• Inventada por Wen Tsing Chow en 1956 en Nueva York, concebida a
petición de la Fuerza Aérea de los Estados Unidos, para conseguir una
forma más segura y flexible para almacenar las constantes de los
objetivos en la computadora digital. La patente y la tecnología asociadas
fueron mantenidas bajo secreto por varios años.
11. 3 PROM
• Las modernas implementaciones comerciales de las PROM basadas en
circuitos integrados, borrado por luz ultravioleta, y varias propiedades de
los transistores, aparecen unos 10 años después. Estas memorias son
utilizadas para grabar datos permanentes en cantidades menores a las
ROMs.
• La flexibilidad adicional que se obtiene con la PROM puede convertirse en
una desventaja si en la unidad PROM se programa un error que no se
puede corregir. Para superar esta desventaja, se desarrolló la EPROM.
12. 3.1 Estructura
• Fig. 3. La figura muestra la disposición interna de una celda de memoria
PROM y los fusibles correspondientes.
13. 3.2 Programación
• El proceso de programación de una PROM generalmente se realiza con un
equipo especial llamado quemador. Este equipo emplea un mecanismo de
interruptores electrónicos controlados por software que quema en las
diferentes celdas de memoria plicando la carga de la dirección en el bus
de direcciones, los datos en los buffers de entrada de datos y generar los
pulsos para fundir los fusibles del arreglo interno de la memoria.
• Es una memoria digital donde el valor de cada bit depende del estado de
un fusible (o antifusible), que puede ser quemado una sola vez. Una
PROM común se encuentra con todos los bits en valor 1 como valor por
defecto de las fábricas; el quemado de cada fusible, cambia el valor del
correspondiente bit a 0. La programación se realiza aplicando pulsos de
altos voltajes que no se encuentran durante operaciones normales (12 a
21 voltios).
14. 3.2 Programación
• Fig. 4. La figura muestra de forma esquemática la función del
programador de un PROM.
15. 4 EPROM
• La EPROM (Erasable Programmable Read-Only Memory), memoria de sólo
lectura programable y borrable, es un tipo especial de PROM
reprogramable desarrollada en 1971 que puede ser borrado exponiéndolo
a la luz ultravioleta.
• Tipo de chip de memoria no volátil inventado por el ingeniero Dov
Frohman. Una EPROM programada retiene sus datos durante diez o veinte
años, y se puede leer un número ilimitado de veces. Para evitar el
borrado accidental por la luz del sol, la ventana de borrado debe
permanecer cubierta.
• Las antiguas BIOS de los ordenadores personales eran frecuentemente
EPROM y la ventana de borrado estaba habitualmente cubierta por una
etiqueta que contenía el nombre del productor de la BIOS, su revisión y
una advertencia de copyright.
16. 4.1 Estructura
• La memoria EPROM, se compone de un arreglo de transistores MOSFET de
Canal N de compuerta aislada. Cada transistor tiene una compuerta
flotante de SiO2 (sin conexión eléctrica) que en estado normal se
encuentra apagado y almacena un 1 lógico. Las EPROMs también emplean
transistores de puerta dual o FAMOS (Floating-Gate Avalanche-Injection
Metal-Oxide Semiconductor) de cargas almacenadas, cada uno de los
cuales viene de fábrica sin carga, por lo que son leídos como 1 (por eso,
una EPROM sin grabar se lee como FF en todas sus celdas).
• Fig. 5. La figura muestra el transistor funcionando como celda de
memoria de una EPROM.
17. 4.1 Estructura
• Fig. 6. La figura muestra la apariencia física de una EPROM.
• Fig. 7. La figura muestra la primera EPROM desarrollada por Intel en
1702.
18. 4.2 Programación
• Estos dispositivos se basan en la modificación de la carga eléctrica
atrapada en la puerta de un transistor MOS. Se programan mediante un
dispositivo electrónico o chip programador que proporciona voltajes
superiores a los normalmente utilizados en los circuitos electrónicos (10 a
25 voltios) aplicados en un pin especial de la memoria durante un corto
plazo de tiempo (aproximadamente 50 ms, según el dispositivo), al
mismo tiempo se direcciona la posición de memoria y se pone la
información a las entradas de datos. Las celdas que reciben carga se leen
entonces como un 0. Este proceso puede tardar varios minutos
dependiendo de la capacidad de memoria. Los datos almacenados pueden
permanecer por un período aproximado de 10 años.
19. 4.2 Programación
• Una vez programada con la información pertinente, la EPROM es instalada
en el sistema correspondiente donde será usada como dispositivo de
lectura solamente. Eventualmente, ante la necesidad de realizar alguna
modificación en la información contenida o bien para ser utilizada en otra
aplicación, la EPROM es borrar solamente mediante exposición la luz
ultravioleta (con una longitud de onda de 2537 Angstroms). Esto es
debido a que los fotones de la luz excitan a los electrones de las celdas
provocando que se descarguen. Es por eso que es encapsulada con una
ventana transparente de cuarzo sobre la EPROM, a través de la cual se
puede ver el chip de silicio. El tiempo de borrado oscila entre 10 y 30
minutos, depende del fabricante de la memoria que se desee borrar. En
este tiempo todos sus bits se ponen a 1.
• Se debe aclarar que una EPROM no puede ser borrada parcial o
selectivamente; de ahí que por muy pequeña que fuese la eventual
modificación a realizar en su contenido, inevitablemente se deberá borrar
y reprogramar en su totalidad.
20. 5 EEPROM
• La EEPROM (Electrically Erasable Programmable Read-Only Memory),
memoria de sólo lectura eléctricamente programable y borrable, es un
tipo especial de PROM eléctricamente borrable y reprogramable
exponiéndolo a una carga a nivel de bytes. Inventada en 1983, supone
una gran flexibilidad, pero también una celda de memoria más compleja.
• Podemos encontrar este tipo de memorias en aplicaciones tales como los
receptores de televisión o magnetoscopios para memorizar los ajustes o
canales de recepción.
21. 5.1 Estructura
• Actualmente estas memorias se construyen con transistores de tecnología
MOS (Metal Oxide Silice) y MNOS (Metal Nitride-Oxide Silicon) Las celdas
difieren de la EPROM básicamente en la capa aislante alrededor de cada
compuerta flotante, la cual es más delgada y no es fotosensible.
• Además del transistor de puerta flotante, es preciso un segundo transistor
de selección. El tener dos transistores por celda hace que las memorias
sean de baja densidad y mayor coste, lo que hace no se disponga de tan
amplia variedad en el mercado.
22. 5.2 Programación
• La programación y borrado de estas memorias pueden realizarse sin la
necesidad de una fuente de luz UV ni unidad programadora de PROM. Es
importante destacar que las palabras almacenadas en memoria se pueden
reprogramar y borrar eléctricamente de forma individual. El tiempo de
borrado total se reduce a 10ms en el mismo circuito. Se puede reescribir
unas 1000 veces aproximadamente y sin necesidad de hacer un borrado
previo. Una ventaja adicional radica en que no necesitan una alta tensión
para el grabado, 5 voltios son suficientes.
23. 6 FLASH
• La memoria FLASH, inventada en 1984 por Toshiba, deriva de la EEPROM
y permite eliminar y reprogramar el contenido de la misma a velocidades
superiores a esta, en una misma operación mediante pulsos eléctricos
miles de veces sin sufrir ningún daño.
• Similar a la EEPROM, es decir, se puede programar y borrar
eléctricamente pero de menor costo de fabricación y más sencillo, con
modelos de capacidad equivalente a las EPROM y de alta densidad de
celdas (gran capacidad de almacenamiento de bits).
• Los usos se están incrementando rápidamente, ideal para docenas de
aplicaciones portátiles tales como cámaras digitales, PDA´s,
reproductores de música, teléfonos móviles, etc. Es por eso que se han
convertido en poco tiempo en una de las más populares tecnologías de
almacenamiento de datos.
• Sin embargo, todos los tipos de memoria FLASH sólo permiten un número
limitado de escrituras y borrados, dependiendo de la celda, la presión del
proceso de fabricación y del voltaje necesario para su borrado.
24. 6.1 Estructura
• Contiene una matriz de celdas con un transistor evolucionado con dos
puertas eon cada intersección. Este tipo de memoria está fabricado con
puertas lógicas NOR y NAND. Las celdas de memoria FLASH se
encuentran construidas por un solo transistor FAMOS de puerta apilada,
formado por una puerta de control y una puerta aislada.
• La compuerta aislada almacena carga eléctrica cuando se aplica una
tensión lo suficientemente alta en la puerta de control.
• De la misma manera que la memoria EPROM, cuando hay carga eléctrica
en la compuerta aislada, se almacena un 0, de lo contrario se almacena
un 1.
25. 6.1 Estructura
• Fig. 8. La figura muestra la estructura de una celda de memoria de una
FLASH.
26. 6.2 Programación
• Mientras la memoria FLASH se encuentra en funcionamiento se comporta
como las EPROM, la diferencia se encuentra en cómo se cargan y borran
los datos. Para tal efecto la memoria recibe una secuencia de comandos
predefinida que incluye algunas precauciones especiales destinadas a
evitar que se borre cualquier dato por error.
• Las operaciones básicas de una memoria FLASH son la programación, la
lectura y borrado:
Programación: se efectúa aplicando una tensión a cada una de las compuertas de control
correspondiente a las celdas en las que se desean almacenar 0.
Lectura: aplicando una tensión positiva a la compuerta de control de la celda de memoria, en
cuyo caso el estado lógico almacenado se deduce con base en el cambio de estado del transistor:
Si hay un 1, la tensión aplicada será lo suficiente para encender el transistor y hacer circular corriente del
drenador hacia la fuente.
Si hay un 0, la tensión aplicada no encenderá el transistor debido la carga eléctrica almacenada en la compuerta
aislada.
Borrado: liberación de las cargas eléctricas almacenadas en las compuertas aisladas de los
transistores aplicando una tensión lo suficientemente negativa como para desplazar las cargas.
27. 6.2 Programación
• Los comandos lectura/reset preparan la memoria para operaciones de
lectura, autoselección permite leer el código del fabricante y el tipo de
dispositivo, byte carga el programa dentro de la memoria, borrar sector
borra individualmente un sector de la memoria. Cuando un sector está
protegido de acciones de escritura o lectura no deseadas no se puede
realizar dicha operación aun aplicando los 5 voltios.
28. 7 Conclusiones
• Todas estas tecnologías mejoraron la versatilidad y flexibilidad de la ROM
aunque el costo por chip incrementaba. Por eso las máscaras ROM fueron
la solución económica durante bastantes años. Aun así, hay que tener en
cuenta que las nuevas tecnologías con más capacidad de modificación
estuvieron diseñadas para eliminar del mercado a las ROM y
reemplazarlas.
• Las ROM más modernas, como EPROM y EEPROM, efectivamente se
pueden borrar y volver a programar varias veces, aun siendo descritos
como "memoria de sólo lectura" (ROM). La razón de que se las continúe
llamando así es que el proceso de reprogramación en general es poco
frecuente, relativamente lento y, a menudo, no se permite la escritura en
lugares aleatorios de la memoria.
• No obstante, el uso de la ROM para almacenar grandes cantidades de
datos ha ido desapareciendo casi completamente en los ordenadores de
propósito general, mientras que la memoria Flash ha ido ocupando este
puesto.
29. 7 Conclusiones
• A pesar de que en la EEPROM se puede borrar de forma selectiva
cualquier byte, las memorias Flash son bastante más baratas debido a su
sencilla tecnología y fabricación con grandes cantidades de
almacenamiento teniendo en cuenta que también son más rápidas en
términos de programación y borrado.
• El futuro de la memoria flash es bastante alentador, ya que son
pequeñas, significativamente más baratas y flexibles. En la actualidad se
fabrican discos duros con memorias flash NAND de 32Gb con una
velocidad de 33,3Mb/s. El problema reside en que tiene un número
limitado de accesos. Sin embargo el 7 de enero de 2013 Kingston lanzó al
mercado una memoria flash con una capacidad de 1TB.