A Low Power-Consuming Embedded System Design by Reducing Memory Access Frequencies

Ching-Wen CHEN  Chih-Hung CHANG  Chang-Jung KU  

Publication
IEICE TRANSACTIONS on Information and Systems   Vol.E88-D   No.12   pp.2748-2756
Publication Date: 2005/12/01
Online ISSN: 
DOI: 10.1093/ietisy/e88-d.12.2748
Print ISSN: 0916-8532
Type of Manuscript: PAPER
Category: Computer Systems
Keyword: 
embedded system,  code compress,  power consumption,  performance,  

Full Text: PDF(809.9KB)>>
Buy this Article




Summary: 
When an embedded system is designed, system performance and power consumption have to be taken carefully into consideration. In this paper, we focus on reducing the number of memory access times in embedded systems to improve performance and save power. We use the locality of running programs to reduce the number of memory accesses in order to save power and maximize the performance of an embedded system. We use shorter code words to encode the instructions that are frequently executed and then pack continuous code words into a pseudo instruction. Once the decompression engine fetches one pseudo instruction, it can extract multiple instructions. Therefore, the number of memory access times can be efficiently reduced because of space locality. However, the number of the most frequently executed instructions is different due to the program size of different applications; that is, the number of memory access times increases when there are less encoded instructions in a pseudo instruction. This situation results in a degradation of system performance and power consumption. To solve this problem, we also propose the use of multiple reference tables. Multiple reference tables will result in the most frequently executed instructions having shorter encoded code words, thereby improving the performance and power of an embedded system. From our simulation results, our method reduces the memory access frequency by about 60% when a reference table with 256 instructions is used. In addition, when two reference tables that contain 256 instructions each are used, the memory access ratio is 10.69% less than the ratio resulting from one reference table with 512 instructions.