基于DM642的嵌入式DVR实现
在进行嵌入式DVR设计以前,我们首先需要对构成DVR所必需的硬件配置进行分析。
一体化模拟前端:DVR的模拟前端为来自摄像机和麦克风的模拟视频和模拟音频信号,为了降低整个系统的成本,一般会有多路视频和音频信号输入。而摄像机一般安装在云台上,为了取景、调焦,需要对其进行水平、俯仰转动,镜头变焦,光圈开合,摄像头防护罩控制(开/关、加热/风扇等)等,云台的这些控制命令一般通过异步串口RS232、RS422/RS485提供。另外,对于一个完整的视频监控系统来说,还需要对环境进行监控,如门禁控制、红外/烟雾/煤气感应、报警器、红外对射、停车管理等,这些功能一般用数字I/O实现。
由此可见,DVR的一体化模拟前端,除了需要提供多路的模拟视频/音频的输入端口外,还需要为云台控制提供标准的RS232/RS422/RS485异步串行接口,及环境监控的数字I/O。
数字化:为了用微处理器实时地对输入的视频/音频信号进行数字化的编/解码处理,必需将输入的模拟视频/音频信号进行数字化,这部分工作由视频解码器和音频解码器完成。每个模拟视频输入对应一路视频解码器,每个模拟音频输入同样对应一路音频解码器,而且配对的视频和音频信号数字化必须同步进行。
实时处理数字视频/音频数据:模拟视频/音频信号进行数字化后,将高速产生大量的数据,为了能对这些数据进行存储、传输、回溯、和分析等功能,首要的工作必须实时地完成大数据量、大计算量的数字视频/音频的压缩编码处理,数字视频压缩编码算法有:MPGE-2、MPEG-4、H.263、H.264等,数字音频压缩算法有:G.711、G.722、G.723、G.728、G.729等。
实时完成这样的算法需要高速的处理器来实现,高性能DSP的出现正好满足了这一需求。另外大量的高速产生的数字视频/音频数据,需要高速、大容量的存储器来缓存。DSP与高速、大容量存储器构成数字视频监控系统的核心。本文将采用TI公司的TMS320DM642及高速、大容量SDRAM存储器来构成DVR的核心。
数据的存储和传输:对于DVR来说,不仅需要对压缩后的数据进行长时间存储,以便回溯。而且还需要能通过网络对其进行监视和控制,即需要将压缩后的数据和相关的控制信息通过网络进行传输。由此可见,对于DVR来说,硬件上除了能提供大容量本地存储、本地传输外,还需要远程传输等接口。
其他:在DVR对视频/音频信息进行实时监视、记录、回溯处理的同时,还需要记录相关的时间信息,所以需要提供硬件实时时钟。另外,为了保护DVR软/硬件开发者,尤其是软件开发者的知识产权,还必须提供安全、可靠的硬件加密措施。
上述这些是一个通用的嵌入式DVR所必需提供的硬件配置。
基于DM642的嵌入式DVR的具体实现
TMS320DM642是TI公司2003年推出的、专门为视频应用开发的、业界最高性能的、主频高达720MHz的、32-位定点DSP。TMS320DM642具有下列特点:1)采用TI第2代超长指令集结构(VelociTI.2)的TMS320C64x DSP内核,主频高达720MHz,峰值处理能力可达5760MIPS,可实时完成4路CIF或2路D1的H.264压缩算法;2)64位、133MHz外部存储器总线,可直接接口大容量、低成本的SDRAM;3)3个双通道数字视频口,可同时接口多达6路的BT.656数字视频口;4)多通道音频串口,可同时接口多达4路立体声输入/输出;5)IIC总线可无缝接口视频解码器/编码器和音频Codec的控制口;6)10M/100M以太网MAC方便实现局域网接口;7)32位/66MHz PCI总线方便与PC机接口,及实现多板并行工作;8)32位HPI接口方便与主处理器接口,并实现多板并行工作。
基本的处理器系统用来存储程序代码和缓存大量的数字视频/音频数据,本系统中通过TMS320DM642的64位、133MHz外部存储器总线来扩展大容量、低成本的闪存和SDRAM。另外,为了对压缩后的视频/音频数据进行海量本地存储,还通过外部存储器总线扩展标准的ATA硬盘接口。
视频接口用于实现标准模拟视频输入/输出、模拟视频信号数字化(解码器)、数字视频信号转换为模拟视频信号(编码器)、以及视频编码器/解码器接口TMS320DM642视频口。TMS320DM642视频口与视频编、解码器的接口如图2所示:
音频接口:音频接口用于实现标准模拟音频输入/输出、模拟音频信号数字化(解码器)、数字音频信号转换为模拟视频信号(编码器)、音频编解码器一般做在同一器件上,称为音频Codec器件,以及音频Codec接口TMS320DM642的多通道音频串口。TMS320DM642的多通道音频串口McASP与音频Codec的接口如图3所示:
传输接口:TMS320DM642提供3种外部传输接口,但它们复用引脚,每次只能配置为其中的一种外部接口。DM642通过复位时某些特殊引脚电平的配置,可分别提供下列3种接口:1)32位PCI接口;2)32位HPI接口;3)HPI16+ 以太网接口。
对于嵌入式DVR来说,外部传输接口一般选用HPI16+ 以太网接口这种类型。
嵌入式DVR的软件平台
基于DM642的嵌入式DVR采用DSP/BIOS实时多任务操作系统,其具有下列特点:1)基于优先级的、抢先型实时调度程序;2)支持多线程管理与调度;3)支持4种线程类型:HWI、SWI、TSK、IDL;4)支持3种作业间的通信方式:Mailboxes、Semaphores、Queues;5)支持周期函数,方便实现固定时间间隔的数据采集,简化多速率系统的设计;6)提供存储器管理,实现动态存储器分配。
DSP/BIOS只是一个实时多任务操作系统的内核,不具备文件输入/输出系统和网络协议的支持,这些软件模块需要在DSP/BIOS基础上添加。
设备驱动程序:DSP/BIOS的设备驱动程序模型类似于Windows操作系统的设备驱动程序模型,将设备驱动程序分成二层,上层为与硬件设备无关的层,与应用程序接口;下层为与硬件设备相关的层,直接来操作具体的硬件设备。这样可以使应用程序与具体的设备硬件实现细节隔离,提高应用程序的通用性和重复使用性,使应用程序具有更好的可维护性和可移植性。
基于上述DM642的嵌入式DVR包含下列设备驱动程序:1)音视频输入/输出设备驱动程序;2)异步串口设备驱动程序;3)以太网设备驱动程序;4)ATA硬盘设备驱动程序。
视频压缩算法的选择主要取决于主处理器的性能,基于DM642的嵌入式DVR,采用TI专为视频处理而开发的、业界最高性能的、主频高达720MHz的、32-位定点DSP TMS320DM642,其峰值处理能力可达5760MIPS,可实时完成4路CIF或2路D1的H.264压缩算法。采用H.264视频压缩算法虽然对处理器性能的要求提高了,但其在保证图像质量的前提下所到达的高压缩比,无论对海量本地存储,还是网络传输带宽的要求,都具有积极的意义。
文件输入/输出系统:DVR的基本要求能对压缩后的视频数据进行长时间的保存,事后还要求可对保存的视频图像进行检索和回放,所以必须能进行海量本地存储。基于DM642的DVR采用DSP/BIOS实时多任务操作系统,其并不包含文件输入/输出系统,必须在DSP/BIOS的基础上自行扩展文件管理系统。FAT32文件系统在Windows中被证明是行之有效的文件输入/输出系统,在此我们采用FAT32文件系统作为基于DM642的DVR的文件管理系统,不仅可以实现海量的本地存储,而且还可与Windows文件系统兼容。
网络协议:网络传输也是DVR的基本的功能要求,基于DM642的DVR硬件上配置有10/100M以太网接口,同样,在DSP/BIOS基础上扩展TCP/IP协议,可以支持HTTP、FTP、PPPoE等多种网络协议,使其成为真正意义上的网络服务器。
其它:作为家庭应用的DVR,还会有一些附加的功能要求,比如,家庭安全防盗、老幼监护等,这些功能可利用DSP所具有的可编程能力,增加图像移动侦测、特征提取等辅助软件功能来实现。
嵌入式DVR的发展趋势
由基于DM642的DVR可知,主处理器DM642除了要进行视频/音频编解码等真正意义上的DSP处理外,还需要进行文件系统管理,和网络协议实现等操作系统所承担的工作,这不仅加重了DSP处理器负担,而且将影响附加功能的实现。TI即将提出的DaVinci处理器,为一种DSP+ARM的双核处理器,其上的DSP为TI最新的C64x+ DSP内核,并进一步在内部集成视频加速器和相关的外设,使其真正成为视频应用的SoC解决方案,并使DaVinci处理器具有很高的性能/价格比,这无疑将对嵌入式DVR产业带来巨大的冲击。
该文观点仅代表作者,本站仅提供信息存储空间服务,转载请注明出处。若需了解详细的安防行业方案,或有其它建议反馈,欢迎联系我们。