>
首页 » 业界动态 » 基于DSP的实时视频处理系统及应用

基于DSP的实时视频处理系统及应用

作者:杨东华,李久贤,谢树林  时间:2006-10-22 23:10  来源:
摘 要:该文以高性能浮点数字信号处理器(DSP)——MS320VC33为核心,结合专用视频解码器、大容量双口RAM和复杂可编程逻辑器件,构建了一个实时视频处理系统,实现了对PAL制复合视频信号的采集、存储和处理,并将此系统应用到电视跟踪系统中,实现了对目标的智能跟踪。

关键词:数字信号处理器;双口RAM;可编程逻辑器件;电视跟踪

引言

随着多媒体技术的飞速发展,视频信号处理的地位日益突显,并逐步成为多媒体技术的核心。众所周知,视频信号数据量较大,信号较为复杂,这就要求视频信号处理系统具有实时采集,大容量存储和实时处理的特点。以先进的数字信号处理器为核心,专用视频解码器为前端,大容量双口RAM为存储体结合复杂可编程逻辑器件构建的实时视频处理系统能够较好地满足这一应用要求。

系统设计

本文设计的视频处理系统的总体框架如图1所示,下面重点介绍系统主要模块的选型、功能及系统工作流程。

系统主要模块及功能
视频解码
视频解码芯片选用Philips公司的9位视频输入处理器SAA7113。该芯片在系统中主要负责对一路PAL 制的复合视频信号CVBS的A/D转换,输出符合ITU656 YUV 4∶2∶2格式的数字视频信号,两倍于采样频率(13.5MHz)的半像素时钟信号LLC,行参考信号HREF 和场参考信号VREF。由于芯片内部集成了抗混叠滤波、信号钳位、自动增益控制以及亮度、对比度和饱和度控制等功能,因此只需要在系统上电复位后通过简单的IIC总线对芯片内部的一些关键控制寄存器进行正确的初始化设置,就可以获得较高质量的数字视频信号和用于同步整个系统的时钟信号。

图1  系统框图

视频信号的存储
系统所需的一场图像的大小为256×256,因此存储一场包括亮度分量和色度分量的图像所需存储空间为(4×8+2×8+2×8)/4×256×256/8=128 kB,同时考虑到DSP的读写速度和系统低功耗的要求,选用IDT公司的3.3V供电的高速双口SRAM-IDT70V09作为视频信号的存储体。在视频信号的场正程期间由CPLD的地址发生部分将SAA7113产生的实时数字视频信号写入双口RAM中,在场逆程期间,由DSP读取场正程期间写入的数据。可见,利用系统的场同步信号协调双口RAM两端的读写,有效地避免了冲突,简化了系统的控
制。

读写控制逻辑
整个系统的读写控制逻辑由Altera公司的CPLD-EPM7128SLC84来完成。CPLD内部逻辑主要分为3个部分:第一部分用于产生系统时钟信号,由于符合ITU656标准的一场图像的大小为720×288,而系统所需的图像大小为256×256,因此就需要CPLD根据SAA7113提供的半像素时钟LLC、行参考信号HREF和场参考信号VREF 产生系统需要的时钟信号,包括行同步信号HS和场同步信号VS。行、场同步信号的产生原理分别如图2、图3所示。在每个行参考信号有效期间(HREF 的高电平)选取中间的256×2个半像素时钟作为系统所需的行同步信号HS,即每个有效行中选取256个像素作为系统的一行图像;在每个场参考信号有效期间(VREF的高电平)选取中间的256个HREF作为系统的场同步信号VS,即每场中选取256行作为系统的一场图像。第二部分为根据系统时钟产生写双口RAM 的地址信号、片选信号和写控制信号。第三部分是整个系统的地址译码部分,根据DSP提供的高位地址信号A[23∶20]、外围存取选通信号/STRB和页译码信号PAGE[3∶0]产生存取DSP 外围设备的选通信号。

视频信号处理器
TMS320VC33是TI公司推出的一款32 bits高性能浮点数字信号处理芯片。该芯片的最短指令周期为30ns ,最高的处理能力可达每秒150百万浮点操作(150-MFLOPS;片内具有34K×32bits的高速SRAM,增强了芯片内部性能;内部带有锁相环电路,使得芯片可以在低频率时钟输入时高速工作;可选的外部中断方式;支持程序自引导和片内边界扫描测试。考虑到本系统的设计指标,该数字信号处理器的以上特点足以满足系统整体的性能要求。

TMS320VC33主要负责视频信号的处理和IIC总线的软件模拟。视频信号的处理包括:在场逆程期间,DSP将存于双口RAM中的一场图像导入到工作RAM-IS61LV2568中,在场正程期间对存储在工作RAM中的一场图像进行处理,实现相应的处理算法。视频解码芯片SAA7113内部寄存器的设置是通过IIC总线进行的,因此需要系统提供一个IIC总线的控制器。IIC总线控制器的设计一般可采用3种方案:(1)采用专用的IIC总线控制芯片,比如选用带有IIC总线接口的MCU;(2)利用复杂可编程逻辑器件,通过硬件描述语言设计一个IIC总线控制器;(3)采用软件模拟的方法,利用DSP提供的I/O口模拟IIC总线控制器。考虑到SAA7113仅在初始化时需要IIC的控制,即无需实时控制,而系统CPLD的资源和引脚利用率都接近极限,并且IIC总线协议中读写时序要求并不十分严格,因此采用第三种方案。DSP提供了2个外部可编程I/O引脚XF0和XF1,这2个引脚的输入/输出电平符合SAA7113H的IIC总线所要求的LVTTL标准,通过外接2个2.2KΩ的上拉电阻可以直接将这2个引脚分别与SAA7113的IIC总线引脚SDA和SCL相连。根据IIC总线的协议,通过软件编程的方法模拟IIC总线的读写时序,从而完成对SAA7113的初始化设置。

图2  行同步信号

图3  场同步信号

系统工作流程
系统上电后DSP内部的引导程序读取EEROM-AT28C64B中的数据,将系统程序引导至DSP内部的SRAM中高速执行。DSP通过软件编程,模拟IIC总线,实现对SAA7113内部寄存器的初始化设置。设置完毕后,视频解码器SAA7113对复合视频信号进行实时采集,输出8位数字视频信号VPO[7 :0]和各种时钟信号。CPLD根据SAA7113输出的时钟信号产生系统所需的时钟并在场正程期间将数字视频信号存入双口RAM中,场逆程到来时以中断的方式通知DSP读取双口RAM中的图像数据,DSP在场正程期间对暂存于SRAM中的上一场图像进行处理,完成系统的功能。

系统应用

本系统作为电视跟踪系统的一部分,负责复合视频信号的采集、存储和跟踪算法的实现。通过增加一定的通信接口,就可以将本文设计的视频处理系统应用到电视跟踪系统中。如图1所示,本系统增加了2个接口部分,第一部分是与操控台之间的通信接口。操控台是整个电视跟踪系统的人机接口部分,负责传达操作人员的指令,监控系统的运行状态。由于操控台与跟踪平台相隔较远,因此考虑通过串口进行通信。TMS320VC33不具有异步串行通信的功能,所以必须为系统扩展一个异步串行通信接口。

扩展的方法主要有2种:一是DSP软件模拟;另一种是采用异步通信元件ACE实现并行数据和串行数据的相互转换。为了保证系统的运行速度和可靠性,本文采用第二种方法,ACE选用TI公司的TL16C550。操控台与本系统交换的信息主要包括:系统接收操控台的控制命令,并实时将跟踪状态发送给操控台,操控台综合各种信息对来自于SAA7113的模拟视频信号进行视频叠加,在监视器上显示必要提示信息。第二部分是与伺服控制模块之间的通信接口。伺服控制模块与本系统的通信数据量较少,可以采用小容量的双口RAM进行并行通信,双口RAM选用IDT公司的IDT71V321,芯片置于伺服控制模块中并通过底板将数据、地址和控制总线引到视频处理板上。视频处理系统将跟踪算法获取的偏差写入双口RAM的一端,伺服控制模块在另一端读取偏差,控制伺服电机调整摄像头使目标始终处于视场中心,实现智能电视。

结论

本文以TMS320VC33数字信号处理器为核心,SAA7113为视频解码器,大容量双口RAM IDT71V09为存储体,结合复杂可编程逻辑器件EPM7128搭建了一个实时视频处理系统。系统的主要特点为集成度高、低功耗和通用性强。通过增加与操控台通信的串行接口和与伺服通信的并行接口,将此系统应用到电视跟踪系统中,实现了视频信号的采集、存储和跟踪算法。系统的运行结果表明,本文设计的视频处理系统能够较好满足智能电视跟踪的要求。

相关推荐

莱迪思发运了7千5百万片MachXO可编程逻辑器件

一种高精度便捷式全数字示波器的设计

MC56F8006/56F8002:数字信号控制器

可编程逻辑器件的发展历程

可编程逻辑器件  ASIC  FPGA  CPLD  2009-02-13

DSP芯片介绍及其选型

DSP  数字信号处理器  快速RAM  TI  ADI  2008-08-15

Xilinx屡获殊荣的65nm Virtex-5系列新增三款器件

在线研讨会
焦点