?
本文根據瞬變光輻射探測中強背景、弱目標的特點,設計出以FPGA為控制和處理的核心的數據采集方案。該方案采用背景與信號雙重濾波通道,二級程控放大,有效地保證了信號采集質量;同時對目標信號采用變頻存儲,大大降低了對數據存儲與傳輸的要求,保證了采集過程中有較一致的測量精度。
1 系統組成及工作原理
數據采集系統大致可分為三個部分:前級預處理模塊,采樣存儲模塊,FPGA控制模塊,其中前級預處理模塊包括光電轉換器件,有源濾波器組,程控放大電路等。整個系統框圖如圖1所示,光電轉換電路將進入系統的光信號通過探測器轉化為電流信號,然后經跨阻運算放大器轉換為電壓信號。系統設計兩個濾波通道:背景采用低通濾波,信號采用高通濾波。在起始狀態,模擬開關默認選通背景通道,程控放大器設置為背景模式。背景信號經A/D采樣后送入FPGA,進行閾值比較。當檢測到大于閾值的情況時,FPGA對模擬開關進行通道切換,高通濾波器通道選通,同時程控放大器工作模式選擇為信號模式。根據信號前陡后緩的特點,FPGA通過對A/D與FIFO的協同控制,實現數據先密后疏地采集存儲。

2 數據采集系統硬件設計
2.1 前級預處理電路
光電檢測電路中,光電探測器直接關系著系統性能的優劣。為了減小由環境電磁輻射所引起的感生電流的影響,器件適宜選擇陶瓷封裝。另外,探測器的感光面積不能過大,否則會導致暗電流、節電容、上升時間等參數增大,影響探測效果。設計中采用日本濱松公司的S2387硅光二極管,該探測器具有靈敏度高,時間響應快,動態范圍大等特點。電路設計采用零偏置模式,無暗電流,二極管噪聲主要是分流電阻產生的熱噪聲,同時具有最佳的精密度和線性度。高低通濾波器采用有源濾波器,反應速度快,濾除諧波效果好,可以動態的補償無功功率。程控放大器由集成運放與模擬開關組成,通過FPGA控制模擬開關,在運放的輸入端接入不同的電阻實現增益的調整。
2.2 采樣存儲電路
由于目標信號動態范圍很大(約為80 dB),因此需要選擇寬動態范圍的ADC來實現對信號的采集。采用14 b ADC采樣幅度變化達4個數量級的動態范圍的信號,能滿足系統所要求的高探測靈敏度要求。但是由于A/D轉換器件都存在精度誤差,用高精度的A/D轉換元器件當作低精度的A/D轉換元器件使用可以減小精度誤差。本設計采用ADI公司的16 bAD976A。AD976A低功耗16 b逐次逼近式A/D轉換器,轉換速度為200 KSPS,可選用內部或是外部的2.5 V參考電源。AD976允許16 b一次并行輸出,又可以以兩個8 b的形式輸出。設計中為節省管腳采用雙8 b輸出。
為了保證在不同時鐘域間準確地傳輸數據,數據緩存采用異步FIFO。異步FIFO具有高速、可靠性好等特點,能夠避免不同時鐘間由于相位差異造成數據的誤采樣。設計中采用的IDT7204是IDT72XX系列中的4 096×9 b的CMOS雙口存儲緩存芯片。內部讀、寫指針在先進先出的基礎上進行讀寫,其寫時鐘W和讀時鐘R由外部提供;滿標志()和空標志()控制數據的溢出和空讀,仿真存儲器滿時寫入數據,能方便地進行任意字深和字長的擴展。
3 FPGA控制邏輯設計
數據采集系統以FPGA為核心完成自適應閾值設定,工作模式切換、變頻采樣存儲以及按照接口協議下傳數據。數據采樣和存儲控制流程如圖3所示。

3.1 自適應閾值設定
自適應閾值的設定是根據當前背景噪聲的大小進行現有閾值進行更新。系統默認的工作狀態是背景檢測模式,當采集到系統所要求的數據個數后,將這些數據求其有效值后乘以一個加權系數(一般情況下是5~10)作為當前的閾值。系統每隔一段時間給FPGA重新賦閾值。當所采集的數據的幅值連續超過當前閾值設定的次數時,此時系統判定當前的背景信號發生,FPGA控制切換相關的電路,啟動相關的電路工作。這樣做的目的是防止高能粒子撞擊光學鏡頭或是光罩,瞬間產生超過當前閾值的能量造成誤觸發。
3.2 變頻存儲的實現
為了減小信號處理的數據量,根據目標信號的特征,可采用變速率存儲技術。盡管所探測的瞬變光輻射信號的最高頻率一般在10 kHz左右,根據奈奎斯特采樣定理,采樣頻率只要在20 kHz以上即可以無失真的還原信號,但是所要探測的光輻射信號中有一些關鍵峰值到達時刻最小不到半個毫秒,高速率采樣有助于提高計算峰值到達時刻的精度,同時有利于提高A/D的信噪比。A/D采集系統初始的采樣頻率為200 kHz,每隔32個采樣點,存儲頻率下降50%。

在電路中采用的方法是:A/D轉換器按照固定的轉換頻率進行模擬量到數字量的轉換,通過FPGA控制數據的變速率存儲。其具體的VHDL設計步驟如下:
(1)實現采樣時鐘的逐次分頻;
(2)調整逐次分頻的占空比,以防止數據存儲錯誤;
(3)設計使能信號,實現對每組只存儲32點。
由于系統對目標信號采集時間長度是固定的,故變頻存儲的變頻次數是有限的。初始存儲時間間隔△t=0.01 ms,其變頻次數不超過16次。故本方案中設計一個16位計數器counter16,對200 kHz采樣時鐘計數。計數器counter16的第0~15位的輸出,即可以實現對200 kHz采樣時鐘的逐次二分頻。但是由于從counter16(1)開始,每個低位輸出時對應著K個有效數據,但存儲的數據只會是最后一個有效數據,這樣可能會造成數據存儲出錯,故需要對counter16(1)~counter16(15)進行占空比調整。將占空比從1:1調整為1:(2K-1),其中K為整數(K=2~32 768)。調整占空比VHDL的思路為設計一個16位的counter16_v計數器,將counter16的相應位進行相與后賦給相應的counter16_v。
由于每組只存儲32個數據,因此對應每組還要設計相應的16 b使能信號dcnt。方法是對clk_200K計數,存儲開始后,開始64個clk_200K時鐘將第一組數據使能信號dcnt(o)置為高電平,然后保持低;接著對128個clk_200K時鐘將第二組數據使能dcnt(1)置為高電平,然后保持低。按照這種方法可將16個使能信號從dcnt(0)~dent(15)設置好。變頻存儲的使能頻率為ad_clk。
這里給出基于Altera公司的FPGA Flex10K系列的EPF10K20TC144-3。圖5為變頻存儲時,采樣頻率clk_200K與其他信號關系及其時序波形。系統先以默認的采樣頻率進行采樣,當識別檢測模塊判定信號發生時(siggen變為高電平),開始輸出經過變頻的采樣數據,每隔32點,存儲頻率下降50%,直到系統所要求的數據點數為止,采集到波形如圖6所示。當采樣的數據個數符合系統的要求后siggen信號變為低電平,ens屏蔽采樣的數據。等到FIFO清空后,ens重新變為高電平,恢復默認的采樣時鐘,重新開始采樣、識別和存儲工作。
4 結論
根據瞬態光輻射探測系統的整體要求,本文提出了基于目標信號特性基礎上的變頻采集方案,以FPGA為核心控制和處理單元,采用模塊化設計思想,編程實現對數據采樣和存儲的控制。按照工程要求,完成了編程、仿真和外圍硬件電路的搭建,實現了對瞬變光輻射信號的數據采集。該方案有效降低了數據采集系統對于存儲容量的要求,同時也減小了對數據處理量,對于其他數據存儲容量有要求的數據采樣系統具有很好的借鑒作用。
?
評論