最近由于项目解bug需要将视频图像写入外部存储器并通过HDMI输出,但是遇到sink端插拔后输出图像错乱的问题。对于老工程师应该很容易规避吧,奈何对于我这个新手还是要花费一番功夫(在当初上学的时候遇到过,时间长又给忘了)。所以现在记录一下,防止退化的脑子又把它给遗忘了。
下图就是整个block图,很简单。但是在写VIDEO2FIFO和FIFO2VIDEO模块时,我改了很多次。最初写的第一版就是可以从hdmi写入到ddr,然后再从ddr读回到FPGA并通过hdmi输出(hdmi sink和source的ip是xilinx的github仓库下载的,板卡是上学时买的pynq-z2)。虽然可以显示图像,但是存在一个bug,就是插拔hdmi连接线导致图像错乱。没有办法,我就给关键信号加了debug,抓取波形分析后,发现拔掉sink端的hdmi连接线后,其输入时钟就没了。而状态机的时钟用的正是hdmi的输入时钟,这就会导致在hdmi消失后,状态的跳转会出现问题,然后我把状态机的时钟换成了axi时钟(axi时钟一般都是晶振分频出的,是稳定的),又进行了一番测试。哈哈,果然没有解决~~~~

我就知道不会这么顺利,然后又加debug,发现原来是之前修改过程中复位出了问题。我的本意是无论hdmi时钟有无,axi时钟下的逻辑都应正常执行。而现在的复位是hdmi时钟lock后,VIDEO2FIFO、FIFO2VIDEO和DMA才动作。诶,只能再修改了,最终插拔正常了!!!
其实这些问题本可以避免的,还是花了好长时间。。。还是因为平时没有做好总结。现在归纳下:
对于外部接口读写ddr的,涉及到状态机,最好还是用axi的时钟。对于写ddr状态机,可以判断读fifo的数据个数,再进行跳转,而对于读ddr状态机,可以判断写fifo的数据个数,再进行跳转(这是因为AXI的协议需要满足突发长度,涉及需要保证其突发完)。上述的逻辑都是在AXI的时钟域下。
应该还有别的好方法,目前我只能想到这。

FPGA视频传输bug小记相关推荐

  1. 【正点原子FPGA连载】第三十六章 基于OV5640的PL以太网视频传输实验-摘自【正点原子】领航者ZYNQ之FPGA开发指南_V2.0

    1)实验平台:正点原子领航者ZYNQ开发板 2)平台购买地址:https://item.taobao.com/item.htm?&id=606160108761 3)全套实验源码+手册+视频下 ...

  2. 【FPGA的基础快速入门26-----基于OV7725的以太网视频传输】

    FPGA的基础学习-----基于OV7725的以太网视频传输 视频传输简介 视频传输简介 以太网图像传输方案中,使用UDP协议传输视频能够提供较高的吞吐量和较低的延迟,非常适合低延时的视频传输场合. ...

  3. 【正点原子FPGA连载】第三十章 基于OV5640的PL以太网视频传输实验摘自【正点原子】DFZU2EG/4EV MPSoC 之FPGA开发指南V1.0

    1)实验平台:正点原子MPSoC开发板 2)平台购买地址:https://detail.tmall.com/item.htm?id=692450874670 3)全套实验源码+手册+视频下载地址: h ...

  4. 【紫光同创国产FPGA教程】【第二十七章】千兆以太网视频传输实验

    本原创教程由芯驿电子科技(上海)有限公司(ALINX)创作,版权归本公司所有,如需转载,需授权并注明出处(http://www.alinx.com). 适用于板卡型号: PGL22G 1. 简介 本实 ...

  5. 基于FPGA视频图像处理系统设计

    摘   要 本报告给出一个基于FPGA+两片DDR2组成的核心板.带有4路视频输入和VGA接口的开发板进行的视频图像采集和处理系统的设计.使用TW2867进行视频输入信号的编码,存储到DDR2中,通过 ...

  6. USB3.0之高速视频传输测试 双目相机(mt9p031、mt9m001)带宽高达300M测试 配合isensor测试 500万像素15fps...

    USB3.0之高速视频传输测试 双目相机(mt9p031.mt9m001)带宽高达300M测试 配合isensor测试 500万像素15fps 最近完善了下USB3.0的视频开发测试,主要优化了FPG ...

  7. FPGA 视频拼接器的架构

    我想开个专栏介绍下FPGA视频拼接器. 首先说明这绝对是一个很小众的产品.主要用在 安防.展示 和会议室的屏幕的显示. 先看个拓扑图: 左边是输入卡 ,右边是 输出卡 和 控制卡. 输入卡: 负责 H ...

  8. 寒假之视频压缩笔记——FPGA 视频拼接器的架构

    原博客:https://blog.csdn.net/angelbosj/article/details/50155917 我想开个专栏介绍下FPGA视频拼接器. 首先说明这绝对是一个很小众的产品.主要 ...

  9. 5. MIZ7035 PCIe测试 RIFFA【PCIE视频传输】

    1.前言 MIZ7035官方提供了两种pcie的demo,一个就是普通的PIO测试,一个是BMD测试.我只是试验了PIO功能,可以对板卡直接进行IO寄存器读写.而另外一个BMD功能使用了DMA来加速数 ...

最新文章

  1. Linux下的C#连接Mysql数据库
  2. 斯坦福NLP团队发布最新自然语言处理Python库
  3. 用Java线程获取优异性能(II)——使用同步连载线程访问关键代码部份
  4. Python 技术篇-使用PyQt5库获取电脑屏幕桌面的宽、高和分辨率
  5. 项目打包去掉调试时的NSLog、print
  6. SAP Commerce Cloud Spartacus UI 修改 primary color 的方法
  7. 面试专题(Mysql及Mongodb)
  8. leetcode 1584. 连接所有点的最小费用(并查集)
  9. python连接access数据库odbc_对Python通过pypyodbc访问Access数据库的方法详解
  10. Error:java: Compilation failed: internal java compiler error
  11. IOS 7 Xcode 5 免IDP证书 真机调试
  12. pyserial模块读取串口数据
  13. 小学计算机网络安全考试试卷,2017年小学生网络安全知识竞赛试题
  14. usb右下角有显示,计算机没显示,U盘显示在计算机的右下角,但无法打开
  15. 微前端究竟是什么?微前端核心技术揭秘!
  16. 内存,外存,运存,显存,闪存,硬盘,SSD等概念
  17. 《SVN宇宙版教程》:第五章 TortoiseSVN中Repo-browser介绍
  18. 浅谈UML---协作图
  19. php打印j机1015的驱动,HP LaserJet1015打印机驱动
  20. NUIST 9th 校赛 P4

热门文章

  1. 华为p10 内存测试软件,华为p10闪存门怎么回事 华为p10/P10Plus闪存怎么测试
  2. 互联网访问检测服务器
  3. Java不区分大小写模糊查询方法_查询语句中不区分大小写和区分大小写及其模糊查询 的语句...
  4. 2019年幼儿教师如何报名考取?教育部中央电教馆幼师证报名考取详情
  5. 网易云音乐小程序 笔记
  6. 关于 Android 中 TabLayout 下划线适配文字长度解析(附清晰详细的源码解析)
  7. 树莓派调用百度人脸识别API实现人脸识别
  8. 无数的讽刺侮辱挖苦打击否定不屑与嘲笑,只有罗永浩才撑得住吧
  9. 致敬平凡程序员妙优车助力1024程序员节
  10. 【引用】100句经典刺透人心,伤愈后才能更坚强