程瑤,周娜,王榮秀
(1.重慶理工大學機械工程學院,重慶400050;2.重慶工商大學,重慶400067)
基于FPGA的線陣型CCD驅(qū)動電路設(shè)計*
程瑤1*,周娜1,王榮秀2
(1.重慶理工大學機械工程學院,重慶400050;2.重慶工商大學,重慶400067)
CCD驅(qū)動電路的設(shè)計是實現(xiàn)CCD各種設(shè)計功能的關(guān)鍵性因素,只有對其驅(qū)動信號設(shè)計的嚴格把關(guān),才會進一步保證CCD器件后續(xù)工作的開展。分析線陣CCD器件TCD1703C的驅(qū)動時序要求,采用QuartusⅡ軟件,選用Verilog HDL語言設(shè)計了各路驅(qū)動時序信號。將程序設(shè)計下載到FPGA器件中,通過邏輯分析儀對輸出信號進行了波形監(jiān)測,驗證了線陣CCD的驅(qū)動時序設(shè)計的可行性。將產(chǎn)生的驅(qū)動時序信號接入CCD器件,不同光照入射的條件下,CCD在驅(qū)動信號的驅(qū)動下,正常工作并輸出了相應(yīng)的視頻信號。
CCD;驅(qū)動電路;FPGA;QuartusⅡ;Verilog HDL
CCD圖像傳感器是利用光電轉(zhuǎn)換原理將圖像信號轉(zhuǎn)變?yōu)殡娦盘枺诟黝I(lǐng)域都得到了廣泛的應(yīng)用,備受人們的廣泛關(guān)注[1]。CCD器件正常工作的前提是CCD驅(qū)動電路中各驅(qū)動脈沖的嚴格性設(shè)計。CCD的工作狀態(tài)與其驅(qū)動時序密切相關(guān)。只有在嚴格滿足驅(qū)動時序要求的基礎(chǔ)上,CCD的轉(zhuǎn)換效率、信噪比、光電轉(zhuǎn)換特性等指標才能達到最佳狀態(tài)[2]。這些驅(qū)動信號提供CCD正常工作的驅(qū)動時序,也可以在后續(xù)的信號處理電路中提供一些控制性信號,更可以在圖像采集處理過程中提供同步信號。
因此驅(qū)動時序電路的設(shè)計是CCD器件應(yīng)用的關(guān)鍵性因素[3]。驅(qū)動時序電路的設(shè)計重點又落腳到各個驅(qū)動信號的高低電平時間周期性的控制設(shè)計。只有對其驅(qū)動信號設(shè)計的嚴格把關(guān),才會進一步保證CCD器件后續(xù)工作。CCD中各個像元對不同強度的光產(chǎn)生不同的模擬電荷信號,在FPGA產(chǎn)生的驅(qū)動時序作用下,CCD才能將模擬電荷信號串行移位輸出[4]。
CCD驅(qū)動時序設(shè)計方法并不單一,不管是線陣還是面陣的CCD,它們的驅(qū)動時序都是具有周期性的特定電壓電平信號。CCD的驅(qū)動時序產(chǎn)生方法主要有以下4種:直接數(shù)字電路(IC)驅(qū)動法、單片機驅(qū)動法、EPROM驅(qū)動法、可編程邏輯器件法等[5]。
近些年來,隨著可編程器件的高速發(fā)展,F(xiàn)PGA因其高速并行處理方式,極強的編程靈活性,十分適合用來產(chǎn)生CCD的驅(qū)動時序[6]。FPGA是一種可以根據(jù)用戶的自我需要自行改造相應(yīng)邏輯功能的數(shù)字集成電路。利用FPGA器件設(shè)計驅(qū)動電路,可以大大縮減電路板的制作成本(需要體積小),無需外部芯片,提供軟件仿真功能,適合完成各種算法和組合邏輯,可靠性以及靈活性都比較高,重新修改原理圖或硬件描述語言即可完善設(shè)計。同時還可以為圖像信號的采集提供時鐘以及其他電路的時序匹配[7]。因此本文采用FPGA驅(qū)動法進行線陣CCD驅(qū)動時序信號的設(shè)計中,選用Verilog HDL語言對時序發(fā)生器進行了硬件描述以及QuartusⅡ軟件對時序進行了功能仿真。
2.1 TCD1703C線陣CCD驅(qū)動時序要求
TCD1703C是一款敏感度較高、暗電流較小的7500元線陣CCD圖像傳感器。它是典型的奇偶雙溝道轉(zhuǎn)移并行輸出的二相CCD。主要用于圖像掃描、字符識別以及復制,特別適用于檢測高速運動物體圖像。TCD1703C結(jié)構(gòu)原理圖如圖1所示。CCD的驅(qū)動脈沖波形圖如圖2所示。TCD1703C的驅(qū)動信號由5路脈沖構(gòu)成,CCD驅(qū)動電路產(chǎn)生的轉(zhuǎn)移信號、傳輸信號、采樣保持信號和復位信號等[8]保證CCD器件正常工作。

圖1 TCD1703C結(jié)構(gòu)原理圖

圖2 TCD1703C驅(qū)動脈沖波形圖
TCD1703C的光積分時間為兩個SH的脈沖間隔。電荷轉(zhuǎn)移需要的時間是SH脈寬的長度,實現(xiàn)存儲電荷轉(zhuǎn)移到模擬移位寄存器的功能。Ф1E、Ф2E使得模擬移位寄存器的電荷信號移動并且輸出,在轉(zhuǎn)移脈沖處在高電平及上升沿、下降沿這些期間時這兩個脈沖必須是反向的。RS為復位信號,復位一次即向外輸出一個信號,時序設(shè)計中CP的相位較RS稍落后。并且SH為高電平時RS要保持在低電位。該線陣CCD先輸出127個啞元,接著才輸出7 500個有效像元,緊接著再輸出23個啞元,最后輸出空驅(qū)動信號(空驅(qū)動的個數(shù)是可以任意的)。
2.2 TCD1703C驅(qū)動電路程序設(shè)計
依據(jù)TCD1703C的驅(qū)動時序要求,設(shè)計時選用時鐘clk頻率為10 MHz,Ф1E,Ф2E,RS,CP頻率均為1 MHz(周期為1μs),所以需要對時鐘clk進行10分頻計數(shù)。由此也可計算得到初始階段SH為16個clk周期,Ф1E/Ф2E為26個clk周期,RS以及CP為20個clk周期。
程序設(shè)計說明:①SH初始階段的高電平時間段選用count值為(11~26)之間,CCD驅(qū)動剩下的周期內(nèi)都為低電平;②Ф1E/Ф2E初始階段的高/低電平時間段選用count值為(5~30)之間,并且在該驅(qū)動脈沖中占空比值為1∶1(例:計數(shù)值段為(31~35)邊界內(nèi)設(shè)置為低電平,計數(shù)值段為(36~40)邊界內(nèi)設(shè)置為高電平);③RS初始階段的低電平時間段選用count值為(6~25)之間,CP初始階段的低電平時間要比RS落后一點,所以選用count值為(7~26)之間,兩者的占空比設(shè)置為3∶7。
程序設(shè)計采用Verilog HDL語言進行描述,各路驅(qū)動信號時序圖的產(chǎn)生主要通過5個always進程來實現(xiàn)[9-11]。在程序設(shè)計中有一個計數(shù)器count,TCD1703C雖然有7 500個像元輸出但是是通過奇、偶移位寄存器來實現(xiàn)輸出的,勢必脈沖數(shù)的個數(shù)相應(yīng)就可以減少一半,加上是對時鐘clk的10分頻計數(shù),最終選定count=38 300作為CCD的完整的一次圖像轉(zhuǎn)換輸出5路驅(qū)動信號進程的流程圖如圖3所示。

圖3 TCD1703C驅(qū)動信號的程序設(shè)計流程圖
2.3 驅(qū)動電路設(shè)計結(jié)果
采用QuartusⅡ軟件對驅(qū)動時序發(fā)生器進行了功能仿真。仿真結(jié)果如圖4~圖6所示。
從仿真結(jié)果來看,設(shè)計產(chǎn)生的5路驅(qū)動信號符合TCD1703C的驅(qū)動信號要求,從理論驗證了該設(shè)計方案的可實施性。將輸入輸出信號進行引腳綁定之后,并通過JTAG下載光纜將程序“燒寫”入實際的FPGA硬件芯片中,采用邏輯分析儀進行觀察,波形輸出如圖7、圖8所示,與仿真結(jié)果一致。

圖4 驅(qū)動電路總體波形圖

圖5 驅(qū)動電路起始部分信號波形圖

圖6 驅(qū)動電路感光結(jié)束部分信號波形圖

圖7 感光階段各驅(qū)動脈沖信號輸出波形

圖8 仿真的總體波形
邏輯分析儀觀察結(jié)果,SH的高電平時間是較于Ф1E、Ф2E驅(qū)動信號高/低電平的中間,CP的相位較RS稍落后,并且SH保持在高電平時RS保持在低電平。從波形中可觀察Ф1E、Ф2E、RS以及CP的周期是一致的,并且當RS處于下降沿時CP恰好處于上升沿。在一個SH周期內(nèi)Ф1E、Ф2E、RS以及CP的脈沖個數(shù)是大于3 825的。由此可見各信號驅(qū)動時序是符合要求的。
利用FPGA設(shè)計產(chǎn)生的驅(qū)動信號,引入到TCD1703圖像傳感器的驅(qū)動輸入端。將CCD的輸出信號引腳連接到示波器觀察。采用不同強度的光來觀察示波器中采集到的TCD1703的輸出波形的變化。
利用黑布將傳感器表面接受光強的地方完全遮蔽住,然后將黑布沿一定的方向慢慢地從傳感器上移開每次曝光其五分之一,直至該傳感器全曝光,5個過程示波器觀察的結(jié)果如圖9(a)~圖9(e)。通過實驗可以觀察到,一旦到達工作電壓值,CCD在驅(qū)動信號的驅(qū)動下輸出正常視頻信號。隨著光強的增加,CCD輸出信號的幅度增加,直到飽和。同時驗證了驅(qū)動電路設(shè)計的正確性,CCD在驅(qū)動時序電路的作用下,正確地輸出了信號。

圖9 不同光照強度下CCD的輸出波形
[1]米本和也.CCD/CMOS圖像傳感器基礎(chǔ)與應(yīng)用[M].北京:科學出版社,2006:●-●.
[2]王磊,童子權(quán).基于CPLD的面陣CCD驅(qū)動電路的設(shè)計[J].儀表技術(shù)與傳感器,2010(10):66-82.
[3]譚露雯,李景鎮(zhèn),陸小微,等.基于CPLD工作模式可調(diào)的線陣CCD驅(qū)動電路設(shè)計[J].光子學報,2010,39(3):436-440.
[4]冉峰,黃舒平,楊輝.圖像采集系統(tǒng)的面陣CCD驅(qū)動電路設(shè)計[J].電子技術(shù)應(yīng)用,2009(11):43-45.
[5]周根榮,姜平.一種基于高速超微型單片機的CCD驅(qū)動電路設(shè)計[J].電子技術(shù)應(yīng)用,2006,32(3):105-107.
[6]張林,李永新,高云山.基于IL-P3的高速CCD驅(qū)動電路的設(shè)計與實現(xiàn)[J].電子器件,2007,30(3):819-822.
[7]姬先舉,溫志渝.基于CPLD的光積分時間可調(diào)線陣CCD驅(qū)動電路設(shè)計[J].傳感技術(shù)學報,2006,19(5):1781-1784.
[8]張亮,劉潤民.可配置的通用線陣CCD驅(qū)動電路的研究與設(shè)計[J].電子技術(shù)應(yīng)用,2013,39(12):55-60.
[9]彭曉鈞,何平安,袁炳夏,等.基于CPLD的線陣CCD驅(qū)動電路設(shè)計和實現(xiàn)[J].光電子·激光,2007,18(7):803-807.
[10]孔淵,王世勇,崔洪洲,等.基于CPLD的面陣CCD驅(qū)動電路設(shè)計[J].半導體光電,2003,24(5):363-59.
[11]顧一,葉煒等.基于CPLD的CCD驅(qū)動時序發(fā)生器設(shè)計[J].光學儀器,2008,30(6):54-59.

程瑤(1981-),女,漢族,重慶江津,重慶理工大學,副教授,主要從事紅外圖像、嵌入式系統(tǒng)等的研究,chy_cqit @cqut.edu.cn。
Driving Circuit Designing of Linear Array CCD Based on FPGA*
CHENG Yao1*,ZHOU Na1,WANG Rongxiu2
(1.College of Mechanical Engineering,Chongqing University of Technology,Chongqing 400050,China; 2.Chong qing T&B University,Chongqing 400067,China)
The design of driving circuits is a crucial factor to realize the various design features.Only with the strict driving signals desiging,the CCD devices can perform the further work.The TCD1703C driver timing requirements for linear array CCD device were analyzed.And the driving signalswere designed by using QuartusⅡsoftware and Verilog HDL.The program was downloaded to the FPGA device,and the output signals’waveformsweremonitored by the logic analyzer.So the feasibility of the time sequence design of linear array CCD was verified.Finally,connecting the driving signals to the CCD device,the CCD was driven by the driving signals,and the corresponding video signal was output under the different illumination conditions.
CCD;Driving circuit;FPGA;QuartusⅡ;Verilog HDL
C:7230
10.3969/j.issn.1005-9490.2017.01.016
TN386.5
:A
:1005-9490(2017)01-0082-05
項目來源:國家自然科學基金項目(51505052,51505053);重慶市科委基礎(chǔ)與前沿研究一般項目(cstc2016jcyjA0497);重慶市教委科學技術(shù)研究項目(KJ1500935,KJ1500931,KJ1500617)
2016-01-21修改日期:2016-02-29