Поддерживаемые построения Verilog для импорта HDL

Используйте HDL import, чтобы импортировать синтезируемый HDL-код в среду моделирования Simulink®. Чтобы импортировать HDL-код, используйте функцию importhdl. Убедитесь, что построения, используемые в HDL-коде, поддерживаются импортом HDL.

Эти таблицы приводят поддерживаемые построения Verilog®, которые можно использовать, когда вы импортируете свой HDL-код. Если вы используете неподдерживаемое построение, импорт HDL генерирует ошибку при парсинге файла входа HDL. Импорт HDL Verilog может иногда игнорировать присутствие определенных построений в HDL-коде. Чтобы узнать больше, смотрите раздел Comments таблицы.

Определение модуля и инстанцирования

Построения VerilogПоддерживаемый?Комментарии
Объявление библиотекиНет
Объявление настройкиНет
Объявление модуляДаНесколько частот дискретизации и несколько входных параметров часов не поддержаны.
Список портов параметра модуляДа
Объявления портаДаПорты INOUT не поддержаны.
Модуль без портовНет
Локальное объявление параметраДа
Объявление параметраДа--
Инстанцирование модуляДа
  • Рекурсивное инстанцирование модуля не поддержано.

  • Инстанцирование модуля не поддерживает неподключенные порты.

Типы данных и векторы

Построения VerilogПоддерживаемый?Комментарии
Сетевое объявление (Провод, Supply0, Supply1)Да
Действительное объявлениеНет
Представьте объявление в виде строкиНет
Векторное объявлениеДа
Поддержка массивов и массив indexinhДа
Объявление РеджаДа
Целочисленное объявлениеДа

Идентификаторы и комментарии

Построения VerilogПоддерживаемый?Комментарии
Лексические лексемы (Пробел, оператор, комментарий)Да
Идентификаторы (простой, оставленный)Да
Системные функции ($signed, $unsigned)Да
Припишите экземплярыНетИмпорт HDL игнорирует эти построения.
КомментарииНетИмпорт HDL игнорирует эти построения.
Числа (Десятичное число, двоичный файл, шестнадцатеричный, и восьмеричный)Да
Директивы компилятора ('задают', undef, 'ifndef', еще если),Да

Присвоения

Построения VerilogПоддерживаемый?Комментарии
Непрерывное присвоениеДа
Блокирование присвоенияДа
Неблокирование присвоенияДа
Процедурное присвоение (блок Always)Да

Операторы

Построения VerilogПоддерживаемый?Комментарии
Арифметические операторы (+, - *, **,/, <<<>>,>)Да
Логические операторы (<<>>!, &&, | |, ==!=)Да
Операторы отношения (>, <> =, <=, ==!=) Да
Побитовые операторы (~, &, |, ^, ~ ^, ^ ~)Да
Унарные операторы (+,-)ДаПоддерживаемый для ограниченных типов данных
Операторы степениДаПоддерживаемый для ограниченных типов данных
Условные операторы (?:)Да
КонкатенацияДа
Битный выборДа
Операторы сокращения (&, ~ &, |, ~ |, ^, ~ ^ или ^ ~)Да

Условные операторы и инструкции цикла

Построения VerilogПоддерживаемый?Комментарии
Если еще операторДа
Условные операторы (?:)Да
Цикл forДа
Цикл Генерирует построениеДаЦикл поддержек генерирует построения, которые генерирует такой что касается - случай - генерируют, и если - генерируют построения.
Условное выражение Генерирует построениеНет
Сгенерируйте областьНет
Объявление GenvarНет
Оператор выбораДаcasex и операторы случаев также поддержаны.

Процедурные блоки и События

Построения VerilogПоддерживаемый?Комментарии
Объявление задачиНет
Начальное построение (моделирование ROM)Нет
Последовательные блокиДа
Блокируйте объявленияДа
Событие проверяет утвержденияДа
Вызовы функцииДаИмпорт HDL не поддерживает вызовы рекурсивной функции.
Задача включаетНет
Построение AlwaysДа
Объявление функцииДа

Другие построения

Построения VerilogПоддерживаемый?Комментарии
Пропустите инстанцированиеНет
SpecparamsНет
Блок SpecifyНет
Семантическая верификация (неиспользуемые порты, исправьте инстанцирование модуля),Да
Синхронизируйте идентификацию пакетаДаНесколько частот дискретизации и несколько сигналов часов не поддержаны.
Укажите выводДа
Сравните с выводом блока ConstantДа
Получите вывод блокаДа
Вывод RAMДа
Вывод ROMНет
Встречный выводНет
Управляйте силойНет

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

Функции

Похожие темы