基于FPGA的高速圖像采集系統(tǒng)設(shè)計(jì)
在低速的數(shù)據(jù)采集系統(tǒng)中,往往采用單片機(jī)或者DSP進(jìn)行控制;而對(duì)于圖像采集這種高速數(shù)據(jù)采集的場(chǎng)合,這種方案就不能滿足需要。因此這種方案極大浪費(fèi)了單片機(jī)或DSP的端口資源且靈活性差;若改用串口方式收集數(shù)據(jù),則一方面降低了數(shù)據(jù)采集的速度,另一方面極大地耗費(fèi)CPU的資源。本系統(tǒng)采用FPGA作為數(shù)據(jù)采集的主控單元,全部控制邏輯由硬件完成,速度快、成本低、靈活性強(qiáng)。為了增加緩沖功能,系統(tǒng)在FPGA外擴(kuò)展了256Mb的RAM,不僅增大了緩沖區(qū)容量,而且極大地降低了讀寫頻率,有效地減輕了上位機(jī)CPU的負(fù)擔(dān)。在圖像數(shù)據(jù)接口中,比較常見的是VGA、PCI―Express,而這些接口擴(kuò)展性差、成本高。本系統(tǒng)采用高速的USB接口作為與上位機(jī)通信的端口,速度快、易安裝、靈活性強(qiáng)。
1 系統(tǒng)框圖
系統(tǒng)框圖如圖1所示。FPGA控制單元采用A1tera公司Cyclone II系列的EP2C5F256C6,主要由4個(gè)部分組成――主控模塊、CMOS傳感器接口、RAM控制器以及EZ―USB接口控制器。傳感器接口負(fù)責(zé)完成SCCB時(shí)序控制,RAM控制器用于實(shí)現(xiàn)RAM讀寫與刷新操作的時(shí)序,USB接口模塊完成主控模塊與EZ―USB之間的數(shù)據(jù)讀寫;而主控模塊負(fù)責(zé)對(duì)從EZ―USB部分接收過(guò)來(lái)的上位機(jī)命令進(jìn)行解析,解析完命令后產(chǎn)生相應(yīng)的信號(hào)控制各個(gè)對(duì)應(yīng)模塊,如CMOS傳感器傳輸?shù)膱D像格式、RAM的讀寫方式、突發(fā)長(zhǎng)度等。
2 OV7620模塊設(shè)計(jì)
圖像傳感器采用OV7620,接口圖如圖2所示。該傳感器功能強(qiáng)大,提供多種數(shù)據(jù)格式的輸出,自動(dòng)消除白噪聲,白平衡、色彩飽和度、色調(diào)控制、窗口大小等均可通過(guò)內(nèi)部的SCCB控制線進(jìn)行設(shè)置。OV7620屬于CMOS彩色圖像傳感器。它支持連續(xù)和隔行兩種掃描方式,VGA與QVGA兩種圖像格式;最高像素為664×492,幀速率為30fps;數(shù)據(jù)格式包括YUV、YCrCb、RGB三種。0V7620支持SCCB設(shè)置模式和自動(dòng)加載默認(rèn)設(shè)置模式,其選擇由SCCB控制。本系統(tǒng)只需要支持SCCB模式,因此在設(shè)計(jì)的時(shí)候?qū)BB接地。上電后FP―GA通過(guò)SCCB總線對(duì)OV7620進(jìn)行設(shè)置,系統(tǒng)也可接受上位機(jī)發(fā)過(guò)來(lái)命令,設(shè)置其工作模式。SCCB總線時(shí)序類似于I2C總線時(shí)序,SIO一O相當(dāng)于SDA,SIO一1相當(dāng)于SCL。OV7620工作于從模式,在寫寄存器的過(guò)程中先發(fā)送OV7620的ID地址,然后發(fā)送寫數(shù)據(jù)的目的寄存器地址,最后發(fā)送要寫入的數(shù)據(jù)。
OV7620功能寄存器的地址為0x00~0x7C,通過(guò)設(shè)置相應(yīng)的寄存器,可以使它工作于不同的模式。例如,設(shè)置OV7620為連續(xù)掃描、RGB原始數(shù)據(jù)16位輸出方式,需要設(shè)置寄存器0x12、Oxl3、Ox20、Ox28分別為OX2D、0x01、Ox02、0x20。另外,圖像輸出的關(guān)鍵問(wèn)題是幀同步,VO7620傳感器中VSYNc、HSYNC、HREF、PCLK分別表示垂直同步、水平同步、參考信號(hào)和像素輸出同步,可以通過(guò)它們之間的配合使用,定位出每幀輸出圖像的起始位和結(jié)束位。
評(píng)論