[prim] Fix lint errors
Signed-off-by: Pirmin Vogel <vogelpi@lowrisc.org>
diff --git a/hw/ip/prim/rtl/prim_arbiter_ppc.sv b/hw/ip/prim/rtl/prim_arbiter_ppc.sv
index d72083a..298f2b9 100644
--- a/hw/ip/prim/rtl/prim_arbiter_ppc.sv
+++ b/hw/ip/prim/rtl/prim_arbiter_ppc.sv
@@ -28,7 +28,10 @@
// Configurations
// EnDataPort: {0, 1}, if 0, input data will be ignored
- parameter int EnDataPort = 1
+ parameter int EnDataPort = 1,
+
+ // Derived parameters
+ localparam int unsigned IdxW = $clog2(N)
) (
input clk_i,
input rst_ni,
@@ -36,7 +39,7 @@
input [ N-1:0] req_i,
input [DW-1:0] data_i [N],
output logic [ N-1:0] gnt_o,
- output logic [$clog2(N)-1:0] idx_o,
+ output logic [IdxW-1:0] idx_o,
output logic valid_o,
output logic [DW-1:0] data_o,
@@ -102,16 +105,16 @@
end
end
end
- end else begin
+ end else begin: gen_nodatapath
assign data_o = '1;
// TODO: waive data_i from NOT_READ error
end
always_comb begin
- idx_o = '0;
+ idx_o = '0;
for (int i = 0 ; i < N ; i++) begin
if (winner[i]) begin
- idx_o = i;
+ idx_o = i[IdxW-1:0];
end
end
end
diff --git a/hw/ip/prim/rtl/prim_filter.sv b/hw/ip/prim/rtl/prim_filter.sv
index e582cce..214e0c3 100644
--- a/hw/ip/prim/rtl/prim_filter.sv
+++ b/hw/ip/prim/rtl/prim_filter.sv
@@ -20,6 +20,7 @@
logic [Cycles-1:0] stored_vector_q, stored_vector_d;
logic stored_value_q, update_stored_value;
+ logic unused_stored_vector_q_msb;
always_ff @(posedge clk_i or negedge rst_ni) begin
if (!rst_ni) begin
@@ -30,6 +31,7 @@
end
assign stored_vector_d = {stored_vector_q[Cycles-2:0],filter_i};
+ assign unused_stored_vector_q_msb = stored_vector_q[Cycles-1];
always_ff @(posedge clk_i or negedge rst_ni) begin
if (!rst_ni) begin