Перейти к содержанию
    

Questasim 6.3

Приветствую!

 

Сегодня попробовал промоделировать модуль, который нормально работал с Questasim/Modelsim начиная с версии 6.0 и выше. Обнаружилась проблема - корректно транслируемый код (ни одного предупреждения) работает совершенно некорректно, а именно не функционирует сдвиговый регистр следующего вида:

 

    
    STAGES:
    process( CLK )
    begin
        if rising_edge(CLK) then
            iINPUT_SYNC_STAGE <= DIN;
            iSTAGES <= iSTAGES(0) & iINPUT_SYNC_STAGE;
        end if;
    end process;

 

iSTAGES - массив размером 2, начальное заполнение - '1'. Симптомы такие: при изменении входа DIN из '1' в '0' происходит один сдвиг, т.к. значение iSTAGES становится равным "10" и на этом процесс останавливается. Если изменить DIN обратно из '0' в '1', то происходит еще два сдвига, при этом iSTAGES проходит через значение "00" и остается равным "01". Т.е. сдвиговый регистр не работает.

 

Методом проб и ошибок было установлено, что если вместо iSTAGES(0) задать iSTAGES(0 downto 0), то все функционирует нормально, но ведь раньше работало и без таких извращений!

Кто тут неправ: я или новый QuestaSim?

 

PS: Код примера в приложении.

test_sync.rar

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Я vhdl не знаю. у меня вот так работает.

signal iSTAGES : std_logic_vector(1 downto 0) := (others => INIT);

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Я vhdl не знаю. у меня вот так работает.

signal iSTAGES : std_logic_vector(1 downto 0) := (others => INIT);

 

В какой версии работает?

Дело в том, что этот вариант точно так же не работает в версии 6.3. :(

 

 

Только что попробовал этот пример в 6.2h - превосходно работает.

Интересно, что они такое в 6.3 сломали, что такой примитив начал вести себя подобным образом? :07:

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Вышел QuestaSim 6.3a - в нем вышеописанной проблемы нет. Исправили.

Ощущения пока сугубо положительные. :)

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.

Гость
К сожалению, ваш контент содержит запрещённые слова. Пожалуйста, отредактируйте контент, чтобы удалить выделенные ниже слова.
Ответить в этой теме...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

×
×
  • Создать...