Простой пример🔗
Общие сведения🔗
Пример содержит три сборочных варианта (СО) для трёх аппаратных платформ, являющихся отладочными платами Xilinx:
- 7A35T.
- 7A50T.
- AC701.
Все три СО одинаковы за исключением настроек, касающихся целевых плат – констрейны размещения, параметры тактирования – значение опорной тактовой частоты, дифференциальное подключение тактового генератора или нет, и т.д.
Исходный код примера доступен по по ссылке.
СОВЕТ
Данный пример демонстрирует возможности системы сборки непосредственным образом и может использоваться как шаблон для начала работы с рабочими проектами. Однако существует более развитый подход к организации сборочного процесса, и именно он рекомендуется как отправная точка.
Использование🔗
Запуск на сборку осуществляется с помощью команды scons [options] variant=<variant-name> [target]
из корневой директории проекта (там, где расположен файл SConstruct
) или из любого места дерева проекта при указанной опции -D
.
Примеры команд🔗
Показать справку по целям🔗
Создать проект Vivado🔗
Будет создан проект Vivado, предварительно сгенерированы IP ядра с последующим добавлением в проект.
Синтезировать проект для варианта 7A50T🔗
Открыть проект для варианта 7A35T🔗
Здесь попутно будут синтезированы IP ядра, т.к. после открытия проекта в Vivad можно сразу приступать к синтезу непосредственно проекта. Для выбора варианта тут используется аргумент bv
вместо variant
, они являются синонимами.
Компилировать рабочую библиотеку симулятора (цель по умолчанию)🔗
Цель по умолчанию wlib
, её указание можно опустить. По умолчанию выбрана эта цель, т.к. её запуск является самым частым – это быстрый и удобный способ проверить исходный HDL код на синтаксическую правильность, а так же компиляция рабочей библиотеки требуется при отладке в симуляторе.