JAJAA11 September 2025 F29H850TU , F29H859TU-Q1
はい。推奨される方法として、ユーザーはデバイス初期化の際に NMI ISR をセットアップしておく必要があります。これにより、高優先度のエラー (例えば Group0 のエラー イベント) が発生して NMI が各 CPU にトリガされた場合でも、F29x TRM および ESM マルチコア F29 SDK の例に従って、EAM および ESM 内のエラー フラグを適切にクリアできるようになります。ESM の raw ステータス フラグをクリアしないと、NMIWD のタイムアウトが発生し、XRSn (デバイスリセット) がトリガされます。ユーザーは RESC (リセット要因) レジスタ内の NMIWD ビットを確認することで、それを確認できます。
回答 — ユーザー / アプリケーション側で NMI ISR が設定されていない場合、CPU は BootROM 内のデフォルト NMI ハンドラに移行し、そこで CPU がエラーステータスとフラグをクリアして保存し、デバッグのために M0 RAM アドレスに格納します。詳細については、BootROM TRM の該当する章を参照してください。
回答 — ESM の NMIWD タイムアウトが発生し、対応する CPU から高優先度のウォッチドッグ割り込み出力が生成されます。ESM CPU1 の高優先度ウォッチドッグ割り込み出力は XRSn を発生させるように接続されており、ESM CPU2/ CPU3 はそれぞれの CPURSn を発生させます。これは ESM サブシステム統合ビュー図に示されています。
回答 – ESM Group0 エラー イベントがアクティブで、EAM モジュールを通じて渡されているものの、NMI を生成するように構成されていない場合、CPU は故障状態に入ります。CPU EAM モジュールの高優先度エラーがアクティブになった場合は、必ず該当 CPU に NMI をトリガーするよう構成しておく必要があります。
回答 – いいえ。本書で「EAM エラー フラグ」と呼ばれているエラー タイプ レジスタや、「ESM エラー フラグ」と呼ばれている ESM RAW ステータス レジスタ (RAW_j) は、PORESETn によってのみリセットされます。これらのフラグは、XRSn や CPURSn の後でも値を保持します。これは、アプリケーション ソフトウェアで処理されなかったエラー イベントに応答して ESM によってリセットがトリガされた場合、デバッグのためにこのエラー フラグ情報が必要となるためです。
回答 – ESM RAW ステータス レジスタ (RAW_j) のフラグをクリアした後は、対応するエラーの ESM 割り込み出力に対して、適切なキーを書き込んで EOI レジスタも更新する必要があります。EOI への書き込みステップは、基本的にユーザーが ESM 割り込み出力を確認したことを示すものであり、その結果、ESM 出力がデアサートされます。EOI レジスタに書き込みを行わない場合、ESM エラー イベント フラグをクリアしても、ESM 割り込み出力はアサートされたままになります。
特定のエラー イベントの発生に基づいて、CPU1 にのみ NMI を生成し、CPU3 には生成しない、またはその逆を行うことは可能ですか?
回答 – はい。ESM は非常に柔軟に設定可能であり、各 CPU 専用の ESM タイルが割り当てられています。そのため、初期化時に設定を行うことで、各 CPU 専用の ESM タイルから任意の CPU に対して NMI または他のエラーレスポンスを生成することや、エラーレスポンスを無効化すること、または別の ESM CPU タイルから特定のエラーイベントに対して異なるレスポンスを設定することが可能です。