EXTRACT_RESET controls if registers
infer resets. Typically, the Vivado tools extract or
not extract resets based on heuristics that typically benefit the most designs. In cases
where Vivado is not behaving in a desired way, this
attribute overrides the default behavior of the tool. If an undesired synchronous reset
goes to the flip-flop, this attribute can force it to the D input logic. Conversely, if
the tool is not inferring a reset specified in the RTL, this attribute can command the
tool to move that reset to the dedicated reset of the flop. This attribute can only be
used with synchronous resets; asynchronous resets are not supported.
RTL/XDC support EXTRACT_RESET placed
on the registers. It can take the boolean values: yes or
no. A value of no
means that the reset does not go to the R pin of the register but is routed through
logic to the D pin of the register. A value of yes means
that the reset goes directly to the R pin of the register.