====== Getting started with the Xilinx Spartan-3AN Starter Kit ====== [ __[[vlsi:workbook:fpga#contents|Back to index]]__ ] [ __[[vlsi:workbook:fpga:spartan3an:test|Test]]__ ] [ __[[vlsi:workbook:fpga:spartan3an:programming|Programming options (tmp)]]__ ] [ __[[vlsi:workbook:fpga:xilinx:spartan3an:ucf|UCF location constraints]]__ ] == Contents == * Introduction * Reference documentation * ... **Keywords:** ====== Introduction ====== Xilinx Spartan-3 boards and kits main page: \\ [[http://www.xilinx.com/products/boards_kits/spartan.htm]] Xilinx Spartan-3A starter kit: \\ [[http://www.xilinx.com/products/boards-and-kits/HW-SPAR3A-SK-UNI-G.htm]] ====== Reference documentation ====== Very good getting started book: P.P. Chu, //FPGA Prototyping By Verilog Examples Xilinx Spartan-3 Version// \\ P.P. Chu, //FPGA Prototyping By VHDL Examples Xilinx Spartan-3 Version// Xilinx official documentation: \\ [[http://www.xilinx.com/support/index.html/content/xilinx/en/supportNav/boards_and_kits/spartan-3_kits/spartan-3a_starter_kit.html]] \\ [[http://www.xilinx.com/support/index.html/content/xilinx/en/supportNav/boards_and_kits/spartan-3_kits/spartan-3an_starter_kit.html]] //Spartan-3A/3AN Out of the box, now what?// \\ [[http://www.xilinx.com/products/boards/s3astarter/files/s3ask_out.pdf]] //Spartan-3A/3AN FPGA Starter Kit Board User Guide// \\ [[http://www.xilinx.com/support/documentation/boards_and_kits/ug334.pdf]] //Spartan-3A/3AN Starter Kit Schematics// \\ [[http://www.xilinx.com/support/documentation/boards_and_kits/s3astarter_schematic.pdf]] //Spartan-3 Generation Configuration User Guide// \\ [[http://www.xilinx.com/support/documentation/user_guides/ug332.pdf]] \\ Download the most important documentation: cd ~/scratch/xilinx/doc/spartan3an wget http://www.xilinx.com/support/documentation/data_sheets/ds557.pdf wget http://www.xilinx.com/support/documentation/boards_and_kits/ug334.pdf wget http://www.xilinx.com/support/documentation/boards_and_kits/s3astarter_schematic.pdf wget http://www.xilinx.com/support/documentation/boards_and_kits/s3a_starter_gerbers.pdf wget http://www.xilinx.com/support/documentation/boards_and_kits/s3astarter_bom.xls wget http://www.xilinx.com/support/documentation/user_guides/ug332.pdf ====== Board ====== [[http://www.xilinx.com/images/image106303.jpg]] {{:vlsi:workbook:fpga:xilinx:spartan3an:pictures:spartan3an_board.jpg?500}} ====== On-board embedded USB/JTAG programming interface ====== The board comes with an **integrated Platform Cable USB**. [[http://xlnx.lithium.com/t5/Spartan-Family-FPGAs/Can-t-find-USB-on-the-Spartan-3A-AN-starter-board-schematic/td-p/180786]] Xilinx **does not disclose** details (specs and schematics) about the USB Platform Cable design. [[http://www.intilinux.com/programmazione/478/usare-le-board-xilinx-fpga-su-linux/]] [[http://www.youtube.com/watch?v=CjZ5QwyZRrY]| How to use Xilinx iMPACT without the windrv kernel module under Linux (YouTube vide tutorial)]] [[http://www.fpgarelated.com/comp.arch.fpga/thread/43078/xilinx-platform-cable-usb-protocol-specifications-and-or-open-source-firmware-replacement.php]] ====== USB cable ===== The kit provides a **standard male A/B USB cable** for firmware downloads. Note that **this is NOT the official Xilinx USB cable** provided by Xilinx! Just no more than a standard USB cable! {{:vlsi:workbook:fpga:spartan3an:usb_ab_male_cable.jpg?300}} :!: //**Note**// \\ Cable drivers for UNIX/Linux ? Official page from Xilinx: \\ //Platform Cable USB/USB-II - Libusb Driver support available on Linux// \\ [[http://www.xilinx.com/support/answers/29310.html]] Other resources: * [[https://m.youtube.com/watch?v=CjZ5QwyZRrY]] * [[http://www.xilinx.com/support/answers/29310.htm]] * [[http://www.xilinx.com/support/answers/54381.htm]] * [[http://forums.xilinx.com/t5/Design-Tools-Others/USB-Jtag-cable-drivers/td-p/394857]] * [[http://ashwith.wordpress.com/2012/06/10/setup-xilinx-ise-14-1-free-version-and-digilents-adept-utilities-in-fedora-17-64-bit/]] * [[http://aalonso.wordpress.com/2010/02/02/xilinx-11-4-on-fedora-12-playing-with-spartan-3e-starter-kit/]] * [[http://forums.xilinx.com/t5/Installation-and-Licensing/How-to-install-Xilinx-ISE-and-USB-drivers-CentOS-5/td-p/54250/page/2]] * [[https://www.wrbishop.com/fpga/how-to-configure-xilinx-fpga-design-suite-13-3-under-rhelcentos-6-x-fedora-15/]] * [[http://www.xilinx.com/support/documentation/sw_manuals/xilinx13_1/pim_t_linux_cable_drivers.htm]] * [[http://rmdir.de/~michael/xilinx/]] * [[http://elinux.org/Install_Xilinx_USB_cable_drivers_for_Ubuntu]] * [[http://tingcao.wordpress.com/2012/05/11/install-xilinx-cable-drivers-on-32-bit-ubuntu/]] * [[http://forums.xilinx.com/t5/Installation-and-Licensing/Installing-Xilinx-14-webpack-on-Ubuntu-12-04/td-p/248770]] * [[http://javispedro.com/fpga/xilinx-usb-linux.html]] * [[http://forums.xilinx.com/t5/Design-Tools-Others/iMPACT-tips-for-modern-linux-distros/td-p/146486]] * [[http://www.xilinx.com/support/answers/22648.html]] * [[http://wiki.gentoo.org/wiki/Xilinx_USB_JTAG_Programmers]] * [[http://www.george-smart.co.uk/wiki/Xilinx_JTAG_Linux]] * [[https://wiki.archlinux.org/index.php/Xilinx_ISE_WebPACK]] * [[http://ashwith.wordpress.com/2012/06/10/setup-xilinx-ise-14-1-free-version-and-digilents-adept-utilities-in-fedora-17-64-bit/]] * [[http://www.linuxjournal.com/magazine/fpga-programming-linux]] $ lsusb ... Bus 002 Device 011: ID 03fd:000d Xilinx, Inc. Modified UDEV rule file: ATTRS{idVendor}=="03fd", ATTRS{idProduct}=="0008", MODE="666" SUBSYSTEMS=="usb", ACTION=="add", ATTRS{idVendor}=="03fd", ATTRS{idProduct}=="0007", RUN+="/sbin/fxload -v -t fx2 -I /usr/share/xusbdfwu.hex -D $tempnode" SUBSYSTEMS=="usb", ACTION=="add", ATTRS{idVendor}=="03fd", ATTRS{idProduct}=="0009", RUN+="/sbin/fxload -v -t fx2 -I /usr/share/xusb_xup.hex -D $tempnode" SUBSYSTEMS=="usb", ACTION=="add", ATTRS{idVendor}=="03fd", ATTRS{idProduct}=="000d", RUN+="/sbin/fxload -v -t fx2 -I /usr/share/xusb_emb.hex -D $tempnode" SUBSYSTEMS=="usb", ACTION=="add", ATTRS{idVendor}=="03fd", ATTRS{idProduct}=="000f", RUN+="/sbin/fxload -v -t fx2 -I /usr/share/xusb_xlp.hex -D $tempnode" SUBSYSTEMS=="usb", ACTION=="add", ATTRS{idVendor}=="03fd", ATTRS{idProduct}=="0013", RUN+="/sbin/fxload -v -t fx2 -I /usr/share/xusb_xp2.hex -D $tempnode" SUBSYSTEMS=="usb", ACTION=="add", ATTRS{idVendor}=="03fd", ATTRS{idProduct}=="0015", RUN+="/sbin/fxload -v -t fx2 -I /usr/share/xusb_xse.hex -D $tempnode" [[http://svenand.blogdrive.com/archive/114.html]] ====== USB-to-JTAG cable ===== To connect to JTAG pin headers. It does not come with the kit. You may buy a **[[http://www.xilinx.com/products/boards-and-kits/HW-USB-II-G.htm|Xilinx Platform Cable USB II]]** or a less expensive cable **[[http://www.digilentinc.com/Products/Detail.cfm?Prod=JTAG-USB|from Digilent]]**. {{:vlsi:workbook:fpga:spartan3an:usb_to_jtag_cable_digilent.jpg?350}} [[http://www.xilinx.com/support/documentation/data_sheets/ds593.pdf]] ====== Digilent programmign cable/Adept sofware ====== [[http://www.xilinx.com/support/answers/54382.htm]] [[http://ashwith.wordpress.com/2012/06/10/setup-xilinx-ise-14-1-free-version-and-digilents-adept-utilities-in-fedora-17-64-bit/]] ====== Design examples from Xilinx ====== [[http://www.xilinx.com/products/boards/s3astarter/reference_designs.htm]] \\ **Demo Design for the Starter Kit Board** \\ [[http://www.xilinx.com/products/boards/s3astarter/reference_designs.htm#demo]] [[http://www.xilinx.com/products/boards/s3astarter/files/s3ask_demo.pdf]] wget http://www.xilinx.com/products/boards/s3astarter/files/s3ask_demo.pdf Source code: ''s3ask_demo.zip'' (Xilinx login required for downloads) \\ **Device DNA Reader** \\ [[http://www.xilinx.com/products/boards/s3astarter/reference_designs.htm#dna_reader]] [[http://www.xilinx.com/products/boards/s3astarter/files/s3ask_dna_reader.pdf]] wget http://www.xilinx.com/products/boards/s3astarter/files/s3ask_dna_reader.pdf Source code: ''s3ask_dna_reader.zip'' (Xilinx login required for downloads) mkdir sources unzip -d sources/ s3ask_dna_reader.zip ====== Web tutorials and other resources ====== Lot of examples can be found at [[http://www.fpga4fun.com/]] \\ **Turning on/off a simple LED with a D-FlipFlop** * [[http://m.youtube.com/watch?v=eLOLBYxLXcE]] \\ **Basic LED blinking using binary counters** * [[http://www.fpga4fun.com/ISEQuickStart.html]] * [[http://therobotfix.wordpress.com/2011/06/27/getting-started-with-spartan-3e-fpga-and-verilog/]] * [[http://m.youtube.com/watch?v=2qx7Xef2LGE]] * [[http://m.youtube.com/watch?v=qXlM8p0u-as]] \\ A nice collection of FPGA projects by Mike Field at //hamsterworks.co.nz//, [[http://hamsterworks.co.nz/mediawiki/index.php/FPGA_Projects]] ====== ====== \\ ---- Last update: [[pacher@NOSPAMto.infn.it]] - Sep 21, 2013 ~~NOTOC~~