インテルのみ表示可能 — GUID: sfo1410070149016
Ixiasoft
1.3.1. ブート選択
ブート選択(BSEL)ピンは、第2ステージ・ブート・イメージを取得するにあたって複数の方法を提供します。コールド・リセットでは、ブート・ソースはセキュア・ブートヒューズとBSELピントの組み合わせによって決定されます。このようなヒューズの値とBSELピンの値は、コールド・リセットが開始されるとHPSのセキュリティ・マネージャ・モジュールへ送信されます。HPSがリセットからリリースされる際、ブートROMはシステム・マネージャのbootinfoレジスタをリードし、ブートのソースを決定します。
BSEL[2:0] Value | フラッシュ・デバイス |
---|---|
0x0 | 予約 |
0x1 | FPGA(HPS-FPGA間のブリッジ) |
0x2 | 1.8 V NANDフラッシュ・メモリ |
0x3 | 3.0 V NANDフラッシュ・メモリ |
0x4 | 外部トランシーバを備えた1.8 V SD/MMCフラッシュ・メモリ |
0x5 | 内部トランシーバを備えた3.0 V SD/MMCフラッシュ・メモリ |
0x6 | 1.8 V Quad SPIフラッシュ・メモリ |
0x7 | 3.0 V Quad SPIフラッシュ・メモリ |
一般的なブート・フローは、ブートROMコードがフラッシュ・デバイス上で第2ステージ・ブートローダ・イメージを特定し、これをオンチップRAMへロードし、実行するためのものです。ウォーム・リセット後、ブートROMコードにRAM内でイメージを検索し、それを実行するよう指示することが可能です。
HPSフラッシュ・ソースは以下のような様々な種類のファイルを格納することが可能です。
- FPGAプログラミング・ファイル
- 第2ステージ・ブートローダ・バイナリ・ファイル(最大4コピー)
- オペレーティング・システム・バイナリ・ファイル
- アプリケーション・ファイル・システム
フラッシュ内の第2ステージ・ブートローダ・イメージは、HPSによる認証と解読が可能です。HPSオンチップRAMから直接ブートすると、常に未認証でクリアテキストとなります。ただし必要であればオプションでCRCを持つことができます。
BSELの値が0x1の場合、FPGAはそのブートへのブート・ソースとして選択されます。この選択は、fpga_boot_fヒューズがイネーブルされる場合など永続的なのもではありません。両方のケースにおいてCSELヒューズも無視され、HPSはFPGAが起動するまでリセット状態で保持され、ブートROMがブート・ソースを誤って解釈しないようプログラムする必要があります。
HPSフラッシュ・インタフェースがブート・イメージをロードするよう選択されている場合、ブートROMはオンチップRAMへブート・イメージをロードする前にそのインタエースのイネーブルとコンフィギュレーションを実行し、検証を行い、第2ステージ・ブートローダへソフトウェア・コントロールを渡します。
FPGAファブリックがブート・ソースである場合、ブートROMコードはデバイスのFPGA部分がユーザ・モードとなるまで待機し、コードの実行を準備し、FPGA RAM内でソフトウェア・コントロールを第2ステージ・ブートローダへ渡します。