UpdateMEM の使用 - 2023.2 日本語

UpdateMEM ユーザー ガイド (UG1580)

Document ID
UG1580
Release Date
2023-11-01
Version
2023.2 日本語

エンベデッド プロセッサ ベースのデザインで UpdateMEM (updatemem コマンド) を実行すると、CPU ソフトウェアがビットストリーム ファイルに統合され、ブロック RAM メモリがターゲット AMD デバイス内で初期化されます。UpdateMEM は、ELF ファイルまたは CPU ソフトウェア イメージを入力として使用し、シミュレーション用に MEM ファイルを生成します。UpdateMEM コマンドには、次の入力を使用できます。

  • ビットストリーム (BIT) ファイル (AMD Versal™ アダプティブ SoC デバイスでは RDCO ファイル): Vivado Design Suite インプリメンテーション ツールで生成されます。インプリメント済みデザインからビットストリームまたは RCDO ファイルを作成するには、write_bitstream または write_device_image Tcl コマンドを使用します。これらのバイナリ データ ファイルには、AMD デバイスにダウンロードされるデザインの BIT イメージが含まれます。UpdateMEM コマンドは、BIT ファイルまたは RCDO ファイルを入力として読み込み、BIT または RCDO ファイルを出力として書き出します。
  • メモリ マップ情報 (MMI) ファイル: アドレス ブロックという連続アドレス空間を形成するために、AMD デバイス上の各ブロック RAM をどのようにグループ化するかを記述するテキスト ファイルです。

    MMI ファイルは、ビットストリームを生成するときに Vivado Design Suite により自動的に生成され、<project>.runs/impl_1 フォルダーに保存されます。または、write_mem_info コマンドを使用して手動で生成することもできます。UpdateMEM コマンドでは、特定のアドレス範囲にマップされる物理的ブロック RAM リソースを識別するために MMI ファイルが使用されます。MMI ファイルの詳細は、ブロック RAM のメモリ マップ情報ファイル を参照してください。

  • デザインでシミュレーションを実行するときに、Vivado Design Suite により SMI ファイル (シミュレーション用のメモリ マップ情報ファイル) が自動的に生成され、<project>.sim/sim_x/behav フォルダーに保存されます。
  • ELF (Executable and Linkable Format) ファイル: AMD Vitis™ 統合設計環境から出力されます。エンベデッド プロセッサで実行可能なプログラム イメージを含むバイナリ データ ファイルです。ELF ファイルには、UpdateMEM によりブロック RAM のアドレス範囲にマップされるデータが含まれます。
  • メモリ (MEM) ファイル (オプション): アドレス空間を初期化するデータの連続ブロックを記述したテキスト ファイルで、手動で作成します。UpdateMEM コマンドには、ELF ファイルの代わりに MEM ファイルを使用できます。詳細は、メモリ ファイル を参照してください。
  • エンベデッド プロセッサのインスタンス ID は、ELF または MEM ファイルをプロセッサと関連付けるために使用します。

UpdateMEM コマンドを実行すると、ELF または MEM ファイルで定義された連続データ ブロックが MMI ファイルでマップされた AMD デバイスの複数のブロック RAM に挿入され、メモリ情報がターゲット AMD デバイスをコンフィギュレーションおよびプログラムするビットストリーム ファイル (BIT) に統合されます。

UpdateMEM コマンドでは、エンベデッド プロセッサを複数含むデザインで、複数のプロセッサ用の複数のデータ ファイルを統合できます。この場合、-data および -proc オプションをペアで指定します。最初の -data にソフトウェア イメージまたは指定した最初の -proc のメモリ コンテンツを指定します。2 番目の -data には 2 番目の -proc のコンテンツを指定します。

このコマンドを実行すると、入力から作成されたビットストリーム ファイルの名前が表示されるか、正常に実行されなかった場合はエラーが表示されます。