Dudas ejercicios pipelines pruebas/examen

Dudas ejercicios pipelines pruebas/examen

de Ramiro Facundo Lorenzo Rodriguez Inthamoussu -
Número de respuestas: 1

Buenas! , tengo unas dudas de algunos ejercicios de pipeline

1) CAC DIC 2016 (problema 2) En la solucion A (corresponde a SIN forwarding).
Q: se puede hacer un MEM y un FETCH al mismo tiempo (ciclo 10)?, tengo entendido que ambos usan acceden la memoria (incluso en MEM es de una instruccion SD), no deberia ser un hazard estructural?

2) CAC DIC 2016 (problema 2) En la solucion B (CON forwarding).
Q: Si bien el valor de R1 se toma desde la salida del EX de ADDI (ciclo 5). Se puede hacer el decode de la instruccion SD en el ciclo 5? pregunto porque la instruccion LD (la primera) en ese momento hace un WB y usa el banco de registros (ID + WB no es hazard estructural?)

3) PRUEBA AAAC2016  (problema pipeline) (solucion sin FW)
Q: porque en el ciclo 16 se puede hacer decode de el registro R6, si su valor se guarda al menos en el ciclo 17 en la inst. MUL R6,R5,R1 ?

(Adjunto imagenes y las pruebas a las que me refiero)

Muchas gracias !!


Adjunto pregunta3.png
Adjunto preguntas1-2.png
En respuesta a Ramiro Facundo Lorenzo Rodriguez Inthamoussu

Re: Dudas ejercicios pipelines pruebas/examen

de Federico Rivero -

Estimado:

Buenas! Van respuestas:

a) El pipeline MIPS básico que utilizamos cuenta con memoria de datos e instrucciones separadas, por lo tanto pueden realizarse accesos a ambas memorias en el mismo ciclo.

b) Nuevamente, en el pipeline MIPS que usamos en le curso se pueden realizar lecturas y escrituras al banco de registros en el mismo ciclo.

c) Tenés razón, hay un error ahí. el ID de la última instrucción debería demorarse un ciclo.

Saludos,

        Federico