吳瓊之,蔡春霞,丁一辰,廖春蘭
(北京理工大學 信息與電子學院,北京 100081)
高速實時頻譜儀是對實時采集的數據進行頻譜分析,要達到這樣的目的,對數據采集系統的采樣精度、采樣率和存儲量等指標提出了更高的要求。而在高速數據采集系統中,ADC在很大程度上決定了系統的整體性能,而它們的性能又受到時鐘質量的影響[1]。為滿足系統對高速ADC采樣精度、采樣率的要求,本設計中提出一種新的解決方案,采用型號為EV8AQ160的高速ADC對數據進行采樣;考慮到ADC對高質量、低抖動、低相位噪聲的采樣時鐘的要求,采用AD9520為5 Gsps數據采集系統提供采樣時鐘。為保證系統的穩定性,對模數混合信號完整性和電磁兼容性進行了分析。對ADC和時鐘性能進行測試,并給出上位機數據顯示結果,實測表明該系統實現了數據的高速采集、存儲和實時后處理。
高速數據采集系統主要包括模擬信號調理電路、高速ADC、高速時鐘電路、大容量數據緩存、系統時序及控制邏輯電路和計算機接口電路等。圖1所示為5 Gsps高速數據采集系統的原理框圖。所用ADC型號為EV8AQ160,8 bit采樣精度,內部集成4路ADC,最高采樣率達5 Gsps,可以工作在多種模式下[2]。通過對ADC工作模式進行配置,ADC既可以工作在采樣率為5 Gsps的單通道模式,也可以工作在采樣率為2.5 Gsps的雙通道模式。模擬輸入信號經過BALUN型高頻變壓器完成單端信號到差分信號的轉換,ADC對差分信號進行采樣,然后把數據送入FPGA,FPGA將接收到的數據進行預處理后存儲到第三代雙倍速率同步動態隨機存儲器(DDR3)中,需要對采集的數據進行后續處理時,將數據從DDR3中取出,并通過PCI Express傳送給上位機,上位機對數據進行處理后顯示。整個硬件系統僅采用一片FPGA來處理,并作為主控芯片對整個系統進行通信和控制,大大提高了系統的運行速度。本設計采用Xilinx公司Virtex-6系列FPGA,型號為XC6VLX240T-1156C[3]。

圖1 系統原理框圖Fig.1 System block diagram
高速ADC芯片EV8AQ160在片內集成了4路獨立的ADC,每個通道具有1.25 Gsps的采樣率,可以工作在3種模式下,最高采樣率可達5 Gsps。要求2.5 GHz差分對稱時鐘輸入,可進行ADC主復位。EV8AQ160內部集成了1:1和1:2的數據多路分離器(DMUX)和LVDS輸出緩沖器,可以降低輸出數據率,方便與多種類型的高速FPGA直接相連,實現高速率的數據存儲和處理。為了補償由于器件參數離散和傳輸路徑差異所造成的采樣數據誤差,該ADC具有針對每路ADC 數據的積分非線性(INL)、增益(Gain)、偏置(Offset)、相位(Phase)的控制和校正。EV8AQ160提供測試功能,具有兩種測試方式,方便用戶根據自己的習慣對ADC是否正常工作進行測試。
在本設計中,ADC工作在單通道模式下,DMUX1:2輸出,輸出數據寬度為64位,數據輸出率為625 Msps,輸出數據的同時輸出312.5 MHz同步采樣時鐘,FPGA在該時鐘的上升沿和下降沿采集數據。
由于探測器、信號源等輸出的信號通常為單端信號,而ADC的模擬輸入端為差分形式,在其前端加入BALUN型高頻變壓器,不僅實現了單端輸入到差分輸入的轉換,還起到了隔離、抑制外部噪聲引入等功能。
高速ADC的8路輸出均屬于高速數字信號,而其輸入信號為模擬信號,因此在進行電路設計時,要考慮ADC的布局、模擬信號走線、數據信號走線以及其采樣時鐘走線,還有時鐘布局和FPGA的接口等,確保所涉及的系統完全滿足信號完整性的規范要求,如振鈴、反射、串擾和電磁干擾等[4]。
本設計使用Mentor Graphics的PADS軟件對高速模數信號PCB板進行設計,根據上面提出的信號完整性和電磁兼容問題,并結合本設計的實際情況,主要進行如下設計:
1)合理布局:采用具有獨立的地平面和電源層的多層電路板,并按照電路功能,對器件進行分塊布局,模擬電路采用平面技術和網狀屏蔽技術[5]。
2)合理的信號走線:ADC的模擬輸入信號走線旁邊不能有別的走線;其輸出的數據信號和時鐘信號盡可能遠離時鐘電路模塊,為保證采樣時鐘信號與數據信號同步,走線時讓它們都經歷相同的延遲,此外還能保證其時序的一致性,從而消除了走線延時對后端數據接收的影響。在布線條件允許范圍內,輸出的同一路數據信號線按照最短路徑布線原則在同一電路層上走線,差分對與差分對之間的距離要盡量拉大,或者盡可能地減少相鄰傳輸線間的累積平行距離,以減小串擾。時鐘輸入信號作為模擬信號處理,遠離任何模擬輸入和數字信號。
3)所有高速信號和時鐘信號盡量走在內層。在獲得相同目標特征阻抗的情況下,應該將布線層與參考平面(地平面與電源層)間的介質層盡可能的薄,這樣就加大了傳輸線與參考平面間的耦合度,減少相鄰傳輸線間的耦合。
時鐘信號的質量是決定采樣系統性能的關鍵因素,也是高速數據采集系統的一個難點。反映時鐘質量的指標主要有兩個:相位噪聲和相位抖動。在高速、高分辨率的ADC電路中,采樣時鐘的抖動必然造成時基采樣點的偏離,從而導致系統整體性能的下降,主要表現在對ADC采集數據信噪比和有效位數的影響上[5]。
采樣時鐘完整意義上的抖動應包含時鐘源孔徑抖動、時鐘驅動器件的孔徑抖動以及ADC自身的孔徑抖動。ADC自身的孔徑抖動是一個常數,通常會在器件手冊中作為一項重要指標給出,時鐘驅動器件引入的時鐘的孔徑可以通過其器件手冊和相位噪聲倍頻公式獲得,時鐘源抖動則與時鐘穩定性和相位噪聲參數有關。
如果ADC時鐘總的孔徑抖動的概率分布均值為0,方差為 σ2(σ=tj,tj為 ADC 孔徑時間)時,系統信噪比與孔徑抖動關系可以表示為:

其中n為ADC轉換位數,ω為ADC轉換頻率。
如果系統采樣頻率為5 GHz,轉換位數為8位,希望得到的有效位數需要大于6位,則通過信噪比與有效位數關系式:

可得系統信噪比要大于37.88 dB,從而可以算出時鐘抖動需要小于7.82 ps。采樣頻率越高,則時鐘抖動需要的值就會越小。
本設計中,高速ADC芯片工作在單通道模式下,為滿足EV8AQ160對高質量采樣時鐘的要求,這里采用低抖動、低相位噪聲鎖相環時鐘芯片AD9520提供2.5 GHz采樣時鐘[6]。AD9520片內VCO可從2.27 GHz調節到2.65 GHz,還支持外部3.3 V或5 V供電,頻率高達2.4 GHz的VCO/VCXO。AD9520支持SPI和I2C接口,片內集成一片EEPROM可通過串行接口編程以及保存用于上電復位的用戶定義存儲器的設置。有4組共12個LVPECL時鐘輸出,任何一個LVPECL輸出在時鐘頻率不大于250 MHz時均可重新定義為2個CMOS輸出,并且在上電時可自動同步所有的輸出。AD9520的時鐘抖動低至十數量級fs,最高為百數量級fs,可以滿足本系統對采樣時鐘的要求。
為了減小時鐘相位的抖動和采樣時鐘偏移,在時鐘電路的PCB設計上還采用阻抗匹配的微帶線和對稱等長走線,防止高速時鐘信號反射,提高時鐘的信號質量。時鐘信號的驅動電路采用差分PECL電路,PECL器件的電平轉換速度快,輸出信號抖動小,可以減小ADC時鐘的孔徑抖動。
ADC輸出8路8 bit 625 Msps低電壓差分信號(LVDS)邏輯的數據,在采集系統設計中對與其接口器件的性能要求也較高。Xilinx公司Virtex-6系列型號為XC6VLX240T-1156C的FPGA具有高達200個專用LVDS差分邏輯接收通道,雙數據率(DDR)LVDS通道發送數據速率高達1.25 Gbps,接收數據速率也高達1.0 Gbps,能夠滿足接收EV8AQ160輸出數據和邏輯控制的要求。由于ADC的輸出和FPGA的輸入均設計為LVDS邏輯標準,因此ADC可直接與FPGA相連。Virtex-6系列FPGA內部具有專門的LVDS處理單元,可實現LVDS邏輯的串/并降速轉換,降低速率后的數據給到內部分布式處理算法(DPA)單元進行精確處理后存儲到內部的存儲單元或者外部存儲器件DDR3中。當需要對數據進行進一步處理時,通過PCI Express將有效的采集、存儲數據發送到上位機,經過軟件編程實現采集信號的波形顯示。
高速數據傳輸的上位機部分是以PC機為平臺進行的軟件設計。整個軟件架構如圖2所示,主要由用戶應用程序和驅動程序兩部分組成。

圖2 軟件架構Fig.2 Software architecture
上位機系統通過PCI Express接口,控制板卡上的FPGA,并使上位機能夠讀取到FPGA以DMA方式連續上傳的數據,實現上位機內存和FPGA之間數據的高速傳輸。該軟件的驅動部分設計,依靠WinDriver的API函數和已有的PCI Express硬件設備驅動函數,完成對硬件設備的基本控制,為以后軟件的進一步升級奠定良好的基礎。而用戶應用部分,主要是在Visual Studio環境中完成,通過調用可靠的設備驅動函數,成功地通過PCI Express接口與FPGA進行數據通信。
1)ADC與時鐘性能測試
這里采用Xilinx公司ISE軟件中的ChipScope Pro工具將邏輯分析器、總線分析器和虛擬I/O小型軟件核直接插入到設計當中,直接查看ADC輸出的數字信號,這些信號在操作系統速度下或接近操作系統速度下被采集,并從編程接口中引出,再將采集到的信號通過ChipScope Pro邏輯分析器進行分析。
首先讓ADC工作在采樣率為5 Gsps的單通道模式下,用特定的測試模式來檢驗ADC與FPGA之間的數據接口的準確性。將測試程序下載到FPGA并運行后,用ChipScope Pro抓取ADC的輸出數據如圖3(a)所示。然后在單通道模式下不使用測試模式,輸入2 MHz的正弦信號,用ChipScope Pro抓取ADC的輸出數據如圖3(b)所示。

圖3 用ChipScope Pro抓取ADC的輸出數據Fig.3 Output data of ADC using ChipScope Pro to get
從圖3(a)中的數據可以看出,各個通道均以約定的格式輸出,說明ADC與FPGA之間數據接口已經準確連通。圖3(b),輸入正弦信號時用BUS PLOT工具將抓取到的數據實時畫圖,得到的波形平滑,計算其信噪比為42.9 dB,由式(2)計算得到ADC的有效位數為6.6 bit。實測表明,AD9520輸出的2.5 GHz時鐘以及EV8AQ160均具有較高的性能,整體指標達到設計要求。
2)上位機數據結果顯示
用戶應用窗口程序的設計是在Visual Studio 2008環境下進行的,內部通過調用WinDriver提供的API函數及已編寫的驅動函數,可以打開、查看、配置和關閉該PCI Express硬件設備。將系統配置為5 Gsps采樣率的工作模式,用TeeChart畫出實時采集到的波形,如圖4所示,表明系統實現了數據的實時采集存儲功能。

圖4 上位機采集信號的波形顯示Fig.4 Waveform display of acquisition signal on the upper computer
采用FPGA作為數據采集系統的控制核心,使用FPGA內部資源或者外部DDR3實現數據的緩沖存儲,充分利用系統資源,便于調試和修改。實現了5 G sps實時采樣率、8 bits采樣精度的高速實時數據采集系統。在完成電路的軟件和硬件設計以后,通過對ADC和時鐘進行測試以及上位機控制界面采集信號的波形顯示,結果表明該系統可以穩定地工作,滿足設計要求。
[1]胡智宏,廖旎煥.高速ADC時鐘抖動及其影響的研究[J].微型機與應用,2011,30(2):85-88.HU Zhi-hong,LIAO Ni-huan.Research of high-speed ADC clock jitter and its effects[J].Microcomputer&its Applications,2011, 30(2):85-88.
[2]English E2V Corporation.EV8AQ160 QUAD ADC Data Sheet[EB/OL].[2011-11-03]http://www.e2v.com/assets/media/files/documents/broadband-data-converters/doc0846I.pdf.
[3]Xilinx Corporation.Virtex-6 series FPGA Data Sheets[EB/OL].[2011-11-03]http://www.xilinx.com.
[4]Johnson H,Granham M.High-speed digital design a handbook of black magic[M].沈立,朱來文,陳宏偉,等譯.北京:電子工業出版社,2004.
[5]陳寧,費元春.高速數據采集系統中的孔徑抖動[J].北京理工大學學報,2003,23(2):234-237.CHEN Ning,FEI Yuan-chun.Aperture jitter of high-speed data acquisition system[J].Transactions of Beijing Institute of Technology,2003,23(2):234-237.
[6]張焱,余海龍,羅進川.超高速數據采集系統設計與實現[J].安徽大學學報:自然科學版,2006,30(4):44-47.ZHANG Yan,YU Hai-long,LUO Jin-chuan.Design and imple-mentation of ultra high-speed data acquisition system[J].Journal of Anhui University:Natural Science Edition,2006, 30(4):44-47.
[7]Devices A.12 LVPECL/24 CMOS Output Clock Generator with Integrated 2.5 GHz VCO AD9520-1 Data Sheet[EB/OL].[2011-11-03].http://www.analog.com/static/imported-files/data_sheets/AD9520-1.pdf.