Руководства по моделированию HDL являются набором рекомендуемых инструкций, за которыми можно следовать при создании модели Simulink® для генерации кода с HDL Coder™. Инструкции для поддерживаемых блоков и типов данных состоят из инструкций для использования различных блоков в библиотеке блоков HDL Coder, и о поддерживаемых типах данных. Каждое руководство по моделированию для генерации HDL-кода имеет другой уровень серьезности, которая указывает на уровни требований податливости. Чтобы узнать больше об этих уровнях серьезности, смотрите Уровни серьезности Руководств по моделированию HDL.
Эти таблицы приводят инструкции для поддерживаемых типов данных в HDL Coder и для различных блоков в библиотеке блоков HDL Coder. Инструкции начинают с 2.1
и разделены на подразделы. В таблице вы видите, что определенные инструкции имеют связанную проверку модели. Можно следовать за шаблоном моделирования, рекомендуемым для этих инструкций путем выполнения той регистрации Советника по вопросам HDL-кода. Чтобы узнать больше о Советнике по вопросам HDL-кода, смотрите Начало работы с Советником по вопросам HDL-кода.
ID инструкции | Заголовок | Серьезность | Связанное Правило Стандарта Проверки/Кодирования Модели |
---|---|---|---|
2.1.1 | Блок RAM доступ к факторам | Рекомендуемый | 'none' |
2.1.2 | Последовательно-параллельное преобразование | Рекомендуемый | 'none' |
ID инструкции | Заголовок | Серьезность | Связанное Правило Стандарта Проверки/Кодирования Модели |
---|---|---|---|
2.2.1 | Логические и арифметические операции сдвига разряда | Информативный | 'none' |
2.2.2 | Использование логического оператора, побитового оператора и бита уменьшает блоки | Информативный | 'none' |
2.2.3 | Используйте булев Выход в, выдерживают сравнение с блоками постоянного и оператора отношения | Строго рекомендуемый | Проверка модели: Проверяйте на использование блока Relational Operator |
ID инструкции | Заголовок | Серьезность | Связанное Правило Стандарта Проверки/Кодирования Модели |
---|---|---|---|
2.3.1 | Сгенерируйте блок FPGA RAM от интерполяционных таблиц | Строго рекомендуемый | 'none' |
ID инструкции | Заголовок | Серьезность | Связанное Правило Стандарта Проверки/Кодирования Модели |
---|---|---|---|
2.4.1 | Виртуальная подсистема: используйте в качестве DUT Верхнего уровня | Обязательный | Проверка модели: Проверяйте на недопустимую подсистему верхнего уровня |
2.4.2 | Атомарная подсистема: сгенерируйте допускающие повторное использование файлы HDL | Рекомендуемый | 'none' |
2.4.3 | Различная подсистема: Используя различные подсистемы для генерации HDL-кода | Обязательный | 'none' |
2.4.4 | Модели - ссылки: создайте проект модели Используя меньшие разделы | Рекомендуемый | 'none' |
2.4.5 | Блокируйте настройки Enabled и Triggered подсистем | Обязательный | Проверка модели: Проверяйте начальные условия Enabled и Triggered подсистем |
ID инструкции | Заголовок | Серьезность | Связанное Правило Стандарта Проверки/Кодирования Модели |
---|---|---|---|
2.5.1 | Использование блоков преобразования уровня | Рекомендуемый | 'none' |
2.5.2 | Используйте дискретный и конечный шаг расчета в постоянном блоке | Обязательный | Проверка модели: Проверяйте на источники времени бесконечной и непрерывной выборки |
ID инструкции | Заголовок | Серьезность | Связанное Правило Стандарта Проверки/Кодирования Модели |
---|---|---|---|
2.6.1 | Соответствующее использование блоков задержки как регистры | Рекомендуемый | Проверяйте на устаревший Unit Delay Enabled/Восстановленные Блоки |
2.6.2 | Необходимые настройки HDL для Goto и от блоков | Обязательный | 'none' |
ID инструкции | Заголовок | Серьезность | Связанное Правило Стандарта Проверки/Кодирования Модели |
---|---|---|---|
2.7.1 | Разработка множителей и сумматоров для эффективного отображения с блоками DSP на FPGA | Строго рекомендуемый | 'none' |
2.7.2 | Используйте архитектуру ShiftAdd блока деления для фиксированных точек | Рекомендуемый | 'none' |
ID инструкции | Заголовок | Серьезность | Связанное Правило Стандарта Проверки/Кодирования Модели |
---|---|---|---|
2.8.1 | Обновите персистентные переменные в конце функции MATLAB | Строго рекомендуемый | 'none' |
2.8.2 | Избегайте Алгебраических Ошибок Цикла от Персистентных Переменных в блоках MATLAB function | Обязательный | 'none' |
2.8.3 | Используйте Установку hdlfimath и Задайте Объекты fi в блоке MATLAB function | Строго рекомендуемый | Проверяйте на настройки блока MATLAB function |
ID инструкции | Заголовок | Серьезность | Связанное Правило Стандарта Проверки/Кодирования Модели |
---|---|---|---|
2.9.1 | Выберите State Machine Type based on HDL Implementation Requirements | Строго рекомендуемый | 'none' |
2.9.2 | Задайте параметры конфигурации блока диаграммы Stateflow | Строго рекомендуемый | Проверяйте на настройки диаграммы Stateflow |
2.9.3 | Вставьте безусловное переходное состояние для еще оператора в HDL-коде | Рекомендуемый | 'none' |
2.9.4 | Избегайте абсолютного времени для временной логики | Обязательный | 'none' |
ID инструкции | Заголовок | Серьезность | Связанное Правило Стандарта Проверки/Кодирования Модели |
---|---|---|---|
2.10.1 | Используйте булевскую переменную в логических данных и Ufix1 для числовых данных | Обязательный | 'none' |
2.10.2 | Задайте тип данных блоков усиления | Рекомендуемый | 'none' |
2.10.3 | Перечислимые ограничения типа данных | Обязательный | 'none' |