PCI总线和DSP芯片的图像处理平台的硬件设计
摘要:介绍了基于PCI专用芯片S5933和DSP芯片TMS320C32图像处理平台的硬件设计。该平台使用专用视频输入处理芯片SAA7113和CPLD实现了高速连续的视频帧采集,满足了后继图像处理的需要。该平台既可以作为视频图像采集使用,也可以进行视频压缩、匹配等图像处理的算法验证,并具有使用灵活的特点。
关键词:数字信号处理芯片 视频采集 图像处理
随着计算机、多媒体和数据通信技术的高速发展,数字图像技术近年来得到了极大的重视和长足的发展,并在科学研究、工业生产、医疗卫生、教育、娱乐、管理和通信等方面取得了广泛的应用。同时,人们对计算机视频应用的要求也越来越高,从而使得高速、便捷、智能化的高性能数字图像处理设备成为未来视频设备的发展方向,这必然要求产生相适应的新理论、新方法和新算法。为了在利用这些新技术的过程中检验其可行性,研制了基于PCI总线和DSP芯片的图像处理平台,该图像处理平台是利用PHILIPS公司的视频输入处理器SAA7113、TI公司的TMS320C32高速浮点DSP和AMCC公司的S5933 PCI总线接口芯片搭建的。利用高速的PCI总线和功能强大的DSP芯片,可以进行视频压缩、图像检测、视觉定位等算法研究。
javascript:window.open(this.src);" style="cursor:pointer;"/>
1 系统功能概述
根据实际应用需要,该系统的主要功能有:
(1)可以在不同输入制式PAL和NTSC之间进行自动切换和处理。
(2)能利用采集到的YUV图像信号数据进行压缩算法的验证,或转换成灰度图像数据、RGB格式图像数据等进行检测、定位等算法的检验。
(3)能将处理后的数据通过PCI接口交给上层系统(PC机)保存或进行进一步验证处理。
(4)系统具有软件修改、升级功能和灵活性,便于算法的改进验证。
系统的设计难点主要是如何实现系统数据的高速传输。图像数据由专用集成视频解码器SAA7113采集,经A/D转换处理后传输到DSP;再经DSP处理后通过PCI接口传输到PC机。如何实现SAA7113与DSP之间和DSP与S5933之间的高效率数据通信是解决这个问题的关键。通过分析研究,在SAA7113与DSP之间采用CPLD控制的两帧轮换方式,实现图像的隔行信号变逐行信号以及采集和处理的同步进行;在DSP与S5933之间采用DMA传输方式,实现数据流在系统中的高速传输,以满足图像处理要求。
2 系统的硬件设计
整个系统由视频解码器、DSP和PCI总线专用芯片组成。系统框图如图1所示。
DSP芯片采用TMS320C32,该芯片是在TMS320C30的基础上简化而来的,含有TMS320C30 CPU核心。它增加了一些常用的功能部件,使程序引导功能、串行接口传输和存储器均可支持8、16、32位的数据。它可产生边沿中断和电平中断,可由用户编程设定中断向量表的地址,具有空等待和低功耗两种电源管理方式。它具有两个DMA通道,功能强大的外部存储器接口既可以满足视频解码接口8位数据的要求,也可以实现PCI接口32位数据的的高速数据传输。TMS320C32灵活的程序加载可以实现在系统编程。
javascript:window.open(this.src);" style="cursor:pointer;"/>
PCI总线专用接口芯片采用S5933,它是一种功能强且使用灵活的PCI总线控制器专用芯片,该芯片符合PCI局部总线规范2.1版本,既可作为PCI总线目标设备,实现基本的传送要求;也可作为PCI总线主控设备,访问其它PCI总线设备。S5933的峰值传送速率为132Mbps(32位PCI数据线)。S5933提供了3个物理总线接口:PCI总线接口、外加总线接口(ADD-ON BUS);可选的NV存储器接口。用户可根据需要设计S5933与外加总线接口相连接的逻辑电路和配置空间的初始化,而不必考虑PCI总线规范众多的协议,从而将复杂的PCI总线接口关系转化为简单的8/16/32位外加总线(ADD-ON BUS)接口关系。S5933芯片功能框图如图2所示。
PCI总线与外加总线之间的数据传输可以通过内部先入先出存储器(FIFO)、邮箱寄存器(Mailbox)和数据直传通道(Pass-Thru)三种通道进行。各通道都包括两组寄存器以分别完成PCI总线和ADD-ON总线接口双向数据传输,为使用者提供较为宽松而灵活的设计空间。
可编程视频解码芯片采用SAA7113;该芯片是可编程视频处理芯片,采用CMOS工艺。通过简单的I2C总线可以对其实现编程控制;内部包含两路模拟处理通道,能实现视频源的选择、抗混叠(去假频)滤波、模/数变换、自动嵌位、自动增益控制、时钟产生、多制式(PAL BGHI、PAL M、PAL N、NTSC M和NTSC N)解码及亮度、对比度和饱和度控制。
本系统采用软件模拟I2C总线的控制方式,通过DSP的多功能口实现DSP对SAA7113的初始化等控制;根据SAA7113输出的同步脉冲,通过使用可编程器件CPLD,产生图像帧存储器的地址信号、读写信号以及帧切换等控制信号,实现SAA7113和DSP之间的高速数据通讯。
3 DSP与SAA7113之间的无缝连接
SAA7113输出的是隔行视频信号,一帧图像需要传送两次,分别记为奇场图像和偶场图像;视频处理的对象是逐行排列的图像信号,因此必须等待一帧图像(连续的奇、偶两场信号)采集完后,合成到一个图像帧中才能进行后续处理。利用SAA7113的同步信号,使用可编程逻辑器件CPLD构建控制器,可将图像数据写入帧存储器,解决图像帧合成问题。为了向前端处理器(DSP)提供连续的图像信号,采用两个图像帧存储器A和B交替存储的方式,来暂存采集到的图像数据和需要处理的图像数据,可实现图像的实时连续采集处理。
javascript:window.open(this.src);" style="cursor:pointer;"/>