Tercera entrega de análisis de la estructura y funcionamiento del procesador, Se hace énfasis sobre el flujo de instrucciones y los métodos de manejar lo saltos al interior del procesador. Se emplean elementos lúcidos para facilitar la comprensión de los contenidos.
2. Cause de instrucciones
1 2 3 4 5 6 7 8 9 10 11 12 13 14
I1 FI DI CO FO EI WO
I2 FI DI CO FO EI WO
I3 FI DI CO FO EI WO
I4 FI DI CO FO EI WO
I5 FI DI CO FO EI WO
I6 FI DI CO FO EI WO
I7 FI DI CO FO EI WO
I8 FI DI CO FO EI WO
I9 FI DI CO FO EI WO
Tiempo
Instrucciones
22. Formula- Cause Segmentado
• 𝜏 = max𝑖[𝜏𝑖] + 𝑑 = 𝜏 𝑚 + 𝑑 1 ≤ 𝑖 ≤ 𝑘
• 𝜏𝑖 =retardo de tiempo de la circuitería en la i-
ésima etapa del cauce.
• 𝜏 𝑚 = Máximo retardo de etapa.
• k= numero de etapas del cauce de instrucciones.
• d= retardo de tiempo de un registro latch,
necesario para que avancen las señales y datos de
una etapa a la siguiente.
Tiempo de ciclo
23. Formula- aplicada
• Considerando lo anterior y dadas n instrucciones. El tiempo
total que requiere un cauce de k etapas para ejecutar n
instrucciones es:
𝑻 𝒌𝒏=[𝒌 + 𝒏 − 𝟏 ]𝝉
14=[6 + (9-1)]
• 𝑑 es equivalente a un pulso de reloj.
• k= numero de etapas del cauce de instrucciones.
• d= retardo de tiempo de un registro latch, necesario para
que avancen las señales y datos de una etapa a la siguiente.
25. Flujos Múltiples
“Duplicar cauces para captar dos
instrucciones empleando su propio camino”.
Problema: Competencia por acceso / Nuevos saltos con
nuevos flujos
26. Precaptar el
destino del salto
“Se guarda la instrucción destino del salto,
así como la siguiente al salto”.
Se puede estar almacenando información innecesaria
27. Buffer de bucles
“Se verifica si la próxima dirección de salto
esta en un Buffer, de ser así la instrucción se
capta de este”.
Buffer pequeño 256 bytes, instrucciones consecutivas.
28. Predicción de
saltos
Predecir que nunca se salta.
Predecir que siempre se salta.
Predecir según el código de operaciones.
Conmutador salta/no saltar.
Tabla de historia de saltos.
29. Salto retardo
“Se puede optimizar el rendimiento
reorganizando las instrucciones para que
aquellas que refieren saltos se ejecuten
después de las realmente deseadas”.