Chipyard 1.4.0 Release
Major features include expanded support for multi-clock designs, a FPGA prototyping and bringup flow, and new optimizations in FireSim 1.11.
A more detailed account of everything included is included in the dev to master PR for this release: #599
Added
- OpenSBI Support (#633)
- Support for Diplomacy-based clocking (#614, #682)
- Support for Diplomacy-based IOBinders (#699)
- Sodor core integration (#648)
- Simple Divider-Only PLL for Multiclock RTL Simulation (#676)
- Enable parallel Hammer simulations (#600)
- OpenRoad nangate45 Hammer backend (#608)
- Add support for "LBWIF" backing memory through serialized TileLink (#673)
- Add variable to control FIRRTL logging verbosity (#627)
- Add RANDOM_SEED variable to set random init for VCS and Verilator simulations (#629)
- Fast LoadMem support (#635)
- Multithreaded Verilator (#654)
- Support for custom Verilator optimization flags (#728)
- Add config-fragment to use broadcast manager instead of L2 for coherence (#721)
- Added optional ignore QEMU flag to
build-toolchains.sh(#709) - Split
JAVA_ARGSintoJAVA_OPTSandSBT_OPTS(#719) - Experimental support for SBT thin client. Enable with
export ENABLE_SBT_THIN_CLIENT=1(sbt/sbt#5620) (#719) - Helper
maketargets to launch SBT console (sbt) and shutdown/start thin server (<start/shutdown>-sbt-server) (#719) - Allow users to override
CCandCXXforbuild-toolchains.sh(#739) - Support VCU118/Arty local FPGA prototypes through
fpga-shells(#747) - A 16-core LargeBOOM configuration has been added to FireChip to highlight the resource-optimizing platform configurations added to FireSim in firesim/firesim#636 (#756)
Changed
- Bump Chisel to 3.4.1.x (#742, #719, #751)
- Bump RocketChip to a7b016e (#742, #719)
- Bump FireSim to 1.11
- Bump Gemmini to v0.5
- Bump to SBT 1.4.4 (#719)
- Split IOBinders into IOBinders and HarnessBinders | punch out clocks to harness for simwidgets and bridges (#670, #674)
- Have FireSim build recipes use Chipyard configs rather than FireChip configs (#695)
- FireMarshal boot default to OpenSBI rather than BBL (#633)
- Override default baud rate for FireChip (#625)
- DTM only supports HTIF in DMI mode (#672)
- Unify HTIF implementation between Chipyard and Firesim (#683)
- Renamed Ariane to CVA6 (#710)
build.sbtrefactoring/fixes for RC/Chisel/Firrtl bump (#719)- Use
; x; y; z;syntax to run multiple SBT commands (#719) - CI Improvements: Cleanup
check-commitprintout. Don't transfer.gitfolders. (#750)
Fixed
- Multi-SHA3 configs (#597)
- Allow dramsim_ini folder to be set at the command line (#598)
- Emit HTIF Node in device tree (#607)
- Fixes for AXI4 MMIO and FBus ports (#618)
- Only punch realistic subset of DebugIO through chiptop | default to JTAG+Serial (#664)
- IceNet bug fixes (#720)
- smartelf2hex.sh bug fixes (#677, #693)
- env.sh zsh compatibility (#705)
- build-toolchains.sh bug fixes (#745 #739)
- Bump Dromajo to work with older version of glibc (#709)