当前位置: 首页 > news >正文

PS linux 基础篇1-AXI_DMA

系列文章目录


文章目录

  • 系列文章目录
  • 前言
  • 一、AXI DMA ip核
  • 二、BD工程
  • 三、PS linux工程
    • 1.使用开源的xilinx_axidma-master工程验证驱动
    • 2.按照其他的开源进行就行,没什么写的了


前言

PL与PS之间快速的接口,本文为LOOP回环测试


一、AXI DMA ip核

MM2S = memory mapped to stream(DMA到stream接口)
S2MM = stream to memory mapped(stream到DMA接口)

接口
1.AXIS_MM2S:axi_stream接口(DMA向外设写数据)
2.AXIS_S2MM:axi_stream接口(DMA从外设读数据)
3.AXI_MM2S:axi_full接口(从DDR读数据)
4.AXI_S2MM:axi_full接口(向DDR写数据)

二、BD工程

在这里插入图片描述

可以由上图看出stream接口为回环(只是中间过了个FIFO)

在这里插入图片描述
在这里插入图片描述

三、PS linux工程

1.使用开源的xilinx_axidma-master工程验证驱动

1.改config_template.mk文件名为config.mk
并改内容如下:
其中KBUILD_DIR为petalinux-config -c kernel编译后的内核文件目录(目录中文件如下截图所示)
注意:一定要安装arm-linux-gnueabihf-环境
在这里插入图片描述
在这里插入图片描述

2.按照其他的开源进行就行,没什么写的了

注意:如果要使用大于2路的dma
1.改设备树

/include/ "system-conf.dtsi"
/ {
};&amba_pl {axidma_chrdev: axidma_chrdev@0 {compatible = "xlnx,axidma-chrdev";dmas = <&axi_dma_0 0 &axi_dma_0 1 &axi_dma_1 0 &axi_dma_1 1 &axi_dma_2 0 &axi_dma_2 1 &axi_dma_3 0 &axi_dma_3 1 >;dma-names = "tx_channel", "rx_channel", "tx_channel1", "rx_channel1", "tx_channel2", "rx_channel2", "tx_channel3", "rx_channel3";};
};&axi_dma_0 {dma-channel@40400000 {xlnx,device-id = <0x0>;};dma-channel@40400030 {xlnx,device-id = <0x1>;};
};&axi_dma_1 {dma-channel@40410000 {xlnx,device-id = <0x2>;};dma-channel@40410030 {xlnx,device-id = <0x3>;};
};&axi_dma_2 {dma-channel@40420000 {xlnx,device-id = <0x4>;};dma-channel@40420030 {xlnx,device-id = <0x5>;};
};&axi_dma_3 {dma-channel@40430000 {xlnx,device-id = <0x6>;};dma-channel@40400030 {xlnx,device-id = <0x7>;};
};

2.改开开源文件的axidma_of.c里面的91行 ">2"改大

在这里插入图片描述

相关文章:

  • 大数据学习(125)-hive数据分析
  • STM32CUBE打印浮点数据-cmake配置
  • NodeJS 基于 Koa, 开发一个读取文件,并返回给客户端文件下载,以及读取文件形成列表和文件删除的代码演示
  • 通配符(Wildcard)与正则表达式(Regular Expression)的关系及区别
  • MySQL高可用方案:Keepalived+双主库架构深度解析与实战指南
  • scrollTop 设为 0 不生效的可能原因
  • 23、Swift框架微调实战(3)-Qwen2.5-VL-7B LORA微调OCR数据集
  • 01.认识Kubernetes
  • 【Linux】揭秘Linux进程优先级与调度机制
  • 探秘文件系统:定义、功能与各类型全方位对比
  • zynq ad7616 调试笔记
  • Ubuntu20.04操作系统ssh开启oot账户登录
  • [ Qt ] | Qlabel使用
  • 【东枫科技】KrakenSDR 天线阵列设置
  • 道可云人工智能每日资讯|中国算力平台(山东)正式上线投入使用
  • Linux 文件覆盖机制与实践:以 mv 命令为切入点
  • opencut:如何用AI工具把中文图片/视频翻译成英语、日语、俄语等100多种语言!
  • 11:QT界面设计—模态UI对话框
  • matlab天线阵列及GUI框架,可用于相控阵,圆形阵,矩形阵
  • OpenCV 图像像素的算术操作
  • 蓬莱网站建设价格/seo建站平台哪家好
  • 广州网站建设推广服务/百度快照是啥
  • 网页制作是建网站的第几步/seo营销优化软件
  • 做电影网站采集什么意思/百度推广服务费一年多少钱
  • 东莞大型网站建设公司/换友情链接的网站
  • 做消费信贷网站/谷歌商店app下载