摘 要:本文设计了基于DSP的高速线扫描相机。该相机以TMS320C6201为核心,实现了图像采集和视觉信息获取。从CCD 模拟图像数据采集、DSP 数据处理、时钟和控制信号产生以及电源和数据输出电路设计等方面,详细阐述了设计思想和实现方法。
关键词:DSP;CCD;线扫描相机;LVDS接口
现代化生产和科学研究对图像采集系统的要求日益提高。高速线扫描相机作为数字图像采集、传输的前端设备,其扫描的速度和质量很大程度上决定了整个系统的性能。市面上的线扫描相机非常昂贵,因此有必要开发物美价廉的高速线扫描相机。
设计高速线扫描相机,包括相机本身的硬件结构和相机操作的相关软件两部分。从相机的结构上看,线扫描相机作为图像采集和视觉信息获取设备,其主要功能是将光学图像信号转换为数字图像信号。一般来说,它由光学成像部分、光电转换部分(由模拟光信号转换为模拟电信号)及A/D转换等部分组成。光电转换部分一般由固体图像传感器来实现。
图1 相机的系统结构图
图2 相机内部CPLD生成时钟信号和控制信号功能框图
图3 DSP相机工作流程图
TMS320C6201简介
TMS320C6201主要由三大部分组成:CPU、外围设备和存储器。C6201的地址总线为32位,所以寻址范围达到4GB,其存储器空间可分为四部分:片内程序空间可以用作Cache、片内数据空间、外部存储空间和内部外围设备空间。可通过对五个BOOTMODE的设置灵活设定各空间的地址范围。片内数据RAM包括四个8K×16bit块,这些块交织在一起,使得CPU同时访问数据RAM 的两个不同块而不会发生冲突,提高了数据并行读写的能力。对于较大的程序,片内程序RAM可当作Cache来存储经常使用的代码,减少对片外的访问次数,从而提高程序运行速度。与常见的芯片不同,C6201有八个功能单元,分为两组,每组包括一个乘法器Mn和三个算术逻辑运算单元Dn、Sn、Ln。它们分别进行乘法运算、加减运算、线性和环形地址计算以及算术逻辑运算。因为输入/输出端口相互独立,所以8个运算单元可实现并行处理。每组运算单元对应一条数据路径,可以用作环形地址计算。
线扫描相机的设计与实现
本线扫描相机的系统结构如图1所示。
CCD 模拟图像数据采集部分
该部分包括CCD传感器和CCD信号处理通道芯片。主要有图像传感器IL-P1-4096和CCD信号处理通道芯片VSP2254构成,其主要作用是将模拟的光分布信息转换为数字图像数据。该部分电路接收来自CPLD提供的各种工作时钟和各种采集控制信号,输出的是相应的数字图像数据。
DSP 数据处理部分
该部分包括数字图像数据的缓冲芯片、处理芯片和处理后的数据暂存芯片。该部分的主要作用是对由图像采集部分送来的数字图像数据进行处理,并将处理后的数据存入相应的存储单元。该部分由DSP芯片TMS320C6201、FIFO数据缓冲电路、双端口RAM等芯片组成。该电路中FIFO数据缓冲电路除接收来自CPLD的写入时钟、写入控制信号外,还要接收来自DSP芯片的读出时钟和读出控制信号。FIFO数据缓冲电路的输入连接的是CCD通道处理芯片VSP2254,其输出在DSP的控制下送到32位内部数据总线。DSP根据不同的工作模式向CPLD提供不同的控制信号,这些信号在CPLD的内部经相应的逻辑处理后,作为其他各部分的控制信号。DSP芯片还要为双端口RAM提供相应的读写控制信号,为其数据传输提供相应的DMA服务。双端口RAM一方面接收来自DSP的已处理的图像数据,另一方面为数据的传输提供准备。双端口RAM是在DSP芯片和CPLD逻辑电路双重控制之下工作的。
时钟和控制信号生成电路
该部分包括 CPLD时钟生成逻辑电路和控制逻辑电路。电路主要由CPLD芯片LC4128V100及其外围电路构成。相机的时钟电路主要实现两部分功能:一、提供相机工作时所需的基本时钟,这里面包括CCD传感器工作所需的时钟、为CCD信号处理通道提供的工作时钟(即 CCD信号前肩采样时钟SHP、CCD信号后肩采样时钟SHD、CCD信号哑元屏蔽时钟CLPOB、CCD信号黑电平衔位时钟CLPDM以及数据转存时钟ADCCK)、为输出电路提供的输出同步时钟DIR-STROBE和输出行有效同步时钟DIR-LVAL以及为C6201提供50MHz的工作外频(该时钟在C6201内部经4倍频之后输出200MHz,作为DSP工作主频)。二、和DSP输出的控制信号一起组成组合逻辑电路,实现DSP芯片对外围电路的控制(包括对闪存芯片AT49LV409、双端口RAM芯片IDT70V261S、FIFO芯片IDT723635以及外部接口电路和CCD信号采集电路的控制)。从以上的时钟和控制信号生成电路的功能来看,用来实现其功能的可编程逻辑芯片在性能上要满足一定的要求。从延时上来看,由于内部的访问基准时钟为200MHz,要求芯片引脚间的延时要小于5ns,且时序的可控性要好。从容量上看,要有足够多的宏单元来实现上述的功能。控制功能框图如图2所示。
电源和数据输出电路
该部分包括 CPLD地址生成电路和LVDS数据上传电路,其作用是为相机提供工作需要的电源和完成与PC之间的通信(这里包括将处理好的图像数据上传给PC,接收PC的控制信号等)。电源电路为整个相机提供+5V、-5V、+1.8V、+3.3V、+15V等几组电源。其中+5V是整机工作的主电源。
基于水平扫描线技术采集图像的数据量比较大,要实时、快速地将大数据量的图像上传给计算机,对数据传输接口的传输速率要有一定的要求。当前的几种计算机接口,即能满足快速通信要求,又可易于在设计中使用的是LVDS接口。而且该接口的驱动能力很强,能双向高速地传输数据。芯片DS90C31B和DS90C32B是专门用于LVDS接口的数据收发配对芯片。DS90C31B是数据发送芯片,DS90C32B是数据接收芯片。这两种芯片的控制非常简单,数据传送速率可达到155.5Mbps(77.7MHz)。但在电路连接时为抑制信号的反射和平衡差分信号,要在每组信号回路中接入100?的电阻。
线扫描相机的工作模式及流程
对相机的工作模式进行综合考虑,以适应不同的工作环境要求,其工作模式分为:主动实时采集、主动非实时采集、被动实时采集、被动非实时采集等四种。限于篇幅,各工作模式不在此详述,线扫描相机的工作流程见图3。
结语
本文所提出的高速数字相机设计方案总体上是可行的,能够实现动态图像的采集。