Difference: FlashMemory (1 vs. 25)

Revision 2523 Sep 2020 - ChristopherCosby

Line: 1 to 1
 
META TOPICPARENT name="HcalDTC"
Useful Links
Firmware Files
Line: 95 to 95
 
    1. In the "Select Attached SPI/BPI" dialogue box, select "SPI PROM" in the first pull down box and M25P128 in the second dialogue box (use M25P32 for TTT board!), then hit OK
    2. Right click on the new FLASH box attached to your FPGA in the large sub-window's diagram and select "Program"
    3. This process may take quite a long time, so be patient. The large sub-window will let you know whether the FLASH program was successfull or problematic
Changed:
<
<

>
>
 
  • Configure FPGA using Vivado (as an alternative to iMPACT)
    1. Download the following bit file to your computer (in a known, accessible location):
Line: 106 to 106
 
    1. On the opening screen, click "Open Hardware Manager".
    2. 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.
    3. The device should appear on the left, with sub elements for both of the chips.
Changed:
<
<
    1. We want to program the Spartan chip! Right click on the name of the Spartan chip and select "Program XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX"
    2. This should open a file browser on your computer. Find and select the bit file that you downloaded at the start of this process.
    3. Once you have done this, click program and select ok
>
>
    1. We want to program the Spartan chip! Right click on the name of the Spartan chip and select "Program Device"
    2. 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" black.
    3. Once you have done this, click Program.
 
    1. Your Spartan chip should now be at firmware version 0x6. Do not cycle the power at this point.
    2. Repeat steps 7-10 for the T1 Virtex Chip
Deleted:
<
<
    1. (If you're running a memory test for production testing, proceed with those steps now, before you program flash or power cycle the unit)
 
    1. Use either AMC13Tool.exe in the C++ software or AMC13ToolFlash in the AMC13 software to update the flash for your Spartan and Virtex chips. You should program all 4 flash images (AMC13T2Header, AMC13T2Golden, AMC13T2Vxxxxx.mcs and AMC13T2Vxxxxx.mcs). After this last step is complete you should cycle the power and check that your versions are now the latest ones.

-- JimRohlf - 26 May 2012 \ No newline at end of file

Revision 2423 Sep 2020 - ChristopherCosby

Line: 1 to 1
 
META TOPICPARENT name="HcalDTC"
Useful Links
Changed:
<
<
Firmware Files
>
>
Firmware Files
 
iMPACT Installation
Running iMPACT
iMPACT Troubleshooting
Line: 46 to 46
 
  • Running iMPACT
    • If you have successfully installed iMPACT as well as "libusb" and "fxload" (see installation instructions above if not!), try and run the LabTools software.
Changed:
<
<
      1. Set the environment and start the program
>
>
      1. Set the environment and start the program
 
         $ source <LabToolsInstallationDir>/14.4/LabTools/settings64.[c]sh
         $ export LD_LIBRARY_PATH=<libusbSharedLibDir>:$LD_LIBRARY_PATH
         $ impact
         
Changed:
<
<
      1. Double click on the Boundary Scan icon in the "iMPACT Flows" sub-window
      2. Right click on the large sub-window and select initialize chain
>
>
      1. Double click on the Boundary Scan icon in the "iMPACT Flows" sub-window
      2. Right click on the large sub-window and select initialize chain
  If your device is successfully identified, then you are ready to follow the instructions below and program your AMC13's flash memory from JTAG.
Changed:
<
<
NOTE Newer versions of iMPACT may not have a iMPACT Flows window with Boundary Scan opened by default. Another way to start in this case is to start a new project (File -> New Project) and doing a boundary scan through there
>
>
NOTE Newer versions of iMPACT may not have a iMPACT Flows window with Boundary Scan opened by default. Another way to start in this case is to start a new project (File -> New Project) and doing a boundary scan through there
 
  • iMPACT Troubleshooting
Line: 64 to 64
 

Deleted:
<
<
 
  • Configure FPGA using iMPACT
Changed:
<
<
    1. Download the following bit file to your computer (in a known, accessible location):
>
>
    1. Download the following bit file to your computer (in a known, accessible location):
 
Changed:
<
<
    1. 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
    2. Once your JTAG cable is connected, open the IMPACT software (see iMPACT Installation for installation instructions and Running iMPACT for startup instructions) on the computer which is connected to your JTAG cable
    3. The software will prompt you about loading past projects and creating new ones. Just say no/cancel to all of these opions.
    4. Once the main window for IMPACT is up, click on the Boundary Scan icon in the "iMPACT Flows" sub-window.
    5. Once you have done this, right click on the large sub-window and select initialize chain
    6. A window will then pop up asking you to assign configuration files. Cancel out of this.
    7. Make sure that at the bottom of your large sub-window, there is a blue rectangle which reads "Identify Succeeded". Also, you should now see a graphic (in this same sub-window) of both the Virtex and Spartan chips in your AMC13
    8. We want to program the Spartan chip! Right click on the graphic of the Spartan chip and select assign new configuration file
    9. This should open a file browser on your computer. Find and select the bit file that you downloaded at the start of this process.
    10. Once you have done this, click program and select ok
    11. The bit file is loaded very quickly, so don't be alarmed if it seems like nothing happened.
    12. Your Spartan chip should now be at firmware version 0x6. Do not cycle the power at this point.
    13. Use either AMC13Tool.exe in the C++ software or AMC13ToolFlash in the AMC13 software to update the flash for your Spartan and Virtex chips. You should program all 4 flash images (AMC13T2Header, AMC13T2Golden, AMC13T2Vxxxxx.mcs and AMC13T2Vxxxxx.mcs). After this last step is complete you should cycle the power and check that your versions are now the latest ones.
>
>
    1. 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
    2. Once your JTAG cable is connected, open the IMPACT software (see iMPACT Installation for installation instructions and Running iMPACT for startup instructions) on the computer which is connected to your JTAG cable
    3. The software will prompt you about loading past projects and creating new ones. Just say no/cancel to all of these opions.
    4. Once the main window for IMPACT is up, click on the Boundary Scan icon in the "iMPACT Flows" sub-window.
    5. Once you have done this, right click on the large sub-window and select initialize chain
    6. A window will then pop up asking you to assign configuration files. Cancel out of this.
    7. Make sure that at the bottom of your large sub-window, there is a blue rectangle which reads "Identify Succeeded". Also, you should now see a graphic (in this same sub-window) of both the Virtex and Spartan chips in your AMC13
    8. We want to program the Spartan chip! Right click on the graphic of the Spartan chip and select assign new configuration file
    9. This should open a file browser on your computer. Find and select the bit file that you downloaded at the start of this process.
    10. Once you have done this, click program and select ok
    11. The bit file is loaded very quickly, so don't be alarmed if it seems like nothing happened.
    12. Your Spartan chip should now be at firmware version 0x6. Do not cycle the power at this point.
    13. Use either AMC13Tool.exe in the C++ software or AMC13ToolFlash in the AMC13 software to update the flash for your Spartan and Virtex chips. You should program all 4 flash images (AMC13T2Header, AMC13T2Golden, AMC13T2Vxxxxx.mcs and AMC13T2Vxxxxx.mcs). After this last step is complete you should cycle the power and check that your versions are now the latest ones.
 
  • Program FLASH using iMPACT
Changed:
<
<
    1. Download the desired MCS 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. Note that "pin 1" is in the upper left-hand corner of the connector
    3. Once your JTAG cable is connected, open the IMPACT software (see iMPACT Installation for installation instructions and Running iMPACT for startup instructions) on the computer which is connected to your JTAG cable
    4. The software will prompt you about loading past projects and creating new ones. Just say no/cancel to all of these opions.
    5. Once the main window for IMPACT is up, click on the Boundary Scan icon in the "iMPACT Flows" sub-window.
    6. Once you have done this, right click on the large sub-window and select initialize chain
    7. Right click on the "SPI/BPI Device" dotted box and select "Add SPI/BPI Flash"
    8. In the file browser dialogue box, select the MCS file you want to program to FLASH
    9. In the "Select Attached SPI/BPI" dialogue box, select "SPI PROM" in the first pull down box and M25P128 in the second dialogue box (use M25P32 for TTT board!), then hit OK
    10. Right click on the new FLASH box attached to your FPGA in the large sub-window's diagram and select "Program"
    11. This process may take quite a long time, so be patient. The large sub-window will let you know whether the FLASH program was successfull or problematic
>
>
    1. Download the desired MCS 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. Note that "pin 1" is in the upper left-hand corner of the connector
    3. Once your JTAG cable is connected, open the IMPACT software (see iMPACT Installation for installation instructions and Running iMPACT for startup instructions) on the computer which is connected to your JTAG cable
    4. The software will prompt you about loading past projects and creating new ones. Just say no/cancel to all of these opions.
    5. Once the main window for IMPACT is up, click on the Boundary Scan icon in the "iMPACT Flows" sub-window.
    6. Once you have done this, right click on the large sub-window and select initialize chain
    7. Right click on the "SPI/BPI Device" dotted box and select "Add SPI/BPI Flash"
    8. In the file browser dialogue box, select the MCS file you want to program to FLASH
    9. In the "Select Attached SPI/BPI" dialogue box, select "SPI PROM" in the first pull down box and M25P128 in the second dialogue box (use M25P32 for TTT board!), then hit OK
    10. Right click on the new FLASH box attached to your FPGA in the large sub-window's diagram and select "Program"
    11. This process may take quite a long time, so be patient. The large sub-window will let you know whether the FLASH program was successfull or problematic

  • 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.
    7. We want to program the Spartan chip! Right click on the name of the Spartan chip and select "Program XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX"
    8. This should open a file browser on your computer. Find and select the bit file that you downloaded at the start of this process.
    9. Once you have done this, click program and select ok
    10. Your Spartan chip should now be at firmware version 0x6. Do not cycle the power at this point.
    11. Repeat steps 7-10 for the T1 Virtex Chip
    12. (If you're running a memory test for production testing, proceed with those steps now, before you program flash or power cycle the unit)
    13. Use either AMC13Tool.exe in the C++ software or AMC13ToolFlash in the AMC13 software to update the flash for your Spartan and Virtex chips. You should program all 4 flash images (AMC13T2Header, AMC13T2Golden, AMC13T2Vxxxxx.mcs and AMC13T2Vxxxxx.mcs). After this last step is complete you should cycle the power and check that your versions are now the latest ones.
  -- JimRohlf - 26 May 2012

Revision 2312 May 2016 - DanielArcaro

Line: 1 to 1
 
META TOPICPARENT name="HcalDTC"
Useful Links
Firmware Files
Line: 67 to 67
 
  • Configure FPGA using iMPACT
    1. Download the following bit file to your computer (in a known, accessible location):
Changed:
<
<
>
>
 
Changed:
<
<
    1. Connect your JTAG cable to the bottom-most of the two 10-pin, rectangular, male sockets on the front panel of your AMC13. Note that "pin 1" is in the upper left-hand corner of the connector
>
>
    1. 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
 
    1. Once your JTAG cable is connected, open the IMPACT software (see iMPACT Installation for installation instructions and Running iMPACT for startup instructions) on the computer which is connected to your JTAG cable
    2. The software will prompt you about loading past projects and creating new ones. Just say no/cancel to all of these opions.
    3. Once the main window for IMPACT is up, click on the Boundary Scan icon in the "iMPACT Flows" sub-window.

Revision 2227 Oct 2015 - DanielArcaro

Line: 1 to 1
 
META TOPICPARENT name="HcalDTC"
Useful Links
Firmware Files
Line: 25 to 25
 

Flash Programming Instructions

The best procedure to follow depends on why you are trying to program the flash on your AMC13.

Changed:
<
<
If you just want to update to the latest version, follow these instructions: AMC13Tool2Recipes#UpdateFirmware
>
>
If you just want to update to the latest version, follow these instructions: UpdateFirmware
  If you suspect that the flash memory has somehow been corrupted and the board doesn't respond, there are a couple of possible causes and various solutions. If you can ping the T2 address at least

Revision 2116 Sep 2015 - EricHazen

Line: 1 to 1
 
META TOPICPARENT name="HcalDTC"
Useful Links
Firmware Files
Line: 21 to 21
 

Firmware Files

See AMC13Firmware page for current firmware releases.
Deleted:
<
<
 

Flash Programming Instructions

Deleted:
<
<
1. Instructions on how to update your AMC13 firmware using the xDAQ C++ AMC13Tool executable are here
 
Changed:
<
<
2. Instructions on how to program your AMC13 from a bit file using a Xilinx JTAG cable are below:
>
>
The best procedure to follow depends on why you are trying to program the flash on your AMC13. If you just want to update to the latest version, follow these instructions: AMC13Tool2Recipes#UpdateFirmware

If you suspect that the flash memory has somehow been corrupted and the board doesn't respond, there are a couple of possible causes and various solutions. If you can ping the T2 address at least (see IPaddressAssignment) then try using AMC13ToolFlash.

If both of those fail, maybe you don't actually know the IP address of your module? It can be set in various ways, including a RARP daemon and via the EEPROM on the MMC. This was mandated by CMS and can result in a difficult recovery situation.

Anyway, if you can't talk to your module and want to attempt recovery using JTAG, read on...

 
  • NOTE: You generally should not have to program via JTAG unless your firmware has become corrupted and the AMC13 software can no longer talk to your module. If this is not the case and you can in fact communicate with your AMC13, please use the Python/C++ tools and follow the directions at the above links

Revision 2031 Mar 2015 - DavidZou

Line: 1 to 1
 
META TOPICPARENT name="HcalDTC"
Useful Links
Firmware Files
Line: 73 to 73
 
    1. Once you have done this, click program and select ok
    2. The bit file is loaded very quickly, so don't be alarmed if it seems like nothing happened.
    3. Your Spartan chip should now be at firmware version 0x6. Do not cycle the power at this point.
Changed:
<
<
    1. Use either AMC13Tool.exe in the C++ software or p_flash.py in the Python software to update the flash for your Spartan and Virtex chips. You should program all 4 flash images (AMC13T2Header, AMC13T2Golden, AMC13T2Vxxxxx.mcs and AMC13T2Vxxxxx.mcs). After this last step is complete you should cycle the power and check that your versions are now the latest ones.
>
>
    1. Use either AMC13Tool.exe in the C++ software or AMC13ToolFlash in the AMC13 software to update the flash for your Spartan and Virtex chips. You should program all 4 flash images (AMC13T2Header, AMC13T2Golden, AMC13T2Vxxxxx.mcs and AMC13T2Vxxxxx.mcs). After this last step is complete you should cycle the power and check that your versions are now the latest ones.
 
  • Program FLASH using iMPACT

Revision 1913 Mar 2015 - DavidZou

Line: 1 to 1
 
META TOPICPARENT name="HcalDTC"
Useful Links
Firmware Files

Revision 1806 Mar 2015 - DavidZou

Line: 1 to 1
 
META TOPICPARENT name="HcalDTC"
Useful Links
Firmware Files
Line: 47 to 47
 
      1. Double click on the Boundary Scan icon in the "iMPACT Flows" sub-window
      2. Right click on the large sub-window and select initialize chain If your device is successfully identified, then you are ready to follow the instructions below and program your AMC13's flash memory from JTAG.
Added:
>
>
NOTE Newer versions of iMPACT may not have a iMPACT Flows window with Boundary Scan opened by default. Another way to start in this case is to start a new project (File -> New Project) and doing a boundary scan through there
 
  • iMPACT Troubleshooting

Revision 1724 Jul 2014 - DavidZou

Line: 1 to 1
 
META TOPICPARENT name="HcalDTC"
Useful Links
Firmware Files
Line: 57 to 57
 

  • Configure FPGA using iMPACT
Changed:
<
<
    1. Download the following bit file to your computer (in a known, accessible location): amc13T2v0x17.bit.
>
>
    1. Download the following bit file to your computer (in a known, accessible location):
 
    1. Connect your JTAG cable to the bottom-most of the two 10-pin, rectangular, male sockets on the front panel of your AMC13. Note that "pin 1" is in the upper left-hand corner of the connector
    2. Once your JTAG cable is connected, open the IMPACT software (see iMPACT Installation for installation instructions and Running iMPACT for startup instructions) on the computer which is connected to your JTAG cable
    3. The software will prompt you about loading past projects and creating new ones. Just say no/cancel to all of these opions.
Line: 74 to 76
 
  • Program FLASH using iMPACT
Changed:
<
<
    1. Download the desired MCS file to your computer (in a known, accessible location)
>
>
    1. Download the desired MCS file to your computer (in a known, accessible location)
 
    1. Connect your JTAG cable to the bottom-most of the two 10-pin, rectangular, male sockets on the front panel of your AMC13. Note that "pin 1" is in the upper left-hand corner of the connector
    2. Once your JTAG cable is connected, open the IMPACT software (see iMPACT Installation for installation instructions and Running iMPACT for startup instructions) on the computer which is connected to your JTAG cable
    3. The software will prompt you about loading past projects and creating new ones. Just say no/cancel to all of these opions.

Revision 1507 Apr 2014 - DavidZou

Line: 1 to 1
 
META TOPICPARENT name="HcalDTC"
Contents
Flash Layout
Line: 17 to 17
 All Flash memory programming is done with the Spartan (T2). From T2 firmware version 0x6 onward, the flash memory is organized as follows:
Address Flash Sector
0x000000 header
Changed:
<
<
0x100000 Spartan "golden" backup
>
>
0x80000 Spartan "golden" backup for lx45t chips
0x100000 Spartan "golden" backup for lx25t chips
 
0x200000 Spartan
0x400000 Virtex/Kintex

Revision 1404 Apr 2014 - EricHazen

Line: 1 to 1
 
META TOPICPARENT name="HcalDTC"
Contents
Flash Layout
Line: 10 to 10
 
iMPACT Installation
Running iMPACT
iMPACT Troubleshooting
Changed:
<
<
Spartan Bit File (revised)
>
>
amc13T2v0x19.bit (LX25T only)
 

Flash Layout

Line: 25 to 25
 

Firmware Files

See AMC13Firmware page for current firmware releases.
Changed:
<
<
NOTE: earlier versions of the spartan firmware (pre v6) use address 0x0 for the Spartan. These modules can be reloaded without a cable by writing v6 to 0x0, powercycling to configure from flash, loading the flash according to the table above, and finally powercycling to get the current configuration.
>
>
 

Flash Programming Instructions

Changed:
<
<
1. Instructions on how to update your AMC13 firmware using AMC13Python software (recommended) are here

2. Instructions on how to update your AMC13 firmware using the xDAQ C++ AMC13Tool executable are here

>
>
1. Instructions on how to update your AMC13 firmware using the xDAQ C++ AMC13Tool executable are here
 
Changed:
<
<
3. Instructions on how to program your AMC13 from a bit file using a Xilinx JTAG cable are below:
>
>
2. Instructions on how to program your AMC13 from a bit file using a Xilinx JTAG cable are below:
 
  • NOTE: You generally should not have to program via JTAG unless your firmware has become corrupted and the AMC13 software can no longer talk to your module. If this is not the case and you can in fact communicate with your AMC13, please use the Python/C++ tools and follow the directions at the above links

Revision 1325 Mar 2014 - DavidZou

Line: 1 to 1
 
META TOPICPARENT name="HcalDTC"
Contents
Flash Layout
Line: 78 to 78
 
    1. Your Spartan chip should now be at firmware version 0x6. Do not cycle the power at this point.
    2. Use either AMC13Tool.exe in the C++ software or p_flash.py in the Python software to update the flash for your Spartan and Virtex chips. You should program all 4 flash images (AMC13T2Header, AMC13T2Golden, AMC13T2Vxxxxx.mcs and AMC13T2Vxxxxx.mcs). After this last step is complete you should cycle the power and check that your versions are now the latest ones.
Added:
>
>
 
  • Program FLASH using iMPACT
    1. Download the desired MCS 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. Note that "pin 1" is in the upper left-hand corner of the connector

Revision 1218 Jun 2013 - EricHazen

Line: 1 to 1
 
META TOPICPARENT name="HcalDTC"
Contents
Flash Layout
Line: 10 to 10
 
iMPACT Installation
Running iMPACT
iMPACT Troubleshooting
Changed:
<
<
Spartan Bit File
>
>
Spartan Bit File (revised)
 

Flash Layout

Line: 63 to 63
 

  • Configure FPGA using iMPACT
Changed:
<
<
    1. Download the following bit file to your computer (in a known, accessible location): http://physics.bu.edu/~wusx/download/AMC13/amc13T2v6.bit
>
>
    1. Download the following bit file to your computer (in a known, accessible location): amc13T2v0x17.bit.
 
    1. Connect your JTAG cable to the bottom-most of the two 10-pin, rectangular, male sockets on the front panel of your AMC13. Note that "pin 1" is in the upper left-hand corner of the connector
    2. Once your JTAG cable is connected, open the IMPACT software (see iMPACT Installation for installation instructions and Running iMPACT for startup instructions) on the computer which is connected to your JTAG cable
    3. The software will prompt you about loading past projects and creating new ones. Just say no/cancel to all of these opions.

Revision 1126 Mar 2013 - CharlieHill

Line: 1 to 1
 
META TOPICPARENT name="HcalDTC"
Contents
Flash Layout
Line: 10 to 10
 
iMPACT Installation
Running iMPACT
iMPACT Troubleshooting
Changed:
<
<
Spartan Bit File
>
>
Spartan Bit File
 

Flash Layout

Line: 63 to 63
 

  • Configure FPGA using iMPACT
Changed:
<
<
    1. Download the following bit file to your computer (in a known, accessible location): http://ohm.bu.edu/~hazen/test/firmware.cgi
>
>
    1. Download the following bit file to your computer (in a known, accessible location): http://physics.bu.edu/~wusx/download/AMC13/amc13T2v6.bit
 
    1. Connect your JTAG cable to the bottom-most of the two 10-pin, rectangular, male sockets on the front panel of your AMC13. Note that "pin 1" is in the upper left-hand corner of the connector
    2. Once your JTAG cable is connected, open the IMPACT software (see iMPACT Installation for installation instructions and Running iMPACT for startup instructions) on the computer which is connected to your JTAG cable
    3. The software will prompt you about loading past projects and creating new ones. Just say no/cancel to all of these opions.

Revision 1026 Mar 2013 - CharlieHill

Line: 1 to 1
 
META TOPICPARENT name="HcalDTC"
Added:
>
>
Contents
Flash Layout
Firmware Files
Flash Programming Instructions (including bitfile restoration)

Useful Links
Firmware Files
iMPACT Installation
Running iMPACT
iMPACT Troubleshooting
Spartan Bit File

 

Flash Layout

All Flash memory programming is done with the Spartan (T2). From T2 firmware version 0x6 onward, the flash memory is organized as follows:
Changed:
<
<
address  
>
>
Address Flash Sector
 
0x000000 header
0x100000 Spartan "golden" backup
0x200000 Spartan
0x400000 Virtex/Kintex
Added:
>
>
 

Firmware Files

See AMC13Firmware page for current firmware releases.

NOTE: earlier versions of the spartan firmware (pre v6) use address 0x0 for the Spartan. These modules can be reloaded without a cable by writing v6 to 0x0, powercycling to configure from flash, loading the flash according to the table above, and finally powercycling to get the current configuration.

Added:
>
>
 

Flash Programming Instructions

1. Instructions on how to update your AMC13 firmware using AMC13Python software (recommended) are here
Line: 20 to 35
  3. Instructions on how to program your AMC13 from a bit file using a Xilinx JTAG cable are below:
Deleted:
<
<
  • Assumptions
    • You have Xilinx "iMPACT" software installed on your computer. For instructions on how to install iMPACT on a SLC5 machine, go here
    • You have a Xilinx JTAG cable with an appropriate adapter (shown here) for connecting to the AMC13 front panel
 
  • NOTE: You generally should not have to program via JTAG unless your firmware has become corrupted and the AMC13 software can no longer talk to your module. If this is not the case and you can in fact communicate with your AMC13, please use the Python/C++ tools and follow the directions at the above links

Changed:
<
<
>
>

  • Running iMPACT
    • If you have successfully installed iMPACT as well as "libusb" and "fxload" (see installation instructions above if not!), try and run the LabTools software.
      1. Set the environment and start the program
                 $ source <LabToolsInstallationDir>/14.4/LabTools/settings64.[c]sh
                 $ export LD_LIBRARY_PATH=<libusbSharedLibDir>:$LD_LIBRARY_PATH
                 $ impact
                 
      2. Double click on the Boundary Scan icon in the "iMPACT Flows" sub-window
      3. Right click on the large sub-window and select initialize chain If your device is successfully identified, then you are ready to follow the instructions below and program your AMC13's flash memory from JTAG.

 
    1. Connect your JTAG cable to the bottom-most of the two 10-pin, rectangular, male sockets on the front panel of your AMC13. Note that "pin 1" is in the upper left-hand corner of the connector
Changed:
<
<
    1. Once your JTAG cable is connected, open the IMPACT software on the computer which is connected to the other end of your JTAG cable
>
>
    1. Once your JTAG cable is connected, open the IMPACT software (see iMPACT Installation for installation instructions and Running iMPACT for startup instructions) on the computer which is connected to your JTAG cable
 
    1. The software will prompt you about loading past projects and creating new ones. Just say no/cancel to all of these opions.
    2. Once the main window for IMPACT is up, click on the Boundary Scan icon in the "iMPACT Flows" sub-window.
Changed:
<
<
    1. Once you have done this, right click on the large sub-window and select intialize chain
>
>
    1. Once you have done this, right click on the large sub-window and select initialize chain
 
    1. A window will then pop up asking you to assign configuration files. Cancel out of this.
    2. Make sure that at the bottom of your large sub-window, there is a blue rectangle which reads "Identify Succeeded". Also, you should now see a graphic (in this same sub-window) of both the Virtex and Spartan chips in your AMC13
    3. We want to program the Spartan chip! Right click on the graphic of the Spartan chip and select assign new configuration file
Line: 42 to 78
 
    1. Your Spartan chip should now be at firmware version 0x6. Do not cycle the power at this point.
    2. Use either AMC13Tool.exe in the C++ software or p_flash.py in the Python software to update the flash for your Spartan and Virtex chips. You should program all 4 flash images (AMC13T2Header, AMC13T2Golden, AMC13T2Vxxxxx.mcs and AMC13T2Vxxxxx.mcs). After this last step is complete you should cycle the power and check that your versions are now the latest ones.
Added:
>
>
  • Program FLASH using iMPACT
    1. Download the desired MCS 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. Note that "pin 1" is in the upper left-hand corner of the connector
    3. Once your JTAG cable is connected, open the IMPACT software (see iMPACT Installation for installation instructions and Running iMPACT for startup instructions) on the computer which is connected to your JTAG cable
    4. The software will prompt you about loading past projects and creating new ones. Just say no/cancel to all of these opions.
    5. Once the main window for IMPACT is up, click on the Boundary Scan icon in the "iMPACT Flows" sub-window.
    6. Once you have done this, right click on the large sub-window and select initialize chain
    7. Right click on the "SPI/BPI Device" dotted box and select "Add SPI/BPI Flash"
    8. In the file browser dialogue box, select the MCS file you want to program to FLASH
    9. In the "Select Attached SPI/BPI" dialogue box, select "SPI PROM" in the first pull down box and M25P128 in the second dialogue box (use M25P32 for TTT board!), then hit OK
    10. Right click on the new FLASH box attached to your FPGA in the large sub-window's diagram and select "Program"
    11. This process may take quite a long time, so be patient. The large sub-window will let you know whether the FLASH program was successfull or problematic
  -- JimRohlf - 26 May 2012

Revision 925 Mar 2013 - CharlieHill

Line: 1 to 1
 
META TOPICPARENT name="HcalDTC"

Flash Layout

All Flash memory programming is done with the Spartan (T2). From T2 firmware version 0x6 onward, the flash memory is organized as follows:
Line: 6 to 6
 
0x000000 header
0x100000 Spartan "golden" backup
0x200000 Spartan
Changed:
<
<
0x400000 Virtex
>
>
0x400000 Virtex/Kintex
 

Firmware Files

See AMC13Firmware page for current firmware releases.
Line: 21 to 21
 3. Instructions on how to program your AMC13 from a bit file using a Xilinx JTAG cable are below:

  • Assumptions
Changed:
<
<
    • You have Xilinx "Impact" software installed on your computer.
>
>
    • You have Xilinx "iMPACT" software installed on your computer. For instructions on how to install iMPACT on a SLC5 machine, go here
 
    • You have a Xilinx JTAG cable with an appropriate adapter (shown here) for connecting to the AMC13 front panel

  • NOTE: You generally should not have to program via JTAG unless your firmware has become corrupted and the AMC13 software can no longer talk to your module. If this is not the case and you can in fact communicate with your AMC13, please use the Python/C++ tools and follow the directions at the above links

Revision 807 Oct 2012 - EricHazen

Line: 1 to 1
 
META TOPICPARENT name="HcalDTC"

Flash Layout

All Flash memory programming is done with the Spartan (T2). From T2 firmware version 0x6 onward, the flash memory is organized as follows:
Line: 38 to 38
 
    1. We want to program the Spartan chip! Right click on the graphic of the Spartan chip and select assign new configuration file
    2. This should open a file browser on your computer. Find and select the bit file that you downloaded at the start of this process.
    3. Once you have done this, click program and select ok
Changed:
<
<
    1. The bit file is loaded very quickly, so don't be alarmed if it seems like nothing happened. After it has finished loading, cycle the power on your uTCA crate to reconfigure the Spartan chip from flash.
    2. Your Spartan chip should now be at firmware version 0x6.
    3. You should now be able to talk to your AMC13 via the software. Use either AMC13Tool.exe in the C++ software or p_flash.py in the Python software to update your Spartan and Virtex chips.
>
>
    1. The bit file is loaded very quickly, so don't be alarmed if it seems like nothing happened.
    2. Your Spartan chip should now be at firmware version 0x6. Do not cycle the power at this point.
    3. Use either AMC13Tool.exe in the C++ software or p_flash.py in the Python software to update the flash for your Spartan and Virtex chips. You should program all 4 flash images (AMC13T2Header, AMC13T2Golden, AMC13T2Vxxxxx.mcs and AMC13T2Vxxxxx.mcs). After this last step is complete you should cycle the power and check that your versions are now the latest ones.
 

-- JimRohlf - 26 May 2012

Revision 707 Oct 2012 - CharlieHill

Line: 1 to 1
 
META TOPICPARENT name="HcalDTC"

Flash Layout

All Flash memory programming is done with the Spartan (T2). From T2 firmware version 0x6 onward, the flash memory is organized as follows:
Line: 22 to 22
 
  • Assumptions
    • You have Xilinx "Impact" software installed on your computer.
Changed:
<
<
    • You have a Xilinx JTAG cable with an appropriate adapter for connecting to the AMC13 front panel
>
>
    • You have a Xilinx JTAG cable with an appropriate adapter (shown here) for connecting to the AMC13 front panel
 
Changed:
<
<
  • NOTE: You generally should not have to do this unless your firmware has become corrupted and the AMC13 software can no longer talk to your module. If this is not the case and you can in fact communicate with your AMC13, please use the Python/C++ tools and follow the directions within the above links
>
>
  • NOTE: You generally should not have to program via JTAG unless your firmware has become corrupted and the AMC13 software can no longer talk to your module. If this is not the case and you can in fact communicate with your AMC13, please use the Python/C++ tools and follow the directions at the above links
 
Changed:
<
<
    1. Connect your JTAG cable to the one of the two 10-pin, rectangular, male sockets on the front panel of your AMC13. The adapter to do this should have (in theory) come with your AMC13.
>
>
    1. Connect your JTAG cable to the bottom-most of the two 10-pin, rectangular, male sockets on the front panel of your AMC13. Note that "pin 1" is in the upper left-hand corner of the connector
 
    1. Once your JTAG cable is connected, open the IMPACT software on the computer which is connected to the other end of your JTAG cable
    2. The software will prompt you about loading past projects and creating new ones. Just say no/cancel to all of these opions.
    3. Once the main window for IMPACT is up, click on the Boundary Scan icon in the "iMPACT Flows" sub-window.
Line: 36 to 36
 
    1. A window will then pop up asking you to assign configuration files. Cancel out of this.
    2. Make sure that at the bottom of your large sub-window, there is a blue rectangle which reads "Identify Succeeded". Also, you should now see a graphic (in this same sub-window) of both the Virtex and Spartan chips in your AMC13
    3. We want to program the Spartan chip! Right click on the graphic of the Spartan chip and select assign new configuration file
Changed:
<
<
    1. This should open a browser on your computer. Find and select the bit file that you downloaded at the start of this process.
    2. Once you have done this, right click on program and select ok
>
>
    1. This should open a file browser on your computer. Find and select the bit file that you downloaded at the start of this process.
    2. Once you have done this, click program and select ok
 
    1. The bit file is loaded very quickly, so don't be alarmed if it seems like nothing happened. After it has finished loading, cycle the power on your uTCA crate to reconfigure the Spartan chip from flash.
    2. Your Spartan chip should now be at firmware version 0x6.
Changed:
<
<
    1. You should now be able to talk to your AMC13 via the software and program the Virtex chip using either AMC13Tool.exe in the C++ software or p_flash.py in the Python software.
>
>
    1. You should now be able to talk to your AMC13 via the software. Use either AMC13Tool.exe in the C++ software or p_flash.py in the Python software to update your Spartan and Virtex chips.
 

-- JimRohlf - 26 May 2012

Revision 603 Oct 2012 - CharlieHill

Line: 1 to 1
 
META TOPICPARENT name="HcalDTC"
Added:
>
>

Flash Layout

 All Flash memory programming is done with the Spartan (T2). From T2 firmware version 0x6 onward, the flash memory is organized as follows:
Deleted:
<
<
 
address  
0x000000 header
0x100000 Spartan "golden" backup
0x200000 Spartan
0x400000 Virtex
Added:
>
>

Firmware Files

 See AMC13Firmware page for current firmware releases.

NOTE: earlier versions of the spartan firmware (pre v6) use address 0x0 for the Spartan. These modules can be reloaded without a cable by writing v6 to 0x0, powercycling to configure from flash, loading the flash according to the table above, and finally powercycling to get the current configuration.

Changed:
<
<
Instructions on how to update your AMC13 firmware using AMC13Python software (recommended) are here
>
>

Flash Programming Instructions

1. Instructions on how to update your AMC13 firmware using AMC13Python software (recommended) are here

2. Instructions on how to update your AMC13 firmware using the xDAQ C++ AMC13Tool executable are here

3. Instructions on how to program your AMC13 from a bit file using a Xilinx JTAG cable are below:

 
Changed:
<
<
Instructions on how to update your AMC13 firmware using the xDAQ c++ AMC13Tool executable are here
>
>
  • Assumptions
    • You have Xilinx "Impact" software installed on your computer.
    • You have a Xilinx JTAG cable with an appropriate adapter for connecting to the AMC13 front panel

  • NOTE: You generally should not have to do this unless your firmware has become corrupted and the AMC13 software can no longer talk to your module. If this is not the case and you can in fact communicate with your AMC13, please use the Python/C++ tools and follow the directions within the above links

  • Instructions
    1. Download the following bit file to your computer (in a known, accessible location): http://physics.bu.edu/~wusx/download/AMC13/amc13T2v6.bit
    2. Connect your JTAG cable to the one of the two 10-pin, rectangular, male sockets on the front panel of your AMC13. The adapter to do this should have (in theory) come with your AMC13.
    3. Once your JTAG cable is connected, open the IMPACT software on the computer which is connected to the other end of your JTAG cable
    4. The software will prompt you about loading past projects and creating new ones. Just say no/cancel to all of these opions.
    5. Once the main window for IMPACT is up, click on the Boundary Scan icon in the "iMPACT Flows" sub-window.
    6. Once you have done this, right click on the large sub-window and select intialize chain
    7. A window will then pop up asking you to assign configuration files. Cancel out of this.
    8. Make sure that at the bottom of your large sub-window, there is a blue rectangle which reads "Identify Succeeded". Also, you should now see a graphic (in this same sub-window) of both the Virtex and Spartan chips in your AMC13
    9. We want to program the Spartan chip! Right click on the graphic of the Spartan chip and select assign new configuration file
    10. This should open a browser on your computer. Find and select the bit file that you downloaded at the start of this process.
    11. Once you have done this, right click on program and select ok
    12. The bit file is loaded very quickly, so don't be alarmed if it seems like nothing happened. After it has finished loading, cycle the power on your uTCA crate to reconfigure the Spartan chip from flash.
    13. Your Spartan chip should now be at firmware version 0x6.
    14. You should now be able to talk to your AMC13 via the software and program the Virtex chip using either AMC13Tool.exe in the C++ software or p_flash.py in the Python software.
 

-- JimRohlf - 26 May 2012

Revision 527 Sep 2012 - CharlieHill

Line: 1 to 1
 
META TOPICPARENT name="HcalDTC"
Changed:
<
<
All Flash memory programming is done with the Spartan (T2). From T2 firmware v6 onward, the flash memory is organized as follows:
>
>
All Flash memory programming is done with the Spartan (T2). From T2 firmware version 0x6 onward, the flash memory is organized as follows:
 
address  
0x000000 header
Line: 10 to 10
  See AMC13Firmware page for current firmware releases.
Changed:
<
<
NOTE; earlier versions of the spartan firmware (pre v6) use address 0x0 for the Spartan. These modules can be reloaded without a cable by writing v6 to 0x0, powercycling to configure from flash, loading the flash according to the table above, and finally powercycling to get the current configuration.
>
>
NOTE: earlier versions of the spartan firmware (pre v6) use address 0x0 for the Spartan. These modules can be reloaded without a cable by writing v6 to 0x0, powercycling to configure from flash, loading the flash according to the table above, and finally powercycling to get the current configuration.
 
Changed:
<
<

Programming using Python Tools

>
>
Instructions on how to update your AMC13 firmware using AMC13Python software (recommended) are here
 
Changed:
<
<
First, please see the AMC13PythonSoftware page and be sure you have the latest version installed.

Be sure the MCS file for the version you want to program is in the directory amc13_python_2012-xx-xx/firmware_amc13. Note that the most recent firmware is included with each python software release, so you only have to worry about this if you have a special version.

Change to the directory amc13_python_2012-xx-xx/src_amc13.

Execute the command python p_flash.py and enter the serial number of your AMC13.

Use options 4 and 5 to program the Spartan and Virtex flash images.

Programming using HCAL xDAQ C++ Tool

The flash programming may be verified against the mcs files (which must be locally available) with !AMC13Tool.exe (C++ HCAL environment only) with the following commands:

  • vfh (verify flash header)
  • vbs (verify backup spartan)
  • vs (verify spartan)
  • vv (verify virtex)

The flash may be programmed (mcs files must be locally available) with AMC13Tool with the following commands:

  • PFH (Program Flash Header)
  • PBS (Program Backup Spartan)
  • PS (Program Spartan)
  • PV (Program Virtex)
As of 26may2012, an AMC13Tool exists in python with the same commands.

The FPGAs (both Spartan and Virtex) may be configured from the flash contents by issuing the software command in AMC13Tool:

  • L (Load)
This command writes 0x100 into address 0x0 of the Spartan. The C++ command is:
  • amc13.writeAddress(amc13.spartan,0x0, 0x100)

The firmware versions of the Spartand and Virtex may be read with AMC13Tool with the command:

  • fv
This command reads address 0x0 of the Spartan and 0x0 of the Virtex:
  • amc13.readAddress(amc13.spartan,0x0)
  • amc13.readAddress(amc13.virtex,0x0)
The upper two bytes contain the AMC13 serial number and the lower two bytes contain the firmware version number.
>
>
Instructions on how to update your AMC13 firmware using the xDAQ c++ AMC13Tool executable are here
 

-- JimRohlf - 26 May 2012 \ No newline at end of file

Revision 410 Aug 2012 - EricHazen

Line: 1 to 1
 
META TOPICPARENT name="HcalDTC"
All Flash memory programming is done with the Spartan (T2). From T2 firmware v6 onward, the flash memory is organized as follows:
Line: 10 to 10
  See AMC13Firmware page for current firmware releases.
Changed:
<
<
NOTE; earlier versions of the spartan firmware (pre v6) use addres 0x0 for the Spartan. These modules can be reloaded without a cable by writing v6 to 0x0, powercycling to configure from flash, loading the flash according to the table above, and finally powercycling to get the current configuration.
>
>
NOTE; earlier versions of the spartan firmware (pre v6) use address 0x0 for the Spartan. These modules can be reloaded without a cable by writing v6 to 0x0, powercycling to configure from flash, loading the flash according to the table above, and finally powercycling to get the current configuration.
 
Changed:
<
<
The flash programming may be verified against the mcs files (which must be locally available) with AMC13Tool with the following commands:
>
>

Programming using Python Tools

First, please see the AMC13PythonSoftware page and be sure you have the latest version installed.

Be sure the MCS file for the version you want to program is in the directory amc13_python_2012-xx-xx/firmware_amc13. Note that the most recent firmware is included with each python software release, so you only have to worry about this if you have a special version.

Change to the directory amc13_python_2012-xx-xx/src_amc13.

Execute the command python p_flash.py and enter the serial number of your AMC13.

Use options 4 and 5 to program the Spartan and Virtex flash images.

Programming using HCAL xDAQ C++ Tool

The flash programming may be verified against the mcs files (which must be locally available) with !AMC13Tool.exe (C++ HCAL environment only) with the following commands:

 
  • vfh (verify flash header)
  • vbs (verify backup spartan)
  • vs (verify spartan)

Revision 318 Jun 2012 - EricHazen

Line: 1 to 1
 
META TOPICPARENT name="HcalDTC"
All Flash memory programming is done with the Spartan (T2). From T2 firmware v6 onward, the flash memory is organized as follows:
Line: 8 to 8
 
0x200000 Spartan
0x400000 Virtex
Added:
>
>
See AMC13Firmware page for current firmware releases.
 NOTE; earlier versions of the spartan firmware (pre v6) use addres 0x0 for the Spartan. These modules can be reloaded without a cable by writing v6 to 0x0, powercycling to configure from flash, loading the flash according to the table above, and finally powercycling to get the current configuration.

The flash programming may be verified against the mcs files (which must be locally available) with AMC13Tool with the following commands:

Revision 227 May 2012 - JimRohlf

Line: 1 to 1
 
META TOPICPARENT name="HcalDTC"
All Flash memory programming is done with the Spartan (T2). From T2 firmware v6 onward, the flash memory is organized as follows:
Line: 8 to 8
 
0x200000 Spartan
0x400000 Virtex
Added:
>
>
NOTE; earlier versions of the spartan firmware (pre v6) use addres 0x0 for the Spartan. These modules can be reloaded without a cable by writing v6 to 0x0, powercycling to configure from flash, loading the flash according to the table above, and finally powercycling to get the current configuration.
 The flash programming may be verified against the mcs files (which must be locally available) with AMC13Tool with the following commands:
  • vfh (verify flash header)
  • vbs (verify backup spartan)
Line: 19 to 21
 
  • PBS (Program Backup Spartan)
  • PS (Program Spartan)
  • PV (Program Virtex)
Added:
>
>
As of 26may2012, an AMC13Tool exists in python with the same commands.
  The FPGAs (both Spartan and Virtex) may be configured from the flash contents by issuing the software command in AMC13Tool:
  • L (Load)

Revision 126 May 2012 - JimRohlf

Line: 1 to 1
Added:
>
>
META TOPICPARENT name="HcalDTC"
All Flash memory programming is done with the Spartan (T2). From T2 firmware v6 onward, the flash memory is organized as follows:

address  
0x000000 header
0x100000 Spartan "golden" backup
0x200000 Spartan
0x400000 Virtex

The flash programming may be verified against the mcs files (which must be locally available) with AMC13Tool with the following commands:

  • vfh (verify flash header)
  • vbs (verify backup spartan)
  • vs (verify spartan)
  • vv (verify virtex)

The flash may be programmed (mcs files must be locally available) with AMC13Tool with the following commands:

  • PFH (Program Flash Header)
  • PBS (Program Backup Spartan)
  • PS (Program Spartan)
  • PV (Program Virtex)

The FPGAs (both Spartan and Virtex) may be configured from the flash contents by issuing the software command in AMC13Tool:

  • L (Load)
This command writes 0x100 into address 0x0 of the Spartan. The C++ command is:
  • amc13.writeAddress(amc13.spartan,0x0, 0x100)

The firmware versions of the Spartand and Virtex may be read with AMC13Tool with the command:

  • fv
This command reads address 0x0 of the Spartan and 0x0 of the Virtex:
  • amc13.readAddress(amc13.spartan,0x0)
  • amc13.readAddress(amc13.virtex,0x0)
The upper two bytes contain the AMC13 serial number and the lower two bytes contain the firmware version number.

-- JimRohlf - 26 May 2012

 
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