módulos combinacionales básicos tema 7. ¿qué sabrás al final del capítulo? funcionamiento de...
TRANSCRIPT
Módulos combinacionales básicos
Tema 7
¿Qué sabrás al final del capítulo?
Funcionamiento de los módulos combinacionales básicos:– Codificadores– Decodificadores– Multiplexores– Demultiplexores
Implementación de funciones booleanas mediante módulos combinacionales
Redes de módulos combinacionales
Módulos combinacionales básicosMSI (Medium Scale of Integration)
Módulos combinacionales básicos
Bloques funcionales más complejos que las puertas lógicas que realizan una función determinada
Podemos obtenerlos a partir de puertas lógicas básicas Se pueden utilizar para la implementación de funciones
booleanas MSI, circuitos entre 10 y 100 puertas Pueden disponer de señales de control para controlar su
funcionamiento Tipos:
– codificador– decodificador– multiplexor– demultiplexor
Codificador Codificador binario – Dispone de 2n entradas y n salidas: COD
2nxn– La salida proporciona el código binario del
canal de entrada activado.
• Entrada activa a nivel alto: entra un 1 y el resto son 0’s
• Salida activa a nivel alto: proporciona el código binario de la entrada a 1.
• Entrada activa a nivel bajo: entra un 0 y el resto son 1’s
• Salida activa a nivel bajo: proporciona el código binario invertido de la entrada a 0
EN
TR
AD
AS
SA
LID
AS
ENTRADA DE ACTIVACION(ENABLE)
Codificador
Implementación con puertas lógicas
D0 D1 D2 D3 D4 D5 D6 D7 X Y Z
1 0 0 0 0 0 0 0 0 0 00 1 0 0 0 0 0 0 0 0 10 0 1 0 0 0 0 0 0 1 00 0 0 1 0 0 0 0 0 1 10 0 0 0 1 0 0 0 1 0 00 0 0 0 0 1 0 0 1 0 10 0 0 0 0 0 1 0 1 1 00 0 0 0 0 0 0 1 1 1 1
4 5 6 7X = D + D + D + D
2 3 6 7Y = D + D + D + D
1 3 5 7Z = D + D + D + D
Codificador con entrada y salida activa a nivel alto
Codificador Problemas:
– ¿cuál sería la salida del codificador si se activan 2 entradas simultáneamente?
p. ej: COD(0,1,0,0,1,0,0,0) según las expresiones de X, Y, Z, sería XYZ=101, pero D5=0
– ¿cuál sería la salida si no se activa ninguna entrada? COD(0,0,0,0,0,0,0,0) daría XYZ=000 , pero D0 = 0
00010010
Codificador
Soluciones– Se introduce una señal de activación (enable) que permite activar o
desactivar al codificador– Se realiza una priorización de las entradas. En caso de activación
simultánea por dos o más canales de entrada se toma la más prioritaria (normalmente la de mayor peso)
D0D1D2D3D4D5D6D7
8
8
Circuitode
Prioridad
Codificador
Codificador BCD– Ejemplo: TTL 74147 . Conversor 9 entradas a código BCD (binary
coded decimal)– ¡¡OJO!! entradas y salidas activas a nivel bajo
Codificadores
Aplicación: – Teclado simple
Decodificador
Decodificador binario: DEC n x 2n
– Función inversa al codificador– n entradas y 2n salidas– Transforma el código binario de entrada en la activación
de la salida cuyo número de orden coincide con el código
EN
TR
AD
AS
SA
LID
AS
ENTRADA DE ACTIVACION
Decodificador
E A1 A0 D0 D1 D2 D3
1 0 0 1 0 0 01 0 1 0 1 0 01 1 0 0 0 1 01 1 1 0 0 0 10 X X 0 0 0 0
DEC 2 x 4. Entradas activas a nivel alto y salidas activas a nivel alto
Implementación con puertas lógicas
A0
A1
D0
D1
D2
D3E
Decodificador
E A1 A0 D0 D1 D2 D3
0 0 0 0 1 1 10 0 1 1 0 1 10 1 0 1 1 0 10 1 1 1 1 1 01 X X 1 1 1 1
DEC 2 x 4. Entradas activas a nivel alto y salidas activas a nivel bajo con Enable invertido
Implementación con puertas lógicasE
Decodificador
Ejemplo: TTL 74139 – 2 decodificadores en un integrado– Entradas activas a nivel alto y salidas activas a nivel bajo – Señal de activación “Enable”, activa a nivel bajo
1er. codificador
2do. codificador
Enable
Decodificador
BCD a 7 segmentos:
Multiplexor Dispone de 2n entradas, n señales de control y una
salida: MUX 2n x 1 Su función es seleccionar la entrada indicada por
las señales de control
EN
TR
AD
AS
EN
TR
AD
AS
SA
LID
A
SA
LID
A
CONTROL CONTROL
ENTRADA DE ACTIVACION
ENTRADA DE ACTIVACION
Multiplexor
C1 C0 E3 E2 E1 E0 S
0 0 X X X F F0 1 X X F X F1 0 X F X X F1 1 F X X X F
Implementación con puertas lógicas
Multiplexor
Ejemplo: TTL 74151
Demultiplexor Dispone de 1 una entrada, 2n salidas y n líneas de selección Su función es enviar el valor presente a la entrada a uno de
los canales de salida utilizando las líneas de selección. Por lo tanto realiza la función inversa del multiplexor.
En su implementación es muy parecido a un DEC nx2n
EN
TR
AD
A
SA
LID
AS
CONTROL
EN
TR
AD
AS
SA
LID
AS
ENTRADA DE ACTIVACION
Demultiplexor
S1 S0 E D0 D1 D2 D3
0 0 K K 0 0 0
0 1 K 0 K 0 0
1 0 K 0 0 K 0
1 1 K 0 0 0 K
Implementación con puertas lógicas
S1 S0 E
D0
D1
D2
D3
Demultiplexor con salida activa a nivel alto
Demultiplexor
S1 S0 E D0 D1 D2 D3
0 0 K K 1 1 1
0 1 K 1 K 1 1
1 0 K 1 1 K 1
1 1 K 1 1 1 K
Implementación con puertas lógicas
S1 S0 E
D0
D1
D2
D3
Demultiplexor con salida activa a nivel bajo y entrada activa a nivel bajo
Implementación de funciones con módulos combinacionales
Implementación de funciones: con decodificadores (I)
A B C F
0 0 0 10 0 1 00 1 0 10 1 1 01 0 0 01 0 1 01 1 0 11 1 1 1
DEC3x8
CBA
0
1
2
0
1
2
3
4
5
6
7
F
Se necesitan puertas de tantas entradas como 1’s hay
Salidas activas a nivel alto => generador de minitérminos Suma de productos = suma de minitérminos
• Si una función tiene muchos 1’s, es preferible implementar la función complementaria, que tendrá pocos 1’s, y finalmente complementar la complementaria.
• En la práctica esto equivale a coger un puerta NOR (OR seguida de inversor) con los 0’s
Implementación de funciones: con decodificadores (II)
1’s f
f’0’s
f f0’s
OR
NOR
Implementación de funciones: con decodificadores (III) Salidas activas a nivel bajo => generador de maxitérminos Producto de sumas = producto de maxitérminos
A B C F
0 0 0 10 0 1 00 1 0 10 1 1 01 0 0 01 0 1 01 1 0 11 1 1 1
DEC3x8
CBA
0
1
2
0
1
2
3
4
5
6
7
F0
1
1
1
1
1
1
1
1
0
1
1
1
0
1111
0 1
1101
1
1
1
0
1
1
1
1
Implementación de funciones: con decodificadores (IV)
• Si una función tiene muchos 1’s, es preferible implementar la función complementaria, que tendrá pocos 1’s, y finalmente complementar la complementaria.
• En la práctica equivale a coger un puerta AND (NAND seguida de inversor) con los 0’s
1’s f
f’0’s
f f0’s
NAND
AND
Implementación de funciones: con multiplexores
8:1 MUX
1 0 1 0 0 0 1 1
0 1 2 3 4 5 6 7 S2 S1 S0
A B C
F
S1 S0
A B
4:1 MUX
0 1 2 3
C
C01
F
A 0 0 0 0 1 1 1 1
B 0 0 1 1 0 0 1 1
C 0 1 0 1 0 1 0 1
F 1 0 1 0 0 0 1 1
C
C
0
1
F(A,B,C) = m0 + m2 + m6 + m7
¡¡¡ojo con el orden de las variables!!!
nº variables = señales de control
nº variables > señales de control
Caso 1
Con un único Mux 8x1
Con un único Mux 4x1
A B C D F
0 0 0 0 1
0 0 0 1 1
0 0 1 0 0
0 0 1 1 1
0 1 0 0 1
0 1 0 1 1
0 1 1 0 0
0 1 1 1 0
1 0 0 0 0
1 0 0 1 0
1 0 1 0 0
1 0 1 1 1
1 1 0 0 1
1 1 0 1 0
1 1 1 0 1
1 1 1 1 0
B=0, C=0
A D E0
0 0 1
0 1 1
1 0 0
1 1 0
B=0, C=1
A D E1
0 0 0
0 1 1
1 0 0
1 1 1
B=1, C=0
A D E2
0 0 1
0 1 1
1 0 1
1 1 0
B=1, C=1
A D E3
0 0 0
0 1 0
1 0 1
1 1 0
Caso 2 Implementar F con un único Mux 4x1
Redes de módulos combinacionales
Redes modulares: Codificadores
Codificador 8x3 a partir de dos 4x2– S es una salida de control que se activa cuando se usa un
determinado COD 4x2 más uno 2x1
Redes modulares: Decodificadores
Decodificador 3x8 a partir de decodificadores 2x4
D0D1D2D3
DEC2x4
A0A1
A2
D4D5D6D7
DEC2x4
E
E
0
1
2
3
0
1
2
3
0
1
0
1
Decodificador 4x16 a partir de decodificadores 2x4
Redes Modulares: Multiplexores
4:1 mux
4:1 mux
8:1 mux
2:1 mux
0 1 2 3
0 1 2 3
S
S 1 S 0
S 1 S 0
Z
A C B
I 0
I 1
I 2
I 3
I 4
I 5
I 6 I 7
0
1
Multiplexor 8x1 a partir de multiplexores 4x1 y 2x1– v1: 2 MUX 4x1 / 1 MUX 2x1– v2:1 MUX 4x1 / 2 MUX 2x1
0
1 S
0
1 S
0
1 S
0
1 S
0
1
S0
2
3 S1
C
A B
I 0
I 1
I 2
I 3
I 4
I 5
I 6
I 7
C
C
C
Z
Z(A,B,C)
MUX4x1
MUX4x1
MUX2x1
MUX2x1
MUX2x1
MUX2x1
MUX2x1
MUX4x1
B C A
Z(A3,A2,A1,A0)
Multiplexor 16x1 a partir de multiplexores 4x1
Redes modulares: DEC y MUX
Z(A3,A2,A1,A0)
Final del Tema 7