2000/01/01 by Dezsö Sima · 1 citation
Computer Science · #Parallel Computing and Optimization Techniques #Advanced Data Storage Technologies #Interconnection Networks and Systems #Computer science #Operand #Register file #Processor register #Register allocation #Parallel computing #Instructions per cycle #Microarchitecture #Register (sociolinguistics) #Address space #Process (computing) #Programming language #Fetch #Scope (computer science) #Arithmetic #Computer architecture #Instruction set #Operating system #Compiler #Memory address #Central processing unit
paper · doi:10.1109/40.877952
openalex publication_date 2000/01/01 · openalex created_date 2025/10/10 · openalex updated_date 2026/04/04
Register renaming is a technique to remove false data dependencie-write after read (WAR) and write after write (WAW)-that occur in straight line code between register operands of subsequent instructions. By eliminating related precedence requirements in the execution sequence of the instructions, renaming increases the average number of instructions that are available for parallel execution per cycle. This results in increased IPC (number of instructions executed per cycle). The identification and exploration of the design space of register-renaming lead to a comprehensive understanding of this intricate technique. As this article shows, the design space of register renaming is spanned by four main dimensions: the scope of register renaming, the layout of the rename buffers, the method of register mapping, and the rename rate. Relevant aspects of the design space give rise to eight basic alternatives for register-renaming. In addition, the kind of operand fetch policy significantly affects how the processor carries out the rename process, which duplicates the eight basic alternatives to 16 possible implementation schemes. The article indicates which basic implementation scheme is used in relevant superscalar processors. As register renaming is usually implemented in conjunction with shelving, the underlying microarchitecture is assumed to employ shelving.