Эта страница документации описывает параметры конфигурации, которые находятся во вкладке HDL Code Generation> Optimization> Pipelining диалогового окна Configuration Parameters. Используя параметры в этом разделе, можно улучшить синхронизацию проекта на целевом устройстве..
Иерархическая распределенная конвейеризация расширяет осциллограф распределенной конвейеризации путем распределения задержек на иерархиях подсистемы. Эта оптимизация перемещает задержки в Subsystem при сохранении иерархии.
Значение по умолчанию: Off
Позвольте повторно синхронизироваться через иерархию подсистемы. HDL Coder™ применяет повторную синхронизацию иерархически от Subsystem верхнего уровня. Чтобы переместить задержки в Subsystem, в HDL Block Properties, для что Subsystem, устанавливают DistributedPipelining на on
. Иерархическая распределенная конвейеризация прекращает распределять задержки, когда она достигает Subsystem, которому установили DistributedPipelining на 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')
Если ваш проект содержит мультивелосипедные дорожки, используйте конвейеризацию тактовой частоты, чтобы вставить конвейерные регистры на тактовой частоте, которая быстрее, чем скорость передачи данных. Эта оптимизация улучшает тактовую частоту и уменьшает использование области, не вводя дополнительную задержку. Конвейеризация тактовой частоты не влияет на существующие задержки проекта вашей модели. Это - альтернатива использованию ограничений мультивелосипедной дорожки с вашим инструментом синтеза.
Значение по умолчанию: On
Вставьте конвейерные регистры на тактовой частоте для мультивелосипедных дорожек.
Вставьте конвейерные регистры на скорости передачи данных для мультивелосипедных дорожек.
Если вы задаете Oversampling factor, больше, чем один, убедитесь, что вы устанавливаете флажок Clock-rate pipelining. Конвейеризация тактовой частоты идентифицирует области в вашей модели, которые запускаются на той же медленной скорости передачи данных и разграничены блоками Delay или блоками, которые вводят переход уровня. Генератор кода преобразует эти области в более быструю тактовую частоту путем представления блоков Repeat во входе области и блоков Rate Transition при выходе области.
Свойство:
ClockRatePipelining |
Ввод: символьный вектор |
Значение:
'on' | 'off' |
Значение по умолчанию:
'on' |
Чтобы установить это свойство, использовать hdlset_param
или makehdl
. Чтобы просмотреть значение свойства, использовать hdlget_param
.
Например, можно использовать ClockRatePipelining
установка, когда вы генерируете HDL-код для symmetric_fir
подсистема в sfir_fixed
модель с помощью любого из этих методов.
Передайте свойство в качестве аргумента к makehdl
функция.
makehdl('sfir_fixed/symmetric_fir', ... 'ClockRatePipelining','on')
Когда вы используете hdlset_param
, можно установить параметр на модели и затем сгенерировать использование HDL-кода makehdl
.
hdlset_param('sfir_fixed','ClockRatePipelining','on') makehdl('sfir_fixed/symmetric_fir')
Для выходных портов DUT вставьте конвейерные регистры на тактовой частоте вместо скорости передачи данных.
Значение по умолчанию: Off
В выходных портах DUT вставьте конвейерные регистры на тактовой частоте.
В выходных портах DUT вставьте конвейерные регистры на скорости передачи данных.
Когда вы задаете этот параметр, убедитесь, что вы устанавливаете флажок Clock-rate pipelining.
Свойство:
ClockRatePipelineOutputPorts |
Ввод: символьный вектор |
Значение:
'on' | 'off' |
Значение по умолчанию:
'off' |
Чтобы установить это свойство, использовать hdlset_param
или makehdl
. Чтобы просмотреть значение свойства, использовать hdlget_param
.
Например, можно использовать ClockRatePipelineOutputPorts
установка, когда вы генерируете HDL-код для symmetric_fir
подсистема в sfir_fixed
модель с помощью любого из этих методов.
Передайте свойство в качестве аргумента к makehdl
функция.
makehdl('sfir_fixed/symmetric_fir', ... 'ClockRatePipelineOutputPorts','on')
Когда вы используете hdlset_param
, можно установить параметр на модели и затем сгенерировать использование HDL-кода makehdl
.
hdlset_param('sfir_fixed','ClockRatePipelineOutputPorts','on') makehdl('sfir_fixed/symmetric_fir')
Используйте этот параметр, чтобы вставить конвейерные регистры в блоки в вашем проекте, уменьшать использование области и максимизировать достижимую тактовую частоту на целевом устройстве FPGA.
Значение по умолчанию: On
Вставьте адаптивные конвейерные регистры в свой проект. Для HDL Coder, чтобы вставить адаптивные конвейеры, необходимо задать инструмент синтеза.
Не вставляйте адаптивные конвейерные регистры.
Когда вы задаете этот параметр, в HDL Code Generation> панель Target, задаете Synthesis Tool. Если ваш проект имеет множители, задайте Synthesis Tool и Target Frequency (MHz) для адаптивной конвейерной вставки.
Свойство:
AdaptivePipelining |
Ввод: символьный вектор |
Значение:
'on' | 'off' |
Значение по умолчанию:
'off' |
Чтобы установить это свойство, использовать hdlset_param
или makehdl
. Чтобы просмотреть значение свойства, использовать hdlget_param
.
Например, можно использовать AdaptivePipelining
установка, когда вы генерируете HDL-код для symmetric_fir
подсистема в sfir_fixed
модель с помощью любого из этих методов.
Передайте свойство в качестве аргумента к makehdl
функция.
makehdl('sfir_fixed/symmetric_fir', ... 'AdaptivePipelining','on')
Когда вы используете hdlset_param
, можно установить параметр на модели и затем сгенерировать использование HDL-кода makehdl
.
hdlset_param('sfir_fixed','AdaptivePipelining','on') makehdl('sfir_fixed/symmetric_fir')
Значение по умолчанию: Off
Препятствуйте тому, чтобы распределенная конвейеризация переместила задержки проекта.
Не препятствуйте тому, чтобы распределенная конвейеризация переместила задержки проекта.
Свойство:
PreserveDesignDelays |
Ввод: символьный вектор |
Значение:
'on' | 'off' |
Значение по умолчанию:
'off' |
Чтобы установить это свойство, использовать hdlset_param
или makehdl
. Чтобы просмотреть значение свойства, использовать hdlget_param
.
Например, можно использовать PreserveDesignDelays
установка, когда вы генерируете HDL-код для symmetric_fir
подсистема в sfir_fixed
модель с помощью любого из этих методов.
Передайте свойство в качестве аргумента к makehdl
функция.
makehdl('sfir_fixed/symmetric_fir', ... 'PreserveDesignDelays','on')
Когда вы используете hdlset_param
, можно установить параметр на модели и затем сгенерировать использование HDL-кода makehdl
.
hdlset_param('sfir_fixed','PreserveDesignDelays','on') makehdl('sfir_fixed/symmetric_fir')