Title :
Joint variable partitioning and bank selection instruction optimization on embedded systems with multiple memory banks
Author :
Liu, Tiantian ; Li, Minming ; Xue, Chun Jason
Author_Institution :
Dept. of Comput. Sci., City Univ. of Hong Kong, Hong Kong, China
Abstract :
Multiple memory banks with bank switching is a technique to increase memory size without extending address buses. A special instruction, Bank Selection Instruction (BSL) is inserted into the original programs to modify the bank register to point to the right bank, which increases both the code size and runtime overhead. In this paper, we carefully partition variables into different banks and insert BSLs at different positions so that the overheads can be minimized. Minimizing code size and minimizing runtime overhead are two objectives investigated in this paper. Experiments show that the algorithms proposed can reduce the overhead caused by BSLs efficiently.
Keywords :
embedded systems; semiconductor storage; address buses; bank register; bank selection instruction optimization; bank switching; code size; embedded systems; memory size; multiple memory banks; runtime overhead; variable partitioning; Algorithm design and analysis; Computer science; Embedded system; Microcontrollers; Microprocessors; Minimization methods; Partitioning algorithms; Quadratic programming; Registers; Runtime;
Conference_Titel :
Design Automation Conference (ASP-DAC), 2010 15th Asia and South Pacific
Conference_Location :
Taipei
Print_ISBN :
978-1-4244-5765-6
Electronic_ISBN :
978-1-4244-5767-0
DOI :
10.1109/ASPDAC.2010.5419909