calyxir / calyx

Intermediate Language (IL) for Hardware Accelerator Generators
https://calyxir.org
MIT License
501 stars 51 forks source link

Queues: flag day #2191

Open anshumanmohan opened 4 months ago

anshumanmohan commented 4 months ago

We have been zooming along and making quite a few improvements to our queues, and we have decided on a small clutch of TODOs for the magical day when things settle down. This is a tracker for all that stuff. It will probably need to grow further; feel free to edit this topmatter directly to add to the list.

ethanuppal commented 4 months ago

The idea with testing harnesses is that you don't need to have any files. You can call the calyx component as a function, so you can generate a random large array, enqueue those values, and dequeue them — all from code!

csziklai commented 4 months ago

I will do the documentation for round robin and strict PIFOs.

polybeandip commented 4 months ago

As part flag day, do we want to remove peek from the queue interface and make cmd a 1-bit signal?

anshumanmohan commented 4 months ago

Good question, I’ve kinda been wanting to. The reason to keep it is that we may find an algorithm that needs it. The reason to lose it is that we haven’t yet found such an algorithm. Let’s make a call about it on Monday!

KabirSamsi commented 4 months ago

As of 7/29:

anshumanmohan commented 3 months ago

I've checked the documentation box manually; let's just declare the docs good!