Fast Track Formal Verification Signoff

Slides:



Advertisements
Similar presentations
© Copyright 2013 Xilinx. How to Kill 4 Birds with 1 Stone: Using Formal Verification to Validate Legal Configurations, Find Design Bugs, and Improve Testbench.
Advertisements

Using Implications for Online Error Detection Nuno Alves, Jennifer Dworak, and R. Iris Bahar Division of Engineering Brown University Providence, RI
//HDL Example 8-2 // //RTL description of design example (Fig.8-9) module Example_RTL (S,CLK,Clr,E,F,A);
Masahiro Fujita Yoshihisa Kojima University of Tokyo May 2, 2008
Traffic light contoller using FSM
- Verifying “Golden” reused IPs The Evil’s in the Edits William C Wallace Texas Instruments Nitin Jayaram Texas Instruments Nitin Mhaske Atrenta Inc Vijay.
Automated Method Eliminates X Bugs in RTL and Gates Kai-hui Chang, Yen-ting Liu and Chris Browy.
FSM Revisit Synchronous sequential circuit can be drawn like below  These are called FSMs  Super-important in digital circuit design FSM is composed.
Give qualifications of instructors: DAP
Xiushan Feng* ASIC Verification Nvidia Corporation Automatic Verification of Dependency 1 TM Jayanta Bhadra
Timing Override Verification (TOV) Erik Seligman CS 510, Lecture 18, March 2009.
//HDL Example 6-1 // //Behavioral description of //Universal shift register // Fig. 6-7 and Table 6-3 module shftreg.
Presenter: PCLee VLSI Design, Automatic and Test, (VLSI-TSA-DAT).
Annoucements  Next labs 9 and 10 are paired for everyone. So don’t miss the lab.  There is a review session for the quiz on Monday, November 4, at 8:00.
Effective RTL coding rules to avoid Simulation Shoot-thru Udit Kumar 1, Bhanu Prakash 1, Olivier Florent 1, Paras Mal Jain 2, Anshu Malani 2, Shaker Sarwary.
Xiushan Feng* ASIC Verification Nvidia Corporation Assertion-Based Design Partition 1 TM Jayanta Bhadra, Ross Patterson.
ECE 551 Digital System Design & Synthesis Lecture 09 Synthesis of Common Verilog Constructs.
FSM examples.
Leveraging Assertion Based Verification by using Magellan Michal Cayzer.
Who’s Watching the Watchmen? The Time has Come to Objectively Measure the Quality of Your Verification by David Brownell Design Verification Analog Devices.
Pulse-Width Modulated DAC
Prof. John Nestor ECE Department Lafayette College Easton, Pennsylvania ECE Senior Design I Lecture 7 - Verification.
ECE Synthesis & Verification1 ECE 667 Spring 2011 Synthesis and Verification of Digital Systems Verification Introduction.
ELEN 468 Lecture 161 ELEN 468 Advanced Logic Design Lecture 16 Synthesis of Language Construct II.
Arbitrary Waveform Discussion 12.2 Example 34. Recall Divide-by-8 Counter Use q2, q1, q0 as inputs to a combinational circuit to produce an arbitrary.
Counters Discussion 12.1 Example 33. Counters 3-Bit, Divide-by-8 Counter 3-Bit Behavioral Counter in Verilog Modulo-5 Counter An N-Bit Counter.
Secure Embedded Processing through Hardware-assisted Run-time Monitoring Zubin Kumar.
Structural Coverage Verilog code is available to help generate tests o Code can be analyzed statically and/or simulated Easier to detect “additive” design.
TM Efficient IP Design flow for Low-Power High-Level Synthesis Quick & Accurate Power Analysis and Optimization Flow JAN Asher Berkovitz Yaniv.
DCC Grenoble April 6, 2002 Unifying Traditional and Formal Verification Through Property Specification Designing Correct Circuits 2002 Harry Foster Verplex.
Registers CPE 49 RMUTI KOTAT.
Methodology for effective hierarchical verification of low power designs Ramesh Rajagopalan Cisco Systems Inc, San Jose,
Functional Coverage Jean-Michel Chabloz. Coverage Code coverage, expression coverage, etc. are automatically inferred Functional coverage specifies what,
Some Course Info Jean-Michel Chabloz. Main idea This is a course on writing efficient testbenches Very lab-centric course: –You are supposed to learn.
Using Formal Verification to Exhaustively Verify SoC Assemblies by Mark Handover Kenny Ranerup Applications Engineer ASIC Consultant Mentor Graphics Corp.
B. Fernández, D. Darvas, E. Blanco Formal methods appliedto PLC code verification Automation seminar CERN – IFAC (CEA) 02/06/2014.
ECE 551 Digital System Design & Synthesis Fall 2011 Midterm Exam Overview.
BE-SECBS FISA 2003 November 13th 2003 page 1 DSR/SAMS/BASP IRSN BE SECBS – IRSN assessment Context application of IRSN methodology to the reference case.
Robust Low Power VLSI ECE 7502 S2015 Evaluation of Coverage-Driven Random Verification ECE 7502 – Project Presentation Qing Qin 04/23/2015.
Semi-automatic Property Generation for the Formal Verification of a Satellite On-board System Wesley Gonçalves Silva.
1 Hybrid-Formal Coverage Convergence Dan Benua Synopsys Verification Group January 18, 2010.
Slide 1 6. VHDL/Verilog Behavioral Description. Slide 2 Verilog for Synthesis: Behavioral description Instead of instantiating components, describe them.
Design Verification Class Presentation of Course : ASIC CMOS System Design Presented By: Majid Nabi.
Register Transfer Level & Design with ASM
Workshop Topics - Outline
A Framework on Synchronization Verification in System-Level Design Thanyapat Sakunkonchak Satoshi Komatsu Masahiro Fujita Fujita Laboratory University.
Tallinn University of Technology, Department of Computer Engineering, November 2006 Digitaalsüsteemide verifitseerimine Arvutitehnika erikursus II, IAY0110,
Properties Incompleteness Evaluation by Functional Verification IEEE TRANSACTIONS ON COMPUTERS, VOL. 56, NO. 4, APRIL
Introduction to Hardware Verification ECE 598 SV Prof. Shobha Vasudevan.
Detecting Hardware Trojans in Unspecified Functionality Using Mutation Testing Nicole Fern K.-T. Tim Cheng UC Santa Barbara 1.
FMCAD A Theory of Mutations with Applications to Vacuity, Coverage, and Fault Tolerance Orna Kupferman 1 Wenchao Li 2 Sanjit A. Seshia 2 1 Hebrew.
Dr. ClincyLecture Slide 1 CS Chapter 3 (3A and ) Part 8 of 8 Dr. Clincy Professor of CS.
Figure 8.1. The general form of a sequential circuit.
Lottery Speaker: Tsung-Yi Wu.
Simulation based verification: coverage
Software Development Cycle
SYNTHESIS OF SEQUENTIAL LOGIC
FSM MODELING MOORE FSM MELAY FSM. Introduction to DIGITAL CIRCUITS MODELING & VERIFICATION using VERILOG [Part-2]
Using Formal Coverage Analyzer for Code Coverage improvement
Software Verification and Validation
Software Verification and Validation
Win with HDL Slide 4 System Level Design
Lecture 9: Testbench and Division
Software Development Cycle
SystemVerilog and Verification
Lecture 4: Continuation of SystemVerilog
ECE 551: Digital System Design & Synthesis
Software Verification and Validation
Performance Monitoring and Feedback
Functional Safety Solutions for Automotive
Presentation transcript:

Fast Track Formal Verification Signoff Mandar Munishwar Xiaolin Chen, Arunava Saha Sandeep Jana Qualcomm Inc. San Jose, CA Synopsys Inc., Mountain View, CA Synopsys Indis Pvt Ltd., India Regardless what technology is used, whether simulation or formal, when tasked with functional verification project, verification engineers will need qualitative and quantitative measurement of the verification progress. Such metrics are to provide measurement regarding the robustness, completeness, and effectiveness of the verification environment. Fault qualification is an orthogonal mechanism to FormalCore coverage. In this paper, we will discuss how fault qualification provides an additional metric to further improve the formal verification environment to prevent bugs from escaping. It complements other coverage metrics and helps to fast track the formal signoff on the design verification. Abstract Coverage Models for Functional Verification Signoff Coverage Models for Formal Verification Signoff Property Density Coverage Over-Constraint Coverage FormalCore Coverage Asserts Covers Scoreboard Covergroups Line Condition FSM Toggle Code Coverage Functional Coverage Assertion Coverage Fault Qualification Fault Qualification in formal verification Behavior faults injected into RTL design Fault Qualification in a nutshell FormalCore Coverage on FIFO FIFO in design Specification FormalCore coverage 100% Assertions Fault Qualification on FIFO Fault Injection in FIFO Fault Qualification Results After 100 FormalCove Coverage (input clk, input rst_x, input push, input pop, output logic full, output logic empty); logic [3:0] cnt; always@(posedge clk or negedge rst_x) if(!rst_x) cnt <= '0; else begin if(push && ~pop && cnt!=4'hf) cnt <= cnt + 1'b1; else if (!push && pop && cnt!= 4'h0) cnt <= cnt - 1'b1; end assign full = (cnt == 4'hf); assign empty = (cnt == 4'h0); The count shFIFO asserts the full or empty flag are set when the count reaches ‘hf or ‘h0. ould not change when there’s no push or pop. (input clk, input rst_x, input push, input pop, output logic full, output logic empty); logic [3:0] cnt; always@(posedge clk or negedge rst_x) if(!rst_x) cnt <= '0; else begin if(0/*push && ~pop && cnt!=4'hf*/) //Condition False cnt <= cnt + 1’b0 /*1'b1*/; //BitFlip else if (!push && pop && cnt!= 4'h0) cnt <= cnt +/*-*/ 1'b1; //Operator end assign full = (cnt == 4'hf); assign empty = (cnt == 4'h0); Is 100% FormalCore Coverage Good Enough? Potential RTL Bug Can Still Escape!! Non-detected Faults Reveal Missing Checkers for Counter Functionality check_full : assert property ( @(posedge clk) cnt == 4'hf |-> full); check_empty: assert property ( @(posedge clk) cnt == 4'h0 |-> empty); check_no_change: assert property ( @(posedge clk) ~push&~pop |=> $stable(cnt)); check_push: assert property ( @(posedge clk) push&~pop && (cnt!=4'hf) |=> (cnt == $past(cnt) +1)); check_pop : assert property ( @(posedge clk) ~push&pop && (cnt!=4'h0) |=> (cnt == $past(cnt) -1)); Result Comparison Before and After Fault Qualification Controller IP FormalCore reached 100% with no more bugs found before fault qualification 54 more checkers were added after reviewing fault qualification analysis results Additional 5 RTL bugs found! Conclusion Fault qualification in the last stage of formal verification signoff Provide additional metric to further improve the formal verification environment Provide guidance to the weakness in formal environment Shed light on cases of vague or incomplete specification, as well as holes in the verification environment. Prevent bugs from escaping, brings closure to fast track the formal signoff on the design verification. Controller IP Before After Missing Properties Checker properties 208 262 54 New RTL bugs found 5   Missing properties New RTL bugs found!