Skip to content

Commit

Permalink
Add bootrom build target for chimera
Browse files Browse the repository at this point in the history
  • Loading branch information
Lore0599 committed Sep 27, 2024
1 parent c8adf30 commit e7fb85e
Show file tree
Hide file tree
Showing 6 changed files with 31 additions and 26 deletions.
2 changes: 1 addition & 1 deletion Bender.lock
Original file line number Diff line number Diff line change
Expand Up @@ -69,7 +69,7 @@ packages:
- common_cells
- register_interface
cheshire:
revision: f28e91b4d2172c3c98ec8672a9c9225c0b45363c
revision: 2eaec75db7bf8e1956ec685608e05dc694512da8
version: null
source:
Git: https://github.com/pulp-platform/cheshire.git
Expand Down
2 changes: 1 addition & 1 deletion Bender.yml
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,7 @@ package:
dependencies:
register_interface: { git: "https://github.com/pulp-platform/register_interface.git", version: 0.4.3 }
axi: { git: "https://github.com/pulp-platform/axi.git", version: 0.39.2 }
cheshire: { git: "https://github.com/pulp-platform/cheshire.git", rev: f28e91b4d2172c3c98ec8672a9c9225c0b45363c}
cheshire: { git: "https://github.com/pulp-platform/cheshire.git", rev: lleone/memisland}
snitch_cluster: { git: "https://github.com/pulp-platform/snitch_cluster.git", rev: c12ce9b2af1ac8edf3d4feb18939e1ad20c42225}
common_cells: { git: "https://github.com/pulp-platform/common_cells.git", version: 1.31.1}
idma: { git: "https://github.com/pulp-platform/iDMA.git", rev: 9edf489f57389dce5e71252c79e337f527d3aded}
Expand Down
2 changes: 1 addition & 1 deletion chimera.mk
Original file line number Diff line number Diff line change
Expand Up @@ -65,7 +65,7 @@ $(CHIM_ROOT)/hw/regs/chimera_reg_pkg.sv $(CHIM_ROOT)/hw/regs/chimera_reg_top.sv:
# Nonfree components
CHIM_NONFREE_REMOTE ?= git@iis-git.ee.ethz.ch:pulp-restricted/chimera-nonfree.git
CHIM_NONFREE_DIR ?= $(CHIM_ROOT)/nonfree
CHIM_NONFREE_COMMIT ?= 0825231dfb56fb1ab387d86c4b13bcad7c2fbee9 # to deploy `chimera-nonfree` repo changes, push to `deploy` tag
CHIM_NONFREE_COMMIT ?= 4ad18f61e8db277f9a9d9c7c01ef5d5769552d2c # to deploy `chimera-nonfree` repo changes, push to `deploy` tag

.PHONY: chim-nonfree-init
chim-nonfree-init:
Expand Down
14 changes: 7 additions & 7 deletions hw/chimera_clu_domain.sv
Original file line number Diff line number Diff line change
Expand Up @@ -23,10 +23,10 @@ module chimera_clu_domain
parameter type wide_out_req_t = logic,
parameter type wide_out_resp_t = logic
) (
input logic soc_clk_i,
input logic [ ExtClusters-1:0] clu_clk_i,
input logic [ ExtClusters-1:0] rst_sync_ni,
input logic [ ExtClusters-1:0] widemem_bypass_i,
input logic soc_clk_i,
input logic [ ExtClusters-1:0] clu_clk_i,
input logic [ ExtClusters-1:0] rst_sync_ni,
input logic [ ExtClusters-1:0] widemem_bypass_i,
//-----------------------------
// Interrupt ports
//-----------------------------
Expand All @@ -49,8 +49,8 @@ module chimera_clu_domain
//-----------------------------
// Isolation control ports
//-----------------------------
input logic [ ExtClusters-1:0] isolate_i,
output logic [ ExtClusters-1:0] isolate_o
input logic [ ExtClusters-1:0] isolate_i,
output logic [ ExtClusters-1:0] isolate_o
);

// Axi parameters
Expand Down Expand Up @@ -135,7 +135,7 @@ module chimera_clu_domain
.AtopSupport (1),
.AxiAddrWidth (Cfg.ChsCfg.AddrWidth),
.AxiDataWidth (AxiWideDataWidth),
.AxiIdWidth (Cfg.MemIslAxiMstIdWidth), // To Check
.AxiIdWidth (Cfg.MemIslAxiMstIdWidth), // To Check
.AxiUserWidth (Cfg.ChsCfg.AxiUserWidth),
.axi_req_t (wide_out_req_t),
.axi_resp_t (wide_out_resp_t)
Expand Down
32 changes: 16 additions & 16 deletions hw/chimera_cluster.sv
Original file line number Diff line number Diff line change
Expand Up @@ -19,35 +19,35 @@ module chimera_cluster
parameter type wide_out_req_t = logic,
parameter type wide_out_resp_t = logic
) (
input logic soc_clk_i,
input logic clu_clk_i,
input logic rst_ni,
input logic widemem_bypass_i,
input logic soc_clk_i,
input logic clu_clk_i,
input logic rst_ni,
input logic widemem_bypass_i,
//-----------------------------
// Interrupt ports
//-----------------------------
input logic [ NrCores-1:0] debug_req_i,
input logic [ NrCores-1:0] meip_i,
input logic [ NrCores-1:0] mtip_i,
input logic [ NrCores-1:0] msip_i,
input logic [ NrCores-1:0] debug_req_i,
input logic [ NrCores-1:0] meip_i,
input logic [ NrCores-1:0] mtip_i,
input logic [ NrCores-1:0] msip_i,
//-----------------------------
// Cluster base addressing
//-----------------------------
input logic [ 9:0] hart_base_id_i,
input logic [ 9:0] hart_base_id_i,
input logic [Cfg.ChsCfg.AddrWidth-1:0] cluster_base_addr_i,
input logic [ 31:0] boot_addr_i,
input logic [ 31:0] boot_addr_i,
//-----------------------------
// Narrow AXI ports
//-----------------------------
input narrow_in_req_t narrow_in_req_i,
output narrow_in_resp_t narrow_in_resp_o,
output narrow_out_req_t [ 1:0] narrow_out_req_o,
input narrow_out_resp_t [ 1:0] narrow_out_resp_i,
input narrow_in_req_t narrow_in_req_i,
output narrow_in_resp_t narrow_in_resp_o,
output narrow_out_req_t [ 1:0] narrow_out_req_o,
input narrow_out_resp_t [ 1:0] narrow_out_resp_i,
//-----------------------------
//Wide AXI ports
//-----------------------------
output wide_out_req_t wide_out_req_o,
input wide_out_resp_t wide_out_resp_i
output wide_out_req_t wide_out_req_o,
input wide_out_resp_t wide_out_resp_i
);

`include "axi/typedef.svh"
Expand Down
5 changes: 5 additions & 0 deletions sw/sw.mk
Original file line number Diff line number Diff line change
Expand Up @@ -53,6 +53,11 @@ $(foreach link,$(patsubst $(CHS_SW_LD_DIR)/%.ld,%,$(wildcard $(CHS_SW_LD_DIR)/*.

chim-sw: $(CHIM_SW_LIB) $(CHIM_SW_TESTS)

.PHONY: chim-bootrom-init
chim-bootrom-init: chs-hw-init chim-sw
make -B chs-bootrom-all CHS_XLEN=$(CHS_XLEN) CHS_SW_LD_DIR=$(CHS_SW_LD_DIR)


chim-sw-clean:
@find sw/tests | grep ".*\.elf" | xargs -I ! rm !
@find sw/tests | grep ".*\.dump" | xargs -I ! rm !
Expand Down

0 comments on commit e7fb85e

Please sign in to comment.