• DocumentCode
    1393835
  • Title

    Automatic Refinement Checking of Pipelines with Out-of-Order Execution

  • Author

    Srinivasan, Sudarshan K.

  • Author_Institution
    Dept. of Electr. & Comput. Eng., North Dakota State Univ., Fargo, ND, USA
  • Volume
    59
  • Issue
    8
  • fYear
    2010
  • Firstpage
    1138
  • Lastpage
    1144
  • Abstract
    We show how to automatically verify pipelined machines with out-of-order execution using refinement. Our notion of refinement is based on Well-Founded Equivalence Bisimulations. Proving refinement guarantees that a pipelined machine will preserve all safety and liveness properties of its instruction set architecture. Checking liveness—used to ensure that deadlocks do not occur, i.e., there is always forward progress—is essential for out-of-order machines as the control logic is involved and prone to deadlock defects. In previous work on out-of-order verification, liveness checking was either ignored or not automated. We developed two automatic methods based on refinement that check both safety and liveness of out-of-order pipelined machines. We use extensive experimentation based on 14 out-of-order machine models to study and compare these methods. We find overall that the cost of proving both safety and liveness is about 81 percent more than the cost of proving safety alone.
  • Keywords
    Automatic control; Computer bugs; Costs; Instruction sets; Microprocessors; Out of order; Pipelines; Safety; System recovery; Testing; Pipelined machine verification; out-of-order execution.; refinement;
  • fLanguage
    English
  • Journal_Title
    Computers, IEEE Transactions on
  • Publisher
    ieee
  • ISSN
    0018-9340
  • Type

    jour

  • DOI
    10.1109/TC.2010.18
  • Filename
    5396327