Structure-Constrained Microcode Compression

  • Edson Borin UNICAMP
  • Guido Araujo UNICAMP
  • Mauricio Breternitz Jr. Advanced Micro Devices, Inc.
  • Youfeng Wu Intel Research Laboratory

Resumo


Microcode enables programmability of (micro) architectural structures to enhance functionality and to apply patches to an existing design. As more features get added to a CPU core, the area and power costs associated with microcode increase. One solution to address the microcode size issue is to store the microcode in a compressed form and decompress it during execution. Furthermore, the reuse of a single hardware building block layout to implement different dictionaries in the two-level microcode compression reduces the cost and the design time of the decompression engine. However, the reuse of the hardware building block imposes structural constraints to the compression algorithm, and existing algorithms may yield poor compression. In this paper, we develop the SC2 algorithm that considers the structural constraint in its objective function and reduces the area expansion when reusing hardware building blocks to implement different dictionaries. Our experimental results show that the SC2 algorithm is able to produce similar sized dictionaries and achieves the similar compression ratio to the non-constrained algorithm.
Palavras-chave: Dictionaries, Read only memory, Hardware, Engines, Clustering algorithms, Algorithm design and analysis, Encoding, code compression, microcode compression, decompression engine
Publicado
26/10/2011
BORIN, Edson; ARAUJO, Guido; BRETERNITZ JR., Mauricio; WU, Youfeng. Structure-Constrained Microcode Compression. In: INTERNATIONAL SYMPOSIUM ON COMPUTER ARCHITECTURE AND HIGH PERFORMANCE COMPUTING (SBAC-PAD), 23. , 2011, Vitória/ES. Anais [...]. Porto Alegre: Sociedade Brasileira de Computação, 2011 . p. 104-111.