当具有结构类型的SystemVerilog文件实例化具有记录类型端口的VHDL时,给出了Vivado综合 – “错误:[Synth 8-26]”-Xilinx-AMD社区-FPGA CPLD-ChipDebug

当具有结构类型的SystemVerilog文件实例化具有记录类型端口的VHDL时,给出了Vivado综合 – “错误:[Synth 8-26]”

描述

当SystemVerilog文件中的结构类型信号连接到VHDL子模块的记录类型的端口时,Vivado Synthesis会出现以下错误。

错误:[Synth 8-26] vhdl实体的verilog实例化,未实现复杂端口类型​​[xxx / top.sv:17]

以下是此案例的示例代码。

SystemVerilog(顶层模块):
import verilog_package :: *;
模块顶部(in1,in2,out1,out2);
……
verType temp; // verType是一个结构
……
bottom u0(.in1(temp),. out1(out1),. out2(out2));
endmodule
VHDL(子模块):

库工作;
使用work.vhdl_package.all;
实体底部是港口(
in1:in vhdlType; –vhdlType是一条记录
out1:out std_logic_vector(4 downto 0);
out2:out std_logic);
底部;
底部的建筑beh
开始
out1 <= in1.a;
out2 <= in1.b;
结束

虽然SystemVerilog结构类型和VHDL记录类型实际上匹配,但目前不支持这种编码样式。

这将在将来的版本中得到支持。
请登录后发表评论

    没有回复内容