Improving code density using compression techniques

  • Authors:
  • Charles Lefurgy;Peter Bird;I-Cheng Chen;Trevor Mudge

  • Affiliations:
  • EECS Department, University of Michigan, 1301 Beal Ave., Ann Arbor, MI;EECS Department, University of Michigan, 1301 Beal Ave., Ann Arbor, MI;EECS Department, University of Michigan, 1301 Beal Ave., Ann Arbor, MI;EECS Department, University of Michigan, 1301 Beal Ave., Ann Arbor, MI

  • Venue:
  • MICRO 30 Proceedings of the 30th annual ACM/IEEE international symposium on Microarchitecture
  • Year:
  • 1997

Quantified Score

Hi-index 0.01

Visualization

Abstract

We propose a method for compressing programs in embedded processors where instruction memory size dominates cost. A post-compilation analyzer examines a program and replaces common sequences of instructions with a single instruction codeword. A microprocessor executes the compressed instruction sequences by fetching code words from the instruction memory, expanding them back to the original sequence of instructions in the decode stage, and issuing them to the execution stages. We apply our technique to the PowerPC, ARM, and i386 instruction sets and achieve an average size reduction of 39%, 34%, and 26%, respectively, for SPEC CINT95 programs.