
Una estación de reserva unificada , también conocida como planificador unificado , es una característica descentralizada de la microarquitectura de una CPU que permite el cambio de nombre de los registros y es utilizada por el algoritmo de Tomasulo para la planificación dinámica de instrucciones . [ 1 ]
Las estaciones de reserva permiten que la CPU obtenga y reutilice un valor de datos tan pronto como se haya calculado, en lugar de esperar a que se almacene en un registro y se vuelva a leer. Cuando se emiten instrucciones, estas pueden designar la estación de reserva desde la que desean leer su entrada. Cuando varias instrucciones necesitan escribir en el mismo registro, todas pueden ejecutarse y solo la última (lógicamente) necesita escribirse realmente. Antes de comenzar la ejecución, se comprueba si los operandos están disponibles ( lectura después de escritura ) y si la unidad de ejecución está libre ( riesgo estructural ).
Las instrucciones se almacenan con los parámetros disponibles y se ejecutan cuando están listas. Los resultados se identifican mediante la unidad que ejecutará la instrucción correspondiente. El cambio implícito de nombre de registros resuelve los riesgos WAR y WAW . Dado que se trata de una estructura totalmente asociativa, tiene un coste muy elevado en comparadores (es necesario comparar todos los resultados devueltos por las unidades de procesamiento con todas las direcciones almacenadas): un coste que aumenta drásticamente para Multi-Issue.
En el algoritmo de Tomasulo, las instrucciones se emiten secuencialmente a las estaciones de reserva, las cuales almacenan en búfer tanto la instrucción como sus operandos. Si el operando no está disponible, la estación de reserva escucha en un bus de datos común hasta que esté disponible. Cuando el operando está disponible, la estación de reserva lo almacena en búfer y puede comenzar la ejecución de la instrucción.
Cada unidad funcional (como un sumador o un multiplicador) tiene su propia estación de reserva correspondiente. La salida de la unidad funcional se conecta al bus de datos común, donde las estaciones de reserva esperan los operandos que necesitan.
Bibliografía
- Arquitectura de computadoras: un enfoque cuantitativo , John L. Hennessy, David A. Patterson, 2012 ( ISBN) 9780123838728) "3.4 Superación de riesgos de datos con programación dinámica", págs. 172-180
Referencias
Enlaces externos
- Las estaciones de reserva , proyecto HASE, Instituto de Arquitectura de Sistemas Informáticos, Escuela de Informática, Universidad de Edimburgo, 2003
- CS6290 Algoritmo de Tomasulo Archivado el 08/12/2014 en Wayback Machine , Georgia Tech
- Procesamiento de instrucciones