Можно использовать один или несколько блоков DocBlock для интеграции пользовательского HDL-кода в проект.
Если вы хотите сохранить HDL-код в модели, а не как отдельный файл, используйте DocBlock для интеграции пользовательского HDL-кода. Текст в DocBlock является вашим пользовательским VHDL® или Verilog® код.
Вы включаете каждый DocBlock, который содержит пользовательский HDL-код, помещая его в подсистему черного ящика и включая подсистему черного ящика в вашу DUT. По подсистеме черного ящика генерируется один файл HDL.
Если вы хотите сохранить свой пользовательский HDL-код отдельно от модели, например, когда пользовательский код является IP или библиотекой от третьей стороны, используйте подсистему черного ящика или модель-ссылку черного ящика.
В DUT на любом уровне иерархии добавьте блок Subsystem.
Для блока Subsystem в диалоговом окне HDL Block Properties:
Установите Architecture значение BlackBox
.
Настройте интерфейс подсистемы черного ящика так, чтобы он совпадал с пользовательским интерфейсом HDL-кода. Дополнительные сведения о настройке интерфейса черного ящика см. в разделе Настройка интерфейса черного ящика или HDL-косимуляции.
В подсистему добавьте DocBlock блок.
Для этого DocBlock в диалоговом окне HDL Block Properties:
Установите Architecture значение HDLText
.
Установите TargetLanguage на целевой язык Verilog
или VHDL˙
.
В DocBlock введите HDL-код для пользовательского Verilog module
или VHDL- entity
.
Язык должен совпадать с настройкой DocBlock TargetLanguage.
Подсистема черного ящика, содержащая DocBlock, не может быть DUT верхнего уровня.
Вы можете иметь максимум два блока DocBlock в подсистеме черного ящика. Если у вас есть два блока DocBlock, должно быть, TargetLanguage установлено на VHDL
, а другой, должно быть TargetLanguage установлен на Verilog
.
При генерации кода HDL- Coder™ интегрирует код только из DocBlock, которая соответствует целевому языку генерации кода.
The hdlcoderIncludeCustomHdlUsingDocBlockExample
модель показывает, как интегрировать пользовательский VHDL и Verilog код в ваш проект с блоком DocBlock.