Skip to content

calyxir/calyx

Folders and files

NameName
Last commit message
Last commit date
Sep 14, 2022
Feb 27, 2025
Jul 3, 2024
Apr 16, 2024
Mar 3, 2025
Mar 3, 2025
Feb 27, 2025
Mar 18, 2025
Mar 19, 2025
Mar 16, 2025
Sep 29, 2024
Feb 27, 2025
Feb 27, 2025
Mar 18, 2025
Jan 24, 2025
Mar 3, 2025
Mar 18, 2025
Mar 16, 2025
Feb 3, 2025
Feb 27, 2025
Feb 19, 2021
Jan 25, 2021
Mar 13, 2020
Feb 14, 2025
Mar 23, 2020
Feb 29, 2024
Feb 26, 2025
Mar 3, 2025
Sep 3, 2024
Oct 8, 2019
May 31, 2024
Nov 6, 2024
Feb 14, 2025
Mar 3, 2025
Jul 3, 2024

Repository files navigation

Built with Depot

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.

Recommended

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.