Professional Documents
Culture Documents
Pgina 1
Tcnicas Digitales
n
Memorias
La capacidad de una memoria cuya longitud de palabra es de m bits y que tiene n entradas es: m.2 bits. La comunicacin de las memorias con el resto del sistema se hace a travs de conductores especializados denominados buses, el bus de direcciones y el bus de datos. En este tipo de memorias ambos son unidireccionales. Ejemplo: Supongamos que se quiere programar una ROM donde queden registradas en orden las letras de la palabra Digital en cdigo ASCII de 7 bits. La palabra tiene 7 letras es decir necesitamos 7 direcciones, una para cada letra, por lo tanto el deco ser un 3x8 quedando sin utilizar la direccin 111. Adems como la palabra en el cdigo mencionado tiene 7 bits el dispositivo deber contar por lo menos con 7 salidas. La situacin queda resumida en el siguiente cuadro:
LETRA D i g i t a l DIRECCIN a1 0 0 1 1 0 0 1 CDIGO ASCII DE 7 BITS b4 b3 b2 0 0 1 0 1 0 0 0 1 0 1 0 1 0 1 0 0 0 0 1 1
a2 0 0 0 0 1 1 1
a0 0 1 0 1 0 1 0
b6 1 1 1 1 1 1 1
b5 0 1 1 1 1 1 1
b1 0 0 1 0 0 0 0
b0 0 1 1 1 0 1 0
Estas memorias no son voltiles, es decir no pierden su contenido cuando se desconecta la fuente de energa, y, adems existen distintos tipos: 1. ROM programables una sola vez 1.1. ROM conexionada por pedido (simplemente ROM).Las conexiones de este tipo de memorias estn programadas y ejecutadas por el fabricante, a pedido del cliente, mediante negativos fotogrficos llamados mscaras. Debido al costo de esas mscaras este tipo de memoria slo es econmicamente viable si se necesitan gran cantidad de la misma ROM. 1.2. ROM programables (PROM).El usuario lleva a cabo la programacin del dispositivo en un proceso posterior a la fabricacin de chip. El chip virgen viene con todos los fusibles sanos. El croquis de la figura 3 muestra como esta conexionado las salidas del deco con las entradas a las compuertas OR. Aplicando en las salidas del deco (utilizndolas como entradas) pulsos de tensin adecuada se producen corrientes que funden los fusibles de las conexiones no deseadas.
Fusible
Tcnicas Digitales
Memorias
2. ROM reprogramables (RPROM).Una vez que el usuario programa el conexionado del dispositivo puede modificar el programa, hay de varios tipos: 2.1. EPROM (Erasable-Programable ROM).Antes de reconfigurar el programa se debe hacer incidir luz ultra violeta por una ventana transparente que tiene la capsula de chip. Este borrado dura unos 15 minutos, luego puede reprogramarse. 2.2. EEPROM o bien E2PROM (Electrically-Erasable-Programable ROM).Son EPROM cuyo borrado se hace elctricamente, sin luz ultravioleta, se pueden seleccionar para reprogramar bloques para reprogramar, borrando esos bloques solamente en una fraccin de segundo y luego reimprimindolos. Se pueden reprogramar hasta 10.000 veces.
D E
D E
D E
D E
D E
D E
D E
D E
D E
D E
D E
D E
WE EN
O2
O1
O0
El banco de la figura tiene 4 registros de 3 filp-flop cada uno, es decir puede memorizar 4 palabras de 3 bits, su capacidad es de 12 bits. Para direccionar 4 registros necesitamos un deco de 2x4 y tambin se utilizan buffer tres estados para controlar el flujo de la informacin, esta informacin llega y sale de la RAM por el bus de datos, que en este caso es bidireccional, y, la direccin del registro involucrado en la operacin de lectura o escritura llega al deco por el bus de direcciones que es unidireccional.
Tcnicas Digitales
Memorias
Los 4 registros que forman el banco se ubican en sendas filas y estn formados por flip-flops tipo D que pierden su contenido cuando se corta la energa. Tiene 2 entradas de habilitacin: la seal EN (Enable), que habilita la operacin del banco pero su efecto est condicionado por la seal WE (Write Enable), que es la habilitacin de escritura. El funcionamiento es como sigue: Si el banco est habilitado, pero WE est en 0, la operacin que se realiza es de lectura. Los datos almacenados en el registro seleccionado por el decodificador que abre los buffer 3 estados de dicho registro, son puestos en los mltiples de conexin verticales que hay en sus salidas, y, la informacin contenida en estos es puesta en las salidas Oi (Ouput), ya que sus correspondientes buffers estn habilitados por el 0 en la entrada WE. Si el banco est habilitado, y WE est en 1, la operacin que se realiza es de escritura. Los datos que contienen las entradas Ii (Input) ingresan en el registro seccionado por el deco cuyos flip-flops los reciben pues el 1 en WE los habilita, ese mismo valor en WE impide la lectura de los datos guardados.
Expansin de memoria
Las memorias, tanto las RAM como las ROM, se presentan en circuitos integrados, donde adems del tipo de memoria se indica el tamao de la palabra y la cantidad de palabras que es capaz de retener, como se muestra en la figura 5, donde se muestra dos chips de memoria, uno de memoria RAM capaz de almacenar 2048 (2 k = 2 11) palabras de RAM ROM 4 bits cada una y el otro de una memoria ROM que almacena 2048 (2 k = 211) 2K X 8 palabras de 8 bits cada una, para ello tienen 11 entradas de direccin que 2K X 4 tendrn el formato A0A1A2A3A4A5A6A7A8A9A10. E R/W E A veces para un determinado dispositivo que necesita una capacidad definida por su funcin y se dispone de chips de una capacidad menor que puede ser tanto en cantidad de palabras como en su tamao, entonces, como en otros casos ya estudiados, se tendr que interconectar estos chips para obtener la capacidad de memoria pedida. Como ejemplo para mostrar el conexionado, utilizando la simbologa corriente en este tipo de circuitos, utilizaremos los chips de la figura 5 para armar una memoria que disponga de una memoria RAM de 4k palabras de 8 bits (4 k x 8) y otro tanto en ROM. Los chips disponibles son para memoria RAM de 2 k x 4 y para la ROM de 2 k x 8, por lo tanto para expandir la ROM solo hacen falta 2 chips almacenando 2 k palabras en cada uno. En cambio para expandir la RAM hay que desdoblar la expansin, pues primero hay que formar dos memorias de 2k x 8 y luego proceder como en las ROM pero cada memoria se forma con 2 chips, por consiguiente los 8 bits de cada palabra se almacenan tomando4 bits en un chip 4 bits en el otro. Para 8 k bits = 8.192 bits = 213 bits se necesitan direcciones de 13 bits es decir de la forma A0A1..A11A12. este total de direcciones debe distribuirse en principio en 4 grupos de memorias, es decir que de los 13 bits que identifican una direccin tomaremos 2 (los ltimos) para identificar al grupo de memoria de la siguiente manera.
Tcnicas Digitales
Memorias
Direcciones(*)
A0A1A2A3A4A5A6A7A8A9A1000 A0A1A2A3A4A5A6A7A8A9A1001 A0A1A2A3A4A5A6A7A8A9A1010 A0A1A2A3A4A5A6A7A8A9A1011 (*) Las 2 direcciones (2k) con A0A1A2A3A4A5A6A7A8A9A10.
11
Memorias
1 RAM 2 RAM 3- ROM 4 - ROM
Con estas consideraciones podemos observar que para seleccionar una direccin de las 8k necesarias para el funcionamiento del dispositivo podemos colocar la parte A0A1A2A3A4A5A6A7A8A9A10 en la entrada de direcciones de cada chip y con A11A12 por intermedio de un decodificador 2/4 habilitar, por la entrada E, el sector de memoria donde se encuentra la direccin buscada, como se indica en la figura 6:
A0 - A10 Bus de direcciones
Memoria 1
Memoria 2
Memoria 3
Memoria 4
RAM
(A) 2K X 4
R/W E
RAM
(B) 2K X 4
R/W E
RAM
(C) 2K X 4
R/W E
RAM
(D) 2K X 4
R/W E
ROM
2K X 8
E
ROM
2K X 8
E
D0 - D3 D0 - D7
D4 - D7
D0 - D3
D4 - D7
D0 - D7
D0 - D7 Bus de datos
Seal R/W
A11 A12
s0 s1 s2 s3
En la misma figura tambin se observa: Como los chips RAM tienen palabras de 4 bits habr que colocar en cada grupo de memoria 2 chips que sern habilitados simultneamente y conectados de manera tal que si la palabra de datos es D0D1D2D3D4D5D6D7 los bits de datos D0D1D2D3 entran o salen del primer chip de cada grupo y los datos D4D5D6D7 al segundo. La seal R/W es de seleccin de lectura/escritura y est conectada a los chips RAM. Los buses de datos conectados a las memorias RAM son bidireccionales. Los buses de datos conectados a las memorias ROM son unidireccionales.
Tcnicas Digitales
Memorias
Como informacin complementaria podemos agregar que si agregamos un bit ms al bus de direcciones (A13) y colocamos un deco 3/8 tendremos 4 salidas con 2 k x 4 cada una libres para utilizar en otros dispositivos (figura 7).
A0 - A10
Bus de direcciones
Memoria 1
RAM
(A) 2K X 4
R/W E
RAM
(B) 2K X 4
R/W E
RAM
(C) 2K X 4
R/W
Memoria 2
RAM
E
Memoria 3
Memoria 4
ROM
2K X 8
E
ROM
2K X 8
E
(D) 2K X 4
E R/W
D0 - D3 D0 - D7
D4 - D7
D0 - D3
D4 - D7
D0 - D7
D0 - D7 Bus de datos
Seal R/W