您当前的位置:五五电子网电子知识单片机-工控设备DSP/FPGA技术基于FPGA和TMS320DM642的CCD图像采集和处理系统硬件设计 正文
基于FPGA和TMS320DM642的CCD图像采集和处理系统硬件设计

基于FPGA和TMS320DM642的CCD图像采集和处理系统硬件设计

点击数:7696 次   录入时间:03-04 12:02:40   整理:http://www.55dianzi.com   DSP/FPGA技术

  当CCD产生的视频信号为模拟信号对,对其直接传输、存储和处理比较困难,须要将模拟视频信号转换为数字视频信号,以便对其进行处理,并进行高效可靠的传输和存储。当前,数字图像采集和处理系统不仅要面临高速宽带、高精度的挑战,而且对采样时机、采样点数、采样速率的可控性也提出了较高的要求,本文提出了一种实时图像采集和处理系统的设计方法,该系统以 TMS320DM642 [1-2]为核心,结合视频解码芯片SAA7115H和OSD FPGA 构成实时图像采集和处理系统电路。

  1 系统总体设计

  1.1 系统结构

  本系统以TMS320DM642为核心,采用模块化设计思想,整个系统主要由视频解码芯片(A/D转换芯片)、可编程逻辑门阵列(OSD FPGA)、TMS320DM642及外围电路组成。外围电路主要包括CCD摄像机、SDRAM图像存储器、FLASH程序存储器及TMS320DM642外围电路(复位、电源连接等)。图1为该系统的结构框图。

系统的结构框图

  1.2 系统工作原理

  由CCD摄像头摄入的PAL制图像传送到SAA7115解码器,SAA7115解码器将信号转变成并行的BT.656图像码流送至TMS320DM642视频口VP0,TMS320DM642将其再解码,得到YUV(4:2:2)格式的图像,并通过EDMA传输到动态存贮器(SDRAM)中存储,图像大小为每场720×288(宽×高),每帧720×576(宽×高)。CPU通过访问SDRAM中的图像数据,依照相应的程序进行相应的图像处理。

  在实时图像处理系统中,为了不影响数据处理速度,需要在恒速的 CCD图像采集 与变速的TMS320DM642图像处理之间加入缓冲电路,缓冲采用TMS320DM642视频口的片内FIFO和片外SDRAM的乒乓缓存结构。“乒乓操作”是一个经常应用于数据流控制的处理方法,如图2所示,其处理流程为:输入数据流通过指针等时地将数据流分配到数据缓冲区1、2和3中,在第1帧的时间,将输入的数据流缓存到1;第2帧将输入的数据流缓存到2,与此同时,将1的数据作运算处理。在下个缓冲周期,再次切换,将输入的数据流缓存到3,与此同时,将2的数据运算处理。如此循环,A、B、C、D、E为其5种状态。

“乒乓操作”原理图

  乒乓操作的最大特点是按节拍、相互配合地切换,将经过缓冲的数据流不停顿地进行运算及处理。把乒乓操作模块当作一个整体,此模块两端的输入数据流与输出数据流均是连续不断的,没有任何停顿,因此非常适合进行流水线式处理,完成数据的无缝缓冲与处理。

  2 功能模块设计

  2.1 视频采集模块

  本系统采用Philips公司的SAA7115视频解码芯片将CCD模拟视频进行数字化,然后传给TMS320DM642的视频端口进行处理,同时分离水平同步(XRH)和垂直同步(XRV)等信号。

  视频解码芯片采用SAA7115,省去时钟同步电路的设计,简化接口电路,提高系统的可靠性。由摄像机采集到的模拟信号经过视频端子进入到 解码器SAA7115 的模拟端Al11,经模拟处理和A/D转换后产生数字色度信号和亮度信号,分别对其进行处理。亮度信号处理的结果一路送到信号处理器,进行综合处理,产生Y和UV信号,经格式化后采用4:2:2 YUV格式从IPD[7-0]输出直接连接到TMS320DM642视频口的VP0[9-2]管脚;另一路经过同步分离器,由数字PLL产生相应的同步信号与TMS320DM642的VP0CTL0和VP0CTL1相连,同时PLL驱动时钟发生器,产生27 MHz的时钟同步信号LLC,输出到TMS320DM642的VP0CLK0管脚。解码器SAA7115与TMS320DM642的视频接口的原理如图3所示。

解码器SAA7115与TMS320DM642的视频接口的原理

  所有这些功能均在I2C总线控制下完成。SCL作为I2C接口的时钟线与TMS320DM642的SCL相连,SDA作为I2C接口的数据地址线与TMS320DM642的SDA相连。通过SCL和SDA的时序配合,可由TMS320DM642向SAA7115的寄存器写入数据或读出数据。

  2.2 TMS320DM642图像处理模块

  本系统中视频口VP0作为输入,与视频解码器SAA7115的IPD相连。从解码器SAA7115出来的BT.656数据流进入VP0口后,经由BT.656捕获通道,进入到视频口缓冲区中,每个视频口都有1个5 120 B的视频输入/输出缓冲区,视频口输人的数据分别进入捕获FIFO A和FIFO B,其中Y缓存2 560 B,Cb和Cr缓存分别为1 280 B。根据输出的同步脉冲产生帧存储器的地址信号、读写和片选等控制信号,将图像逐帧存入SDRAM存储器中,通过中断通知TMS320DM642读取。TMS320DM642通过EDMA事件实现视频口缓冲区和片内L2存储器之间的数据传递。用户编程设定1个缓冲区阈值用以产生EDMA事件。BT.656格式的数据流经由捕获通道分别进入各自的缓冲区,并打包成64 B的双字。当双字增至缓冲区阈值时触发EDMA事件,存储器映射寄存器即作为EDMA数据传输的源地址。为保证每一场的数据能够全部传完且没有遗漏,每次EDMA传输的数据大小应等于阈值。由于TMS320DM642的强大处理能力,用户算法作为任务线程嵌入TMS320DM642软件系统中。

www.55dianzi.com

  2.3 外围存储模块

  本系统的 TMS320DM642 在视频图像的处理时,处理过程中会产生大量数据,而其内部最多仅有256 KB的RAM,所以需要扩展大容量的外部存储器才能满足数据处理的需要。本系统选用2片SDRAM用于存储程序、数据和缓存数字视频信息,选用1片FLASH存储器用于固化程序和一些掉电后仍需保存的用户数据。SDRAM芯片和FLASH芯片均通过TMS320DM642的EMIF口实现无缝连接[3]。TMS320DM642的EMIF有4个独立的可设定地址的区域,称为芯片使能空间(CE0~CE3),当FLASH和 FPGA 映射到CE1时,SDRAM占据CE0,CE3的一部分被配置给OSD功能的同步操作和扩展的FPGA中的其他同步寄存器操作。本系统合并形成了一个64 bit长的外部存储器端口,将地址空间分割成了4个芯片使能区,允许对地址空间进行8 bit、16 bit、32 bit和64 bit的同步或不同步的存取,并且使用了芯片使能区CE0、CE1和CE3。CE0被发送给64 bit的SDRAM总线,CE1被8 bit的FLASH和FPGA功能使用,CE3被设置成同步功能。

  2.3.1 SDRAM存储器

  本系统采用MT48LC4M32B2[4]来构成SDRAM存储器,大小为1 M×32 bit×4 banks, 在CE0空间连接了64 bit的SDRAM总线。总线由外部PLL驱动设备控制,在133MHz的最佳运行状态下运行,SDRAM的刷新由TMS320DM642自动控制。TMS320DM642的EMIF与SDRAM接口图如图4所示。

TMS320DM642的EMIF与SDRAM接口图

  2.3.2 FLASH存储器

  本系统扩展4 M的FLASH,映射在CE1空间的低位。FLASH寄存器选用4 M×8 bit的AM29LV033C。FLASH寄存器主要用来导入装载和存储FPGA的配置信息。CE1空间被配置成8 bit,FLASH寄存器也是8bit。由于CE1的可利用地址空间小于FLASH的空间,所以利用FPGA可产生3个扩展页。这些扩展的线形地址通过FPGA的FLASH基础寄存器进行定义,复位后的默认值是000。TMS320DM642的EMIF和FLASH的接口图如图5所示。

TMS320DM642的EMIF和FLASH的接口图

  2.4 OSD FPGA模块

  FPGA负责完成所有芯片的接口和控制,其中包括SAA7115与I2C总线的接口、复位控制信号以及与TMS320DM642的EMIF接口和外设接口等,其体系结构图如图6所示。本系统的OSD FPGA功能模块的芯片型号为Xilinx XC2S300E-6PQ208C[5],主要用来完成以下工作:

  (1)通过寄存器使用TMS320DM642外部存储器接口(EMIF);

  (2)通过可编译寄存器使用TMS320DM642的EMIF接口控制GPIO;

  (3)产生EMIF缓冲控制信号(DIR和OE);

  (4)提供对于PLL1708的连续控制接口;

  (5)为FLASH产生3页bit空间;

  (6)使用SAA7115的同步信号。

体系结构图

  2.5 电源和复位模块

  该系统通过单+5 V供电,在板子内部转换为+1.4 V和+3.3 V,为各器件供电。+3.3 V为TMS320DM642的I/O口、解码器及其他芯片的电源,+1.4 V为TMS320DM642 CPU内核电源。TMS320DM642内核电压+1.4 V,外设I/O电压+3.3 V,降低内核电压主要是降低功耗,外部接口引脚采用+3.3 V电压,便于直接与外部器件接口。由于是2种不同的电压,所以要考虑供电系统的配合问题。在加电过程中,保证CPU内核电源先加电,最晚也应当与外设I/O电源同时加电。关闭电源时,先关闭I/O电源,再关闭内核电源。如果内核加电晚于I/O,则会发生内部总线竞争,从而产生不可预定的结果。因此,选用电源芯片TPS54310[6]获得上述2种电压,并利用其电源输出有效引脚PG和允许电压输人引脚EN保证TMS320DM642的内核和I/O上电掉电顺序。

[1] [2]  下一页


本文关键字:硬件  DSP/FPGA技术单片机-工控设备 - DSP/FPGA技术