Pipeline distribution priority - Priority for the distributed pipelining and delay absorption optimizations - MATLAB (original) (raw)
Priority for the distributed pipelining and delay absorption optimizations
Renamed from Distributed pipelining priority in R2023b
Model Configuration Pane: Optimization / Pipelining
Description
The Pipeline distribution priority parameter specifies the priority for the distributed pipelining and delay absorption optimizations.
Settings
Numerical integrity
(default) | Performance
Numerical Integrity
Prioritize numerical integrity.
This option uses a conservative retiming algorithm that does not move registers across a component if the functional equivalence to the original design is unknown.
Performance
Prioritize performance over numerical integrity.
Use this option if your design requires a higher clock frequency and the SimulinkĀ® behavior does not need to strictly match the generated code behavior during the initialization cycles. This option uses a more aggressive retiming algorithm that moves registers across a component even if the functional equivalence between the modified and original designs is unknown. You can also use this option to reduce area by preventing distributed pipelining from inserting pipeline registers on stable paths.
Tips
To set this property, use the functions hdlset_param or makehdl. To view the property value, use the function hdlget_param.
For example, suppose you have a model named sfir_fixed
that contains a subsystem named symmetric_fir
. To set this parameter programmatically, use one of these methods:
- Pass the property as an argument to the
makehdl
function.
makehdl('sfir_fixed/symmetric_fir', ...
'PipelineDistributionPriority','Performance') - Use
hdlset_param
to set the parameter on the model and then generate HDL code usingmakehdl
.
hdlset_param('sfir_fixed','PipelineDistributionPriority','Performance')
makehdl('sfir_fixed/symmetric_fir')
Recommended Settings
No recommendations.
Programmatic Use
Parameter: PipelineDistributionPriority |
---|
Type: character vector |
Value: 'Numerical Integrity' | 'Performance' |
Default: 'Numerical Integrity' |
Version History
Introduced in R2014a
R2023b: Renamed from Distributed pipelining priority
The Distributed pipelining priority parameter, which you programmatically set usingDistributedPipeliningPriority
, is nowPipeline distribution priority.
R2023b: Controls delay absorption
Previously, this parameter only affected distributed pipelining. In R2023b, this parameter controls both distributed pipelining and delay absorption.
If you set Distributed pipelining priority to on
in a model created in R2023a or earlier, HDL Coder⢠prevented distributed pipelining from moving design delays.