Sistemas Electrónicos Digitales 2 o Curso Ingeniería T écnica Industrial Lógica Modular
description
Transcript of Sistemas Electrónicos Digitales 2 o Curso Ingeniería T écnica Industrial Lógica Modular
Sistemas Electrónicos Digitales
2o Curso Ingeniería Técnica Industrial
Lógica Modular
José Luis Rosselló SanzGrupo de Tecnología
ElectrónicaUniversitat de les Illes
Balears
Índice
• Introducción• Codificadores/Decodificadores• Multiplexores/Demultiplexores• Generadores/Comprobadores de
paridad• Sumadores • Comparadores
Sistema Combinacional
Entradas Salidas
Sistema secuencial
Entradas Salidas
Memoria
Sistema combinacional
Entradas SalidasM bits N bits
Entradas Salidas..M..
.
.N..
Decodificadores
E a1 a0 Q0 Q1 Q2 Q3
1 - - 0 0 0 0
0 0 0 1 0 0 0
0 0 1 0 1 0 0
0 1 0 0 0 1 0
0 1 1 0 0 0 1
a0 a1 E
Q0
Q1
Q2
Q3
Decodificadores
• Generan los productos canónicos de las variables de entrada al sistema.
• Consisten en ‘n’ entradas y ‘2n’ salidas
• Aplicación: Conversores de código
Decodificador MSI 74154
Decodificador 74154
Lógica modular con decodificadores
• Problema:– Implementar, con dos
decodificadores 74154 un decodificador de 5 a 32 bits
A0
A1
A2
A3
Q0
Q1
Q2
Q3
Q4
Q5
Q6
Q7
Q8
Q9
Q10
Q11
Q12
Q13
Q14
Q15
E1
E0
0
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
74154
A0
A1
A2
A3
Q0
Q1
Q2
Q3
Q4
Q5
Q6
Q7
Q8
Q9
Q10
Q11
Q12
Q13
Q14
Q15
E1
E0
74154
A0
A1
A2
A3
A4 A4
Decodificador BCD-7 Segmentos
a
b
c
d
e
fg
a0
a1 a2 a3
BCD-7 Segmentos
a
b
c
d
e
f
g
Decodificador BCD-7 Segmentos
a
b
c
d
e
fg
a3 a2 a1 a0
a b c d e f g
0 0 0 0
1 1 1 1 1 1 0
0 0 0 1
0 1 1 0 0 0 0
0 0 1 0
1 1 0 1 1 0 1
0 0 1 1
1 1 1 1 0 0 1
0 1 0 0
0 1 1 0 0 1 1
0 1 0 1
1 0 1 1 0 1 1
0 1 1 0
1 0 1 1 1 1 1
0 1 1 1
1 1 1 0 0 0 0
1 0 0 0
1 1 1 1 1 1 1
1 0 0 1
1 1 1 1 0 1 1
Codificadores
• Realizan la función inversa al decodificador– Ej: Codificación de un teclado – Codificador con prioridad– Codificador Decimal-BCD– Codificador Octal-Binario
Conversor Decimal-BCDDigit
o A3
A2
A1
A0
0 0 0 0 0
1 0 0 0 1
2 0 0 1 0
3 0 0 1 1
4 0 1 0 0
5 0 1 0 1
6 0 1 1 0
7 0 1 1 1
8 1 0 0 0
9 1 0 0 1
0
1
2
3
4
5
6
7
8
9
Decimal-BCD
A0
A1
A2
A3
Conversor Decimal-BCD
A0 (LSB)
A1
A2
A3 (MSB)
1
23
4567
8
9
Conversor Octal-Binario
Digito
A2
A1
A0
0 0 0 0
1 0 0 1
2 0 1 0
3 0 1 1
4 1 0 0
5 1 0 1
6 1 1 0
7 1 1 1
0
1
2
3
4
5
6
7
Octal-BCD
A0
A1
A2
Conversor MSI 74x148
0 1 2 3 4 5 6 7 EI
74F148
EO 1 2 4 GS
Conversor de MSI 74x148EI 0 1 2 3 4 5
6 7EO GS 4 2 1
1 - - - - - - - -
1 1 1 1 1
0 1 1 1 1 1 1 1 1
0 1 1 1 1
0 0 1 1 1 1 1 1 1
1 0 1 1 1
0 - 0 1 1 1 1 1 1
1 0 1 1 0
0 - - 0 1 1 1 1 1
1 0 1 0 1
0 - - - 0 1 1 1 1
1 0 1 0 0
0 - - - - 0 1 1 1
1 0 0 1 1
0 - - - - - 0 1 1
1 0 0 1 0
0 - - - - - - 0 1
1 0 0 0 1
0 - - - - - - - 0
1 0 0 0 0
Conversor de 16 a 4 líneas
0 1 2 3 4 5 6 7 EI
74F148
EO 1 2 4 GS
0 1 2 3 4 5 6 7 EI
74F148
EO 1 2 4 GS
A0 A1 A2 A3
0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
1 1 1 1 1 0 1 1 1 1 1 1 1 1 1 1
0 1 0 0 1 1 1
1 0 1 0
1 1 1 1 1 1 1 1 1 1 1 0 1 1 1 1
1 1 1 1 0 0 1
1 1 0 1
Multiplexores • 2N canales de entrada, un canal de
salida, N bits de control0
1
2
.
.
.
.
.
2N
1 2 3 . . . . N
MUX
Salida
Multiplexor de 4 entradas de 1 bitS0 S1
I0
I1
I2
I3
Salida
Multiplexor 74157 74158
Implementación de funciones
• Salida=i ( Ii mi EN )
• Por tanto se puede implementar cualquier función lógica F=i (fi mi)
Entrada ‘i’Mintérmino de control
Ejemplo de implementación
0
1
2
3
4
5
6
7
S2 S1 S0
MUX
Salida
0
1
0
0
0
1
1
1
a b c
f(a,b,c)= ab+ac+bc
A B C
F
0 0 0
0
0 0 1
1
0 1 0
0
0 1 1
0
1 0 0
0
1 0 1
1
1 1 0
1
1 1 1
1
Implementación funciones de 4
variables
A B C
DF
0 0 0
0 0
0 0 0
1 0
0 0 1
0 0
0 0 1
1 0
0 1 0
0 1
0 1 0
1 1
0 1 1
0 1
0 1 1
1 1
1 0 0
0 0
1 0 0
1 0
1 0 1
0 1
1 0 1
1 0
1 1 0
0 0
1 1 0
1 0
1 1 1
0 1
1 1 1
1 0
0
1
2
3
4
5
6
7
S2 S1 S0
MUX
Salida F
A B C D F F
0 0 0
0 0
00 0
0 1 0
0 0 1
0 0
00 0
1 1 0
0 1 0
0 1
10 1
0 1 1
0 1 1
0 1
10 1
1 1 1
1 0 0
0 0
01 0
0 1 0
1 0 1
0 1
D1 0
1 1 0
1 1 0
0 0
01 1
0 1 0
1 1 1
0 1
D1 1
1 1 0
0
1
2
3
4
5
6
7
S2 S1 S0
MUX
Salida
0
0
1
1
0
D
1
D
A B C
F
EjercicioA B C
DF
0 0 0
0 0
0 0 0
1 0
0 0 1
0 0
0 0 1
1 0
0 1 0
0 1
0 1 0
1 1
0 1 1
0 1
0 1 1
1 1
1 0 0
0 0
1 0 0
1 0
1 0 1
0 1
1 0 1
1 0
1 1 0
0 0
1 1 0
1 0
1 1 1
0 1
1 1 1
1 0
Implementar la función F a partir de un multiplexor de 4 bits y de la lógica necesaria
Demultiplexores • Un canal de entrada, 2N canales de
salida, N bits de control0
1
2
.
.
.
.
.
2N
1 2 3 . . . . N
DEMUX
Entrada
Demultiplexor de 1 línea a 4 líneasS0 S1
I0 D0
D1
D2
D3
Idéntico que el decodificador de 2 a 4
Demultiplexor utilizando el 74154
A0
A1
A2
A3
Q0
Q1
Q2
Q3
Q4
Q5
Q6
Q7
Q8
Q9
Q10
Q11
Q12
Q13
Q14
Q15
E1
E0
D0
D1
D2
D3
D4
D5
D6
D7
D8
D9
D10
D11
D12
D13
D14
D15
74154
S0
S1
S2
S3
Entrada
0
Demultiplexor utilizando el 74154
A0
A1
A2
A3
Q0
Q1
Q2
Q3
Q4
Q5
Q6
Q7
Q8
Q9
Q10
Q11
Q12
Q13
Q14
Q15
E1
E0
D0
D1
D2
D3
D4
D5
D6
D7
D8
D9
D10
D11
D12
D13
D14
D15
74154S0
S1
S2
S3
Entrada
S4
A0
A1
A2
A3
Q0
Q1
Q2
Q3
Q4
Q5
Q6
Q7
Q8
Q9
Q10
Q11
Q12
Q13
Q14
Q15
E1
E0
D16
D17
D18
D19
D20
D21
D22
D23
D24
D25
D26
D27
D28
D29
D30
D31
74154S0
S1
S2
S3
Entrada
Generador/Comprobador de paridad
A0
A1
X es 1 si el número de ‘unos’
es impar
A0
A1
A2
A3
X es 1 si el número de ‘unos’
es impar
A B AB0 0 0
0 1 1
1 0 1
1 1 0
Generador/Comprobador de paridad74280
74280A
B
C
D Par
E Impar
F
G
H
I
Número de entradas en nivel ALTO
Salidas
ParImpar
0, 2, 4, 6, 8
1 0
1, 3, 5, 7, 9
0 1
0
1
2
3
4
5
6
7
S2 S1 S0
MUX
Salida
D0
D1
D2
D3
D4
D5
D6
Transmisión datos
D7
S2..00 1 2 3 4 5 6 7 0 1 2 3 4 5 6 7
SalidaD0 D1 D2 D3 D4 D5 D6 D7 D0 D1 D2 D3 D4 D5 D6 D7
74280A
B
C
D Par
E Impar
F
G
H
I
0
1
2
3
4
5
6
7
S2 S1 S0
MUX
Salida
S0S1S2
D0
D1
D2
D3
D4
D5
D6
D0
D1
D2
D3
D4
D5
D6
00
Bit de paridadpar
Transmisión datos
0
1
2
3
4
5
6
7
S2 S1 S0
DEMUX
Entrada
REGISTRO 74280
Impar
Com
pro
bad
or
pari
dad
Par
0
Error
1 si Impar
111
Sumadores básicos
Semisumador
A B Cout 0 0 0 0
0 1 0 1
1 0 0 1
1 1 1 0
=AB
CoutA
B
A
B Cout
Sumador completo
Cin A B Cout 0 0 0 0 0
0 0 1 0 1
0 1 0 0 1
0 1 1 1 0
1 0 0 0 1
1 0 1 1 0
1 1 0 1 0
1 1 1 1 1
Cout
A
B
Cin =AB C
A
B
Cout
Cin
Ejercicio: Implementa un sumador completo a partir de dos semisumadores y una puerta
OR
Sumador de 4 bits (propag. acarreo)
A
B
Cin Cout
A
B
Cin Cout
A
B
Cin Cout
A
B
Cin Cout
C-1
A0 A1
A2 A3
B3B2
B0 B1
0 1
2 3
Cout
4
Acarreo de grupo hacia adelante
A3..0 +B3..0=3..0
C0=A0B0+(A0+B0)C-1
C0=G0 + P0C-1
Pi= Ai+Bi Gi= AiBi
C1=G1+P1C0= G1+P1G0+ P1P0C -1
C2=G2+P2C1= G2+P2G1+ P2P1G0+ P2P1P0C -1
C3=G3+P3G2+P3P2G1+ P3P2P1G0+ P3P2P1P0C-1
Ai
i
Bi Ci=Gi+PiCi-1
Ci-1
C-1
A0
B0
0
P0
G0
A
B CP
Cin CG
A1
B1
1
P1
G1
A
B CP
Cin CG
A2
B2
2
P2
G2
A
B CP
Cin CG
A3
B3
Cout
P3
G3
CPG
P0 , G0
Cin C0
CPG
P1 , G1
P0 , G0
Cin C1
CPG
P2 , G2
P1 , G1
P0 , G0
Cin C2
CPG
P3 , G3 P2 , G2
P1 , G1 P0 , G0
Cin C3
A
B CP
Cin CG
C0 C1 C2
3
3
Sumadores
• Sumador de propagación del acarreo– Más pequeños– Rizo del acarreo– Tiempo de propagación N
• Sumador de acarreo de grupo hacia adelante– Salidas sincronizadas– Tiempo de propagación fijo 3– Ocupan más área (en proporción a N)
)4(1000
)3(0000
)2(0100
)(0110
1
0111
)3(1000
1
0111
Sumador MSI de 4 bits(Ej. 74x83A ó 74x283)
A
B
Cin Cout
4b4b
4b
Ejercicio: Implementar un sumador de 16 bits a partir de sumadores de 4 bits
Unidades lógico-aritméticas MSI
ALU de 4bits 74x382
S2 S1 S0 Función0 0 0 F=0000
0 0 1F=B menos A menos 1 más Cin
0 1 0F=A menos B menos 1 más Cin
0 1 1 F=A más B más Cin
1 0 0 F=AB
1 0 1 F=A+B
1 1 0 F=AB
1 1 1 F=1111
S0
S1
S2 OVRCIN COUT
A0 F0B0
A1 F1B1
A2 F2B2
A3 F3B3
OVR=1 Para desbordamiento con números con signo
Implementar un sumador de 8 bits
Sumador de 8 bits
S0
S1
S2 OVRCIN COUT
A0 F0B0
A1 F1B1
A2 F2B2
A3 F3B3
S0
S1
S2 OVRCIN COUT
A0 F0B0
A1 F1B1
A2 F2B2
A3 F3B3
A0 B0
A1 B1
A2 B2
A3 B3
A4 B4
A5 B5
A6 B6
A7 B7
1100
110
0
1
2
3
4
5
6
7
OVRCout
¿Qué cambios introducirías para hacer un restador?
Comparadores
A
B
Comparador básico
1 si son distintos0 si son iguales
A0
B0
A1
B1
Comparadorde dos bits
¿A=B?
Comparador de magnitud MSI
74x85A0
A1
A2
A3
A>B A>BA=B A=BA<B A<BB0
B1
B2
B3
TODA LA INFORMACIÓN EN EL DATASHEETDEL
FABRICANTE
Comparador 74x85
CONFIGURACIÓN DE PINES DEL INTEGRADO:
RELACIÓN CON ENTRADAS Y SALIDAS
DESCRIPCIÓN DE FUNCIONAMIENTO:TEXTOS EN INGLÉS
Comparador 74x85SÍMBOLO ESQUEMÁTICO:
CLÁSICO Y ESTÁNDAR IEEE
Comparador 74x85
Comparador 74x85
Comparador 74x85
Configuración en paralelo para comparar dos
números de 24 bits
Comparación en serie
74x85A0
A1
A2
A3
A>B A>BA=B A=BA<B A<BB0
B1
B2
B3
A0 A1
A2 A3
0 10B0 B1
B2
B3
74x85A0
A1
A2
A3
A>B A>BA=B A=BA<B A<BB0
B1
B2
B3
A4 A5
A6 A7
B4 B5
B6
B7
A>BA=BA<B
(LSB)
(MSB)
Comparación en serie
74x85A0
A1
A2
A3
A>B A>BA=B A=BA<B A<BB0
B1
B2
B3
0 01 10 100 011
74x85A0
A1
A2
A3
A>B A>BA=B A=BA<B A<BB0
B1
B2
B3
0 11 10 101 000
001
(LSB)
(MSB)
Comparación en serie
74x85A0
A1
A2
A3
A>B A>BA=B A=BA<B A<BB0
B1
B2
B3
0 01 10 100 011
74x85A0
A1
A2
A3
A>B A>BA=B A=BA<B A<BB0
B1
B2
B3
1 00 00 101 000
010
(LSB)
(MSB)