Profile-driven selective code compression [embedded systems]

In embedded system design, memory is one of the most restricted resources. Code compression has been proposed as a solution to reduce the code size of applications for embedded systems. Data compression techniques are used to compress programs to reduce memory size. Most previous work compresses all instructions found in an executable, without taking into account the program execution profile. In this paper, a profile-driven code compression design methodology is proposed. Program profiling information can be used to help code compression to selectively compress non-critical instructions, such that the system performance degradation due to the decompression penalty is reduced.

[1]  Yuan Xie,et al.  A code decompression architecture for VLIW processors , 2001, MICRO.

[2]  Miodrag Potkonjak,et al.  MediaBench: a tool for evaluating and synthesizing multimedia and communications systems , 1997, Proceedings of 30th Annual International Symposium on Microarchitecture.

[3]  Saumya K. Debray,et al.  Profile-guided code compression , 2002, PLDI '02.

[4]  A. Wolfe,et al.  Executing Compressed Programs On An Embedded RISC Architecture , 1992, [1992] Proceedings the 25th Annual International Symposium on Microarchitecture MICRO 25.

[5]  Yuan Xie,et al.  Code compression for VLIW processors using variable-to-fixed coding , 2002, 15th International Symposium on System Synthesis, 2002..

[6]  Wayne H. Wolf,et al.  Code compression for embedded systems , 1998, Proceedings 1998 Design and Automation Conference. 35th DAC. (Cat. No.98CH36175).

[7]  Robert K. Montoye,et al.  A decompression core for PowerPC , 1998, IBM J. Res. Dev..

[8]  Luca Benini,et al.  Selective instruction compression for memory energy reduction in embedded systems , 1999, Proceedings. 1999 International Symposium on Low Power Electronics and Design (Cat. No.99TH8477).

[9]  H. Lekatsas,et al.  Design of an one-cycle decompression hardware for performance increase in embedded systems , 2002, Proceedings 2002 Design Automation Conference (IEEE Cat. No.02CH37324).

[10]  David A. Patterson,et al.  Computer Architecture: A Quantitative Approach , 1969 .