DocumentCode :
1821313
Title :
Comparison of Bank Change Mechanisms for Banked Reduced Encoding Architectures
Author :
Lee, Je-Hyung ; Moon, Soo-Mook ; Choi, Hyung-Kyu
Author_Institution :
Seoul Nat. Univ., Seoul, South Korea
Volume :
2
fYear :
2009
fDate :
29-31 Aug. 2009
Firstpage :
334
Lastpage :
341
Abstract :
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.
Keywords :
bank data processing; embedded systems; optimising compilers; storage management; ARM THUMB; MIPS-16; bank change mechanisms; banked reduced encoding architectures; embedded systems; memory constraints; register allocation; register file; Computer architecture; Embedded computing; Embedded system; Encoding; Government; Moon; Registers; Research and development; Thumb; Virtual machining; banked register; code optimization; embedded system; register allocation; register bank;
fLanguage :
English
Publisher :
ieee
Conference_Titel :
Computational Science and Engineering, 2009. CSE '09. International Conference on
Conference_Location :
Vancouver, BC
Print_ISBN :
978-1-4244-5334-4
Electronic_ISBN :
978-0-7695-3823-5
Type :
conf
DOI :
10.1109/CSE.2009.358
Filename :
5284079
Link To Document :
بازگشت