1 / 41

Subsistemas aritméticos y lógicos

Subsistemas aritméticos y lógicos. Tema 8. ¿Qué sabrás al final del capítulo?. Diseño de Sumadores Binarios Semisumadores Sumador completo Sumador con acarreo serie Sumador con acarreo anticipado Sumador / Restador Sumador BCD Diseño de Multiplicadores aritméticos

kisha
Download Presentation

Subsistemas aritméticos y lógicos

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Subsistemas aritméticos y lógicos Tema 8

  2. ¿Qué sabrás al final del capítulo? • Diseño de Sumadores Binarios • Semisumadores • Sumador completo • Sumador con acarreo serie • Sumador con acarreo anticipado • Sumador / Restador • Sumador BCD • Diseño de Multiplicadores aritméticos • Funcionamiento de los módulos lógicos • Comparadores • Generadores y detectores de paridad • Conversores de códigos • Diseño de una unidad aritmético-lógica elemental

  3. Sumador Binario

  4. A B C S 0 0 0 0 0 1 0 1 1 0 0 1 1 1 1 0 Semisumador (Half Adder) • La operación de suma aritmética tiene como resultado suma y acarreo • No podemos propagar acarreos con semisumadores S = A  B Propagación (Pi) C = A · B Generación (Gi)

  5. Ai Bi Ci Ci+1 Si 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 Sumador Completo (Full Adder) • Funcionamiento similar al semisumador añadiendo el acarreo de entrada Si = Ai Bi Ci = Pi Ci Ci+1 = (Ai + Bi) Ci + (Ai Bi) =(Ai Bi) Ci + (Ai Bi) = Pi Ci + Gi

  6. Sumador completo • Podemos diseñarlo a partir de dos semisumadores

  7. semisumador semisumador Sumador Completo • ¿Cuál será el camino crítico?

  8. Sumador Completo tpo. retardo por puerta = 5 ns La salida Si llega 10 ns de retardo respecto a las entradas A y B y sólo 5 ns respecto a la entrada C La salida Ci+1 llega 15 ns de retardo respecto a las entradas A y B y sólo 10 ns respecto a la entrada C camino crítico semisumador semisumador

  9. An-1 Bn-1 A2 B2 A1 B1 A0 B0 Cn FA FA FA C2 C1 C0 FA C3 Cn-1 … Sn Sn-1 S2 S1 S0 Sumador paralelo con acarreo serie

  10. Sumador paralelo con acarreo serie • Cada sumador completo realiza una suma • Genera un acarreo que se le transmite al sumador siguiente • Los tiempos se van acumulando • Si ts es el tiempo para realizar una suma y tc el tiempo para realizar un acarreo, resulta: • Dato en S0 C1 S1 C2 ……… Sn-1 Sn = Cn Tiempo ts tc ts + tc 2 tc ……… ts + (n-1) tc n tc

  11. Sumador con acarreo anticipado • Los acarreos se evalúan anticipadamente con lógica de 2 niveles de puertas • Las sumas se realizan posteriormente en paralelo • En primer lugar se obtienen los términos de generación y propagación Pi = Ai  Bi Todos los términos se calculan en paralelo desde el primer momento Gi = Ai Bi

  12. Sumador con acarreo anticipado • Cálculo del acarreo • desarrollando la fórmula iterativa Ci+1 = Pi Ci + Gi todos los acarreos dependen de propagaciones, generaciones y acarreo inicial • cualquier función booleana puede expresarse con lógica de 2 niveles de puertas • Cálculo de las sumas C1 = P0 C0 + G0 C2 = P1 C1 + G1 = P1 (P0 C0 + G0) + G1 = P1P0C0 + P1G0 + G1 C3 = P2 C2 + G2 = P2P1P0C0 + P2P1G0 + P2G1 + G2 C4 = P3 C3 + G3 = P3P21P0C0+P3P2P1G0+P3P2G1+P3G2+G3 Si = Pi Ci

  13. Sumador con acarreo anticipado 1.- Propagación y Generación t 3.- Sumas t 2t 2.- Acarreos

  14. Sumadores de 4 bits

  15. Sumador / Restador • El uso del complemento a 2 permite realizar sumas y restas con un sumador y un poco de lógica adicional A3 A2 A1 A0 B3 B2 B1 B0 S/R S/R = 0 suma S/R = 1 resta sumador S4 S3 S2 S1 S0 Complementador a 2

  16. Código BCD • El código BCD es un código de 4 bits que representa los 10 dígitos decimales como si fueran binarios naturales • Cada dígito decimal se sustituye por sus cuatro bits • El código BCD, al igual que el binario, es un código ponderado de pesos 8 4 2 1 • Puede haber otros códigos BCD con otra relación de ponderación o, incluso, no ponderados

  17. Otros códigos BCD autocomplementarios Decimal Código BCD Código BCD exceso3 Código BCD Aiken 0 0000 0011 0000 1 0001 0100 0001 2 0010 0101 0010 3 0011 0110 0011 4 0100 0111 0100 5 0101 1000 1011 6 0110 1001 1100 7 0111 1010 1101 8 1000 1011 1110 9 1001 1100 1111 Ponderado 8 4 2 1 No Ponderado Ponderado 2 4 2 1

  18. Sumador BCD • Suma números codificados en BCD, y genera otro BCD • Si el resultado es > 10 es necesario corregir restando 10 A3 A2 A1 A0 B3 B2 B1 B0 sumador corrección Z4 Z3 Z2 Z1 Z0 corregir? corregir = 0 “0000” 0 corregir = 1 “0110” últimos 4 bits de +6 = últimos 4 bits de -10 sumador S4 S3 S2 S1 S0

  19. Multiplicadores combinacionales

  20. Multiplicadores • La multiplicación aritmética coincide con el producto lógico FA FA FA FA FA FA

  21. Módulos lógicos

  22. Comparadores • Comparador de 1 bit A0>B0 A0=B0 A0<B0 • Comparador de 2 bits A1>B1 ó (A1=B1 y A0>B0) A1=B1 y A0=B0 A1<B1 ó (A1=B1 y A0<B0)

  23. Comparador de 4 bits D An<Bn

  24. Comparadores • Comparan dos números en binario, activando únicamente la salida que corresponda

  25. Comparador • 7485(comparador de 4 bits)

  26. Comparador • Diseño de un comparador de 8 bits a partir de dos 7485

  27. Generador de paridad • Paridad par: Número par de unos, incluyendo P • Paridad impar: Número impar de unos, incluyendo I Para 3 variables Para 3 variables Para 4 variables Para 4 variables

  28. Conversores de código • Pueden haber conversores para cualquier pareja de códigos • Se pueden construir con un codificador y un decodificador • Ejemplo:

  29. 21 1 0 0 0 0 1 F E D C B A 74184 X5 X4 X3 X2 X1 X0 0 0 1 0 1 1 Conversores de código • 74184. Conversor de un número en BCD de 6 bits (hasta 39) a binario

  30. Diseño de una ALU elemental

  31. 4 A ALU 5 F 4 B S3 S2 S1 S0 Diseño de una ALU elemental • Trataremos de diseñar una unidad aritmético-lógica sencilla • Características: • Datos de entrada: A y B de 4 bits • 4 líneas de selección (hasta 16 operaciones diferentes) • Operaciones lógicas y aritméticas

  32. Diseño de una ALU elemental • Operaciones:

  33. Diseño de una ALU elemental • Diagrama de bloques de la ALU

  34. A and 0 B A or 1 B MUX 4x1 F A 2 not A 3 xor B S2 S1 Diseño de una ALU elemental • Parte lógica, para cada bit 4 4 4 4 4 4 4 4 4 4 4 1 0 4

  35. Diseño de una ALU elemental • Parte aritmética: A+B+S0=A+D+S0 A+1111c2+S0=A+D+S0 A+S0=A+D+S0 A+B’+S0=A+D+S0

  36. b3 a3 b2 a2 b1 a1 b0 a0 S2 S1 BLOQUE B d0 d3 d2 d1 Sumador completo 4bits S0 f0 f4 f3 f2 f1

  37. 0 1 1 1 0 0 0 1 Bloque B S1bi S2 S1 bi di 0 0 0 0 0 0 1 1 0 1 0 1 0 1 1 1 1 0 0 0 1 0 1 0 1 1 0 1 1 1 1 0 S2 00 01 11 10 0 1 Para i desde 0 hasta 3

  38. b3 b2 b1 b0 S2 S1 BLOQUE B d0 d3 d2 d1 Bloque B

  39. ALU 74LS181

  40. Hemos aprendido…. • Diseño de Sumadores Binarios • Semisumadores • Sumador completo • Sumador con acarreo serie • Sumador con acarreo anticipado • Sumador/Restador • Sumador BCD • Diseñar Multiplicadores aritméticos • Funcionamiento de los módulos lógicos • Comparadores • Generadores y detectores de paridad • Conversores de códigos • Diseñar una Unidad Aritmético-Lógica elemental

  41. Final del tema 8

More Related