How to program FPGAs using Vivado

NOTE: Intended for production testing. If you are attempting to program over JTAG, but do not need to do a memory test, you must track down appropriate bit files corresponding to your desired firmware; however, the testing firmware below is sufficient for connecting to an AMC13 and reprogramming the FLASH memory, if that if all you need.

  • Configure FPGA using Vivado (as an alternative to iMPACT)
    1. Download the following bit file to your computer (in a known, accessible location):
    2. Connect your JTAG cable to the bottom-most of the two 10-pin, rectangular, male sockets on the front panel of your AMC13 as show here. Note that "pin 1" is in the upper left-hand corner of the connector
    3. Once your JTAG cable is connected, open the Vivado Lab Tools on the computer which is connected to your JTAG cable
    4. On the opening screen, click "Open Hardware Manager".
    5. At the top of the screen a bar will appear with the text "No hardware target is open." Click on "Open target" and select "Auto Connect" from the drop down menu.
    6. The device should appear on the left, with sub elements for both of the chips (if you can't tell them apart, the Spartan chip will have an "s" in the name, and the Kintex a "k").
    7. We want to program the Spartan chip! Right click on the name of the Spartan chip and select "Program Device"
    8. Click on the "..." next to "Bitsteam file". Find and select the bit file that you downloaded at the start of this process. Leave "Debug probes file" blank.
    9. Once you have done this, click Program.
    10. Your Spartan chip should now be at firmware version 0x6. Do not cycle the power at this point. If the T1 flash has been programmed previously, wait 10-15 seconds before proceeding.
    11. Repeat steps 7-10 for the T1 Kintex Chip

-- Christopher Cosby - 01 Oct 2020

Comments

Edit | Attach | Watch | Print version | History: r2 < r1 | Backlinks | Raw View | Raw edit | More topic actions
Topic revision: r2 - 16 Oct 2020 - ChristopherCosby
 
This site is powered by the TWiki collaboration platform Powered by PerlCopyright © 2008-2020 by the contributing authors. All material on this collaboration platform is the property of the contributing authors.
Ideas, requests, problems regarding TWiki? Send feedback