A Code Decompression Architecture for VLIW Processors  

Yuan Xie, Wayne Wolf, and Haris Lekatsas


In embedded system design, memory has been one of the most restricted resources. Decreasing the program size has been an important goal when designing an embedded system. This problem has led to many executable code compression efforts. Most of the previous work has targeted RISC architectures. Recently VLIW processors became very popular, particularly for signal processing. Decompression speed is especially important for VLIW architectures given that the length of the instruction word is long. Furthermore, modern VLIW architectures use flexible instruction formats, which require new code compression approaches. Previous work has assumed that instruction positions within the long instruction word correspond to specific functional units. In contrast, our code compression algorithm is capable of compressing flexible instruction formats, where any functional unit can be used for any position in the instruction word.

We demonstrate our methods by applying it to the TMS320C6x architecture. We also compare two techniques for decompressing the VLIW instruction packet to reduce the decompression time. A fast parallel decompression architecture is described, which is implemented in TSMC 0.25 technology.