Skip to content

Support modules which are never used with their default parameter values #470

Closed
@veripoolbot

Description

@veripoolbot

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.

Metadata

Metadata

Assignees

Labels

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions