verilog代码注意事项

发布时间 2023-07-12 16:51:49作者: luckylan
  1. 对于二维数组,[CH-1:0] [AW-1-3:0] addr_tmp,如果想将数组中每一个数都低位补3个0,得到 [CH-1:0] [AW-1:0] addr,正确的操作是:
    integer i;
    always@(*) begin
        for (i=0;i<CH;i=i+1) begin
            adddr[i] = {addr_tmp[i],3;'b0};
        end
    end

    而不是 assign addr={addr_tmp,3'b0};//这种行为,只会对数组下标为0的数据低位补3个0,其他数据都保持不变。