├── .github └── workflows │ └── test.yml ├── .gitignore ├── LICENSE ├── README.md ├── VERSION ├── bergamot ├── src │ └── bergamot │ │ ├── bus │ │ ├── AXI.scala │ │ ├── AXIMaster.scala │ │ └── SMA.scala │ │ ├── cache │ │ ├── Cache.scala │ │ ├── CacheEntry.scala │ │ └── Flusher.scala │ │ ├── core │ │ ├── Core.scala │ │ ├── DataType.scala │ │ ├── broadcast │ │ │ ├── BroadcastEntry.scala │ │ │ └── Broadcaster.scala │ │ ├── debug │ │ │ └── Debug.scala │ │ ├── decode │ │ │ ├── Decode.scala │ │ │ └── DecodeEntry.scala │ │ ├── execute │ │ │ ├── ALU.scala │ │ │ ├── ALUEntry.scala │ │ │ ├── Branch.scala │ │ │ ├── BranchEntry.scala │ │ │ ├── ExecuteEntry.scala │ │ │ ├── ExecuteQueue.scala │ │ │ ├── FPU.scala │ │ │ ├── FPUEntry.scala │ │ │ ├── Memory.scala │ │ │ └── MemoryEntry.scala │ │ ├── fetch │ │ │ ├── BranchPredictor.scala │ │ │ ├── BranchPredictorEntry.scala │ │ │ ├── Fetch.scala │ │ │ └── FetchEntry.scala │ │ ├── fpu │ │ │ ├── FPAdd.scala │ │ │ ├── FPBox.scala │ │ │ ├── FPComp.scala │ │ │ ├── FPConv.scala │ │ │ ├── FPDiv.scala │ │ │ ├── FPEntry.scala │ │ │ ├── FPMul.scala │ │ │ └── FPSqrt.scala │ │ ├── record │ │ │ ├── CSRs.scala │ │ │ ├── CSRsEntry.scala │ │ │ ├── ROB.scala │ │ │ ├── ROBEntry.scala │ │ │ ├── RegisterMappingTable.scala │ │ │ ├── RegisterMappingTableEntry.scala │ │ │ ├── StoreQueue.scala │ │ │ ├── StoreQueueEntry.scala │ │ │ ├── TLB.scala │ │ │ └── TLBEntry.scala │ │ └── retire │ │ │ └── InstructionRetire.scala │ │ ├── export │ │ ├── CoreExporter.scala │ │ └── VerilatorTestCore.scala │ │ ├── interconnect │ │ ├── AXIInterconnect.scala │ │ ├── CacheInterconnect.scala │ │ └── SMAInterconnection.scala │ │ ├── peripheral │ │ ├── MachineTimer.scala │ │ ├── MemoryHole.scala │ │ ├── RAM.scala │ │ ├── ROM.scala │ │ ├── VirtualRAM.scala │ │ ├── VirtualUART.scala │ │ └── VirtualWriteHost.scala │ │ └── utils │ │ ├── ChiselUtils.scala │ │ ├── CoreUtils.scala │ │ └── ReadWriteSRAM.scala └── test │ └── src │ └── bergamot │ └── test │ └── FPTest.scala ├── default.nix ├── doc ├── arch.png └── bergamot-social-card.png ├── firrtl.nix ├── riscv-tests ├── LICENSE └── isa │ └── Makefile └── simulator ├── Makefile ├── boot.S ├── sim_dt.dts └── sim_main.cpp /.github/workflows/test.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LoveLonelyTime/Bergamot/HEAD/.github/workflows/test.yml -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LoveLonelyTime/Bergamot/HEAD/.gitignore -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LoveLonelyTime/Bergamot/HEAD/LICENSE -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LoveLonelyTime/Bergamot/HEAD/README.md -------------------------------------------------------------------------------- /VERSION: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LoveLonelyTime/Bergamot/HEAD/VERSION -------------------------------------------------------------------------------- /bergamot/src/bergamot/bus/AXI.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LoveLonelyTime/Bergamot/HEAD/bergamot/src/bergamot/bus/AXI.scala -------------------------------------------------------------------------------- /bergamot/src/bergamot/bus/AXIMaster.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LoveLonelyTime/Bergamot/HEAD/bergamot/src/bergamot/bus/AXIMaster.scala -------------------------------------------------------------------------------- /bergamot/src/bergamot/bus/SMA.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LoveLonelyTime/Bergamot/HEAD/bergamot/src/bergamot/bus/SMA.scala -------------------------------------------------------------------------------- /bergamot/src/bergamot/cache/Cache.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LoveLonelyTime/Bergamot/HEAD/bergamot/src/bergamot/cache/Cache.scala -------------------------------------------------------------------------------- /bergamot/src/bergamot/cache/CacheEntry.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LoveLonelyTime/Bergamot/HEAD/bergamot/src/bergamot/cache/CacheEntry.scala -------------------------------------------------------------------------------- /bergamot/src/bergamot/cache/Flusher.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LoveLonelyTime/Bergamot/HEAD/bergamot/src/bergamot/cache/Flusher.scala -------------------------------------------------------------------------------- /bergamot/src/bergamot/core/Core.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LoveLonelyTime/Bergamot/HEAD/bergamot/src/bergamot/core/Core.scala -------------------------------------------------------------------------------- /bergamot/src/bergamot/core/DataType.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LoveLonelyTime/Bergamot/HEAD/bergamot/src/bergamot/core/DataType.scala -------------------------------------------------------------------------------- /bergamot/src/bergamot/core/broadcast/BroadcastEntry.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LoveLonelyTime/Bergamot/HEAD/bergamot/src/bergamot/core/broadcast/BroadcastEntry.scala -------------------------------------------------------------------------------- /bergamot/src/bergamot/core/broadcast/Broadcaster.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LoveLonelyTime/Bergamot/HEAD/bergamot/src/bergamot/core/broadcast/Broadcaster.scala -------------------------------------------------------------------------------- /bergamot/src/bergamot/core/debug/Debug.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LoveLonelyTime/Bergamot/HEAD/bergamot/src/bergamot/core/debug/Debug.scala -------------------------------------------------------------------------------- /bergamot/src/bergamot/core/decode/Decode.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LoveLonelyTime/Bergamot/HEAD/bergamot/src/bergamot/core/decode/Decode.scala -------------------------------------------------------------------------------- /bergamot/src/bergamot/core/decode/DecodeEntry.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LoveLonelyTime/Bergamot/HEAD/bergamot/src/bergamot/core/decode/DecodeEntry.scala -------------------------------------------------------------------------------- /bergamot/src/bergamot/core/execute/ALU.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LoveLonelyTime/Bergamot/HEAD/bergamot/src/bergamot/core/execute/ALU.scala -------------------------------------------------------------------------------- /bergamot/src/bergamot/core/execute/ALUEntry.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LoveLonelyTime/Bergamot/HEAD/bergamot/src/bergamot/core/execute/ALUEntry.scala -------------------------------------------------------------------------------- /bergamot/src/bergamot/core/execute/Branch.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LoveLonelyTime/Bergamot/HEAD/bergamot/src/bergamot/core/execute/Branch.scala -------------------------------------------------------------------------------- /bergamot/src/bergamot/core/execute/BranchEntry.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LoveLonelyTime/Bergamot/HEAD/bergamot/src/bergamot/core/execute/BranchEntry.scala -------------------------------------------------------------------------------- /bergamot/src/bergamot/core/execute/ExecuteEntry.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LoveLonelyTime/Bergamot/HEAD/bergamot/src/bergamot/core/execute/ExecuteEntry.scala -------------------------------------------------------------------------------- /bergamot/src/bergamot/core/execute/ExecuteQueue.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LoveLonelyTime/Bergamot/HEAD/bergamot/src/bergamot/core/execute/ExecuteQueue.scala -------------------------------------------------------------------------------- /bergamot/src/bergamot/core/execute/FPU.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LoveLonelyTime/Bergamot/HEAD/bergamot/src/bergamot/core/execute/FPU.scala -------------------------------------------------------------------------------- /bergamot/src/bergamot/core/execute/FPUEntry.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LoveLonelyTime/Bergamot/HEAD/bergamot/src/bergamot/core/execute/FPUEntry.scala -------------------------------------------------------------------------------- /bergamot/src/bergamot/core/execute/Memory.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LoveLonelyTime/Bergamot/HEAD/bergamot/src/bergamot/core/execute/Memory.scala -------------------------------------------------------------------------------- /bergamot/src/bergamot/core/execute/MemoryEntry.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LoveLonelyTime/Bergamot/HEAD/bergamot/src/bergamot/core/execute/MemoryEntry.scala -------------------------------------------------------------------------------- /bergamot/src/bergamot/core/fetch/BranchPredictor.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LoveLonelyTime/Bergamot/HEAD/bergamot/src/bergamot/core/fetch/BranchPredictor.scala -------------------------------------------------------------------------------- /bergamot/src/bergamot/core/fetch/BranchPredictorEntry.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LoveLonelyTime/Bergamot/HEAD/bergamot/src/bergamot/core/fetch/BranchPredictorEntry.scala -------------------------------------------------------------------------------- /bergamot/src/bergamot/core/fetch/Fetch.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LoveLonelyTime/Bergamot/HEAD/bergamot/src/bergamot/core/fetch/Fetch.scala -------------------------------------------------------------------------------- /bergamot/src/bergamot/core/fetch/FetchEntry.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LoveLonelyTime/Bergamot/HEAD/bergamot/src/bergamot/core/fetch/FetchEntry.scala -------------------------------------------------------------------------------- /bergamot/src/bergamot/core/fpu/FPAdd.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LoveLonelyTime/Bergamot/HEAD/bergamot/src/bergamot/core/fpu/FPAdd.scala -------------------------------------------------------------------------------- /bergamot/src/bergamot/core/fpu/FPBox.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LoveLonelyTime/Bergamot/HEAD/bergamot/src/bergamot/core/fpu/FPBox.scala -------------------------------------------------------------------------------- /bergamot/src/bergamot/core/fpu/FPComp.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LoveLonelyTime/Bergamot/HEAD/bergamot/src/bergamot/core/fpu/FPComp.scala -------------------------------------------------------------------------------- /bergamot/src/bergamot/core/fpu/FPConv.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LoveLonelyTime/Bergamot/HEAD/bergamot/src/bergamot/core/fpu/FPConv.scala -------------------------------------------------------------------------------- /bergamot/src/bergamot/core/fpu/FPDiv.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LoveLonelyTime/Bergamot/HEAD/bergamot/src/bergamot/core/fpu/FPDiv.scala -------------------------------------------------------------------------------- /bergamot/src/bergamot/core/fpu/FPEntry.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LoveLonelyTime/Bergamot/HEAD/bergamot/src/bergamot/core/fpu/FPEntry.scala -------------------------------------------------------------------------------- /bergamot/src/bergamot/core/fpu/FPMul.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LoveLonelyTime/Bergamot/HEAD/bergamot/src/bergamot/core/fpu/FPMul.scala -------------------------------------------------------------------------------- /bergamot/src/bergamot/core/fpu/FPSqrt.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LoveLonelyTime/Bergamot/HEAD/bergamot/src/bergamot/core/fpu/FPSqrt.scala -------------------------------------------------------------------------------- /bergamot/src/bergamot/core/record/CSRs.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LoveLonelyTime/Bergamot/HEAD/bergamot/src/bergamot/core/record/CSRs.scala -------------------------------------------------------------------------------- /bergamot/src/bergamot/core/record/CSRsEntry.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LoveLonelyTime/Bergamot/HEAD/bergamot/src/bergamot/core/record/CSRsEntry.scala -------------------------------------------------------------------------------- /bergamot/src/bergamot/core/record/ROB.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LoveLonelyTime/Bergamot/HEAD/bergamot/src/bergamot/core/record/ROB.scala -------------------------------------------------------------------------------- /bergamot/src/bergamot/core/record/ROBEntry.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LoveLonelyTime/Bergamot/HEAD/bergamot/src/bergamot/core/record/ROBEntry.scala -------------------------------------------------------------------------------- /bergamot/src/bergamot/core/record/RegisterMappingTable.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LoveLonelyTime/Bergamot/HEAD/bergamot/src/bergamot/core/record/RegisterMappingTable.scala -------------------------------------------------------------------------------- /bergamot/src/bergamot/core/record/RegisterMappingTableEntry.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LoveLonelyTime/Bergamot/HEAD/bergamot/src/bergamot/core/record/RegisterMappingTableEntry.scala -------------------------------------------------------------------------------- /bergamot/src/bergamot/core/record/StoreQueue.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LoveLonelyTime/Bergamot/HEAD/bergamot/src/bergamot/core/record/StoreQueue.scala -------------------------------------------------------------------------------- /bergamot/src/bergamot/core/record/StoreQueueEntry.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LoveLonelyTime/Bergamot/HEAD/bergamot/src/bergamot/core/record/StoreQueueEntry.scala -------------------------------------------------------------------------------- /bergamot/src/bergamot/core/record/TLB.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LoveLonelyTime/Bergamot/HEAD/bergamot/src/bergamot/core/record/TLB.scala -------------------------------------------------------------------------------- /bergamot/src/bergamot/core/record/TLBEntry.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LoveLonelyTime/Bergamot/HEAD/bergamot/src/bergamot/core/record/TLBEntry.scala -------------------------------------------------------------------------------- /bergamot/src/bergamot/core/retire/InstructionRetire.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LoveLonelyTime/Bergamot/HEAD/bergamot/src/bergamot/core/retire/InstructionRetire.scala -------------------------------------------------------------------------------- /bergamot/src/bergamot/export/CoreExporter.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LoveLonelyTime/Bergamot/HEAD/bergamot/src/bergamot/export/CoreExporter.scala -------------------------------------------------------------------------------- /bergamot/src/bergamot/export/VerilatorTestCore.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LoveLonelyTime/Bergamot/HEAD/bergamot/src/bergamot/export/VerilatorTestCore.scala -------------------------------------------------------------------------------- /bergamot/src/bergamot/interconnect/AXIInterconnect.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LoveLonelyTime/Bergamot/HEAD/bergamot/src/bergamot/interconnect/AXIInterconnect.scala -------------------------------------------------------------------------------- /bergamot/src/bergamot/interconnect/CacheInterconnect.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LoveLonelyTime/Bergamot/HEAD/bergamot/src/bergamot/interconnect/CacheInterconnect.scala -------------------------------------------------------------------------------- /bergamot/src/bergamot/interconnect/SMAInterconnection.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LoveLonelyTime/Bergamot/HEAD/bergamot/src/bergamot/interconnect/SMAInterconnection.scala -------------------------------------------------------------------------------- /bergamot/src/bergamot/peripheral/MachineTimer.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LoveLonelyTime/Bergamot/HEAD/bergamot/src/bergamot/peripheral/MachineTimer.scala -------------------------------------------------------------------------------- /bergamot/src/bergamot/peripheral/MemoryHole.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LoveLonelyTime/Bergamot/HEAD/bergamot/src/bergamot/peripheral/MemoryHole.scala -------------------------------------------------------------------------------- /bergamot/src/bergamot/peripheral/RAM.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LoveLonelyTime/Bergamot/HEAD/bergamot/src/bergamot/peripheral/RAM.scala -------------------------------------------------------------------------------- /bergamot/src/bergamot/peripheral/ROM.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LoveLonelyTime/Bergamot/HEAD/bergamot/src/bergamot/peripheral/ROM.scala -------------------------------------------------------------------------------- /bergamot/src/bergamot/peripheral/VirtualRAM.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LoveLonelyTime/Bergamot/HEAD/bergamot/src/bergamot/peripheral/VirtualRAM.scala -------------------------------------------------------------------------------- /bergamot/src/bergamot/peripheral/VirtualUART.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LoveLonelyTime/Bergamot/HEAD/bergamot/src/bergamot/peripheral/VirtualUART.scala -------------------------------------------------------------------------------- /bergamot/src/bergamot/peripheral/VirtualWriteHost.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LoveLonelyTime/Bergamot/HEAD/bergamot/src/bergamot/peripheral/VirtualWriteHost.scala -------------------------------------------------------------------------------- /bergamot/src/bergamot/utils/ChiselUtils.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LoveLonelyTime/Bergamot/HEAD/bergamot/src/bergamot/utils/ChiselUtils.scala -------------------------------------------------------------------------------- /bergamot/src/bergamot/utils/CoreUtils.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LoveLonelyTime/Bergamot/HEAD/bergamot/src/bergamot/utils/CoreUtils.scala -------------------------------------------------------------------------------- /bergamot/src/bergamot/utils/ReadWriteSRAM.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LoveLonelyTime/Bergamot/HEAD/bergamot/src/bergamot/utils/ReadWriteSRAM.scala -------------------------------------------------------------------------------- /bergamot/test/src/bergamot/test/FPTest.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LoveLonelyTime/Bergamot/HEAD/bergamot/test/src/bergamot/test/FPTest.scala -------------------------------------------------------------------------------- /default.nix: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LoveLonelyTime/Bergamot/HEAD/default.nix -------------------------------------------------------------------------------- /doc/arch.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LoveLonelyTime/Bergamot/HEAD/doc/arch.png -------------------------------------------------------------------------------- /doc/bergamot-social-card.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LoveLonelyTime/Bergamot/HEAD/doc/bergamot-social-card.png -------------------------------------------------------------------------------- /firrtl.nix: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LoveLonelyTime/Bergamot/HEAD/firrtl.nix -------------------------------------------------------------------------------- /riscv-tests/LICENSE: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LoveLonelyTime/Bergamot/HEAD/riscv-tests/LICENSE -------------------------------------------------------------------------------- /riscv-tests/isa/Makefile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LoveLonelyTime/Bergamot/HEAD/riscv-tests/isa/Makefile -------------------------------------------------------------------------------- /simulator/Makefile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LoveLonelyTime/Bergamot/HEAD/simulator/Makefile -------------------------------------------------------------------------------- /simulator/boot.S: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LoveLonelyTime/Bergamot/HEAD/simulator/boot.S -------------------------------------------------------------------------------- /simulator/sim_dt.dts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LoveLonelyTime/Bergamot/HEAD/simulator/sim_dt.dts -------------------------------------------------------------------------------- /simulator/sim_main.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LoveLonelyTime/Bergamot/HEAD/simulator/sim_main.cpp --------------------------------------------------------------------------------