Code generation algorithms for dual data memory banks of digital signal processors = 디지털 신호 처리기의 듀얼 데이터 메모리 뱅크를 위한 코드 생성 알고리즘

Cited 0 time in webofscience Cited 0 time in scopus
  • Hit : 207
  • Download : 0
Virtually every vendor of {\em digital signal processors}~(DSPs) supports a Harvard architecture, which provides on-chip multi-memory banks that allow the processor to access multiple words of data from memory in a single instruction cycle. Also, all existing {\em fixed-point} DSPs are known to have irregular architecture with {\em heterogeneous} registers, which contains multiple register files that are distributed and dedicated to different sets of instructions. Although there have been several studies conducted to efficiently assign data to multi-memory banks, most of them assumed processors with relatively simple, homogeneous general-purpose registers. Therefore, several vendor-provided compilers for DSPs that I examined were unable to efficiently assign data to multiple data memory banks; thereby often failing to generate highly optimized code for their machines. As a consequence, programmers for these DSPs often manually assign program variables to memories so as to fully utilize multi-memory banks in their code. This paper reports our recent attempt to address this problem by presenting an algorithm that helps the compiler to efficiently assign data to multi-memory banks. Our algorithm differs from previous work in that it assigns variables to memory banks in separate, {\em decoupled} code generation phases, instead of a single, tightly-coupled phase. The experimental results have revealed that our decoupled algorithm greatly simplifies our code generation process; thus our compiler runs extremely fast, yet generates target code that is comparable in quality to the code generated by a coupled approach. I also presented a runtime environment for dual data memory banks and runtime memory optimization technique. Because this algorithm can be used for decreament of runtime memory, as a result, larger program can be executed in on-chip memory. Therefore, we can get performance enhancement in large programs.
Paek, Yun-Heungresearcher백윤흥researcher
한국과학기술원 : 전기및전자공학전공,
Issue Date
231140/325007  / 000985366

학위논문(박사) - 한국과학기술원 : 전기및전자공학전공, 2003.2, [ ix, 88 p. ]


algorithm; dual data memory bank; compiler; DSP; 디지털 신호 처리기; 알고리즘; 듀얼 데이터 메모리 뱅크; 컴파일러

Appears in Collection
Files in This Item
There are no files associated with this item.


  • mendeley


rss_1.0 rss_2.0 atom_1.0