高幀頻CCD數(shù)據(jù)采集處理系統(tǒng)的設(shè)計
3.2.2 ADC控制信號
AD9942內(nèi)部寄存器由6條外部配置線進(jìn)行寫入,分別為兩條32位數(shù)據(jù)線SDATA_X(SDATA_A,SDATA_B)包括8位地址、24位數(shù)據(jù)(用于AD工作狀態(tài)控制);兩條位同步信號SCK_X(SCK_A、SCK_B);兩條控制有效信號SL_X(SL_A、SL_B)。數(shù)據(jù)信號在A/D變換前,即幀同步和行同步信號開始前,SL―X為低電平時由FPGA寫入A/D寄存器,并控制其工作狀態(tài)。仿真時序圖如圖5所示。本文引用地址:http://www.ex-cimer.com/article/188517.htm
3.2.3 FPGA實現(xiàn)數(shù)據(jù)緩存
經(jīng)過A/D器件轉(zhuǎn)換之后的數(shù)據(jù),首先通過FPGA內(nèi)部高速緩沖,然后再轉(zhuǎn)存到片外存儲器中。該系統(tǒng)中FPGA內(nèi)部Block RAM陣列的控制采用乒乓傳輸結(jié)構(gòu),它可以保證采樣和傳輸各自不間斷的進(jìn)行。具體做法是將96個:Block RAM分成兩組(RAM1,RAM2),時鐘和控制信號均獨立。系統(tǒng)工作時,輸入數(shù)據(jù)分為兩路,流向由VHDL語言編程控制寫地址來實現(xiàn)RAM1和RAM2的選擇,當(dāng)?shù)刂分赶虻谝唤M的48塊Block RAM時,RAM1進(jìn)行數(shù)據(jù)寫入,與此同時,第二組的48塊BlockRAM則進(jìn)行數(shù)據(jù)讀出;RAM1存儲結(jié)束后,切換到RAM2寫入而RAM1讀出的模式,如此循環(huán)。
XQ2V3000每一個Block RAM的容量為18 Kb,總?cè)萘繛? 728 Kb(18 Kb×96),CCD輸出的一幀圖像數(shù)據(jù)量為1 572.864 Kb(256行×512列×12 b),可見完全可以實現(xiàn)幀存儲。具體實現(xiàn)時由RAM1和RAM2各存取半幀圖像,用VHDL語言在對讀/寫地址進(jìn)行編程時,計數(shù)器計數(shù)滿128行數(shù)據(jù)后,讀/寫地址分別指向另一個RAM,部分寫地址仿真圖如圖6所示。
最終經(jīng)過對AD9942的各項控制信號和FPGA數(shù)據(jù)緩存地址的仿真,仿真結(jié)果正確并符合技術(shù)手冊的各項要求。
4 結(jié) 語
這里介紹了一種基于FPGA控制的CCD高速數(shù)據(jù)采集處理系統(tǒng)的原理和實現(xiàn)。由于創(chuàng)新性的將系統(tǒng)控制和數(shù)據(jù)緩存集成在一片F(xiàn)PGA內(nèi),并將多路CCD模擬信號通過分時復(fù)用一片AD9942實現(xiàn)了模/數(shù)轉(zhuǎn)換。從而提高了系統(tǒng)的集成度,而且采用FPGA完成整個系統(tǒng)的主體設(shè)計具有速度快、設(shè)計靈活、保密性好和維護(hù)方便等優(yōu)點,有效地解決了全系統(tǒng)控制同步問題。通過仿真結(jié)果測試,該系統(tǒng)可以穩(wěn)定的工作,A/D轉(zhuǎn)換速率可以達(dá)到40 Mb/s,幀頻實現(xiàn)300幀/s,可以為CCD應(yīng)用向高速、小型化、智能化、低功耗方向發(fā)展提供借鑒意義。
評論