• DocumentCode
    651316
  • Title

    Formal co-validation of low-level hardware/software interfaces

  • Author

    Horn, Alex ; Tautschnig, Michael ; Val, Celina ; Liang, Liang ; Melham, Tom ; Grundy, John ; Kroening, Daniel

  • Author_Institution
    Univ. of Oxford, Oxford, UK
  • fYear
    2013
  • fDate
    20-23 Oct. 2013
  • Firstpage
    121
  • Lastpage
    128
  • Abstract
    Today´s microelectronics industry is increasingly confronted with the challenge of developing and validating software that closely interacts with hardware. These interactions make it difficult to design and validate the hardware and software separately; instead, a verifiable co-design is required that takes them into account. This paper demonstrates a new approach to co-validation of hardware/software interfaces by formal, symbolic co-execution of an executable hardware model combined with the software that interacts with it. We illustrate and evaluate our technique on three realistic benchmarks in which software I/O is subject to hardware-specific protocol rules: a real-time clock, a temperature sensor on an I2C bus, and an Ethernet MAC. We provide experimental results that show our approach is both feasible as a bug-finding technique and scales to handle a significant degree of concurrency in the combined hardware/software model.
  • Keywords
    formal verification; hardware-software codesign; user interfaces; Ethernet MAC; I2C bus; bug-finding technique; executable hardware model; formal co-validation; hardware-specific protocol rules; low-level hardware-software interfaces; microelectronics industry; real-time clock; software I/O; symbolic co-execution; temperature sensor; verifiable codesign; Benchmark testing; Concurrent computing; Hardware; Registers; Software; System-on-chip; Temperature sensors;
  • fLanguage
    English
  • Publisher
    ieee
  • Conference_Titel
    Formal Methods in Computer-Aided Design (FMCAD), 2013
  • Conference_Location
    Portland, OR
  • Type

    conf

  • DOI
    10.1109/FMCAD.2013.6679400
  • Filename
    6679400