Robust Low Power VLSI ECE 7502 S2015 Fault Diagnosis and Logic Debugging Using Boolean Satisfiability ECE 7502 Class Discussion Benjamin Melton Thursday.

Slides:



Advertisements
Similar presentations
Copyright 2000 Cadence Design Systems. Permission is granted to reproduce without modification. Introduction An overview of formal methods for hardware.
Advertisements

Hybrid BDD and All-SAT Method for Model Checking Orna Grumberg Joint work with Assaf Schuster and Avi Yadgar Technion – Israel Institute of Technology.
TOPIC : SYNTHESIS DESIGN FLOW Module 4.3 Verilog Synthesis.
+ Post-Silicon Fault Localisation using MAX-SAT & Backbones Georg Weissenbacher Charlie Shucheng Zhu, Sharad Malik Princeton University (Photo: Intel Press.
Promising Directions in Hardware Design Verification Shaz Qadeer Serdar Tasiran Compaq Systems Research Center.
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.
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,
ECE Synthesis & Verification 1 ECE 667 Synthesis and Verification of Digital Systems Formal Verification Combinational Equivalence Checking.
Reap What You Sow: Spare Cells for Post-Silicon Metal Fix Kai-hui Chang, Igor L. Markov and Valeria Bertacco ISPD’08, Pages
Modern VLSI Design 3e: Chapter 10 Copyright  2002 Prentice Hall Adapted by Yunsi Fei ECE 300 Advanced VLSI Design Fall 2006 Lecture 24: CAD Systems &
CSE241 Formal Verification.1Cichy, UCSD ©2003 CSE241A VLSI Digital Circuits Winter 2003 Recitation 6: Formal Verification.
1 Recursive Learning Madhurima Maddela. ELEC /26/052 Decision Tree Traditionally used to branch and bound in the search space to generate test.
Robust Low Power VLSI ECE 7502 S2015 Burn-in/Stress Test for Reliability: Reducing burn-in time through high-voltage stress test and Weibull statistical.
Copyright 2001, Agrawal & BushnellDay-1 AM Lecture 11 Design for Testability Theory and Practice January 15 – 17, 2005 Vishwani D. Agrawal James J. Danaher.
1 Boolean Satisfiability in Electronic Design Automation (EDA ) By Kunal P. Ganeshpure.
1 HW/SW Partitioning Embedded Systems Design. 2 Hardware/Software Codesign “Exploration of the system design space formed by combinations of hardware.
Spring 08, Jan 15 ELEC 7770: Advanced VLSI Design (Agrawal) 1 ELEC 7770 Advanced VLSI Design Spring 2007 Introduction Vishwani D. Agrawal James J. Danaher.
Spring 07, Jan 16 ELEC 7770: Advanced VLSI Design (Agrawal) 1 ELEC 7770 Advanced VLSI Design Spring 2007 Introduction Vishwani D. Agrawal James J. Danaher.
ECE Synthesis & Verification1 ECE 667 Spring 2011 Synthesis and Verification of Digital Systems Verification Introduction.
Spring 07, Feb 8 ELEC 7770: Advanced VLSI Design (Agrawal) 1 ELEC 7770 Advanced VLSI Design Spring 2007 Logic Equivalence Vishwani D. Agrawal James J.
Efficient Reachability Checking using Sequential SAT G. Parthasarathy, M. K. Iyer, K.-T.Cheng, Li. C. Wang Department of ECE University of California –
Logic Design Outline –Logic Design –Schematic Capture –Logic Simulation –Logic Synthesis –Technology Mapping –Logic Verification Goal –Understand logic.
SAT Algorithms in EDA Applications Mukul R. Prasad Dept. of Electrical Engineering & Computer Sciences University of California-Berkeley EE219B Seminar.
ECE 7502 Class Discussion Seyi Ayorinde Tuesday, February 3rd, 2015
From Concept to Silicon How an idea becomes a part of a new chip at ATI Richard Huddy ATI Research.
Hardware/Software Partitioning Witawas Srisa-an Embedded Systems Design and Implementation.
1 Software Testing Techniques CIS 375 Bruce R. Maxim UM-Dearborn.
EE 587 SoC Design & Test Partha Pande School of EECS Washington State University
Functional Timing Analysis Made Fast and General Presenter: Yi-Ting Chung Advisor: Jie-Hong Roland Jiang 03/09/2012 Graduate Institute of Electronics Engineering,
USING SAT-BASED CRAIG INTERPOLATION TO ENLARGE CLOCK GATING FUNCTIONS Ting-Hao Lin, Chung-Yang (Ric) Huang Graduate Institute of Electrical Engineering,
Software Testing Verification and validation planning Software inspections Software Inspection vs. Testing Automated static analysis Cleanroom software.
Dynamic Test Set Selection Using Implication-Based On-Chip Diagnosis Nuno Alves, Yiwen Shi, Nicholas Imbriglia, and Iris Bahar Brown University Jennifer.
Labs Practicing in Design of Combinational Networks and FSM with Concurrent Error Detection Tatjana Stanković, Goran Djordjević, Mile Stojčev 2075 Microprocessor.
MBSat Satisfiability Program and Heuristics Brief Overview VLSI Testing B Marc Boulé April 2001 McGill University Electrical and Computer Engineering.
Robust Low Power VLSI ECE 7502 S2015 Analog and Mixed Signal Test ECE 7502 Class Discussion Christopher Lukas 5 th March 2015.
Modern VLSI Design 3e: Chapter 5,6 Copyright  2002 Prentice Hall PTR Adapted by Yunsi Fei Topics n Sequential machine (§5.2, §5.3) n FSM construction.
Solvers for the Problem of Boolean Satisfiability (SAT) Will Klieber Aug 31, 2011 TexPoint fonts used in EMF. Read the TexPoint manual before you.
CSE 494: Electronic Design Automation Lecture 2 VLSI Design, Physical Design Automation, Design Styles.
1 Formal Verification of Candidate Solutions for Evolutionary Circuit Design (Entry 04) Zdeněk Vašíček and Lukáš Sekanina Faculty of Information Technology.
Robust Low Power VLSI ECE 7502 S2015 Evaluation of Coverage-Driven Random Verification ECE 7502 – Project Presentation Qing Qin 04/23/2015.
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 22 Slide 1 Software Verification, Validation and Testing.
3 rd Nov CSV881: Low Power Design1 Power Estimation and Modeling M. Balakrishnan.
European Test Symposium, May 28, 2008 Nuno Alves, Jennifer Dworak, and R. Iris Bahar Division of Engineering Brown University Providence, RI Kundan.
Robust Low Power VLSI ECE 7502 S2015 Minimum Supply Voltage and Very- Low-Voltage Testing ECE 7502 Class Discussion Elena Weinberg Thursday, April 16,
On Finding All Minimally Unsatisfiable Subformulas Mark Liffiton and Karem Sakallah University of Michigan {liffiton, June 21, 2005.
February 22-25, 2010 Designers Work Less with Quality Formal Equivalence Checking by Orly Cohen, Moran Gordon, Michael Lifshits, Alexander Nadel, and Vadim.
Custom Computing Machines for the Set Covering Problem Paper Written By: Christian Plessl and Marco Platzner Swiss Federal Institute of Technology, 2002.
Fast Synthesis of Clock Gating from Existing Logic Aaron P. Hurst Univ. of California, Berkeley Portions In Collaboration with… Artur Quiring and Andreas.
Presented By Anna Fariha Roll : SN – 213 MS, 1 st Semester Session: Boolean Matching.
On the Relation Between Simulation-based and SAT-based Diagnosis CMPE 58Q Giray Kömürcü Boğaziçi University.
Speaker: Nansen Huang VLSI Design and Test Seminar (ELEC ) March 9, 2016 Simulation-Based Equivalence Checking.
Lecture 5: Design for Testability. CMOS VLSI DesignCMOS VLSI Design 4th Ed. 12: Design for Testability2 Outline  Testing –Logic Verification –Silicon.
Automatic Test Generation
Software Testing Strategies for building test group
Hybrid BDD and All-SAT Method for Model Checking
Floating-Point FPGA (FPFPGA)
ELEC 7770 Advanced VLSI Design Spring 2016 Introduction
Inference and search for the propositional satisfiability problem
Fault Diagnosis.
Zdeněk Vašíček and Lukáš Sekanina
ECE 553: TESTING AND TESTABLE DESIGN OF DIGITAL SYSTES
Enhancing PDR/IC3 with Localization Abstraction
ELEC 7770 Advanced VLSI Design Spring 2014 Introduction
LPSAT: A Unified Approach to RTL Satisfiability
ELEC 7770 Advanced VLSI Design Spring 2012 Introduction
ELEC 7770 Advanced VLSI Design Spring 2010 Introduction
HIGH LEVEL SYNTHESIS.
Resolution Proofs for Combinational Equivalence
Improved Design Debugging using Maximum Satisfiability
Software Testing Strategies
Presentation transcript:

Robust Low Power VLSI ECE 7502 S2015 Fault Diagnosis and Logic Debugging Using Boolean Satisfiability ECE 7502 Class Discussion Benjamin Melton Thursday January 29, 2015

Robust Low Power VLSI Requirements Specification Architecture Logic / Circuits Physical Design Fabrication Manufacturing Test Packaging Test PCB Test System Test PCB Architecture PCB Circuits PCB Physical Design PCB Fabrication Design and Test Development Customer Validate Verify Test

Robust Low Power VLSI Functional Verification  BEFORE fabrication, be sure you design it right  Catch bugs early to prevent expensive refabrication  Rewriting code much cheaper than respinning a chip  Work mostly done in software (maybe acceleration, FPGA, etc.)  Can use advanced algorithms for automating verification and debug  Circuit transformations and representations  Process  Verification -> Errors  Errors -> Bugs  How to efficiently find bugs given errors? 3

Robust Low Power VLSI Functional Verification Challenges  Debugging modern designs is difficult  Million+ gates  Many error vectors to investigate  Sequential circuits  Fixing a suspected bug might cause more errors instead.  Headache  Frustration  Sleepless nights  Months of design effort (~30% of total) 4

Robust Low Power VLSI Paper [1] Claims  Need a way to automatically debug circuits given a set of errors  SAT, along with simple circuit insertions, can automatically locate bugs in a reasonable amount of time using a reasonable amount of resources  Can use different kinds of fault models, as well as model-free analysis. 5

Robust Low Power VLSI Why SAT?  Debugger performance will see immediate benefit from SAT solver advances  Conceptually simple methodology  Circuit specific characteristics reduce SAT search space 6

Robust Low Power VLSI Debugging With SAT  SAT – Boolean Satisfiability  Given a Boolean expression in conjunctive normal form (CNF), what combination of input values will produce a valid output?  Computationally difficult (NP-complete)  Modern SAT solvers very advanced  Construct CNF from specification circuit  Decompose complex logic gates into basic two-input gates  Insert multiplexers in the paths between logic gates  Duplicate circuit N times for N error vectors  Translate circuit into CNF Boolean expression (linear time)  Attempt to reproduce circuit fault using multiplexers 7

Robust Low Power VLSI Debugging With SAT 8 [1] Smith et al, TCAD’05

Robust Low Power VLSI Multiple Fault Sites  Single or multiple faults may be present in a design  Must enforce constraint on number of faults  Insert additional hardware into circuit to enforce constraint  Hardware translates into the CNF for the circuit  SAT solver enforces constraints through modified CNF 9 [1] Smith et al, TCAD’05

Robust Low Power VLSI Sequential Designs  Iterative Logic Array  Model sequential circuit as several combinational stages  Effectively unrolls the sequential circuit in time.  Applies analysis similar to the combinational case 10

Robust Low Power VLSI Heuristics  Several heuristics used to reduce the load on the SAT solver.  Reduce Space  Break up vector set into chunks and process each chunk independently  Smaller set of test vectors means smaller search space  90% of bug candidates covered in the first couple of passes  Backtracking  Invalidate discovered solutions  Forces SAT solver to look for more solutions without repeating itself 11

Robust Low Power VLSI Heuristics  Unnecessary Branching  If select line on a set of multiplexers is zero, the ‘1’ input to the multiplexer is irrelevant  Remove these inputs from consideration by adding another clause to CNF  Reduces SAT search space  Structural Information  Investigate structural dominator lines in first pass  Investigate all other lines in second pass  1/5 of potential fault locations found in the first pass  Reduces search space in second pass  Structural dominators used extensively in [5] 12

Robust Low Power VLSI Heuristics  Significant speedups  Most benchmarks see speedup  Over 250% percent speedup for some benchmarks 13 [1] Smith et al, TCAD’05

Robust Low Power VLSI MaxSAT [4]  Slight change in basic SAT methodology  Given erroneous CNF and expected input and output clauses, find the maximum number of clauses that can be satisfied.  CNF with expected input and output clauses is unsatisfiable  Remaining unsatisfiable clauses (gates) are candidate bugs  Can indicate invalid gate type placement  Vs SAT  4.5x improvement in performance  80% less resource consumption 14

Robust Low Power VLSI Interpolation [3] & Dominance [5]  Reduce problem size  Interpolation  Interpolants reduce storage of simulation  Breaks problem into smaller chunks  57% reduction in memory consumption  Comes at a cost of 2% increase in number of error locations reported  Structural Dominance  Find nonsolutions, blocks guaranteed to be bug free  Use structural dominance to infer other nonsolutions  Nonsolutions reduce SAT search space 15 [5] Mangassarian et al, TCAD’14

Robust Low Power VLSI Conclusion  Need to effectively debug large designs  SAT methodology effectively locates bugs within a design.  Improve speed  A slightly different approach, MaxSAT, reduces the time and space required.  Structural dominance reduces SAT calls and improves the speed of each call  Interpolation significantly reduces space used  All techniques benefit directly from improvements in SAT solver technology 16

Robust Low Power VLSI Discussion questions 1.The first heuristic uses multiple passes of vector subsets to reduce the solution space. Is there any difference between this and iteratively eliminating passing vectors after performing circuit correction? 2.Any other ways to improve performance? 3.Is model-free analysis guaranteed to find all faults given sufficient vector coverage? Insufficient coverage? 4.Page 12, paragraph 1, how does the data suggest that model-based outperforms model-free? 5.How could this methodology be applied to post- silicon verification and test? 17

Robust Low Power VLSI Papers  [1] Smith, A.; Veneris, A.; Fahim Ali, M.; Viglas, A., "Fault diagnosis and logic debugging using Boolean satisfiability," Computer-Aided Design of Integrated Circuits and Systems, IEEE Transactions on, vol.24, no.10, pp.1606,1621, Oct  [2] Safarpour, S.; Mangassarian, H.; Veneris, A.; Liffiton, Mark H.; Sakallah, K.A., "Improved Design Debugging Using Maximum Satisfiability," Formal Methods in Computer Aided Design, FMCAD '07, vol., no., pp.13,19, Nov  [3] Keng, B.; Veneris, A., "Scaling VLSI design debugging with interpolation," Formal Methods in Computer-Aided Design, FMCAD 2009, vol., no., pp.144,151, Nov  [4] Yibin Chen; Safarpour, S.; Marques-Silva, J.; Veneris, A., "Automated Design Debugging With Maximum Satisfiability," Computer-Aided Design of Integrated Circuits and Systems, IEEE Transactions on, vol.29, no.11, pp.1804,1817, Nov  [5] Mangassarian, H.; Bao Le; Veneris, A., "Debugging RTL Using Structural Dominance," Computer-Aided Design of Integrated Circuits and Systems, IEEE Transactions on, vol.33, no.1, pp.153,166, Jan

Robust Low Power VLSI Paper Map (e.g.) 19  [1] Smith, A.; …"Fault diagnosis and logic debugging using Boolean …," TCAD’05.  [2] Safarpour, S.; …"Improved Design Debugging Using Maximum …," FMCAD'07.  [3] Keng, B.; …"Scaling VLSI design debugging with interpolation," FMCAD’09.  [4] Yibin Chen; …"Automated Design Debugging With Maximum …," TCAD’10.  [5] Mangassarian, H.; …"Debugging RTL Using Structural Dominance,“ TCAD’14. [1] First paper on topic of using SAT for automated debugging. [2] MaxSAT based debugging improves performance vs SAT. [4] Additional optimizations to MaxSAT debugging algorithm. [3] Partition circuit into smaller sub-circuits to reduce complexity. Slightly different algorithm Practical applications necessitate lower resource footprint [4] builds on [2] [5] Most recent work on optimization of SAT debugging. Use structural dominance

Robust Low Power VLSI Glossary  Model-free: No fault model is used. Does not restrict the failure modes of a circuit.  Model-based: Assumes a fault model. Reduces SAT search space at the expense of  Structural Dominator: Any line a where all paths from some other line a’ to a primary output must pass through a.  CNF: Conjunctive normal form. Similar to product-of-sums representation. 20