Register Renaming

Register Renaming

Done in the Extended Instruction Pipeline . Mapping of physical registers to logical registers. This is done to prevent Anti dependencies (read …write) or Output dependencies (write … write) .

Two methods:

Comparison #

  1. Allocatoin / release

    • Merged register file
      • allocation based on free list
      • hard to decide if register is no longer needed
    • ROB
      • no free list
      • release requires id of physical register
      • instructions in issue queue need to be updated
  2. Transfer of data

    • Merged register file
      • Requre more read ports
      • Less data transfers
    • ROB
      • Data fist stored in ROB and then transferred to register file then copied to the issue queue entry and then to then functional unit -> Many data transfers (cost energy)
Calendar October 22, 2023