您当前的位置: 首页 > 

FPGA硅农

暂无认证

  • 0浏览

    0关注

    282博文

    0收益

  • 0浏览

    0点赞

    0打赏

    0留言

私信
关注
热门博文

Xilinx HLS实现AXI DMA

FPGA硅农 发布时间:2021-09-09 14:13:45 ,浏览量:0

在本文中,我们将通过HLS自己动手实现一个AXI DMA,仿照的是官方AXI DMA IP核的直接模式,即给定发送起始地址和发送长度,以及接收起始地址和接收长度,就能进行一次DMA传输。

HLS设计

代码如下 dma.cpp

#include"dma.h"

void axi_dma(data_t* axi_rd,data_t* axi_wr,hls::stream axis_mm2s,hls::stream axis_s2mm,
		     int tx_len,int rx_len){
#pragma HLS STREAM variable=axis_s2mm depth=1024 dim=1
#pragma HLS STREAM variable=axis_mm2s depth=1024 dim=1
#pragma HLS INTERFACE s_axilite port=return
#pragma HLS INTERFACE s_axilite port=rx_len
#pragma HLS INTERFACE s_axilite port=tx_len
#pragma HLS INTERFACE axis register both port=axis_s2mm
#pragma HLS INTERFACE axis register both port=axis_mm2s
#pragma HLS INTERFACE m_axi depth=100 port=axi_wr offset=slave bundle=AXI_S2MM max_write_burst_length=256
#pragma HLS INTERFACE m_axi depth=100 port=axi_rd offset=slave bundle=AXI_MM2S max_read_burst_length=256
    for(int i=0;i            
关注
打赏
1658642721
查看更多评论
0.0549s