Logic BIST. Sungho Kang Yonsei University

Similar documents
IHS 3: Test of Digital Systems R.Ubar, A. Jutman, H-D. Wuttke

Design for Testability

Design for Testability

UMBC. At the system level, DFT includes boundary scan and analog test bus. The DFT techniques discussed focus on improving testability of SAFs.

A New Multiple Weight Set Calculation Algorithm

Introduction to VLSI Testing

Outline - BIST. Why BIST? Memory BIST Logic BIST pattern generator & response analyzer Scan-based BIST architecture. K.T. Tim Cheng 08_bist, v1.

Built-In Self-Test. Outline

Overview. 4. Built in Self-Test. 1. Introduction 2. Testability measuring 3. Design for testability. Technical University Tallinn, ESTONIA

Department of Electrical and Computer Engineering University of Wisconsin Madison. Fall Final Examination

Test Pattern Generator for Built-in Self-Test using Spectral Methods

On Random Pattern Testability of Cryptographic VLSI Cores

ECE 512 Digital System Testing and Design for Testability. Model Solutions for Assignment #3

EECS150 - Digital Design Lecture 11 - Shifters & Counters. Register Summary

EECS150 - Digital Design Lecture 23 - FFs revisited, FIFOs, ECCs, LSFRs. Cross-coupled NOR gates

ECEN 248: INTRODUCTION TO DIGITAL SYSTEMS DESIGN. Week 9 Dr. Srinivas Shakkottai Dept. of Electrical and Computer Engineering

ECE 3060 VLSI and Advanced Digital Design. Testing

Outline. EECS Components and Design Techniques for Digital Systems. Lec 18 Error Coding. In the real world. Our beautiful digital world.

EECS 579: Logic and Fault Simulation. Simulation

Built-In Test Generation for Synchronous Sequential Circuits

Outline Fault Simulation

Design of Sequential Circuits

Chapter 4. Sequential Logic Circuits

Analysis of clocked sequential networks

Boolean Algebra and Digital Logic 2009, University of Colombo School of Computing

EECS150 - Digital Design Lecture 21 - Design Blocks

EECS150 - Digital Design Lecture 26 Error Correction Codes, Linear Feedback Shift Registers (LFSRs)

Sample Test Paper - I

EECS150 - Digital Design Lecture 23 - FSMs & Counters

( c) Give logic symbol, Truth table and circuit diagram for a clocked SR flip-flop. A combinational circuit is defined by the function

Sequential Logic Circuits

EEE2135 Digital Logic Design

EE40 Lec 15. Logic Synthesis and Sequential Logic Circuits

ELEC Digital Logic Circuits Fall 2014 Sequential Circuits (Chapter 6) Finite State Machines (Ch. 7-10)

Relating Entropy Theory to Test Data Compression

LOGIC CIRCUITS. Basic Experiment and Design of Electronics

EECS150 - Digital Design Lecture 16 Counters. Announcements

DIGITAL LOGIC CIRCUITS

SIGNATURE ROLLBACK WITH EXTREME COMPACTION A TECHNIQUE FOR TESTING ROBUST VLSI CIRCUITS WITH REDUCED HARDWARE OVERHEAD

VLSI Design Verification and Test Simulation CMPE 646. Specification. Design(netlist) True-value Simulator

EECS150 - Digital Design Lecture 25 Shifters and Counters. Recap

Testability. Shaahin Hessabi. Sharif University of Technology. Adapted from the presentation prepared by book authors.

EECS 579: Test Generation 4. Test Generation System

Programmable Logic Devices II

EECS150 - Digital Design Lecture 26 - Faults and Error Correction. Types of Faults in Digital Designs

EECS Components and Design Techniques for Digital Systems. FSMs 9/11/2007

DHANALAKSHMI COLLEGE OF ENGINEERING, CHENNAI DEPARTMENT OF COMPUTER SCIENCE AND ENGINEERING CS6201 DIGITAL PRINCIPLES AND SYSTEM DESIGN

LOGIC CIRCUITS. Basic Experiment and Design of Electronics. Ho Kyung Kim, Ph.D.

Review: Designing with FSM. EECS Components and Design Techniques for Digital Systems. Lec 09 Counters Outline.

Chapter 5. Digital Design and Computer Architecture, 2 nd Edition. David Money Harris and Sarah L. Harris. Chapter 5 <1>

Arithme(c logic units and memory

Digital Signal 2 N Most Significant Bit (MSB) Least. Bit (LSB)

Hardware testing and design for testability. EE 3610 Digital Systems

COE 202: Digital Logic Design Sequential Circuits Part 4. Dr. Ahmad Almulhem ahmadsm AT kfupm Phone: Office:

CprE 281: Digital Logic

One-Dimensional Linear Hybrid Cellular Automata: Their Synthesis, Properties and Applications to Digital Circuits Testing

Digital Electronics Circuits 2017

Lecture 7: Logic design. Combinational logic circuits

Digital Electronic Meters

Combinational Logic Design Combinational Functions and Circuits

EECS150 - Digital Design Lecture 18 - Counters

EECS150 - Digital Design Lecture 18 - Counters

Shift Register Counters

Department of Electrical & Electronics EE-333 DIGITAL SYSTEMS

Latches. October 13, 2003 Latches 1

Digital Logic: Boolean Algebra and Gates. Textbook Chapter 3

Linear Feedback Shift Registers (LFSRs) 4-bit LFSR

Chapter 7. Sequential Circuits Registers, Counters, RAM

PGT104 Digital Electronics. PGT104 Digital Electronics

DE58/DC58 LOGIC DESIGN DEC 2014

Models for representing sequential circuits

Logic. Combinational. inputs. outputs. the result. system can

ELCT201: DIGITAL LOGIC DESIGN

VLSI Design I. Defect Mechanisms and Fault Models

SIR C.R.REDDY COLLEGE OF ENGINEERING ELURU DIGITAL INTEGRATED CIRCUITS (DIC) LABORATORY MANUAL III / IV B.E. (ECE) : I - SEMESTER

WITH increasing complexity in systems design from increased

Vidyalankar S.E. Sem. III [CMPN] Digital Logic Design and Analysis Prelim Question Paper Solution

課程名稱 : 數位邏輯設計 P-1/ /6/11

Review: Designing with FSM. EECS Components and Design Techniques for Digital Systems. Lec09 Counters Outline.

S.Y. Diploma : Sem. III [DE/ED/EI/EJ/EN/ET/EV/EX/IC/IE/IS/IU/MU] Principles of Digital Techniques

Adders allow computers to add numbers 2-bit ripple-carry adder

Sequential Logic. Rab Nawaz Khan Jadoon DCS. Lecturer COMSATS Lahore Pakistan. Department of Computer Science

The Design Procedure. Output Equation Determination - Derive output equations from the state table

Philadelphia University Student Name: Student Number:

WORKBOOK. Try Yourself Questions. Electrical Engineering Digital Electronics. Detailed Explanations of

Digital Logic Appendix A

EECS150 - Digital Design Lecture 26 Faults and Error Correction. Recap

MOSIS REPORT. Spring MOSIS Report 1. MOSIS Report 2. MOSIS Report 3

MODEL ANSWER SUMMER 17 EXAMINATION Subject Title: Principles of Digital Techniques

VLSI System Testing. Testability Measures

Introduction EE 224: INTRODUCTION TO DIGITAL CIRCUITS & COMPUTER DESIGN. Lecture 6: Sequential Logic 3 Registers & Counters 5/9/2010

Binary Decision Diagrams

Chapter 2. Review of Digital Systems Design

MAHARASHTRA STATE BOARD OF TECHNICAL EDUCATION (Autonomous) (ISO/IEC Certified) State any two Boolean laws. (Any 2 laws 1 mark each)

EECS150 - Digital Design Lecture 17 - Sequential Circuits 3 (Counters)

CS61C : Machine Structures

ALU A functional unit

EECS Components and Design Techniques for Digital Systems. Lec 26 CRCs, LFSRs (and a little power)

ECE 407 Computer Aided Design for Electronic Systems. Simulation. Instructor: Maria K. Michael. Overview

PARITY BASED FAULT DETECTION TECHNIQUES FOR S-BOX/ INV S-BOX ADVANCED ENCRYPTION SYSTEM

Transcription:

Logic BIST Sungho Kang Yonsei University

Outline Introduction Basics Issues Weighted Random Pattern Generation BIST Architectures Deterministic BIST Conclusion 2

Built In Self Test Test/ Normal Input Pattern Generation (random pattern) BIST Controller Output Response Monitor Output MUX Circuit under Test Test patterns are generated on-chip Responses to the test patterns are also evaluated on chip External operations are required only to initialize the built-in tests and to check the test results (go/no-go) 3

Constraints of BIST Initial design investment Area overhead Pin overhead Performance overhead Fault coverage Aliasing problem 4

Test Pattern Generation Stored Pattern Exhaustive Pattern Pseudo Exhaustive Pattern Pseudo Random Pattern Weighted Random Pattern 5

Combinational Circuit Classification Partial Dependence Circuit (PDC) No output depends on all inputs Exhaustive test if possible Else output verification test Else segment verification Full Dependence Circuit (FDC) Some output depends on all inputs Exhaustive test if possible Else segment verification 6

PDC Example Example circuit a b c d e f g C* f 1 (a,b,e) f 2 (b,c,g) f 3 (a,d,e) f 4 (c,d,e) f 5 (e,f) Dependency matrix Dij = 1 if output I depends on input j ; otherwise Dij=0 D = a b c d e f g 1 1 0 0 1 0 0 f 1 0 1 1 0 0 0 1 f 2 1 0 0 1 1 0 0 f 3 0 0 1 1 1 0 0 f 4 0 0 0 0 1 1 0 f 5 7

PDC Example Reordering and grouping the inputs produce the following modified matrix Group D g = a c b d e f 1 0 1 0 1 0 0 1 1 0 0 0 1 0 0 1 1 0 0 1 0 1 1 0 0 0 0 0 1 1 g 0 1 0 0 0 f 1 f 2 f 3 f 4 f 5 8

PDC Example In each group there must be less than two 1s in each row and the number of groups should be minimal This insures that no output is driven by more than one input from each group Finding such a partition is NP-complete ORing each row within a group to form a single column D c = 1 1 1 1 0 1 1 0 f 1 1 1 0 1 1 0 f 2 f 3 1 1 0 f 4 0 1 1 f 5 9

PDC Example p=4 and w=3 odd parity A B C D 0 0 0 1 0 0 1 0 0 1 0 0 1 0 0 0 0 1 1 1 1 0 1 1 1 1 0 1 1 1 1 0 Pseudo exhaustive test set consists of 8 patterns instead of 128 Among 4 groups, 8 patterns using any 3 inputs are necessary 10

Segment Verification Segmentation testing via path sensitization Sensitized path is established from C to F Use 2 n1 +2 n2 patterns instead of 2 n1+n2 patterns A n1 C 1 C F B n2 C 2 D 11

Linear Feedback Shift Register The state of shift register depends only on the prior state D Q Next State Current State c 1 c 1 c 2 c n-1 D Q D Q D Q Q 1 Q 2 Q 3 Q n a -1 a -2 a -n+1 a -n a m a m-1 a m-2 a m-n+1 a m-n c n = 1 c n = 1 c 1 c c 2 n-1 D Q D Q Q 1 Q 2 Q 3 Q n D Q D Q Current State a m-1 a m-2 a m-n 12

Linear Feedback Shift Register Pseudo Random Pattern Generation Characteristic Polynomial : 1+x 2 +x 3 Initial condition (1,0,0) : x Q1 : x / (1+x 2 +x 3 ) Q2 : x 2 / (1+x 2 +x 3 ) Q3 : x 3 / (1+x 2 +x 3 ) 13

LFSR : 1+x 2 +x 3 When initial state is 100 Q1 Q2 Q3 1 0 0 0 1 0 1 0 1 1 1 0 1 1 1 0 1 1 0 0 1 1 0 0 0 1 0 1 0 1 14

Linear Feedback Shift Register When initial state is 000 Q1 Q2 Q3 0 0 0 0 0 0 15

Weighed Random Patterns All patterns not equally likely Pseudo random test patterns are inefficient when random-pattern-resistant faults exist. Make Prob[1] Prob[0] at pattern sources Random resistant faults Consider a 32 input AND and output s-a-1 fault The output s-a-0 is detected when all inputs are 1 When pseudo random testing is used, the detection probability is 1/2 32 L F S n Weight Computation Circuit m Circuit under Test R 16

Weight Generation Methods Structural analysis Small number of patterns and weight sets Easy implementation Poor fault coverage Deterministic test sets All non-redundant faults can be detected A high number of random patterns and weights Large hardware overhead Combined both methods 17

Multiple Weight Sets Consider AND output s-a-1 and OR output s-a-0 If the same weights are applied, one of two faults are hard to detect. Necessary to have 2 different weight sets (1/2 32, 1-1/ 2 32 ) (1-1/ 2 32, 1/ 2 32 ) The efficiency of multiple weight set is determined by both the number of weight sets (r), and the total number of random test patterns to be applied (N). The goal of weight generation is to reduce both r and N I1 I2 I3 I4 AND OR 18

Multiple Weight Sets Single weight set Advantage Small hardware overhead Disadvantages Low fault coverage Long test pattern length Multiple weight sets Advantages High fault coverage Short test pattern length Disadvantages Large hardware overhead 19

Response Analysis Signature : output of the compactor Aliasing A faulty circuit produces a signature that is identical to the signature of a fault free circuit Input Test Sequence T Circuit Under Test (CUT) Output Response Sequence R' Data Compression Unit Signature S(R') Correct Signature S(R 0 ) Comparator Error Indicator 20

Signature Analysis Initial Value : 000 Good Good Faulty Faulty Patterns Responses Patterns Responses Z1 Z2 Z3 Q1 Q2 Q3 Z1 Z2 Z3 Q1 Q2 Q3 1 1 0 1 1 0 1 1 0 1 1 0 0 1 0 1 0 1 0 1 1 0 1 1 21

Aliasing Initial Value : 000 Good Good Faulty Faulty Patterns Responses Patterns Responses Z1 Z2 Z3 Q1 Q2 Q3 Z1 Z2 Z3 Q1 Q2 Q3 1 1 0 1 1 0 1 0 0 0 1 1 0 1 0 1 0 1 0 1 1 1 0 1 22

MISR Normally, a single input signature analyzer is not used due to testing overhead Aliasing Probability : 1/2 n All error patterns are equally likely D 1 D 2 D 3 D n D Q D Q D Q D Q D 1 c n c n-1 c n-2 c 1 23

Test-per-Clock Test patterns are applied to CUT every clock cycle Additional logic and delay are required between the input FF and CUT BILBO like type: Cannot perform compression and pattern generation concurrently Entire test is scheduled and divided into sessions Complex test control unit is required 24

Test-per-Scan LFSR is used to serially shift in a sequence of bits into the scan chain No additional logic is inserted between the scan FF and CUT Testing time is increased considerably for long scan chain STUMP like type : Control unit does not need to distinguish between different test sessions It must count the patterns and bits 25

STUMPS S i P R P G S o External logic PIs Scan path Scan path CUT (S) Scan path POs External logic S i ' M I S R S o ' Self Testing Using MISR and Parallel SRSG Centralized and separate BIST Multiple scan paths Reduction in test time Lower overhead than BILBO but takes longer to apply 26

BILBO(Built-In Logic Block Observer) B1 B2 Mode 1 1 Normal Mode 0 1 Reset 0 0 Shift Register 1 0 Signature Analyzer Z 1 Z 2 Z n B 1 B 2 S i 0 1 M U X D Q Q D Q Q D Q Q D Q Q S 0 Q 1 Q 2 Q n-1 Q n 27

BILBO To test A R1 : RPG R2 : Signature Analyzer To test B R2 : RPG R1 : Signature Analyzer Register 1 Combinational Circuit A Register 2 Combinational Circuit B 28

Test Schedule Test session An assignment of test modes to BILBO registers to test one or more blocks Test scheduling problem Determine the minimal number of test sessions required to test all blocks of combinational logic Determine the minimal colors that can be assigned to the nodes of a graph such that no edge connects two nodes of the same color More complex when the test time for each block is considered 29

Phase Shift BIST L F S R Primary Inputs P S to C.P.'s Nearly Acyclic Circuit from O.P.'s S C s Primary Outputs M I S R Test Pattern Generator Circuit Under Test Output Data Compactor C.P.'s : Control Points O.P.'s : Observation Points 30

Multiple Seed LFSR Method of Encoding deterministic pattern to each seed Each seed is an encoded deterministic pattern Long LFSRs may be required for circuits with a large number of specified bits in each pattern Methods of Calculating BIST Seeds Using hard fault identification and ordering Deterministic test cube compression : Iterative merging compatible cubes Fast simulation based procedure Seed ROM Seed0 Seed1 Seed2 LFSR v v v v Test clock BIST Controller CUT MISR 31

Non-LFSR PRPG Johnson counter(twisted-ring Counter) TRC is designed by adding a MUX and an inverter to the serial input of the scan register If TRC s length n is a power of 2, then for any initial state, the TRC will always cycle through 2n distinct states To generate various patterns, reseeding method is adopted Can apply both test-per-clock and scan-bist architectures ROM counter ROM 00 10 4-1 11 MUX 00 SCAN enable Input scan register Enable 0 1 1 CUT Log 2 n bit binary counter k 2bit binary counter Response analyzer 32

Bit Fixing/Bit Flipping Most of these methods are applied to test-per-scan architecture Bit fixing experiment results High fault coverage with practical test application time Since the number of bits required to be fixed is often high, the combinational logic overhead required may be substantial Bit flipping experiment results Mapping logic generally requires lower overhead Overall pattern generation overhead can still be high because of the large external LFSR t 0 t 1... t L-1 s 0 s 1... s n-1... Bit Flipping Circuit Scan chain Sequential CUT Signature Analyzer 33

Embedding Deterministic Patterns Only scan-bist Modify the random sequence at a few bit positions Complete fault coverage Generated patterns depends on the state of the test control unit LFSR can be very small Area overhead is smaller than that of the 32-bit LFSR for ISCAS85 and ISCAS89 benchmark circuits Automatic synthesis procedure is possible Pattern counter p 0 p 1... BIST Control b 0 b 1... Bit counter Scan chain Short LFSR s 0 s 1... s n-1... Sequence Modifying Circuit Sequential CUT Signature Analyzer 34

BIST Using Core Functions Hardware overhead low and no performance degrading Processor emulates an LFSR base pseudo random test first, and after that it emulates the reseeding scheme Most of accumulator based pattern generation by simple adders, subtractors, or MAC circuits All of them generate pseudo random, or pseudo exhaustive patterns with a similar quality as LFSRs do Only one accumulator based deterministic BIST In adder based accumulator based structure, deterministic pattern generated by reseeding scheme Test response compaction Aliasing probabilities same as that of LFSR based signature analysis Method of core functions randomizing 35

LT-RTPG Low transition Possible decrease in fault coverage due to low toggle probability Use non-adjacent inputs for neighboring positions on the scan chain No decrease in fault coverage Good for a circuit with a large number of primary and state inputs k T FF S in Scan Chain m S out LFSR CUT r LT-RTPG 36

BIST Issues Test point insertion is necessary for many circuits Suppressing X generators Non-scan FF, Memory, Combinational loop, Undriven PIs, Bus contention, Violation on a wire gate Bounding X generators and making detour through space compactors On-line BIST for intermittent faults and transient faults Two-pattern generator and compactor for delay faults Hardware sharing between MBIST and LBIST Multiphase-clock, multi-clock generation Design specific BIST Pattern generator compatible with both test-per-clock and test-per-scan architecture BIST supporting partial scanned circuits 37

Conclusion In BIST, the test pattern generation and the output response evaluation are done on chip Requirements of a BIST scheme Easy implementation Small area overhead High fault coverage 38