Abstract

Coordinating firmware development among many international collaborators is becoming a very widespread problem in high-energy physics. Guaranteeing firmware synthesis reproducibility and assuring traceability of binary files is paramount. We devised Hog (HDL on git), a set of Tcl scripts (no external tool or library is needed) that tackles these issues and is deeply integrated with FPGA IDEs (Xilinx Vivado Design Suite/ISE PlanAhead, Intel Quartus Prime). Hog assures absolute control of HDL source files, constraint files, Vivado/Quartus settings and guarantees traceability by automatically embedding the git commit SHA and a numeric version into the binary file which is automatically renamed to reflect its version. Hog allows the IDE GUI to be used normally, so developers can get quickly up to speed: clone the repository, run the Hog script, and work in your IDE. Hog works on Windows and Linux, supports IPbus, Sigasi and provides pre-made yml files to set up a working CI on Gitlab with no additional effort.

Full Text
Published version (Free)

Talk to us

Join us for a 30 min session where you can share your feedback and ask us any queries you have

Schedule a call