โ€‹

JTAG์€ ๋””์ง€ํ„ธ ํšŒ๋กœ ๊ฐœ๋ฐœ์—์„œ์˜ Chip Debugging, Chip Test, Chip Programming์€ ์ œํ’ˆ ํ’ˆ์งˆ ํ–ฅ์ƒ, ํšจ์œจ์ ์ธ ๊ฐœ๋ฐœ ๋ฐ ์œ ์ง€ ๋ณด์ˆ˜๋ฅผ ์œ„ํ•ด ๊ผญ ํ•„์š”ํ•œ ์š”์†Œ์ž…๋‹ˆ๋‹ค.

โ€‹

์ด๊ฒŒ ์™œ ํ•„์š”ํ•˜๋ƒ?

๋””์ง€ํ„ธํšŒ๋กœ๊ฐ€ ์—„์ฒญ๋‚˜๊ฒŒ ๋ณต์žกํ•œ๋ฐ,

โ€‹

โ€œ์ด Chip์ด ์„ค๊ณ„๋Š” ๋ฉ€์ฉกํ•œ๋ฐ ๊ณต์ • ๊ฒฐํ•จ์œผ๋กœ Chip์ด ๋™์ž‘์„ ์•ˆ ํ•˜๋Š”๊ฑด์ง€?โ€

โ€œChip์— SW๋ฅผ ์˜ฌ๋ฆฌ๊ณ  ์‹ถ๋‹ค๋ฉด?โ€

โ€œChip debugging์„ ํ•˜๊ณ ์‹ถ๋‹ค๋ฉด?โ€

-> ์ด๋Ÿฐ ์ด์œ ๋“ค๋กœ ์ธํ•ด JTAG์ด ํ•„์š”ํ•ด์กŒ์Šต๋‹ˆ๋‹ค.

ํ•ญ์ƒ ์ด์ƒ์ ์ด๊ณ , ์•„๋ฌด๋Ÿฐ ์‹ค์ˆ˜์™€ ๊ณต์ • ๊ฒฐํ•จ์ด ์—†๊ณ , ์ฒ˜์Œ๋ถ€ํ„ฐ ์™„๋ฒฝํ•œ SW๋ฅผ ์˜ฌ๋ฆด ์ˆ˜ ์žˆ๋‹ค๋ฉด, ์‚ฌ์‹ค JTAG์€ ํ•„์š”์—†์ง€๋งŒ..

์–‘์‚ฐ Chip์— ๊ณต์ • ๊ฒฐํ•จ์ด ์žˆ๋Š”์ง€ ํ…Œ์ŠคํŠธํ•˜๊ณ , Chip์— SW ์˜ฌ๋ฆฌ๊ณ , Chip์„ ๋””๋ฒ„๊ทธ ํ•˜๋ ค๋ฉด JTAG์ด๋ผ๋Š”๊ฒŒ ํ•„์š”ํ•ฉ๋‹ˆ๋‹ค.

โ€‹

์šฉ์–ด ์ •๋ฆฌ๋ถ€ํ„ฐ ํ•˜๋ฉด,

๋””๋ฒ„๊น…(Debugging): ์†Œํ”„ํŠธ์›จ์–ด์™€ ํ•˜๋“œ์›จ์–ด์˜ ์ƒํ˜ธ ์ž‘์šฉ์—์„œ ๋ฒ„๊ทธ์™€ ๊ฒฐํ•จ์€ ํ”ผํ•  ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค. ๋””๋ฒ„๊น…์€ ์ด๋Ÿฌํ•œ ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•˜๊ธฐ ์œ„ํ•œ ํ•ต์‹ฌ ์ž‘์—…์œผ๋กœ, ๋””๋ฐ”์ด์Šค ๋‚ด๋ถ€์˜ ๋™์ž‘์„ ๋ชจ๋‹ˆํ„ฐํ•˜๊ณ  ๋ฌธ์ œ๋ฅผ ์‹๋ณ„ํ•˜์—ฌ ๊ฐœ์„ ํ•ฉ๋‹ˆ๋‹ค.

โ€‹

์ฐธ๊ณ ๋กœ, ์—ฌ๊ธฐ์„œ ๋””๋ฒ„๊น…์€ print โ€œhello worldโ€๊ฐ™์€ ๊ฒƒ์ด ์ถœ๋ ฅ๋˜๋Š”์ง€ ์ฒดํฌํ•˜๋Š” ๋””๋ฒ„๊น…์ด ์•„๋‹ˆ๋ผ,

Chip์˜ SRAM๊นŒ์ง€ data write, data read๊ฐ€ ์ž˜ ๋˜๋Š”์ง€? ์•„๋‹ˆ๋ฉด ์‹œ๊ทธ๋„ ํ•œ๋ฒˆ ์ญ‰ ๋ณด๋‚ด๊ณ , ์‹œ๊ทธ๋„์ด ๋Œ์•„์˜ค๋Š”์ง€? ์ด๋Ÿฐ๊ฑฐ ์ฒดํฌํ•˜๋Š” ๋””๋ฒ„๊น…์ž…๋‹ˆ๋‹คโ€ฆโ€ฆ ์ด๊ฑฐ ์ง„์งœ ์–ด๋ ต๋”๋ผ๊ตฌ์š”. PC์—์„œ High level language๋กœ ์ฝ”๋”ฉํ•˜๋Š” ๊ฒƒ๋“ค์€ ๋Œ€๋ถ€๋ถ„ โ€œ๋‚ด ์ฝ”๋“œ์˜ ์‹ค์ˆ˜โ€๊ฐ€ ๋ณด์ด๋Š”๋ฐโ€ฆ Chip์ด ๊ฒฐํ•จ์ด ์žˆ์œผ๋ฉด, ๋™์ž‘์„ ํ•  ์ˆ˜๋„ ์žˆ๊ณ  ์•ˆ ํ•  ์ˆ˜๋„ ์žˆ๊ณ .. Chip์„ ํ•˜๋‚˜ํ•˜๋‚˜ X-ray ํ˜„๋ฏธ๊ฒฝ์œผ๋กœ ๋ณผ ์ˆ˜๋„ ์—†๊ณ โ€ฆ. ์ง„์งœ ์–ด๋ ต๋”๋ผ๊ตฌ์š”.

โ€‹

ํ…Œ์ŠคํŠธ(Test): Chip ์ œ์กฐ๊ณต์ •์€ ํ•ญ์ƒ ์ด์ƒ์ ์ด์ง€ ์•Š์Šต๋‹ˆ๋‹ค. ๊ฐ™์€ ์›จ์ดํผ์—์„œ ๊ฐ™์€ ์žฅ๋น„๋กœ ๋งŒ๋“ค๋”๋ผ๋„, ์ผ๋ถ€ Chip์€ ๋จผ์ง€๊ฐ€ ๊ปด์„œ ๋ฏธ์„ธํ•˜๊ฒŒ ์„ ์ด ๋Š์–ด์ง€๊ฑฐ๋‚˜, ์„ ์ด ๊ตต๊ฒŒ๋˜์–ด ์˜† ๋ฐฐ์„ ๊ณผ ๋ถ™์„ ์ˆ˜๋„ ์žˆ์Šต๋‹ˆ๋‹ค. ๊ทธ๋Ÿฌ๋ฏ€๋กœ, ์–‘์‚ฐ ์นฉ ๊ฐ™์€ ๊ฒฝ์šฐ์—” ์นฉ ํ…Œ์ŠคํŠธ๊ฐ€ ํ•„์ˆ˜์ž…๋‹ˆ๋‹ค.

ํ”„๋กœ๊ทธ๋ž˜๋ฐ(Programming): Chip์ž์ฒด๋กœ๋Š” ์‚ฌ์šฉํ•˜๊ธฐ ์–ด๋ ต์Šต๋‹ˆ๋‹ค. ๊ทธ๋ ‡๊ธฐ ๋•Œ๋ฌธ์— High level language๊ฐ€ ๋“ฑ์žฅํ•œ๊ฑฐ๊ณ .. ์ด๋Ÿฐ ์†Œํ”„ํŠธ์›จ์–ด๋ฅผ ์นฉ์— ๋‹ด์•„์•ผ ํ•ฉ๋‹ˆ๋‹ค. ์—…๋ฐ์ดํŠธ๋‚˜ ํ™•์žฅ์ด ํ•„์š”ํ•œ ๊ฒฝ์šฐ์—๋„ ํ”„๋กœ๊ทธ๋ž˜๋ฐ์ด ํ•„์š”ํ•ฉ๋‹ˆ๋‹ค.

โ€‹

JTAG์˜ ๋“ฑ์žฅ ์ด์ „์—๋Š” ์–ด๋–ป๊ฒŒ ํ•˜์˜€๋Š”์ง€?

Debug Port: ๋””๋ฒ„๊น…์„ ์œ„ํ•ด ์‹œ๋ฆฌ์–ผ ํฌํŠธ๋ฅผ ์‚ฌ์šฉํ•˜๋Š” ๋ฐฉ๋ฒ•์ด ์ผ๋ฐ˜์ ์ด์—ˆ์Šต๋‹ˆ๋‹ค. ํ•˜์ง€๋งŒ ์ด ๋ฐฉ์‹์€ ์†๋„์™€ ํšจ์œจ์„ฑ ๋ฉด์—์„œ ํ•œ๊ณ„๊ฐ€ ์žˆ์—ˆ์Šต๋‹ˆ๋‹ค.

Embedded Emulator: ์ผ๋ถ€ ๋””๋ฒ„๊น… ๋„๊ตฌ๋Š” ์ฒ˜์Œ๋ถ€ํ„ฐ ๋””๋ฐ”์ด์Šค ๋‚ด์— ์—๋ฎฌ๋ ˆ์ดํ„ฐ๋ฅผ ๋‚ด์žฅ์‹œ์ผœ ๋””๋ฒ„๊น…์„ ์ˆ˜ํ–‰ํ•˜๋Š” ๋ฐฉ์‹์ด์—ˆ์Šต๋‹ˆ๋‹ค. ํ•˜์ง€๋งŒ ๋น„์šฉ๊ณผ ๊ตฌํ˜„ ๋‚œ์ด๋„๊ฐ€ ๋†’์Šต๋‹ˆ๋‹ค.

โ€‹

JTAG์€ ์ด๋Ÿฌํ•œ ํ•œ๊ณ„๋ฅผ ๊ทน๋ณตํ•˜๋ฉด์„œ, ํ•˜๋‚˜์˜ ํ‘œ์ค€ ์ธํ„ฐํŽ˜์ด์Šค๋กœ์จ ๋‹ค์–‘ํ•œ ๋””๋ฐ”์ด์Šค์—์„œ ํšจ๊ณผ์ ์ธ ๋””๋ฒ„๊น…, ํ…Œ์ŠคํŠธ, ํ”„๋กœ๊ทธ๋ž˜๋ฐ์„ ๊ฐ€๋Šฅํ•˜๊ฒŒ ํ•ด์ฃผ์—ˆ์Šต๋‹ˆ๋‹ค. ์ด๋กœ์จ ๊ฐœ๋ฐœ ๊ณผ์ •์—์„œ ์ƒ์‚ฐ์„ฑ ํ–ฅ์ƒ๊ณผ ํ’ˆ์งˆ ํ–ฅ์ƒ์„ ๋™์‹œ์— ์ด๋ฃฐ ์ˆ˜ ์žˆ๊ฒŒ ๋˜์—ˆ์Šต๋‹ˆ๋‹ค.

โ€‹

JTAG(Joint Test Action Group) Standard, IEEE 1149.1 Standard Test Access Port and Boundary-Scan Architecture

โ€‹

JTAG์€ IEEE 1149.x ์‹œ๋ฆฌ์ฆˆ ํ‘œ์ค€ ์ค‘ ํ•˜๋‚˜๋กœ, ๋‹ค์–‘ํ•œ ์ „์ž ์ œํ’ˆ์—์„œ ๋””๋ฒ„๊น…, ํ…Œ์ŠคํŠธ, ํ”„๋กœ๊ทธ๋ž˜๋ฐ์„ ์œ„ํ•œ ํ‘œ์ค€ ์ธํ„ฐํŽ˜์ด์Šค์ž…๋‹ˆ๋‹ค. ์ด์ „์— ์‚ฌ์šฉ๋˜์—ˆ๋˜ ๋””๋ฒ„๊น… ๋ฐ ํ”„๋กœ๊ทธ๋ž˜๋ฐ ๋ฐฉ๋ฒ•์— ๋น„ํ•ด JTAG์€ ๋‹ค์Œ๊ณผ ๊ฐ™์€ ์ด์ ์„ ๊ฐ€์ง€๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค.

โ€‹

โ€‹

  1. ํ‘œ์ค€ ์ธํ„ฐํŽ˜์ด์Šค

JTAG์€ ์—…๊ณ„์—์„œ ํ‘œ์ค€ํ™”๋œ ์ธํ„ฐํŽ˜์ด์Šค๋กœ, ์—ฌ๋Ÿฌ ์ œ์กฐ์—…์ฒด์—์„œ ๊ณตํ†ต์ ์œผ๋กœ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋Š” ํ‘œ์ค€์ž…๋‹ˆ๋‹ค. ์ด์ „์—๋Š” ๊ฐ๊ฐ์˜ ์ œ์กฐ์‚ฌ๋งˆ๋‹ค ๊ณ ์œ ํ•œ ๋””๋ฒ„๊น… ๋ฐ ํ”„๋กœ๊ทธ๋ž˜๋ฐ ์ธํ„ฐํŽ˜์ด์Šค๋ฅผ ์ œ๊ณตํ–ˆ๊ธฐ ๋•Œ๋ฌธ์—, ํ˜ธํ™˜์„ฑ ๋ฌธ์ œ ๋ฌธ์ œ๊ฐ€ ๋ฐœ์ƒํ•  ์ˆ˜ ์žˆ์—ˆ์Šต๋‹ˆ๋‹ค. JTAG์€ ์ด๋Ÿฐ ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•˜๋ฉฐ, ๋‹ค์–‘ํ•œ ๋””๋ฐ”์ด์Šค์—์„œ ํ†ต์ผ๋œ ๋ฐฉ์‹์œผ๋กœ ์ ‘๊ทผ ๊ฐ€๋Šฅํ•ฉ๋‹ˆ๋‹ค.

โ€‹

  1. ํšจ์œจ์„ฑ

JTAG์€ ๋””๋ฐ”์ด์Šค ๋‚ด๋ถ€ ๋ ˆ์ง€์Šคํ„ฐ, ์ƒํƒœ ๋“ฑ์„ ์ ‘๊ทผํ•˜์—ฌ ๋””๋ฒ„๊น…, ํ…Œ์ŠคํŠธ, ํ”„๋กœ๊ทธ๋ž˜๋ฐ์„ ์ˆ˜ํ–‰ํ•  ์ˆ˜ ์žˆ์–ด ๊ฐœ๋ฐœ์ž์˜ ์ž‘์—… ํšจ์œจ์„ ํฌ๊ฒŒ ํ–ฅ์ƒ์‹œํ‚ต๋‹ˆ๋‹ค. ์ด์ „์— ์‚ฌ์šฉ๋˜๋˜ ๋ฐฉ์‹๋“ค์€ ๋” ๋ณต์žกํ•˜๊ณ  ์†Œ์š” ์‹œ๊ฐ„์ด ๋งŽ์€ ๊ฒฝ์šฐ๊ฐ€ ๋งŽ์•˜์Šต๋‹ˆ๋‹ค.

โ€‹

  1. ๋‹ค๋ชฉ์ ์„ฑ

JTAG์€ ๋””๋ฒ„๊น…, ํ…Œ์ŠคํŠธ, ํ”„๋กœ๊ทธ๋ž˜๋ฐ ์™ธ์—๋„ ์ œํ’ˆ ์ˆ˜๋ฆฌ ๋ฐ ๋ณต๊ตฌ ๋“ฑ ๋‹ค์–‘ํ•œ ๋ชฉ์ ์œผ๋กœ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์ด๋กœ์จ ํ•˜๋‚˜์˜ ํ‘œ์ค€ ์ธํ„ฐํŽ˜์ด์Šค๋กœ ๋‹ค์–‘ํ•œ ์ž‘์—…์„ ์ˆ˜ํ–‰ํ•  ์ˆ˜ ์žˆ๊ฒŒ ๋ฉ๋‹ˆ๋‹ค.

โ€‹

JTAG(Joint Test Action Group)์€ ์ „์ž ์ œํ’ˆ์˜ ๋””๋ฒ„๊น…, ํ…Œ์ŠคํŠธ, ํ”„๋กœ๊ทธ๋ž˜๋ฐ ๋“ฑ์— ์‚ฌ์šฉ๋˜๋Š” ํ‘œ์ค€ ์ธํ„ฐํŽ˜์ด์Šค์ž…๋‹ˆ๋‹ค. JTAG ํ‘œ์ค€์€ โ€œIEEE 1149.1 Standard Test Access Port and Boundary-Scan Architectureโ€ ๋ฌธ์„œ๋ฅผ ๊ธฐ๋ฐ˜์œผ๋กœ ํ•ฉ๋‹ˆ๋‹ค. ์ด ๋ฌธ์„œ์—์„œ JTAG์˜ ํ•ต์‹ฌ ๊ตฌ์„ฑ ์š”์†Œ๋ฅผ ์‚ดํŽด๋ณด๊ฒ ์Šต๋‹ˆ๋‹ค.

โ€‹

JTAG์˜ ๊ตฌ์„ฑ ์š”์†Œ๋Š” ๋‹ค์Œ๊ณผ ๊ฐ™์Šต๋‹ˆ๋‹ค:

TAP (Test Access Port) : TAP์€ JTAG์˜ ํ•ต์‹ฌ ๊ตฌ์„ฑ ์š”์†Œ๋กœ, ๋””๋ฐ”์ด์Šค ๋‚ด๋ถ€๋กœ ์ ‘๊ทผํ•˜์—ฌ ํ…Œ์ŠคํŠธ, ๋””๋ฒ„๊น…, ํ”„๋กœ๊ทธ๋ž˜๋ฐ์„ ์ˆ˜ํ–‰ํ•˜๊ธฐ ์œ„ํ•œ ๊ฒฝ๋กœ๋ฅผ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค. TAP์€ JTAG๋ฅผ ์‚ฌ์šฉํ•˜๋Š” ๋””๋ฐ”์ด์Šค์™€ ์ปจํŠธ๋กค๋Ÿฌ ์‚ฌ์ด์˜ ํ†ต์‹ ์„ ๋‹ด๋‹นํ•ฉ๋‹ˆ๋‹ค.

โ€‹

1) ์•„๋ž˜์˜ 5๊ฐœ์˜ ์ „์šฉ ํ•€๋“ค์„ ์ด์นญํ•˜์—ฌ TAP( Test Access Port)๋ผ ํ•˜๋ฉฐ, ์ด๋“ค ํ•€ ๊ตฌ์„ฑ์€ ๋‹ค์Œ๊ณผ ๊ฐ™์Šต๋‹ˆ๋‹ค.

4๊ฐœ์˜ ์ „์šฉ TEST ํ•€

1) Test Clock (TCK)

2) Test Data In (TDI)

3) Test Data Out (TDO)

4) Test Mode Select (TMS)

โ€‹

์š”์•ฝํ•˜๋ฉด,

Device TDS๊ฐ€ active enable์ผ ๋•Œ

TCK๊ฐ€ active edge๋กœ ์ž…๋ ฅ๋œ TDI๋ฅผ ๋ฐ›์•„ TDO๋กœ ์ „๋‹ฌํ•˜๊ณ ,,, ์ด๋Ÿฐ์‹์œผ๋กœ DEVICE TDI -> 1 -> 2 -> 3 -> TDO๊นŒ์ง€ ๋ฒกํ„ฐ ์ „๋‹ฌ์„ ์‹œํ‚ต๋‹ˆ๋‹ค.

์นฉ์— ๊ฒฐํ•จ์ด ์—†๋‹ค๋ฉด, ๋‚ด๊ฐ€ ๋งŒ๋“ค์–ด์ค€ TDI์—๋”ฐ๋ผ TDO๊ฐ’์ด ์ž˜ ๋‚˜์™€์•ผ๊ฒ ์ฃ ? ๊ทธ๋ ‡์ง€ ์•Š์œผ๋ฉด ์นฉ ์–ด๋”˜๊ฐ€์— ๊ฒฐํ•จ์ด ์žˆ๋Š” ๊ฒƒ์ด๊ตฌ์š”. ์ด๋Ÿฐ ๊ตฌ์กฐ ๋กœ์ง์„ Serial scan์ด๋ผ๊ณ  ๋ถ€๋ฆ…๋‹ˆ๋‹ค.

โ€‹

๋ผ๊ณ  ํ•˜๋ฉด, ์ดํ•ด๊ฐ€ ์•ˆ ๋  ์ˆ˜ ์žˆ์œผ๋‹ˆ.. ์ข€ ๋” ๊นŠ์ด + ์ž์„ธํžˆ ๋ณด๋ฉด์š”.

์šฐ๋ฆฌ๊ฐ€ ํ•˜๊ณ ์‹ถ์€๊ฑด, Chip์— ๊ฒฐํ•จ์ด ์žˆ๋Š”๊ฑด์ง€ testํ•˜๊ณ ์‹ถ์€๊ฑฐ์—์š”.

๊ทธ๋Ÿฐ๋ฐ Chip test๋ฅผ ์–ด๋–ป๊ฒŒ ํ•˜๋ƒ?

Chip register๋“คํ•œํ…Œ ํŠน์ • ์ž…๋ ฅ๊ฐ’์„ ๋„ฃ๊ณ , ํŠน์ • ์ถœ๋ ฅ์ด ๋‚˜์˜ค๋Š”์ง€ ๋ณด๋Š”๊ฒ๋‹ˆ๋‹ค.

๊ทผ๋ฐ Chip์˜ ๊ธฐ๋ณธ Function ๋™์ž‘์œผ๋กœ๋Š” ์ด Test๋ฅผ ํ•˜๊ธฐ๊ฐ€ ๋งค์šฐ ๊นŒ๋‹ค๋กญ๊ณ , ์˜ค๋žœ ์‹œ๊ฐ„์ด ๊ฑธ๋ฆฌ๊ณ , Test coverage๊ฐ€ ๋‚ฎ์•„์ง„๋‹ค๋Š” ์ˆ˜ํ•™/๊ฒฝ์ œ์ ์ธ ๋ฌธ์ œ๊ฐ€ ์žˆ์–ด์š”.

Chip ๊ณ ์žฅ ๊ฒ€์ถœ์œจ์„ ๋†’์— ๋งŒ๋“œ๋Š” Test vector๋ฅผ ์ž…๋ ฅํ•˜๊ณ , ์ถœ๋ ฅ์„ ๋น„๊ตํ•˜๋Š” ๊ฒƒ์ด ํ›จ์”ฌ ๊ฒฝ์ œ์ ์ด๋ผ๋Š” ๊ฒƒ์„ ์„ค๊ณ„์ž๋“ค์ด ์•Œ๊ฒŒ๋ฉ๋‹ˆ๋‹ค.

Data IN, Data Out๋งŒ ์žˆ์–ด๋„ Chip์˜ ๊ธฐ๋ณธ Function mode๋Š” ๋™์ž‘ ํ•˜๊ฒ ์ง€๋งŒ, ํ…Œ์ŠคํŒ…์„ ์œ„ํ•ด์„œ SCAN Input signal๊ณผ SCAN Multiplexer๋ฅผ ๋„ฃ์–ด์„œ Chip์˜ Test mode๋ฅผ ๋งŒ๋“ค์–ด์ฃผ๋Š”๊ฒ๋‹ˆ๋‹ค.

โ€‹

โ€‹

๊ธฐ๋ณธ ๊ฐœ๋…์€ ์ด๋ ‡๊ณ , Digital chip์€ ํ•ญ์ƒ Initialize๋ฅผ ํ•ด์ค˜์•ผํ•˜๋‹ˆ, TAP Reset Pin์ด ์žˆ์Šต๋‹ˆ๋‹ค.

1) Test Reset (TRST)

2) ๊ฐ๊ฐ์˜ ๋””๋ฐ”์ด์Šค๋Š” ์ฃผ์š” ์ž…๋ ฅ๊ณผ ์ฃผ์š” ์ถœ๋ ฅ ํ•€๋งˆ๋‹ค 1๊ฐœ์˜ boundary-scan cell์ด ์œ„์น˜ํ•˜๋ฉฐ,

์ง๋ ฌ boundary-sacn ๋ ˆ์ง€์Šคํ„ฐ (Boundary Scan)๊ฐ€ ๋‚ด๋ถ€์ ์œผ๋กœ ์—ฐ๊ฒฐ๋˜์–ด์žˆ์Šต๋‹ˆ๋‹ค.

3) TAP Controller(์ œ์–ด๊ธฐ)๋Š” TCK, TMS ๊ทธ๋ฆฌ๊ณ  TRST*๋ฅผ ๊ฐ–๋Š” FSM ์ž…๋‹ˆ๋‹ค.

โ€‹

โ€‹

์œ„์˜ ๊ทธ๋ฆผ์—์„œ Instruction Register, Bypass, Boundary-Scan, Identification, Internal Register์˜ ์—ฐ๊ฒฐ ์ƒํƒœ๋ฅผ ๋ณด์‹œ๋ฉด ์•Œ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

Instruction Register์˜ ๊ฐ’์— ๋”ฐ๋ผ Data register์˜ ์ถœ๋ ฅ ๊ฐ’์ด ์„ ํƒ๋˜์–ด์ง‘๋‹ˆ๋‹ค.

โ€‹

์•„๋ž˜๋Š” JTAG์˜ ํ•„์ˆ˜ Command์ž…๋‹ˆ๋‹ค.

[ EXTEST, BYPASS, SAMPLE, PRELOAD ]

โ€‹

โ€‹

TAP Controller : TAP ์ปจํŠธ๋กค๋Ÿฌ๋Š” TAP์˜ ๋™์ž‘์„ ์ œ์–ดํ•˜๊ณ  ๊ด€๋ฆฌํ•ฉ๋‹ˆ๋‹ค. TAP ์ปจํŠธ๋กค๋Ÿฌ๋Š” ํ…Œ์ŠคํŠธ ๋ชจ๋“œ์™€ ๋…ธ๋ฉ€ ๋ชจ๋“œ ๊ฐ„์˜ ์ „ํ™˜, ํ…Œ์ŠคํŠธ ๋ฐ์ดํ„ฐ์˜ ์…”ํ”Œ๋ง ๋ฐ ์ „์†ก, ๋ ˆ์ง€์Šคํ„ฐ ์ ‘๊ทผ ๋“ฑ์˜ ๊ธฐ๋Šฅ์„ ์ œ์–ดํ•ฉ๋‹ˆ๋‹ค.

โ€‹

Boundary-Scan Register: ์‹œ๋ฆฌ์–ผ ์Šค์บ”์ฒด์ธ ์ „์ฒด๋ฅผ ์Šค์บ”ํ•˜์—ฌ ํšŒ๋กœ ์—ฐ๊ฒฐ ์˜ค๋ฅ˜๋ฅผ ๊ฒ€์ถœํ•˜๊ฑฐ๋‚˜ ๋””๋ฐ”์ด์Šค์˜ ์ƒํƒœ๋ฅผ ํ…Œ์ŠคํŠธํ•  ์ˆ˜ ์žˆ๊ฒŒ ํ•ด์ค๋‹ˆ๋‹ค. ์ด๋ฅผ ํ†ตํ•ด ํšŒ๋กœ ๋ณด๋“œ์˜ ๊ฒฐํ•จ์„ ๊ฐ์ง€ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

โ€‹

Instruction Register (IR) ๋ฐ Data Register (DR): Instruction Register์™€ Data Register๋Š” ๋””๋ฐ”์ด์Šค ๋‚ด๋ถ€ ๋ ˆ์ง€์Šคํ„ฐ์— ์ ‘๊ทผํ•  ์ˆ˜ ์žˆ๋„๋ก ํ•ด์ฃผ๋Š” ๋ ˆ์ง€์Šคํ„ฐ์ž…๋‹ˆ๋‹ค. Instruction Register๋Š” ํŠน์ • ๋ช…๋ น์„ ๋‚ด๋ฆด ๋•Œ ์‚ฌ์šฉ๋˜๋ฉฐ, Data Register๋Š” ๋ฐ์ดํ„ฐ๋ฅผ ์ฝ๊ฑฐ๋‚˜ ์“ธ ๋•Œ ์‚ฌ์šฉ๋ฉ๋‹ˆ๋‹ค.