如何将 vhdl 模块包含到 systemverilog 文件中
How to include vhdl modules to systemverilog file
我正在尝试在 vivado 的 systemverilog 项目中使用两个 vhdl 模块。 (在同一个项目中)
我试过在开始时使用 include 关键字,没有出现任何错误,但是合成失败,这是错误
[Synth 8-2715] 附近的语法错误 -- ["C:/Users/Batuhan/Desktop/fpga_VHDL_uart/Sonar_FPGA-master/src/MCU_UART_RX.vhd":1]
显示的行是vhdl文件的第一行,也就是
-----------------------------------------------------------------------------
所以我想知道包含其他模块的正确方法是什么
简单地实例化它们。根据您的错误消息,我假设您想将 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)
);
最后变成这个样子
我正在尝试在 vivado 的 systemverilog 项目中使用两个 vhdl 模块。 (在同一个项目中)
我试过在开始时使用 include 关键字,没有出现任何错误,但是合成失败,这是错误
[Synth 8-2715] 附近的语法错误 -- ["C:/Users/Batuhan/Desktop/fpga_VHDL_uart/Sonar_FPGA-master/src/MCU_UART_RX.vhd":1]
显示的行是vhdl文件的第一行,也就是
-----------------------------------------------------------------------------
所以我想知道包含其他模块的正确方法是什么
简单地实例化它们。根据您的错误消息,我假设您想将 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)
);
最后变成这个样子