Updated Programming the GODIL (markdown)

Simon Ellwood 2017-10-21 14:55:25 +01:00
parent 98fc756ed5
commit 5cafb45246
2 changed files with 28 additions and 80 deletions

@ -0,0 +1,28 @@
### Purchasing a Xilinx Platform Cable
To program the GODIL, it's best to purchase a Xilinx USB Platform Cable.
There are Chinese clones available on eBay for approx £20 that work perfectly well:
* http://www.ebay.co.uk/itm/Xilinx-Platform-USB-Download-Cable-Jtag-Programmer-for-FPGA-CPLD-C-Mod-XC2C64A-/390809680232
[[images/godil/xilinx_cable.jpg]]
### Download the Programming Software
To use the programmer, you need to download and install Xilinx ISE WebPack version 14.7 from here:
http://www.xilinx.com/products/design-tools/ise-design-suite/ise-webpack.html
Be warned, this is a massive (~8GB) download!
The Xilinx site can be very confusing - don't download the newer Vivado Design Suite, as it does not support the devices used by this project.
### Download the appropriate .mcs file from the releases section:
https://github.com/hoglet67/AtomBusMon/tree/master/releases
The structure of the releases directory is:
/releases/$PART/$VERSION/$DATE
There are a range of mcs files to suit all the suitable boards for this project.
Go to the specific page for your FPGA board for information how to proceed further.

@ -1,80 +0,0 @@
### Purchasing a Xilinx Platform Cable
To program the GODIL, it's best to purchase a Xilinx USB Platform Cable.
There are Chinese clones available on eBay for approx £20 that work perfectly well:
* http://www.ebay.co.uk/itm/Xilinx-Platform-USB-Download-Cable-Jtag-Programmer-for-FPGA-CPLD-C-Mod-XC2C64A-/390809680232
[[images/godil/xilinx_cable.jpg]]
### Download the Programming Software
To use the programmer, you need to download and install Xilinx ISE WebPack version 14.7 from here:
http://www.xilinx.com/products/design-tools/ise-design-suite/ise-webpack.html
Be warned, this is a massive (~8GB) download!
The Xilinx site can be very confusing - don't download the newer Vivado Design Suite, as it does not support the Spartan 3E family used on the GODILs.
### Download the appropriate .mcs file from the releases section:
https://github.com/hoglet67/AtomBusMon/tree/master/releases
The structure of the releases directory is:
/releases/$PART/$VERSION/$DATE
Note: $PART is 250 for the small xc3s250e based GODIL, and 500 for the large xc3s500e based GODIL
The design Blank.mcs is described below.
### Prepare the GODIL for Programming
One consideration when changing designs in the GODIL is that the power supply pins need to change. The safest way to do this is by programming an intermediate "blank" design that configures all pins as inputs.
In outline, the process is
* Plug GODIL into a breadboard
* Configure the GODIL jumpers appropriately to power the design that's currently programmed
* Apply power to via these pins
* Flash the .mcs file for the "blank" design using iMPact
* Remove power
* Configure the GODIL jumpers appropriately to power the new design
* Apply power to via these pins
* Flash the .mcs file for the new design using iMPact
* Remove power
* Unplug GODIL into a breadboard
* Plug GODIL into target system
By following these steps, you avoid ever accidentally shorting an output to power or ground, as the pin assignments change.
### Programming the GODIL with iMPACT
Start iMPACT:
```
source /opt/Xilinx/14.7/ISE_DS/settings32.sh;
impact
```
In the iMPACT GUI:
* Hit cancel to abort the "New iMPACT Project" wizard
* Double click on "Boundary Scan"
* Right click then select "Initialize Chain"
* Click OK to close the "Device Programming Properties" dialog
* Double click on the little box above the Green Xilinx Chip that is labelled SPI/BPI
* Browse the releases folder and select the .mcs file you want to program
* You should then get a "Select Attached SPI/BPI Dialog"
* Select SPI PROM
* M25P16 for the small xc3s250e based GODIL
* M25P32 for the large xc3s500e based GODIL
* Single click on the SPI/BPI box - it should turn green, and on the left you should now see the following options:
* Program
* Verify
* Erase
* Blank Check
* Readback
* Get Device Checksum
* Read Device Status
* Double clock on Program
* Click OK in the "Device Programming Properties" dialogue (the defaults are fine)
* You should now see a progress dialogue, and programming should take about 1 minute
* At the end you should get a "Program Successful" message