DISEÑO DE DECODIFICADOR DE DIRECCIONES
¿Qué es un decodificador de direcciones? Es un circuito conbinacional cuya característica fundamental es que, para cada combinación de las entradas, solo una dde las salidas tiene un nivel lógico diferente a las demás. Este circuito realiza la operación inversa a la de un codificador de datos y es análoga a la de un demultiplexor.
Funcionamiento
Recibe n entradas y produce 2n salidas. De todas las salidas, solo se genera un 1 en la salida cuyo índice corresponde al código binario de la combinacion encontrada.
¿Cómo se diseña? 1. Se realiza la verificación de la solicitud en bits 2. Según los requerimientos se diseña la tabla de verdad que representa a los cambios de estado de las entradas. 3. Representarlo a manera de una función lógica (Ecuacion) 4. Se realiza el circuito correspondiente 5. Represente en un diagrama de bloques el resultado del calculo
Realizar un arreglo líneal que contine 4
Ejemplo:
palabras de 4 bits por cada palabra. Realice la tabla de verdad correspondiente a este caso e identifique las direcciones de cada una de las palabras
Paso 1 Se realiza la verificación de la solicitud en bits Como son 4 palabras de 4 bits cada uno tenemos lo siguiente:
Como son 4 palabras con 2 bits nos alcanza. De esta manera se tendrán 2 entradas y 4 salidas.
Paso 2 Realizar la tabla de verdad correspondiente
A0
B1
O3
O2
O1
O0
0
0
0
0
0
1
0
1
0
0
1
0
1
0
0
1
0
0
1
1
1
0
0
0
A0 Y B1 representan a las entradas. O3 – O0 corresponde a las salidas, que en este caso seria el contenido
Paso 4 Representarlo a manera de una función lógica (Ecuacion)
A0
B1
O3
O2
O1
O0
0
0
0
0
0
1
0
1
0
0
1
0
1
0
0
1
0
0
1
1
1
0
0
0
Paso 5 Diagrama
Paso 5 Diagrama de Bloques
Aplicación La función principal del decodificador es
la
de
memoria.
direccionar Un
espacios
decodificador
de
de n
entradas puede direccionar 2n espacios de memoria.
De esta manera: Con
20
bits:
220
espacios
de
memoria, que es el equivalente a 1MB bits:
230
de
Con
necesitaría 10bits, ya que la cantidad
memoria, que es el equivalente a
de salida seria 210, el cual es el
1GB
equivalente a 1024
30
espacios
Para poder direccionar 1kb de memoria
Actividad: 1. Cuantos Bits se necesita para direccionar 12 palabras de 8 bits cada una 2.
Construya la tabla de verdad para representar dicho direccionamiento
3. Realice las ecuaciones que sean necesarias para determinar el diagrama de direcciones correspondiente
DEMUX Un demultiplexor es un circuito distribuidor de datos, es decir, la operación de este dispositivo consiste en tomar la única entrada, seleccionar una de entre varias salidas y conectarla a la entrada. Para realizar esta selección de los datos son precisas líneas de control que nos indiquen cuál de las salidas es la seleccionada. Si disponemos de 2n salidas, y n variables de control, de forma que el código binario contenido en las líneas de control indica cuál de las salidas es la que se conecta a la entrada.
DEMUX 74138 Este componente decodifica los valores hasta un máximo de 8 salidas. Este Componente acepta mediante 3 bits (a0, a1, a2), ocho posibles salidas, siempre y cuando este activada la entrada de habilitación. La salida se muestra mediante valor bajo en una de las 8 salidas disponibles. La habilitación se activa sólo cuando se cumple la siguiente ecuación de las patillas de entrada.
ESQUEMA INTERNO
TABLAS DE VERDAD DEMUX 1 A 4
DEMUX 1 A 8
EJEMPLO Diseñar un decodificador de direcciones utilizando compuertas lógicas y el demux 74138 y un mapa de memoria de un microprocesador 8085 de INTEL (A0..A15, D0..D7), suponiendo que este contenga 8K×8 de memoria ROM, 4K×8 de memoria RAM. Se disponen de circuitos integrados ROM de 2K×8 y circuitos integrados RAM de 2K×8 y que la memoria está situada a partir de la dirección $0 empezando por la ROM y colocando a continuación la RAM. 1. Detallar las necesidades del sistema en cuanto a direccionamiento, anchura de palabra y tipo de memoria a utilizar (RAM/ROM). 8K×8 de memoria ROM 4K×8 de memoria RAM
EJEMPLO 2. Determinar los circuitos integrados de que se dispone, tanto en longitud como en anchura de palabras y definir los que se necesitan.
3. Construir el mapa de memoria.
EJEMPLO 4. Determinar el bus de direcciones. Determinaremos los bits del bus de direcciones en función del tamaño total de la memoria:
TABLA DE DIRECCIONES
TABLA COMBINATORIA
A1 3
A1 2
A1 1
IC0
IC1
IC2
IC3
IC4
IC5
0 0
0 0
0 1
1 0
0 1
0 0
0 0
0 0
0 0
0
1
0
0
0
1
0
0
0
0
1
1
0
0
0
1
0
0
1
0
0
0
0
0
0
1
0
1
0
1
0
0
0
0
0
1
1
1
0
0
0
0
0
0
0
1
1
1
0
0
0
0
0
0
FORMULAS
IC0 IC1 IC2 IC3 IC4 IC5
= = = = = =
A11’.A12’.A13’ A11.A12’.A13’ A11’.A12.A13’ A11.A12.A13’ A11’.A12’.A13 A11.A12’.A13
DIAGRAMA
GRACIAS …