Вопрос

Я пытался скомпилировать код

module counter(
    input clk,
    input upSignal,
    input downSignal,
    output [7:0] count
   );
        always_ff @(posedge clk) begin
          if (upSignal)
              count <= count + 1;
          else if (downSignal)
              count <= count - 1;
        end
    endmodule

но я получаю ошибку

Error (10170): Verilog HDL syntax error at counter.v(7) near text "@"; expecting ".", or "("

что это значит?

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

Решение

Квартиус поддерживает некоторое системное систему. Смотрите эту ссылку для деталей>Квартусная помощь

Для квартала для автоматического распознавания того, что вы используете систему Verilog, вам нужно позвонить в файл что-нибудь .sv

Так что в этом случае, вероятно, Counter.sv.

Если ваш файл называется Counter.v., Тогда вы получите ошибку. Я могу подтвердить, что действительно скомпилируется с помощью Quartus II v10.0.

Я бы порекомендовал изменение вашего модуля выходного порта в REG, квартал не жаловался, но симулятор будет.

output reg [7:0] count

Дайте нам знать, как вы продолжаете.

Ваше здоровье

Другие советы

Я думаю, что Джордж прав (Здравствуйте, Джордж! Хотите видеть вас здесь), файл интерпретируется как verilog (не systemverilog), и поэтому он не понимает всегда_ff.

На типе выходного значения я предпочитаю использование логики в SystemVerilog. Его эффект идентичен, но он уходит от «его объявленного« Рег », поэтому это мышление реестра, которое может уловить людей.

Кроме того, причина, по которой вы получили это конкретное сообщение об ошибке, заключалось в том, что он не знал, что всегда_ff было, он предполагал, что это было название модуля / интерфейса / функции. Модуль может иметь карту портов, которая может начать с «.», И все остальное понадобится открытый кронштейн.

Еще одна проблема с этим кодом.

Переменная count назначается из процедурного блока (always_ff), поэтому переменную count необходимо объявить как тип переменной, обычно логический тип для этого кода SystemVerilog.Декларация должна включать:выход логика [7:0] кол-во

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