Модель

Включайте модель как блок в другой модели (HDL Coder)

Описание

Блок Model доступен с Simulink®. Для получения информации о поведении симуляции и параметрах блоков, см. Модель.

Сгенерируйте комментарии

Если вы вводите текст в поле Description диалогового окна Model Block Properties, HDL Coder™ генерирует комментарий в HDL-коде.

Сгенерируйте код для образцовых аргументов

Чтобы сгенерировать один Verilog® module или VHDL® entity для экземпляров модели, на которую ссылаются, с различными образцовыми значениями аргументов, смотрите, Генерируют Параметризованный Код для Моделей, на которые Ссылаются.

Архитектура HDL

АрхитектураОписание
ModelReference (значение по умолчанию) Когда это необходимо, чтобы сгенерировать код из модели, на которую ссылаются, и любых вложенных моделей, используйте реализацию ModelReference. Для получения дополнительной информации смотрите, Как Сгенерировать Код для Модели, на которую Ссылаются.
BlackBox

Используйте реализацию BlackBox, чтобы инстанцировать обертки HDL или интерфейса черного квадрата, для устаревшего или внешнего HDL-кода. Если вы задаете интерфейс черного квадрата, HDL Coder не пытается сгенерировать HDL-код для модели, на которую ссылаются.

Для получения дополнительной информации смотрите, Генерируют Интерфейс Черного квадрата для Модели, на которую Ссылаются.

Индивидуальная настройка интерфейса черного квадрата

Для архитектуры BlackBox можно настроить имена порта и установить атрибуты интерфейса внешнего компонента. Смотрите Настраивают Черный квадрат или HDL Интерфейс Cosimulation.

Свойства блока HDL

BalanceDelays

Обнаруживает введение новых задержек вдоль одного пути и вставляет соответствие с задержками на других путях. Значением по умолчанию является inherit. См. также BalanceDelays.

ConstrainedOutputPipeline

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

DistributedPipelining

Конвейерно обработайте распределение регистра или повторную синхронизацию регистра. Значением по умолчанию является off. См. также DistributedPipelining.

DSPStyle

Синтез приписывает для отображения множителя. Значением по умолчанию является none. См. также DSPStyle.

InputPipeline

Количество входных настроек канала связи, чтобы вставить в сгенерированный код. Распределенная конвейеризация и ограниченная выходная конвейеризация могут переместить эти регистры. Значение по умолчанию 0. См. также InputPipeline.

OutputPipeline

Количество выходных настроек канала связи, чтобы вставить в сгенерированный код. Распределенная конвейеризация и ограниченная выходная конвейеризация могут переместить эти регистры. Значение по умолчанию 0. См. также OutputPipeline.

ReferenceModelPrefix

Префикс модели, на которую ссылаются, чтобы вставить в сгенерированный код. Генератор кода применяет этот префикс к именам файлов подмодели и идентификаторам HDL. Префиксом по умолчанию является modelname_, где modelname является именем модели, на которую ссылаются.

Примечание

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

  • Если вы используете модель, на которую ссылаются, в качестве DUT, генератор кода игнорирует префикс, который вы задаете.

SharingFactor

Количество функционально эквивалентных ресурсов, чтобы сопоставить с одним совместно используемым ресурсом. Значение по умолчанию 0. См. также Разделение ресурсов.

StreamingFactor

Количество параллельных информационных каналов или векторы, которые являются временем, мультиплексированным, чтобы преобразовать в последовательные, скалярные информационные каналы. Значение по умолчанию 0, который реализует полностью параллельные информационные каналы. См. также Потоковую передачу.

Ограничения

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

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

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

  • Модели, на которые ссылаются, не могут быть защищенными моделями.

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

HDL Coder не может переместить регистры через модель - ссылку. Поэтому модели, на которые ссылаются, могут запретить эту оптимизацию:

  • Распределенная конвейеризация

  • Ограниченная выходная конвейеризация

  • Потоковая передача

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

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

Расширенные возможности

Генерация кода C/C++
Генерация кода C и C++ с помощью Simulink® Coder™.

Генерация HDL-кода
Сгенерируйте Verilog и код VHDL для FPGA и проекты ASIC с помощью HDL Coder™.

Введенный в R2014a