基于FPGA和ARM的圖像采集傳輸系統
引言
圖像處理技術的快速發展,使得圖像采集處理系統在提高農業生產自動化程度中的應用越來越廣泛。目前的圖像采集系統有的基于CCD攝像機、圖像采集卡和計算機,有的基于CCD攝像機、解碼器、FPGA和DSP,而有的基于CMOS圖像傳感器芯片、FPGA和DSP,它們在實時性,靈活性,可維護性方面各有優缺點。而在農業生產中,以基于CCD攝像機、圖像采集卡和計算機的系統居多。本文結合實際系統中的前端圖像處理和圖像數據傳輸需要.充分利用ARM的靈活性和FPGA的并行性特點,設計了一種基于ARM+FPGA的圖像快速采集傳輸系統。所選的ARM (Ad-vanced RISC Machines)體系結構是32位嵌入式RISC微處理器結構,該微處理器擁有豐富的指令集且編程靈活。而FPGA(Field ProgrammableGate Array)則在速度和并行運算方面有很大優勢,適合圖像處理的實時性要求。本文選用Intel公司的Xcale PXA255和Xilinx公司的Spartan-3XC3S1000來實現本系統的設計。
1 系統結構設計
本系統的結構框圖如圖1所示。圖中,圖像傳感器模塊負責圖像采集,FPGA用來控制CMOS圖像傳感器芯片,ARM負責圖像數據的交換、以太網芯片的控制及UDP/IP協議的實現,以太網模塊主要實現以太網數據傳輸,SDRAM用于存儲圖像數據,FLASH為程序存儲器。系統工作時,先由FPGA將CMOS傳感器采集的數據存儲到雙口SRAM,再由ARM從FPGA的雙口SRAM中讀取數據并存儲到SDRAM,存滿一幀圖像數據后,ARM便通過以太網芯片將數據發送給上位機。

2 系統硬件設計
2.1 CMOS圖像傳感器模塊
本系統采用OV9650作為圖像采集傳感器。OV9650是Omni Vision公司的彩色CMOS圖像傳感器,可支持SXVGA,VGA,QVGA,QQVGA,CIF,QCIF,QQCIF模式和SCCB接口,并具有自動曝光控制、自動增益控制、自動白平衡、自動帶通濾波、自動黑級校準等功能。OV9650的最大幀速率在VGA格式時為30 fps,在SXVGA格式時為15 fps。本系統采用VGA格式。
2.2 FPGA模塊
FPGA主要用于圖像傳感器的控制、圖像數據的緩存及外圍芯片時序的產生。考慮到圖像處理算法的實現需要,本系統選用了Xilinx公司的XC3S1000,它屬于SPARTAN-3系列,容量為100萬門。在本設計中,FPGA通常運行于80 MHz。XC3S1000與OV9650的接口電路示意圖如圖2所示。FPGA的內部結構包括CMOS控制單元、SC-CB接口單元、雙口RAM單元、FIFO單元等。其中CMOS控制單元又包括幀同步模塊、場同步模塊、像素時鐘模塊等。

2.3 ARM處理器模塊
本系統的ARM處理器選用PXA255,用于實現圖像數據交換和以太網數據傳輸等功能。PXA255是Intel公司推出的基于第五代ARM RISC體系結構ARMV5TE的微處理器。CPU的運行頻率最高為400 MHz,有32 KB指令Cache,32 KB數據Cache,2 KB微數Cache,并帶有豐富的串行外設接口,并可支持各種存儲器芯片。本系統采用兩片SDRAM和兩片FLASH存儲器,其中SDRAM用于圖像數據暫存,本系統選用SAMSUNG公司的K4S561632C-TC75,容量為32 MB。而FLASH程序存儲器則選用Intel公司的E28F128J3A-150來作為NOR FLASH,容量為16 MB。
2.4 以太網傳輸模塊
本系統的以太網芯片選用LAN91C113。這是SMSC公司推出的快速以太網10/100 Mbps控制器,支持多種嵌入式處理器主機接口。LAN91C1B內部有8 KB的FIFO,可用于接收和發送數據的存儲。此外,LAN91C113芯片還集成了CSMA/CD協議的MAC(媒體訪問控制層)和PHY(物理層),IEEE802.3/802.3u-100BASE-TX/10Base-T規范。本系統中,LAN91C113的串行EEPROM接口與AT93C46相連。PXA255訪問LAN91C113采用異步靜態存儲器方式,LAN91C113的地址使能信號AEN與PXA255的靜態芯片片選四相連。PXA255與LAN91C113接口示意圖如圖3所示。

3 系統主要模塊的工作原理及實現
3.1 FPGA圖像采集的實現
OV9650的數據輸出采用Bayer原始數據輸出格式,每個象素同時只輸出一種顏色。奇數掃描行輸出RGRG…,偶數掃描行輸出GBGB…。FPGA負責圖像傳感器數據的采集。
上電后,系統首先對CMOS圖像采集芯片進行初始化,以確定其工作模式。這些參數受OV9650內部相應寄存器值的控制。FPGA通過控制SCCB總線來完成參數的配置。
系統配置完畢后,便可進行圖像數據的采集。圖4和圖5是數據采集與輸出的時序圖。其中VSYNC是場同步信號。HREF是水平同步信號。PCLK是象素數據輸出同步信號。HREF為高時即可開始有效數據采集,而PCLK下降沿的到來則表明數據的產生,PCLK每出現一個下降沿,系統便傳輸一位數據。在HREF為高電平期間,系統共可傳輸640位數據。在一幀圖像中,即VSYNC為低電平期間,HREF會出現480次高電平。而下一個VSYNC信號上升沿的到來則表明分辨率640
評論