We have detected your current browser version is not the latest one. Xilinx.com uses the latest web technologies to bring you the best online experience possible. Please upgrade to a Xilinx.com supported browser:Chrome, Firefox, Internet Explorer 11, Safari. Thank you!

AR# 14980

XC4000/E/XL/XLA - XAPP017 - What happens to the XC4000 JTAG logic (TAP) when the PROGRAM pin is pulsed?


General Description:

Xilinx Application Note (Xilinx XAPP017): "Boundary Scan in XC4000, Spartan, and XC5200 Series Devices" states:

"Toggling PROGRAM resets the latched decodes for the EXTEST, CONFIGURE, and READBACK instructions."

However, the application note also states that the PROGRAM pin resets the TAP controller. Which of these statements is correct?


The sentence stating that the PROGRAM pin resets the TAP controller is incorrect. For XC4000 and Spartan devices, PROGRAM does not reset the TAP controller. The TAP state remains unchanged after the PROGRAM pin is pulsed.

Furthermore, the following behavior was confirmed experimentally:

1. Pulsing the PROGRAM pin does not reset the TAP controller (i.e., the TAP state is unaffected by PROG).

2. The contents of certain data registers are reset. The Boundary Scan register (used for EXTEST) is reset, while the Bypass register is not reset by the PROG pin.

3. The PROG pin does not reset the Instruction Register.

In practice, the TAP should be reset by clocking five "1"s on TMS after the PROGRAM pin is pulsed. This will solve any problems that may arise from cleared data registers, etc.

AR# 14980
Date 12/15/2012
Status Active
Type General Article