Проверки советника по HDL-коду

HDL-код Advisor и Model Advisor проверяют в HDL, Coder™ проверить и обновить Simulink® модель или подсистема для совместимости с генерацией HDL-кода. Code Advisor проверяет:

  • Моделируйте настройки конфигурации

  • Порты и настройки подсистемы

  • Блоки и настройки блоков

  • Собственная поддержка с плавающей точкой

  • Отраслевые стандартные инструкции

При запуске проверки Code Advisor отображает результат как пропуск или отказ. Можно исправить предупреждения или отказы с помощью рекомендуемых настроек Model Advisor.

Строения модели

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

Имя проверкиОписание

Проверьте параметры модели, подходящие для генерации HDL-кода

Проверьте параметры модели, настроенные для генерации HDL-кода.
Проверьте модель на наличие иностранных символовПоиск в модели неразрешенных библиотечных ссылок, где указанный библиотечный блок не может быть найден.
Проверьте глобальную настройку сброса для устройств Xilinx и AlteraПроверьте настройку асинхронного сброса для Altera® устройства и установка синхронного сброса для Xilinx® устройств.
Проверьте настройку встроенных строенийПроверьте, есть ли у вас InlineConfigurations включен.
Проверяйте алгебраические циклыПроверьте модель на алгебраические циклы.
Проверьте настройки визуализацииПроверьте модель на отображение настройки: типы данных портов и шага расчета расцветки.
Проверяйте настройку балансировки задержкиПроверка задержек сальдо включена.

Примечание

Если вы используете Model Advisor, то увидите модель Check for foreign characters в папке Simulink.

Проверяет наличие портов и подсистем

Эта папка содержит проверки, которые проверяют, имеют ли порты и подсистемы в вашей модели настройки, совместимые с генерацией HDL-кода. Проверки включают в себя наличие действительной Подсистемы DUT верхнего уровня и определение начальных условий для блоков Enabled Subsystem и Triggered Subsystem.

Имя проверкиОписание
Проверьте наличие недопустимой подсистемы верхнего уровняПроверьте наличие подсистем, которые не могут быть на верхнем уровне для генерации HDL-кода.
Проверяйте начальные условия Enabled и Triggered подсистемПроверяйте начальное условие Enabled и Triggered подсистем.

Проверяет блоки и настройки блоков

Эти проверки проверяют, поддерживаются ли блоки в вашей модели для генерации HDL-кода, и имеют ли поддерживаемые блоки HDL-совместимые настройки. Проверки включают в себя, имеют ли исходные блоки в вашей модели непрерывный шаг расчета и имеет ли Stateflow® Графики и блоки MATLAB Function имеют HDL-совместимые настройки и так далее.

Имя проверкиОписание
Проверяйте наличие бесконечных и непрерывных источников шага расчетаПроверяйте исходные блоки с непрерывным шагом расчета.
Проверяйте на неподдерживаемые блокиПроверьте неподдерживаемые блоки для генерации HDL-кода.
Проверяйте на большие матричные операцииПроверяйте на большие матричные операции.
Идентифицируйте несвязанные линии, входные порты и выходные портыПроверьте наличие несвязанных линий или портов.
Идентифицируйте отключенные библиотечные ссылкиМодель поиска отключенных библиотечных ссылок.
Идентифицируйте неразрешенные библиотечные ссылкиПоиск в модели неразрешенных библиотечных ссылок, где указанный библиотечный блок не может быть найден.
Проверьте настройки блока MATLAB FunctionПроверьте параметры, совместимые с HDL, для блоков MATLAB Function.
Проверьте настройки диаграммы Stateflow

Проверьте параметры, совместимые с HDL, для блоков Stateflow Chart.

Проверяйте задержку, Unit Delay и блоки удержания нулевого порядка для перехода скоростиИдентифицируйте Delay, Unit Delay или Zero-Order Hold блоки, которые используются для перехода скорости. Замените эти блоки фактическими блоками Rate Transition.
Проверяйте блоки, которые имеют ненулевую выходную задержкуПроверяйте блоки, которые имеют ненулевую выходную задержку с фиксированной точкой и собственной плавающей точкой.
Проверьте неподдерживаемый класс памяти для сигнальных объектовПроверяйте, является ли класс памяти объекта сигнала 'ExportedGlobal' или 'ImportedExtern' или 'ImportedExternPointer'

Собственные проверки с плавающей точкой

Эти проверки проверяют, совместима ли модель для генерации HDL-кода в Native Floating Point режим. Проверки включают в себя, поддерживаются ли блоки в вашей модели Simulink для генерации HDL-кода с Native Floating Point, и использует ли модель отдельные типы данных, и так далее. Нативная поддержка с плавающей точкой в HDL Coder генерирует независимый от цели HDL-код из вашей модели с одной точностью с плавающей точностью. Для получения дополнительной информации смотрите Сгенерировать независимый от цели HDL-код с собственной плавающей точкой.

Имя проверкиОписание
Проверяйте наличие одиночных типов данных в моделиПроверяйте на single типы данных в модели.
Проверяйте на двойные типы данных в модели с собственной плавающей точкойПроверяйте на double типы данных в модели.
Проверяйте блоки преобразования типов данных с несовместимыми настройкамиПроверяйте режим преобразования блоков Data Type Conversion.
Проверяйте на использование HDL Returcal блоковПроверяйте, HDL Reciprocal блоки не используют типы с плавающей точкой.
Проверяйте на использование блока реляционного оператораПроверяйте, Relational Operator блоки, которые используют типы с плавающей точкой, имеют логические выходы.
Проверяйте неподдерживаемые блоки с собственной плавающей точкойПроверьте неподдерживаемые блоки с собственной плавающей точкой.
Проверяйте блоки с ненулевой ошибкой ulpПроверяйте блоки, которые имеют ненулевую ошибку ulp с собственной плавающей точкой.

отраслевые стандартные проверки

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

Имя проверкиОписание
Проверьте расширение файлаПроверьте расширения файлов VHDL, содержащих сущности.
Проверяйте соглашения об именованииПроверьте стандартные ключевые слова, используемые инструментами EDA.
Проверяйте имена подсистем/портов верхнего уровняПроверяйте имена модулей/объектов верхнего уровня и портов.
Проверяйте имена модулей/объектовПроверяйте имена модулей/объектов.
Проверяйте имена сигналов и портовПроверяйте длину сигнала и имя порта.
Проверяйте имена файлов пакетовПроверьте имя файла, содержащего пакеты.
Проверяйте дженерикиПроверьте дженерики в подсистеме верхнего уровня.
Проверяйте часы, сбрасывайте и активируйте сигналыПроверьте соответствие имен для синхроимпульсов, сбросов и разрешающих сигналов.
Проверьте имя архитектурыПроверьте имя архитектуры VHDL в сгенерированном HDL-коде.
Проверяйте сущность и архитектуруПроверьте, описаны ли сущность и архитектура VHDL в одном файле.
Проверяйте настройки синхроимпульсаПроверяйте ограничения на синхросигналах.

Для получения дополнительной информации смотрите:

См. также

Похожие темы