2014-10-10 82 views
0

如何在verilog中初始化參數類型數組,其中每個成員都是32位十六進制表示法數? 我試過以下,但它給我語法錯誤。如何在verilog中初始化參數數組?

parameter [31:0] k[0:63] = {32'habc132, 32'hba324f, ...}; 

我正在使用最新版本的iverilog進行編譯。

+1

[Verilog中的參數數組]可能重複(http://stackoverflow.com/questions/23507629/parameter-array-in-verilog) – Greg 2014-10-10 15:04:38

+0

@Greg不,因爲這不起作用。 – 2014-10-10 17:05:11

+2

Verilog-1995不支持排列參數。 Verilog-2005的確如此,但它對於多維參數數組並不清楚,它應該支持它。所有版本的SystemVerilog都支持它,有些需要''{}'來定義數組。 – Greg 2014-10-10 21:33:41

回答

3

EDA Plyground以下示例在使用的ModelSim 10.1,該文件有一個.sv擴展,導致它被解釋爲SystemVerilog的:

module test; 
parameter [31:0] k [0:1] = {32'habc132, 32'hba324f}; 

    initial begin 
    $displayh(k[0]); 
    $displayh(k[1]); 
    end 
endmodule 

如果設置的SystemVerilog不工作或者是不適用於您模擬器我建議在問題中包括語法錯誤。