[요약서] JTAG

* 본 자료는 대학원 수업에 따른 자료조사 및 자율 학습에 근거하여 기록된 내용입니다. 따라서 자료의 정확성 및 신뢰성이 검증되지 않았습니다. 이점 미리 공지드리오니 유의하시기 바랍니다.


[요약서] JTAG 에 관하여


1. JTAG 란?
JTAG 는 1985년에 조직된 JTAG (Joint Test Action Group) 에 의해 PCB 와 IC를 테스트하기 위한 목적으로 제정된 표준이다. 이는 1990년에 IEEE 에 의해 IEEE 1149.1 (Test Access Port and Boundary-Scan Architecture) 로 지정되었으며, 1993년에는 IEEE 1149.1a 로 지정되었다. 또는 1995년에 추가 작업을 진행되어 IEEE 1149.1b로 지정되어 있는 상태이다. 대중적으로는 JTAG 대신 Boundary-Scan 이라는 단어가 많이 사용되고 있다.

2. JTAG 원리
우선 JTAG의 인터페이스는 크게 5가지 (혹은 4개)의 pin으로 구성되어 있다.
- TDI (Test Data in) / TOD (Test Data Out) / TCK (Test Clock) / TMS (Test More Select) / TRST(Test Reset)
(이 중, TRST는 추가적인 기능으로 일부 JTAG 에는 포함되어 있지 않은 경우도 있다.)

JTAG는 Chip 내부에 Boundary Cell을 만들어 외부의 Pin 과 일 대 일로 연결되며, Process 의 상태에 상관없이 Boundary Cell을 통해 process 의 상태, Register 등을 읽고 수정 할 수 있다. 또한, Embedded System의 NAND/NOR Flash (주로 ROM이나 Code 영역을 포함하는 Flash Memory 등) 에 내용을 기록하거나 읽을 수 있는 기능을 가지고 있어, Boot Loader를 Download 하거나 Firmware를 올릴 수 있다.
( 즉, Embedded System의 다른 Chip을 제어할 수 있는 기능( EXTEST )을 포함하기도 한다. )


< 출처 : https://en.wikipedia.org/wiki/JTAG >


3. JTAG의 장점과 단점
Standard Boundary-Scan 인터페이스는 Core State와 관계없이 디바이스의 핀에 대한 정보를 제공한다는 장점이 있다. 이를 통해 외부와 연결이 가능할 뿐만 아니라 RAM, Flash 메모리와 같은 다른 컴포넌트에 접근을 허용한다. 또한 다른 외부의 디바이스를 이용하여 Flash 메모리를 다시 프로그래밍 할 수 있다. 그러나 JTAG는 프로그램 개발시에는 유용하지만, 제품이 출시가 이후에는 매우 위험한 기능이 될 수 있다.

해결방법으로 선을 자르거나 퓨즈를 끊어 JTAG를 못쓰게 한 후 제품을 출시하는 방법이 있다. 그러나 이는 선을 다시 잇거나 퓨즈를 교체함으로써 재사용 할 수 있기 때문에 현실적으로 JTAG기능을 제거하여 출시하는 것은 불가능하다고 볼 수 있다. 다만 복잡한 패키지 방법을 이용하여 칩으로의 접근을 어렵게 하는 대안을 사용 할 수 있다.


참고 사이트
- https://en.wikipedia.org/wiki/JTAG
- http://ssabro.tistory.com/5
- http://egloos.zum.com/recipes/v/5301886
No comments

0 개의 댓글:

댓글 쓰기

Popular Posts

Powered by Blogger.