Quartus® Prime プロ・エディションのユーザーガイド: デザイン最適化

ID 683641
日付 7/08/2024
Public
ドキュメント目次

6.1. 配置アサインメントの最適化ガイドライン

特定のレジスターおよび組み合わせノードに場所を割り当てるための最適化ガイドラインについては、以下を参照してください。

ガイドライン: 特定の場所へのロジックの割り当て

デザイン最適化の一環として、ターゲットデバイスのフロアプラン内の特定の場所にデザイン内のロジックを割り当てることを検討するかもしれません。このような割り当てを行うことで、良好な配置結果を保持したり、将来のコンパイルで結果を再現したりすることができます。ほとんどの場合、デザイン・パーティションは配置を保持するための最良の方法です。詳細については、Quartus Prime プロ・エディションのユーザーガイド: デザインのコンパイルデザイン・パーティションの作成を参照してください。

ガイドライン: 1 つまたは 2 つのレジスターの場所の割り当て

場合によっては、1 つまたは 2 つのレジスターや組み合わせノードの場所を割り当てたいことがあります。ロジックの量が非常に少ない場合、デザイン・パーティションは通常実用的ではありません。フロアプランの特定の領域に配置を制限したい場合は、Logic Lock 領域配置制約を使用できます。詳細については、 Logic Lock の配置制約の定義を参照してください。

ガイドライン: ALM 内の特定の場所へのレジスターの割り当て

ALM 内の特定の場所にレジスターを割り当てたい場合、割り当てたい特定の場所を把握しておく必要があります。特定の場所には、ALM を含む LAB の X および Y 座標、および LAB 内の ALM 内のレジスターのサブロケーションが含まれます。デザイン最適化中にこの情報を見つける最も簡単な方法は、デザインのコンパイル済みバージョンから始め、Timing Analyzer でタイミングパス・レポートを確認することです。Location 列の文字列を場所の割り当ての値として使用します。

例えば、コンパイル結果の例の場所に LOOP[42].my_div|r[6] を割り当てるには、次の QSF ステートメントを割り当てます。

set_location_assignment -to LOOP[42].my_div|r[6] FF_X117_Y26_N49
図 74. コンパイル結果の例


ガイドライン: コンパイラーによって変更されたノードへの割り当ての作成

コンパイル中にコンパイラーが変更または最適化するレジスターに配置割り当てを行った場合、コンパイラーが後続のコンパイルでその割り当てを適用しない可能性があります。コンパイラーが変更または最適化したレジスターには、チルダ文字 (~) で始まるサフィックスが含まれます。コンパイル中にコンパイラーがレジスターを変更すると、回路の他の部分を変更するたびにサフィックスが変更される可能性があります。サフィックスが変更されると、割り当てに関連付けられた名前も変更されるため、コンパイラーはその割り当てを適用しません。

ガイドライン: 特定の場所への組み合わせロジックの割り当て

一般的に、組み合わせロジックを特定の場所に割り当てる価値はありません。組み合わせロジックの名前は、コンパイルごとに微妙に変わる可能性が高いためです。名前が変更された場合、名前が一致しなければ、場所の割り当ては無視されます。