Windows操作系统:PCIE Axidma篇 3 官方例程的读写测试

简介: 先介绍一下官方提供的几个demo吧,重点参考Xilinx官方文档65444.有的可以帮助我们开发应用,有的编成应用后可以当做小工具直接帮助我们直接配置寄存器或者读取内存地址的数值。

前言

 先介绍一下官方提供的几个demo吧,重点参考Xilinx官方文档65444.有的可以帮助我们开发应用,有的编成应用后可以当做小工具直接帮助我们直接配置寄存器或者读取内存地址的数值。

 https://www.xilinx.com/support/answers/65444.html

 下面重点介绍一下Xdma_rw例程:

 这个例程用来打开任何设备节点并执行读/写操作。通常操作是读取控制器或用户PCIe bar的内存空间。然而,它也可以用于执行对齐的DMA传输通过h2c_*和c2h_节点,其中表示通道索引(0-3)。默认情况下,主机端数据缓冲区,该应用程序分配的内存与PAGE_SIZE边界对齐(通常为4kB)

Xdma_ rW  
This application can be usedto open any ofthe device nodes and perform read/write operations. Typically this is useful for reading memorv space ofthecontro/oruserPCleBARs.However it can also be used to perform alianed DMA transfers via theh2c*andc2h*nodes. where the asterisk denotes the channel index (0-3). Bv default the host-side data buffer that this application allocates is memory aligned to the PAGE SIZE boundary (typically 4kB).
Usage
xdma rw.exe <DEVNODE> <read write> <ADDR> [OPTIONS] 「DATA
-DEVNODE :One of:control| user | event * | hc2 * | c2h *,
where the * is a numeric wildcard(0-15 for events, 0-3 for hc2 and c2h).
- ADDR :  The target offset address of the read write operation.  
Can be in hex or decimal.
- OPTIONS :
-l (length of data to read/write)
 Copyright 2018 Xilinx
-b open file as binary
-f use data file as input/output (for write/read respectively). -v more verbose output
-a set host-side buffer alignment in bytes (default: PAGE SIZE)
- DATA :  Space separated byte data in decimal or hex 
e.g.: 17 34 51 68
or :  0x11 0x22 0x33 0x44 Hx--1024

示例:

 1.在偏移0x1000的控制寄存器地址下读一个4Byte的值(注意小写L不是数字1):

   xdma_rw.exe control read 0x1000 -l 4

 2.在偏移0x2004的控制寄存器地址下写一个2Byte 的值(0x1234)(注意当指定字节序列中的数据时-l选项不是必需的。

   xdma_rw.exe control write 0x2004 0x34 0x12

 3.C2H_0通道从偏移0地址读取4KB大小数据并存为一个bin文件,文件名为my_data.bin

   xdma_rw.exe c2h_0 read 0 –l 0x1000 -b -f my_data.bin

 4.C2H_0通道从偏移0x100地址读取4KB大小数据,不存文件直接打印

   xdma_rw.exe c2h_0 read 0x100 -l 0x1000

 5.H2C_3通道在偏移0x10的地址下写入4Byte数据,数据内容为0x12345678

   xdma_rw.exe h2c_3 write 0x10 0x78 0x56 0x34 0x12

 6.通过AXI-Lite口在偏移0的地址下读取4Byte的数据

   xdma_rw.exe user read 0 –l 4

 7.在确定的偏移地址0x0000下写确定的数据0x1234567给Bram

   xdma_rw.exe user write 0x0 0x67 0x45 0x23 0x01

 8.在用户内存空间偏移0地址下读取256byte数据

   xdma_rw.exe user read 0 -l 0x100

 9.从指定bin文件(my_data.bin)获得数据,并将其写入用户内存地址偏移0的位置

   xdma_rw.exe user write 0 -b -f my_data.bin


相关实践学习
CentOS 7迁移Anolis OS 7
龙蜥操作系统Anolis OS的体验。Anolis OS 7生态上和依赖管理上保持跟CentOS 7.x兼容,一键式迁移脚本centos2anolis.py。本文为您介绍如何通过AOMS迁移工具实现CentOS 7.x到Anolis OS 7的迁移。
相关文章
|
8天前
|
运维 Prometheus 监控
如何在测试环境中保持操作系统、浏览器版本和服务器配置的稳定性和一致性?
如何在测试环境中保持操作系统、浏览器版本和服务器配置的稳定性和一致性?
|
1月前
|
存储 弹性计算 运维
阿里云国际Windows操作系统迁移教程
阿里云国际Windows操作系统迁移教程
|
1月前
|
Unix Linux iOS开发
【换行符】Windows、Unix、Mac不同操作系统的回车符\r和换行符\n
【换行符】Windows、Unix、Mac不同操作系统的回车符\r和换行符\n
|
1月前
|
存储 Java iOS开发
MacOS环境-手写操作系统-02-读写软盘
MacOS环境-手写操作系统-02-读写软盘
20 3
|
2月前
|
Windows
Windows操作系统部署安装Kerberos客户端
详细介绍了在Windows操作系统上部署安装Kerberos客户端的完整过程,包括下载安装包、安装步骤、自定义安装路径、修改环境变量、配置hosts文件和Kerberos配置文件,以及安装后的验证步骤。
370 3
Windows操作系统部署安装Kerberos客户端
|
1月前
|
安全 网络安全 数据库
Kali渗透测试:使用工具Metasploit攻击操作系统(一)
Kali渗透测试:使用工具Metasploit攻击操作系统(一)
|
1月前
|
安全 Linux 网络安全
Kali渗透测试:使用工具Metasploit攻击操作系统(二)
Kali渗透测试:使用工具Metasploit攻击操作系统(二)
|
3月前
|
Windows
Windows操作系统中环境变量的检索顺序
Windows操作系统中环境变量的检索顺序
109 3
|
3月前
|
Kubernetes Cloud Native 开发者
探索云原生技术:Kubernetes入门与实践探索Windows操作系统的隐藏功能
【8月更文挑战第31天】在数字化转型的浪潮中,云原生技术成为企业提升敏捷性、效率和可靠性的关键。本文将带你了解云原生的核心组件之一——Kubernetes(K8s),通过浅显易懂的语言和实际代码示例,引导你步入这一强大工具的世界。无论你是初学者还是有经验的开发者,本篇都将为你打开一扇通向高效资源管理与自动化部署的大门。
|
3月前
|
Web App开发 敏捷开发 测试技术
自动化测试框架的设计与实现探索操作系统的心脏:内核与用户空间的交互
【8月更文挑战第26天】本文旨在探讨自动化测试框架的设计原则、核心组件和实现方法。通过分析自动化测试的优势,我们深入讨论了框架设计的关键考虑因素,包括模块化、可重用性、可扩展性和易维护性。文章还介绍了如何利用流行的测试工具和编程语言来实现一个高效的自动化测试框架,并通过实例展示了框架的应用。

热门文章

最新文章