Programming AMC13 Flash with AMC13ToolFlash

Instructions for programming flash with AMC13ToolFlash. Flash sectors should be programmed using the latest firmware for all sectors. 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)

Getting Firmware:

    Flash Header changes very rarely and there should always be a file named AMC13T2Header_6slx45t.mcs at the link here (substitute lx25t if you have an old T2 board).

    Golden T2 is the backup for the T2 in case the main image gets corrupted. This is named AMC13T2Goldenv0xfff8_6slx45t.mcs where "fff8" is the version number in hex and smaller values indicate newer versions. To find the latest, go to;O=D and find the newest file named as above.

    Spartan is the newest AMC13XGT2... file from

    Kintex/Virtex is the newest AMC13XGT1... file from

Programming instructions:

Make sure that you have the latest firmware files for both the Spartan and Kintex chips by downloading the latest '.mcs' files from here. 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.

Running the AMC13ToolFlash

Run the Flash Tools using:

      $ AMC13ToolFlash.exe -c 55/c -f pa
  • The -c option can either be an IP address or a serial number. Also /c can be used for control hub.
  • The flash command to execute is given by the -f option. Here "pa" means program all which will program all four sectors. Other options for programming just one sector or verifying sectors are available. Use --help to see all options.

After pressing enter a prompt will appear to pick a mcs file located in your current directory like below:

Address table path /home/djarcaro/cms/amc13/amc13/etc/amc13/ set from AMC13_ADDRESS_TABLE_PATH
Using control hub true
Created URI from IP address:
  T2: chtcp-2.0://localhost:10203?target=
  T1: chtcp-2.0://localhost:10203?target=
Connecting to the board...
Verifying flash header
Serial Number: 55

1. AMC13T2v0x0029_6slx45t.mcs
2. AMC13T2v0x002d_6slx45t.mcs
3. AMC13T2Header_6slx45t.mcs
4. AMC13T2Golden_6slx45t.mcs

Enter number for MCS file to select (0 to exit): 

Select the correct mcs file corresponding to the prompt. Here the command is Verify Flash Header (-f vfh) so 3 would be the correct mcs file.

Once you have all sector programmed, run the flash tool with the -r option to reload the flash memory (or power cycle the board)(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).

The flash sectors should be programmed in the following order if not using the pa option:

Order TypeSorted descending Sample File Name Programming Command
3 Spartan (T2) AMC13T2v0x002d_6slx45t.mcs AMC13ToolFlash.exe -f ps
4 Kintex (T1) AMC13T1v0x8126_7k325t.mcs AMC13ToolFlash.exe -f pk
1 Flash Header AMC13T2Header_6slx45t.mcs AMC13ToolFlash.exe -f pfh
2 Flash Golden (Backup Spartan) amc13T2Goldenv0xfff8_6slx45t.mcs AMC13ToolFlash.exe -f pbs


-- DavidZou - 09 Apr 2015

This topic: BUCMSPublic > WebHome > HcalDTC > AMC13ProductionTesting > AMC13ToolFlash
Topic revision: r3 - 27 Oct 2015 - DanielArcaro
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