FPGA实现UDP传输是FPGA在通信领域的应用之一,只要有UDP收发模块,那么实现UDP传输就只剩下数据组包的事项了;
之前我写过一篇文章介绍过FPGA实现UDP协议的文章FPGA实现UDP协议
后来发现有封装了这个代码的UDP协议栈网表文件,然后添加了Xilinx三速网IP和FIFO的UDP方案,该方案更有利于实现大批量数据传输,整体性能高于之前写的那个FPGA实现UDP协议,但这个方案的UDP协议部分没有源码,但能用,而且还很稳定;关于这部分请看我之前写的文章FPGA实现UDP协议新方案
想要使用这个方案,必须先去Xilinx官网申请三速网IP的licence;关于这部分请参考我之前的文章三速网licence申请
工程介绍:
框图如下:

视频源:
有两个,对应2套工程,1是OV5640摄像头视频,720P,RGB888;
2是HDMI输入视频,720P,RGB888;
FDMA:
实现将采集到的输入视频缓存到DDR3中再读出来,使用米联客的方案,这部分请参考我之前的文章FDMA图像三帧缓存方案
UDP发送:
实现UDP数据的组包,UDP数据发送必须与QT上位机的接受程序一致,上位机定义的UDP帧格式包括帧头个UDP数据,帧头定义如下:

另外,由于UDP发送是64位数据位宽,而图像像素数据是24bit位宽,所以必须将UDP数据重新组合,以保证像素数据的对齐,这部分是整个工程的难点,也是所有FPGA做UDP数据传输的难点;
UDP协议:
这部分就是前面说的FPGA实现UDP协议新方案这里注意一下,我板子的phy芯片是B50610,关于这个芯片FPGA需要掌握的常识请看这篇文章B50610解读
提供的2套工程说明:
网盘资料内容如下:

上位机运行程序只适用于Windows版本,目录在、如下:

工程1:
开发板:Kintex7开发板;
开发环境:vivado2019.1;
输入:OV5640摄像头,720P,RGB888;
输出:RJ45网口;
工程BD部分如下:

这里的FDMA控制器要做修改,我已经修改并重新封装,感兴趣的可以去看源码,这里多了个输出信号udp_read_en,作用是等待fifo缓存足够数据时才发起UDP传输;另外,输出数据位宽也变为了128位;
代码架构如下:

关键代码部分如下:

这部分代码实现了RGB888数据的紧密排列,拿到代码后要好好理解,不然看不懂这个工程;
工程2:
开发板:Kintex7开发板;
开发环境:vivado2019.1;
输入:HDMI输入720P,IT6802解码,RGB888;
输出:RJ45网口;
工程BD部分与工程1相同;
代码架构如下:

上板验证:
上板连接:

开发板IP地址如下:可根据需求自由修改

电脑端IP修改如下:

上位机设置如下:

显示效果如下:只演示了ov5640的效果,HDMI的自己去输出看看吧兄弟

udp传OV5640摄像头视频

福利:2套工程源码和上位机代码相赠,块找我吧兄弟!!!!

FPGA实现UDP传输视频,提供2套verilog工程源码和接收显示上位机程序相关推荐

  1. iOS酷我音乐导出工具使用说明和原理介绍(提供下载链接及工程源码)

    软件下载链接 酷我音乐ios版下载的音乐文件,通过同步助手等软件查看时,发现音乐文件都是一串数字命名.通过网上查找和自己尝试,发现那些文件都是音频文件改了文件名而已.只要修改回文件名,就能和正常的音乐 ...

  2. FPGA驱动FT601实现USB3.0相机 OV5640视频采集 提供2套工程源码和QT上位机源码

    目录 1.前言 2.FT601芯片解读和时序分析 FT601功能和硬件电路 FT601读时序解读 FT601写时序解读 3.我这儿的 FT601 USB3.0通信方案 4.vivado工程1--彩条视 ...

  3. FPGA USB FX2 ov5640摄像头视频采集 驱动CY7C68013A实现 提供2套工程源码和技术支持

    目录 1.前言 2.我这儿已有的 FPGA USB 通信方案 3.CY7C68013A芯片解读和硬件设计 FX2 简介 SlaveFIFO模式及其配置 4.工程详细设计方案 5.vivado工程 6. ...

  4. FPGA采集IT6802视频HDMI输出,提供两套工程源码和技术支持

    IT6802是宝岛台湾联阳半导体设计生产的HDMI接受芯片,数据手册有49页,编程手册79页,想要看懂并操作还是有难度的,所以直接上干货. 开发板:Kintex7板子: 开发环境:vivado2019 ...

  5. FPGA基于Tri Mode Ethernet MAC实现UDP通信 提供3套工程源码和技术支持

    目录 1.前言 2.我这里已有的UDP方案 3.米联客UDP协议栈 4.详细设计方案 5.Tri Mode Ethernet MAC的使用 6.vivado工程1详解 7.vivado工程2详解 8. ...

  6. FPGA HLS双线性插值图像缩放视频拼接,上板验证稳定通过,提供3套工程源码和技术支持

    目录 1.前言 2.HLS实现双线性插值图像缩放 3.vivado工程1:1080P缩小720P 4.vivado工程2:1080P缩小后mixer二分频 5.上板调试验证并演示 6.福利:工程代码的 ...

  7. FPGA纯verilog实现视频拼接,纯逻辑资源搭建,提供4套工程源码和技术支持

    目录 1.本方案的实用价值 2.总体设计方案 3.视频拼接方案算法 4.工程1:单路视频输出 5.工程2:2路视频拼接输出 6.工程3:3路视频拼接输出 7.工程4:4路视频拼接输出 8.上板调试验证 ...

  8. Zynq UltraScale系列使用MIPI CSI-2 RX Subsystem 解码MIPI视频PD输出 提供2套工程源码和技术支持

    目录 1.前言 2.设计思路和架构 3.vivado工程详解 4.上板调试验证 5.福利:工程代码的获取 1.前言 本设计采用OV5640摄像头MIPI模式作为输入,分辨率为1280x720@60Hz ...

  9. FPGA驱动FT601实现USB3.0相机HDMI视频采集 提供工程源码和QT上位机源码

    目录 1.前言 2.FT601芯片解读和时序分析 FT601功能和硬件电路 FT601读时序解读 FT601写时序解读 3.我这儿的 FT601 USB3.0通信方案 4.详细设计方案 5.vivad ...

最新文章

  1. Android 使用GridView+仿微信图片上传功能(附源代码)
  2. Python自动化测试框架有哪些?
  3. JavaScript垃圾回收机制理解
  4. 京东8.27算法笔试-滚雪球(动态规划python)
  5. nginx服务器配置安全维护,Nginx服务器相关的一些安全配置建议
  6. Ext js框架模拟Windows桌面菜单管理模板
  7. 仿堆糖图片自滚动瀑布流效果
  8. C++ queue(STL queue)
  9. 一个放在口袋里的项目,将社交裂变做到了极致
  10. 常用学术文献数据库界面及导出参考文献方法
  11. excel取消合并单元格并填充内容的技巧
  12. 记一次查深圳磨房百公里徒步照片历程
  13. 无需密码自己卸载深信服EDR软件
  14. 如何轻松回收您无法出售的旧电子产品
  15. web前端学习135-144(盒子模型---网页布局,盒子模型组成,边框,表格细线边框,盒子实际大小,内边距)
  16. lwIP TCP/IP 协议栈笔记之十五: TCP协议
  17. 安卓wifi测速android,WiFi测速管家
  18. 分数阶微分方程c语言,第一讲分数阶微分方程.PDF
  19. blos硬盘启动台式计算机,台式机加硬盘开机问题解决-戴尔台式机bios设置
  20. 【机器翻译】【mRASP】跑通mRASP代码(一):preprocess

热门文章

  1. C语言写的学生管理系统
  2. GNSS 常用缩略语汇总
  3. [转]SpringMVC常见面试题总结
  4. Ankylosauridae OS
  5. 通过刷DD-WRT固件的路由器访问猫
  6. unable to load dll 'gdiplus.dll' in docker
  7. 【BasicNet系列:六】MobileNet 论文 v1 v2 笔记解读 + pytorch代码分析
  8. 公司测试员用例写得乱七八糟,测试总监制定了这份《测试用例编写规范》
  9. 对《ToonSynth: Example-Based Synthesis of Hand-Colored Cartoon Animations》一文的理解(上)
  10. Golang语言快速上手到综合实战视频教程