DFX Controller IP は作成されましたが、デザインはまだコンパイルされていません。必要なフルおよびパーシャルのイメージをすべて使用して PROM イメージを作成するには、次のコマンドを使用して Tcl モードで次のスクリプトを実行する必要があります。
vivado -mode tcl -source design.tcl
vivado -mode tcl -source create_prom_file_vcu108.tcl
create_prom_file_vcu108.tcl
を実行すると、VCU108 の PROM イメージが作成されます。このスクリプトには、プロジェクト全体のビットストリーム アドレスのハードコード化された値が含まれています。このデザインが変更された結果、ビットストリーム サイズもフル/パーシャルに関係なく変更になる場合は、これらの値も変更する必要があります。ターゲット デバイスの変更、Pblock のサイズや形状の変更、ビットストリームの圧縮やフレームごとの CRC のオプションなどを変更すると、ビットストリーム サイズに影響します。
プロパティを設定してから write_cfgmem を呼び出すと、このスクリプトで PROM オプションが定義されます。DFX Controller は、データが AXI でバイトで格納されるので、バイト アドレスで機能します。このリニア フラッシュ PROM は、ハーフ ワード (16 ビット) でデータが格納されるので、ハーフ ワード アドレスが使用されます。ROM アドレスを 2 で割って AXI アドレスを計算します。たとえば shift_left アドレスは、DFX Controller をカスタマイズしたときに 00B00000 に設定されていますが、write_cfgmem を呼び出す場合は 00580000 (前出のアドレスの半分) になります。バイト アドレスの境界で各ストリームが開始するようにするため、開始アドレスは常に 1024 (0x0400) の倍数になります。
この演習ディレクトリにあるファイルは dfxc_bitstream_sizes_lab6.xlsx という名前です。このファイルでは、ビットストリーム サイズは、黄色くハイライトされたフィールドに基づいてユーザーによって入力されます。次のバイト境界での各パーシャル ビットストリームの開始アドレスは 16 進数で計算されます。青くハイライトされている値は、DFX Controller IP のカスタマイズ用で、この IP の GUI、gen_ip_vcu108.tcl スクリプト、配線後の API 変更用に使用される dfx_info_vcu108.tcl を使用して入力されます。緑色にハイライトされている値は、create_prom_file_vcu108.tcl スクリプトの PROM ファイル生成で使用され、アドレスを 2 で割った値です。