Руководства по моделированию являются набором рекомендуемых рекомендаций, которым можно следовать при создании Simulink® модель для генерации кода с HDL- Coder™. Инструкции для поддерживаемых блоков и типов данных состоят из инструкций по использованию различных блоков в библиотеке блоков HDL Coder и о поддерживаемых типах данных. Каждое руководство по моделированию для генерации HDL-кода имеет разный уровень серьезности, который указывает уровни требований к податливости. Дополнительные сведения об этих уровнях серьезности см. в Руководствах по моделированию HDL Уровни серьезности.
В этих таблицах перечислены инструкции для поддерживаемых типов данных в HDL Coder и для различных блоков в библиотеке блоков HDL Coder. Инструкции начинаются с 2.1
и делятся на подразделы. В таблице видно, что определенные инструкции имеют связанную проверку модели. Можно следовать шаблону моделирования, рекомендованному для этих руководств, запустив проверку в HDL-код Advisor. Дополнительные сведения о HDL-коде Advisor см. в разделе Проверка совместимости HDL-файлов модели Simulink с использованием HDL-кода Advisor.
Идентификатор руководства | Заголовок | Серьезность | Связанное стандартное правило проверки/кодирования модели |
---|---|---|---|
2.1.1 | Факторы о блоке доступа к ОЗУ | Рекомендуется | Ничего |
2.1.2 | Последовательное преобразование в параллельное | Рекомендуется | Ничего |
Идентификатор руководства | Заголовок | Серьезность | Связанное стандартное правило проверки/кодирования модели |
---|---|---|---|
2.2.1 | Логические и арифметические операции сдвига битов | Информативный | Ничего |
2.2.2 | Использование блоков логического оператора, Bitwise Operator и Bit Reduce | Информативный | Ничего |
2.2.3 | Используйте логический выход для сравнения с блоками постоянных и реляционных операторов | Очень рекомендуем | Проверка модели: Проверяйте на использование блока реляционного оператора |
Идентификатор руководства | Заголовок | Серьезность | Связанное стандартное правило проверки/кодирования модели |
---|---|---|---|
2.3.1 | Сгенерируйте блок FPGA RAM из интерполяционных таблиц | Очень рекомендуем | Ничего |
2.3.2 | Рекомендуемые Параметры блоков настройки мультипортовых Блоков switch для числовых и перечисленных типов | Рекомендуется | Ничего |
Идентификатор руководства | Заголовок | Серьезность | Связанное стандартное правило проверки/кодирования модели |
---|---|---|---|
2.4.1 | Виртуальная Подсистема: Используйте как DUT | Обязательный | Проверка модели: Проверяйте на недопустимую подсистему верхнего уровня |
2.4.2 | Атомарные и виртуальные подсистемы: генерируйте переиспользуемые HDL- Файлов | Рекомендуется | Ничего |
2.4.3 | Подсистема вариантов: Использование подсистем вариантов для генерации HDL-кода | Обязательный | Ничего |
2.4.4 | Модели-ссылки: Создайте модель, Проект используя меньшие разделы | Рекомендуется | Ничего |
2.4.5 | Блок настройки Enabled и Triggered подсистем | Обязательный | Проверка модели: Проверка начальных условий Enabled и Triggered подсистем |
Идентификатор руководства | Заголовок | Серьезность | Связанное стандартное правило проверки/кодирования модели |
---|---|---|---|
2.5.1 | Использование блоков преобразования скорости | Рекомендуется | Ничего |
2.5.2 | Использование дискретного и конечного шага расчета для постоянного блока | Обязательный | Проверка модели: Проверяйте на бесконечные и непрерывные источники шага расчета |
Идентификатор руководства | Заголовок | Серьезность | Связанное стандартное правило проверки/кодирования модели |
---|---|---|---|
2.6.1 | Соответствующее использование блоков задержки в качестве регистров | Рекомендуется | Проверяйте устаревшие блоки Unit Delay Enabled/Resettable |
2.6.2 | Поглощайте задержки, чтобы избежать различия во времени | Рекомендуется | Ничего |
2.6.3 | Сопоставление больших задержек с блокировкой оперативной памяти | Рекомендуется | Ничего |
2.6.4 | Необходимые настройки HDL для блоков Goto и From | Обязательный | Ничего |
Идентификатор руководства | Заголовок | Серьезность | Связанное стандартное правило проверки/кодирования модели |
---|---|---|---|
2.7.1 | Разработка мультипликаторов и аддеров для эффективного отображения блоков DSP на FPGA | Очень рекомендуем | Ничего |
2.7.2 | Установите значение свойства блока ConstMultiplierOptimization HDL в auto для блока Gain | Рекомендуется | Ничего |
2.7.3 | Используйте ShiftAdd Architecture of Divide Block для фиксированных точек | Рекомендуется | Ничего |
Идентификатор руководства | Заголовок | Серьезность | Связанное стандартное правило проверки/кодирования модели |
---|---|---|---|
2.8.1 | Обновление стойких переменных в конце функции MATLAB | Очень рекомендуем | Ничего |
2.8.2 | Избегайте Алгебраических Ошибок Цикла из Стойких Переменных в Блоках MATLAB function | Обязательный | Ничего |
2.8.3 | Используйте hdlfimath Setting и Задайте объекты FI внутри Блок MATLAB Function | Очень рекомендуем | Проверьте настройки блока MATLAB Function |
Идентификатор руководства | Заголовок | Серьезность | Связанное стандартное правило проверки/кодирования модели |
---|---|---|---|
2.9.1 | Выберите тип конечного компьютера на основе требований реализации HDL | Очень рекомендуем | Ничего |
2.9.2 | Задайте настройки строения блоков диаграммы Stateflow | Очень рекомендуем | Проверьте настройки диаграммы Stateflow |
2.9.3 | Вставьте безусловное состояние перехода для оператора Else в HDL-код | Рекомендуется | Ничего |
2.9.4 | Настройки типа данных и литье в диаграмме Stateflow для генерации HDL-кода | Информативный | Ничего |
Идентификатор руководства | Заголовок | Серьезность | Связанное стандартное правило проверки/кодирования модели |
---|---|---|---|
2.10.1 | Используйте логическое значение для логических данных и Ufix1 для числовых данных | Обязательный | Ничего |
2.10.2 | Задайте тип данных блоков усиления | Рекомендуется | Ничего |
2.10.3 | Перечисленные ограничения типа данных | Обязательный | Ничего |