引言
随着计算机技术、多媒体和数据 通讯技术 的迅速开展,数字 视频 的运行越来越广,如视频监控、视频会议和移动电视等。数字视频数据量渺小,不利于传输和存储,使其运行遭到很大限度。为处置视频数据的存储和传输疑问,惟一的路径就是对视频数据启动紧缩。经常出现的视频紧缩方法有MPEG系列和H.26x系列。思考到紧缩技术的成熟度、老本和重要用途,驳回MPEG-1作为紧缩规范,设计出基于 处置器 的 嵌入式 数字视频记载系统。该系统实用于视频监控、视频会议等多种运行场所,同时还可装置在航行器上,用于实时记载航行器的航行及训练环节中的各种 信息 。
目前,市场上有少量的基于PCI总线的MPEG-1视频紧缩卡和PC机构架的 网络 视频主机。与之相比,咱们设计的视频记载系统具有老本低、体积小和功耗高等长处。
1、系统 上班原理
视频紧缩记载系统的设计着眼于 控制器 的嵌入化和全体的便携性。本系统重要由3局部组成,即紧缩局部、控制局部和存储局部。视频记载系统的结构组成如图1所示。其中紧缩局部由MPEG1音视频紧缩电路组成,重要性能是成功对输入的音视频 信号 解码、数字化和紧缩编码,发生MPEG1程序流和传输流;控制局部由ARM最小系统组成,用于成功对整个系统的控制、数据流治理和IDE 接口 控制;存储局部由大容量硬盘或CF存储卡组成,成功对紧缩数据的实时长期间记载。
系统启动时,ARM处置器对整个紧缩系统启动初始化,首先经过HOST接口对SZ1510外部寄存器启动性能,并经常使用SZ1510的串行接口模拟总线对视频解码器SAA7113H启动初始化。当设置好MPEG-1的紧缩格局及数据速率后,系统开局反常上班,音视频信号经AK4550 音频 处置 芯片 和SAA7113视频处置芯片启动A/D转换,输入8位的PCM格局数字音频信号和4∶2∶0的YCbCr数字视频信号,传入SZ1510音视频紧缩采集芯片启动处置,将数字音视频数据转化为合乎MPEG-1格局的混合影视文件,最后MPEG1数据流在ARM处置器的控制下经过IDE接口写入硬盘或CF卡。在上班时,ARM还将始终监督相关信号,并在图像中添加相应的标记,直到接纳到关机信号,系统智能完结紧缩上班。
2、 配件 电路设计
因为MPEG-1紧缩 算法 须要很大的运算量,用软件实时成功比拟艰巨,所以在本系统中重要依托公用芯片成功对视频信号的高效紧缩。目前,罕用的MPEG-1紧缩芯片有VW2010、W99200F、WIS 7007SB等。本设计驳回的是Zapex 公司 的SZ1510 MPEG-1 A/V编码芯片,自身成功音视频的同步编码,16位HOST接口易于与多种 微处置器 衔接。另外,该芯片还可以间接控制视频解码芯片SAA7113H、音频解码芯片AK4550VT和(KM416S1020CT-G10)。驳回Philips公司的ARM7TDMIS内核 微控制器 2214,经过其I/O 端口 控制IDE接口硬盘或CF卡的数据读取和存储。
图1 数字视频记载系统结构框图
2.1 MPEG-1紧缩电路设计
SZ1510是一个 MPEG-1和静止JPEG图像 编码器 。其内置的视频紧缩核经过提升,适宜高效、实时的MPEG1数字图像紧缩,具有性能多、功耗低、温度范畴宽等特点;同时整合了公司的TMS320C54X高性能内核,可依据MPEG-1规范对音视频同步编码。
(1) 时钟 同步电路设置
SZ1510是一个复杂的视频紧增加系统,要成功音视频的同步,MPEG-1视频的紧缩以及系统外部数据流的复合、调度;时钟相关较为复杂,是系统设计的一个难点。时钟性能可分为主时钟、音视频时钟、视频紧缩核时钟、DSP核时钟以及裁减的I2S接口时钟几局部。其性能和相关为:
◆ 主时钟。SZ1510的主时钟为稳固的27 MHz(CLK)。该时钟在芯片外部被PLL1倍频为81 MHz,驱动SZ1510的视频紧缩核及SDRAM。PLL2连到DSP内核,经过软件性能使其上班在94.5 MHz,用于音频紧缩和系统数据流复合。
◆ 音视频时钟。视频时钟来自视频解码器,典型值为27 MHz。音频时钟由视频时钟分频发生。
◆ I2S接口时钟。本系统中在音视频同步设计中经常使用I2S接口的从形式,由SZ1510发生串行时钟和帧同步信号。
(2)主机(HOST)端口设置
SZ1510作为从设施,受主机控制,其HOST接口是SZ1510的控制和数据替换接口。SZ1510可以选用复用或不复用的和Motorola总线类型;不复用总线,又可以分为8位和16位。详细的主机端口由HCONFIG[1∶0]引脚和SysConfig[3] 寄存器 性能。在本系统设计中,经过跳线把HCONFIG0拉低,HCONFIG1拉高,使其上班在Intel 8051类型的非复用的16位数据总线形式下。
2.2 LPC2214微处置器电路设计
LPC2214是一款基于32位ARM7TDMI-S,允许实时 仿真 和跟踪的CPU;带有16 KB片内SRAM、256 KB嵌入的高速Flash存储器、128位宽度的存储器接口和共同的减速结构,使32位代码能够在最大时钟速率60 MHz下运转。芯片外部集成了多种串行接口。LPC2214与SZ1510的接口和控制相关如图2所示。在设计中,须要留意的是坚持SZ1510读写时序与外部时钟的同步。经过CS3选通SZ1510成功控制字和数据的替换。
图2 LPC2214与SZ1510的接口相关
2.3 IDE接口设计
因为LPC2214芯片不具有IDE接口,因此在本系统中经常使用通用I/O 口, 模拟 发生ATA 设施的读写时序,成功对IDE硬盘的牢靠读写操作。图3为LPC2214与IDE硬盘衔接图。其中,P2.16~P2.31作为数据线,P1.16~P1.20作为地址和选 通讯 号,P0.17和P0.20为设施的复位和形态恳求信号,用P0.21和P0.19成功读写控制。
图3 LPC2214与IDE硬盘衔接图
3、系统软件设计
系统软件由主程序和若干个子程序组成,上班流程如图4所示。重要的子模块有:SZ1510 的设置与控制、IDE接口驱动和文件系统的治理。
图4 系统上班流程
3.1 SZ1510的设置与控制
SZ1510共有128个寄存器,每个寄存器都有一个 索引 号。当SZ1510上班在非复用总线形式下时,外界对寄存器的访问都是经过IOAR和IODR来成功的。访问时首先将这个寄存器的索引号写入IOAR,而后将要写的数据写入IODR。
SZ1510设置与控制环节如下:
① 向终止使能寄存器写入0x40,以使能Rey终止;
② 期待SZ1510的Ready终止;
③ 等到Ready终止后,向SZ1510的0x1E寄存器写入0x0A,设置它外部的DSP时钟为94.5 MHz;
④ 向0x013寄存器写入0x55,对SZ1510启动软复位;
⑤ 向终止使能寄存器0x0C写入0x40,以使能Ready终止;
⑥ 等候RDY终止;
⑦ 待Ready终止后对SAA7113启动初始化;
⑧ 对SZ1510启动软复位,即向0x0B寄存器写入0x55,同时向0x0C寄存器写入0x40;
⑨ 期待Ready终止,等到后向SZ1510的外部DSP装载二进制代码;
⑩ 启动SZ1510外部视频紧缩核的二进制代码装载,详细装载步骤如下:
◆ 向0x08寄存器写0x04,发送开局命令;
◆ 期待Ready终止,肃清Ready终止;
◆ 向Data in寄存器0x01写256个字节;
◆ 期待End of>◆ 查程序空间的代码能否装载终了,如没有,则继续装载。
3.2 IDE接口驱动
本系统驳回LPC2214的通用可 编程 I/O口模拟ATA设施的读写时序,成功对硬盘的读写。这里给出模拟写ATA 设施寄存器的步骤(读ATA设施寄存器的步骤相似):
① 相关统终止,预防在写寄存器操作中发生终止;
② 设置GPIO 模拟ATA 接口数据的引脚为输入形态,预备输入数据到设施数据线;
③ 设置ATA 设施寄存器的相应地址;
④ 设置GPIO 模拟ATA 接口数据的引脚电平为要写到设施的值;
⑤ 使写ATA 设施寄存器信号为低电平;
⑥ 使写ATA 设施寄存器信号为高电平;
⑦ 敞开ATA 设施寄存器地址的选用;
⑧ 设置GPIO 模拟ATA 接口的数据总线引脚为输入形态,监禁总线;
⑨ 开系统终止。
3.3 文件系统治理
本设计中驳回的是面向 嵌入式系统 的小型文件系统ZLG/FS [1],重要用于将数据存储为规范的文件格局和对整个文件系统的治理。同时,为了便于音视频的检索和查问,以及防止合法断电形成少量未保留数据的失落,在系统中设置了每距离必定的期间(30 min)将紧缩数据存储在以系统期间命名的新文件里。
4、 论断
经测试,系统可实时长期间记载外部的音视频信号,记载的紧缩数据流合乎MPEG-1图像紧缩国内规范。在设计中,驳回的紧缩视频流速率为1.5 Mbps,1小时的视频数据量为(1.5 Mbps/8)×3 600=675 MB,关于一个40 GB的硬盘,系统延续记载期间凑近60小时。系统体积小、功耗低,便于移动环境下对音视频数据的实时长期间紧缩记载。