基于ARM9 的CMOS图像采集系统的设计.docx
- 文档编号:9823120
- 上传时间:2023-02-06
- 格式:DOCX
- 页数:63
- 大小:722.84KB
基于ARM9 的CMOS图像采集系统的设计.docx
《基于ARM9 的CMOS图像采集系统的设计.docx》由会员分享,可在线阅读,更多相关《基于ARM9 的CMOS图像采集系统的设计.docx(63页珍藏版)》请在冰豆网上搜索。
基于ARM9的CMOS图像采集系统的设计
基于ARM9的CMOS图像采集系统的设计
摘要
在当今,电子设备的功能不断强大,传统的图像采集的方式主要限制于拍照,而这也越来越不能满足人们要求,基于嵌入式的实时图像采集的方法因为其实时性,便携性,以及网络传输性受到广大用户的好评和欢迎,成为近年来的技术热点,不断受到人们的重视。
今天的ARM系列芯片价格相低廉,功能强大,其性价比的绝对优势使在以ARM9微处理器为核心的系统平台上实现图像采集系统的设计已经成为可能
本文从实际应用出发,采用32位ARM9微处理器S3C2440A作为CPU来控制其他功能模块,设计了基于ARM9的CMOS图像采集系统,主要功能模块有CPU模块、存储模块、以太网传输模块、图像传感器模块等,实现了图像的采集功能以及对数据的网络传输进行了设计。
与传统的“图像采集卡-PC-终端控制设备”模式的机器视觉系统相比,具有体积小、成本低、功耗低、实时性强、设计灵活等优点。
关键词:
CMOS;图像采集;S3C2440;以太网传输
Abstract
Nowadays,thefunctionsoftheElectronicequipmentsaregrowingmoreandmorepowerful.Thetraditionalwayofimagescollectionisonlylimitedtotakingpictures.Andthiscannotmeetmoreandmorepeople’srequirements.TheCMOSImageDataCollectionSystemBasedonARMbecauseoffeaturesofreal-time,portability,andnetworktransmissionattractstheuser'spraiseandwelcome,andbecomearecenthottechnology,gainingmuchmoreattentionsofpeople.Withthechip’spricesofARMisbecominglowerandlowerandthefunctionsofARMisbecomingmoreandmorepowerful.TheadvantagesofratiomaketheuseofARM9microprocessorasthecoresystemplatformtorealizeimageacquisitionsystemdesigncometrue.
Thisarticlefromtheactualapplicationperspective,usethe32bitARM9microprocessorS3C2440AasCPUtocontrolotherfunctionmodulesanddesignTheCMOSImageDataCollectionSystemBasedonARM.ThemainfunctionmoduleistheCPUmodule,memorymodule,Ethernettransmissionmodule,imagesensormoduleandsoon.Realizeimageacquisitionfunction.Andcomparethetraditional"imageacquisitioncard-PC-terminalcontrolequipment"modelofmachinesystem;ithasadvantagesofsmallsize,lowcost,lowpowerconsumption,strongreal-timeproperty,flexibledesign,etc.
KeyWords:
CMOS;ImageCollection;S3C2440A;EthernetTransition;
1绪论
根据有关科研机构的调查,人类信息的在传递时主要靠的媒介是图像和语言。
在人们所获得的信息中,视觉的信息占据了60%,听觉的信息占据了20%,其他的例如味觉,触觉加起来占据了20%。
因此,图像是我们在传递信息的所用到的重要媒体和手段。
图像采集系统是一种对现实中图像进行采集的系统,采集的图像主要涉及到人们生活,学习等各个方面,不仅如此在农业,制造业,电子加工业都有着广泛的应用。
系统实现的主要的功能是对图像进行实时的采集,存储,显示以及传输。
人们利用这种系统能够记录下现实中的图像,对图像进行存储便于以后的分析和使用,并且能够传输图像到网上使人们能够在网上分享大家采集来的图像,以及将图像传输给相关的机构进行分析和调研。
最近几十年的快速发展使嵌入式对图像的采集提供了强有力的技术支持,32位嵌入式RISC微处理器一直在嵌入式领域占据了领头羊的位置。
据统计,ARM系列的微处理器几乎已经深入到人们社会生活的各个领域。
基于ARM核所研发的的微控制器等一系列芯片不但占据了高端微控制器的市场的相当大的份额,同时也利用ARM微控制器的自身优势在逐渐向低端微控制器相关应用领域扩展,ARM微控制器的优点在于其低功耗和高性价比,并且利用自身的优势向传统的8位/16位微控制器提出了巨大的挑战。
目前已经有85%的无线通信设备采用了ARM微处理器以及相关的技术,随着不断的发展ARM以其高的性价比的优势,在该领域的地位也正日益巩固。
随着宽带技术的加强,采用ARM技术的ADSL芯片正在逐步获得与同类产品的竞争优势。
此外,ARM向着高速,高分辨率等方向不断发展使其在语音以及视频处理方面也得到了优化,使其对DSP的传统优势作出了严峻的挑战。
ARM科技在当下通用的数字机顶盒、数字语音播放器和游戏机中得到普遍的推广。
不仅如此在数码相机和打印机中有相当大的比例也都使用了ARM科技。
手机中的32位SIM卡也使用了ARM技术。
可以看到,ARM处理器正在逐渐代替传统的8/16位微处理器。
未来的ARM处理器,将占据相关领域的主要市场。
2课题研究的背景及意义
2.1课题研究的背景
从上个世纪70年代一直到现在我们所熟悉的单片机始终在8位机的档次上徘徊,由8位的单片机作为主要处理器的设计模式始终引领着应用的潮流。
当然在一段时期里16位单片机也曾掀起过波浪但是不久也销声匿迹了。
科技的发展使人们的需求也日益增长,人们对单片机功耗的高低,速度的快慢、存储能力的大小、通信能力的强弱、功能的多样性、开发设计的方便程度等不断提出更高、更加严格的要求,而随着ARM系列处理器的开发与设计,不仅弥补了8/16位处理器的不足而且还提供了8/16位处理器所没用的优势,并由此引领了新的应用的高潮的到来,不得不说ARM系列微处理器是近些年来发展十分快速的一种微处理器[1]。
便携式电子消费品以及智能设备是ARM系列32位处理器的一个非常重要的应用场所。
ARM微处理器的出现以及发展加快了嵌入式产品由原来的军事、工控领域向民用、消费领域的渗透。
以MP4、MP5、机顶盒、掌上电脑等产品为代表,便携式电子消费产品已经正式走入了普通人民群众的生活和学习。
不仅如此许多智能手机终端都是以ARM9或更高端的ARM芯片为核心处理器而设计的,装入uc/os、linux、WCE等嵌入式操作系统然后再配以相关的应用程序,从而实现了优雅的图形界面和各种独特的智能功能。
在当今,电子设备的功能不断强大,传统的图像采集的方式主要限制于拍照,而这也越来越不能满足人们要求,基于嵌入式的实时图像采集的方法因为其实时性,便携性,以及网络传输性受到广大用户的好评和欢迎,成为近年来的技术热点,不断受到人们的重视。
今天的ARM系列芯片价格相低廉,功能强大,其性价比的绝对优势使在以ARM9微处理器为核心的系统平台上实现图像采集系统的设计已经成为可能。
图像采集系统的的前提是需要合理的选择一个性价比高的图像采集芯片。
一个好的图像采集芯片会对图像采集系统后续的存储和传输提供便捷,特别是对图像后续的传输功能的实现有着不可比拟的优势。
当今主流的图像传感器主要可以分为两类:
CCD(ChargeCoupledDevice,电荷耦合器件)图像传感器以及COMS(ComplementaryMetalOxideSemiconductor补充金属氧化物半导体)图像传感器。
CCD一般输出带制式的模拟信号,需要经过视频解码器得到数字信号才能传入微处理器中,而CMOS图像传感器直接输出数字信号,可以直接与微处理器进行连接[2]。
不同的CMOS图像传感器有不同的性能,主要表现在图像分辨率大小不同、帧速率不同、曝光方式不同等,CMOS图像传感器可直接通过I2C来设置图像分辨率大小及曝光、增益等参数,而CCD图像传感器则需要对视频解码器进行设置来控制图像的曝光、增益等参数信息。
相对于CCD图像传感器,CMOS图像传感器具有低功耗、小体积、高速数据传输和方便控制等优点,因此,CMOS图像传感器更适用于嵌入式系统应用中。
2.2课题研究的意义
众所周知,从上世纪四十年代开始数字计算机的在各个国家各个领域都得到了非常迅猛的发展,随之而来的图像采集系统技术也开始萌芽发展。
到了20世纪五十年代中后期,传统的拍照类图像采集方式逐渐向更高级别的实时图像采集系统方面发展,随着嵌入式技术的不断发展采集的设备和仪器不断地趋于便携与智能,功能也不断地提高和加强。
截至目前,国内的图像采集系统技术已经得到了很大的发展,工业图像采集系统的功能不断加强,并且已经具有了一定的实时性和便携性,据统计具有便携性以及实时性图像采集功能的装置已经广泛普及了市场,市场占有率大约达到了80%。
目前,图像采集系统类产品的市场已具有一定的规模,但随着社会以及科技的发展,人民生活水平的提高,更得益于嵌入式技术的快速发展,智能设备的不断更新及销量的大幅上升,因此功能更加全面的图像采集系统,其销售潜力还有巨大的空间。
同时由于各大技术厂商之间的竞争越来激烈,因此图像采集系统的技术越来越受重视。
完整的数字图像处理系统大体上包括了对图像信息的采集、存储、传送、处理、输出、显示等几个方面。
而作为实现图像处理系统的基础,图像数据采集在整个图像书记处理系统中都具有重要的意义。
本文设计的图像采集系统的核心处理器采用的是三星ARM9处理器S3C2440A,本文详细的讲述了该系统的各个方面的设计包括硬件的设计以及图像传感器的选择与驱动实现的方法和步骤。
本文的思路和理念对嵌入式图像采集、处理系统的设计有一定的实际意义和参考价值。
此外,在本设计的基础上我们合理的配上一些应用软件,便可以较快的在摄像采集,监视控制,安全防卫,识别鉴定等各个领域得到相应的应用,具有广泛的应用前景。
3系统总体设计方案
3.1系统硬件方案设计
本文设计的方案是致力于实现图像的采集显示以及利用网络对图像数据进行传输,目前基于嵌入式的图像采集系统的方案主要有以下几种:
1)图像传感器+FPGA+DSP
2)USB摄像头+ARM
3)图像传感器+FPGA+ARM(无Camera接口)
4)图像传感器+ARM(有Camera接口)
方案l的图像处理速度快,但是由于缺乏扩展接口和功能单一,无法完成较复杂的应用。
方案2比较容易实现,但是整个系统体积比较大,稳定性和移动性都较差;方案3的应用比较普遍,但是使用FPGA器件进行时序控制和数据读取,增加了实现的复杂程度,也降低了平台的集成度。
方案4的集成度最高,通过ARM直接控制图像传感器增加了系统的可靠性和稳定性,同时提供丰富的扩展接口和外围设备,可以满足更高级的应用。
因此具有Camera接口的ARM9处理器以其较高的性价比,较低的功耗,较高的数据处理速度和丰富的扩展接口成为图像采集系统CPU的首选[3]。
根据以上的分析设计系统由五个模块组成:
处理器模块,存储模块,图像传感器模块,液晶显示模块,以太网传输模块。
系统总体设计方案如图3.1所示。
图3.1系统总体设计方案
(1)CPU模块由S3C2440A微处理器组成。
控制系统负责整个系统的运行控制,包括发送相关的命令字给采集系统、接收传回的图像数据以及把图像数据传给液晶屏显示和以太网传输系统。
另外,还包括对意外异常的处理、采样参数的设定、以太网参数的设定、液晶显示器相关参数的设定、存储模块参数的设定等。
(2)存储器模块主要NANDFLASH和SDRAM两部分组成。
其中NANDFLASH选用的是256M的K9F2G08U0B芯片,SDRAM选用的是两片64M的MT48LC16M16A2-75D芯片。
由于考虑到本设计的图像采集系统不需要将FLASH的数据经常的读取,以及成本和尺寸的要求,所以采用的是NANDFALSH作为程序和数据的存储空间,为了能够充分的使用32位CPU处理器的数据的处理能力系统采用两个SDRAM级联成32位存储系统作为程序的运行空间。
(3)图像传感器模块主要由CMOS图像传感芯片OV9650组成。
图像传感器模块主要是负责对图像信息的采集,为后面的图像显示与传输提供提供原始的数据。
有图像传感器采集的图像数据经过核心处理器的处理,然后在液晶屏上进行显示,在存储器单元中进行存储,并将其能够通过以太网向PC机上进行传输。
(4)以太网模块是以太网传输芯片DM9000以及外围电路组成以太网传输模块实现的主要功能是将采集到的图像通过以太网向上位机也就是PC机终端进行传输,以便进行后续处理和研究工作。
3.2系统软件方案设计
1)软件设计平台的选择
目前基于ARM平台的软件一般可以分为两种:
一种是基于嵌入式系统的软件设计;一种是基于裸机开发的软件设计。
选择哪一种平台的软件设计主要是基于设计实际情况的需要。
基于嵌入系统的软件方案设计的优势有:
●对实时任务有很强的支持能力,能完成多任务并且有较短的中断响应时间,从而使内部的代码和实时内核心的执行时间减少到最低限度。
●具有功能很强的存储区保护功能。
可扩展的处理器结构,以能最迅速地开展出满足应用的最高性能的嵌入式微处理器。
缺点有:
●系统运行的效率相对较低,稳定性较差,设计的方案较为复杂导致遇到程序的修改相对的复杂。
通用性不好,代码可移植性也受限,门槛较高。
基于裸机开发的软件设计方案的优势有:
●专用性好,可以按照需求充分的发挥硬件性能,程序的利用效率高。
●运行程序的稳定性较强,对程序的修改检测相对容易,在好的网络环境之中能够得到更好的效果。
缺点有:
●代码可移植性不好,基于裸机的开发,代码都是硬件相关的,开发费时费力,成本高。
由于本设计是在外部的环境相对的稳定的情况下进行的,对系统的界面没有较高的要求,为了提高系统的稳定性,以及效率,降低系统的功耗,降低开发的复杂性,选择了基于裸机的软件设计。
2)网络传输协议的选择
目前网络的数据传输有两种主要的传输协议TCP/IP协议和UDP协议,其中TCP提供IP环境下的数据可靠传输,它提供的服务包括数据流传送、可靠性、有效流控、全双工操作和多路复用。
通过面向连接、端到端和可靠的数据包发送。
而UDP则不为IP提供可靠性、流控或差错恢复功能。
但是在网络环境相对较好,对数据传输的速度要求相对相对较高的情况下,UDP具有TCP所望尘莫及的速度优势。
虽然TCP协议中植入了各种安全保障功能,但是在实际执行的过程中会占用大量的系统开销,无疑使速度受到严重的影响。
而UDP由于排除了信息可靠传递机制,将安全和排序等功能移交给上层应用来完成,极大降低了执行时间,使速度得到了保证。
由于本设计的应用场合主要是在网络环境相对较好的实验室,办公楼,销售中心等,而这些地方对图像传输的速度要求较高,基于这种考虑本设计在数据网络传输上决定应用UDP协议进行图像数据的传输。
4系统硬件电路设计
4.1最小系统设计
4.1.1处理器单元
1)处理器选择
ARM既可以认为是一个公司的名字,也可以认为是一类微处理器的通称,还可以认为是一种技术的名称。
1991年ARM公司成立于英国剑桥,是一家专门从事基于RISC技术芯片设计开发的知识产权供应商,本身不直接从事芯片生产。
全球各大半导体生产商从ARM公司购买其设计的ARM微处理器核,根据各自不同的应用领域,加入适当的外围电路,从而形成自己的ARM微处理器芯片进入市场[4]。
ARM微处理器具有体积小、低功耗、低成本、高性能的特点,它支持ARM(32位)/Thumb(16位)双指令集,大量使用寄存器完成数据操作,指令执行速度更快,支持各种实时操作系统。
ARM微处理器包括以下几个系列:
ARM7系列,ARM9系列,ARM9E系列,ARMl0E系列,Xscale系列和StrongARM系列等。
其中,ARM9系列微处理器具有高性能和低功耗的优势,主要应用于仪器仪表、安全系统、无线设备、数码相机、高端打印机等领域。
通过对系统的体积、集成度、功耗、性价比等因素的综合考虑,最终选取了Samsung公司的ARM9处理器S3C2440作为本系统的CPU。
S3C2440处理器为整个系统的处理控制的核心,负责整个系统协调以及运行,S3C2440的主要任务有:
负责与图像采集模块的通信以及采集图像、与显示系统通信将图像显示在液晶屏上,与以太网传输模块进行通信,使采集到的图像数据能够传给PC终端保存。
2)处理器原理
1.存储控制单元
S3C2440A具有强大的存储控制单元,为用户扩展外部存储器提供存储访问控
制功能。
S3C2440A重启后的存储空间映射如图图4.1所示[5]。
图4.1.S3C2440存储空间映射
如上图所示,S3C2440A内部寻址空间为1GB,分为8个不同的固定区域,称为Bank,每个bank大小为128MB。
其中bank0至bank5供ROM、SRAM使用,bank6、bank7供ROM、SRAM和SDRAM使用。
每个bank对应一个nGCS片选信号,可通过使能nGCS信号以决定哪个bank被访问。
本系统的内存使用SDRAM,选择地址从0X30000000开始的128MB空间(即bank6)作为内存的寻址空间,CPU的片选信号nGCS6与SDRAM的片选信号nCS相连接。
Bank0作为引导Bank(BootingROMBank),装载保存在ROM中的引导程序,Bank0的总线宽度由OM[1:
0]管脚的逻辑电平确定,如表4.1所示。
表4.1Bank0数据总线宽度配置表
OM1(OperationModel)OM0(OperationMode0)BootingROMDataWidth
00NandFlashMode
0116.bit
1032.bit
11TestMode
由于本系统的启动ROM选用了NandFlash,所以应当将OM[1:
0]管脚逻辑设置为00。
硬件实现的方法是将OM1和OM0两个管脚通过下拉电阻接地。
为了支持NandFlash启动,S3C2440A在Bank0中配备了一块4KB大小的内部SRAM缓存,称作“Steppingstone”。
在启动过程中装载NandFlash的前4KB引导代码,载完成后执行引导代码。
引导代码将会把NandFlash中的内容拷贝到SDRAM里面。
拷贝完成后主程序将会在SDRAM中执行。
在重启过程中,NandFlash控制器通过读取四个管脚(NCON,GPG[15:
13])的
态获得NandFlash的信息。
NandFlash存储器配置如表表4.2所示。
表4.2NandFlash存储器配置表
NCON
(NANDflash选择)GPG13(页容量)GP1G4(地址周期)GPG15(总线带宽)
0:
标准NAND0:
256字节0:
3个0:
8位
1:
512字节1:
4个
1:
高级NAND0:
1K字节0:
4个1:
16位
1:
2K字节1:
5个
本系统中NANDflash的页容量512字节,地址周期为4个,总线带宽8位,因此NCON、GPGl3、GPGl4、GPG15四个管脚逻辑设置分别为0、1、1、0。
硬件实现的方法为,逻辑“0”用下拉电阻接地,逻辑“l"用上拉电阻接3.3V。
2.CAMIF单元
S3C2440A的CAMIF(CameraInterface,摄像机接口)单元由七部分组成:
图形多路选择器(patternmux),捕获单元(capturingunit),预览缩放器(previewscaler),编码缩放器(codecscaler),预览DMA(previewDMA),编码DMA(codecDMA)、SFR(SpecialFunctionRegister,特殊功能寄存器)。
CAMIF支持ITU.RBT.601/656数字视频标准的8位YCbCr视频格式。
最大
输出尺寸为4096×4096像素。
图像传感器采集到的数据经过捕获单元处理分别送往两个图像缩放器:
预览缩放器和编码缩放器。
预览缩放器用于产生比图像更小的RGB格式的图像,如PIP(PictureInPicture);编码缩放器产生用于编码的图像,如YCbCr4:
2:
0或4:
2:
2,用于MPEG.4,H.263等格式的编码。
两个图像缩放器各连接一路DMA通道:
P.通道(预览通道)和C.通道(编码通道),两条通道分别连接到AHB总线上。
由于DMA方式可以通过系统总线直接将数据送往内存,而不过分依赖CPU,因此大大节省了系统资源,提高了数据的读取速度。
而且两路主DMA能够在运动环境下进行捕获图像的镜像和旋转,这些特性非常适合在移动手持设备中使用。
通过设置CAMIF的内部寄存器能够使视频同步信号和像素时钟信号的极性翻转,也可以单独关闭预览通道和通道。
CAMIF管脚与图像传感器的对应接口相连接,管脚的信号描述如表4.3所示。
表.4.3CMIF信号描述
名称I/O描述
CAMRESETO软件控制图像传感器重启或断电
CAMCLKOUTO提供给图像传感器的主时钟
CAMHREFI水平同步,由图像传感器提供
CAMVSYNCI帧同步,由图像传感器提供
CAMPCLKI像素时钟,由图像传感器提供
CAMDATA[7:
0]I像素数据,由图像传感器提供
4.1.2存储器系统设计
1)存储器选择
系统的存储空间按作用分为程序保存空间、程序运行空间。
程序保存空间是二进制代码的存储空间,它要求在系统掉电之后数据不丢失,本系统选用了Flash存储器;程序运行空间是二进制代码的执行空间,要求运行速度快,本系统选用的是SDRAM。
1.Flash存储器
Flash存储器通常分为NorFlash和NandFlash两种,具有非易失性,可反复擦写。
NorFlash通常容量较小,写入速度慢,但因其随机读取速度快,因此在嵌入式系统中,通常应用于存储程序代码。
NandFlash随机读取速度不及NorFlash,但是存储单元尺寸小,生产过程相对简单,可以达到很大的存储容量和较低的成本,而且写入和擦除的速度也很快。
由于本图像采集系统并不需要经常的读取Flash中的数据,又考虑到成本和尺寸的要求,所以采用NandFlash作为程序和数据存储空间。
这里选用三星公司的256M的K9F2G08U0B芯片[6]。
2.RAM(RandomAccessMemory,随机存取存储器)
RAM
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 基于ARM9 的CMOS图像采集系统的设计 基于 ARM9 CMOS 图像 采集 系统 设计