Added
- Added NoC generation framework called
floogen. Also added documentation forfloogenin thedocsfolder. - Added Chimney Parameters
EnMgrPortandEnSbrPortto properly parametrize Manager resp. Subordinate-only instances of a chimney - Added
XYRouteOptparameter to router to enable/disable routing optimizations when usingXYRouting
Changed
- the exported include folder of the
floopackage is moved tohw/include. - The
LICENSEfile was updated to reflect that the project uses theSolderpad Hardware License Version 2.1for allhwfiles and theApache License 2.0for software related files. - The directory was restructured to accomodate the new
floogenframework. Thesrcwas renamed tohw, which contains only SystemVerilog code. Test modules and testbenches were also moved tohw/testandhw/tbrespectively. The same holds true for wave files, which are now located inhw/tb/wave. - The SV packages
floo_axi_pkgandfloo_narrow_wide_pkgare now generated byfloogen. The configuration files were moved to thefloogen/examplesfolder, and were aligned with the newfloogenconfiguration format, that is written inYAMLinstead ofhjson. - Reworked the python dependencies to use
pyproject.tomlinstead ofrequirements.txt. Furthermore, the python requirement was bumped to3.10due tofloogen(which makes heavy use of the newermatchsyntax) - Removed
xy_id_iports from AXI chimneys in favor of a genericid_iport for bothIdTableandXYRouting - Changed auto-generated package configuration schema. The
headerfield is replaced in favor of aroutingfield that better represents the information needed for routing. XYRoutingnow also supports a routing table similar to theIdTablerouting table. Before the destination was determined based on a couple of bits in the address. This however did not allow for a lot of flexibility and requires a larger addres width.
Fixed
- Fixed missing backpressure in the
NoRoBversion of the reorder buffer, which could lead to overflow of counters
Removed
axi_channel_comparewas removed in favor ofaxi_chan_comparefrom theaxirepository.- Removed flit generation script
flit_gen.pyincluding configuration files, since this is now integrated intofloogen(in conjunction with the--only-pkgflag)