百度公司做网站吗,哪个网站内链建设好,线下推广活动有哪些,湖北建设网站目录 1、前言免责声明 2、设计思路框架视频源选择OV7725摄像头配置及采集动态彩条HDMA图像缓存输入输出视频HDMA缓冲FIFOHDMA控制模块HDMI输出 3、PDS工程详解4、上板调试验证并演示准备工作静态演示动态演示 5、福利#xff1a;工程源码获取 紫光同创FPGA图像视频采集系统工程源码获取 紫光同创FPGA图像视频采集系统基于OV7725实现提供工程源码和技术支持 1、前言
“苟利国家生死以岂因祸福避趋之”我优秀地下档员川建国同志敏锐地洞察到祖国的短板在于高精尖半导体的制造领域于是本着为中华民族伟大复兴的中国梦贡献绵薄之力的初心建国站在高略高度和长远角度谋划宁愿背当代一世之骂名也要为祖国千秋万世谋2018年7月建国正式打响毛衣战随后又使出恰勃纸战术旨在为祖国先进制程半导体领域做出自主可控的战略推动在此请收下我一声谢谢啊
2019年初我刚出道时还是Xilinx遥遥领先的时代(现在貌似也是)那时的国产FPGA还处于辣鸡段位国产FPGA仰望Xilinx情不自禁道你以为躲在这里就找不到你吗没用的你那样拉轰的男人无论在哪里都像黑夜里的萤火虫那样的鲜明、那样的出众你那忧郁的眼神稀嘘的胡渣子神乎其技的刀法还有那杯Dry martine都深深的迷住了我。。。然而才短短4年如今的国产FPGA属于百家争鸣、百花齐放、八仙过海、神仙打架、方兴未艾、得陇望蜀、友商都是XX的喜极而泣之局面面对此情此景不得不吟唱老人家的诗句魏武挥鞭东临碣石有遗篇萧瑟秋风今又是换了人间。。。 言归正传目前对于国产FPGA的共识有以下几点 1性价比高与同级别国外大厂芯片相比价格相差几倍甚至十几倍 2自主可控国产FPGA拥有完整自主知识产权的产业链从芯片到相关EDA工具 3响应迅速FAE技术支持比较到位及时解决开发过程中遇到的问题毕竟中文数据手册。。 4采购方便产业链自主可控采购便捷
本文使用紫光同创的PGL22G-6MBG324 FPGA做基础的图像视频采集系统视频源有两种分别对应开发者手里有没有摄像头的情况一种是使用廉价的OV7725摄像头如果你手里没有OV7725摄像头或者FPGA开发板没有摄像头输入接口则可使用代码内部生成的动态彩条模拟摄像头视频视频源的选择通过代码顶层的define宏定义进行选择上电默认使用OV7725摄像头输入作为视频源FPGA采集到输入视频后使用本人开发的HDMA视频缓存架构将视频送到外接DDR3中缓存然后读出视频送HDMI显示器显示提供1套Pango Design Suite 2021.4版本的工程源码
紫光同创FPGA图像视频采集系统的设计方案工程代码可综合编译上板调试可直接项目移植适用于在校学生、研究生项目开发也适用于在职工程师做学习提升可应用于医疗、军工等行业的高速接口或图像处理领域 提供完整的、跑通的工程源码和技术支持 工程源码和技术支持的获取方式放在了文章末尾请耐心看到最后
免责声明
本工程及其源码即有自己写的一部分也有网络公开渠道获取的一部分(包括CSDN、Xilinx官网、Altera官网等等)若大佬们觉得有所冒犯请私信批评教育基于此本工程及其源码仅限于读者或粉丝个人学习和研究禁止用于商业用途若由于读者或粉丝自身原因用于商业用途所导致的法律问题与本博客及博主无关请谨慎使用。。。
2、设计思路框架
本文使用紫光同创的PGL22G-6MBG324 FPGA做基础的图像视频采集系统视频源有两种分别对应开发者手里有没有摄像头的情况一种是使用廉价的OV7725摄像头如果你手里没有OV7725摄像头或者FPGA开发板没有摄像头输入接口则可使用代码内部生成的动态彩条模拟摄像头视频视频源的选择通过代码顶层的define宏定义进行选择上电默认使用OV7725摄像头输入作为视频源提供1套Pango Design Suite 2021.4版本的工程源码FPGA采集到输入视频后使用本人开发的HDMA视频缓存架构将视频送到外接DDR3中缓存然后读出视频送HDMI显示器显示 工程设计框图如下
视频源选择
视频源有两种分别对应开发者手里有没有摄像头的情况一种是使用廉价的OV7725摄像头如果你手里没有OV7725摄像头或者FPGA开发板没有摄像头输入接口则可使用代码内部生成的动态彩条模拟摄像头视频视频源的选择通过代码顶层的宏定义进行选择上电默认使用OV7725摄像头输入作为视频源视频源的选择通过代码顶层的define宏定义进行如下 视频源选择逻辑代码部分如下 选择逻辑如下 当(注释) define COLOR_IN时输入源视频是动态彩条 当(不注释) define COLOR_IN时输入源视频是OV7725
OV7725摄像头配置及采集
OV7725摄像头需要i2c配置才能使用需要将DVP接口的视频数据采集为RGB565或者RGB888格式的视频数据这两部分均用verilog代码模块实现代码位置如下 其中摄像头配置为分辨率640x480 摄像头采集模块支持RGB565和RGB888格式的视频输出可由参数配置如下 RGB_TYPE0输出本RGB565格式 RGB_TYPE1输出本RGB888格式 设计选择RGB888格式
动态彩条
动态彩条可配置为不同分辨率的视频视频的边框宽度动态移动方块的大小移动速度等都可以参数化配置我这里配置为辨率640x480动态彩条模块代码位置和顶层接口和例化如下
HDMA图像缓存
HDMA图像缓存的本质就是一个封装了用户接口的AXI4-FULL-MASTER总线HDMA对外与DDR3交互紫光同创FPGA自带的DDR3控制器的用户接口为AXI4-FULL总线HDMA对内例化两个FIFO与FPGA内部逻辑交互所以开发者在使用HDMA时已无需再关心复杂的为AXI4-FULL协议只需要像使用FIFO那样简单即可HDMA架构如下 代码架构如下
输入输出视频
输入视频的数据格式为RGB即典型的pclk、vs、de、rgb形式的VGA视频时序但需要注意的是因为输入视频直接与FIFO交互FIFO的AXI侧的数据位宽为128位为了数据的不错位输入视频的rgb信号接口不能为传统的24位这里可以设置为16或者32位代码中通过参数配置我配置为32位如下
HDMA缓冲FIFO
例化两个FIFO作为FPGA逻辑数据与AXI4数据的缓冲所谓缓冲即数据位宽的转换、时钟域的转换、读写时机的控制等部分FPGA逻辑侧的数据位宽为32位AXI4侧的数据位宽为128位以写FIFO为例配置如下
HDMA控制模块
HDMA控制模块的主要功能是实现AXI4-FULL主机和图像缓存读写地址切换两大功能AXI4-FULL主机比较简单照着AXI4-FULL时序图写就完事儿了图像缓存读写地址切换就难了本设计通过顶层的参数来配置图像缓存的帧数如下 HDMA_PINGPANG_EN1则图像做三帧缓存 HDMA_PINGPANG_EN0则图像做单帧缓存 本设计配置为HDMA_PINGPANG_EN1 为了实现图像的多帧缓存将读写地址分段如下 读写地址帧地址数据地址 数据地址即正常的AXI4数据突发的地址增量 写帧地址一帧图像到来时1 读帧地址一帧图像到来时2 如此做到了同时读写不同的帧地址输出的图像是完美的。。。 这也叫做乒乓操作核心代码如下
HDMI输出
HDMI输出包括VGA时序和HDMI编码模块VGA时序在紫光PGL22G-6MBG324 FPGA上只能做到720P因为此FPGA可能太低端了无法输出742.5M的串行时钟当然你用HDMI编码芯片是可以实现1080P的所以这里只能做到720P的输出分辨率HDMI编码模块待用原语实现和Xilinx家的一样代码结构如下
3、PDS工程详解
开发板FPGA型号紫光同创–PGL22G-6MBG324 开发环境Pango Design Suite 2021.4 输入OV7725摄像头或动态彩条分辨率640x480 输出HDMI分辨率1280x720 工程作用紫光同创FPGA图像视频采集系统 工程代码架构如下 工程的资源消耗和功耗如下
4、上板调试验证并演示
准备工作
你需要有以下装备才能移植并测试该工程代码 1FPGA开发板 2OV7725摄像头如果没有也可以就选择动态彩条 3HDMI传输线 4HDMI显示要求分辨率支持1280x720
静态演示
OV7725输入640x480分辨率HDMI输出静态演示如下 动态彩条输入640x480分辨率HDMI输出静态演示如下
动态演示
动态视频演示如下 紫光同创FPGA-OV7725 5、福利工程源码获取
福利工程代码的获取 代码太大无法邮箱发送以某度网盘链接方式发送 资料获取方式私或者文章末尾的V名片。