Sistemas Electrónicos Digitales 2 o Curso Ingeniería T écnica Industrial Lógica Modular

Post on 05-Jan-2016

48 views 3 download

description

Sistemas Electrónicos Digitales 2 o Curso Ingeniería T écnica Industrial Lógica Modular. José Luis Rosselló Sanz Grupo de Tecnología Electrónica Universitat de les Illes Balears. Índice. Introducción Codificadores/Decodificadores Multiplexores/Demultiplexores - PowerPoint PPT Presentation

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)