подписано в std_logic_vector, результаты среза
Мне нужно принять абсолютное значение результата, и меня интересуют только самые важные биты. Вот что я сделал:
data_ram_h <= std_logic_vector(abs(signed(resize(r4(calc_cnt - 2), data_ram_h'length) + r4(calc_cnt - 1) +
r4(calc_cnt) + r4(calc_cnt + 1) + r4(calc_cnt + 2) -
r2(calc_cnt - 2) - r2(calc_cnt - 1) - r2(calc_cnt) -
r2(calc_cnt + 1) - r2(calc_cnt + 2))))(11 downto 4);
Я пытаюсь проверить синтаксис, и я получаю эту ошибку:
type conversion std_logic_vector is not allowed as a prefix for an slice name.
data_ram_h является std_logic_vector правильного измерения, аабс Функция возвращает подпись, чтобы не было проблем при преобразовании в std_logic_vector. Используемая мной библиотека - это useieee.numeric_std.all.
Где я не прав? Заранее спасибо c: