Home » Mu2e UEM microTCA Firmware Notes

Mu2e UEM microTCA Firmware Notes

(last updated October 12, 2023)


These are notes on migrating the AMC502 from the mu2euem computer (formerly mu2etest) to a new setup at Fermilab.

Computer Setup

Detailed notes on the original setup of both the computer and the microTCA crate can be found here.  The crate itself should remember its setup, so nothing should be required at this point.  The Linux setup is here, but should be updated to the latest version of Scientific Linux, which might change a few things.

It’s very important to initially install the 2016.2 version of Vivado, which can be found at the archive page here.  The web installer seems to have gone away, so you’ll have to download the whole installation package, which can take several hours to download.  Follow the rest of the instructions in the setup page to install cable drivers, etc.  This also includes links to the setup files to point to the Fermilab Vivado license server.  These may or may not still work.  Contact Ryan Rivera if they don’t.

Be sure to install and configure the additional software described at the page.

Vivado Firmware and Support Code

The Vivado firmware has been put in the GitHub repository prebys/Mu2e_UEM_firmware.  As of version 1.2, this repository also contains the code tree, with the C++ programs needed to communicate with the FPGA.

As of this writing, this should only be built with the 2016.2 version of Vivado.  There are three errors associated with simulation files, but they can be safely ignored.

Using the Firmware

Detailed instruction on the use of the firmware can be found in Mu2e-DOC-40514 (requires a Services account and Mu2e access).  Moving the firmware from the mu2euem computer has changed some of the specifics of the document.  In particular:

  • References to the directory “/disk2/data/tmnguyen/mu2e monitor firmware original/firmware New v2” should be replaced with the Mu2e_UEM_firmware repository.
  • The Vivado project name has been changed from “mu2e” to “Mu2e_UEM_firmware”, so all project directories and files have been renamed accordingly.