• DocumentCode
    2066623
  • Title

    Clustering-Based Microcode Compression

  • Author

    Borin, Edson ; Breternitz, Mauricio, Jr. ; Wu, Youfeg ; Araujo, Guido

  • Author_Institution
    Campinas Univ., Campinas
  • fYear
    2007
  • fDate
    1-4 Oct. 2007
  • Firstpage
    189
  • Lastpage
    196
  • Abstract
    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. A recent Intel internal design targeted at low power and small footprint has estimated the costs of the microcode ROM to approach 20% of the total die area (and associated power consumption). Therefore, it is desirable to apply compression techniques to microcode. Microcode poses unique challenges for compression due to the long instruction format, the hand-coded nature of the programs and the stringent performance requirements that require fast decompression. This paper describes techniques for microcode compression that achieve .significant area and power savings, while presenting a streamlined architecture that enables high throughput within the constraints of a high performance CPU. The paper presents results for microcode compression on several commercial CPU designs which demonstrates compression ratios ranging from 50% to 62%.
  • Keywords
    firmware; read-only storage; CPU core; Intel internal design; architectural structures; clustering-based microcode compression; instruction format; power savings; Costs; Decoding; Delay; Encoding; Energy consumption; Engines; Functional programming; Protection; Read only memory; Throughput;
  • fLanguage
    English
  • Publisher
    ieee
  • Conference_Titel
    Computer Design, 2006. ICCD 2006. International Conference on
  • Conference_Location
    San Jose, CA
  • ISSN
    1063-6404
  • Print_ISBN
    978-0-7803-9707-1
  • Electronic_ISBN
    1063-6404
  • Type

    conf

  • DOI
    10.1109/ICCD.2006.4380816
  • Filename
    4380816