LUT Combining in Advanced Flow (Versal) Placement - 2025.1 English - UG904

Vivado Design Suite User Guide: Implementation (UG904)

Document ID
UG904
Release Date
2025-05-29
Version
2025.1 English

In Advanced Flow (Versal) placement, LUT combining is done differently compared to the non-Versal Vivado placement. The Advanced Flow uses a more powerful packing engine, which performs more aggressive LUT combining throughout the placement flow as well as it has the capability to break it subsequently if any combined LUTs are on critical paths. Unlike non-Versal flow, where there is an explicit step for LUT combining during PSIP through LUTNM shape creation, the Advanced Flow placer does not have a specific LUT combining step. Instead, LUT combining can occur during the different phases of the placement flow. In non-Versal Vivado flow, the large portion of LUT combining is done during PSIP along with some opportunistic LUT combining in the flow and the users have an option to turn off PSIP part of the functionality. However, in the Advanced Flow, there is no option available to turn off LUT combining.

In summary, the Advanced Flow's packing engine inherently handles LUT combining more aggressively, eliminating the need for an explicit LUT combining step as seen in non-Versal flow.

Note: LUT Combining does not alter the netlist. It uses two physical LUTs within a single LUT BEL.
Note: After the design has been placed, the following table generated from report_utilization reports dual output LUTs. Dual output LUTs are made up of combined LUTs, LUT6CY, and LUT6_2s. From the Primitive table, subtract the number of LUTCY1s and LUT6_2s from the number to get a LUT combined figure.
Figure 1. CLB Distribution