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

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

Design for Testability

Design for Testability

Sequential vs. Combinational

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

Chapter 7 Sequential Logic

Preparation of Examination Questions and Exercises: Solutions

LOGIC CIRCUITS. Basic Experiment and Design of Electronics

Logic BIST. Sungho Kang Yonsei University

Integrated Circuits & Systems

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

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

ELCT201: DIGITAL LOGIC DESIGN

ECE 3060 VLSI and Advanced Digital Design. Testing

L4: Sequential Building Blocks (Flip-flops, Latches and Registers)

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

Synchronous Sequential Logic

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

Hold Time Illustrations

Hardware testing and design for testability. EE 3610 Digital Systems

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

ECE/Comp Sci 352 Digital Systems Fundamentals. Charles R. Kime Section 2 Fall Logic and Computer Design Fundamentals

Chapter 13. Clocked Circuits SEQUENTIAL VS. COMBINATIONAL CMOS TG LATCHES, FLIP FLOPS. Baker Ch. 13 Clocked Circuits. Introduction to VLSI

CMPEN 411. Spring Lecture 18: Static Sequential Circuits

Lecture 7: Logic design. Combinational logic circuits

ELCT201: DIGITAL LOGIC DESIGN


MAHALAKSHMI ENGINEERING COLLEGE TIRUCHIRAPALLI

Introduction to VLSI Testing

Vidyalankar S.E. Sem. III [ETRX] Digital Circuits and Design Prelim Question Paper Solution

L4: Sequential Building Blocks (Flip-flops, Latches and Registers)

EE141- Spring 2007 Digital Integrated Circuits

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

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

Topic 8: Sequential Circuits

Clock Strategy. VLSI System Design NCKUEE-KJLEE

Digital Integrated Circuits A Design Perspective

CSE140: Components and Design Techniques for Digital Systems. Midterm Information. Instructor: Mohsen Imani. Sources: TSR, Katz, Boriello & Vahid

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

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

Reg. No. Question Paper Code : B.E./B.Tech. DEGREE EXAMINATION, NOVEMBER/DECEMBER Second Semester. Computer Science and Engineering

Digital Logic Design - Chapter 4

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

Lecture 9: Sequential Logic Circuits. Reading: CH 7

Counters. We ll look at different kinds of counters and discuss how to build them

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

Show that the dual of the exclusive-or is equal to its compliment. 7

CMPEN 411 VLSI Digital Circuits Spring 2012 Lecture 17: Dynamic Sequential Circuits And Timing Issues

Written reexam with solutions for IE1204/5 Digital Design Monday 14/

S.Y. Diploma : Sem. III [CO/CM/IF/CD/CW] Digital Techniques

EE141Microelettronica. CMOS Logic

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

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

Sample Test Paper - I

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

Sequential Logic Circuits

Built-In Test Generation for Synchronous Sequential Circuits

Topics. CMOS Design Multi-input delay analysis. John A. Chandy Dept. of Electrical and Computer Engineering University of Connecticut

Different encodings generate different circuits

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

ESE 570: Digital Integrated Circuits and VLSI Fundamentals

Advanced Testing. EE5375 ADD II Prof. MacDonald

Digital Electronics Circuits 2017

King Fahd University of Petroleum and Minerals College of Computer Science and Engineering Computer Engineering Department

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

Chapter 14 Sequential logic, Latches and Flip-Flops

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

CHW 261: Logic Design

Roger L. Tokheim. Chapter 8 Counters Glencoe/McGraw-Hill

Lecture 14: State Tables, Diagrams, Latches, and Flip Flop

S No. Questions Bloom s Taxonomy Level UNIT-I

Sequential Logic Worksheet

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

ALU A functional unit

Adders, subtractors comparators, multipliers and other ALU elements

ALU, Latches and Flip-Flops

Written exam with solutions IE Digital Design Friday 21/

Introduction to Digital Logic

Sequential Circuit Analysis

MAHALAKSHMI ENGINEERING COLLEGE TIRUCHIRAPALLI

Memory, Latches, & Registers

Homework Assignment #1 Solutions EE 477 Spring 2017 Professor Parker

Chapter 4. Sequential Logic Circuits

EECS 579: Logic and Fault Simulation. Simulation

Models for representing sequential circuits

Sequential Circuits. Circuits with state. Silvina Hanono Wachman Computer Science & Artificial Intelligence Lab M.I.T. L06-1

Fundamentals of Boolean Algebra

Digital Circuits ECS 371

Chapter 7. Sequential Circuits Registers, Counters, RAM

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

Test Generation for Designs with Multiple Clocks

UNIVERSITY OF BOLTON SCHOOL OF ENGINEERING BENG (HONS) ELECTRICAL & ELECTRONICS ENGINEERING EXAMINATION SEMESTER /2017

Fundamentals of Digital Design

Structural Delay Testing Under Restricted Scan of Latch-based Pipelines with Time Borrowing

Designing Sequential Logic Circuits

Menu. Part 2 of 3701: Sequential Digital Machines Latches and Flip-Flops: >S-R latches >D latches >T latches. Comb. n. Logic. m Q.

MASSACHUSETTS INSTITUTE OF TECHNOLOGY Department of Electrical Engineering and Computer Sciences

Topic 8: Sequential Circuits. Bistable Devices. S-R Latches. Consider the following element. Readings : Patterson & Hennesy, Appendix B.4 - B.

I. Motivation & Examples

CHAPTER 9: SEQUENTIAL CIRCUITS

Transcription:

Overview Design for testability(dft) makes it possible to: Assure the detection of all faults in a circuit. Reduce the cost and time associated with test development. Reduce the execution time of performing test on fabricated chips. We will focus on DFT techniques for digital logic, although it is relevant for memory and analog/mixed-signal components as well. An example chip level DFT technique is called Built-in self-test (BIST) (used for digital logic and memory.) At the system level, DFT includes boundary scan and analog test bus. The DFT techniques discussed focus on improving testability of SAFs. DFT for other fault models, e.g., delay faults, is described in the literature. 1 (12/4/06)

Ad-hoc DFT Two forms of DFT: ad-hoc and structured. Ad-hoc DFT relies on "good" design practices: Avoid asynchronous logic feedbacks. Feedback can result in oscillation. ATPG are designed to work on acyclic combinational logic. Make FFs initializable, i.e., provide clear and reset. Avoid gates with a large fan-in. Large fan-in makes the inputs difficult to observe and the output difficult to control. Provide test control for difficult to control signals. For example, signals produced by a long counter require many clk cycles to control. This increases the length of the test sequence. 2 (12/4/06)

Structured DFT Testability measures can be used to identify circuit areas that are difficult to test. Once identified, circuit is modified or test points are inserted. This type of ad-hoc strategy is difficult to use in large circuits: Testability measures are approximations and don t always work. Good fault coverage is not guaranteed from ATPG even after circuit modifications and test point insertion is performed. Structured DFT involves adding extra logic and signals dedicated for test according to some procedure. The circuit has two modes, normal and test mode. The most commonly used structured methods are Scan and BIST. 3 (12/4/06)

Scan Scan proposed in 73 by Williams and Angell. Main idea is to obtain control and observability for FFs. It reduces sequential TPG to combinational TPG. With Scan, a synchronous sequential circuit works in two modes. Normal mode and test mode: PIs POs PIs POs Combo logic Combo logic FFs FFs Scan-in Scan-out In test mode, all FFs are configured as a shift register, with Scan-in and Scan-out routed to a (possibly dedicated) PI and PO. 4 (12/4/06)

Scan Once initialized, normal mode is used to apply a pattern to the PIs, and the results are latched in the FFs. The circuit is put in test mode again and the results scanned out. PIs POs PIs POs Combo logic Combo logic FFs Scan Variations FFs FFs Multiple Scan chains FFs Partial Scan Note that scan is usually inserted after the circuit is verified to be functionally correct. 5 (12/4/06)

Scan-Path Design Any sequential circuit may be modeled as: X 1 X 2 Next state and output combinational logic Z 1 Z 2 X K Z N FF 1 FF 2 FF 3 Clk X 1 X 2 X K Next state and output combinational logic (Note, latches cannot be used here) Z 1 Z 2 SI 0 1 FF 1 0 1 FF 2 0 1 FF 3 Z N 0 1 SO Clk Scan-Enable (SE) 6 (12/4/06)

Scan Design Rules A designer needs to observe four rules during functional design: Only D-type master-slave FFs should be used. No JK, toggle FFs or other forms of asynchronous logic. At least on PI must be available for test. As shown in previous circuit, the Scan-in and Scan-out pins can be multiplexed (only one additional MUX is needed at Scan-out). Therefore, the only required extra pin is Scan-Enable, SE (or Test Control, TC). All FFs must be controlled from PIs. Simple circuit transformations can be used to change FFs whose Clk is "gated" by an internal logic signal. Clocks must not feed data inputs of the FFs. A race condition can result in normal mode otherwise. This is generally considered good design practice anyway. 7 (12/4/06)

Storage Cells for Scan Designs Common characteristics of all designs: A normal input and a scan input. The appropriate input can be selected using a multiplexer or by a twoclock system. A storage cell. The cell can be implemented using an edge-triggered FF, a master-slave FF or level-sensitive latches controlled by clocks having >=2 phases. We ll focus only on D-FFs of the master-slave variety. D Q D Latch Q φ Q φ Q D-Latch 8 (12/4/06)

Storage Cells for Scan Designs An implementation using two-port master-slave FF with a MUX. D SI Sel φ 2-to-1 MUX L 1 φ Q L 2 Q 1 Q 2 φ Q A two-port clocked FF implementation. D φ 1 SI φ 2 L 1 φ Q L 2 Q 1 Q 2 φ Q 9 (12/4/06)

Storage Cells for Scan Designs To ensure race-free operation, use a 2-phase nonoverlapping clk. D SI Sel φ 1 φ 2 L 1 φ Q Q 1 Q 2 φ L 2 Q Not a FF, since two clocks are used. In order to avoid performance degradation introduced by the MUX. D L 2 Q 1 Q 2 (SO) φ 1 SI L 1 φ 2 φ 3 NAND version of LSSD 10 (12/4/06)

Storage Cells for Scan Designs In LSSD, clocks φ 1 and φ 2 can be NORed together to drive L 2, replacing φ 3. D φ 1 SI L 2 Q 1 Q 2 (SO) φ 2 L 1 Note that in the 3-clock scheme, in order to prevent hazards, φ 1 and φ 3 and well as φ 2 and φ 3 MUST be non-overlapping. φ 1 φ 3 t φ1 t φ3 11 (12/4/06)

Tests for Scan Circuits Two phases: Shift test Set TC= 0, and shift toggle sequence 00110011... using Clk. The length is n sff + 4, where n sff are the number of scan flops. This sequence produces all 4 transitions, 0->0, 0->1, 1->1 and 1->0, catches all/most SA faults. The Shift test can be used in either single-clock or two-clock designs. A Flush test is also possible in two-clock designs: φ 1 (Master Clk) is held low while φ 2 and φ 3 are held high. This creates a continuous path between SI and SO for application of 0 and 1. Combinational logic test This phase allows the combination logic circuit to be tested for SA faults. An ATPG algorithm is used where outputs of Scan FFs are treated as pseudo-pis (completely controllable) and inputs are treated as pseudo- POs. 12 (12/4/06)

Tests for Scan Circuits Each vector contains two parts: i x and s x represent PIs and pseudo-pis (state variables), o x and n x represent POs and pseudo-pos (next state variables). PIs Seq 1 Seq 2 Seq 3 Don t Don t i 1 cares i 2 cares i 3 Scanin s 1 s 2 s 3 TC 000000000 1 000000000 1 000000000 Scanout Don t cares o 1 o 2 o 3 Don t cares 1 000000000 n 1 n 2 n 3 The vectors are converted as shown above. Don t care bits can be filled randomly or with a specific sequence. 9 scan vectors 1 normal vector On 10th vector TC is set to 1. 39 Clks are needed for these 3 vectors. Faults at POs under 1st vector are detected after 10th Clk. However, faults captured in FFs for this vector are detected on 11th through 19th Clk, during scanin of 2nd vector. 13 (12/4/06)

Tests for Scan Circuits The general formula for the length of the test (which includes Shift test) is: Scan test length = n sff + 4 + ( n sff + 1)n comb + n sff For a circuit with 2,000 FFs and 500 vectors, 1,004,504 Clks needed. Also, the pseudo-pis/pos are dispersed, improving observability/controllability, effectively partitioning the CUT into smaller circuits. F SI = ( n comb + 2)n sff + n comb + 4 clock periods G 1 F G G 3 2 Clk 1 0 FF 1 y 1 FF 2 Two partitions: G 1 (pseudo-pi y 2 ) and G 2 /G 3 (pseudo-pis y 1 / y 2 ). 1 0 Z y 2 1 0 SO TC 14 (12/4/06)

Example Application TC SI SA1 C N 1 A 1 Z R N 2 A 2 O 1 P 1 N 3 A 3 A 4 O 2 P 2 N 4 A 5 Modulo-3 counter FF2 FF1 With R=0, counter is reset to 00. With R=0, C=1, sequence is 00->01->10->00. Q 2 Q 1 SO 15 (12/4/06)

Example Application The output Z becomes 1 only in state 10, otherwise it s zero. With R=0, C=0, the couter retains its state. The combinational logic is combinationally irredundant. However, without scan, the sequential circuit has 6 untestable SA1 faults. A sequential ATPG algorithm generated 35 tests to detect 36 of the 42 faults in the non-scan version. Another combinational ATPG algorithm generated 12 vectors for the combinational part with C, R, P1 and P2 as inputs and Z, Q1 and Q2 as outputs. Once converted to scan sequences with a 6 vector Shift test, 44 vectors result. Fault simulation indicates that all faults are detected, including the 6 untestable SA1 faults and the MUX fault. 16 (12/4/06)

Scan Architectures General structure of an LSSD double-latch design. e 1 L 1 L 2 y 1 SO X Combo Network e 2 L 1 L 2 y 2 Z φ 1 e n L 1 L 2 y n φ 2 SI φ 3 The outputs, y i, come from the output of the L 2 latches. Normal mode, φ 1 and φ 3 are used, test mode, φ 2 and φ 3 are used. 17 (12/4/06)

Scan Architectures In pipelined systems, combinational blocks are separated by only 1 latch. Y 2 e 11 L 1 L 2 y 11 SO X 1 Combo Network e 1n y 12 N 1 L 1 L 2 Z 1 Y 1 e 21 y 21 φ 1a φ 2 φ 3 X 2 Combo Network N 2 e 2n L 1 L 2 L 1 L 2 y 21 Note y mn come out of L 1 latches. SI φ 1b 18 (12/4/06)

Scan Architectures During normal mode, φ 1a and φ 1b are nonoverlapping clocks, and clocks φ 2 and φ 3 are not used. Note the L 2 s are not used during normal operation and represents overhead. For the double latch design, operation proceeds as follows: Test the latches: Set φ 2 =φ 3 =1. Apply 0 and 1 alternatively at SI Clock φ 2, then φ 3, n times. Initialize: Shift in the initial values into the FFs. Repeat for all patterns: Apply a pattern to the PIs. Clock φ 1 and observe results at POs. Shift out the response and initialize for next pattern. Clock φ 2, then φ 3, n times. 19 (12/4/06)

Scan Architectures Scan-Set Architecture offers on-line test capability. X 1 X 2 Combinational logic Z 1 Z 2 X K 0 1 FF 1 0 1 FF 2 0 1 FF M Z N SClk TC 1 SI 0 0 0 1 1 1 SO TClk TC 2 FF 1 FF 2 FF M Shift FFs added. TClk and SI used to initialize FFs with TC 1 /TC 2 =1, then SClk used to load data into upper FFs in parallel. Test pattern applied to PIs, TC 1 /TC 2 =0, then SClk transfers data to lower FFs, TClk used to scan data out. 20 (12/4/06)