AXI DMA テスト

AXIのDMA動作をメモしておく。

この記事を参考に
Using the AXI DMA in Vivado | FPGA Developer

DMAのパスにILAを接続しておく。
f:id:katakanan:20180722155334p:plain


手順通りにHelloWorldができたら、
HelloWorld_bspのsystem.mssを開いて
axi_dmaのImport Exampleをクリックして
xaxidma_example_simple_pollにチェックを入れてOKを押す。
f:id:katakanan:20180722160551p:plain

HelloWorld_bsp_xaxidma_example_simple_poll_1とかいうプロジェクトができるので、
これがビルドできることを確かめる。

VivadoからBitstreamを書く。

HelloWorld_bsp_xaxidma_example_simple_poll_1/Debug/HelloWorld_bsp_xaxidma_example_simple_poll_1.elfを右クリックして、
Debug as → Launch on Hardware を選択する。
f:id:katakanan:20180722161230p:plain

実行が始まると、mainの先頭で実行が止まっている状態になるので、
ここからステップ実行などができる。

一方で、Vivadoから
Program AND Debug→ Open Hardware Manager→Open Targetとすると、
ILAの画面が開く。
(プログラムをDebugで止めておかないと、ILAの画面が出てきてくれない)

あとは、ILAの画面でDMAのARVALIDなどにトリガーをつけてから、
XSDKで実行を開始すれば、DMAの動作が見れる。

f:id:katakanan:20180722161909p:plain
切断されることもある。

write_hw_ila_data my_hw_ila_data_file.zip [upload_hw_ila_data hw_ila_1]
で波形を保存できる。

display_hw_ila_data [read_hw_ila_data my_hw_ila_data_file.zip]
で波形を再生できる。

Zybo Zynq-7000 ARM/FPGA SoC Trainer Board

Zybo Zynq-7000 ARM/FPGA SoC Trainer Board

FPGAプログラミング大全 Xilinx編

FPGAプログラミング大全 Xilinx編