Coverage Discounting: Improved Testbench Qualification by Combining Mutation Analysis with Functional Coverage Nicole Lesperance, Peter Lisherness, and.

Slides:



Advertisements
Similar presentations
Determining Test Quality through Dynamic Runtime Monitoring of SystemVerilog Assertions Kelly D. Larson
Advertisements

High-Level Fault Grading. Improving Gate-Level Fault Coverage by RTL Fault Grading* * W. Mao and R. K. Gulati, ITC 1996, pp
- Verifying “Golden” reused IPs The Evil’s in the Edits William C Wallace Texas Instruments Nitin Jayaram Texas Instruments Nitin Mhaske Atrenta Inc Vijay.
Xiushan Feng* ASIC Verification Nvidia Corporation Automatic Verification of Dependency 1 TM Jayanta Bhadra
Presenter : Shih-Tung Huang 2015/4/30 EICE team Automated Data Analysis Solutions to Silicon Debug Yu-Shen Yang Dept. of ECE University of Toronto Toronto,
Interactive 2-D Projection Cross Coverage Viewer for Coverage Hole Analysis Keisuke Shimizu ClueLogic Tomohisa Iida Verifore, Inc.
An Analysis and Survey of the Development of Mutation Testing by Yue Jia and Mark Harmon A Quick Summary For SWE6673.
Xiushan Feng* ASIC Verification Nvidia Corporation Assertion-Based Design Partition 1 TM Jayanta Bhadra, Ross Patterson.
Mutation Analysis with Coverage Discounting Peter Lisherness, Nicole Lesperance, and Kwang-Ting (Tim) Cheng University of California – Santa Barbara.
How to Accelerate the Analog Design Verification Flow Itai Yarom Senior Verification Expert Synopsys.
MS-SoC Best Practices – Advanced Modeling & Verification Techniques for first-pass success By Neyaz Khan Greg Glennon Dan Romaine.
NATW 2008 Using Implications for Online Error Detection Nuno Alves, Jennifer Dworak, R. Iris Bahar Division of Engineering Brown University Providence,
Who’s Watching the Watchmen? The Time has Come to Objectively Measure the Quality of Your Verification by David Brownell Design Verification Analog Devices.
A CONTROL INSTRUMENTS COMPANY The Effectiveness of T-way Test Data Generation or Data Driven Testing Michael Ellims.
ECE Synthesis & Verification1 ECE 667 Spring 2011 Synthesis and Verification of Digital Systems Verification Introduction.
Sep. 26, 2001Agrawal: Stratified Sampling1 Stratified Sampling for Fault Coverage of VLSI Systems Vishwani D. Agrawal Agere Systems, Murray Hill, NJ
1 Today Another approach to “coverage” Cover “everything” – within a well-defined, feasible limit Bounded Exhaustive Testing.
Tim Cheng1 Key Results - Verification Developed and released ATPG-based SAT solvers for circuits (Univ. of California, Santa Barbara) –Integrating structural.
Spring 08, Mar 27 ELEC 7770: Advanced VLSI Design (Agrawal) 1 ELEC 7770 Advanced VLSI Design Spring 2008 Fault Simulation Vishwani D. Agrawal James J.
Functional Coverage Driven Test Generation for Validation of Pipelined Processors P. Mishra and N. Dutt Proceedings of the Design, Automation and Test.
Statistical Decision-Making Process: Decision Problem Statistical Plan Data Description and Summary Analysis and Conclusions Testing Validity of Results.
EE694v-Verification-Lect5-1- Lecture 5 - Verification Tools Automation improves the efficiency and reliability of the verification process Some tools,
March 6, th Southeastern Symposium on System Theory1 Transition Delay Fault Testing of Microprocessors by Spectral Method Nitin Yogi and Vishwani.
Statistical Critical Path Selection for Timing Validation Kai Yang, Kwang-Ting Cheng, and Li-C Wang Department of Electrical and Computer Engineering University.
Structural Coverage Verilog code is available to help generate tests o Code can be analyzed statically and/or simulated Easier to detect “additive” design.
AMOST Experimental Comparison of Code-Based and Model-Based Test Prioritization Bogdan Korel Computer Science Department Illinois Institute of Technology.
Software Testing and Validation SWE 434
March 8, 2006Spectral RTL ATPG1 High-Level Spectral ATPG for Gate-level Circuits Nitin Yogi and Vishwani D. Agrawal Auburn University Department of ECE.
CPIS 357 Software Quality & Testing
Class Specification Implementation Graph By: Njume Njinimbam Chi-Chang Sun.
Sparse Coding for Specification Mining and Error Localization Runtime Verification September 26, 2012 Wenchao Li, Sanjit A. Seshia University of California.
A holistic Pre-to-Post solution for Post-Si validation of SoC’s Yael Abarbanel Eli Singerman
Kyle Mundt February 3,  Richard Lipton, 1971  A way of testing your tests  Alter your code in various ways  Check to see if tests fail on altered.
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.
Design Verification An Overview. Powerful HDL Verification Solutions for the Industry’s Highest Density Devices  What is driving the FPGA Verification.
Presenter : Ching-Hua Huang 2013/7/15 A Unified Methodology for Pre-Silicon Verification and Post-Silicon Validation Citation : 15 Adir, A., Copty, S.
Test Suite Reduction for Regression Testing of Simple Interactions between Two Software Modules Dmitry Kichigin.
Reporter: PCLee. Although assertions are a great tool for aiding debugging in the design and implementation verification stages, their use.
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.
Testing Testing Techniques to Design Tests. Testing:Example Problem: Find a mode and its frequency given an ordered list (array) of with one or more integer.
Today’s Agenda  HW #1  Finish Introduction  Input Space Partitioning Software Testing and Maintenance 1.
Presenter: PCLee. Semiconductor manufacturers aim at delivering high-quality new devices within shorter times in order to gain market shares.
1 Compacting Test Vector Sets via Strategic Use of Implications Kundan Nepal Electrical Engineering Bucknell University Lewisburg, PA Nuno Alves, Jennifer.
Prioritizing Test Cases for Regression Testing Article By: Rothermel, et al. Presentation by: Martin, Otto, and Prashanth.
“Isolating Failure Causes through Test Case Generation “ Jeremias Rößler Gordon Fraser Andreas Zeller Alessandro Orso Presented by John-Paul Ore.
Mutation Testing G. Rothermel. Fault-Based Testing White-box and black-box testing techniques use coverage of code or requirements as a “proxy” for designing.
TOPIC : Introduction to Fault Simulation
Building usable software through early testing. Objective Show the value of testing from the beginning of the development cycle. Consensus in the industry.
Detecting Hardware Trojans in Unspecified Functionality Using Mutation Testing Nicole Fern K.-T. Tim Cheng UC Santa Barbara 1.
Mutation Testing Breaking the application to test it.
Random Test Generation of Unit Tests: Randoop Experience
A Few Review Questions Dan Fleck Fall System Test Case Enter invalid username in the input box Able to enter text Enter invalid password in the.
Software Testing.
Software Verification and Validation
Using Execution Feedback in Test Case Generation
VLSI Testing Lecture 6: Fault Simulation
ECE 553: TESTING AND TESTABLE DESIGN OF DIGITAL SYSTES
Ask the Mutants: Mutating Faulty Programs for Fault Localization
When Security Games Go Green
Teaching The Art of Verification
Software Testing (Lecture 11-a)
August Shi, Tifany Yung, Alex Gyori, and Darko Marinov
A test technique is a recipe these tasks that will reveal something
Aiman H. El-Maleh Sadiq M. Sait Syed Z. Shazli
Hardware Assisted Fault Tolerance Using Reconfigurable Logic
Uncovered failures in MSS
Testing and Inspection Present and Future
Mitigating the Effects of Flaky Tests on Mutation Testing
Presentation transcript:

Coverage Discounting: Improved Testbench Qualification by Combining Mutation Analysis with Functional Coverage Nicole Lesperance, Peter Lisherness, and Tim Cheng Univ. of California, Santa Barbara September 9th,

Verification Questions 1.Have the test vectors adequately stimulated the design? 2.Is the testbench able to identify errors? 2

Motivation 3 Functional Coverage Mutation Analysis Coverage Discounting + Functionally Meaningful + Evaluates design activation -Ignores propagation and checker quality + Evaluates propagation and checker quality - Mutants hard to analyze + Functionally Meaningful + Evaluates design activation, propagation and checkers Functional Coverage Mutation Analysis Coverage Discounting

Coverage Discounting: The Main Idea Use fault insertion to discount (revise downward) coverage scores 4 Detected + undetected mutants Functional Coverage Mutation Analysis Coverage Discounting Undetected Mutants Coverage Score 100% 0% Discounted Coverage Score

An Existing Solution: Mutation Analysis DUT Tests Checker Undetected Fix Add/Fix Detected Benefits – Evaluates quality of testbench checkers – Indicates if tests fail to propagate potential errors to the checker or fail to activate mutants 5

Mutation Analysis Drawbacks 1.Long runtime for simulation 2.Many man-hours required to analyze results: 2.1 Mutants are synthetic - difficult to identify testbench improvements to target mutant detection 2.2Redundant mutants never detectable: Some undetected faults are redundant if (a > 0) b=1+a; else b=1-a; if (a >= 0) b=1+a; else b=1-a; Example: 6

Premise of Coverage Discounting 1) A mutant may change design functionality 2) A coverpoint, covered by testbench in the original design, may be suppressed (i.e. no longer be covered) in the mutated design 3) If the mutant suppressing the coverpoint is not detected, then the coverpoint is no longer considered covered in the original design 7

Coverage Discounting Flow 8 DUT Tests Checker Detected Undetected Add more tests No Yes Fix Coverage Changed?

Experimental Results 9

OpenRISC CPU Experiment #1: Measure test quality – Tests: Instruction-Set v. Random – Coverpoints: Opcodes Experiment #2: Identify checker weaknesses – Tests: SoC Regression Suite – Coverpoints: CPU top-level signals 10

Measure Test Quality Functional Tests Original Discounted Random Tests 11

Identify Checker Weaknesses Tests 12

Identify Checker Weaknesses 13

UART Illustrates success of coverage discounting applied to a sophisticated testbench Simulation Infrastructure: – Design RTL w/OVM Testbench – SystemVerilog coverpoints (ModelSim) – Certitude fault insertion Tests: OVM Sequences Coverpoints: Hand-written spec-based 14

UART Results Reduces debug effort from analysis of 146 mutants to examining 3 functional coverpoints 1588 Mutants: – 7 not activated, 106 not propagated, 33 not detected – Total 146 mutants demand attention 846 Coverpoints: – 4 uncovered – 3 discounted – All discounted relate to specific unchecked functions Loopback, timeout interrupt identification register 15

Results Examined Coverage discounting: – Identified "good" tests (propagation) – Diagnosed checker problems – Identified coverpoints vacuously covered However: – Runtime of mutation analysis still an issue – Technique sensitive to the quantity and quality of faults 16

Confidence Metric Aims to answer: 1.Is a coverpoint adequately challenged by the set of mutants? 2.When have enough faults been inserted (when can simulation be stopped)? 3.What is the optimal simulation ordering of mutants for coverage discounting? 17

Quicker Confidence CPUUART 18

Quicker Discounting CPUUART 19

Technology Transfer Working closely with Freescale to apply discounting technique to industry design – Jayanta Bhadra and Vivekananda Vedula Publications – Lisherness, P., Lesperance, N., and K. T. Cheng, “Mutation Analysis with Coverage Discounting”, Design Automation and Test Europe (DATE), March – Lisherness, P., and K-T. Cheng, "Improving Validation Coverage Metrics to Account for Limited Observability", Asia and South Pacific Design Automation Conference, Feb

Summary Analyzed information gained from coverage discounting for two designs Developed a confidence metric to gauge mutant effectiveness and an ordering heuristic to reduce runtime 21