Está en la página 1de 1

La ejecucin fuera de orden es una forma restringida de computacin de flujo de datos, siendo una importante rea de investigacin en arquitectura

de computadores en los aos 1970 y principios de los aos 1980. Uno de los ms importantes trabajos acadmicos en la materia fue llevado a cabo por Yale Patt con su simulador HPSm. Un artculo publicado por James E. Smith y A.R. Pleszkun, publicado en 1985, complet la idea al describir cmo se poda mantener el preciso comportamiento de las excepciones en las mquinas basadas en ejecucin fuera de orden. La primera mquina en utilizar esta idea probablemente fue el CDC 6600 (1964), el cual utilizaba marcadores para solucionar conflictos entre registros. Unos tres aos ms tarde fue presentado el IBM 360/91 (1966), que implementaba el novedoso Algoritmo de Tomasulo. IBM tambin present el primer microprocesador fuera de orden, el POWER1 (1990) para sus equipos RS/6000. Sin embargo fue la aparicin del Intel Pentium Pro (1995) lo que termin de lanzar esta tecnologa. Muchos otros fabricantes comenzaron entonces a aplicar la idea en sus diseos: IBM/Motorola PowerPC 601 (1992/1993), Fujitsu/HAL Sparc64 I (1995), HP PA-8000 (1996), MIPS R-10000 (1996), AMD K5 (1996) y DEC Alpha 21264 (1998). Excepciones notables a esta tendencia fueron el UltraSparc de Sun, el HP/Intel IA-64, y el Transmeta Crusoe. La complejidad lgica de los esquemas fuera de orden fue la razn de que esta tcnica no alcanzara una posicin importante hasta mediados de los aos 1990. Incluso actualmente no se aplica en muchos procesadores de bajo coste destinados a mercados muy sensibles a los costes de fabricacin ya que se necesita una "gran" superficie de silicio para construir este tipo de hardware. Ideas bsicas[editar editar fuente]

Procesadores en orden[editar editar fuente] En los primeros procesadores, las instrucciones eran procesadas segn estos pasos: Captura de la instruccin. Si los operandos de entrada estn disponibles (en los registros por ejemplo), la instruccin es enviada a la correspondiente unidad funcional. Si alguno de ellos no lo est durante el ciclo de reloj actual (generalmente porque est siendo capturado desde memoria), el procesador inserta burbuja hasta poder utilizar el dato. La instruccin es ejecutada por la unidad funcional adecuada. La unidad funcional escribe los resultados en el archivo de registros.

También podría gustarte