Abstract
In this paper, an embedded system that takes into account the frequency of the executed instructions to reduce memory space and save energy consumption is proposed. The object codes are split into the frequently executed instructions and the infrequently executed instructions (INFIs) by analyzing the trace files of applications. To reduce the use of memory space, the dictionary-based method is used to compress INFIs. To take into account energy consumption, the top-executed instructions are selected to encode as shorter codewords and wrapped into a pseudo instruction. When a pseudo instruction that contains several codewords is fetched, it can be decompressed to several continuous instructions to reduce the number of memory accesses. In addition, to further reduce energy consumption, a multiple reference table design is proposed to make a pseudo instruction contain more encoded codewords by shortening the length of an encoded instruction. From the simulation results, the proposed design that uses one 256-instruction reference table reduces the energy consumption about 50.4% compared to the dictionary-based method. In addition, to show the improvement of energy consumption for the proposed multiple reference table method over that using one reference table, we also show the simulation results of a design with two 256-instruction reference tables which shows less energy use than a design with one 512-instruction reference table by 12.1%.
Acknowledgment
Chen, C.-W.’s research was partially supported by Ministry of Science and Technology, R.O.C. (MOST104-2221-E-035-005-).
Funding
This work was supported by Ministry of Science and Technology, R.O.C. [grant number MOST104-2221-E-035-005-].