内容字号:默认大号超大号

段落设置:段首缩进取消段首缩进

字体设置:切换到微软雅黑切换到宋体






基于MPEG-4视频标准数字视频录像机的设计与实现

时间:2009-09-10 来源:消费电子设计 作者:小甜甜 点击:

1 数字视频录像机的硬件设计
    在基于S3C2410与AT2042的数字视频录像机的设计和实现中,其终端设备以Samsung公司的32位处理器S3C2410为主控处理器,利用Pentamicro公司的AT2042芯片完成双通道视频编码与解码,其视频录像功能具有高分辨率和高质量。本文将介绍此终端的系统整体设计,并详细分析系统软硬件设计,最后给出测试结果和结论。根据市场的需求,本系统预计实现下列几项指标:

  (1)实现对视频数据的MPEG-4标准的编解码;

  (2)编解码像素为720X576像素点,实现25 f/s;

  (3)实现JPEG编码和解码;

  (4)实现USB/SD卡储存。

1.1 基于S3C2410与AT2042的数字视频录像机整体设计
    该系统主要依靠AT2042的编解码功能,系统的硬件框图如图1所示,它主要由视频编码子系统、主控系统、数据处理子系统和视频解码子系统4大部分构成。

    韩国Pentamicro公司生产的AT2042芯片的功能模块如图2所示,AT2042是一个内置微控制器ARM946E的2通道音视频编解码 (A/VCODEC)芯片,主要完成对视频和语音数据的编码和解码,支持多种音视频编解码标准,可直接与IBM,Motorola,ARM,XscaIe 和Axis等多种CPU接口,无需其他附加电路。

1.2 视频编解码电路设计
    视频编解码电路主要包括视频编解码电路和视频压缩/解压芯片AT2042。其中,AT2042主要负责对数字视频数据进行硬件压缩和解压缩,而视频编解码电路则是基带模拟视频信号和AT2042之间的一个接口电路,它包括一个视频编码芯片和一个视频解码芯片,主要负责视频数据的模/数和数/模转换,以及数字视频信号格式的转换。在压缩编码过程中,输入的NTSC/PAL/SECAM视频信号先经过视频解码芯片进行前端处理,产生符合AT2042视频接口标准的8 b ITU-R BT.656数字视频信号。在外部主CPU的控制下,该数字视频数据由压缩/解压芯片AT2042进行硬件压缩编码,产生的编码数据流通过芯片内部集成的 Mux FIFO接口输出。网络视频服务器的解压缩编码是压缩编码的逆过程,需要解压的数据流通过AT2042内部集成的Demux FIFO接口输入。视频采集接口框图如图3所示:

    摄像头采集输出信号为NTSC,PAL或SECAM制式的电视信号,必须经过视频解码处理才能转化成适合AT2042进行编码的数字信号。 TVP5150是TI公司生产的一款电视信号解码专用芯片,它对输入的模拟信号进行A/D转化,通过设置相应的寄存器可以使输出信号满足RGB格式或 YUV422格式。由于在本系统中AT2042视频接口满足ITU.RBT656标准,故TVP5150输出配置为8位YUV422格式。

视频输出如图4所示。

    现在的数字电视视频接口还没有实现统一的工业标准,故在视频输出端设计时,仍使用现在比较流行的A/V接口或S-video接口。由于上述2种接口传输的为模拟电视信号,故在AT2042的视频输出端口需要增加一级处理,即将数字信号转化为模拟电视信号。在后端设计中选用SAA7121,它是一款专用的电视信号编码芯片,可以将输入的数字信号经过内部的D/A转化为适于传输的模拟电视信号,通过配置相应的寄存器可以输出满足S-video接口或复用接口的信号。

1.3 AT2042的主机接口
    主控CPU(S3C2410)和AT2042是数字视频录像机的核心处理芯片,S3C2410控制整个数字视频录像机系统的运行,AT2042除完成对视频信号的硬件压缩编码外,还可对压缩后的视频数据进行硬件解压缩。AT2042压缩编码后的视频数据通过芯片内部集成的Mux FIFO接口输出后,外部主CPU负责对其进行USB存储器处理,处理后的视频数据可以存储在物理介质上,以便在需要时通过键盘操作进行回放。

图5为S3C2410与AT2042接口框图。

    AT2042的CPU_SEL[2:0]是主控CPU选择引脚,经配置这几个引脚的高低电平,使AT2042可选择主控CPU,CPU_SEL[2:0]为010选择ARM结构芯片;

    nCS,nWAIT等为总线控制信号线;

    HCLK是AT2042主机接口的工作时钟,一般要求工作在50 MHz,当S3C2410在复位后设置FCLK为200MHz,HCLK为100 MHz,PCLK为50 MHz。故将S3C2410的PCLK引脚与AT2042的HCLK引脚相连。

    通过这种机制,S3C2410可以实现简单的访问AT2042。

    AT2042与CPU的通信机制如图6所示,CPU对AT2042的控制和访问主要通过AT2042的2个寄存器(status register和command register)和4个FIFO(Tx FIFO,Rx FIFO,Multiplex FIFO和De-Multiplex FIFO)完成。

2 数字视频录像机的软件实现
    数字视频录像机系统的软件设计包括:Bootload代码的编写、Linux操作系统的内核生成和Linux下驱动程序和应用程序的开发、文件系统的生成和配置以及用户应用程序4大块。

数字视频录像机软件开发的整体架构如图7所示。


2.1 系统启动Bootloader程序设计编写
    Bootloader是系统启动时执行的第一个程序,其主要完成对硬件系统的初始化。具体包括:S3C2410的初始化、TVP5150功能配置、 SAA7121功能配置、加载AT2042固件、以太网及串口初始化。由于在开机时要显示开机画面,故除在Bootloader中初始化相应硬件资源外,还应将开机画面的图片数据,传送到AT2042SDRAM中。Bootloader整体流程图如图8所示。
(中国集群通信网 | 责任编辑:陈晓亮)

中国集群通信网,国内首家集群通信专业网站。

Copyright © PttCn.Net, All Rights Reserved.   

联系我们 联系我们 中国集群通信网 对讲机学堂 对讲机世界