基于FPGA的图像采集卡的设计

整理文档很辛苦,赏杯茶钱您下走!

免费阅读已结束,点击下载阅读编辑剩下 ...

阅读已结束,您可以下载文档离线阅读编辑

资源描述

基于FPGA的图像采集卡的设计郑千洪王黎高晓蓉(西南交通大学光电研究所,四川成都610031)中图分类号TP391,文献标志码B摘要:本文介绍了一种基于FPGA的前端图像采集卡的系统设计。该系统主要包括视频A/D转化芯片SAA7113H、采样控制器下、存储芯片SDRAM。由该系统得到分辨率720*576、25帧/秒的图像。SAA7113H的初始化设置通过I2C总线来实现。这种图像采集卡系统由于集成度高,设计灵活,系统可靠性高,可以满足高性能的图像采集系统。关键词:图像采集卡,FPGA,I2C总线,采样控制器ThedesignofimagesamplingcardbasedonFPGAZhengQianhongWangLiGaoXiaorongAbstract:Thisarticleintroducesafront-endimagesamplingsystembasedonFPGAtechnology.Thissystemincludesthreeparts:imagedecodingchipSAA7113HwhichisinchargeofA/Dconvert;thesamplingcontroller;theSDRAMstoringchips.Thecollectedimagesolutionis720*576,withthevelocityof25FPS.ThesetupoftheSAA7113HisdonewiththeI2C-bus.Theimagesamplingsystemhasmanyadvantagessuchashighlyintegrated,flexibledesigningandhighlyreliability.SothisimagesamplingcardcanbeusedinhighspeedimageacquisitionsystemKeywords:imagesamplingcard,FPGA,I2C-bus,thesamplingcontroller1引言现代化生产和科学研究对视频图像采集系统的要求日益提高。传统的图像采集卡速度慢、处理功能简单、采用分立元件、电路非常复杂;而且可靠性差、不易调试、不能很好地满足特殊要求。FPGA(现场可编程门阵列)是专用集成电路中集成度最高的一种,用户可对FPGA内部的逻辑模块和I/O模块重新配置,以实现用户所需逻辑功能。用户对FPGA的编程数据放入芯片,通过上电加载到FPGA中,对其进行初始化;也可在线对其编程,实现系统在线重构。基于FPGA技术的图像采集主要是通过集成的FPGA开发板,使用软件编程把图像的采集控制程序写入FPGA开发板的芯片上,通过仿真技术来进行图像的采集处理分析。通过这种方式,便于及时地发现设计中的错误,从而有效地缩短研发时间。2系统的组成及基本原理该图像采集系统主要由模拟视频信号解码模块,I2C控制接口模块,采样控制模块,SDRAM存储控制模块。图1图像采集卡系统框架图SAA7113H芯片把从CCD采集来的模拟视频信号转化成YUV=422格式的数字图像信号。这些信号在同步脉冲的作用下进入采集控制器。采样控制器在奇偶场控制信号下把图像信息存入SDRAM中。该系统可以实现由隔行扫描图像到逐行图像的转化及存储。2.1模拟视频信号解码由于SAA7113H芯片具有I2C接口,该模块则通过I2C总线来配置SAA7113H初始化的信息。工作涉及SAA7113H的初始化字的配置、工作方式的配置;行同步开始和结束标志位、确定亮度、色度、饱和度的大小以及输出图像数据信号的格式。2.2I2C控制接口模块I2C模块作为SAA7113H寄存器初始配置的整体控制模块。具体可以分成I2C_cmd和数据传输两个模块。I2C_cmd模块为纯组合逻辑电路,完成信号的发送控制任务,配合rom_data[7.0]和rom_addr[7.0]信号完成数据的寻址与存入等工作;而数据传输模块主要和I2C_cmd模块一起组合成I2C的数据控制写入模块,它主要负责对I2C_cmd模块的输出信号进行缓存,并在其输出端输出I2C总线的串行数据SDA以及I2C总线的串行时钟信号SCL。图2I2C控制模块及数据传输模块2.3采样控制模块模块在Verilog编程语言的控制下,把SAA7113H输出的一帧灰度数字视频图像数据进行奇偶场的分开存储,达到隔行到逐行的图像转换,与此同时,通过控制行采集数和列采集数,满足720*576、25帧/秒的分辨率的要求。图3采样控制器模块2.4SDRAM控制存储模块图4SDRAM控制及SDRAM存储模块SDRAM模块作为数据的存储模块,可以具体分成SDRAM控制接口模块以及SDRAM存储模块(SDRAM)。SDRAM控制接口模块用于对数据存储的控制,发出控制读写信号来使数据存储到SDRAM模块里面;SDRAM模块则通过本身的逻辑存储单元,把从SDRAM控制接口模块出来的数据存储到自身的存储空间中。3方案模拟仿真及具体实现3.1采样控制器的功能仿真图5控制器同步状态机Idel:默认空闲状态(开始或复位状态)。此时如果收到数据8‘hff,进入State1,其它情况在本状态停留。State1:开始接收数据状态。此时收到数据8’h00,进入State2;收到数据8’hff,停留在本状态,其它情况返回Idel。State2:数据确认成功状态。此时若收到数据8’h00,数据确认成功,接下来输出图像视频信号,进入State3,其它情况状态转到Idel。State3:视频图像数据的接收状态,表明数据采集及传送即将开始。在此状态下,若收到数据8’hc7,进入图像奇数场采集;若收到数据8’h80,进入图像偶数场采集。其它情况回到Idel。State4:奇场图像采集状态。奇数场开始采集,同时输出场同步及奇场信号来控制计数器计数。与此同时,状态自动恢复到Idel。为下一次的图像场的采集做好准备。State5:偶场图像采集状态。偶数场开始采集,同时输出场同步及偶场控制信号来控制计数器计数。与此同时,状态将自动恢复到Idel。为下一次的图像场采集做好准备。3.2SDRAM控制存储模块仿真实现1)数据的突发式读取SDRAM支持的实突发式的读取。本文所设置的读取设为整页式突发读取,具体的工作过程:cmd发出001b的控制信号,进行带自动预充电的SDRAM读操作,cmd_ack发出高电平应答信号,同时Cs_n低电平表示片选有效。控制信号Ras_n、Cas_n、We_n的值输出为010b,表示进行带自动预充电的SDRAM操作,紧接着进行读操作。数据在读取的时候,从CAS读取指令发出到第一笔数据输出,存在读取潜伏期(CL)。故数据的读出有一定的时钟延迟,在本文中CL=2。即延时两个时钟周期,之后数据从Dq口从SDRAM读出。如图6所示是采用序列数读入时的modelsim的仿真图。图6数据的突发式读取时序图2)数据的突发式写入数据的整页式突发写过程与读操作类似:cmd控制信号010b控制进行带自动预充电的SDRAM写操作,cmd_ack应答,Cs_n低电平表示芯片选中工作。与此同时,控制信号Ras_n、Cas_n、We_n的值输出为011b,对行地址和列地址进行激活,然后发出100b写控制信号。由于信号的写入不需要时钟延迟,故此时数据从DATAIN口输入,经过寄存后从Dq存入SDRAM芯片里面,从而完成采集数据的存储。如图7所示是采用序列数写入时的modelsim的仿真图。图7数据的突发式写入时序图4结束语该图像采集卡系统是基于FPGA技术,软件上则采用verilogHDL实现。此图像采集卡完全适用于静态图像以及帧数不是很多的动态图像。经过逻辑分析仪中的采集分析得知,对于一般25帧/秒的图像采集要求,该图像采集系统具有很好的效果。本文作者创新点:本文是采用FPGA的图像采集技术,通过构造采样控器来实现图像信号隔行到逐行的转换,这样就避免了同时使用两个RAM来分别存储奇场信号和偶场信号。另外,与传统的RAM存储器相比,SDRAM存储器具有更高的读写速度。参考文献[1]夏宇闻.Verilog数字系统设计教程.北京航空航天大学出版社,2003。[2]孔祥刚,诸静,阳涛.SAA7113H在视频采集接口设计中的应用.电子技术,2003,12-1:26-28。[3]魏华,李荐民.CPLD在图像采集中的应用.计算机测量与控制,2002,10-11:765-770。[4]缪云青,李永刚.FPGA器件在嵌入式系统中的配置方式的探讨.微计算机信息,2006,22-11:161-162,229作者简介:郑千洪(1982-),男(汉族),四川省成都市人,西南交通大学光电研究所在读研究生,主要从事光电信息的检则及处理。

1 / 4
下载文档,编辑使用

©2015-2020 m.777doc.com 三七文档.

备案号:鲁ICP备2024069028号-1 客服联系 QQ:2149211541

×
保存成功