From Milkymist Wiki
[edit] Procedure
- You need a JTAG cable supported by the Xilinx tools.
- Download and install ISE Webpack from the Xilinx website (free of charge, but registration required).
- Download the binary kit, unpack it and cd to the directory where the MCS files are.
- Run impact -batch and enter the commands below. Flashing takes several minutes.
- Power cycle the board. It should boot!
- There is a development project going on in order to do it without the expensive Xilinx cables and the bloated (multi-GB) and proprietary Xilinx tools. Check the mailing list archives for more info.
[edit] Impact batch commands
setMode -bscan
setCable -p auto
identify -inferir
identifyMPM
attachflash -position 1 -bpi "28F256J3F"
assignfiletoattachedflash -position 1 -file "bitstream.mcs"
program -p 1 -dataWidth 16 -rs1 NONE -rs0 NONE -bpionly -e
assignfiletoattachedflash -position 1 -file "bios.mcs"
program -p 1 -dataWidth 16 -rs1 NONE -rs0 NONE -bpionly -e
assignfiletoattachedflash -position 1 -file "splash.mcs"
program -p 1 -dataWidth 16 -rs1 NONE -rs0 NONE -bpionly -e
assignfiletoattachedflash -position 1 -file "userfs.mcs"
program -p 1 -dataWidth 16 -rs1 NONE -rs0 NONE -bpionly -e
quit
[edit] Program with UrJTAG
$ srec_cat bitstream.mcs -intel -o bitstream.bin -binary
$ srec_cat bios.mcs -intel -offset -0x180000 -o bios.bin -binary
$ srec_cat splash.mcs -intel -offset -0x1c0000 -o splash.bin -binary
$ srec_cat userfs.mcs -intel -offset -0x260000 -o userfs.bin -binary
- save these commands to a batchfile
cable Turtelizer2 vid=0x0403 pid=0x6010
detect
pld load /path/to/flasher/system.bit
initbus fjmem opcode=000010
detectflash 0
flashmem 0 bitstream.bin noverify
flashmem 0x180000 bios.bin noverify
flashmem 0x1c0000 splash.bin noverify
flashmem 0x260000 userfs.bin noverify
$ jtag -n batchfile