摘要:針對(duì)設(shè)計(jì)微型光譜儀時(shí)常會(huì)根據(jù)需要更換CCD,PDA的現(xiàn)狀,采用Cypress公司的AD21310和Cyclone系列FPGA設(shè)計(jì)適用于多種線陣CCD和小型面陣CCD的通用采集系統(tǒng),設(shè)計(jì)16口入8口出異步FIFO。提供192 Kb高速緩存空間。USB器件采用快速讀入方式,極大提高了數(shù)據(jù)傳輸速度。系統(tǒng)實(shí)現(xiàn)了多種線陣CCD采集,同時(shí)也實(shí)現(xiàn)了相關(guān)雙采樣技術(shù),具有快速、便捷、模塊化的特點(diǎn)。
關(guān)鍵詞:數(shù)據(jù)采集;CCD;FIFO;USB
1 引言
隨著微型光譜儀快速發(fā)展,CCD和PDA廣泛使用,CCD和PDA的種類型號(hào)越來(lái)越多,每種型號(hào)都需要專門的驅(qū)動(dòng)采集板,使得開發(fā)產(chǎn)品周期長(zhǎng)、費(fèi)用大。這里提出一種基于FPGA和USB的通用CCD采集系統(tǒng)設(shè)計(jì)方案。該系統(tǒng)在不改變硬件的情況下可以采集多種CCD,并上傳至PC機(jī),使用軟件處理采集到的數(shù)據(jù)。
2 通用CCD采集系統(tǒng)設(shè)計(jì)
系統(tǒng)部署圖如圖1所示。系統(tǒng)硬件分為接口板、通用驅(qū)動(dòng)采集板、計(jì)算機(jī)。接口板匹配驅(qū)動(dòng)信號(hào),將CCD輸出視頻信號(hào)通過(guò)前置處理后鏈接到CCD通用采集板。在CCD通用采集板中,A/D轉(zhuǎn)換器對(duì)視頻信號(hào)進(jìn)行模數(shù)轉(zhuǎn)換后,按幀暫存在FPGA內(nèi)的FIFO中,通過(guò)USB快速塊傳輸模式上傳到計(jì)算機(jī)中.最后計(jì)算機(jī)軟件MEMSpector處理并顯示采集到的譜線。
通用性是由通用CCD驅(qū)動(dòng)模塊和16In8Out異步FIFO實(shí)現(xiàn)的。根據(jù)不同類型的CCD編制不同的CCD驅(qū)動(dòng)模塊,采用16In8Out異步FIFO,F(xiàn)IFO根據(jù)CCD驅(qū)動(dòng)模塊提供的FS幀同步來(lái)確定暫存A/D轉(zhuǎn)換一幀像元數(shù),實(shí)現(xiàn)了采集A/D轉(zhuǎn)換數(shù)據(jù)與USB傳輸?shù)姆蛛x,在修改或升級(jí)CCD驅(qū)動(dòng)時(shí),無(wú)需修改采集和數(shù)據(jù)輸出代碼,實(shí)現(xiàn)了通用性。
2.1 CCD接口板
由于大多數(shù)CCD管腳不兼容,視頻輸出電壓也不同。CCD接口板提供CCD插座和轉(zhuǎn)接CCD驅(qū)動(dòng)信號(hào)以及輸出信號(hào)電壓匹配。CCD接口板是各種類型CCD鏈接到通用CCD采集板的紐帶。
2.2 通用驅(qū)動(dòng)采集板
通用驅(qū)動(dòng)采集板由A/D轉(zhuǎn)換、FPGA(通用CCD驅(qū)動(dòng)器模塊和16In8Out異步FIFO模塊)、USB 3部分組成。A/D轉(zhuǎn)換部分完成系統(tǒng)的A/D轉(zhuǎn)換;FPGA部分完成系統(tǒng)的CCD驅(qū)動(dòng)、數(shù)據(jù)采集、CDS實(shí)現(xiàn);USB部分完成數(shù)據(jù)的傳輸。
2.2.1 A/D轉(zhuǎn)換部分
系統(tǒng)需采集多種CCD并實(shí)現(xiàn)CDS,而且系統(tǒng)主要由USB供電,這就要求A/D轉(zhuǎn)換速度快,供電電壓低,最好參考電壓內(nèi)置。AD9235-40屬于12位、40 MS/s模數(shù)轉(zhuǎn)換器系列,采用3 V單電源供電,該系列均內(nèi)置一個(gè)高性能采樣保持放大器(SHA)和基準(zhǔn)電壓源。AD923540采用多級(jí)差分流水線架構(gòu),內(nèi)置輸出糾錯(cuò)邏輯,在40 MSP/S數(shù)據(jù)速率時(shí)可提供12位精度,并保證在整個(gè)工作溫度范圍內(nèi)無(wú)失碼。
FPGA中采集信號(hào)發(fā)生器提供A/D采集時(shí)鐘,同時(shí)也控制FIFO和CCD驅(qū)動(dòng)器。A/D采樣速率不再受數(shù)據(jù)傳輸和采集制約,采樣速率完全和CCD速度匹配。并可實(shí)現(xiàn)1幀內(nèi)1個(gè)像元的雙采樣,從而實(shí)現(xiàn)CDS。
2.2.2 FPGA部分的通用CCD驅(qū)動(dòng)器模塊
由于不同生產(chǎn)商的CCD器件的驅(qū)動(dòng)時(shí)序往往差別很大,因此需針對(duì)每種CCD器件編制其CCD驅(qū)動(dòng)器模塊。驅(qū)動(dòng)時(shí)鐘和采集脈沖由分頻器和采集信號(hào)發(fā)生器提供,如圖2所示。
CCD驅(qū)動(dòng)器輸入信號(hào)由兩路驅(qū)動(dòng)時(shí)鐘和積分時(shí)間控制信號(hào)INT組成;輸出信號(hào)由幀同步信號(hào)FS和CCD Driver信號(hào)組成。不同的CCD驅(qū)動(dòng)器模塊僅CCD Driver信號(hào)有所不同,其他接口一樣。在改變CCD時(shí)只需替換CCD驅(qū)動(dòng)器模塊即可。
2.2. 3 FPGA部分的16In8Out異步FIFO
FIFO用于暫存A/D轉(zhuǎn)換的信號(hào)。待存滿1幀并且USB塊傳輸空閑后,將FIFO中的1幀數(shù)據(jù)通過(guò)快速塊傳輸上傳至計(jì)算機(jī)。1幀的像元個(gè)數(shù)由CCD驅(qū)動(dòng)模塊提供的FS信號(hào)決定。FIFO內(nèi)的存儲(chǔ)空間為192 Kb。滿足線陣CCD和小型面陣CCD的數(shù)據(jù)存儲(chǔ)需求。圖3為16In8Out異步FIFO的內(nèi)部原理圖。