exponenta event banner

Интеграция пользовательского кода HDL с помощью DocBlock

Для интеграции пользовательского кода HDL в проект можно использовать один или несколько блоков DocBlock.

Когда использовать DocBlock для интеграции пользовательского кода

Если требуется сохранить код HDL в модели вместо отдельного файла, используйте DocBlock для интеграции пользовательского кода HDL. Текст в DocBlock - это пользовательский код VHDL ® или Verilog ®.

Каждый DocBlock, содержащий пользовательский код HDL, включается в подсистему черного ящика, а подсистема черного ящика включается в DUT. На подсистему черного ящика создается один файл HDL.

Альтернативные варианты интеграции пользовательского кода

Если необходимо сохранить пользовательский код HDL отдельно от модели, например, если пользовательский код является IP-кодом или библиотекой стороннего производителя, используйте подсистему черного ящика или ссылку на модель черного ящика.

Использование DocBlock для интеграции пользовательского кода

  1. В DUT на любом уровне иерархии добавьте блок подсистемы.

  2. Для блока «Подсистема» в диалоговом окне «Свойства блока HDL» выполните следующие действия.

    • Задайте для архитектуры значение BlackBox.

    • Настройте интерфейс подсистемы черного ящика таким образом, чтобы он соответствовал пользовательскому интерфейсу кода HDL. Дополнительные сведения о настройке интерфейса черного ящика см. в разделе Настройка интерфейса косимуляции черного ящика или HDL.

  3. В подсистеме добавьте блок DocBlock.

  4. Для DocBlock в диалоговом окне Свойства блока HDL:

    • Задайте для архитектуры значение HDLText.

    • Установите TargetLanguage в качестве целевого языка. Verilog или VHDL˙.

  5. В DocBlock введите код HDL для пользовательского Verilog module или VHDL entity.

    Язык должен соответствовать параметру DocBlock TargetLanguage.

Ограничения

  • Подсистема черного ящика, содержащая DocBlock, не может быть DUT верхнего уровня.

  • В подсистеме черного ящика может быть не более двух блоков DocBlock. Если имеется два блока DocBlock, для одного из них должен быть установлен TargetLanguage VHDL, а другой должен иметь значение TargetLanguage Verilog.

    При создании кода HDL Coder™ интегрирует только код из DocBlock, соответствующий целевому языку для создания кода.

Пример

hdlcoderIncludeCustomHdlUsingDocBlockExample модель показывает, как интегрировать пользовательский код VHDL и Verilog в конструкцию с блоком DocBlock.

Связанные темы