用于数组转换的伪代码

时间:2015-02-21 11:41:08

标签: arrays verilog

这个伪代码是否正确,可以在Verilog中将2D数组转换为1D:

wire [Width*Depth-1:0]One_D_array;
genvar i;
for (i=0; i<Depth; i=i+1) 
assign One_D_array[Width*i+Depth-1:Width*i] = A[i];

重新转换为数组:

wire [Width-1:0]local_2D_array[0:Depth-1];
integer i;
for (i=0;i<Depth;i=i+1) 
assign local_2D_array[i] = input[Width*i+Width-1:Width*i];

1 个答案:

答案 0 :(得分:0)

工作正常。第一个代码将使所有数组成员成为一系列。在代码的下一部分,即重构部分,我们将数据分成成员。它适用于任何宽度和任何深度。