Я пытался обойти это и потерпел неудачу. Как ни странно, точно такой же код в другом файле моего проекта выглядит нормально, и я использую те же библиотеки. Что не так?
Строка кода (и генерация внутри нее)
generate_decounter_ppl: for i in 0 to ppl - 1 generate
block_decounter_load(i) <= (ppl_stage_count = conv_std_logic_vector((i),log2(ppl)));
Ошибка:
Line 175: found '0' definitions of operator "=", cannot determine exact overloaded matching definition for "="
Контекст:
ppl : integer := 18;
ppl_stage_count : in std_logic_vector(log2(ppl)-1 downto 0);
signal block_decounter_load : std_logic_vector(ppl -1 downto 0);
library IEEE;
use IEEE.STD_LOGIC_1164.ALL;
use IEEE.STD_LOGIC_ARITH.ALL;
use IEEE.STD_LOGIC_UNSIGNED.ALL;
use IEEE.STD_LOGIC_ARITH.ALL; use IEEE.STD_LOGIC_UNSIGNED.ALL;
ваша самая большая проблема. Это нестандартные пакеты. Вместо этого используйтеieee.numeric_std.all
. - person wjl   schedule 21.02.2014