Curs DFT Intro 3
Curs DFT Intro 3
Lectures, Project Classes and Grading Lectures: Tue 16:00 18:00 A416 Project: Tue 18:00 19:00 A410 Textbooks
VLSI Test Principles and Architectures: Design for Testability, Edited by Laung-Terng Wang, ChengWen Wu, and Xiaoqing Wen, Elsevier Inc. 2006
Projects
Groups of 2 people are strongly recommended Tentative schedule:
Make your choice by week 3 (Tue) First update: late October Second update: late November Final presentation: January
Importance of testing Moores law: the scale of ICs doubles every 18 months SSI MSI LSI VLSI 10s of transistors 100s 1000s 100.000s Technologies of less than 90 nm Clock speeds from 108kHz in 1971 to several gigahertz today One faulty transistor or wire can make a whole 100-million transistors chip faulty
Sept.2011
Rule of ten How we produce an electronic system? 1. Produce the ICs 2. Use ICs to assemble PCBs 3. Use PCBs to assemble system Rule of ten: The cost of detecting a faulty IC increases by an order of magnitude as we move through each stage of manufacturing, from device level to board level to system level and finally to system operation in the field.
Sept.2010
Electronic testing: What, When WHAT: IC testing PCB testing System testing WHEN: At various manufacturing stages During system operation
1. 2. 3.
1. 2.
Sept.2010
1. 2. 3. 4. 5. 6.
Sept.2010
WHY: To find fault-free ICs, PCBs, systems To improve production yield by analyzing cause of defects when faults are found To ensure fault-free system operation and initiate repair procedures when faults are detected FOR WHOM: Designers Test engineers Product engineers Managers Manufacturers End-users
Synthesis
Post-layout simulation
P&R
layout.xx layout.xx layout.v
Mask fabrication
Sept.2010
1. 2. 3.
Sept.2010
DUT Verification
You draw it
n Descriere RTL m
?
Descriere post-layout n m
So design verification can be considered a form of testing Once verified, VLSI design goes to fabrication In parallel, test engineers develop test procedures based on design spec and fault models assoc. with implem. technology
Sept.2010
CUT Testing
Pass = fault-free
Input1
Input_n
Sept.2010
Defects
Defect: a flaw or physical imperfection that may lead to a fault
Statistical flaws in the materials and masks used to fabricate ICs are unavoidable it is impossible for 100% of any IC to be defectfree
First tests performed during manufacturing process are to detect defects the wafer-level tests
Sept.2010
Retest packaged devices to eliminate those damaged during packaging, or put in defective packages FMA Additional testing to ensure final quality, before going to market (incl. measurement of parameters such as in/out timing, specs, voltage, current) Additional burn-in or stress testing for chips subjected to high temps and supply voltages Sept.2010
Yield and Reject Rate Number of acceptable parts Yield = ------------------------------------------------------Total number of parts fabricated Types of yield losses: 1. Catastrophic yield loss: due to random defects 2. Parametric yield losses: due to process variations
Sept.2010
Sept.2010
Reject Rate = Defect Level Number of faulty parts passing final tests Total number of parts passing final tests
The reject rate gives an indication of the overall quality of VLSI testing process E.g. a reject rate of 500 parts per million (PPM) may be considered acceptable A reject rate <= 100 PPM is high-quality The goal of six-sigma manufacturing (called also zero defects) is 3.4 PPM or less
Sept.2010
PCB Fabrication
System Assembly
System Test
Sept.2010
Physical Implementation of an IC The microscopic world of the physical structure of an IC with six levels of interconnections and effective transistor channel length of 0.Qm
Sept.2010
Cause of defects
Any small piece of dust or abnormality of geometrical shape Process variations affecting transistor channel length, transistor threshold voltage, metal interconnect width and thickness, and inter-metal layer dielectric thickness will impact logical and timing performance Randomly localized manufacturing imperfections can result in resistive bridging between metal lines, resistive opens in metal lines, improper via formation, etc.
Sept.2010
Nanometer-scale structures vs. CMOS CMOS - conventional complementary metal oxide semiconductor devices Nanometer-scale structures: use sophisticated fabrication techniques
Have much lower current drive capabilities and are much more sensitive to noise-induced errors such as crosstalk Are more susceptible to failures of transistors and wires due to soft (cosmic) errors, process variations, electromigration, and material aging
Sept.2010
Sept.2010
Fault, error, failure A fault is a representation of a defect reflecting a physical condition that causes a circuit to fail to perform in a required manner A circuit error is a wrong output signal produced by a defective circuit A failure is a deviation in the performance of a circuit or system from its specified behavior and represents an irreversible state of a component such that it must be repaired in order for it to provide its intended design function
Sept.2010
Can cause
Sept.2010
Exhaustive testing Test vector = input pattern 2^n = total number of test vectors If apply all exhaustive testing Issues:
Impossible to do for big n Even all applied, still cant guarantee that all possible states have been visited
Pass = fault-free
Input1
Input_n
Structural testing
Uses fault models Saves time and improves test efficiency Cant guarantee detection of all possible defects But use of fault models provides a quantitative measure of fault-detection capabilities for a given set of test vectors for a targeted fault model Fault coverage = ---------------------------------------------------
Sept.2010
Sept.2011
Defect level
Defect level = 1 yield ^ (1 fault coverage) (Williams) Using equation we can show that a PCB with 40 chips, each having 90% fault coverage and 90% yield could result in a reject rate of 41.9% (419,000 PPM)!!!! Improving fault coverage can be easier and less expensive than improving manufacturing yield because making yield enhancements can be costly; generating test stimulus with high fault coverage is very important!!!!
Sept.2010
To find an efficient set of test vectors that detects all faults considered for a given circuit
Sept.2010
Fault models
k = no. of types of faults that can occur at each potential fault site (k = 2 for most fault models) n = no. of possible fault sites, depending on the fault model Assuming there can be only one fault in the circuit, then the total number of possible single faults, referred to as the single-fault model or single-fault assumption is:
No. of single faults = k x n
Sept.2010
Multiple-fault model
Multiple-fault model : the total number of possible combinations of multiple faults, is:
No. of multiple faults = (k + 1) ^ n - 1
Single-fault model
Multiple-fault model More accurate No. of faults becomes too large for big k and n
Typically the single-fault assumption is used for test generation and evaluation
Equivalent faults; Fault collapsing Equivalent faults: two or more faults that result in identical faulty behaviour for all possible input patterns can be represented by any single fault from the set of equivalent faults So, no. of single faults to be considered for test generation becomes < k x n called fault collapsing
Sept.2010
Stuck-at faults A stuck-at fault transforms the correct value on the faulty signal line to appear to be stuck at a constant logic value, either a logic 0 or a logic 1, referred to as stuck-at-0 (SA0) or stuck-at-1 (SA1) A stuck-at fault affects the state of logic signals on lines in a logic circuit, including primary inputs (PIs), primary outputs (POs), internal gate inputs and outputs, fanout stems (sources), and fanout branches
Sept.2010
An example
x1 x2
a b d g i e f y
x3
9 signal lines: a to i b = fanout source d, e = fanout branches 18 (9 x 2) possible faulty circuits under single-fault assumption
Sept.2010
x1x2x3 y
a SA0 a SA1 b SA0 b SA1 c SA0 c SA1 d SA0 d SA1 e SA0 e SA1 f SA0 f SA1 g SA0 g SA1 h SA0 h SA1 i SA0 i SA1
000 0 0 0 0 0 0 1 0 0 0 0 0 0 0 1 0 1 0 1
001 1 1 1 1 0 0 1 1 1 1 0 0 1 1 1 0 1 0 1
010 0 0 1 0 0 0 0 0 0 0 0 0 0 0 1 0 1 0 1
011 0 0 1 1 0 0 0 0 0 1 0 0 1 0 1 0 1 0 1
100 0 0 0 0 1 0 1 0 1 0 0 0 1 0 1 0 1 0 1
101 1 1 1 1 1 0 1 1 1 1 0 0 1 1 1 0 1 0 1
110 1 0 1 0 1 1 1 0 1 1 1 1 1 0 1 1 1 0 1
111 1 0 1 1 1 1 1 0 1 1 1 1 1 0 1 1 1 0 1
Fault collapsing
Stuck-at fault collapsing typically reduces the total number of faults by 50 to 60% SA0 at the input to an AND (NAND) gate ~ the SA0 (SA1) at the output of the gate SA1 at the input to an OR (NOR) gate ~ SA1 (SA0) at the output of the gate a SA0 (SA1) at the input of an inverter (or buffer) ~ SA1 (SA0) at the output of the inverter (or SA0 (SA1) of a buffer) a stuck-at fault at the source (output of the driving gate) of a fanout-free net ~ same stuck-at fault at the destination (gate input being driven)
Number of collapsed faults = 2 x (number of POs+number of fanout stems) + total number of gate (including inverter) inputs - total number of inverters
For our example: Sept.2010
Theorem 1.1 A set of test vectors that detects all single stuck-at faults on all primary inputs of a fanout-free combinational logic circuit will detect all single stuck-at faults in that circuit. Theorem 1.2 A set of test vectors that detect all single stuck-at faults on all primary inputs and all fanout branches of a combinational logic circuit will detect all single stuck-at faults in that circuit.
Sept.2010
Sept.2010
Delay faults
Fault-free operation of a logic circuit means:
performing the logic function correctly propagating the correct logic signals along paths within a specified time limit
A delay fault causes excessive delay along a path such that the total propagation delay falls outside the specified limit 2 types of delay faults:
Gate-delay fault (& transition fault) model: time interval taken for a transition from the gate input to its output exceeds its specified range Path-delay fault: the cumulative propagation delay along a signal path through the CUT
Sept.2010
0 0 0 1 v2 v1
x1 x2 t=0
3 2 t=2 3 t=5
t=7 y
1 1
x3
Sept.2010
Crosstalk effects
2 categories:
Crosstalk glitch: a pulse that is provoked by coupling effects among interconnect lines. The magnitude of the glitch depends on the ratio of the coupling capacitance to the line-to-ground capacitance Crosstalk delay: a signal delay that is provoked by the same coupling effects among interconnect lines, but it may be produced even if line drivers are balanced but have large loads (it adds up to gate and interconnects delays)
So, critical need to develop testing techniques for manufacturing defects that produce crosstalk effects
Sept.2011
March LR Algorithm
One of most efficient RAM test algorithms (in terms of test time and fault detection capability) Can detect:
pattern sensitivity faults intra-word coupling faults bridging faults
Test time on order of 16N (N = no. of address locations) Test Algorithm March LR March Test Sequence (w0); w1); (r1, w0); (r0, w1); (r1, w0, r0, r0, (r0)
Notation: w0=write 0 (or all 0s); r1=read 1 (or all 1s); =address up; =address down; =address either way.
Sept.2011
Sept.2010
Sept.2011
Sept.2011
RTL Testing Despite cons, it is desirable to move ATPG operations toward higher levels of abstraction while targeting new types of faults in deep submicron devices Main advantages of high-level approaches are :
compact test sets reduced computation time
Sept.2011
Sept.2011
Automatic Test Equipment (ATE) Automatic Test Pattern Generation (ATPG) Fault Simulation Digital Circuit Testing Analog and Mixed-Signal Circuit Testing DFT
Sept.2011
Design For Testability (DFT) Test engineers usually have to construct test vectors AFTER the design is completed. This invariably requires a substantial amount of time and effort that could be avoided if testing is considered early in the design flow to make the design more testable. As a result, integration of design and test, referred to as design for testability (DFT), was proposed in the 1970s.
Sept.2011
DFT Techniques To structurally test circuits, we need to control and observe logic values of internal lines! Difficult, especially for sequential circuits! DFT techniques help find those parts of a digital circuit that will be most difficult to test and to assist in test pattern generation for fault detection
Sept.2011
DFT Techniques - Categories Ad-hoc DFT techniques Level-sensitive scan design (LSSD) or scan design Built-in self-test (BIST)
Sept.2011
Ad-hoc DFT Techniques Goal: to target only those portions of the circuit that would be difficult to test and to add circuitry to improve the controllability or observability Use test point insertion to access internal nodes directly E.g. a multiplexer inserted to control or observe an internal node
Sept.2011
Level-Sensitive Scan Design (LSSD) It is latch-based Testability is improved by adding extra logic to each flip-flop in the circuit to form a shift register, or scan chain
Sept.2011
Built-In-Self-Test (BIST) Integrates a test-pattern generator (TPG) and an output response analyzer (ORA) in the VLSI device to perform testing internal to the IC Because the test circuitry resides with the CUT, BIST can be used at all levels of testing, from wafer through system-level testing
Sept.2011
Board Testing In the 70s and 80s, PCBs were tested by probing the backs of the boards with probes (also called nails) in a bed-of-nails tester. The probes are positioned to contact various solder points on the PCB in order to force signal values at the component pins and monitor the output responses A PCB tester
can perform analog and digital functional tests is designed to be modular and flexible enough to integrate different external instruments
Sept.2011
pins of the package did not go through the board to guarantee contact sites on the bottom of the PCB
Boundary-Scan Solution: boundary-scan, proposed by JTAG, i.e. inserted logic to provide a scan path through all I/O buffers of ICs to assist in testing the assembled PCB
Boundary-Scan (2)
Scan chain provides ability to shift in test vectors to be applied through the pad to the pins and interconnections on the PCB. Output responses are captured at the input buffers on other devices on the PCB and subsequently shifted out for fault detection Boundary scan provides access to the various signal nodes on a PCB without the need for physical probes Test Access Port (TAP) provides access to the boundary scan chain through a four-wire serial bus interface, in conjunction with instructions transmitted over the interface
Sept.2011
Boundary-Scan (3) Boundary scan interface also provides access to DFT features (LSSD or BIST), designed and implemented in the VLSI devices for board and system-level testing. The boundary scan description language (BSDL) provides a mechanism with which IC manufacturers can describe testability features in a chip
4-wire serial bus interface
Sept.2011
SoC Testing SOCs incorporate embedded cores, difficult to access during testing In 1997 IEEE developed a scalable wrapper architecture and access mechanism similar to boundary scan, to enable test access to embedded cores and the associated interconnect between embedded cores
independent of the underlying functionality of the SOC or its individual embedded cores creates necessary testability requirements for detection and diagnosis of faults for debug and yield enhancement
Sept.2011
Cost of Manufacturing Testing 0.5-1.0GHz, analog instruments,1,024 digital pins: ATE purchase price
= $1.2M + 1,024 x $3,000 = $4.272M
Controllability and Observability Controllability of a signal reflects the difficulty of setting a signal line to a required logic value from primary inputs Observability of a signal reflects the difficulty of propagating the logic value of the signal line to primary outputs
Testing of Combinational vs. Sequential Circs. Level of the combinational logic increases The testability of combinational logic decreases Good testability for sequential circuits is difficult to achieve due to:
many internal states, so setting a sequential circuit to a required internal state can require a very large number of input events Difficulty to identify the exact internal state of a sequential circuit from the primary outputs a more structured approach for testing designs with large amounts of sequential logic is required as part of a methodical DFT approach
Test Point Insertion (TPI) TPI is an ad hoc DFT technique for improving the controllability and observability of internal nodes. Testability analysis is typically used to identify the internal nodes where test points should be inserted, in the form of control or observation points.
Observation Point Insertion (OPI) OP2 shows the structure of an OP: MUX + FF
SE = 0 and active CK logic values of the low-observability nodes are captured into the DFF SE = 1 the 3 DFF operate as a shift register, allowing to observe the captured logic values through OP_output during sequential clock cycles
During normal operation TM=0 During test TM=1; the 3 DFF form a shift-reg that shifts the CM_input to control the destination end of nodes
Control Point Insertion (CPI) (2) Controllability of node is dramatically improved BUT, additional delay appears in logic path care must be taken not to insert control points on a critical path Or better: add a scan point Scan Point: a combination of a CP and an OP, instead of a CP, as this allows to observe the source end as well.