複雑性レポートの解読と解釈 - 2022.1 日本語

Vivado Design Suite ユーザー ガイド: デザイン解析およびクロージャ テクニック (UG906)

Document ID
UG906
Release Date
2022-05-04
Version
2022.1 日本語

上記の例の [Complexity Characteristics] (複雑性特性) 表には、最上位の下の各階層レベルに対して Rent 指数および平均ファンアウトが示されています。これらのメトリクスの典型的な範囲を次に示します。

  • Rent 指数 (Rent):
    • 0.0 ~ 0.65: 複雑性は低から通常で、問題が発生することは予測されません。
    • 0.65 ~ 0.85: 複雑性は高いとみなされます (特にインスタンス総数が 25000 個を超える場合)。
    • > 0.85: 複雑性は非常に高く、インスタンス数も多い場合は、インプリメンテーションでデザインにエラーが発生する可能性があります。
  • 平均ファンアウト (Average Fanout):
    • < 4: 通常であると考えられます。
    • 4 ~ 5: 密集を発生させずにデザインを配置することは困難です。SSI デバイスでインスタンス数の合計が 10 個を超える場合は、1 つの SLR に収まる配置ソリューション、または 2 つの SLR にまたがる配置ソリューションを見つけるのが困難になります。
    • > 5: インプリメンテーション中にデザインでエラーが発生する可能性があります。

大型で重要度の高いモジュールで Rent 指数または平均ファンアウトが大きい場合は、対処が必要です。小型のモジュール、特に合計インスタンス数が 10,000 個未満のモジュールの場合は、Rent 指数および平均ファンアウトが大きくても問題なく配置配線できます。そのため、Rent 指数および平均ファンアウトと共に [Total Instances] 列も確認する必要があります。

複雑性の特性から常に配線の密集を予測できるわけではありません。I/O ロケーション制約、フロアプラン、ターゲット デバイスでのマクロ プリミティブの位置などほかの要因により、配置ソリューションが制限されて密集が発生する可能性があります。これらの制約の影響は、配置後の密集レポートを使用して解析するのが適しています。

[Complexity Characteristics] 表を解釈するには、次の項目にも注意します。

  • モジュールの LUT6 の割合が大きいと、通常平均ファンアウトが大きくなり、Rent 指数が大きくなる可能性もあります。
  • RAMB および DSP のプリミティブは接続量が多いので、これらのプリミティブの数が多いと、Rent 指数が大きくなる可能性があります。
  • Rent 指数または平均ファンアウトが大きい階層インスタンスが必ずしも問題を引き起こすとは限りません。配置はフラット ネットリストに対して実行され、これらのインスタンスが配置しやすいロジック グループに分割されます。このレポートは、あるモジュールが明らかに際立っている場合にネットリストの問題が存在する可能性のある場所を示します。

大型のモジュールの Rent 指数または平均ファンアウトが大きくそれが原因で密集およびタイミング問題が発生している場合は、次を実行することを考慮します。

  • モジュールの接続を削減します。合成での境界をまたぐ最適化が実行されないよう階層を保持すると、LUT6 の使用率が削減され、さらにネットリストの集積度も低減されます。
  • 合成での LUT の組み合わせをディスエーブルにしてみます。
  • インプリメンテーション中に密集ストラテジを使用するか、配置の -directive オプションに SpreadLogic モードを使用して、密集を緩和します。デザインが SSI デバイスをターゲットとしている場合は、配置で異なる SSI モードを試してみます。
  • SSI デバイスの場合は SLR レベルで、それ以外の場合はクロック領域レベルで単純なフロアプランを使用して、密集したロジックのグループを分けるか、前の実行で得られた良い配置に似たソリューションを目指してグローバル配置をガイドします。