劉 鳴,孫秀男,梁 昊
(1.中國(guó)科學(xué)技術(shù)大學(xué) 核探測(cè)與核電子學(xué)國(guó)家重點(diǎn)實(shí)驗(yàn)室,安徽 合肥 230026;2.中國(guó)科學(xué)技術(shù)大學(xué) 近代物理系,安徽 合肥 230026)
雷達(dá)、聲吶、核探測(cè)器等儀器輸出的高頻信號(hào)頻率有時(shí)可以接近GHz,對(duì)于這些信號(hào)的采集需要更高的采樣率和精確度,因此GS/s高速數(shù)據(jù)采集系統(tǒng)是近年來(lái)數(shù)據(jù)采集領(lǐng)域的研究主流[1-4]。目前GS/s高速ADC一般都是采用時(shí)間交替并行采樣結(jié)構(gòu)(Time Interleaved ADC,TIADC),而大部分的GS/s高速數(shù)據(jù)采集系統(tǒng)是采用單片GS/s高速ADC,雖然能夠讓單片ADC工作在多通道模式從而可以采集多通道的模擬輸入信號(hào),但是這樣會(huì)降低ADC的采樣率從而不能滿足高頻信號(hào)采樣的要求。
本文針對(duì)雙通道高頻信號(hào)輸入的場(chǎng)景,提出一種雙通道5 GS/s采樣的高速數(shù)據(jù)采集卡的實(shí)現(xiàn)方案。采集卡使用兩片型號(hào)為EV10AQ190的10位、5 GS/s 高速ADC,利用FPGA夾層卡(FPGA Mezzanine Card,F(xiàn)MC)設(shè)計(jì)成子母板結(jié)構(gòu),通過(guò)兩片Xilinx公司的Vertex-6 FPGA來(lái)負(fù)責(zé)子母板的邏輯控制,母板利用DDR3進(jìn)行數(shù)據(jù)存儲(chǔ)并通過(guò)千兆以太網(wǎng)的方式傳至上位機(jī)進(jìn)行數(shù)據(jù)處理。通過(guò)性能測(cè)試,采集卡在雙通道5 GS/s模式下采樣100 MHz的正弦波,兩片ADC的有效位都能達(dá)到8.0以上,能夠滿足GHz信號(hào)對(duì)高采樣率和高精確度的要求。
雙通道5 GS/s高速數(shù)據(jù)采集卡總體結(jié)構(gòu)如圖1所示。采集卡采用擴(kuò)展性極強(qiáng)的FMC連接器將數(shù)據(jù)采集子板和數(shù)據(jù)處理母板分離,方便今后對(duì)采集子板的升級(jí)或替換。子板接收通道1、2的模擬輸入,通過(guò)信號(hào)調(diào)理模塊對(duì)每個(gè)通道的信號(hào)進(jìn)行調(diào)理,ADC1和ADC2接收兩路調(diào)理信號(hào)并轉(zhuǎn)換為實(shí)時(shí)的高速數(shù)字信號(hào)。FPGA1接收兩片ADC輸出的數(shù)字信號(hào),并利用片內(nèi)BRAM資源進(jìn)行緩存。當(dāng)FPGA1采集到目標(biāo)大小的數(shù)據(jù)后,將BRAM中緩存的數(shù)據(jù)通過(guò)FMC連接器傳輸給母板,并在FPGA2控制下將數(shù)據(jù)存入DDR3中,最后通過(guò)千兆以太網(wǎng)將數(shù)據(jù)包上傳至PC,從而完成數(shù)據(jù)的采集傳輸、接收緩存、存儲(chǔ)上傳的流程。整個(gè)流程中上位機(jī)通過(guò)對(duì)FPGA2的控制,間接地控制FPGA1,進(jìn)而控制采集的開(kāi)始與結(jié)束。
圖1 采集卡總體結(jié)構(gòu)圖
采集卡子板的電路結(jié)構(gòu)如圖2所示,主要包括模擬信號(hào)調(diào)理模塊、時(shí)鐘產(chǎn)生與扇出模塊、高速ADC采樣模塊、FPGA邏輯控制模塊、電源模塊等。另外考慮設(shè)計(jì)冗余性,還預(yù)留了外部的采樣時(shí)鐘、電源以及觸發(fā)輸入模塊。
圖2 子板電路結(jié)構(gòu)圖
信號(hào)調(diào)理是模擬信號(hào)采集不可或缺的前端部分,其結(jié)構(gòu)如圖3所示,主要包括幅度衰減電路、濾波電路以及單端轉(zhuǎn)差分電路等。
圖3 信號(hào)調(diào)理結(jié)構(gòu)圖
幅度衰減電路將輸入模擬信號(hào)的幅度進(jìn)行衰減,以滿足ADC采樣信號(hào)的電壓范圍。經(jīng)過(guò)幅度衰減電路后的兩路信號(hào)都通過(guò)低通濾波器,目的是濾除極高頻率的噪聲信號(hào),采用無(wú)反射低通濾波器XLF-861+,其3 dB帶寬為0~1 150 MHz,能夠很好地滿足設(shè)計(jì)要求。由于ADC的信號(hào)輸入是LVDS輸入,因此還需要對(duì)濾波后的信號(hào)進(jìn)行單端轉(zhuǎn)差分處理,選用巴倫型高速射頻變壓器ETC1-1-13,其3 dB 帶寬為4.5~3 000 MHz。
兩片EV10AQ190組成的ADC采樣模塊是數(shù)據(jù)采集子板的采樣核心部分。EV10AQ190是一款10位、5 GS/s采樣率、3.2 GHz輸入帶寬的多通道高速ADC。它基于TIADC結(jié)構(gòu),內(nèi)置4個(gè)ADC核,四通道模式采樣率為1.25 GS/s,單通道模式采樣率5 GS/s[5]。本采集卡的兩片ADC的采樣模式如圖4所示。ADC工作在單通道模式,即四ADC核交錯(cuò)采樣率為5 GS/s。 ADC內(nèi)部的多相時(shí)鐘產(chǎn)生電路將時(shí)鐘模塊產(chǎn)生的2.5 GHz的時(shí)鐘信號(hào)做二分頻處理,然后分為四路相位差間隔為90°的1.25 GHz的時(shí)鐘作為四個(gè)ADC子核的采樣時(shí)鐘,進(jìn)行時(shí)間交替并行采樣,從而實(shí)現(xiàn)單片ADC單通道5 GS/s的采樣率。經(jīng)過(guò)信號(hào)調(diào)理模塊后的兩路模擬差分信號(hào)分別進(jìn)入ADC1的AAI、AAIN模擬輸入通道和ADC2的DAI、DAIN模擬輸入通道,兩片ADC在兩路扇出的時(shí)鐘信號(hào)的驅(qū)動(dòng)下,對(duì)這兩通道的輸入信號(hào)進(jìn)行采集,從而實(shí)現(xiàn)雙通道5 GS/s的信號(hào)采集。
圖4 采集卡雙通道ADC采樣示意圖
采樣時(shí)鐘的信號(hào)質(zhì)量是影響采樣性能最為關(guān)鍵的因素之一。衡量時(shí)鐘信號(hào)質(zhì)量的指標(biāo)主要是孔徑抖動(dòng),過(guò)大的孔徑抖動(dòng)會(huì)導(dǎo)致錯(cuò)誤地觸發(fā)采樣,從而降低ADC采樣數(shù)據(jù)的信噪比[6-7]。只考慮ADC的量化誤差,信噪比SNR與時(shí)鐘抖動(dòng)tj的關(guān)系可以表示為[8]:
(1)
式中n是ADC的轉(zhuǎn)換位數(shù),f是輸入模擬信號(hào)頻率。
由式(1)可知,在輸入信號(hào)頻率和孔徑抖動(dòng)tj確定的情況下,系統(tǒng)信噪比會(huì)隨ADC轉(zhuǎn)換位數(shù)n的增加而升高,因此可以采用高分辨率ADC來(lái)提高采樣系統(tǒng)的信噪比。而當(dāng)ADC轉(zhuǎn)換位數(shù)n確定時(shí),在采樣低頻信號(hào)時(shí),系統(tǒng)對(duì)時(shí)鐘抖動(dòng)的要求不高,但是當(dāng)采樣高頻信號(hào)時(shí),系統(tǒng)的信噪比將主要取決于總的時(shí)鐘抖動(dòng)。為滿足高速數(shù)據(jù)采集對(duì)高質(zhì)量低抖動(dòng)時(shí)鐘的要求,基準(zhǔn)時(shí)鐘源和時(shí)鐘發(fā)生器的輸出時(shí)鐘抖動(dòng)都要盡可能地低。本采集卡的時(shí)鐘方案如圖5所示。采用時(shí)鐘抖動(dòng)為40 fs的超低噪聲壓控振蕩器CVHD-950-50作為基準(zhǔn)時(shí)鐘源,通過(guò)時(shí)鐘抖動(dòng)為97 fs的高性能時(shí)鐘發(fā)生器HMC1035產(chǎn)生2.5 GHz的高速時(shí)鐘,然后經(jīng)過(guò)低噪聲時(shí)鐘扇出緩沖器HMC6832將時(shí)鐘扇出為兩路,作為兩片ADC的采樣時(shí)鐘。
圖5 低抖動(dòng)高速采樣時(shí)鐘方案框圖
子板FPGA作為數(shù)據(jù)采集子板的控制核心,其內(nèi)部邏輯主要包括ADC高速數(shù)據(jù)接收、數(shù)據(jù)整合與讀寫(xiě)控制、數(shù)據(jù)緩存BRAM、時(shí)鐘發(fā)生器的SPI配置、兩片ADC的SPI配置等模塊。子板FPGA的整體邏輯框圖如圖6所示。
當(dāng)兩片ADC工作在5 GS/s模式時(shí),ADC內(nèi)部四個(gè)ADC核(A、B、C和D)交錯(cuò)采樣,兩片ADC共輸出80對(duì)差分?jǐn)?shù)字信號(hào)以及8對(duì)隨路時(shí)鐘信號(hào)。FPGA內(nèi)部邏輯首先要做的就是準(zhǔn)確無(wú)誤地接收ADC的高速數(shù)字信號(hào)。ADC數(shù)據(jù)輸出為DDR模式,因此隨路時(shí)鐘速率是數(shù)據(jù)速率的一半只有625 MHz,但FPGA內(nèi)部的普通邏輯資源仍是難以處理,需要采用串并轉(zhuǎn)換單元將數(shù)據(jù)速率降低下來(lái)。
ISERDES是Xilinx公司FPGA內(nèi)嵌的高速串并轉(zhuǎn)換器,其IP核內(nèi)部包含的IODELAY模塊提供了一種基于源同步的高速數(shù)據(jù)接收技術(shù),能針對(duì)高速數(shù)據(jù)在傳輸路徑上造成的延時(shí)進(jìn)行調(diào)整,使源同步時(shí)鐘與數(shù)據(jù)滿足時(shí)序關(guān)系。IODELAY有64級(jí)可調(diào)延時(shí),步長(zhǎng)精度最高可達(dá)78 ps[9]。采用8個(gè)6倍轉(zhuǎn)換率的ISERDES接收兩片ADC的輸出數(shù)據(jù),將80 bit位寬的數(shù)據(jù)轉(zhuǎn)換為480 bit位寬的數(shù)據(jù),這樣輸出的數(shù)據(jù)速率變?yōu)?08.33 MHz,然后經(jīng)過(guò)8個(gè)異步FIFO進(jìn)行跨時(shí)鐘域處理,將數(shù)據(jù)的驅(qū)動(dòng)時(shí)鐘從隨路的局域時(shí)鐘變?yōu)镻LL模塊產(chǎn)生的250 MHz的全局時(shí)鐘,方便后續(xù)的數(shù)據(jù)處理。
圖6 數(shù)據(jù)采集子板FPGA邏輯框圖(x=A,B,C or D)
由于ADC的四個(gè)核交錯(cuò)采樣,又經(jīng)過(guò)6倍的串并轉(zhuǎn)換,因此480 bit數(shù)據(jù)的順序是錯(cuò)亂的,需要重新排序,另外考慮母板DDR3數(shù)據(jù)輸入寬度為256 bit,需要做數(shù)據(jù)位寬的匹配,因此加入32 bit的無(wú)效0數(shù)據(jù),使總的數(shù)據(jù)位寬變?yōu)?12 bit。數(shù)據(jù)整合的具體方法如圖7所示。
圖7 數(shù)據(jù)整合示意圖
以ADC1為例,假設(shè)N為ADC1當(dāng)前采樣周期的第一個(gè)采樣點(diǎn)。4個(gè)ADC核的采樣方式是按照?qǐng)D中的順序交錯(cuò)進(jìn)行的。每個(gè)ISERDES接收ADC核的6個(gè)采樣周期的數(shù)據(jù),串并轉(zhuǎn)換后將第一個(gè)采樣數(shù)據(jù)放在低位,最后一個(gè)采樣數(shù)據(jù)放在高位。數(shù)據(jù)整合邏輯將ADC核輸出的交錯(cuò)數(shù)據(jù)按照采樣順序進(jìn)行重新排序,并且將第一個(gè)采樣數(shù)據(jù)放在高位,最后一個(gè)采樣數(shù)據(jù)放在低位,從而可以符合后續(xù)FIFO與BRAM的讀寫(xiě)時(shí)序。重新排序過(guò)程中,在最高位插入8 bit的無(wú)效0數(shù)據(jù),然后隔12個(gè)數(shù)據(jù)后再插入8 bit的0數(shù)據(jù)。這樣ADC1的24個(gè)并行采樣數(shù)據(jù)從原來(lái)的240 bit經(jīng)過(guò)整合變?yōu)?56 bit。
整合后的兩片ADC的512 bit數(shù)據(jù)輸入到BRAM進(jìn)行緩存,考慮到子板通過(guò)FMC接口到母板的數(shù)據(jù)接口為32位,需要將數(shù)據(jù)位寬降下來(lái),而FIFO不能直接進(jìn)行512位到32位的轉(zhuǎn)換,因此先要利用異步BRAM將512位降至256位。由于數(shù)據(jù)流向是單向的,采用簡(jiǎn)單雙端口BRAM,其容量設(shè)為1 MB。當(dāng)BRAM存滿后停止數(shù)據(jù)的接收,開(kāi)始從BRAM讀出,經(jīng)過(guò)一個(gè)FIFO將數(shù)據(jù)位寬降至32位然后通過(guò)FMC傳輸至母板。
母板FPGA作為數(shù)據(jù)處理母板的控制核心,其內(nèi)部邏輯主要包括數(shù)據(jù)接收、DDR3接口控制、千兆以太網(wǎng)接口控制、上位機(jī)接口控制等模塊。母板FPGA的整體邏輯框圖如圖8所示。
圖8 數(shù)據(jù)處理母板FPGA邏輯框圖
上位機(jī)接口控制模塊是FPGA邏輯的控制中樞,它接收上位機(jī)命令信息進(jìn)行解析,并結(jié)合各個(gè)FIFO的空滿狀態(tài)、DDR3的空滿狀態(tài)來(lái)控制整個(gè)數(shù)據(jù)傳輸流程。
數(shù)據(jù)接收模塊仍采用源同步的方法,同時(shí)接收子板發(fā)送過(guò)來(lái)的數(shù)據(jù)與隨路時(shí)鐘。其中接收的時(shí)鐘信號(hào)利用BUFR(區(qū)域時(shí)鐘緩沖器)使其可以驅(qū)動(dòng)其區(qū)域內(nèi)的所有的IO和內(nèi)部邏輯,數(shù)據(jù)信號(hào)則利用一個(gè)寫(xiě)FIFO實(shí)現(xiàn)緩存、位寬匹配、時(shí)鐘域轉(zhuǎn)換等功能。DDR3接口控制模塊和千兆以太網(wǎng)接口控制模塊利用了Xilinx公司提供的IP核。在上位機(jī)接口控制模塊的控制下,數(shù)據(jù)經(jīng)過(guò)前置寫(xiě)FIFO緩存后通過(guò)DDR3 IP核存入內(nèi)存條,當(dāng)DDR3存滿后再讀出,經(jīng)過(guò)后置FIFO中緩存后進(jìn)入到MAC層IP核,最后利用物理層芯片88E1111將數(shù)據(jù)上傳至上位機(jī)[10]。
ADC的靜態(tài)性能指標(biāo)描述ADC的內(nèi)在特性,關(guān)注于ADC在穩(wěn)定輸入的情況下數(shù)字輸出與對(duì)應(yīng)模擬輸入之間的關(guān)系。其中微分非線性(Differential Nonlinearity,DNL)和積分非線性(Integral Nonlinearity,INL)衡量了ADC的線性精度。利用碼密度直方圖法可以計(jì)算DNL、INL,當(dāng)ADC1、ADC2都工作在5 GS/s 模式,測(cè)試結(jié)果如圖9、表1所示??梢钥闯鯝DC1、ADC2的DNL和INL在輸出的數(shù)字碼范圍內(nèi)分布良好,且DNL在±0.5 LSB以內(nèi),INL在±1 LSB以內(nèi)。
ADC模式DNL(LSB)INL(LSB)MINMAXMINMAXADC1-ABCD-0.410.30-0.800.78ADC2-ABCD-0.500.42-0.950.98
ADC的動(dòng)態(tài)性能指標(biāo)是衡量ADC在交流條件下采集轉(zhuǎn)換交變信號(hào)的能力,主要包括信噪比(SNR)、信納比(SINAD)、無(wú)雜散動(dòng)態(tài)范圍(SFDR)、有效位(ENOB)等。采用FFT快速傅里葉變換可以實(shí)現(xiàn)信號(hào)從時(shí)域到頻域的變換,再利用其頻譜圖就能夠方便地提取到ADC的相關(guān)動(dòng)態(tài)性能參數(shù)。
雙通道采樣模式下,兩片ADC都工作在5 GS/s模式,采用100 MHz正弦波雙通道輸入,先對(duì)輸入波形進(jìn)行重現(xiàn),如圖10所示。然后做FFT得到對(duì)應(yīng)頻譜圖,如圖11所示,可見(jiàn)重現(xiàn)波形穩(wěn)定平滑無(wú)毛刺,頻譜圖中信號(hào)頻率分布良好,諧波較低噪聲較小。利用頻譜圖量化計(jì)算,可以得到兩片ADC的動(dòng)態(tài)性能參數(shù),如表2所示,可見(jiàn)ADC1、ADC2的單核1.25 GS/s及四核5 GS/s有效位都能達(dá)到8.0以上,其SINAD、SNR、SFDR也都較高。
圖10 輸入100 MHz正弦波采樣重現(xiàn)波形圖
圖11 輸入100 MHz正弦波FFT頻譜圖
表2 ADC動(dòng)態(tài)參數(shù)測(cè)量表
本采集卡利用兩片10位5 GS/s的高速ADC,實(shí)現(xiàn)了對(duì)雙通道高速數(shù)據(jù)的采集傳輸、接收緩存、存儲(chǔ)上傳的功能。采集卡在雙通道5 GS/s模式下,兩片ADC的靜態(tài)性能與動(dòng)態(tài)性能良好,有效位達(dá)到8.0以上,滿足對(duì)雙通道高頻信號(hào)采集的設(shè)計(jì)要求。另外由于本采集卡采用擴(kuò)展性極強(qiáng)的FMC子母板的方式,數(shù)據(jù)采集子板能方便地根據(jù)需求進(jìn)行升級(jí),如更多通道采樣或多片ADC交錯(cuò)采樣提升整體采樣率等方案,有待進(jìn)一步的研究實(shí)現(xiàn)。