Skip to content

Commit

Permalink
Add MaxOustandingStores parameter to cva6_cfg_t
Browse files Browse the repository at this point in the history
  • Loading branch information
colluca committed Oct 19, 2023
1 parent bf32194 commit 6cfe769
Show file tree
Hide file tree
Showing 15 changed files with 28 additions and 15 deletions.
2 changes: 1 addition & 1 deletion core/cache_subsystem/axi_adapter.sv
Original file line number Diff line number Diff line change
Expand Up @@ -21,7 +21,6 @@ module axi_adapter #(
parameter int unsigned DATA_WIDTH = 256,
parameter logic CRITICAL_WORD_FIRST = 0, // the AXI subsystem needs to support wrapping reads for this feature
parameter int unsigned CACHELINE_BYTE_OFFSET = 8,
parameter int unsigned MAX_OUTSTANDING_AW = 0,
parameter type axi_req_t = logic,
parameter type axi_rsp_t = logic
) (
Expand Down Expand Up @@ -55,6 +54,7 @@ module axi_adapter #(
) > 0) ? $clog2(
DATA_WIDTH / CVA6Cfg.AxiDataWidth
) : 1;
localparam MAX_OUTSTANDING_AW = CVA6Cfg.MaxOutstandingStores;
localparam MAX_OUTSTANDING_AW_CNT_WIDTH = $clog2(MAX_OUTSTANDING_AW + 1) > 0 ? $clog2(MAX_OUTSTANDING_AW + 1) : 1;

typedef logic [MAX_OUTSTANDING_AW_CNT_WIDTH-1:0] outstanding_aw_cnt_t;
Expand Down
3 changes: 1 addition & 2 deletions core/cache_subsystem/miss_handler.sv
Original file line number Diff line number Diff line change
Expand Up @@ -551,7 +551,7 @@ module miss_handler
// ----------------------
axi_adapter_arbiter #(
.NR_PORTS (NR_BYPASS_PORTS),
.MAX_OUTSTANDING_REQ(7),
.MAX_OUTSTANDING_REQ(CVA6Cfg.MaxOutstandingStores),
.req_t (bypass_req_t),
.rsp_t (bypass_rsp_t)
) i_bypass_arbiter (
Expand All @@ -576,7 +576,6 @@ module miss_handler
.CVA6Cfg (CVA6Cfg),
.DATA_WIDTH (64),
.CACHELINE_BYTE_OFFSET(DCACHE_BYTE_OFFSET),
.MAX_OUTSTANDING_AW (7),
.axi_req_t (axi_req_t),
.axi_rsp_t (axi_rsp_t)
) i_bypass_axi_adapter (
Expand Down
3 changes: 2 additions & 1 deletion core/cva6.sv
Original file line number Diff line number Diff line change
Expand Up @@ -210,7 +210,8 @@ module cva6
CVA6Cfg.ExecuteRegionLength,
CVA6Cfg.NrCachedRegionRules,
CVA6Cfg.CachedRegionAddrBase,
CVA6Cfg.CachedRegionLength
CVA6Cfg.CachedRegionLength,
CVA6Cfg.MaxOutstandingStores
};


Expand Down
2 changes: 2 additions & 0 deletions core/include/config_pkg.sv
Original file line number Diff line number Diff line change
Expand Up @@ -107,6 +107,8 @@ package config_pkg;
logic [NrMaxRules-1:0][63:0] CachedRegionAddrBase;
/// Bit mask which bits to consider when matching the rule.
logic [NrMaxRules-1:0][63:0] CachedRegionLength;
/// Maximum number of outstanding stores.
int unsigned MaxOutstandingStores;
} cva6_cfg_t;


Expand Down
3 changes: 2 additions & 1 deletion core/include/cv32a60x_config_pkg.sv
Original file line number Diff line number Diff line change
Expand Up @@ -134,7 +134,8 @@ package cva6_config_pkg;
1
),
CachedRegionAddrBase: 1024'({64'h8000_0000}),
CachedRegionLength: 1024'({64'h40000000})
CachedRegionLength: 1024'({64'h40000000}),
MaxOutstandingStores: unsigned'(7)
};

endpackage
3 changes: 2 additions & 1 deletion core/include/cv32a6_embedded_config_pkg.sv
Original file line number Diff line number Diff line change
Expand Up @@ -133,7 +133,8 @@ package cva6_config_pkg;
1
),
CachedRegionAddrBase: 1024'({64'h8000_0000}),
CachedRegionLength: 1024'({64'h40000000})
CachedRegionLength: 1024'({64'h40000000}),
MaxOutstandingStores: unsigned'(7)
};

endpackage
3 changes: 2 additions & 1 deletion core/include/cv32a6_ima_sv32_fpga_config_pkg.sv
Original file line number Diff line number Diff line change
Expand Up @@ -134,7 +134,8 @@ package cva6_config_pkg;
1
),
CachedRegionAddrBase: 1024'({64'h8000_0000}),
CachedRegionLength: 1024'({64'h40000000})
CachedRegionLength: 1024'({64'h40000000}),
MaxOutstandingStores: unsigned'(7)
};

endpackage
3 changes: 2 additions & 1 deletion core/include/cv32a6_imac_sv0_config_pkg.sv
Original file line number Diff line number Diff line change
Expand Up @@ -134,6 +134,7 @@ package cva6_config_pkg;
1
),
CachedRegionAddrBase: 1024'({64'h8000_0000}),
CachedRegionLength: 1024'({64'h40000000})
CachedRegionLength: 1024'({64'h40000000}),
MaxOutstandingStores: unsigned'(7)
};
endpackage
3 changes: 2 additions & 1 deletion core/include/cv32a6_imac_sv32_config_pkg.sv
Original file line number Diff line number Diff line change
Expand Up @@ -134,7 +134,8 @@ package cva6_config_pkg;
1
),
CachedRegionAddrBase: 1024'({64'h8000_0000}),
CachedRegionLength: 1024'({64'h40000000})
CachedRegionLength: 1024'({64'h40000000}),
MaxOutstandingStores: unsigned'(7)
};

endpackage
3 changes: 2 additions & 1 deletion core/include/cv32a6_imafc_sv32_config_pkg.sv
Original file line number Diff line number Diff line change
Expand Up @@ -134,7 +134,8 @@ package cva6_config_pkg;
1
),
CachedRegionAddrBase: 1024'({64'h8000_0000}),
CachedRegionLength: 1024'({64'h40000000})
CachedRegionLength: 1024'({64'h40000000}),
MaxOutstandingStores: unsigned'(7)
};

endpackage
3 changes: 2 additions & 1 deletion core/include/cv64a6_imadfcv_sv39_polara_config_pkg.sv
Original file line number Diff line number Diff line change
Expand Up @@ -133,7 +133,8 @@ package cva6_config_pkg;
1
),
CachedRegionAddrBase: 1024'({64'h8000_0000}),
CachedRegionLength: 1024'({64'h40000000})
CachedRegionLength: 1024'({64'h40000000}),
MaxOutstandingStores: unsigned'(7)
};

endpackage
3 changes: 2 additions & 1 deletion core/include/cv64a6_imafdc_sv39_config_pkg.sv
Original file line number Diff line number Diff line change
Expand Up @@ -134,7 +134,8 @@ package cva6_config_pkg;
1
),
CachedRegionAddrBase: 1024'({64'h8000_0000}),
CachedRegionLength: 1024'({64'h40000000})
CachedRegionLength: 1024'({64'h40000000}),
MaxOutstandingStores: unsigned'(7)
};

endpackage
3 changes: 2 additions & 1 deletion core/include/cv64a6_imafdc_sv39_openpiton_config_pkg.sv
Original file line number Diff line number Diff line change
Expand Up @@ -134,7 +134,8 @@ package cva6_config_pkg;
1
),
CachedRegionAddrBase: 1024'({64'h8000_0000}),
CachedRegionLength: 1024'({64'h40000000})
CachedRegionLength: 1024'({64'h40000000}),
MaxOutstandingStores: unsigned'(7)
};

endpackage
3 changes: 2 additions & 1 deletion core/include/cv64a6_imafdc_sv39_wb_config_pkg.sv
Original file line number Diff line number Diff line change
Expand Up @@ -134,7 +134,8 @@ package cva6_config_pkg;
1
),
CachedRegionAddrBase: 1024'({64'h8000_0000}),
CachedRegionLength: 1024'({64'h40000000})
CachedRegionLength: 1024'({64'h40000000}),
MaxOutstandingStores: unsigned'(7)
};

endpackage
3 changes: 2 additions & 1 deletion core/include/cv64a6_imafdcv_sv39_config_pkg.sv
Original file line number Diff line number Diff line change
Expand Up @@ -133,6 +133,7 @@ package cva6_config_pkg;
1
),
CachedRegionAddrBase: 1024'({64'h8000_0000}),
CachedRegionLength: 1024'({64'h40000000})
CachedRegionLength: 1024'({64'h40000000}),
MaxOutstandingStores: unsigned'(7)
};
endpackage

0 comments on commit 6cfe769

Please sign in to comment.