5 Gsps高速數(shù)據(jù)采集系統(tǒng)的設(shè)計與實現(xiàn)
摘要:以某高速實時頻譜儀為應(yīng)用背景,論述了5 Gsps采樣率的高速數(shù)據(jù)采集系統(tǒng)的構(gòu)成和設(shè)計要點,著重分析了采集系統(tǒng)的關(guān)鍵部分高速ADC(analog to digital,模數(shù)轉(zhuǎn)換器)的設(shè)計、系統(tǒng)采樣時鐘設(shè)計、模數(shù)混合信號完整性設(shè)計、電磁兼容性設(shè)計和基于總線和接口標(biāo)準(zhǔn)(PCI Express)的數(shù)據(jù)傳輸和處理軟件設(shè)計。在實現(xiàn)了系統(tǒng)硬件的基礎(chǔ)上,采用Xilinx公司ISE軟件的在線邏輯分析儀(ChipScope Pro)測試了ADC和采樣時鐘的性能,實測表明整體指標(biāo)達(dá)到設(shè)計要求。給出上位機對采集數(shù)據(jù)進(jìn)行處理的結(jié)果,表明系統(tǒng)實現(xiàn)了數(shù)據(jù)的實時采集存儲功能。
關(guān)鍵詞:高速數(shù)據(jù)采集;高速ADC;FPGA;PCI Express
高速實時頻譜儀是對實時采集的數(shù)據(jù)進(jìn)行頻譜分析,要達(dá)到這樣的目的,對數(shù)據(jù)采集系統(tǒng)的采樣精度、采樣率和存儲量等指標(biāo)提出了更高的要求。而在高速數(shù)據(jù)采集系統(tǒng)中,ADC在很大程度上決定了系統(tǒng)的整體性能,而它們的性能又受到時鐘質(zhì)量的影響。為滿足系統(tǒng)對高速ADC采樣精度、采樣率的要求,本設(shè)計中提出一種新的解決方案,采用型號為EV8AQ160的高速ADC對數(shù)據(jù)進(jìn)行采樣;考慮到ADC對高質(zhì)量、低抖動、低相位噪聲的采樣時鐘的要求,采用AD9520為5 Gsps數(shù)據(jù)采集系統(tǒng)提供采樣時鐘。為保證系統(tǒng)的穩(wěn)定性,對模數(shù)混合信號完整性和電磁兼容性進(jìn)行了分析。對ADC和時鐘性能進(jìn)行測試,并給出上位機數(shù)據(jù)顯示結(jié)果,實測表明該系統(tǒng)實現(xiàn)了數(shù)據(jù)的高速采集、存儲和實時后處理。
1 系統(tǒng)的構(gòu)成
高速數(shù)據(jù)采集系統(tǒng)主要包括模擬信號調(diào)理電路、高速ADC、高速時鐘電路、大容量數(shù)據(jù)緩存、系統(tǒng)時序及控制邏輯電路和計算機接口電路等。圖1所示為5 Gsps高速數(shù)據(jù)采集系統(tǒng)的原理框圖。所用ADC型號為EV8AQ160,8 bit采樣精度,內(nèi)部集成4路ADC,最高采樣率達(dá)5 Gsps,可以工作在多種模式下。通過對ADC工作模式進(jìn)行配置,ADC既可以工作在采樣率為5 Gsps的單通道模式,也可以工作在采樣率為2.5 Gsps的雙通道模式。模擬輸入信號經(jīng)過BALUN型高頻變壓器完成單端信號到差分信號的轉(zhuǎn)換,ADC對差分信號進(jìn)行采樣,然后把數(shù)據(jù)送入FPGA,F(xiàn)PGA將接收到的數(shù)據(jù)進(jìn)行預(yù)處理后存儲到第三代雙倍速率同步動態(tài)隨機存儲器(DDR3)中,需要對采集的數(shù)據(jù)進(jìn)行后續(xù)處理時,將數(shù)據(jù)從DDR3中取出,并通過PCI Express傳送給上位機,上位機對數(shù)據(jù)進(jìn)行處理后顯示。整個硬件系統(tǒng)僅采用一片F(xiàn)PGA來處理,并作為主控芯片對整個系統(tǒng)進(jìn)行通信和控制,大大提高了系統(tǒng)的運行速度。本設(shè)計采用Xilinx公司Virrex-6系列FPGA,型號為XC6VLX240T-1156C。
2 系統(tǒng)的設(shè)計與實現(xiàn)
2.1 高速ADC設(shè)計及其完整性分析
高速ADC芯片EV8AQ160在片內(nèi)集成了4路獨立的ADC,每個通道具有1.25Gsps的采樣率,可以工作在3種模式下,最高采樣率可達(dá)5Gsps。要求2.5 GHz差分對稱時鐘輸入,可進(jìn)行ADC主復(fù)位。EV8AQ160內(nèi)部集成了1:1和1:2的數(shù)據(jù)多路分離器(DMUX)和LVDS輸出緩沖器,可以降低輸出數(shù)據(jù)率,方便與多種類型的高速FPGA直接相連,實現(xiàn)高速率的數(shù)據(jù)存儲和處理。為了補償由于器件參數(shù)離散和傳輸路徑差異所造成的采樣數(shù)據(jù)誤差,該ADC具有針對每路ADC數(shù)據(jù)的積分非線性(INL)、增益(Gain)、偏置(Offset)、相位(Phase)的控制和校正。EV8AQ160提供測試功能,具有兩種測試方式,方便用戶根據(jù)自己的習(xí)慣對ADC是否正常工作進(jìn)行測試。
在本設(shè)計中,ADC工作在單通道模式下,DMUX1:2輸出,輸出數(shù)據(jù)寬度為64位,數(shù)據(jù)輸出率為625 Msps,輸出數(shù)據(jù)的同時輸出312.5 MHz同步采樣時鐘,F(xiàn)PGA在該時鐘的上升沿和下降沿采集數(shù)據(jù)。
由于探測器、信號源等輸出的信號通常為單端信號,而ADC的模擬輸入端為差分形式,在其前端加入BALUN型高頻變壓器,不僅實現(xiàn)了單端輸入到差分輸入的轉(zhuǎn)換,還起到了隔離、抑制外部噪聲引入等功能。
高速ADC的8路輸出均屬于高速數(shù)字信號,而其輸入信號為模擬信號,因此在進(jìn)行電路設(shè)計時,要考慮ADC的布局、模擬信號走線、數(shù)據(jù)信號走線以及其采樣時鐘走線,還有時鐘布局和FPGA的接口等,確保所涉及的系統(tǒng)完全滿足信號完整性的規(guī)范要求,如振鈴、反射、串?dāng)_和電磁干擾等。
本設(shè)計使用Mentor Graphics的PADS軟件對高速模數(shù)信號PCB板進(jìn)行設(shè)計,根據(jù)上面提出的信號完整性和電磁兼容問題,并結(jié)合本設(shè)計的實際情況,主要進(jìn)行如下設(shè)計:
1)合理布局:采用具有獨立的地平面和電源層的多層電路板,并按照電路功能,對器件進(jìn)行分塊布局,模擬電路采用平面技術(shù)和網(wǎng)狀屏蔽技術(shù)。
2)合理的信號走線:ADC的模擬輸入信號走線旁邊不能有別的走線;其輸出的數(shù)據(jù)信號和時鐘信號盡可能遠(yuǎn)離時鐘電路模塊,為保證采樣時鐘信號與數(shù)據(jù)信號同步,走線時讓它們都經(jīng)歷相同的延遲,此外還能保證其時序的一致性,從而消除了走線延時對后端數(shù)據(jù)接收的影響。在布線條件允許范圍內(nèi),輸出的同一路數(shù)據(jù)信號線按照最短路徑布線原則在同一電路層上走線,差分對與差分對之間的距離要盡量拉大,或者盡可能地減少相鄰傳輸線間的累積平行距離,以減小串?dāng)_。時鐘輸入信號作為模擬信號處理,遠(yuǎn)離任何模擬輸入和數(shù)字信號。
3)所有高速信號和時鐘信號盡量走在內(nèi)層。在獲得相同目標(biāo)特征阻抗的情況下,應(yīng)該將布線層與參考平面(地平面與電源層)間的介質(zhì)層盡可能的薄,這樣就加大了傳輸線與參考平面間的耦合度,減少相鄰傳輸線間的耦合。
2.2 采樣時鐘電路設(shè)計及其完整性分析
時鐘信號的質(zhì)量是決定采樣系統(tǒng)性能的關(guān)鍵因素,也是高速數(shù)據(jù)采集系統(tǒng)的一個難點。反映時鐘質(zhì)量的指標(biāo)主要有兩個:相位噪聲和相位抖動。在高速、高分辨率的ADC電路中,采樣時鐘的抖動必然造成時基采樣點的偏離,從而導(dǎo)致系統(tǒng)整體性能的下降,主要表現(xiàn)在對ADC采集數(shù)據(jù)信噪比和有效位數(shù)的影響上。
采樣時鐘完整意義上的抖動應(yīng)包含時鐘源孔徑抖動、時鐘驅(qū)動器件的孔徑抖動以及ADC自身的孔徑抖動。ADC自身的孔徑抖動是一個常數(shù),通常會在器件手冊中作為一項重要指標(biāo)給出,時鐘驅(qū)動器件引入的時鐘的孔徑可以通過其器件手冊和相位噪聲倍頻公式獲得,時鐘源抖動則與時鐘穩(wěn)定性和相位噪聲參數(shù)有關(guān)。
如果ADC時鐘總的孔徑抖動的概率分布均值為0,方差為σ2(σ=tj,tj為ADC孔徑時間)時,系統(tǒng)信噪比與孔徑抖動關(guān)系可以表示為:
其中n為ADC轉(zhuǎn)換位數(shù),ω為ADC轉(zhuǎn)換頻率。
如果系統(tǒng)采樣頻率為5 GHz,轉(zhuǎn)換位數(shù)為8位,希望得到的有效位數(shù)需要大于6位,則通過信噪比與有效位數(shù)關(guān)系式:
SNR=6.02xENOB+1.76 dB (2)
可得系統(tǒng)信噪比要大于37.88 dB,從而可以算出時鐘抖動需要小于7.82 ps。采樣頻率越高,則時鐘抖動需要的值就會越小。
本設(shè)計中,高速ADC芯片工作在單通道模式下,為滿足EV8AQ160對高質(zhì)量采樣時鐘的要求,這里采用低抖動、低相位噪聲鎖相環(huán)時鐘芯片AD9520提供2.5GHz采樣時鐘。AD9520片內(nèi)VCO可從2.27GHz調(diào)節(jié)到2.65GHz,還支持外部3.3V或5V供電,頻率高達(dá)2.4GHz的VCO/VCXO。 AD9520支持SPI和I2C接口,片內(nèi)集成一片EEPROM可通過串行接口編程以及保存用于上電復(fù)位的用戶定義存儲器的設(shè)置。有4組共12個LNPECL時鐘輸出,任何一個LVPECL輸出在時鐘頻率不大于250 MHz時均可重新定義為2個CMOS輸出,并且在上電時可自動同步所有的輸出。AD9520的時鐘抖動低至十?dāng)?shù)量級fs,最高為百數(shù)量級fs,可以滿足本系統(tǒng)對采樣時鐘的要求。
為了減小時鐘相位的抖動和采樣時鐘偏移,在時鐘電路的PCB設(shè)計上還采用阻抗匹配的微帶線和對稱等長走線,防止高速時鐘信號反射,提高時鐘的信號質(zhì)量。時鐘信號的驅(qū)動電路采用差分PECL電路,PECL器件的電平轉(zhuǎn)換速度快,輸出信號抖動小,可以減小ADC時鐘的孔徑抖動。
2.3 高速ADC與FPGA接口設(shè)計
ADC輸出8路8 bit 625 Msps低電壓差分信號(LVDS)邏輯的數(shù)據(jù),在采集系統(tǒng)設(shè)計中對與其接口器件的性能要求也較高。Xilinx公司Virtex-6系列型號為XC6VLX240T-1156C的FPGA具有高達(dá)200個專用LVDS差分邏輯接收通道,雙數(shù)據(jù)率(DDR)LVDS通道發(fā)送數(shù)據(jù)速率高達(dá)1.25 Gbps,接收數(shù)據(jù)速率也高達(dá)1.0 Gbps,能夠滿足接收EV8AQ160輸出數(shù)據(jù)和邏輯控制的要求。由于ADC的輸出和FPGA的輸入均設(shè)計為LVDS邏輯標(biāo)準(zhǔn),因此ADC可直接與FPGA相連。Virtex-6系列FPGA內(nèi)部具有專門的LVDS處理單元,可實現(xiàn)LVDS邏輯的串/并降速轉(zhuǎn)換,降低速率后的數(shù)據(jù)給到內(nèi)部分布式處理算法(DPA)單元進(jìn)行精確處理后存儲到內(nèi)部的存儲單元或者外部存儲器件DDR3中。當(dāng)需要對數(shù)據(jù)進(jìn)行進(jìn)一步處理時,通過PCI Express將有效的采集、存儲數(shù)據(jù)發(fā)送到上位機,經(jīng)過軟件編程實現(xiàn)采集信號的波形顯示。
2.4 上位機軟件設(shè)計
高速數(shù)據(jù)傳輸?shù)纳衔粰C部分是以PC機為平臺進(jìn)行的軟件設(shè)計。整個軟件架構(gòu)如圖2所示,主要由用戶應(yīng)用程序和驅(qū)動程序兩部分組成。
上位機系統(tǒng)通過PCI Express接口,控制板卡上的FPGA,并使上位機能夠讀取到FPGA以DMA方式連續(xù)上傳的數(shù)據(jù),實現(xiàn)上位機內(nèi)存和FPGA之間數(shù)據(jù)的高速傳輸。該軟件的驅(qū)動部分設(shè)計,依靠WinDriver的API函數(shù)和已有的PCI Express硬件設(shè)備驅(qū)動函數(shù),完成對硬件設(shè)備的基本控制,為以后軟件的進(jìn)一步升級奠定良好的基礎(chǔ)。而用戶應(yīng)用部分,主要是在Visual Studio環(huán)境中完成,通過調(diào)用可靠的設(shè)備驅(qū)動函數(shù),成功地通過PCI Express接口與FPGA進(jìn)行數(shù)據(jù)通信。
2.5 測試結(jié)果
1)ADC與時鐘性能測試
這里采用Xilinx公司ISE軟件中的ChipScope Pro工具將邏輯分析器、總線分析器和虛擬I/O小型軟件核直接插入到設(shè)計當(dāng)中,直接查看ADC輸出的數(shù)字信號,這些信號在操作系統(tǒng)速度下或接近操作系統(tǒng)速度下被采集,并從編程接口中引出,再將采集到的信號通過ChipScope Pro邏輯分析器進(jìn)行分析。
首先讓ADC工作在采樣率為5 Gsps的單通道模式下,用特定的測試模式來檢驗ADC與FPGA之間的數(shù)據(jù)接口的準(zhǔn)確性。將測試程序下載到FPGA并運行后,用ChipScopePro抓取ADC的輸出數(shù)據(jù)如圖3(a)所示。然后在單通道模式下不使用測試模式,輸入2MHz的正弦信號,用ChipSco pePro抓取ADC的輸出數(shù)據(jù)如圖3(b)所示。
從圖3(a)中的數(shù)據(jù)可以看出,各個通道均以約定的格式輸出,說明ADC與FPGA之間數(shù)據(jù)接口已經(jīng)準(zhǔn)確連通。圖3(b),輸入正弦信號時用BUS PLOT工具將抓取到的數(shù)據(jù)實時畫圖,得到的波形平滑,計算其信噪比為42.9 dB,由式(2)計算得到ADC的有效位數(shù)為6.6 bit。實測表明,AD9520輸出的2.5 GHz時鐘以及EV8AQ160均具有較高的性能,整體指標(biāo)達(dá)到設(shè)計要求。
2)上位機數(shù)據(jù)結(jié)果顯示
用戶應(yīng)用窗口程序的設(shè)計是在Visual Studio 2008環(huán)境下進(jìn)行的,內(nèi)部通過調(diào)用WinDriver提供的API函數(shù)及已編寫的驅(qū)動函數(shù),可以打開、查看、配置和關(guān)閉該PCI Express硬件設(shè)備。將系統(tǒng)配置為5 Gsps采樣率的工作模式,用TeeChart畫出實時采集到的波形,如圖4所示,表明系統(tǒng)實現(xiàn)了數(shù)據(jù)的實時采集存儲功能。
3 結(jié)束語
采用FPGA作為數(shù)據(jù)采集系統(tǒng)的控制核心,使用FPGA內(nèi)部資源或者外部DDR3實現(xiàn)數(shù)據(jù)的緩沖存儲,充分利用系統(tǒng)資源,便于調(diào)試和修改。實現(xiàn)了5 Gsps實時采樣率、8 bits采樣精度的高速實時數(shù)據(jù)采集系統(tǒng)。在完成電路的軟件和硬件設(shè)計以后,通過對ADC和時鐘進(jìn)行測試以及上位機控制界面采集信號的波形顯示,結(jié)果表明該系統(tǒng)可以穩(wěn)定地工作,滿足設(shè)計要求。