• DocumentCode
    800413
  • Title

    Integrating formal verification into an advanced computer architecture course

  • Author

    Velev, Miroslav N.

  • Author_Institution
    Dept. of Electr. & Comput. Eng., Carnegie Mellon Univ., Pittsburgh, PA, USA
  • Volume
    48
  • Issue
    2
  • fYear
    2005
  • fDate
    5/1/2005 12:00:00 AM
  • Firstpage
    216
  • Lastpage
    222
  • Abstract
    This paper presents a sequence of three projects on design and formal verification of pipelined and superscalar processors: 1) a single-issue, five-stage DLX (an academic processor used widely for teaching pipelined execution and defined by Hennessy and Patterson in the first edition of their graduate textbook); 2) an extension of the DLX with exceptions and branch prediction; and 3) a dual-issue superscalar DLX. The projects were integrated into two editions of an advanced computer architecture course that was offered at the Georgia Institute of Technology, Atlanta, in the summer and fall 2002 and was taught to 67 students (25 of whom were undergraduates) in a way that required them to have no prior knowledge of formal methods. Preparatory homework problems included an exercise on design and formal verification of a staggered Arithmetic Logic Unit (ALU), pipelined in the style of the integer ALUs in the Intel Pentium 4. The processors were designed and formally verified with a tool flow that was used to formally verify the M·CORE processor at Motorola and detected bugs.
  • Keywords
    computer science education; educational courses; educational institutions; formal verification; microprocessor chips; Georgia Institute of Technology; Intel Pentium 4; M-CORE processor; advanced computer architecture course; arithmetic logic unit; formal method; formal verification; pipelined execution teaching; pipelined processor; superscalar processor; Computational modeling; Computer architecture; Computer bugs; Education; Field programmable gate arrays; Formal verification; Hardware design languages; Logic design; Microprocessors; Testing; Abstraction; Boolean satisfiability (SAT); Positive Equality; computer architecture; formal verification of microprocessors; high-level microprocessor design; logic of Equality with Uninterpreted Functions and Memories (EUFM); teaching of formal methods;
  • fLanguage
    English
  • Journal_Title
    Education, IEEE Transactions on
  • Publisher
    ieee
  • ISSN
    0018-9359
  • Type

    jour

  • DOI
    10.1109/TE.2004.832880
  • Filename
    1427870