消費電力制約アドバイザーは、デザイン内の制御信号すべてを対象に、ツールで計算したスイッチング アクティビティをレポートします。制御信号には、リセットおよびイネーブル (リセット、セット、クリア、プリセットなど) が含まれます。妥当なスイッチング アクティビティを供給することにより、消費電力をより正確に解析できます。
消費電力制約アドバイザーを実行するには、AMD Vivado™ IDE で をクリックします。
レポートの表を確認し、非アクティブなイネーブルや必要以上の時間アサートされるリセット信号など、クリティカルな制御信号のスイッチング アクティビティが正しくない場合は修正します。消費電力制約アドバイザー レポートには、次の制約が表示されます。
- Net
- ネットは制御セット、ブロック RAM イネーブル、レジスタ イネーブルのいずれかです。
- Confidence
- ネットのスイッチング アクティビティがどの程度正確か (信頼性レベル) を示します。ネットの信頼性レベルを計算するときに消費電力ツールで使用されるしきい値は、次のとおりです。
- セット/リセット/プリセット/クリア
-
表 1. 消費電力ツールのしきい値 信頼性レベル スタティック確率 Low > 8% Medium 5% - 8% High < 5% - ブロック RAM イネーブル
-
表 2. ブロック RAM イネーブル 信頼性レベル スタティック確率 Low < 1% 信頼性レベルが Low の場合、ブロック RAM はデザインでアクティブではないので、削除できるかどうかを再検討してください。
- レジスタ イネーブル
-
表 3. レジスタ イネーブル 信頼性レベル スタティック確率 Low < 3% Medium > 3% 信頼性レベルが Low の場合、デザインのレジスタがアクティブではないので、再検討する必要があります。信頼性レベルが Medium の場合、ユーザーの定義した、またはツールで設定された妥当な時間でレジスタがイネーブルになることを示します。
- Fanout
- 各制御信号のファンアウト (駆動される最下位プリミティブの数) を示します。ファンアウトが大きい信号は最も重要で、確認して修正すべき信号です。ファンアウトの大きい信号は、デザインを広い範囲に渡り、ダウンストリーム スイッチングをディスエーブルにしてしまうので、消費電力がかなり低くレポートされる可能性があるからです。ファンアウトの小さい信号だと、スイッチングが間違っていても影響が小さいので、重要度は低くなります。
- Fanout Types
- ネットが制御セット (セット、リセット、クリア、プリセット) かブロック RAM イネーブルかを示します。制御ネットに複数のエントリがあると、そのネットには複数のファンアウトがあり、ファンアウト セルにある複数のピンを駆動しているということになります。
- Polarity
- 制御セットの極性を示します。ネットのスタティック確率を設定する際は、極性に注意してください。
- Static Probability
- 編集可能なフィールドで、ネットのファンアウト タイプと極性に基づいた正しいアクティビティを入力する必要があります。
- Toggle Rate
- ネットのトグル レートを示します。このフィールドは編集可能で、スタティック確率に基づいて入力する必要があります。
消費電力制約アドバイザーは、次のように使用することをお勧めします。
- Confidence 列をクリックして Low が一番上になるように並べ替えます。
- Ctrl キーを押しながら Fanout 列を 2 回クリックし、ファンアウトの大きいものからリストされるようにします。
- [Confidence] が [Low] でファンアウト 200 を超える制御ネットすべてを確認し、新しい Static Probability と Toggle Rate を定義します。
- OK をクリックしてデザインに制約を適用し、[Report Power] コマンドを再実行します。
次に、制御セットおよびブロック RAM イネーブルに正確なスイッチング アクティビティを設定するのに役立つ例を示します。
アクティブ High リセット、スタティック確率 0.9
これは、リセットが 90% の時間 High (アクティブ) であることを示します。ロード セルが 90% の時間リセットされるということなので、これは多すぎます。[Static Probability] を 0、[Toggle Rate] を 0 に設定して、リセットが非アクティブ、つまり、より現実的な状態になるようにスイッチング アクティビティを変更します。
スタティック確率 0、トグル レート 0 のブロック RAM イネーブル
report_power -advisory -file power_report.pwr
アドバイザリの表は、このレポート ファイルの最後に追加されます。