PLM でのセキュア ロックダウンのサポート - 2023.2 日本語

Versal アダプティブ SoC システム ソフトウェア開発者向けガイド (UG1304)

Document ID
UG1304
Release Date
2023-10-18
Version
2023.2 日本語

次に、PLM でセキュア ロックダウンがトリガーされるさまざまなシナリオを示します。

不正操作イベント

不正操作イベントが発生した場合、応答は TAMPER_RESP_X レジスタで SYS_INTERRUPT として設定され、実際のセキュア ロックダウン応答は予約済みの RTCA の位置で設定されます。このシーケンスについては、PLM ロックダウン フロー で説明しています。

ブート エラー

ブート エラーが発生し、Halt-on-Boot eFuse がプログラムされている場合、PLM 内でセキュア ロックダウンがトリガーされます。ブート モードが JTAG ではなく、PLM_DEBUG_MODE が有効になっていない場合、PLM は Halt-on-Boot eFuse がプログラムされているかどうかをチェックします。

  • eFuse がブローされていない場合、マルチブートを実行します。
  • eFuse がプログラムされている場合、BootROM インプリメンテーションと同じ SEC_LOCKDOWN_0 応答でセキュア ロックダウンを実行し、次に PMC のセキュア ロックダウンを実行するために RCU に対して TAMPER_RESP_0 をトリガーします。

IPI によるセキュア ロックダウン

ホストが TamperTrigger IPI コマンドを PLM に送信すると、セキュア ロックダウンがトリガーされます。

この API は、タンパー応答に言及する単一のペイロードを持つ IPI によってサポートされます。有効なタンパー応答は、SEC_LOCKDOWN_0SEC_LOCKDOWN_1、および SRST です。この関数は、受信したタンパー応答ペイロードの引数を検証します。コマンド内で受信したタンパー応答が有効な場合、受信したタンパー応答を実行します。それ以外の場合、一意のエラー コードを返します。

表 1. TamperTrigger IPI コマンド フォーマット
コマンド フォーマット
予約 [31:25]=0x0 セキュリティ フラグ [24] 長さ [23:16]=1 PLM=1 CMD_TAMPER_TRIGGER=35
予約 [31:8] タンパー応答 [7:0]

このコマンドは、タンパー応答をトリガーします。成功した場合、PLM は応答を送信せず、RCU 上で動作する BootROM にハンドオフします。有効なタンパー応答は次のとおりです。

表 2. 有効なタンパー応答
フィールド名 ビット 説明
BBRAM_ERASE 4 指定されたタンパー応答に加えて不揮発性 BBRAM キーをゼロ化します。
SYS_LOCKDOWN_1 3 I/O がトライステートになるセキュア ロックダウン。複数のビットがセットされた場合、MSB ビットのみが有効になります。
SYS_LOCKDOWN_0 2 I/O がトライステートにならないセキュア ロックダウン。複数のビットがセットされた場合、MSB ビットのみが有効になります。
SRST 1 システム リセット。
予約 0 有効ではありません。