Treat two clocks as asynchronous when you cannot determine their relative phase. For example, clocks from separate board oscillators entering different input ports have no known phase relationship. Handle those clocks as asynchronous; clocks from the same oscillator do not fit this case. In most designs, treat primary clocks as asynchronous. With their respective generated clocks, they form asynchronous clock groups.