Title :
Memory bank and register allocation in software synthesis for ASIPs
Author :
Sudarsanam, A. ; Malik, S.
Author_Institution :
Dept. of Electr. Eng., Princeton Univ., NJ, USA
Abstract :
An architectural feature commonly found in digital signal processors (DSPs) is multiple data-memory banks. This feature increases memory bandwidth by permitting multiple memory accesses to occur in parallel when the referenced variables belong to different memory banks and the registers involved are allocated according to a strict set of conditions, Unfortunately, current compiler technology is unable to take advantage of the potential increase in parallelism offered by such architectures, Consequently, most application software for DSP systems is hand-written-a very time-consuming task. We present an algorithm which attempts to maximize the benefit of this architectural feature. While previous approaches have decoupled the phases of register allocation and memory bank assignment, our algorithm performs these two phases simultaneously. Experimental results demonstrate that our algorithm substantially improves the code quality of many compiler-generated and even hand-written programs.
Keywords :
computer aided software engineering; digital signal processing chips; software tools; special purpose computers; storage management; code quality; compiler-generated programs; digital signal processors; hand-written programs; memory bandwidth; memory bank allocation; memory bank assignment; multiple data-memory banks; multiple memory accesses; register allocation; software synthesis; Application software; Application specific processors; Bandwidth; Computer architecture; Digital signal processing; Digital signal processors; Program processors; Registers; Signal processing algorithms; Signal synthesis;
Conference_Titel :
Computer-Aided Design, 1995. ICCAD-95. Digest of Technical Papers., 1995 IEEE/ACM International Conference on
Conference_Location :
San Jose, CA, USA
Print_ISBN :
0-8186-8200-0
DOI :
10.1109/ICCAD.1995.480145