可以说我有一个看起来像这样的实体:
constant NULL_PORT : std_logic_vector(1 to 0);
entity some_verification_ip is
port (
write_port : in std_logic_vector := NULL_PORT;
read_port : out std_logic_vector -- Sized on connection
);
在一个测试中,用户的DUT仅读取,因此仅连接了读取端口,并且写入端口的大小从默认分配更改为NULL_PORT常量。
在另一个测试中,用户的DUT仅写入,并且仅连接写入端口,但是由于read_port的大小不正确,因此会出现详细说明错误。因此,为了避免此错误,用户随后需要在测试台中使用一个dummy_signal(未使用)。
您不能对输出进行:=赋值,因为这是一个初始值,并且由于NULL_PORT宽度与用户的端口连接不匹配而导致端口连接时出现详细说明错误。
测试台中的虚拟信号是获取尺寸的唯一方法吗? VHDL 2018会发生变化吗?
注意:实际上,我的验证IP是AXI4内存模型,在设计中,不同部分处理读写操作,因此并非所有测试都需要各种通道,而涵盖读取和写入的大规模测试则需要各种通道。写。