Code compression algorithms usually require specific techniques to maintain the integrity of the program and ensure its functionality. This paper presents three code compression algorithms: the first encoding scheme used is a dictionary compression method that compresses the original program by replacing every instruction with its corresponding reference into the dictionary. The second compression algorithm exploits the facts that 1) the entire op-code space is usually not used and 2) operand patterns are often common between different instructions. The third compression scheme groups instructions into 8-instruction words and the corresponding instruction/ operand bits from all 8 instructions are grouped together to form dictionary entries. Instruction Factorization was found to be the most efficient compression scheme, though decompression is done sequentially. Although this technique may be very advantageous to single-issue processors. Operand Factorization across instruction-words allows decompression to be parallelized for instructions in the same instruction word, however this is at a cost to compression ratio.
Guido AraújoPaulo CentoducatteM. CortesRicardo Pannain
Guido AraújoPaulo CentoducatteMario CartesRicardo Pannain
Emiliano PiccinelliRoberto Sannino