Programming AMC13 Flash with AMC13ToolFlash

Instructions for programming flash with AMC13ToolFlash. Flash sectors should be programmed using the latest firmware for all sectors. The flash sectors should be programmed in the following order:

  1. Flash Header
  2. Flash Golden (Backup Spartan)
  3. Spartan (T2)
  4. Virtex/Kintex (T1)

NOTE : These instructions are for initial programming of the AMC13 or for recovery of AMC13 after flash has been corrupted. This tool is not meant for typical firmware updates of a working AMC13. Firmware update should follow instructions using AMC13Tool2: AMC13Tool2Recipes#UpdateFirmware


  • Programmed T2 (Spartan) FPGA with appropriate bit or mcs file (with iMPACT) (FlashMemory#FlashProgramming)
  • Serial Number of AMC13 set (according to jumpers on T2) and IP addresses known (default SN-based IP addresses: IPaddressAssignment)
  • Working version of AMC13ToolFlash (from cactus SVN)
  • Environmental variable AMC13_ADDRESS_TABLE_PATH set to the directory with AMC13 address tables (same path as for AMC13Tool2)

Programming instructions:

  1. Make sure that you have the latest firmware files for both the Spartan and Kintex chips by downloading the latest '.mcs' files from here. To be safe, download all of the MCS files for the latest versions (the tool will pick the correct file where there is more than one choice). Make sure to the match mcs files which have the correct chip type for T2 (lx25t vs lx45t). Put the firmware files in your current directory.
  2. Running the AMC13ToolFlash: The AMC13ToolFlash requires two input values:
    1. The AMC13 T2 IP address (following '-c' option)
    2. The flash command to execute (following '-f' option) (Flash command are as in AMC13Tool2. i.e. 'pfh', 'pbs', 'ps', and 'pv' / 'pk') (see AMC13FlashProgramming)
  3. Using the AMC13ToolFlash, program the Flash Header:
    1. Run the flash tool and specify the T2 IP address and the program flash header (pfh) flash command (in the below examples we use the IP address of a given board, but for your board replace with the actual T2 IP address)
AMC13ToolFlash.exe -c -f pfh
Address table path "/home/dzou/work/amc13//amc13/etc/amc13/" set from AMC13_ADDRESS_TABLE_PATH
Programming flash header...
before URI string init
after URI string init
Using AMC13 software ver:35359
Select appropriate file to program
serial no: 161

1. AMC13T2Header_6slx45t.mcs
2. AMC13T2v0x0025_6slx45t.mcs
3. AMC13T2v0x0026_6slx45t.mcs
4. AMC13T2Golden_6slx45t.mcs
5. AMC13T2v0x0021_6slx45t.mcs

Enter number for MCS file to select (0 to exit):
Select the appropriate MCS file (this is case, it is 1)
Enter number for MCS file to select (0 to exit): 1
Programming against file: AMC13T2Header_6slx45t.mcs...
Programming AMC13T2Header_6slx45t.mcs to flash address 0x000000...
Erasing flash sector at address 0x000000
programming flash at address 
4. Program backup Spartan (Golden) using 'pbs' flash command and otherwise similar procedure as above:
AMC13ToolFlash.exe -c -f pbs
5. Program Spartan (T2) using 'ps' flash command and otherwise similar procedure as above:
AMC13ToolFlash.exe -c -f ps
5. Program Virtex/Kintex (T1) using 'pv' or 'pk' (they are equivalent) flash command and otherwise similar procedure as above:
AMC13ToolFlash.exe -c -f pv
6. Once you have all sector programmed, power cycle AMC13 to apply firmware in flash (NOTE: Do NOT power cycle board until all sectors are programmed successfully, do so will erase the any bit files programmed to T2 and will attempt to apply the firmware currently in flash, which can cause errors if there is nothing available from a given flash sector).

-- DavidZou - 09 Apr 2015

Edit | Attach | Watch | Print version | History: r6 | r4 < r3 < r2 < r1 | Backlinks | Raw View | Raw edit | More topic actions...
Topic revision: r1 - 09 Apr 2015 - DavidZou
  • Edit
  • Attach
This site is powered by the TWiki collaboration platform Powered by PerlCopyright © 2008-2023 by the contributing authors. All material on this collaboration platform is the property of the contributing authors.
Ideas, requests, problems regarding TWiki? Send feedback