diff --git a/rtl/arbiter.v b/rtl/arbiter.v index 8b0443fd..3612fc45 100644 --- a/rtl/arbiter.v +++ b/rtl/arbiter.v @@ -97,12 +97,12 @@ always @* begin grant_encoded_next = 0; mask_next = mask_reg; - if (BLOCK == "REQUEST" && grant_reg & request) begin + if (BLOCK == "REQUEST" && |(grant_reg & request)) begin // granted request still asserted; hold it grant_valid_next = grant_valid_reg; grant_next = grant_reg; grant_encoded_next = grant_encoded_reg; - end else if (BLOCK == "ACKNOWLEDGE" && grant_valid && !(grant_reg & acknowledge)) begin + end else if (BLOCK == "ACKNOWLEDGE" && grant_valid && !(|(grant_reg & acknowledge))) begin // granted request not yet acknowledged; hold it grant_valid_next = grant_valid_reg; grant_next = grant_reg; diff --git a/rtl/priority_encoder.v b/rtl/priority_encoder.v index 73030630..6d7f31b5 100644 --- a/rtl/priority_encoder.v +++ b/rtl/priority_encoder.v @@ -71,6 +71,7 @@ generate priority_encoder_inst1 ( .input_unencoded(input_unencoded[W2-1:0]), .output_valid(valid1), + .output_unencoded(), .output_encoded(out1) ); priority_encoder #( @@ -80,6 +81,7 @@ generate priority_encoder_inst2 ( .input_unencoded({{W1-WIDTH{1'b0}}, input_unencoded[WIDTH-1:W2]}), .output_valid(valid2), + .output_unencoded(), .output_encoded(out2) ); // multiplexer to select part