Spartan 3 / XCF02S JTAG problem

I have a board that has a XCF02S and Spartan 3 400 (ES) connected in a JTAG chain (the XCF02S is first in the chain). Attempting to initialise the chain in Impact fails because the IDCODE coming out of the FPGA is invalid (I have verified this on a scope - It is reproducibly incorrect, and always the same value). Looking at the TDO pin of the XCF02S / TDI pin of the FPGA, I can see that the IDCODE coming out of the XCF02S is correct.

If I take the XCF02S out of the chain, then the IDCODE from the FPGA is correct and Impact is able to program the device.

Should the value on the TDI pin of the FPGA effect the output of the IDCODE? Is it possible that any of the other FPGA configuration pins that the XCF02S is driving effect JTAG operation? I'm pretty sure the devices are connected as detailed in the XCF02S data sheet.

Cheers, JonB

Reply to
Jon Beniston
Loading thread data ...

I just tried reversing the order of the JTAG chain (FPGA first, then PROM) and it now works. After numerious experiments, it seems that if there is any activity on the FPGA's TDI pin, then the IDCODE wont be output successfully.

Cheers, JonB

Reply to
Jon Beniston

Sure, all commands are shifted serially through the chain, so a problem upstream will cause malfunctions downstream.

We've seen different problems with an XCF02S in the chain ahead of a Spartan 2 part. Done never goes high on the Spartan when attempting JTAG programming. Take the XCF02 out of the chain and it works. Discovered that if the XCF02 is blank, then we can program the Spartan OK. Xilinx has some answer records (18644 and others) on related issues, but that didn't seem to apply to us.

Reply to
David Kinsell

ElectronDepot website is not affiliated with any of the manufacturers or service providers discussed here. All logos and trade names are the property of their respective owners.