coreblocks
coreblocks copied to clipboard
Project cleanup
There is a need to move stuff around to make things more intuitive for newcomers (and others). Some problems in directory organization are:
- The
coreblocks/params
directory is a mess. It was supposed to contain things related to parametrization (at the beginning, mostlyGenParams
). Now it also contains:-
dependencies
- the dependency manager, -
keys
- the dependency keys (which we agreed to have in one place), -
isa
andinstr
- RISC-V architecture related things, -
optypes
- our internal encoding of instructions, which is entangled with ISA, decoding and FUs.
-
- The
structs_common
directory somehow contains a CSR unit. The directory was meant to contain implementation of data structures, i.e. things that are shared between components. - The
coreblocks/transactions/lib
file is one big ball of stuff, it should finally be split. - The
stages
directory is weird, it contains:- The announcement module, in a file which is somehow named
backend
, - The retirement stage,
- Abstractions related to functional units/blocks.
- The announcement module, in a file which is somehow named
There are potentially other issues I can't remember right now, please write them down in comments.