It is implemented basically as a circular buffer whose entries are allocated and deallocated by means of two revolving pointers [46]. The ROB operates as follows. When instructions are dispatched, a ROB entry is allocated to each instruction strictly in program order. Each ROB entry keeps track of the execution status of the associated instruction. The ROB allows instructions to complete (commit, retire) only in program order by permitting an instruction to complete only if it has finished its execution and all preceding instructions are already completed. In this way, instructions update the program state in exactly the same way as a sequential processor would have done. After an instruction has completed, the associated ROB entry is deallocated and becomes eligible for reuse.
References
1. Rau, B.R. and Fisher, J.A., Instruction level parallel processing: History, overview and perspective,
The Journal of Supercomputing,7, 9, 1993.
2. Smith, P.E. and Sohi, G.S., The microarchitecture of superscalar processors,Proceedings of the IEEE,
83, 1609, 1995.
3. Sima, D., Fountain, T., and Kacsuk, P.,Advanced Computer Architectures,Addison Wesley Longman, Harlow, 1997.
4. Tomasulo, R.M., An efficient algorithm for exploiting multiple arithmetic units, IBM Journal of Research and Development,11, 1, 25, 1967.
5. Tjaden, G.S. and Flynn, M.J., Detection and parallel execution of independent instructions,IEEE Transactions on Computers,C-19, 889, 1970.
6. Keller, R.M., Look-ahead processors,Computing Surveys,7, 177, 1975.
7. Leibholz, D. and Razdan, R., The Alpha 21264: A 500 MIPS out-of-order execution microprocessor, inProceedings of COMPCON, 1997, 28.
8. Kurpanek, G., Chan, K., Zheng, J., CeLano, E., and Bryg, W., PA-7200: A PA-RISC processor with integrated high performance MP bus interface, inProceedings of COMPCON, 1994, 375.
9. Hunt, D., Advanced performance features of the 64-bit PA-8000, inProceedings of COMPCON, 1995, 123.
10. Scott, A.P. et al., Four-way superscalar PA-RISC Processors,Hewlett-Packard Journal,Aug., 1, 1997. 11. Lesartre, G. and Hunt, D., PA-8500: The continuing evolution of the PA-8000 Family, PA-8500
12. Grohoski, G.F., Machine organization of the IBM RISC System=6000 processor, IBM Journal of Research and Development,34, 1, 37, 1990.
13. White, S. and Reysa, J., PowerPC and POWER2: Technical Aspects of the New IBM RISC System= 6000, IBM Corporation, 1994.
14. Gwennap, L., IBM crams POWER2 onto single chip,Microprocessor Report,10, 11, 14, 1996. 15. Becker, M. et al., The PowerPC 601 microprocessor,IEEE Micro,13, Oct., 54, 1993.
16. Burgess, B. et al., The PowerPC 603 microprocessor,Communications of the ACM,37, 6, 34, 1994. 17. Song, S.P. et al., The PowerPC 604 RISC microprocessor,IEEE Micro,141, 8, 1994.
18. Ogden, D. et al., A new PowerPC microprocessor for low power computing systems, inProceedings of COMPCON, 1995, 281.
19. Levitan, D. et al., The PowerPC 620 microprocessor: A high performance superscalar RISC micro- processor, inProceedings of COMPCON, 1995, 285.
20. Song, S.P., IBM’s POWER3 to replace P2SC,Microprocessor Report,11, 15, 23, 1997.
21. Gwennap, L., MIPS R10000 uses decoupled architecture,Microprocessor Report,8, 18, 14, 1994. 22. Gwennap, L., MIPS R12000 to hit 300 MHz,Microprocessor Report,11, 13, 1, 1997.
23. Patkar, N. et al., Microarchitecture of HaL’s CPU, inProceedings of COMPCON, 1995, 259. 24. Gwennap, L., Intel’s P6 uses decoupled superscalar design,Microprocessor Report,9, 2, 9, 1995. 25. Gwennap, L., Klamath extends P6 family,Microprocessor Report,11, 2, 1, 1997.
26. Pentium III Processor, Product Overview, Intel Corp., 1999.
27. Hinton, G. et al., The microarchitecture of the Pentium IV processor,Intel Technology Journal,1.Q., 1, 2001.
28. Liptay, J.S., Design of the IBM Enterprise Sytem=9000 high-end processor,IBM Journal of Research and Development,36, 4, 713, 1992.
29. Burkhardt, B., Delivering next-generation performance on today’s installed computer base, in
Proceedings of COMPCON, 1994, 11.
30. ‘‘Cyrix 686MX,’’ Cyrix Corporation, Order No. 94329-00, 1997.
31. Gwennap, L., NexGen enters market with 66-MHz Nx586,Microprocessor Report,8, 4, 12, 1994. 32. Slater, M., AMD’s K5 designed to outrun Pentium,Microprocessor Report,8, 14, 1, 1994.
33. Shriver, B. and Smith, B., The Anatomy of a High-Performance Microprocessor, IEEE Computer Society Press, Los Alamitos, 1998.
34. Golden, M. et al., A seventh-generation x86 microprocessor,IEEE Journal of Solid-State Circuits, 34, 11, 1999, 1466.
35. Sima, D., The design space of register renaming techniques,IEEE Micro,20, Sept.=Oct., 70, 2000. 36. Sima, D., Superscalar instruction issue,IEEE Micro,17, Sept.=Oct., 29, 1997.
37. Popescu, V., Schultz, M., Spracklen, J., Gibson, G., Lightner, B., and Isaman, D., The Metaflow architecture,IEEE Micro,11, June, 10, 1991.
38. Gwennap, L., Nx686 goes toe-to-toe with Pentium Pro,Microprocessor Report,9, 14, 1, 1995. 39. Monreal, T. et al., Delaying physical register allocation through virtual-physical registers, in
Proceedings of MICRO-32, 1999, 186.
40. Wallace, S. and Bagheryadeh, N., A scalable register file architecture for dynamically scheduled processors, inProceedings of the Conference on Parallel Architectures and Compilation Techniques, 1996, 179.
41. Gonza´lez, A. et al., Virtual registers, inProceedings of the Third International Symposium on High- Performance Computer Architecture, IEEE CS Press, 1997, 364.
42. Gonza´lez, A., Gonza´lez, J., and Valero, M., Virtual-physical register, in Proceedings of the Fourth International Symposium on High-Performance Computer Architecture, IEEE CS Press, 1998, 175. 43. Jourdan, S. et al., A novel renaming scheme to exploit value temporal locality through physical
register reuse and unification, inProceedings of MICRO-31, IEEE CS Press, 1998, 216.
44. Asato, C. et al., A 14-port 3.8 ns 116 word 64b read-renaming register file, inProceedings of ISSC, 1995, 104.
46. Smith, J.E. and Pleszkon, A., Implementation of precise interrupts in pipelined processors, in
Proceedings of ISCA, IEEE CS Press, 1985, 36.
47. Johnson, M.,Superscalar Microprocessor Design,Prentice-Hall, Englewood Cliffs, NJ, 1991. 48. Sohi, G.S. and Vajapayem, S., Instruction dispatch logic for high performance, interruptable
pipelined processors, inProceedings of the 14th ASCA, 1987, 27.
49. Sima, D., The design space of shelving,Journal of Systems Architecture,45, 863, 1999. 50. Thornton, J.E.,Design of a Computer: The CDC 6600,Scott Foresman, Glenview, IL, 1970. 51. Tendler, J.M., POWER4 system microarchitecture,IBM. Journal of Research and Development46, 1,
5, 2002.
52. Sinhaoy, B., POWER5 system microarchitecture,IBM. Journal of Research and Development49, 4=5, 505, 2005.
53. de Vries, H., Understanding the detailed Architecture of AMD’s 64 bit Core, www.chip-architect. com, 2003.
54. Torres, G., Inside Pentium M Architecture, www.hardwaresecrets.com=article=270, 2006. 55. Torres, G., Inside Intel Core Microarchitecture, www.hardwaresecrets.com=article=313=1, 2006. 56. Wechsler, O., Inside Intel Core Microarchitecture, White Paper Intel Corp, 2006.
57. de Vries, H., Looking at Intel’s Prescott die, part II, www.chip-architect.com, 2003.