次の表に、Bootgen の属性を示します。この表では簡単な説明を記載しており、詳細は各属性のリンクをクリックすると参照できます。アーキテクチャ名は、属性を使用する AMD デバイスを示します。
-
zynq
: Zynq 7000 SoC デバイス -
zynqmp
: AMD Zynq™ UltraScale+™ MPSoC デバイス -
fpga
: 7 シリーズ およびそれ以上のデバイス -
versal
: AMD Versal™ アダプティブ SoC。
オプション/属性 | 説明 | 属性を使用するデバイス |
---|---|---|
aarch32_mode | 32 ビット モードで実行されるバイナリ ファイルを指定します。 |
|
aeskeyfile <aes_key_filepath> | AES キー ファイルへのパスです。キー ファイルには、パーティションの暗号化に使用される AES キーが含まれます。ファイルの内容は eFUSE または BBRAM に書き込む必要があります。キー ファイルが指定されたパスに存在しない場合、Bootgen が暗号化に使用される新しいキーを生成します。たとえば BIF ファイルでビットストリームの暗号化を選択した場合、出力は暗号化されたビットストリームとなります。 |
|
alignment <byte> | バイト アライメントを設定します。パーティションは、この値の倍数値に揃えられるまでパディングされます。この属性はオフセットと共に使用することはできません。 |
|
auth_params <options> | 認証の追加オプションは次のとおりです。
|
|
authentication <option> | 認証されるパーティションを指定します。
|
|
bbram_kek_iv <filename> |
該当するキーを暗号化するために使用する IV を指定します。bbram_kek_iv は keysrc=bbram_blk_key を指定すると有効になります。 |
|
bh_kek_iv <filename> |
該当するキーを暗号化するために使用する IV を指定します。bh_kek_iv は keysrc=bh_blk_key を指定すると有効になります。 |
|
bh_key_iv <filename> |
難読化キーまたはブラック キーを復号化する際に使用する初期化ベクター。 |
|
bh_keyfile <filename> |
ブート ヘッダーに格納される 256 ビットの難読化キーまたはブラック キー。これは、暗号化の 注記: 難読化キーは、Versal デバイスではサポートされません。
|
|
bhsignature <filename> | ブート ヘッダーの署名を認証証明にインポートします。これは、秘密キー PSK を共有しない場合に使用できます。署名を作成して Bootgen に供給できます。ファイル フォーマットは bootheader.sha384.sig です。 |
|
big_endian | バイナリ ファイルをビッグ エンディアン形式に指定します。 |
|
blocks <block sizes> | 暗号化の際のキー ローリング機能のブロック サイズを指定します。各モジュールは独自のキーを使用して暗号化されます。最初のキーはデバイスのキー ソースで格納され、後続の各ブロックのキーは直前のモジュール内で暗号化 (ラップ) されます。 |
|
boot_config <options> | ブート イメージのコンフィギュレーションに使用するパラメーターを指定します。 |
|
boot_device <options> | セカンダリ ブート デバイスを指定します。パーティションが存在するデバイスを示します。オプションは次のとおりです。
注記: これらのオプションは、Bootgen のさまざまなデバイスでサポートされます。セカンダリ ブート オプションのリストは、
『Versal アダプティブ SoC システム ソフトウェア開発者向けガイド』 (UG1304) または
『Zynq UltraScale+ MPSoC: ソフトウェア開発者向けガイド』 (UG1137) を参照してください。ハードウェア/レジスタ/インターフェイス情報およびプライマリ ブート モードについては、『Zynq UltraScale+ デバイス テクニカル リファレンス マニュアル』 (UG1085)、
『Versal アダプティブ SoC テクニカル リファレンス マニュアル』 (AM011)、または
『Versal アダプティブ SoC レジスタ リファレンス』 (AM012) など、該当するテクニカル リファレンス マニュアルを参照してください。
|
|
bootimage <filename.bin> | リストされた入力ファイルが Bootgen によって作成されたブート イメージであることを示します。 |
|
bootloader <partition> |
パーティションがブートローダー (FSBL/PLM) であることを指定します。この属性は、ほかのパーティションの BIF 属性と共に指定されます。 |
|
bootvectors <vector_values> | XIP (eXecute In Place) のベクター テーブルを指定します。 |
|
checksum <options> | パーティションのチェックサムが必要であることを指定します。このオプションを認証や暗号化などのよりセキュアな機能と共に使用することはできません。チェックサム アルゴリズムは次のとおりです。
注記:
Zynq デバイスでは、ブートローダーのチェックサムはサポートされません。次のデバイスはブートローダーのチェックサムをサポートします。
|
|
copy <address> | イメージがメモリの指定したアドレスにコピーされます。 |
|
core <options> | パーティションをどのコアで実行するかを指定します。AMD Versal™
アダプティブ SoC のオプションは、次のとおりです。
|
|
delay_handoff | サブシステム/イメージへのハンドオフを遅延します。 |
|
delay_load | サブシステム/イメージの読み込みを遅延します。 |
|
delay_auth | 認証が後の段階で実行されることを示します。これは、bootgen がパーティション暗号化時にハッシュのための領域を予約するのに役立ちます。 |
|
destination_device <device_type> | パーティションのターゲットを PS または PL のいずれかに指定します。次のオプションがあります。
|
|
destination_cpu <device_core> | パーティションを実行するコアを指定します。
|
|
early_handoff | このフラグは、パーティションのロード直後に重要なアプリケーションへのハンドオフが確実に実行されるようにします。このオプションを使用しない場合は、最初にすべてのパーティションが順にロードされ、続いてハンドオフが順に実行されます。 |
|
efuse_kek_iv <filename> | 該当するキーを暗号化するために使用する IV を指定します。efuse_kek_iv は keysrc=efuse_blk_key を指定すると有効になります。 |
|
efuse_user_kek0_iv <filename> | 該当するキーを暗号化するために使用する IV を指定します。efuse_user_kek0_iv は keysrc=efuse_user_blk_key0 を指定すると有効になります。 |
|
efuse_user_kek1_iv <filename> | 該当するキーを暗号化するために使用する IV を指定します。efuse_user_kek1_iv は keysrc=efuse_user_blk_key1 を指定すると有効になります。 |
|
encryption <option> | 暗号化するパーティションを指定します。使用される暗号化アルゴリズムは、zynq では AES-CBC、zynqmp および Versal では AES-GCM です。
パーティションのオプションは次のとおりです。
|
|
exception_level <options> | コアに設定する例外レベルを指定します。 オプションは次のとおりです。
|
|
familykey <key file> | ファミリ キーを指定します。 |
|
file <path/to/file> | パーティションを作成するためのファイルを指定します。 |
|
fsbl_config <options> | ブート イメージのコンフィギュレーションに使用するサブ属性を指定します。サブ属性は次のとおりです。
|
|
headersignature <signature_file> | ヘッダーの署名を認証証明にインポートします。これは、秘密キーを共有しない場合に使用できます。署名を作成して Bootgen に供給できます。 |
|
hivec | 例外ベクター テーブルの場所を hivec (Hi-Vector) として指定します。デフォルトは lovec (Low-Vector) です。これは、A53 (32 ビット) および R5 コアにのみ適用されます。
|
|
id <id> | 定義した場所に基づいて次の ID を指定します。
|
|
image | サブシステム/イメージを定義します。 |
|
init <filename> | ブートローダーの最後にあるレジスタ初期化ブロックであり、init (.int) ファイルの仕様を解析して構築されます。最大 256 のアドレスと値の初期化ペアが許可されます。init ファイルには特定のフォーマットがあります。 |
|
keysrc |
Versal アダプティブ SoC の暗号化のキー ソースを指定します。keysrc は、パーティションごとに指定できます。
|
|
keysrc_encryption | 暗号化に使用するキー ソースを指定します。キーは次のとおりです。
|
|
load <address> | メモリ内のパーティションに必要なロード アドレスを設定します。 |
|
metaheader | キー、キー ソースなどのメタ ヘッダーの暗号化および認証属性を定義するために使用します。 |
|
name <name> | イメージ/サブシステムの名前を指定します。 |
|
offset <offset> | ブート イメージ内のパーティションの絶対オフセットを設定します。 |
|
parent_id | 親 PDI の ID を指定します。親 PDI とそれに該当するブート PDI 間の関係を識別するために使用します。 |
|
partition | パーティションを定義します。BIF を短く読みやすくするためのオプションの属性です。 |
|
partition_owner、owner <option> | パーティションをロードするパーティション オーナー。オプションは次のとおりです。
Zynq/Zynq UltraScale+ MPSoC:
Versal:
|
|
pid <ID> | パーティション ID を指定します。PID は 32 ビット値 (0〜0xFFFFFFFF) に設定できます。 |
|
pmufw_image <image_name> | FSBL をロードする前に BootROM によってロードされる PMU ファームウェア イメージです。 |
|
ppkfile <key filename> | プライマリ公開キー (PPK)。ブート イメージ内のパーティションの認証に使用します。 詳細は、認証の使用 を参照してください。 |
|
presign <sig_filename> | パーティション署名 (.sig) ファイル。 |
|
pskfile <key filename> | プライマリ秘密キー (PSK)。ブート イメージ内のパーティションの認証に使用します。 詳細は、認証の使用 を参照してください。 |
|
puf_file <filename> | PUF ヘルパー データ ファイル。PUF は、暗号化キー ソースとしてブラック キーと共に使用されます。PUF ヘルパー データは 1544 バイトです。1536 バイトの PUF HD + 4 バイトの HASH + 3 バイトの AUX + 1 バイト アライメント。 |
|
reserve <size in bytes> | パーティションのメモリ サイズを維持します。このサイズになるまでパーティションにパディングが追加されます。 |
|
spk_select <SPK_ID> | ユーザー eFUSE の SPK ID を指定します。 |
|
spkfile <filename> | ブート イメージ内のパーティションの認証に使用するキーです。詳細は、認証の使用 を参照してください。 |
|
spksignature <signature_file> | SPK の署名を認証証明にインポートします。詳細は、認証の使用 を参照してください。これは、秘密キー PSK を共有しない場合に使用できます。署名を作成して Bootgen に供給できます。 |
|
split <options> | モードに基づいてイメージを分割します。split オプションは次のとおりです。
分割 (split) モードでは、出力フォーマットも bin または mcs に設定できます。 注記: オプションの split の normal モードは、コマンド ライン オプションの split と同じです。このコマンド ライン オプションは推奨されていません。split slaveboot は、Zynq UltraScale+ MPSoC でのみサポートされます。
|
|
sskfile <key filename> | セカンダリ秘密キー (SSK) は、ブート イメージ内のパーティションを認証するために使用されます。プライマリ キーはセカンダリ キーを認証し、セカンダリ キーはパーティションを認証します。 |
|
startup <address> | ロード後のパーティションのエントリ アドレスを設定します。この識別子は、実行しないパーティションでは無視されます。 |
|
TrustZone <option> |
TrustZone オプションは次のとおりです。
|
|
type <options> | パーティションのタイプを指定します。次のオプションがあります。
|
|
udf_bh <data_file> | ブート ヘッダーのユーザー定義フィールドにコピーされるデータのファイルをインポートします。UDF は、16 進数文字列フォーマットのテキスト ファイルで提供されます。UDF の総バイト数は、zynq = 76 バイトで、zynqmp = 40 バイトです。 |
|
udf_data <data_file> | 最大 56 バイトのデータを含むファイルを認証証明のユーザー定義フィールド (UDF) にインポートします。 |
|
userkeys <filename> | ユーザー キー ファイルへのパスです。 |
|
xip_mode | FSBL が QSPI フラッシュから直接実行されるよう XIP (eXecute-In-Place) を示します。 |
|