Organización del Computador I Verano Aritmética (2 de 3) Basado en el capítulo 4 del libro de...
-
Upload
paco-quinteros -
Category
Documents
-
view
4 -
download
0
Transcript of Organización del Computador I Verano Aritmética (2 de 3) Basado en el capítulo 4 del libro de...
![Page 1: Organización del Computador I Verano Aritmética (2 de 3) Basado en el capítulo 4 del libro de Patterson y Hennessy Verano 2004Profesora Borensztejn.](https://reader036.fdocuments.co/reader036/viewer/2022062511/5500eb434a7959ca428b6600/html5/thumbnails/1.jpg)
Organización del Computador I Verano
Aritmética (2 de 3) Basado en el capítulo 4 del libro de Patterson y Hennessy
Verano 2004 Profesora Borensztejn
![Page 2: Organización del Computador I Verano Aritmética (2 de 3) Basado en el capítulo 4 del libro de Patterson y Hennessy Verano 2004Profesora Borensztejn.](https://reader036.fdocuments.co/reader036/viewer/2022062511/5500eb434a7959ca428b6600/html5/thumbnails/2.jpg)
ALU de 1 bit• ALU de un bit con operaciones de:
– Suma y Resta– And– Or– Setear si Menor (SLT)
• Elementos básicos:
b
c
c
ba
a
a
c
![Page 3: Organización del Computador I Verano Aritmética (2 de 3) Basado en el capítulo 4 del libro de Patterson y Hennessy Verano 2004Profesora Borensztejn.](https://reader036.fdocuments.co/reader036/viewer/2022062511/5500eb434a7959ca428b6600/html5/thumbnails/3.jpg)
Sumador de 1 bit
Sum
CarryIn
CarryOut
a
b
cout = a b + a cin + b cin
sum = a xor b xor cin
a b Cin Cout S
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
![Page 4: Organización del Computador I Verano Aritmética (2 de 3) Basado en el capítulo 4 del libro de Patterson y Hennessy Verano 2004Profesora Borensztejn.](https://reader036.fdocuments.co/reader036/viewer/2022062511/5500eb434a7959ca428b6600/html5/thumbnails/4.jpg)
Multiplexores
• Necesitamos seleccionar la operación:– suma
– and
– or
En función de S, seleccionamos A o B.
S
C
AB
S
CA
B
CD
2
![Page 5: Organización del Computador I Verano Aritmética (2 de 3) Basado en el capítulo 4 del libro de Patterson y Hennessy Verano 2004Profesora Borensztejn.](https://reader036.fdocuments.co/reader036/viewer/2022062511/5500eb434a7959ca428b6600/html5/thumbnails/5.jpg)
ALU de 1 bit
b
0
2
Result
Operation
a
1
CarryIn
CarryOut
![Page 6: Organización del Computador I Verano Aritmética (2 de 3) Basado en el capítulo 4 del libro de Patterson y Hennessy Verano 2004Profesora Borensztejn.](https://reader036.fdocuments.co/reader036/viewer/2022062511/5500eb434a7959ca428b6600/html5/thumbnails/6.jpg)
ALU de 32 bit
b
0
2
Result
Operation
a
1
CarryIn
CarryOut
Result31a31
b31
Result0
CarryIn
a0
b0
Result1a1
b1
Result2a2
b2
Operation
ALU0
CarryIn
CarryOut
ALU1
CarryIn
CarryOut
ALU2
CarryIn
CarryOut
ALU31
CarryIn
![Page 7: Organización del Computador I Verano Aritmética (2 de 3) Basado en el capítulo 4 del libro de Patterson y Hennessy Verano 2004Profesora Borensztejn.](https://reader036.fdocuments.co/reader036/viewer/2022062511/5500eb434a7959ca428b6600/html5/thumbnails/7.jpg)
ALU con resta
0
2
Result
Operation
a
1
CarryIn
CarryOut
0
1
Binvert
b
![Page 8: Organización del Computador I Verano Aritmética (2 de 3) Basado en el capítulo 4 del libro de Patterson y Hennessy Verano 2004Profesora Borensztejn.](https://reader036.fdocuments.co/reader036/viewer/2022062511/5500eb434a7959ca428b6600/html5/thumbnails/8.jpg)
ALU con SLT0
3
Result
Operation
a
1
CarryIn
CarryOut
0
1
Binvert
b 2
Less
0
3
Result
Operation
a
1
CarryIn
0
1
Binvert
b 2
Less
Set
Overflowdetection
Overflow
a.
b.
Si A<B entonces 1sino 0 .
Como funciona?
![Page 9: Organización del Computador I Verano Aritmética (2 de 3) Basado en el capítulo 4 del libro de Patterson y Hennessy Verano 2004Profesora Borensztejn.](https://reader036.fdocuments.co/reader036/viewer/2022062511/5500eb434a7959ca428b6600/html5/thumbnails/9.jpg)
ALU completa
Seta31
0
ALU0 Result0
CarryIn
a0
Result1a1
0
Result2a2
0
Operation
b31
b0
b1
b2
Result31
Overflow
Binvert
CarryIn
Less
CarryIn
CarryOut
ALU1Less
CarryIn
CarryOut
ALU2Less
CarryIn
CarryOut
ALU31Less
CarryIn
![Page 10: Organización del Computador I Verano Aritmética (2 de 3) Basado en el capítulo 4 del libro de Patterson y Hennessy Verano 2004Profesora Borensztejn.](https://reader036.fdocuments.co/reader036/viewer/2022062511/5500eb434a7959ca428b6600/html5/thumbnails/10.jpg)
ALU de 32 bits
3 Líneas de Control Bnegate y Operación(2)
000 = and001 = or010 = add110 = subtract111 = slt
Overflow?
Seta31
0
Result0a0
Result1a1
0
Result2a2
0
Operation
b31
b0
b1
b2
Result31
Overflow
Bnegate
Zero
ALU0Less
CarryIn
CarryOut
ALU1Less
CarryIn
CarryOut
ALU2Less
CarryIn
CarryOut
ALU31Less
CarryIn
![Page 11: Organización del Computador I Verano Aritmética (2 de 3) Basado en el capítulo 4 del libro de Patterson y Hennessy Verano 2004Profesora Borensztejn.](https://reader036.fdocuments.co/reader036/viewer/2022062511/5500eb434a7959ca428b6600/html5/thumbnails/11.jpg)
ALU de 32 bits
Líneas de Control
000 = and001 = or010 = add110 = subtract111 = slt
l
32
32
32
A
B
Op
Resultado
AL
U
Cero
![Page 12: Organización del Computador I Verano Aritmética (2 de 3) Basado en el capítulo 4 del libro de Patterson y Hennessy Verano 2004Profesora Borensztejn.](https://reader036.fdocuments.co/reader036/viewer/2022062511/5500eb434a7959ca428b6600/html5/thumbnails/12.jpg)
Conclusión
• Hemos construido una ALU que soporta el juego de instrucciones MIPS– usamos un multiplexor para seleccionar la salida
– replicamos la ALU de 1 bit para conseguir la de 32 bits
• Cosas importantes del hardware– todas las puertas estan siempre trabajando
– la velocidad de una puerta está afectada por el número de entradas de la puerta
– la velocidad del circuito está afectada por el número de puertas en serie
![Page 13: Organización del Computador I Verano Aritmética (2 de 3) Basado en el capítulo 4 del libro de Patterson y Hennessy Verano 2004Profesora Borensztejn.](https://reader036.fdocuments.co/reader036/viewer/2022062511/5500eb434a7959ca428b6600/html5/thumbnails/13.jpg)
Sumador con Anticipación de Acarreo
• En el sumador de 32 bits que acabamos de diseñar, cada sumador de un bit puede determinar en paralelo el valor de Si, pero el Cout depende del sumador anterior.
• Es decir, hay una cadena de dependencias desde el sumador del bit mas bajo hasta el sumador del bit mas alto muy costoso en tiempo.
![Page 14: Organización del Computador I Verano Aritmética (2 de 3) Basado en el capítulo 4 del libro de Patterson y Hennessy Verano 2004Profesora Borensztejn.](https://reader036.fdocuments.co/reader036/viewer/2022062511/5500eb434a7959ca428b6600/html5/thumbnails/14.jpg)
Acarreo Rápido
a31
b31
a0
b0
a1
b1
a2
b2
ALU0
Carry In
CarryOut
ALU1
Carry In
CarryOut
ALU2
Carry In
CarryOut
ALU31
Carry In
c0
c1=a0b0+a0c0+b0c0
c2=a1b1+a1c1+b1c1
c32=a31b31+a31c31+b31c31
c3=a2b2+a2c2+b2c2
c31=a30b30+a30c30+b30c30
![Page 15: Organización del Computador I Verano Aritmética (2 de 3) Basado en el capítulo 4 del libro de Patterson y Hennessy Verano 2004Profesora Borensztejn.](https://reader036.fdocuments.co/reader036/viewer/2022062511/5500eb434a7959ca428b6600/html5/thumbnails/15.jpg)
Acarreo Rápido
a31
b31
a0
b0
a1
b1
a2
b2
ALU0
Carry In
CarryOut
ALU1
Carry In
CarryOut
ALU2
Carry In
CarryOut
ALU31
Carry In
c0
c1=a0b0+a0c0+b0c0
c2=a1b1+a1c1+b1c1
c32=a31b31+a31c31+b31c31
c3=a2b2+a2c2+b2c2
c31=a30b30+a30c30+b30c30
Reemplazamos !!
Reemplazamos !!
Reemplazamos !!
![Page 16: Organización del Computador I Verano Aritmética (2 de 3) Basado en el capítulo 4 del libro de Patterson y Hennessy Verano 2004Profesora Borensztejn.](https://reader036.fdocuments.co/reader036/viewer/2022062511/5500eb434a7959ca428b6600/html5/thumbnails/16.jpg)
Acarreo Rápido
a31
b31
a0
b0
a1
b1
a2
b2
ALU0
Carry In
CarryOut
ALU1
Carry In
CarryOut
ALU2
Carry In
CarryOut
ALU31
Carry In
c0
c1=a0b0+a0c0+b0c0
c2=a1b1+a1a0b0+a1a0c0+a1b0c0 + b1a0b0+b1a0c0+b1b0c0
La ecuación de Cn crece exponencialmente con n se vuelve muy cara de implementar en hardware
![Page 17: Organización del Computador I Verano Aritmética (2 de 3) Basado en el capítulo 4 del libro de Patterson y Hennessy Verano 2004Profesora Borensztejn.](https://reader036.fdocuments.co/reader036/viewer/2022062511/5500eb434a7959ca428b6600/html5/thumbnails/17.jpg)
Método de Anticipación de Acarreo
Ci+1=aibi+aici+bici
El término gi, genera acarreo, independientemente de ci
Ci+1=aibi+ci (ai+bi)
gi = aibi pi = ai + bi
Ci+1=gi+ci pi
El término pi, propaga el acarreo proveniente de ci
![Page 18: Organización del Computador I Verano Aritmética (2 de 3) Basado en el capítulo 4 del libro de Patterson y Hennessy Verano 2004Profesora Borensztejn.](https://reader036.fdocuments.co/reader036/viewer/2022062511/5500eb434a7959ca428b6600/html5/thumbnails/18.jpg)
Para un sumador de 4 bits
Fijense que las ecuaciones se complican si crece n!!
Solución: realizar un sumador de n bits utilizando módulos de 4-bit con anticipación de acarreo.
gi = aibi
pi = ai + bic1=g0+p0 c0
c2=g1+(p1g0)+(p1p0 c0)
c3=g2+(p2g1)+(p2p1 g0 )+(p2p1p0 c0) c0
c4=g3+(p3g2)+(p3p2 g1 )+(p3p2p1 g0)+ (p3p2p1 p0)c0
Ci+1=gi+ci pi
![Page 19: Organización del Computador I Verano Aritmética (2 de 3) Basado en el capítulo 4 del libro de Patterson y Hennessy Verano 2004Profesora Borensztejn.](https://reader036.fdocuments.co/reader036/viewer/2022062511/5500eb434a7959ca428b6600/html5/thumbnails/19.jpg)
Sumador de 16 bits con módulos de 4 bits
c4=g3+(p3g2)+(p3p2 g1 )+(p3p2p1 g0)+ (p3p2p1 p0)c0
C1= G0 +(P0c0)
P0G0
P0
G0
c0
a0a1a2a3b0b1b2b3
ALU0Módulo de 4 bits
![Page 20: Organización del Computador I Verano Aritmética (2 de 3) Basado en el capítulo 4 del libro de Patterson y Hennessy Verano 2004Profesora Borensztejn.](https://reader036.fdocuments.co/reader036/viewer/2022062511/5500eb434a7959ca428b6600/html5/thumbnails/20.jpg)
Sumador de 16 bits
ci+4
P0
G0
c0
a0a1a2
a3
b0b1b2b3
ALU0
P1
G1
a4a5a6
a7b4b5b6b7
ALU1
P2
G2
a8a9a10
a11
b8b9b10b11
ALU2
P3
G3
a12a13a14
a15b12b13b14b15
ALU3
pi
pi+1
pi+2
pi+3
gi
gi+1
gi+2
gi+3
ci+1
ci+2
ci+3
C2
C1
C3
C4
S0..3
S4..7
S8..11
S12..15
Toda la lógica empieza a evaluar al mismo tiempo, una vez que llega a un estado estable, se mantiene.
C1= G0 +(P0c0)
C2= G1 +(P1G0) +(P1P0c0)
C3= G2 +(P2G1) +(P2P1G0) +(P2P1P0c0)
C4= G3 +(P3G2) +(P3P2G1) +(P3P2P1G0) +(P3P2P1P0c0)
![Page 21: Organización del Computador I Verano Aritmética (2 de 3) Basado en el capítulo 4 del libro de Patterson y Hennessy Verano 2004Profesora Borensztejn.](https://reader036.fdocuments.co/reader036/viewer/2022062511/5500eb434a7959ca428b6600/html5/thumbnails/21.jpg)
Estimación de tiempos
• Vamos a calcular el rendimiento relativo entre el sumador con propagación de acarreo y el que anticipa el acarreo.
• Suponemos que los retardos son los mismos para todas las puertas el retardo es igual al número de puertas que la señal deba atravesar.
• Para cada diseño, sumaremos los retardos del camino crítico (el más largo).
![Page 22: Organización del Computador I Verano Aritmética (2 de 3) Basado en el capítulo 4 del libro de Patterson y Hennessy Verano 2004Profesora Borensztejn.](https://reader036.fdocuments.co/reader036/viewer/2022062511/5500eb434a7959ca428b6600/html5/thumbnails/22.jpg)
Estimación de tiempos• Para el sumador con propagación:
– La salida carry atraviesa dos puertas 2 por bit16 bits *2=32
• Para el sumador con anticipación:– La salida C4 es una suma de productos (puertas AND,
luego puertas OR) de términos P y G. Dos niveles de puertas.
– P es un AND (un nivel)– G es suma de productos (dos niveles de puertas)– El peor caso sería: 2+1+2=5
• Conclusión: – El sumador con anticipación es 6 veces más rápido que
el sumador con propagación de acarreo.
![Page 23: Organización del Computador I Verano Aritmética (2 de 3) Basado en el capítulo 4 del libro de Patterson y Hennessy Verano 2004Profesora Borensztejn.](https://reader036.fdocuments.co/reader036/viewer/2022062511/5500eb434a7959ca428b6600/html5/thumbnails/23.jpg)
FIN Construcción de una
ALU