Прежде чем можно будет сгенерировать 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, во вкладке Apps, выбирают HDL Coder. Вкладка HDL Code появляется. Выберите DUT Subsystem и затем нажмите HDL Code Advisor.
Вы открываете Средство проверки Модели HDL и затем осуществляете проверки для Subsystem DUT, для которого вы хотите сгенерировать код. Модель верхнего уровня может содержать блоки, которые не совместимы для генерации HDL-кода. Выполнение Средства проверки Модели HDL для целой модели может отметить эти блоки и вашу модель как несовместимые для генерации HDL-кода.
В Средстве проверки Модели HDL левая панель перечисляет папки в иерархии. Каждая папка представляет группу или категорию связанных проверок. Расширение папок показывает доступные регистрации каждой папки. От левой панели можно выбрать папку или отдельную проверку. Средство проверки Модели HDL отображает информацию о выбранной папке или регистрации правой панели. Содержимое правой панели зависит от выбранной папки или проверки. Правая панель имеет подпанель Result, которая содержит область отображения для сообщений о состоянии и других результатов задачи.
Чтобы узнать больше о каждой отдельной проверке, щелкните правой кнопкой по той проверке и выберите What's This?.
В окне HDL Model Checker можно осуществить отдельные проверки или группу проверок. Осуществлять проверку, Select, которые проверяют и затем нажимают Run This Check. Например, чтобы запустить Check for safe model parameters, установите флажок, и затем нажмите Run This Check.
В окне HDL Model Checker можно осуществить группу проверок в папке.
Выберите проверки, которые вы хотите осуществить.
Выберите папку, которая содержит эти проверки, и затем нажмите 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 Coder.
Для встречной модели проверки отображают результаты как Passed, что означает, что модель совместима для генерации 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_DUT, которая содержит встречный алгоритм. Чтобы изучить, как сгенерировать код, смотрите, Генерируют HDL-код из Модели Simulink.
checkhdl
| hdlmodelchecker
| hdlsetup