Hi,
私はS32K312と協力して、A / BスワップOTA更新機能を備えたデュアルアプリケーションブートローダーを実装しています。
私は理解したいと思います:
A/B スワップの動作に関する設計、アプリケーション ノート、メモリ レイアウトの詳細な説明があれば、どなたでもお役に立ちます。
NXPから紹介した Unified bootloader Demo - NXP Community
あなたの助けをよろしくお願いいたします!
Hi @DiaDev
ABスワップ機能は、HSEファームウェアがインストールされている場合に使用できるHW機能です。
したがって、最初のステップはHSEファームウェア(AB Swapバージョン)をインストールすることです。
HSEファームウェアパッケージは、S32K3標準ソフトウェアからダウンロードできます。
https://www.nxp.com/webapp/swlicensing/sso/downloadSoftware.sp?catid=SW32K3-STDSW-D
リンクをクリックして、「Automotive SW - S32K3 - HSE Firmware 」を選択するだけです。ここで、派生物の最新バージョンを検索します。
ファームウェアのインストール方法を説明するアプリケーションノートを提供します。また、 Documentation -> 安全なファイル: https://www.nxp.com/products/S32K3
「HSE FW install for S32K3xx」のドキュメント。
また、HSE-B Firmware Reference Manual rev. にも記載されています。2.4 「3 HSE ファームウェアのインストール」のセクション。
HSEファームウェアをインストールするには、3つの方法があります。HSE-B ファームウェアリファレンスマニュアル v2.4 の「3 HSE ファームウェアのインストール」をご覧ください。
最も便利な方法は、おそらくIVTによるインストールです。次の手順が必要です。
- 0x1B000000でのプログラムHSE機能フラグ。これは、いつでもどこでも、コードまたはデバッガーで実行できます。かまいません。
- ピンクのファイルをどこにでもロードしてフラッシュします(アプリケーションと一緒に)。HSE用に予約されたエリアは使用しないでください。
- 次に、ピンクのファイルのアドレスをIVTに入れます。HSE FW RM v2.4の「14.2.2 IVT構造」を参照してください。
これについては、HSE DemoExamples で例を見つけることができます。
https://www.nxp.com/webapp/Download?colCode=S32K3_HSE_DemoExamples
次に、以下を検索します。
c:\NXP\S32K3_HSE_DemoExamples_1_0_0\S32K3_HSE_DemoExamples\Device_Configuration\S32K344_HSE_FW_INSTALL\
このデモでは、すべての手順を示しています。
その後、S32K3のドキュメンテーション>セキュアファイルページにも掲載されている「S32K3XX HSEおよびOTAアドバンストレーニング」を学習できます。
ここでは、パーティション(パッシブブロックとアクティブブロック)を交換する方法を見つけることができます。
https://community.nxp.com/t5/S32K/s32k3-flash-swap-requirements/m-p/1920123/highlight/true#M38475
または、S32K3リファレンスソフトウェアパッケージに含まれているOTAデモを提供しています。
https://www.nxp.com/webapp/swlicensing/sso/downloadSoftware.sp?catid=SW32K3-REFSW-D
したがって、新しいアプリケーションをフラッシュにロードするときは、常にパッシブブロックにロードします。また、アプリケーションは常にアクティブなブロックから実行されます。アドレスは常に同じです。ハードウェアによって再マップされます。
Unified ブートローダは HSE を使用しないため、AB スワップ機能を使用しないことに注意してください。
よろしくお願いします。
Lukas
@DiaDevこのプロジェクトは完了できましたか?