AAG: An automatic assertion generation framework for RTL designs

Assertion Based Verification (ABV) has been shown to be a very effective functional verification approach for digital designs. ABV is usually employed by the verification engineers by embedding assertions in the hardware description language (HDL) code manually by studying the design and user provided specifications. However, with the growing complexity of digital systems, understanding different designs and specifications in general and then writing assertions manually in particular has become quite tedious. In this paper, we propose to alleviate these issues by proposing AAG, i.e., an Automatic Assertion Generation framework that accepts the Register Transfer Level (RTL) code in Verilog, generates the corresponding randomized testbench automatically and then generates the corresponding value change dump (VCD) file from the simulation of RTL code using the generated testbench. In the proposed verification framework, we use GoldMine as an assertion generation engine. The paper also explains, with help of case studies, how can verification engineers benefit from AAG.

[1]  Djones Lettnin,et al.  Automatic property generation for formal verification applied to HDL-based design of an on-board computer for space applications , 2013, 2013 14th Latin American Test Workshop - LATW.

[2]  Mohamed O. Kayed,et al.  Synthesizable SVA protocol checker generation methodology based on TDML and VCD file formats , 2016, 2016 IEEE International High Level Design Validation and Test Workshop (HLDVT).

[3]  Sofiène Tahar,et al.  Formal Verification Methods , 2015 .

[4]  Osman Hasan,et al.  A Library for Combinational Circuit Verification Using the HOL Theorem Prover , 2018, IEEE Transactions on Computer-Aided Design of Integrated Circuits and Systems.

[5]  Viraj Athavale Coverage analysis for assertions and emulation based verification , 2012 .

[6]  Daniel G. Saab,et al.  Automatic Assertion Generation for Simulation, Formal Verification and Emulation , 2017, 2017 IEEE Computer Society Annual Symposium on VLSI (ISVLSI).

[7]  David Tcheng,et al.  GoldMine: Automatic assertion generation using data mining and static analysis , 2010, 2010 Design, Automation & Test in Europe Conference & Exhibition (DATE 2010).

[8]  P. P. Das,et al.  Assertion based verification using HDVL , 2004, 17th International Conference on VLSI Design. Proceedings..

[9]  Christel Baier,et al.  Principles of model checking , 2008 .

[10]  Shobha Vasudevan,et al.  Mining Hardware Assertions With Guidance From Static Analysis , 2013, IEEE Transactions on Computer-Aided Design of Integrated Circuits and Systems.

[11]  Graziano Pravadelli,et al.  Automatic extraction of assertions from execution traces of behavioural models , 2015, 2015 Design, Automation & Test in Europe Conference & Exhibition (DATE).

[12]  Hans Eveking,et al.  Using sequence diagrams to specify and to generate RTL assertions , 2011 .

[13]  Sridhar Narayanan,et al.  IODINE: a tool to automatically infer dynamic invariants for hardware designs , 2005, Proceedings. 42nd Design Automation Conference, 2005..

[14]  Osman Hasan,et al.  A HOL Library for Hardware Verification using Theorem Proving , 2017 .

[15]  Osman Hasan,et al.  VerTGen: An automatic verilog testbench generator for generic circuits , 2016, 2016 International Conference on Emerging Technologies (ICET).

[16]  Ian G. Harris,et al.  Message Sequence Charts for Assertion-based Verification , 2013 .

[17]  Li-C. Wang,et al.  Automatic assertion extraction via sequential data mining of simulation traces , 2010, 2010 15th Asia and South Pacific Design Automation Conference (ASP-DAC).

[18]  Frank P. Coyle,et al.  UML to SystemVerilog Synthesis for Embedded System Models with Support for Assertion Generation , .

[19]  Rolf Drechsler,et al.  Automatic Generation of Complex Properties for Hardware Designs , 2008, 2008 Design, Automation and Test in Europe.

[20]  Philippe Schnoebelen,et al.  Systems and Software Verification, Model-Checking Techniques and Tools , 2001 .

[21]  Wolfgang Bibel,et al.  Automated Theorem Proving , 1987, Artificial Intelligence / Künstliche Intelligenz.