导言
在低速的数据搜集体系中,往往选用单片机或许 DSP进行操控;而关于图画搜集这种高速数据搜集的场合,这种计划就不能满足需求。因而这种计划极大浪费了单片机或DSP的端口资源且灵活性差;若改用串口方法搜集数据,则一方面下降了数据搜集的速度,另一方面极大地消耗CPU的资源。本体系选用FPGA作为数据搜集的主控单元,悉数操控逻辑由硬件完结,速度快、本钱低、灵活性强。为了添加缓冲功用,体系在FPGA外扩展了256Mb的RAM,不只增大了缓冲区容量,而且极大地下降了读写频率,有效地减轻了上位机CPU的担负。在图画数据接口中,比较常见的是VGA、PCI—Express,而这些接口扩展性差、本钱高。本体系选用高速的USB接口作为与上位机通讯的端口,速度快、易装置、灵活性强。
1 体系框图
体系框图如图1所示。FPGA操控单元选用 A1tera公司Cyclone II系列的EP2C5F256C6,首要由4个部分组成——主控模块、CMOS传感器接口、RAM操控器以及EZ—USB接口操控器。传感器接口担任完结 SCCB时序操控,RAM操控器用于完结RAM读写与改写操作的时序,USB接口模块完结主控模块与EZ—USB之间的数据读写;而主控模块担任对从EZ —USB部分接纳过来的上位机指令进行解析,解析完指令后发生相应的信号操控各个对应模块,如CMOS传感器传输的图画格式、RAM的读写方法、突发长度等。
2 OV7620模块规划
图画传感器选用OV7620,接口图如图2所示。该传感器功用强大,供给多种数据格式的输出,主动消除白噪声,白平衡、颜色饱和度、色彩操控、窗口巨细等均可经过内部的SCCB操控线进行设置。OV7620归于CMOS五颜六色图画传感器。它支撑接连和隔行两种扫描方法,VGA与QVGA两种图画格式;最高像素为664×492,帧速率为30fps;数据格式包含YUV、YCrCb、RGB三种。0V7620支撑SCCB设置形式和主动加载默认设置形式,其挑选由SCCB操控。本体系只需求支撑SCCB形式,因而在规划的时分将SBB接地。上电后FP—GA经过SCCB总线对OV7620进行设置,体系也可接受上位机发过来指令,设置其作业形式。SCCB总线时序类似于I2C总线时序,SIO一O相当于SDA,SIO一1相当于SCL。OV7620作业于从形式,在写寄存器的过程中先发送OV7620的ID地址,然后发送写数据的意图寄存器地址,最终发送要写入的数据。
OV7620功用寄存器的地址为0x00~0x7C,经过设置相应的寄存器,能够使它作业于不同的形式。例如,设置OV7620为接连扫描、RGB原始数据16位输出方法,需求设置寄存器0x12、Oxl3、Ox20、Ox28别离为OX2D、0x01、Ox02、0x20。别的,图画输出的要害问题是帧同步,VO7620传感器中VSYNc、HSYNC、HREF、PCLK别离表明笔直同步、水平同步、参阅信号和像素输出同步,能够经过它们之间的合作运用,定位出每帧输出图画的开始位和结束位。
3 RAM时序操控模块
RAM操控器接口首要用于完结RAM的根本操作时序,如充电(改写)时序、形式设置时序、读写时序等。读写指令由主控模块宣布,由操控器详细履行。体系选用Hy—nix公司的HY57V561620F(L)T(P),可完结256 Mb的大容量数据存储。
时序操控器由一个有限状况机(FSM)完结,其状况转换图如图3所示。加电复位200μs后,对RAM的一切块进行预充电,充电操作的引脚电平如表1所列。充电完结后经tRP改写一切块,推迟tRFC后进入形式设置状况。在形式设置状况中,需求对RAS推迟、突发长度等进行设置,推迟tMRD后进入闲暇状况,等候主控单元的读写指令。在闲暇状况中,每隔64 ms需求对RAM中一切行改写。在本规划中守时改写模块规划成一个计数器,计数脉冲选自操控器自身的时钟。因为RAM要求两次改写的最大时刻距离不超越 64 ms,假定体系的时钟频率为1O0MHz,则时钟周期约为0.01μs,而且要在64 ms内要完结悉数8 192行的改写,所以最大计数应该为781次(64 ms/8192/0.01μs)。体系选用700次的计数脉冲发生改写恳求。
RAM操控器的读写地址与读写操控信号均由主控单元发生,主控单元结构框图如图4所示。PLL用于发生RAM操控器和缓冲区的时钟(体系规划为100 MHz);CMD指令解析模块完结对上位机发送过来的指令解析并发生相应的操控信号,如CMOS传感器操控、RAM突发长度操控等。为了下降读写RAM的频率,体系规划了一个8×16位的FIFO。当8个像素的数据存入FIFO后,FIFO向RAM操控器发送写恳求(W_req);与此同时,写地址发生器发生写地址,由RAM操控器发生写数据的时序。读写地址发生器是一个递加的计数器,每次的读写地址是前次的地址加BL(突发长度)。因为PCLK的最高频率可达9.2 MHz(640×480×30),而RAM的时钟频率是100 MHz,每次写入一个像素的数据需求5个时钟周期(考虑RAS推迟),这样写操作消耗整个时钟周期的50%;参加FIF0后,读写的突发长度均是8,可下降消耗的时钟周期至10%左右。
4 EZ—USB传输操控器
CY7C68013是Cypress公司的EZ—USB FX2系列芯片,引脚衔接图如图5所示。该系列芯片集成了USB2.O收发器、串行接口引擎(SIE)、带8.5 KB片上RAM的增强型8501、16 KB的RAM、4 KB的FIFO存储器、I/O口、数据总线、地址总线和通用可编程接口(GPIF);共有3种接口形式——端口形式、隶属FIFO接口形式和GPIF接口形式。在端口形式下,一切I/O引脚都可作为805l的通用I/O口,作为最根本的数据传输形式,其数据传输首要由固件程序完结,需求CPU的参加,因而数据传输速率比较低。在隶属FIFO接口形式下,外部逻辑或外部处理器能够直接与FX2端点FIFO相连。GPIF接口形式运用PORTB和PORTD构成通向4个FX2端点FIF0(EP2、EP4、EP6和EP8)的16位数据接口。GPIF作为内部的主操控器与FIFO直接相连,并发生用户可编程的操控信号与外部接口进行通讯。后两种形式数据的传输经过履行USB自身的协议来完结,微处理器不参加数据传输,从而使数据的传输速率大大地进步。
本计划选用从FIFO方法,由FPGA供给读写时钟,EZ—USB的CPU不参加数据传输。其间端点FIFO相当于FPGA的外部RAM,数据的读写别离由读写操控器完结。假如数据从EZ_USB读入到FPGA中,首先要检测CON操控线的状况,若有数据要读,分配FIFOADR=00,使FIFO指针指向输出端点,使能SLOE使之数据输出,然后采样数据线上的数据,读得的数据送入指令解析模块解析;假如是数据从FPGA写入到EZ_USB中,则设置 FIFOADR使之指向输入端点,拉低SLWR,将内部数据总线接到外部数据总线上,这样就完结了一次数据的写入。
除上述规划外还需求对EZ_USB模块自身进行设置,这部分归于固件开发部分。Cypress公司为固件开发供给了一个固件库和固件结构,都是在集成开发环境下开发的,固件库供给了一些常量、数据结构和函数来简化用户对芯片的运用。将代码在Keil C51环境中进行编译;编译经往后,将固件代码下载到单片机中。这部分首要完结相关寄存器的设置和波形文件的编写。
结语
经过以上规划很好地处理了高速数据在采样、传输过程中的瓶颈,并以很短的时延真实完结了高速图画数据的搜集。因为其低本钱、易装置的特性,具有宽广的市场前景,能够运用于电话会议、长途医疗和长途教学等需求高清图画传输的范畴。本规划的立异点在于,它习惯了不同的图画数据的运用需求,完结了多种速率的读写形式,能够是实时的突发长度读写和高速的全页读写。
责任编辑:gt