JAJAA75 October   2025 AM62L , AM62P , AM67 , AM68 , AM69 , TDA4VM

 

  1.   1
  2.   概要
  3.   商標
  4. 1VTM モジュール
    1. 1.1 VTM モジュールの説明
    2. 1.2 VTM の動作原理および使用方法
  5. 2TI プロセッサのハードウェア温度保護
    1. 2.1 VTM の過熱保護スレッショルド
    2. 2.2 最高ハードウェア温度保護
  6. 3ソフトウェア温度保護戦略
    1. 3.1 オプションのソフトウェア温度保護対策
    2. 3.2 Linux 温度保護ロジック
    3. 3.3 Linux で未使用のコアを無効化する
  7. 4まとめ
  8. 5参考資料

VTM の動作原理および使用方法

前のセクションでは、各 VTM が最大 8 つの温度センサを制御でき、VTM レジスタが温度センサからデータをキャプチャしてレジスタに保存できることについて説明しました。このレジスタの名前は、WKUP_VTM_TMPSENS_STAT_j[9-0] DATA_OUT です。温度値は、対応するレジスタに 10 ビットのバイナリ数として保存されます。表 1-2に、いくつかの典型的な実際の温度値と、それに対応する 10 ビット温度値を示します。

表 1-2 オンチップ温度センサレジスタの値と実際の値変換
実際の温度 -40 -25 0 25 50 75 100 105 125 150
10 ビット Dec 28 77 164 260 366 485 620 648 773 949
10 ビット Hex 01C 04D 0A4 104 16E 1E5 26C 288 305 3B5

前述の表参照方法は、読み取った値と実際の温度値との大まかな対応関係を示すことができます。この方法は、レジスタに保存されている温度データと実際の温度値との変換にも適用できます。この表参照方法では、概算の温度範囲しか提供されませんが、正確な温度値を得るには、次の式を使用して計算する必要があります。

式 1. y=6.0373×10-8 ×x3-1.7058×10-4×x2+0.32512x-49.002-9.2627 ×10-12×x4

上記の式を Python スクリプトでプロットすると、次のような図が生成されます。これは、ほぼ単調増加関数です。このスクリプトは、SOC から読み取ったレジスタ値を入力し、実行後に、対応する正確な温度値を自動的に計算され、注釈が付けられます。スクリプトはこちらからダウンロードできます。

 レジスタ値と実際の値の計算式図図 1-3 レジスタ値と実際の値の計算式図

これにより、対応する実際の温度を正確に計算できるため、システム温度保護ロジックの変更がより容易になります。例えば、WKUP_VTM_MISC_CTRL2[25-16] MAXT_OUTRG_ALERT_THR0 と WKUP_VTM_MISC_CTRL2[9-0] MAXT_OUTRG_ALERT_THR を変更することで、SOC の最大温度保護のスレッショルドを変更できます。

テキサス インスツルメンツが提供するデフォルトの Linux ソフトウェアでは、オンチップ温度センサの値を読み取るための対応するインターフェイスとコマンドが用意されています。使用されるコマンドは類似しています。例えば、AM62A 評価基板では、以下のコマンドを使用して 3 つの温度センサーの値を読み取ることができます。すべての温度センサの値はミリ摂氏単位で読み取られ、結果は次のように表示されます。センサ 1、センサ 2、センサ 3 の温度はそれぞれ 45.2℃、38.7℃、38.9℃です。センサの位置の違いにより、測定温度は変動する可能性があり、平均値から ±5℃ の偏差が生じます。この範囲は、対応する SOC の最新データシートで定義されています。

root@am62axx-evm:/opt/edgeai-gst-apps# cat /sys/class/thermal/thermal_zone*/temp
43209 
38749
38983