Как инициализировать массив параметров в Verilog?

Как можно инициализировать массив типов параметров в verilog, где каждый из членов представляет собой 32-разрядные шестнадцатеричные числа записи? Я пробовал следующее, но это дает мне синтаксическую ошибку.

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

Я использую последнюю версию iverilog для компиляции.

1 ответ

Решение

На 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 не работает или недоступна для вашего симулятора, я предлагаю включить в вопрос синтаксическую ошибку.

Другие вопросы по тегам