新闻中心

EEPW首页 > 嵌入式系统 > 设计应用 > 基于TMS320DM642的网络摄像机设计

基于TMS320DM642的网络摄像机设计

——
作者:合肥工业大学 计算机与信息学院 聂秋玉 蒋建国 齐美彬 时间:2007-01-26来源:《EDN电子设计技术》收藏

引言

本文引用地址:http://www.eepw.com.cn/article/20885.htm

网络摄像机的解决方案有多种选择,但是市场主流产品一般选择两种方案:(1)采用cpu+asic。(2)采用双cpu结构,即一个嵌入式cpu和一个专用信号处理芯片dsp。受专用dsp芯片处理能力的限制,现有的嵌入式网络摄像机中使用的视频处理算法基本是h.263以下的标准。

本文介绍一种基于tms320dm642 dsp的网络摄像机设计方案。其操作系统、通信协议、网络协议、音视频处理软件均在一颗tms320dm642上实现,降低了开发的难度。


tms320dm642芯片简介

ti公司的tms320dm642 (以下简称dm642)是一款专门面向多媒体应用的专用dsp。该dsp时钟高达600mhz,8个并行运算单元,处理能力达4800mips;采用二级缓存结构;具有64位外接存储器接口;兼容ieee-1149.1(jtag)边界扫描;为了面向多媒体应用,还集成了3个可配置的视频端口、面向音频应用的mcasp(multi channel audio serial port)、10/100mb/s的以太网mac等外设。鉴于dm642的上述优点,本网络摄像机系统就以dm642为核心,完成音视频信号的实时采集、压缩及传输功能。

硬件设计

系统电路组成如图1所示。从摄像机输入的视频信号和从麦克风输入的音频信号经采集、a/d转换为数字信号后送入dsp。dsp在信源处对音视频信号进行压缩编码和合流,然后通过局域网或因特网将数据

传输给视频监控中心。监控中心可同时监视多个现场,接收或发送报警信号,并根据需要通过异步串行总线rs-485实时控制云台,调整摄像头的方向和位置。

视频采集电路

本系统采用的视频解码芯片是philips 公司的saa7115。从模拟视频输入口输入的全电视信号在saa7115内部经过钳位、抗混叠滤波、a/d转换、yuv分离电路之后,在yuv到ycrcb的转换电路中转换成bt.656视频数据流,输入到压缩核心单元dm642中。dm642的3个视频口vp0、vp1、vp2与视频编解码芯片相接。

在本系统中,只有一路视频输入,故vp1、vp2端口未用,vp0通道配置为8位bt.656视频输入口。视频数据的行/场同步信号包含在bt.656数字视频数据流的eav(end of active video)和sav(start of active video)时基信号中,视频口只需视频采样时钟和采样使能信号即可。saa7115内部寄存器参数的配置和状态的读出通过i2c总线进行。视频接口的原理如图2所示。

音频输入/输出电路

本系统采用ti的高性能立体声编解码器tlv320aic23(以下简称aic23)实现音频信号的采集和播放。aic23与dm642 的i/o电压兼容,可以实现与dm642的mcasp接口无缝连接。

在本系统中,aic23工作于主模式,左右声道的采样字宽均为16bit。数据接口为dsp mode模式。通过i2c总线设置内部寄存器的工作参数和反馈状态信息。

因为网络传输的固有特点,音频数据和视频数据从网络摄像机端到达监控中心不可能是均匀的,如果网络摄像机端不做任何纠正处理,则很难保证音视频的同步输出。为了实现音频和视频的采样同步,本文利用锁相环pll1708,从saa7115的llc引脚输出27mhz时钟,经pll1708产生aic23的主时钟mclk。由于音视频采样信号采用同一个时钟源,就不会出现音视频不同步的问题。pll1708的scko3引脚输出默认时钟频率18.433mhz,作为aic23的输入主时钟mclk。aic23内部采用的时钟可通过设置寄存器由主时钟mclk分频得到。

以太网接口电路

本系统用lxt971作为快速以太网物理层自适应收发器。由于lxt971支持ieee 802.3标准,提供mii(media independent interface)接口,可以支持mac,而dm642内部正好集成有以太网媒体存取控制器,所以lxt971可以和dm642实现无缝连接。连接电路如图3所示,其中bh1102为1:1的隔离变压器。从dm642传输过来的数据通过lxt971转换为以太网物理层能接收的数据后,通过rj-45头传输到因特网。

存储器扩展电路

dm642内部有16kb的一级程序缓存,16kb的一级数据缓存和256kb的程序数据共享二级缓存。但这对于直接处理图像数据是不够的,因此扩展了两片32mb的sdram来存放原始图像数据,4 mb的flash来存放应用程序。二者都映射到dm642的外部数据空间。

cpld电路

本系统采用的cpld是xilinx公司的xc9572xl。该芯片具有72个宏单元,1600个逻辑门; 5ns pin-to-pin的逻辑延迟; 178mhz的系统频率。cpld的功能主要是:为flash 、uart和cpld 异步寄存器空间作地址解码;为flash产生3bit的页选信号;监控来自uart的电平中断信号,转换为边沿触发中断信号送给dsp。

rs-485接口电路

该接口连接到摄像机的云台,用来控制云台的转动,调整摄像头的方向和位置。rs-485总线抗干扰能力强,能实现多站点远距离通信。本压缩卡拟采用uart芯片sc16c550和maxim公司的max487e来实现rs-485信号的传输。sc16c550主要功能是把dsp传送过来的并行信号转换为串行信号。sc16c550内部的接收器和发送器各有16b的fifo,能处理的串行信号的速率高达3mbps。max487e是rs-485总线接口芯片,可以工作在全双工、半双工模式。传输速率可达2.5mbps。

电源电路

整个压缩卡用一个5v的直流变压器供电。由这个5v的电压器产生1.4v和3.3v电压分别给dsp内核和 i/o端口供电,产生另外一个3.3v给视频编解码及其他芯片供电。注意这两个3.3v电源要分开设计,以免电源噪声相互干扰。

由于dsp需要两种电压,所以要考虑供电系统的配合问题。加电过程中,应当保证内核电源先上电,最晚也应当与i/o电源一起加。关闭电源时,先关闭内核电源,再关闭i/o电源。讲究供电次序的原因在于:如果仅cpu内核获得供电,周边i/o没有供电,对芯片不会产生损害,只是没有输入/输出能力而已。如果反过来,周边i/o得到供电而cpu内核没有加电,那么芯片缓冲/驱动部分的晶体管将在一个未知状态下工作,这是非常危险的。

为了解决这个问题,本文采用了开关电源芯片tps54310pwp,把1.4v模块的电源输出有效引脚pg(power good)连接到3.3v模块的允许电压输入引脚en

。这样,只有当1.4v电压有效之后,3.3v电压才开始上电,这就保证了dm642的内核电压先于i/o电压上电。

软件设计

在本系统中,图像压缩采用h.264标准。h.264具有很高的编码效率,在相同的重建图像质量下,能够比h.263节约50%左右的码率。h.264的码流结构网络适应性强,增加了差错恢复能力,能够很好地适应ip和无线网络的应用。音频编解码采用g.729算法。网络传输采用rtp/rtcp协议以及组播方式,这样可以保证传送的质量。在操作系统方面,采用基于dsp/bios 的ti 参考架构5(rf5)。基于rf5操作系统的应用程序模块主要包括:音视频采集模块、压缩编码模块、uart控制模块和网络传输模块。  

结语

本方案能在一颗dm642芯片上实现网络摄像机的几乎全部功能,能对音视频进行实时的编解码和实时的网络传输。图像质量高、开发难度低、易于升级,是一种比较理想的网络摄像机解决方案,可广泛应用于视频监控系统中。




关键词:

评论


相关推荐

技术专区

关闭