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