インテルのみ表示可能 — GUID: hkr1557328354906
Ixiasoft
9.1. 概要
9.2. ゴールデン・ハードウェア・リファレンス・デザイン (GHRD)
9.3. ソフトウェア要件の定義
9.4. ソフトウェア・アーキテクチャーの定義
9.5. ソフトウェア・ツールの選択
9.6. ブートローダー・ソフトウェアの選択
9.7. 使用アプリケーション向けオペレーティング・システムの選択
9.8. Linux*用のソフトウェア開発プラットフォームのアセンブル
9.9. パートナーOSまたはRTOS用のソフトウェア開発プラットフォームのアセンブル
9.10. ドライバーに関する考慮事項
9.11. ブートとコンフィグレーションに関する考慮事項
9.12. システムリセットに関する考慮事項
9.13. フラッシュに関する考慮事項
9.14. アプリケーションの開発
9.15. テストおよび検証
9.16. エンベデッド・ソフトウェアのデザイン・ガイドラインの改訂履歴
インテルのみ表示可能 — GUID: hkr1557328354906
Ixiasoft
9.6. ブートローダー・ソフトウェアの選択
インテル® Agilex™ SoC HPSの一般的なブートフローを次の図に表します。
図 15. インテル® Agilex™ SoCの一般的なブートフロー
ブートローダー・ソフトウェアは、ソフトウェア開発プラットフォームにおいて最も重要なコンポーネントの1つです。ブートローダーでは、システムを初期化し、次のブートイメージであるオペレーティング・システムまたはベアメタル・アプリケーションに制御をロードして渡します。
インテル® Agilex™ SoCブートローダー ・ソフトウェアは次の2つの異なるステージに分かれています。
- First Stage Bootloader (FSBL): SDMによってFPGAコンフィグレーション・ビットストリームからHPS側のオンチップメモリーにロードされます。
- HPSをコンフィグレーションするために不可欠な初期のハードウェア設定を提供
- ソフトウェア機能によりHPSのフラッシュおよびペリフェラル・コンポーネントを制御
- ユーティリティーにより早期デバッグおよびトラブルシューティングが可能
- Second Stage Bootloader (SSBL): FSBLによってDDRAMにロードされ、FSBLよりもはるかに多くの機能 (ネットワーク・アクセス、コマンドライン・インターフェイス、スクリプティング・サポートなど) を持つ可能性があります。
いくつかのブートローダーが、 インテル® Agilex™ に対してイネーブルされています。
- U-Bootブートローダー: オープンソース・コミュニティーから入手可能な機能の一部を継承しています。Linux* OSユーザーの間で広く利用されています。U-Bootブートローダーは、GPLライセンスによって管理されています。
- UEFIブートローダー: 豊富な機能があり、RTOSユーザーに広く利用されています。オープンソースのBSDスタイルライセンスで管理されています。
- ATF (ARM Trusted Firmware) ブートローダー: UEFIで利用され、第1ステージ・ブートローダーのみを提供します。BSDスタイルライセンスを使用し、ベアメタル・アプリケーションを直接ロードするためにSSBLの代わりに使用できます。
ガイドライン: ソフトウェア開発プラットフォームに適したブートローダーを選択するには、最新バージョンを使用します。また、GPLおよびオープンソースのBSDライセンスについて十分に理解し、どのライセンス条項がご自身の要件に最適かを検討してください。
一般的なHPSシステムには数百個のレジスターがあます。レジスターの設定は、MPUサブシステム、ネットワーク・オンチップ・インターコネクト・コンポーネント、DDRAMメモリー、フラッシュ・ブート・ソース、およびペリフェラル・インターフェイスの特定のコンフィグレーションに対して行ってください。