Intel® High Level Synthesis Compiler Pro Edition: User Guide

ID 683456
Date 4/03/2023

A newer version of this document is available. Customers should click here to go to the newest version.

Document Table of Contents

A.2.1. System Viewer

The System Viewer is an interactive view of your system as a hierarchy of block diagrams of how the compiler constructed your component. These diagrams can help you understand how data flows through your component.

Access system-, function-, block-, and cluster-level views of your component by selecting Views > System Viewer in the High Level Design Reports menu.

The System Viewer represents your component and tasks as a system of functions. Each function is divided into a set of blocks. Inside each block is a set of non-branching instructions that covers your code and the compiler loop orchestration optimization. The connections between blocks show the execution flow of your component.

To save the amount of control handshaking infrastructure needed when synthesizing your design, the Intel® HLS Compiler Pro Edition groups instructions within a block into groups called clusters. For more information about clusters, refer to "Clustering the Datapath" in the Intel® HLS Compiler Best Practices Guide .

A branch node indicates the next block to go to and the condition required to go to that block.

The System Viewer is divided into two main panes: Graph List and Graph View. Clicking on different entries in the Graph List shows you different views of your component.

The different views available are as follows:.
  • System View

    The System View of the System Viewer provides a high-level view of components and tasks in your system.

  • Function View

    The Function views of the System Viewer show the blocks inside your component and any tasks. A function appears in this view if it is declared as component or launched as a task function. Other called functions are automatically inlined.

    Click a function name in the Graph List of the System Viewer to see the function view.

  • Block View

    The Block views of the System Viewer show stallable operations in your component and task functions, and the clusters and their connections.

  • Cluster View

    The Cluster views of the System Viewer shows the contents of clusters in your components.

Clicking on an element displays details about the element in the Details pane below Graph List and Graph Viewer panes and highlights connections to and from the element.

You can control the zoom of the diagram in the Graph Viewer pane using your mouse scroll wheel or equivalent touchpad gesture.