# Создание нового проекта в Vivado

Для того, чтобы создать новый проект в Vivado для отладочного стенда Nexys A7, следуйте следующему порядку выполнения действий.

1. Запустите Vivado.
2. Нажмите `Create Project`.
3. В открывшемся окне нажмите `Next`.
4. Введите название проекта (без пробелов и кириллических символов) → Выберите папку для проекта → Установите селектор `Create project subdirectory` → Нажмите `Next`.
5. Выберите RTL Project → Установите селектор `Do not specify sources at this time` → Нажмите `Next`.
6. Выставьте следующие фильтры, чтобы сузить список ПЛИС:
   - Family: `Artix 7`
   - Package: `csg324`,
   - Speed: `-1`.

   На _рис. 1_ показано окно с примененными фильтрами.
7. В списке выберите ПЛИС `xc7a100tcsg324-1` (расположена в самом низу) → Нажмите `Next`.
8. Нажмите `Finish`

![../.pic/Vivado%20Basics/01.%20New%20project/fig_01.png](../.pic/Vivado%20Basics/01.%20New%20project/fig_01.png)

_Рисунок 1. Пример заполнения фильтров для выбора ПЛИС, используемой в Nexys A7._

После нажатия на `Finish`, откроется окно созданного проекта. Выполним его настройку. Для этого, в окне `Flow Navigator`, расположенном в левой части Vivado необходимо нажать на кнопку `Settings`.

## Настройки для нового проекта

### Настройка времени моделирования

В первую очередь, нам необходимо указать какое количество времени работы схемы будет моделироваться при запуске симуляции. Для этого, в группе `Project Settings` необходимо выбрать `Simulation`. В открывшейся странице выбрать вкладку `Simulation`, и в поле `xsim.simulate.runtime` указать значение `1s`. Это означает, что по умолчанию будет запускаться симуляция одной секунды времени работы схемы. На _рис. 2_. показан пример данной настройки. Пока что не закрывайте окно настроек.

![../.pic/Vivado%20Basics/01.%20New%20project/fig_02.png](../.pic/Vivado%20Basics/01.%20New%20project/fig_02.png)

_Рисунок 2. Пример настройки времени симуляции._

Одна секунда — это очень большое значение, на многие порядки превышающее время симуляции в большинстве лабораторных работ. Однако верификационное окружение во всех лабораторных будет досрочно останавливать моделирование. Установив подобное большое значение, мы избавимся от необходимости указывать нужное нам время симуляции при каждой симуляции: она просто будет идти, пока не остановится, но в случае, если верификационное окружение почему-то не остановит моделирование, мы будем знать, что оно остановится само по достижении времени в 1с.

## Настройки Vivado

### Настройки появления всплывающих окон

Выполним также настройку отображения всплывающих окон при запуске некоторых инструментов. Для этого необходимо перейти в `Window Behavior->Confirmations` в группе настроек, общей для всех проектов (Tool Settings) и снять выбор с опций, выделенных на _рисунке 3_ красными прямоугольниками.
Это позволит избавиться от назойливых всплывающих окон, на которых в большинстве случаев всегда нажимается кнопка "OK".

![../.pic/Vivado%20Basics/01.%20New%20project/fig_03.png](../.pic/Vivado%20Basics/01.%20New%20project/fig_03.jpg)

_Рисунок 3. Пример настройки появления всплывающих окон._

### Настройки автоматического дополнения кода

При работе в Vivado вам может показаться неудобной его встроенная функция автоматического дополнения кода. Пока она активна, Vivado пытается предложить подходящие ключевые слова в момент набора кода (см. _рисунок 4_).

![../.pic/Vivado%20Basics/01.%20New%20project/fig_04.jpg](../.pic/Vivado%20Basics/01.%20New%20project/fig_04.jpg)

_Рисунок 4. Пример включенной функции автодополнения._

В данной ситуации, нажатие на клавишу <kbd>Enter</kbd> не перенесет курсор на новую строку. Вместо этого, будет выбран активный вариант в списке дополнения и ключевое слово `end` будет дополнено до `endcase`. Чтобы список пропал, необходимо нажать на клавишу <kbd>ESC</kbd>, либо щелкнуть курсором где-либо вне данного списка.

Для того, чтобы отключить появление данного списка (или сделать так, чтобы он появлялся только по команде), необходимо в настройках Vivado перейти к разделу `Text Editor -> Code completion`. Вы можете выбрать один из трёх вариантов (см. _рисунок 5_):

1. `Display list of choices on demand` — список появится только когда вы нажмете <kbd>CTRL</kbd>+<kbd>Space</kbd>.
2. `Display list of choices as you type` — список будет появляться автоматически по мере набора кода.
3. `Disable code completion` — список не будет появляться никогда.

![../.pic/Vivado%20Basics/01.%20New%20project/fig_05.jpg](../.pic/Vivado%20Basics/01.%20New%20project/fig_05.jpg)

_Рисунок 5. Настройки раздела `Code completion`._

### Настройки шрифта

В группе настроек `Text Editor` вы также можете настроить и размер, цвет и шрифт, используемый текстовым редактором. Сделать это можно в разделе `Fonts and colors` (см. _рисунок 6_).

![../.pic/Vivado%20Basics/01.%20New%20project/fig_06.jpg](../.pic/Vivado%20Basics/01.%20New%20project/fig_06.jpg)

_Рисунок 6. Настройки раздела `Fonts and colors`._

На этом создание и настройка проекта завершена.
