DocumentCode :
62825
Title :
Mining Hardware Assertions With Guidance From Static Analysis
Author :
Hertz, Stav ; Sheridan, D. ; Vasudevan, S.
Author_Institution :
Dept. of Electr. & Comput. Eng., Univ. of Illinois at Urbana-Champaign, Urbana, IL, USA
Volume :
32
Issue :
6
fYear :
2013
fDate :
Jun-13
Firstpage :
952
Lastpage :
965
Abstract :
We present GoldMine, a methodology for generating assertions automatically in hardware. Our method involves a combination of data mining and static analysis of the register transfer level (RTL) design. The RTL design is first simulated to generate data about the design´s dynamic behavior. The generated data is then mined for “candidate assertions” that are likely to be invariants. The data mining algorithm is a decision-tree-based supervised learning algorithm. These candidate assertions are then passed through a formal verification engine to filter out the spurious candidates. The assertions that are attested as true by the formal engine are system invariants. These are then evaluated by a process of designer ranking that is provided as feedback to the data mining engine. We demonstrate the scalability of GoldMine by showing assertion generation of the RTL of Sun´s OpenSparc T2 many-threaded processor. Our results show that GoldMine can generate complex, high coverage assertions for sequential as well as combinational designs in RTL, thereby minimizing human effort in this process. GoldMine assertions distill the random input stimulus space and can be used for calibrating directed tests. They can be used in a regression test suite of an evolving RTL. They are also useful in providing differing perspectives from the designer, as well as hints to designers for manually writing assertions.
Keywords :
data mining; decision trees; formal verification; learning (artificial intelligence); multi-threading; multiprocessing systems; regression analysis; GoldMine assertions; RTL design; Sun OpenSparc T2 many-threaded processor; candidate assertions; combinational designs; data mining algorithm; decision-tree-based supervised learning algorithm; design dynamic behavior; formal verification engine; hardware assertion mining; random input stimulus space; register transfer level design; regression test; spurious candidates; static analysis; system invariants; Algorithm design and analysis; Data mining; Decision trees; Hardware; Manuals; Partitioning algorithms; Vectors; Assertion generation; data mining; logic verification; static analysis; validation;
fLanguage :
English
Journal_Title :
Computer-Aided Design of Integrated Circuits and Systems, IEEE Transactions on
Publisher :
ieee
ISSN :
0278-0070
Type :
jour
DOI :
10.1109/TCAD.2013.2241176
Filename :
6516599
Link To Document :
بازگشت