Technical University Tallinn, ESTONIA Introduction: The Problem is Money? Cost of testing Quality Cost of quality Cost Cost of the fault 100% 0% Optimum.

Slides:



Advertisements
Similar presentations
Digital Integrated Circuits© Prentice Hall 1995 Design Methodologies Design for Test.
Advertisements

MEMORY BIST by: Saeid Hashemi Mehrdad Falakparvaz
V. Vaithianathan, AP/ECE
Copyright 2001, Agrawal & BushnellLecture 12: DFT and Scan1 VLSI Testing Lecture 10: DFT and Scan n Definitions n Ad-hoc methods n Scan design  Design.
Design for Testability (DfT)
Copyright 2001, Agrawal & BushnellVLSI Test: Lecture 261 Lecture 26 Logic BIST Architectures n Motivation n Built-in Logic Block Observer (BILBO) n Test.
Technical University Tallinn, ESTONIA DESIGN FOR TESTABILITY Raimund Ubar
LEONARDO INSIGHT II / TAP-MM ASTEP - Basic Test Concepts © J. M. Martins Ferreira - University of Porto (FEUP / DEEC)1 Basic test concepts J. M. Martins.
5/13/2015 Based on text by S. Mourad "Priciples of Electronic Systems" Digital Testing: Built-in Self-test.
1 EE 587 SoC Design & Test Partha Pande School of EECS Washington State University
Copyright 2005, Agrawal & BushnellVLSI Test: Lecture 21alt1 Lecture 21alt BIST -- Built-In Self-Test (Alternative to Lectures 25, 26 and 27) n Definition.
Copyright 2001, Agrawal & BushnellDay-2 PM Lecture 101 Design for Testability Theory and Practice Lecture 10: DFT and Scan n Definitions n Ad-hoc methods.
Testability Virendra Singh Indian Institute of Science Bangalore
11/17/05ELEC / Lecture 201 ELEC / (Fall 2005) Special Topics in Electrical Engineering Low-Power Design of Electronic Circuits.
1 Lecture 23 Design for Testability (DFT): Full-Scan n Definition n Ad-hoc methods n Scan design Design rules Scan register Scan flip-flops Scan test sequences.
Design for Testability Theory and Practice Lecture 11: BIST
Copyright 2001, Agrawal & BushnellVLSI Test: Lecture 251 Lecture 25 Built-In Self-Testing Pattern Generation and Response Compaction n Motivation and economics.
ELEN 468 Lecture 241 ELEN 468 Advanced Logic Design Lecture 24 Design for Testability.
Fall 2006, Nov. 30 ELEC / Lecture 12 1 ELEC / (Fall 2006) Low-Power Design of Electronic Circuits Test Power Vishwani D.
Lecture 27 Memory and Delay-Fault Built-In Self-Testing
Copyright 2001, Agrawal & BushnellVLSI Test: Lecture 81 Lecture 8 Testability Measures n Origins n Controllability and observability n SCOAP measures 
Comparison of LFSR and CA for BIST
Technical University Tallinn, ESTONIA Overview: Testability Evaluation Outline Quality Policy of Electronic Design Tradeoffs of Design for Testability.
ELEN 468 Lecture 251 ELEN 468 Advanced Logic Design Lecture 25 Built-in Self Test.
Design for Testability
TOPIC - BIST architectures I
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.
BIST vs. ATPG.
BIST AND DATA COMPRESSION 1 JTAG COURSE spring 2006 Andrei Otcheretianski.
Spring 07, Jan 30 ELEC 7770: Advanced VLSI Design (Agrawal) 1 ELEC 7770 Advanced VLSI Design Spring 2007 SOC Test Scheduling Vishwani D. Agrawal James.
Design for Testability
Technical University Tallinn, ESTONIA Overview: Fault Simulation Overview about methods Low (gate) level methods Parallel fault simulation Deductive fault.
Testimise projekteerimine: Labor 2 BIST Optimization
Technical University Tallinn, ESTONIA 1 Boolean derivatives Calculation of the Boolean derivative: Given:
ECE 553: TESTING AND TESTABLE DESIGN OF DIGITAL SYSTEMS Design for Testability (DFT) - 2.
Mugil Vannan H ST Microelectronics India Pvt. Ltd, Noida
CSE477 L28 DFT.1Irwin&Vijay, PSU, 2003 CSE477 VLSI Digital Circuits Fall 2003 Lecture 28: Design for Test Mary Jane Irwin ( )
Unit IV Self-Test and Test Algorithms
ECE 553: TESTING AND TESTABLE DESIGN OF DIGITAL SYSTEMS Built-In Self-Test (BIST) - 1.
1 EE 587 SoC Design & Test Partha Pande School of EECS Washington State University
Logic BIST Logic BIST.
Design for Testability By Dr. Amin Danial Asham. References An Introduction to Logic Circuit Testing.
ECE 553: TESTING AND TESTABLE DESIGN OF DIGITAL SYSTEMS
Test pattern generator is BIST scan chains TESTGENERATOR COMPACOMPACCTTOORRCOMPACOMPACCTTOORRCTOR Control.
1 EE 587 SoC Design & Test Partha Pande School of EECS Washington State University
Linear Feedback Shift Register. 2 Linear Feedback Shift Registers (LFSRs) These are n-bit counters exhibiting pseudo-random behavior. Built from simple.
Page 1EL/CCUT T.-C. Huang May 2004 TCH CCUT Introduction to IC Test Tsung-Chu Huang ( 黃宗柱 ) Department of Electronic Eng. Chong Chou Institute of Tech.
Technical University Tallinn, ESTONIA Overview 1.Introduction 2.Testability measuring 3.Design for testability 4.Built in Self-Test.
ECE 553: TESTING AND TESTABLE DESIGN OF DIGITAL SYSTEMS
TOPIC : Controllability and Observability
CS/EE 3700 : Fundamentals of Digital System Design
Mixed-Mode BIST Based on Column Matching Petr Fišer.
Built-In Self Test (BIST).  1. Introduction  2. Pattern Generation  3. Signature Analysis  4. BIST Architectures  5. Summary Outline.
Technical University Tallinn, ESTONIA Copyright by Raimund Ubar 1 Raimund Ubar N.Mazurova, J.Smahtina, E.Orasson, J.Raik Tallinn Technical University.
Technical University Tallinn, ESTONIA 1 Raimund Ubar TTÜ Tallinn, 21. mai 2003 Hästitestitavad ja isetestivad digitaalsüsteemid.
TOPIC : RTD, SST UNIT 5 : BIST and BIST Architectures Module 5.2 Specific BIST Architectures.
Technical University Tallinn, ESTONIA Overview: Fault Simulation Overview about methods Low (gate) level methods Parallel fault simulation Deductive fault.
July 10, th VLSI Design and Test Symposium1 BIST / Test-Decompressor Design using Combinational Test Spectrum Nitin Yogi Vishwani D. Agrawal Auburn.
Hardware Testing and Designing for Testability
COUPING WITH THE INTERCONNECT
VLSI Testing Lecture 14: Built-In Self-Test
Definition Partial-scan architecture Historical background
Defect and High Level Fault Modeling in Digital Systems
ECE 553: TESTING AND TESTABLE DESIGN OF DIGITAL SYSTEMS
Overview: Fault Diagnosis
Sungho Kang Yonsei University
Design for Testability
Lecture 26 Logic BIST Architectures
Reseeding-based Test Set Embedding with Reduced Test Sequences
Test Data Compression for Scan-Based Testing
Presentation transcript:

Technical University Tallinn, ESTONIA Introduction: The Problem is Money? Cost of testing Quality Cost of quality Cost Cost of the fault 100% 0% Optimum test / quality How to succeed? Try too hard! How to fail? Try too hard! (From American Wisdom) Conclusion: “The problem of testing can only be contained not solved” T.Williams Test coverage function Time

Technical University Tallinn, ESTONIA Design for Testability The problem is - QUALITY: Quality policy Yield (Y) P,n Defect level (DL) P a n - number of defects m - number of faults tested P - probability of a defect P a - probability of accepting a bad product T - test coverage

Technical University Tallinn, ESTONIA Testability of Design Types General important relationships:  T (Sequential logic) < T (Combinational logic) Solutions: Scan-Path design strategy  T (Control logic) < T (Data path) Solutions: Data-Flow design, Scan-Path design strategies  T (Random logic) < T (Structured logic) Solutions: Bus-oriented design, Core-oriented design  T (Asynchronous design) < T (Synchronous design)

Technical University Tallinn, ESTONIA Testability Estimation Rules of Thumb Circuits less controllable Decoders Circuits with feedback Counters Clock generators Oscillators Self-timing circuits Self-resetting circuits Circuits less observable Circuits with feedback Embedded –RAMs –ROMs –PLAs Error-checking circuits Circuits with redundant nodes

CREDES Summer School © Raimund Ubar Fault Redundancy 1 & & & 1 1 0101 1010 0101 1 Hazard control circuit: Redundant AND-gate Fault  0 is not testable 1  0 0 Error control circuitry : Decoder   1 1 E = 1 if decoder is fault-free Fault  1 is not testable E= Hazard

Technical University Tallinn, ESTONIA Hard to Test Faults Evaluation of testability:  Controllability  C 0 (i)  C 1 (j)  Observability  O Y (k)  O Z (k)  Testability & & x Defect Probability of detecting 1/ & i k j Y Z Controllability for 1 needed

Technical University Tallinn, ESTONIA Probabilistic Testability Measures Controllability calculation: Value: minimum number of nodes that must be set in order to produce 0 or 1 For inputs: C 0 (i) = p(x i =0) C 1 (i) = p(x i =1) = 1 - p(x i =0) For other signals: recursive calculation rules: & xy & x1x1 y x2x2 1 x1x1 y x2x2 p y = p x1 p x2 p y = 1 - p x p y = 1 - (1 - p x1 )(1 - p x2 ) & x1x1 y xnxn... 1 x1x1 y xnxn

Technical University Tallinn, ESTONIA Calculation of Signal Probabilities Straightforward methods: & & & a c y & b Parker - McCluskey algorithm: p y = p c p 2 = (1- p a p b ) p 2 = = (1 – (1- p 1 p 2 ) (1- p 2 p 3 )) p 2 = = p 1 p p 2 2 p 3 - p 1 p 2 3 p 3 = = p 1 p 2 + p 2 p 3 - p 1 p 2 p 3 = 0,38 Calculation gate by gate: p a = 1 – p 1 p 2 = 0,75, p b = 0,75, p c = 0,4375, p y = 0,22 For all inputs: p k = 1/2

Technical University Tallinn, ESTONIA Probabilistic Testability Measures Parker-McCluskey: & & & a c y & b Observability: p(  y/  a = 1) = p b p 2 = = (1 - p 2 p 3 ) p 2 = p 2 - p 2 2 p 3 = p 2 - p 2 p 3 = 0,25 x Testability: p(a  1) = p(  y/  a = 1) (1 - p a ) = = (p 2 - p 2 p 3 )(p 1 p 2 ) = = p 1 p p 1 p 2 2 p 3 = = p 1 p 2 - p 1 p 2 p 3 = 0,125 For all inputs: p k = 1/2

Technical University Tallinn, ESTONIA Calculation of Signal Probabilities Idea: Complexity of exact calculation is reduced by using lower and higher bounds of probabilities Technique: Reconvergent fan-outs are cut except of one Probability range of [0,1] is assigned to all the cut lines The bounds are propagated by straightforward calculation Cutting method & & & & & & & a b c d e y Lower and higher bounds for the probabilities of the cut lines: p 71 := (0;1), p 72 := (0;1), p 73 := 0,75

Technical University Tallinn, ESTONIA Calculation of Signal Probabilities For all inputs: p k = 0,5 Reconvergent fan-outs are cut except of one – 7 1 and 7 2 Probability range of [0,1] is assigned to all the cut lines and 7 2 The bounds are propagated by straightforward calculation Cutting method & & & & & & & a b c d e y Calculation steps: 1/2 [0,1] [1/2,1] 3/4 1/2 5/8 [1/2,1] [1/2,3/4] [1/4,3/4] [34/64,54/64] Exact value: 41/64

Technical University Tallinn, ESTONIA Calculation of Signal Probabilities Method of conditional probabilities y x P(y) = p(y/x=0) p(x=0) + p(y/x=1) p(x=1) Probabilitiy for – y Conditions – x  set of conditions Conditional probabilitiy Idea of the method: Two conditional probabilities are calculated along the paths (NB! not bounds as in the case of the cutting method) Since no reconvergent fanouts are on the paths, no danger for signal correlations

Technical University Tallinn, ESTONIA Calculation of Signal Probabilities Method of conditional probabilities & & & & & & & a b c d e y y x NB! Probabilities P k = [P k * = p(x k /x 7 =0), P k ** = p(x k /x 7 =1)] are propagated, not bounds as in the cutting method. For all inputs: p k = 1/2 3/4 [1,1/2] [1/2,3/4] [1/2,5/8] [1/2,11/16] p y = p(y/x 7 =0)(1 - p 7 ) + p(y/x 7 =1)p 7 = (1/2 x 1/4) + (11/16 x 3/4) = 41/64 1/2

Technical University Tallinn, ESTONIA Ad Hoc Design for Testability Techniques Method of Test Points: Block 1Block 2 Block 1 is not observable, Block 2 is not controllable Block 1Block 2 1- controllability: CP = 0 - normal working mode CP = 1 - controlling Block 2 with signal 1 1 CP Improving controllability and observability: Block 1Block 2 0- controllability: CP = 1 - normal working mode CP = 0 - controlling Block 2 with signal 0 & CP OP

Technical University Tallinn, ESTONIA Ad Hoc Design for Testability Techniques Multiplexing monitor points: OUT n -1 x1x1 xnxn x2x2 MUX To reduce the number of output pins for observing monitor points, multiplexer can be used: 2 n observation points are replaced by a single output and n inputs to address a selected observation point Disadvantage: Only one observation point can be observed at a time Advantage: (n + 1) << 2 n Number of additional pins: (n + 1) Number of observable points: [2 n ]

Technical University Tallinn, ESTONIA Ad Hoc Design for Testability Techniques Multiplexing monitor points: OUT n -1 c MUX To reduce the number of output pins for observing monitor points, multiplexer can be used: To reduce the number of inputs, a counter (or a shift register) can be used to drive the address lines of the multiplexer Disadvantage: Only one observation point can be observed at a time Counter Advantage: 2 << 2 n Number of additional pins: 2 Nmber of observable points: [2 n ]

Technical University Tallinn, ESTONIA Ad Hoc Design for Testability Techniques Demultiplexer for implementing control points: n -1 DMUX To reduce the number of input pins for controlling testpoints, demultiplexer and a latch register can be used. Disadvantage: N clock times are required between test vectors to set up the proper control values x CP1 CP2 CPN x1x1 x2x2 xnxn Advantage: (n + 1) << N Number of additional pins: (n + 1) Number of control points: 2 n-1  N  2 n

Technical University Tallinn, ESTONIA Ad Hoc Design for Testability Techniques Demultiplexer for implementing control points: n -1 c DMUX To reduce the number of input pins for controlling testpoints, demultiplexer and a latch register can be used. To reduce the number of inputs for addressing, a counter (or a shift register) can be used to drive the address lines of the demultiplexer Counter x CP1 CP2 CPN Number of additional pins: 2 Number of control points: N Advantage: 2 << N Disadvantage: N clock times are required between test vectors to set up the proper control values

Technical University Tallinn, ESTONIA Time-sharing of outputs for monitoring To reduce the number of output pins for observing monitor points, time- sharing of working outputs can be introduced: no additional outputs are needed To reduce the number of inputs, again counter or shift register can be used if needed Original circuit MUX Number of additional pins: 1 Number of control points: N Advantage: 1 << N

Technical University Tallinn, ESTONIA Time-sharing of inputs for controlling 0 1 N DMUX CP1 CP2 CPN To reduce the number of input pins for controlling test points, time-sharing of working inputs can be introduced. To reduce the number of inputs for driving the address lines of demultiplexer, counter or shift register can be used if needed Normal input lines Number of additional pins: 1 Number of control points: N Advantage: 1 << N

Technical University Tallinn, ESTONIA Example: DFT with MUX-s and DMUX-s CP1 CP2 CP3 CP4 Given a circuit: - CP1 and CP2 are not controllable - CP3 and CP4 are not observable DFT task: Improve the testability by using a single control input, no additional inputs/outputs allowed

Technical University Tallinn, ESTONIA Example: DFT with MUX-s and DMUX-s CP1 CP2 CP3 CP Given a circuit: CP3 and CP4 are not observable  Improving the observability MUX T T 0 1 Mode Test Norm. MUX 0 1 Coding: Result: A single pin T is needed

Technical University Tallinn, ESTONIA Example: DFT with MUX-s and DMUX-s CP1 CP2 CP3 CP4 Given a circuit: CP1 and CP2 are not controllable  Improving the controllability MUX FF DMUX T Counter Decoder Q Mode Contr Test Norm. 10 DMUXMUX 11 0 x 01 Coding: Result: A single pin T is needed Q

Technical University Tallinn, ESTONIA Example: DFT with MUX-s and DMUX-s x3x3 y1y1 z3z3 z2z2 z1z1 F1F1 F2F2 F3F3 F4F4 z4z4 CP1 CP2 MUX1 FF DMUX Counter Decoder MUX CP1 CP2 CP4 3 MUX1 FF DMUX T Counter Decoder MUX Mode Contr Test 010 DMUX MUX x x Q Norm 010 MUX x x x2x2 x1x1 Obs Result: A single pin T is needed Q

Technical University Tallinn, ESTONIA Ad Hoc Design for Testability Techniques Redundancy should be avoided: If a redundant fault occurs, it may invalidate some test for nonredundant faults Redundant faults cause difficulty in calculating fault coverage Much test generation time can be spent in trying to generate a test for a redundant fault Redundancy intentionally added: To eliminate hazards in combinational circuits To achieve high reliability (using error detecting circuits) Logical redundancy: 1 & & & 1 1 0101 1010 0101 1 1 Hazard control circuitry: Redundant AND-gate Fault  0 not testable  0 0 T Additional control input added: T = 1 - normal working mode T = 0 - testing mode

Technical University Tallinn, ESTONIA Ad Hoc Design for Testability Techniques Fault redundancy: Error control circuitry: Decoder   1 1 E = 1 if decoder is fault-free Fault  1 not testable No error Testable error control circuitry: Decoder   1 1 Additional control input added: T  0 - normal working mode T = 1 - testing mode Error detected T

Technical University Tallinn, ESTONIA Scan-Path Design Combinational circuit IN OUT R Scan-IN Scan-OUT 1 & & q q Scan-IN T TD C Scan-OUT q’ The complexity of testing is a function of the number of feedback loops and their length The longer a feedback loop, the more clock cycles are needed to initialize and sensitize patterns Scan-register is a aregister with both shift and parallel-load capability T = 0 - normal working mode T = 1 - scan mode Normal mode : flip-flops are connected to the combinational circuit Test mode: flip-flops are disconnected from the combinational circuit and connected to each other to form a shift register

Technical University Tallinn, ESTONIA Scan-Path Design and Testability OUT MUX DMUX IN SCAN OUT SCAN IN Two possibilities for improving controllability/observability

Technical University Tallinn, ESTONIA Parallel Scan-Path Combinational circuit IN OUT R1R1 Scan-IN 1 Scan-OUT 1 R2R2 Scan-IN 2 Scan-OUT 2 In parallel scan path flip-flops can be organized in more than one scan chain Advantage: time  Disadvantage: # pins 

Technical University Tallinn, ESTONIA Partial Scan-Path Combinational circuit IN OUT R1R1 Scan-IN Scan-OUT R2R2 In partial scan instead of full-scan, it may be advantageous to scan only some of the flip-flops Example: counter – even bits joined in the scan-register

Technical University Tallinn, ESTONIA Partial Scan Path M 3 e + M 1 a * M 2 b   R 1 IN    c d y 1 y 2 y 3 y 4 Hierarhical test generation with Scan-Path: Control Part R 2 Bus Scan-In Scan-Out Data Part

Technical University Tallinn, ESTONIA Testing with Minimal DFT M 3 e + M 1 a * M 2 b   R 1 IN    c d y 1 y 2 y 3 y 4 Hierarhical test generation with Scan-Path: Control Part R 2 Bus Scan-In Scan-Out Data Part

Technical University Tallinn, ESTONIA Random Access Scan Combinational circuit IN OUT R q q’ & Scan-IN Scan-CL Scan-OUT DC X-Address Y-Address In random access scan each flip-flop in a logic network is selected individually by an address for control and observation of its state Example: Delay fault testing

Technical University Tallinn, ESTONIA Improving Testability by Inserting CPs OUT MUX DMUX IN SCAN OUT SCAN IN Two possibilities for improving controllability/observability

Technical University Tallinn, ESTONIA Built-In Self-Test Motivations for BIST: –Need for a cost-efficient testing (general motivation) –Doubts about the stuck-at fault model –Increasing difficulties with TPG (Test Pattern Generation) –Growing volume of test pattern data –Cost of ATE (Automatic Test Equipment) –Test application time –Gap between tester and UUT (Unit Under Test) speeds Drawbacks of BIST: –Additional pins and silicon area needed –Decreased reliability due to increased silicon area –Performance impact due to additional circuitry –Additional design time and cost

Technical University Tallinn, ESTONIA SoC BIST Optimization: - testing time  - memory cost  - power consumption  - hardware cost  - test quality 

Technical University Tallinn, ESTONIA General Architecture of BIST BIST components: –Test pattern generator (TPG) –Test response analyzer (TRA) TPG & TRA are usually implemented as linear feedback shift registers (LFSR) Two widespread schemes: –test-per-scan –test-per-clock

Technical University Tallinn, ESTONIA Built-In Self-Test Assumes existing scan architecture Drawback: –Long test application time Test per Scan: Initial test set: T1: 1100 T2: 1010 T3: 0101 T4: 1001 Test application: 1100 T 1010 T 0101T 1001 T Number of clocks = (4 x 4) + 4 = 20

Technical University Tallinn, ESTONIA Built-In Self-Test Test per Clock: Initial test set: T1: 1100 T2: 1010 T3: 0101 T4: 1001 Test application: Number of clocks = 8 < 20 Combinational Circuit Under Test Scan-Path Register T1T1 T4T4 T3T3 T2T2

Technical University Tallinn, ESTONIA Pattern Generation Pseudorandom test generation by LFSR: Using special LFSR registers –Test pattern generator –Signature analyzer Several proposals: –BILBO –CSTP Main characteristics of LFSR: –polynomial –initial state –test length

Technical University Tallinn, ESTONIA Pseudorandom Test Generation LFSR – Linear Feedback Shift Register: xx2x2 x3x3 x4x4 Polynomial: P(x) = x 4 + x Standard LFSR x3x3 x2x2 x4x4 x Modular LFSR

Technical University Tallinn, ESTONIA Pseudorandom Test Generation LFSR – Linear Feedback Shift Register: Polynomial: P(x) = x 4 + x x3x3 x2x2 x4x4 x Why modular LFSR is useful for BIST? UUT Test patterns Test responses

Technical University Tallinn, ESTONIA BILBO BIST Architecture Working modes: B1 B2 0 0Normal mode 0 1 Reset 1 0 Test mode 1 1 Scan mode Testing modes: CC1: LFSR 1 - TPG LFSR 2 - SA CC2:LFSR 2 - TPG LFSR 1 - SA LFSR 1 CC1 LFSR 2 CC2 B1 B2 B1 B2

Technical University Tallinn, ESTONIA Reconfiguration of the LFSR OR MUX Unit Under Test MUX B1 B2 TiTi T i+1 LFSR FEEDBACK & & & & Scan Test Reset Normal & Signature analyzer mode 4 working modes From T i-1 To T i+2

Technical University Tallinn, ESTONIA Pseudorandom Test Generation xx2x2 x3x3 x4x4 Polynomial: P(x) = x 4 + x X 4 (t + 1) X 3 (t + 1) X 2 (t + 1) X 1 (t + 1) 100h3100h3 010h2010h h1001h1 = X 4 (t) X 3 (t) X 2 (t) X 1 (t) txx2x2 x3x3 x4x4 txx2x2 x3x3 x4x

Technical University Tallinn, ESTONIA Irreducible polynomial – cannot be factored, is divisible only by itself Irreducible polynomial of degree n is characterized by: –An odd number of terms including 1 term –Divisibility into 1 + x k, where k = 2 n – 1 Any polynomial with all even exponents can be factored and hence is reducible An irreducible polynomial of degree n is primitive if it divides the polynomial 1+x k for k = 2 n – 1, but not for any smaller positive integer k Theory of LFSR: Primitive Polynomials Properties of Polynomials:

Technical University Tallinn, ESTONIA Theory of LFSR: Examples Polynomials of degree n=3 (examples): Primitive polynomials: The polynomials will divide evenly the polynomial x but not any one of k<7, hence, they are primitive They are also reciprocal: coefficients are 1011 and 1101 k = 2 n – 1= 2 3 – 1=7 Reducible polynomials (non-primitive): The polynomials don’t divide evenly the polynomial x Primitive polynomial

Technical University Tallinn, ESTONIA Theory of LFSR: Examples Is a primitive polynomial? Irreducible polynomial of degree n is characterized by: - An odd number of terms including 1 term? Yes, it includes 3 terms - Divisibility into 1 + x k, where k = 2 n – 1 No, there is remainder Divisibility check: is non-primitive?

Technical University Tallinn, ESTONIA Theory of LFSR: Examples Comparison of test sequences generated: Primitive polynomials Non-primitive polynomials

Technical University Tallinn, ESTONIA Theory of LFSR: Examples Primitive polynomial x 4 + x + 1 xx2x2 x3x3 x4x Zero generation: xx2x2 x3x3 x4x The code 0000 is missing

Technical University Tallinn, ESTONIA Other Problems with Pseudorandom Test Problem: low fault coverage The main motivations of using random patterns are: - low generation cost - high initial efeciency Counter Decoder & LFSR Reset If Reset = 1 signal has probability 0,5 then counter will not work and 1 for AND gate may never be produced 1

Technical University Tallinn, ESTONIA Sequential BIST A DFT technique of BIST for sequential circuits is proposed The approach proposed is based on all-branches coverage metrics which is known to be more powerful than all-statement coverage S4S4 S0S0 S1S1 S5S5 S2S2 S3S3 A = 1 A = 0 B = 0B = 1 S4S4 S0S0 S1S1 S5S5 S2S2 S3S3 A = 1 A = 0 B = 0B = 1 S4S4 S0S0 S1S1 S5S5 S2S2 S3S3 A = 1 A = 0 B = 0B = 1

Technical University Tallinn, ESTONIA Problems with BIST: Hard to Test Faults Problem: Low fault coverage The main motivations of using random patterns are: - low generation cost - high initial efeciency 1 2 n -1 Patterns from LFSR: Pseudorandom test window: Hard to test faults 1 2 n -1 Dream solution: Find LFSR such that: Hard to test faults

Technical University Tallinn, ESTONIA BIST: Weighted pseudorandom test & G PI 1 PI 2 Calculation of signal probabilities: For PI 1 : P = 0.15 For PI 2 and PI 3 : P = 0.6 For PI 4 - PI 6 : P = Probability of detecting the fault  1 at the input 3 of the gate G: 1) equal probabilities (p = 0.5): P = 0.5  ( )  = = 0.5  0.75  = = ) weighted probabilities: P = 0.85   (0.6   )   = = 0.85  0.84  0.22 = = 0.16  1 1 PI 3 PI 4 PI 5 PI 6

Technical University Tallinn, ESTONIA BIST: Weighted pseudorandom test Hardware implementation of weight generator LFSR && & MUX Weight select Desired weighted value Scan-IN 1/2 1/41/8 1/16

Technical University Tallinn, ESTONIA BIST: Signature Analysis = R(x) = x 3 + x P(x) G(x) Signature The division process can be mechanized using LFSR The divisor polynomial G(x) is defined by the feedback connections Shift creates x 5 which is replaced by x 5 = x 3 + x + 1 x1x1 x2x2 x3x3 x4x4 x5x5 IN: Shifted into LFSR x5x5 G(x) P(x) Compressor Response

Technical University Tallinn, ESTONIA BIST: Signature Analysis Aliasing: UUT Response SA L N L - test length N - number of stages in Signature Analyzer All possible responses All possible signatures Faulty response Correct response N << L

Technical University Tallinn, ESTONIA BIST: Signature Analysis Aliasing: UUT Response SA L N L - test length N - number of stages in Signature Analyzer - number of different possible responses No aliasing is possible for those strings with L - N leading zeros since they are represented by polynomials of degree N - 1 that are not divisible by characteristic polynomial of LFSR Probability of aliasing: - aliasing is possible XXXXX L N

Technical University Tallinn, ESTONIA BIST: Signature Analysis x2x2 x 1 x4x4 x3x3 Parallel Signature Analyzer: UUT x2x2 x 1 x4x4 x3x3 Multiple Input Signature Analyser (MISR) Single Input Signature Analyser

Technical University Tallinn, ESTONIA BIST: Signature Analysis Signature calculating for multiple outputs: LFSR - Test Pattern Generator Combinational circuit LFSR - Signature analyzer Multiplexer LFSR - Test Pattern Generator Combinational circuit LFSR - Signature analyzer Multiplexer

Technical University Tallinn, ESTONIA BIST: Joining TPG and SA 1 xx2x2 x3x3 x4x4 LFSR UUT Response string for Signature Analysis Test Pattern (when generating tests) Signature (when analyzing test responses) FF

Technical University Tallinn, ESTONIA Hybrid Built-In Self-Test Hybrid test set contains pseudorandom and deterministic vectors Pseudorandom test is improved by a stored test set which is specially generated to target the random resistant faults Optimization problem: Pseudorandom TestDeterm. Test Where should be this breakpoint? Deterministic patterns Pseudorandom patterns

Technical University Tallinn, ESTONIA Optimization of Hybrid BIST Cost of BIST: # faults # faults not detected (fast analysis) # tests needed (slow analysis) PR test length PR test length k # tests FAST estimation SLOW analysis C TOTAL =  k +  t(k)  t(k)  k k min C TOTAL Det. TestPseudorandom Test

Technical University Tallinn, ESTONIA Hybrid BIST with Reseeding Problem: low fault coverage  long PR test The motivation of using random patterns is: - low generation cost - high initial efeciency 1 2 n -1 Solution: many seeds: Pseudorandom test: Hard to test faults 1 2 n -1 Pseudorandom test:

Technical University Tallinn, ESTONIA Store-and-Generate Test Architecture ROM contains test patterns for hard-to-test faults Each pattern P k in ROM serves as an initial state of the LFSR for test pattern generation (TPG) - seeds Counter 1 counts the number of pseudorandom patterns generated starting from P k - width of the windows After finishing the cycle for Counter 2 is incremented for reading the next pattern P k+1 – beginning of the new window ROMTPG UUT ADR Counter 2Counter 1 RD CL Seeds Window Pseudorandom test windows Seeds # seeds

Technical University Tallinn, ESTONIA Reference  Go/NoGo Result UUT Signature Functional BIST Reference Signature  Go/NoGo UUT Test generator Reference Result  Go/NoGo UUT Traditional functional testing Normal operation Random BIST vs Functional BIST HW overhead Random test set Deterministic functional test set Random BIST HW overhead

Technical University Tallinn, ESTONIA Example: Functional BIST for Divider Register block Control ALU Signature analyser Functional test Data K Samples from N=120 cycles K*N Fault simulator Fault coverage Test patterns (samples) are produced on-line during the working mode DB=64 SB=105 Data compression: N*SB / DB = 197 Functional BIST quality analysis for K pairs of operands B1, B2

Technical University Tallinn, ESTONIA Hybrid Functional BIST for Divider Functional BIST implementation

Technical University Tallinn, ESTONIA Functional Self-Test with DFT Example: N-bit multiplier Register block ALU Signature analyser Data K N cycles T MUX F Improving controllability EXOR Improving observability

Technical University Tallinn, ESTONIA 4/20 BISD scheme: Test Pattern Generator (TPG) Circuit Under Diagnosis (CUD)... Output Response Analyser (ORA)... BISD Control Unit Pattern Signature Faults Test patterns May 11-14, th International Conference on Microelectronics, Niš, Serbia Diagnostic Points (DPs) – patterns that detect new faults Further minimization of DPs – as a tradeoff with diagnostic resolution Pseudorandom test sequence: Embedded BIST Based Fault Diagnosis

Technical University Tallinn, ESTONIA Built-In Fault Diagnosis Faulty signature 1. test2. test 3. test Faulty signature Correct signature Diagnosis procedure: Pseudorandom test sequence

Technical University Tallinn, ESTONIA Built-In Fault Diagnosis № All faults New faults Coverage % % % % % % % % % % Pseudorandom test fault simulation (detected faults) Binary search with bisectioning of test patterns Average number of test sessions: 3,3 Average number of clocks: 8,67 I = - p log 2 p – (1-p) log 2 (1-p) Measuring of information we get from the test: ERROR OK

Technical University Tallinn, ESTONIA Built-In Fault Diagnosis Test pattern generator CUD SA 1 SA 2 SA 3 Fault Diagnosis with multiple signatures (based on reasoning of spacial information): SA 1 SA 2 SA 3 D1D1 D2D2 D3D3 D4D4 D5D5 D6D6 D7D7

Technical University Tallinn, ESTONIA Test pattern generator CUD SA 1 SA 2 SA 3 Fault SA 1 SA 2 SA 3 D1D1 D2D2 D3D3 D4D4 D5D5 D6D6 D7D7 Faulty signature Correct signature Intersection using SA-s Intersection using tests Built-In Fault Diagnosis BIST with multiple signature analyzers Optimization of the interface between CUD and SA-s

Technical University Tallinn, ESTONIA Exam Tasks - 1 Testability measures: probability calculation 1.Calculation of the probability of a signal (7,8) 2.Comparison of probability calculation with Parker McCluskey and linear methods (7,8) 3.Calculation of the probabilistic testability of a fault (7,9) 4.Calculation of the length of pseudorandom test for detecting a fault (7,9) 5.Calculating of signal probabilities with Cutting Method (10,11) 6.Calculating of signal probabilities with the method of Conditional Probabilities (12,13)

Technical University Tallinn, ESTONIA Exam Tasks - 2 Design for testability: 1.Comparison of test lengths for detecting a fault with and without of DFT (test point insertion) (7,9,14,25) 2.Calculation of test lengths (number of LFSR clocks) for different ad hoc designs: multiplexing of observers, de-multiplexing of control, time sharing (15-20) 3.Comparison of test lengths (number of LFSR clocks) for ad hoc and scan-based DFT solutions (15-20, 28)

Technical University Tallinn, ESTONIA Exam Tasks - 3 Built-in Self-Test: 1.Calculation of the test sequence for a given LFSR polynomials (45,49) 2.Design of LFSR reconfiguration logic for given functions (43,44) 3.Determination if the LFSR polynomial is primitive or not (46,47,48) 4.Design a LFSR for a weighted pseudorandom testing with given probabilities (54,55)