2020/07/05

ultra96(ZYNQ)で簡単なDMAを作成した

FPGA   

ultra96(ZYNQ)で、簡単なDMAを作成した。

イメージは以下のようなシーケンスになります。ZYNQなので、DDRにアクセスするときは、PS経由になります。
ブロック図だと以下のようなイメージになります。AXI Liteを使って、DMAするアドレスとDMAの指示をします。今回のDMAは、4byteをDMAします。DMAした結果は、レジスタ上に表示します。
以下は、レジスタマップになります。
offset bit 名称 属性 説明
0x0 [0] dma_start w 1:DMAを開始する
0x4 [31:0] address r/w DMAリードするアドレス
0x8 [31:0] read_data r DMAリードしたデータ
以下は、Viadoで作成したブロック図になります。
自分で作成した部分だけに着目すると以下の部分になります。myip6_v1_0_0が作成したDMAになります。
作成したプロジェクトとソフトウェアは、ここにあります。
« »