verilator reported the warning as following:
Operator VAR 'ADDR_Low' expects 32 bits on the Initial value, but Initial value's CONST '192'h200000020000000400000008000000080010000' generates 192 bits.
This has nothing to do with Verilog-Mode. Please use Verilator https://github.com/verilator/verilator/ instead. However to answer, use a pattern assignment ";{".
module tilelink_matrix
(parameter NUM_MASTER = 3, NUM_SLAVE = 6, ADDR_WIDTH =32, DATA_WIDTH=32, SRC_ID_WIDTH = 3,SIZE_WIDTH = 2, SINK_ID_WIDTH =3,
//--------------debug----//---CLIC----//periph port// sys port // TIM0 // TIM1
parameter integer ADDR_Low[0:NUM_SLAVE-1] = {32'h00000000, 32'h02000000, 32'h20000000, 32'h40000000, 32'h80000000, 32'h80008000}, //address high is upper boundary address +1; parameter integer ADDR_High[0:NUM_SLAVE-1] = {32'h00001000, 32'h03000000, 32'h30000000, 32'h50000000, 32'h80008000, 32'h80010000} ) ( input logic clk_i, input logic rst_n_i, ... )
verilator reported the warning as following: Operator VAR 'ADDR_Low' expects 32 bits on the Initial value, but Initial value's CONST '192'h200000020000000400000008000000080010000' generates 192 bits.