A primary clock is a board clock that enters the design through an input port or a gigabit transceiver output pin (for example, a recovered clock).
A primary clock can be defined only by the
A primary clock must be attached to a netlist object. This netlist object represents the point in the design from which all the clock edges originate and propagate downstream on the clock tree. In other words, the source point of a primary clock defines the time zero used by the Vivado IDE when computing the clock latency and uncertainty used in the slack equation.
Primary clocks must be defined first, because other timing constraints often refer to them.