Вы рассчитываете с помощью сигналов integer
, но вы можете установить IO-выводы только с типом std_logic
или несколькими из них, используя std_logic_vector
. Итак, где-то в вашей высшей сущности, которую вы нам не показали, есть конверсия между integer
и std_logic(_vector)
. Неявная функциональность отсутствует, вам необходимо привести к типу данных signed
или unsigned
, посмотрите здесь ( Руководство дизайнера Duolos VHDL ) для функций преобразования.
Полагаю, вы используете unsigned
значения, попробуйте использовать signed
в сущности верхнего уровня. То же самое для входных данных, вы не можете указать integer
с "01"
или "10"
, только с литералами, такими как 0, 1, 2, 3.