9. Конечные автоматы

9.2. Возможности визуализации КА

Отображение графов в Modelsim/Questasim/Quartus

Многие современные инструменты работы с HDL умеют распознавать правильно описанные конечные автоматы и изображать по ним графы переходов. Далее будут рассмотрены следующие варианты, которые несложно использовать:

  •  VS Code + плагин Teros HDL
  • Modelsim/Questasim с дополнительными настройками
  • инструмент State Machine Viewer, встроенный в Quartus
VS Code + Plugin

Самый простой и быстрый инструмент — это редактор VS Code с установленным в нем расширением Teros HDL. Для визуализации конечного автомата необходимо нажать на соответствующую клавишу


Modelsim/Questasim

Распознавание конечного автомата в инструментах моделирования — это дополнительная возможность, поэтому требует использование скриптовых команд 

  • При компиляции файла необходимо добавить флаг +cover=f:

vcom -work work passwd_fsm.vhd +cover=f

В отчете компиляции появится следующее дополнительное сообщение:

# ** Note: (vcom-143) Recognized 1 FSM in architecture body "passwd_fsm(rtl)".

  • При запуске моделирования необходимо использовать флаг -fsmdebug:
vsim -fsmdebug work.passwd_fsm

В результате после запуска моделирования необходимо включить вкладку FSM через меню View, перейти на нее и лицезреть КА, найденные в коде. Нажав на один из них (в текущем случае на единственный) справа откроется диаграмма переходов