Bloques estandarizados

Anuncio
Sistemas Digitales
Bloques
estandarizados
Más allá de las puertas lógicas

Mario Medina C.
[email protected]
Complejidad creciente de diseños hace
necesario buscar nuevos niveles de
abstracción por sobre las compuertas
discretas


Alternativas de mayor escala de integración


Implementaciones alternativas

Implementaciones alternativas de funciones
booleanas

Uso de bloques estandarizados



Codificadores y decodificadores
 Multiplexores y demultiplexores

Implementaciones ASIC
Alternativas programables


PLA/PAL
Memorias ROM
Circuito semi-sumador
A
0
0
1
1
B
0
1
0
1
Cout
0
0
0
1
© 2014 Mario Medina
Suma
0
1
1
0
MSI (Medium-Scale Integration)
LSI (Large-Scale Integration)
Bloques estandarizados


Funciones más complejas, sin aumentar el
número de conexiones externas


Semi-sumador
Sumador completo
Sumador con
propagación de
acarreo
Sumador con acarreo
anticipado
Comparador




Codificador
Decodificador
Multiplexor
Demultiplexor
Circuito sumador completo
Cin
0
0
0
0
1
1
1
1
A
0
0
1
1
0
0
1
1
B
0
1
0
1
0
1
0
1
Cout Suma
0
0
0
1
0
1
1
0
0
1
1
0
1
0
1
1
1
Sistemas Digitales
Circuito sumador completo
Circuito sumador completo

Sumadores en paralelo

Construido con dos semi-sumadores
Sumador paralelo de 4 bits
Sumador de 2 bits
Sumador paralelo de 4 bits
(74LS283)
© 2014 Mario Medina
Retardos de propagación,
74LS283
2
Sistemas Digitales
Sumador paralelo de 8 bits
Sumador paralelo de 16 bits

4 sumadores paralelos de 4 bits en cascada

Retardo de propagación,
sumador de 4 bits
Retardo de propagación aumenta linealmente
Sumador de anticipación de
acarreo


Llamado también carry-lookahead adder
Acarreo puede ser

Generado: si entradas A y B a un sumador son 1

Propagado: si el acarreo de entrada Cin se refleja
en un acarreo de salida, lo que ocurre si al
menos una de las entradas es 1 y Cin es 1
Cg = AB
Cp = A + B
Cout = Cg + CpCin
Acarreos generados y
propagados
generado
propagado
© 2014 Mario Medina
Sumador de anticipación de
acarreo
propagado propagado
3
Sistemas Digitales
Circuito de anticipación de
acarreo
Circuito comparador de 4 bits
7485
Circuitos comparadores en
cascada
Codificadores

Bloque de 2n entradas y n
salidas


Se llama codificador 2n-a-n
o de n bits
Transforma la única
entrada activa a algún
código (Binario, Gray,
BCD, etc.)
i si x i  1 y E  1 y (x k  0  k  i)
z 
0 en otro caso

Codificadores
Codificador de prioridades
Sólo una entrada puede estar activa a la vez
 Entrada E es una señal de control, no de
datos

Habilita o deshabilita el bloque
Deshabilitación deja todas las salidas en alto o
bajo, dependiendo de la lógica definida para el
bloque




© 2014 Mario Medina
Codifica la entrada de mayor prioridad que
está activa

Puede haber más de una entrada activa a la vez
Necesario establecer prioridad entre las
entradas
 Salida adicional indica si no existen entradas
activadas
4
Sistemas Digitales
Codificador de prioridades
74LS148
Codificador de prioridades

Salida abc codifica entrada activa de mayor
prioridad





Entrada y7 tiene mayor prioridad que y0
Salida d indica que hay una entrada activa
y0
0
1
X
X
X
X
X
X
X
y1
0
0
1
X
X
X
X
X
X
y2
0
0
0
1
X
X
X
X
X
y3
0
0
0
0
1
X
X
X
X
y4
0
0
0
0
0
1
X
X
X
y5
0
0
0
0
0
0
1
X
X
y6
0
0
0
0
0
0
0
1
X
y7
0
0
0
0
0
0
0
0
1
a
0
0
0
0
0
1
1
1
1
b
0
0
0
1
1
0
0
1
1
Codificador de prioridades 16a-4 en cascada
c
0
0
1
0
1
0
1
0
1
d
0
1
1
1
1
1
1
1
1


8 entradas activas bajas
3 salidas activas bajas
HPRI: entrada de más
alto valor tiene
prioridad
EI: activación activa baja
EO y GS: salidas activas
bajas para conexión en
cascada
Decodificadores

Bloque de n entradas y 2n
salidas



Se llama decodificador n-a-2n
Función inversa a codificador
Activa una de las salidas en
función del valor de las entradas


Implementación decodificador
2-a-4
 1 si x  i y E  1
zi  
0 en otro caso
Decodificador 3-a-8

© 2014 Mario Medina
Demás salidas inactivas o
complementadas
Señales de salida mutuamente
excluyentes
Implementación usa 8 ANDs de 3 entradas
5
Sistemas Digitales
Ejemplo: decodificador 4-a-10
para BCD 8421
Ejemplo: decodificador 4-a-10
•Decodificador para dígitos
BCD 8421
•Salidas activas bajas
Decodificador 4-a-16 74LS154
Decodificador 5-a-32 usando
decodificadores 4-a-16
•Salidas y activación activas baja
Implementaciones alternativas
con decodificadores

Implementar funciones f1 y f2 con
decodificador 4-a-10, salida activa baja
Multiplexores o selectores

f1 = m1 + m2 + m4
f2 = m4 + m7 + m9

Reescribiendo
f1 = (m1’m2’m4’)’
f2 = (m4’m7’m9 ’)’
© 2014 Mario Medina
Bloque de 2n entradas de datos,
n entradas de control y 1 señal
de salida


También se debe añadir la señal
de habilitación E
Si el bloque está habilitado, la
señal de control s selecciona
una de las entradas para ser
dirigida hacia la salida
Si E  1
Y  x c , c  s 0s1s2
6
Sistemas Digitales
Operación de un multiplexor
2-a-1


Escoge la entrada basada en señal de control
Z = A’*I0 + A*I1
Multiplexor 8-a-1

•2n entradas
•n señales de control
Multiplexor 2-a-1


Multiplexores 2n-a-1
Multiplexor de 8 entradas
74LS151
Entradas I0 a I7
Señales de control abc
Multiplexor 16-a-1 usando
multiplexores 8-a-1
Multiplexor de datos
Multiplexor cuádruple con
entradas y salidas de bus de
4 bits
© 2014 Mario Medina
7
Sistemas Digitales
Multiplexor de 2 entradas
cuádruple 74LS157
Demultiplexores o
distribuidores


Función inversa al multiplexor
Bloque de 1 entrada, 2n salidas
de datos, n entradas de control



Demultiplexores o
distribuidores

Notar la similitud entre las descripciones de
un demultiplexor y un decodificador


Demultiplexor 4-a-16

Usados adecuadamente sus operaciones son
intercambiables
De hecho, los fabricantes clasifican los
demultiplexores como demultiplexers/decoders
Decodificador 4-a-16
74154 puede ser usado
también como
demultiplexor


Implementaciones alternativas
con multiplexores

Describiendo un multiplexor de 2 y 4 entradas
mediante una tabla de verdad, podemos escribir
sus funciones de transferencia como
Además de la señal de
habilitación E
Si el bloque está habilitado, la
señal de entrada es enviada a la
salida seleccionada mediante la
 x si E  1 e i  c
señal de control s
zi  
Las salidas son mutuamente
0 si E  0 o i  c
excluyentes
Usar entradas como líneas
de selección de datos
Usar habilitación como
entrada de datos
Implementaciones alternativas
con multiplexores

En forma general

k 0
Esto corresponde a una expresión en
minitérminos


z  A I 0  A I1
© 2014 Mario Medina
z  A B I 0  A B I1  A B I 2  A B I 3
2n -1
z   mkIk
Representación en dos niveles (AND-OR)
Expresión general de un multiplexor de n:1
indica que éstos pueden ser utilizados como
generadores de minitérminos

Más que un selector, es un bloque de propósito
general
8
Sistemas Digitales
Implementaciones alternativas
con multiplexores
Ejemplo de implementación
 Multiplexor
puede implementar una
tabla de verdad en forma directa

F(A 2 , A 1 , A 0 )  m1  m3  m5  m 6
Ejemplo
F(A, B, C)  m0  m2  m6  m7
Conexión a +5V equivale a 1 lógico
Implementaciones alternativas
con multiplexores

Cualquier función de n variables puede
implementarse en forma directa con un MUX
de 2n-a-1


El número de entradas a un MUX suele ser
limitado
Comercialmente no se fabrican con muchas
entradas
Implementaciones alternativas
con multiplexores

Metodología general (particionar la función)


Seleccionar n-1 variables como entradas de
control
Variable restante se usará como entrada



Cada combinación de las n-1 variables define 2
celdas de la tabla de verdad
Si la variable de entrada es constante en 0 o 1, la
entrada asociada al MUX será 0 o 1
Si la variable de entrada cambia su valor, la
entrada al MUX será la variable de entrada o su
complemento
© 2014 Mario Medina
Implementaciones alternativas
con multiplexores

A
0
0
0
B
0
0
1
C
0
1
0
F
1
0
1
0
1
1
1
1
1
0
0
1
1
1
0
1
0
1
0
0
0
1
1
C
0
1
Ejemplo: implementar la siguiente función
con un MUX de 4-a-1
F(A, B, C) = A’B’C’ + A’BC’ + AB
F(A, B, C) = A’B’(C’) + A’B(C’) + AB’(0) + AB(1)
Implementaciones alternativas
con multiplexores

Implementar con un MUX de 8:1 la función
F(A, B, C, D) = ∑m(0, 1, 3, 6, 7, 8, 11, 12, 14)

El método es general para más
variables, pero las entradas
serían función de las variables
que no se definen como de
control

Requiere uso de bloques lógicos en
las entradas
9
Sistemas Digitales
Implementaciones alternativas
con multiplexores
Otro ejemplo

F(A, B, C, D)   m(1,2,5,6,7, 8,10,12,13 ,15)
Implementar un MUX de 8:1 con


Implementaciones alternativas:
demultiplexor

Cualquier función de n variables puede
implementarse con un demultiplexor de n
entradas de control y puertas OR


Cada combinación de entradas selectoras
corresponde a un minitérmino de una función
Todas las salidas que corresponden a un
minitérmino se usan como entradas a un OR que
calcula la función final
Implementaciones alternativas
Circuitos integrados comerciales imponen
limitantes a número de entradas disponibles
 Inclusión de entradas de control, como la de
habilitación E, permite interconectar
jerárquicamente distintos bloques para
formar bloques más grandes



Un MUX de 32-a-1 puede implementarse con 4
MUX de 8:1 y un decodificador de 2-a-4
Decodificador 5:32 puede implementarse con 1
decodificador de 2:4 y 4 decodificadores de 3:8
© 2014 Mario Medina
2 MUX de 4:1 y un MUX de 2:1
4 MUX de 2:1 y un MUX de 4:1
Implementaciones alternativas
con demultiplexor

Implementar las siguientes
funciones con un
demultiplexor de 8 salidas
F(C, B, A) = ∑m(0, 2, 3, 7)
G(C, B, A) = A’BC + AB’C + ABC’
Fan-Out y buffers

Una salida de compuerta lógica sólo se
puede conectar a un número limitado de
otras entradas


Limitación de implementación
Buffer



No modifica el valor lógico de la entrada
Mejora las características eléctricas de la salida
Permite aumentar el fan-out
10
Sistemas Digitales
Fan-Out y buffers

Función buffer


Buffer que aísla la entrada de la salida



Si B es 1, C = A
Si B es 0, A y C no están conectados
No se pueden conectar directamente dos
salidas
Buffer de 3 estados

Tipos de buffers de 3 estados


Salidas activa alta/baja
Control activo alto/bajo
3er estado es alta impedancia (Z)
Circuitos con buffers de 3
estados


F=C
Permite
conectar más
entradas a la
salida
Buffers de 3 estados

Conectando salidas
Construyendo un multiplexor de 2-a-1 con
buffers de 3 estados
Nótese que salidas de buffers están conectadas
directamente!
 Si B = 0, D = A
 Si B = 1, D = C
D = AB’ + BC

© 2014 Mario Medina
Construyendo circuitos con
buffers de 3 estados
Si BD = 00, F = Z (alta impedancia)
Si BD = 01, F = C
 Si BD = 10, F = A
 Si BD = 11, Error!


Conflicto entre las salidas
Debe garantizarse que
BD nunca será 11


Cómo? Decodificador
11
Sistemas Digitales
Buffers de 3 estados como
alternativas a MUXes

Sumador de 4 bits
Sum = (EnA*A + EnB*B + EnC*C + EnD*D) + E
 Sólo una entrada de habilitación activa a la vez
Líneas bidireccionales
utilizando buffers de 3 estados

Terminal bidireccional
Enable
construido con buffer de
Salida
3 estados


Si buffer está activo,
terminal corresponde a
salida del circuito
Si buffer está inactivo,
terminal corresponde a
entrada al circuito
Terminal
Entrada
Bus de datos bidireccional
© 2014 Mario Medina
12
Descargar