This is big change, but not one that should affect default FireSim targets. There are three major additions here, they can be factored into two different PRs if that's desired.
Adds preliminary multiclock support in channels between the transformed-RTL and endpoints
Restricted to integer / reciprocal clock ratios
Channel generation introspects on endpoint clock-ratio during Simulation Mapping
Adds synthesizable unittest generation framework
Derived from RocketChip's unittest package
Generator (App) lives in src/main/scala/midas
Makefrag lives in src/main/cc/unittest
Reworks the build system for RTL simulation (MIDAS-level)
to share code between unittests, and MIDAS-level simulations
recipes for building VCS and Verilator simulators moved to src/main/cc/rtlsim
This is big change, but not one that should affect default FireSim targets. There are three major additions here, they can be factored into two different PRs if that's desired.
src/main/scala/midas
src/main/cc/unittest
src/main/cc/rtlsim