Esta pregunta fue formulada en un documento objetivo; GATE CSE
Considere un procesador de tubería de 4 etapas. El número de ciclos que necesita el cuatro instrucciones I1, I2, I3, I4 en las etapas S1, S2, S3, S4 se muestran a continuación:
¿Cuáleslacantidaddeciclosnecesariosparaejecutarelsiguienteciclo?
Para(i=1a2){I1;I2;I3;I4;}
A)16
B)23
C)28
D)30
============================================================
Larespuestadadaes-23
introduce la descripción de la imagen aquí
Mi duda es: ¿por qué en el sexto ciclo estamos introduciendo I4 {S1} mientras que I3 {S2} no ha pasado a la siguiente etapa?
En esta pregunta, si adoptamos el enfoque anterior, obtendremos una respuesta diferente, según mi opinión, I4 {S1} se presentará en el séptimo reloj.
porque: en la ejecución de la canalización, cada etapa produce salida a un búfer y la siguiente etapa lo lleva desde allí. Por lo tanto, a menos que la instrucción anterior (aquí I3) pase a la siguiente etapa, la instrucción actual (I4) no puede ejecutar una etapa dada
P.S.- También he publicado esto en cs.stackexchange, pero nadie lo ha respondido. ¡Por favor ayuda!