4ta memoria computador
TRANSCRIPT
1
MEMORIA DE COMPUTADOR
Memoria, también llamada memoria de ordenador, se refiere a componentes de un ordenador,
dispositivos y medios de grabación que retienen datos informáticos durante algún intervalo de tiempo. Las
memorias de computadora proporcionan una de las principales funciones de la computación moderna, la
retención de información. Es uno de los componentes fundamentales de todas las computadoras
modernas que, acoplados a una Unidad Central de Proceso (CPU por su acrónimo en inglés), implementa
lo fundamental del modelo de computadora de Von Neumann, usado desde los años 1940.
En la actualidad, memoria suele referirse a una forma de almacenamiento de estado sólido conocido como
Memoria RAM (memoria de acceso aleatorio, RAM por sus siglas en inglés Random Access Memory) y
otras veces se refiere a otras formas de almacenamiento rápido pero temporal. De forma similar, se
refiere a formas de almacenamiento masivo como Discos ópticos y tipos de almacenamiento magnético
como discos duros y otros tipos de almacenamiento más lentos que las memorias RAM, pero de naturaleza
más permanente. Estas distinciones contemporáneas son de ayuda porque son fundamentales para la
arquitectura de computadores en general.
Además, se refleja una diferencia técnica importante y significativa entre memoria y dispositivos de
almacenamiento masivo, que se ha ido diluyendo por el uso histórico de los términos "almacenamiento
primario" (a veces "almacenamiento principal"), para memorias de acceso aleatorio, y "almacenamiento
secundario" para dispositivos de almacenamiento masivo. Esto se explica en las siguientes secciones, en
las que el término tradicional "almacenamiento" se usa como subtítulo por conveniencia.
1. Memoria - Principios
El término memoria cubre mucho territorio, incluso cuando confinó al campo de la computadora. La
memoria es algo que sostiene datos, incluso un solo pedazo. Esa memoria puede tomar una variedad de
formas. Un sistema de almacenamiento binario, es el tipo usado por las computadoras de hoy, pudiendo
construirse con semiconductores del metal-óxido. No todas las formas de trabajo de memoria tienen igual
eficacia, pero el concepto es el mismo: contener todos pedazos en términos de información, en una forma
reconocible y utilizable. Algunas formas de memoria simplemente son más fáciles de reconocer y ser
manipulados por un microprocesador electrónico.
Al discutir las capacidades recordando de computadoras, los ingenieros normalmente distinguen entre la
memoria y almacenamiento. Aunque los dos permitieron a su computadora revocar detalles y datos, los
dos tienen propósitos diferentes y usan tecnologías diferentes y difieren en sus terminologías. Sin
embargo, los dos conceptos pueden distinguirse (y nombrado) de muchas maneras, el más útil es
denominarlos como memoria primaria y almacenamiento secundario.
2. Memoria primaria - Definición
El material que la mayoría de las personas llaman "memoria de la computadora" es específicamente en
funciones del almacenamiento primario de la computadora. Es decir, los volúmenes del sistema del
almacenamiento están en una forma que el microprocesador de la computadora puede acceder
inmediatamente, siempre está preparado para ser usado. El uso de la memoria, básicamente, depende de
la velocidad de electricidad (que puede ser casi la velocidad de luz). Es en realidad, la memoria usada por
2
el microprocesador de la computadora, que contiene los datos y código del programa, usados durante la
ejecución activa de programas (trabajo principal del microprocesador). Por esta razón, el almacenamiento
primario se llama a veces, memoria de trabajo.
El acceso aleatorio a memoria primaria, responde a lo que el microprocesador requiere. El
microprocesador debe acceder al valor requerido al azar. Por consiguiente, la mayoría de las personas se
refiere a la memoria del funcionamiento en sus computadoras como memoria de acceso aleatorio, o RAM,
aunque el término RAM tiene una definición más específica aplicada a tecnologías de memoria.
Independiente del nombre utilizado, el almacenamiento primario es en efecto la memoria a corto plazo de
su computadora. Es fácil ser accedido pero llega a ser limitado en capacidad, es menor en comparación a
otros tipos de almacenamiento.
El aspecto más importante del sistema del almacenamiento primario en la computadora es la velocidad de
acceso, aunque se quiere obtener el máximo rendimiento posible.
La necesidad para el almacenamiento primario puede no parecer algo obvio. La razón es puramente
velocidad. Cuando un microprocesador opera, necesita un apoyo constante del programa de instrucciones,
para ejecutar los datos indicados, por las operaciones, y manipulados mediante instrucciones. Si las
instrucciones estuvieran en el disco rígido, el microprocesador podría tener que esperar por cada byte a
ser encontrado antes de que pudiera llevar a cabo su funcionamiento. En un promedio (aproximado), esto
tomaría aproximadamente nueve milisegundos por cada instrucción. Los microprocesadores de hoy
pueden ejecutar instrucciones y acceder a datos aproximadamente veinte millones de tiempos más
rápidamente que eso.
3. Propósitos del almacenamiento
Los componentes fundamentales de las computadoras de propósito general son la unidad aritmético-
lógica, la unidad de control, espacio de almacenamiento y los dispositivos de entrada/salida. Si se elimina
el almacenamiento, el aparato sería una simple calculadora en lugar de una computadora. La habilidad
para almacenar las instrucciones que forman un programa de computadora, y la información que
manipulan las instrucciones es, lo que hace versátiles a las computadoras diseñadas según la arquitectura
de programas almacenados
Una computadora digital representa toda la información usando el sistema binario. Texto, números,
imágenes, sonido y casi cualquier otra forma de información puede ser transformada en una sucesión de
bits, o dígitos binarios, cada uno de los cuales tiene un valor de 1 ó 0. La unidad de almacenamiento más
común es el byte, igual a 8 bits. Una determinada información puede ser manipulada por cualquier
computadora cuyo espacio de almacenamiento es suficientemente grande como para que quepa el dato
correspondiente o la representación binaria de la información. Por ejemplo, una computadora con un
espacio de almacenamiento de ocho millones de bits, o un megabyte, puede ser usado para editar una
novela pequeña.
3
Se han inventado varias formas de almacenamiento basadas en diversos fenómenos naturales. No existen
ningún medio de almacenamiento de uso práctico universal y todas las formas de almacenamiento tienen
sus desventajas. Por tanto, un sistema informático contiene varios tipos de almacenamiento, cada uno con
su propósito individual, como se muestra en el diagrama.
4. Almacenamiento prioritario
La memoria primaria está directamente conectada a la unidad central de proceso de la computadora.
Debe estar presente para que la CPU funcione correctamente. El almacenamiento primario consiste en tres
tipos de almacenamiento:
Los registros del procesador son internos de la unidad central de proceso. Contienen información
que las unidades aritmético-lógicas necesitan llevar a la instrucción en ejecución. Técnicamente,
son los más rápidos de los almacenamientos de la computadora, siendo transistores de
conmutación integrados en el chip de silicio de la CPU que funcionan como "flip-flop"
electrónicos.
La memoria caché es un tipo especial de memoria interna usada en muchas unidades centrales
de proceso para mejorar su eficiencia o rendimiento. Parte de la información de la memoria
principal se duplica en la memoria caché. Comparada con los registros, la caché es ligeramente
más lenta pero de mayor capacidad. Sin embargo, es más rápida. Aunque de mucha menor
capacidad que la memoria principal. También es de uso común la memoria caché multi-nivel - la
"caché primaria" que es más pequeña, rápida y cercana al dispositivo de procesamiento; la
"caché secundaria" que es más grande y lenta, pero más rápida y mucho más pequeña que la
memoria principal.
La memoria principal contiene los programas en ejecución y los datos con que operan. La unidad
aritmético-lógica puede transferir información muy rápidamente entre un registro del procesador
y localizaciones del almacenamiento principal, también conocidas como "direcciones de
memoria". En las computadoras modernas se usan memorias de acceso aleatorio basadas en
electrónica del estado sólido, que está directamente conectada a la CPU a través de un "bus de
memoria" y de un "bus de datos". Al bus de memoria también se le llama bus de dirección o bus
frontal, (Front Side Bus) y ambos buses son "superautopistas" digitales de alta velocidad. Los
métodos de acceso y la velocidad son dos de las diferencias técnicas fundamentales entre
memoria y dispositivos de almacenamiento masivo.
5. Almacenamiento secundario, terciario y fuera de línea
La memoria secundaria requiere que la computadora use sus canales de entrada/salida para acceder a la
información y es usada para almacenamiento a largo plazo de información persistente. Sin embargo, la
mayoría de los sistemas operativos usan los dispositivos de almacenamiento secundario como área de
intercambio para incrementar artificialmente la cantidad aparente de memoria principal en la
computadora. A la memoria secundaria también se le llama "almacenamiento masivo".
4
Habitualmente, la memoria secundaria o de almacenamiento masivo es de mucha mayor capacidad que la
memoria primaria, pero también es mucho más lenta. En las computadoras modernas, los discos duros
suelen usarse como dispositivos de almacenamiento masivo. El tiempo necesario para acceder a un byte
de información dado almacenado en un disco duro es de alrededor de unos pocas milésimas de segundo
(milisegundos). En cambio, el tiempo que lleva acceder lo mismo en una memoria de acceso aleatorio se
mide en mil-millonésimas de segundo (nanosegundos). Esto ilustra cuan significativa es la diferencia de
velocidad que distingue las memorias de estado sólido de los dispositivos rotantes de almacenamiento
magnético: Los discos duros son del orden de un millón de veces más lentos que la memoria. Los
dispositivos rotantes de almacenamiento óptico (unidades de CD y DVD) son incluso más lentos que los
discos duros, aunque es probable que sus velocidades de acceso mejoren a la par que los avances
tecnológicos. Por lo tanto, el uso de la memoria virtual, que es cerca de millón de veces más lenta que
memoria “verdadera”, enlentece apreciablemente el funcionamiento de cualquier computadora. Muchos
sistemas operativos implementan la memoria virtual usando términos como memoria virtual o "fichero de
caché". La principal ventaja histórica de la memoria virtual era que era mucho más barata que la memoria
real. Esa ventaja es menos relevante hoy en día. Aun así, muchos sistemas operativos siguen
implementándola, a pesar de provocar un funcionamiento significativamente peor.
La memoria terciaria es un sistema donde un brazo robótico montará (conectará) o desmontará
(desconectará) un medio de almacenamiento masivo fuera de línea según lo pida el sistema operativo de
la computadora. La memoria terciaria se usa en el área del almacenamiento industrial, la computación
científica en grandes sistemas informáticos y redes empresariales. Este tipo de memoria es algo que los
usuarios de computadoras personales normales nunca ven de primera mano.
El almacenamiento fuera de línea es un sistema donde el medio de almacenamiento puede ser extraído
fácilmente del dispositivo de almacenamiento. Estos medios de almacenamiento suelen usarse para
transporte y archivo de datos. En computadoras modernas son de uso habitual para este propósito los
disketes, discos ópticos y las memorias flash, incluyendo las unidades USB. También hay discos duros USB
que se pueden conectar en caliente. Los dispositivos de almacenamiento fuera de línea usados en el
pasado son cintas magnéticas en muchos tamaños y formatos diferentes, y las baterías extraíbles de
discos Winchester.
6. Almacenamiento de red
El almacenamiento de red es cualquier tipo de almacenamiento de computadora que incluye el hecho de
acceder a una información a través de una red informática. Discutiblemente, el almacenamiento de red
permite centralizar el control de información en una organización y reducir la duplicidad de la información.
El almacenamiento en red incluye:
El almacenamiento asociado a red es una memoria secundaria o terciaria que reside en una
computadora a la que otra de éstas puede acceder a través de una red de área local, una red de
área extensa, una red privada virtual o, en el caso de almacenamientos de archivos en línea,
internet
5
Las redes de computadoras, son computadoras que no contienen dispositivos de almacenamiento
secundario. En su lugar, los documentos y otros datos son almacenados en un dispositivo de la
red.
7. Características de las memorias
La división entre primario, secundario, terciario, fuera de línea se basa en la jerarquía de memoria o
distancia desde la unidad central de proceso. Hay otras formas de caracterizar a los distintos tipos de
memoria.
7.1. Volatilidad de la información
La memoria volátil requiere energía constante para mantener la información almacenada. La
memoria volátil se suele usar solo en memorias primarias.
La memoria no volátil retendrá la información almacenada incluso si no recibe corriente eléctrica
constantemente. Se usa para almacenamientos a largo plazo y, por tanto, se usa en memorias
secundarias, terciarias y fuera de línea.
Memoria dinámica es una memoria volátil que además requiere que periódicamente se refresque
la información almacenada, o leída y reescrita sin modificaciones.
El almacenamiento primario de una computadora pierde su contenido una vez que el ordenador se apaga.
La interrupción en el suministro eléctrico define los plazos de las memorias.
La memoria volátil es, transitoria. No dura los tres años de la cuenta ni diez de existencia humana o los
quince minutos de fama. Sólo sobrevive con tal de que se mantenga la energía eléctrica. El sistema de
memoria principal de la computadora, es volátil.
La memoria no volátil es la que se espera almacene para siempre, al menos, permanezca en la unidad de
almacenamiento hasta que el usuario lo cambie o lo elimine.
La memoria de no volátil puede ser simulada, realizando backup normalmente impulsando sistemas de
tecnología de apoyo de energía. Una memoria volátil usada como no volátil, son los CMOS, que guarda
configuraciones de sistemas, utilizando una batería.
7.2. Habilidad para acceder a información no contigua
Acceso aleatorio significa que se puede acceder a cualquier localización de la memoria en
cualquier momento en el mismo intervalo de tiempo, normalmente pequeño.
Acceso secuencial significa que acceder a una unidad de información tomará un intervalo de
tiempo variable, dependiendo de la unidad de información que fue leída anteriormente. El
dispositivo puede necesitar buscar (posicionar correctamente el cabezal de lectura/escritura de
un disco), o dar vueltas (esperando a que la posición adecuada aparezca debajo del cabezal de
lectura/escritura en un medio que gira continuamente).
7.3. Habilidad para cambiar la información
6
Las memorias de lectura/escritura o memorias cambiables permiten que la información se
reescriba en cualquier momento. Una computadora sin algo de memoria de lectura/escritura
como memoria principal sería inútil para muchas tareas. Las computadoras modernas también
usan habitualmente memorias de lectura/escritura como memoria secundaria.
La memoria de solo lectura retiene la información almacenada en el momento de fabricarse y la
memoria de escritura única (WORM) permite que la información se escriba una sola vez en algún
momento tras la fabricación. También están las memorias inmutables, que se utilizan en
memorias terciarias y fuera de línea. Un ejemplo son los CD-ROMs.
Las memorias de escritura lenta y lectura rápida es una memoria de lectura/escritura que permite
que la información se reescriba múltiples veces pero con una velocidad de escritura mucho
menor que la de lectura. Un ejemplo son los CD-RW.
7.4. Direccionabilidad de la información
En la memoria de localización direccionable, cada unidad de información accesible
individualmente en la memoria se selecciona con su dirección de memoria numérica. En las
computadoras modernas, la memoria de localización direccionable se suele limitar a memorias
primarias, que se leen internamente por programas de computadora ya que la localización
direccionable es muy eficiente, pero difícil de usar para los humanos.
En las memorias de sistema de archivos, la información se divide en Archivos informáticos de
longitud variable y un fichero concreto se localiza en directorios y nombres de archivos legibles
por humanos. El dispositivo subyacente sigue siendo de localización direccionable, pero el
sistema operativo de la computadora proporciona la abstracción del sistema de archivos para que
la operación sea más entendible. En las computadoras modernas, las memorias secundarias,
terciarias y fuera de línea usan sistemas de archivos.
En las memorias de contenido direccionable (content-addressable memory), cada unidad de
información leíble individualmente se selecciona con un valor hash o un identificador corto sin
relación con la dirección de memoria en la que se almacena la información. La memoria de
contenido direccionable pueden ser construida usando software o hardware, siendo la opción
hardware la opción más rápida y cara.
8. Memoria de bancos
Cuando se limitaron las computadoras a unos kilobytes de sus microprocesadores, se dividieron las
memorias en bancos, donde cada uno, individualmente utiliza un rango de dirección del microprocesador.
Entonces, la memoria direccionable en un máximo, corresponde al producto del rango y el número de
bancos disponible.
El uso de varios módulos de memoria en el motherboards de la mayoría de las computadoras modernas,
no tiene nada que ver con bancos. En este contexto, un banco de memoria es cualquier bloque del
tamaño de memoria que se coloca con sus bits que emparejan el número de conexiones de los datos a su
microprocesador. Es decir, un banco de memoria para un Pentium 4 es un bloque de memoria de 64 bits
de ancho.
7
Los circuitos electrónicos que hacen acceso aleatorio a memoria (leer-escribir) se subdividen en dos
formas: dinámico y estático.
9. Capacidad de Memoria
Memorias de mayor capacidad son el resultado de la rápida evolución en tecnología de semiconductores.
Los primeros programas de ajedrez corrían en máquinas que utilizaban memorias de base magnética. A
inicios de 1970 aparecen las memorias realizadas en base a semiconductores utilizadas en la serie de
computadoras IBM 370. Así como la velocidad de los computadores se incrementó en un factor de
aproximadamente 100.000, la capacidad de memoria creció en una proporción similar. Este hecho es
particularmente importante en programas que utilizan tablas de transposición. A medida que aumenta la
velocidad de la computadora memorias de capacidad proporcionalmente mayor son necesarias para
mantener la cantidad extra de posiciones que son buscadas.
Así como se espera tener mayores incrementos en la capacidad de procesadores en los próximos años, no
es un abuso decir que la capacidad de memoria continuará creciendo de manera impresionante. Memorias
de mayor capacidad podrán ser utilizadas por programas con tablas de hash de mayor envergadura, las
cuales mantendrán la información en forma permanente.
10. Tecnologías, dispositivos y medios
10.1. Memorias Magnéticas
Las memorias magnéticas usan diferentes patrones de magnetización sobre una superficie cubierta con
una capa magnetizada para almacenar información. Las memorias magnéticas son no volátiles. Se llega a
la información usando uno o más cabezales de lectura/escritura. Como el cabezal de lectura/escritura solo
cubre una parte de la superficie, el almacenamiento magnético es de acceso secuencial y debe buscar, dar
vueltas o las dos cosas. En computadoras modernas, la superficie magnética será de alguno de estos
tipos:
Disco magnético
Disquete, usado para memoria fuera de línea
Disco duro, usado para memoria secundario
Cinta magnética, usada para memoria terciaria y fuera de línea.
En las primeras computadoras, el almacenamiento magnético se usaba también como memoria principal
en forma de memoria de tambor, memoria de núcleo, memoria en hilera de núcleo, memoria película
delgada, memoria de Twistor o memoria burbuja. Además, a diferencia de hoy, las cintas magnéticas se
solían usar como memoria secundaria.
10.2. Memoria de semiconductor
8
La memoria de semiconductor usa circuitos integrados basados en semiconductores para almacenar
información. Un chip de memoria de semiconductor puede contener millones de minúsculos transistores o
condensadores. Existen memorias de semiconductor de ambos tipos: volátiles y no volátiles. En las
computadoras modernas, la memoria principal consiste casi exclusivamente en memoria de semiconductor
volátil y dinámica, también conocida como memoria dinámica de acceso aleatorio. Con el cambio de siglo,
ha habido un crecimiento constante en el uso de un nuevo tipo de memoria de semiconductor no volátil
llamado memoria flash. Dicho crecimiento se ha dado, principalmente en el campo de las memorias fuera
de línea en computadoras domésticas. Las memorias de semiconductor no volátiles se están usando
también como memorias secundarias en varios dispositivos de electrónica avanzada y computadoras
especializadas.
10.3. Memorias de disco óptico
Las memorias en disco óptico almacenan información usando agujeros minúsculos grabados con un
láser en la superficie de un disco circular. La información se lee iluminando la superficie con un diodo láser
y observando la reflexión. Los discos ópticos son del no volátil y de acceso secuencial. Los siguientes
formatos son de uso común:
CD, CD-ROM, DVD: Memorias de simplemente solo lectura, usada par distribución masiva de
información digital (música, vídeo, programas informáticos).
CD-R, DVD-R, DVD+R: Memorias de escritura única usada como memoria terciaria y fuera de
línea.
CD-RW, DVD-RW, DVD+RW, DVD-RAM: Memoria de escritura lenta y lectura rápida usada como
memoria terciaria y fuera de línea.
Blu-ray: Formato de disco óptico pensado para almacenar vídeo de alta calidad y datos. Para su
desarrollo se creó la BDA, en la que se encuentran, entre otros, Sony o Phillips.
HD DVD
Se han propuesto los siguientes formatos:
HVD
Discos cambio de fase Dual
10.4. Memorias de discos magneto ópticos
Las Memorias de disco magneto óptico son un disco de memoria óptica donde la información se
almacena en el estado magnético de una superficie ferromagnética. La información se lee ópticamente y
se escribe combinando métodos magnéticos y ópticos. Las memorias de discos magneto ópticos son de
tipo no volátil, de acceso secuencial, de escritura lenta y lectura rápida. Se usa como memoria terciaria y
fuera de línea.
10.5. Otros métodos iniciales
9
La cinta de papel y las tarjetas perforadas se usaron para almacenar información para procesamiento
automático desde los 1980s, mucho antes de que existieran las computadoras de propósito general. La
información se grababa perforando agujeros en el papel o la tarjeta. La lectura se realizaba por sensores
eléctricos (más tarde ópticos) donde una localización particular podía estar agujereada o no.
Para almacenar información, los tubos Williams usaban un tubo de rayos catódicos y los tubos
Selectrón usaban un gran tubo de vacío. Estos dispositivos de memoria primaria tuvieron una corta vida
en el mercado ya que el tubo de Williams no era fiable y el tubo de Selectron era caro.
La memoria de línea de retardo usaba ondas sonoras en una sustancia como podía ser el Mercurio
para guardar información. La memoria de línea de retardo era una memoria dinámica volátil, ciclo
secuencial de lectura/escritura. Se usaba como memoria principal.
10.6. Otros métodos propuestos
La memoria de cambio de fase usa las fases de un material de cambio de fase para almacenar
información. Dicha información se lee observando la resistencia eléctrica variable del material. La memoria
de cambio de fase sería una memoria de lectura/escritura no volátil, de acceso aleatorio podría ser usada
como memoria primaria, secundaria y fuera de línea. La memoria holográfica almacena ópticamente la
información dentro de cristales o fotopolímeros. Las memorias holográficas pueden utilizar todo el
volumen del medio de almacenamiento, a diferencia de las memorias de discos ópticos, que están
limitadas a un pequeño número de superficies en capas. La memoria holográfica podría ser no volátil, de
acceso secuencial y tanto de escritura única como de lectura/escritura. Puede ser usada tanto como
memoria secundaria como fuera de línea.
11. MEMORIA RAM - Tipos
11.1. DRAM (Memoria RAM Dinámica)
La memoria DRAM (Dynamic Random Access Memory) es una memoria RAM electrónica construida
mediante condensadores. Los condensadores son capaces de almacenar un bit de información
almacenando una carga, por lo que necesita refrescarse cada cierto tiempo: el refresco de una memoria
RAM consiste en recargar los condensadores que tienen almacenado un uno para evitar que la información
se pierda por culpa de las fugas (de ahí lo de "Dynamic"). La memoria DRAM es más lenta que la memoria
SRAM, pero por el contrario es mucho más barata de fabricar y por ello es el tipo de memoria RAM más
comúnmente utilizada como memoria principal.
También se denomina DRAM a la memoria asíncrona de los primeros IBM-PC, su tiempo de refresco era
de 80 ó 70 ns (nanosegundos). Se utilizó en la época de los i386, en forma de módulos SIMM o DIMM.
Tipos de DRAM
11.1.1. FPM-RAM (Fast Page Mode RAM)
10
Memoria asíncrona, más rápida que la anterior (modo de Página Rápida) y con tiempos de acceso de 70 ó
60 ns. Esta memoria se encuentra instalada en muchos sistemas de la primera generación de Pentium.
Incorpora un sistema de paginado debido a que considera probable que el próximo dato a acceder este en
la misma columna, ganando tiempo en caso afirmativo.
Memoria asíncrona, esta memoria permite a la CPU acceder más rápido porque envía bloques enteros de
datos; con tiempos de acceso de 40 ó 30 ns.
11.1.2. BEDO-RAM (Burst Extended Data Output RAM)
Memoria asíncrona, variante de la anterior, es sensiblemente más rápida debido a que manda los datos en
ráfagas (burst).
Memoria síncrona (misma velocidad que el sistema), con tiempos de acceso de entre 25 y 10 ns y que se
presentan en módulos DIMM de 168 contactos. Fue utilizada en los Pentium 2, así como en los AMD K7.
Dependiendo de la frecuencia de trabajo se dividen en:
PC-66: la velocidad de bus de memoria es de 66 MHz, temporización de 15 ns y ofrece tasas de
transferencia de hasta 533 MiB/s.
PC-100: la velocidad de bus de memoria es de 125 MHz, temporización de 8 ns y ofrece tasas
de transferencia de hasta 800 MiB/s.
PC-133: la velocidad de bus de memoria es de 133 MHz, temporización de 7,5 ns y ofrece tasas
de transferencia de hasta 1.066 MiB/s.
11.1.3. SDR SDRAM (Single Data Rate Synchronous Dynamic Random Access Memory)
Memoria RAM dinámica de acceso síncrono de tasa de datos simple. Se comercializó en módulos de 64,
128, 256 y 512 MiB, y con frecuencias de reloj que oscilaban entre los 66 y los 133 MHz. Se popularizaron
con el nombre de SDRAM (muy poca gente sabía entonces que lo 'correcto' era decir SDR), de modo que
cuando aparecieron las DDR SDRAM, los nombres 'populares' de los dos tipos de tecnologías fueron
SDRAM y DDR, aunque las memorias DDR también son SDRAM.
La diferencia principal radica en que este tipo de memoria se conecta al reloj del sistema y está diseñada
para ser capaz de leer o escribir a un ciclo de reloj por acceso, es decir, sin estados de espera
intermedios. Este tipo de memoria incluye tecnología InterLeaving, que permite que la mitad del módulo
empiece un acceso mientras la otra mitad está terminando el anterior.
11
Cuenta con tiempos de acceso de entre 25 y 10 ns y que se presentan en módulos DIMM de 168
contactos en ordenadores de sobremesa y en módulos SO-DIMM de 72, 100, 144, o 200 contactos en el
caso de los ordenadores portátiles.
Dependiendo de la frecuencia de trabajo se dividen en:
PC-66: la velocidad de bus de memoria es de 66 MHz, temporización de 15 ns y ofrece tasas de
transferencia de hasta 533 MB/s.
PC-100: la velocidad de bus de memoria es de 125 MHz, temporización de 8 ns y ofrece tasas
de transferencia de hasta 800 MB/s.
PC-133: la velocidad de bus de memoria es de 133 MHz, temporización de 7,5 ns y ofrece tasas
de transferencia de hasta 1066 MB/s.
Está muy extendida la creencia de que se llama SDRAM a secas, y que la denominación SDR SDRAM es
para diferenciarla de la memoria DDR, pero no es así, simplemente se extendió muy rápido la
denominación incorrecta. El nombre correcto es SDR SDRAM ya que ambas (tanto la SDR como la DDR)
son Memorias Síncronas Dinámicas.
Para funcionar a toda su velocidad, una memoria SDR requiere un caché con velocidad suficiente como
para no desperdiciar su potencial.
11.1.4. DDR SDRAM (Double Data Rate SDRAM)
Memoria síncrona, envía los datos dos veces por cada ciclo de reloj. modo trabaja al doble de velocidad
del bus del sistema, sin necesidad de aumentar la frecuencia de reloj. Se presenta en módulos DIMM de
184 contactos. Del mismo modo que la SDR SDRAM, en función de la frecuencia del sistema se clasifican
en (según JEDEC):
PC-1600 ó DDR 200: funciona a 2,5 V, trabaja a 200 MHz, es decir, 100 MHz de bus de
memoria y ofrece tasas de transferencia de hasta 1,6 GiB/s (de ahí el nombre PC-1600). Este tipo
de memoria la utilizaron los Athlon XP de AMD, y los primeros Pentium 4.
PC-2100 ó DDR 266: funciona a 2,5 V, trabaja a 266 MHz, es decir, 133 MHz de bus de
memoria y ofrece tasas de transferencia de hasta 2,1 GiB/s (de ahí el nombre PC-2100).
PC-2700 ó DDR 333: funciona a 2,5 V, trabaja a 333 MHz, es decir, 166 MHz de bus de
memoria y ofrece tasas de transferencia de hasta 2,7 GiB/s (de ahí el nombre PC-2700).
PC-3200 ó DDR 400: funciona a 2,5 V, trabaja a 400 MHz, es decir, 200 MHz de bus de
memoria y ofrece tasas de transferencia de hasta 3,2 GiBs (de ahí el nombre PC-3200).
12
PC2-3200 ó DDR 2 400: funciona a 1,8 V, trabaja a 400 MHz, es decir, 200 MHz de bus de
memoria y ofrece tasas de transferencia de hasta 3,2 GiB/s (de ahí el nombre PC2-3200).
PC2-4200 ó DDR 2 533: funciona a 1,8 V, trabaja a 533 MHz, es decir, 266 MHz de bus de
memoria y ofrece tasas de transferencia de hasta 4,2 GiB/s (de ahí el nombre PC2-4200).
PC2-4800 ó DDR 2 600: funciona a 1,8 V, trabaja a 600 MHz, es decir, 300 MHz de bus de
memoria y ofrece tasas de transferencia de hasta 4,8 GiB/s (de ahí el nombre PC2-4800).
PC2-5300 ó DDR 2 667: funciona a 1,8 V, trabaja a 667 MHz, es decir, 333 MHz de bus de
memoria y ofrece tasas de transferencia de hasta 5,3 GiB/s (de ahí el nombre PC2-5300).
PC2-6400 ó DDR 2 800: funciona a 1,8 V, trabaja a 800 MHz, es decir, 400 MHz de bus de
memoria y ofrece tasas de transferencia de hasta 6,4 GiB/s (de ahí el nombre PC2-6400).
PC3-6400 ó DDR 3 800: funciona a 1,5 V, trabaja a 800 MHz, es decir, 400 MHz de bus de
memoria y ofrece tasas de transferencia de hasta 6,4 GiB/s (de ahí el nombre PC3-6400).
PC3-8500 ó DDR 3 1.066: funciona a 1,5 V, trabaja a 1.066 MHz, es decir, 533 MHz de bus de
memoria y ofrece tasas de transferencia de hasta 8,5 GiB/s (de ahí el nombre PC3-8500).
PC3-10600 ó DDR 3 1.333: funciona a 1,5 V, trabaja a 1.333 MHz, es decir, 667 MHz de bus
de memoria y ofrece tasas de transferencia de hasta 10,6 GiB/s (de ahí el nombre PC3-10600).
PC3-12800 ó DDR 3 1600: funciona a 1,5 V, trabaja a 1.600 MHz, es decir, 800 MHz de bus
de memoria y ofrece tasas de transferencia de hasta 12,8 GiB/s (de ahí el nombre PC3-12800).
También existen las especificaciones DDR 433, DDR 466, DDR 500, DDR 533 y DDR 600 pero
según muchos ensambladores es poco práctico utilizar DDR a más de 400 MHz, por lo que está
siendo sustituida por la revisión DDR 2 de la cual sólo se comercializan las versiones DDR 2 400,
DDR 2 433, DDR 2 466, DDR 2 500, DDR 2 533, DDR 2 600, DDR 2 667, DDR 2 800, DDR 2
1.000, DDR 2 1.066, DDR 2 1.150 y DDR 2 1.200.
11.1.5. RDRAM (Rambus DRAM)
Memoria de gama alta basada en un protocolo propietario creado por la empresa Rambus, lo cual obliga a
sus compradores a pagar royalties en concepto de uso. Esto ha hecho que el mercado se decante por la
memoria DDR de uso libre, excepto algunos servidores de grandes prestaciones (Cray) y la famosa
PlayStation 2. Se clasifica en:
o Rambus PC-600: se caracteriza por utilizar dos canales en vez de uno y ofrece unas
tasas de transferencia de 1,06 GiB/s por canal => 2,12 GiB/s a una frecuencia de 266
MHz.
13
o Rambus PC-700: igual que el anterior, trabaja a una frecuencia de 356 MHz y ofrece
unas tasas de transferencia de 1,42 GiB/s por canal => 2,84 GiB/s.
o Rambus PC-800: del mismo modo, trabaja a 400 MHz y ofrece unas tasas de
transferencia de 1,6 GiB/s por canal => 3,2 GiB/s.
11.1.6. ESDRAM (Enhanced SDRAM)
Esta memoria incluye una pequeña memoria estática en el interior del chip SDRAM. Con ello, las peticiones
de ciertos ser resueltas por esta rápida memoria, aumentando las prestaciones. Se basa en un principio
muy similar al de la memoria caché utilizada en los procesadores actuales.
12. Principios Básicos
El chip de memoria es un circuito integrado compuesto por millones de transistores y capacitores. Cada
transistor y capacitor están agrupados, en una celda de memoria DRAM, para crear un bit de datos. El
capacitor mantiene el bit de dato (un 0 o un 1), y el transistor actúa como un switch que permite que el
circuito de control en la memoria lea el capacitor o cambie su estado. En cada par de transistores y
capacitores, para almacenar un 1, el capacitor debe llenarse de electrones, para almacenar un 0 se debe
vaciar. El problema de los capacitores es que poseen una fuga de energía. En unos pocos milisegundos,
estos quedaran sin electrones. Por lo tanto para que no se produzca la fuga, la controladora de memoria
tiene que encargarse de recargar todos los capacitores que alojan un 1, leyendo la memoria y escribiendo
el dato nuevamente (operación que se repite miles de veces por segundo). Esta propiedad se denomina
“refresco” ya que la información eventualmente se perderá si los capacitores no son recargados
periódicamente. Inclusive la operación de refresco se produce con cada lectura y escritura en la memoria
DRAM. Los procedimientos de refresco toman lapsos de tiempo y reducen la velocidad de la memoria,
provocando la aparición de diferentes latencias. Las celdas de memoria están interconectadas e integradas
a una oblea de silicio, dispuestas en filas y columnas. La intersección de una fila y una columna constituye
una dirección de una celda de memoria (los bits se encuentran ordenados en forma similar a una grilla de
dos dimensiones). Cuando la dirección entra a la memoria desde el bus de direcciones hacia los pins de
sus chips, la dirección se divide en dos mitades, lo que provocara que las 2 direcciones (fila y columna)
sean identificadas en dos ciclos de reloj sucesivos.
La propiedad de “multiplexado” es fundamental en todas las memorias DRAM. Las celdas que están
integradas en un chip de memoria son muy pequeñas, pudiendo alojar muchas en un espacio reducido. A
mayor cantidad de celdas, mayor tamaño de direcciones se deben manejar y mayor cantidad de pins de
direcciones debe haber disponibles. La división de la dirección en dos partes responde a la necesidad de
reducir la cantidad de pins de direcciones que componen un chip de memoria y así no comprometer su
tamaño.
Tanto los comandos de escritura como de lectura provienen de señales del Northbridge. En una operación
de lectura, la fila de la celda seleccionada es activada cuando la dirección de memoria de la fila entra por
el bus de dirección hacia los pins de dirección, la señal RAS determina la dirección de la fila
correspondiente y la coloca en el “Row Address Latch” (dispositivo biestable que almacena la dirección), y
14
por último el decodificador de direcciones se encarga de seleccionar la fila especifica para activar los
amplificadores de señal. El amplificador de señal distingue las señales que representan un 0 o un 1, es
decir, la carga de los capacitores. Luego la dirección de la columna llega desde del bus de direcciones, la
señal CAS determina la dirección de la columna especifica y la coloca en el “Column Address Latch”, y
finalmente el decodificador de direcciones se encarga de seleccionar la columna especifica en donde el
dato se debe leer. Para concluir con el proceso, la señal CAS es necesaria para determinar la posibilidad de
salida del dato por el bus de datos, ya que cuando el valor de la fila y la columna es verificado por el
amplificador de señal, este puede salir por el bus de datos de nuevo al sistema. Como los amplificadores
de señal demoran unos lapsos de nanosegundos para operar, la dirección de la columna es requerida
después de la dirección de la fila. La pérdida de energía de los capacitores afecta la retención de
información. Por ello la memoria DRAM permite que las celdas se recarguen con cada operación de lectura
y/o escritura. Además existe un dispositivo que se encarga de programar refrescos periódicos sin interferir
con las tareas de lectura y escritura (proceso que se efectúa cada pocos milisegundos). Por ejemplo, si la
latencia de un chip de memoria es de 70ns (nanosegundos), significa que se tarda este lapso de tiempo
para realizar una operación de lectura y/o escritura. Para que una operación de lectura o escritura se
realice, las celdas de memoria cuentan con un soporte de circuitos y dispositivos especializados que
realizan diferentes funciones:
Identificación de cada fila y columna: RAS (Row Address Strobe) y CAS (Column Address Strobe). Dos
funciones importantes que se miden en ciclos de reloj y se utilizan para controlar la DRAM.
RAS: Señal proveniente del Northbridge que activa la dirección de la fila seleccionada.
CAS: Señal proveniente del Northbridge que activa la dirección de la columna seleccionada.
Indica una posición determinada de una columna física compuesta por una serie de transistores y
capacitores.
Controlador de refresco: Dispositivo encargado de programar los periodos de refresco cuando no se
realizan tareas de lectura y/o escritura, de manera que no disminuya el rendimiento de la memoria DRAM.
Controlador de lectura/escritura: (write enable) Cuando esta desactivado, se reconoce que no se debe
escribir sobre las celdas.
Amplificador de señal: (cense amplifier) Controlador que distingue las señales que representan un 0 o un
1, es decir, la carga de los capacitores. En una operación de escritura, el amplificador de señal puede
establecer el valor encontrado, llenando o vaciando de electrones el capacitor.
13. Latencias
Es el tiempo que transcurre entre el inicio de una petición de un dato en la memoria hasta que es
recuperado (llega al dispositivo). Es importante para medir la velocidad de la memoria. A menor latencia,
15
mayor velocidad de lectura. Los módulos de memoria tienen distintas especificaciones técnicas acerca de
las diferentes latencias que afectan la velocidad (medida en ciclos de reloj). Entre cualquier función de
lectura/escritura hay cuatro procesos importantes que determinan diferentes latencias.
14. SRAM (Memoria RAM Estática)
14.1. SRAM es el acrónimo de Static Random Access Memory (Memoria Estática de Acceso Aleatorio), un
tipo de memoria RAM (RAM estática) alternativa a la DRAM (RAM dinámica).
La memoria SRAM es muy cara, por lo que se suele usar con más frecuencia la memoria DRAM la cual es
más barata y más pequeña, pero también más lenta, además necesita periódicas señales de refresco para
que no pierda su contenido. La SRAM por su parte no necesita ser refrescada. Ambas memorias son
volátiles, queriendo decir con esto, que cuando se corta el suministro de corriente, los datos almacenados
se pierden.
Debido al alto coste de fabricación de la SRAM y a su alta velocidad, su uso más común está en la
memoria caché de los ordenadores.
14.1.1. Diseño
"Acceso aleatorio" significa que la localización de las posiciones en la memoria donde los datos serán
leídos o escritos, no sigue ningún orden. Cada bit en una SRAM es almacenado en cuatro transistores que
forman un biestable. Esta célula de almacenaje tiene dos estados estables, los cuales se utilizan para
denotar 0 ó 1. Dos transistores adicionales sirven para controlar el acceso a la célula de almacenaje
durante las operaciones de lectura o escritura.
Otra diferencia con la DRAM que contribuye a hacer que SRAM sea más rápido es que los chips
comerciales aceptan todos los bits de dirección a la vez. El tamaño de la SRAM con m líneas de dirección y
n líneas de datos es 2m palabras, o 2m*n bits.
14.1.2. Operaciones de SRAM
Una célula de SRAM tiene tres estados distintos en los que puede estar:
1. Reposo (standby): cuando no se realizan tareas de acceso al circuito,
2. Lectura (reading): cuando la información ha sido solicitada y
3. Escritura (writing): cuando se actualizan los contenidos.
14.2. Tipos de memoria SRAM
14.2.1. Async SRAM
16
Es asíncrona, esto es, independiente de la frecuencia de reloj y con tiempos de acceso entre 20 y 12
nanosegundos. Podemos encontrar este tipo de memoria en la caché de los antiguos i386, i486 y primeros
Pentium.
14.2.2. Sync SRAM
Todas las sincronizaciones se inician por el tiempo de subida/bajada del reloj. La dirección, dato
almacenado y otras señales de control se asocian a las señales del reloj.
Es la siguiente generación, capaz de sincronizarse con el procesador y con un tiempo de acceso entre 12 y
8,5 nanosegundos. Muy utilizada en sistemas con bus a 66 MHz.
15. MEMORIA ROM
ROM son las siglas de read-only memory, que significa "memoria de sólo lectura": una memoria de
semiconductor destinada a ser leída y no destructible, es decir, que no se puede escribir sobre ella y que
conserva intacta la información almacenada, incluso en el caso de que se interrumpa la corriente
(memoria no volátil). La ROM suele almacenar la configuración del sistema o el programa de arranque de
la computadora.
Las memorias de sólo lectura o ROM son utilizada como medio de almacenamiento de datos en las
computadoras. Debido a que no se puede escribir fácilmente, su uso principal reside en la distribución de
programas que están estrechamente ligados al soporte físico de la computadora, y que seguramente no
necesitarán actualización. Por ejemplo, una tarjeta gráfica puede realizar algunas funciones básicas a
través de los programas contenidos en la ROM.
Las computadoras domésticas a comienzos de los 80 venían con todo su sistema operativo en ROM. No
había otra alternativa razonable ya que las unidades de disco eran generalmente opcionales. La
actualización a una nueva versión significa usar un soldador o un grupo de interruptores DIP y reemplazar
el viejo chip de ROM por uno nuevo. En el año 2000 los sistemas operativos en general ya no van en
ROM. Todavía las computadoras pueden dejar algunos de sus programas en memoria ROM, pero incluso
en este caso, es más frecuente que vaya en memoria flash. Los teléfonos móviles y los asistentes
personales digitales (PDA) suelen tener programas en memoria ROM (o por lo menos en memoria flash).
Algunas de las consolas de videojuegos que utilizan programas basados en la memoria ROM son la Super
Nintendo, la Nintendo 64, la Mega Drive o la Game Boy. Estas memorias ROM, pegadas a cajas de plástico
aptas para ser utilizadas e introducidas repetidas veces, son conocidas como cartuchos. Por extensión la
palabra ROM puede referirse también a un archivo de datos que contenga una imagen del programa que
se distribuye normalmente en memoria ROM, como una copia de un cartucho de videojuego.
Una razón de que todavía se utilice la memoria ROM para almacenar datos es la velocidad ya que los
discos son más lentos. Aún más importante, no se puede leer un programa que es necesario para ejecutar
17
un disco desde el propio disco. Por lo tanto, la BIOS, o el sistema de arranque oportuno de la
computadora normalmente se encuentran en una memoria ROM.
La memoria RAM normalmente es más rápida para lectura que la mayoría de las memorias ROM, por lo
tanto el contenido ROM se suele traspasar normalmente a la memoria RAM cuando se utiliza.
16. Tipos de Memoria ROM
16.1. Memoria PROM
PROM D23128C en la plaqueta de una Sinclair ZX Spectrum.
PROM es el acrónimo de Programmable Read-Only Memory (ROM programable). 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. Por esto la memoria puede ser programada (pueden ser escritos los datos) una sola vez a través
de un dispositivo especial, un programador PROM. Estas memorias son utilizadas para grabar datos
permanentes en cantidades menores a las ROMs, o cuando los datos deben cambiar en muchos o todos
los casos y laniña se intruduce dentro de la camara!.
Pequeñas PROM han venido utilizándose como generadores de funciones, normalmente en conjunción con
un multiplexor. A veces se preferían a las ROM porque son bipolares, habitulamente Schottky,
consiguiendo mayores velocidades.
16.1.2. Programación
Una PROM común se encuentra con todos los bits en valor 1 como valor por defecto de fábrica; 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).
El término Read-only (sólo lectura) se refiere a que, a diferencia de otras memorias, los datos no pueden
ser cambiados (al menos por el usuario final).
16.1.3. Historia
La memoria PROM fue inventada en 1956 por Wen Tsing Chow, trabajando para la División Arma, de la
American Bosch Arma Corporation en Garden City, Nueva York. La invención fue 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 del MBI Atlas E/F.
18
La patente y la tecnología asociadas fueron mantenidas bajo secreto por varios años mientras el Atlas E/F
era el principal misil de Estados Unidos. El término "quemar", refiriéndose al proceso de grabar una PROM,
se encuentra también en la patente original, porque como parte de la implementación original debía
quemarse literalmente los diodos internos con un exceso de corriente para producir la discontinuidad del
circuito. Las primeras máquinas de programación de PROMs también fueron desarrolladas por ingenieros
de la División Arma bajo la dirección del Sr. Chow y fueron ubicados el laboratorio Arma de Garden City, y
en la jefatura del Comando estratégico aéreo de las Fuerzas Aéreas.
16.2. EPROM y EEPROM
Wen Tsing Chow y otros ingenieros de la División Arma continuaron con este suceso diseñando la primera
Memoria de Sólo Lectura No destruible' (Non-Destructive Read-Only Memory, NDRO) para
aplicarlo a misiles guiados, fundamentado en una base de doble abertura magnética. Estas memorias,
diseñadas originalmente para mantener constantes de objetivos, fueron utilizadas para sistemas de armas
de MBIs y MMRBMs.
La principal motivación para este invento fue que la Fuerza Aérea Estadounidense necesitaba reducir los
costes de la fabricación de plaquetas de objetivos basadas en PROMs que necesitaban cambios constantes
a medida que llegaba nueva información sobre objetivos del bloque de naciones comunistas. Como estas
memorias son borrables, programables y re-programables, constituyen la primera implementación de una
producción de memorias EPROM y EEPROM, de fabricación anterior al 1963.
Debe observarse que los términos modernos de estos dispositivos, PROM, EPROM y EEPROM, no fueron
creados hasta un tiempo después de que las aplicaciones de misiles guiados nucleares hayan estado
operacionales. Las implementaciones originales de Arma se refieren a las PROMs como "matriz de
almacenamiento de constantes"; y a las EPROMs y EEPROMs simplemente eran denominadas "memorias
NDRO".
Las modernas implementaciones comerciales de las PROM, EPROM y EEPROM basadas en circuitos
integrados, borrado por luz ultravioleta, y varias propiedades de los transistores, aparecen unos 10 años
después. Hasta que esas nuevas implementaciones fueron desarrolladas, fuera de aplicaciones militares,
era más barato fabricar memorias ROM que utilizar una de las nuevas caras tecnologías desarrolladas y
fabricados por los contratistas de misiles de las fuerzas aéreas.
De todas formas, en misiles, naves espaciales, satélites y otras aplicaciones de mucha confiabilidad,
siguen en uso muchos de los métodos de la implementación original de los '50.
Memoria EPROM
EPROM. La pequeña ventana de cuarzo recibe luz UV durante el borrado.
19
Una EPROM de 32KB (256Kbit).
Este microcontrolador 8749 almacena su programa en una EPROM interna.
EPROM son las siglas de Erasable Programmable Read-Only Memory (ROM borrable programable). Es un
tipo de chip de memoria ROM inventado por el ingeniero Dov Frohman que retiene los datos cuando la
fuente de energía se apaga. En otras palabras, es no volátil. Está formada por celdas de FAMOS (Floating
Gate Avalanche-Injection Metal-Oxide Semiconductor) o transistores de puerta flotante. Cada uno de ellos
viene de fábrica sin carga, por lo que es leído como un 1 (por eso una EPROM sin grabar se lee como FF
en todas sus celdas). Se programan mediante un dispositivo electrónico que proporciona voltajes
superiores a los normalmente utilizados en los circuitos electrónicos. Las celdas que reciben carga se leen
entonces como un 0. Una vez programada, una EPROM se puede borrar solamente mediante exposición a
una fuerte luz ultravioleta. Esto es debido a que los fotones de la luz excitan a los electrones de las celdas
provocando que se descarguen. Las EPROMs se reconocen fácilmente por una ventana transparente en la
parte alta del encapsulado, a través de la cual se puede ver el chip de silicio y que admite la luz
ultravioleta durante el borrado.
Como el cuarzo de la ventana es caro de fabricar, se introdujeron los chips OTP (one-time programmable,
programables una vez) : la única diferencia con la EPROM es la ausencia de la ventana de cuarzo, por lo
que no puede ser borrada. Las versiones OTP se fabrican para sustituir tanto a las EPROMs normales
como a las EPROMs incluidas en algunos microcontroladores. Estas últimas fueron siendo sustituidas
progresivamente por EEPROMs (para fabricación de pequeñas cantidades donde el coste no es lo
importante) y por memoria flash (en las de mayor tirada).
20
Una EPROM programada, retiene sus datos durante diez o veinte años, y se puede leer un número
ilimitado de veces. Para prevenir el borrado accidental por la luz del sol, la ventana de borrado debe
permanecer cubierta. Las antiguas BIOS de los ordenadores personales eran frecuentemente EPROMs y la
ventana de borrado estaba habitualmente cubiertas por una etiqueta que contenía el nombre del
productor de la BIOS, la revisión de la BIOS y una advertencia de copyright.
Las EPROM pueden venir en diferentes tamaños y capacidades. Así, para la familia 2700 tenemos
Tipo de EPROM Tamaño — bits Tamaño — bytes Longitud (hex) Última dirección
(hex)
1702, 1702A 2 Kibit 256 100 000FF
2704 4 Kibit 512 200 001FF
2708 8 Kibit 1 KiB 400 003FF
2716, 27C16 16 Kibit 2 KiB 800 007FF
2732, 27C32 32 Kibit 4 KiB 1000 00FFF
2764, 27C64 64 Kibit 8 KiB 2000 01FFF
27128, 27C128 128 Kibit 16 KiB 4000 03FFF
27256, 27C256 256 Kibit 32 KiB 8000 07FFF
27512, 27C512 512 Kibit 64 KiB 10000 0FFFF
27C010, 27C100 1 Mibit 128 KiB 20000 1FFFF
27C020 2 Mibit 256 KiB 40000 3FFFF
27C040 4 Mibit 512 KiB 80000 7FFFF
27C080 8 Mibit 1 MiB 100000 FFFFF
16.3. EEPROM son las siglas de electrically-erasable programmable read-only memory (ROM
programable y borrable eléctricamente), en español o castellano se suele referir al hablar como E²PROM y
en inglés "E-Squared-PROM". Es un tipo de memoria ROM que puede ser programado, borrado y
reprogramado eléctricamente, a diferencia de la EPROM que ha de borrarse mediante rayos ultravioletas.
Aunque una EEPROM puede ser leída un número ilimitado de veces, sólo puede ser borrada y
reprogramada entre 100.000 y 1.000.000 de veces.
Estos dispositivos suelen comunicarse mediante protocolos como I²C, SPI y Microwire. En otras ocasiones
se integra dentro de chips como microcontroladores y DSPs para lograr una mayor rapidez. La memoria
flash es una forma avanzada de EEPROM creadas por Dr. Fujio Masuoka mientras trabajaba para Toshiba
en 1984 y fueron presentadas en la Reunion de Aparatos Electrónicos de la IEEE de 1984. Intel vio el
potencial de la invención y en 1988 lanzó el primer chip comercial del tipo NOR.
21
17. FLASH MEMORY
La memoria flash es una forma evolucionada de la memoria EEPROM que permite que múltiples
posiciones de memoria sean escritas o borradas en una misma operación de programación mediante
impulsos eléctricos, frente a las anteriores que sólo permite escribir o borrar una única celda cada vez. Por
ello, flash permite funcionar a velocidades muy superiores cuando los sistemas emplean lectura y escritura
en diferentes puntos de esta memoria al mismo tiempo.
17.1. Características generales
Lector de tarjetas de memoria por USB.
Las memorias flash son de tipo no volátil, esto es, la información que almacena no se pierde en cuanto se
desconecta de la corriente, una característica muy valorada para la multitud de usos en los que se emplea
este tipo de memoria.
Los principales usos de este tipo de memorias son pequeños dispositivos basados en el uso de baterías
como teléfonos móviles, PDA, pequeños electrodomésticos, cámaras de fotos digitales, reproductores
portátiles de audio, etc.
Las capacidades de almacenamiento de estas tarjetas que integran memorias flash comenzaron en 128
MB pero actualmente se pueden encontrar en el mercado tarjetas de hasta 32 GB por parte de la empresa
Panasonic en formato SD.
La velocidad de transferencia de estas tarjetas, al igual que la capacidad de las mismas, se ha ido
incrementando progresivamente. La nueva generación de tarjetas permitirá velocidades de hasta 7-30
MB/s.
El costo de estas memorias es muy bajo respecto a otro tipo de memorias similares como EEPROM y
ofrece rendimientos y características muy superiores. Económicamente hablando, el precio en el mercado
ronda los 20 € para dispositivos con 512 MB de almacenamiento, aunque, evidentemente, se pueden
encontrar dispositivos exclusivamente de almacenamiento de unas pocas MBs por precios realmente bajos,
y de hasta 4000 € para la gama más alta y de mayores prestaciones. No obstante, el coste por MB en los
discos duros son muy inferiores a los que ofrece la memoria flash y, además los discos duros tienen una
capacidad muy superior a la de las memorias flash.
22
Ofrecen, además, características como gran resistencia a los golpes, bajo consumo y es muy silencioso, ya
que no contiene ni actuadores mecánicos ni partes móviles. Su pequeño tamaño también es un factor
determinante a la hora de escoger para un dispositivo portátil, así como su ligereza y versatilidad para
todos los usos hacia los que está orientado.
Sin embargo, todos los tipos de memoria flash sólo permiten un número limitado de escrituras y borrados,
generalmente entre 10.000 y un millón, dependiendo de la celda, de la precisión del proceso de
fabricación y del voltaje necesario para su borrado.
Este tipo de memoria está fabricado con puertas lógicas NOR y NAND para almacenar los 0’s ó 1’s
correspondientes. Actualmente (08-08-2005) hay una gran división entre los fabricantes de un tipo u otro,
especialmente a la hora de elegir un sistema de archivos para estas memorias. Sin embargo se comienzan
a desarrollar memorias basadas en ORNAND.
Los sistemas de archivos para estas memorias están en pleno desarrollo aunque ya en funcionamiento
como por ejemplo JFFS originalmente para NOR, evolucionado a JFFS2 para soportar además NAND o
YAFFS, ya en su segunda versión, para NAND. Sin embargo, en la práctica se emplea un sistema de
archivos FAT por compatibilidad, sobre todo en las tarjetas de memoria extraíble.
Otra característica de reciente aparición (30-9-2004) ha sido la resistencia térmica de algunos
encapsulados de tarjetas de memoria orientadas a las cámaras digitales de gama alta. Esto permite
funcionar en condiciones extremas de temperatura como desiertos o glaciares ya que el rango de
temperaturas soportado abarca desde los -25 ºC hasta los 85 ºC.
Las aplicaciones más habituales son:
El llavero USB que, además del almacenamiento, suelen incluir otros servicios como radio FM,
grabación de voz y, sobre todo como reproductores portátiles de MP3 y otros formatos de audio.
Las PC Card
Las tarjetas de memoria flash que son el sustituto del carrete en la fotografía digital, ya que en
las mismas se almacenan las fotos.
Existen varios estándares de encapsulados promocionados y fabricados por la mayoría de las
multinacionales dedicadas a la producción de hardware.
17.2. Funcionamiento
Flash, como tipo de EEPROM que es, contiene un array de celdas con un transistor evolucionado con dos
puertas en cada intersección. Tradicionalmente sólo almacenan un bit de información. Las nuevas
memorias flash, llamadas también dispositivos de celdas multi-nivel, pueden almacenar más de un bit por
celda variando el número de electrones que almacenan.
Estas memorias están basadas en el transistor FAMOS (Floating Gate Avalanche-Injection Metal Oxide
Semiconductor) que es, esencialmente, un transistor NMOS con un conductor (basado en un óxido
23
metálico) adicional entre la puerta de control (CG – Control Gate) y los terminales fuente/drenador
contenidos en otra puerta (FG – Floating Gate) o bien que rodea a FG y es quien contiene los electrones
que almacenan la información.
17.3. Memoria flash de tipo NOR
En las memorias flash de tipo NOR, cuando los electrones se encuentran en FG, modifican (prácticamente
anulan) el campo eléctrico que generaría CG en caso de estar activo. De esta forma, dependiendo de si la
celda está a 1 ó a 0, el campo eléctrico de la celda existe o no. Entonces, cuando se lee la celda poniendo
un determinado voltaje en CG, la corriente eléctrica fluye o no en función del voltaje almacenado en la
celda. La presencia/ausencia de corriente se detecta e interpreta como un 1 ó un 0, reproduciendo así el
dato almacenado. En los dispositivos de celda multi-nivel, se detecta la intensidad de la corriente para
controlar el número de electrones almacenados en FG e interpretarlos adecuadamente.
Para programar una celda de tipo NOR (asignar un valor determinado) se permite el paso de la corriente
desde el terminal fuente al terminal sumidero, entonces se coloca en CG un voltaje alto para absorber los
electrones y retenerlos en el campo eléctrico que genera. Este proceso se llama hot-electron injection.
Para borrar (poner a “1”, el estado natural del transistor) el contenido de una celda, expulsar estos
electrones, se emplea la técnica de Fowler-Nordheim tunnelling, un proceso de tunelado mecánico –
cuántico. Esto es, aplicar un voltaje inverso bastante alto al empleado para atraer a los electrones,
convirtiendo al transistor en una pistola de electrones que permite, abriendo el terminal sumidero, que los
electrones abandonen el mismo. Este proceso es el que provoca el deterioro de las celdas, al aplicar sobre
un conductor tan delgado un voltaje tan alto.
Cabe destacar que las memorias flash están subdividas en bloques (en ocasiones llamados sectores) y por
lo tanto, para el borrado, se limpian bloques enteros para agilizar el proceso, ya que es la parte más lenta
del proceso. Por esta razón, las memorias flash son mucho más rápidas que las EEPROM convencionales,
ya que borran byte a byte. No obstante, para reescribir un dato es necesario limpiar el bloque primero
para después reescribir su contenido.
17.4. Memorias flash de tipo NAND
Las memorias flash basadas en puertas lógicas NAND funcionan de forma ligeramente diferente: usan un
túnel de inyección para la escritura y para el borrado un túnel de ‘soltado’. Las memorias basadas en
NAND tienen, además de la evidente base en otro tipo de puertas, un coste bastante inferior, unas diez
veces de más resistencia a las operaciones pero sólo permiten acceso secuencial (más orientado a
dispositivos de almacenamiento masivo), frente a las memorias flash basadas en NOR que permiten
lectura de acceso aleatorio. Sin embargo, han sido las NAND las que han permitido la expansión de este
tipo de memoria, ya que el mecanismo de borrado es más sencillo (aunque también se borre por bloques)
lo que ha proporcionado una base más rentable para la creación de dispositivos de tipo tarjeta de
memoria. Las populares memorias USB o también llamadas Pendrives, utilizan memorias flash de tipo
NAND.
24
17.5. Comparación de memorias flash basadas en NOR y NAND
Para comparar estos tipos de memoria se consideran los diferentes aspectos de las memorias
tradicionalmente valorados.
La densidad de almacenamiento de los chips es actualmente bastante mayor en las memorias
NAND.
El coste de NOR es mucho mayor.
El acceso NOR es aleatorio para lectura y orientado a bloques para su modificación. Sin embargo,
NAND ofrece tan solo acceso directo para los bloques y lectura secuencial dentro de los mismos.
En la escritura de NOR podemos llegar a modificar un solo bit. Esto destaca con la limitada
reprogramación de las NAND que deben modificar bloques o palabras completas.
La velocidad de lectura es muy superior en NOR (50-100 ns) frente a NAND (10 µs de la
búsqueda de la página + 50 ns por byte).
La velocidad de escritura para NOR es de 5 µs por byte frente a 200 µs por página en NAND.
La velocidad de borrado para NOR es de 1 s por bloque de 64 KB frente a los 2 ms por bloque de
16 KB en NAND.
La fiabilidad de los dispositivos basados en NOR es realmente muy alta, es relativamente inmune
a la corrupción de datos y tampoco tiene bloques erróneos frente a la escasa fiabilidad de los
sistemas NAND que requieren corrección de datos y existe la posibilidad de que queden bloques
marcados como erróneos e inservibles.
En resumen, los sistemas basados en NAND son más baratos y rápidos pero carecen de una fiabilidad que
los haga eficiente, lo que demuestra la necesidad imperiosa de un buen sistema de archivos. Dependiendo
de qué sea lo que se busque, merecerá la pena decantarse por uno u otro tipo.
17.6. Sistemas de archivos para Memorias flash
Diseñar un sistema de archivos eficiente para las memorias flash se ha convertido en una carrera
vertiginosa y compleja, ya que, aunque ambos (NOR y NAND) son tipos de memoria flash, tienen
características muy diferentes entre sí a la hora de acceder a esos datos. Esto es porque un sistema de
ficheros que trabaje con memorias de tipo NOR incorpora varios mecanismos innecesarios para NAND y, a
su vez, NAND requiere mecanismos adicionales, innecesarios para gestionar la memoria de tipo NOR.
Un ejemplo podría ser un recolector de basura. Esta herramienta está condicionada por el rendimiento de
las funciones de borrado que, en el caso de NOR es muy lento y, además, un recolector de basura NOR
requiere una complejidad relativa bastante alta y limita las opciones de diseño del sistema de archivos.
Comparándolo con los sistemas NAND, que borran mucho más rápidamente, estas limitaciones no tienen
sentido.
Otra de las grandes diferencias entre estos sistemas es el uso de bloques erróneos que pueden existir en
NAND pero no tienen sentido en los sistemas NOR que garantizan la integridad. El tamaño que deben
25
manejar unos y otros sistemas también difiere sensiblemente y por lo tanto es otro factor a tener en
cuenta. Se deberá diseñar estos sistemas en función de la orientación que se le quiera dar al sistema
Los dos sistemas de ficheros que se disputan el liderazgo para la organización interna de las memorias
flash son JFFS (Journaling Flash File System) y YAFFS (Yet Another Flash File System), ExFAT es la opción
de Microsoft.
17.7. Antecedentes de la memoria flash
Las memorias han evolucionado mucho desde los comienzos del mundo de la computación. Conviene
recordar los tipos de memorias de semiconductores empleadas como memoria principal y unas ligeras
pinceladas sobre cada una de ellas para enmarcar las memorias flash dentro de su contexto.
Organizando estos tipos de memoria conviene destacar tres categorías si las clasificamos en función de las
operaciones que podemos realizar sobre ellas, es decir, memorias de sólo lectura, memorias de sobre todo
lectura y memorias de lectura/escritura.
Memorias de sólo lectura.
o ROM: (Read Only Memory): Se usan principalmente en microprogramación de sistemas.
Los fabricantes las suelen emplear cuando producen componentes de forma masiva.
o PROM: (Programmable Read Only Memory): El proceso de escritura es electrónico. Se
puede grabar posteriormente a la fabricación del chip, a diferencia de las anteriores que
se graba durante la fabricación. Permite una única grabación y es más cara que la ROM.
Memorias de sobre todo lectura.
o EPROM (Erasable Programmable Read Only Memory): Se puede escribir varias veces de
forma eléctrica, sin embargo, el borrado de los contenidos es completo y a través de la
exposición a rayos ultravioletas (de esto que suelen tener una pequeña ‘ventanita’ en el
chip).
o EEPROM (Electrically Erasable Programmable Read Only Memory): Se puede borrar
selectivamente byte a byte con corriente eléctrica. Es más cara que la EPROM.
o Memoria flash: Está basada en las memorias EEPROM pero permite el borrado bloque
a bloque y es más barata y densa.
Memorias de Lectura/Escritura (RAM)
o DRAM (Dynamic Random Access Memory): Los datos se almacenan como en la carga de
un condensador. Tiende a descargarse y, por lo tanto, es necesario un proceso de
refresco periódico. Son más simples y baratas que las SRAM.
o SRAM (Static Random Access Memory): Los datos se almacenan formando biestables,
por lo que no requiere refresco. Igual que DRAM es volátil. Son más rápidas que las
DRAM y más caras.
17.8. Historia de la memoria flash
La historia de la memoria flash siempre ha estado muy vinculada con el avance del resto de las
tecnologías a las que presta sus servicios como routers, módems, BIOS de los PCs, wireless, etc. Fue Fujio
26
Masuoka en 1984 cuando inventó este tipo de memoria como evolución de las EEPROM existentes por
aquel entonces (Trabajador perteneciente a Toshiba). Intel intentó atribuirse la creación de esta aunque
sin éxito. Este último comercializó la primera memoria flash
Entre los años 1994 y 1998, se desarrollaron los principales tipos de memoria que conocemos hoy, como
la SmartMedia o la CompactFlash. La tecnología pronto planteó aplicaciones en otros campos. En 1998, la
compañía Rio comercializó el primer ‘Walkman’ sin piezas móviles aprovechando el modo de
funcionamiento de SmartMedia. Era el sueño de todo deportista que hubiera sufrido los saltos de un
diskman en el bolsillo.
En 1994 SanDisk comenzó a comercializar tarjetas de memoria (CompactFlash) basadas en estos circuitos,
y desde entonces la evolución ha llegado a pequeños dispositivos de mano de la electrónica de consumo
como reproductores de MP3 portátiles, tarjetas de memoria para vídeo consolas, capacidad de
almacenamiento para las PC Card que nos permiten conectar a redes inalámbricas y un largo etcétera,
incluso llegando a la aeronáutica espacial. El espectro es grande.
17.9. Futuro
El futuro del mundo de la memoria flash es bastante alentador, ya que se tiende a la ubicuidad de las
computadoras y electrodomésticos inteligentes e integrados y, por ello, la demanda de memorias
pequeñas, baratas y flexibles seguirá en alza hasta que aparezcan nuevos sistemas que lo superen tanto
en características como en coste y, al menos en apariencia, no es factible ni siquiera a medio plazo ya que
la miniaturización y densidad de las memorias flash está todavía lejos de alcanzar niveles preocupantes
desde el punto de vista físico.
El desarrollo de las memorias flash es, en comparación con otros tipos de memoria sorprendentemente
rápido tanto en capacidad como en velocidad y prestaciones. Sin embargo, los estándares de
comunicación de estas memorias, de especial forma en la comunicación con los PCs es notablemente
inferior, lo que puede retrasar los avances conseguidos.
La apuesta de gigantes de la informática de consumo como AMD y Fujitsu en formar nuevas empresas
dedicadas exclusivamente a este tipo de memorias como Spansion en julio de 2003 auguran fuertes
inversiones en investigación, desarrollo e innovación en un mercado que en 2005 sigue creciendo en un
mercado que ya registró en 2004 un crecimiento asombroso hasta los 15.000 millones de dólares
(después de haber superado la burbuja tecnológica del llamado boom punto com) según el analista de la
industria Gartner, avala todas estas ideas.
Es curioso que esta nueva empresa, concretamente, esté dando la vuelta a la tortilla respecto a las
velocidades con una técnica tan sencilla en la forma como compleja en el fondo de combinar los dos tipos
de tecnologías reinantes en el mundo de las memorias flash en tan poco tiempo. Sin duda se están
invirtiendo muchos esfuerzos de todo tipo en este punto.
Sin embargo, la memoria flash se seguirá especializando fuertemente, aprovechando las características de
cada tipo de memoria para funciones concretas. Supongamos una Arquitectura Harvard para un pequeño
27
dispositivo como un PDA; la memoria de instrucciones estaría compuesta por una memoria de tipo
ORNAND (empleando la tecnología MirrorBit de segunda generación) dedicada a los programas del
sistema, esto ofrecería velocidades sostenidas de hasta 150 MB/s de lectura en modo ráfaga según la
compañía con un costo energético ínfimo y que implementa una seguridad por hardware realmente
avanzada; para la memoria de datos podríamos emplear sistemas basados en puertas NAND de alta
capacidad a un precio realmente asequible. Sólo quedaría reducir el consumo de los potentes
procesadores para PC actuales y dispondríamos de un sistema de muy reducidas dimensiones con unas
prestaciones que hoy en día sería la envidia de la mayoría de los ordenadores de sobremesa. Y no queda
mucho tiempo hasta que estos sistemas tomen, con un esfuerzo redoblado, las calles.
Cualquier dispositivo con datos críticos empleará las tecnologías basadas en NOR u ORNAND si tenemos
en cuenta que un fallo puede hacer inservible un terminal de telefonía móvil o un sistema médico por
llegar a un caso extremo. Sin embargo, la electrónica de consumo personal seguirá apostando por las
memorias basadas en NAND por su inmensamente reducido costo y gran capacidad, como los
reproductores portátiles de MP3 o ya, incluso, reproductores de DVDs portátiles. La reducción del voltaje
empleado (actualmente en 1,8 V la más reducida), además de un menor consumo, permitirá alargar la
vida útil de estos dispositivos sensiblemente. Con todo, los nuevos retos serán los problemas que sufren
hoy en día los procesadores por su miniaturización y altas frecuencias de reloj de los microprocesadores.
Los sistemas de ficheros para memorias flash, con proyectos disponibles mediante CVS (Concurrent
Version System) y código abierto permiten un desarrollo realmente rápido, como es el caso de YAFFS2,
que, incluso, ha conseguido varios patrocinadores y hay empresas realmente interesadas en un proyecto
de esta envergadura.
La integración con sistemas de wireless permitirá unas condiciones propicias para una mayor integración y
ubicuidad de los dispositivos digitales, convirtiendo el mundo que nos rodea en el sueño de muchos desde
la década de 1980. Pero no sólo eso, la Agencia Espacial Brasileña, por citar una agencia espacial, ya se
ha interesado oficialmente en este tipo de memorias para integrarla en sus diseños; la NASA ya lo hizo y
demostró en Marte su funcionamiento en el Spirit (satélite de la NASA, gemelo de Opportunity), donde se
almacenaban incorrectamente las órdenes como bien se puede recordar. Esto sólo es el principio. Y más
cerca de lo que creemos. Intel asegura que el 90% de los PCs, cerca del 90% de los móviles, el 50% de
los módems, etc. en 1997 ya contaban con este tipo de memorias.
En la actualidad TDK que están fabricando discos duros con memorias flash NAND de 32 Gb con un
tamaño similar al de un disco duro de 2.5 pulgadas, similares a los discos duros de los portátiles con una
velocidad de 33.3 Mb/s. El problema de este disco duro es que, al contrario de los discos duros
convencionales, tiene un número limitado de accesos. Samsung también ha desarrollado memorias NAND
de hasta 32 Gb