高 策 ,李保權(quán) ,李海濤
(1.中國(guó)科學(xué)院國(guó)家空間科學(xué)中心北京100190;2.中國(guó)科學(xué)院大學(xué)北京100049;3.中國(guó)科學(xué)院復(fù)雜航天系統(tǒng)電子信息技術(shù)重點(diǎn)實(shí)驗(yàn)室,北京100049)
極弱光成像有著廣泛的應(yīng)用需求,包括夜視、偵查、科學(xué)應(yīng)用等等[1-6]。諸多領(lǐng)域的需求驅(qū)動(dòng),正逐步推進(jìn)極弱光成像傳感器產(chǎn)品的升級(jí)換代。近年來,隨著制造工藝水平的提升,低噪聲、高性能、背照的sCMOS已經(jīng)市場(chǎng)化,這為研制高靈敏、高分辨的極弱光成像探測(cè)器EBCMOS奠定了很好的技術(shù)基礎(chǔ)。
針對(duì)國(guó)內(nèi)EBCMOS的開發(fā)需要,本論文選用了一款國(guó)內(nèi)生產(chǎn)的、能夠滿足EBCMOS應(yīng)用需求的sCMOS器件,其型號(hào)為GSENSE400BSI。并對(duì)該器件開展了相機(jī)驅(qū)動(dòng)電路的硬件設(shè)計(jì)和軟件設(shè)計(jì)。
GSENSE400BSI是為滿足科研、高端工業(yè)應(yīng)用而設(shè)計(jì)的科學(xué)級(jí)sCMOS圖像傳感器,分辨率為2 048(H)x2 048(V),顏色為黑白色,并采用片上12位的列并行ADC。根據(jù)傳感器的性能指標(biāo),可以知道傳感器的最大幀率為48 fps,每一個(gè)像素所占位數(shù)為12 bit,而實(shí)時(shí)的圖像數(shù)據(jù)傳輸速率要求達(dá)到2 048x2 048 x48fpsx12bit=2.4 Gbits/s。傳感器通過8路LVDS(Low-Voltage Differential Signaling低電壓差分信號(hào))向外傳輸圖像數(shù)據(jù),每路LVDS傳輸?shù)臄?shù)據(jù)速度300 Mbps。
這種情況下,傳統(tǒng)圖像采集系統(tǒng)無法滿足采集要求[7-10]。因而,需要突破傳統(tǒng)技術(shù),設(shè)計(jì)一種新型傳感器驅(qū)動(dòng)和圖像采集系統(tǒng)。
而基于強(qiáng)大的處理能力的FPGA控制的外圍電路、DDR2緩存、USB3.0數(shù)據(jù)傳輸?shù)母咚贁?shù)字圖像采集系統(tǒng)具有可靠性高、數(shù)據(jù)不丟失、抗干擾性強(qiáng)、便于數(shù)據(jù)傳輸和處理等優(yōu)點(diǎn),滿足了本設(shè)計(jì)的要求。
如圖1所示,圖像采集系統(tǒng)由Gsense400圖像傳感器、FPGA控制處理模塊、DDR2-SDRAM、USB3.0協(xié)議控制器、電源電路等幾部分組成。
本圖像傳感器的工作流程是:FPGA作為主處理模塊,通過SPI通信向圖像傳感器發(fā)送寄存器配置指令,配置完成后,發(fā)送控制信號(hào)(Control)和行(ROW)解碼信號(hào)對(duì)傳感器進(jìn)行啟動(dòng)和模式配置。圖像傳感器在FPGA的控制下采集圖像,并通過低電壓差分信號(hào)(LVDS)輸出圖像數(shù)據(jù),F(xiàn)PGA通過內(nèi)部的串并轉(zhuǎn)換器,將串行圖像數(shù)據(jù)轉(zhuǎn)換為并行數(shù)據(jù),存入DDR2中,然后把DDR2中所有數(shù)據(jù)讀出,經(jīng)過USB3.0控制模塊把并行數(shù)據(jù)轉(zhuǎn)化為差分信號(hào),傳送給電腦。
圖1 GSENSE400的圖像傳感器硬件設(shè)計(jì)結(jié)構(gòu)圖
FPGA作為系統(tǒng)以及圖像采集處理板卡的核心器件,外圍器件的電路和功能已經(jīng)得到盡可能的簡(jiǎn)化,許多外圍的功能器件的接口均由FPGA來實(shí)現(xiàn)[11-14]。如圖2所示,整個(gè)系統(tǒng)中僅僅需要核心處理器FPGA以及FPGA配置模塊、DDR2-SDRAM、USB3.0接口模塊等4個(gè)重要部分組成,整體上提高了電路的穩(wěn)定性,而且其先進(jìn)的開發(fā)工具使整個(gè)系統(tǒng)的設(shè)計(jì)調(diào)試周期大大縮短。
2.1.1 FPGA選型
FPGA要實(shí)現(xiàn)與Gsense400的通信和數(shù)據(jù)的傳輸以及對(duì)DDR2芯片和USB3.0芯片的控制,以及滿足電路設(shè)計(jì)中資源引腳數(shù)的要求,在PCB布線過程中還要考慮到與外部DDR2芯片、USB3.0芯片連接的便攜性,同時(shí)滿足調(diào)試過程中所需邏輯單元的數(shù)量,因而選擇了具有大量引腳數(shù)和邏輯單元個(gè)數(shù)的FPGA芯片XC6SLX150-2FGG900C。
2.1.2 存儲(chǔ)器選型
由于驅(qū)動(dòng)系統(tǒng)需要大數(shù)據(jù)量的圖像采集和傳輸,綜合PCB布板空間、內(nèi)存容量和傳輸速度等因素,選擇了Micron公司的DDR2芯片MT47H64M16-25E作為大容量外部存儲(chǔ),它具有1 Gb的運(yùn)行內(nèi)存,最大數(shù)據(jù)速率可達(dá)800 Mbit/s,滿足了相機(jī)驅(qū)動(dòng)電路設(shè)計(jì)的需求。
2.1.3 USB3.0傳輸芯片選型
而根據(jù)高速數(shù)據(jù)傳輸電路的要求,USB3.0芯片采用了賽普拉斯(CYPRESS)公司的CYUSB3014芯片,此芯片具有高度集成的靈活性,符合最新的USB3.0標(biāo)準(zhǔn),傳輸速率最大可達(dá)500 MB/s,滿足了圖像傳感器數(shù)據(jù)傳輸?shù)男枨骩15]。在芯片內(nèi)部集成了一個(gè)32位的ARM926EJ處理器內(nèi)核,核心工作頻率是200 MHz。并且它具有一個(gè)高性能、高靈活度、可進(jìn)行完全配置的并行通用接口GPIF II,能夠配置為8位、16位、32位數(shù)據(jù)傳輸任何一種。
圖2 主控板硬件電路框圖
2.1.4 主板供電電源設(shè)計(jì)
主板供電電壓為5 V,為了讓主板正常工作,需要3.3 V、2.5 V、1.8 V、1.2 V 4路電源和較大的輸入電流。因而四路電源選用了DCDC穩(wěn)壓芯片MP2359,它具有效率高,不發(fā)熱的特點(diǎn),最大電流輸出為1.2 A,提高了主板電源的工作效率,電容和電感的使用,降低了紋波,并保證了電源供電的穩(wěn)定性。電路如下圖3所示,根據(jù)所需電壓可匹配R1和R2的大小。
圖3 MP2359電平配置電路
主控板所用的FPGA、USB3.0芯片CYUSB3014、DDR2芯片MT47H64M16HR均為FBGA封裝結(jié)構(gòu),為了方便每個(gè)芯片I/O信號(hào)的引出,本設(shè)計(jì)的PCB板層數(shù)為8層,并且設(shè)計(jì)本身需要做高速的數(shù)據(jù)傳輸,為了保證LVDS信號(hào)、DDR2的數(shù)據(jù)信號(hào)、USB3.0的數(shù)據(jù)信號(hào)的傳輸完整性,本設(shè)計(jì)對(duì)LVDS信號(hào)差分走線,對(duì)DDR2和CYUSB3014數(shù)據(jù)線和地址線做等長(zhǎng)蛇形走線。
2.2.1 Gsense400BSI外圍電路設(shè)計(jì)
傳感器采用電子卷簾式快門,外部供電電壓分別為3.3 V和1.8 V,并通過SPI通信對(duì)傳感器的掃描方向和列級(jí)的PGA(Programmable Gain Amplifier可編程增益放大器)進(jìn)行設(shè)置;它具有片上12位列并行ADC功能,從而需要12路的驅(qū)動(dòng)信號(hào)來驅(qū)動(dòng)像素;它有8路LVDS輸出,每路傳輸相鄰的256列像素;它對(duì)于時(shí)序有著嚴(yán)格的要求,并且需要25 MHz的外部時(shí)鐘信號(hào)作為主時(shí)鐘驅(qū)動(dòng)傳感器的運(yùn)行。
如圖4所示,電路由25 MHz時(shí)鐘輸入、1路LVDS輸入時(shí)鐘、1路LVDS輸出時(shí)鐘、8路LVDS數(shù)據(jù)、SPI通信、12路像素驅(qū)動(dòng)行解碼信號(hào)和19路編碼信號(hào)組成。
2.2.2 傳感器板供電電源設(shè)計(jì)
傳感器板輸入電壓為5 V,為了保證傳感器有高精度、高穩(wěn)定性的供電電壓,本設(shè)計(jì)選用了Sipex西伯斯公司的SPX3819M5芯片,它是一款500 mA輸出的低噪聲低壓差LDO(低壓差線性穩(wěn)壓器)穩(wěn)壓器,僅有40 μV的低噪聲電壓,電壓輸出可達(dá)1%的高精準(zhǔn)度,Gsense400圖像傳感器的模擬供電部分為3.3 V,PLL鎖相環(huán)部分供電為1.8 V,像素驅(qū)動(dòng)部分供電為3.0 V,而此款穩(wěn)壓器分別有3.3 V、3.0 V、1.8 V系列,滿足了傳感器對(duì)于電壓和電流的要求。SPX3819電路如圖5所示。
圖像傳感器電路模塊的FPGA程序主要包括:時(shí)鐘管理模塊、FIFO緩存模塊、USB控制模塊、DDR2-SDRAM控制器、LVDS數(shù)據(jù)傳輸模塊,整體結(jié)構(gòu)框圖如圖6所示。
時(shí)鐘管理模塊主要利用PLL(鎖相環(huán))產(chǎn)生FPGA程序所需要的時(shí)鐘,本程序里包括DDR2 IP核的本地接口時(shí)鐘、提供給DDR2的接口時(shí)鐘、提供給USB3.0控制模塊的工作時(shí)鐘和程序工作的主時(shí)鐘等。
FPGA的Gsense400控制模塊通過SPI通信配置傳感器的PGA(可編程增益放大器),通過狀態(tài)機(jī)實(shí)現(xiàn)19路的控制波形和12路像素驅(qū)動(dòng)信號(hào),并通過8路LVDS接收來自圖像傳感器采集到的圖像數(shù)據(jù)。
數(shù)據(jù)發(fā)送FIFO1模塊是把DDR2-SDRAM發(fā)送過來的數(shù)據(jù)進(jìn)行位寬轉(zhuǎn)換并起到一個(gè)緩沖數(shù)據(jù)的作用。
DDR2控制器主要用來實(shí)現(xiàn)DDR2 IP core與接口的對(duì)接時(shí)序,并控制Gsense400的數(shù)據(jù)接收和數(shù)據(jù)發(fā)送FIFO1與DDR2-SDRAM芯片之間進(jìn)行正確的數(shù)據(jù)通信。
圖4 Gsense400電路圖
圖5 SPX3819連接電路圖
USB控制模塊主要是通過SPI通信控制CYUSB3014模塊,對(duì)此模塊進(jìn)行配置,并將圖像數(shù)據(jù)信號(hào)傳送到CYUSB3014。
通過軟件設(shè)計(jì),利用ISE中的仿真工具,對(duì)設(shè)計(jì)的程序進(jìn)行波形仿真和時(shí)序驗(yàn)證。
3.2.1 SPI仿真波形
SPI是一種常用的全雙工串行數(shù)據(jù)線[16],而本設(shè)計(jì)中SPI通信主要用來完成對(duì)于傳感器的寄存器配置,如圖7所示,當(dāng)為一個(gè)寫時(shí)序和讀時(shí)序的SPI波形,而SPI的寫指令和讀指令不能同時(shí)進(jìn)行。要首先完成寫寄存器指令,當(dāng)spi_write置高時(shí),完成寫寄存器任務(wù),一個(gè)時(shí)鐘周期后置低。當(dāng)spi_read置高時(shí),開始讀寄存器操作,當(dāng)spi_read置低時(shí),讀操作完成。
3.2.2 數(shù)字控制信號(hào)時(shí)序
數(shù)字控制信號(hào)有513個(gè)傳感器像素時(shí)鐘周期,總共19路信號(hào)。數(shù)字控制信號(hào)用于傳感器模式配置,如圖8為STD模式下高增益仿真波形時(shí)序圖。傳感器在513個(gè)像素時(shí)鐘周期下,完成了兩列像素的讀取。
圖6 數(shù)據(jù)傳輸軟件整體框圖
圖7 SPI寫時(shí)序和讀時(shí)序
圖8 STD模式控制時(shí)序
3.2.3 像素解碼信號(hào)時(shí)序
如圖9的仿真時(shí)序所示,Decoder為行(ROW)解碼信號(hào),在主時(shí)鐘的驅(qū)動(dòng)下,對(duì)相機(jī)進(jìn)行配置和控制。
圖9 像素解碼信號(hào)時(shí)序
本文基于sCMOS圖像傳感器Gsense400BSI,開展了驅(qū)動(dòng)電路的硬件設(shè)計(jì)和軟件設(shè)計(jì),硬件電路滿足成像系統(tǒng)的需求,軟件設(shè)計(jì)的仿真時(shí)序正確,SPI讀寫時(shí)序、數(shù)字編碼時(shí)序和行解碼時(shí)序滿足了Gsense400BSI圖像傳感器驅(qū)動(dòng)系統(tǒng)的成像需求。并經(jīng)過仿真驗(yàn)證,確定本設(shè)計(jì)方案切實(shí)可行。