タイミング・アナライザーのマルチサイクル・パス・コマンド

author-image

投稿者:

デフォルトでは、タイミング・アナライザーはシングルサイクル分析を使用します。パスを分析する際、セットアップのローンチ時間とラッチのエッジ時間は、それぞれの波形の中で最も近い 2 つのアクティブエッジを見つけることで決定されます。ホールド分析では、タイミング・アナライザーは、(最悪のケースだけでなく) 考えられるあらゆるセットアップ関係の 2 つのタイミング条件に対してパスを分析します。そのため、ホールドローンチおよびラッチの時間は、セットアップローンチおよびラッチのエッジとは全く無関係である可能性があります。

マルチサイクル制約は、ソース (-start) またはデスティネーション (-end) のクロックを基準に、指定されたクロックサイクル数だけセットアップまたはホールドの関係を緩和します。エンド・マルチサイクル制約を 2 に設定すると、最悪の場合、セットアップ・ラッチのエッジがデスティネーション・クロック 1 周期分延長されます。

ホールド・マルチサイクル制約は、デフォルトのホールド位置 (デフォルト値は 0) に基づいています。エンドホールドのマルチサイクル制約を 1 に設定すると、デフォルトのホールド・ラッチ・エッジからデスティネーション・クロック周期が 1 つ減ります。set_multicycle_path コマンドを使用して、デザイン内のマルチサイクル制約を指定できます。次のリストに、set_multicycle_path コマンドと利用可能なオプションを示します。

set_multicycle_path
     [-setup | -hold]
     [-start | -end]
     [-from <from list>]
     [-to <to list>]
     [-thru <thru list>]
     <path multiplier>

表 1 に、set_multicycle_path コマンドのオプションを示します。

オブジェクトがタイミングノードの場合、マルチサイクル制約は 2 つのノード間のパスにのみ適用されます。オブジェクトがクロックの場合、マルチサイクル制約は、ソースノード (for - from) またはデスティネーション・ノード (for -to) がクロックによってクロック処理されるすべてのパスに適用されます。