skip navigational linksPJRC
Shopping Cart Checkout Shipping Cost Download Website
Home MP3 Player 8051 Tools All Projects PJRC Store Site Map
You are here: Xilinx Downloader Main Page Search PJRC

Xilinx Downloader
selected Main Page

Paul's (old) Xilinx Bitstream Downloader

The Xilinx Xchecker cable allows you to download your design data into their FPGA chips. Unfortunately, the Xchecker download cable is only available from Xilinx. In a classroom environment only having one or two Xchecker download cables isn't much fun, so I designed my own simple Xilinx download cable, based on the Atmel 20-pin 8051 microcontroller.

This design is a bit old. (update: it's actually ancient history, as is everything else on this very old web page) It has been used with about a dozen different 3000 and 4000 series xilinx chips. It has not been tried with any of the newer parts, such as the 5000 series, Spartan, Spartan 2, Virtex, 9500 series, or Coolrunner CPLD. It may work with some of these, perhaps the 5000 and Spartan, perhaps with some tweaks to the code, but then again it may not.

Xilinx provides a schematic for their parallel cable which only requires a couple ordinary logic chips. If you want to build a cable, that would probably be the best option. This old cable is probably not as useful anymore.

Update, October 2011: This page is ancient... so old that Xilinx no longer has the Parallel Cable III schematic online, so the link above is dead. This schematic I believe is the parallel cable. If you build this, pin 14 on the buffer chips is meant to connect to the cathode of D1... a minor but critically important detail not mentioned.

Here is a company selling low-cost USB xilinx download cables.

Looking for IP Cores ???: it appears that many of the web visitors who arrive at this page from a search engine are searching for ready-made IP codes (processor, UART, FIFO, USB, etc), usually for free. Here's a few places to look:

  • Xilinx's IP Search - good docs, probably quite expensive. They all have a "try" button that takes you to a page where you tell them who you are. If do this, please let me know how it goes so I can update this page with some real info.
  • Free IP Project - A few projects that look pretty good. 6502, DES, RAM, others... They appear to be totally free.
  • OpenCores - Many projects, most appear available only via CVS (no stable versions), others incomplete or just vapor.

This cable only provides the download funtion. Readback is not supported. It does not work with the Xilinx software... to download a file, you just send the raw .BIT file directly to the COM port where the cable is connected. In Linux, I used "cat bitstream.bit > /dev/ttyS0". You can also use a terminal emulation program to send the file, as long is it will send it as raw binary data.

pc board layout parts placement

Ref Component Value
XTAL 11.0592 MHz
C1, C2, C3, C4 2.2uF, 16V
C5, C6, C9 10uF, 6.3V
C7, C8 33pF
R1 6.8k, 5%

pin # Name 3000 series 4000 series
pin 1 Vcc Vcc Vcc
pin 2 Ground Ground Ground
pin 3 (removed) No Connection No Connection
pin 4 CCLK CCLK CCLK
pin 5 DONE D/P DONE
pin 6 DIN DIN DIN
pin 7 PROGRAM RESET PROGRAM
pin 8 INIT INIT INIT
pin 9 No Connection No Connection No Connection

The assembly source is available, as well as a ZIP file with source, intel hex code and the pcb layout.

board top side board bottom side


Paul's Xilinx Downloader Cable, Paul Stoffregen
http://www.pjrc.com/tech/xdownloader/xdownloader.html
Last updated: February 24, 2005
Suggestions, comments, criticisms?? <paul@pjrc.com>