Files
APS/Vivado Basics/Run Simulation.md
2024-01-31 18:52:18 +03:00

36 lines
5.2 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# Как запустить симуляцию в Vivado
Симуляция — это один из видов моделирования. Моделирование используется чтобы проверки поведения разработанного устройства. Для этого, на входные сигналы подаются тестовые воздействия, а с выходных считывается результат. Параллельно этому процессу, те же самые тестовые воздействия отправляются и в эталонную модель устройства. Результат модели сверяют с результатом проектируемого устройства и, в случае расхождения, сигнализируют об ошибке.
Генерация тестовых воздействий, подача их на верифицируемое устройство и модель, сверка результатов и логирование ошибок — все это выполняется средствами верификационного окружения, которое в рамках данных лабораторных работ будет именоваться как "тестбенч". Тестбенчи — это несинтезируемые модули, поэтому они не должны находиться в папке `Design Sources`, вместо этого для них есть папка `Simulation Sources` (см. ["Окно исходников проекта Vivado"](./How%20to%20use%20Source%20Window.md)).
Для каждого верифицируемого модуля в репозитории есть отдельный тестбенч. Перед запуском моделирования, необходимо убедиться, что в качестве модуля верхнего уровня в папке `Simulation Sources` выбран тестбенч того модуля, который вы собираетесь верифицировать.
Есть несколько способов запустить симуляцию, рассмотрим два из них:
1. На панели слева, в разделе `SIMULATION`, нажать `Run Simulation``Run Behavioral Simulation`.
![../.pic/Vivado%20Basics/Run%20Simulation/fig_1.png](../.pic/Vivado%20Basics/Run%20Simulation/fig_1.png)
_Рисунок 1. Запуск симуляции через вкладку `SIMULATION` окна `Flow Navigator`._
2. В иерархии проекта нажать по папке `sim_1` правой кнопкой мыши, далее выбрать `Run Simulation``Run Behavioral Simulation`.
![../.pic/Vivado%20Basics/Run%20Simulation/fig_2.png](../.pic/Vivado%20Basics/Run%20Simulation/fig_2.png)
_Рисунок 2. Запуск симуляции через контекстное меню папки `sim_1` в `Simulation Sources`._
После запуска симуляции будет отмоделировано определенное количество времени, задаваемое через настройки проекта, после чего моделирование приостанавливается. Если этого времени не хватает для прохождения всех этапов симуляции (если в `Tcl Console` вы не видите сообщение о завершении моделирования), необходимо нажать кнопку `▶` (`Run all`) на панели инструментов появившегося окна `SIMULATION` (либо нажать горячую клавишу `F3`).
В случае, если вы изменили исходный код какого-то из модулей, симуляцию можно перезапустить тем же способом, которым вы запустили её в первый раз, либо нажав кнопку `Relaunch Simulation`.
В случае, не меняли исходный код, но хотите промоделировать модуль заново, вы можете воспользоваться кнопкой `Restart` (`|◀`). В этом случае, вы избежите повторной компиляции модулей.
Для закрытия симуляции вы можете кликнуть на крестик окна `SIMULATION` (бирюзовое), либо нажать правой кнопкой мыши по `SIMULATION` и выбрать `Close Simulation`.
![../.pic/Vivado%20Basics/Run%20Simulation/fig_3.png](../.pic/Vivado%20Basics/Run%20Simulation/fig_3.png)
_Рисунок 3. Закрытие симуляции через окно `Flow Navigator`._
> Если вы изменили модуль верхнего уровня в `Simulation Sources`, вам необходимо закрыть текущую симуляцию. Без этого новая не сможет запуститься и будет выдавать ошибку "boost filesystem remove: Процесс не может получить доступ к файлу".