Глобальные декларации являются незаконными в синтаксисе Verilog 2001!
Вопрос
Я написал что-то маленькое в 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 должны быть в блоке модуля.
Не связан с StackOverflow