Download Estructura interna de una memoria
Document related concepts
no text concepts found
Transcript
Empecemos por el principio Compuertas lógicas básicas •AND •OR •NOT •NAND •NOR FLIP-FLOP MEMORIAS RAM MEMORIAS ROM, PROM, EPROM, EEPROM Y FLASH REGISTROS Y CONTADORES MICROPROCESADOR MICROCONTROLADOR Estructura interna de una memoria Celda básica Flip flop tipo “D” Memoria de un bit: Se presenta el dato Se da pulso de reloj (Clock) Ingresa el dato a Q Se memoriza el dato, hasta nueva escritura o se retire la alimentación Datos Dato Selección del flip flop Los pasos para guardar un dato son los siguientes: 1º Coloco el dato a guardar en la línea de dato 2º Selecciono el flip flop en donde lo voy a guardar por medio de la activación del clock 3º El dato ingresa y es retenido en Q hasta la colocación (escritura) de un nuevo dato o el retiro de la alimentación. (RAM ) Selección Pregunta: ¿Cuántas líneas de selección necesito para 100, 1.000 o 1.000.000 de datos a guardar? Dato La respuesta es: Necesito tantas líneas de selección como datos a guardar por lo tanto se hace imposible un integrado con tantos terminales En conclusión: Hay que reducir las líneas de selección sin perder capacidad de carga. La solución: El dispositivo combinacional que cumple con esta condición es el decodificador. En este dispositivo: Para cada combinacion de entrada Se activa solo una salida De este modo tengo la capacidad de actuar sobre un único flip-flop respetando lo planteado anteriormente CELDA COMPLETA DE MEMORIA Dato Dato Dato 0 0 10 0 1 Para leer o escribir en una celda de memoria hay que cumplir con algunas condiciones: • Escritura (w): 1. Para que el dato presentado en la entrada pueda memorizarse se debe activar la entrada “W/R” con “0” 2. Lo siguiente es colocar un “0” en la entrada “SEL” proveniente del decodificador 3. En consecuencia la compuerta “AND” recibe dos unos lógicos dando como resultado un uno sobre el clock permitiendo la memorización del del dato. • Lectura (R): 1. Para leer el dato guardado en la operación anterior se debe activar la entrada “W/R” con “1” 2. El paso subsiguiente es la colocación de un “0” en “CEL” de manera de habilitar la compuerta tri state para que el dato aparezca en la salida “SAL”. Observemos que el clock queda inhabilitado debido al ingreso de uno en “W/R” Comenzamos a darle forma a la memoria Tomando los elementos y circuitos vistos hasta ahora, desarrollamos un nuevo circuito Donde aparecen: •La línea única de datos para este circuito palabra de un bit •El decodificador que de acuerdo a la combinación de entrada (dirección) activa una única salida y energiza la línea de selección del flip flop asociado a dicha salida. •Por ultimo aparecen las líneas de control de la memoria que corresponden a: línea de selección de lectura-escritura( W/R) línea de habilitación de salida de datos (OE). Se combina con W/R para la lectura de información. línea de habilitación de chip (CS). Es utilizado para expansión de memorias Esta memoria es de 8 posiciones por 1 bit de palabra. (8x1) Mantenemos la capacidad y aumentamos los bits de la palabra 0 1 1 0 En este caso tenemos una memoria de 8 posiciones por 4 bits de palabra lo que da un total de 32 bits de información. Ejemplo de escritura: 1. Se habilita la selección de chip y se coloca “OE” en uno 2. Se coloca la dirección del lugar donde voy a guardar 3. Se coloca el dato en la entrada 4. Se coloca la orden de escritura y se guarda la palabra de 4 bits 10 01 11 Se habilita la selección de chip 2. Se coloca la dirección de la posición de memoria a ser leída 3. Habilitamos la lectura 4. Habilitamos finalmente el permiso de salida y aparece el dato en out 1 1 0 0 0 1 1 0 1 1 0 0 0 Ejemplo de lectura: 1. 0 00 0 1 0 1 0 1 AUMENTANDO LA CAPACIDAD DE LAS MEMORIAS El problema que se genero con el aumento de la capacidad de la memoria fue que los decodificadores necesitaban gran cantidad de salidas lo que dificultaba la fabricación e integración, por lo tanto la solución fue la realizar matrices con dos decodificadores disminuyendo en forma importante el tamaño de los decodificadores. Veamos los siguientes ejemplos: Conexión matricial de celdas de memoria Conexión matricial de celdas de memoria con el agregado de decodificadores Memoria de 64 posiciones por un 1 bit 64x1 Se observa para este caso el reemplazo de un decodificador de 64 salidas por dos de 8 Estructura de una memoria matricial con palabra mayor a un bit Direcciones (adress) Datos de entrada Datos de salida Para finalizar: La estructura interna de una memoria RAM quedará de la siguiente manera: Direcciones que corresponden a las filas Datos de entrada/salida BUS DIRECCIONES BUS DE DATOS Se multiplexan las entradas y las salidas de datos para obtener solo un bus de entrada salida Líneas de control Direcciones que corresponden a las columnas Vemos ahora la memoria integrada En la cual podemos identificar: • Pines que corresponden al bus de ADRESS (direcciones) • Las entradas de control •Los pines del bus de datos para escritura y lectura de los mismos Calculemos ahora la capacidad de la memoria: Para calcular la capacidad de la memoria tenemos en cuenta la cantidad de líneas de dirección, las cuales formaran la potencia a la cual se debe elevar la base dos Para este chip tenemos desde “A0” hasta “A17”, con lo que obtenemos dieciocho líneas de dirección por lo tanto si al número 2 lo elevamos a la potencia 18 obtenemos el valor 262.144 o sea aproximadamente 264k posiciones o lugares en memoria. Los datos que maneja este chip van desde “D0” a “D7” por lo tanto tiene un bus de datos de 8 bits o 1 byte En conclusión estamos ante un chip de memoria RAM de 264k x 8 FORMA HEXADECIMAL FORMA BINARIA A 1 7 A 1 6 A 1 5 A 1 4 A 1 3 A 1 2 A 1 1 A 1 0 A 9 A 8 A 7 A 6 A 5 A 4 A 3 A 2 A 1 A 0 HEXADECIMAL 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 00000 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 00001 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 00002 X X X X X X X X X X X X X X X X X X XXXXX X X X X X X X X X X X X X X X X X X XXXXX 0 0 0 0 0 0 1 1 1 1 0 0 0 0 1 0 0 1 00F09 X X X X X X X X X X X X X X X X X X XXXXX X X X X X X X X X X X X X X X X X X XXXXX 0 0 0 1 1 0 0 1 1 1 0 1 1 0 0 0 0 0 06760 X X X X X X X X X X X X X X X X X X XXXXX X X X X X X X X X X X X X X X X X X XXXXX 0 0 1 0 0 0 1 1 1 0 0 1 1 1 0 1 1 1 08E77 X X X X X X X X X X X X X X X X X X XXXXX X X X X X X X X X X X X X X X X X X XXXXX 0 1 1 0 0 1 1 0 0 0 1 0 1 0 0 1 0 1 198A5 X X X X X X X X X X X X X X X X X X XXXXX X X X X X X X X X X X X X X X X X X XXXXX 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 1 3FFFD 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 3FFFE 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 3FFFF