Spartan 3E - Readback via JTAG

Hi,

i'd like to readback all the contents of an XC3S500E via the JTAG interface. Because this option is not implemented in the iMPACT-tool (well, it is implemented via the verify-option, but the readback data cannot be stored to a file), i tried to extend xc3sprog [1] to readback capability (that is extending the xc3sprog.cc)

My question is, what commands are to be send to the Spartan 3E, because I wasn't able to find it on the Xilinx webpage, yet, although there are user guides for the Spartan 2(E)[2] and the Virtex[3] series. The opcodes used via the SerialMAP-interface are documented in [4], the JTAG Configuration Mode is explained in [5].

Any help would be appreciated.

Greetings Benni

[1] XC3SPROG
formatting link
[2] XAPP176
formatting link
[3] XAPP139
formatting link
[4] XAPP452
formatting link
[5] UG332
formatting link
Reply to
Benni V.
Loading thread data ...

Another source of information are the BSDL files. Find them in the ISE directory under spartan3e/data for e.g. the XC3SE.You will find the CFG_IN command the progalgxc3s.cpp uses for programming. The BSDL file also knows about a CFG_OUT command that could probably be used for readback. Compare with the BSDL files for the S2(E) and try out to do similar.

Hope this helps

--
Uwe Bonnes                bon@elektron.ikp.physik.tu-darmstadt.de

Institut fuer Kernphysik  Schlossgartenstrasse 9  64289 Darmstadt
--------- Tel. 06151 162516 -------- Fax. 06151 164321 ----------
Reply to
Uwe Bonnes

thanks for your help.

Actually I think I found the commands in the *.rbb-file, which, according to XAPP452, starts with the binary command sets.

So, for reference, here the commands which hopefully work :-)

0xffff ffff // Sync 0xaa99 5566 // Sync 0x3001 c001 // IDCODE Register 0x01c2 2093 // XC3S500E 0x3000 2001 // FAR Write Packet Header 0x0000 0000 // FAR Write Packet Data (0h) 0x3000 8001 // CMD Write Packet Header 0x0000 000b // CMD Write Packet Data (SHUTDOWN) 0x3000 8001 // CMD Write Packet Header 0x0000 0007 // CMD Write Packet Date (RCRC) 0x2000 0000 // NOP 0x2000 0000 // NOP 0x2000 0000 // NOP 0x2000 0000 // NOP 0x3000 8001 // CMD Write Packet Header 0x0000 0004 // CMD Write Packet Data (RCFG) 0x2800 6000 // FDRO Read Packet Header (Type 1) 0x4801 149a // FDRO Read Packet Header (Type 2), Word-Counter 1149Ah ... ... ... 0x3000 8001 // CMD Write Packet Header 0x0000 0005 // CMD Write Packet Data (START) 0x3000 8001 // CMD Write Packet Header 0x0000 0007 // CMD Write Packet Data (RCRC) 0x3000 8001 // CMD Write Packet Header 0x0000 000d // CMD Write Packet Data (DESYNCH) 0x2000 0000 // NOP 0x2000 0000 // NOP 0x2000 0000 // NOP 0x2000 0000 // NOP

Greetings Benni

Reply to
Benni V.

Please keep us informed and eventually send patches to sourceforge.

Thanks

--
Uwe Bonnes                bon@elektron.ikp.physik.tu-darmstadt.de

Institut fuer Kernphysik  Schlossgartenstrasse 9  64289 Darmstadt
--------- Tel. 06151 162516 -------- Fax. 06151 164321 ----------
Reply to
Uwe Bonnes

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.