Глобальные декларации являются незаконными в синтаксисе Verilog 2001!

StackOverflow https://stackoverflow.com/questions/2674589

Вопрос

Я написал что-то маленькое в Verilog:

`define LW 6'b100011

`define SW 6'b101011

parameter [3:0]
    i_fetch = 4'b0001,
    decode_rr = 4'b0010,
    mem_addr = 4'b0100,
    alu_exec = 4'b1000;

И я получаю эту ошибку: Ошибка: test.v (5): (VLOG-2155) Глобальные декларации являются незаконными в синтаксисе Verilog 2001.

Что я делаю не так? Я использую Modelsim xe iii / стартер 6.4b - пользовательская версия Xilinx!

Это было полезно?

Решение

Твой parameter Заявление должно быть в модуле:

module a_module ();

  parameter a_parameter = 4;

endmodule

На самом деле, большинство вещей в Verilog должны быть в блоке модуля.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top