exponenta event banner

Ссылка на модель для генерации кода HDL

Преимущества ссылки на модель для создания кода

Ссылка на модель в подсистеме DUT позволяет:

  • Разделение большой конструкции на иерархию небольших конструкций для повторного использования, модульной разработки и ускоренного моделирования.

  • Пошаговое создание и тестирование кода.

    HDL Coder™ постепенно генерирует код для ссылочных моделей в соответствии с диалоговым окном Параметры конфигурации (Configuration Parameters) > Панель ссылок на модель (Model Referencing) > Опции перестроения (Rebuild options).

    Однако кодер HDL обрабатывает If any changes detected и If any changes in known dependencies detected как то же самое. Например, если для параметра «Перестроить» задано значение If any changes detected или If any changes in known dependencies detectedКодер HDL регенерирует код для ссылочных моделей, только если ссылочные модели изменились.

Создание кода для ссылочной модели

По умолчанию включено создание кода VHDL для привязок модели в одной библиотеке. Код VHDL создается в одной библиотеке вместо отдельных библиотек. В этом случае установите ScalarizePorts свойство для off перед созданием кода HDL.

При создании кода, если при взаимодействии двух или более сгенерированных модулей кода VHDL ® возникают конфликты ввода или присвоения имен между векторными портами, используйте ScalarizePorts для создания неконфликтных определений портов. Дополнительные сведения см. в разделе Scalarize ports.

Можно создать код HDL для ссылочной модели с помощью пользовательского интерфейса или командной строки.

Использование пользовательского интерфейса

  1. Щелкните правой кнопкой мыши блок модели и выберите «Код HDL» > «Свойства блока HDL».

  2. Для параметра Архитектура (Architecture) выберите Модель (Model) Привязка (refer

  3. Создайте код HDL из подсистемы DUT.

Использование командной строки

  1. Установите Architecture свойства блока «Модель» для ModelReference. Например, для подсистемы DUT, mydut, которая включает в себя ссылку на модель, referenced_model, введите следующую команду:

    hdlset_param ('mydut/referenced_model', ... 
                  'Architecture', 'ModelReference');

  2. Создайте код HDL для подсистемы DUT.

    makehdl ('mydut');

Создать код для аргументов модели

Создание единого Verilog ®module или VHDL entity экземпляры ссылочной модели с различными значениями аргументов модели см. в разделе Создание параметризованного кода для ссылочных моделей.

Создать комментарии

Если ввести текст в поле Описание диалогового окна Свойства блока модели (Model Block Properties), кодер HDL создает комментарий в коде HDL.

Ограничения

  • Блок модели должен иметь значения по умолчанию для параметров блока.

  • Блок модели не может быть маскированной подсистемой.

  • Ссылки на несколько моделей, ссылающиеся на одну и ту же модель, должны иметь одинаковые свойства блока HDL.

  • Ссылочные модели не могут быть защищены.

  • Иерархическая распределенная конвейерная обработка должна быть отключена.

Кодер HDL не может перемещать регистры по ссылке модели. Поэтому ссылочные модели могут препятствовать таким оптимизациям:

  • Распределенная конвейерная обработка

  • Конвейеризация выходных данных с ограничениями

  • Вытекание

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

Кодер может применить оптимизацию совместного использования ресурсов для совместного использования экземпляров ссылочной модели. Однако эту оптимизацию можно применить только в том случае, если все привязки модели, указывающие на одну и ту же ссылочную модель, имеют одинаковую скорость после оптимизации и распространения скорости. Конечная скорость привязки модели может отличаться от исходной скорости, но все привязки модели, указывающие на одну и ту же ссылочную модель, должны иметь одинаковую конечную скорость.