CONTROL_SET_REMAP - 2022.1 English

Vivado Design Suite Properties Reference Guide

Document ID
UG912
Release Date
2022-06-08
Version
2022.1 English

CONTROL_SET_REMAP

While all registers support resets and clock enables, their use can significantly affect the end implementation in terms of performance, utilization, and power. Designs with a large number of unique control sets can have fewer options for placement, resulting in higher power and lower performance. The CONTROL_SET_REMAP property is placed on register primitives to trigger a control set reduction on a specific register during logical optimization (opt_design).

When a logic path ends at a fabric register (FD) clock enable, or synchronous set/reset, the property on the register instructs Vivado logic optimization to map the enable or reset signal to the data pin (D), which has a dedicated LUT connection and can be faster. If possible, the logic is combined with an existing LUT driving the D-input to prevent the insertion of extra levels of logic.

 

IMPORTANT:   This optimization is automatically triggered when the CONTROL_SET_REMAP property is detected on any register. DONT_TOUCH prevents the optimization on specified cells or hierarchy.

For more information on reducing control sets, refer to this link in the UltraFast Design Methodology Guide for the Vivado Design Suite (UG949) [Ref 24] for more information.

Architecture Support

All architectures.

Applicable Objects

Cells (get_cells)

Values

ENABLE: Remaps the EN input to the D-input.

RESET: Remaps the synchronous S or R input to the D-input.

ALL: Same as ENABLE and RESET combined.

NONE: do nothing. This is the default, and is the same as if the property were not set on the cell.

Syntax

Verilog and VHDL Syntax

Not applicable

XDC Syntax

set_property CONTROL_SET_REMAP <value> [get_cells <cell_pattern>]

XDC Syntax Example

# Specifies control set reduction based on Enable signals

set_property CONTROL_SET_REMAP ENABLE [get_cells ff*]

Affected Steps

Opt Design

See Also

EQUIVALENT_DRIVER_OPT, page 221