vjm16
Junior Member level 2
bounds of part-select into are reversed modelsim
Hi all,
I have a piece of code as below. When Iam trying to simulate it in modelsim PE, it is giving me the following compilation errors.
Bounds of part-select into 'af_addr_r' are reversed.
My code is
localparam COL_WIDTH = `COLUMN_ADDRESS;
localparam ROW_WIDTH = `ROW_ADDRESS;
generate
if (COL_WIDTH == ROW_WIDTH-1) begin: gen_ddr_addr_col_0
assign ddr_addr_col = {af_addr_r[COL_WIDTH-1:10], 1'b0,
af_addr_r[9:0]};
end else begin
if (COL_WIDTH > 10) begin: gen_ddr_addr_col_1
assign ddr_addr_col = {{(ROW_WIDTH-COL_WIDTH-1){1'b0}},
af_addr_r[COL_WIDTH-1:10], 1'b0,
af_addr_r[9:0]};
end else begin: gen_ddr_addr_col_2
assign ddr_addr_col = {{(ROW_WIDTH-COL_WIDTH-1){1'b0}}, 1'b0,
af_addr_r[COL_WIDTH-1:0]};
end
end
endgenerate
Iam getting erros for only particular case. When rowaddress is 12 and column address is 10.
Thanks
vjm
Hi all,
I have a piece of code as below. When Iam trying to simulate it in modelsim PE, it is giving me the following compilation errors.
Bounds of part-select into 'af_addr_r' are reversed.
My code is
localparam COL_WIDTH = `COLUMN_ADDRESS;
localparam ROW_WIDTH = `ROW_ADDRESS;
generate
if (COL_WIDTH == ROW_WIDTH-1) begin: gen_ddr_addr_col_0
assign ddr_addr_col = {af_addr_r[COL_WIDTH-1:10], 1'b0,
af_addr_r[9:0]};
end else begin
if (COL_WIDTH > 10) begin: gen_ddr_addr_col_1
assign ddr_addr_col = {{(ROW_WIDTH-COL_WIDTH-1){1'b0}},
af_addr_r[COL_WIDTH-1:10], 1'b0,
af_addr_r[9:0]};
end else begin: gen_ddr_addr_col_2
assign ddr_addr_col = {{(ROW_WIDTH-COL_WIDTH-1){1'b0}}, 1'b0,
af_addr_r[COL_WIDTH-1:0]};
end
end
endgenerate
Iam getting erros for only particular case. When rowaddress is 12 and column address is 10.
Thanks
vjm