1引言
CCD" target="_blank">CCD(Charge Coupled Device)電荷耦合器件是20世紀70年代發(fā)展起來的一種新型半導(dǎo)體大規(guī)模集成光電器件,。由于它在圖像信息的攝取,、記錄方面獨具特色,同時又具有體積小,、功耗小,、分辨率高、靈敏度高,、可靠性好等諸多優(yōu)點,,因此在科學(xué)、天文,、工業(yè)等領(lǐng)域有廣泛的應(yīng)用,。
CCD輸出的視頻信號中除了有用的圖像信號外,還包括很高的直流分量和噪聲,。若不進行處理,,將嚴重影響傳感器的圖像質(zhì)量,因此CCD視頻信號的噪聲處理十分重要,。CCD視頻信號處理的目的就是盡可能地消除各種噪聲和干擾,但又不能損失圖像細節(jié),;并且保證在CCD的動態(tài)范圍內(nèi)圖像信號隨著目標亮度成線性變化,,同時為了便于計算機處理和大容量存儲,還必須對CCD輸出信號進行數(shù)字化處理[1],。這些功能若由分立電路實現(xiàn),,則電路復(fù)雜、調(diào)試不方便,、價格昂貴,、功耗大等缺點是顯而易見的,這與CCD相機向著功能更強大,、性能更完善,、價格更便宜、功耗更低的發(fā)展趨勢是相悖的。隨著微電子技術(shù)的發(fā)展,,為了解決CCD視頻信號噪聲處理問題,,許多公司(Exar,Kodak,Burr-Brown,TI等)相繼開發(fā)了功能齊備的專用CCD視頻信號處理芯片,將各種功能電路集成在一塊芯片上,,這樣不僅大大簡化了信號處理電路,,降低了CCD相機設(shè)計復(fù)雜度,而且使CCD相機的功能更強大,,性能更優(yōu)越,。
本文主要分析了專用CCD視頻信號處理芯片XRD4460的功能及特點,并在此基礎(chǔ)上設(shè)計了基于XRD4460的CCD視頻信號處理電路,。
2 XRD4460的特點及功能
XRD4460是Exar公司推出的專用CCD視頻信號處理芯片,。它帶有一個1O位A/D轉(zhuǎn)換器,最高采樣速率高達16MHz,,內(nèi)置高帶寬的差分相關(guān)雙采樣器(CDS)和8位的數(shù)字可編程增益放大器(PGA),。模擬偏移量可控制,差分信號輸入,,差分外部時鐘,,片內(nèi)帶有輸入緩存和采樣/保持器,1O位并行數(shù)據(jù)輸出,。由于其功能強大,、性能優(yōu)越、功耗低,、體積小等優(yōu)點,,因而廣泛用于數(shù)字攝像機、數(shù)字靜態(tài)相機和PC錄像會議相機等數(shù)字成像系統(tǒng)中,。XRD4460的功能框圖如圖1所示,,其功能主要包括。
?。?) 相關(guān)雙采樣(CDS,,correlated double sampling):CCD輸出信號中的主要有光子噪聲、陷阱噪聲,、暗電流噪聲,、復(fù)位噪聲。其中光子噪聲,、陷阱噪聲是由器件和工藝造成的,,不易處理,而暗電流噪聲與器件的環(huán)境溫度有關(guān),,所以信號處理電路主要對復(fù)位噪聲(亦稱KTC噪聲)進行抑制[2],。為了降低復(fù)位噪聲,,XRD4460采用了相關(guān)雙采樣技術(shù)。相關(guān)雙采樣的原理是由于復(fù)位噪聲表現(xiàn)在同一像素周期內(nèi)近似常數(shù)(即具有相關(guān)性),,但是對于不同的像素周期是隨機變化的,。所以,只要在同一像素周期內(nèi)的暗電平參考區(qū)間和信號電平區(qū)間進行兩次采樣,,那么這兩次采樣的復(fù)位噪聲是相關(guān)的,,將兩個采樣電平經(jīng)差動放大器輸出,得到的信號就是真實的視頻信號,。這一過程把與參考電平和信號電平都相關(guān)的復(fù)位噪聲濾除了,,而且對低頻噪聲也有一定的濾除效果[3]。
?。?)可編程增益控制PGA (programmable gain amplifier): 輸入到ADC的視頻信號的電壓是由CCD輸出信號的電壓和信號處理的系統(tǒng)增益,、偏置決定的。因為CCD輸出信號的大小隨著入射照度的強弱而改變,,只有通過信號處理系統(tǒng)進行增益,、偏置地調(diào)節(jié).才能使輸出的數(shù)字圖像的亮度和對比度滿足要求。XRD4460的增益控制由可編程增益放大器PGA完成,,增益范圍為6dB~38dB,,由8位增益寄存器控制,通過串口來設(shè)定,。當(dāng)輸入增益碼Code=00H時,,系統(tǒng)存在固有6dB增益,增益控制碼每增加一個碼字,,系統(tǒng)增益增加0.125dB,,從而實現(xiàn)可編程增益控制。
?。?)暗電平自動校正:由于光強,、溫度、供電電壓的緩慢變化都會使視頻輸出信號的暗參考電平出現(xiàn)波動,,在實際應(yīng)用中,,需要暗參考電乎維持一個固定電平,暗參考電平校正過程亦即直流電平恢復(fù)過程,。通過情況下,CCD輸出視頻信號的開始部分或結(jié)束部分會分布若干個暗電平參考像元,。XRD4460通過CLAMP信號的高電平與輸出信號的暗參考像素對應(yīng),,選擇合適的外部耦合電容參數(shù),將使整行的暗參考電平保持在一個固定電平上,。
?。?)數(shù)字偏置控制:若CCD工作于弱光條件下,即使信號的增益很大,經(jīng)過視頻信號處理后的電壓仍可能低于ADC的下參考電壓,,這樣使輸出視頻圖像產(chǎn)生失真,。為了提高弱光條件下的灰度分辨率,需要使輸出視頻信號的暗參考電平高于ADC的下參考電壓,,那么僅僅調(diào)整增益是不夠的,,還需要對視頻輸出信號的偏置進行調(diào)整。XRD4460的偏置調(diào)整同樣是通過串口編程控制片內(nèi)8位偏置寄存器,。電源上電后默認的偏置設(shè)置值位08H,,偏置調(diào)整范圍為02H~08H。
(5) A/D模數(shù)轉(zhuǎn)換:XRD4460內(nèi)部集成了10位分辨率,、逐次比較式A/D轉(zhuǎn)換器,,由于利用對分搜索的原理,轉(zhuǎn)換速率高達16MHz,,這樣的轉(zhuǎn)換速度和轉(zhuǎn)換精度適合于大多數(shù)應(yīng)用場合,。
(6) 串行接口:XRD4460的串行接口包括了一個10bit的移位寄存器和多個并行寄存器,通過LOAD,、SDI,、SCLK三個信號來控制內(nèi)部寄存器的寫入,實現(xiàn)對XRD4460工作參數(shù)的編程控制,。
3 CCD視頻信號處理電路的硬件設(shè)計
CCD視頻信號處理電路以專用CCD視頻信號處理芯片XRD4460為核心部件,,完成CCD視頻信號的放大、噪聲處理以及數(shù)字化,,并使用CPLD" target="_blank">CPLD(可編程邏輯器件)技術(shù)完成整個電路的邏輯控制,,配以先進先出(FIFO)存儲器作為數(shù)據(jù)高速緩沖器,用于存儲AD轉(zhuǎn)換后的數(shù)據(jù),,并采用具有微控制器的USB接口芯片,,從而通過USB接口將CCD數(shù)據(jù)輸入計算機。CCD視頻信號處理電路設(shè)計如圖2所示,。大致可分為三個部分,。
3.1 XRD4460視頻信號處理電路
XRD4460專用CCD視頻信號處理芯片的工作時序需要根據(jù)具體的CCD芯片來確定。圖2中,,SHD,、SHP、RST,、CLAMP信號必須依據(jù)CCD輸出信號的時序來設(shè)計,。其時序關(guān)系如圖3所示。CCD輸出信號經(jīng)過CCD信號處理器XRD4460處理,, 即進行雙相關(guān)采樣(CDS)去噪處理后,,再經(jīng)增益放大以及偏置調(diào)整,,然后經(jīng)過A/D轉(zhuǎn)換得到10位數(shù)字數(shù)據(jù)。這些數(shù)據(jù)在CPLD邏輯控制電路的控制下存人異步FIFO存儲器SN74V293中,。而SDI,、SCLK、LOAD是XRD4460的串口控制信號,。通過串行接口,,可以方便進行編程控制XRD4460的增益與偏置的調(diào)整,從而改善輸出圖像的質(zhì)量,。
3.2 FIFO與USB接口電路
高速A/D變換的數(shù)據(jù)不能直接通過USB送入主機,,需要通過FIFO來緩沖數(shù)據(jù)。電路采用TI公司SN74V293芯片,。它的容量為65536×18或131072×9,,最快讀寫周期為6ns,可以滿足100MHz采樣數(shù)據(jù)的存儲,。設(shè)置SN74V293的輸入,、輸出寬度為18位時,則其可存儲64K×10位的數(shù)據(jù),。FIFO寫時鐘W和復(fù)位信號/RS的時序關(guān)系如圖4所示,。USB接口電路采用Cypress公司推出的EZ-USB芯片CY7C68013A,該芯片把USB2.0收發(fā)器、串行接收引擎SIE(Serial Interface Engine),、帶16K的增強8051內(nèi)核,、4KB FIFO存儲器以及通用可編程接口GPIF(General Programmable Interface)集成一體,將其作為USB外部設(shè)備的主控芯片,,而無需外加微控制器(MCU)便可實現(xiàn)USB芯片通信初始化以及與主機的通信連接,。 當(dāng)FIFO中存入數(shù)據(jù)時,USB接口電路根據(jù)其標志信號(滿信號/半滿信號)讀取數(shù)據(jù)并發(fā)送給主機,。
圖4 FIFO寫控制時序
3.3 CPLD邏輯控制電路
邏輯控制電路由CPLD采用VHDL硬件描述語言編程實現(xiàn),,完成整個電路的邏輯控制,主要包括三部分的功能,。第一部分的功能是為XRD4460提供工作時序(如圖3),。第二部分功能是向FIFO提供寫時鐘W和復(fù)位信號/RS,控制數(shù)據(jù)的順利寫入,。第三部分功能負責(zé)XRD4460的串口設(shè)置,。在CPLD中設(shè)計一個串行口和一個寄存器,其中串行口用來將寄存器中的數(shù)據(jù)發(fā)送給XRD4460進行功能設(shè)置,;而寄存器用來存儲主機發(fā)送過來數(shù)據(jù),。主機通過CY7C68013A中的EP2端點發(fā)送數(shù)據(jù)。
4 CCD視頻信號處理電路的軟件設(shè)計
USB應(yīng)用系統(tǒng)軟件設(shè)計分為三部分:USB外設(shè)端的固件(Firmware),、主機操作系統(tǒng)上的客戶驅(qū)動程序以及主機應(yīng)用軟件,。主機應(yīng)用軟件通過客戶驅(qū)動程序與系統(tǒng)USBI(USB Device Interface)進行通信,由系統(tǒng)產(chǎn)生USB數(shù)據(jù)的傳送動作,;固件則響應(yīng)各種來自系統(tǒng)的USB標準請求,,完成各種數(shù)據(jù)的交換工作和事件處理[4]。
4.1 USB接口編程
固件程序是USB芯片內(nèi)微處理器的控制程序,,可采用匯編語言或單片機C語言設(shè)計,。當(dāng)系統(tǒng)上電時,固件程序通過USB電纜下載到CY7C68013A的內(nèi)部RAM 中,。
固件程序主要是實現(xiàn)USB通信,。當(dāng)主機與芯片進行USB通信時,會產(chǎn)生外部中斷0,,通過中斷矢量寄存器來判斷,。Setup_packed_Int、Input_endpoint0_Int,、Output_endpoint0_Int這三個中斷主要用于與主機建立連接,、進行控制傳輸或中斷傳輸;Input_endpoint1_Int,、Output_endpoint1_Int這兩個中斷主要在批量傳輸時使用,。在固件中分別執(zhí)行不同的中斷程序來實現(xiàn)USB的數(shù)據(jù)傳輸。所有的中斷處理程序采用C語言進行編寫,。
4.2 主機軟件設(shè)計
首先開發(fā)CY7C68013A在主機中的驅(qū)動程序,。用WinDK3.0開發(fā)了Win2000下的驅(qū)動程序,實現(xiàn)了控制傳輸,、中斷傳輸和批傳輸?shù)臉藴式涌诤瘮?shù),。
在應(yīng)用程序開發(fā)中,采用VC++編制應(yīng)用程序,。把USB設(shè)備當(dāng)成文件來操作,,利用CreateFile得到USB句柄,用DeviceIoControl來進行控制傳輸,,用ReadFile,、WriteFile進行批量傳輸。主要實現(xiàn)兩個功能:一是完成采集的圖像的顯示,;二是設(shè)置CCD視頻信號處理芯片,,包括PGA增益、ADC偏置等工作參數(shù)的設(shè)置,。
5 結(jié)束語
本文介紹了一種采用專用CCD視頻信號處理芯片和CPLD技術(shù)來設(shè)計的CCD視頻信號處理電路,,并采用USB接口技術(shù)實現(xiàn)數(shù)據(jù)傳輸。電路不僅結(jié)構(gòu)簡單,,而且調(diào)試方便,,易于實現(xiàn),。通過USB和CPLD技術(shù)對專用CCD視頻信號處理芯片的控制,實現(xiàn)了圖象亮度與對比度的可編程調(diào)節(jié),,改善了圖象質(zhì)量,,提高了電路的整體性能,同時USB接口傳輸速率快,,且易于計算機連接,。因此,該電路可廣泛應(yīng)用于CCD相機系統(tǒng)的設(shè)計,。
參考文獻
[1] 王慶有 圖像傳感器應(yīng)用技術(shù)[M] 電子工業(yè)出版社 2003
[2] 劉國媛,,李露瑤,張伯珩,,邊川平 CDS器件在TDI-CCD視頻信號處理中的應(yīng)用[J] 光子學(xué)報 2000 Vol.29(1) 82-85
[3] 佟首峰,,阮錦,郝志航 CCD圖像傳感器降噪技術(shù)研究[J] 光學(xué)精密工程 2000,,Vol.8(2):140-145
[4] 馮國飛,,宋蘊興 基于USB數(shù)據(jù)采集卡的設(shè)計與實現(xiàn)[J] 微計算機信息 2005 21-1:75-76
[5] EXAR Corporation, Datasheet of XRD4460, 2004
[6] Cypress Semiconductor Corporation, CY7C68013A/CY768015A, EZ-USB FX2 USB Microcontroller, 2004.