1 全幀型CCD驅(qū)動時序發(fā)生器原理
1.1 FTF4052M芯片介紹
FTF4052M是22兆像素(4 008 pixel×5 334 pix-e1)的超大分辨率全幀CCD圖像傳感器,其內(nèi)部結(jié)構(gòu)如圖1所示。
其主要特性如下:
(1)36 mm×48 mm的光敏面;
(2)優(yōu)異的抗光暈性能;
(3)22兆有效像素(8H×5 344 V);
(4)可實現(xiàn)垂直子采樣;
(5)高的線性動態(tài)范圍(>72 dB);
(6)數(shù)據(jù)傳輸率高達(dá)27 MHz;
(7)可實現(xiàn)單路,雙路和四路同時輸出。
該芯片在結(jié)構(gòu)上分為3部分,中間最大的區(qū)域為光敏區(qū),即光積分區(qū)域;上下兩部分為兩個輸出寄存器。將光積分生成的電荷水平轉(zhuǎn)移到4個角的輸出放大器,輸出放大器將光生電荷形成的電壓信號放大并轉(zhuǎn)移出CCD。
C1,C2,c3為水平像素轉(zhuǎn)移寄存器的時鐘信號。A1,A2,A3,A4為垂直行驅(qū)動時鐘信號。TG是光敏區(qū)與輸出寄存器之間的隔柵;OG是輸出柵;sG是輸出柵之前的最后一個柵;RG是輸出放大器。該芯片的最大特點是將光敏區(qū)生成的圖像分成W,X,Y,Z四個對稱的象限,每個象限的電荷可以以不同的方向轉(zhuǎn)移,通過四個輸出端同時輸出,有效地提高了幀速率,單端輸出的幀速率為1幀/s,而四端同時輸出就可以達(dá)到3.6幀/s。
1.2 幀轉(zhuǎn)移時序分析
CCD的整個幀轉(zhuǎn)移時序如圖2所示,主要分為3個階段,而且這三個階段是周期進(jìn)行的。在此,把空閑模式階段定義為第一階段,在CCD芯片空閑模式下,A時鐘信號全部保持低電平??臻e模式后,CCD芯片開始進(jìn)入第二階段,即光積分階段。
如圖2所示,SSC為系統(tǒng)內(nèi)部基準(zhǔn)時鐘信號,用于校準(zhǔn)整個CCD的時序。VA high是控制四組A時鐘的高低電平轉(zhuǎn)換信號;TG信號的相位和頻率與A1完全一致。由于CCD芯片F(xiàn)TF4052M發(fā)球全幀CCD芯片,光敏面占CCD面積的大部分,為了得到100%的污染點圖像,必須加上機械快門。它的開啟由Trig-in信號完成。當(dāng)Trig-in信號上升沿到來時,觸發(fā)快門使之進(jìn)行開啟動作,CcD準(zhǔn)備進(jìn)行光積分。在Trig-in信號上升沿之后,當(dāng)基準(zhǔn)時鐘信號SSC的第一個上升沿到來時,產(chǎn)生脈沖寬度為190.6 ps的信號CR,用于對CCD進(jìn)行初始化。當(dāng)CR脈沖到下降沿時,快門徹底打開,ccD正式進(jìn)入光積分階段。A1繼續(xù)保持低電平;A2,A3,A4上升為高電平。因為CCD芯片中的每個像素都可以看作是由四個柵極(每個柵極連接一相時鐘信號)“覆蓋”的,而且像素之間必須分離開,水平方向上可以通過溝道隔離像素。為了將像素與像素在垂直方向上隔離開,必須將四個柵極中的某一個柵極電壓變?yōu)榱恪T谠撓到y(tǒng)應(yīng)用中,將A1保持低電平,以起到像素隔離的作用。然而光生電荷在保持高電平的A2,A3,A4柵極下積聚起來,形成信號電荷包。
光積分結(jié)束后進(jìn)人第三階段,即幀轉(zhuǎn)移階段,而幀轉(zhuǎn)移又可以看成是垂直行轉(zhuǎn)移和水平像素轉(zhuǎn)移交替進(jìn)行的,它們之間的轉(zhuǎn)換通過SSC電平的高低轉(zhuǎn)換實現(xiàn)。
SSC上升沿的到來標(biāo)志著一次水平像素轉(zhuǎn)移的結(jié)束和一次垂直行轉(zhuǎn)移的開始,CCD像素垂直方向的行轉(zhuǎn)移是由A1,A2,A3,A4等時鐘及像素傳輸門TG時鐘來完成的,其頻率都為50 kHz,且四相A時鐘信號要滿足嚴(yán)格的交迭原理。在SSC保持高電平時,如圖3所示,光敏區(qū)里已經(jīng)生成的電荷包在四相A時鐘信號的驅(qū)動下逐行地向上和向下轉(zhuǎn)移到輸出寄存器。
SSC下降沿到來時,標(biāo)志著一次垂直行轉(zhuǎn)移的結(jié)束和一次水平像素轉(zhuǎn)移的開始,CCD像素水平方向像素的轉(zhuǎn)移是由C1,C2,c3等時鐘來完成的,信號頻率都為25 MHz。其轉(zhuǎn)移原理與垂直行轉(zhuǎn)移原理一樣,三相C時鐘信號亦要嚴(yán)格滿足三相交迭原理。如圖4所示,輸出寄存器就是在三相C時鐘信號的驅(qū)動下將這一行逐個像素向輸出放大器轉(zhuǎn)移的。
RG(Reset Gate)是通過復(fù)位管對輸出放大器的浮置擴散電容(Floating Diffusion Capacitante,F(xiàn)D)進(jìn)行復(fù)位的信號,其中FD可以將接收到的電荷包轉(zhuǎn)換為電壓信號。復(fù)位后FD可以接收下一個電荷包。SG(Summing Gate)是在輸出柵OG之前的最后一個柵,SG信號和RG信號的相位與C3信號的相位相同。一行電荷包經(jīng)過輸出放大器的轉(zhuǎn)換和放大后,以電壓信號的形式從CCD輸出。接下來再進(jìn)行下一行的垂直行轉(zhuǎn)移和水平像素轉(zhuǎn)移輸出,直到將光敏面上的所有5 356行電荷包輸出完畢為止。由此可見,整個一幀圖像是在A時鐘信號和C時鐘信號的交替驅(qū)動下從CCD芯片的輸出放大器輸出而完成幀轉(zhuǎn)移的。
2 驅(qū)動系統(tǒng)設(shè)計
隨著大規(guī)??删幊唐骷难杆侔l(fā)展和廣泛使用,傳統(tǒng)的通過TTL標(biāo)準(zhǔn)電路構(gòu)成的積木式電路系統(tǒng)已經(jīng)慢慢被淘汰。目前較為流行的CCD驅(qū)動電路設(shè)計方案一般有兩種:一是用FPGA或者是CPLD產(chǎn)生CCD的時序驅(qū)動信號,以及用模擬電路(功率放大晶體管和電位器)實現(xiàn)對CCD的直流電平驅(qū)動信號;另一種則是用專用的CCD驅(qū)動芯片,實現(xiàn)對CCD的驅(qū)動。前者要求開發(fā)者對硬件描述語言熟悉,而且實現(xiàn)靈活,集成度高,方便功能的升級和擴展;后者則只需對寄存器進(jìn)行設(shè)置,編程較為簡單,但是可擴展性稍差。在此,采用Altera公司EPM7160SIC 84-10型可編程邏輯器件(CPLD),使用Altera公司的QuartusⅡ集成開發(fā)環(huán)境,并通過與微機相連的下載線實現(xiàn)CPLD的燒寫和在線編程。頂層的設(shè)計采用原理圖輸入,設(shè)計出各個功能模塊,然后再使用硬件描述語言(VHDL)對各個功能模塊編程的自上而下的開發(fā)方法,實現(xiàn)了高層次復(fù)雜邏輯的設(shè)計,從而實現(xiàn)了硬件設(shè)計的軟件化。
通過對該CCD芯片的了解,將頂層設(shè)計分為3個功能模塊,分別為倍頻模塊(模塊1)、光積分時間控制及快門控制模塊(模塊2)、幀轉(zhuǎn)移模塊(模塊3),各功能模塊的關(guān)系如圖5所示。模塊1為倍頻模塊,通過調(diào)用該模塊,可產(chǎn)生幀轉(zhuǎn)移所需的頻率脈沖信號。由于CPLD芯片一般不帶有PLL模塊,故可采用延時加異或的方式來實現(xiàn)倍頻。不過目前較新的CPLD,如Lattice的MachXo系列器件則可直接調(diào)用PLL,此處不再贅述。模塊2為光積分時間及快門控制,通過拍照指令產(chǎn)生CR脈沖信號,對CCD進(jìn)行初始化,并生成一個在光積分期問保持高電平的使能信號ENA。將ENA分別發(fā)送至模塊1和模塊3。CR信號和ENA可通過對按鍵信號Trig—in的延遲處理來實現(xiàn),也較為簡單。該設(shè)計中最關(guān)鍵的是幀轉(zhuǎn)移模塊。其原理主要是利用3個計數(shù)器進(jìn)行相互嵌套,從而產(chǎn)生所需的驅(qū)動信號,其簡易流程如圖6所示。
首先由CLK時鐘產(chǎn)生模6計數(shù)器sell、模4764計數(shù)器sel2和模6計數(shù)器sel3。由于sell和sel2相互作用,當(dāng)滿足ENA=1且sel2≥683(由圖3可得出)時,則相應(yīng)可產(chǎn)生C1,C2,c3信號值,否則全部賦為0。而A1,A2,A3,A4則是在SEL2和SEL3的共同作用下,將主時鐘信號進(jìn)行分頻后作為時鐘,在滿足圖6中所羅列的條件后,根據(jù)SEL2值的變化即可給出A1~A4的值。
采用這種模塊化的設(shè)計,其光積分時間、行轉(zhuǎn)移頻率和像轉(zhuǎn)移頻率、行轉(zhuǎn)移數(shù)和每行像素轉(zhuǎn)移數(shù)均可調(diào)整,程序的移植性較好,可適用于不同的需要,而且也方便調(diào)試。
3 實驗結(jié)果分析
對程序進(jìn)行系統(tǒng)仿真后的時序圖如圖7所示??煽闯鲈摃r序符合CCD芯片的datasheet要求。將編譯好的程序下載到CPLD中,通過示波器可以得到所需的驅(qū)動信號,如圖8所示。
在實驗中發(fā)現(xiàn),雖然軟件仿真中各個驅(qū)動信號能夠嚴(yán)格符合CcD4052M要求的時序關(guān)系,但是實際輸出到CCD信號的驅(qū)動信號卻仍然有不同程度的延時。這主要是由兩方面的原因引起的。首先,由于在設(shè)計初期采用的是集成開發(fā)環(huán)境下行為級的仿真功能,仿真過程不包括延時信息,只為驗證代碼行為的正確性,可以做到與器件無關(guān),所以CPLD的輸出會與仿真結(jié)果有所差異;其次,CCD驅(qū)動信號由CPLD產(chǎn)生后,需要經(jīng)過后續(xù)的模擬驅(qū)動電路,由于電子器件本身的特性和差異,造成了抵達(dá)CCD管腳的驅(qū)動信號具有不同的延時。其中,第一種誤差可以通過進(jìn)行集成開發(fā)環(huán)境下的時序級仿真解決。這種仿真為設(shè)計的每一個底層器件加入了延時信息,可以模擬到比較接近實際電路的行為。第二種誤差因電子器件本身造成的,存在個體性差異,無法進(jìn)行精確的計算。解決方法是在電路設(shè)計中加入延時芯片,通過實際測量,設(shè)定不同延時芯片的延時,校正各個驅(qū)動信號間的誤差。
4 結(jié) 語
該CCD驅(qū)動系統(tǒng)采用CPLD芯片進(jìn)行設(shè)計,具有性能好,功耗低,體積小的特點。該驅(qū)動電路的研制結(jié)果表明,采用CPLD專用集成芯片進(jìn)行系統(tǒng)設(shè)計有它自身的優(yōu)點,可以簡化設(shè)計,并且調(diào)試簡單,可擴展性也比較強。