Register renaming - Generalities
Use a physical register file (or some other storage form, e.g., reservation station or reorder buffer) larger than the ISA logical one
When instruction is decoded
- Give a new name to result register from the free list. The register is renamed
- Give source operands their physical names (from mapping table)
Hence the need to:
- Keep a mapping table logical - physical correspondence
- Keep a free list of empty physical registers
- Note that several physical registers can be mapped to the same logical register (corresponding to instructions at different times)