シミュレーション結果の評価

ザイリンクス デバイス向けヒートシンクおよび熱ソリューションの設計 (XAPP1377)

Document ID
XAPP1377
Release Date
2022-06-06
Revision
1.0 日本語

シミュレーションからデバイスの最大温度を求める

通常、シミュレーションに成功すると、温度監視点 (一般にはダイ中央) はシミュレーション用に決定した目標温度内に収まります。HBM を使用するデバイスには、FPGA ダイ用と HBM スタック用の 2 つの温度監視点があります。複数のダイまたは複数の HBM スタックで構成されるデバイスでも、モデルは 1 つのダイ グループに対して 1 つの監視点に解析を簡略化します。設計した熱ソリューションが適切に接触している限り、この解析では温度勾配やホットスポットの軽減は通常必要ありません。デザインはプログラマブルであるため、電力密度マップは時間の経過によって移動および変化することがあります。このため、ザイリンクスはシミュレーションおよびデバイスのサーマル ダイオード システム モニター (SYSMON) 測定用の一様な電力マップが仕様の範囲内にあることのみを要件としています。これよりも高い温度勾配は、ザイリンクスがデバイス テストを通じて対処します。熱設計者の最終的な目標は、熱シミュレーションが測定点によって指定された目標値を適切な熱マージンの範囲内で満たすこと、そしてデバイスが回路の測定誤差の範囲内でサーマル ダイオードによって測定された同じ目標温度以下で動作することにあります。

熱マージンの量を求める

シミュレーション結果に対してどの程度の熱マージンを適用すべきかは、デザインおよび設計者ごとに異なります。ただし、すべての熱設計に共通するのは、シミュレーションの不正確さによってデバイスが実際の動作時に熱の目標値を達成できなくなるのを防ぐため、何らかの熱マージンを確保しておく必要がある点です。熱設計における不正確さは、次を含む多くの場所で発生する可能性があります。

  • シミュレーション中に使用する電力
  • 熱モデルの不正確さ
  • システム モニター (SYSMON) によるデバイス測定の不正確さ
  • TIM の接触と厚さのばらつき
  • ヒートシンクの製造誤差
  • エアフローのばらつき
  • その他、デバイスの電力および排熱の不均衡

マージンを確保する際には、シミュレーションでワースト ケース、またはそれよりも条件の悪いパラメーターを使用することがよくあります。たとえば、考え得る最大の消費電力や周囲温度、妨げられたエアフロー、現実にはあり得ないほどの TIM の厚さや接触抵抗などがその例です。これに、さらにマージンを追加することもあります。これではワースト ケースよりも悪い条件に基づく過剰な熱設計となってしまい、場合によってはほとんど非現実的なシナリオとなることがあるため、通常ザイリンクスはこのような手法を推奨していません。すべてのパラメーターが同時にワースト ケースになる確率はきわめて低いため、シミュレーションの制約や境界条件を入力する際には適切な判断が必要です。また、最終的なデザインが必要な熱性能を達成しながらも、過剰設計によってコスト、エリア、重量など望ましくない特性が生じていないことを相対的に確認する手段として結果を解釈する際にも適切な判断が必要です。

つまり、どれだけのマージンがあればデザインの熱性能に十分な信頼性を持つことができるかは設計者次第となります。一般的にそれは、最終システムで実際に発生するデザイン パラメーターへの信頼性に基づいて判断します。ほとんどのシミュレーション パラメーターが超過する可能性があるとして信頼性が低い場合、どのパラメーターにも超過が想定されないシステムよりも大きなマージンが必要となることがあります。最終的に、どれだけのマージンがあれば十分かを判断する際には、シミュレーション パラメーターとシミュレーション自体の品質と確かさが主な指針となります。

熱シミュレーションの結果を消費電力見積もりにバック アノテートする

最初の消費電力見積もりでは、想定される固定のジャンクション温度を熱設計の目標に設定します。熱設計が最終段階に近付いたら、シミュレーション結果を消費電力見積もりにバック アノテートし、デバイスのジャンクション温度を動的に計算することを推奨します。これにより、内部設計が進むにつれて消費電力の見積もり精度を高め、熱マージンを監視できるようになります。これを論理設計の制約として使用することで、デザインの消費電力に対する理解と管理が改善し、熱設計が後で過剰になるのを防ぐことができます。そのためには、ローカル周囲温度と実効 θJA を求めます。これはザイリンクス デバイスのジャンクション温度に関係するため、設計される熱システムの簡略化した熱性能表現としての役割を果たします。一般に、ローカル周囲温度はシミュレーションにおけるデバイスから見た周囲温度です。これは、そのデバイスがほかのデバイスからの排熱にさらされているかどうかによって、システム レベルの周囲温度とは異なることがあります。ただし、ローカル周囲温度はシミュレーション内で見た値に設定する必要があります。実効 θJA は、デバイスのジャンクションから周囲環境までの簡略化した熱抵抗値です。これを使用して消費電力を計算すると、消費電力の見積もりに基づいてジャンクション温度を簡単に計算できます。これは、熱システムの効果による電力の増減の影響を評価する目的でも使用されます。これはシミュレーション結果から計算で求めます。具体的には、シミュレーションでデバイスに適用された電力を、シミュレーション モデルの監視点から見たジャンクション温度の計算値からローカル周囲温度を引いた値で割って求めます。

図 1. 消費電力見積もりのためにシミュレーション結果から実効 θJA を求める計算式

熱設計が固まったら、次の図に示すようにシミュレーション結果から求めたローカル周囲温度および実効 θJA を XPE の環境設定に入力します。

図 2. 環境設定

FPGA デザインの開発中に熱デザインの能力を正しく理解するために、ザイリンクス Vitis™ または Vivado® ツールでもこれを XDC 制約として使用する必要があります。

set_operating_conditions -ambient_temp <temp_value> -thetaja
        <thetaja_value>

このコマンド引数の単位は、–ambient_temp が °C で、–thetaja が °C/W です。図 1 に示した値を使用する場合、Vivado XDC 制約ファイルに次を追加します。

set_operating_conditions -ambient_temp 44.6 -thetaja 3.4

熱シミュレーション結果を消費電力の見積もりに使用する方法の詳細は、XPE で早期の熱解析 のビデオを参照してください。