NXPチームの皆様、こんにちは。
現在、S32K328上で動作する既存のアプリケーションにOTA A/Bスワップのサポートを追加する設計・実装段階にあります。
これは、完全なFOTAフレームワークを統合するのではなく、既存のソフトウェアをOTA機能で拡張する初期実装です。
現在の環境
OTAバイナリは、カスタムOTA CDDによってUART経由で受信されます。
現在のVector構成には、NvM/Fee(D-Flash)専用のMemAccMが含まれています。P-FlashアプリケーションをプログラミングするためのMemAccM設定はなく、Vector OTA/FOTAも使用していません。
そのため、OTA CDDのMem_43_INFLSを使って非アクティブなアプリケーションのフラッシュを直接消去・プログラムすることを検討しています。
以下の点についてご指導いただければ幸いです。
VectorのOTA/FOTAパッケージを使わない場合、A/Bスワップ環境でOTA画像プログラミングを管理するための推奨される低レベルのドライバーはMem_43_INFLSでしょうか?
あるいは、MemAccMは、カスタムOTA実装の場合も含め、P-Flashプログラミングに対応するように拡張されるべきでしょうか?
HSE A/Bスワップを有効にした後:
HSE_SRV_ID_ACTIVATE_PASSIVE_BLOCK を正常に実行するための必須の前提条件は何ですか?
例:
S32K328のC40フラッシュコントローラーはDフラッシュ(Fee/NvM)とPフラッシュ(非アクティブブロック)間の同時操作をサポートしていますか?
そうでない場合、推奨される同期戦略は何ですか?
以下のアーキテクチャはNXPの推奨事項に準拠していますか?
UART
↓
カスタムOTA CDD
↓
Mem_43_INFLS(非アクティブなPフラッシュの消去/書き込み)
↓
画像認証
↓
HSE_SRV_ID_ACTIVATE_PASSIVE_BLOCK
↓
システムリセット
↓
HSE/BAF がパッシブブロックをアクティブ化します
私たちは特に、この軽量化アプローチが適切であり、HSE(環境・安全・衛生)要件に準拠しているかどうかについて、ご助言を求めています。
HSE A/Bスワップ対応のカスタムOTAに関するアプリケーションノート、RTD例、または参考実装があれば、ぜひご指導いただけるとありがたいです。
再開まで今しばらくお待ちください。
よろしくお願いします、
ヴェンカテシュ KV
#s32k328