MAX_FANOUT
instructs Vivado synthesis on the fanout limits for registers and
signals. You can specify this either in RTL or as an input to the project. The value is
an integer that indicates what the fanout should be. A value of -1 tells the tool not to
perform any replication.
This attribute only works on registers and combinatorial signals.
Note: It replicates the register or the driver that
drives the combinatorial signal to achieve the fan outputs, black boxes, EDIF files, and
Native Generic Circuit (NGC) files are not supported with this attribute.
Recommended: Using MAX_FANOUT attributes on
global high fanout signals leads to sub-optimal replication in synthesis. For this
reason, AMD recommends only using MAX_FANOUT
inside the hierarchies on local signals with medium to low fanout.