Title :
Improving CISC instruction decoding performance using a fill unit
Author :
Smotherman, Mark ; Franklin, Manoj
Author_Institution :
Dept. of Comput. Sci., Clemson Univ., SC, USA
fDate :
29 Nov-1 Dec 1995
Abstract :
Current superscalar processors, both RISC and CISC, require substantial instruction fetch and decode bandwidth to keep multiple functional units utilized. While CISC instructions can sometimes provide reduced fetch bandwidth requirements, they are correspondingly more difficult to decode. A hardware assist, called a fill unit, can dynamically collect decoded microoperations into a decoded instruction cache. Future code fetches to those locations can be satisfied out of this cache and thus bypass the decoding logic. This approach is investigated using the Intel x86 architecture, and a speedup of approximately a factor of two over a P6-like decoding structure is seen for the three SPEC benchmarks investigated. This design is accompanied by a microengine-register allocation and renaming scheme that prevents the increased supply of microoperations from placing excessive demands on the normal register renaming hardware
Keywords :
cache storage; computer architecture; performance evaluation; CISC instruction decoding; Intel x86 architecture; SPEC benchmarks; decode bandwidth; decoded instruction cache; fill unit; instruction fetch; microengine-register allocation; performance; register renaming; renaming scheme; superscalar processors; Bandwidth; Computer science; Decoding; Dynamic scheduling; Hardware; Instruction sets; Logic; Processor scheduling; Reduced instruction set computing; Registers;
Conference_Titel :
Microarchitecture, 1995., Proceedings of the 28th Annual International Symposium on
Conference_Location :
Ann Arbor, MI
Print_ISBN :
0-8186-7349-4
DOI :
10.1109/MICRO.1995.476829