Design for Testability

Slides:



Advertisements
Similar presentations
V. Vaithianathan, AP/ECE
Advertisements

Copyright 2001, Agrawal & BushnellLecture 12: DFT and Scan1 VLSI Testing Lecture 10: DFT and Scan n Definitions n Ad-hoc methods n Scan design  Design.
Copyright 2001, Agrawal & BushnellVLSI Test: Lecture 261 Lecture 26 Logic BIST Architectures n Motivation n Built-in Logic Block Observer (BILBO) n Test.
Leonardo da Vinci ALLEGRO © J. M. Martins Ferreira - University of Porto (FEUP / DEEC)1 Scan design techniques J. M. Martins Ferreira FEUP / DEEC - Rua.
Copyright 2001, Agrawal & BushnellVLSI Test: Lecture 13/12alt1 Lecture 13 Sequential Circuit ATPG Time-Frame Expansion (Lecture 12alt in the Alternative.
1 Chapter Design For Testability The Scan-Path Technique The testing problems with sequential circuit can be overcome by two properties: 1.The.
LEONARDO INSIGHT II / TAP-MM ASTEP - Basic Test Concepts © J. M. Martins Ferreira - University of Porto (FEUP / DEEC)1 Basic test concepts J. M. Martins.
Copyright 2001, Agrawal & BushnellLecture 3b: Testability Analysis1 VLSI Testing Lecture 3b: Testability Analysis n Definition n Controllability and observability.
Copyright 2001, Agrawal & BushnellDay-2 PM Lecture 101 Design for Testability Theory and Practice Lecture 10: DFT and Scan n Definitions n Ad-hoc methods.
Copyright 2001, Agrawal & BushnellVLSI Test: Lecture 8alt1 Lecture 8 Testability Measures n Definition n Controllability and observability n SCOAP measures.
Copyright 2001, Agrawal & BushnellDay-1 PM-2 Lecture 51 Testing Analog & Digital Products Lecture 5: Testability Measures n Definition n Controllability.
1 Lecture 23 Design for Testability (DFT): Full-Scan n Definition n Ad-hoc methods n Scan design Design rules Scan register Scan flip-flops Scan test sequences.
ELEN 468 Lecture 241 ELEN 468 Advanced Logic Design Lecture 24 Design for Testability.
Lecture 6 Testability Measures
Vishwani D. Agrawal James J. Danaher Professor
Copyright 2005, Agrawal & BushnellVLSI Test: Lecture 20alt1 Lecture 20alt DFT: Partial, Random-Access & Boundary Scan n Definition n Partial-scan architecture.
Copyright 2001, Agrawal & BushnellVLSI Test: Lecture 81 Lecture 8 Testability Measures n Origins n Controllability and observability n SCOAP measures 
Design for Testability
4/26/05 Kantipudi: ELEC CONTROLLABILITY AND OBSERVABILITY KALYANA R KANTIPUDI VLSI TESTING ’05 TERM PAPER TERM PAPER.
Design for Testability
ECE 553: TESTING AND TESTABLE DESIGN OF DIGITAL SYSTEMS Design for Testability (DFT) - 2.
CSE477 L28 DFT.1Irwin&Vijay, PSU, 2003 CSE477 VLSI Digital Circuits Fall 2003 Lecture 28: Design for Test Mary Jane Irwin ( )
10/14/2015 Based on text by S. Mourad "Priciples of Electronic Systems" Digital Testing: Testability Measures.
Design for Testability By Dr. Amin Danial Asham. References An Introduction to Logic Circuit Testing.
ECE 553: TESTING AND TESTABLE DESIGN OF DIGITAL SYSTEMS
Copyright 2001, Agrawal & BushnellLecture 6: Sequential ATPG1 VLSI Testing Lecture 6: Sequential ATPG n Problem of sequential circuit ATPG n Time-frame.
TOPIC : Controllability and Observability
TOPIC : Test Techniques for some complex circuits UNIT 4 : Design For Testability Module 4.2: DFT Techniques.
1 Modeling Synchronous Logic Circuits Debdeep Mukhopadhyay Associate Professor Dept of Computer Science and Engineering NYU Shanghai and IIT Kharagpur.
1 VLSI Design Lecture Four Design & Testing Issues Dr. Richard Spillman PLU Spring 2003.
Sequential Logic Design
Hardware Testing and Designing for Testability
Lecture 8 Dr. Nermi Hamza.
Clock in Digital Systems
VLSI Testing Lecture 4: Testability Analysis
CS1104 – Computer Organization
VLSI Testing Lecture 14: Built-In Self-Test
Lecture 23 Design for Testability (DFT): Full-Scan (chapter14)
332:437 Lecture 12 Finite State Machine Design
Definition Partial-scan architecture Historical background
Lecture 13 Sequential Circuit ATPG Time-Frame Expansion
Sequential Circuits: Latches
Design for Testability
Lecture 10 Sequential Circuit ATPG Time-Frame Expansion
Basics Combinational Circuits Sequential Circuits Ahmad Jawdat
LECTURE 15 – DIGITAL ELECTRONICS
Sequential Circuits: Latches
ECE 553: TESTING AND TESTABLE DESIGN OF DIGITAL SYSTEMS
Timing Analysis 11/21/2018.
Synchronous Sequential Circuits
CSE 370 – Winter Sequential Logic - 1
ELEC-7250 VLSI Testing Scan Design Implementation on ISCAS ’89 Benchmark Circuits – s1423 and s1512 Completed by: Jonathan Harris.
VLSI Testing Lecture 8: Sequential ATPG
Sequential Circuits: Latches
Sungho Kang Yonsei University
Sungho Kang Yonsei University
Testing in the Fourth Dimension
Automatic Test Pattern Generation
Thought of the Day To be what we are, and to become
FLIP-FLOPS.
Synchronous sequential
Synchronous Sequential
VLSI Testing Lecture 7: Delay Test
VLSI Testing Lecture 4: Testability Analysis
Binary Adder/Subtractor
Lecture 26 Logic BIST Architectures
VLSI Testing Lecture 13: DFT and Scan
Test Data Compression for Scan-Based Testing
Week 11 Flip flop & Latches.
Lecture 13 Sequential Circuit ATPG Time-Frame Expansion
Presentation transcript:

Design for Testability Sungho Kang Yonsei University

Outline Introduction Testability Measure Design for Testability Ad-Hoc Testable Design Conclusion

Merging Design and Test Introduction Design and Test become closer

Design and Test Introduction Design process

Testability Measures Testability Objective Inherent property of the circuit based on the circuit topology Probability that a fault is detected by a random vector Function of controllability and observability Controllability Ability to establish a specific signal value at each node in the circuit by setting values on the circuit inputs Observability Ability to determine the signal value at any node in a circuit by controlling primary inputs and observing its outputs Objective Estimate testability Provide guidance for redesign Provide guidance in search process of test generation Measures should be computationally simple

What Designers Want to Know Testability Will this device require an inordinate amount of time, level of effort, and/or test length in order to provide acceptable testing? Require general information about design What are the problem areas in the design where a modification can ease the testing problem? Require detailed information Testability measures might be useful Detailed information may be useful to the above question

SCOAP Sandia Controllability and Observability Analysis Program Testability Sandia Controllability and Observability Analysis Program Compute relative complexity to control and observe Combinational Node Primary input or a combinational standard cell output node Sequential Node Output node of a sequential standard cell

SCOAP 6 Numbers for Each Node, N Testability 6 Numbers for Each Node, N CC0(N): combinational 0-controllability minimum # of combinational nodes to set node N to 0 CC1(N): combinational 1-controllability minimum # of combinational nodes to set node N to 1 SC0(N): sequential 0-controllability minimum # of sequential nodes to justify 0 to node N SC1(N): sequential 1-controllability minimum # of sequential nodes to justify 1 to node N CO(N): combinational observability # of combinational nodes between N and PO and minimum # of combinational nodes to propagate a signal value on N to PO SO(N): sequential observability # of sequential nodes between N and PO and minimum # of sequential nodes to propagate a signal value on N to PO

SCOAP Initial Values for PIs and POs Buffers and Inverters PI PO Testability Initial Values for PIs and POs PI PO CC0(X) 1  CC1(X) 1  SC0(X) 0  SC1(X) 0  CO(X)  0 SO(X)  0 Buffers and Inverters Buffers Inverters CC0(Y) CC0(X)+1 CC1(X)+1 CC1(Y) CC1(X)+1 CC0(X)+1 SC0(Y) SC0(X) SC1(X) SC1(Y) SC1(X) SC0(X) CO(X) CO(Y)+1 CO(Y)+1 SO(X) SO(Y) SO(Y)

SCOAP Y = AND (X1, X2) CC0(Y) = min[CC0(X1), CC0(X2)] + 1 Testability Y = AND (X1, X2) CC0(Y) = min[CC0(X1), CC0(X2)] + 1 CC1(Y) = CC1(X1) + CC1(X2) + 1 SC0(Y) = min[SC0(X1), SC0(X2)] SC1(Y) = SC1(X1) + SC1(X2) CO(X1) = CO(Y) + CC1(X2) + 1 SO(X1) = SO(Y) + SC1(X2)

SCOAP Fanout CC1(Y) = CC1(X) CC1(Z) = CC1(X) Testability Fanout CC1(Y) = CC1(X) CC1(Z) = CC1(X) CO(X) = min [CO(Y), CO(Z)]

SCOAP Example CC0(A) = CC1(A) = CC0(B) = CC1(B) = CC0(C) = CC1(C) = 1 Testability Example CC0(A) = CC1(A) = CC0(B) = CC1(B) = CC0(C) = CC1(C) = 1 CC0(D) = min [CC0(A), CC0(B)] + 1 = 2 CC1(D) = CC1(A) + CC1(B) + 1 = 3 CC0(E) = CC0(D) + CC0(C) + 1 = 4 CC1(E) = min [CC1(C), CC1(D)] + 1 = 2 CO(E) = 0 CO(D) = CO(E) + CC0(C) + 1 = 2 CO(C) = CO(E) + CC0(D) + 1 = 3 CO(A) = CO(D) + CC1(B) + 1 = 4 CO(B) = CO(D) + CC1(A) + 1 = 4

SCOAP Tree Problem in reconvergent fanout Optimistic Error Testability Tree Good estimate Problem in reconvergent fanout Optimistic Error Want 3/ Pessimistic Error Want 2/2

Limitations of Testability Measures All testability measure have similar simplifying assumptions so that all results are estimates Involves the restricted information source (only circuit topology) Faults which are difficult to test cause problems Testability data provide a relatively poor indication of whether or not an individual fault will be detected by a given test

Design for Testability Difficulty in ATPG Not effective for large sequential circuits Advantages Test generation is easy High quality testing Disadvantages Area overhead Timing overhead

Classification of DFT Ad-Hoc Design Structured Design Initialization Design for Testability Ad-Hoc Design Initialization Adding extra test points Circuit partitioning Structured Design Scan design Scan Path Level Sensitive Scan Design Random Access Scan Boundary Scan Built-in Self Test

Ad Hoc Techniques Ad-Hoc Techniques which can be applied to a given product, but are not directed at solving the general problem Cost is lower than that of structured approaches (Scan, BIST, etc.) The job of doing test generation and fault simulation are usually not as simple or as straightforward

Test Points Ad-Hoc Employ test points to enhance controllability and observability Large demand on extra I/O pins Example

Test Points Ad-Hoc Multiplexing monitor points

Test Points Ad-Hoc Use demultiplexer and latch register to implement control points

Test Points Ad-Hoc Time sharing I/O ports

Test Points Candidates for control points Ad-Hoc Candidates for control points Control, address, and data bus lines on bus structured designs Enable/hold inputs to microprocessors Enable and read/write inputs to memory devices Clock and preset/clear inputs to memory devices Data select lines to multiplexers and demultiplexers Control lines on tristate devices Candidates for observation points Stem lines associated with signals having lots of fanouts Global feedback paths Redundant signal lines Outputs of logic devices having many inputs Outputs from state devices Address, control, and data buses

Initialization Design circuits to be easily initializable Ad-Hoc Design circuits to be easily initializable Initialization Process bringing a sequential circuit into a known state at some known time Circuits requiring some clever initialization sequence should be avoided Flip-flop with explicit clear Use explicit clear to all FFs

Oscillators and Clocks Ad-Hoc Disable internal oscillators and clocks during test Example A = 0 and B : Test input

Partitioning Ad-Hoc Partitioning shift registers into smaller units

Partitioning Ad-Hoc Split large counters

Partitioning Ad-Hoc Partitioning large circuits into small subcircuits to reduce test generation cost Example T1=0 T2=0 : Normal Mode T1=0 T2=1 : Test C1 T1=1 T2=0 : Test C2

Avoid Use of Redundant Logic Design Rule If a redundant fault occurs, it may invalidate some test for non-redundant faults Such faults cause difficulty in calculating fault coverage Much test generation time can be spent

Avoid Global Feedback Paths Design Rule Provide logic to break global feedback paths Asynchronous circuits other than latches should be avoided when possible Avoid combinational feedback loop

Avoid Gated Clock Make sure EN settles before CLK changes Design Rule Make sure EN settles before CLK changes Or redesign the circuit as follows

Bypass Counters Design Rule

Avoid Internal Pulse Generator Design Rule All internal pulse or clock generators should be isolated during test

Avoid Cross-coupled NAND/NOR Design Rule Add logic to make each cross-coupled NAND/ NOR gate behave as a transparent buffer during test

Avoid Bus Floating Design Rule Make sure each tristate bus has one pullup register, pulldown register or bus holder

Avoid Potential Bus Contention Design Rule Make sure only one tristate gate is selected at a time

Easily Testable Circuits Testable Design Aimed at developing design techniques that start with a functional specification and results that are easy to test Properties Small test sets No redundancy Tests can be found without much extra work Tests can be easily generated Faults should be locatable to the desire degree