首页 | 新闻 | 新品 | 文库 | 方案 | 视频 | 下载 | 商城 | 开发板 | 数据中心 | 座谈新版 | 培训 | 工具 | 博客 | 论坛 | 百科 | GEC | 活动 | 主题月 | 电子展
返回列表 回复 发帖

基于FPGA的多通道高速CMOS图像采集系统

基于FPGA的多通道高速CMOS图像采集系统

1、引言
近年来,越来越多的高速图像采集系统采用CMOS图像传感器作为图像采集器件。随着集成电路设计技术和工艺水平的提高,CMOS图像传感器像素单元的数量和采集速度不断增大,单位时|’日J内图像传感器采集的图像数据量成倍的增加,因此对于整个高速图像采集系统的数据传输、控制和处理等都提出了更高的要求lII。目前情况下,传统的单通道数据传输方式和单片机实现的系统控制和处理功能已经远远无法满足高速图像采集系统的设计要求,必须采用新的数据传输方式和设计方法来实现图像采集、传输和存储功能。
本文设计了一种以FPGA芯片为核心处理器件的多通道高速CMOS图像采集系统,将LVDS技术和乒乓技术应用于图像数据传输和存储过程中,大大提高了整个系统的图像采集速度和实时性。
2 CMOS图像采集系统的系统结构
多通道高速CMOS图像采集系统设计的主要目的是对空间快速运动目标进行实时的图像采集。数据传输和存储,以便于后续的计算机或图像处理系统进行图像分析、目标提取等进一步处理。针对被测目标高速运动的特点,系统选用Fillfactory公司的LUPAl300型高速CMOS图像传感器作为图像采集器件。全分辨率下图像传感器采集的数据量可达590 MPixels/s,输出的离散模拟像素数据需要经过多通道高速A/D转换器转换才能成为存储和处理单元能够存储和处理的离散数字信号。高速数据传输过程中,采用LVDS技术进行通道合并,以较宽的传输频带进行数据传输,可以大大提高整个系统的集成度和可靠性。同时,系统采用两片大容量的SDRAM以乒乓操作的方式进行数据存储,保证能够实时地接收图像传感器产生的图像数据和实时地向后续的图像处理系统和计算机传送图像数据。
图I所示为整个多通道高速CMOS图像采集系统的整体结构框图。其中,LUPAl300型CMOS图像传感器输出的16路并行离散模拟信号经过差分放大器,由单端信号转化为差分信号,再经过高速A/D转换器转换,成为16路LVDS信号输入FPGA芯片。FPGA将串行差分数据转换成为并行数据.以乒乓操作的方式分别存入2片大容量的SDRAM中,保证了图像数据的实时接收,使FPGA在进行数据处理和传输过程中不至于出现数据丢失的情况。同时,FPGA还要提供CMOS图像传感器的驱动、时序控制和地址加载等功能。FPGA与ADSP TS201S之间通过链路口(uIll【Port)和并行总线,簇总线(Clus—ter Bus)进行数据通信。

3 FPGA的图像采集逻辑电路设计
FPGA作为多通道高速CMOS图像采集系统的核心器件,主要负责整个系统各个器件之间的通讯和逻辑控制功能。图2
所示为FPGA的逻辑电路结构图。串行的数字图像数据经过串行数据解串模块转化成为并行图像数据,再通过输入FIFO,以乒乓控制的方式存入SDRAM中。当ADSP TS201S需要时,图像数据通过输出FIFO和接口模块输出。图像传感器时序控制模块主要是提供图像传感器工作所需的各种时序和驱动信号。SPI接口模块将传感器扫描的初始地址发送给传感器的内部寄存器。A/D时钟控制模块主要是控制MD转换器和差分放大器的时钟,使MD转换器和差分放大器的转换速率与图像传感器的采集速率同步。

3.1图像传感器时序控制模块
CMOS图像传感器的时序主要包括两个部分:第一部分是与像素阵列有关的时序,即对积分时间的控制、同步式开关模
式以及对每个像素单元内部的存储单元的像素信息的采样。另一部分是像素读取时序,包括同步信号、线选信号和控制行消隐时间信号。
图3是与像素阵列有关信号的时序图,图中所示的信号均为由FPGA产生的图像传感器外部信号,其中ReseEds(复位)
只在双斜率情况下才使用。像素阵列的时序是直接的,帧读取以前,光电二极管的信息需要存储到像素单元内部的存储单元内。通过图像传感器内部的Vmemory(存储电压)信号的预充电和采样来实现。Vmemory信号由FPGA产生的Mem HL(外部存储)信号来控制。Precharge(预充电)对存储单元设置—个参考电压,Sample(采样)是将光电=极管的信息存储到存储单元。Mem_HL信号的使用可以减少信号在像素内的损耗,同时预充电和采样的有效信号必须在Mem_HL信号的低电平期间。在Mem—HL信号再次处于高电平之后,开始像素阵列的读取。表l列出像素阵列的典型时序。

一旦光电二极管的信息存储到每个像素的存储单元,所有的1 280xl 024像素阵列需要在2ms以内读取(2ms一帧结构
开销时间=l 995 us)。另外,由x和y同步脉冲控制下载的起始地址和终止地址,可以读取整帧图像中的一部分。读取过程
本身也是直接的.由sync_Y和Clock_Y信号实现线选。选中一条新线以后,在线信息稳定以前需要—个行消隐时间。在行消隐时间结束以后,数据分成16组输出,syne_X和Clock_X可以实现分组功能。图4所示为y向移位寄存器和x向读取时问的时序图。表2列出像素阵列读取的典型时序。


由于行结构开销时间(ROT)在时间上是一种损失,因此FPGA通过采样保持的方法来尽可能地减少。图像传感器的时
序控制模块通过Pre__col、Norow_sel和Sh__col三个信号来控制行结构开销时间,其中,Sh_col信号的保持时间等于ROT,而且Sh_eol信号保持时间越短,ROT越短。
3.2串并行接口(SPI)模块
串并行接口主要用于将x和y地址上载到x和y地址寄存器。上载的地址是开窗的起始点,需要通过相应的同步脉冲信号上传到移位寄存器中。I型像传感器的SPI接u由16路基本单元并行连接组成,通过共用的下载使能信号(Load_ad—dress)、地址(address)和时钟信号(Clock—spi)形成完整的可上传地址组。load—address信号的上升沿将已上传的地址送到图
像传感器地址寄存器中。图5所示为SPI接口输入信号的时序图。X地址为6位,Y地址为lO位,A1与y地址的最低有效位
相对应,A16与X地址的最高位相对应。由于CMOS图像传感器的初始地址配置和MD转换器都是采用特殊的3线SPI,因
此本设计过程中,采用近似的方法,即可完成所需要的设计。

3.3串行数据解串模块
目前,新型的FPGA器件大多支持LVDS电平,因此采用LVDS方式的A/D转换器输出数据可以大大提高整个系统的速度,并减小PCB的面积。大量的串行数据进入FPGA以后需要将其转化成并行数据,以便于数据的存储和读取。串并转换电路主要是将数据依次存入串行移位寄存器中,然后并行输出。图6所示为串行转换电路的工作原理图。

串并转换电路由一个串行的移位寄存器和一个并行的移位寄存器构成,其高速时钟通过锁相环PLL提供,PLL产生的
高速时钟再通过分频电路得到16分频的低速时钟。串行移位寄存器在PLL产生的时钟的控制下,依次将接收到的数据存
放在串行移位寄存器中,然后在计数电路产生的控制信号的作用下,将数据存入并行寄存器。并行寄存器在低速时钟的控制下将数据送入后续的逻辑电路。由于数据、同步信号以及时钟信号从A/D转换器传到FPGA接口的时候会产生90。的相移。即使在设计中数据信号和时钟信号线在PCB上保证严格的等距离,也会产生不同程度的相移,因此在解串模块设计过程中,采用一种自动相位调整的数字时钟管理单元(DCM)来保证相位的同步。
3.4乒乓操作控制
乒乓操作是一种用于数据流控制的处理技巧。典型的乒乓操作方法如图7所示。乒乓操作的处理流程:输入数据流通过
输入数据选择单元等时地将数据流分配到两个数据缓冲区。在第一个缓冲周期,将输入的数据流缓存到数据缓冲模块l;在第2个缓冲周期,通过输入数据选择单元的切换,将输入的数据流缓存到数据缓冲模块2,同时,将数据缓冲模块l缓存的第1个周期的数据通过输出数据选择单元的选择,送到运算处理单元进行处理。在第3个缓冲周期,再次切换数据的进入与输出缓冲模块。如此循环,周而复始a。本文设计的乒乓切换控制模块中,数据由输入区域的控制信号写入,再由输出区域的控制信号将数据读出。也就是说,读写指针的变化由不同的时钟信号控制,而空满标志要由比较读写指针来实现。因此,对FIFO空或满的判断是跨时钟域的。为了解决跨时钟域信号传输的亚稳态问题,系统采用同步器的方法,即异步空满信号产生后,异步满信号同步到写时钟域,异步空信号同步到读时钟域,并向外部输出同步空满信号。

3.5 与ADSP TS201S的接口模块
FPGA与ADI公司的Tige6HARc系列ADSP TS201S芯片可以通过链路口(Link Port)和并行总线/簇总线(Cluster Bus)
进行数据的传输和通信控制141。由于ADSP TS201S芯片的链路口通信有自己的通信协议,因此本文的FPGA接口模块只需要按照链路口的通信协议设计,就可以实现ADSP TS201S与FPGA的通信和数据传输。
ADSP TS201S片上有4个独立的双向链路口,在发送数据的同时可从对方接收数据。本文设计的接口模块链路El数据
传输采用4位传输模式,用LxCLKOUTI'/N、hACKI、LxCLK—INP/N和hACKO信号来控制数据传输,IxBCMPI和LxBCM—PO用于描述块传输是否完成。链路口通信协议采用通用规则(如图8):
(1)第—个数据总在链路口时钟的上升沿发送;
(2)最后的数据总在链路口时钟的下降沿发送;
(3)当链路口停止时LxCLKOUTP为低;
(4)每次传输最少为4个字。

FPGA设计的接收链路13逻辑电路和发送链路口逻辑电路都由两部分组成:接收/接收缓冲模块和发送缓冲/发送模块。接收模块是用来与ADSP TS201S链路【|发送通道进行接口和数据拆包处理,发送模块是用来与ADSP TS201S链路口接收通道进行连接和数据打包处理。接收缓冲/发送缓冲模块分别用来配合接收模块和发送模块作为传输时的数据缓冲区,并且实现与系统中其他接口或者FPGA中其他模块的接口的数据传输功能。
4结论
本文设计了一种以FPGA芯片为核心处理器件的多通道高速CMOS图像采集系统,实现了对全分辨率下帧频高达450帧,s的1280x1024像素阵列的高速图像采集、数据传输和存储。LVDS技术和乒乓操作方式在数据传输和存储过程中的应
用大大提高了整个系统的可靠性和集成度,降低了噪声对于整个系统数据传输过程的影响。同时,通过Flea芯片实现的整个系统的时序控制、数据转换和存储功能,具有较高的系统可重构性。系统已经应用于某高速视觉测量系统中,实际应用证明,具有良好的数据采集和传输能力,能够实现对空间高速运动目标的实时图像采集、传输和存储功能。
作者:孙春凤,袁峰,丁振良
记录学习中的点点滴滴,让每一天过的更加有意义!
返回列表