ZC702 ボードをターゲットにしているデザインがあります。
このデザインでは、HLS IP 操作の制御に AXI LITE スレーブ ポートが使用され、データの読み出しおよび書き出しには AXI マスター ポートが使用されています。
Vivado ロジック デバッグおよび SDK で検証されています。
作成手順は次のとおりです。
1. HLS プロジェクトを作成し、合成を実行します。
次に RTL 協調シミュレーションを実行して検証します。
ソース コードおよび指示子は次のようになっています。
2. RTL を IP カタログとしてエクスポートします。
Vivado HLS プロジェクトが添付されます。
3. Vivado プロジェクトを作成します。
Vivado の IP カタログの [IP Settings] で HLS IP を設定します。
3. IPI デザインを作成し、次のように AXI インターフェイスのデバッグをマークします。
IPI デザインで IP のアドレスを次のように設定します。
4. Vivado で合成を実行し、合成されたデザインを開きます。
デバッグ ウィンドウを開き、[Tools] → [Set up Debug] をクリックします。
クロック ドメインとして Zynq の FCLK_CLK0 を使用します。
5. Vivado でビットストリームを生成し、インプリメントされたデザインを開きます。
6. [File] → [Export] → 「Export Hardware for SDK] をクリックします。
ポップアップ ウィンドウで [Include bitstream] および [Launch SDK] をオンにします。
SDK で、[Xilinx Tools] → [Repositories] をクリックして、HLS IP のドライバーのリポジトリを設定します。
8. デフォルト コンフィギュレーションを使用してボード サポート パッケージを作成します。
9. テキスト エディタで system.mss を開き、HLS IP の DRIVER_NAME を generic から foo_top_top に変更します。
詳細は (ザイリンクス アンサー 58096) を参照してください。
10. SDK でアプリケーション プロジェクトを作成し、テンプレートに「Hello World」を選択します。
11. SDK で [Xilinx Tools] → [Program FPGA] をクリックし、ビット ファイルをダウンロードします。
12. Vivado で Hardware Manager を開きます。
デバッグ コアに接続するため [open a new hardware target] を選択します。
ポップアップ ウィンドウでデフォルト設定をすべて選択します。
13. トリガー コンディションで design_1_i/foo_top_0_M_AXI_M_AWVALID を 1 に設定し、ILA コアを次のようにトリガーします。
14. SDK の XMD コンソールで、Zynq CPU に接続するため、次のコマンドを入力します。
connect arm hw
15. SDK の XMD コンソールで、ap_start を 1 に設定するため、次のコマンドを入力します。
mwr 0x43c00000 1
con を 1 に設定するため、次のコマンドを入力します。
mwr 0x43c00014 1
BASE_ADDR を 0x40000000 に設定するため、次のコマンドを入力します。
mwr 0x43c0001c 0x40000000
BASE_ADDR の制御を有効にするため、次のコマンドを入力します。
mwr 0x43c00018 1
con の制御を有効にするため、次のコマンドを入力します。
mwr 0x43c00010 1
xfoo_top_hw.h に、HLS IP のこれらのアドレスがあります。
これで、HLS IP は操作を開始し、ILA がトリガーされます。
Vivado で取り込まれた波形を確認します。
16. HLS IP のドライバーを使用し、次のように SDK アプリケーション プロジェクトを記述します。
17. ハードウェアでアプリケーション プロジェクトを起動し、メモリ出力が予期どおりであることを確認します。
操作前のメモリ内容はこちらです。
1 2 3 4 5 6 7 8 9 a b c d e f 10 11 12 13 14 15 16 17 18 19 1a 1b 1c 1d 1e 1f 20 21 22 23 24 25 26 27 28 29 2a 2b 2c 2d 2e 2f 30 31 32 33 34 35 36 37 38 39 3a 3b 3c 3d 3e 3f 40
操作後のメモリ内容はこちらです。
2 3 4 5 6 7 8 9 a b c d e f 10 11 12 13 14 15 16 17 18 19 1a 1b 1c 1d 1e 1f 20 21 22 23 24 25 26 27 28 29 2a 2b 2c 2d 2e 2f 30 31 32 33 34 35 36 37 38 39 3a 3b 3c 3d 3e 3f 40 41
出力内容は、HLS IP の起動回数によって変わる点に注意してください。
SDK プロジェクトを含んだ Vivado プロジェクトがこのアンサーに添付されています。
タイトル | サイズ | ファイルタイプ |
---|---|---|
HLS_AXIM_LITE_test.zip | 111 KB | ZIP |
AR# 59228 | |
---|---|
日付 | 03/30/2015 |
ステータス | アクティブ |
種類 | 一般 |
ツール |