unidad...

Post on 04-Feb-2020

2 Views

Category:

Documents

0 Downloads

Preview:

Click to see full reader

TRANSCRIPT

UNIDAD ARITMÉTICO-LÓGICAARITMÉTICO-LÓGICA

1

� ALU: Parte del computador donde se realizan las operaciones aritméticas y lógicas.

� Las otras unidades le proporcionan datos (que le llegan en forma de registros)

� ALU opera y les devuelve el resultado (también a través de � ALU opera y les devuelve el resultado (también a través de registros)

� Cuando termina activa una serie de indicadores que pueden ser usados por la unidad de control.

2

� Recibe dos números X e Y

� De n bits cada uno.

� Produce un resultado de nnnn+1 bits.

� Compromiso entre velocidad y coste.

� Forma más rápida � circuito combinacional de dos niveles (AND-OR).� Forma más rápida � circuito combinacional de dos niveles (AND-OR).

� Pero para valores moderados de n se necesitan demasiadas puertas lógicas y es inviable.

� Por tanto hay que usar técnicas más lentas pero menos costosas.

� Se divide el problema en otros mas sencillos � Suma de dos números de n bits, en n sumas de 1 bit.

� Cada suma necesitará del acarreo de la suma anterior.

3

� Circuito aritmético más sencillo.

� Tiene dos entradas y dos salidas.

� Se pueden ver construir distintas realizaciones dependiendo de las puertas lógicas de que dependiendo de las puertas lógicas de que dispongamos.

4

5

6

� Tiene una entrada más correspondiente al arrastre de la etapa anterior.

� Esto nos permitirá encadenar n SBC para obtener suma de números de n bits.

� Además de con los circuitos de puertas lógicas vistos � Además de con los circuitos de puertas lógicas vistos anteriormente, se puede realizar con dos SSB’s conectados en cascada pero el circuito obtenido es más lento.

7

8

9

� Usa un SBC de un bit.

� Se van sumando uno a uno los bit Xi e Yi del mismo peso comenzando por los menos significativos.

� Se incluye un retardo unitario para retener el arrastre hasta el intervalo siguiente.

� Se almacena el resultado en un registro.

� La complejidad del circuito es independiente del número de bits a sumar.La complejidad del circuito es independiente del número de bits a sumar.La complejidad del circuito es independiente del número de bits a sumar.La complejidad del circuito es independiente del número de bits a sumar.

� En cambio el tiempo crece linealmente con n.En cambio el tiempo crece linealmente con n.En cambio el tiempo crece linealmente con n.En cambio el tiempo crece linealmente con n.

10

� Producen la suma de n bits de forma más rápida que los sumadores binarios serie.

� Son una cadena de SBC’s en las que se introducen en paralelo los operandos.

� Hay que tener en cuenta el tiempo de la propagación del arrastre.

� Si t el tiempo de propagación de un arrastre, el resultado no está disponible hasta nt

� Por tanto, el retardo depende linealmente de n.

� Se pueden conseguir sumadores más rápidos con circuitos que emplean más puertas lógicas y mayor número de entradas.

11

� Para sumar números negativos en función de su representación.

� Forma más sencilla en complemento a 2:� Sustituir todos los bits por su complemento� Sumar 1 al número restante

� Según sea M el circuito es sumador (M=0) o restador (M=1)

� Cuando restador:� M=1 ⊕ Y equivale al complemento de Yi� M=1 ⊕ Yi equivale al complemento de Yi� C-1=1 por tanto le estamos sumando 1 para complementar.

� Cuando se suman números sin signo el arrastre de la última etapa sirve como indicador de rebose. � importante detectar el rebose para poder decidir qué hacer con él.

12

� Cuando se desea acelerar la suma � mayor problema la aceleración del arrastre.

� Estrategias posibles:� Aceptación de la existencia de los arrates � se diseña el sumador

con el retardo necesario. � lo que hemos visto en el apartado anterior.anterior.

� Anticipación del arrate � circuitería extra.� Suma condicional � Producen el arrastre en Ο(log2n)� Detección de la finalización del arrastre � Circuito adicional que

detecta cuando ha finalizado el último arrastre. En ese momento las salidas del sumador son las buenas.

� Minimización del número de arrastres� Arrastre almacenado.

� Nosotros vamos a ver solo la anticipación de arrastre.

13

� Características de los arrastres: Características de los arrastres: Características de los arrastres: Características de los arrastres: ◦ Arrastre Ci se genera si Xi+Yi>1◦ Un arrastre que viene de i-1 se propagará en i solo si Xi+Yi=1

� Sumador con anticipación de arrastre:Sumador con anticipación de arrastre:Sumador con anticipación de arrastre:Sumador con anticipación de arrastre:◦ Forma más extendida para diseñar sumadores de alta velocidad.◦ Objetivo � reducir el tiempo de la propagación del arrastre de los

SBC’sSBC’s◦ Para ello genera la entrada del arrastre i-esimo a partir de los bits

entrada a las etapas precedentes (i-1, i-2,…0)◦ En la etapa i, se produce arrastre Ci si:

� La etapa i lo genera� La etapa i-k (k=1,2,…i) lo genera y las etapas de i-k+1 hasta i lo propagan.� Hay una arrastre inicial y todas las etapas lo propagan.

◦ Se puede ver el ejemplo de circuito en la página 201.

14

� Son más complejos que los binarios.

� Hay que añadir unos circuitos de corrección.

La suma BCD con sumador binario es correcta � La suma BCD con sumador binario es correcta si resultado es <10

� Incorrecta si >10 � habrá que corregirla �corrección es añadir 6 al resultado anterior. � produciéndose un acarreo.

15

� N sumadores en paralelo

� El arrastre de cada uno se conecta al siguiente.

16

� Los dígitos de aplican de forma serie a un único sumador BCD

� Bits de cada dígito se transfieren al sumador en paralelo

17

� La de menor coste.

� Bits se desplazan de 1 en 1 por un SBC

� Suma binaria obtenida tras cuatro desplazamientos habrá que corregirla (si es >10 se le suma 6 y hay acarreo.

18

19

20

21

22

23

24

25

26

27

28

29

30

31

32

33

34

35

36

top related