coreblocks icon indicating copy to clipboard operation
coreblocks copied to clipboard

RISC-V out-of-order core for education and research purposes

Results 103 coreblocks issues
Sort by recently updated
recently updated
newest added

Having `verify_branch` in precommit cause a big delay in handling branches, because we wait till retirement to restore instruction fetching. Please optimise this.

microarch
optimization

Today I am trying to introduce not backward compatible changes in layouts on main pipeline (change register id to tuple with register id and register type). Changes in production code...

tests
refactor

This issue involves extending the processor so that it can process more than one instruction per cycle. As functional units should naturally scale, the main problem is extending the frontend...

enhancement
microarch

We would like to use pipelining as much as possible, so it would be nice to use #410 and check if we can optimise some modules (e.g. FU's) to be...

optimization

In one of open source cores FreeRF is implemented as array of bits. It would be good to implement it in coreblocks and compare costs.

good first issue
optimization

As for now ROB is implemented using array of registers. It would be good to use memory, to reduce ROB cost.

good first issue
optimization

As for now our wakeup-select logic is very simply (take the last ready instruction - last in sense of index of RS), so in future it would be great to...

enhancement
nice to have
optimization

Compare ideas for instruction decoding: - lookup table to assign OpType - generating tree with "if" to choose maximum subpart which allow to assign proper OpType

As we have seen in [comment](https://github.com/kuznia-rdzeni/coreblocks/pull/379#issuecomment-1574332711). Decoder can have a great impact on whole core results. On the one side it has a lot of combinational paths which can lower...

good first issue
nice to have
refactor
optimization

It may be possible to allow condition to be used outside transactions/methods. One way would be to add a dummy method called in each transaction for ensuring mutual exclusivity.