基于ARM9的CMOS图像采集系统的设计
1.Flash存储器
Flash存储器通常分为Nor Flash和Nand Flash两种,具有非易失性,可反复擦写。Nor Flash通常容量较小,写入速度慢,但因其随机读取速度快,因此在嵌入式系统中,通常应用于存储程序代码。Nand Flash随机读取速度不及Nor Flash,但是存储单元尺寸小,生产过程相对简单,可以达到很大的存储容量和较低的成本,而且写入和擦除的速度也很快。
由于本图像采集系统并不需要经常的读取Flash中的数据,又考虑到成本和尺寸的要求,所以采用Nand Flash作为程序和数据存储空间。这里选用三星公司的256M的K9F2G08U0B芯片[6]。
2.RAM(Random Access Memory,随机存取存储器)
RAM又分为SRAM(Static RAM,静态RAM)和DRAM(Dynamic RAM,动态RAM)两种,掉电后数据会丢失,但是随机存取速度远远高于FLASH存储器。SRAM的访问速度非常快,它存储一位信息需要6个MOS管,集成度低,功耗大;DRAM的存取速度没有SRAM快,存储一位信息只需要一个晶体管,集成 度高,但是需要周期性的刷新充电以保持信息不消失。由于DRAM更容易做出大容量的RAM,因此一般的嵌入式系统中,主存储器都是采用DRAM,而缓存多采用SRAM。SDRAM(Synchronous Dynamic RAM,同步动态RAM)是DRAM中的一种,与DRAM不同的是采用多Bank结构,在一个Bank进行预充电期间,另一个Bank可以马上被读取,这样大大提高了存取访问的速度。
为了充分发挥32位CPU的数据处理能力,系统应采用32位的SDRAM存储器系统。因此本系统选用两片16位SDRAM并联构建32位存储器系统,这里选用两片MT48LC16M16A2-75D芯片,存储容量为64M,可满足嵌入式操作系统及各种相对较复杂应用程序的运行要求[7]。
2) 存储器电路设计
存储器模块主要NAND FLASH和SDRAM两部分组成。其中NAND FLASH选用的是256M的K9F2G08U0B芯片,SDRAM选用的是两片64M的MT48LC16M16A2-75D芯片。 1.Nand Flash电路设计
K9F2G08U0B存储容量为256M×8位,8位I/O端口采用地址、数据和命令复用的方法,减少了管脚数,使接口电路非常简洁。该器件工作电压2.7V~3.6V,其电路连接图如图4.2所示。
–11–
基于ARM9的CMOS图像采集系统的设计
图4.2 NAND FLASH电路连接图
其中,I/00~F07连接至CPU的DATA[7:0],R/心(准备/忙)、nFRE(读使能)、nFCE(片选使能)、CLE(命令锁存使能)、ALE(地址锁存使能)、nFWE(写使能)这6个管脚分别与CPU对应的管脚相连;nFWP为写保护,接高电平允许擦除和写入,接低电平禁止擦除和写入。
2. SDRAM电路设计
MT48LC16M16A2-75D存储容量4Mb×16Bit×4 Banks,因此两片MT48LC16M16A2-75D并联 构建了32位的SDRAM存储器系统。一片MT48LC16M16A2-75D连接CPU数据总线的高16位DATA[31:16],另一片连接CPU数据总线低16位DATA[15:0]。MT48LC16M16A2-75D的地址总线A[l2:0]连接到CPU的地址总线ADDR[14:2];Bank选择地址BA0、BAl连接到CPU的ADDR24、ADDR25:系统时钟SCLK分别连接至CPU的SCLKO、SCLKl时钟线:数据输入/输出掩码信号L(U)DQM分别连接至CPU
–12–
基于ARM9的CMOS图像采集系统的设计
写使能nWBE[3:0]; nRAS行地址选通信号、nCAS列地址选通信号nWE允许写入信号 分别连接至CPU对应管脚。具体连接如图图4.3 所示。
图4.3 SDRAM电路连接示意图
在本次设计的硬件电路中SDRAM:MT48LC16M16A2-75D接到了BANK6,起始地址是Ox30000000,结束地址是Ox33FFFFFF大小为64M具有32位的接口的宽度。
4.1.3电源电路设计
本系统的电源模块可以分为总电源和各模块供电电源两部分:
(1)总电源是从外部稳压电源输入5V电源,对整个电路板进行供电。5V直流电源可以直接对连接在LCD、USB Host等接口上的设备供电,也能够通过LDO (LowDropout Regulator,低压降线性稳压器)芯片转换成较低的电压对其他模块供电。
本系统采用的LDO为LMlll7系列产品,能够在800mA的负载电流下产生1.2V以上的的低压降,除了可以输出1.8V,2.5V,2.85V,3.3V和5V五个固定电压之外,还能使用具有校正电压功能的LMlll7-ADJ,输出从1.25V到13.8V的电压。LMlll7具有限流和过热保护的功能,输出电压保证±l%的精度。
(2)各模块供电电源主要用于对处理器和存储器,周边设备、图像传感器提供所需的工作电压。
处理器和存储器采取单独供电的方式,以保证其稳定运行。SDRAM和FLASH存储器的工作电压是3.3V;处理器S3C2440A需要两种工作电压:3.3V和1.3V。
–13–
基于ARM9的CMOS图像采集系统的设计
JTAG、UART、复位电路等周边设备的工作电压为:3.3V,图像传感器OV9650所需工作电压有三组:3.3V、2.8V、1.8V。
4.2图像采集模块设计
4.2.1 图像传感器选择
目前图像采集常用的两种图像传感器为CCD与CMOS图像传感器。CCD图像传感器中每一行中的每一个像素的电荷数据都会依次传送到下一个像素中,由最底端部分输出。再经由传感器边缘的放大器进行放大输出;而在CMOS传感器中,每个像素都会邻接一个放大器以及A/D转换电路,用类似内存的方式将数据输出[8]
之所以会造成这样的差异,原因在于:CCD的特殊的工艺可以使得数据在传输的时候不会产生失真,因此各个像素的数据可以最后汇聚到边缘再进行发大处理;而CMOS工艺传感器中数据在传输较长的时间会产生噪声,正因为这个原因,我们必须对数据进行先放大,然后整合各个像素的数据进行输出。
由于在数据传送的方法的不同使得CCD和CMOS传感器在一些效能与应用上也有诸多差异,这些差异包含了:
灵敏度、噪声、分辨率:因为CMOS传感器的每个像素有四个晶体管和一个含有发达器与A/D转换电路的感光的二极管构成,使每个像素的感光区域远小于像素本身的表面积,在尺寸大小相同的情况下,CMOS传感器的分辨率以及灵敏度要低于CCD传感器。而且,CMOS传感器中每个发大器的结果很难保持一致,与只有一个放大器的CCD传感器相比,噪声就会增加许多,影响了的图像质量。
成本:CMOS传感器采用的是一般半导体电路最常用的CMOS工艺,可以轻易的将攒干起、模数转换器、信号处理器、定时发生器等周边电路集成到芯片中,节省了外围芯片的成本;而CCD采用的是电荷传递的方式传送数据,只要其中有一个像素不能运行,就会导致一整排的数据不能传送,因此CCD传感器的成品率较低。成本高于CMOS传感器。
功耗:CMOS传感器采用主动方式采集数据,感光二极管所产生的电荷会直接由晶体管放大输出;而CCD传感器在电路设计上较高的电压和更精密的电源线路,使得设计难度增加,而且较高驱动电压使其功耗远高于CMOS传感器。
综上所述,虽然CCD传感器在灵敏度,分辨率,噪声控制等方面都由于CMOS传感器,但是CMOS传感器以其集成度高。体积小、功耗低、编程方便、易于控制、成本较低等优点,越来越得到市场的认可,而且正在向着低噪声和高灵敏度等方向发展,因此CMOS传感器是目前低像素图像采集系统的最佳方案。
–14–
基于ARM9的CMOS图像采集系统的设计
全球图像传感器生产厂商中,Micron和Omnivision 两家在市场上占前两位这两家厂商生产的130万CMOS像素图像传感器的型号分别为MT9M112和OV9650[9]。其关键规格参数如表4.4所示。
表4.4触摸屏内部结构示意图
号 数 图像阵列大小 1280*1024 1300*1028 参 图像尺寸 3.6毫米*2.9毫米 4.13毫米*3.28毫米 供电
核心 1.8V 1.8V I/O接口 2.5V-2.8V 1.7V-3.1V 模拟 2.5V-3.1V 2.5V-3.1V
像素尺寸 2.8微米*2.8微米 3.18微米*3.28微米 最大帧速率 SXGA 15fps 15fps
VGA 30fp 30fps 信噪比 44dB 40dB 动态范围 68dB 62dB 灵敏度 1V/lux-sec 0.9V/ lux-sec 功耗峰值 160mW 50mW
型 MT9M112 OV9650 由上表可以看出,OV9650的信噪比、动态范围和灵敏度稍逊于MT9M112,但是采集到图像的效果也不会有明显的差别。而OV9650的功耗远远低于MT9M112,所以芯片耗电较少,发热量较低。由于Omnivision公司生产的图像传感器在中国占据一半以上的市场份额,OV9650在国内的货源充足,价格较低,技术支持也相对较好。考虑到设备的性能和功耗以及批量生产时货源和成本等因素,本系统的CMOS图像传感器芯片选用了OV9650。
4.2.2 图像传感器电路设计
OV9650与处理器的借口包括三部分:SCCB(Serial Camera Control Bus,串行摄像机控制总线)借口、数据输出借口和控制接口。
1)SCCB接口[10]
–15–