Hardware testing and design for testability. EE 3610 Digital Systems

Similar documents
Design for Testability

Design for Testability

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

Introduction to VLSI Testing

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

ELE2120 Digital Circuits and Systems. Tutorial Note 9

PGT104 Digital Electronics. PGT104 Digital Electronics

Design at the Register Transfer Level

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

CHW 261: Logic Design

Sequential Circuit Analysis

EECS 579: Logic and Fault Simulation. Simulation

ECE 3060 VLSI and Advanced Digital Design. Testing

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

Design of Sequential Circuits

ELCT201: DIGITAL LOGIC DESIGN

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

3. Complete the following table of equivalent values. Use binary numbers with a sign bit and 7 bits for the value

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

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

10/12/2016. An FSM with No Inputs Moves from State to State. ECE 120: Introduction to Computing. Eventually, the States Form a Loop

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

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

Unit 7 Sequential Circuits (Flip Flop, Registers)

Digital Circuits and Systems

Lecture 10: Sequential Networks: Timing and Retiming

Digital Circuits ECS 371

EECS 579: SOC Testing

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

COEN 312 DIGITAL SYSTEMS DESIGN - LECTURE NOTES Concordia University

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

Chapter 5 Synchronous Sequential Logic

Sequential Logic Circuits

Lecture 17: Designing Sequential Systems Using Flip Flops

EE40 Lec 15. Logic Synthesis and Sequential Logic Circuits

Preparation of Examination Questions and Exercises: Solutions

LOGIC CIRCUITS. Basic Experiment and Design of Electronics

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

EECS150 - Digital Design Lecture 18 - Counters

EECS150 - Digital Design Lecture 18 - Counters

Chapter 4. Sequential Logic Circuits

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

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

Digital Electronics Sequential Logic

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

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

CSCI 2150 Intro to State Machines

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

Fundamentals of Digital Design

Introduction to the Xilinx Spartan-3E

Logic BIST. Sungho Kang Yonsei University

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

FSM model for sequential circuits

DE58/DC58 LOGIC DESIGN DEC 2014

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

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

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

Chapter 3 Digital Logic Structures

Chapter 14 Sequential logic, Latches and Flip-Flops

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

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

Week-5. Sequential Circuit Design. Acknowledgement: Most of the following slides are adapted from Prof. Kale's slides at UIUC, USA.

S No. Questions Bloom s Taxonomy Level UNIT-I

Test Generation for Designs with Multiple Clocks

Experiment 9 Sequential Circuits

Lab 3 Revisited. Zener diodes IAP 2008 Lecture 4 1

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

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

PAST EXAM PAPER & MEMO N3 ABOUT THE QUESTION PAPERS:

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

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

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

MAHALAKSHMI ENGINEERING COLLEGE TIRUCHIRAPALLI

Logic Design II (17.342) Spring Lecture Outline

MAHALAKSHMI ENGINEERING COLLEGE TIRUCHIRAPALLI

EEE2135 Digital Logic Design

Q: Examine the relationship between X and the Next state. How would you describe this circuit? A: An inverter which is synched with a clock signal.

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

Lecture 10: Synchronous Sequential Circuits Design

Principles of Computer Architecture. Appendix B: Reduction of Digital Logic. Chapter Contents

Reduced-Area Constant-Coefficient and Multiple-Constant Multipliers for Xilinx FPGAs with 6-Input LUTs

Memory Elements I. CS31 Pascal Van Hentenryck. CS031 Lecture 6 Page 1

Digital Logic and Design (Course Code: EE222) Lecture 19: Sequential Circuits Contd..

ALU A functional unit

Exam for Physics 4051, October 31, 2008

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

Synchronous Sequential Circuit Design. Digital Computer Design

Digital Electronics Circuits 2017

Sample Test Paper - I

Digital Design through Arduino

Learning Objectives:

EXPERIMENT Traffic Light Controller

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

Digital Circuits. 1. Inputs & Outputs are quantized at two levels. 2. Binary arithmetic, only digits are 0 & 1. Position indicates power of 2.

Digital Electronic Meters

Digital Fundamentals

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

Synchronous Sequential Logic

Digital Logic: Boolean Algebra and Gates. Textbook Chapter 3

Chapter 15 SEQUENTIAL CIRCUITS ANALYSIS, STATE- MINIMIZATION, ASSIGNMENT AND CIRCUIT IMPLEMENTATION

Transcription:

EE 3610: Digital Systems 1 Hardware testing and design for testability

Introduction A Digital System requires testing before and after it is manufactured 2 Level 1: behavioral modeling and test benches Check for correct design and algorithms Level 2: logic level testing Check for correct logic and whether the design meets specifications Level 3: circuit level testing Check for correct implementation and whether the timing is correct Level 4: post-manufacture testing Check for defects

Introduction Digital systems should be designed so that they are easy to test 3 Important to develop efficient testing methods Design for testability (DFT) Automatic test pattern generators (ATPG) Built in Self Test (BST) Testing Combinational Logic Testing Sequential Logic Scan Testing Boundary Scan

EE 3610: Digital Systems 4 Testing Combinational Logic

Testing Combinational Logic Stuck-at-1 (s-a-1) and Stuck-at-0 (s-a-0) 5 if the input to a gate is shorted to ground, it is s-a-0 if the input to a gate is shorted to positive power supply, it is s-a-1 if the input to a gate is an open circuit, it may act as s-a-0 or s-a-1 For s-a-0, provide '1' as input To check if it will flip 1 to 0 For s-a-1, provide '0' as input To check if it will flip 0 to 1

Testing Combinational Logic: stuck-at faults Finding AND and OR Gate Stuck-at-faults 6 If s-a-0 AND gate will produce 0 s-a-0 s-a-1 s-a-1 s-a-0

Testing Combinational Logic: stuck-at faults Two-level circuit s-a-0 7 s-a-1 We have no clue about the internal faults, we can provide inputs and look at outputs: the fault will propagate by setting specific pins to 1 or 0

Testing Combinational Logic: stuck-at faults Multi-level circuit 8

Testing Combinational Logic: bridging faults Bridging fault occurs when two unconnected signal lines are shorted 9 Finding a minimum set of test vectors that will test all possible faults is very difficult Use small set of testing vectors that can test most faults Use algorithms and programs that will generate set of test vectors

EE 3610: Digital Systems 10 Testing Sequential Logic

Testing Sequential Logic Testing Sequential Logic is more difficult than combinational logic 11 Sequence of inputs and resulting outputs No access to state of flipflops Very large number of tests are required Use a small set of test sequences that can be adequate

Testing Sequential Logic Look for all possible state transitions and outputs 12 X=010110011 Z=001111100 (both solid and dashed)

Testing Sequential Logic 13 Find the distinguishing sequence Two states are distinguishable if an input sequence produces different output sequences In this example, 11 is the distinguishing sequence How to find distinguishing sequence? 1) Apply 1 to all states and see which states produce identical outputs 1 {S0, S3} 0 and 1 {S1,S2} 1 2) Apply 1 again to find dinstict states within each group 11 S0 01, 11 S3 00, 11 S1 11, 11 S2 10

Testing Sequential Logic 14 Input Output Transition Tested 0 1 1 0 0 1 S0 to S2 1 1 1 0 1 1 S0 to S3 1 0 1 1 0 1 0 1 S1 to S0 1 1 1 1 0 1 1 0 S1 to S2 1 1 0 1 1 0 1 1 0 0 S2 to S3 1 1 1 1 1 0 1 1 0 0 S2 to S3 1 1 0 0 1 1 0 1 1 1 1 0 S3 to S2 1 1 0 1 1 1 0 1 1 0 0 1 S3 to S0

EE 3610: Digital Systems 15 Scan Testing

Scan Testing Instead of observing outputs, observe the state of flip-flops How can we observe the state of all flip-flops without using up a large number of pins on the IC? Create parallel to serial shift-register out of the flipflops and use a single serial output pin 16

Scan Testing Scan Path Test Circuit (Normal Operation) 17

Scan Path Test Circuit (Test) Scan Testing 18

Scan Path Test Circuit (Test) Scan Testing 19 Scan in the test vector Q i values via SDI using test clock TCK Apply the corresponding test values to the X i inputs Verify output Z i values Apply one clock pulse SCK to store new values of Q i+ into the FFs Scan and verify Qi values by pulsing test clock TCK Repeat the above for each test vector

Scan Testing: Example 20 Q 1+ Q 2+ Q 3 + Z 1 Z 2 Q 1 Q 2 Q 3 X 1 X 2 = 00 01 11 10 00 01 11 10 101 010 110 011 111 10 11 00 01 Shift 101 using TCK via SDI: Q 3 (LSB) First, Q 1 (MSB) last Note that 101 is a unique pattern which does not rely on X 1 and X 2

Scan Testing: Example 21 Q 1+ Q 2+ Q 3 + Z 1 Z 2 Q 1 Q 2 Q 3 X 1 X 2 = 00 01 11 10 00 01 11 10 101 010 110 011 111 10 11 00 01 Apply input X 1 X 2 =00, verify that Z 1 Z 2 =10

Scan Testing: Example 22 Q 1+ Q 2+ Q 3 + Z 1 Z 2 Q 1 Q 2 Q 3 X 1 X 2 = 00 01 11 10 00 01 11 10 101 010 110 011 111 10 11 00 01 Single pulse on SCK to advance circuit to state 010

Scan Testing: Example 23 Q 1+ Q 2+ Q 3 + Z 1 Z 2 Q 1 Q 2 Q 3 X 1 X 2 = 00 01 11 10 00 01 11 10 101 010 110 011 111 10 11 00 01 Verify that SDO shows the previous state 101

Scan Testing: Example 24 Q 1+ Q 2+ Q 3 + Z 1 Z 2 Q 1 Q 2 Q 3 X 1 X 2 = 00 01 11 10 00 01 11 10 101 010 110 011 111 10 11 00 01 Shift 101 using TCK via SDI: Q 3 (LSB) First, Q 1 (MSB) last Note that 101 is a unique pattern which does not rely on X 1 and X 2

Scan Testing: Example 25 Q 1+ Q 2+ Q 3 + Z 1 Z 2 Q 1 Q 2 Q 3 X 1 X 2 = 00 01 11 10 00 01 11 10 101 010 110 011 111 10 11 00 01 Apply input X 1 X 2 =01, verify that Z 1 Z 2 =11

Scan Testing: Example 26 Q 1+ Q 2+ Q 3 + Z 1 Z 2 Q 1 Q 2 Q 3 X 1 X 2 = 00 01 11 10 00 01 11 10 101 010 110 011 111 10 11 00 01 Single pulse on SCK to advance circuit to state 110

Scan Testing: Example 27 Q 1+ Q 2+ Q 3 + Z 1 Z 2 Q 1 Q 2 Q 3 X 1 X 2 = 00 01 11 10 00 01 11 10 101 010 110 011 111 10 11 00 01 Verify that SDO shows the previous state 010 Continue to the next state...

Scan Testing for an IC Replace flip-flops with two-port flip-flops Connect them together in a chain and create Scan chain (shift register) 28

Scan Testing for Multiple ICs on single PCB Chain scan registers together The whole PCB can be scanned using single serial port 29

EE 3610: Digital Systems 30 Boundary Scan

Boundary Scan Boundary Scan was developed to test a complex PCB with many ICs 31 JTAG (Joint Test Action Group) developed the standard for boundary scan Standard Test Access Port and Boundary-Scan Architecture Multiple ICs can be linked together on PCB and tested using few pins on the edge

Boundary Scan 32 Boundary Scan Cell One cell of boundary scan shift register (BSR) is placed between each I/O and the core logic TDI: Test data input (serial input into the shift register) TCK: Test Clock TMS: Test Mode Select TDO: Test Data Output (serial output from the shift register) TRST: Test Reset (resets TAP controller and test logic)

Boundary Scan Cell 33

PCB with Boundary Scan ICs 34

Boundary Scan Architecture 35

TAP Controller State Machine 36

Boundary Scan in Xilinx Spartan 3E PCB 37

Boundary Scan in Xilinx Spartan 3E PCB Does this look familiar? 38