Versal デバイス DFX デザインのクロッキングに関する既知の制限 - 2023.2 日本語

Vivado Design Suite ユーザー ガイド: Dynamic Function eXchange (UG909)

Document ID
UG909
Release Date
2023-11-15
Version
2023.2 日本語

境界クロック ネットには MBUFGCE プリミティブの分周出力は使用不可

Versal デバイスの MBUFG プリミティブを使用すると、下位レベルでのクロック分周が可能となり、同期 CDC のタイミング クロージャが向上します。DFX デザインでは、MBUFG 最適化はスタティック クロック ネット、内部 RM クロック ネットまたは RP 境界で未分周 O1 出力のみを使用する場合でのみ実行可能です。スタティック MBUFG からの O1 クロック出力は、1 つ以上のダイナミック領域のロードを駆動できます。境界クロック ネットでのクロック分周には、引き続き BUFGCE_DIV/MMCM/PLL クロッキング プリミティブが使用されます。ただし、MBUFG プリミティブにより最下位レベルのロードの近くに共通クロック ノードを配置できるので、MBUFG プリミティブを使用する場合よりも QoR の利点が低くなります。そのため、DFX デザインのパーティション内では MMCM/PLL クロッキング プリミティブを使用して境界クロック ネットを内部クロック ネットに変換し、Vivado ツールによるフルセットの MBUFG 最適化を利用できるようにすることをお勧めします。MBUFG プリミティブの CLRB_LEAF 入力を使用して、BUFDIV_LEAF 分周器を非同期にリセットします。BUFDIV_LEAF 分周器が起動状態にリセットされるようにするために、特別な処置が必要な場合があります。MBUFG を駆動するクロック調整が動作間でリセットされる場合は、MBUFG 出力クロックもリセットして、同期されるようにする必要があります。スタティック領域の MBUFG からの分周出力クロックがリコンフィギャラブル パーティションへの入力を駆動する場合、次のようなエラーが発生します。

ERROR: [DRC HDPR-99] Versal Illegal MBUFGxx drivers in pblock: Reconfigurable Pblock ‘<pblock_name>' contains a MBUFGxx boundary clock net driver ‘<MBUFG Driver Name>'

クロック タイルの分割によるクロック リソースの使用制限

1 行のクロック タイルが複数の RP 間で共有されている場合、この行および一部のサイトを配置に使用できない可能性があります。タイルの分割による配線不可能な状態を回避するため、DFX フローでは自動的に特定のクロッキングまたはロジック リソース タイルの使用が禁止されます。AMD では、この状況を回避するには、使用率の見積もりがデザインのニーズを満たしている場合に、複数の RP Pblock 間に少なくとも 1 クロック領域幅のギャップを保持することをお勧めしています。

たとえば、複数の RP (RP1 および RP2) を含むマルチ RP デザインで、RP1 を通過して RP2 のロードへ到達するために RP2 のクロックが必要な場合、通過する RP (RP1) の一部の BRAM サイトは、配置での使用が禁止されます。

このシナリオでは、RP1 の一部のクロック配線リソースも RP2 によってクレームされるため、これらは平等に共有されます。RCLK タイルの RCLK_BRAM_CLKBUF_* はクロック配線ネットワークの一部であり、2 つの RP による共有のため、上または下半分のみが RP1 によってクレーム可能です。リコンフィギュレーション中におけるコンフィギュレーション フレーム プログラミングのため、RCLK_BRAM_CLKBUF タイルは同じ列半分のすべての BRAM タイルと一緒にプログラムされる必要があります。このような場合、opt_design 中にクリティカル警告が表示されます。禁止サイトは [Device] ウィンドウで表示できます。

[Constraints 18-5689] RCLK tile RCLK_BRAM_CLKBUF_CORE_X*Y* is shared by PBLOCK RP1 (owns LSB tracks) and PBLOCK RP2 (owns MSB tracks). For the shared usage, BRAM tiles and their adjacent interface tiles at the NORTH of the shared RCLK tile are prohibited because they could not be used for placement within PBLOCK RP1.

配線フットプリントの拡張によりクロッキング インスタンスが禁止されることあり

リコンフィギャラブル パーティションが 2 つ以上ある DFX デザインの場合、2 つの RP フットプリントが同じリソースをカバーするように拡張されると、クロック バッファーが使用できなることがあります。次のフロアプランでは、両方の RP (青で表示された rp1rm1 と黄色で表示された rp2rm1) が X9 列 (右側の最も遠いクロック領域) のスペースを占めています。クロック領域 X9Y2 は 2 つのパーティション間で共有されています。

図 1. 2 つの RP によるクロッキングの例

配線拡張により BUFG_GT リソースが取得されると、どちらもチップの右側のサイトを収集しようとします。次の図は、pblock_rp1rm1 の配線フットプリントを拡張したもので、pblock_rp1rm2 エリア内のサイトが含まれています。

図 2. 配線フットプリントを拡張したクロッキング例

独立した 2 つの RP が同じリソースを含めることはできません。競合するサイトには、PROHIBIT プロパティが付いているので、どちらの RP もそれらを使用できません。DFX とフロアプラン DRC は、現在この条件にフラグを立てないようになっています。この競合があるかどうかは、 opt_design 後に禁止箇所があるかどうかでわかります。通常、削減されたクロック リソースがデザインをインプリメントするのに不十分でない限り、これはエラーになりません。

図 3. 禁止サイト

このリソースのオーバーラップを解決するには、X9 列のクロック領域を避けるように青い Pblock ブロックを調整します。これで、黄色の Pblock がチップ右側の BUFG_GT を単独で含有するようになります。X9Y2 クロックの共有領域は関係ありません。青い Pblock がこのクロック領域を含まず、上のクロック領域 (たとえば X9Y3) を占有していたとしても、同じリソース使用が要求されます。

図 4. 2 つの RP を含む調整済みのクロッキング例