Download Memorias

Document related concepts
no text concepts found
Transcript
Tecnología Electrónica
3º Ingeniero Aeronáutico
Memorias
Mª Ángeles Martín Prats
Introducción
ƒ Memoria es la parte de un sistema que almacena
datos binarios en grandes cantidades.
ƒ Memorias semiconductoras, magnéticas y
ópticas.
ƒ Memorias de almacenamiento masivo: baratas y
lentas. Ejemplo: discos duros.
ƒ Memorias de acceso rápido: caras y rápidas.
Ejemplo: memorias semiconductoras o de
estado sólido.
ƒ Las memorias semiconductoras están formadas
por matrices de elementos de almacenamiento
que pueden ser latches o condensadores.
Conceptos básicos
ƒ Bit: unidad menor de datos binarios
ƒ Byte: unidad de 8 bits. El byte se puede dividir
en 2 unidades de 4 bits: nibbles
ƒ Palabra: unidad completa de información (1 ó
más bytes).
ƒ Algunas memorias almacenan datos en grupos
de 9 bits (1 byte + 1 bit de paridad)
Matriz de memoria semiconductora
ƒ Memorias formadas por matrices de celdas.
ƒ Posición celda (fila y columna): dirección de unidad de
datos.
ƒ Cada celda de memoria puede almacenar un 1 ó un 0.
ƒ A partir de celda básica se construyen estructuras
complejas de bajo coste unitario.
ƒ Una memoria se identifica por el número de palabras que
puede almacenar. Capacidad de memoria: número total de
unidades de datos que es capaz de almacenar.
Operación escritura/lectura: coloca/extrae datos en una posición específica de
memoria, a través del bus de datos.
ƒ Bus de datos bidireccional (datos hacia o desde la memoria).
ƒ El número de líneas del bus de direcciones depende de la
capacidad de la memoria.
Ejemplo:
Un código de dirección de 15 bits puede seleccionar 32768 (215)
posiciones en la memoria.
En ordenadores personales, un bus de direcciones de 32 bits
puede seleccionar 232 posiciones.
Memoria Ideal
Capaz de optimizar los siguientes parámetros:
– Densidad.
– No volatilidad.
– Bajo coste.
– Almacenamiento de los datos.
– Tiempo de almacenamiento
Ejemplo: Memoria de 4 bits
ƒ
ƒ
ƒ
24 celdas de memoria.
a0, a1: las dos líneas menos
significativas de la
dirección.
Ponen a nivel alto una de
las líneas de salida del
decodificador.
a2, a3: las dos líneas más
significativas de la
dirección.
Se conecta al buffer de
salida 1 sóla de las 4
celdas seleccionadas con
el decodificador.
La señal selección permite obtener el
valor del bit de salida para conectar la
memoria a un bus
D
e
c
o
d
i
f
i
c
a
d
o
r
Esquema de memoria
2m x 4
ƒ Memoria 2m x 4
formada por
agrupación de
memorias 2m x 1
ƒ Palabra de varios
bits de salida
ƒ Señal selección
común.
Clasificación memorias
ƒ Memorias no volátiles:
– ROM.
– PROM.
– EPROM.
– EEPROM.
– Flash.
ƒ Memorias volátiles:
– RAM estática (SRAM).
– RAM dinámica (DRAM).
Introducción memorias no volátiles
ƒ La información no se pierde aún cuando desconectemos su
alimentación.
ƒ Interesante par establecer condiciones iniciales en el
encendido en sistemas digitales, actuar como memoria de
programa o almacenar tablas de datos.
ƒ La celda básica de memoria caracteriza cada tipo de
memoria.
ƒ Las celdas se organizan en una matriz con igual número de
filas que de columnas.
ƒ El número de direcciones necesarias para acceder a
cualquier elemento de una memoria genérica de m celdas
es
n ≥ log2 m
Dirección ai, i ∈ (o, n-1), n: número de líneas
Memorias ROM
ƒ ROM (Read-Only Memory): memorias
de sólo lectura que se programan
mediante máscaras
el contenido de
las celdas de memoria se almacena
durante el proceso de fabricación y se
mantiene irrevocable.
ƒ Alta densidad (celda básica con
estructura muy sencilla).
ƒ No volátiles.
ƒ Coste bajo.
ƒ Sólo lectura.
ROM 8K X 8
213=8192
Técnicas de fabricación de memorias ROM
a) Matriz de diodos:
Presencia diodo
Ausencia diodo
se almacena “1” lógico
se almacena “0” lógico
Inconveniente: todos lo diodos de una fila conducen, cargando la salida del decodificador
Técnicas de fabricación de memorias ROM
a) Matriz de transistores MOS (nMOS):
Inconveniente: retardos producidos por capacidades parásitas
Cronograma de acceso en lectura a
memoria ROM
Tiempo máximo desde la aplicación de la
dirección hasta la aparición de los datos
Memorias PROM
ƒ PROM (Programmable Read-Only Memory): memorias
de sólo lectura que se programan empleando equipo
programador en el laboratorio
ƒ Inicialmente todas las posiciones tienen un “1” lógico
y desde PC se puede cambiar a “0” rompiendo fusible
ƒ Programables sólo una vez
ƒ Iguales prestaciones que la memoria ROM con
salvedad proceso y costo fabricación
Memorias EPROM
ƒ EPROM (Erasable Programmable Read-Only Memory):
memorias de sólo lectura que se programan
empleando equipo programador
ƒ Borrables mediante luz ultravioleta, pero no
eléctricamente
ƒ Emplea transistor FAMOS (Floating Gate Avalancheinjection MOS transistors): transistor de puerta dual
Celda EPROM de transistores
FAMOS
Al direccionar la celda el transistor conduce
Se borra memoria eliminado carga
en puerta flotante mediante luz
ultravioleta.
Tiempo borrado: 20-30 minutos.
Inviable la reprogramación en
placa.
En el proceso de fabricación se ha
inyectado carga en la puerta flotante
(sobretensión entre G y D)
Memorias EPROM
Ventana de
desprogramación
Desprogramador
por UV
Memoria EPROM
Programador
Memorias EEPROM
ƒ EEPROM (Electrical Erasable Programmable Read-Only
Memory).
ƒ Memorias no volátiles y eléctricamente borrables a nivel
de bytes.
ƒ Más flexibilidad, pero celdas más complejas.
ƒ Utiliza transistor de almacenamiento FAMOS y un
transistor de selección. 2 transistores por celda.
ƒ Menor densidad y mayor coste.
ƒ Tiempo de programación: 157 μs – 625 μs
ƒ Permiten borrado y programación en placa.
ƒ Elevados tiempos de programación de datos que
ralentizan la ejecución de un programa.
ƒ Ideal salvo en densidad, coste y tiempo almacenamiento
de datos.
Memoria de
lectura y
escritura
Programación memorias Flash
ƒ EEPROM evolucionada (transistores FAMOS).
ƒ Borrado de múltiples posiciones a la vez.
ƒ Escritura y lectura a velocidades muy superiores que la
EEPROM.
ƒ Puede actuar como memoria de programa y datos
D a nivel alto y S a tierra
Memorias Flash
ƒ
Estructura de memoria Flash a nivel de bloque
ƒ
No se puede programar una determinada dirección sin borrar antes el
sector.
Arquitectura interna:
Recibe e interpreta comandos
enviados desde el sistema
microprocesador.
Necesario
borrar antes de
programar
Cada sector se borra
independientemente
Tabla comparativa de prestaciones de
memoria Flash y EEPROM
El tiempo de acceso lectura de Flash < EEPROM y comparable a RAM
Introducción memorias volátiles
ƒ La información se pierde cuando cesa la
alimentación.
ƒ Memorias de lectura y escritura organizadas
como matriz de celdas direccionables
individualmente.
ƒ Clasificación:
– Memorias RAM estáticas (SRAM, Static Access
Memory). La información se almacena en biestables
(permanece indefinidamente siempre que exista
alimentación). Muy rápidas y de baja densidad.
– Memorias RAM dinámicas (DRAM, Dynamic Randon
Access Memory). La información se almacena en
condensadores integrados. Requieren recargarse
periódicamente para mantener el dato. Alta densidad.
Memoria SRAM
1 celda de memoria SRAM contiene 6 transistores
ƒ
ƒ
4 pertenecen al biestable de almacenamiento de información.
2 transistores de selección: transistores de acceso M1 y M2.
Palabra
línea de
selección de la celda
de memoria
hace
que M1 y M2
conduzcan.
Señales
bidireccionales
Activación celda de memoria en
operación de lectura y escritura
Estructura parecida a ROM, pero en SRAM la dirección de datos es bidireccional
Matriz SRAM (I)
Transistores de
acceso
4 entradas direcciones: a0,
seleccionan
a1, a2,a3
celda de memoria.
3 entradas de control: OE,
WE y CS (activas a nivel
bajo).
Matriz SRAM (II)
Orden lectura:
OE = 0
CS = 0
OE (Output Enable): señal de lectura
WE (Write Enable): señal escritura
CE (Chip Enable): señal selección
Orden escritura:
WE = 0
CS = 0
Si CS = 1, memoria aislada exterior
Cronograma del ciclo de lectura de una
memoria SRAM
Duración del ciclo de lectura
tAA: tiempo de acceso a direcciones.
tCO: tiempo de acceso del dispositivo (chip select).
tOE: tiempo transcurrido desde que se habilita la salida
hasta que esta aparece
Cronograma del ciclo de escritura de una
memoria SRAM
Duración del ciclo de escritura
tAW: tiempo de acceso a direcciones
tCW: tiempo de acceso del “chip
select”
tWP: tiempo mínimo señal de escritura
a nivel bajo
tDW: tiempo que la señal “write”
permanece a nivel bajo antes de
leer el dato del bus
tDH (data hold): tiempo que se
mantienen los datos en el bus una
vez que la señal sube a nivel alto
Ejemplo SRAM
Memoria SRAM de
4Mbit (512 K X 8)
19 líneas de direcciones
Señales de lectura, escritura y
selección
Memoria DRAM
1 celda de memoria DRAM contiene 1
transistor + 1 condensador
área DRAM
< área SRAM
Inconveniente: hay que incluir circuitería de refresco para evitar que se
pierda información, ya que los condensadores se descargan con el tiempo.
Refresco cada 8 ó 16 ms (refresco a ráfagas y refresco distribuído).
El dato almacenado se pierde con el tiempo y la temperatura.
Las DRAM reducen número de direcciones
utilizando latches internos
(multiplexando).
Celda básica DRAM
Matriz de la DRAM
Transistor de
selección
Bus direcciones selecciona una
celda determinada
Buffer bidireccional como entrada
de datos
Acceso escritura: W a nivel bajo
Acceso lectura: W a nivel alto
Ejemplo memoria DRAM de 1 Mbit
20 líneas direcciones
(entradas al integrado).
10 más significativas
se multiplexan y las 10
menos significativas se
multiplexan en el
tiempo: sólo 10
entradas.
Líneas RAS (Row
Address Strobe ) y CAS
(Column Address
Strobe) permiten
demultiplexación
interna
Memorias DRAM atendiendo a
distintos aspectos fabricación
ƒ FPMDRAM (Fast Page Mode DRAM): aceleran acceso en
lectura dentro de una misma página de datos. Velocidad
hasta 60 ns. Memorias usadas en PC 386, 486 y primeros
Pentiun.
ƒ EDODRAM (Extended Data Out DRAM): paginan la
memoria por filas. Ciclo de lectura menor ( se lee un dato y
se prepara la lectura del siguiente). Tiempo de acceso 45 ns.
Las más utilizadas en la actualidad.
ƒ SDRAM (Synchronous DRAM): se sintonizan con un
procesador. Se obtiene la información a cada ciclo. Admiten
velocidades de funcionamiento de hasta 100 MHz.
Memorias RAM de doble puerto
ƒ Útil en el intercambio de datos entre dos
procesadores ó dos sistemas digitales.
ƒ Dos conjuntos independientes de líneas de
direcciones, datos y control.
ƒ Memoria de doble puerto con
RAM+multiplexor.
ƒ Puede trabajar con sistemas digitales con
relojes independientes de distinta velocidad.
Esquema de una memoria RAM de doble
puerto
FIFO (First in – First out)
Primer elemento en entrar es el primero en salir
LIFO (Last in – First out)
Último elemento en entrar es el primero en salir