Сгенерируйте HDL-код из модели Simulink

В этом примере показано, как можно сгенерировать HDL-код для простого Counter модель. Модель является простым суммирующим счетчиком, который подсчитывает от нуля до порогового значения и затем переносится назад, чтобы обнулить. Прежде чем вы сгенерируете HDL-код для этой модели, рекомендуется, чтобы вы проверили совместимость HDL своей модели при помощи Средства проверки Модели HDL. Учиться как:

По умолчанию HDL Coder™ создает hdlsrc папка в текущей рабочей папке, чтобы сгенерировать файлы HDL. Поэтому, прежде чем вы продолжаете генерировать HDL-код, убедитесь, что ваша текущая рабочая папка writeable.

Простая модель суммирующего счетчика

Откройте эту модель, чтобы видеть простой суммирующий счетчик. Модель подсчитывает от нуля до порогового значения и затем переносится назад, чтобы обнулить. В этой модели пороговое значение установлено в 15. Можно изменить пороговое значение путем изменения значения блока Constant, который вводится к count_threshold порт. Разрешать сигнал задает, должен ли счетчик подсчитать или содержать предыдущее значение. Разрешать сигнал установлен в 1 что означает, что счетчик рассчитывает вверх постоянно.

open_system('hdlcoder_simple_up_counter.slx')
set_param('hdlcoder_simple_up_counter', 'SimulationCommand', 'Update')

Сгенерируйте HDL-код

Чтобы сгенерировать код, вы используете вкладку HDL Code в, Чтобы открыть Средство проверки Модели HDL, Выбрать DUT Subsystem и затем нажать HDL Code Advisor.

Для модели суммирующего счетчика Подсистема HDL_DUT является DUT. Сгенерировать код для DUT:

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

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

По умолчанию HDL Coder генерирует код VHDL в целевом hdlsrc папка.

Если вы хотите сгенерировать код Verilog, можно задать эту установку в панели HDL Code Generation диалогового окна Configuration Parameters. Прежде чем вы сгенерируете код, можно также настроить настройки уровня модели для проекта те, которые включают нативную поддержку с плавающей точкой, генерируют ресурс и отчеты трассируемости, используют оптимизацию уровня модели и изменяют другие глобальные настройки.

Сгенерировать код Verilog для встречной модели:

  1. Во вкладке HDL Code нажмите Settings.

  2. В панели HDL Code Generation, для Language, выбирают Verilog. Оставьте другие настройки значению по умолчанию. Нажмите Apply и затем нажмите Generate.

HDL Coder компилирует модель прежде, чем сгенерировать код. В зависимости от параметров отображения модели, таких как типы данных порта, модель может изменение внешности после генерации кода. В то время как генерация кода продолжает, HDL Coder отображает сообщения о ходе выполнения в командной строке MATLAB® с:

  • Соединитесь с Конфигурацией модели, которая указывает на модель, для которой применяются Параметры конфигурации.

  • Ссылки на сгенерированные файлы. Чтобы просмотреть файлы в редакторе MATLAB, щелкните по ссылкам.

Процесс завершается с сообщением:

### HDL Code Generation Complete.

Просмотрите файлы генерации HDL-кода

Значок папки для hdlsrc папка теперь отображается в Браузере текущей папки. Чтобы просмотреть сгенерированный код и файлы скрипта, дважды кликните hdlsrc значок папки. В папке вы видите, что файл содержит код VHDL или Verilog, скрипт, чтобы скомпилировать сгенерированный код, скрипт синтеза и файл отображения. Например, если вы сгенерированный код для symmetric_fir Подсистема, вы видите эти файлы в hdlsrc папка:

  • HDL_DUT.vhd: Этот файл является кодом VHDL®, который содержит определение сущности и архитектуру RTL, реализующую суммирующий счетчик, который вы спроектировали.

    Примечание

    Если вы сгенерировали код Verilog, вы получаете HDL_DUT.v файл.

  • HDL_DUT_compile.do: Наставник скрипт компиляции Graphics® ModelSim®. Чтобы вызвать этот скрипт и скомпилировать сгенерированный код VHDL, вы используете vcom команда.

  • HDL_DUT_synplify.tcl: Этот файл является синтезом Synplify® скрипт TCL.

  • HDL_DUT_map.txt: Этот файл отчета является файлом отображения, который сгенерировал сущности или модули к подсистемам, которые сгенерировали их. См., что Код Трассировки Использует Файл Отображения.

  • HDL_DUT_report.html: Этот файл является отображениями отчета Проверки генерации HDL-кода состояние генерации HDL-кода и любых предупреждений или сообщений. Если генерация HDL-кода перестала работать, вы видите причину отказа в отчете Проверки.

  • gm_hdlcoder_simple_up_counter.slx: Этот файл является сгенерированной моделью, которая поведенчески представляет HDL-код в среде моделирования Simulink®. Для получения дополнительной информации см. Сгенерированную Модель Модели и Валидации.

Проверьте сгенерированный HDL-код

Прежде чем вы продолжите развертывать свой проект на целевом компьютере, необходимо проверить сгенерированный HDL-код. От hdlsrc папка, перейдите к текущей рабочей папке. Чтобы изучить, как можно проверить сгенерированный HDL-код, смотрите, Проверяют Сгенерированный код из Модели Simulink Используя Испытательный стенд HDL.

Смотрите также

| |

Похожие темы