Когда вы создаете Simulink® модель, которая включает один или несколько блоков HDL Verifier™ Cosimulation, можно хотеть настроить определенные настройки параметра Simulink, чтобы наилучшим образом удовлетворить потребности HDL- моделирования. Для примера можно хотеть настроить значение параметра Stop time на панели Solver диалогового окна Параметры конфигурации модели (Model Configuration Parameters).
Можно настроить параметры индивидуально или можно использовать шаблоны модели DSP System Toolbox™ Simulink, чтобы автоматически сконфигурировать окружение Simulink с рекомендованными настройками для моделирования цифровой обработки сигналов.
Параметр | Настройка по умолчанию |
---|---|
'SingleTaskRateTransMsg' | 'error' |
'Solver' | 'fixedstepdiscrete' |
'EnableMultiTasking' | 'off' |
'StartTime' | '0.0' |
'StopTime' | 'inf' |
'FixedStep' | 'auto' |
'SaveTime' | 'off' |
'SaveOutput' | 'off' |
'AlgebraicLoopMsg' | 'error' |
Настройки по умолчанию для SaveTime
и SaveOutput
повышение эффективности симуляции.
Для получения дополнительной информации о шаблонах модели DSP System Toolbox Simulink, смотрите документацию DSP System Toolbox.
Для определения доступного номера сокета используйте: ttcp -a
приглашение интерпретатора.
Чтобы проверить состояние соединения, на вкладке Modeling, в разделе Compile, нажмите Update Model. Если у вас есть ошибка в соединении, Simulink уведомит вас.
MATLAB® команда pingHdlSim
может также использоваться для проверки состояния соединения. Если возвращается значение -1, связь с Симулятором HDL отсутствует.
В целом, последний этап косимуляции - это запуск и тестирование вашей модели. Существуют некоторые шаги, о которых вы должны знать при изменении модели во время или между сеансами косимуляции. Можно запустить косимуляцию одним из трех способов:
Запустите Симулятор HDL и загрузите HDL- проекта. Для испытательного стенда косимуляции начните симуляцию сначала в Симулятор HDL. Затем в Simulink, на вкладке Simulation, нажмите Run. Simulink запускает модель и отображает любые ошибки, которые он обнаруживает. Можно чередовать Симулятор HDL и графические интерфейсы пользователя Simulink, чтобы контролировать результаты косимуляции.
Для косимуляции компонента сначала запустите симуляцию в Simulink, затем начните симуляцию в Симулятор HDL.
Можно задать «графический интерфейс пользователя» как значение свойства параметра запуска mode команды запуска HDL-симулятора HDL Verifier, но так как использование графического интерфейса пользователя является режимом по умолчанию для HDL Verifier, то не обязательно.
Выполнение сеанса косимуляции с помощью интерфейса командной строки позволяет вам взаимодействовать со Симулятором HDL во время косимуляции, что может быть полезно для отладки.
Чтобы использовать CLI, задайте «CLI» как значение свойства для параметра run mode команды run HDL Verifier Simulator.
Внимание
Закройте окно терминала путем ввода quit -f
в командной строке. Не закрывайте окно терминала, нажав «X» в правом верхнем углу. Это приводит к ошибке типа памяти из системы. Это не ошибка с HDL Verifier, а только то, как Симулятор HDL ведет себя в этом контексте.
Можно ввести CTRL + C, чтобы прервать и завершить симуляцию в HDL-симуляторе, но это действие также приводит к отображению ошибки типа памяти.
Выполнение сеанса косимуляции в пакетном режиме позволяет вам сохранить процесс в фоновом режиме, уменьшая потребность в памяти путем отключения графический интерфейс пользователя.
Чтобы использовать пакетный режим, задайте «Batch» как значение свойства для параметра run mode команды run HDL Verifier Simulator. После запуска команды HDL-симулятора HDL Verifier заданным пакетным режимом запустите симуляцию в Simulink. Чтобы остановить Симулятор HDL до завершения симуляции, выпустите breakHdlSim
команда.
Если вы хотите сбросить часы во время косимуляции, вы можете сделать это одним из следующих способов:
Путем ввода Симулятора HDL force
команды в командной строке Симулятора HDL
Путем определения Симулятора HDL force
команды в Post- simulation command текстовом поле на панели Simulation диалогового окна параметров блоков HDL Verifier Cosimulation.
См. также «Часы, сброс и включение сигналов».
Если вы измените какую-либо часть модели Simulink, включая параметры блоков HDL Cosimulation, обновите модель, чтобы отразить эти изменения. Это обновление можно выполнить одним из следующих способов:
Перезапустите симуляцию
На вкладке Modeling, в разделе Compile, нажмите Update Model.
Можно создать скрипт Tcl, в котором перечислены команды Tcl, которые необходимо выполнить на симуляторе HDL, до или после постсимуляции.
Tcl скрипты для пользователей ModelSim
Можно создать файл ModelSim DO, в котором перечислены команды Tcl, а затем указать этот файл с помощью do ModelSim
команду следующим образом:
do mycosimstartup.do
или
do mycosimcleanup.do
Можно включать quit -f
команда в после моделирования Tcl команды или DO файла, чтобы заставить ModelSim завершить работу в конце сеанса косимуляции. Задайте все команды Tcl после моделирования в одном блоке косимуляции и поместите quit
в конце командного файла или файла DO.
Кроме quit
Файл команды или DO, который вы задаете, не может включать команды, которые загружают проект ModelSim или изменяют состояние симулятора. Например, они не могут включать такие команды, как start
, stop
, или restart
.
Tcl скрипты для Incisive® Пользователи
Можно создать Симулятор HDL скрипт Tcl, в котором перечислены команды Tcl, а затем указать этот файл с Симулятором HDL source
команду следующим образом:
source mycosimstartup.script_extension
или
source mycosimcleanup.script_extension
Можно включать exit
команда в скрипт Tcl после симуляции, чтобы заставить Симулятор HDL завершить работу в конце сеанса косимуляции. Задайте все команды Tcl после моделирования в одном блоке косимуляции и поместите exit
в конце команды или Tcl скрипта.
Кроме exit
Заданная вами команда или скрипт Tcl не могут включать команды, которые загружают Симулятор HDL проект или изменяют состояние симулятора. Например, они не могут включать такие команды, как run
, stop
, или reset
.
Этот пример показывает скрипт Tcl, когда -gui
аргумент использовался с hdlsimmatlab
или hdlsimulink
:
after 1000 {ncsim -submit exit}
В этом примере показан скрипт выхода TCL, который используется, когда -tcl
аргумент использовался с hdlsimmatlab
или hdlsimulink
:
after 1000 {exit}
В симуляторе HDL вы не можете управлять порядком, в котором применяются тактовые сигналы (приподнимающий край или падающий край), заданные в блоке HDL Cosimulation, относительно входов данных, управляемых этими часами. Если вы осторожны, чтобы проверить связь между данными и активными ребрами часов, можно избежать условий гонки, которые могли бы создать различные результаты косимуляции. Смотрите Условия Гонки в Симуляторах HDL.