6_Circuitos_Aritmeticos

39
 ELECTRÓNICA DIGITAL Circuitos Aritméticos

Transcript of 6_Circuitos_Aritmeticos

Page 1: 6_Circuitos_Aritmeticos

5/9/2018 6_Circuitos_Aritmeticos - slidepdf.com

http://slidepdf.com/reader/full/6circuitosaritmeticos 1/39

 

ELECTRÓNICA DIGITAL

Circuitos Aritméticos

Page 2: 6_Circuitos_Aritmeticos

5/9/2018 6_Circuitos_Aritmeticos - slidepdf.com

http://slidepdf.com/reader/full/6circuitosaritmeticos 2/39

 

Agenda

1. Comparador Lógico2. Circuitos Sumadores3. Circuito Restador

4. Unidad lógico-aritmética5. Circuito Multiplicador6. Circuito Divisor

Page 3: 6_Circuitos_Aritmeticos

5/9/2018 6_Circuitos_Aritmeticos - slidepdf.com

http://slidepdf.com/reader/full/6circuitosaritmeticos 3/39

 

Comparador Lógico

7485

Circuito combinacional que compara dos entradas constituidas porpalabras binarias y genera las correspondientes salidas para indicar siuna palabra es igual, mayor o menor que la otra.

Page 4: 6_Circuitos_Aritmeticos

5/9/2018 6_Circuitos_Aritmeticos - slidepdf.com

http://slidepdf.com/reader/full/6circuitosaritmeticos 4/39

 

Comparador Lógico

F1=1 cuando ambos números A yB son iguales, lo cual pasacuando todos sus bits del mismo

orden son idénticos

Page 5: 6_Circuitos_Aritmeticos

5/9/2018 6_Circuitos_Aritmeticos - slidepdf.com

http://slidepdf.com/reader/full/6circuitosaritmeticos 5/39

 

Comparador Lógico

Page 6: 6_Circuitos_Aritmeticos

5/9/2018 6_Circuitos_Aritmeticos - slidepdf.com

http://slidepdf.com/reader/full/6circuitosaritmeticos 6/39

 

Comparador Lógico

Page 7: 6_Circuitos_Aritmeticos

5/9/2018 6_Circuitos_Aritmeticos - slidepdf.com

http://slidepdf.com/reader/full/6circuitosaritmeticos 7/39

Comparador Lógico

 

Page 8: 6_Circuitos_Aritmeticos

5/9/2018 6_Circuitos_Aritmeticos - slidepdf.com

http://slidepdf.com/reader/full/6circuitosaritmeticos 8/39

Circuitos Sumadores

Semi-Sumador de 2 números de 1 Bit

Se llama semi-sumador (Half-Adder -HA) por que solo seconsidera un acarreo de salida!

 

Page 9: 6_Circuitos_Aritmeticos

5/9/2018 6_Circuitos_Aritmeticos - slidepdf.com

http://slidepdf.com/reader/full/6circuitosaritmeticos 9/39

Circuitos Sumadores

Este Sumador suma 3 bits, Estos son A, B y el tercer bitpuede ser un bit de acarreo que resulte de otra suma.

Sumador Completo (Full-Adder: FA)

S= A’B’Cin + A’Bcin’ +AB’Cin’ + ABCin 

Cout= AB+Acin+BCinReferencia 74x80

 

Page 10: 6_Circuitos_Aritmeticos

5/9/2018 6_Circuitos_Aritmeticos - slidepdf.com

http://slidepdf.com/reader/full/6circuitosaritmeticos 10/39

Circuitos Sumadores

Diseñe un sumador completo (FA) con dos semi-sumadoresy compuertas lógica adicionales.

Ejemplo 1

 

Page 11: 6_Circuitos_Aritmeticos

5/9/2018 6_Circuitos_Aritmeticos - slidepdf.com

http://slidepdf.com/reader/full/6circuitosaritmeticos 11/39

Circuitos Sumadores

Clases de Sumadores

Ripple-carry (CPA, sumador con propagación del acarreo)

 Carry-look ahead (CLA, sumador de predicción del acarreo) Carry-select (sumador de selección de acarreo)

Carry-save (CSA: Sumador de acarreo almacenado)

 

Page 12: 6_Circuitos_Aritmeticos

5/9/2018 6_Circuitos_Aritmeticos - slidepdf.com

http://slidepdf.com/reader/full/6circuitosaritmeticos 12/39

Circuitos Sumadores

Sumador RIPPLE-CARRY 

Sumador de N bits conectando en cascada N circuitos sumadores completos(FA) conectando Co,k- 1 a Ci,k para k =1 a N -1 y con Ci,0 conectado a 0. •Sirvepara números en binario puro o en complemento a 2.

El retardo del circuito depende del número de etapas lógicas que haya querecorrer, y estará en función de las señales de entrada aplicadas

dcse .die.upm.es/ Grupo42  / DCSE - 42  _BloquesAritmeticos -Multiplicadores.pdf  

 

Page 13: 6_Circuitos_Aritmeticos

5/9/2018 6_Circuitos_Aritmeticos - slidepdf.com

http://slidepdf.com/reader/full/6circuitosaritmeticos 13/39

Circuitos Sumadores

Sumador RIPPLE-CARRY 

El retardo de propagaciónen este caso (camino crítico)

se define como el retardo decaso peor para todos losposibles patrones de entradatp = (N- 1)tcarry + tsum 

dcse .die.upm.es/ Grupo42  / DCSE - 42  _BloquesAritmeticos -Multiplicadores.pdf  

Para algunas señales deentrada no se produce ningún

efecto de propagación,mientras que para otras elacarreo tiene que propagarse alo largo de todo el circuito

desde el bit LSB hasta el bitMSB.

 

Page 14: 6_Circuitos_Aritmeticos

5/9/2018 6_Circuitos_Aritmeticos - slidepdf.com

http://slidepdf.com/reader/full/6circuitosaritmeticos 14/39

Circuitos Sumadores

Sumador RIPPLE-CARRY 

dcse .die.upm.es/ Grupo42  / DCSE - 42  _BloquesAritmeticos -Multiplicadores.pdf  

El retardo de propagación del sumador RCA es linealmente proporcional a N .

Este sumador resulta adecuado para la implementación de sumas conlongitud de palabra relativamente pequeña.

Al diseñar la celda de sumador completo para un sumador rápido con

propagación de acarreo, es mucho más importante optimizar tcarry que tsum .

 

Page 15: 6_Circuitos_Aritmeticos

5/9/2018 6_Circuitos_Aritmeticos - slidepdf.com

http://slidepdf.com/reader/full/6circuitosaritmeticos 15/39

Circuitos Sumadores

Sumador de Acarreo Anticipado ( CLA)

Para evitar el retardo de la cadenade acarreo, se generan directamentelos acarreos intermedios a partir de lasentradas.

Para cada bit, las salidas de acarreo

y de suma son independientes de losbits anteriores. Por tanto, el efecto depropagación se ha eliminado y eltiempo de suma debería serindependiente del número de bits.

Sin embargo, el alto fan-in delcircuito hace que sea prohibitivamentelento para valores grandes de N .Además, el fan-out de algunasseñales crece en exceso.

dcse .die.upm.es/ Grupo42  / DCSE - 42  _BloquesAritmeticos -Multiplicadores.pdf  

  

Page 16: 6_Circuitos_Aritmeticos

5/9/2018 6_Circuitos_Aritmeticos - slidepdf.com

http://slidepdf.com/reader/full/6circuitosaritmeticos 16/39

Circuitos Aritméticos

iiiii

iiii

  AC  B  AC 

C  B  AS

)(

1

iii B AP iii B AG Definimos

Recordemos las ecuacionespara un sumador FA

Definiendo las ecuaciones En términos de Pi y Gi

3231230123001234

21201200123

101001100011112

0001

GGPGPPGPPPC PPPPC 

GGPGPPC PPPC 

GPC PPGGC PPGC PC 

GC PC 

Sumador de Acarreo Anticipado

 

Page 17: 6_Circuitos_Aritmeticos

5/9/2018 6_Circuitos_Aritmeticos - slidepdf.com

http://slidepdf.com/reader/full/6circuitosaritmeticos 17/39

Circuitos Aritméticos

Sumador de Acarreo Anticipado de 4 Bits

Referencia 74182

 

Page 18: 6_Circuitos_Aritmeticos

5/9/2018 6_Circuitos_Aritmeticos - slidepdf.com

http://slidepdf.com/reader/full/6circuitosaritmeticos 18/39

Circuitos Sumadores

Sumador de Selección de Acarreo (Carry-Select)

En este circuito sumador seincluyen multiplexores y la ideaes similar al del Carry Look-Ahead y se pretende anticiparel acarreo.

Se realizan todas las sumassimultáneamente, con laparticularidad de simularlas cono sin acarreo. Luego, el acarreoreal determinará cual de las dossoluciones es la correcta.

Cuando llega el acarreo deentrada definitivo, los acarreossiguientes ya están preparadosy sólo hay que seleccionar elcorrecto mediante una etapamultiplexora

dcse .die.upm.es/ Grupo42  / DCSE - 42  _BloquesAritmeticos -Multiplicadores.pdf  

 

Page 19: 6_Circuitos_Aritmeticos

5/9/2018 6_Circuitos_Aritmeticos - slidepdf.com

http://slidepdf.com/reader/full/6circuitosaritmeticos 19/39

Circuitos Sumadores

Sumador de Selección de Acarreo (Carry-Select)

dcse .die.upm.es/ Grupo42  / DCSE - 42  _BloquesAritmeticos -Multiplicadores.pdf  

 

Page 20: 6_Circuitos_Aritmeticos

5/9/2018 6_Circuitos_Aritmeticos - slidepdf.com

http://slidepdf.com/reader/full/6circuitosaritmeticos 20/39

Circuitos Sumadores

Sumador de Selección de Acarreo (Carry-Select)

dcse .die.upm.es/ Grupo42  / DCSE - 42  _BloquesAritmeticos -Multiplicadores.pdf  

Se puede construir un sumador completode N bits con carry-select encadenando unaserie de etapas sumadoras de igual longitud,de M bits cada una, como en la técnica decarry-bypass .El retardo de propagación decaso peor será:

tp = tsetup + M·tcarry + N/M·tmux + tsum 

 El retardo es también linealmente proporcional a N, porque la señal de selecciónde bloque que elige entre las soluciones correspondientes a los casos 0 y 1continúa teniendo que propagarse a través de todas las etapas en el caso peor.

Se duplican los recursos (doble generación de acarreo)Hardware adicional: extra camino de generación de carry + un multiplexor30% extra área y mayor coste

 

Page 21: 6_Circuitos_Aritmeticos

5/9/2018 6_Circuitos_Aritmeticos - slidepdf.com

http://slidepdf.com/reader/full/6circuitosaritmeticos 21/39

Circuitos Sumadores

Sumador de Selección de Acarreo (Carry-Select)

dcse .die.upm.es/ Grupo42  / DCSE - 42  _BloquesAritmeticos -Multiplicadores.pdf  

El retardo de propagación de caso peorserá:Caso lineal:

Caso raiz cuadrada:

Este retardo está calculado parasumadores de gran tamaño (M <<N ),donde el retardo pasa a ser casi constante.

 

Page 22: 6_Circuitos_Aritmeticos

5/9/2018 6_Circuitos_Aritmeticos - slidepdf.com

http://slidepdf.com/reader/full/6circuitosaritmeticos 22/39

Circuitos Sumadores

Sumador de Acarreo Almacenado (Carry-Save)

dcse .die.upm.es/ Grupo42  / DCSE - 42  _BloquesAritmeticos -Multiplicadores.pdf  

no propaga los acarreos, y proporciona dos resultados:•N bits de suma parcial. •N bits de acarreos (que no se propagan en esta etapa). el retardo de la suma total es bastante grande.

 

Page 23: 6_Circuitos_Aritmeticos

5/9/2018 6_Circuitos_Aritmeticos - slidepdf.com

http://slidepdf.com/reader/full/6circuitosaritmeticos 23/39

Circuitos Restador

Como diseñar un restador de números binarios encomplemento A2?

 

Page 24: 6_Circuitos_Aritmeticos

5/9/2018 6_Circuitos_Aritmeticos - slidepdf.com

http://slidepdf.com/reader/full/6circuitosaritmeticos 24/39

Circuitos Restador

Restador – Ejemplo 2

Se desea diseñar un sistema que permita sumar o restardos números de 4 bits (A2), la selección de la operaciónse realiza por medio de una señal “Selector” donde: 

• Selector= 0 lógico => A+B• Selector= 1 lógico => A-B

 

Page 25: 6_Circuitos_Aritmeticos

5/9/2018 6_Circuitos_Aritmeticos - slidepdf.com

http://slidepdf.com/reader/full/6circuitosaritmeticos 25/39

Unidad Lógico-Aritmética (ALU)

Circuito combinacional que realiza operaciones lógicas y aritméticas

entre un par de operandos de entrada: A y B 

Referencia 74181

 

Page 26: 6_Circuitos_Aritmeticos

5/9/2018 6_Circuitos_Aritmeticos - slidepdf.com

http://slidepdf.com/reader/full/6circuitosaritmeticos 26/39

Circuito Multiplicador

La operación de multiplicación de números en coma fija no suele estarcontemplada directamente por las ALU, sino que se suele realizar mediantecircuitos específicos:

• Construir un circuito multiplicador rápido exige una circuitería compleja, y

las ALUs sólo realizan directamente las operaciones aritméticas y lógicasmás básicas.

• La multiplicación se puede realizar en la ALU mediante una secuencia de sumas y desplazamientos controlados por la unidad de control (UC), si bienno resulta demasiado eficiente.

• La multiplicación puede realizarse también mediante un programa en ensamblador que conste de un bucle con una secuencia de sumas ydesplazamientos, aunque esto es mucho menos eficiente aún.

• El producto de dos números binarios de n bits produce un resultado quepuede tener hasta 2n bits de ancho

 

Page 27: 6_Circuitos_Aritmeticos

5/9/2018 6_Circuitos_Aritmeticos - slidepdf.com

http://slidepdf.com/reader/full/6circuitosaritmeticos 27/39

Circuito Multiplicador

La multiplicación es una operación costosa en tiempo de ejecución. Por tanto, esaconsejable evitar las multiplicaciones en los programas siempre que sea posible.

Si uno de los operandos (por ejemplo el multiplicador) es una constanteconocida en tiempo de compilación (o ensamblaje), es frecuente que elcompilador (o ensamblador) sustituya la multiplicación por otras operaciones.

Cuando el multiplicador es una constante potencia de 2, la multiplicación sepuede sustituir por un desplazamiento del multiplicando hacia la izquierda.Cuando el multiplicador es una constante que no es una potencia de 2, lamultiplicación puede descomponerse en una secuencia de instrucciones de

desplazamiento y de suma.

Recomendaciones

 

Page 28: 6_Circuitos_Aritmeticos

5/9/2018 6_Circuitos_Aritmeticos - slidepdf.com

http://slidepdf.com/reader/full/6circuitosaritmeticos 28/39

Circuito Multiplicador

Cuando el multiplicador es una constante que no es una potencia de 2, lamultiplicación puede descomponerse en una secuencia de instrucciones de

desplazamiento y de suma.

 

Page 29: 6_Circuitos_Aritmeticos

5/9/2018 6_Circuitos_Aritmeticos - slidepdf.com

http://slidepdf.com/reader/full/6circuitosaritmeticos 29/39

Circuito Multiplicador

Esto puede hacerse usando sumadores y compuertas adicionales.Diseñemos un multiplicador combinacional de números de 2 bits.

  

Page 30: 6_Circuitos_Aritmeticos

5/9/2018 6_Circuitos_Aritmeticos - slidepdf.com

http://slidepdf.com/reader/full/6circuitosaritmeticos 30/39

Circuito Multiplicador

Multiplicador

Referencia 74284, 74285 Multiplicador 4x4

 

Page 31: 6_Circuitos_Aritmeticos

5/9/2018 6_Circuitos_Aritmeticos - slidepdf.com

http://slidepdf.com/reader/full/6circuitosaritmeticos 31/39

Circuito Multiplicador

Multiplicador por Sumas y Desplazamientos

 

Page 32: 6_Circuitos_Aritmeticos

5/9/2018 6_Circuitos_Aritmeticos - slidepdf.com

http://slidepdf.com/reader/full/6circuitosaritmeticos 32/39

Circuito Multiplicador

Multiplicador por Sumas y Desplazamientos

 

Page 33: 6_Circuitos_Aritmeticos

5/9/2018 6_Circuitos_Aritmeticos - slidepdf.com

http://slidepdf.com/reader/full/6circuitosaritmeticos 33/39

Circuito Multiplicador

Multiplicador por Sumas y Desplazamientos

 

Page 34: 6_Circuitos_Aritmeticos

5/9/2018 6_Circuitos_Aritmeticos - slidepdf.com

http://slidepdf.com/reader/full/6circuitosaritmeticos 34/39

Circuito Multiplicador

Multiplicador por Sumas y Desplazamientos

 

Page 35: 6_Circuitos_Aritmeticos

5/9/2018 6_Circuitos_Aritmeticos - slidepdf.com

http://slidepdf.com/reader/full/6circuitosaritmeticos 35/39

Circuito Divisor

 

Page 36: 6_Circuitos_Aritmeticos

5/9/2018 6_Circuitos_Aritmeticos - slidepdf.com

http://slidepdf.com/reader/full/6circuitosaritmeticos 36/39

Circuito Divisor

 

Page 37: 6_Circuitos_Aritmeticos

5/9/2018 6_Circuitos_Aritmeticos - slidepdf.com

http://slidepdf.com/reader/full/6circuitosaritmeticos 37/39

Circuito Divisor

Divisor con Restauración

 

Page 38: 6_Circuitos_Aritmeticos

5/9/2018 6_Circuitos_Aritmeticos - slidepdf.com

http://slidepdf.com/reader/full/6circuitosaritmeticos 38/39

Circuito Divisor

Divisor con Restauración

 

Page 39: 6_Circuitos_Aritmeticos

5/9/2018 6_Circuitos_Aritmeticos - slidepdf.com

http://slidepdf.com/reader/full/6circuitosaritmeticos 39/39

Circuito Divisor

Divisor con Restauración