S-Space College of Engineering/Engineering Practice School (공과대학/대학원) Dept. of Computer Science and Engineering (컴퓨터공학부) Others_컴퓨터공학부
Comparison of Bank Change Mechanisms for Banked Reduced Encoding Architectures
- Lee, Je-Hyung; Moon, Soo-Mook; Choi, Hyung-kyu
- Issue Date
- IEEE Computer Society
- cse,2, p.334-341, 2009 International Conference on Computational Science and Engineering, 2009
- 2009 International Conference on Computational Science and Engineering
// Vancouver, Canada
- Embedded systems often require small code size due to their tight memory constraints. Although the reduced encoding architectures such as the ARM THUMB or the MIPS-16 can successfully reduce the code size due to its half-sized instructions, they suffer from higher spills due to their shortened register fields which constrain available registers, thus affecting the code size and the performance negatively. One solution is reconstructing the original register file into the banked one and allowing only one bank to be active at a time using a bank change instruction. This can make all of the original registers available for register allocation, thus reducing the spills. This requires efficient banked register allocation by partitioning the code into two regions, one for each register bank. One important factor that affects the partitioning is the bank change mechanism, and two bank change mechanisms have been proposed, toggling and selection. Toggling simplifies the code partitioning, while selection is flexible in the code partitioning which, in theory, can distribute the register pressure better. This paper evaluates both mechanisms in the same context of dual register banks to understand their impact on the code size and the performance. Our experimental results indicate that selection fails to achieve smaller code or better performance than toggling due to excessive inter-bank copies even when it can partition regions aggressively.
- Files in This Item: There are no files associated with this item.