FPGA实现PCIE3.0视频采集转10G万兆UDP网络输出,基于XDMA+GTH架构,提供工 ...

打印 上一主题 下一主题

主题 773|帖子 773|积分 2319

FPGA实现PCIE3.0视频采集转10G万兆UDP网络输出,基于XDMA+GTH架构,提供工程源码和技能支持
1、前言

FPGA实现PCIE数据传输现状;
如今基于Xilinx系列FPGA的PCIE通信架构主要有以下2种,一种是简单的、傻瓜式的、易于开辟的、对新手友好的XDMA架构,该架构对PCIE协议底层做了封装,并加上了DMA引擎,使得使用的难度大大低落,加之Xilinx提供了配套的Windows和Linux系统驱动和上位机参考源代码,使得XDMA一经推出就让工程师们欲罢不能;另一种是更为底层的、需要设计者有一定PCIE协议知识的、更易于定制化开辟的7 Series Integrated Block for PCI Express架构,该IP实现的是PCIe 的物理层、链路层和事务层,提供给用户的是以 AXI4-stream 接口界说的TLP 包,使用该IP 核,需要对PCIe 协议有清楚的理解,特别是对事务包TLP报文格式;本设计接纳第一种方案,使用XDMA的中断模式实现PCIE通信;本架构既有简单的测速实验,也有视频采集应用;
FPGA实现万兆UDP网络通信现状;
Xilinx系列FPGA实现UDP网络通信如今仅有一种方案,即使用Xilinx官方的IP核实现物理层功能,好比常见的10G Ethernet Subsystem、10G Ethernet PCS/PMA、10G/25G Ethernet Subsystem等,UDP协议栈部门很简单,可使用verilog代码直接实现;本设计使用10G/25G Ethernet Subsystem方案实现万兆以太网物理层功能;
工程概述

本设计使用Xilinx系列FPGA为平台,实现电脑端视频通过PCIE到FPGA端转万兆UDP网络视频输出;输入源为电脑端实时视频,也就是电脑桌面的实时图像,分辨率为1280x720@60Hz;打开QT上位机,QT上位机会实时采集电脑端视频,通过PCIE总线发送到FPGA板卡;FPGA内部的XDMA IP核吸收到电脑端发来的视频后,将视频写入板载DDR4中缓存;同时使用本博主常用的FDMA图像缓存架构将视频从板载DDR4中读出;然后视频送入UDP视频组包发送模块,将视频加上包头和其他控制信息;然后组包的视频送入UDP协议栈举行以太网帧组帧;UDP协议栈输出的MAC数据经过FIFO组举行数据缓冲;MAC数据再送入Xilinx官方的10G/25G Ethernet Subsystem IP核实现万兆以太网物理层;再经过板载的SFP+光口用光纤传输到电脑端;电脑端使用万兆网卡吸收数据,并在QT上位机吸收UDP网络视频并体现出来;本博客提供1套工程源码,具体如下:
工程源码1
开辟板FPGA型号为Xilinx–>Kintex UltraScale–xcku060-ffva1156-2-i;输入源为电脑端实时视频,也就是电脑桌面的实时图像,分辨率为1280x720@60Hz;打开QT上位机,QT上位机会实时采集电脑端视频,通过PCIE总线发送到FPGA板卡;FPGA内部的XDMA IP核吸收到电脑端发来的视频后,将视频写入板载DDR4中缓存;同时使用本博主常用的FDMA图像缓存架构将视频从板载DDR4中读出;然后视频送入UDP视频组包发送模块,将视频加上包头和其他控制信息;然后组包的视频送入UDP协议栈举行以太网帧组帧;UDP协议栈输出的MAC数据经过FIFO组举行数据缓冲;MAC数据再送入Xilinx官方的10G/25G Ethernet Subsystem IP核实现万兆以太网物理层;再经过板载的SFP+光口用光纤传输到电脑端;电脑端使用万兆网卡吸收数据,并在QT上位机吸收UDP网络视频并体现出来;板载的PCIE为8 Lane的PCIE3.0;单Lane线速率配置为8GT/s;板载SFP+光口;由此形成QT上位机+PCIE3.0+XDMA+SFP+万兆UDP的高端架构;该工程实用于PCIE接口的视频采集卡大概网卡应用;
本文具体形貌了FPGA实现PCIE3.0视频采集转10G万兆UDP网络输出的设计方案,工程代码可综合编译上板调试,可直接项目移植,实用于在校学生、研究生项目开辟,也实用于在职工程师做项目开辟,可应用于医疗、军工等行业的高速接口领域;
提供完整的、跑通的工程源码和技能支持;
工程源码和技能支持的获取方式放在了文章末尾,请耐烦看到最后;
免责声明

本工程及其源码即有本身写的一部门,也有网络公开渠道获取的一部门(包括CSDN、Xilinx官网、Altera官网等等),若大佬们觉得有所得罪,请私信批评教育;基于此,本工程及其源码仅限于读者或粉丝个人学习和研究,禁止用于商业用途,若由于读者或粉丝自身缘故原由用于商业用途所导致的法律题目,与本博客及博主无关,请谨慎使用。。。
2、相关方案保举

我已有的全部工程源码总目次----方便你快速找到本身喜欢的项目

实在不停有朋友反馈,说我的博客文章太多了,乱花渐欲迷人,本身看得一头雾水,不方便快速定位找到本身想要的项目,以是本博文置顶,列出我如今已有的全部项目,并给出总目次,每个项目标文章链接,当然,本博文实时更新。。。以下是博客地址:
点击直接前往
我已有的PCIE方案

我的主页有PCIE通信专栏,该专栏基于XDMA的轮询模式实现与QT上位机的数据交互,既有基于RIFFA实现的PCIE方案,也有基于XDMA实现的PCIE方案;既有简单的数据交互、测速,也有应用级别的图像采集传输,以下是专栏地址:
点击直接前往
别的,我的主页有中断模式的PCIE通信专栏,该专栏基于XDMA的中断模式实现与QT上位机的数据交互,以下是专栏地址:
点击直接前往
别的,还有基于RIFFA架构的PCIE通信专栏,以下是专栏地址:
点击直接前往
10G/25G Ethernet Subsystem实现万兆以太网物理层方案

Xilinx官方的10G/25G Ethernet Subsystem IP核可实现万兆以太网物理层方案,该方案使用FPGA内部高速接口资源即可实现,关于这个方案,请参考我之前的博客,博客链接如下:
10G/25G Ethernet Subsystem物理层+万兆UDP协议栈方案,博客链接如下:
直接点击前往
10G/25G Ethernet Subsystem物理层+万兆TCP/IP协议栈方案,博客链接如下:
直接点击前往
本博客方案的PCIE2.0版本

本博客具体形貌了FPGA实现PCIE3.0视频采集转10G万兆UDP网络输出的设计方案,但并不是全部FPGA都支持PCIE3.0,对于低端FPGA而言,PCIE2.0大概具有更多应用场景,恰好之前写过一篇PCIE2.0方案,设计基本与本片博客一样,只是XDMA配置的PCIE版本不一样,感兴趣的可以查看之前的博客,博客链接如下:
点击直接前往
3、PCIE基础知识扫描

PCIe 总线架构与以太网的 OSI 模型类似,是一种分层协议架构,分为事务层(Transaction Layer)、数据链路层(Data Link Layer) 和物理层(Physical Layer)。这些层中的每一层都分为两部门:一部门处置处罚出站(要发送的)信息,另一部门处置处罚入站(吸收的)信息,如下图:

事务层
事务层的主要责任是事务层包 TLP(Transaction Layer Packet)的组装和拆卸。事务层吸收来自 PCIe 设备核心层的数据,并将其封装为 TLP。TLP 用于转达事务,比方读取和写入,以及确定变乱的类型。事务层还负责管理 TLP 的基于名誉的流控制。每个需要响应数据包的请求数据包都作为拆分事务实现。每个数据包都有一个唯一标识符,该标识符使响应数据包可以定向到正确的始发者。数据包格式支持差异情势的寻址,具体取决于事务的类型(内存、I/O、配置和消息)。数据包可能还具有诸如 No Snoop、Relaxed Ordering 和基于 ID 的排序(IDO)之类的属性。事务层支持四个地址空间:包括三个 PCI 地址空间(内存、I/O 和配置)并添加消息空间。该规范使用消息空间来支持全部先前 PCI 的边带信号,比方中断、电源管理请求等,作为带内消息事务。
数据链路层
数据链路层充当事务层和物理层之间的中央阶段。数据链路层的主要职责包括链路管理和数据完整性,包括错误检测和错误改正。数据链路层的发送方接受事务层组装的 TLP,盘算并应用数据保护代码和 TLP序列号,以及将它们提交给物理层以在链路上传输。吸收数据链路层负责查抄吸收到的 TLP 的完整性,并将它们提交给事务层以举行进一步处置处罚。在检测到 TLP 错误时,此层负责请求重发 TLP,直到正确吸收信息或确定链路失败为止。数据链路层还天生并使用用于链路管理功能的数据包。为了将这些数据包与事务层(TLP)使用的数据包区分开,当指代在数据链路层天生和使用的数据包时,将使用术语“数据链路层数据包(DLLP)”。
物理层
PCIe 总线的物理层为 PCIe 设备间的数据通信提供传送介质,为数据传送提供可靠的物理情况。物理层包括用于接口操作的全部电路,包括驱动器和输入缓冲器、并行至串行和串行至并行转换、PLL 和阻抗匹配电路。它还包括与接口初始化和维护有关的逻辑功能。物理层以实现特定的格式与数据链路层交换信息。该层负责将从数据链路层吸收的信息转换为得当的序列化格式,并以与连接到链路另一端的设备兼容的频率和通道宽度在 PCI Express 链路上传输该信息。物理层是 PCIe 体系结构最重要,也是最难以实现的构成部门(该层对用户透明,开辟 PCIe 步伐时无需关心)。PCIe 总线的物理层界说了 LTSSM (Link Training and Status State Machine)状态机,PCIe 链路使用该状态机管理链路状态,并举行链路训练、链路规复和电源管理。PCIe 总线使用端到端的连接方式,在一条PCIe 链路的两端只能各连接一个设备,这两个设备互为数据发送端和数据吸收端。由于 PCIe 是支持全双工通信的,以是发送端和吸收端中都含有TX (发送逻辑) 和RX (吸收逻辑)。在PCIe 总线的物理链路的一个数据通路(Lane) 中,有两组差分信号,共4 根信号线构成。其中发送端的TX 与吸收端的RX 使用一组差分信号连接,该链路也被称为发送端的发送链路,也是吸收端的吸收链路;而发送端的RX 与吸收端的TX 使用另一组差分信号连接,该链路也被称为发送端的吸收链路,也是吸收端的发送链路。一个PCIe 链路可以由多个Lane 构成。如今PCIe 链路可以支持1、2、4、8、12、16 和32 个Lane,即×1、×2、×4、×8、×12、×16 和×32 宽度的PCIe 链路。每一个Lane 上使用的总线频率与PCIe 总线使用的版本相关。
4、工程具体设计方案

工程设计原理框图

工程设计原理框图如下:

电脑端视频

输入源为电脑端实时视频,也就是电脑桌面的实时图像,分辨率为1280x720@60Hz;电脑端的分辨率需要设置为1280x720@60Hz,如下:

PCIE视频采集QT上位机

仅提供Win10版本的QT上位机,位置如下:

以Win10版本为例,源码位置如下:

以Win10版本下,可以点击已经编译好的QT软件直接运行,位置如下:

QT上位机运行效果如下:

XDMA配置及使用

根据Xilinx官方手册,XDMA框图如下:

由图可知,XDMA封装了Integrated Block for PCI Express IP,不仅完成了事务层的组包解包,还添加了完整的 DMA 引擎;
XDMA 一样平常情况下使用AXI4 接口,AXI4 接口可以加入到系统总线互联,实用于大数据量异步传输,而且通常情况下使用 XDMA 都会使用到 BRAM 或 DDR 内存;AXI4-Stream 接口实用于低延迟数据流传输。XDMA 允许在主机内存和 DMA 子系统之间移动数据。它通过对包含有关要传输的数据的源、目标和数量的信息的“形貌符”举行操作来实现此目标。这些直接内存传输既可以用于主机到卡(Host to Card,H2C)的传输,也可以用与卡到主机(Card to Host,C2H)的传输。可以将 DMA 配置为由全部通道共享一个 AXI4 Master 接口,大概为每个启用的通道提供一个 AXI4-Stream 接口。内存传输是基于每个通道的形貌符链接列表指定的,DMA 从主机内存和进程中获取这些链接列表。诸如形貌符完成和错误之类的变乱通过中断来发出信号。XDMA 还提供多达 16 条用户中断线,这些中断线会向主机天生中断。本设计需要配置为中断模式;如下图:

本设计XDMA线速率配置为8GT/s,这是PCIE3.0尺度,如下:

XDMA详情参考《AXI Bridge for PCI Express Gen3 Subsystem Product Guide(PG194)》;XDMA在Block Design中如下:

XDMA中断模块

XDMA中断模块和XDMA IP共同使用,XDMA中断模块主要执行两个使命,一是获取XDMA的状态,输出用户中断使能信号,以指示用户此时可以发起中断,该使命通过AXI_Lite接口与XDMA连接,其从机地址受PC端软件控制;二是转发用户中断给XDMA,当用户侧检测到XDMA处于可接受中断状态时,用户逻辑可以发起中断,XDMA中断模块将此中断转发给XDMA IP;将模块直接拖入Block Design中,体现如下:

FDMA图像缓存

FDMA图像缓存架构实现的功能是将输入视频缓存到板载DDR3中,由于调用了Xilinx官方的MIG作为DDR控制器,以是FDMA图像缓存架构就是实现用户数据到MIG的桥接作用;架构如下:

FDMA图像缓存架构由FDMA控制器+FDMA构成;FDMA实际上就是一个AXI4-FULL总线主设备,与MIG对接,MIG配置为AXI4-FULL接口;FDMA控制器实际上就是一个视频读写逻辑,以写视频为例,假设一帧图像的巨细为M×N,其中M代表图像宽度,N代表图像高度;FDMA控制器每次写入一行视频数据,即每次向DDR3中写入M个像素,写N次即可完成1帧图像的缓存,本设计只用到了FDMA控制器的读功能,FDMA控制器IP配置如下:

FDMA图像缓存架构在Block Design中如下:

UDP视频组包发送

UDP视频组包发送实现视频数据的组包并通过UDP协议栈发送出去,视频数据发送必须与QT上位机的接受步伐同等,上位机界说的UDP帧格式包括帧头个UDP数据,QT上位机吸收代码数据帧头界说如下:

FPGA端的UDP数据组包代码必须与上图的数据帧格式对应,否则QT无法解析,代码中界说了数据组包状态机以及数据帧,如下:

别的,由于UDP发送是64位数据位宽,而图像像素数据是24bit位宽,以是必须将UDP数据重新组合,以保证像素数据的对齐,这部门是整个工程的难点,也是全部FPGA做UDP数据传输的难点;UDP视频组包发送代码架构如下:

UDP协议栈

本UDP协议栈使用UDP协议栈网表文件,该协议栈如今并不开源,只提供网表文件,虽看不见源码但可正常实现UDP通信,但不影响使用,该协议栈带有用户接口,使得用户无需关心复杂的UDP协议而只需关心简单的用户接口时序即可操作UDP收发,非常简单;协议栈架构如下:

协议栈性能体现如下:
1:支持 UDP 吸收校验和检验功能,暂不支持 UDP 发送校验和天生;
2:支持 IP 首部校验和的天生和校验,同时支持 ICMP 协议中的 PING 功能,可吸收并响应同一个子网内部设备的 PING 请求;
3:可主动发起或响应同一个子网内设备的 ARP 请求,ARP 收发完全自适应。ARP 表可保存同一个子网内部256 个 IP 和 MAC 地址对;
4:支持 ARP 超时机制,可检测所需发送数据包的目标 IP 地址是否可达;
5:协议栈发送带宽利用率可达 93%,高发送带宽下,内部仲裁机制保证 PING 和 ARP 功能不受任何影响;
6:发送过程不会造成丢包;
7:提供64bit位宽AXI4-Stream情势的MAC接口,可与Xilinx官方的千兆以太网IP核Tri Mode Ethernet MAC,以及万兆以太网 IP 核 10 Gigabit Ethernet Subsystem、10 Gigabit Ethernet MAC 共同使用;
有了此协议栈,我们无需关心复杂的UDP协议的实现了,直接调用接口即可使用。。。
本UDP协议栈用户接口发送时序如下:

本UDP协议栈用户接口吸收时序如下:

MAC数据缓冲FIFO

这里对代码中用到的数据缓冲FIFO组做如下解释:
10G/25G Ethernet Subsystem与UDP协议栈之间的MAC数据需要通过 AXI4-Stream FIFO做缓冲,如果你对延时要求较高,可删除缓冲FIFO,以工程1为例,MAC数据缓冲FIFO代码层面如下:

10G/25G Ethernet Subsystem 详解

本设计的10G/25G Ethernet Subsystem部门主要为IP调用、IP复位配置等,代码层面如下:

10G/25G Ethernet Subsystem是Xilinx推出的具有10G速率的MAC,用户接口为AXI4-Stream,使用Xilinx GT高速接口作为物理层,官方数据手册为《PG210》,本博对10G Ethernet Subsystem的解析主要是对《PG210》的翻译和总结,具体细节读者还需自行阅读官方英文原版手册;
10G/25G Ethernet Subsystem框架如下:

可以看到,10G/25G Ethernet Subsystem与我们之前使用的10G Ethernet Subsystem相机简单很多,但功能都是一样的,用户需要关心的只有两个,一个是无外部连接的SFP光口,另一个是与FPGA用户逻辑连接的用户接口;外部接口为SERDES,本应用为SFP光口,FPGA用户逻辑接口为AXI4-Stream;
10G/25G Ethernet Subsystem 使用

10G/25G Ethernet Subsystem通过调用IP方式使用,这里只对重点配置讲解,如下:


当AXI4-Stream数据位宽选择64 bit时,要求GT连接的外部晶振必须是156.25M;这点很重要,因为它对硬件有定性要求,可以选择SIL系列可编程的差分晶振,否则硬件设计兼容性很差;
10G/25G Ethernet Subsystem 配置

10G/25G Ethernet Subsystem通过调用IP方式使用,通过灵活接口对IP和内部的MAC层和物理层举行配置,相比于之前使用的0G Ethernet Subsystem需要AXI-Lite配置而言,10G/25G Ethernet Subsystem使用更为简单,不再需要配置逻辑,仅需举行同步复位即可;以工程4为例,代码层面如下:

10G/25G Ethernet Subsystem 的多核使用

一个10G/25G Ethernet Subsystem最多可挂载4个GT高速接口,且4个GT高速接口共用一对差分时钟,也就是10G/25G Ethernet Subsystem 的多核使用;相比于之前使用的0G Ethernet Subsystem需要级联和主从搭配,10G/25G Ethernet Subsystem将这些功能举行了集成和优化,使得用户不再需要去举行复杂的连线和例化;以工程4为例,一个10G/25G Ethernet Subsystem挂载了4个GT高速接口,配置如下:

IP地址、端口号的修改

UDP协议栈留出了IP地址、端口号的修改端供词用户自由修改,位置在顶层模块如下:

测试用10G 网卡

测试用10G 网卡要求如下:
必须支持10G速率;
必须是SFP光口;
必须安装好网卡驱动,驱动找卖家要;
我的网卡驱动安装后如下:

SFP光口

FPGA开辟板需要至少拥有1路SFP光口,且至少支持10G速率,别的还需要SFP光模块和光纤,用于连接10网卡,我的FPGA开辟板与10G 网卡连接如下:

UDP视频吸收体现QT上位机

仅提供Win10版本的QT上位机,位置如下:

以Win10版本为例,源码位置如下:

以Win10版本下,可以点击已经编译好的QT软件直接运行,位置如下:

QT上位机运行效果如下:

我们的QT如今仅支持1280x720分辨率的视频抓图体现,但同时预留了1080P接口,对QT开辟感兴趣的朋友可以实验修改代码以适应1080P,因为QT在这里只是验证工具,不是本工程的重点,以是不再过多赘述;
Windows版本XDMA驱动安装

提供Windows和Linux系统驱动,本章节先容Windows下XDMA驱动安装;

Windows下驱动安装步骤如下:友谊提示,Windows下驱动秩序安装一次即可;
第一步:使系统禁用署名并进入测试模式,方法如下:

也可百度其他方法实现上述目标,完成后电脑屏幕右下角应有如下体现:

第二步:定位到驱动目次下,提供Windows7和Windows10两个版本驱动,由于我的电脑选择Windows10,如下:

单击鼠标右键安装即可,如下:



第三步:下载FPGA工程bit到FPGA开辟板,然后重启电脑,打开我的电脑–>管理–>设备管理器,应看到如下设备:

Linux版本XDMA驱动安装

提供Windows和Linux系统驱动,本章节先容Linux下XDMA驱动安装;

Linux下驱动安装步骤如下:友谊提示,Linux下,每次下载FPGA bit后都需要重启电脑才能安装驱动;
进入到Linux驱动目次下,一次执行以下两条指令即可安装,如下:
• 驱动编译终端指令:make -j8
•驱动安装终端指令:sudo insmod xdma.ko

工程源码架构

工程Block Design设计如下:

综合后的工程源码架构如下:

Vivado工程注意事项

Vivado工程需要共同修改过的Xilinx官方XDMA驱动和QT上位机一起使用,以是Vivado工程必须做到以下几点:
1:XDMA中的AXI4_Lite基地址必须设为0x44A00000,这是XDMA驱动修改的规定,感兴趣的可以去看驱动源码,配置如下;

2:MIG的DDR基地址必须从0x00000000开始,这是QT上位机代码的规定,感兴趣的可以去看QT源码,配置如下;

PCIE上板调试注意事项

1:必须先安装本博提供的XDMA驱动,详情请参考第4章节的《XDMA驱动及其安装》,Windows版本驱动只需安装一次;
2:Windows版本下载FPGA工程bit后需要重启电脑,电脑才能辨认到XDMA驱动;步伐固化后也需要重启电脑;Linux版本每次载FPGA工程bit后都需要重启电脑,都需要安装XDMA驱动;
3:FPGA板卡插在主机上后一样平常不需要额外供电,如果你的板子元器件较多功耗较大,则需要额外供电,详情咨询开辟板厂家,当然,找我买板子的客户可以直接问我;
4:PCIE调试需要电脑主机,但笔记本电脑理论上也可以外接出来PCIE,详情百度自行搜索一下,电脑主机PCIE插槽不方便操作时可以使用延伸线接出来,某宝有卖;
5、vivado工程源码1详解–>KU060版本

开辟板FPGA型号:Xilinx–>Kintex UltraScale–xcku060-ffva1156-2-i;
FPGA开辟情况:Vivado2019.1;
QT开辟情况:VS2015 + Qt 5.12.10;
输入:电脑主机实时视频,分辨率1280x720@60Hz;
输出:万兆UDP网络视频,分辨率1280x720@60Hz;
PC端到FDMA传输方案:PCIE3.0传输;
图像缓存方案:FDMA图像缓存+DDR4颗粒;
PCIE底层方案:Xilinx XDMA,8GT/s单lane线速率;
PCIE详情:PCIE3.0版本,X8,8GT/s单lane线速率;
万兆以太网物理层:Xilinx官方10G/25G Ethernet Subsystem方案
万兆以太网协议层:10G万兆UDP协议栈;
实现功能:FPGA实现PCIE3.0视频采集转10G万兆UDP网络输出;
工程作用:此工程目标是让读者掌握FPGA实现PCIE3.0视频采集转10G万兆UDP网络输出的设计能力,以便可以大概移植和设计本身的项目;
工程Block Design和工程代码架构请参考第4章节的《工程源码架构》末节内容;
工程的资源斲丧和功耗如下:

6、工程移植阐明

vivado版本不同等处置处罚

1:如果你的vivado版本与本工程vivado版本同等,则直接打开工程;
2:如果你的vivado版本低于本工程vivado版本,则需要打开工程后,点击文件–>另存为;但此方法并不保险,最保险的方法是将你的vivado版本升级到本工程vivado的版本大概更高版本;

3:如果你的vivado版本高于本工程vivado版本,办理如下:

打开工程后会发现IP都被锁住了,如下:

此时需要升级IP,操作如下:


FPGA型号不同等处置处罚

如果你的FPGA型号与我的不同等,则需要更改FPGA型号,操作如下:



更改FPGA型号后还需要升级IP,升级IP的方法前面已经讲述了;
其他注意事项

1:由于每个板子的DDR不一定完全一样,以是MIG IP需要根据你本身的原理图举行配置,甚至可以直接删掉我这里原工程的MIG并重新添加IP,重新配置;
2:根据你本身的原理图修改引脚约束,在xdc文件中修改即可;
3:纯FPGA移植到Zynq需要在工程中添加zynq软核;
7、上板调试验证

准备工作

需要准备的东西如下:
FPGA开辟板,没有开辟板可以找本博提供;
带PCIE卡槽的电脑主机;
网线;
我的开辟板了连接如下:

电脑端IP地址配置

电脑端IP地址需要修改为和代码里的目标地址一样,如下:

QT上位机配置

打开QT上位机配置如下,然后可以采集体现视频;

电脑端视频通过PCIE到FPGA端转UDP网络视频输出效果演示

电脑端视频通过PCIE到FPGA端转UDP网络视频输出效果如下:

     XDMA-UDP
  
8、福利:工程代码的获取

福利:工程代码的获取
代码太大,无法邮箱发送,以某度网盘链接方式发送,
资料获取方式:私,大概文章末尾的V手刺。
网盘资料如下:

别的,有很多朋友给本博主提了很多意见和发起,盼望能丰富服务内容和选项,因为差异朋友的需求不一样,以是本博主还提供以下服务:


免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

x
回复

使用道具 举报

0 个回复

倒序浏览

快速回复

您需要登录后才可以回帖 登录 or 立即注册

本版积分规则

老婆出轨

金牌会员
这个人很懒什么都没写!

标签云

快速回复 返回顶部 返回列表