随着科技的日新月异,视频监控市场也得到了飞速发展。视频监控以其直观、方便、信息内容丰富而广泛应用于许多场合。近年来,随着互联网的大范围普及,以及计算机、网络以及图象处理、传输技术的飞速发展,视频监控技术也有长足的发展。视频监控已经渗透到教育、政府、娱乐场所、医院、酒店、运动场馆、城市治安等多种领域,视频监控服务器被称为继手机以后另外一个极具市场开发前景的消费电子产品。
数字网络视频监控服务器主要完成从摄像头获取的模拟信号到数字化压缩后送到网络的功能,其原理框图如图1所示。
图1 数字网络视频监控服务器原理框图
由图1所示,监控器电路板主要由A/D芯片,FPGA多路转接芯片,压缩芯片,CPU等组成。其中本文要介绍的多路转接逻辑的FPGA实现位于A/D芯片和压缩芯片之间,由于FPGA内部含有PLL模块,所以跟FPGA连接的TW2804芯片的27MHz输入时钟可以由FPGA产生。
这里选用Altera
如图1所示,A/D芯片接受来自四个摄像头的四路模拟视频信号,这里采用Techwell公司的TW2804芯片,此芯片支持四路视频模拟信号的输入,输出是数字ITU-R BT.656格式的信号,时钟是27MHz。D1、D2、D3、D4信号的时序图如图2所示。
图2 ITU-R BT.656格式信号时序图
其中EAV和SAV分别为行尾和行头标志信号,他们中间是行与行之间的空白信号,SAV后面的VALID有效时的信号为1440bytes的d1格式的有效视频信号,总的这些信号加起来是视频信号的一行信号控制工程网版权所有,一帧视频信号包括576行这样的行信号,也就是有效的这种格式的一帧输出视频信号为1440*576bytes的信号,由于每一行信号中由两个bytes来表示一个像素,所以这种d1格式一帧的像素为720*576分辨率。
FPGA转接逻辑要实现的功能是要在显示终端上同时显示四路的视频信号。也就是要显示如图3所示的视频信号。
由于要在一个显示终端上同时显示四路信号,所以原来每一路信号的720*576分辨率要转换为原来1/4的分辨率,即cif的格式,cif格式是352*288的分辨率,这样四路cif格式的信号组合成如图3所示的一个帧输出到终端显示出来。
因为在终端显示上是要求四路视频信号同步输出的CONTROL ENGINEERING China版权所有,也就是不允许出现其中一路信号已经在显示器上显示出来了,但另外一路信号还没有显示出来,也就是出现画面上一部分是黑屏的情况,所以在这种情况下,需要把四路不同的视频信号先用FPGA在SDRAM中缓存起来,当每一路信号都在SDRAM中都至少存满一帧时就可以同步读出,并通过FPGA内部缓存组成如图3所示的帧格式,然后输出给压缩芯片压缩后由处理器控制输出至网络www.cechina.cn,这里的压缩芯片选的是VWEB公司的VW2010。
图3 显示终端视频信号格式
至此,FPGA要实现的功能已经非常清晰,首先把输入的四路d1格式的信号分别转换成四路cif格式的信号,然后把这四路信号分别缓存在SDRAM中,当SDRAM中每一路信号都至少存满一帧时www.cechina.cn,同步读出,读出SDRAM到FPGA中后,经过格式的重新组合,最后组成如图3所示的信号格式输出。其中数据在SDRAM中的缓存控制是最重要也是最复杂的环节。下面详细介绍此FPGA的逻辑设计与实现。
由上面的介绍可知,此FPGA主要有三方面的接口,与TW2804的输入接口,与SDRAM的缓存接口,与VW2010的输出接口。所以FPGA的内部逻辑大致可以设计为如图4所示。
图4 FPGA内部逻辑结构框图
输入格式转换模块主要是完成四路信号从d1到cif格式的转换,即从原来的720*576像