Achieving high coverage in hardware equivalence checking via concolic verification

被引:0
|
作者
Roy, Pritam [1 ]
Chaki, Sagar [1 ]
机构
[1] Siemens, Siemens EDA, 46871 Bayside Pkwy, Fremont, CA 94538 USA
关键词
Concolic; Equivalence; Coverage; Hardware;
D O I
10.1007/s10703-023-00414-1
中图分类号
TP301 [理论、方法];
学科分类号
081202 ;
摘要
A concolic approach, called slec-cf, to find counterexamples (CEXs) to sequential equivalence between a high-level (e.g., SystemC) hardware description and an RTL (e.g., Verilog) is presented. slec-cf works by searching for CEXs over the possible values of a set of "control signals" in a depth-first lexicographic manner, and avoiding values that cannot be realized by any concrete input. In addition, slec-cf respects user-specified design constraints during search, thus only producing stimuli that are of relevance to users. It is a superior alternative to random simulations, which produce an overwhelming number of irrelevant stimuli for user-constrained designs, and are therefore of limited effectiveness. Two strategies for concolic exploration are presented-searching all control signal values exhaustively, and only exploring values which share a common prefix with an initial random sample. In addition, two choices of control signals are proposed-the set of all MUX selectors in the RTL, and the MUX selectors that are derived from branch conditions in the SystemC description. Finally, slec-cf is made incremental by iteratively increasing the search depth, and set of control signals, and using a cache to reuse prior results. The approach is implemented on top an existing industrial sequential equivalence checker (slec) which compares C++/SystemC against RTL, created either manually, or by a high level synthesis tool, such as catapult. Experimental results indicate that slec-cf clearly outperforms random simulation in terms of finding CEXs quickly, and achieving coverage, over an industrial benchmark. On complex designs, incremental slec-cf demonstrates superior ability to achieve good coverage in almost all cases, compared to non-incremental slec-cf.
引用
收藏
页码:329 / 349
页数:21
相关论文
共 50 条
  • [31] VERIFICATION AND VALIDATION OF HARDWARE DESIGNS VIA HARDWARE PETRI NETS
    HO, C
    FORWARD, KE
    COMPUTER SYSTEMS SCIENCE AND ENGINEERING, 1994, 9 (01): : 65 - 72
  • [32] Concolic Testing for High Test Coverage and Reduced Human Effort in Automotive Industry
    Kim, Yunho
    Lee, Dongju
    Baek, Junki
    Kim, Moonzoo
    2019 IEEE/ACM 41ST INTERNATIONAL CONFERENCE ON SOFTWARE ENGINEERING: SOFTWARE ENGINEERING IN PRACTICE (ICSE-SEIP 2019), 2019, : 151 - 160
  • [33] Data-flow Driven Equivalence Checking for Verification of Code Motion Techniques
    Karfa, Chandan
    Sarkar, Dipankar
    Mandal, Chittaranjan
    IEEE ANNUAL SYMPOSIUM ON VLSI (ISVLSI 2010), 2010, : 428 - 433
  • [34] A Value Propagation Based Equivalence Checking Method for Verification of Code Motion Techniques
    Banerjee, Kunal
    Karfa, Chandan
    Sarkar, Dipankar
    Mandal, Chittaranjan
    2012 INTERNATIONAL SYMPOSIUM ON ELECTRONIC SYSTEM DESIGN (ISED 2012), 2012, : 67 - 71
  • [35] Enhanced equivalence checking - Toward a solidarity of functional verification and manufacturing test generation
    Bhadra, J
    Krishnamurthy, N
    Abadir, MS
    IEEE DESIGN & TEST OF COMPUTERS, 2004, 21 (06): : 494 - 502
  • [36] Formal verification of a pipelined cryptographic circuit using equivalence checking and completion functions
    Lam, Chiu Hong
    Aagaard, Mark D.
    2007 CANADIAN CONFERENCE ON ELECTRICAL AND COMPUTER ENGINEERING, VOLS 1-3, 2007, : 1401 - 1404
  • [37] Verification of business process implementations via model checking
    Koehler, J
    Tirenni, G
    Kumaran, S
    6TH WORLD MULTICONFERENCE ON SYSTEMICS, CYBERNETICS AND INFORMATICS, VOL VIII, PROCEEDINGS: CONCEPTS AND APPLICATIONS OF SYSTEMICS, CYBERNETICS AND INFORMATICS II, 2002, : 397 - 402
  • [38] Formal Hardware/Software Co-Verification by Interval Property Checking with Abstraction
    Nguyen, Minh D.
    Wedler, Markus
    Stoffel, Dominik
    Kunz, Wolfgang
    PROCEEDINGS OF THE 48TH ACM/EDAC/IEEE DESIGN AUTOMATION CONFERENCE (DAC), 2011, : 510 - 515
  • [39] Ensuring Trust of Third-Party Hardware Design with Constrained Sequential Equivalence Checking
    Shrestha, Gyanendra
    Hsiao, Michael S.
    2012 IEEE INTERNATIONAL CONFERENCE ON TECHNOLOGIES FOR HOMELAND SECURITY, 2012, : 7 - 12
  • [40] Formal Verification of SDG via Symbolic Model Checking
    Ning, Ning
    Zhang, Jun
    Gao, Xiang-Yang
    Xue, Jing
    ICICTA: 2009 SECOND INTERNATIONAL CONFERENCE ON INTELLIGENT COMPUTATION TECHNOLOGY AND AUTOMATION, VOL IV, PROCEEDINGS, 2009, : 521 - 524