2375554_ja-JP

キャンセル
次の結果を表示 
表示  限定  | 次の代わりに検索 
もしかして: 

2375554_ja-JP

2375554_ja-JP

KW47 ROMブートローダーは、どのイメージが最新かをどのように判断するのですか?

こんにちは、NXP チームの皆様、

私はKW47のデュアルイメージブート/OTAアップデートのコンセプトに取り組んでおり、 ROMブートローダーがブート時に最新のイメージを選択する仕組みを明確にしたいと考えています。

私の理解では、デュアルイメージ構成では、内部フラッシュに2つの有効なアプリケーションイメージが存在する可能性があります。例えば、次のようになります。

プライマリイメージ-> ROMCFG / IFR0 のブートイメージベースアドレスによって構成されたアドレス
セカンダリイメージ-> ROMCFG / IFR0 の FLW 領域 / ABASE で設定されたアドレス

リセット時、ROMブートローダーは両方のイメージをチェックし、どちらを起動するかを決定します。

私の疑問は主にこの点についてです。

KW47 ROMブートローダーは、どちらのイメージが新しいかをどのように判断するのですか?

Re: How does the KW47 ROM Bootloader decide which image is newest?

こんにちは、お元気でお過ごしでしょうか!

 

デュアルイメージ構成では、イメージはプライマリ(実験用または最新のファームウェアイメージ)とセカンダリ(バックアップ用フォールバックイメージ)として扱われます。

KW47 ROMブートローダーは、各イメージのメタデータにあるfirmwareVersionフィールドを使用してより新しいイメージを判断し、より新しいバージョンのイメージを起動します。両方のバージョンが同じ場合、ブートイメージのベースアドレスがブートの判断基準として考慮され、新しいバージョンのイメージが検証/認証またはロールバック保護に失敗した場合、ブートROMは古いイメージにフォールバックします。

ファームウェアバージョンの強制に関して言えば、ブートROMは、アップデートイメージのバージョンがシステムで許可されているバージョンよりも古い場合はファームウェアのアップデートを防止し、ファームウェアのバージョンが実行に許可されている最小バージョンよりも古い場合はブートを防止(セキュアブートの失敗)することで、ロールバック保護を提供します。

 

詳細については、KW47セキュリティリファレンスマニュアルを参照してください。

 

よろしくお願いします、
ソフィア。

Re: How does the KW47 ROM Bootloader decide which image is newest?

こんにちは、ソフィアさん。

ご回答ありがとうございます。
「KW47 ROMブートローダーは、各イメージのメタデータにあるfirmwareVersionフィールドを使用して新しいイメージを判断し、より新しいバージョンを起動します。」両方のバージョンが同じ場合、ブートイメージのベースアドレスがブートの判断基準として考慮され(タイブレーカーとして)、新しいバージョンのイメージが検証/認証またはロールバック保護に失敗した場合は、ブートROMは古いイメージにフォールバックします。

アプリケーション開発者側の視点から、実装に関する詳細を一つ明確にしておきたいと思います。

KW47 ROMブートローダーが読み取れるように、各ファームウェアイメージ内にこのイメージメタデータ、特にfirmwareVersionフィールドをどのように設定または配置すればよいでしょうか?

具体的には:

ROMブートローダーがファームウェアバージョンを見つけることを期待する、各ブート可能イメージ内の固定メタデータ/ヘッダーアドレスはありますか?
このメタデータは、画像の開始アドレスを基準とした相対的な位置にありますか?例えば、画像ベクターテーブルや画像ヘッダーの近くなどでしょうか?

タグ(1)
評価なし
バージョン履歴
最終更新日:
‎06-11-2026 03:36 AM
更新者: