Clase-5 Circuitos Aritmeticos

35
Clase 5: Circuitos Aritméticos Clase 5: Circuitos Aritméticos

Transcript of Clase-5 Circuitos Aritmeticos

Clase 5: Circuitos Aritméticos Clase 5: Circuitos Aritméticos

2

ComparadoresComparadores

§ Tomando la tabla de verdad para una XNOR:

§ Se puede verificar la igualdad de dos variables a partir de la salida de la función.

3

§ Para varias 4 variables se tiene entonces:

COMPARADOR A=BCOMPARADOR A=B

4

§ 7485

Comparador de 4 bits comercialComparador de 4 bits comercial

5 Präsentation

ADICIÓN BINARIA:dec

Regla 1: 0 + 0 = 0

Regla 2: 0 + 1 = 1

Regla 3: 1 + 0 = 1

Regla 4: 1 + 1 = 2

Aritmética binariaAritmética binaria

6 Präsentation

ADICIÓN BINARIA:dec bin

Regla 1: 0 + 0 = 0 0 0

Regla 2: 0 + 1 = 1 0 1

Regla 3: 1 + 0 = 1 0 1

Regla 4: 1 + 1 = 2 1 0

Aritmética binariaAritmética binaria

7 Präsentation

ADICIÓN BINARIA:A + B dec bin

Regla 1: 0 + 0 = 0 0 0

Regla 2: 0 + 1 = 1 0 1

Regla 3: 1 + 0 = 1 0 1

Regla 4: 1 + 1 = 2 1 0

suma

acarreo

Aritmética binariaAritmética binaria

8 Präsentation

S = A’.B + A.B’ = A⊕B C = A.B

¿Cómo sería el circuito combinacional de suma y acarreo?

Suma de dos operandos de 1 bit:

0111

1001

1010

0000

S: SumaC: AcarreoBA

SalidasEntradas

Semi-sumadorSemi-sumador

9 Präsentation

Suma de dos operandos de 1 bit:

A

Bsuma

acarreo

Semi-sumadorSemi-sumador

10 Präsentation

A

Bsuma (∑)

acarreo (C)

half adder

Suma de dos operandos de 1 bit:

Semi-sumadorSemi-sumador

A

B

C

HalfAdder

11 Präsentation

¿Cómo se suman números de dos bits?

Ej:

1 1+ 1 1___________________

Sumador completoSumador completo

12 Präsentation

¿Cómo se suman números de dos bits?

Ej:11 1

+ 1 1___________________

0

Sumador completoSumador completo

13 Präsentation

¿Cómo se suman números de dos bits?

Ej:1 1

1 1+ 1 1___________________

1 0

Sumador completoSumador completo

14 Präsentation

¿Cómo se suman números de dos bits?

Ej:1 1

1 1+ 1 1___________________

1 1 0

Sumador completoSumador completo

15 Präsentation

¿Cómo se suman números de dos bits?

Ej:1 1

1 1+ 1 1___________________

1 1 0

Se necesita un Full Adder que considere el acarreo.

Full AdderA

B

Cin ∑

C

Sumador completoSumador completo

16

§ Tiene acarreo de entrada

11111

01011

01101

10001

01110

10010

10100

00000

SCoutCinBA

Sumador completoSumador completo

17

§ Suma = A’.B’.Cin + A’.B.Cin’ + A.B’.Cin’ + A.B.Cin§ Cout = A.B + A.Cin + B.Cin CinB)(ASuma ⊕⊕=

Sumador completoSumador completo

18 Präsentation

Full Adder

HalfAdder

A

B

Cin ∑

C

HalfAdder

C

C

A

B

Sumador completo con semi-sumadoresSumador completo con semi-sumadores

Cin

B

C

Full AdderA

19 Präsentation

Ejercicio: diseñar un sumador de cuatro bits usando half y/o full adders.

Cin

B

C

Full AdderA

A

B

C

HalfAdder

A4 A3 A2 A1

B4 B3 B2 B1+

C4 S4 S3 S2 S1

Sumador completo de 4 bitsSumador completo de 4 bits

20 Präsentation

A1

B1

CHA

CFA

CFA

Cin

CFA

Cin

CinA2

B2

A3

B3

A4

B4

S1

S2

S3

S4

C4=Cout

sumador de cuatro bits

A4 A3 A2 A1

B4 B3 B2 B1+

C4 S4 S3 S2 S1

Sumador completo de 4 bitsSumador completo de 4 bits

CinB4 B3 B2 B1 A4 A3 A2 A1

S4 S3 S2 S1C4

FULL ADDER de 4 Bits

21 Präsentation

A4 A3 A2 A1

B4 B3 B2 B1+

C4 S4 S3 S2 S1

Sumador completo de 4 bitsSumador completo de 4 bits

22 Präsentation

Aritmética binariaAritmética binaria

23 Präsentation

Aritmética binariaAritmética binaria

24 Präsentation

Resta binaria: Complemento a 1Resta binaria: Complemento a 1

M1 M0

S0S1

D1 D0

CE

CS

Sumador de 2 bits

Se requiere interpretar el resultado

Signo en Cs

Cs = 1 positivoCs = 0 negativo

ES

control

control E S

0 0 10 1 01 0 01 1 1

E S

E S

NOTA:Explicar como hacer una pequeña ALU que sumey reste con complemento a 1.

25 Präsentation

Aritmética binariaAritmética binaria

26 Präsentation

8 - 6 = 2

M = 8 1000S = 6 0110 C2 1010

10001010

1 0010

+

REGLA

Si hay acarreo el resultado es positivoy se obtiene directamente

6 - 8 = -2

M = 6 0110S = 8 1000 C2 1000

01101000

0 1110

+

REGLA

Si no hay acarreo el resultado el negativoy está en complemento a 2

C20010

Resta binaria: Complemento a 2Resta binaria: Complemento a 2Ejemplo

27 Präsentation

SUSTRACCIÓN BINARIA:

Para restar dos números binarios se utiliza el complemento a 2.

El complemento a 2 de un número binario N, es su complemento + 1 = 1°(N) + 1 = N’ + 1.

Ej: 0010 1011

1101 0100+ 11101 0101

Complemento a 2

Resta binaria: Complemento a 2Resta binaria: Complemento a 2

28 Präsentation

M1 M0

S0S1

D1 D0

CE

CS

Sumador de 2 bits

Se requiere interpretar el resultado

Signo en Cs

Cs = 1 positivoCs = 0 negativo

"1"

Este sistema es mas rápido que el otro ya que el Acarreo no tiene que realimentarse.

NOTA:Explicar como hacer una pequeña ALU que sumey reste con complemento a 2.

Resta binaria: Complemento a 2Resta binaria: Complemento a 2

29 Präsentation

Ejercicio: diseñar un circuito combinacional que calcule el complemento a 2 de un número de 8 bits.

Aritmética binariaAritmética binaria

CinB4 B3 B2 B1 A4 A3 A2 A1

S4 S3 S2 S1C4

FULL ADDER de 4 Bits

30 Präsentation

SUSTRACCIÓN BINARIA:

Para calcular la resta binaria C = A - B

• se calcula: 2°(B) = complemento a 2 de B.

• se calcula: C = A + 2°(B)

Aritmética binariaAritmética binaria

31 Präsentation

SUSTRACCIÓN BINARIA:Para calcular la resta binaria C = A-B• se calcula: 2°(B) = complemento a 2 de B.• se calcula: C = A+2°(B).

Ejemplo: 57 – 34:

57: 0011 1001 (A)34: 0010 0010 (B)not 1101 1101 not(B)+1 1101 1110 2°(B)

10001 0111 A+2°(B) => 0001 0111 = 23dec

Aritmética binariaAritmética binaria

32

0011

1001

1110

0000

Resta: R

Deuda:D

BA

§ R = A’.B+A.B’ = A⊕B D = A’.B

Semi restador: A - BSemi restador: A - B

33

§ Suma = Resta = A’.B’.Din+A’.B.Din’+A.B’.Din’+A.B.Din§ Deuda = D = A’.B+A’.Din+B.Din

1111100011001011000101110110101110000000RDDinBA

Restador completoRestador completo

34

§ Suma = Resta = (A ⊕ B) ⊕ Din

§ Deuda = Dout = A’.B+A’.Din+B.Din

Restador completoRestador completo

35 Präsentation

ALU para sumar/restar 2 bitsALU para sumar/restar 2 bits

M1 M0

S0S1

D1 D0

CE

C

Sumador de 2 bits

k: control=0 Suma=1 Resta

M S

D

ALUcontrol C