DocumentCode
2533410
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
fYear
1995
fDate
29 Nov-1 Dec 1995
Firstpage
219
Lastpage
229
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;
fLanguage
English
Publisher
ieee
Conference_Titel
Microarchitecture, 1995., Proceedings of the 28th Annual International Symposium on
Conference_Location
Ann Arbor, MI
ISSN
1072-4451
Print_ISBN
0-8186-7349-4
Type
conf
DOI
10.1109/MICRO.1995.476829
Filename
476829
Link To Document