はじめに - 2022.1 日本語

Vitis 統合ソフトウェア プラットフォームの資料: エンベデッド ソフトウェア開発 (UG1400)

Document ID
UG1400
Release Date
2022-04-26
Version
2022.1 日本語

ザイリンクス FPGA およびシステム オン チップ (SoC) デバイス、ACAP (Adaptive Compute Acceleration Platform) には、設計どおりにブートおよび機能するようにするため、通常複数のハードウェアおよびソフトウェア バイナリが含まれます。これらのバイナリには、FPGA ビットストリーム、ファームウェア イメージ、ブートローダー、オペレーティング システム、およびユーザー指定のアプリケーションが含まれ、非セキュアな方法とセキュアな方法の両方でロード可能です。

Bootgen は、バイナリ ファイルを統合してデバイス ブート イメージを生成するザイリンクス ツールです。このツールは、ザイリンクス デバイスで使用するブート イメージの作成時に入力される複数のプロパティ、属性、およびパラメーターを定義します。

ザイリンクス デバイスのセキュア ブート機能には、公開キーおよび秘密キーの暗号化アルゴリズムを使用します。Bootgen は、各パーティションに特定のデスティネーション メモリ アドレスとアライメント要件を指定します。また、暗号化の使用 および 認証の使用 で説明するように、暗号化と認証もサポートされます。より高度な認証フローとキー管理オプションについては、HSM モードの使用 で説明されています。HSM モードでは、Bootgen で秘密キーを使用してオフラインで署名可能な中間ハッシュ ファイルを出力し、ブート イメージに含まれる認証証明に署名できます。Bootgen は、パーティション リストにヘッダー ブロックを加えることによりブート イメージを構築します。オプションで、各パーティションを Bootgen で暗号化および認証できます。出力は、システムのブート フラッシュ メモリに直接プログラム可能な 1 つのファイルです。認証および暗号化をサポートするさまざまな入力ファイルも、このツールで生成できます。詳細は、BIF 構文およびサポートされるファイルの種類 を参照してください。

Bootgen には、GUI インターフェイスとコマンドライン オプションがあります。Bootgen は Vitis™ 統合開発環境 (IDE) に統合されており、基本的なブート イメージは生成できますが、Bootgen オプションの大部分はコマンド ラインで指定します。コマンドライン オプションはスクリプトに記述できます。Bootgen ツールには、ブート イメージ フォーマット (BIF) コンフィギュレーション ファイル (*.bif) を入力します。Bootgen では、ザイリンクス SoC および ACAP に加え、ザイリンクス 7 シリーズ以降の FPGA のパーティションを暗号化および認証できます (FPGA のサポートを参照)。ブート イメージの動作を定義するコマンドおよび属性がサポートされているだけでなく、Bootgen での作業に役立つユーティリティもあります。Bootgen のコードは、GitHub から入手できます。