摘要: 介绍了一种用图像采集与处理系统来在线检测线圈直径的硬件设计电路和软件开发方法。该设计采用高速线阵CCD在高速运动状态下来获取线圈的图像,CCD相机采用Camera Link方式传递数据。系统中的采集系统采用LVDS线路接收器DS90CR288来接收数据,而图像处理系统则采用TMS320C6711DSK开发板构成。文中讨论了本系统在TI的CCS开发环境下进行软件开发的具体流程和系统上电引导方法。
关键词:线阵CCD相机;图像采集;实时性;TMS320C6711 DSK;USB
0 引言
图像处理系统的一个关键问题就是数据量庞大,数据处理相关性高,实时实现比较困难。即使采用高速单片机也无法满足实时处理的需求,而DSP芯片则具有速度快,信号处理功能强大,实时性好等特点,因此,将DSP用于图像处理可使这一难题得到较好的解决。
1 系统构成
本系统采用基于CameraLink接口的图像输出相机。DSP采用TI的TMS320C6711,这是一种高性能DSP处理器,其工作频率为150 MHz,最大处理能力高达900MFLOps,该DSP既可满足高速处理要求,又可满足高精度运算时的浮点要求。
本图像处理系统主要包括图像采集模块(由MDR26连接器DS90CR288A和IDT72V283组成)、图像处理模块(由DSP器件TMS320C6711、SDRAM图像存储器和FLASH程序存储器等组成)以及图像输出系统(USB和FPGA)等。该系统的构成原理框图如图1所示。其基本工作过程是将高速CCD相机采集到的图像数据通过电缆接入MDR26连接器,然后再接入LVDS线路接收器DS90CR288A以将其恢复成并行TTL信号,同时分离出8位图像数据和3个控制信号。而同步FIFO作为数据缓存则不会造成数据的丢失。当其数据达到半满时,HF有效,此时可触发DSP中断以通知DSP将FIFO中的数据取走,并开始进行数据处理。DSP与USB的数据传递建立在消息和中断信号基础上,当DSP或USB任何一方有数据发送时,发送方先将数据和消息送到FPGA,然后用I/O脚触发中断至接收方,接收方接到中断后再到FPGA中读取消息,然后根据消息的内容读取数据。
![]() |
本系统设计充分利用了TMS320C6711中EDMA的优势,并用EDMA来进行整个系统的数据传输。由于EDMA可以进行背景操作,因而其整个采样和输出过程基本不影响操作。同时,也利用了TMS320C6711的二级缓存结构,再加上系统外围采用高速的数据存储器芯片,因而大大提高了整个系统的处理速度。
2 图像采集与处理
2.1 Camera Link技术
Camera Link技术的核心是美国NS(NationalSemiconductor)提出的一种高速数据传输方法—Channel Link传输方法技术,该技术主要用于数字图像数据的高速传输。该技术采用LVDS信号模式,但比先前的RS644传输方法具有明显的优点。LVDS(Low Voltage Differential Signaling)是最近发展起来的一种利用低电压差分信号模式的传输技术。LVDS信号是以+1.2 V为基准的300 mV差分形式,其低电压摆幅差分模式具有高速传输数据时交叉干扰小,EMI干扰小等特点。ChannelLink采用LVDS方式传输数据,它将28位数据转换成串行方式在4对线路上进行传输,然后再用另外一对线路传输时钟信号,其最高传输率可达2.38 Gb/s。传输距离可达10 m。NS的LVDS发送器DS90CR287可用于完成并行TTL/CMOS信号到LVDS信号的转换,LVDS线路接收器DS90CR288则用来将LVDS信号还原成并行TTL/CMOS信号。
2.2 TMS320C6711 DSK简介
本系统采用美国TI公司的TMS320C6711DSK(DSP Starter Kit)开发工具。这是由TI公司提供的一套独立的C6000开发实验平台,这种开发工具集成了一些基本的应用电路,它既可以帮助用户评估和开发C6000系列DSP的功能,也可以作为DSP初学者的学习工具。它的硬件由6711 DSP构成,主频为150 MHz,凭借其二级高速缓存及VLIW (very long instruction word)架构,每秒可执行900万次浮点运算(MFLOPS)。DSK可以提供双时钟,通过设定可使CPU工作在150 MHz,而使扩展存储器接口(EMIF)工作在100 MHz。 DSK上设计有16 M字节/100 MHz的SDRAM和128 K字节的ROM。SDRAM由TMS320C6711为其产生所需的控制信号和刷新信号。最大刷新周期可达15.625 ms。HPI接口可通过并口连接所有的DSP存储空间,并有子卡接口所需的存储器和外围连接接口及嵌入式JTAG仿真功能。
2.3 图像采集与处理接口设计
根据CameraLink标准,CCD输出图像数据经Camera link后,可由LVDS线路接收器DS90CR288将其恢复成并行的TTL/CMOS信号,并分离出8位图像数据和3个控制信号(LVAL,DVAL,STROBE)接人同步FIFO(IDT72V283),再通过DSP的外部存储器接口(EMIF)接入TMS320C6711DSK开发板进行图像数据处理。其具体的图像采集电路原理图如图2所示。
![]() |
3 图像输出系统
3.1 USB芯片AN2131QC
USB芯片选用CYPRESS半导体公司的EZUSB(AN2131QC)芯片,AN2131 QC具有一个USB接口、8位数据线和16位地址线,以及3个8位I/O端口,其片内带有增强型8051核,该8051核与传统8051的区别在于其速度较快。传统的8051标准指令周期是12个CLOCK,而在这里只需要4个CLOCK,因而大大提高了指令执行的时间。由于其带有增强8051核,故可以将固件储存在主机上,每次上电时,再将固件调用到芯片的RAM存储器单元,这样可使固件升级非常容易。另外,CYPRESS公司还提供了一个不需要修改就可以使用的驱动程序ezusb.Sys,这个驱动程序允许任何传输类型与EZ-USB芯片构建的系统进行通信。CPU的时钟频率为24 MHz,使用RAM作为程序存贮器,其8051程序代码及设备描述表可以每次从主机中下载。
3.2 图像输出接口设计
TMS320C6711与AN2131QC采用并口方式进行通讯。DSP为32位处理器,其并行接口数据线为32根,而AN213 I QC的并行口为8位,若将DSP32根数据线中的8根数据线直接与USB并口相连,则DSP传送一个32位数据需进行4次操作,这显然会影响系统的效率。因此,可采用8位/32位数据线转换和数据缓冲设备来将两者相连。考虑到性能价格等因素,本设计采用FPGA作为两者之间的缓冲设备,实现从DSP到USB数据传输缓冲以及32位数据线转8位数据线功能。FPGA采用X ilinx公司SpartanIIE系列的XC2SSOE芯片作为转换器。其图像传输电路原理图如图3所示。