找回密码
 注册
搜索
查看: 809|回复: 0

[讨论] 视频图像画面分割器的设计

[复制链接]
发表于 2009-3-30 19:45:55 | 显示全部楼层 |阅读模式
视频图像画面分割器的设计  

早期的多画面分割器设计使用了很多的模拟器件,这时的电路开发周期长,产品的调试,修改升级比较困难。成本较高。

1 系统工作原理

系统主要包括视频信号输入模块,视频信号处理模块和视频信号输出模块等3个部分组成。各个模块主要功能为:视频输入模块将采集的多路视频信号转换成数字信号送到FPGA;视频处理模块主要有FPGA完成,根据需要对输入的数字视频信号进行处理;视频输出模块将FPGA处理后的信号转换成模拟信号输出到显示器。 2硬件电路设计

本设计是将多路视频信号最终实现在一个显示器显示的装置。硬件部分主要分为3个部分进行设计,第一部分是视频数据的采集,并转换成数字信号;第二部分是FPGA接收的多路视频信号,根据需要进行信号抽取和合成。还要通过模拟I2C接口对视频编解码芯片进行配置。第三部分是将合成的信号D/A转换后送显示器输出。其中视频采集部分主要由摄像头和视频解码芯片GM7113组成。视频输出部分由视频编码芯片GM7221组成。

2.1视频解码模块GM7113

该部分电路的主要功能是将输入的模拟视频信号转换成数字视频信号供FPGA器件处理,本设计选用的芯片是2片GM7113芯片,可实现4画面分割。GM7113是一种高集成度视频解码芯片,他支持隔行扫描和PAL BGHI,PALN,PALM,NTSCM,NTSC N,NTSC4.43NTSC-Japan和SECAM多种数据输入格式,可通过其I2C接口对芯片内部电路进行控制该芯片具有如下特点:

支持4路模拟输入,内置信号源选择器;有2个模拟预处理通道;内置2个模拟抗混叠滤波器;2个片内9位视频A/D转换器;行/场同步信号自动检测;多种数据输出格式。

经过芯片处理过的模拟信号以CCIR656标准[1]YUV4∶2∶2格式的形式输出送往FPGA处理。视频解码电路图[2]如图2所示。

2.2 FPGA器件及PROM

FPGA[3]芯片作为系统的核心处理芯片。经过GM7113模数转换后的信号输入到FPAG在数字领域对信号进行处理。根据画面分割器的要求,FPGA对多路视频信号进行抽取,然后将抽取的信号存储到存储器SRAM中,然后把提取的各路视频数据合成一帧数据。并模拟I2C接口对视频编解码芯片进行初始化配置。本设计采用Spartan3系列中的XC3S400PQ208型号。这款芯片采用90 nm工艺,系统门数(System Gates)40万门,等效逻辑单元(Equivalent Logic Cells)8064,分布式RAM容量(Distributed RAM Bits)56 kb,块RAM容量(Block RAMBits)288 kb,专用乘法器(Dedicated Multipliers)5个,数字时钟管理单元(DCM)4个,最大的用户I/O数(MaximumUser I/Os)141个。工作频率高达200 MHz,足以完成设计需要。

PROM主要负责向FPGA加载程序,因为FPGA内部的SRAM掉电时不能保存自身配置。本设计选用Xilinx公司用于Spartan3系列的专用PROM芯片XCF02S。FPGA的编程数据存储在PROM中。


2.3 SRAM

SRAM主要用于输出的暂存图像数据,由于视频数据量比较大,虽然FPGA为高速器件但是由于视频数据量比较大,视频数据的处理会造成视频延迟。造成显示器的视频画面的不连贯。本设计采用ISSI公司的IS61LV25616的SRAM。


2.4视频编码模块GM7221

GM7221是视频编码芯片,主要功能是把标准YCbCr(CCIR 656)或者MPEG格式数据编码成复合视频输入信号(CVBS)或分离视频信号S-VIDEO。GM7221支持NTSC-M,PALB/G和子标准,并具有Y,C和CVBS三个信号的数模转换器。基本编码函数由副载波生成、彩色调制和同步信号内插组成。GM7221提供有I2C总线接口,可按主动方式或从动方式工作。视频编码电路如图3所示。





3 软件设计

对于不同路数的画面分割要求,软件编程复杂程度是不同的,但是编程的思想都是相同的。都是将需要实现的视频信号提取出来,然后再按照视频显示格式的要求重新合成新的一帧数据送视频编码模块,最终使得多路视频图像在一个显示器上显示出来。 下面以最简单的一种情况为例来说明视频合成的原理。输入视频信号为1路视频信号,要提取的也就是l帧数据的有效部分。而其他的数据部分,帧合成的时候插入。需要插入的数据包括:定时基准信号和消隐信号。程序流程图如图4所示。

3.1 有效视频信号提取模块

在有效视频选择模块,对经过GM7113芯片A/D转换成8位数据送FPGA,对其中的有效数据检测,通过检测每行的SAV信号,来判断那些是有效行数据,然后将有效行SAV后的1440个字节数据的行有效视频数据提取出来。





3.2帧合成模块

帧合成也就是根据画面分割要求按照帧格式重新组合成一帧数据。对于每一行数据,先判断是否有效行。对场消隐行,整行数据都再生插入;有效视频行,插入SAV,EAV和行消隐数据。再生的数据和存储器中的有效数据分时的输出到GM7221视频编码芯片,然后输出到显示器。

3.3仿真结果

如图5所示为实现一帧视频数据抽取和合成Model-sim仿真[4]图,其中clock为系统时钟,reset为系统复位信号,ad_clock,ad_data,是经过GM7113输出的8位数据。addr_r,sram_addr,wrt_sram_addr,分别是读写存储器地址,和经过分时选择后的存储器操作地址。sram_data是存储器数据,da_clock和da_data分别是送GM7221的时钟和数据。从仿真波形可以看出对存储器读写时序是正确的。  

4 结 语

多路画面分割器的原理都是一样的,只是要增加视频信号的路数,硬件上要多加A/D转换器和摄像头。软件方面,就要根据画面分割要求,要对多路视频信号进行抽取,然后合成一帧数据,再经过D/A转换器输出。视频路数越多则软件就更复杂一些。

【文件名】:09330@52RD_GM7113FVI2C_C.rar
【格 式】:rar
【大 小】:347K
【简 介】:视频解码模块
本文来自:我爱研发网(52RD.com) 详细出处:http://www.52rd.com/bbs/post.asp?action=new&boardid=86
【目 录】:
[em02]
高级模式
B Color Image Link Quote Code Smilies

本版积分规则

Archiver|手机版|小黑屋|52RD我爱研发网 ( 沪ICP备2022007804号-2 )

GMT+8, 2024-6-25 13:54 , Processed in 0.047999 second(s), 18 queries , Gzip On.

Powered by Discuz! X3.5

© 2001-2023 Discuz! Team.

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