Design for Test of Digital Systems TDDC33 Erik Larsson Department of Computer Science

advertisement
Design for Test of Digital Systems
TDDC33
Erik Larsson
Department of Computer Science
1
Invited lectures
 Lecture 7 Invited Talk by Dr. Ingemar Söderquist, SAAB,
September 28 at 13-15
 Lecture 8 Invited Talk by Dr. Thomas Granlund, SAAB,
October 05 at 13-15
2
Course Outline
 Introduction; Manufacturing, Wafer sort, Final test, Board and
System Test, Defects, and Faults
 Test generation; combinational and sequential test generation
 Design-for-Test techniques; test point insertion, scan,
enhanced scan
 Test data compression, Built-In Self-Test; Logic BIST and
memory BIST
 System Chip Test; test architectures, test planning, test
scheduling, and power constraints
 System Test and Boundary Scan
3
Making fault free electronic products
ok?
ok?
ok?
Test
specification
ok?
ok?
Test Preparation
Production Test
In-Field Test
4
Printed Circuit Board (PCB)
IC
IC
Core
Logic
IC
Core
Logic
IC
Core
Logic
Core
Logic
PCB
5
Probing for Test
6
Bed-of-Nails
Top view
Side view
PCB
IC
IC
IC
No testing
IC
Core
Logic
IC
Core
Logic
Bed of nails
IC
Core
Logic
Core
Logic
PCB
IC
IC
PCB
Testing
Bed of nails
7
Test Objectives
 Given a Printed Circuit Board (PCB) composed of a set of
components (ICs) where each component is tested good.
 The main objectives are to ensure that all components are:

correct (the desired ICs are selected)

mounted correctly at the right place on the board and

ensuring that interconnections are functioning according to
specification
 Problems that may occur:

A component does not contain logic

A component is not placed where it should be,

A component is at its place but turned wrongly,

A component is correct but the interconnection is not correct, for
example due to bad soldering.
8
Comparing SOC Test and Board Test
SOC Test
Board Test
 Cores are not tested prior to
chip fabrication
 All components (chips) are
tested prior board fabrication
 Focus on both core test
(internal test) and connection
test (external test)
 Main focus on test of
interconnections (external test)
9
IEEE 1500 Core Test Standard
 Goals

Define test interface between core and SOC

Core isolation

Plug-and-play protocols
 Scope

Standardize core isolation protocols and test modes

TAM design

Type of test to be applied

Test scheduling
10
IEEE 1500 Wrapper
Test stimuli
W
B
R
W
B
R
Test responses
Core
Functional data
W
B
R
W
B
R
WBY
Test control+
test stimuli
wrapper
WIR
Functional data
Test control+
test responses
WIP
11
WPP (optional)
Test Wrapper
WPC
WPO
WPI
WSP: Wrapper Serial Port
WSI: Wrapper Serial Input
WSC: Wrapper Serial Control
WSO: Wrapper Serial Output
WPP: Wrapper Parallel Port
WPI: Wrapper Parallel Input
WPC: Wrapper Parallel Control
WPO: Wrapper Parallel Output
Core
WSI
wrapper
WSO
WSC
WSP (mandatory)
 Interface between module and the rest of the chip; makes it possible
access core and isolate core from rest of the system.
 Test modes

Normal: Functional mode

InTest: test of module itself

ExTest: test of interconnection to other core
 IEEE 1500 Standard for Embedded Core Test
13
Test Wrapper: Modes
WFO
WFI
WSI
W
B
R
FO
Core FO
FI
FI
W
B
R
WFO
Normal mode
WFI
Normal mode
W
B
R
FO Core FO
FI
Test enable
Test enable
WBY
WBY
WSO
WIR
wrapper
WSI
wrapper
WSC
UDL
UDL
WSI
W
B
R
FI
FI
Normal mode
WSO
WIR
W
B
R
W
B
R
UDL
UDL
FO Core FO
FI
FI
Test enable
Test enable
WBY
WBY
WIR
Normal mode
WSC
FO Core FO
wrapper
FI
W
B
R
WSO
WSI
wrapper
WIR
W
B
R
WSO
15
WSC
WSC
Boundary Scan (IEEE std. 1149.1)
 The Joint European Test Action Group (JETAG), formed in
mid-80, became Joint Test Action Group (JTAG) in 1988 and
formed the IEEE std 1149.1. The standard consists of:

Test Access Port (TAP)

TAP Controller (TAPC),

Instruction Register (IR), and

Data Registers (DR)
19
Boundary Scan
BSC
BSC
BSC
Core logic
BSC
Core logic
BSC
BSC
BSC
BSC
Bypass
TDI
TDO
Instruction Register
TMS
TCK
TAP Controller
TRST
20
20
IEEE Std. 1149.1 and IEEE Std. 1500
(User-defined WPP = WPI+WPO+WPC)
BSC
BSC
BSC
W
B
R
BSC
Core logic
BSC
BSC
BSC
BSC
Bypass
FO
FI
FI
WFO
W
B
R
FO
FO
FI
FI
TDO
TAP Controller
W
B
R
WFO
WFI
Test enable
Instruction Register
TMS
TCK
W
B
R
Core
WFI
TDI
FO
WBY
WSI
wrapper
WIR
WSO
TRST
WSC: WRCK, WRST, SelectWR,
ShiftWR, CaptureWR, UpdateWR
21
Boundary Scan
Boundary Scan cell
Core
Logic
Core
Logic
IC
IC
TAP
TAP
TAP
IC
TAP
IC
Core
Logic
Core
Logic
Boundary Scan chain
TDI
TCK
TMS
TRST
TDO
PCB
22
Boundary Scan Cell (BSC)
SO
MODE
IN
ShiftDR
0
1
MUX
D FF
Q
D FF
MUX
OUT
Q
1
0
SI
ClockDR
UpdateDR
SO
IN
BSC
CTO
OUT
SI
CFI
WBC
CFO
CTI
Std. 1149
Std. 1500
23
Boundary Scan
BSC
BSC
BSC
BSC
Core logic
BSC
BSC
BSC
BSC
Internal
Registers
TDI
Bypass
TDO
Miscellaneous
Registers
Instruction Register
TMS
TCK
TAP Controller
TRST
24
Boundary Scan
Bypass Register
Boundary Scan Register
TDO
TDI
T
P
Design Specific Data Registers
ShiftDR
A
TAP Controller
TMS
TCK
TRST
Device ID Register
ClockDR
TDI: Test Data In
UpdateDR
Reset
Data Registers (DR)
ClockIR
ShiftIR
Instruction Decode
UpdateIR
Instruction Register (IR)
TDO: Test DataOut
TMS: Test Mode Select
TCK: Test Clock
Optional registers and signals are shown in dotted lines
25
TMS and TCK are used to control
the behavior of the TAP.
TAP Controller
TMS
Control of data registers
Control of instruction register
Test-Logic-Reset
1
Run-Test/Idle
0
1
0
1
1
Select-DR-Scan
1
Select-IR-Scan
0
Capture-DR
1
0
Shift-IR
0
Shift-DR
1
0
Exit1-DR
0
1
1
Update-DR
1
1
0
Pause-IR
1
0
Exit2-DR
0
1
Exit1-IR
Pause-DR
1
0
0
Capture-IR
Exit2-IR
1
Update-IR
0
1
0
26
Instructions
 Mandatory

Bypass; used to bypassing an IC

Extest; tests interconnection between ICs

Sample/Preload; used to sample (snapshot) and preload boundary
scan during operation
 Optional

Intest

Runbist

Clamp

Idcode

Usercode

Highz
27
Boundary Scan Description Language (BSDL)

BSDL is a subset of VHDL that describes how JTAG (IEEE 1149.1) is
implemented in a particular device.

For a device to be JTAG compliant, it must have an associated BSDL file.

Use BSDL file to work out how to access a device in the JTAG chain.

BSDL files contain the following elements:

Entity Description: Statements naming the device.

Generic Parameter: A value such as a package type.

Port Description: Describes the pins on the device.

Use Statements: References external definitions.

Pin Mapping(s): Maps logical signals in the device to physical pins.

Scan Port Identification: Defines the pins to access the JTAG capabilities (TDI, TDO,
etc - the Test Access Port).

Instruction Register Description: Signals to access JTAG device modes.

Register Access Description: Which register is placed between TDI and TDO for
each JTAG instruction.

Boundary Register Description: List of the boundary scan cells and their
functionality.
28
Mapping component data to the BScan
Chain
”Manual” composition of the scan data arrays –
Knowledge of position in the overall chain is required
TDI data
TDO data
Component data for one or more DR registers
29
BYPASS
BSC
BSC
BSC
BSC
Core logic
TDI
BSC
BSC
BSC
BSC
Bypass
TDO
Instruction Register
TMS
TCK
TAP Controller
TRST
30
EXTEST
Shift-DR (IC1)
TDI
Core
Logic
Core
Logic
IC
IC
TAP
TAP
To be tested
TCK
TMS
TRST
TDO
TAP
TAP
IC
IC
Core
Logic
Core
Logic
PCB
31
EXTEST
TDI
Core
Logic
Core
Logic
IC
IC
TAP
Update-DR (IC1)
TAP
To be tested
TCK
TMS
TRST
TDO
TAP
TAP
IC
IC
Core
Logic
Core
Logic
Capture (IC2)
PCB
32
EXTEST
TDI
Core
Logic
Core
Logic
IC
IC
TAP
TAP
To be tested
TCK
TMS
TRST
TDO
TAP
TAP
IC
IC
Core
Logic
Core
Logic
Shift-DR (IC2)
PCB
33
Scan and MBIST support with Boundary
Scan
Scan_out
Scan_en
Logic
BIST
controller
BIST
decoder
Scan
decoder
Memory
Compressor
Bist_sel
Mbist
Bist_so
Scan_in
Scan path
Int_scan
Decoder
TDI
TCK
TMS
Instruction register
TAP Controller
MUX
TDO
34
Making fault free electronic products
ok?
ok?
ok?
Test
specification
ok?
ok?
Test Preparation
Production Test
In-Field Test
35
Introduction
Backplane
36
Ring Architecture with Shared TMS
IC
Core
Logic
IC
Core
Logic
IC
Core
Logic
IC
Core
Logic
IC
Core
Logic
IC
Core
Logic
IC
Core
Logic
IC
Core
Logic
PCB
PCB
TDI
TCK
TMS
TRST
TDO
IC
Core
Logic
IC
Core
Logic
IC
Core
Logic
IC
Core
Logic
IC
Core
Logic
IC
Core
Logic
IC
Core
Logic
IC
Core
Logic
PCB
PCB
37
Ring Architecture with Separate TMS
IC
Core
Logic
IC
Core
Logic
IC
Core
Logic
IC
Core
Logic
IC
Core
Logic
IC
Core
Logic
IC
Core
Logic
IC
Core
Logic
PCB
TDI
TCK
TMS1
TMS2
TMS3
TMS4
TRST
TDO
PCB
IC
Core
Logic
IC
Core
Logic
IC
Core
Logic
IC
Core
Logic
IC
Core
Logic
IC
Core
Logic
IC
Core
Logic
IC
Core
Logic
PCB
PCB
38
Star Architecture
TDI
TCK
TMS
TDO
IC
Core
Logic
IC
Core
Logic
IC
Core
Logic
IC
Core
Logic
IC
Core
Logic
IC
Core
Logic
IC
Core
Logic
IC
Core
Logic
PCB
PCB
TDI
TCK
TMS
TDO
TDI
TCK
TMS
TDO
TDI
TCK
TMS
TDO
IC
Core
Logic
IC
Core
Logic
IC
Core
Logic
IC
Core
Logic
IC
Core
Logic
IC
Core
Logic
IC
Core
Logic
IC
Core
Logic
PCB
PCB
39
Multi-drop Architecture
Bus master
IC
Core
Logic
IC
Core
Logic
IC
Core
Logic
IC
Core
Logic
IC
Core
Logic
IC
Core
Logic
IC
Core
Logic
IC
Core
Logic
PCB
PCB
Multi-Drop
Device
Multi-Drop
Device
TDI
TCK
TMS
TDO
Multi-Drop
Device
Multi-Drop
Device
IC
Core
Logic
IC
Core
Logic
IC
Core
Logic
IC
Core
Logic
IC
Core
Logic
IC
Core
Logic
IC
Core
Logic
IC
Core
Logic
PCB
PCB
40
IEEE 1149 Standard Family
Number
Main objectives
Status
1149.1
Testing of digital chips and
interconnects between chips
Std. 1149.1-1990
Std. 1149.1a-1993
Std. 1149.1b-1994 (BSDL)
Std. 1149.1-2001
1149.2
Extended digital serial interface
Discontinued
1149.3
Direct access testability interface
Discontinued
1149.4
Mixed-signal test bus
Std. 1149.4-1999
1149.5
Standard module test and
maintenance (MTM) bus
Std. 1149.5-1995 (not endorsed by
IEEE since 2003)
1149.6
High-speed network interface
protocol
Std. 1149.6-2003
1149.7
Reduced-Pin and EnhancedFunctionality Test Access Port
Std.1149.7-2009
41
IJTAG P1687
 IJTAG P1687 Statement of Scope:

This standard will develop a methodology for access to embedded
test and debug features, (but not the features themselves) via the
IEEE 1149.1 Test Access Port (TAP) and additional signals that
may be required. The elements of the methodology include a
description language for the characteristics of the features and for
communication with the features, and requirements for interfacing
to the features
42
Interface and scan-path
43
Farrokh Ghani Zadegan, Urban Ingelsson, Gunnar Carlsson and Erik Larsson, “Test Time Analysis for IEEE
P1687”, IEEE 19th Asian Test Symposium(ATS2010), Shanghai, China, Dec. 2010
Analysis of IEEE P1687 network

The control data for the SIB is transported on the same wire as test data

Control data is transferred to the status register when the JTAG state
machine does ”apply and capture”

“CUC” : Apply Capture Update Cycle : 5 clock cycles in the FSM
44
The infrastructure
45
Analysis: Hierarchical architecture
Concurrent test schedule
46
Analysis: Hierarchical architecture
Concurrent test schedule
47
Analysis: Hierarchical architecture
Concurrent test schedule
48
Analysis: Hierarchical architecture
Concurrent test schedule
49
Analysis: Hierarchical architecture
Concurrent test schedule
50
Analysis: Hierarchical architecture
Concurrent test schedule
51
Making fault free electronic products
ok?
ok?
ok?
Test
specification
ok?
ok?
Test Preparation
Production Test
In-Field Test
52
A Fault Management View
Network
Management
NMS
displays & correlates alarms
I/f: Mun, standard Alarm IRP
Sub-network
Management
OSS
• alarm subscriptions
• alarm list presentation
• standard interfaces
• alarm filtering
I/f: Mur, Mub
Element Management of
Network Elements
• alarm log
RBS
• alarm list
• alarm correlation within NE
53
Mudassar Majeed, Daniel Ahlström, Urban Ingelsson, Gunnar Carlsson and Erik Larsson, “Efficient embedding of
deterministic test data”, IEEE 19th Asian Test Symposium(ATS2010), Shanghai, China, Dec. 2010
Embedded deterministic test

Printed Circuit Boards with mounted ICs

In-field test (boot-up, regular checks)




Detects manufacturing test escapes

Detects faults that are due to wear-out, environmental impact etc.
In-field diagnosis

To determine which IC has the fault

Requires on-system test evaluation
Key problem: Storing the test data on the system

High memory requirements

Inflexible in applying different tests
The proposed solution

An embedded test controller to manipulate test data based on commands

With the help of structural information about the system

Reduces memory requirements and provides flexibility

Supports diagnosis

Based on IEEE 1149.1 JTAG
54
Embedded test-specific circuitry
55
IEEE 1149.1
56
Memory requirements
57
Basic idea behind the solution
58
Kim Petérsen, Dimitar Nikolov, Urban Ingelsson, Gunnar Carlsson and Erik Larsson, “An MPSoCs demonstrator
for fault injection and fault handling in an IEEE P1687 environment”, IEEE 17th European Test Symposium (ETS
2012), Annecy, France, May 28-June 1, 2012.
Demonstrator
MPSoC
MEMORY
MASTER CPU
RM
IAI
IM
ACCELERATOR
FIPI
DSP
CPU
BLOCK
INSTRUMENT
FIM
MASTER CPU
Instrument Access Infrastructure
TAP
SIB
SIB
FIF
SIB
Segment Insertion Bit
(SIB)
M
SIB
SIB
FIF
DSP
SIB
SIB
FIF
CPU1
M
FIF
M
SIB
FIF
M
CPU2
SIB
FIF
M
CPU10
M
FIF
M
MASTER CPU
Instrument Access Infrastructure
TAP
Closed SIB
FIF
SIB
Opened SIB
M
SIB
SIB
FIF
DSP
SIB
SIB
FIF
CPU1
M
FIF
M
SIB
FIF
M
CPU2
SIB
FIF
M
CPU10
M
FIF
M
MASTER CPU
TAP
Fault Indication and Propagation
Infrastructure
SIB
SIB
FIF
SIB
Fault Indication Flag
M
SIB
SIB
Masking Bit
FIF
DSP
SIB
SIB
FIF
CPU1
M
FIF
M
SIB
FIF
M
CPU2
SIB
FIF
M
CPU10
M
FIF
M
MASTER CPU
TAP
RM
IM
0
System-Level
0
00
DSP
Component Type-Level
00
00
00
Fault injection
11
CPU1
Component-Level
00
00
CPU2
00
00
CPU10
00
0..0
0..0
MASTER CPU
TAP
RM
IM
0
System-Level
0
00
DSP
Component Type-Level
00
00
00
Fault injection
11
CPU1
Component-Level
00
00
CPU2
00
00
CPU10
00
1..0
0..0
MASTER CPU
TAP
RM
IM
0
System-Level
0
00
DSP
Component Type-Level
00
10
00
Fault injection
11
CPU1
Component-Level
00
00
CPU2
00
00
CPU10
00
1..0
0..0
MASTER CPU
Initiate identification
TAP
RM
Fault Detection
IM
1
System-Level
0
00
DSP
Component Type-Level
00
10
00
Fault injection
11
CPU1
Component-Level
00
00
CPU2
00
00
CPU10
00
1..0
0..0
MASTER CPU
Continue identification
TAP
RM
IM
1
System-Level
0
00
DSP
Component Type-Level
11
CPU1
Component-Level
00
10
00
00
00
CPU2
00
00
CPU10
00
1..0
0..0
MASTER CPU
TAP
RM
IM
Initiate re-execution on
Fault
source
identified
CPU
1 and keep
monitoring system
operation
1
System-Level
0
00
DSP
Component Type-Level
11
CPU1
Component-Level
00
10
00
00
00
CPU2
00
00
CPU10
00
1..0
0..0
MASTER CPU
TAP
RM
IM
0
System-Level
0
00
System has recovered
from a
00
00
DSP
00
soft
fault
Component Type-Level
00
CPU1
Component-Level
00
00
CPU2
00
00
CPU10
00
0..0
0..0
Design for Test of Digital Systems
TDDC33
Erik Larsson
Department of Computer Science
70
Download