[Fpga-synth] FPGA JTAG programming

Eric Brombaugh ebrombaugh at earthlink.net
Tue Mar 4 06:35:26 CET 2008


Just a little information you might be interested in:

Disclosure: I don't work for, nor am I associated with Digilent in any 
way - just a happy customer.

The Xilinx S3Esk that most of us have was actually designed & built by 
Digilent. They also supply a lot of other FPGA, CPLD & Embedded systems 
hardware, including the expansion board that plugs into the Hirose 
connector on the S3Esk (a real bargain at ~$20 - get one if you want to 
do hardware development beyond what's provided on the stock board!)

If you decide to go beyond the S3Esk and put FPGAs down on your own 
hardware, you won't be able to use the nifty USB/JTAG interface that's 
built into the S3Esk. Not to worry though: Digilent also sells a 
USB/JTAG cable for $37. I got one of these today and spent a few minutes 
trying it out this evening. Here's what I've found:

* I was able to install the drivers and application software right off 
of Digilent's website with no hassle at all

* I was able to program my FPGA with no trouble except 1 issue: Xilinx's 
IMPACT tool previously complained about the configuration clock in the 
bitstream file being CCLK instead of JTAGCLK, but proceeds to work 
anyway. Digilent's ExPort application also complains, but fails to 
program. Rebuilding the bitstream file in the Bitgen application with 
the JTAGCLK source selected corrects this and ExPort programs the FPGA 
without further difficulty.

* Programming the XCF04 Configuration PROM worked just fine from a .mcs 
file generated in IMPACT from the .bit file.

* Programming an XC9572 CPLD on another board that I have also appears 
to have worked OK.

The ExPort application has a fair number of useful features as well as 
diagnostics and configuration alternatives. Seems well designed. They 
also provide applications for using the JTAG port to do rudimentary 
diagnostics & control of a running FPGA design (similar to Xilinx's 
Chipscope product). That could be pretty useful.

So - a fairly inexpensive and capable USB/JTAG interface. Hooks to your 
hardware through a simple 6-pin 0.1" header (see top right-hand of the 
S3Esk board for an example). Useful for anything you're doing outside of 
the built-in USB of the S3Esk.

Recommended.

Eric


More information about the Fpga-synth mailing list