Intel® High Level Synthesis Compiler Pro Edition: Reference Manual

ID 683349
Date 4/01/2024
Document Table of Contents

7.3. Component Pipelining Control (hls_disable_component_pipelining Attribute)

If running concurrent invocations of your component does not improve throughput, or if you do not intend to invoke your component repeatedly, avoid extra FPGA area utilization by using the hls_disable_component_pipelining component attribute.

When you specify the hls_disable_component_pipelining, the Intel® HLS Compiler generates a simpler, serialized datapath for your component.

You apply the attribute as shown in the following example:
#include "HLS/hls.h"

component void baz ( /* arguments */ ){
  // component code

You can also disable pipelining the datapath of a loop in your component with the disable_loop_pipelining pragma. For more information about this pragma see Loop Pipelining Control (disable_loop_pipelining Pragma).

Review the Loop Analysis report in the High-Level Design Reports (report.html) to see component invocations and loops with pipelining disabled: