In Clustered Instruction-level Parallel (ILP) processors, the function units are partitioned and resources such as register
file and cache are either partitioned or replicated and then grouped together into onchip clusters. We present a novel partitioned
register file architecture for clustered ILP processors which exploits the temporal locality of references to remote registers
in a cluster and combines multiple inter-cluster communication operations into a single broadcast operation using a new sendb
instruction. Our scheme makes use of a small Caching Register Buffer (CRB) attached to the traditional partitioned local register file, which is used to store copies of remote registers. We
present an efficient code generation algorithm to schedule sendb operations on-the-fly. Detailed experimental results show
that a windowed CRB with just 4 entries provides the same performance as that of a partitioned register file with infinite
non-architected register space for keeping remote registers.
Supported in part by U.S. National Science Foundation (NSF) through a CAREER grant (MIP 9702569) and a regular grant (CCR
0073582).