Documente Academic
Documente Profesional
Documente Cultură
1 Boundary-Scan (JTAG)
David Lavo lavo@soe.ucsc.edu UC Santa Cruz January 27, 2005
Outline
What is 1149.1? 1149.1 Basics Documentation & Resources 1149.1 for the Designer Extended Uses for the TAP Controller
David Lavo
Intro To Boundary-Scan
Board Test
David Lavo
Intro To Boundary-Scan
Outline
What is 1149.1? 1149.1 Basics Documentation & Resources 1149.1 for the Designer Extended Uses for the TAP Controller
David Lavo
Intro To Boundary-Scan
1149.1 Hardware
Test Access Port: 5 pins TAP Controller
Finite State Machine Internal registers (Bypass, Instruction, etc.) Test control logic
Boundary-Scan Components
I
Chip Core
David Lavo
Intro To Boundary-Scan
TDI
TMS TCK TRST_N TDO
Bypass Reg.
Instruction Register
Instruction Decode
David Lavo
Intro To Boundary-Scan
0
Run-Test/Idle
Select-DR-Scan
Select-IR-Scan
0 1
0
Capture-DR
0 1 0
Capture-IR
0
Shift-DR
0
Shift-IR
1
Exit1-DR
1
Exit1-IR
0
Pause-DR
0
Pause-IR
1 0
Exit2-DR
1 0
Exit2-IR
1
Update-DR
1
Update-IR
BYPASS Instruction
A mandatory instruction The default instruction for TAPs with no IDCODE register Short scan path: 1 bit between TDI and TDO Usually loaded in chips that are idle while other chips on the board are being tested
David Lavo Intro To Boundary-Scan
11
TDI
TMS TCK TRST_N TDO
Bypass Reg.
Instruction Register
Instruction Decode
David Lavo
Intro To Boundary-Scan
12
Data is first loaded into boundary register chain with SAMPLE/PRELOAD instruction
Samples inputs and outputs, pass-through Loads boundary register with data
David Lavo
Intro To Boundary-Scan
13
SAMPLE/PRELOAD: Start
SAMPLE/ PRELOAD TMS TDI TCK TDO TRST_N TAP Controller BYPASS
Chip Core
David Lavo
Intro To Boundary-Scan
14
0
Run-Test/Idle
Select-DR-Scan
Select-IR-Scan
0 1
0
Capture-DR
0 1 0
Capture-IR
0
Shift-DR
0
Shift-IR
1
Exit1-DR
1
Exit1-IR
0
Pause-DR
0
Pause-IR
1 0
Exit2-DR
1 0
Exit2-IR
1
Update-DR
1
Update-IR
TDI
TMS TCK TRST_N TDO
Bypass Reg.
Instruction Register
Instruction Decode
David Lavo
Intro To Boundary-Scan
16
0
Run-Test/Idle
Select-DR-Scan
Select-IR-Scan
0 1
0
Capture-DR
0 1 0
Capture-IR
0
Shift-DR
0
Shift-IR
1
Exit1-DR
1
Exit1-IR
0
Pause-DR
0
Pause-IR
1 0
Exit2-DR
1 0
Exit2-IR
1
Update-DR
1
Update-IR
SAMPLE/PRELOAD: UpdateIR
SAMPLE/ DATA PRELOAD
Chip Core
David Lavo
Intro To Boundary-Scan
18
0
Run-Test/Idle
Select-DR-Scan
Select-IR-Scan
0 1
0
Capture-DR
0 1 0
Capture-IR
0
Shift-DR
0
Shift-IR
1
Exit1-DR
1
Exit1-IR
0
Pause-DR
0
Pause-IR
1 0
Exit2-DR
1 0
Exit2-IR
1
Update-DR
1
Update-IR
SAMPLE/PRELOAD: CaptureDR
Capture (sample) 0
DATA
David Lavo
Intro To Boundary-Scan
20
0
Run-Test/Idle
Select-DR-Scan
Select-IR-Scan
0 1
0
Capture-DR
0 1 0
Capture-IR
0
Shift-DR
0
Shift-IR
1
Exit1-DR
1
Exit1-IR
0
Pause-DR
0
Pause-IR
1 0
Exit2-DR
1 0
Exit2-IR
1
Update-DR
1
Update-IR
SAMPLE/PRELOAD: ShiftDR
0 1 DATA TMS TDI TCK TDO TRST_N 1 0 1 0
David Lavo
0 1
1 0
1 0
Chip Core
0 1
0 1
1 0
Intro To Boundary-Scan
22
0
Run-Test/Idle
Select-DR-Scan
Select-IR-Scan
0 1
0
Capture-DR
0 1 0
Capture-IR
0
Shift-DR
0
Shift-IR
1
Exit1-DR
1
Exit1-IR
0
Pause-DR
0
Pause-IR
1 0
Exit2-DR
1 0
Exit2-IR
1
Update-DR
1
Update-IR
SAMPLE/PRELOAD: UpdateDR
1 Mode=0 TMS TDI TCK TDO TRST_N 1 0 TAP Controller SMP/PRLD 1 1
Chip Core
David Lavo
Intro To Boundary-Scan
24
0
Run-Test/Idle
Select-DR-Scan
Select-IR-Scan
0 1
0
Capture-DR
0 1 0
Capture-IR
0
Shift-DR
0
Shift-IR
1
Exit1-DR
1
Exit1-IR
0
Pause-DR
0
Pause-IR
1 0
Exit2-DR
1 0
Exit2-IR
1
Update-DR
1
Update-IR
EXTEST: UpdateIR
1 EXTEST TMS TDI TCK TDO TRST_N 1 0 TAP Controller EXTEST Mode=1 1 0 1 0
Chip Core
David Lavo
Intro To Boundary-Scan
26
0
Run-Test/Idle
Select-DR-Scan
Select-IR-Scan
0 1
0
Capture-DR
0 1 0
Capture-IR
0
Shift-DR
0
Shift-IR
1
Exit1-DR
1
Exit1-IR
0
Pause-DR
0
Pause-IR
1 0
Exit2-DR
1 0
Exit2-IR
1
Update-DR
1
Update-IR
EXTEST: CaptureDR
Capture (sample) 1 DATA TMS TDI TCK TDO TRST_N TAP Controller EXTEST 1 0 1 1 0 1
Chip Core
0 1
0 1
1 0
David Lavo
Intro To Boundary-Scan
28
0
Run-Test/Idle
Select-DR-Scan
Select-IR-Scan
0 1
0
Capture-DR
0 1 0
Capture-IR
0
Shift-DR
0
Shift-IR
1
Exit1-DR
1
Exit1-IR
0
Pause-DR
0
Pause-IR
1 0
Exit2-DR
1 0
Exit2-IR
1
Update-DR
1
Update-IR
EXTEST: ShiftDR
0 1 DATA TMS TDI TCK TDO TRST_N 1 1 1 1
David Lavo
0 1
0 1
0 1
Chip Core
0 1
0 1
0 1
Intro To Boundary-Scan
30
0
Run-Test/Idle
Select-DR-Scan
Select-IR-Scan
0 1
0
Capture-DR
0 1 0
Capture-IR
0
Shift-DR
0
Shift-IR
1
Exit1-DR
1
Exit1-IR
0
Pause-DR
0
Pause-IR
1 0
Exit2-DR
1 0
Exit2-IR
1
Update-DR
1
Update-IR
EXTEST: UpdateDR
0 DATA TMS TDI TCK TDO TRST_N 0 0 TAP Controller EXTEST Mode=1 0 0 0 0
Chip Core
David Lavo
Intro To Boundary-Scan
32
Outline
What is 1149.1? 1149.1 Basics Documentation & Resources 1149.1 for the Designer Extended Uses for the TAP Controller
David Lavo
Intro To Boundary-Scan
33
Boundary-Scan Documentation
IEEE Standard:
IEEE Std 1149.1-1990 & 1149.1a-1993: IEEE Standard Test Access Port and Boundary-Scan Architecture IEEE Std 1149.1b-1994: Supplement to IEEE Std 1149.1-1990 . (BDSL) IEEE Std 1149.1-2001
Outline
What is 1149.1? 1149.1 Basics Documentation & Resources 1149.1 for the Designer Extended Uses for the TAP Controller
David Lavo
Intro To Boundary-Scan
35
David Lavo
Intro To Boundary-Scan
37
Core
Bad
David Lavo
Intro To Boundary-Scan
45
David Lavo
Intro To Boundary-Scan
46
Outline
What is 1149.1? 1149.1 Basics Documentation & Resources 1149.1 for the Designer Extended Uses for the TAP Controller
David Lavo
Intro To Boundary-Scan
47
Intro To Boundary-Scan
49
1 0 1 1
TDI
TDO 0 0 0 0
Instruction: SELUSER
Intro To Boundary-Scan
50
Scan in a value (through TDI) to set Scan out results through TDO
David Lavo
TDO 1 0 1 X
Intro To Boundary-Scan
51