38
Technical University Tallinn, ESTONIA DESIGN FOR TESTABILITY Raimund Ubar [email protected] e

Technical University Tallinn, ESTONIA DESIGN FOR TESTABILITY Raimund Ubar [email protected]

Embed Size (px)

Citation preview

Page 1: Technical University Tallinn, ESTONIA DESIGN FOR TESTABILITY Raimund Ubar raiub@pld.ttu.ee

Technical University Tallinn, ESTONIA

DESIGN FOR TESTABILITY

Raimund Ubar

[email protected]

Page 2: Technical University Tallinn, ESTONIA DESIGN FOR TESTABILITY Raimund Ubar raiub@pld.ttu.ee

Technical University Tallinn, ESTONIA

Design for Testability

Lectures• Testability of Digital Systems• Design for Testability Methods• BIST/BISD

Practical Works• Two laboratory works• Course work

Page 3: Technical University Tallinn, ESTONIA DESIGN FOR TESTABILITY Raimund Ubar raiub@pld.ttu.ee

Technical University Tallinn, ESTONIA

Literature

• L.-T.Wang, C.-W.Wu, X.Wen. VLSI Test Principles and Architectures. Elsevier, 2006, 777 p.

• O.Novak, E.Gramatova, R.Ubar. Handbook of Testing Electronic Systems. Czech TU Publishing House, 2005, 395 p.

• A.Miczo. Digital Logic Testing and Simulation. Wiley-Interscience, New Yersey, 2003, 668 p.

• N.Jha, S.Gupta. Testing of Digital Systems. Cambridge Univ. Press, 2003, 1000 p.

• R.Ubar, J.Raik, Th.Vierhaus. IGI Global, Hershey – New York, 2011, 550 p.

Page 4: Technical University Tallinn, ESTONIA DESIGN FOR TESTABILITY Raimund Ubar raiub@pld.ttu.ee

Technical University Tallinn, ESTONIA

Literature

Other:• H.-J.Wunderlich, Ed. Models in Hardware Testing. Springer, 2010.• M.Gössel, E.Sogomonjan et. al. New Methods of Concurrent

Checking. Springer, 2008.• D.Gizopulos. Advances in Electronic Testing, Technology &

Engineering. Springer, 2006.• D.Gizopulos, A.Paschalis, Y.Zorian. Embedded Processor-Based

Self-Test. Kluwer Acad. Publishers, 2004.

Page 5: Technical University Tallinn, ESTONIA DESIGN FOR TESTABILITY Raimund Ubar raiub@pld.ttu.ee

Technical University Tallinn, ESTONIA

Goals of the DFT Course

• To give the basic knowledge: – How to improve test quality at increasing

complexities of systems?

• This knowledges includes – understanding of how the physical

defects can influence on the behavior of systems, and what is diagnostic modelling

– understanding the meaning of testability, and how to design well testable systems

– learning the basic methods of making systems self-testable

• The goal is also to give some hands-on experience of solving test related problems

5

Page 6: Technical University Tallinn, ESTONIA DESIGN FOR TESTABILITY Raimund Ubar raiub@pld.ttu.ee

Technical University Tallinn, ESTONIA

Practical Importance of testability?

• To improve the manufacturing processes and to increase the yield

• To design reliable systems out of not reliable components which leads to the need of fault-tolerance

• Field diagnosis is the traditional task• The Rule of Ten is the Sword of

Damokles • The increasing complexity of VLSI

circuits has made test and diagnosis the most complicated problems in digital design

6

Automated diagnosis is needed

Page 7: Technical University Tallinn, ESTONIA DESIGN FOR TESTABILITY Raimund Ubar raiub@pld.ttu.ee

Integreeritud elektroonikasüsteemide ja biomeditsiinitehnika tippkeskus© Raimund Ubar

Why the topic of DFT is important?

7

Tiina Ubar

1. We depend too much on computers and on the technical systems controlled by computers

Page 8: Technical University Tallinn, ESTONIA DESIGN FOR TESTABILITY Raimund Ubar raiub@pld.ttu.ee

Integreeritud elektroonikasüsteemide ja biomeditsiinitehnika tippkeskus© Raimund Ubar

Computers and Embedded SystemsUniversal

computers2%

Microprocessor market shares

98 %

We notice our dependency on electronics only when it suddenly

gives up to work

8

Embedded systems 98%

Page 9: Technical University Tallinn, ESTONIA DESIGN FOR TESTABILITY Raimund Ubar raiub@pld.ttu.ee

Research in ATI© Raimund Ubar

9

1991. Fault in the Patriot missile in the Gulf War - killing 28 soldiers and injuring 100 people

1995. Intel Pentium processor was found faulty - $475 millions of loss

1995. Ariane 5 reached the altitude of 3700 m and exploded – $7 billions of loss

2003. Space Shuttle Columbia disaster killing all 7 crew members

2010. Failure in the Toyota’s anti-lock brake system - 4,5 millions cars back to the industry

Why the topic of DFT is important?

2. Engineering has two sides:-99% of the engireering creation brings us happiness-1% causes trouble (the blame against engineers)Engineering artifacts must be safe, secure and dependable

In 5 years the US economic loss from computer

bugs has increased 5

times

Now 60 billions USD per year

Page 10: Technical University Tallinn, ESTONIA DESIGN FOR TESTABILITY Raimund Ubar raiub@pld.ttu.ee

Technical University Tallinn, ESTONIA

Introduction: Testing World

Test

System

Fault dictionary

System model

Test generation

Fault simulation

Test result

Fault diagnosis

Go/No go Located defect

Test experiment

Test tools

(BIST)

Page 11: Technical University Tallinn, ESTONIA DESIGN FOR TESTABILITY Raimund Ubar raiub@pld.ttu.ee

© Raimund Ubar

11

What is a test?Test-

program

Testresults

Processor

12 + 10 = ?

22

Diagnosis

How many test patterns are needed

to test an adder?

Page 12: Technical University Tallinn, ESTONIA DESIGN FOR TESTABILITY Raimund Ubar raiub@pld.ttu.ee

Technical University Tallinn, ESTONIA

Hierarchy: Divide and Conquer

The best place to start iswith a good title.Then builda song around it. (Wisdom of country music)

System

16 bit counter

&

1Sequence

of 216 bits

Sea of gates

To generate a testfor a componentin a system,the computerneeded2 days and 2 nights

An engineerdid it „by hand“with 15 minutes

So, why computers?

Engineer vs. computer:

Design for Testability

Page 13: Technical University Tallinn, ESTONIA DESIGN FOR TESTABILITY Raimund Ubar raiub@pld.ttu.ee

Integreeritud elektroonikasüsteemide ja biomeditsiinitehnika tippkeskus© Raimund Ubar

Why the topic of DFT is important?

The main property of today’s systems is COMPLEXITY

To manage the complexity we have to know methods like:

- abstraction - modeling - simulation - hierarchical „divide

and conquer“ - ...

13

Page 14: Technical University Tallinn, ESTONIA DESIGN FOR TESTABILITY Raimund Ubar raiub@pld.ttu.ee

© Raimund Ubar

14

Why Design for Testability?

Defect

?

Expert systems were used in Europe

but not in US

Test generation process for detecting a fault:

0110

01

Expert system is needed to help the test programmer

Know-how

Page 15: Technical University Tallinn, ESTONIA DESIGN FOR TESTABILITY Raimund Ubar raiub@pld.ttu.ee

© Raimund Ubar

15

Why Design for Testability?

Hard-to-test-part

Defekt

?

New paradigm ScanPath Design

Test generation process for detecting a fault:

0110

01

011001

mindmappingsoftwareblog.com

Gordion Knot

Page 16: Technical University Tallinn, ESTONIA DESIGN FOR TESTABILITY Raimund Ubar raiub@pld.ttu.ee

© Raimund Ubar

16

Alexander cuts the Gordian Knot

Jean-Simon Berthélemy (1743–1811)

Page 17: Technical University Tallinn, ESTONIA DESIGN FOR TESTABILITY Raimund Ubar raiub@pld.ttu.ee

Technical University Tallinn, ESTONIA

Making Systems Transparent

Scan-Path design strategy

Combinational circuit

IN OUT

R qq’

Combinational circuit

IN OUT

R

Scan-IN

Scan-OUT

qq’

17

theisleofwightcomputergeek.co.uk

Page 18: Technical University Tallinn, ESTONIA DESIGN FOR TESTABILITY Raimund Ubar raiub@pld.ttu.ee

Technical University Tallinn, ESTONIA

Boundary Scan Standard

Page 19: Technical University Tallinn, ESTONIA DESIGN FOR TESTABILITY Raimund Ubar raiub@pld.ttu.ee

Technical University Tallinn, ESTONIA

System under test

Design for Testability

Improving observabilityImproving

controllability

Control points

To ways for improving testability with inserting of control points:

19

Page 20: Technical University Tallinn, ESTONIA DESIGN FOR TESTABILITY Raimund Ubar raiub@pld.ttu.ee

Technical University Tallinn, ESTONIA

Introduction: Ad Hoc Design for Testability

Method of Test Points:

Block 1 Block 2Block 1 is not observable,Block 2 is not controllable

Block 1 Block 2

1- controllability: CP = 0 - normal working mode CP = 1 - controlling Block 2 with signal 1

1

CP

Improving controllability and observability:

OP

Block 1 Block 2

0- controllability: CP = 1 - normal working mode CP = 0 - controlling Block 2 with signal 0

&

CP

OP

Page 21: Technical University Tallinn, ESTONIA DESIGN FOR TESTABILITY Raimund Ubar raiub@pld.ttu.ee

Technical University Tallinn, ESTONIA

Introduction: Tradeoffs

Amusing testability:

Theorem: You can test an arbitrary digital system by only 3 test patterns if you design it approprietly

&011

101

001

1010 &011

101001

Solution: System FSM Scan-Path CC NAND

&011

101001 &

011

101

001

&?

Proof:

Page 22: Technical University Tallinn, ESTONIA DESIGN FOR TESTABILITY Raimund Ubar raiub@pld.ttu.ee

Technical University Tallinn, ESTONIA

Introduction: Built-in Self-Test

Cores have to be tested on chip

Source: ElcoteqSource: Intel

22Copyright 2010 Raimund Ubar

Page 23: Technical University Tallinn, ESTONIA DESIGN FOR TESTABILITY Raimund Ubar raiub@pld.ttu.ee

Technical University Tallinn, ESTONIA

Introduction: Self-Test in Digital Systems

SoC

SRAMPeripheral ComponentInterconnect

SRAM

CPU

Wrapper

CoreUnderTest

ROM

MPEG UDLDRAM

Test AccessMechanism

Test AccessMechanism

Sink

SoC

Source

Test architecture components:

• Test pattern source & sink

• Test Access Mechanism

• Core test wrapper

Solutions:

• Off-chip solution

– need for external ATE

• Combined solution

– mostly on-chip, ATE needed for control

• On-chip solution

– BIST

Page 24: Technical University Tallinn, ESTONIA DESIGN FOR TESTABILITY Raimund Ubar raiub@pld.ttu.ee

Technical University Tallinn, ESTONIA

Self-Test in Complex Digital Systems

SoC

SRAMPeripheral ComponentInterconnect

SRAM

CPU

Wrapper

CoreUnderTest

ROM

MPEG UDLDRAM

Sink

SoC

Source

24

Test architecture components:

• Test pattern source & sink

• Test Access Mechanism

• Core test wrapper

Solutions:

• Off-chip solution

– need for external ATE

• Combined solution

– mostly on-chip, ATE needed for control

• On-chip solution

– BIST

Page 25: Technical University Tallinn, ESTONIA DESIGN FOR TESTABILITY Raimund Ubar raiub@pld.ttu.ee

Technical University Tallinn, ESTONIA

Introduction: What is BIST

• On circuit– Test pattern generation

– Response verification

• Random pattern generation,

very long tests• Response compression

BIST Control Unit

Circuitry Under Test

CUT

Test Pattern Generation (TPG)

Test Response Analysis (TRA)

IC

Page 26: Technical University Tallinn, ESTONIA DESIGN FOR TESTABILITY Raimund Ubar raiub@pld.ttu.ee

Technical University Tallinn, ESTONIA

Introduction: SoC BIST

System on Chip

Core 2

Core 3 Core 4 Core 5

Embedded Tester Core 1

Test accessmechanismBIST BIST

BISTBISTBIST

Test Controller

TesterMemory

Optimization:- testing time - memory cost - power consumption - hardware cost - test quality

Page 27: Technical University Tallinn, ESTONIA DESIGN FOR TESTABILITY Raimund Ubar raiub@pld.ttu.ee

Technical University Tallinn, ESTONIA

Course Work. Investigations of BIST

• Design of a circuit• Evaluation of the testability of the circuit• Redesign for testability

– Control points selection, optimization– Scan path, optimization

• Built-in self-test. Design of solutions• Experimental research

Page 28: Technical University Tallinn, ESTONIA DESIGN FOR TESTABILITY Raimund Ubar raiub@pld.ttu.ee

Technical University Tallinn, ESTONIA

• In-circuit– Test pattern generation

– Response verification

• Pseudorandom test generation,

very long tests• Hybrid test solutions• Response compression

BIST Control Unit

Circuitry Under Test

CUT

Test Pattern Generation (TPG)

Test Response Analysis (TRA)

IC

Course Work. Introduction

Page 29: Technical University Tallinn, ESTONIA DESIGN FOR TESTABILITY Raimund Ubar raiub@pld.ttu.ee

Technical University Tallinn, ESTONIA

Course Work. Description of the Circuit

1. Design of a combinational circuit for the following functionality

If x = 0, z = 0, then Y = k1A + k2B, else

if x = 0, z = 1, then Y = k3A - k1C, else

if x = 1, z = 0, then

Y = (k1A k1B k2C) (k3C NOT (k3A) k1B),

else

if x = 1, z = 1, then Y = k4A2 + k5A + k6

Coefficients ki can be found on the next slide

Test Generator - LFSR

k1, k2

k3, k1

k1, k2, k3

k4, k5, k6

A B C x z

Y

MUX

4

4

Interface

Signature Analyzer

Page 30: Technical University Tallinn, ESTONIA DESIGN FOR TESTABILITY Raimund Ubar raiub@pld.ttu.ee

Technical University Tallinn, ESTONIA

Vers. No.

k1 k2 k3 k4 k5 k6Vers no.

k1 k2 k3 k4 k5 k6

1 1 1 1 0,1 0,2 0,5 8 1 1 1 1,5 0,1 0,5

2 1 1 0 0,1 0,2 1,0 9 1 1 0 1,5 0,1 1,0

3 1 0 1 0,1 0,2 2,0 10 1 0 1 1,5 0,4 2,0

4 1 0 0 0,1 0,2 3,0 11 1 0 0 1,5 0,4 3,0

5 0 1 1 0,1 1,0 0,5 12 0 1 1 1,5 0,8 0,5

6 0 1 0 0,1 1,0 1,0 13 0 1 0 1,5 0,8 1,0

7 0 0 1 0,1 2,0 2,0 14 0 0 1 1,5 1,5 2,0

Coefficients for the Course Work Versions

Page 31: Technical University Tallinn, ESTONIA DESIGN FOR TESTABILITY Raimund Ubar raiub@pld.ttu.ee

Technical University Tallinn, ESTONIA

Course Work. Design of Interface Versions

2. Use three different interface versions for experiments: 1 bit, 2-bit and 4- or more bit interfaces for respective n-bit Signature Analyzers

The types of interface:

1)

Y

1 bit SA

2)

2

2 bit SA

Y 2

3)

Y 4

n bit SA

Test Generator - LFSR

k1, k2

k3, k1

k1, k2, k3

k4, k5, k6

A B C x z

Y

MUX

4

4

Interface

Signature Analyzer

Page 32: Technical University Tallinn, ESTONIA DESIGN FOR TESTABILITY Raimund Ubar raiub@pld.ttu.ee

Technical University Tallinn, ESTONIA

Course Work. Design of a Testable Circuit

3. Enter the designed gate-level (AND, OR, NOT) combinational circuit

into the computer, using CADENCE circuit editor 4. Generate test patterns with Turbo-Tester (TT) ATPG. If the fault

coverage is 100%, remove one or more patterns from the test set, so that at least two faults remain undetected.

5. Improve the testability of the circuit to reach again 100% fault coverage with the updated test set

Block 1 Block 2

1- controllability: CP = 0 - normal working mode CP = 1 - controlling Block 2 with signal 1

1

CP

OP

Page 33: Technical University Tallinn, ESTONIA DESIGN FOR TESTABILITY Raimund Ubar raiub@pld.ttu.ee

Technical University Tallinn, ESTONIA

Course Work. Observability Investigation

6. Analyze two different testability improvement solutions:

- Separate pins for all observability points

- Single joint pin for all observability points

Draw the graphics for both cases for the function P = f(T) where P is fault coverage, and T is test length

Page 34: Technical University Tallinn, ESTONIA DESIGN FOR TESTABILITY Raimund Ubar raiub@pld.ttu.ee

Technical University Tallinn, ESTONIA

Course Work. Design of a Test Generator

7. Generate test patterns by the BILBO tool for 10 different polynomials, and find the best structure for the LFSR

Report for all 10 experiments the maximum achievable fault coverage, and fix the minimum test length needed for that

Calculate the increase of the circuit size (in number of 2-input gates) due to adding of the self-test circuitry

BILBO - Built- In Logic Block Observer:

LFSR - Test Pattern Generator

Combinational circuit

LFSR - Signature analyzer

Page 35: Technical University Tallinn, ESTONIA DESIGN FOR TESTABILITY Raimund Ubar raiub@pld.ttu.ee

Technical University Tallinn, ESTONIA

Course Work. Design of a Test Generator

8. Repeat the previous task for the case of using CSTP ("Circular Self Test Path") for self-test purposes

CSTP - Circular Self-Test Path:

LFSR - Test Pattern Generator

& Signature analyser

Combinational circuit

Page 36: Technical University Tallinn, ESTONIA DESIGN FOR TESTABILITY Raimund Ubar raiub@pld.ttu.ee

Technical University Tallinn, ESTONIA

Course Work. Design of a Signature Analyzer

9. Carry out experiments with the best test set found in task 7 for 4 different Signature Analyzers: 1-bit, 2-bit, 4-bit, and 8-bit

Calculate the fault coverages

Draw the graphic P = f(SA), where P is the fault coverage and SA – is the number of bits in the Signature Analyzer

Draw 4 graphics P = f(T), for 4 SA cases, where T – is the test length 5, 10, 15, 20 etc. up to P = 100% Explain the graphics

4

1)

Y

1 bit SA

2)

2

2 bit SA

Y2

3)

Y4

n bit SA

Test Generator - LFSR

k1, k2

k3, k1

k1, k2, k3

k4, k5, k6

A B C x z

Y

MUX

4

4

Interface

Signature Analyzer

Page 37: Technical University Tallinn, ESTONIA DESIGN FOR TESTABILITY Raimund Ubar raiub@pld.ttu.ee

Technical University Tallinn, ESTONIA

Course Work. Store-and-Generate BIST

Problem: low fault coverageThe main motivations of using random patterns are: - low generation cost - high initial efeciency

0 2n-1

Using many seeds:Pseudorandom test:

Long PR test:

Hard to test faults

0 2n-1

Pseudorandom test:

Time

Fau

lt C

ove

rag

e

Page 38: Technical University Tallinn, ESTONIA DESIGN FOR TESTABILITY Raimund Ubar raiub@pld.ttu.ee

Technical University Tallinn, ESTONIA

Course Work. Store-and-Generate BIST

10. Synthesize an optimal BIST, using "store & generate“ architecture. Chose for that the best BILBO structure and ja the 100% test with length N. Minimize the number of seeds to be stored in the memory

ROM TPG UUT

ADR

Counter 2 Counter 1

RD

CL

11. Compare the results in tasks 4, 5, 7, 8 and 10. Which solution is the best and why? Draw the block-level final structure of the selected best BIST solution.

12. Present a report of the course work.