Register Connection: A New Approach to Adding Registers into Instruction Set Architectures (PostScript version, PDF version)
Tokuzo Kiyohara, Scott Mahlke, William Chen, Roger Bringmann, Richard Hank, Sadun Anik, Wen-mei Hwu
Proceedings of the 20th Annual International Symposium on Computer Architecture, San Diego, CA, May 17-19, 1993, pp. 247-256
Code optimization and scheduling for superscalar and
superpipelined processors often increase the register
requirement of programs. For existing instruction sets
with a small to moderate number of registers, this increased
register requirement can be a factor that limits the
effectiveness of the compiler. In this paper, we introduce a
new architectural method for adding a set of extended
registers into an architecture. Using a novel concept of
connection, this method allows the data stored in the extended
registers to be accessed by instructions that apparently
reference core registers. Furthermore, we address the
technical issues involved in applying the new method to an
architecture: instruction set extension, procedure call
convention, context switching considerations, upward
compatibility, efficient implementation, compiler support,
and performance. Experimental results based on a prototype
compiler and execution driven simulation show that the
proposed method can significantly improve the performance
of superscalar processors with a small or moderate number
of registers.
[ IMPACT Main Page |
Team Members |
Publications |
Software |
FAQ ]