Tang nano의 JTAG 조사
Tang nano를 받았습니다.
Tang nano를 얻었으므로 JTAG를 조사합니다.
JTAG 단자
보드 뒷면에 TCK, TDI, TMS, TDO로 작성된 단자가 있으므로 여기에 핀 헤더를 납땜하고 플라이 리드 케이블을 연결합니다.
JTAG의 전원은 무엇 V인지 모르겠지만, 5V가 아니라고 생각되기 때문에, Vbank0/3이라고 쓰여진 곳으로부터 전원을 취합니다.
SVF 플레이어에 의한 추측
MITOUJTAG 에서 보통 자동 인식시켜 보더라도 찾을 수 없기 때문에 SVF 플레이어를 사용하여 TDO에서 뭔가 나오는지 조사했습니다.
TRST OFF;
ENDIR IDLE;
ENDDR IDLE;
STATE RESET IDLE;
TIR 0 ;
HIR 0 ;
TDR 0 ;
HDR 0 ;
SIR 32 TDI (55555555) TDO (F5FFFFFF) ;
결과
2019/12/01 22:28:18 Error:Line 9 Operation error.TDO(expected) ='F5FFFFFF' TDO(mask)='FFFFFFFF' TDO(captured)='FFFFFFFF'
즉, TDI에서 들어오는 신호가 TDO에서 나오지 않습니다.
기판 개조
아마 온보드의 USB-JTAG와 부딪치고 있을 것이라고 생각해, 회로도를 보면서 RY1을 떼어낸다.
이제 SVF 플레이어를 다시 실행하면,
2019/12/01 22:30:36 Error:Line 9 Operation error.TDO(expected) ='F5FFFFFF' TDO(mask)='FFFFFFFF' TDO(captured)='55555519'
TDO에서 뭔가 나왔다.
SVF로 IR로 보내는 코드를 적당히 바꾸고
SIR 32 TDI (ffff0fff) TDO (F5FFFFFF) ;
그렇다면 결과는
2019/12/01 22:47:53 Error:Line 9 Operation error.TDO(expected) ='F5FFFFFF' TDO(mask)='FFFFFFFF' TDO(captured)='FF0FFF19'
19라는 값은 Status Register의 규격에 합치하고 있다. IR의 길이는 8bit로 추측된다.
MITOUJTAG에서 자동 인식 다시
다시 MITOUJTAG으로 돌아가서 GUI에서 자동 인식시켜 보면 generic 장치로 인식되었다. IDCODE는 0900281B인 것 같다.
BSDL 파일이 있으면 바운더리 스캔할 수 있습니다.
알다시피
보드 뒷면에 TCK, TDI, TMS, TDO로 작성된 단자가 있으므로 여기에 핀 헤더를 납땜하고 플라이 리드 케이블을 연결합니다.
JTAG의 전원은 무엇 V인지 모르겠지만, 5V가 아니라고 생각되기 때문에, Vbank0/3이라고 쓰여진 곳으로부터 전원을 취합니다.
SVF 플레이어에 의한 추측
MITOUJTAG 에서 보통 자동 인식시켜 보더라도 찾을 수 없기 때문에 SVF 플레이어를 사용하여 TDO에서 뭔가 나오는지 조사했습니다.
TRST OFF;
ENDIR IDLE;
ENDDR IDLE;
STATE RESET IDLE;
TIR 0 ;
HIR 0 ;
TDR 0 ;
HDR 0 ;
SIR 32 TDI (55555555) TDO (F5FFFFFF) ;
결과
2019/12/01 22:28:18 Error:Line 9 Operation error.TDO(expected) ='F5FFFFFF' TDO(mask)='FFFFFFFF' TDO(captured)='FFFFFFFF'
즉, TDI에서 들어오는 신호가 TDO에서 나오지 않습니다.
기판 개조
아마 온보드의 USB-JTAG와 부딪치고 있을 것이라고 생각해, 회로도를 보면서 RY1을 떼어낸다.
이제 SVF 플레이어를 다시 실행하면,
2019/12/01 22:30:36 Error:Line 9 Operation error.TDO(expected) ='F5FFFFFF' TDO(mask)='FFFFFFFF' TDO(captured)='55555519'
TDO에서 뭔가 나왔다.
SVF로 IR로 보내는 코드를 적당히 바꾸고
SIR 32 TDI (ffff0fff) TDO (F5FFFFFF) ;
그렇다면 결과는
2019/12/01 22:47:53 Error:Line 9 Operation error.TDO(expected) ='F5FFFFFF' TDO(mask)='FFFFFFFF' TDO(captured)='FF0FFF19'
19라는 값은 Status Register의 규격에 합치하고 있다. IR의 길이는 8bit로 추측된다.
MITOUJTAG에서 자동 인식 다시
다시 MITOUJTAG으로 돌아가서 GUI에서 자동 인식시켜 보면 generic 장치로 인식되었다. IDCODE는 0900281B인 것 같다.
BSDL 파일이 있으면 바운더리 스캔할 수 있습니다.
알다시피
TRST OFF;
ENDIR IDLE;
ENDDR IDLE;
STATE RESET IDLE;
TIR 0 ;
HIR 0 ;
TDR 0 ;
HDR 0 ;
SIR 32 TDI (55555555) TDO (F5FFFFFF) ;
2019/12/01 22:28:18 Error:Line 9 Operation error.TDO(expected) ='F5FFFFFF' TDO(mask)='FFFFFFFF' TDO(captured)='FFFFFFFF'
아마 온보드의 USB-JTAG와 부딪치고 있을 것이라고 생각해, 회로도를 보면서 RY1을 떼어낸다.
이제 SVF 플레이어를 다시 실행하면,
2019/12/01 22:30:36 Error:Line 9 Operation error.TDO(expected) ='F5FFFFFF' TDO(mask)='FFFFFFFF' TDO(captured)='55555519'
TDO에서 뭔가 나왔다.
SVF로 IR로 보내는 코드를 적당히 바꾸고
SIR 32 TDI (ffff0fff) TDO (F5FFFFFF) ;
그렇다면 결과는
2019/12/01 22:47:53 Error:Line 9 Operation error.TDO(expected) ='F5FFFFFF' TDO(mask)='FFFFFFFF' TDO(captured)='FF0FFF19'
19라는 값은 Status Register의 규격에 합치하고 있다. IR의 길이는 8bit로 추측된다.
MITOUJTAG에서 자동 인식 다시
다시 MITOUJTAG으로 돌아가서 GUI에서 자동 인식시켜 보면 generic 장치로 인식되었다. IDCODE는 0900281B인 것 같다.
BSDL 파일이 있으면 바운더리 스캔할 수 있습니다.
알다시피
Reference
이 문제에 관하여(Tang nano의 JTAG 조사), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://qiita.com/nahitafu/items/707bad32e018ef7ed35b텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)