У меня в цикле VHDL есть цикл for, который выдает ошибку modelsim: «Недопустимый параллельный оператор».
Моя архитектура VHDL имеет длину в несколько сотен строк, поэтому я просто покажу, что даетошибка:
for k in 0 to 19 loop
DATA_SERDES(k) <= DATA_SERDES_inv(19-k);
end loop;
Это работает, когда я заменяю цикл на:
DATA_SERDES(0) <= DATA_SERDES_inv(19);
DATA_SERDES(1) <= DATA_SERDES_inv(18);
DATA_SERDES(2) <= DATA_SERDES_inv(17);
DATA_SERDES(3) <= DATA_SERDES_inv(16);
DATA_SERDES(4) <= DATA_SERDES_inv(15);
DATA_SERDES(5) <= DATA_SERDES_inv(14);
DATA_SERDES(6) <= DATA_SERDES_inv(13);
DATA_SERDES(7) <= DATA_SERDES_inv(12);
DATA_SERDES(8) <= DATA_SERDES_inv(11);
DATA_SERDES(9) <= DATA_SERDES_inv(10);
DATA_SERDES(10) <= DATA_SERDES_inv(9);
DATA_SERDES(11) <= DATA_SERDES_inv(8);
DATA_SERDES(12) <= DATA_SERDES_inv(7);
DATA_SERDES(13) <= DATA_SERDES_inv(6);
DATA_SERDES(14) <= DATA_SERDES_inv(5);
DATA_SERDES(15) <= DATA_SERDES_inv(4);
DATA_SERDES(16) <= DATA_SERDES_inv(3);
DATA_SERDES(17) <= DATA_SERDES_inv(2);
DATA_SERDES(18) <= DATA_SERDES_inv(1);
DATA_SERDES(19) <= DATA_SERDES_inv(0);
Для меня оба объявления эквивалентны, но modelsim видит ошибку.У меня нет другой переменной "k" или любого другого цикла в архитектуре.Я использую VHDL 93 и компилирую с modelsim 10.4c
Есть идеи?
Спасибо,
SLP