From d2aa228a3462e3594355f05a7bd10cdd14ed5758 Mon Sep 17 00:00:00 2001 From: Blaise Tine Date: Mon, 26 Jul 2021 21:24:27 -0700 Subject: [PATCH] cache area optimization + IPC boost from 4.24 => 4.42 --- hw/rtl/VX_config.vh | 18 +++++++++--------- hw/rtl/VX_mem_unit.v | 2 +- hw/rtl/VX_scoreboard.v | 2 +- hw/rtl/VX_smem_arb.v | 2 +- 4 files changed, 12 insertions(+), 12 deletions(-) diff --git a/hw/rtl/VX_config.vh b/hw/rtl/VX_config.vh index e1648aca..ea0ee9dc 100644 --- a/hw/rtl/VX_config.vh +++ b/hw/rtl/VX_config.vh @@ -250,7 +250,7 @@ // Core Request Queue Size `ifndef ICREQ_SIZE -`define ICREQ_SIZE 4 +`define ICREQ_SIZE 0 `endif // Core Response Queue Size @@ -270,7 +270,7 @@ // Memory Response Queue Size `ifndef IMRSQ_SIZE -`define IMRSQ_SIZE 4 +`define IMRSQ_SIZE 0 `endif // Dcache Configurable Knobs ////////////////////////////////////////////////// @@ -292,7 +292,7 @@ // Core Request Queue Size `ifndef DCREQ_SIZE -`define DCREQ_SIZE 4 +`define DCREQ_SIZE 0 `endif // Core Response Queue Size @@ -312,7 +312,7 @@ // Memory Response Queue Size `ifndef DMRSQ_SIZE -`define DMRSQ_SIZE `MAX(4, `DNUM_BANKS) +`define DMRSQ_SIZE 0 `endif // SM Configurable Knobs ////////////////////////////////////////////////////// @@ -334,7 +334,7 @@ // Core Request Queue Size `ifndef SCREQ_SIZE -`define SCREQ_SIZE 4 +`define SCREQ_SIZE 2 `endif // Core Response Queue Size @@ -356,7 +356,7 @@ // Core Request Queue Size `ifndef L2CREQ_SIZE -`define L2CREQ_SIZE 4 +`define L2CREQ_SIZE 0 `endif // Core Response Queue Size @@ -376,7 +376,7 @@ // Memory Response Queue Size `ifndef L2MRSQ_SIZE -`define L2MRSQ_SIZE `MAX(4, (`L2NUM_BANKS * 2)) +`define L2MRSQ_SIZE 0 `endif // L3cache Configurable Knobs ///////////////////////////////////////////////// @@ -393,7 +393,7 @@ // Core Request Queue Size `ifndef L3CREQ_SIZE -`define L3CREQ_SIZE 4 +`define L3CREQ_SIZE 0 `endif // Core Response Queue Size @@ -413,7 +413,7 @@ // Memory Response Queue Size `ifndef L3MRSQ_SIZE -`define L3MRSQ_SIZE `MAX(4, (`L3NUM_BANKS * 2)) +`define L3MRSQ_SIZE 0 `endif `endif diff --git a/hw/rtl/VX_mem_unit.v b/hw/rtl/VX_mem_unit.v index f198ebf3..4cbc1266 100644 --- a/hw/rtl/VX_mem_unit.v +++ b/hw/rtl/VX_mem_unit.v @@ -275,7 +275,7 @@ module VX_mem_unit # ( .ADDR_WIDTH (`DMEM_ADDR_WIDTH), .TAG_IN_WIDTH (`DMEM_TAG_WIDTH), .BUFFERED_REQ (1), - .BUFFERED_RSP (1) + .BUFFERED_RSP (2) ) mem_arb ( .clk (clk), .reset (reset), diff --git a/hw/rtl/VX_scoreboard.v b/hw/rtl/VX_scoreboard.v index 387b1876..24ad1c37 100644 --- a/hw/rtl/VX_scoreboard.v +++ b/hw/rtl/VX_scoreboard.v @@ -40,7 +40,7 @@ module VX_scoreboard #( end reg [31:0] deadlock_ctr; - wire [31:0] deadlock_timeout = 1000 * (10 ** (`L2_ENABLE + `L3_ENABLE)); + wire [31:0] deadlock_timeout = 10000 * (1 ** (`L2_ENABLE + `L3_ENABLE)); always @(posedge clk) begin if (reset) begin deadlock_ctr <= 0; diff --git a/hw/rtl/VX_smem_arb.v b/hw/rtl/VX_smem_arb.v index 2383fa88..1c62117c 100644 --- a/hw/rtl/VX_smem_arb.v +++ b/hw/rtl/VX_smem_arb.v @@ -32,7 +32,7 @@ module VX_smem_arb ( VX_stream_demux #( .NUM_REQS (2), .DATAW (REQ_DATAW), - .BUFFERED (1) + .BUFFERED (2) ) req_demux ( .clk (clk), .reset (reset),