kuznia-rdzeni / coreblocks

RISC-V out-of-order core for education and research purposes
https://kuznia-rdzeni.github.io/coreblocks/
BSD 3-Clause "New" or "Revised" License
35 stars 13 forks source link

Improve wakeup-select #290

Open lekcyjna123 opened 1 year ago

lekcyjna123 commented 1 year ago

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 make it more intelligent.

tilk commented 1 year ago

Could you elaborate?

lekcyjna123 commented 1 year ago

Actually we take the last ready instruction in terms of index in RS. Instead of that we can take the oldest instruction which is ready, so that we can unblock possibly many other instruction. We can also implement an other heuristic that we first select instruction to which there is the most number of dependencies in other instructions.