Sie sind auf Seite 1von 3

2.

Para el fragmento de código siguiente:

y suponiendo que se pueden captar cuatro instrucciones por ciclo y emitir cuatro instrucciones
por ciclo, indique el orden en que se emitirán las instrucciones para cada uno de los siguientes
casos:

a) Una ventana de instrucciones centralizada con emisión ordenada y alineada


b) Una ventana de instrucciones centralizada con emisión desordenada y alineada
c) Una estación de reserva de tres líneas para cada unidad funcional, con envío ordenado
y ventana deslizante.

NOTA: Considere que hay una unidad funcional para la carga (2 ciclos), otra para el
almacenamiento (1 ciclo), tres para la suma/resta (1 ciclo), y una para la multiplicación (6
ciclos).

a) Una ventana de instrucciones centralizada con emisión ordenada y alineada

En este caso, hasta que no se han emitido todas las instrucciones que entraron en la ventana al
decodificarse, no se introducen nuevas instrucciones que puedan ser emitidas. Esta situación
se muestra en la figura mediante una línea gruesa. A continuación, se comentan los atascos
que se producen en el cauce:

Figura 2a: Traza de la ejecución del código del problema 2 usando una ventana de instrucciones centralizada con
emisión ordenada y alineada.
 Ciclo 5:
 La ejecución de la instrucción (2) debe retrasarse al producirse un riesgo
estructural en la unidad de carga con la instrucción (1).
 La instrucción (3) debe retrasarse hasta que la instrucción (1) haya cargado el valor
de r1.
 Ciclo 7:
 La instrucción (4) debe retrasarse hasta que la instrucción (2) haya cargado el valor
de r2.
 Las instrucciones (5) – (8) no se pueden decodificar hasta que se vacíe la ventana
de instrucciones porque la emisión es alineada.
 Ciclo 13:
 La instrucción (5) depende del resultado de la (4).
 Las instrucciones (6) y (7) deben esperar a que se emita la (5) porque la emisión es
ordenada.
 Ciclo 14:
 La instrucción (8) depende del resultado de la (6).
 Las instrucciones (9) – (11) no se pueden decodificar hasta que se vacíe la ventana
de instrucciones porque la emisión es alineada.
 Ciclo 16:
 La instrucción (11) depende del resultado de la (9).

b) Una ventana de instrucciones centralizada con emisión desordenada y alineada

La Figura 2b muestra la evolución de las instrucciones en un cauce con una ventana de


instrucciones centralizada con emisión desordenada y alineada. Los cambios con respecto a la
situación anterior son:

Figura 2b: Traza de la ejecución del código del problema 2 usando una ventana de instrucciones centralizada con
emisión desordenada y alineada.

 Ciclo 3:
 Se adelanta la ejecución de la instrucción (3).
 Ciclo 8:
 Se adelanta la ejecución de las instrucciones (5) y (6).
 Ciclo 13:
 Las instrucciones (9) – (11) se han podido decodificar un ciclo antes, ya que la emisión
desordenada ha permitido que se vacíe la ventana de instrucciones un ciclo antes.
c) Una estación de reserva de tres líneas para cada unidad funcional, con envío
ordenado y ventana deslizante.

En el caso se utilizar estaciones de reserva, las instrucciones se emiten desde el decodificador a


cada estación de reserva en la etapa de decodificación. Desde ahí se envían a las unidades
funcionales correspondientes. Se ha supuesto que la emisión a las estaciones de reserva se
hace de forma que se distribuyen las instrucciones entre todas las unidades del mismo tipo,
para minimizar las colisiones y los tiempos de espera en la correspondiente estación. Como
muestra la Figura 2c, en este caso el tiempo de ejecución del programa está determinado por
el riesgo estructural en la unidad de carga entre las instrucciones (1) y (2), y por las
dependencias RAW entre las instrucciones (4) y (2), (5) y (4), (10) y (5), y (11) y (10).

Figura 2c: Traza de la ejecución del código del problema 2 usando una estación de reserva de tres líneas para
cada unidad funcional, con envío ordenado y ventana deslizante.

Das könnte Ihnen auch gefallen