Introduction to VLSI Testing

Similar documents
Design for Testability

Design for Testability

Fault Modeling. 李昆忠 Kuen-Jong Lee. Dept. of Electrical Engineering National Cheng-Kung University Tainan, Taiwan. VLSI Testing Class

Hardware testing and design for testability. EE 3610 Digital Systems

ECE 3060 VLSI and Advanced Digital Design. Testing

Logic BIST. Sungho Kang Yonsei University

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

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

Single Stuck-At Fault Model Other Fault Models Redundancy and Untestable Faults Fault Equivalence and Fault Dominance Method of Boolean Difference

EECS 579: Logic and Fault Simulation. Simulation

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

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

Outline Fault Simulation

S No. Questions Bloom s Taxonomy Level UNIT-I

Delay Testing from the Ivory Tower to Tools in the Workshop

Chapter 2 Fault Modeling

VLSI Physical Design Prof. Indranil Sengupta Department of Computer Science and Engineering Indian Institute of Technology, Kharagpur

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

T st Cost Reduction LG Electronics Lee Y, ong LG Electronics 2009

Fault Modeling. Fault Modeling Outline

ESE 570: Digital Integrated Circuits and VLSI Fundamentals

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

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

Built-In Self-Test. Outline

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

VLSI Design I. Defect Mechanisms and Fault Models

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

Lecture 5 Fault Modeling

Department of Electrical and Computer Engineering University of Wisconsin Madison. Fall Midterm Examination CLOSED BOOK

EECS 579: SOC Testing

Advanced Testing. EE5375 ADD II Prof. MacDonald

Predicting IC Defect Level using Diagnosis

LOGIC CIRCUITS. Basic Experiment and Design of Electronics

Design for Manufacturability and Power Estimation. Physical issues verification (DSM)

Reduction of Detected Acceptable Faults for Yield Improvement via Error-Tolerance

A New Multiple Weight Set Calculation Algorithm

KINGS COLLEGE OF ENGINEERING DEPARTMENT OF ELECTRONICS AND COMMUNICATION ENGINEERING QUESTION BANK

ALU A functional unit

Contributions to the Evaluation of Ensembles of Combinational Logic Gates

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

ECE-470 Digital Design II Memory Test. Memory Cells Per Chip. Failure Mechanisms. Motivation. Test Time in Seconds (Memory Size: n Bits) Fault Types

Department of Electrical and Computer Engineering University of Wisconsin Madison. Fall Midterm Examination CLOSED BOOK

ECE/CS 250: Computer Architecture. Basics of Logic Design: Boolean Algebra, Logic Gates. Benjamin Lee

Testability Measures controllability observability Controllability Observability

ECE 250 / CPS 250 Computer Architecture. Basics of Logic Design Boolean Algebra, Logic Gates

Stop Watch (System Controller Approach)

ESE 570: Digital Integrated Circuits and VLSI Fundamentals

Section 3: Combinational Logic Design. Department of Electrical Engineering, University of Waterloo. Combinational Logic

ECE 1767 University of Toronto

Models for representing sequential circuits

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

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

Lecture 8: Sequential Networks and Finite State Machines

CS311 Lecture: Introduction to Digital Logic

ECE/CS 250 Computer Architecture

Solutions for Appendix C Exercises

CS470: Computer Architecture. AMD Quad Core

CPS311 Lecture: Introduction to Digital Logic

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

On Application of Output Masking to Undetectable Faults in Synchronous Sequential Circuits with Design-for-Testability Logic

Non-Invasive Pre-Bond TSV Test Using Ring Oscillators and Multiple Voltage Levels

CPE100: Digital Logic Design I

CSE370: Introduction to Digital Design

CMP 338: Third Class

ECE321 Electronics I

For smaller NRE cost For faster time to market For smaller high-volume manufacturing cost For higher performance

(Boolean Algebra, combinational circuits) (Binary Codes and -arithmetics)

EGFC: AN EXACT GLOBAL FAULT COLLAPSING TOOL FOR COMBINATIONAL CIRCUITS

FAULT MODELING. Chapter Defects, Errors, and Faults

Adders, subtractors comparators, multipliers and other ALU elements

STRUCTURAL test offers several advantages over functional

Enrico Nardelli Logic Circuits and Computer Architecture

VLSI Design. [Adapted from Rabaey s Digital Integrated Circuits, 2002, J. Rabaey et al.] ECE 4121 VLSI DEsign.1

DIGITAL LOGIC CIRCUITS

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

Integrated Circuits & Systems

per chip (approx) 1 SSI (Small Scale Integration) Up to 99

The Linear-Feedback Shift Register

UNIT 8A Computer Circuitry: Layers of Abstraction. Boolean Logic & Truth Tables

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

Chapter 7. VLSI System Components

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

Adders, subtractors comparators, multipliers and other ALU elements

Appendix B. Review of Digital Logic. Baback Izadi Division of Engineering Programs

EE115C Winter 2017 Digital Electronic Circuits. Lecture 19: Timing Analysis


Solution (a) We can draw Karnaugh maps for NS1, NS0 and OUT:

EECS150 - Digital Design Lecture 18 - Counters

EECS150 - Digital Design Lecture 18 - Counters

EEE2135 Digital Logic Design

Fault Tolerant Computing CS 530 Fault Modeling. Yashwant K. Malaiya Colorado State University

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

Clock signal in digital circuit is responsible for synchronizing the transfer to the data between processing elements.

Computer Science. 19. Combinational Circuits. Computer Science COMPUTER SCIENCE. Section 6.1.

CPS311 Lecture: Introduction to Combinatorial Logic

ESE 570: Digital Integrated Circuits and VLSI Fundamentals

Chapter 6 Testability Analysis

CMPEN 411 VLSI Digital Circuits Spring Lecture 19: Adder Design

Memory, Latches, & Registers

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

Transcription:

Introduction to 李昆忠 Kuen-Jong Lee Dept. of Electrical Engineering National Cheng-Kung University Tainan, Taiwan Class

Problems to Think How are you going to test A 32 bit adder A 32 bit counter A 32Mb cache memory A 10 7 -transistor CPU A 10 9 -transistor SOC Introduction.2

OUTLINE Introduction Fault modeling Fault simulation Test generation Automatic test pattern generation (ATPG) Design for testability Built-in self test Synthesis for testability An eample Introduction.3

Basic Concept of Testing Testing: To tell whether a circuit is good or bad VDD 0 0 0 0 0 0/1 Related fields Verification: To verify the correctness of a design Diagnosis: To tell the faulty site Reliability: To tell whether a good system will work correctly or not after some time. Debug: To find the faulty site and try to eliminate the fault Introduction.4

Why Studying Testing? Economics! Reduce test cost (enhance profit) Automatic test equipment (ATE) is etremely epensive Shorten time-to-market Market dominating or sharing Guarantee IC quality and reliability Rule of Ten: Cost to detect faulty IC increases by an order of magnitude Defects detected in Cost Wafer 0.01 0.1 Packaged chip 0.1 1 Board 1 10 System 10 100 Field 100 1000 Introduction.5

Principle of Testing Input Patterns -1011 11-00 -0-1- 01--0 0-101 Stored Correct Response Circuit under Test (CUT) Comparator Output Response 1-001 0011- -1101 1001-01-11 Test Result Testing typically consists of Applying set of test stimuli (input patterns, test vectors) to inputs of circuit under test (CUT), and Analyzing output responses The quality of the tested circuits will depend upon the thoroughness of the test vectors Introduction.6

Importance of testing N = # transistors in a chip p = prob. (a transistor is faulty) Pf = prob. (the chip is faulty) Pf = 1- (1- p) N If p = 10-6 N = 10 6 Pf = 63.2% Introduction.7

Introduction Integrated Circuits (ICs) have grown in size and compleity since the late 1950 s Small Scale Integration (SSI) Medium Scale Integration (MSI) Large Scale Integration (LSI) Very Large Scale Integration (VLSI) Moore s Law: scale of ICs doubles every 18 months Growing size and compleity poses many and new testing challenges S S I M S I LSI VLSI Introduction.8

Importance of Testing Moore s Law results from decreasing feature size (dimensions) from 10s of m to 10s of nm for transistors and interconnecting wires Operating frequencies have increased from 100KHz to several GHz Decreasing feature size increases probability of defects during manufacturing process A single faulty transistor or wire results in faulty IC Testing required to guarantee fault-free products Introduction.9

Difficulties in Testing Fault may occur anytime - Design - Process - Package - Field Fault may occur at any place Vdd VLSI circuit are large - Most problems encountered in testing are NP-complete I/O access is limited Vss Introduction.10

How to do testing From designer s point of view: Circuit modeling Fault modeling Modeling Logic simulation Fault simulation Test generation Design for test Built-in self test ATPG Testable design Synthesis for testability Introduction.11

Circuit Modeling Functional model--- logic function - f(1,2,...)=... - Truth table Behavioral model--- functional + timing - f(1,2,...)=..., Delay = 10 Structural model--- collection of interconnected components or elements A B E 1 0 G C D 1 0 F 0 Introduction.12

Levels of Structural Description Circuit level C Switch level VDD VDD VDD C 4 B C 3 C 1 C 2 E Gate level A E B G Higher/ System level C D F Introduction.13

Fault Modeling The effects of physical defects Most commonly used fault model: Single stuck-at fault A B C D E F G A s-a-1 A s-a-0 E s-a-1 E s-a-0 B s-a-1 B s-a-0 F s-a-1 F s-a-0 C s-a-1 C s-a-0 G s-a-1 G s-a-0 14 faults D s-a-1 D s-a-0 Other fault models: - Break faults, Bridging faults, Transistor stuck-open faults, Transistor stuck-on faults, Delay faults Introduction.14

Fault Coverage (FC) FC = # faults detected # faults in fault list Eample: a b 10 10 c 10 6 stuck-at faults ( a 0,a 1,b 0,b 1,c 0,c 1 ) Test faults detected FC {(0,0)} {(0,1)} {(1,1)} {(0,0),(1,1)} {(1,0),(0,1),(1,1)} c 1 a 1,c 1 a 0,b 0,c 0 a 0,b 0,c 0,c 1 all 16.67% 33.33% 50.00% 66.67% 100.00% Introduction.15

Wafer Yield (Chip Yield, Yield) Good Chip Faulty Chip Defects Wafer Wafer yield = 12/22 = 0.55 Wafer yield = 17/22 = 0.77 Introduction.16

Testing and Quality IC Fabrication Yield: Fraction of good parts Testing Rejects Shipped Parts Quality: Defective parts per million (DPM) Quality of shipped parts is a function of yield Y and the test (fault) coverage T Defect level (DL, reject rate in tetbook): fraction of shipped parts that are defective Introduction.17

Defect Level, Yield & Fault Coverage ~ DL = 1 - Y (1-T) DL: defect level Y: yield T: fault coverage Yield (Y) 50% 75% 90% 95% 99% 90% 90% 90% 90% Fault Coverage (T) 90% 90% 90% 90% 90% 90% 95% 99% 99.9% DPM (DL) 67,000 28,000 10,000 5,000 1,000 10,000 5,000 1,000 100 Introduction.18

Logic simulation To determine how a good circuit should work 1 Given input vectors, determine the normal circuit response A I C A B C E D F B E G C F C C C C 2 I R B R B I C F D C JE E D H E Introduction.19

Fault simulation To determine the behavior of faulty circuits A 1 0 B 0 C 0 D E s.a.0 1/0 F 1 1/0 G Given a test vector, determine all faults that are detected by this test vector. Eample: A B 1 1 0 C Test vector (1 1) detects { a 0, b 0, c 1 } Introduction.20

Test generation Given a fault, identify a test to detect this fault Eample: A B C 1 1 0 0 1/0 To detect D s-a-0, D must be set to 1. Thus A=B=1. To propagate fault effect to the primary output E must be 1. Thus C must be 0. Test vector: A=1, B=1, C=0 1 E D 1/0 F Introduction.21

Automatic Test Pattern Generation ATPG: Given a circuit, identify a set of test vectors to detect all faults under consideration. Input circuit Form fault list More faults? Yes No Eit Fault dropping Select a fault Test generation Fault simulation Introduction.22

Difficulties in Test Generation 1. Reconvergent fanout A B C 0 1 1 0 0/1 s-a-1 1 0 E D Cannot detect the fault 1 0/1 F Fault detected Introduction.23

Difficulties in Test Generation (cont.) 2. Sequential test generation PIs Combinational part POs Y Y J K CK clk Introduction.24

Testable Design Design for testability (DFT) ad hoc techniques Scan design Boundary Scan Built-In Self Test (BIST) Random number generator (RNG) Signature Analyzer (SA) Synthesis for Testability Introduction.25

Eample of ad hoc Techniques Insert test points MUX T/N Introduction.26

Scan Design Original design Modified design PIs POs PIs POs Combinational logic Combinational logic FF FF SFF SFF SO FF Introduction.27 T/N SI SFF

Scan Cell Design DI D CK Q Q DI SI N/T (SE) D CK Q Q,SO DI Q DI Q,SO F F SI F Most cell libraries now have scan cells! F T F + F T Introduction.28

Scan Register Combinational Circuits Q D Q D Q D Q D SO SI SI SI SI SE CLK Introduction.29

Boundary Scan I/O Pad Boundary scan cell Boundary scan path TRST* TDI Sout APPLICATION LOGIC TMS Misc. registers TCK TDO T A P M U X Instruction register Bypass register Sin BIST register Scan register TRST*:Test rest (Optional) TDI: Test data input TD0: Test data output TCK: Test clock TMS: Test mode select Introduction.30

Boundary Scan (Cont.) TRST* TRST* TDI Sout APPLICATION LOGIC TDI Sout APPLICATION LOGIC Misc. registers Misc. registers TMS TCK TDO T A P M U X Instruction register Bypass register Sin BIST register Scan register TMS TCK TDO T A P M U X Instruction register Bypass register Sin BIST register Scan register TRST* TRST* TDI Misc. registers Sout APPLICATION LOGIC TDI Misc. registers Sout APPLICATION LOGIC TMS TCK TDO T A P M U X Instruction register Bypass register Sin BIST register Scan register TMS TCK TDO T A P M U X Instruction register Bypass register Sin BIST register Scan register Introduction.31

pattern generator Response Analyzer Built-In-Self Test (BIST) Places the job of device testing inside the device itself Generates its own stimulus and analyzes its own response from system mu circuit under test to system BIST Controller good/fail biston bistdone Introduction.32

Built-In-Self Test (BIST) (Cont.) Two major tasks - Test pattern generation - Test result compaction Usually implemented by linear feedback shift register F/F F/F F/F Introduction.33

Random Number Generator (RNG) F/F F/F F/F F/F 0001 1000 0100 0010 1001 1100 0110 1011 0101 1010 1101 1110 1111 0111 0011 0001 (repeat) 1. Generate pseudo random patterns 2. Period is 2 n - 1 Introduction.34

Signature Analyzer (SA) Input sequence 10101111 (8 bits) 1 2 3 4 5 G 2 4 5 6 7 1 P + + Z 2 5 1 4 Time Input stream Register contents Output stream 0 1 0 1 0 1 1 1 1 0 0 0 0 0 Initial state 1 1 0 1 0 1 1 1 1 0 0 0 0...... 5 1 0 1 0 1 1 1 1 6 1 0 0 0 0 1 0 1 7 1 0 0 0 0 1 0 1 8 0 0 1 0 1 1 0 1 + R Remainder 2 4 Quotient 2 1 Introduction.35

Introduction.36 Signature Analyzer (SA) (cont.) A LFSR performs polynomial division Probability of aliasing error = 1/2 n (n: # of FFs) 1 : 1 : 2 2 4 5 Q P 1 1 5 6 7 2 4 5 2 4 6 7 G R Q P 1 2 4 5 6 7

Memory BIST Architecture Before After di addr wen Memory Module data sys_di sys_addr sys_wen clk hold_l rst_l test_h si se Memory Module data q so Introduction.37

Algorithm-Based Pattern Generator Compressor Memory BIST Architecture (Cont.) sys_addr sys_d i sys_wen rst_l clk hold_l test_h di addr wen Memory Module compress_h clk rst si se data q so BIST Circuitry Introduction.38

CPU Test Control Architecture Scan_i Scan_en Scan path Scan_o logic rst_l clk hold_l test_h Bist control Memory TDI bist decoder bist_se compressor scan decoder bist_so int_scan mbist decoder TDO TCK TMS TAP Controller IR Introduction.39

Problems re-thinking A 32-bit adder --- ATPG A 32-bit counter --- Design for testability + ATPG A 32MB Cache memory --- BIST A 10 7 -transistor CPU --- All test techniques An SOC Introduction.40

Conclusions Testing is becoming a major factor in design optimization Conventionally, the designer often optimize one of the three attributes: speed, area, and power. At present, a fourth attribute is considered: Testability. Two major fields in testing ATPG --- Fault simulation --- Test generation Testable design --- Design for testability --- Built-in self-test --- Synthesis for testability Introduction.41