0
我有被限定成陣列的列表:陣列
bit [2:0] Param1[8];
.
.
bit [2:0] Param16[8];
我想以創建這些陣列的列表,以iterarte超過它們:
bit [2:0] array[16][8] = {Param1, Param2 ... Param16};
但是當我嘗試向該數組中的每個數組寫入3位長的位,結果是錯誤的。我錯過了什麼?
我有被限定成陣列的列表:陣列
bit [2:0] Param1[8];
.
.
bit [2:0] Param16[8];
我想以創建這些陣列的列表,以iterarte超過它們:
bit [2:0] array[16][8] = {Param1, Param2 ... Param16};
但是當我嘗試向該數組中的每個數組寫入3位長的位,結果是錯誤的。我錯過了什麼?
您必須遍歷多維數組才能爲其分配值。因爲它有以下到的問題
下面的代碼將無法正常工作:
下面的代碼可能有助於實現您想要的功能:
module test();
bit [2:0] Param1[8];
bit [2:0] Param2[8];
bit [2:0] Param3[8];
bit [2:0] Param4[8];
bit [2:0] Param5[8];
bit [2:0] Param6[8];
int i=0;
int j=0;
bit [2:0] array [8][6];
initial begin
array[0][0] = 'd1;
array[0][1] = 'd1;
array[0][2] = 'd1;
foreach(array[i,j])
$display("array[%0d][%0d] = %0d",i,j,array[i][j]);
for(i=0;i<6;i++)
array[0][i] = Param1[i];
foreach(array[i,j])
$display("array[%0d][%0d] = %0d",i,j,array[i][j]);
end
endmodule
請找到運行代碼here的鏈接。
在這種情況下,您認爲索引的無效順序。我想你的意思是說'bit [2:0]數組[8] [16]' – Serge
你需要用你得到的結果來澄清你期待的結果。 –