Сгенерируйте код и синтезируйте на FPGA, используя HDL Workflow Advisor

HDL Workflow Advisor проведёт вас через этапы генерации HDL-кода для Simulink® подсистема и процесс проекта FPGA, такие как:

  • Проверка модели на совместимость генерации HDL-кода и автоматическое исправление несовместимых настроек.

  • Генерация HDL-кода, испытательного стенда и скриптов для создания и запуска кода и испытательного стенда.

  • Генерация косимуляции или испытательных стендов DPI SystemVerilog и покрытия кода (требует HDL Verifier™).

  • Синтез и анализ времени путем интегрирования с сторонними инструментами синтеза.

  • Обратная аннотация модели с информацией о критическом пути и другой информацией, полученной во время синтеза.

  • Полные автоматизированные рабочие процессы для выбранных целевых устройств разработки FPGA, включая симуляцию FPGA в цикле (требует HDL Verifier) и рабочий процесс ввода-вывода Simulink Real-Time™ FPGA.

Модель конечной импульсной характеристики

Этот пример иллюстрирует, как можно сгенерировать HDL-код для модели конечной импульсной характеристики и синтезировать проект на устройстве FPGA. Прежде чем вы сгенерируете HDL-код, модель должна быть совместима с генерацией HDL-кода. Чтобы проверить и обновить свою модель на совместимость с HDL, смотрите Проверку совместимости HDL модели Simulink с использованием HDL-код Advisor.

В этом примере используется модель Symmetric конечной импульсной характеристики, которая совместима с генерацией HDL-кода. Чтобы открыть эту модель в командной строке, введите:

sfir_fixed

Модель использует деление труда, которая подходит для HDL- проекта.

  • The symmetric_fir подсистема, реализующая алгоритм фильтра, является тестируемым устройством (DUT). Из этой подсистемы генерируется сущность HDL.

  • Компоненты модели верхнего уровня, которые управляют подсистемой, работают как испытательный стенд.

Модель верхнего уровня генерирует 16-битные входные сигналы с фиксированной точкой для symmetric_fir подсистема. Блок Рабочая область Signal From генерирует тестовое воздействие (стимулирующий) сигнал для фильтра. Четыре блока Constant обеспечивают коэффициенты фильтра. Блоки Scope используются для симуляции и не используются для генерации HDL-кода.

Для перехода к symmetric_fir подсистема, введите:

open_system('sfir_fixed/symmetric_fir')

Symmetric FIR filter algorithm.

Создайте папку и скопируйте соответствующие файлы

В MATLAB®:

  1. Создайте папку с именем sl_hdlcoder_work, для примера:

    mkdir C:\work\sl_hdlcoder_work
    

    sl_hdlcoder_work хранит локальную копию модели примера и папки и сгенерированный HDL-код. Используйте папку, которая не находится в дереве папок MATLAB.

  2. Сделайте sl_hdlcoder_work папка в рабочей папке, например:

    cd C:\work\sl_hdlcoder_work
  3. Сохраните локальную копию sfir_fixed моделируйте в текущую рабочую папку. Оставьте модель открытой.

Настройка пути инструмента

Если вы не хотите синтезировать свой проект, но хотите сгенерировать HDL-код, вам не нужно настраивать путь инструмента. В HDL Workflow Advisor на шаге Set Target > Set Target Device and Synthesis Tool оставьте значение Synthesis tool по умолчанию No Synthesis Tool Specified, а затем запустите рабочий процесс.

Если необходимо синтезировать проект на целевой платформе, прежде чем открыть HDL Workflow Advisor и запустить рабочий процесс, настройте путь к инструменту синтеза. Этот пример использует Xilinx® Vivado®, так что вы, должно быть, уже установили Xilinx Vivado. Чтобы задать путь инструмента, используйте hdlsetuptoolpath функция для указания на установленный исполняемый файл Xilinx Vivado 2019.2. Вы также можете использовать другой инструмент синтеза по своему выбору и следовать этому примеру. Чтобы задать путь к этому инструменту синтеза, используйте hdlsetuptoolpath. Сведения о новейших поддерживаемых инструментах см. в разделах Поддержка языка HDL и Поддерживать Сторонних программах и оборудование.

hdlsetuptoolpath('ToolName','Xilinx Vivado','ToolPath',...
 'C:\Xilinx\Vivado\2019.1\bin\vivado.bat');

Откройте HDL Workflow Advisor

Чтобы запустить HDL Workflow Advisor из модели Simulink,

  1. На вкладке Apps выберите HDL Coder. Появится вкладка HDL Code.

  2. Выберите Подсистему DUT в модели и убедитесь, что это имя Subsystem появится в опции Code for. Чтобы запомнить выбор, можно закрепить эту опцию. Нажмите Workflow Advisor.

Когда вы открываете HDL Workflow Advisor, генератор кода может предупредить, что папка проекта несовместима. Чтобы открыть Advisor, выберите Remove slprj and continue.

В HDL Workflow Advisor на левой панели перечислены папки в иерархии. Каждая папка представляет группу или категорию связанных задач. На левой панели можно выбрать папку или отдельную задачу. HDL Workflow Advisor отображает информацию о выбранной папке или задаче на правой панели.

Чтобы узнать больше о каждой отдельной задаче, щелкните правой кнопкой мыши эту задачу и выберите What's This?.

Дополнительные сведения о окне HDL Workflow Advisor см. в разделе Начало работы с HDL Advisor.

Сгенерируйте HDL-код и синтезируйте на FPGA

  1. На шаге Set Target > Set Target Device and Synthesis Tool, для Synthesis tool, выберите Xilinx Vivado и выберите Run This Task.

  2. Чтобы сгенерировать код, щелкните правой кнопкой мыши Generate RTL Code and Testbench задачу и выберите Run to Selected Task.

  3. В FPGA Synthesis and Analysis Perform Synthesis and P/R > Run Implementation > Skip this task очистите и нажмите Apply.

  4. Щелкните правой кнопкой мыши по Annotate Model with Synthesis Result и выберите Запуск для выбранной задачи.

    Highlighted critical path in symmetric FIR filter model.

Запуск рабочего процесса в командной строке с помощью скрипта

Чтобы запустить HDL- рабочего процесса в командной строке, можно экспортировать настройки Рабочего процесса Advisor в скрипт. Чтобы экспортировать в скрипт, в окне HDL Workflow Advisor выберите File > Export to Script. В диалоговом окне Export Workflow Configuration введите имя файла и сохраните скрипт.

Скрипт является файлом MATLAB, который можно запустить из командной строки. Можно изменить скрипт непосредственно или, импортировать скрипт в HDL Workflow Advisor, изменить задачи и экспортировать обновленный скрипт. Дополнительные сведения см. в разделе Запуск рабочего процесса HDL со скриптом.

См. также

|

Похожие темы

Для просмотра документации необходимо авторизоваться на сайте