Как включить модули vhdl в файл systemverilog

Я пытаюсь использовать два модуля vhdl в своем проекте systemverilog в vivado. (которые находятся в одном проекте)

Я попытался использовать ключевое слово include в начале, что не дало мне ошибок, но не удалось синтезировать, вот ошибка

[Synth 8-2715] синтаксическая ошибка около -- ["C:/Users/Batuhan/Desktop/fpga_VHDL_uart/Sonar_FPGA-master/src/MCU_UART_RX.vhd":1]

Строка, которую он показывает, является первой строкой файла vhdl, который просто

-----------------------------------------------------------------------------

Поэтому мне было интересно, как правильно включать другие модули


person Batuhan Tosyalı    schedule 23.07.2019    source источник
comment
Вы не можете просто включить файл VHDL в файл SystemVerilog. Вам нужно скомпилировать оба в независимые от языка объекты, а затем как-то их объединить.   -  person mkrieger1    schedule 23.07.2019
comment
Можете ли вы объяснить больше, пожалуйста? О том, как скомпилировать оба в независимые объекты.   -  person Batuhan Tosyalı    schedule 23.07.2019


Ответы (1)


Просто создайте их. Основываясь на вашем сообщении об ошибке, я предполагаю, что вы хотите добавить модуль MCU_UART_RX в свой тестовый стенд. Итак, если у вас есть модуль Foo

entity Foo is
    Port ( Clk     : in STD_LOGIC;
           DataIn  : in STD_LOGIC;
           DataOut : out STD_LOGIC
           );
end Foo;

вы можете добавить этот модуль в свой тестовый стенд System Verilog, написав

bit SimulationClock;
bit SimulationDataIn;
bit SimulationDataOut;

Foo DUT(
    .Clk(SimulationClock),
    .DataIn(SimulationDataIn),
    .DataOut(SimulationDataOut)
);

Наконец, это выглядит так
введите здесь описание изображения

person Kampi    schedule 23.07.2019
comment
Я думаю, вы имели в виду .DataOut в третьем порту. - person Serge; 24.07.2019
comment
Да. Извините за эту опечатку. Я починил это. - person Kampi; 24.07.2019