Using Implications for Online Error Detection Nuno Alves, Jennifer Dworak, and R. Iris Bahar Division of Engineering Brown University Providence, RI 02912.

Slides:



Advertisements
Similar presentations
Copyright © 2010 SpectraPlex – Presentation property of SpectraPlex, no reproduction without permission SpectraPlex High Performance Communications Technologies.
Advertisements

Generic Task Routine Design.
Enable User Choice in Routing Xiaowei Yang UC Irvine NSF FIND PI meeting, June
Software Testing Technique. Introduction Software Testing is the process of executing a program or system with the intent of finding errors. It involves.
Code Tuning Techniques CPSC 315 – Programming Studio Fall 2008 Most examples from Code Complete 2.
II. Potential Errors In Epidemiologic Studies Random Error Dr. Sherine Shawky.
Jan SedmidubskyOctober 28, 2011Scalability and Robustness in a Self-organizing Retrieval System Jan Sedmidubsky Vlastislav Dohnal Pavel Zezula On Investigating.
Entropy Extraction in Metastability-based TRNG
New Opportunities for Load Balancing in Network-Wide Intrusion Detection Systems Victor Heorhiadi, Michael K. Reiter, Vyas Sekar UNC Chapel Hill UNC Chapel.
Exploring Energy-Latency Tradeoffs for Broadcasts in Energy-Saving Sensor Networks AUTHOR: MATTHEW J. MILLER CIGDEM SENGUL INDRANIL GUPTA PRESENTER: WENYU.
Based on text by S. Mourad "Priciples of Electronic Systems" Digital Testing: Design Representation and Fault Detection
Parallel Symbolic Execution for Structural Test Generation Matt Staats Corina Pasareanu ISSTA 2010.
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.
1 Analyzing Reconvergent Fanouts in Gate Delay Fault Simulation Dept. of ECE, Auburn University Auburn, AL Hillary Grimes & Vishwani D. Agrawal.
NATW 2008 Using Implications for Online Error Detection Nuno Alves, Jennifer Dworak, R. Iris Bahar Division of Engineering Brown University Providence,
Self-Checking Carry-Select Adder Design Based on Two-Rail Encoding
Logic Simulation 4 Outline –Fault Simulation –Fault Models –Parallel Fault Simulation –Concurrent Fault Simulation Goal –Understand fault simulation problem.
Design of Variable Input Delay Gates for Low Dynamic Power Circuits
5/1/2006VTS'061 Upper Bounding Fault Coverage by Structural Analysis and Signal Monitoring Vishwani D. Agrawal Auburn University, Dept. of ECE, Auburn,
4/25/2006 ELEC7250: Hill 1 Brad Hill ELEC 7250 Logic Simulator.
4/20/2006ELEC7250: Alexander 1 LOGIC SIMULATION AND FAULT DIAGNOSIS BY JINS DAVIS ALEXANDER ELEC 7250 PRESENTATION.
1 ITC-07 Paper /25/2007 Estimating Stuck Fault Coverage in Sequential Logic Using State Traversal and Entropy Analysis Soumitra Bose Design Technology,
1 Oct 24-26, 2006 ITC'06 Fault Coverage Estimation for Non-Random Functional Input Sequences Soumitra Bose Intel Corporation, Design Technology, Folsom,
10/25/2007 ITC-07 Paper Delay Fault Simulation with Bounded Gate Delay Model Soumitra Bose Design Technology, Intel Corp. Folsom, CA Hillary.
1 Reconvergent Fanout Analysis of Bounded Gate Delay Faults Dept. of ECE, Auburn University Auburn, AL Master’s Defense Hillary Grimes Thesis Advisor:
Embedded Systems Laboratory Informatics Institute Federal University of Rio Grande do Sul Porto Alegre – RS – Brazil SRC TechCon 2005 Portland, Oregon,
On-Line Adjustable Buffering for Runtime Power Reduction Andrew B. Kahng Ψ Sherief Reda † Puneet Sharma Ψ Ψ University of California, San Diego † Brown.
04/25/2006 ELEC 7250 Final Project: Jie Qin 1 Logic Simulator for Combinational Circuit Jie Qin Dept. of Electrical and Computer Engineering Auburn University,
Functional Coverage Driven Test Generation for Validation of Pipelined Processors P. Mishra and N. Dutt Proceedings of the Design, Automation and Test.
A Probabilistic Method to Determine the Minimum Leakage Vector for Combinational Designs Kanupriya Gulati Nikhil Jayakumar Sunil P. Khatri Department of.
1 Software Testing and Quality Assurance Lecture 5 - Software Testing Techniques.
State coverage: an empirical analysis based on a user study Dries Vanoverberghe, Emma Eyckmans, and Frank Piessens.
1 Functional Testing Motivation Example Basic Methods Timing: 30 minutes.
USING SAT-BASED CRAIG INTERPOLATION TO ENLARGE CLOCK GATING FUNCTIONS Ting-Hao Lin, Chung-Yang (Ric) Huang Graduate Institute of Electrical Engineering,
Software Testing Sudipto Ghosh CS 406 Fall 99 November 9, 1999.
1 Fault-Tolerant Computing Systems #2 Hardware Fault Tolerance Pattara Leelaprute Computer Engineering Department Kasetsart University
공과대학 > IT 공학부 Embedded Processor Design Chapter 8: Test EMBEDDED SYSTEM DESIGN 공과대학 > IT 공학부 Embedded Processor Design Presenter: Yvette E. Gelogo Professor:
Dynamic Test Set Selection Using Implication-Based On-Chip Diagnosis Nuno Alves, Yiwen Shi, Nicholas Imbriglia, and Iris Bahar Brown University Jennifer.
Topic #10: Optimization EE 456 – Compiling Techniques Prof. Carl Sable Fall 2003.
DYNAMIC TEST SET SELECTION USING IMPLICATION-BASED ON-CHIP DIAGNOSIS Nicholas Imbriglia, Nuno Alves, Elif Alpaslan, Jennifer Dworak Brown University NATW.
Reduced Cost Reliability via Statistical Model Detection Jon-Paul Anderson- PhD Student Dr. Brent Nelson- Faculty Dr. Mike Wirthlin- Faculty Brigham Young.
1 Boolean Algebra & Logic Gates. 2 Objectives Understand the relationship between Boolean logic and digital computer circuits. Learn how to design simple.
SiLab presentation on Reliable Computing Combinational Logic Soft Error Analysis and Protection Ali Ahmadi May 2008.
European Test Symposium, May 28, 2008 Nuno Alves, Jennifer Dworak, and R. Iris Bahar Division of Engineering Brown University Providence, RI Kundan.
Unit 5 Lecture 2 Error Control Error Detection & Error Correction.
1 Compacting Test Vector Sets via Strategic Use of Implications Kundan Nepal Electrical Engineering Bucknell University Lewisburg, PA Nuno Alves, Jennifer.
1 Test Selection for Result Inspection via Mining Predicate Rules Wujie Zheng
Relyzer: Exploiting Application-level Fault Equivalence to Analyze Application Resiliency to Transient Faults Siva Hari 1, Sarita Adve 1, Helia Naeimi.
TOPIC : Different levels of Fault model UNIT 2 : Fault Modeling Module 2.1 Modeling Physical fault to logical fault.
On the Relation between SAT and BDDs for Equivalence Checking Sherief Reda Rolf Drechsler Alex Orailoglu Computer Science & Engineering Dept. University.
Detecting Errors Using Multi-Cycle Invariance Information Nuno Alves, Jennifer Dworak, and R. Iris Bahar Division of Engineering Brown University Providence,
VLSI Test Symposium, 2011 Nuno Alves, Yiwen Shi, and R. Iris Bahar School of Engineering, Brown University, Providence, RI Jennifer Dworak Department of.
Low-cost Program-level Detectors for Reducing Silent Data Corruptions Siva Hari †, Sarita Adve †, and Helia Naeimi ‡ † University of Illinois at Urbana-Champaign,
Arithmetic-Logic Units. Logic Gates AND gate OR gate NOT gate.
Testing Integral part of the software development process.
On the Relation Between Simulation-based and SAT-based Diagnosis CMPE 58Q Giray Kömürcü Boğaziçi University.
University of Michigan Electrical Engineering and Computer Science 1 Low Cost Control Flow Protection Using Abstract Control Signatures Daya S Khudia and.
MAPLD 2005 Reduced Triple Modular Redundancy for Tolerating SEUs in SRAM based FPGAs Vikram Chandrasekhar, Sk. Noor Mahammad, V. Muralidharan Dr. V. Kamakoti.
VLSI Testing Lecture 6: Fault Simulation
ECE 553: TESTING AND TESTABLE DESIGN OF DIGITAL SYSTES
MAPLD 2005 BOF-L Mitigation Methods for
VLSI Testing Lecture 6: Fault Simulation
Overview: Fault Diagnosis
Pattern Compression for Multiple Fault Models
Automatic Test Generation for Combinational Circuits
Resolution Proofs for Combinational Equivalence
Test Case Test case Describes an input Description and an expected output Description. Test case ID Section 1: Before execution Section 2: After execution.
Automatic Test Pattern Generation
Learning Intention I will learn about the different types of programming errors.
Implementation of CMOS Logic Circuits with
Presentation transcript:

Using Implications for Online Error Detection Nuno Alves, Jennifer Dworak, and R. Iris Bahar Division of Engineering Brown University Providence, RI Kundan Nepal Electrical Engineering Dept. Bucknell University Lewisburg, PA International Test Conference, October 28-30, 2008

Motivation Circuits are becoming more susceptible to transient errors…. –Soft errors, test escapes, noise, etc. Some applications need a reduction in error rates. $$$$ Error Detection Can we efficiently tradeoff error detection and cost? - using logic implications

Outline Common error detection techniques Our approach—logic implications Finding an implication set Error coverage Balancing error coverage and overhead Conclusions

Outline Common error detection techniques Our approach—logic implications Finding an implication set Error coverage Balancing error coverage and overhead Conclusions

(Some) Previous Techniques in Online Error Detection Redundancy in time — e.g. re-executing in a redundant thread Logic duplication or TMR Codes — e.g. Parity, Berger, Bose Lin Pre-computed test vectors and their expected responses (stored in hardware) High-level functional assertions

Outline Common error detection techniques Our approach—logic implications Finding an implication set Error coverage Balancing error coverage and overhead Conclusions

Our Approach—Logic Implications Error detection compares expected behavior to actual behavior Implications within a logic block describe expected relationships between values at circuit sites. Violation of an expected implication indicates the presence of an error.

Implications Naturally Occur in Circuits n1 n2 n3 n4 n5 n6 n7 n n5 = 1 → n8 = 0

Implication Violations Can Be Used to Detect Errors ERROR n1 n2 n3 n4 n5 n6 n7 n8 n5=1 n8=0 Appropriate checker logic can detect multiple errors with a single implication.

Implication Violations Can Be Used to Detect Errors ERROR n1 n2 n3 n4 n5 n6 n7 n8 n5=1 n8=0 Appropriate checker logic can detect multiple errors with a single implication. sa1

Identified Implications Determine Checker Hardware

Outline Common error detection techniques Our approach—logic implications Finding an implication set Error coverage Balancing error coverage and overhead Conclusions

Finding Implications Gate-level implications can be identified automatically without requiring functional knowledge of the circuit in three steps: Quickly identify potential implications: –Choose potential sites of adequate distance –Fast good circuit simulation –Look for missing logic value pairs Validate implications –SAT solver Reduce implication set –Structural and error detection analysis

So…how many “natural” implications are there?

Identifying “Subsumed” Implications All the errors covered by a short-distance implication may sometimes also be covered by a long-distance implication…. n1 n2 n3 n4 n5 n6 n7 n8 n9 n10 n11 n12 n13

Identifying “Subsumed” Implications All the errors covered by a short-distance implication may sometimes also be covered by a long-distance implication…. n1 n2 n3 n4 n5 n6 n7 n8 n9 n10 n11 n12 n13 n10 = 0 → n13 = 0

Identifying “Subsumed” Implications All the errors covered by a short-distance implication may sometimes also be covered by a long-distance implication…. n1 n2 n3 n4 n5 n6 n7 n8 n9 n10 n11 n12 n13 n10 = 0 → n13 = 0 n10 = 0 → n8 = 0

Identifying “Subsumed” Implications All the errors covered by a short-distance implication may sometimes also be covered by a long-distance implication…. n1 n2 n3 n4 n5 n6 n7 n8 n9 n10 n11 n12 n13 n10 = 0 → n13 = 0 n10 = 0 → n8 = 0 n4 = 1 → n8 = 0 n4 = 1 → n11 = 0 n4 = 1 → n13 = 0 n4 = 11 → n8 = 0

Reducing the Implication List Subsumed implications detected through structural analysis: –Implications fall on the same path with appropriate “implied values” –No fanout branches along the path –The implication with the longest “distance” between implication sites is retained.

So, how much does this reduce the size of our implication lists?

Compressing the Implication List While Maintaining Quality Once subsumed implications are removed, the implication list may still be too long. Evaluate the remaining implications for “implication quality” Implication quality calculated for every implication/fault pair: Each fault’s “highest quality” implication is added to the list

Outline Common error detection techniques Our approach—logic implications Finding an implication set Error coverage Balancing error coverage and overhead Conclusions

Covering Faults with Implications For each random input vector, and for each fault, the implications-based circuit operation can fall into the following 4 categories: Case 1Case2Case3Case4 Error Propagates To Output  An Implication is Violated  True detection False positive True miss Benign miss

Outline Common error detection techniques Our approach—logic implications Finding an implication set Error coverage Balancing error coverage and overhead Conclusions

What is the hardware overhead? Include all implications remaining after compress Used simple implementation for each implication (AND gate and up to 2 inverters) Outputs of AND gates OR’ed together 180nm TSMC library and Mentor Graphics Toolset used to generate layout and calculate area overhead.

Trading off Area Overhead and Coverage Coverage/area tradeoffs are intuitively easy with implications Threshold set for area overhead Gate count used to estimate number of implications that can be included Implications chosen by: –Coverage of all faults –Coverage of “most important” faults (more likely to be missed by test, more likely to cause important errors, etc.)

Conclusions Implications serve as gate-level “assertions” that can be automatically discovered without detailed functional knowledge of the circuit design Many implications naturally exist within circuits Good coverage of many faults (often almost 90%) Ideally suited to cost/coverage tradeoffs—especially for applications that require a significant reduction in error rates instead of “zero” errors With only a 10% area overhead, probability of an error being both observable and undetected is reduced to ~12% on average (and actual error rate will be much less)