10.1145/3195970.3196119acmconferencesArticle/Chapter ViewAbstractPublication PagesdacConference Proceedingsconference-collections
research-article
Public Access

Specification-driven automated conformance checking for virtual prototype and post-silicon designs

Published:24 June 2018Publication History

ABSTRACT

Due to the increasing complexity of System-on-Chip (SoC) design, how to ensure that silicon implementations conform to their high-level specifications is becoming a major challenge. To address this problem, we propose a novel specification-driven conformance checking approach that can automatically identify inconsistencies between different levels of designs. By extending SystemRDL specifications, our approach enables the generation of high-level Formal Device Models (FDMs) that specify access behaviors of interface registers triggered by driver requests. Based on the symbolic execution of the generated FDMs with the same driver requests to virtual/silicon devices, our approach can efficiently check whether the designs of an SoC at different levels exhibit unexpected behaviors that are not modeled in the given specification. Experiments on two industrial network adapters demonstrate the effectiveness of our approach in troubleshooting bugs caused by inconsistencies in both virtual and post-silicon prototypes.

References

  1. M. J. Renzelmann, A. Kadav, and M. M. Swift. SymDrive: Testing drivers without devices. In Proc. of OSDI, 279--292, 2012. Google ScholarGoogle ScholarDigital LibraryDigital Library
  2. S. Nelson and P. Waskiewicz. Virualization: Writing (and testing) device drivers without hardware. In Proc. of Linux Plumbers Conference, 2011.Google ScholarGoogle Scholar
  3. M. M. Swift, M. Annamalai, B. N. Bershad, and H. M. Levy. Recovering device drivers. In Proc. of OSDI, 1--16, 2004. Google ScholarGoogle ScholarDigital LibraryDigital Library
  4. P. Mishra, R. Morad, A. Ziv, and S. Ray. Post-silicon validation in the SoC era: A tutorial introduction. IET Computers & Digital Techniques, vol. 34, no. 3, pp. 68--92, 2017.Google ScholarGoogle Scholar
  5. SystemRDL 1.0 Standard. http://www.accellera.org/downloads/standards/systemrdl.Google ScholarGoogle Scholar
  6. F. Bellard. QEMU, a fast and portable dynamic translator. In Proc. of ATC, 41--46, 2005. Google ScholarGoogle ScholarDigital LibraryDigital Library
  7. L. Lei, F. Xie, and K. Cong. Post-silicon conformance checking with virtual prototypes. In Proc. of DAC, 29:1--29:6, 2013. Google ScholarGoogle ScholarDigital LibraryDigital Library
  8. N. Bombieri, F. Fummi, G. Pravadelli, and J. Marques-Silva. Towards equivalence checking between TLM and RTL models. In Proc. of MEMOCODE, 113--122, 2007. Google ScholarGoogle ScholarDigital LibraryDigital Library
  9. M. Chen and P. Mishra. Assertion-based functional consistency checking between TLM and RTL models. In Proc. of VLSI Design, 320--325, 2013. Google ScholarGoogle ScholarDigital LibraryDigital Library
  10. P. Herber, M. Pockrandt, and S. Glesner. Automated conformance evaluation of SystemC designs using timed automata. In Proc. of ETS, 188--193, 2010.Google ScholarGoogle ScholarCross RefCross Ref
  11. P. Godefroid, M. Y. Levin, and D. A. Molnar. SAGE: whitebox fuzzing for security testing. Communications of the ACM, 55(3):40-44, 2012. Google ScholarGoogle ScholarDigital LibraryDigital Library
  12. V. Chipounov, V. Kuznetsov, and G. Candea. S2E: a platform for in-vivo multi-path analysis of software systems. In Proc. of ASPLOS, 265--278, 2011. Google ScholarGoogle ScholarDigital LibraryDigital Library
  13. C. Cadar, D. Dunbar, and D. R. Engler. KLEE: Unassisted and automatic generation of high-coverage tests for complex systems programs. In Proc. of OSDI, 209--224, 2008. Google ScholarGoogle ScholarDigital LibraryDigital Library
  14. K. Sen, D. Marinov, and G. Agha. CUTE: a concolic unit testing engine for C. In Proc. of ES-EC/FSE, 263--272, 2005. Google ScholarGoogle ScholarDigital LibraryDigital Library
  15. X. Qin and P. Mishra. Scalable test generation by interleaving concrete and symbolic execution. In Proc. of VLSI Design, 104--109, 2014. Google ScholarGoogle ScholarDigital LibraryDigital Library

Comments

Login options

Check if you have access through your login credentials or your institution to get full access on this article.

Sign in
  • Published in

    cover image ACM Conferences
    DAC '18: Proceedings of the 55th Annual Design Automation Conference
    June 2018
    1089 pages
    ISBN:9781450357005
    DOI:10.1145/3195970

    Copyright © 2018 ACM

    Publisher

    Association for Computing Machinery

    New York, NY, United States

    Publication History

    • Published: 24 June 2018

    Permissions

    Request permissions about this article.

    Request Permissions

    Check for updates

    Qualifiers

    • research-article

    Acceptance Rates

    Overall Acceptance Rate 1,770 of 5,499 submissions, 32%
  • Article Metrics

    • Downloads (Last 12 months)45
    • Downloads (Last 6 weeks)7

    Other Metrics

PDF Format

View or Download as a PDF file.

PDF

eReader

View online with eReader.

eReader
About Cookies On This Site

We use cookies to ensure that we give you the best experience on our website.

Learn more

Got it!