黃 樸,馮 洋,虞致國,何 芹,顧曉峰
(江南大學(xué) 電子工程系物聯(lián)網(wǎng)技術(shù)應(yīng)用教育部工程研究中心,江蘇 無錫 214122)
?
高速高精度ADC動態(tài)參數(shù)評估系統(tǒng)的設(shè)計與實現(xiàn)
黃 樸,馮 洋,虞致國,何 芹,顧曉峰
(江南大學(xué) 電子工程系物聯(lián)網(wǎng)技術(shù)應(yīng)用教育部工程研究中心,江蘇 無錫 214122)
高速高精度模數(shù)轉(zhuǎn)換器(ADC)廣泛應(yīng)用于信號處理領(lǐng)域,其動態(tài)性能直接決定系統(tǒng)性能的優(yōu)劣;由于實際使用的芯片與設(shè)計的額定指標(biāo)間會存在偏差,有必要評估ADC的實際動態(tài)性能;基于FPGA及Labview實現(xiàn)了一個低成本、高可靠性的高速高精度ADC性能評估系統(tǒng);系統(tǒng)由底層控制待評估ADC子卡,提供精確的采樣樣本;采用異步FIFO進行數(shù)據(jù)緩存, DMA方式優(yōu)化數(shù)據(jù)存儲;Labview定義通信模塊,結(jié)合Matlab測試腳本完成動態(tài)參數(shù)測試;最后使用ADI公司的AD9467進行了測試驗證;實驗結(jié)果表明,該系統(tǒng)運行穩(wěn)定,與datasheet相比,參數(shù)誤差不超過1.89%,達(dá)到了IEEE Std 1241-2000的測試標(biāo)準(zhǔn),降低了測試系統(tǒng)構(gòu)建難度和成本。
模數(shù)轉(zhuǎn)換器;動態(tài)參數(shù);模塊化;數(shù)據(jù)采集
隨著微電子技術(shù)的發(fā)展,模數(shù)轉(zhuǎn)換器(Analog-to-digital Converter, ADC)經(jīng)歷了由低速低精度向高速高精度發(fā)展的過程。高速高精度ADC在儀器儀表、無線通信、雷達(dá)信號處理、航空航天等領(lǐng)域的應(yīng)用極其廣泛[1],對其進行性能測試十分重要,ADC的動態(tài)特性更是決定系統(tǒng)性能的重要因素[2-5]。目前,高速高精度ADC性能測試的方案大都基于高性能的自動化測試設(shè)備(ATE)[6],存在測試成本高、測試難度大的問題,因此,構(gòu)建實用的ADC性能測試系統(tǒng)來快速準(zhǔn)確地評估高速高精度ADC的動態(tài)性能參數(shù),具有重要的工程實踐價值[7-9]。
1.1 動態(tài)性能參數(shù)與測試原理
ADC的性能測試分為靜態(tài)測試和動態(tài)測試。靜態(tài)測試法有其局限性,不能準(zhǔn)確地反映ADC的動態(tài)特性[10]。動態(tài)參數(shù)一般包括信噪比(SNR)、總諧波失真(THD)、無雜散動態(tài)范圍(SFDR)、有效位數(shù)(ENOB),主要采用快速傅里葉變換(FFT)法進行測試,即對在時域內(nèi)采集的一組正弦信號的采樣信號進行FFT變換,然后從得到的傅里葉頻譜中提取有關(guān)信息,對ADC的動態(tài)特性在頻域上給出全局性的描述。主要動態(tài)參數(shù)[11]的計算公式如下:
(1)
(2)
(3)
(4)
(5)
式中,Psignal、Pnoise、Pharmonic分別為信號功率、噪聲功率及諧波功率。
1.2 窗函數(shù)的選擇
利用FFT法測試ADC動態(tài)參數(shù)時很難做到相干采樣和整周期截斷,需要使用合適的窗函數(shù)對信號截斷。矩形窗是最簡單的窗函數(shù),若將其改為兩端平滑的窗函數(shù)來處理時域數(shù)據(jù),可顯著減少采樣數(shù)據(jù)點的非連續(xù)性效應(yīng),減弱頻譜泄漏[12]。窗函數(shù)種類很多,主瓣寬度、最大旁瓣衰減水平和旁瓣衰減速度是描述窗函數(shù)的3個基本特性。但是,這3個基本特性不可能同時得到優(yōu)化,因此不同的窗函數(shù)抑制頻譜泄漏的效果不同。表1給出了本文使用的各項窗函數(shù)的旁瓣特性。
表1 Hanning窗和4項3階Nuttall窗函數(shù)的旁瓣特性
如圖1所示,高速高精度ADC動態(tài)參數(shù)評估系統(tǒng)主要由待評估ADC子卡、基于FPGA的數(shù)據(jù)采集控制核心板、基于PC端Labview的數(shù)據(jù)采集和控制端、信號發(fā)生器等4個部分組成。其中信號發(fā)生器包括時鐘源與同源信號源,對接相應(yīng)頻率的濾波器以保證信號的高純度。
圖1 高速高精度ADC動態(tài)參數(shù)評估系統(tǒng)
信號發(fā)生器產(chǎn)生一幅度略小于ADC滿測試量程的正弦波,作為采樣信號輸入到待評估ADC子卡的SMA (Sub-Miniature-A)接口;采樣信號濾波后到達(dá)ADC模擬信號輸入端,通過模擬輸入電路轉(zhuǎn)換為差分信號;然后進行模數(shù)轉(zhuǎn)換,經(jīng)FIFO (First In First Out)緩沖后利用DMA (Direct Memory Access)通道輸出至DDR3 (Double Data Rate 3)內(nèi)存進行保存;最后送入PC機的Labview控制測試端,進行動態(tài)特性測試。PC機和FPGA核心板采用串口進行通信,可滿足數(shù)據(jù)傳輸和通信控制需求。不同的ADC芯片性能測試,均采用同一個數(shù)據(jù)采集硬件平臺。
本文選用XC7K325T芯片作為控制核心。該芯片為Xilinx公司生產(chǎn)的高性能嵌入式微處理器,總線工作頻率高達(dá)150 MHz,帶有片內(nèi)RAM,并配備DDR3、SPI (Serial Peripheral Interface)等豐富的外設(shè)。為驗證系統(tǒng)性能,采用ADI公司生產(chǎn)的AD9467作為評估芯片,其采樣率默認(rèn)為250 Msps,轉(zhuǎn)換精度高達(dá)16位。
3.1 待評估ADC子卡設(shè)計
3.1.1 模擬輸入電路
考慮到采用模塊化方法構(gòu)建系統(tǒng),因此評估ADC動態(tài)參數(shù)時,待評估ADC子卡與通用核心板需要通過前端接口FMC進行連接,以減少ADC變更的影響。圖2為待評估ADC子卡的功能模塊示意圖。最終輸入到A/D芯片的是差分信號,包括電壓差分信號和時鐘差分信號,輸出包括OR (Over_Range)、Data與DCO等3種差分信號。OR端占用2 bit,高低各1 bit,作為超出量程的標(biāo)志信號;D端為16 bit的數(shù)據(jù)端,高低兩路各8 bit;DCO端為時鐘信號。采樣信號是發(fā)生器產(chǎn)生的模擬輸入信號,默認(rèn)是電壓輸入,對ADC來說,電流輸入可選。
圖2 待評估ADC子卡功能模塊
在實際的信號采樣過程中,由于信號發(fā)生器只能產(chǎn)生單端信號,需要用到模擬輸入電路進行差分變換。模擬輸入電路是A/D芯片的信號緩沖區(qū)。電壓模式模擬輸入電路如圖3所示,該模擬輸入電路工作于0-300 MHz之間。
圖3 電壓模式模擬輸入電路
不論輸入信號頻率多少,電路元件固有的噪聲總會降低ADC的SNR,因此模擬電路利用變壓器,通過提供高質(zhì)量的高頻輸入耦合機制以解決噪聲問題。另外,輸入信號頻率高達(dá)250 MHz,若只是用2個變壓器,則寄生電容耦合會導(dǎo)致二次輸出,最終結(jié)果是輸出不對稱,并且造成轉(zhuǎn)換器的模擬輸入及2階諧波數(shù)字信號的扭曲。解決辦法是在第一個級聯(lián)(圖3中的左邊矩形)應(yīng)用第二個變壓器,通過提供額外的電流隔離來減少電容式直通的不平衡問題。
3.1.2 量化與編碼
通常A/D轉(zhuǎn)換經(jīng)過采樣后還需要進行量化、編碼兩個步驟。AD9467支持偏移碼、補碼、格雷碼3種數(shù)據(jù)格式,默認(rèn)情況下使用偏移碼以保證轉(zhuǎn)換后的量化電平始終大于0,具體可參考表2。
3.2 數(shù)據(jù)存儲系統(tǒng)設(shè)計
3.2.1 數(shù)據(jù)存儲系統(tǒng)設(shè)計
存儲系統(tǒng)結(jié)構(gòu)分為三部分:一是基于FPGA的存儲控制模
表2 數(shù)字輸出編碼
塊,二是FMC-ADC完成數(shù)據(jù)采集,三是存儲單元DDR3,如圖4所示?;贛icrlblaze的存儲控制模塊作為核心部分,一方面負(fù)責(zé)控制待評估ADC子卡的數(shù)據(jù)采集與存儲,另一方面需要與基于Labview的測試控制端進行通信。待評估ADC子卡采集數(shù)據(jù)后,利用AXI-4協(xié)議總線完成數(shù)據(jù)交換任務(wù),AXI-4總線速率可達(dá)150 MHz,而數(shù)據(jù)采集速率高達(dá)250 MHz,每秒鐘產(chǎn)生250 M*16 b=4 Gb的數(shù)據(jù),因此以低速總線完成數(shù)據(jù)交換成為構(gòu)建存儲系統(tǒng)的關(guān)鍵。為保證數(shù)據(jù)采集的實時性,應(yīng)盡可能減少數(shù)據(jù)實時采集、預(yù)處理、存儲和傳輸過程中的時間開銷,需設(shè)計高性能的數(shù)據(jù)鏈路以實現(xiàn)高速采樣數(shù)據(jù)的存儲,故系統(tǒng)采用Xilinx高性能IP核DMA與AXI-4總線配合完成高速數(shù)據(jù)存儲。存儲介質(zhì)為1 GB的DDR3,則對于16 bit的ADC來說樣本空間可達(dá)400-500 M,足以應(yīng)對各種評估算法的樣本需求。
圖4 數(shù)據(jù)存儲系統(tǒng)整體結(jié)構(gòu)
系統(tǒng)采用DMA方式實現(xiàn)數(shù)據(jù)存儲,其結(jié)構(gòu)如圖5所示。數(shù)據(jù)存儲路徑為:模擬輸入電路生成的兩路模擬差分信號進入ADC,進行A/D轉(zhuǎn)換后輸出兩路8位數(shù)字差分信號;信號通過Xilinx自帶基本元件IBUFDS緩沖,經(jīng)過一定的延遲后組合成16位數(shù)據(jù);經(jīng)過異步FIFO后轉(zhuǎn)換為64位數(shù)據(jù),通過DMA送入DDR3中。系統(tǒng)構(gòu)建中需要注意,盡管DMA包含MM2S (Memory Map To Slave)、S2MM (Slave To Memory Map)雙通道,但系統(tǒng)是由FMC-ADC獲取數(shù)據(jù)存入DDR3中,所以只需開啟S2MM通道。存在多個ADC時,只需為每個ADC添加各自的S2MM通道即可。
圖5 DMA控制器結(jié)構(gòu)
3.2.2 異步FIFO設(shè)計
考慮ADC接口模塊通過FMC-LPC完成數(shù)據(jù)采集,經(jīng)DMA通道送入DDR3,但由此引出一個問題:待評估ADC子卡采樣時鐘為高達(dá)250 MHz的外部時鐘,而DMA控制器與系統(tǒng)總線時鐘一致,僅為150 MHz,即數(shù)據(jù)傳輸需要經(jīng)過異步時鐘域。因此,為不丟失地跨時域傳輸數(shù)據(jù),需利用異步FIFO進行數(shù)據(jù)緩存。
為解決跨時域傳輸造成的亞穩(wěn)態(tài),需要一個二進制到Gray碼的轉(zhuǎn)換電路,將地址轉(zhuǎn)換為相應(yīng)的Gray碼,然后將Gray碼同步到另一個時鐘域進行對比,作為空滿狀態(tài)的檢測。圖6為基于FPGA實現(xiàn)的Gray碼的轉(zhuǎn)換電路示意圖。
圖6 Gray碼轉(zhuǎn)換電路示意圖
使用Gray碼解決了亞穩(wěn)態(tài)問題,同時也帶來另一個問題,即在Gray碼域如何判斷空與滿。對于“空”的判斷依然依據(jù)二者完全相等(包括MSB);而對于“滿”的判斷,由于Gray碼除了MSB外,具有鏡像對稱的特點,當(dāng)讀指針指向7,寫指針指向8時,除了MSB,其余位皆相同,不能說它為滿。因此不能單純地只檢測最高位,在Gray碼上判斷為滿必須同時滿足以下3條:
1)wptr和同步過來的rptr的MSB不相等,因此wptr必須比rptr多折回一次;
2)wptr和rptr的次高位不相等;
3)剩下的其余位完全相等。
3.3 Labview控制測試端設(shè)計
采用Labview作為系統(tǒng)的控制測試端,與基于Microblaze的FPGA存儲控制模塊通過串口通信。ADC初始化成功,Labview端接收到返回的信息后,通過可視化界面發(fā)送指令給FPGA,開始數(shù)據(jù)采集與存儲,并將采樣數(shù)據(jù)由串口返回Labview端進行動態(tài)測試。Labview端動態(tài)測試提供多種算法選擇,其控制流程如圖7所示。
圖7 Labview測試控制流程
其中,系統(tǒng)初始化運行時,CPU與PC端還未成功建立通信,直至串口參數(shù)配置完成。發(fā)送與接收指令均使用ASCII編碼。通過PC端的Labview圖形化界面控制系統(tǒng)的運行,如圖8所示。界面左側(cè)給出系統(tǒng)的控制參數(shù)及測試所得的各項ADC動態(tài)參數(shù),包括SNR、SINAD、ENOB、SFDR、THD以及基波頻率等。
圖8 Labview測試控制端配置
此外,由于數(shù)據(jù)量大,為方便管理,控制面板提供保存數(shù)據(jù)至TXT文檔以及保存頻域波形的選項,可通過面板實現(xiàn)對歷史數(shù)據(jù)的查詢。
圖9~10給出了輸入信號頻率10.3 MHz、電壓幅值2.5 Vpp、Ain為-1 dBFs的測試結(jié)果,設(shè)置加窗函數(shù)部分為五項最大旁瓣衰減窗函數(shù)MSLD5[13],采集的樣本空間大小為214=16K個樣本點。理論上數(shù)據(jù)越多,測試結(jié)果越接近真實值。左下部分為與核心板的串口通信相關(guān)參數(shù)配置。電壓對比部分輸入信號置為2.5 V,但實際輸入電壓為2.23 V,實際輸入電平為量程的89%,符合ADC的輸入要求。
經(jīng)過調(diào)試,該系統(tǒng)能夠可靠并穩(wěn)定運行。圖9為采集數(shù)據(jù)的時域圖,其中縱軸的電壓幅值通過數(shù)字輸出編碼轉(zhuǎn)換得到,橫軸為樣本點遞增??煽闯?,電壓幅值約為1.12 V,與設(shè)置相符;另外,圖中以小圓點表明樣本點,遍歷樣本點數(shù)與設(shè)置的樣本空間大小一致。
圖9 ADC測試時域圖
根據(jù)樣本點可得到A/D芯片的頻譜圖,如圖10所示??梢园l(fā)現(xiàn),得到的頻譜圖噪聲基底較小,量化噪聲集中在幾條譜線上,其余為時基抖動、非線性失真等其他因素產(chǎn)生的噪聲,能真實地反映ADC的動態(tài)特性。
圖10 ADC測試頻域圖
表4給出了基于同種加窗函數(shù)、輸入信號不同頻的動態(tài)參數(shù)測試結(jié)果以及與datasheet的數(shù)據(jù)誤差,由于ENOB與SINAD是直接關(guān)聯(lián)的,故測試結(jié)果只需給出其中一種參數(shù)即可。另外,datasheet的數(shù)據(jù)由高端專用ATE測得,等同于相干采樣,可視作標(biāo)準(zhǔn)FFT算法值。觀察表4可以發(fā)現(xiàn):1)本系統(tǒng)利用3種加窗函數(shù)動態(tài)測試得到的結(jié)果與datasheet中給出的各參數(shù)非常接近,誤差不超過1.89%;2)不同的窗函數(shù)間測試結(jié)果相近,系統(tǒng)能可靠并穩(wěn)定地運行;其中加窗函數(shù)為MSLD5時,THD與SFDR結(jié)果不變,但SNR與ENOB的測試結(jié)果更加優(yōu)秀。
表4 不同窗函數(shù)的測試結(jié)果
基于FPGA、Labview與待評估ADC子卡構(gòu)建了一套高速高精度ADC的動態(tài)參數(shù)評估系統(tǒng)。系統(tǒng)為解決跨時域問題,利用異步FIFO進行緩存完成了高速數(shù)據(jù)采集;采用DMA方式控制高速數(shù)據(jù)流至內(nèi)存,優(yōu)化了數(shù)據(jù)存儲;然后通過Labview界面定義了通信模塊進行采集控制,并選用非相干采樣下相應(yīng)算法評估,能夠在短時間內(nèi)精確地評估ADC動態(tài)性能。實驗結(jié)果顯示,各項參數(shù)與標(biāo)準(zhǔn)FFT算法值相比誤差不超過1.89%,符合IEEE Std 1241-2000的測試標(biāo)準(zhǔn),且相比傳統(tǒng)價格昂貴的測試方法,該系統(tǒng)構(gòu)建難度及成本低,可移植性強,操作簡單易行,具有良好的實際應(yīng)用前景。
[1] 黃 欣, 張 平, 童智勇, 等. 基于FPGA的軟件無線電寬帶多通道數(shù)字接收技術(shù)[J]. 科學(xué)技術(shù)與工程, 2009, 9(12): 3292-3296.
[2] 戴 瀾, 姜巖峰, 劉文楷. 基于Matlab的高速高精度ADC測試研究[J]. 計算機測量與控制, 2010, 18(9): 2044-2049.[3] 黃深喜, 樊曉萍, 劉少強, 等. 高速ADC頻域特性測試系統(tǒng)的設(shè)計[J].計算機工程, 2009, 35(9): 277-279.
[4] 董振龍, 董 惠, 武 錦. 基于FPGA的高速高精度ADC測試平臺的設(shè)計[J]. 計算機測量與控制, 2012, 20(9): 2372-2374.
[5] 成 章, 王 健, 劉 敏, 等. 關(guān)于ADC測試平臺的探討[J]. 電子信息對抗技術(shù), 2012, 27(4): 77-80.
[6] 何 芹, 黃 樸, 虞致國, 等. 基于平均頻譜測試高速ADC動態(tài)參數(shù)的方法[J]. 電子測量與儀器學(xué)報, 2014, 28(7): 755-762.
[7] 裴頌偉, 李兆麟, 李圣龍, 等. 基于 V93000 的 SoC 中端口非測試復(fù)用的 ADC 和 DAC IP 核性能測試方案[J]. 電子學(xué)報, 2013, 41(7): 1358-1364.
[8] 賀志容, 石 堅, 韓紅星. 93k集成電路測試系統(tǒng)校準(zhǔn)原理及實現(xiàn)方法研究[J]. 宇航計測技術(shù), 2009 (3): 66-69.
[9] NI. 高性能測試測量與控制平臺-PXI產(chǎn)品[EB/OL]. http://sine.ni.com/nips/cds/view/p/lang/zhs/nid/ 1527.
[10] Grace C R, Denes P, Gnani D, et al. Radiation-tolerant code-density calibration of nyquist-rate analog-to-digital converters[J]. IEEE Transactions on Nuclear Science, 2013, 60(2): 1303-1310.
[11] 周 娟, 蔣登峰. 基于Matlab的ADC自動測試系統(tǒng)開發(fā)[J]. 中國計量學(xué)院學(xué)報, 2008, 19(3): 219-224.
[12] ADI. AD9254 14-Bit, 150 MSPS, 1.8 V, Analog-to-Digital Converter[M]. ADI INC. 2006.
[13] He Q, Huang P, Zhao L, et al. A five-item MSLD windowed triple-spectrum-line interpolated FFT algorithm for measuring SFDR[A]. 2014 12th IEEE International Conference on Solid-State and Integrated Circuit Technology (ICSICT)[C]. IEEE, 2014: 1-3.
Design and Implementation of Dynamic Parameter Testing System for High-speed and High-precision ADCs
Huang Pu, Feng Yang, Yu Zhiguo, He Qin, Gu Xiaofeng
(Ministerial Engineering Research Center of IoT Technology Applications, Department of Electronic Engineering, Jiangnan University, Wuxi 214122, China)
High-speed and high-precision analog-to-digital converters (ADCs) have been widely used in signal processing,their dynamic characteristics directly determine the system performance.Since there always exist deviations between practical chip parameters and designed indices, it is necessary to evaluate the actual dynamic performance of ADCs. By building an ADC hardware and software test platform based on FPGA and Labview, a low cost and high reliability performance evaluation system is constructed for high-speed and high-precision ADCs.The system controls the sub-ADC in bottom layer to provide accurate sampling; Asynchronous FIFO is used to carry out data cache, and DMA method to optimize data storage; Labview defines the communication module, combined with Matlab’s scripts to test the dynamic parameters.Finally, AD9467, a high-speed and high-precision ADC of ADI, is used for verifying the implemented system. Experimental results show that the system works stably, and the errors are within 2% compared with datasheet, which reaches the test standard provided by IEEE Std. 1241-2000, and the difficulties and cost in constructing the evolution system can be reduced.
analog-to-digital converter; dynamic parameter; modular approach; data collection
2015-11-30;
2015-12-25。
江蘇省自然科學(xué)基金資助項目(BK20130156);江蘇省六大人才高峰資助項目(DZXX-027);中央高?;究蒲袠I(yè)務(wù)費專項資金資助項目(JUSRP51323B);江蘇省普通高校研究生實踐創(chuàng)新計劃項目(SJZZ_0148,KYLX15_1192)。
黃 樸(1990-),男,江蘇邳州人,碩士研究生,主要從事集成電路測試技術(shù)方向的研究。
虞致國(1979-),男,江西萬年人,副教授,主要從事集成電路設(shè)計與測試方向的研究。
1671-4598(2016)06-0294-04
10.16526/j.cnki.11-4762/tp.2016.06.080
TN216
A
顧曉峰(1971-),男,江蘇無錫人,教授,主要從事半導(dǎo)體材料與器件方向的研究。