1 つのデザインに多くのクロックを存在させることはできますが、すべてのクロックが相互に作用するわけではなく、特定のクロック相互作用を起こすこともできません。アシンクロナス・クロックは無関係なクロックです (アシンクロナス・クロックは理想的なクロックソースが異なります)。排他クロックが同時にアクティブになることはありません (例: マルチプレクス・クロック)。タイミング・アナライザーがこれらのクロック相互作用を分析できないようにするためには、相互排他性を宣言する必要があります。
set_clock_groups コマンドを使用して、排他またはアシンクロナスのクロックを指定できます。次のリストは、set_clock_groups コマンドと使用可能なオプションを示します。
set_clock_groups [-asynchronous | -exclusive] -group <クロック名> -group <クロック名> [-group <クロック名>] ...
表 1 に set_clock_groups コマンドのオプションを示します。
以下の例では、set_clock_groups コマンドとそれに対応する set_false_path コマンドを示します。
# クロック B と D がアクティブな場合、クロック A と C は決してアクティブになりません set_clock_groups -exclusive -group {A C} -group {B D} # Equivalent specification using false paths set_false_path -from [get_clocks A] -to [get_clocks B] set_false_path -from [get_clocks A] -to [get_clocks D] set_false_path -from [get_clocks C] -to [get_clocks B] set_false_path -from [get_clocks C] -to [get_clocks D] set_false_path -from [get_clocks B] -to [get_clocks A] set_false_path -from [get_clocks B] -to [get_clocks C] set_false_path -from [get_clocks D] -to [get_clocks A] set_false_path -from [get_clocks D] -to [get_clocks C]