Ошибка с целочисленным сигналом VHDL, соединяющим целочисленный вход Verilog - PullRequest
0 голосов
/ 23 сентября 2019

Я пытаюсь подключить выходной целочисленный порт модуля VHDL к сигналу.И этот сигнал подключит другой модуль.(Этот модуль написан на Verilog).Но я сталкиваюсь с этим

ОШИБКА: целочисленный тип данных VHDL не поддерживается для реальных сигналов в экземплярах компонентов через границы языка.Порт "fifo4_frame_number" является целочисленным сигналом VHDL, подключенным к порту Verilog.

Я также должен сказать, что я могу генерировать поток битов.нет проблем.

Ответы [ 2 ]

1 голос
/ 23 сентября 2019

Целое число в VHDL принципиально отличается от целого числа в Verilog, поэтому неудивительно, что они не совместимы.Тип integer в VHDL подобен целочисленному типу в любом другом языке, тогда как тип integer в Verilog - это просто сокращение для вектора.Это

integer i;

и

reg signed [31:0] i;

в Verilog в точности эквивалентны.Как уже говорили другие, вам нужно конвертировать в std_logic_vector в VHDL.

0 голосов
/ 23 сентября 2019

Вы должны преобразовать целое число в logic_vector в вашем VHDL-файле, чтобы порты имели одинаковый тип.Порты не могут быть целочисленного типа на обоих языках

...