Multiple-Vector Column-Matching BIST Design Method Petr Fišer, Hana Kubátová Department of Computer Science and Engineering Czech Technical University.

Slides:



Advertisements
Similar presentations
Interconnect Testing in Cluster Based FPGA Architectures Research by Ian G.Harris and Russel Tessier University of Massachusetts. Presented by Alpha Oumar.
Advertisements

A NOVEL APPROACH TO SOLVING LARGE-SCALE LINEAR SYSTEMS Ken Habgood, Itamar Arel Department of Electrical Engineering & Computer Science GABRIEL CRAMER.
10/28/2009VLSI Design & Test Seminar1 Diagnostic Tests and Full- Response Fault Dictionary Vishwani D. Agrawal ECE Dept., Auburn University Auburn, AL.
Copyright 2001, Agrawal & BushnellVLSI Test: Lecture 261 Lecture 26 Logic BIST Architectures n Motivation n Built-in Logic Block Observer (BILBO) n Test.
1 EE 587 SoC Design & Test Partha Pande School of EECS Washington State University
Pseudorandom Testability – Study of the Effect of the Generator Type Petr Fišer, Hana Kubátová Czech Technical University in Prague Dept. of Computer Science.
On the Selection of Efficient Arithmetic Additive Test Pattern Generators S. Manich, L. García, L. Balado, E. Lupon, J. Rius, R. Rodriguez, J. Figueras.
Scalable Test Pattern Generator Design Method for BIST Petr Fišer, Hana Kubátová Czech Technical University in Prague Faculty of Electrical Engineering.
Nov. 21, 2006ATS'06 1 Spectral RTL Test Generation for Gate-Level Stuck-at Faults Nitin Yogi and Vishwani D. Agrawal Auburn University, Department of ECE,
Efficient Compression and Application of Deterministic Patterns in a Logic BIST Architecture Peter Wohl, John A. Waicukauski, Sanjay Patel, Minesh B. Amin.
Copyright 2005, Agrawal & BushnellVLSI Test: Lecture 21alt1 Lecture 21alt BIST -- Built-In Self-Test (Alternative to Lectures 25, 26 and 27) n Definition.
Aiman El-Maleh, Ali Alsuwaiyan King Fahd University of Petroleum & Minerals, Dept. of Computer Eng., Saudi Arabia Aiman El-Maleh, Ali Alsuwaiyan King Fahd.
Nitin Yogi and Vishwani D. Agrawal Auburn University Auburn, AL 36849
May 11, 2006High-Level Spectral ATPG1 High-Level Test Generation for Gate-level Fault Coverage Nitin Yogi and Vishwani D. Agrawal Auburn University Department.
X-Compaction Itamar Feldman. Before we begin… Let’s talk about some DFT history: Design For Testability (DFT) has been around since the 1960s. The technology.
Dec. 19, 2005ATS05: Agrawal and Doshi1 Concurrent Test Generation Auburn University, Department of Electrical and Computer Engineering Auburn, AL 36849,
Concurrent Test Generation Auburn University, Department of Electrical and Computer Engineering Auburn, AL 36849, USA Vishwani D. Agrawal Alok S. Doshi.
Design for Testability Theory and Practice Lecture 11: BIST
Aug 11, 2006Yogi/Agrawal: Spectral Functional ATPG1 Spectral Characterization of Functional Vectors for Gate-level Fault Coverage Tests Nitin Yogi and.
Finite State Machine Minimization Advanced Methods based on triangular table and binate covering.
Jan. 9, 2007 VLSI Design Conference Spectral RTL Test Generation for Microprocessors Nitin Yogi and Vishwani D. Agrawal Auburn University Department.
October 8, th Asian Test Symposium 2007, Biejing, China XXXXX00XXX XX000101XXXXXXXXXXXXX0XXX1X0 101XXX1011XXXXXX0XXX XX000101XXXXXXXXXXXXX0XXX1XX.
Efficient Test Compaction for Combinational Circuits Based on Fault Detection Count- Directed Clustering Aiman El-Maleh and Saqib Khurshid King Fahd University.
Dec. 29, 2005Texas Instruments (India)1 Concurrent Test Generation Auburn University, Department of Electrical and Computer Engineering Auburn, AL 36849,
1 Oct 24-26, 2006 ITC'06 Fault Coverage Estimation for Non-Random Functional Input Sequences Soumitra Bose Intel Corporation, Design Technology, Folsom,
Test Set Compaction for Sequential Circuits Computer Engineering, KFUPM Test Set Compaction for Sequential Circuits based on Test Relaxation M.S Thesis.
Jan. 6, 2006VLSI Design '061 On the Size and Generation of Minimal N-Detection Tests Kalyana R. Kantipudi Vishwani D. Agrawal Department of Electrical.
ELEN 468 Lecture 251 ELEN 468 Advanced Logic Design Lecture 25 Built-in Self Test.
3. Built-In Self Test (BIST): Periodical Off-Line Test on the Field 3.1 General Structure Unit Under Test Data Compressor Data Generator Comparator Display.
Copyright 2001, Agrawal & BushnellVLSI Test: Lecture 101 Lecture 10 Combinational ATPG and Logic Redundancy n Redundancy identification n Redundancy removal.
Sequential circuit design
Testimise projekteerimine: Labor 2 BIST Optimization
March 8, 2006Spectral RTL ATPG1 High-Level Spectral ATPG for Gate-level Circuits Nitin Yogi and Vishwani D. Agrawal Auburn University Department of ECE.
1 A Flexible Minimization and Partitioning Method Petr Fišer, Jan Hlavička Czech Technical University in Prague
1 Fitting ATE Channels with Scan Chains: a Comparison between a Test Data Compression Technique and Serial Loading of Scan Chains LIRMM CNRS / University.
Flexible Two-Level Boolean Minimizer BOOM ‑ II and Its Applications Petr Fišer, Hana Kubátová Department of Computer Science and Engineering Czech Technical.
A Test-Per-Clock LFSR Reseeding Algorithm for Concurrent Reduction on Test Sequence Length and Test Data Volume Adviser :蔡亮宙 Student ;蔡政宏.
Pseudo-Random Pattern Generator Design for Column ‑ Matching BIST Petr Fišer Czech Technical University Dept. of Computer Science and Engineering.
An Iterative Heuristic for State Justification in Sequential Automatic Test Pattern Generation Aiman H. El-MalehSadiq M. SaitSyed Z. Shazli Department.
ECE 553: TESTING AND TESTABLE DESIGN OF DIGITAL SYSTEMS
Test pattern generator is BIST scan chains TESTGENERATOR COMPACOMPACCTTOORRCOMPACOMPACCTTOORRCTOR Control.
December, 2004 Ecole Polytechnique 1 Deterministic BIST By Amiri Amir Mohammad Professor Dr. Abdelhakim Khouas Project Presentation for ELE6306 (Test des.
Boolean Minimizer FC-Min: Coverage Finding Process Petr Fišer, Hana Kubátová Czech Technical University Department of Computer Science and Engineering.
1 Compacting Test Vector Sets via Strategic Use of Implications Kundan Nepal Electrical Engineering Bucknell University Lewisburg, PA Nuno Alves, Jennifer.
Two-Level Boolean Minimizer BOOM-II Petr Fišer, Hana Kubátová Department of Computer Science and Engineering Czech Technical University Karlovo nam. 13,
Weikang Qian. Outline Intersection Pattern and the Problem Motivation Solution 2.
Tetris Agent Optimization Using Harmony Search Algorithm
Survey of the Algorithms in the Column-Matching BIST Method Survey of the Algorithms in the Column-Matching BIST Method Petr Fišer, Hana Kubátová Department.
TOPIC : Introduction to Fault Simulation
Output Grouping Method Based on a Similarity of Boolean Functions Petr Fišer, Pavel Kubalík, Hana Kubátová Czech Technical University in Prague Department.
Mixed-Mode BIST Based on Column Matching Petr Fišer.
Technical University Tallinn, ESTONIA Copyright by Raimund Ubar 1 Raimund Ubar N.Mazurova, J.Smahtina, E.Orasson, J.Raik Tallinn Technical University.
A Test-Per-Clock LFSR Reseeding Algorithm for Concurrent Reduction on Test Sequence Length and Test Data Volume Wei-Cheng Lien 1, Kuen-Jong Lee 1 and Tong-Yu.
A New ATPG Algorithm for 21 st Century: The wojoRithm John Sunwoo Electrical & Computer Engineering Auburn University, AL.
Output Grouping-Based Decomposition of Logic Functions Petr Fišer, Hana Kubátová Department of Computer Science and Engineering Czech Technical University.
An Algorithm for the Consecutive Ones Property Claudio Eccher.
November 25Asian Test Symposium 2008, Nov 24-27, Sapporo, Japan1 Sequential Circuit BIST Synthesis using Spectrum and Noise from ATPG Patterns Nitin Yogi.
POWER OPTIMIZATION IN RANDOM PATTERN GENERATOR By D.Girish Kumar 108W1D8007.
July 10, th VLSI Design and Test Symposium1 BIST / Test-Decompressor Design using Combinational Test Spectrum Nitin Yogi Vishwani D. Agrawal Auburn.
Lecture 5: Design for Testability. CMOS VLSI DesignCMOS VLSI Design 4th Ed. 12: Design for Testability2 Outline  Testing –Logic Verification –Silicon.
SINGLE-LEVEL PARTITIONING SUPPORT IN BOOM-II
VLSI Testing Lecture 14: Built-In Self-Test
A New ATPG Algorithm for 21st Century: The wojoRithm
Aiman H. El-Maleh Sadiq M. Sait Syed Z. Shazli
Veeraraghavan Ramamurthy
MS Thesis Defense Presentation by Mustafa Imran Ali COE Department
Lecture 26 Logic BIST Architectures
Reseeding-based Test Set Embedding with Reduced Test Sequences
Mixed-Mode BIST Based on Column Matching
Test Data Compression for Scan-Based Testing
Presentation transcript:

Multiple-Vector Column-Matching BIST Design Method Petr Fišer, Hana Kubátová Department of Computer Science and Engineering Czech Technical University in Prague

2 Outline Motivation Motivation Basic BIST design Basic BIST design Output decoder Output decoder Column-Matching Column-Matching Mixed-Mode BIST Mixed-Mode BIST... well, these topics of mine are quite old. Sorry ATPG modes ATPG modes Test set compaction Test set compaction Multiple-Vector Column-Matching Multiple-Vector Column-Matching Results Results Conclusions Conclusions

3 Motivation We want to reduce the BIST area overhead This is done by fully exploiting ATPG capabilities But for a cost of an increase of the BIST design time “They say”, that it does not matter that much. If the circuit design time is one year, one week of BIST design time is nothing...

4 BIST Structure Test-per-clock BIST structure Notice that this is a general structure used in most of currently used BIST methods: Bit-flipping Bit-flipping Bit-fixing Bit-fixing Weighted-pattern testing Weighted-pattern testing Column-matching Column-matching......

Figure from "Chatterjee, Pradhan: A novel pattern generator for near-perfect fault coverage, VTS, 1995" 5 Output Decoder Modifies pseudo-random LFSR vectors into deterministic test patterns Decoder is purely combinational block We are testing combinational (or full-scan) circuits => order of test patterns is insignificant

6 Output Decoder  Example

7 Column-Matching Based on “matching” columns having same values => no logic needed Recall: by properly assigning the rows y0 = x4’ + x1 y1 = x3’ y2 = x2 x3’ + x2’ x4’ y3 = x0’ y4 = x4

8 Column-Matching But how to find a good row assignment? (so that maximum columns are matched)   B-Matrix based approach Rows are LFSR vectors, columns are test patterns Initialization: fill with ‘1’s => each of the test patterns can be assigned to any LFSR vector Select two columns randomly Set B-matrix vales to ‘0’, when opposite values are in respective column and row positions => rows containing opposite values in the matched columns cannot be assigned to each other Repeat, while there is a possibility for a new match The aim: to assign all test patterns to some LFSR vectors

9 Making Row Assignment From the B-Matrix NP-Hard - similar to binate covering problem LCLR But efficient heuristic can be used: LCLR Find the column having the least number of “1”s Find the column having the least number of “1”s (i.e., the test pattern that is the hardest one to cover) Find the row having a “1” value in this column and having the least number of “1”s in other columns Find the row having a “1” value in this column and having the least number of “1”s in other columns (i.e., the least useful LFSR pattern) Assign them together, remove them from the matrix Repeat, while there are some columns left

10 Column-Matching Anyway... More “freedom” involves more column matches don’t cares “Freedom” = test don’t cares less area overhead More column matches = less area overhead

11 Mixed-Mode BIST Combination of pseudo-random and deterministic testing Combination of pseudo-random and deterministic testing Two disjoint phases Two disjoint phases   Easy-to-detect faults are detected by pseudorandom patterns   The rest by deterministic patterns

12 Mixed-Mode Column-Matching  Example

13 Ugh...

14 ATPG Modes Alias what test sets can be beaten out of an ATPG Non-compacted test without don’t cares Compacted test set without don’t care values Compacted test set with don’t cares Non-compacted test with don’t cares One test vector for each fault More than one test vector for each fault All the possible test vectors for each fault

15 ATPG Modes Alias what test sets can be beaten out of an ATPG Non-compacted test without don’t cares Compacted test set without don’t care values Compacted test set with don’t cares Non-compacted test with don’t cares One test vector for each fault More than one test vector for each fault All the possible test vectors for each fault random-pattern simulation deterministic test set generation  long (-)  no freedom for a choice (-)

16 ATPG Modes Alias what test sets can be beaten out of an ATPG Non-compacted test without don’t cares Compacted test set without don’t care values Compacted test set with don’t cares Non-compacted test with don’t cares One test vector for each fault More than one test vector for each fault All the possible test vectors for each fault random-pattern simulation deterministic test set generation test set compaction don’t care substitution  the most common ATPG mode  minimum test vectors (+)  but no don’t cares are there (-)  no freedom for a choice (-)

17 ATPG Modes Alias what test sets can be beaten out of an ATPG Non-compacted test without don’t cares Compacted test set without don’t care values Compacted test set with don’t cares Non-compacted test with don’t cares One test vector for each fault More than one test vector for each fault All the possible test vectors for each fault random-pattern simulation deterministic test set generation test set compaction no don’t care substitution  minimum test vectors (+)  but not much more don’t cares (?)  little bit freedom for a choice (?)

18 ATPG Modes Alias what test sets can be beaten out of an ATPG Non-compacted test without don’t cares Compacted test set without don’t care values Compacted test set with don’t cares Non-compacted test with don’t cares One test vector for each fault More than one test vector for each fault All the possible test vectors for each fault deterministic test set generation  no random phase  no compaction  many don’t cares in the test (+)  more freedom for a choice (+)

19 ATPG Modes Alias what test sets can be beaten out of an ATPG Non-compacted test without don’t cares Compacted test set without don’t care values Compacted test set with don’t cares Non-compacted test with don’t cares One test vector for each fault More than one test vector for each fault All the possible test vectors for each fault deterministic test set generation one test vector for each fault  no random phase  no compaction  many many don’t cares in the test (++)  long test (-)  much more freedom for a choice (++)

20 ATPG Modes Alias what test sets can be beaten out of an ATPG Non-compacted test without don’t cares Compacted test set without don’t care values Compacted test set with don’t cares Non-compacted test with don’t cares One test vector for each fault More than one test vector for each fault All the possible test vectors for each fault deterministic test set generation more test vectors for each fault  no random phase  no compaction  many many don’t cares in the test (++)  long test (-)  much much more freedom for a choice (+++)

21 ATPG Modes Alias what test sets can be beaten out of an ATPG Non-compacted test without don’t cares Compacted test set without don’t care values Compacted test set with don’t cares Non-compacted test with don’t cares One test vector for each fault More than one test vector for each fault All the possible test vectors for each fault deterministic test set generation all test vectors for each fault  no random phase  no compaction  many many don’t cares in the test (++)  little bit longer test (...)  much much much more freedom for a choice (++++) After obtaining vectors for the 1 st fault for c432, I have resigned...

22 ATPG Modes Alias what test sets can be beaten out of an ATPG Non-compacted test without don’t cares Compacted test set without don’t care values Compacted test set with don’t cares Non-compacted test with don’t cares One test vector for each fault More than one test vector for each fault All the possible test vectors for each fault deterministic test set generation more test vectors for each fault  no random phase  no compaction  many many don’t cares in the test (++)  long test (-)  much much more freedom for a choice (+++) That’s it!

23 Test Set Compaction Requirements: Short test Many don’t cares Our algorithm: Based on joining test vectors Vectors can be joined, when they have non- empty intersection Vectors having the “biggest” intersection are joined

24 Test Set Compaction Our algorithm: Let a test vector t 1 detects a fault set F 1 and a test vector t 2 detects a fault set F 2 Then their intersection t 1  t2 detects faults F 1  F 2  Example

25 Test Set Compaction Results benchvct/fltATPGcompactDC c % % c % % c % % c % % s % % s % % s % % s % % s % %

26 Column-Matching But how to find a good row assignment? (so that maximum columns are matched)   B-Matrix based approach Rows are LFSR vectors, columns are test patterns Initialization: fill with ‘1’s. Each test patterns can be assigned to each LFSR vector Select two columns randomly Set B-matrix vales to ‘0’, when opposite values are in respective column and row positions => rows containing opposite values in the matched columns cannot be assigned to each other Repeat, while there is a possibility for a new match The aim: to assign all test patterns to some LFSR vectors

27 Multiple-Vector Column-Matching But how to find a good row assignment? (so that maximum columns are matched)   B-Matrix based approach Rows are LFSR vectors, columns are test patterns Initialization: fill with ‘1’s. Each test patterns can be assigned to each LFSR vector Select two columns randomly Set B-matrix vales to ‘0’, when opposite values are in respective column and row positions => rows containing opposite values in the matched columns cannot be assigned to each other Repeat, while there is a possibility for a new match The aim: to detect all faults Only the Row assignment algorithm has to be slightly changed (B-matrix solution)

28 Making Row Assignment From the B-Matrix Not all columns have to be covered Not all columns have to be covered Different heuristic: Different heuristic: Find the column (test pattern) detecting most of faults Find the row having a “1” value in this column and having the least number of “1”s in other columns Find the row having a “1” value in this column and having the least number of “1”s in other columns (i.e., the least useful LFSR pattern) Remove detected faults from the fault list Repeat, until the fault list is empty

29 Experimental Results benchPR/detvct/fltcompactMtime [s]overheadimprovement c19081 K / 1 K13628/ % / %48 % c35401 K / 1K13148/ % / %27 % / %42 % c K / 1K / % / %13 % s11961 K / 1 K15527/ % / %30 % s12383 K / 1 K13327/ % / %31 % s K / 1 K119214/ % / %40 % s K / 1 K152224/ % / %10 %

30 Conclusions An enhancement of our Column-matching method is proposed An enhancement of our Column-matching method is proposed The improvement is based on exploiting ATPG capabilities to produce more vectors for each fault The improvement is based on exploiting ATPG capabilities to produce more vectors for each fault The BIST area overhead is reduced, for a cost of a longer BIST design time The BIST area overhead is reduced, for a cost of a longer BIST design time