Main Content

Diagnostic Parameters for Optimizations

This section contains parameters in the Diagnostics section of the HDL Code Generation > Global Settings > Advanced tab in the Configuration Parameters dialog box. To highlight blocks and feedback loops that inhibit delay balancing, distributed pipelining, clock-rate pipelining, and other optimizations, use these parameters.

Highlight feedback loops inhibiting delay balancing and optimizations

Feedback loops in your Simulink® model can inhibit delay balancing and optimizations such as resource sharing and streaming. Use this setting to generate a script that highlights feedback loops.

When you generate the feedback loop highlighting script, HDL Coder™ generates another script that clears the highlighting of feedback loops in your model. To turn off highlighting, click the link to the clearhighlighting script.

Settings

Default: On

On

Generate a MATLAB® script that highlights feedback loops in the original model and the generated model. When you run the script, the code generator highlights the feedback loops using different colors. The highlighting script is saved in the same target folder as the generated HDL code.

It is recommended that you leave this setting enabled so that you can identify the feedback loops and further optimize your design.

Off

Do not generate a script to highlight feedback loops.

Command-Line Information

Property: HighlightFeedbackLoops
Type: character vector
Value: 'on' | 'off'
Default: 'on'

To set this property, use the functions hdlset_param or makehdl. To view the property value, use the function hdlget_param.

For example, you can specify this property while generating HDL code for the symmetric_fir subsystem inside the sfir_fixed model using either of these methods.

  • Use hdlset_param to set the parameter on the model. Then generate HDL code using makehdl.

    hdlset_param('sfir_fixed','HighlightFeedbackLoops','off')
    makehdl('sfir_fixed/symmetric_fir')

  • Pass the property as an argument to the makehdl function.

    makehdl('sfir_fixed/symmetric_fir','HighlightFeedbackLoops','off')

See Also

Highlight blocks inhibiting clock-rate pipelining

Certain blocks in your Simulink model can inhibit clock-rate pipelining and therefore delimit clock-rate pipelining regions. Use this setting to generate a script to highlight the blocks.

When you generate the clock-rate pipelining highlighting script, HDL Coder generates another script that clears the highlighting. To turn off highlighting, click the link to the clearhighlighting script.

Settings

Default: On

On

Generate a MATLAB script that highlights blocks in the original model and the generated model that are inhibiting clock-rate pipelining.

It is recommended that you leave this setting enabled so that you can identify the blocks that delimit the clock-rate pipelining regions and further optimize your design.

Off

Do not generate a script to highlight blocks that are inhibiting clock-rate pipelining.

Command-Line Information

Property: HighlightClockRatePipeliningDiagnostic
Type: character vector
Value: 'on' | 'off'
Default: 'on'

To set this property, use the functions hdlset_param or makehdl. To view the property value, use the function hdlget_param.

For example, you can specify this property while generating HDL code for the symmetric_fir subsystem inside the sfir_fixed model using either of these methods.

  • Use hdlset_param to set the parameter on the model. Then generate HDL code using makehdl.

    hdlset_param('sfir_fixed','HighlightClockRatePipeliningDiagnostic','off')
    makehdl('sfir_fixed/symmetric_fir')

  • Pass the property as an argument to the makehdl function.

    makehdl('sfir_fixed/symmetric_fir','HighlightClockRatePipeliningDiagnostic','off')

See Also

Highlight blocks inhibiting distributed pipelining

Certain blocks in your Simulink model can act as barriers for the distributed pipelining optimization. Use this setting to generate a script to highlight the blocks that are inhibiting distributed pipelining.

When you generate the highlighting script that displays distributed pipelining barriers, HDL Coder generates another script that clears the highlighting. To turn off highlighting, click the link to the clearhighlighting script.

Settings

Default: On

On

Generate a MATLAB script that highlights blocks that are inhibiting distributed pipelining in the original model and the generated model.

It is recommended that you leave this setting enabled so that you can identify the blocks that are barriers for distributed pipelining and further optimize your design.

Off

Do not generate a script to highlight blocks that are inhibiting distributed pipelining.

Command-Line Information

Property: DistributedPipeliningBarriers
Type: character vector
Value: 'on' | 'off'
Default: 'on'

For example, you can specify this property while generating HDL code for the symmetric_fir subsystem inside the sfir_fixed model using either of these methods.

  • Use hdlset_param to set the parameter on the model. Then generate HDL code using makehdl.

    hdlset_param('sfir_fixed','DistributedPipeliningBarriers','off')
    makehdl('sfir_fixed/symmetric_fir')

  • Pass the property as an argument to the makehdl function.

    makehdl('sfir_fixed/symmetric_fir','DistributedPipeliningBarriers','off')

To set this property, use the functions hdlset_param or makehdl. To view the property value, use the function hdlget_param.

See Also

Highlight lookup tables mapped to RAM

Use this setting to generate a script to highlight the Lookup Table blocks in your model that are mapped to RAM.

When you generate the highlighting script that displays lookup tables mapped to RAM, HDL Coder generates another script that clears the highlighting. To turn off highlighting, click the link to the clearhighlighting script.

Settings

Default: On

On

Generate a MATLAB script that highlights Lookup Table blocks that are mapped to RAM.

It is recommended that you leave this setting enabled so that you can identify the Lookup Table blocks that are mapped to RAM.

Off

Do not generate a script to highlight Lookup Table blocks that are mapped to RAM.

Command-Line Information

Property: HighlightLUTPipeliningDiagnostic
Type: character vector
Value: 'on' | 'off'
Default: 'on'

For example, you can specify this property while generating HDL code for the symmetric_fir subsystem inside the sfir_fixed model by using either of these methods:

  • Use hdlset_param to set the parameter on the model. Then generate HDL code by using makehdl.

    hdlset_param('sfir_fixed','HighlightLUTPipeliningDiagnostic','off')
    makehdl('sfir_fixed/symmetric_fir')

  • Pass the property as an argument to the makehdl function.

    makehdl('sfir_fixed/symmetric_fir','HighlightLUTPipeliningDiagnostic','off')

To set this property, use the functions hdlset_param or makehdl. To view the property value, use the function hdlget_param.

Highlight dead blocks removed in generated code

Use this setting to generate a script to highlight the unused blocks in your model that are removed during HDL code generation. The unused blocks are typically in upstream logic connected to a Terminator block. HDL Coder removes upstream logic connected to Terminator blocks because it does not contribute to the output.

HDL Coder generates the highlighting script and a script that clears the highlighting. To highlight the unused blocks, click the link to the highlightRemovedDeadBlocks.m script. To turn off highlighting, click the link to the clearHighlightingRemovedDeadBlocks.m script.

Settings

Default: On

On

Generate a MATLAB script that highlights dead blocks removed in generated code. HDL Coder generates this script only if there are components removed during HDL code generation.

Off

Do not generate a script to highlight dead blocks removed in generated code.

Command-Line Information

Property: HighlightRemovedDeadBlocks
Type: character vector
Value: 'on' | 'off'
Default: 'on'

For example, you can specify this property while generating HDL code for the symmetric_fir subsystem inside the sfir_fixed model by using either of these methods:

  • Use hdlset_param to set the parameter on the model. Then, generate HDL code by using makehdl.

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

  • Pass the property as an argument to the makehdl function.

    makehdl('sfir_fixed/symmetric_fir','HighlightRemovedDeadBlocks','on')

To generate the highlighting script, add logic that connects to a Terminator block in the DUT subsystem sfir_fixed/symmetric_fir .

To set this property, use the functions hdlset_param or makehdl. To view the property value, use the function hdlget_param.

See Also