Kelvin HW design

Clone this repo:
  1. 152a99c [ChAI] Initial commit by Alex Van Damme · 3 weeks ago master
  2. f4ca258 ClockGate wraps lowrisc's prim_clock_gating by Alex Van Damme · 7 days ago
  3. 06ce364 Bundle Kelvin's memory interface by Alex Van Damme · 8 days ago
  4. eac6f0b Add antlr4-runtime (chiseltest runtime dep) by Alex Van Damme · 8 days ago
  5. 1344232 More Kelvin clean ups. by Derek Chow · 4 weeks ago

Kelvin

Kelvin is a RISC-V32IM core with a custom instruction set.

Kelvin block diagram

More information on the design can be found in the overview.

Building

Kelvin uses bazel as it's build system. The Verilated simulator for Kelvin can be generated using:

bazel build //tests/verilator_sim:core_sim

The verilog source for the Kelvin core can be generated using:

bazel build //hdl/chisel:core_cc_library_emit_verilog

Verilog source for the Matcha SoC can be generated using:

bazel clean --expunge  # To generate the ToT sha
bazel build //hdl/chisel:matcha_kelvin_verilog