Skip to content
CAI
Software that uses CAICheck a score

LoveLonelyTime/Bergamot

58.4

Adequate · 20 September 2026

8.5k

lines of production code

Scala

primary language

1

measurement over time

CAI band scale
CAI lens gauges

What this system is

This system is a hardware design project for the Bergamot RISC-V processor core, implemented using the Chisel hardware construction language. It provides the complete processor pipeline, including execution units, caches, and memory interfaces, along with a Verilator-based simulation environment for testing. The codebase also includes specific test suites for floating-point arithmetic modules and manages its build configuration via Mill.

Features

Add Bergamot Verilator testbench simulator

Introduces a new Verilator-based simulation environment for the Bergamot RISC-V core. This includes a Makefile for building the testbench, a C++ main program (sim\_main.cpp) that loads RISC-V binaries and device trees into virtual memory, a boot assembly script (boot.S), and a device tree source (sim\_dt.dts) defining a basic RISC-V virtio platform with UART and CLINT. The simulator supports command-line options for specifying binary files, device trees, trace generation, and execution timeouts.

simulator · high confidence

Initial implementation of the Bergamot RISC-V core

This change introduces the complete Bergamot RISC-V processor core, including the instruction decode, execution (ALU, branch, memory, floating-point), and retirement pipelines. It adds the on-chip interconnect components, specifically the Simple Memory Access (SMA) and AXI4-Lite bus interfaces, along with the AXI master wrapper that converts internal SMA transactions to external AXI requests. The core also includes set-associative L1/L2 cache implementations with write-through policies, a data broadcast mechanism for register forwarding, and a round-robin broadcaster for result commit.

bergamot · high confidence

Removals

Removal of GCD module implementations

The \DecoupledGcd\ and \GCD\ modules, which previously computed the Greatest Common Divisor using a subtraction method, have been removed from the codebase. This eliminates the hardware logic for handling GCD calculations via both decoupled interfaces and standard IO bundles.

src/main · high confidence

Test coverage

Added tests for floating-point conversion and arithmetic modules; Removed GCD test suite.

Dependencies

Migrate build system from Mill 0.11 to 1.1 and Chisel 5 to 7

The project has switched its build tool configuration from Mill 0.11.5 to 1.1.5 and upgraded the Chisel hardware construction library from version 5.1.0 to 7.7.0. This involves replacing the legacy \build.sc\ script with a new \build.mill\ definition, updating the Scala version to 2.13.18, and adjusting dependency declarations to use the new Mill API. Users must update their local Mill installation and ensure compatibility with the newer Chisel and Scala versions to build and test the processor design.

(repo-wide) · high confidence

Removed SBT build configuration

The SBT build definition (build.sbt) has been removed from the project. This eliminates the previous Scala 2.13.12 build setup, including dependencies for Chisel 5.1.0 and chiseltest 5.0.2, as well as associated compiler plugins and options.

(dependencies) · high confidence

Written by watchdog.canine.dev from the codebase's own history, inside the signed delivery this page is composed from.

How this codebase got here

Baseline

  • First survey — no prior run to compare against. CAI 58.

Lenses

  • Code Health 100
  • Architecture 95
  • Maturity 77
  • Readiness 44
  • Security 57

Changes since last survey

  • 86 commits — 64 feature/other, 22 fixes

By area

  • src/main — 47 commits
  • (root) — 15 commits
  • (repo) — 7 commits
  • .github/workflows — 5 commits
  • bergamot/src — 4 commits
  • .devcontainer/Dockerfile — 2 commits
  • .devcontainer/devcontainer.json — 1 commit
  • doc/arch.png — 1 commit
  • drivers/sim_dt.dts — 1 commit
  • simulator/Makefile — 1 commit
  • simulator/sim_main.cpp — 1 commit
  • src/test — 1 commit

Notable commits

  • fix: fix execute queue
  • fix: fix AXI bugs
  • fix: fix FPMulAdd
  • fix: fix TLB bugs
  • fix: fix asid bugs
  • fix: fix bugs
  • fix: fix bugs
  • fix: fix bugs
  • fix: fix bugs
  • fix: fix bugs
  • fix: fix bugs
  • fix: fix bugs, test RV32I
  • fix: fix cache
  • fix: fix cache bugs
  • fix: fix cache flush
  • fix: fix exception
  • fix: fix recovery
  • fix: fix vm
  • fix: fix: main.yml
  • fix: fix: main.yml
  • …and 66 more

Written by watchdog.canine.dev from the codebase's own history, inside the signed delivery this page is composed from.

Survey your own repository

LoveLonelyTime/Bergamot was measured the same way every project in this corpus was: the same rubric, at a pinned commit, with the result published in full. Point a surveyor at a repository you know and see whether you agree with it.

About this page

  • The score is its most recent published measurement, taken on 20 September 2026 at a pinned commit. It is not a live figure and does not change until the project is measured again.
  • Measured at commit 5f293b7b24873cd891cf2759b77a33134b1aeade — the exact code this score is about.
  • Scored under rubric-2026.09.15 — the same rubric and the same method as every other entry in this index.
  • Measured by watchdog.canine.dev using codehealth-analyzer preprod-b51f968c9b10.