Проверяйте совместимость HDL модели Используя советника по вопросам HDL-кода

Прежде чем можно будет сгенерировать HDL-код, рекомендуется, чтобы вы проверили совместимость своего алгоритма, смоделированного в Simulink® для генерации HDL-кода. Чтобы проверить совместимость модели, вы используете Советника по вопросам HDL-кода. Советник по вопросам HDL-кода проверяет и обновляет вашу модель Simulink или подсистему для совместимости с генерацией HDL-кода. Советник Кода проверяет на настройки конфигурации модели, порты и настройки подсистемы, настройки блока, поддержку нативной плавающей точки и соответствие к правилам промышленного стандарта. Советник Кода представляет отчет, который перечисляет субоптимальные условия или настройки, и затем предлагает лучшие настройки конфигурации модели.

В этом примере показано, как можно обновить простую модель суммирующего счетчика для совместимости HDL. Чтобы узнать больше о встречном алгоритме и как можно создать эту модель, смотрите, Создают Модель Simulink для генерации HDL-кода.

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

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

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

Откройте советника по вопросам HDL-кода

Чтобы открыть Советника по вопросам HDL-кода, во вкладке Apps, выбирают HDL Coder. Вкладка HDL Code появляется. Выберите DUT Subsystem и затем нажмите HDL Code Advisor.

Примечание

Вы открываете Советника по вопросам HDL-кода и затем осуществляете проверки для Subsystem DUT, для которого вы хотите сгенерировать код. Модель верхнего уровня может содержать блоки, которые не совместимы для генерации HDL-кода. Выполнение Советника по вопросам HDL-кода по целой модели может отметить эти блоки и вашу модель как несовместимые для генерации HDL-кода.

В Советнике по вопросам HDL-кода левая панель перечисляет папки в иерархии. Каждая папка представляет группу или категорию связанных проверок. Расширение папок показывает доступные регистрации каждой папки. От левой панели можно выбрать папку или отдельную проверку. Советник по вопросам HDL-кода отображает информацию о выбранной папке, или зарегистрируйтесь в правой панели. Содержимое правой панели зависит от выбранной папки или проверки. Правая панель имеет подпанель Result, которая содержит область отображения для сообщений о состоянии и других результатов задачи.

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

Как запустить регистрации советника по вопросам HDL-кода

В окне HDL Code Advisor можно осуществить отдельные проверки или группу проверок. Осуществлять проверку, Select, которые проверяют и затем нажимают Run This Check. Например, чтобы запустить Check for safe model parameters, установите флажок, и затем нажмите Run This Check.

В окне HDL Code Advisor можно осуществить группу проверок в папке.

  1. Выберите проверки, которые вы хотите осуществить.

  2. Выберите папку, которая содержит эти проверки, и затем нажмите Run Selected Checks.

В этом примере показано, как запустить выбранные регистрации папки Model configuration checks.

Осуществите проверки для встречной модели

При помощи этого подхода, для вашей встречной модели, запускают все регистрации этих папок:

  • Model Configuration checks

  • Checks for ports and subsystems

  • Checks for blocks and block settings

В данном примере вы не должны запускать регистрации папок Native Floating Point checks и Industry standard checks. Чтобы узнать больше об этих проверках, смотрите советника по вопросам HDL-кода Чекса.

Для встречной модели проверки отображают результаты как Passed, что означает, что модель совместима для генерации HDL-кода.

Зафиксируйте советника по вопросам HDL-кода предупреждения или отказы

В Советнике по вопросам HDL-кода, если проверка перестала работать, правая панель показывает информацию о предупреждении или отказе в подпанели Result. Подпанель Result отображает настройки модели, которые несовместимы. Для некоторых задач используйте подпанель Action, чтобы применить Советника Кода, рекомендуемого настройки.

Например, в Подсистеме HDL_DUT, полагайте, что вы удаляете Enable порт и замена этот порт с входом Constant, который имеет значение 1.

Теперь, если вы осуществляете проверку Check for infinite and continuous sample time sources, Советник по вопросам HDL-кода выводит это предупреждение.

Чтобы применить настройки конфигурации модели что генератор кода, о котором сообщают в подпанели Result, нажмите кнопку Modify Settings. После того, как вы нажимаете Modify Settings, подпанель Result сообщает об изменениях, которые были применены. В этом примере Sample time блока Constant сбрасывается к -1. Можно теперь осуществить эту проверку.

Протесты

  • Если вы ссылаетесь на одну модель в другом при помощи блока Model, Советник по вопросам HDL-кода проверяет настройки модели или настройки родительской модели. Чтобы проверять, совместима ли модель, на которую ссылаются, с генерацией HDL-кода, откройте Советника по вопросам HDL-кода по модели, на которую ссылаются, и затем осуществите проверки.

  • Если вы осуществляете проверки библиотечных блоков маскированных в вашей модели Simulink, Советник Кода не может проверить, имеют ли блоки в библиотечных блоках совместимые с HDL настройки.

  • Когда вы применяете проверки Model Advisor к своей модели, она увеличивает вероятность, что ваша модель не нарушает определенные стандарты моделирования или инструкции. Однако это не гарантирует, что проект готов к генерации HDL-кода. Убедитесь, что вы проверяете проект при помощи нескольких методов для готовности генерации HDL-кода.

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

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

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

| |

Похожие темы