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


相关文章
|
2月前
|
数据安全/隐私保护 虚拟化 Windows
如何在 VM 虚拟机中安装 Windows Server 2012 操作系统保姆级教程(附链接)
如何在 VM 虚拟机中安装 Windows Server 2012 操作系统保姆级教程(附链接)
|
2天前
|
消息中间件 测试技术 Linux
linux实时操作系统xenomai x86平台基准测试(benchmark)
本文是关于Xenomai实时操作系统的基准测试,旨在评估其在低端x86平台上的性能。测试模仿了VxWorks的方法,关注CPU结构、指令集等因素对系统服务耗时的影响。测试项目包括信号量、互斥量、消息队列、任务切换等,通过比较操作前后的时戳来测量耗时,并排除中断和上下文切换的干扰。测试结果显示了各项操作的最小、平均和最大耗时,为程序优化提供参考。注意,所有数据基于特定硬件环境,测试用例使用Alchemy API编写。
9 0
linux实时操作系统xenomai x86平台基准测试(benchmark)
|
2天前
|
Windows
LabVIEW在Windows10下调出软键盘的说明与例程
LabVIEW在Windows10下调出软键盘的说明与例程
|
3天前
|
存储 安全 网络安全
Windows操作系统中:共享文件夹以及防火墙介绍
Windows操作系统中:共享文件夹以及防火墙介绍
|
3天前
|
前端开发 Java 应用服务中间件
在虚拟机的Windows操作系统中:通过Jar方式若依项目,以及在外部的访问!
在虚拟机的Windows操作系统中:通过Jar方式若依项目,以及在外部的访问!
|
4天前
|
网络协议 安全 Linux
Windows电脑如何使用固定TCP公网地址远程连接内网Deepin深度操作系统
Windows电脑如何使用固定TCP公网地址远程连接内网Deepin深度操作系统
13 3
|
11天前
|
敏捷开发 测试技术 持续交付
探索自动化测试在敏捷开发中的应用移动应用的未来:跨平台开发与操作系统的融合
【4月更文挑战第30天】随着软件开发周期的不断缩短,传统的软件测试方法逐渐显得力不从心。本文将深入探讨自动化测试在敏捷开发环境中的关键作用,分析其如何提高测试效率、减少人力资源成本,并确保软件产品的质量与稳定性。通过案例分析,我们还将讨论实施自动化测试的最佳实践和面临的挑战,为追求高效敏捷开发的组织提供参考。
|
2月前
|
监控 API 数据库
Python语言Windows操作系统
Python语言Windows操作系统
|
2月前
|
物联网 Windows
安装windows 10操作系统
安装windows 10操作系统
53 1
|
1月前
|
Linux Windows
Windows Server 下文件同步
Windows Server 下文件同步
19 0