Consulta ejercicio de parcial 2013

Consulta ejercicio de parcial 2013

de Agustin Prado Dati -
Número de respuestas: 8

Hola, no se porque el fetch es retrasado en la instruccion lw2, entiendo que no se pueda hacer a la misma vez que un MEM por temas acceso a memoria, pero no se pq no lo hace a la misma vez que EX.

Saludos.

Adjunto Captura de pantalla 2014-04-16 a la(s) 20.41.47.png
En respuesta a Agustin Prado Dati

Re: Consulta ejercicio de parcial 2013

de Federico Rivero -

Estimado:

Algunas aclaraciones:

1) En la letra está aclarado que se trata de memorias diferentes, por lo cual no se producirían hazards estructurales en el acceso a memoria (es decir, se puede realizar el fetch en el mismo ciclo que se realiza un load o store).

2) La detención del ciclo 4 es por la dependencia RaW entre la primera y segunda instrucción. LW1 debe esperar, y por tanto LW2 también pues sinó sobreescribiría los valores de la instrucción LW1.

Cualquier otra duda preguntá! :)

Saludos,

        Federico

En respuesta a Federico Rivero

Re: Consulta ejercicio de parcial 2013

de Pablo Da Costa Porto Balcaldi -

Pareciera que hubiera un stall de más en la tercera etiqueta de ID de lw1. ¿Por qué pasa eso? ¿No se puede forwardear el inmediato de alguna manera a lw1?

En respuesta a Pablo Da Costa Porto Balcaldi

Re: Consulta ejercicio de parcial 2013

de Federico Rivero -

Estimado:

Parte del ejercicio es notar que no hay ningún mecanismo de forwarding implementado (ver dibujo). Si hubiera forwarding implementado, se podrían eliminar los tres ciclos de stall.

Saludos,

          Federico

En respuesta a Federico Rivero

Re: Consulta ejercicio de parcial 2013

de Pablo Da Costa Porto Balcaldi -

Entiendo. No estoy familiarizado con cómo sería el dibujo si hubiera forwarding. ¿Hay algún ejemplo en la bibliografía o en las diapositivas?

Supongo que serían necesarias las líneas que unen los registros de pipeline con las unidades que tienen inmediatamente detrás, que se ven en los diagramas de pipeline que tienen las unidades del camino de datos dibujadas. Aún así no es muy ilustrativo esto, creo.

En respuesta a Pablo Da Costa Porto Balcaldi

Re: Consulta ejercicio de parcial 2013

de Federico Rivero -

Estimado: 

Sí, en la bibliografía:

 

Esto es tomado del libro del curso.

Entiendo que digas que no es muy ilustrativo, pero el problema es que practicamente cualquier diagrama de pipeline tiene sentido para un hardware y configuración de forwarding en particular, y dado eso, la mejor convención que se puede dar es mostrar un cierto hardware. Además, este en particular mantenía prácticamente todas las reglas del pipeline presentado en teórico, por lo que no había una gran cuota de deducción necesaria para realizar el ejercicio.

Saludos,

        Federico

 

En respuesta a Federico Rivero

Re: Consulta ejercicio de parcial 2013

de Carlos Rodrigo Gonzalez Abate -

ese forwarding queda mucho mas claro.

Pero, la linea que marque de rojo en el dibujo ¿que hace?. Yo lo habia interpretado como un forwarding  de la salida del EX a la entrada del ID

Adjunto Sin título.jpg
En respuesta a Carlos Rodrigo Gonzalez Abate

Re: Consulta ejercicio de parcial 2013

de Federico Rivero -

Estimado:

Negativo, es el flujo que sigue el PC durante un salto, si es que este se toma. Si la instrucción a ejecutar es un branch o un jump, el PC será elegido como entrada de la ALU, y su resultado será elegido en lugar de PC + 4 para cambiar el valor del PC.

Saludos!