Поддерживаемые построения Verilog для импорта HDL
Используйте HDL import, чтобы импортировать синтезируемый HDL-код в среду моделирования Simulink®. Чтобы импортировать HDL-код, используйте importhdl
функция. Убедитесь, что построения, используемые в HDL-коде, поддерживаются импортом HDL.
Эти таблицы приводят поддерживаемые построения Verilog®, которые можно использовать, когда вы импортируете свой HDL-код. Если вы используете неподдерживаемое построение, импорт HDL генерирует ошибку при парсинге файла входа HDL. Импорт HDL Verilog может иногда игнорировать присутствие определенных построений в HDL-коде. Чтобы узнать больше, смотрите раздел Comments таблицы.
Определение модуля и инстанцирования
Построения Verilog | Поддерживаемый? | Комментарии |
---|
Объявление библиотеки | Нет | – |
Объявление настройки | Нет | – |
Объявление модуля | Да | Несколько частот дискретизации и несколько входных параметров часов не поддерживаются. |
Список портов параметра модуля | Да | – |
Объявления порта | Да | Порты INOUT не поддерживаются. |
Модуль без портов | Нет | – |
Локальное объявление параметра | Да | – |
Объявление параметра | Да | Можно использовать параметры и константы, которые имеют максимальный размер 64 биты. По умолчанию размером параметра является 32 биты. |
Инстанцирование модуля | Да |
Неподключенные порты в инстанцированных модулях удалены при импорте кода Verilog. Рекурсивное инстанцирование модуля не поддерживается. Вместо этого если ваш главный модуль инстанцирует модулей, которые заданы в рекурсивных подпапках, importhdl синтаксические анализы все файлы Verilog. Например, в этом рисунке, importhdl может проанализировать оба DFF_Instantiation.v и TFF_Instantiation.v это инстанцируют в DFF.v .
|
Типы данных и векторы
Построения Verilog | Поддерживаемый? | Комментарии |
---|
Сетевое объявление (Провод, Supply0, Supply1) | Да | – |
Действительное объявление | Нет | – |
Представьте объявление в виде строки | Нет | – |
Векторное объявление | Да | – |
Поддержка массивов и индексация массива | Да | – |
Объявление Реджа | Да | – |
Целочисленное объявление | Да | – |
Идентификаторы и комментарии
Построения Verilog | Поддерживаемый? | Комментарии |
---|
Лексические лексемы (Пробел, оператор, комментарий) | Да | – |
Идентификаторы (простой, оставленный) | Да | – |
Системные функции ($signed, $unsigned) | Да | – |
Припишите экземпляры | Нет | Импорт HDL игнорирует эти построения. |
Комментарии | Нет | Импорт HDL игнорирует эти построения. |
Числа (Десятичное число, двоичный файл, шестнадцатеричный, и восьмеричный) | Да | – |
Директивы компилятора ('задают', undef, 'ifndef', еще если), | Да | – |
Присвоения
Построения Verilog | Поддерживаемый? | Комментарии |
---|
Непрерывное присвоение | Да | – |
Блокирование присвоения | Да | -- |
Неблокирование присвоения | Да | – |
Процедурное присвоение (Always блокируйтесь), | Да | – |
Операторы
Построения Verilog | Поддерживаемый? | Комментарии |
---|
Арифметические операторы (+, - *, **,/, <<<>>,>) | Да | – |
Логические операторы (<<>>!, &&, | |, ==!=) | Да | – |
Операторы отношения (>, <> =, <=, ==!=) | Да | – |
Побитовые операторы (~, &, |, ^, ~ ^, ^ ~) | Да | – |
Унарные операторы (+,-) | Да | Поддерживаемый для ограниченных типов данных |
Операторы степени | Да | Поддерживаемый для ограниченных типов данных |
Условные операторы (?:) | Да | – |
Конкатенация | Да | – |
Битный выбор | Да | – |
Операторы сокращения (&, ~ &, |, ~ |, ^, ~ ^ или ^ ~) | Да | – |
Для примера, который иллюстрирует, как использовать различные операторы, смотрите, Генерируют Модель Simulink из Кода Verilog для Различных Операторов.
Условные операторы и инструкции цикла
Построения Verilog | Поддерживаемый? | Комментарии |
---|
Если еще оператор | Да | – |
Условные операторы (?:) | Да | – |
Цикл for | Да | – |
Цикл Генерирует построение | Да | Цикл поддержек генерирует построения, которые генерирует такой что касается - случай - генерируют, и если - генерируют построения. |
Условное выражение Генерирует построение | Нет | – |
Сгенерируйте область | Нет | – |
Объявление Genvar | Нет | – |
Оператор выбора | Да | casex и операторы случаев также поддерживаются. |
Процедурные блоки и События
Построения Verilog | Поддерживаемый? | Комментарии |
---|
Объявление задачи | Нет | – |
Начальное построение (моделирование ROM) | Нет | – |
Последовательные блоки | Да | – |
Блокируйте объявления | Да | – |
Событие проверяет утверждения | Да | – |
Вызовы функции | Да | Импорт HDL не поддерживает вызовы рекурсивной функции. |
Задача включает | Нет | – |
Always создать | Да | – |
Объявление функции | Да | – |
Другие построения
Построения Verilog | Поддерживаемый? | Комментарии |
---|
Пропустите инстанцирование | Нет | – |
Specparams | Нет | – |
Блок Specify | Нет | – |
Семантическая верификация (неиспользуемые порты, откорректируйте инстанцирование модуля), | Да | – |
Синхронизируйте идентификацию пакета | Да | Несколько частот дискретизации и несколько сигналов часов не поддерживаются. |
Укажите вывод | Да | – |
Вывод блока Compare to Constant | Да | – |
Вывод блока Gain | Да | – |
Вывод RAM | Да | – |
Вывод ROM | Нет | – |
Встречный вывод | Нет | – |
Управляйте силой | Нет | – |
Смотрите также
Функции
Связанные примеры
Больше о