인텔®은 오류 감지 및 주입 기능을 지원하기 위해 응용 프로그램 노트 및 사용자 가이드에 예제 .jam 파일을 제공합니다. 단일 장치 JTAG 체인에 대해 생성되므로, 다중 장치 JTAG 체인에서 사용할 때 수동으로 수정하여 해당 .jam 파일의 대상 장치 이외의 다른 장치에 대한 명령 및 데이터 레지스터 길이 정보를 추가해야 합니다.
1. .jam 파일의 대상이 되는 장치 이외의 다른 모든 장치의 명령어 레지스터 길이를 확인합니다. 명령어 레지스터 길이는 인텔 FPGA 및 CPLD 장치에서 10, 인텔 SoC FPGA 장치의 하드웨어 프로세서 시스템(HPS)에서 4입니다. 모든 장치의 데이터 레지스터 길이는 1입니다.
2. .jam 파일의 "PROCEDURE EXECUTE" 줄 바로 뒤에 다음 설명을 추가합니다.
JTAG 체인의 대상 장치 뒤에 다른 장치가 있는 경우 다음을 추가합니다.
PREIR<대상 장치 이후의 총 명령어 레지스터 길이>;
PREDR<대상 장치 이후의 총 데이터 레지스터 길이>;
JTAG 체인의 대상 장치 앞에 다른 장치가 있는 경우 다음을 추가합니다.
POSTIR<대상 장치 앞의 총 명령어 레지스터 길이>;
POSTDR<대상 장치 이전의 총 데이터 레지스터 길이>;
[실험예 1]
다운로드 케이블 TDI => 대상 장치 => 기타 장치 #1(IR=10) => 다운로드 케이블 TDO
*IR은 Instruction Register Length의 약자입니다.
프리어 10;
PREDR 1;
[실험예 2]
다운로드 케이블 TDI => 대상 장치 => 기타 장치 #1(IR=10) => 기타 장치 #2(IR=10) => 다운로드 케이블 TDO
프리어 20;
PREDR 2;
[실험예 3]
다운로드 케이블 TDI => 기타 장치 #1(IR=10) => 대상 장치 => 다운로드 케이블 TDO
포스티르 10;
포스트DR 1;
[실험예 4]
다운로드 케이블 TDI => 기타 장치 #1(IR=4) => 대상 장치 => 기타 장치 #2(IR=10) => 다운로드 케이블 TDO
포스티르 4;
포스트DR 1;
프리어 10;
PREDR 1;