Pipeline distribution priority
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' |