提出一种基于DSP的无线图像传输系统,该系统实现图像的采集、压缩、无线传输及显示。概述系统设计过程,并重点讨论DMA在图像采集和JPEG压缩过程中的应用。最终通过对系统图像传输质量和传输速度的测试证明:该系统有效和实用。该系统设计适用于低端低价位无线图像传输产品或消费电子类产品,特别适合于家庭和临时场所使用的低端无线监控系统。
关键词:DSP;JPEG;DMA;CPLD;图像采集
1 引言
随着航空航天技术的发展,图像无线传输技术日趋成熟。而嵌入式图像无线传输技术以其安装方便、灵活、适合广泛普及等优点在广大领域备受关注。本文介绍一种基于DSP的无线图像传输系统的设计方案与实现方法。
2 系统总体设计方案
图1为该系统设计框图。该系统分为图像采集、图像数据处理及无线通信3个模块。图像采集完成图像数据的采集;图像处理实现图像数据的压缩及相关处理:无线通信传输压缩数据。该系统选用TMS320VC5509A型DSP作为主处理器。
3 系统硬件设计
3.1图像采集模块
图像信号采集电路的基本工作方法分为独立和处理器两种采集法。前者采用专用图像采集器件,自动完成图像采集、存储器地址生成以及图像数据的存储和刷新,除设定采集模式外,处理器不参与采集过程,该方法采集过程不占用CPU时间,实时性好,适合采集活动图像,但电路较复杂;后者采用普通视频A/D转换器和帧存储器实现图像采集。CPU控制完成采集过程,需占用CPU时间,实时性差,不适合实时采集视频图像,但电路简单。因此,本系统采用第1种独立采集方案。由专用图像传感器OV9650,CPLD和相应的外接电路等组成。OV9650是Omnision公司生产的CMOS图像传感器,其内部集成有MD转换器,可提供SXGA(1 280x1 024)分辨率的图像摄入和处理功能;采集图像以全图方式、局部方式或抽样子图方式输出,并且可提供多种输出格式。该系统通过SCCB总线配置OV9650,从而形成8位ITU-R BT.656格式的数字码流。CPLD选用XC95144XL10TQ144C,其最高主频可达178 MHz,144个宏单元和3 200个可用门电路,其TQFP封装有117个可用I/O引脚,满足各种采集设计需要;实现异步存储器Flash扩展;完成对BT.656格式的数字码流解码,包括提取码流中的同步信号、行起始和结束信号、取出亮度(Y)信息、色度信息,进行地址译码;实现SCCB总线接口;在DSF需要读取状态和图像数据时,产生必要的逻辑控制和时序,通过DMA将数据从缓存区读取SDRAM等。
数据采集时,图像采集模块产生高速数字码流,而DSP对外围设备读取速度较慢。为了解决图像采集模块与图像处理模块的速度匹配问题,在这两模块之间加入数据缓冲区,可采用FIFO或SRAM,本系统采用ISSI公司的64 Kx16 bit存储空间的高速SRAM存储器IS61LV6416作为缓存存储解码BT.656码流得到的图像亮度数据。
3.2 图像数据处理模块
TMS320VC5509A内部仅有256 KB的RAM和64 KB的ROM,无法满足处理大量图像数据的需求,必须通过EMIF扩展外部存储器存放原始图像数据和应用程序。该系统外接Hynix公司HY57V641620EP SDRAM,其8 MB的存储空间用于存储图像数据;外接Spansion公司的S29AL008D Flash,其1 MB的存储空间用于存储应用程序和Boofloader。EMIF可与SDRAM无缝连接,接口连接如图2所示。由于TMS320VC5509A最大只能外扩16 KB的异步存储器,因此访问1 MB Flash需按分页方式访问,连接示意图如图3所示。
3.3 无线收发模块
nRF24L01是一款2.4 GHz单片无线收发器,全球开放ISM频段免许可证使用,126频道,满足多点通信和跳频通信需要,内置硬件CRC检错和点对多点通信地址控制,最高工作速率2 Mb/s,高效GFSK调制,抗干扰能力强,只需少量外围元件便可组成射频收发电路,适用于工业控制场合。
4 系统软件设计
由于图像数据量大,若在接收端实时显示采集端图像,必须提高DSP的工作效率。图像采集时,通过DMA完成图像数据从采集模块到图像处理模块的传输;图像压缩利用DMA完成JPEG压缩过程中的分块操作,避免CPU对外围存储器的读写操作。无线通信时,将McBSP(多通道缓冲串口)配置成SPI接口与无线通信模块nRF24L01进行连接,需要传输的压缩数据由DMA送到McBSP缓冲区,最终完成图像数据传输。DMA具有传输快速、高效的特性,并且数据传输丁作无需CPU参与,从而极大减小CPU的负担,提高系统效率。
4.1 采用DMA读取采集模块的数据
图像采集模块由CPLD控制,CPLD对OV9650解码器产生的数据进行相应的译码并顺序存储到图像采集模块的缓冲区。采集图像大小为320x200的8位灰度图像,为扩展需要,缓冲区采用具有64 K×16 bit存储空间的高速SRAM存储器IS61LV6416-10T,存储一幅完整图像。一幅图像采集完后,DMA与CPLD将缓冲区中的图像数据转存到DSP的外部存储器。DMA的主要寄存器配置参考图像压缩的DMA配置。