new toolchain for kelvin_v2

To test the toolchain_config bazel build
--config=cc_kelvin_v2_toolchain_config //examples:rvv_add_intrinsic

Bypass-Presubmit-Reason: No presubmit configured

Change-Id: I1ba978aa700fc45aa527a08b49709fa173f1aeb8
22 files changed
tree: dc2316761f5717cb278ba20ae4f126d1d2f04d7e
  1. doc/
  2. examples/
  3. external/
  4. hdl/
  5. lib/
  6. rules/
  7. tests/
  8. third_party/
  9. toolchain/
  10. utils/
  11. .bazelrc
  12. .bazelversion
  13. .gitignore
  14. CONTRIBUTING.md
  15. LICENSE
  16. PREUPLOAD.cfg
  17. README.md
  18. WORKSPACE
README.md

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/src/kelvin: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