commit | df9480e9457b450bf701b3763b826b98fdeb1bf5 | [log] [tgz] |
---|---|---|
author | Cindy Liu <hcindyl@google.com> | Mon Nov 13 18:37:34 2023 -0800 |
committer | Cindy Liu <hcindyl@google.com> | Wed Nov 15 12:42:32 2023 -0800 |
tree | b05f2cc6df84f0fc122e0ded7eb2dbf29ca6215f | |
parent | cd235134101d635a1b669276d8dfa2bf5642cad4 [diff] |
Support kelvin HW to be built in hw/matcha * Refactor the dependency so hw/matcha only fetches chisel dependency * Build fusesoc kelvin.core to define the IP based on the verilog code * Sync ClockGate.v based on the findings in hw/matcha (and remove the copy there to avoid duplication) Change-Id: I5bcee3bbacd6dbeca800b169cb1a3a0b7df311e3
Kelvin is a RISC-V32IM core with a custom instruction set.
More information on the design can be found in the overview.
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