Dependencies

Zeppelin requires the following:

Exact versions required are unknown, but all functionality was successfully demonstrated on the BRG research server. Those looking to replicate should aim for:

  • CMake >= 3.10

  • GCC >= 13 (necessary for using <format>)

  • RISCV Toolchain built 2025 or later (we built in Jan. 2025)

  • Verilator >= 5.032

Note that the build system is currently only intended to work on Linux systems. In particular, MacOS doesn’t natively support ELF utilities (i.e. elf.h), and has particular command-line flags with CMake that don’t work with the RISCV toolchain. Further work could be done for this use case, but isn’t needed at this time.

Verilator Version

Recent Verilator releases disallow function calls into tasks (see the FUNCTIMECTL warning). The init_mem flow in the simulator wrappers triggers this on un-waived builds; the project waiver file (verilator_waivers.vlt) suppresses it, but the underlying call shape should eventually be cleaned up.