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

Что такая ограниченная выходная конвейеризация?

С ограничением выходной конвейеризации можно задать неотрицательное количество регистров на выходах блока.

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

Распределённая конвейеризация не перемещает регистры, заданные с ограничением выходной конвейеризации.

Когда использовать Ограниченную Выходную Конвейеризацию

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

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

Требования к ограниченным Выходам Конвейеризации

Ваш проект должна содержать существующие задержки или регистры. Когда регистров меньше, чем HDL Coder должен удовлетворить вашему ограничению, кодер сообщает о различии между количеством нужных и фактических выходных регистров.

Можно добавить регистры к проекту с помощью входа или вывода конвейеризации.

Задайте Ограниченную Выходную Конвейеризацию

Чтобы задать ограниченную выходную конвейеризацию для блока с помощью пользовательского интерфейса:

  • На вкладке Apps выберите HDL Coder. Появится вкладка HDL Code. Выберите Subsystem и нажмите HDL Block Properties. Для ConstrainedOutputPipeline введите количество регистров, необходимое для портов выхода.

  • Щелкните правой кнопкой мыши блок и выберите HDL Code > HDL Block Properties. Для ConstrainedOutputPipeline введите количество регистров, необходимое для портов выхода.

Чтобы задать ограниченную выходную конвейеризацию, в командной строке введите:

hdlset_param(path_to_block,...
         'ConstrainedOutputPipeline',number_of_output_registers)
Для примера, чтобы ограничить шесть регистров в выход портах подсистемы, subsys, в вашей модели, mymodel, введите:
hdlset_param('mymodel/subsys','ConstrainedOutputPipeline', 6)

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

HDL Coder не ограничивает размещение выходного конвейера:

  • В пределах подсистемы DUT, если DUT содержит подсистему, модель-ссылку или модель-ссылку с реализацией черного ящика.

  • На выходах любого типа блока задержки или подсистемы DUT верхнего уровня.