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

Этот раздел содержит параметры во вкладке HDL Code Generation> Optimization> Pipelining диалогового окна Configuration Parameters. Используя параметры в этом разделе, можно улучшить синхронизацию проекта на целевом устройстве. Включите иерархическую распределенную оптимизацию конвейеризации и задайте, приоритизировать ли распределенный алгоритм конвейеризации для вычислительной целостности или производительности.

Иерархическая распределенная конвейеризация

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

Настройки

Значение по умолчанию: 'off'

На

Позвольте повторно синхронизироваться через иерархию подсистемы. HDL Coder™ применяет повторную синхронизацию иерархически от Subsystem верхнего уровня. Чтобы переместить задержки в Subsystem, в HDL Block Properties, для что Subsystem, устанавливают DistributedPipelining на on. Иерархическая распределенная конвейеризация прекращает распределять задержки, когда она достигает Subsystem, которому установили DistributedPipelining на off.

'off'

Распределяет конвейеры в Subsystem, если вам установили DistributedPipelining на on для того Subsystem.

Зависимость

Если вы устанавливаете флажок Preserve design delays, распределенная конвейеризация не перемещает задержки проекта.

Информация о командной строке

Свойство: HierarchicalDistPipelining
Ввод: символьный вектор
Значение: 'on' | 'off'
Значение по умолчанию: 'off'

Чтобы установить это свойство, используйте hdlset_param или makehdl. Чтобы просмотреть значение свойства, используйте hdlget_param.

Например, можно включить HierarchicalDistPipelining установка, когда вы генерируете HDL-код для symmetric_fir подсистема в sfir_fixed модель с помощью любого из этих методов.

  • Передайте свойство в качестве аргумента к makehdl функция.

    makehdl('sfir_fixed/symmetric_fir', ... 
            'HierarchicalDistPipelining','on')
  • Когда вы используете hdlset_param, можно установить параметр на модели и затем сгенерировать HDL-код с помощью makehdl.

    hdlset_param('sfir_fixed','HierarchicalDistPipelining','on')
    makehdl('sfir_fixed/symmetric_fir')

Смотрите также

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

Задайте приоритет для своего распределенного алгоритма конвейеризации.

Настройки

Значение по умолчанию: Numerical Integrity

Numerical Integrity

Приоритизируйте вычислительную целостность при распределении конвейерных регистров.

Эта опция использует консервативный алгоритм повторной синхронизации, который не перемещает регистры через компонент, если функциональная эквивалентность первоначальному проекту неизвестна.

Performance

Приоритизируйте производительность по вычислительной целостности.

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

Информация о командной строке

Свойство: DistributedPipeliningPriority
Ввод: символьный вектор
Значение: 'NumericalIntegrity' | 'Performance'
Значение по умолчанию: 'NumericalIntegrity'

Чтобы установить это свойство, используйте hdlset_param или makehdl. Чтобы просмотреть значение свойства, используйте hdlget_param.

Например, можно использовать DistributedPipeliningPriority установка, когда вы генерируете HDL-код для symmetric_fir подсистема в sfir_fixed модель с помощью любого из этих методов.

  • Передайте свойство в качестве аргумента к makehdl функция.

    makehdl('sfir_fixed/symmetric_fir', ... 
            'DistributedPipeliningPriority','Performance')
  • Когда вы используете hdlset_param, можно установить параметр на модели и затем сгенерировать HDL-код с помощью makehdl.

    hdlset_param('sfir_fixed','DistributedPipeliningPriority','Performance')
    makehdl('sfir_fixed/symmetric_fir')

Смотрите также