calyx
calyx copied to clipboard
Intermediate Language (IL) for Hardware Accelerator Generators
Tracker for changes to the Calyx website: - [ ] New section for "papers" and "papers that use Calyx" (see [egg](https://egraphs-good.github.io/) page for example) - [ ] Easy to generate...
Currently, the tests in [`axi-combined-calyx.py`](https://github.com/calyxir/calyx/blob/py-axi-gen-main/yxi/axi-calyx/cocotb/axi-combined-tests.py) use hardcoded memory names and parameters for a simple `vec_add` kernel. To generalize the infrastructure for creating new tests for it would make sense to...
At the moment, we only report the first error found in a file. This is the default way that error handling works in Rust because of how `?` works. For...
The component inlining pass has a bunch of limitations: - Cannot inline instances that are invoked multiple times with different arguments - Cannot inline `invoke`-`with` clauses These come from the...
The AXI generator currently expects programs to use `ref` to denote memories expected to interface with the XRT shell via AXI. the `yxi` backend currently only [looks for](https://github.com/calyxir/calyx/blob/main/calyx-backend/src/yxi.rs#L51) [`@external` memories](https://github.com/calyxir/calyx/blob/main/calyx-ir/src/utils.rs#L18)....
We've had ongoing problems with really understanding how to handle `@external` cells and their ports. For example, #1034 tracks a slew of issues where we either keep attempting to add...
There are a bunch of breaking changes in the next major release so creating this tracker. Specifically, @calebmkim and I should keep an eye on this because we'll need to...
I think we should add the ability to specify the value of an attribute using a parameter. The classic example of this is a multiplier with a parameter-defined latency: ```...
To slightly expand on this: > Some of the grouping we were initially trying to have, a blocking group, a servicing group, an assert and deassert group, had to be...
After #1894 has landed, I'd like to take locks and revise the [eDSL docs](https://docs.calyxir.org/builder/ref.html?highlight=builder#builder-library-reference). Here is a non-exhaustive list: - [ ] I'm finding the introductory example a little confusing....