Ejer Cici Os

25
EJERCICIOS POR: ZAPANA APAZA, EDDIE

Transcript of Ejer Cici Os

Page 1: Ejer Cici Os

EJERCICIOS

POR:

ZAPANA APAZA, EDDIE

Page 2: Ejer Cici Os

1.- Un circuito que implementaba una operación en top= 450 ns se ha segmentado mediante un cauce lineal con cuatro etapas de duración T1=100 ns, T2=125 ns, T3=125 ns, T4=100 ns, respectivamente separadas por un registro de desacoplo que introduce un retardo de 25 ns ¿cuál la máxima ganancia de velocidad posible ? ¿cuál es la máxima productividad del cauce? ¿A partir de que números de operación ejecutadas se consigue una productividad al 90 % de la productividad máxima?

En nuestro caso

T2=T3=125ns , seria el tiempo máximo de procesamiento mas el retardo del registro de desacoplo que seria

d=25 ns

t = 125 ns +25 ns =150 ns

Page 3: Ejer Cici Os

Máxima ganancia

S= T = 450 ns = 3 t (125 + 25 )ns

Máxima productividad

W= 1 = 1 = 6666666.67 instrucciones /s t 150ns

A partir de que números de operación ejecutadas se consigue una productividad al 90 % de la productividad máxima 90* 1 = n TLI=k x t = 4 x t (tiempo de latencia de inicio)

100*150 TLI + (n-1)*t (k numero de etapas)

9 = n 1500 4*150 + (n-1)*150

n=27

Page 4: Ejer Cici Os

2.- Supongamos que las etapas de una unidad funcional segmentada S1, S2, S3, S4 y S5 se utilizan en el orden S1 , S3, S5, S1, S3, S4, S1, S3, S2, S5 ,S4, S2.¿ Cual es el tiempo ( en numero de ciclos ) de latencia de inicio del cauce ? ¿Cuál es la tabla de reservas y el vector de colisión inicial ? ¿Si se supone el cauce vació inicialmente y se introduce una operación, es posible introducir otra pasados 5 ciclos ? ¿Cuál es el numero mínimo de ciclos que hay que esperar?

SOLUCION:

Page 5: Ejer Cici Os

S1,S3,S5,S1,S3,S4,S1,S3,S2,S5,S4,S2

S1

S2

S3

S4

S5

t2 t4t3 t5 t6 t7 t8t1 t9

X

X

t12t10

X X

t11

X

X

X

X

X X

X

X

TLI=12 ciclos

F={3,5,6,7} (latencias prohibidas)

C=(1 1 1 0 1 0 0)Vector de colisiones

7 56 3

Page 6: Ejer Cici Os

Con latencias prohibidas F=(3 ,6 ,5 ,7)

Así el vector de colisiones seriaV=(1110100)

NO es posible introducir una instrucción a los 5 ciclos ya que es una latencia prohibida

Tenemos (1,2,4,) que NO son latencias prohibidas entonces el numero mínimo para esperar un instrucción seria de 1 ciclo

Page 7: Ejer Cici Os

3.- Se pretende utilizar un cauce con cuatro etapas A, B, C, D, para aumentar el rendimiento en la ejecución de la unidad funcional F. las etapas se pueden utilizar según una de las dos secuencias S1 y S2 siguientes:

S1: ABACACABD S2: ADBCCABD

Si la duración de cada etapa (incluyendo el registro de acoplo) es de 50 ns, y la operación que implementa la unidad funcional F tarda 350 ns en ejecutarse ¿Cuál de las dos posibilidades es mejor? ¿Por qué? ¿Cuáles son los valores máximos para la productividad, la eficacia y la ganancia del cauce en cada una de las secuencias de utilización, S1 y S2?

Page 8: Ejer Cici Os

solución

S1: TLI = t*k =9*50ns = 450 ns S2: TLI= t*k = 8*50ns = 400ns k= número de etapas t = tiempo de ejecución de una etapa

Page 9: Ejer Cici Os

Productividad

n = número de operaciones T = tiempo de ejecución de

operación sin segmentar TLI =tiempo de latencia de

inicio t = tiempo de ejecución de una

etapa

tnTLI

nnw

*1

Page 10: Ejer Cici Os

S1:

S2

61 10*22.2

450

1

nswS

62 10*5.2

400

1

nswS

W(n) es el numero de operaciones por unidad de tiempo

Page 11: Ejer Cici Os

Eficiencia

S1

S2

tnTLIk

TnnE

*1*

*

0864.0450*9

3501

nsns

ES

1093.0400*8

3502

ns

nsES

E(n) es la relacion entre la ganancia de velocidad y el numero de etapas

Page 12: Ejer Cici Os

Ganancia

S1

S2

tnTLI

tnnS

*1

*

777.0450

3501

ns

nsSS

875.0400

3502

ns

nsSS

S(n) es la ganancia de velocidad en la ejecucion de n operaciones

Page 13: Ejer Cici Os

4.- La tabla de reservas que se muestra a continuación corresponde a un cauce que puede ejecutar dos funciones A y B: Determinar las latencias prohibidas y construir el diagrama de estados para dicho cauce

t0 t1 t2 t3 t4

s1 A B A B

s2 A B A

s3 B AB

Page 14: Ejer Cici Os

Ma = 0100 Mb = 1011

0011 0110

FAA = ( 3 ) FAB = (1,4,2)

FBA = (2,1) FBB = (3,2)

Page 15: Ejer Cici Os
Page 16: Ejer Cici Os

5.- Se tiene un cauce multifuncional con 4 etapas S1, S2, S3, S4, que permite ejecutar dos tipos de operaciones, A y B. Las instrucciones del tipo A recorren el cauce según la secuencia:

S1, S3, S2, S3, S1, S4

Y las del tipo B según:

S1, S4, S1, S2, S3, S4

¿Cuál es la mínima latencia media para la secuencia de operaciones ABABABAB…? Si la frecuencia de reloj es de 1 GHz ¿Cuál es la productividad máxima del cauce para esta secuencia?

Page 17: Ejer Cici Os

SoluciónSolución

Tabla de reservas:

FAA=(2,4) FAB=(1,2,3)

FBA=(2,4) FBB=(2,4)

t0 t1 t2 t3 t4 t5S1 A B B AS2 A BS3 A A BS4 B AB

Page 18: Ejer Cici Os

Vectores de colisiones cruzadas:

VAA=(1010) VAB=(0111)

VBA=(1010) VBB=(1010)

Matrices de Colisión:

Page 19: Ejer Cici Os

Diagrama de estados

10101010

01111010

Page 20: Ejer Cici Os

Con estos resultados el diagrama de estados queda de la siguiente forma:

Page 21: Ejer Cici Os

10101010

10111011

01111011

11111111

01111111

01111010

A5

A1

A5

A3 A5

A3

A4,5+

A4,5+

B1

B3

A4,5+

B3

B1

B5

B3

B5

Page 22: Ejer Cici Os

10101010

10111011

01111011

11111111

01111111

01111010

A5

A1

A5

A3 A5

A3

A4,5+

A4,5+

B1

B3

A4,5+

B3

B1

B5

B3

B5

Page 23: Ejer Cici Os

Para la secuencia de operaciones ABABABAB… tenemos las latencias medias:

LM = 3.5 LM = 2.5

Siendo la mínima latencia media: 2.5

Y la máxima latencia media:

MLM = 3.5

Page 24: Ejer Cici Os

Como la frecuencia es de 1 GHz el tiempo por ciclo será el inverso de la frecuencia, para este caso: t = 1 ns.

Usando la fórmula de la productividad:

La productividad máxima será de:

2.85 x 108

Page 25: Ejer Cici Os

6.- En un procesador segmentado de 5 etapas S1, S2, S3, S4, S5, en ese orden y todas tardan un ciclo, excepto la etapa S3 (etapa de ejecución) que según las instrucciones, puede tardar 2 0 3 ciclos ¿Cuál es la velocidad pico de ese procesador si funciona a 500 Mhz?

F= 500Mhz

T= 1 =1 ciclo

500Mhz

MiPS= Ni = F

Tcpu x 10 CPI x 10 6 6

Para 2 ciclos

MIPS=500MHz = 250MIPS

2 x 106

Para 3

MIPS = 500MHZ = 166MIPS

3 x 10 6

MIPS (milones de intrucciones por segundo)

CPI (ciclos por instrucción)