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

石岩做网站公司山东网站建设和游戏开发的公司排名

石岩做网站公司,山东网站建设和游戏开发的公司排名,做床上用品网站,h5开发小程序目录 1、前言工程概述免责声明 2、相关方案推荐我已有的PCIE方案10G Ethernet Subsystem实现万兆以太网物理层方案 3、PCIE基础知识扫描4、工程详细设计方案工程设计原理框图电脑端视频PCIE视频采集QT上位机XDMA配置及使用XDMA中断模块FDMA图像缓存UDP视频组包发送UDP协议栈MAC… 目录 1、前言工程概述免责声明 2、相关方案推荐我已有的PCIE方案10G Ethernet Subsystem实现万兆以太网物理层方案 3、PCIE基础知识扫描4、工程详细设计方案工程设计原理框图电脑端视频PCIE视频采集QT上位机XDMA配置及使用XDMA中断模块FDMA图像缓存UDP视频组包发送UDP协议栈MAC数据缓冲FIFO10G Ethernet Subsystem 详解10G Ethernet Subsystem 使用10G Ethernet Subsystem 配置多个10G Ethernet Subsystem 的主从搭配使用IP地址、端口号的修改SFP光口UDP视频接收显示QT上位机Windows版本XDMA驱动安装Linux版本XDMA驱动安装工程源码架构Vivado工程注意事项PCIE上板调试注意事项 5、vivado工程源码1详解--Kintex7-35T版本6、vivado工程源码2详解--Zynq7100版本7、工程移植说明vivado版本不一致处理FPGA型号不一致处理其他注意事项 8、上板调试验证准备工作电脑端IP地址配置QT上位机配置电脑端视频通过PCIE到FPGA端转UDP网络视频输出效果演示 9、福利工程代码的获取 FPGA实现PCIE采集电脑端视频转SFP光口万兆UDP输出基于XDMAGTX架构提供2套工程源码和技术支持 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 Ethernet Subsystem方案实现万兆以太网物理层功能 工程概述 本设计使用Xilinx系列FPGA为平台实现电脑端视频通过PCIE到FPGA端转UDP网络视频输出输入源为电脑端实时视频也就是电脑桌面的实时图像分辨率为1280x72060Hz打开QT上位机QT上位机会实时采集电脑端视频通过PCIE总线发送到FPGA板卡FPGA内部的XDMA IP核接收到电脑端发来的视频后将视频写入板载DDR3中缓存同时使用本博主常用的FDMA图像缓存架构将视频从板载DDR3中读出然后视频送入UDP视频组包发送模块将视频加上包头和其他控制信息然后组包的视频送入UDP协议栈进行以太网帧组帧UDP协议栈输出的MAC数据经过FIFO组进行数据缓冲MAC数据再送入Xilinx官方的10G Ethernet Subsystem IP核实现万兆以太网物理层再经过板载的SFP光口用光纤传输到电脑端电脑端使用万兆网卡接收数据并在QT上位机接收UDP网络视频并显示出来本博客提供4套工程源码具体如下 现对上述2套工程源码做如下解释方便读者理解 工程源码1 开发板FPGA型号为Xilinx–Kintex7–35T–xc7k325tffg676-2输入源为电脑端实时视频也就是电脑桌面的实时图像分辨率为1280x72060Hz打开QT上位机QT上位机会实时采集电脑端视频通过PCIE总线发送到FPGA板卡FPGA内部的XDMA IP核接收到电脑端发来的视频后将视频写入板载DDR3中缓存同时使用本博主常用的FDMA图像缓存架构将视频从板载DDR3中读出然后视频送入UDP视频组包发送模块将视频加上包头和其他控制信息然后组包的视频送入UDP协议栈进行以太网帧组帧UDP协议栈输出的MAC数据经过FIFO组进行数据缓冲MAC数据再送入Xilinx官方的10G Ethernet Subsystem IP核实现万兆以太网物理层再经过板载的SFP光口用光纤传输到电脑端电脑端使用万兆网卡接收数据并在QT上位机接收UDP网络视频并显示出来板载的PCIE为8 Lane的PCIE2.0单Lane线速率配置为5GT/s板载SFP光口由此形成QT上位机PCIEXDMASFP万兆UDP的高端架构该工程适用于PCIE接口的视频采集卡或者网卡应用 工程源码2 开发板FPGA型号为Xilinx–Zynq7100–xc7z100ffg900-2输入源为电脑端实时视频也就是电脑桌面的实时图像分辨率为1280x72060Hz打开QT上位机QT上位机会实时采集电脑端视频通过PCIE总线发送到FPGA板卡FPGA内部的XDMA IP核接收到电脑端发来的视频后将视频写入板载DDR3中缓存同时使用本博主常用的FDMA图像缓存架构将视频从板载DDR3中读出然后视频送入UDP视频组包发送模块将视频加上包头和其他控制信息然后组包的视频送入UDP协议栈进行以太网帧组帧UDP协议栈输出的MAC数据经过FIFO组进行数据缓冲MAC数据再送入Xilinx官方的10G Ethernet Subsystem IP核实现万兆以太网物理层再经过板载的SFP光口用光纤传输到电脑端电脑端使用万兆网卡接收数据并在QT上位机接收UDP网络视频并显示出来板载的PCIE为8 Lane的PCIE2.0单Lane线速率配置为5GT/s板载SFP光口由此形成QT上位机PCIEXDMASFP万兆UDP的高端架构该工程适用于PCIE接口的视频采集卡或者网卡应用 本文详细描述了FPGA实现PCIE采集电脑端视频转SFP光口万兆UDP输出的设计方案工程代码可综合编译上板调试可直接项目移植适用于在校学生、研究生项目开发也适用于在职工程师做项目开发可应用于医疗、军工等行业的高速接口领域 提供完整的、跑通的工程源码和技术支持 工程源码和技术支持的获取方式放在了文章末尾请耐心看到最后 免责声明 本工程及其源码即有自己写的一部分也有网络公开渠道获取的一部分(包括CSDN、Xilinx官网、Altera官网等等)若大佬们觉得有所冒犯请私信批评教育基于此本工程及其源码仅限于读者或粉丝个人学习和研究禁止用于商业用途若由于读者或粉丝自身原因用于商业用途所导致的法律问题与本博客及博主无关请谨慎使用。。。 2、相关方案推荐 我已有的PCIE方案 我的主页有PCIE通信专栏该专栏基于XDMA的轮询模式实现与QT上位机的数据交互既有基于RIFFA实现的PCIE方案也有基于XDMA实现的PCIE方案既有简单的数据交互、测速也有应用级别的图像采集传输以下是专栏地址 点击直接前往 此外我的主页有中断模式的PCIE通信专栏该专栏基于XDMA的中断模式实现与QT上位机的数据交互以下是专栏地址 点击直接前往 此外还有基于RIFFA架构的PCIE通信专栏以下是专栏地址 点击直接前往 10G Ethernet Subsystem实现万兆以太网物理层方案 Xilinx官方的10G Ethernet Subsystem IP核可实现万兆以太网物理层方案该方案使用FPGA内部高速接口资源即可实现关于这个方案请参考我之前的博客博客链接如下 10G Ethernet Subsystem物理层万兆UDP协议栈方案博客链接如下 直接点击前往 10G Ethernet Subsystem物理层万兆TCP/IP协议栈方案博客链接如下 直接点击前往 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、工程详细设计方案 工程设计原理框图 工程设计原理框图如下 电脑端视频 输入源为电脑端实时视频也就是电脑桌面的实时图像分辨率为1280x72060Hz电脑端的分辨率需要设置为1280x72060Hz如下 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 CardH2C的传输也可以用与卡到主机Card to HostC2H的传输。可以将 DMA 配置为由所有通道共享一个 AXI4 Master 接口或者为每个启用的通道提供一个 AXI4-Stream 接口。内存传输是基于每个通道的描述符链接列表指定的DMA 从主机内存和进程中获取这些链接列表。诸如描述符完成和错误之类的事件通过中断来发出信号。XDMA 还提供多达 16 条用户中断线这些中断线会向主机生成中断。本设计需要配置为中断模式如下图 XDMA详情参考《AXI Bridge for PCI Express Gen3 Subsystem Product GuidePG194》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 Ethernet Subsystem与UDP协议栈之间的MAC数据需要通过 AXI4-Stream FIFO做缓冲如果你对延时要求较高可删除缓冲FIFO以工程1为例MAC数据缓冲FIFO代码层面如下 10G Ethernet Subsystem 详解 本设计的10G Ethernet Subsystem部分包括IP调用、IP配置等以工程1为例代码层面如下 10G Ethernet Subsystem是Xilinx推出的具有10G速率的MAC用户接口为AXI4-Stream使用Xilinx GT高速接口作为物理层官方数据手册为《PG157》本博对10G Ethernet Subsystem的解析主要是对《PG157》的翻译和总结详细细节读者还需自行阅读官方英文原版手册 10G Ethernet Subsystem框架如下 可以看到10G Ethernet Subsystem内部封装了Xilinx的10 Gigabit Ethernet PCS/PMA和10 Gigabit Ethernet MAC两个IP这两个IP分别对应物理层和MAC层IP之间通过XGMII接口连接用户接口被封装为AXI4-Stream可通过AXI4-Lite接口配置IP物理层对外接口为GT其中1588时钟同步功能可在音视频传输中启用适应性还是很好的关于这些底层信息需要专业的以太网协议知识不建议非专业人事深究开发者一般只需要能够使用该IP即可 现对用户接口IP指示信号做特别说明 用户发送接口AXI4-Stream多了一个tx_ifg_delay端口它是用于设置发送间隔一般都默认采用最小间隔即将 tx_ifg_delay 置为 0 即可 用户接收接口AXI4-Stream少了一个tready 信号这代表接收端需要具备持续接收数据的能力防止出现数据来不及接收而产生溢出 pcspma_status[7:0]信号用于反应物理层运行情况最低位为1表示物理层锁定即运行正常 sim_speed_up 端口只有在仿真时才需要用到用于加快仿真速度仿真时给1上板编译时给0 AXI4-Lite接口对IP和内部的MAC层和物理层就你行配置主要是对复位顺序的配置和内部数据读写测试等 10G Ethernet Subsystem 使用 10G Ethernet Subsystem通过调用IP方式使用这里只对重点配置讲解如下 当AXI4-Stream数据位宽选择64 bit时要求GT连接的外部晶振必须是156.25M这点很重要因为它对硬件有定性要求可以选择SIL系列可编程的差分晶振否则硬件设计兼容性很差 10G Ethernet Subsystem 配置 10G Ethernet Subsystem通过调用IP方式使用通过AXI4-Lite接口对IP和内部的MAC层和物理层就你行配置主要是对复位顺序的配置和内部数据读写测试等代码中提供了纯verilog的配置逻辑如下 多个10G Ethernet Subsystem 的主从搭配使用 多个10G Ethernet Subsystem 的主从搭配使用的应用场景是FPGA开发板充当多光口的网卡使用即一个FPGA挂载多个光口每一个光口相当于一个独立的网卡有独立的IP地址和MAC地址类似于交换机的样子 多个10G Ethernet Subsystem 的主从搭配使用框架如下 10G Ethernet Subsystem可单独使用当单独使用时一个10G Ethernet Subsystem单独占用一个GT高速接口资源单独占用一对差分时钟资源此时的IP配置如下 10G Ethernet Subsystem也可多个级联主从搭配使用主从搭配使用时一个10G Ethernet Subsystem当做主IP占用一个GT高速接口资源单独占用一对差分时钟资源其他10G Ethernet Subsystem当做从IP占用一个GT高速接口资源但不占用差分时钟资源而是使用主IP提供的参考时钟此时的从IP配置如下 但需要注意的是这种操作的前提是你用到的GT资源都在同一个BANK内 IP地址、端口号的修改 UDP协议栈留出了IP地址、端口号的修改端口供用户自由修改位置在顶层模块如下 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 工程源码架构 提供2套工程源码以工程源码1为例工程Block Design设计如下 提供2套工程源码以工程源码1为例综合后的工程源码架构如下 Vivado工程注意事项 Vivado工程需要配合修改过的Xilinx官方XDMA驱动和QT上位机一起使用所以Vivado工程必须做到以下几点 1XDMA中的AXI4_Lite基地址必须设为0x44A00000这是XDMA驱动修改的规定感兴趣的可以去看驱动源码配置如下 2MIG的DDR基地址必须从0x00000000开始这是QT上位机代码的规定感兴趣的可以去看QT源码配置如下 PCIE上板调试注意事项 1必须先安装本博提供的XDMA驱动详情请参考第4章节的《XDMA驱动及其安装》Windows版本驱动只需安装一次 2Windows版本下载FPGA工程bit后需要重启电脑电脑才能识别到XDMA驱动程序固化后也需要重启电脑Linux版本每次载FPGA工程bit后都需要重启电脑都需要安装XDMA驱动 3FPGA板卡插在主机上后一般不需要额外供电如果你的板子元器件较多功耗较大则需要额外供电详情咨询开发板厂家当然找我买板子的客户可以直接问我 4PCIE调试需要电脑主机但笔记本电脑理论上也可以外接出来PCIE详情百度自行搜索一下电脑主机PCIE插槽不方便操作时可以使用延长线接出来某宝有卖 5、vivado工程源码1详解–Kintex7-35T版本 开发板FPGA型号Xilinx–Kintex7–35T–xc7k325tffg676-2 FPGA开发环境Vivado2019.1 QT开发环境VS2015 Qt 5.12.10 输入电脑主机实时视频分辨率1280x72060Hz 输出万兆UDP网络视频分辨率1280x72060Hz PC端到FDMA传输方案PCIE传输 图像缓存方案FDMA图像缓存DDR3颗粒 PCIE底层方案Xilinx XDMA PCIE详情PCIE2.0版本X85GT/s单lane线速率 万兆以太网物理层Xilinx官方10G Ethernet Subsystem方案 万兆以太网协议层万兆UDP协议栈 实现功能FPGA实现PCIE采集电脑端视频转SFP光口万兆UDP输出 工程作用此工程目的是让读者掌握FPGA实现PCIE采集电脑端视频转SFP光口万兆UDP输出的设计能力以便能够移植和设计自己的项目 工程Block Design和工程代码架构请参考第4章节的《工程源码架构》小节内容 工程的资源消耗和功耗如下 6、vivado工程源码2详解–Zynq7100版本 开发板FPGA型号Xilinx–Zynq7100–xc7z100ffg900-2 FPGA开发环境Vivado2019.1 QT开发环境VS2015 Qt 5.12.10 输入电脑主机实时视频分辨率1280x72060Hz 输出万兆UDP网络视频分辨率1280x72060Hz PC端到FDMA传输方案PCIE传输 图像缓存方案FDMA图像缓存DDR3颗粒 PCIE底层方案Xilinx XDMA PCIE详情PCIE2.0版本X85GT/s单lane线速率 万兆以太网物理层Xilinx官方10G Ethernet Subsystem方案 万兆以太网协议层万兆UDP协议栈 实现功能FPGA实现PCIE采集电脑端视频转SFP光口万兆UDP输出 工程作用此工程目的是让读者掌握FPGA实现PCIE采集电脑端视频转SFP光口万兆UDP输出的设计能力以便能够移植和设计自己的项目 工程Block Design和工程代码架构请参考第4章节的《工程源码架构》小节内容 工程的资源消耗和功耗如下 7、工程移植说明 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软核 8、上板调试验证 准备工作 需要准备的器材如下 FPGA开发板没有开发板可以找本博提供 带PCIE卡槽的电脑主机 网线 我的开发板了连接如下 电脑端IP地址配置 电脑端IP地址需要修改为和代码里的目的地址一样如下 QT上位机配置 打开QT上位机配置如下然后可以采集显示视频 电脑端视频通过PCIE到FPGA端转UDP网络视频输出效果演示 电脑端视频通过PCIE到FPGA端转UDP网络视频输出效果如下 XDMA-UDP 9、福利工程代码的获取 福利工程代码的获取 代码太大无法邮箱发送以某度网盘链接方式发送 资料获取方式私或者文章末尾的V名片。 网盘资料如下 此外有很多朋友给本博主提了很多意见和建议希望能丰富服务内容和选项因为不同朋友的需求不一样所以本博主还提供以下服务
http://www.pierceye.com/news/747445/

相关文章:

  • 网站建设及维护流程深圳市手机网站建设品牌
  • 凡科做的网站被举报了会怎么样网络招商平台网站怎么做
  • 山东网站建设公司哪家权威嘉兴中小企业网站制作
  • 做网站的搜索引擎从代码角度分析网站怎么做
  • jsp小型网站开发南宁百度seo排名优化
  • 上海最专业的网站建设公司排名为什么上传网站模板网站上没有文字和图片
  • 网站建设灬金手指下拉十四自己做的网站与ie不兼容
  • 专业制作网站价格wordpress 安装语言包
  • 企业网站建设运营的灵魂是什么网站建设服务协议 百度
  • 注册了域名之后怎么做网站苏州市住房建设局网站
  • 免费做问卷的网站好新媒体培训
  • 网站建设 版权归属重庆建设监理协会网站
  • 游戏网站域名相城区网站建设
  • 很看好未来做生鲜的网站邢台做外贸网站
  • 网站首页点击中文英文链接 翻译成对应的语言 怎么做100种创意活动策划
  • 网站标题怎么设置小程序定制程序
  • discuz 网站搬家网站建设的工具
  • 有做国际网站生意吗做网站义乌
  • 网站开发技术可行性分析怎么写孝感建设公司网站
  • 灯塔网站建设有网站源码怎么做网站
  • 网站设计方案策划德国的网站后缀
  • 可以自己做网站卖东西wordpress标签静态
  • 典当行 网站威海网站推广
  • 佛山市住房建设局网站网站开发业务ppt
  • 页面结构和页面设计优化措施二十条
  • 做网站程序怎么写wordpress漂浮表单
  • 企业网站要怎么建设网站建设 工具
  • wordpress 邮箱激活宁波营销型网站建设优化建站
  • 婚纱网站页面设计广州网站建设推广公司有哪些
  • 网站制作报价大约建设模式有哪些