profiling bug fix
This commit is contained in:
12
hw/rtl/cache/VX_cache.sv
vendored
12
hw/rtl/cache/VX_cache.sv
vendored
@@ -537,7 +537,7 @@ module VX_cache import VX_gpu_pkg::*; #(
|
|||||||
wire [`CLOG2(NUM_BANKS+1)-1:0] perf_read_miss_per_cycle;
|
wire [`CLOG2(NUM_BANKS+1)-1:0] perf_read_miss_per_cycle;
|
||||||
wire [`CLOG2(NUM_BANKS+1)-1:0] perf_write_miss_per_cycle;
|
wire [`CLOG2(NUM_BANKS+1)-1:0] perf_write_miss_per_cycle;
|
||||||
wire [`CLOG2(NUM_BANKS+1)-1:0] perf_mshr_stall_per_cycle;
|
wire [`CLOG2(NUM_BANKS+1)-1:0] perf_mshr_stall_per_cycle;
|
||||||
wire [`CLOG2(NUM_BANKS+1)-1:0] perf_crsp_stall_per_cycle;
|
wire [`CLOG2(NUM_REQS+1)-1:0] perf_crsp_stall_per_cycle;
|
||||||
|
|
||||||
`POP_COUNT(perf_core_reads_per_cycle, perf_core_reads_per_req);
|
`POP_COUNT(perf_core_reads_per_cycle, perf_core_reads_per_req);
|
||||||
`POP_COUNT(perf_core_writes_per_cycle, perf_core_writes_per_req);
|
`POP_COUNT(perf_core_writes_per_cycle, perf_core_writes_per_req);
|
||||||
@@ -562,6 +562,12 @@ module VX_cache import VX_gpu_pkg::*; #(
|
|||||||
reg [`PERF_CTR_BITS-1:0] perf_mem_stalls;
|
reg [`PERF_CTR_BITS-1:0] perf_mem_stalls;
|
||||||
reg [`PERF_CTR_BITS-1:0] perf_crsp_stalls;
|
reg [`PERF_CTR_BITS-1:0] perf_crsp_stalls;
|
||||||
|
|
||||||
|
wire [`CLOG2(NUM_REQS+1)-1:0] perf_core_reads_per_cycle_r;
|
||||||
|
wire [`CLOG2(NUM_REQS+1)-1:0] perf_core_writes_per_cycle_r;
|
||||||
|
|
||||||
|
`BUFFER(perf_core_reads_per_cycle_r, perf_core_reads_per_cycle);
|
||||||
|
`BUFFER(perf_core_writes_per_cycle_r, perf_core_writes_per_cycle);
|
||||||
|
|
||||||
always @(posedge clk) begin
|
always @(posedge clk) begin
|
||||||
if (reset) begin
|
if (reset) begin
|
||||||
perf_core_reads <= '0;
|
perf_core_reads <= '0;
|
||||||
@@ -572,8 +578,8 @@ module VX_cache import VX_gpu_pkg::*; #(
|
|||||||
perf_mem_stalls <= '0;
|
perf_mem_stalls <= '0;
|
||||||
perf_crsp_stalls <= '0;
|
perf_crsp_stalls <= '0;
|
||||||
end else begin
|
end else begin
|
||||||
perf_core_reads <= perf_core_reads + `PERF_CTR_BITS'(perf_core_reads_per_cycle);
|
perf_core_reads <= perf_core_reads + `PERF_CTR_BITS'(perf_core_reads_per_cycle_r);
|
||||||
perf_core_writes <= perf_core_writes + `PERF_CTR_BITS'(perf_core_writes_per_cycle);
|
perf_core_writes <= perf_core_writes + `PERF_CTR_BITS'(perf_core_writes_per_cycle_r);
|
||||||
perf_read_misses <= perf_read_misses + `PERF_CTR_BITS'(perf_read_miss_per_cycle);
|
perf_read_misses <= perf_read_misses + `PERF_CTR_BITS'(perf_read_miss_per_cycle);
|
||||||
perf_write_misses <= perf_write_misses + `PERF_CTR_BITS'(perf_write_miss_per_cycle);
|
perf_write_misses <= perf_write_misses + `PERF_CTR_BITS'(perf_write_miss_per_cycle);
|
||||||
perf_mshr_stalls <= perf_mshr_stalls + `PERF_CTR_BITS'(perf_mshr_stall_per_cycle);
|
perf_mshr_stalls <= perf_mshr_stalls + `PERF_CTR_BITS'(perf_mshr_stall_per_cycle);
|
||||||
|
|||||||
Reference in New Issue
Block a user