Dataflow Paths - 2025.2 English - UG906

Vivado Design Suite User Guide: Design Analysis and Closure Techniques (UG906)

Document ID
UG906
Release Date
2025-12-10
Version
2025.2 English

Use the get_dataflow_paths command to return a list of paths from the dataflow netlist that include two or more cells connected together. This command helps you target your analysis on specific cells and their connecting logic.

Use the following instructions to display dataflow paths in the Vivado IDE:

  1. Run the show_objects Tcl command. For example:
    show_objects -name dataflow_paths_1 [get_dataflow_paths]
  2. View the results in the Vivado interface. You can select and cross probe the returned paths in the Schematic, Netlist, and Device windows.

Use the following instructions to generate dataflow paths using the GUI:

  1. Select Tools > Show Dataflow Paths.
  2. Configure the settings in the dialog box:
    • Control how many paths to return
    • Set the minimum and maximum number of cells to trace through
    • Define the minimum data width of buses in a path
    • Target paths that start, end, or pass through specific cells
  3. Or, right-click a leaf cell and select Show Dataflow Paths > From/Through/To Cell

  4. Vivado opens the dialog box with the selected cell name prefilled.

get_dataflow_paths

The get_dataflow_paths command prioritizes results. Vivado scans the dataflow netlist using the -max_depth value (default: 10) and returns up to the number of paths set by -max_paths (default: 100). When more paths exist than allowed, Vivado returns them in this order:

  1. Paths equal to max_depth
  2. Paths shorter than max_depth, sorted by depth
  3. Remaining paths in alphabetical order of the startpoint
To customize the results in Tcl, use the following switches with get_dataflow_paths:
-from <cells>
Set startpoints
-to <cells>
Set endpoints
-through <cells>
Set midpoints
-max_depth <integer>
Set the longest path to search (default: 10)
-min_depth <integer>
Set the minimum path depth (used only if max_paths is not reached)
-max_paths <integer>
Set the number of paths to return (default: 100)
-min_width <integer>
Set the minimum bus width to include (default: 1)
Set these options to control the number, depth, and width of the paths returned.