我有一个来自外部供应商的verilog模块。我想用VHDL包装它。
问题是verilog模块包含名称中包含相邻下划线的标识符。 VHDL似乎不允许这样做。当然,我可以将verilog模块包装到另一个verilog模块中,然后将其包装到VHDL模块中,但是有没有办法避免它?
我写了一个小例子来说明:
的Verilog:
module underscore (
test__in,
test__out
);
input test__in;
output test__out;
assign test__out = test__in;
endmodule
VHDL:
library IEEE;
use IEEE.std_logic_1164.all;
entity tb_underscore is
end entity;
architecture rtl of tb_underscore is
signal test_in: std_logic;
signal test_out: std_logic;
begin
i_underscore: entity work.underscore port map (
test__in => test_in,
test__out => test_out
);
end architecture;
由于相邻的下划线,VHDL代码无法编译。