Macro implementation on DSP block resources is inferred by default in Vivado synthesis.
•In default mode, Vivado synthesis:
°Implements Multiply-Add and Multiply-Accumulate macros.
°Takes into account DSP block resources availability in the targeted device.
°Uses all available DSP resources.
°Attempts to maximize circuit performance by leveraging all the pipelining capabilities of DSP blocks.
°Scans for opportunities to absorb registers into a Multiply-Add or Multiply-Accumulate macro.
Use the KEEP attribute to restrict absorption of Registers into DSP blocks. For example, to exclude a register present on an operand of the Multiplier from absorption into the DSP block, apply KEEP on the output of the register. For more information about the KEEP attribute, see KEEP.
Download the coding example files from Coding Examples.