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