设为首页
收藏本免费论文网
老版首页
老版首页2
经济学论文 财政税收论文 证券金融论文 管理学论文 会计审计论文 工商管理论文 财务管理论文 公共管理论文 法学论文
理学论文 医药学论文 政治论文 社会学论文 教育类论文 工学论文 计算机论文 艺术类论文 哲学论文
文化论文 英语论文 应用文论文 论文指导论文 文学论文 老版免费论文 老版2免费论文 本站导航
本站已收录十余万免费论文,并不断增加中,想要什么论文资料,轻松一搜便得! 关键词:
免费理学论文免费论文网首页 --> 理学论文 --> 微电子学论文 -->基于vw2010芯片的嵌入式多媒体监控系统压缩/解压卡设计

基于vw2010芯片的嵌入式多媒体监控系统压缩/解压卡设计

 摘要:在简要分析了多媒体监控系统发展现状的基础上,提出了一种基于VW2010压缩/解压芯片的多媒体压缩/解压卡的设计方案,给出了基于VW2010的多媒体监控系统压缩和解压卡的硬件结构图以及在Linux系统下VW2010的驱动程序,同时给出了在Linux Redhat 7.3下编写的测试程序,并进行了全面的测试。 关键词:MPEG;监控系统;压缩/解压;设备驱动程序1 MPEG-4标准及其在多媒体监控系统中的应用多媒体监控系统是多媒体技术在安防领域的新应用。目前已广泛应用到金融、文博、酒店、交通、商业、医院、工厂、学校、住宅小区物业管理等各个领域。从目前趋势看,多媒体监控系统的应用领域还在不断扩展。

音视频压缩技术是多媒体监控系统中的关键技术。在数字多媒体压缩(特别是视频压缩)领域内有很多国际标准(如ISO/ITU-T技术委员会的JPEG标准、CCITT制定的H.263标准以及著名的MPEG标准等)。其中,MPEG-1标准适用于传输1.5Mbps的运动图形及其伴音编码,它具有较高的压缩比,其基本算法对于压缩水平方向为360个像素、垂直方向为288个像素,并以每秒24~30帧画面运动的图像有较好的效果。早期的监控系统很多都采用此标准(如著名的以色列芯片Z1510即采用MPEG-1标准);而MPEG-4标准的主要特点是可对图像中的内容进行编码,其核心是基于内容尺度可变性(Content-based scalability)。内容尺度可变性意味着可以给图像中的各个对象分配优先级。其中,比较重要的对象用较高的空间和(或)时间分辨力表示。对于比较低的比特率应用系统来说,尺度可变性是一个关键的因素,因为它提供了自适应可用资源的能力。例如,这个功能允许对具有较高优先级的对象用可接受的质量进行显示,第二优先级的对象则用较低的质量显示,而其余内容(对象)则不显示。对于监控系统来说,在绝大部分时间内,监视画面的背景都保持不变,因此,在要求的比特率比较低时,对于监视画面的背景部分可以以较低的质量显示,这样并不会影响整个画面的效果。本系统采用MPEG-4压缩标准,选择的实现方式是硬压缩和硬解压,所用的压缩解压芯片为VWEB公司的VW2010。


2 硬件设计原理2.1 VW2010的主要特点VW2010是VWEB公司开发的实时MPEG-4音视频压缩/解压芯片(CODEC)。该芯片具有以下主要特点:(1)片内集成有3个信号处理/控制单元,包括一个视频编码(压缩)器、一个视频解码(解压)器和一个片内CPU(内部扩展一个音频编码DSP、一个音频解码DSP、一个多路复合单元和一个多路解复合单元)。VW2010芯片的内部结构图如图1所示。(2)具有可编程、高性能和低功耗特点,因为每个信号处理/控制单元都由一个RISC处理器和专用的硬件加速器构成。此外,视频编、解码器内部还集成了一个专用的SDRAM。(3)在系统上电/复位时,视频编、解码器的固件程序可由外部主机(host)载入各自专用的SDRAM;而片内CPU的固件程序则可载入VW2010外挂的SDRAM。(4)芯片的主机接口采用标准PCI接口。符合PCI局部总线规范2.2。(5)为了使编、解码性能达到最佳,VW2010内部集成了一个双通道DMAC。系统host可直接通过主机接口对VW2010进行控制,MPEG数据流采用DMA方式传输。(6)提供有与PHILIPS公司兼容的I2C总线,可方便地对外围芯片进行控制。

2.2 基于VW2010的压缩/解压卡硬件设计图2所示是用VW2010设计的压缩卡的原理框图。图中,CVBS信号先经过视频接收电路进行前端处理(包括阻抗匹配、限幅和钳位),然后通过视频解码电路产生符合VW2010视频接口标准的ITU656信号。 视频解码电路的核心是一个视频解码芯片,该解码芯片用于对CVBS信号进行A/D转换和编码,以产生ITU656标准的并行数字电视信号。高档的视频解码器还支持图像尺寸缩放(scaling)和帧提取(decimating)功能,如PHILIPS公司的SAA7114、SAA7115以及Rockwell公司的BT829A等。由于VW2010的视频输入为ITU656/D1格式,所以只需要选择具有基本A/D转换和编码功能的视频解码芯片如SAA7113即可。在模拟音频信号经过模拟音频接收电路进行前端处理后,便可通过音频ADC电路产生符合VW2010音频接口标准的I2S信号。VW2010是压缩卡的核心处理芯片,该芯片除可完成音、视频信号的编码外,还可提供对解码器和ADC的控制(通过I2C总线),其编码产生的MPEG流可通过芯片内部集成的PCI接口输出。VW2010的解压操作是压缩操作的逆过程,基本原理类似,基于VW2010的解压卡原理框图如图3所示。

   
基于vw2010芯片的嵌入式多媒体监控系统压缩/解压卡设计 来自: 免费论文网www.paper800.com  
3 Linux下VW2010设备驱动程序设计3.1 分层软件体系结构按照操作系统的观点,系统软件体系结构应为表1所列的分层结构。驱动程序工作在核心态,并向下通过Chip API实现对VW2010芯片的直接控制,向上则为应用程序提供驱动程序接口(Driver API)。按照Rubini先生的观点,驱动程序提供的是机制,而不是策略。换句话说,驱动程序的主要任务是为应用提供全面、高效而可靠的服务,具体如何使用硬件则是应用需要解决的问题。
表1 分层软件体系结构示意图SoftwareModeApplicationUser modeDriver APIDriverKernel modeChip APIFirmwareHardWare layer考虑到Linux系统下的设备驱动程序开发技术已经相当成熟,笔者不打算详细介绍驱动程序的完整框架和各个模块,而是在分析VW2010芯片与host通信机制的基础上,着重讨论在驱动程序中如何实现对VW2010芯片的有效控制以及如何通过应用程序实现VW2010芯片间数据的有效传输。3.2 VW2010与host的通信机制VW2010提供了三种与host通信的机制:直接访问内部寄存器、共享存储区(shared memory)和DMA。VW2010允许host直接访问其内部寄存器和外部存储单元,寄存器方式主要用于调试目的和下载固件程序;DMA方式则负责VW2010芯片和应用缓冲区之间的数据传输(如MPEG数据流);共享存储区机制是设备驱动程序和VW2010间的主要通信方式。(1) 共享存储区(shared memory)VW2010采用共享存储区机制接收host的命令并返回命令执行结果。host与VW2010进行通信的共享存储区(以下简称SM_PC2VW)位于encoder SDRAM中地址3F1800处,共128字节;而VW2010与host进行通信的共享存储区(以下简称SM_ VW2PC)则位于encoder SDRAM中的地址3F1880处,也是128字节。SM_PC2VW的格式如表2所列。表中,CMD为命令码,分别为:读数据(CMD=1)、发IOCTL码(CMD=2)、写数据(CMD=3)、打开命令(CMD=4)和关闭命令(CMD=5);IntFlag为中断标识,IntFlag为1时,VW2010执行完CMD定义的任务后将产生一个中断,为0则不产生中断;Device Handle由打开命令从firmware中获得,当CMD不同时,Parameters有不同的含义。
论文基于VW2010芯片的嵌入式多媒体监控系统压缩/解压卡设计来自

表2 host到VW2010的共享内存区格式Address31:1615:87:03F1800ReservedIntFlagCMD3F1804ReservedReservedReserved3F1808Reserved3F180CDevice Handle3F1810Parameters3F1814……表3 VW2010到host的共享内存区格式Address31:1615:87:03F1880ReservedReservedReserved3F1884ReservedACK/NACKCMD3F1888Return Code3F188CDevice Handle3F1890Parameters3F1894……SM_VW2PC的格式如表3所列。ACK/NACK的含义是:如果SM_PC2VW中的IntFlag为1,且命令CMD成功执行,则为ACK;如果SM_PC2VW中IntFlag为1,而执行命令CMD失败,则为NACK,并将错误码保存在Return Code字段。一般在发送其它命令之前,必须先发送打开命令,此时,Device Handle字段应为0,Parameters字段为打开类型(TSMUX,PSMUX,TSDEMUX或PSDE-MUX)。如果该命令成功执行,则会在SM_VW2PC的Device Handle字段返回所分配的Device Handle,并在SM_VW2PC的Parameters字段返回辅助参数区的首地址(下面简称为X)。辅助参数区由firmware在encoder SDRAM中动态分配,主要用于传递与命令有关的参数。在结束使用共享内存区后,必须发送关闭命令以释放辅助参数区。(2)信号灯由于共享存储区是临界资源,所以必须提供一种机制,以保证VW2010和host使用时不发生冲突。为此,VW2010分别给SM_PC2VW和SM_ VW 2PC提供了两个硬件信号灯,它们由寄存器REG_INT1和REG_INT2的最低位控制。此外,VW2010还为信号灯定义了以下两种操作。写操作:向REG_INT1或REG_INT2最低位写入1,然后释放共享存储区。读操作:返回REG_INT1或REG_INT2最低位的值,同时清该位为0。

   
基于vw2010芯片的嵌入式多媒体监控系统压缩/解压卡设计 来自: 免费论文网www.paper800.com  

(3) host到VW2010的中断host通常通过向VW2010发中断的方式通知VW2010从共享存储区读取主机命令。VW2010用寄存器REG_DHIU5实现host到VW2010的中断。REG_DHIU5的最低四位用于保存中断计数,第五位为中断屏蔽位。host向REG_DHIU5每写一次,中断计数加1;VW2010每读REG_DHIU5一次,中断计数减1。只要中断计数不为0,VW2010内部的中断请求信号将一直保持有效。3.3 VW2010的数据读写和IOCTL方法的实现VW2010的数据读写和IOCTL的实现依赖于上述的共享存储区机制,下面通过假设已经用打开命令(CMD=4)从firmware获取了Device Handle和辅助参数区(首地址为X)来进行讨论。(1) 数据读写的实现图4和图5分别给出了VW2010在系统调用部分和中断服务部分的读数据流程图。VW2010采用DMA方式实现与应用空间的数据交换。读/写命令用于建立从VW2010到host的DMA通道并启动数据传输,它并不等待数据传输完成,而是让DMA传输在后台运行,当DMA传输结束后,VW2010将中断主机。当应用程序要读写数据时,它首先会分配一些缓冲区用于保存读写数据。这些缓冲区可以用首地址和长度标识,如可以使用(Address,Len)代表首地址为Address、长度为Len的缓冲区。在发送读/写数据命令时,SM_PC2VW的Parameters字段为X,辅助参数区的内容为应用空间数据缓冲区的信息,其格式即为上述的首地址和缓冲长度标识对(Address,Len)。VW2010根据这些缓冲区信息来建立应用空间的DMA通道。(2)IOCTL的实现使用时,可定义多种IOCTL码以用于控制VW2010芯片,各IOCTL码的参数各不相同。需要注意的是,此处的IOCTL码不同于Driver API中的IOCTL码。该命令与读写数据命令的主要区别在于其命令辅助参数存储区的格式不同,而控制流程类似,限于篇幅,这里不再赘述。
4 结论为了测试压缩/解压卡和设备驱动程序的性能,作者在Linux Redhat 7.3下编写了测试程序。在测试中,分别让VW2010芯片工作在手动录像模式、定时录像模式和动态侦测录像模式。结果表明:该系统卡在各种模式下都能稳定工作。

   
基于vw2010芯片的嵌入式多媒体监控系统压缩/解压卡设计 来自: 免费论文网www.paper800.com

 如果觉得本篇论文可以,添加到收藏夹! [返回顶部↑
搜 索 其 它
相 关 论 文
基于短路功率方向和通信方法的自适应电流速断保护
基于单片机的语音数字联网火灾报警器设计
tms320c54x和adsp218x性能比较
企业坏帐损失核算问题分析
对城镇规划建设的思考
uc/os-ii实时操作系统在嵌入式平台上进行移植的一般方法和技巧
学习型组织建设中存在的误区及其深化建设的思路
人工煤气转换为液化气混空气时管网的改造
相 关 类 别
物理学论文
统计学论文
数学论文
农林学类论文
地理地质论文
理学其它论文
微电子学论文
生物技术论文
应用化学论文
电子信息科学与技术论文
环境科学论文
生态学论文
材料物理论文
材料化学论文
心理学论文
生物科学论文
资源环境与城市规划管理论文
地理科学论文
应用心理学论文
海洋科学论文

免费论文网包含:各类免费毕业论文下载、免费法律论文、免费计算机论文、免费会计论文、免费英语论文、免费经济论文、免费管理论文、免费金融论文、大学生社会实践论文、三个代表论文、三农问题论文等所有论文均来源于网上的共享资源以及一些期刊杂志,所有论文仅供网友间相互学习交流之用,请特别注意勿做其他非法用途!如果我们有侵犯你的版权或其他有损您利益的行为,请联系我们指出,我们会立即进行改正或删除有关内容!
广告服务 | 关于我们 | 加盟合作 | 免责条款 | 人才招聘 | 联系我们