インテル® Quartus® Prime プロ・エディションのユーザーガイド: デザインの推奨事項

ID 683082
日付 8/03/2023
Public
ドキュメント目次

2.3.3.1. インテル® Stratix® 10デバイスにおけるクロック領域割り当て

インテル® Stratix® 10デバイスでは、クロック・ネットワークはプログラム可能なクロック配線を使用して構築されます。他の インテル® デバイスファミリーと同様に、フロアプランニングにクロック領域割り当てを使用し、各クロックツリーのサイズと位置を制御することができます。

インテル® Quartus® Prime プロ・エディション・ソフトウェアはバランスのとれたクロックツリーを生成しますが、プロセスの変動やジッターなどのタイミング変動の原因により、クロックツリーにおけるスキューを完全にバランスがとれた状態にすることは困難です。パスが長く、挿入遅延が大きいほど、タイミングのばらつきが大きくなります。ただし、タイミング・アナライザーでは、共通クロックパスにおけるタイミング変動の原因を考慮して排除することができます。これは実際には、クロック領域のサイズがクロックツリーのワーストケース・スキューに大きな影響を与えることを意味し、クロックツリーが大きいと、クロック領域が小さい場合に比べて挿入遅延とワーストケースのクロックスキューが大きくなります。クロック領域とクロックソース間の距離によっても挿入遅延は増えますが、この距離がおよぼすワーストケースのクロックスキューに対する影響は、クロック領域のサイズがおよぼす影響よりもはるかに小さくなります。

考慮すべきケースの1つは、デザインに含まれている高速クロックドメインがデザインプロセス中に大きくなることが予想される場合です。クロック領域制約を指定してコンパイラーが自動的に生成するよりも大きなクロック領域を作成することで、クロック挿入遅延やクロックスキューが大きくなった場合でも、堅牢なタイミング・クロージャーを達成できるようになります。

その他のデザインにおける考慮事項には、クロック信号の最小パルス幅制約があります。クロック信号が インテル® Stratix® 10のクロック・ネットワークで正確に伝播するには、クロックパルスの立ち上がりエッジと立ち下がりエッジの間で最小遅延を満たしている必要があります。タイミング・アナライザーでこの制約を満たしていることを保証できない場合は、クロック信号がすべての動作条件下で想定どおりに伝播しない可能性があります。これは、クロックパスの遅延変動が大きくなりすぎると発生する可能性があります。この状況は通常発生しませんが、クロック信号がコア・ロジックエレメントまたはコアの配線リソースを介して配線されている場合に発生する可能性があります。

インテル® Stratix® 10デバイスをターゲットとするデザインでは、クロック領域を長方形に制約することができます。Chip PlannerのClock Sector Regionレイヤーで示されているとおり、このサイズはセクターグリッドによって定義されます。

この割り当てでは、長方形の左下と右上の座標を "SX# SY# SX# SY#" の形式で指定します。例えば、"SX0 SY0 SX1 SY1" では、クロックを2x2の領域に制約し、セクターの左下は (0,0)、セクターの右上は (1,1) になります。1つのセクターのみに広がる制約の場合は、そのセクターの位置を指定するだけで十分です ("SX1 SY1" など)。拘束する長方形の左下角と右上角をチップ座標で指定することもできます ("X37 Y181 X273 Y324" など)。ただし、これらの制約はセクターに揃っている必要があります (セクター座標を使用することでこれは保証されます)。もしくは、フィッターで自動的に、元の割り当てを含みセクターに揃えられている最小の長方形を取得します。"SX# SY# SX# SY#"|"X# Y# X# Y#" 文字列は大文字と小文字を区別しません。