Skip to content
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Binary file modified hardware/bootrom/bootrom.elf
Binary file not shown.
420 changes: 33 additions & 387 deletions hardware/src/cachepool_cluster.sv

Large diffs are not rendered by default.

416 changes: 393 additions & 23 deletions hardware/src/cachepool_group.sv

Large diffs are not rendered by default.

17 changes: 14 additions & 3 deletions hardware/src/cachepool_pkg.sv
Original file line number Diff line number Diff line change
Expand Up @@ -192,6 +192,13 @@
// UART ID width, with an extra xbar
localparam int unsigned SpatzAxiUartIdWidth = SpatzAxiNarrowIdWidth + $clog2(NumTiles);

// BootROM AXI ID width: wide data bus, muxed from NumTiles tile ports.
// The group's axi_mst_cache slave ID width = GroupAxiIdWidth + 1
// (cluster passes WideIdWidthIn = SpatzAxiIdOutWidth - clog2(NumClusterMst)
// = ClusterAxiIdWidth + 1 - ClusterRouteIdWidth = GroupAxiIdWidth + 1).
// The mux master adds $clog2(NumTiles) bits on top.
localparam int unsigned BootRomAxiSlvIdWidth = GroupAxiIdWidth + 1 + $clog2(NumTiles);

/***** Tile Ports *****/
// We have three sets of AXI ports for each tile:
// 1) Wide output bus for BootRom & L2 (from ICache)
Expand Down Expand Up @@ -286,6 +293,8 @@

typedef logic [IwcAxiIdOutWidth-1:0] axi_id_out_iwc_t;

typedef logic [BootRomAxiSlvIdWidth-1:0] axi_bootrom_slv_id_t;

//////////////////
// TILE TYPES //
//////////////////
Expand Down Expand Up @@ -424,9 +433,11 @@
`AXI_TYPEDEF_ALL(spatz_axi_out, axi_addr_t, axi_id_out_t, axi_wide_data_t, axi_wide_strb_t, axi_user_t)
`AXI_TYPEDEF_ALL(spatz_axi_iwc_out, axi_addr_t, axi_id_out_iwc_t, axi_wide_data_t, axi_wide_strb_t, axi_user_t)

`AXI_TYPEDEF_ALL(axi_uart, axi_addr_t, axi_uart_id_t, axi_narrow_data_t, axi_narrow_strb_t, axi_user_t)
`AXI_TYPEDEF_ALL(axi_csr_mst, axi_addr_t, axi_id_csr_mst_t, axi_narrow_data_t, axi_narrow_strb_t, axi_user_t)
`AXI_TYPEDEF_ALL(axi_csr_slv, axi_addr_t, axi_id_csr_slv_t, axi_narrow_data_t, axi_narrow_strb_t, axi_user_t)
`AXI_TYPEDEF_ALL(axi_uart, axi_addr_t, axi_uart_id_t, axi_narrow_data_t, axi_narrow_strb_t, axi_user_t)

Check warning on line 436 in hardware/src/cachepool_pkg.sv

View workflow job for this annotation

GitHub Actions / verible-verilog-lint

[verible-verilog-lint] hardware/src/cachepool_pkg.sv#L436

Line length exceeds max: 100; is: 121 [Style: line-length] [line-length]
Raw output
message:"Line length exceeds max: 100; is: 121 [Style: line-length] [line-length]" location:{path:"hardware/src/cachepool_pkg.sv" range:{start:{line:436 column:101}}} severity:WARNING source:{name:"verible-verilog-lint" url:"https://github.com/chipsalliance/verible"}
`AXI_TYPEDEF_ALL(axi_csr_mst, axi_addr_t, axi_id_csr_mst_t, axi_narrow_data_t, axi_narrow_strb_t, axi_user_t)

Check warning on line 437 in hardware/src/cachepool_pkg.sv

View workflow job for this annotation

GitHub Actions / verible-verilog-lint

[verible-verilog-lint] hardware/src/cachepool_pkg.sv#L437

Line length exceeds max: 100; is: 121 [Style: line-length] [line-length]
Raw output
message:"Line length exceeds max: 100; is: 121 [Style: line-length] [line-length]" location:{path:"hardware/src/cachepool_pkg.sv" range:{start:{line:437 column:101}}} severity:WARNING source:{name:"verible-verilog-lint" url:"https://github.com/chipsalliance/verible"}
`AXI_TYPEDEF_ALL(axi_csr_slv, axi_addr_t, axi_id_csr_slv_t, axi_narrow_data_t, axi_narrow_strb_t, axi_user_t)

Check warning on line 438 in hardware/src/cachepool_pkg.sv

View workflow job for this annotation

GitHub Actions / verible-verilog-lint

[verible-verilog-lint] hardware/src/cachepool_pkg.sv#L438

Line length exceeds max: 100; is: 121 [Style: line-length] [line-length]
Raw output
message:"Line length exceeds max: 100; is: 121 [Style: line-length] [line-length]" location:{path:"hardware/src/cachepool_pkg.sv" range:{start:{line:438 column:101}}} severity:WARNING source:{name:"verible-verilog-lint" url:"https://github.com/chipsalliance/verible"}
// BootROM: wide data bus (same payload as cache), slv = post-mux (widened ID)
`AXI_TYPEDEF_ALL(axi_bootrom_slv, axi_addr_t, axi_bootrom_slv_id_t, axi_wide_data_t, axi_wide_strb_t, axi_user_t)

Check warning on line 440 in hardware/src/cachepool_pkg.sv

View workflow job for this annotation

GitHub Actions / verible-verilog-lint

[verible-verilog-lint] hardware/src/cachepool_pkg.sv#L440

Line length exceeds max: 100; is: 121 [Style: line-length] [line-length]
Raw output
message:"Line length exceeds max: 100; is: 121 [Style: line-length] [line-length]" location:{path:"hardware/src/cachepool_pkg.sv" range:{start:{line:440 column:101}}} severity:WARNING source:{name:"verible-verilog-lint" url:"https://github.com/chipsalliance/verible"}

/**************************************************************
* FUNCTIONS
Expand Down
4 changes: 0 additions & 4 deletions sim/scripts/vsim_cluster.tcl
Original file line number Diff line number Diff line change
Expand Up @@ -7,10 +7,6 @@ onerror {resume}

set cluster_path $1

add wave -noupdate -group Cluster -group xbar -group req_xbar ${cluster_path}/i_cluster_xbar/i_req_xbar/*
add wave -noupdate -group Cluster -group xbar -group rsp_xbar ${cluster_path}/i_cluster_xbar/i_rsp_xbar/*
add wave -noupdate -group Cluster -group xbar ${cluster_path}/i_cluster_xbar/*

add wave -noupdate -group Cluster -group CSR ${cluster_path}/i_cachepool_cluster_peripheral/*

add wave -noupdate -group Cluster -group Internal ${cluster_path}/*
Expand Down
4 changes: 4 additions & 0 deletions sim/scripts/vsim_group.tcl
Original file line number Diff line number Diff line change
Expand Up @@ -16,4 +16,8 @@ for {set p 0} {$p < $2} {incr p} {
add wave -noupdate -group Group -group remote_xbar[$p] ${xbar_path}/*
}

add wave -noupdate -group Group -group refill_xbar -group req_xbar ${group_path}/i_refill_xbar/i_req_xbar/*
add wave -noupdate -group Group -group refill_xbar -group rsp_xbar ${group_path}/i_refill_xbar/i_rsp_xbar/*


add wave -noupdate -group Group -group Internal ${group_path}/*
2 changes: 1 addition & 1 deletion util/auto-benchmark/write_results.py
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,7 @@ def extract_uart_lines(input_file_path, output_file_path, config=None, kernel=No

# Copy only lines containing '[UART]'
for line in input_file:
if '[UART]' in line:
if '[UART]' in line or '[EOC]' in line:
output_file.write(line)

output_file.write("\n----------------------------------------\n")
Expand Down
Loading