During design implementation, the placer determines the locations of the NMU / NSU / DDRMC endpoints. Unless explicitly located by a user constraint, the locations are assigned as a result of the placer’s efforts to obtain a solution that is optimized for the fabric to close timing. The traffic specification is not taken into account. When assigned, the placer calls the NoC compiler with the endpoints assigned in order to route the NoC nets and satisfy the traffic specification.
The Vivado placer has a setting (-no_noc_opt) that runs the NoC compiler in the preplace
mode, so the placement of fabric is driven by the placement of NoC instances. This
results in better NoC QoS. However, using this option may make it more difficult to
close timing.