首页 > 其他分享 >04VS+QT PCIE测速软件

04VS+QT PCIE测速软件

时间:2023-12-30 18:46:06浏览次数:28  
标签:QT FPGA 码表 PCIE 04VS 测速 XDMA

软件版本:vitis2021.1(vivado2021.1)

操作系统:WIN10 64bit

硬件平台:适用XILINX A7/K7/Z7/ZU/KU系列FPGA

登录"米联客"FPGA社区-www.uisrc.com视频课程、答疑解惑!

4.1概述

经过前面章节的学习,如果读者应该已经掌握了PCIE XDMA方案的使用,那么我们知道QT可以设计出华丽的界面,那么本章就是设计一个简单的测速码表程序,比起前面的章节测试,这个小程序界面非常酷。

4.2系统构架

本系统中通过XDMA IP将开发板及PCIE上位机识别连接。AXI Interconnect IP通过使用AXI及AXI_LITE总线将XDMA与内存部分DDR或者Bram连接。通过PCIE上位机发出读写指令控制XDMA对开发板内存进行读写操作。

4.3FPGA代码

FPGA可以用任何一个章节的,这里就用"03基于XDMA实现PCIE通信方案"的代码,简单。具体就不重复了,不清楚的可以看"03基于XDMA实现PCIE通信方案"相关部分教程内容。本方案中的上位机没有使用中断功能。

4.5测试码表上位机程序设计

首先感谢网友贡献的测试码表控件源码,笔者修改了几个参数就可以正常使用到本次的例子中了。设计思路也很简单,在QT中开启了2个定时器,分别用于h2c和c2h通道,每过100ms定时器进行一次读操作或者写操作。在pcie_fun.c文件中,有测试函数,完成传输测试后,把结果的值输出到myspeed测速码表控件。

以上代码中,显示速度的控件代码是myspeed.c和myspeed.h

关于PCIE通信的核心代码是pcie_fun.c和pcie_fun.h 详细的实现过程读者可以阅读程序源码。

4.6硬件安装

注意先下载程序,调试阶段下载bit文件,然后再开电脑。这样才能正确识别和后续测试工作正常开展。

4.7实验结果

不同的板卡,PCIE的最大带宽不一样,以实际为准。下面的是PCIEX2 2.0的测速指标。

标签:QT,FPGA,码表,PCIE,04VS,测速,XDMA
From: https://www.cnblogs.com/milianke/p/17936641.html

相关文章

  • 05 QT上位机读写FPGA内存
    软件版本:vitis2021.1(vivado2021.1)操作系统:WIN1064bit硬件平台:适用XILINXA7/K7/Z7/ZU/KU系列FPGA登录"米联客"FPGA社区-www.uisrc.com视频课程、答疑解惑!5.1概述如果读者对于前面demo还有一些疑惑,那么本节课的内容,可以让你更加简单地弄明白什么是BAR地址空间操作,什么是对......
  • 06PCIE的GPIO控制卡
    软件版本:vitis2021.1(vivado2021.1)操作系统:WIN1064bit硬件平台:适用XILINXA7/K7/Z7/ZU/KU系列FPGA登录"米联客"FPGA社区-www.uisrc.com视频课程、答疑解惑!6.1概述还记得2008年左右刚刚参加工作,买一个简单的PCI的DAQ数据卡,或者IO卡都要好几千元。市面上主要是研华,凌华的数据......
  • 07PCIE数据卡BRAM缓存中断采集
    软件版本:vitis2021.1(vivado2021.1)操作系统:WIN1064bit硬件平台:适用XILINXA7/K7/Z7/ZU/KU系列FPGA登录"米联客"FPGA社区-www.uisrc.com视频课程、答疑解惑!7.1概述在方案中,使用基于AXI4实现的FDMA来实现数据的缓存。通过切换缓存的地址,实现2帧以上缓存数据的读取。这种构架......
  • 08PCIE数据卡DDR缓存中断采集
    软件版本:vitis2021.1(vivado2021.1)操作系统:WIN1064bit硬件平台:适用XILINXA7/K7/Z7/ZU/KU系列FPGA登录"米联客"FPGA社区-www.uisrc.com视频课程、答疑解惑!8.1概述上一个例子演示了用BRAM作为数据缓存,显然板卡的BRAM容量非常有限,如果需要更大量数据的缓存就得用到DDR作为缓......
  • 【2023.12.30】PVE的PCIE直通改VGPU授权
    之前使用直通有个坏处,就是其他的CT和虚拟机用不了GPU,只能使用核显在这里参考的链接是https://gitlab.com/polloloco/vgpu-proxmoxaptupdateaptdist-upgradeaptinstall-ygitbuild-essentialdkmspve-headersmdevctlgitclonehttps://gitlab.com/polloloco/vgpu-prox......
  • matplotlib嵌入到pyqt中
    在pyqt5中使用matplotlib前言虽然,qt中也提供了绘图函数,但对于初学者并不是很容易掌握,众所周知,matplot提供了简单,易用,强大的绘图函数,结合mumpy基本可以达到matlb中的绘图体验,并且比matlab更加具有扩展性,也更自由。通过matplotlib提供的官方例程的修改,就可以很容易的绘制你想要的......
  • pcie支持的设备和使用过程
    PCIe是一种高速串行计算机扩展总线标准,由英特尔于2001年提出,旨在替代旧的PCI、PCI-X和AGP总线标准。它具有主动电源管理、错误报告、端对端的可靠性传输、热插拔以及服务质量等功能。PCIe总线用于连接多个硬件设备,包括显卡、固态硬盘、无线网卡等。接口和通道是PCIe总线的两种存在......
  • MQTT
    MQTT-目录MQTT1.MQTT协议的定义2.发布/订阅模式2.1发布/订阅模式的运行流程2.2.发布/订阅模式的解耦特性3.MQTT协议的数据包格式3.1.固定报头3.1.1.标志位3.1.2.报文类型3.1.3.剩余长度3.2.可变报头3.3.有效载荷4.TCP/IP协议4.1.网络协议分层5.服务质量6.其他1.......
  • MQTT 使用中的问题汇总
     版本:eclipse-paho-mqtt-c-1.3.12   开发工具:QT   问题1、其他都正常,唯独无法收到订阅消息 原因:MQTTClient_setCallbacks函数必须在MQTTClient_connect前调用问题2、MQTTClient_messageArrived回调函数异常,多次收到重复内容。原因:MQTTClient_messageArrived回......
  • C++ Qt开发:SqlRelationalTable关联表组件
    Qt是一个跨平台C++图形界面开发库,利用Qt可以快速开发跨平台窗体应用程序,在Qt中我们可以通过拖拽的方式将不同组件放到指定的位置,实现图形化开发极大的方便了开发效率,本章将重点介绍SqlRelationalTable关联表组件的常用方法及灵活运用。在上一篇文章中详细介绍了SqlTableModle组......