An optimized front-end physical register file with banking and writeback filtering

  • Authors:
  • Miquel Pericàs;Ruben Gonzalez;Adrian Cristal;Alex Veidenbaum;Mateo Valero

  • Affiliations:
  • Computer Architecture Department, Technical University of Catalonia (UPC), Spain;Computer Architecture Department, Technical University of Catalonia (UPC), Spain;Computer Architecture Department, Technical University of Catalonia (UPC), Spain;Information and Computer Science, University of California at Irvine (UCI);Computer Architecture Department, Technical University of Catalonia (UPC), Spain

  • Venue:
  • PACS'04 Proceedings of the 4th international conference on Power-Aware Computer Systems
  • Year:
  • 2004

Quantified Score

Hi-index 0.00

Visualization

Abstract

Register file design is one of the critical issues facing designers of out–of–order processors. Scaling up its size and number of ports with issue width and instruction window size is difficult in terms of both performance and power consumption. Two types of register file architectures have been proposed in the past: a future logical file and a centralized physical file. The centralized register file does not scale well but allows fast branch mis–prediction recovery. The Future File scales well, but requires reservation stations and has slow mis–prediction recovery. This paper proposes a register file architecture that combines the best features of both approaches. The new register file has the large size of the centralized file and its ability to quickly recover from branch misprediction. It has the advantage of the future file in that it is accessed in the ”front end” allowing about 1/3rd of the source operands that are ready when an instruction enters the window to be read immediately. The remaining operands come from bypass logic / instruction queues and do not require register file access. The new architecture does require reservation stations for operand storage and it investigates two approaches in terms of power–efficiency. Another advantage of the new architecture is that banking is much easier to use in this case as compared to the centralized register file. Banking further improves the scalability of the new architecture. A technique for early release of short–lived registers called writeback filtering is used in combination with banking to further improve the new architecture. The use of a large front–end register file results in significant power savings and a slight IPC degradation (less than 1%). Overall, the resulting energy–delay product is lower than in previous proposals.