基于B/S网络结构的嵌入式视频监控系统

2011-05-21 00:42贾晓庆
电子设计工程 2011年13期
关键词:框图存储器服务器

贾晓庆

(河北省肃宁县电力局 河北 肃宁 062350)

传统的视频监控主要应用于小区、厂房、校园等小型区域,受到视频传输距离的限制。而且基于PC机的视频图像采集系统传统和基于数字硬盘录像机(DVR)的视频监控系统设备笨重,需要专门布线,布线复杂,在特殊场合下不能使用。针对目前视频监控系统的这些缺点,本文采用DSP芯片TMS320DM642作为系统核心处理器[1],利用现有网络,设计了一套嵌入式网络视频监控系统。系统利用的网络结构是浏览器/服务器(B/S)网络结构,较之客户机/服务器(C/S)网络结构是一次升级,客户端不需要编写复杂的应用程序,只需一个WEB浏览器既可监控系统所采集到的视频图像。

1 系统总体构成设计

系统的总体构架框图如图1所示。本系统主要包括CCD视频图像采集部分、SAA7113H视频解码模块、SAA7121视频编码模块、视频本地显示部分、DSP(DM642)核心处理模块、外部存储器模块、网络接口模块、和以太网视频传输部分。

四路CCD摄像头拍摄到的模拟全电视视频信号(CVBS)后,经过视频解码芯片SAA7113H A/D转化为BT.656标准数字视频信号,进入DM642的片上视频口VPO中的FIFO缓冲区。利用DM642内部直接存储器访问控制器EDMA将FIFO缓冲区的视频数据搬运到内存进行处理压缩。系统最终把压缩后的数据通过网络接口部分发送到具有B/S网络结构的网络上,客户机群可以通过网络浏览器访问DM642视频服务器。本系统最终实现了嵌入式网络视频传输,而且本地也能够四路视频分屏显示。

图1 系统总体框图Fig.1 Block diagram ofsystem

2 系统模块设计

2.1 视频采集和显示模块

视频采集设备采用了Sony(索尼)的1/311彩色CCD摄像机,4路CCD摄像机同时开启视频采集任务,连续采集所要监控的视频图像。由CCD摄像机输出的是CVBS彩色全电视信号,其亮度信号和色度信号混合在一起,如果想要由DSP进行处理,必须先对CVBS视频信号数字化。本系统的的视频数字化设备也叫视频解码器,主要负责对由CCD摄像机输出的CVBS全电视信号进行数字化和亮度色度信号分离[2]。本系统不仅有远程网络视频播放的功能,而且也可以通过同轴电缆将系统的视频信号和电视墙相接,在本地进行分屏显示,所以本系统采用视频编码器重新把DSP中的数字视频数据编码成CVBS视频在TV中进行4路分屏显示。

系统主处理器DM642具有3个8位可配置的视频口VPO(VP0、VP1、VP2),每个视频口各含有两路 FIFO 数据缓冲区,可以同时接收两路视频数据。8位的可配置的视频口通过软件编程既可以配置成视频采集口,也可以配置成视频显示端口,可以轻松的和各种视频编解码芯片无缝连接。本系统采用视频口VP0和VP2作为视频采集口,每个视频口挂接两片SAA7113H视频解码芯片,由4片SAA7113H芯片来完成4路视频的解码。同时系统采用VP1口作为视频显示口,选用了Philips公司的视频编码芯片SAA7121来完成系统视频视频编码任务。图2是SAA7113H与DM642接口电路框图,图3是SAA7121视频编码芯片和DM642的接口电路框图。

图2 视频采集模块框图Fig.2 Video acquisition module diagram

图2是系统的视频采集模块,中CCD摄像头与视频解码芯片的模拟视频输入引脚直接相连。CCD输出的模拟复合视频信号经过SAA7113H的视频信号数字化,最终由SAA7113H的视频输出口VPO[0-7]输出采样格式为YUV 4:2:2的8位数字视频流。在像素时钟LLC 27 MHz的作用下,YUV 4:2:2的8位数字视频流进入DM642的视频口FIFO缓冲区。对SAA7113H的内部的56个寄存器的参数进行控制,需要通过I2C总线接口来设置这些寄存器数值,而DM642上面只有一个I2C总线接口,所以系统采用了I2C多路复用器PCA9544A对I2C总线进行扩展用来控制4个带有I2C接口的视频解码芯片SAA7113H。

图3 视频显示接口框图Fig.3 Video display module diagram

图3是系统的视频显示模块,视频口VP1[2-9]的8位数字视频流在像素时钟27 MHz的作用下连续的流入SAA7121芯片,然后SAA7121芯片对其重新进行编码成复合视频电视信号。其中RCV1和RCV2是输出视频的行同步和帧同步信号。DM642通过I2C多路复用器对SAA7121进行正确配置。在SAA7121芯片输出端,系统引出了复合视频端口(CVBS)和亮度色度分离的S端子接口,以适应不同接口的显示设备。

2.2 存储器扩展模块

DM642内部有16 kB的一级程序缓存,一级数据缓存和256 KB的程序数据共享二级缓存[3]。但对于实时视频采集处理系统是远远不够的,因此需要对存储器进行外部扩展。本系统扩展了两片同步动态数据存储器(SDRAM),数据总线32位,共32 MB。同时系统还加了4 M×8位,的FLASH作为本系统的外部程序存储器。二者分别映射到DM642的CE0和CE1外部地址空间。存储器扩展电路框图如图4所示。

图4 存储器扩展电路框图Fig.4 Memory expansion circuit diagram

TMS320DM642含有数据总线为64位,地址总线20位的外部存储器接口(EMIFA),可以同时接SDRAM和FLASH。因为选用的SDRAM的数据线为32位,所以扩展了两块SDRAM以适应DM642的64位总线宽度,地址总线EA[3-16]可以同时选址两快SDRAM。本系统SDRAM的地址全部分布在DM642的CE0地址空间,记0x8000 0000-0x81FF FFFF。本系统选用的FLASH数据线为8位,地址线为22根,所以DM642需要扩展两根最高位地址线来寻址FLASH的4M地址空间。为了电路设计的方便,我我们选用了DM642的通用出入输入口(GPIO)gpio0和gpio1作为其最高两位地址线,对FALSH内部地址进行分页。FLASH在本系统的的地址分布如表1所示。

表1 FLASH的地址分布Tab.1 FLASH address distribution

2.3 网络接口部分

图5 网络接口框图Fig.5 Network interface diagram

TMS320DM642内部集成了以太网媒体存取控制器(EMAC)和物理层器件(PHY)输入输出管理模块(MDIO),所以需要一个物理层收发器PHY与之连接,这样才能实现和外界网络进行网络通信[4]。本系统选用了REALTEK半导体公司的RTL8305SB芯片作为本系统的网络物理层收发器,它提供了 MII(Media Independent Interface)接口,可以和 DM642 的EMAC无缝连接。网络接口框图如图5所示。

其中MTXD[3-0]是由视频服务器的EMAC发送到以太网收发器(PHY)的数据,在读时钟信号MTCLK和读使能信号MTXEN作用下完成。DM642读取数据需要通过MRXD引脚,在读取时钟MRCLK和读取使能MRXER情况下实现。MDIO对PHY的状态进行监视。网络收发器PHY要和外部网络连接时,中间必须加一个网络变压器,这样可以增强信号,使其传输距离更远,而且能够使芯片端与外部隔离,抗干扰能力大大增强。

3 系统软件框架

为了适应视频的实时性和数据量大等特点,采用了TI公司提供的嵌入式实时操作系统DSP/BIOS来对系统的各个线程进行调度[5]。系统包括5个线程。

1)视频采集任务 采集任务从输入设备驱动程序获得视频图象。它使用驱动程序提供的FVID_exchange调用从输入设备获得一帧最新视频图象。获得的图像是YUV 4:2:2格式的,它被重采样成YUV 4:2:0。输入任务接着发送 SCOM消息到处理任务,消息中包含图象数据指针。接着等待发送的消息返回以继续处理。

2)视频处理任务 主要是视频压缩算法接受 YUV 4:2:0格式的图象,产生JPEG图象。处理任务模块发送附带JPEG文件的SCOM消息给网络任务模块。

3)视频输出任务 显示任务 tskVideoOutput()得到搬运来的的视频图像,然后利用yuv420to422()函数将视频采用格式重新改变为 4:2:2的格式,最后调用显示驱动程序FVID_exchange()在显示器上显示。

4)网络处理任务 网络处理任务是动态创建的,主要是将JPEG图像数据加入基于RAM的EFS[42]文件系统中。网络任务首先利用SCOM_getMsg()从视频处理任务中得到JPEG图像数据的大小和在内存中存放的位置,随后利用SCOM_putMsg()向处理任务发送消息,告知图像数据已经得到,下一帧压缩可以进行。最后利用efs_createfilecb()函数把JPEG图像文件加入到EFS文件系统中。

5)网络主任务 主任务主要完成网络协议栈初始化、配置和基于EFS文件系统的网页加入。当网络任务启动后,客户端与WEB服务器建立连接,HTTP服务器将含有网页的视频图像数据不断的传送给客户端,直到连接中断为止。

4 系统测试

网络测试环境利用了现有的内网如图6所示。在测试视频网络传输之前,首先配置好视频服务器的IP地址、子网掩码、网关、和所采用网络的DNS。同时各个客户机也要配置好以上信息。然后运行下载程序运行。打开每个客户机上面的WEB浏览器,输入视频服务器的IP地址,即可看到系统所监控到的视频画面,同时本地显示器显示采集到的实时视频如图7所示。

图6 网络视频传输系统网络环境Fig.6 Network environment of the network video transmission system

图7 四路视频本地分屏显示和客户端视频显示对比图Fig.7 Four ways of video local split-screen display and client video display comparison

5 结束语

本文利用DSP技术设计了一套嵌入式多路视频监控系统,本系统可以通过网络上的客户机WEB浏览器就可以访问我们的视频服务器,浏览到采集的多路实时视频图像。较之客户/服务器网络(C/S)结构,客户端不再需要编写复杂的应用程序,客户端只需一个WEB浏览器。而且系统不需要额外布线,利用现有的网络即可完成视频传输,对于视频监控非常适合。

[1]Texas Instruments.TMS320DM642 technical overview[EB/OL].(2002)[2009-09-10].http://focus.ti.com.cn/lit/ug/spru615/spru615.pdf.

[2]彭启琮,管庆.DSP集成开发环境--CCS及DSP/BIOS的原理与应用[M].北京:电子工业出版社,2004.

[3]李方慧,王飞,何佩琨.TMS320C6000系列 DSPS原理与应用[M].2版北京:电子工业出版社,2002.

[4]汪安民,张松灿,常春藤.TMS320C6000 DSP实用技术与开发案例[M].北京:人民邮电出版社,2008.

[5]徐华中,胡佩雯.基于TMS320DM642的图像采集和处理系统的研究[J].计算机工程与科学,2007,29(11):20-21.XU Hua-zhong,HU Pei-wei.Image acquisition and processing system research based on TMS320DM642[J].Computer Engineering and Science,2007,29(11):20-21.

[6]周培斌,苗长云,武志刚.一种基于以太网的视频监控系统的设计[J].DSP开发与应用,2009,25(52):142-144.ZHOU Pei-bin,MIAO Chang-yun,WU Zhi-gang.A video monitor system design based on Ethernet [J].DSP Development and Application, 2009,25(52):142-144.

猜你喜欢
框图存储器服务器
静态随机存储器在轨自检算法
捷豹I-PACE纯电动汽车高压蓄电池充电系统(三)
通信控制服务器(CCS)维护终端的设计与实现
电路图2017年凯迪拉克XT5
算法框图的补全
中国服务器市场份额出炉
得形忘意的服务器标准
计算机网络安全服务器入侵与防御
基于图表法构建《万有引力定律与航天》知识网络
存储器——安格尔(墨西哥)▲