Title :
Efficient Code Compression for Embedded Processors
Author :
Bonny, Talal ; Henkel, Jörg
Author_Institution :
CES-Chair for Embedded Syst., Karlsruhe Univ., Karlsruhe
Abstract :
Code density is of increasing concern in embedded system design since it reduces the need for the scarce resource memory and also implicitly improves further important design parameters like power consumption and performance. In this paper we introduce a novel, hardware-supported approach. Besides the code, also the lookup tables (LUTs) are compressed, that can become significant in size if the application is large and/or high compression is desired. Our scheme optimizes the number and size of generated LUTs to improve the compression ratio. To show the efficiency of our approach, we apply it to two compression schemes: ldquodictionary-basedrdquo and ldquostatisticalrdquo. We achieve an average compression ratio of 48% (already including the overhead of the LUTs). Thereby, our scheme is orthogonal to approaches that take particularities of a certain instruction set architecture into account. We have conducted evaluations using a representative set of applications and have applied it to three major embedded processor architectures, namely ARM, MIPS, and PowerPC.
Keywords :
Huffman codes; data compression; embedded systems; instruction sets; microprocessor chips; parallel architectures; table lookup; ARM; Huffman coding; LUT; MIPS; PowerPC; code density; efficient code compression; embedded processors; embedded system design; instruction set architecture; lookup tables; scarce resource memory; Application software; Computer architecture; Costs; Decoding; Dictionaries; Embedded system; Energy consumption; Huffman coding; Runtime; Table lookup; Code compression; Huffman coding; code density; embedded systems;
Journal_Title :
Very Large Scale Integration (VLSI) Systems, IEEE Transactions on
DOI :
10.1109/TVLSI.2008.2001950