Skip to content

wurstbrot0xff/rpi-jtag-spartan3

 
 

Repository files navigation

Raspberry PI JTAG for Spartan3

This project was created to be able to download the bitstream to a FPGA board with 2 chips in the JTAG chain (XFC01S PROM and XC3S200 FPGA). Like this one:

FPGA.

In this project I provide 2 utilites, the firstone idcode is to test reading the IDCODES in a JTAG chain, and the 2nd one fpga_program to load the bitstream into the fpga. Is super simple to extend the functionalities. I also implemented the JTAG TAP Controller to improve the control of the JTAG Chain.

Raspberry PI JTAG programmer for Spartan3 FPGA. This project is written from scratch in C/C++ mix for a RPI v1. So Choose proper JTAG pins wirings for your RPI version in main cpp file. Pin numbers use wiringPI numeration

Check Video

IMAGE ALT TEXT HERE

Programming the FPGA

You can easily program your FPGA following the steps described below. If you have a different fpga or more devices in the chain, you can just add the required registers in the xilinx_devices.h file or a new one if you want. Remember to always chech the manufacturer guides to get the Registers right.

Prerequisites

  • wiringPI library

Usage

  1. Install wiringPI library
  2. Clone repository git clone https://github.com/yuyomagico/rpi-jtag-spartan3
  3. Check your RPI Version and check pin numbers for JTAG port in "idcode.cpp"
  4. ./idcode_build.sh to build the idcode and ./build.sh to build fpga_program.
  5. Outputs will be written into bin/
  6. Usage: ./bin/idcode and ./bin/fpga_program <filename>

About

Raspberry PI JTAG programmer for Spartan3 FPGA.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • C++ 98.0%
  • Shell 2.0%