VHDL数组索引

VHDL数组索引,vhdl,Vhdl,我对数组索引有问题: 我宣布: type matriz_fc is array (0 to 3) of STD_LOGIC_VECTOR(3 downto 0); signal fils : matriz_fc; signal filp, filf : STD_LOGIC_VECTOR(3 downto 0); signal i_p, i_f: STD_LOGIC_VECTOR(1 downto 0); fils <= ("0001", "0010", "0100", "1000");

我对数组索引有问题: 我宣布:

type matriz_fc is array (0 to 3) of STD_LOGIC_VECTOR(3 downto 0);
signal fils : matriz_fc;
signal filp, filf : STD_LOGIC_VECTOR(3 downto 0);
signal i_p, i_f: STD_LOGIC_VECTOR(1 downto 0);
fils <= ("0001", "0010", "0100", "1000");
type matriz_fc是标准逻辑向量(3到0)的数组(0到3);
信号文件:matriz_fc;
信号filp,filf:标准逻辑向量(3到0);
信号i_p,i_f:标准逻辑向量(1到0);

fils我在Vivado 2019.1模拟器中运行了上面编写的代码,没有收到任何错误。检查下图中的输出。您正在使用的库中可能存在某些错误。始终使用数字标准,我也希望您在架构“开始”后编写此语句。
fils提供了一个新的解决方案。其中一个错误是由于在同一声明区域中有两个use子句使两个名为
未签名的声明可见而导致的。(结果不可见)。您可以删除其中一个use子句(我投票支持std_logic_arith,因为您使用包numeric_std中的to_integer函数)或使用所选名称(库和包名称作为后缀)。(实际上,请删除其中一个use子句。请参阅。当同时包含std_logic_arith和numeric_std包时,通常会发生此错误。std_logic_arith不是VHDL标准包,因此应删除。