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