Closed
Description
Author Name: Alex Solomatnikov
Original Redmine Issue: 470 from https://www.veripool.org
Original Date: 2012-03-24
Original Assignee: Wilson Snyder (@wsnyder)
Code:
module test_inst (
clk,
reset_n,
dout
);
parameter MEM_DQ_WIDTH = "";
parameter MEM_READ_DQS_WIDTH = "";
localparam NUMBER_OF_READ_DQ_PER_DQS = MEM_DQ_WIDTH / MEM_READ_DQS_WIDTH;
input clk;
input reset_n;
output dout;
wire [NUMBER_OF_READ_DQ_PER_DQS - 1:0] error_word;
wire [NUMBER_OF_READ_DQ_PER_DQS - 1:0] processed_error_word;
genvar rank;
generate
for(rank = 0; rank < NUMBER_OF_READ_DQ_PER_DQS; rank = rank + 1)
begin: error_word_gen
assign processed_error_word[rank] = (error_word[rank] !== 1'b0);
end
endgenerate
endmodule
module test (
input wire clk,
input wire reset
);
test_inst #(
.MEM_DQ_WIDTH (72),
.MEM_READ_DQS_WIDTH (9)
) u_test_inst (
.clk (clk),
.reset_n (~reset),
.dout ()
);
endmodule
error:
verilator -sp -Wno-fatal --top-module test test.v
%Warning-WIDTH: test.v:22: Operator LT expects 32 bits on the RHS, but RHS's VARREF 'NUMBER_OF_READ_DQ_PER_DQS' generates 1 bits.
%Warning-WIDTH: Use "/* verilator lint_off WIDTH */" and lint_on around source to disable this message.
%Error: test.v:22: Unsupported: Can't unroll generate for; init/final/increment too large or four state
%Error: test.v:22: For loop doesn't have genvar index, or is malformed
%Error: test.v:22: Unsupported: Can't unroll generate for; init/final/increment too large or four state
%Error: test.v:22: For loop doesn't have genvar index, or is malformed
%Error: Exiting due to 4 error(s)
%Error: Command Failed /tools/verilator/verilator-3.832/bin/verilator_bin -sp -Wno-fatal --top-module test test.v
VCS compiles this code without complaints.