임베디드/임베디드 레시피

JTAG interface

twoweeks-within 2025. 1. 17. 13:58

 

JTAG : Joint Test Access Group

 > JTAG interface로 HW Tast 가능

 

: HW의 집적도 상승 > pin들의 상태 조사가 어려움 > 자동검사 (boundary scan)

// boundary : cpu 내외부 구분 짓는 곳 

>  boundary 를 흝어서 pin의 상태를 알아냄

 

>>

CPU에서 나오는 모든 pin들의 상태를 알 수 있음 + pin에 값을 강제 인가 가능

// pin들에 buffer

 

TAP controller : JTAG interface 에 대한 controller

JTAG interface : 

 

TDI, TDO : TAP controller input, output > DATA를 외부와 주고받음

> Serial통신

TMS (Test Mode Select ) : 상태 설정

TCK,TRST :CLOCK ,Reset Pin

> synchronous

ex)

TMS >: JTAG interface reset , 일하는 mode > TDI로 전송 > TDO 로 output 을 가져옴

 

// TCK : 억지로 0,1 을 반복하는 신호만 잘 넣어주면됨

 

IDCODE를 읽어오는 예시

1.TAP controller > (SW) reset

    clock에 맞춰서 Rising Edge 5번이상 HIGH

2. 명령을 내리겠다 알려줌

    TMS : 00110  인데

    FIFO buffer > LSB 부터 01100 을 해줘야 > 00110 으로됨 

3. IDCODE를 읽어오겠다는 명령

    0010 ( LSB 0100 ) > 끝에 1 로 끝남을 알려줌

4. 실행해라

    0011 ( 1100) 

5. DATA 받을 준비해라

    001 ( 100 ) 

6. IDCODE를 읽어옴

7. Ready/ 대기상태로 만들어줌

 

Daisy Chain 가능 :즉,  Serial 하게 연결가능 (연속적)

 ;    TDI + TDO (묶음) -> TDI + TDO

   및 TMS, TCK 를 공용으로 사용

//  ( TDI+TDO )를 묶은 TDI 가 2번 TDI 로 들어감 > TDO로 나감

Bypass Register : TDI , TDO를 묶어줄건지에 대한 설정 Regi

// TMS. TDI 를 통해 설정

>> Dual Core Debugging    

---------------------------------------------------------------------

TDI > Core A > ARM 9 > ARM 11 > Core B > TDO

          (5bit)      (3bit)                         (10bit)               : IR width (가져갈 비트)

'임베디드 > 임베디드 레시피' 카테고리의 다른 글

Interrupt Lock > Watch dog Reset  (0) 2025.01.17
Art of Debugging  (0) 2025.01.17
MMU : Memory Management Unit ( 다시보기)  (0) 2025.01.16
Cache, Cash  (0) 2025.01.16
PLL , M/N:D  (0) 2025.01.15