calyxir/calyx

Intermediate Language (IL) for Hardware Accelerator Generators

Rust

614

3,171 commits

updated Oct 13, 2026

See the code

README

Built with Depot

A Compiler Infrastructure for Accelerator Generators

Calyx is an intermediate language and infrastructure for building compilers that generate custom hardware accelerators.

See the Calyx website, language documentation and the documentation for the source code for more information. Calyx's design is based on our ASPLOS '21 paper.

Installation

Quick

If you want to try out the compiler, install the crate using cargo:

cargo install calyx

This will install the calyx binary, which can optimize and compile Calyx programs to Verilog or CIRCT.

Follow the getting started instructions.

Organization

This repository contains the source code for the following:

  • calyx-utils: Utilities for the Calyx compiler
  • calyx-frontend: Parser and frontend AST for the Calyx language.
  • calyx-ir: The Calyx intermediate language.
  • calyx-opt: Optimizations for the Calyx intermediate language.
  • calyx: The Calyx compiler driver.

You can also use the Calyx compiler as a library and implement your own optimizations. To do this, check out the example provided by the calyx-opt crate.

compiler
fpga-programming
high-level-synthesis
intermediate-language
open-source-hardware

Project health

crates.io

Latest release

0.7.1 · Feb 29, 2024

Releases this year

0

Significant stargazers

Simon Brugman

334 followers · starred Feb 2024

Youngsuk Kim

68 followers · starred Dec 2020

Robin Voetter

280 followers · starred Feb 2024

Michael J Ward

18 followers · starred Feb 2024

calyxir/calyx

Intermediate Language (IL) for Hardware Accelerator Generators

Rust

614

3,171 commits

updated Oct 13, 2026

See the code

README

Built with Depot

A Compiler Infrastructure for Accelerator Generators

Calyx is an intermediate language and infrastructure for building compilers that generate custom hardware accelerators.

See the Calyx website, language documentation and the documentation for the source code for more information. Calyx's design is based on our ASPLOS '21 paper.

Installation

Quick

If you want to try out the compiler, install the crate using cargo:

cargo install calyx

This will install the calyx binary, which can optimize and compile Calyx programs to Verilog or CIRCT.

Follow the getting started instructions.

Organization

This repository contains the source code for the following:

  • calyx-utils: Utilities for the Calyx compiler
  • calyx-frontend: Parser and frontend AST for the Calyx language.
  • calyx-ir: The Calyx intermediate language.
  • calyx-opt: Optimizations for the Calyx intermediate language.
  • calyx: The Calyx compiler driver.

You can also use the Calyx compiler as a library and implement your own optimizations. To do this, check out the example provided by the calyx-opt crate.

compiler
fpga-programming
high-level-synthesis
intermediate-language
open-source-hardware

Project health

crates.io

Latest release

0.7.1 · Feb 29, 2024

Releases this year

0

Significant stargazers

Simon Brugman

334 followers · starred Feb 2024

Youngsuk Kim

68 followers · starred Dec 2020

Robin Voetter

280 followers · starred Feb 2024

Michael J Ward

18 followers · starred Feb 2024