Академический Документы
Профессиональный Документы
Культура Документы
a de la instruccin. Envo de la instruccin a una cola (tambin llamada buffer o estacin de reserva). La instruccin espera en cola hasta que los operandos de entrada estn disponibles, de manera que una instruccin ms reciente puede abandonar el buffer antes que otra anterior si ya tiene los datos disponibles. La instruccin es enviada a la correspondiente unidad funcional, que la ejecuta. Se enva el resultado a cola. La instruccin en curso solamente puede escribir en el archivo de registros una vez que todas las anteriores a ella hayan escrito sus correspondientes resultados. La idea clave del procesamiento OoO consiste en permitir al procesador evitar ciertos tipos de burbuja que suceden cuando la informacin necesaria para realizar una operacin no est disponible. Siguiendo los pasos antes explicados, el procesador OoO evita las burbujas comentadas en el paso 2 de la ejecucin en orden cuando la instruccin no se puede completar a causa de la falta de datos. Los procesadores OoO rellenan esos "huecos" de tiempo con instrucciones que s estn listas para ejecutarse para despus reordenar los resultados y aparentar que fueron procesadas de manera normal. La forma en que las instrucciones son ordenadas en el cdigo original a ejecutar se conoce como orden de programa, mientras que el orden en que el procesador las maneja es el orden de datos, siendo aquel en que los datos van quedando disponibles para su captura desde los registros del procesador. Se necesita una circuitera bastante compleja para convertir un orden en otro y poder adems mantener el orden lgico de la salida; el propio procesador ejecuta las instrucciones de forma aperentemente aleatoria. Los beneficios del procesamiento OoO crecen a medida que se profundiza en la segmentacin, as como con el crecimiento de la diferencia de velocidades entre la memoria principal (o memoria cache) y el procesador. En las mquinas modernas, el procesador funciona a velocidades mucho mayores que la memoria, de modo que mientras un procesador en orden pierde tiempo esperando por los datos, uno OoO ya habra procesado un gran nmero de instrucciones. Emisin fuera de orden[editar editar fuente]
Para evitar falsas dependencias de operandos, algo que reducira la frecuencia de reloj si las instrucciones son emitidas fuera de orden, se utiliza la tcnica conocida como renombre de
registros. Para ello, el procesador fsicamente cuenta con ms registros que los que vienen definidos por la arquitectura. Los registros fsicos son etiquetados de forma que pueden convivir mltiples versiones del mismo registro de arquitectura. Reinicio de programas[editar editar fuente]
La cola de resultados es necesaria para resolver problemas tales como predicciones errneas de salto o el lanzamiento de excepciones. La cola de resultados permite a los programas reiniciarse tras una excepcin, lo que requiere que las instrucciones sean completadas en el orden del cdigo del programa. La cola permite tambin que los resultados puedan ser descartados si proceden de predicciones errneas de saltos o excepcione