DocumentCode
1602910
Title
A hierarchical dependence check and folded rename mapping based scalable dispatch stage
Author
Sankaranarayanan, Vadhiraj ; Tyagi, Akhilesh
Author_Institution
Dept. of ECE, Iowa State Univ., Ames, IA, USA
fYear
2001
fDate
6/23/1905 12:00:00 AM
Firstpage
249
Lastpage
254
Abstract
In a superscalar pipeline, the dispatch stage performs register renaming, which involves map table lookup logic and dependence check logic. Both subtasks do not scale well with the dispatch width of the processor. The number of comparators necessary for the dependence check logic grows quadratically with the dispatch width of the processor. The rename map table´s word line capacitance scales linearly with the dispatch width. This paper proposes and evaluates schemes to alleviate both these problems. By performing the dependence check hierarchically in two stages, the number of comparators required in the dependence check logic is reduced from quadratic to linear in the dispatch width. This scheme is also scalable with the dispatch width by allowing a dispatch of DW2 instructions in the same processor cycle time that the current microprocessors use to dispatch DW instructions. Simple scalar based simulations indicate a performance penalty of less than 10% over Spec95 CPU benchmarks due to the extra cycle introduced. The second scheme started with an objective of utilizing speculation in rename and dependence information. The only beneficial subspace of this speculation appears to be the reuse of rename information of those instructions whose source operands are produced either in their own basic block or in the immediately preceding basic block. By storing rename information of such instructions in a rename cache, these instructions can be dispatched directly to the reservation stations if the program takes the same path again. The performance improvement due to the rename cache is approximately 7% for SPEC95 integer benchmarks
Keywords
cache storage; parallel architectures; performance evaluation; pipeline processing; dependence check; instruction-level-parallelism; integer benchmarks; microarchitecture; non-scalable bottlenecks; performance improvement; performance penalty; register rename logic; register renaming; rename cache; rename information; scalable dispatch stage; superscalar pipeline; Capacitance; Delay lines; Logic design; Microarchitecture; Microprocessors; Pipelines; Registers; Scalability; Table lookup;
fLanguage
English
Publisher
ieee
Conference_Titel
Computer Design, 2001. ICCD 2001. Proceedings. 2001 International Conference on
Conference_Location
Austin, TX
ISSN
1063-6404
Print_ISBN
0-7695-1200-3
Type
conf
DOI
10.1109/ICCD.2001.955036
Filename
955036
Link To Document