【问题标题】:How do you initialize a parameter array in Verilog如何在 Verilog 中初始化参数数组
【发布时间】:2014-09-23 03:48:47
【问题描述】:

这给了我一个错误,说我无法将打包类型分配给未打包类型。我同意右边是一个打包类型的数组,但是为什么表达式的左边是一个未打包的类型呢?

parameter [7:0] lsfr_taps [0 : 7]   = {8'd9, 8'd5, 8'd3, 8'h21, 8'd9, 8'd9, 8'd5, 8'd9};

不管更重要的问题是如何在 Verilog 中初始化多位参数的二维数组?

【问题讨论】:

    标签: verilog


    【解决方案1】:

    您的初始化很好。您只需要在{ 之前添加一个'

    parameter [7:0] lsfr_taps [0 : 7]   = '{8'd9, 8'd5, 8'd3, 8'h21, 8'd9, 8'd9, 8'd5, 8'd9};
    

    【讨论】:

    • ' 是什么意思?还有,modelsim 不支持显示二维信号吗?它似乎编译得很好,但我无法在 modelsim 中显示它
    • 撇号用于数组字面量。我不知道 Modelsim 是否支持 Verilog 的二维数组。我通常使用 ISim 和 VHDL。
    • 如果使用 Cadence NCVerilog 进行模拟,从命令行运行模拟器时需要包含 +sv 开关。这是为了将包含参数定义的文件视为 SystemVerilog 文件
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-06-03
    • 2021-07-25
    • 2013-05-04
    • 1970-01-01
    相关资源
    最近更新 更多