在stim中将std_logic_vector报告为无符号整数?

时间:2015-08-06 13:45:25

标签: vhdl xilinx xilinx-ise

这是我使用的图书馆:

library IEEE;
use IEEE.STD_LOGIC_1164.all;
use IEEE.NUMERIC_STD.ALL;
use IEEE.STD_LOGIC_UNSIGNED.ALL;

信号:

signal CountTemp : std_logic_vector(15 downto 0);

和报告声明:

report "Actual CountTemp: " & integer'image(to_integer(unsigned(CountTemp)));

我收到了这个错误:

 at 30 ns, Instance /TESTFILE_tb/ : Warning: NUMERIC_STD.TO_INTEGER: metavalue detected, returning 0

1 个答案:

答案 0 :(得分:1)

包含metavalue detected的错误意味着您传入了一个参数(在本例中为unsigned(CountTemp)),该参数包含状态不是01的位。

尝试初始化您的计数器:

signal CountTemp : std_logic_vector(15 downto 0) := (others => '0');

由于没有这个,CountTemp的值将是"UUUUUUUUUUUUUUUU",即元值。

或者,在将信号传递给to_integer之前,请确保您已为信号指定了一些内容。