AN 539: Test Methodology of Error Detection and Recovery using CRC in Intel FPGA Devices

ID 683075
Date 8/09/2019
Public
Document Table of Contents

1.5. Modifying Single-Device .jam Files for Use in a Multi-Device JTAG Chain

The .jam file codes in this document are meant for a single-device JTAG chain. To use these codes in a multi-device JTAG chain, add instruction register (IR) and data register (DR) lengths of the devices in the chain other than the .jam file's target device.
  1. Check the instruction register lengths of all the other devices in the JTAG chain.
    • IR length:
      • Intel® FPGA and CPLD devices: 10
      • Hardware processor system (HPS) in Intel® SoC FPGA devices: 4
    • DR length in any device: 1
  2. Locate the PROCEDURE EXECUTE line in the .jam file codes and add codes in the following steps to new lines after it.
  3. If there are devices in the chain before the target device, add the following codes:
    POSTIR <total IR length before the target device>;
    POSTDR <total DR length before the target device>;
  4. If there are devices in the chain after the target device, add the following codes:
    PREIR <total IR length after the target device>;
    PREDR <total DR length after the target device>;

Other Devices Exist in JTAG Chain Before or After Target Device

For each example chain, add the codes after the PROCEDURE EXECUTE line:

  • Download cable TDI → other device 1 (IR=10) → target device → download cable TDO:
    POSTIR 10;
    POSTDR 1;
  • Download cable TDI → target device → other device 1 (IR=10) → download cable TDO:
    PREIR 10;
    PREDR 1;
  • Download cable TDI → target device → other device 1 (IR=10) → other device 2 (IR=10) → download cable TDO:
    PREIR 20;
    PREDR 2;
  • Download cable TDI → other device 1 (IR=4) → target device → other device 2 (IR=10) → download cable TDO:
    POSTIR 4;
    POSTDR 1;
    PREIR 10;
    PREDR 1;