我有以下简单的测试用例:
library ieee;
use ieee.std_logic_1164.all;
entity top is
end top;
architecture top of top is
component foo
port (A : std_logic_vector(1 downto 0));
end component;
begin
inst : foo port map (A(1) => '0', A(0) => '0');
end top;
------------------------------------------------
library ieee;
use ieee.std_logic_1164.all;
entity foo is
port (A : std_logic_vector(1 downto 0));
end foo;
architecture foo of foo is
begin
end foo;
在此运行 modelsim 时,它运行良好。但是,当我使用选项“-87”运行 modelsim 时,它给了我错误, Error: top.vhd(13): (vcom-1451) Actual (enumeration literal '0') for formal "A" is not signal name.
我没有得到这个。这是 VHDL'87 中的一些非法 RTL 吗?
如果 VHDL'87 不支持这一点,那么将常量连接到实例引脚的正确方法是什么。