[rv_timer/dv] Clean up TODO and warnings
1. rv_timer_cfg_update_on_fly_vseq : Updated for xcelium warnings
2. rv_timer_* : Removed TODOs
diff --git a/hw/ip/rv_timer/dv/env/rv_timer_env_cov.sv b/hw/ip/rv_timer/dv/env/rv_timer_env_cov.sv
index 19fcf22..bc03a8c 100644
--- a/hw/ip/rv_timer/dv/env/rv_timer_env_cov.sv
+++ b/hw/ip/rv_timer/dv/env/rv_timer_env_cov.sv
@@ -2,7 +2,7 @@
// Licensed under the Apache License, Version 2.0, see LICENSE for details.
// SPDX-License-Identifier: Apache-2.0
-// TODO - We are enclosing covergroups inside class so that we can
+// We are enclosing covergroups inside class so that we can
// take avoid tool limitation of not allowing arrays of covergroup
// Refer to Issue#375 for more details
// class for wrapping timer config covergroup
diff --git a/hw/ip/rv_timer/dv/env/rv_timer_env_pkg.sv b/hw/ip/rv_timer/dv/env/rv_timer_env_pkg.sv
index b5e00cb..36811bc 100644
--- a/hw/ip/rv_timer/dv/env/rv_timer_env_pkg.sv
+++ b/hw/ip/rv_timer/dv/env/rv_timer_env_pkg.sv
@@ -19,7 +19,7 @@
// local parameters and types
// csr and mem total size for IP
parameter uint RV_TIMER_ADDR_MAP_SIZE = 512;
- // TODO: these are currently hardcoded to 1 - this will need to change if design is modified
+ // These are currently hardcoded to 1 - this will need to change if design is modified
parameter uint NUM_HARTS = 1;
parameter uint NUM_TIMERS = 1;
diff --git a/hw/ip/rv_timer/dv/env/seq_lib/rv_timer_base_vseq.sv b/hw/ip/rv_timer/dv/env/seq_lib/rv_timer_base_vseq.sv
index 467b5d4..62f2b24 100644
--- a/hw/ip/rv_timer/dv/env/seq_lib/rv_timer_base_vseq.sv
+++ b/hw/ip/rv_timer/dv/env/seq_lib/rv_timer_base_vseq.sv
@@ -38,16 +38,6 @@
super.pre_start();
endtask
- virtual task dut_init(string reset_kind = "HARD");
- super.dut_init(reset_kind);
- // TODO: nothing extra to do yet
- endtask
-
- virtual task dut_shutdown();
- super.dut_shutdown();
- // TODO: nothing extra to do yet
- endtask
-
// cfg rv_timer - set a particular timer active or inactive
virtual task cfg_timer(int hart = 0, int timer = 0, bit enable = 1'b1);
uvm_reg ctrl_rg;
diff --git a/hw/ip/rv_timer/dv/env/seq_lib/rv_timer_cfg_update_on_fly_vseq.sv b/hw/ip/rv_timer/dv/env/seq_lib/rv_timer_cfg_update_on_fly_vseq.sv
index 8d1427f..c7e8717 100644
--- a/hw/ip/rv_timer/dv/env/seq_lib/rv_timer_cfg_update_on_fly_vseq.sv
+++ b/hw/ip/rv_timer/dv/env/seq_lib/rv_timer_cfg_update_on_fly_vseq.sv
@@ -90,8 +90,8 @@
// ((1 << 64)-1) - (max_step_value*300) = 'hFFFFFFFFFFFED52B
// min_timer_val is calculated using max random value subtracted from
// timer_val with below randomiztion which is (max_step_value*300) = 'h12AD4
- if ((compare_val[hart][timer] >= 'hFFFFFFFFFFFED52B) |
- (timer_val[hart] <= 'h12AD4)) begin
+ if ((compare_val[hart][timer] >= 64'hFFFFFFFFFFFED52B) |
+ (timer_val[hart] <= 64'h12AD4)) begin
timer_at_min_max_val = 1'b1;
break;
end
@@ -103,13 +103,13 @@
compare_val[hart][timer] += step[hart] * $urandom_range(30, 300);
end
else begin
- compare_val[hart][timer] -= $urandom_range((mtime_diff / 20), (mtime_diff / 4));
+ compare_val[hart][timer] -= mtime_diff / ($urandom_range(4, 20));
end
set_compare_val(.hart(hart), .timer(timer), .val(compare_val[hart][timer]));
mtime_diff = compare_val[hart][timer] - timer_val[hart];
if (!upd_cfg_in_end | $urandom_range(0, 1)) begin
- timer_val[hart] += $urandom_range((mtime_diff / 20), (mtime_diff / 4));
+ timer_val[hart] += mtime_diff / ($urandom_range(4, 20));
end
else begin
timer_val[hart] -= step[hart] * $urandom_range(30, 300);