Affiliation:
1. Inria, Univ Rennes, CNRS, IRISA, Rennes, France
Abstract
This article proposes a new microarchitectural scheme for reducing the hardware complexity of the integer register file of a superscalar processor. The register file is split into two banks holding even-numbered and odd-numbered physical registers, respectively. Each bank provides one read port to each two-input integer execution unit. This way, each bank has half the total number of read ports, and the register file area is roughly halved, which reduces the energy dissipated per register access and the register access time. However, a bank conflict occurs when both inputs of a two-input micro-operation lie in the same bank. Bank conflicts hurt performance, and we propose a simple solution to remove most bank conflicts, thus recovering most of the lost performance.
Publisher
Association for Computing Machinery (ACM)
Subject
Hardware and Architecture,Information Systems,Software
Reference76 articles.
1. uiCA
2. AMD. 2020. Software Optimization Guide for AMD EPYC 7003 Processors. Retrieved from https://developer.amd.com/resources/developer-guides-manuals/.
3. Exploiting value locality in physical register files
4. Reducing the complexity of the register file in dynamic superscalar processors
5. Translation caching