• DocumentCode
    1072110
  • Title

    CHIPS: Custom Hardware Instruction Processor Synthesis

  • Author

    Atasu, Kubilay ; Özturan, Can ; Dündar, Günhan ; Mencer, Oskar ; Luk, Wayne

  • Author_Institution
    Bogazici Univ., Istanbul
  • Volume
    27
  • Issue
    3
  • fYear
    2008
  • fDate
    3/1/2008 12:00:00 AM
  • Firstpage
    528
  • Lastpage
    541
  • Abstract
    This paper describes an integer-linear-programming (ILP)-based system called custom hardware instruction processor synthesis (CHIPS) that identifies custom instructions for critical code segments, given the available data bandwidth and transfer latencies between custom logic and a baseline processor with architecturally visible state registers. Our approach enables designers to optionally constrain the number of input and output operands for custom instructions. We describe a design flow to identify promising area, performance, and code-size tradeoffs. We study the effect of input/output constraints, register-file ports, and compiler transformations such as if-conversion. Our experiments show that, in most cases, the solutions with the highest performance are identified when the input/output constraints are removed. However, input/output constraints help our algorithms identify frequently used code segments, reducing the overall area overhead. Results for 11 benchmarks covering cryptography and multimedia are shown, with speed-ups between 1.7 and 6.6 times, code-size reductions between 6% and 72%, and area costs ranging between 12 and 256 adders for maximum speed-up. Our ILP-based approach scales well: benchmarks with basic blocks consisting of more than 1000 instructions can be optimally solved, most of the time within a few seconds.
  • Keywords
    application specific integrated circuits; instruction sets; integer programming; linear programming; logic design; microprocessor chips; CHIPS; application-specific instruction set processors; baseline processor; compiler transformations; critical code segments; cryptography; custom hardware instruction processor synthesis; custom logic; data bandwidth; integer-linear-programming-based system; register-file ports; transfer latencies; visible state registers; Application specific processors; Bandwidth; Costs; Delay; Hardware; Instruction sets; Logic; Process design; Registers; Time to market; Application-specific instruction-set processors (ASIPs); custom instructions; customizable processors; extensible processors; integer linear programming (ILP); optimization algorithms;
  • fLanguage
    English
  • Journal_Title
    Computer-Aided Design of Integrated Circuits and Systems, IEEE Transactions on
  • Publisher
    ieee
  • ISSN
    0278-0070
  • Type

    jour

  • DOI
    10.1109/TCAD.2008.915536
  • Filename
    4454004