calyx icon indicating copy to clipboard operation
calyx copied to clipboard

Intermediate Language (IL) for Hardware Accelerator Generators

Results 281 calyx issues
Sort by recently updated
recently updated
newest added

We call it `out_remainder`, but instead return the output of the modulo.

Status: Available
Comp: Library

I was debugging #329 and wrote down a simple script for differential testing. Then, I slowly reduced the program to find a minimal program. A few problems that need to...

Status: Needs Triage

With the dependency on the python frontend library for the systolic and ntt frontends and the requirements for `fud`, we have too many commands we need to run to get...

Status: Available

Control signals in Calyx programs often have high fan outs. For example, in a `par` statement with `n` children, the `go` signal to the corresponding group to implement the control...

C: Calyx
S: Available

A 32 bit adder can perform 16-bit adds. A 16-bit register can shore 8-bits of information. Share ‘em. obviously needs some attribute-based knowledge of the primitives.

Comp: Calyx
Status: Needs Triage

There are three possible optimizations that can benefit code generated from Dahlia: 1. Constant folding ``` let x = 5; // X is never written to x + x; 10...

Type: Pass
Status: Needs Triage

Currently, the systolic array generator naively generates a `seq` of `par` to enable the compute and data movement groups. However, this means that for the same systolic array, as the...

Status: Available
Comp: Systolic Array

Thought it would be useful to open a draft PR to allow time to get feedback while classes are starting and I'm less available. This is nearly done. Pull request...

Add a pass that eliminates unused ports of a component. In doing this, we also get rid of any assignments to those ports and allow the various dead-cell elimination passes...

S: Available
good first issue
C: calyx-opt

When I try to compile the following program (generated by circt and amc): ``` import "primitives/core.futil"; import "primitives/binary_operators.futil"; extern "amc.v" { primitive mem_0_prim[WIDTH, PORT0_SIZE, PORT0_IDX_SIZE, PORT1_SIZE, PORT1_IDX_SIZE](@clk clk: 1, port0_addr0:...

Type: Bug
Comp: Calyx