Optimizing Data Allocation for Loops on Embedded Systems with Scratch-Pad Memory
Jun Zhang, Tan Deng, Qiuyan Gao, Qingfeng Zhuge, Edwin H.‐M. Sha · 2012
Scratch Pad Memory (SPM), a software-controlled on-chip memory, is popular in embedded systems due to its many benefits. To efficiently manage SPM, many different data allocation algorithms are proposed. However, most of them cannot achieve optimal results. In this paper, we proposed a dynamic programming approach, Iterational Optimal Data Allocation (IODA) to allocate data for embedded systems with multiple types of memory units. According to the experimental results, the IODA algorithm lowered the energy consumption by 20.14% and 5.11% compared to a random memory allocation and a greedy algorithm, respectively. It also reduced the memory access time by 18.44% and 5.83% compared to a random memory allocation and a greedy algorithm, respectively.