Title :
Minimizing Access Cost for Multiple Types of Memory Units in Embedded Systems Through Data Allocation and Scheduling
Author :
Zhuge, Qingfeng ; Guo, Yibo ; Hu, Jingtong ; Tseng, Wei-Che ; Xue, Chun Jason ; Sha, Edwin Hsing-Mean
Author_Institution :
Coll. of Comput. Sci. & Eng., Chongqing Univ., Chongqing, China
fDate :
6/1/2012 12:00:00 AM
Abstract :
Software-controlled memories, such as scratch-pad memory (SPM), have been widely adopted in many digital signal processors to achieve high performance with low cost. Multiple types of memory units with varying performance and cost can be found in one system. In this paper, we design a polynomial-time algorithm, the regional optimal data allocation (RODA) algorithm, using dynamic programming approach. It guarantees optimal data allocation with minimal access cost for a program region. A polynomial-time algorithm, the global data allocation (GDA) algorithm, is proposed to reduce access cost efficiently based on regional results generated by the RODA algorithm. A heuristic, the maximal similarity scheduling (MSS) algorithm, is also developed to find an execution sequence of program regions with maximal similarity of accessed data items for consecutive regions in order to reduce memory traffic. The experimental results on a set of benchmarks show that our technique that combines the GDA and the MSS algorithms outperforms greedy algorithm in all the experimental cases.
Keywords :
digital signal processing chips; dynamic programming; embedded systems; greedy algorithms; memory architecture; polynomials; scheduling; MSS algorithm; RODA algorithm; access cost minimization; digital signal processors; dynamic programming approach; embedded systems; global data allocation; greedy algorithm; maximal similarity scheduling algorithm; memory traffic reduction; memory units; optimal data allocation; polynomial-time algorithm; program execution sequence; regional optimal data allocation algorithm; software-controlled memories; through data allocation; through data scheduling; Dynamic programming; Dynamic scheduling; Greedy algorithms; Heuristic algorithms; Memory management; Resource management; Signal processing algorithms; Data allocation; embedded system; scheduling; scratch-pad memory;
Journal_Title :
Signal Processing, IEEE Transactions on
DOI :
10.1109/TSP.2012.2189768