新聞中心

EEPW首頁 > 電源與新能源 > 設(shè)計(jì)應(yīng)用 > 開放式FPGA增加測試靈活性

開放式FPGA增加測試靈活性

作者: 時(shí)間:2016-12-07 來源:網(wǎng)絡(luò) 收藏

  現(xiàn)在的大多數(shù)儀器通過將封閉式FPGA與固定固件相結(jié)合來實(shí)現(xiàn)儀器的各種功能。如果您看過一個(gè)拆解后的示波器,您可能已經(jīng)看過里面的FPGA.FPGA提高了測試儀器的處理能力,而且如果您會(huì)使用儀器中的開放式FPGA,就可以自己編寫儀器的測試功能。

本文引用地址:http://www.butianyuan.cn/article/201612/327588.htm

  儀器廠商早就認(rèn)識(shí)到FPGA的優(yōu)勢,而且也利用其獨(dú)特的處理能力來實(shí)現(xiàn)儀器的各種特性:

  *在示波器上進(jìn)行預(yù)觸發(fā)采集

  *在矢量信號分析儀上通過信號處理生成I和Q數(shù)據(jù)

  *實(shí)時(shí)實(shí)現(xiàn)模式生成和高速數(shù)字儀器的向量比較

  測試設(shè)備制造商正在致力于幫助用戶更好地利用FPGA,以針對更多的特定應(yīng)用進(jìn)行優(yōu)化。為了幫助您理解這一轉(zhuǎn)變的好處,以下幾點(diǎn)是FPGA特別適用于測試應(yīng)用的關(guān)鍵屬性:

  *確定實(shí)時(shí)的處理

  *真正的并行執(zhí)行

  *可重配置

  *低延遲

  再進(jìn)一步思考一下,您可以利用開放式FPGA來實(shí)現(xiàn)以前無法實(shí)現(xiàn)的哪些功能呢?為了說明這些可能性,以下介紹了一些利用開放式FPGA的常見測試應(yīng)用。

  加速測試系統(tǒng)

  在高產(chǎn)量生產(chǎn)線的末端生產(chǎn)測試中,測試時(shí)間分秒必爭。當(dāng)生產(chǎn)線的測試速率與生產(chǎn)速率相匹配時(shí),生產(chǎn)效率達(dá)到最大。如果無法實(shí)現(xiàn)這一匹配,則必須采用創(chuàng)新的技術(shù)來縮短測試時(shí)間。傳統(tǒng)的方法通過以太網(wǎng)、USB或GPIB將獨(dú)立的臺(tái)式儀器連接到PC主機(jī)上。由于待測設(shè)備通過不同的數(shù)據(jù)總線分別進(jìn)行控制、測量和處理,因而所需要的測試時(shí)間相對較長。另一種方法是使用開放式FPGA來加速該過程,如圖1所示。

  

  圖1:在測試儀器中,開放式FPGA可實(shí)現(xiàn)觸發(fā)和后處理等功能。

  FPGA沒有利用外部通信總線,而是使用PXIe等高速總線來連接儀器,并通過其配置端口(如I2C、SPI或其他控制總線)連接到待測設(shè)備。在此類應(yīng)用中,F(xiàn)PGA可控制DUT(待測設(shè)備)、觸發(fā)其他儀器開始采集采樣數(shù)據(jù),甚至對這些采樣數(shù)據(jù)進(jìn)行處理,將其轉(zhuǎn)換成對主機(jī)有意義的結(jié)果。

  低延遲是能夠加快此類應(yīng)用運(yùn)行速度的一個(gè)關(guān)鍵因素。FPGA本身并不具有操作系統(tǒng),它是在具有高速時(shí)鐘速率的硬件上實(shí)現(xiàn)所有邏輯。這意味著一個(gè)響應(yīng)可能需要一個(gè)時(shí)鐘周期來進(jìn)行采集、一個(gè)時(shí)鐘周期來進(jìn)行處理以及一個(gè)時(shí)鐘周期來做出響應(yīng)。如果時(shí)鐘速率為200MHz(時(shí)鐘周期為4ns),則一個(gè)完整的響應(yīng)需要12ns.由于FPGA的確定性特性,這種響應(yīng)并不是一次性的,而是每一次都是12ns.因此,F(xiàn)PGA就可以省去與主機(jī)相關(guān)的延遲,而且可以最小化基于主機(jī)的處理的非確定性延遲。

  協(xié)議感知

  今天,并不是所有的數(shù)字和MEMS器件可以針對已知的結(jié)果向量進(jìn)行測試。例如,給PDM(脈沖密度麥克風(fēng))一個(gè)激勵(lì)信號,由于PDM的模擬特性,每次測試得到的比特流都會(huì)不一樣。為了獲得此類待測設(shè)備相關(guān)的有意義結(jié)果,首先需要根據(jù)相應(yīng)協(xié)議解碼數(shù)字流,之后再比較結(jié)果。使用開放式FPGA,您可以對測試系統(tǒng)進(jìn)行配置,在FPGA上執(zhí)行PDM協(xié)議,而不是將其傳輸?shù)紺PU上進(jìn)行解讀。從更寬泛的角度來說,您今天可以對FPGA進(jìn)行配置來執(zhí)行PDM協(xié)議,明天也可對同一個(gè)FPGA進(jìn)行重新配置來執(zhí)行其他協(xié)議,以測試數(shù)字溫度傳感器、加速度計(jì)、或MEMS器件。

  在圖2中,協(xié)議并不是在CPU上執(zhí)行,而是在FPGA上。正因?yàn)槿绱?,該測試系統(tǒng)可以支持快速握手腳本,適應(yīng)精確等待周期等協(xié)議行為,并根據(jù)該通信做出決策。這種方法不僅可以讓您接收來自DUT的更高層數(shù)據(jù),如PDM麥克風(fēng)解碼后的模擬數(shù)據(jù),而且也可以讓您使用更高級別的命令來編寫測試腳本。

  

  圖2. FPGA可用于處理協(xié)議,使其感知總線所使用的協(xié)議。

  閉環(huán)測試:功率放大器

  在無線通信系統(tǒng)中,功率放大器集成電路可在將信號發(fā)送至天線之前增加信號的強(qiáng)度。功率放大器通常在一個(gè)特定的輸出功率下具有特定的性能。因此,當(dāng)功率放大器在特定輸出功率電平下運(yùn)行時(shí),有必要對功率放大器進(jìn)行測試。但是,我們通常只是粗略地知道放大器的增益(例如±3分貝),而且放大器的增益在設(shè)備運(yùn)行范圍內(nèi)是非線性的。越接近最大輸出功率,增益越低。因此,在進(jìn)行任何性能測量之前必須“調(diào)整”放大器的輸出。輸出調(diào)整通常稱為功率調(diào)整或功率伺服。其基本原理是,調(diào)整放大器的輸入功率直至測量得到正確的輸出功率。

  用于測量功率放大器的傳統(tǒng)測試裝置如圖3所示。VSG(矢量信號發(fā)生器)生成一個(gè)激勵(lì)波形至DUT(待測設(shè)備)。功率計(jì)可確保DUT輸出的是正確的功率電平。最后,VSA(矢量信號分析儀)測量待測設(shè)備的性能——如EVM(誤差矢量幅度)或ACP(鄰信道功率)。這些測量是在各種中心頻率和功率電平下進(jìn)行的。

  

  圖3.用于測量功率放大器輸出的傳統(tǒng)測試裝置包含一個(gè)VSG、VSA和功率計(jì)。

  功率放大器的輸出功率必須根據(jù)每個(gè)所需的中心頻率和功率電平進(jìn)行調(diào)整。在調(diào)整過程中可以遵循以下步驟:

  ●根據(jù)待測設(shè)備的估算增益,選擇一個(gè)起始VSG功率電平。

  ●設(shè)置VSG功率電平。

  ●等待VSG穩(wěn)定。

  ●等待DUT穩(wěn)定。

  ●使用功率計(jì)進(jìn)行測量。

  ●如果功率在量程內(nèi),則退出。否則計(jì)算新的VSG功率電平,并返回步驟2.

  調(diào)整所需的時(shí)間取決于待測設(shè)備的類型、所需的精度以及所使用的儀器類型,通常為幾百毫秒到幾秒。調(diào)整完成后,使用VSA進(jìn)行性能測量。

  圖4顯示的是一個(gè)待測設(shè)備在調(diào)整過程中的輸出,該設(shè)備采用傳統(tǒng)方法來獲得28dBm的平均輸出功率。如果功率放大器的增益呈線性且匹配數(shù)據(jù)表中規(guī)定的標(biāo)準(zhǔn)增益,則VSG生成的第一個(gè)點(diǎn)會(huì)輸出28dBm的功率。相反,放大器的輸出只有26.5dBm,這說明功率放大器規(guī)定的標(biāo)準(zhǔn)增益并不準(zhǔn)確。因此,需要對VSG輸出功率進(jìn)行調(diào)整,同時(shí)VSA捕獲另一個(gè)點(diǎn)。此時(shí)的平均功率為27.6dBm,這表明了放大器處于增益壓縮狀態(tài)??傮w上,該方法需要七個(gè)步驟以及大約150毫秒的時(shí)間才能使放大器的輸出達(dá)到所需的級別。在這個(gè)例子中,每個(gè)步驟的待測設(shè)備穩(wěn)定時(shí)間為10ms.但是,穩(wěn)定時(shí)間根據(jù)每個(gè)待測設(shè)備而有所不同,這會(huì)大大影響整體的調(diào)整時(shí)間。

  

  圖4.調(diào)整功率放大器輸出的傳統(tǒng)方法顯示了功率電平呈逐步增大狀態(tài)。

  VST(矢量信號收發(fā)儀)結(jié)合了VSG、VSA和FPGA.這一組合使您可將功率調(diào)整算法的運(yùn)行轉(zhuǎn)移到硬件上。在圖5中,雖然沒有功率計(jì),但是您也可以運(yùn)行一個(gè)系統(tǒng)校準(zhǔn)步驟,在VSA上獲得與功率計(jì)相同的精確度。

  圖5.矢量信號收發(fā)儀結(jié)合了信號發(fā)生器、信號分析儀和FPGA.

  功率放大器的輸出功率調(diào)整步驟類似于傳統(tǒng)方法步驟,不同的是調(diào)整循環(huán)是在開放式FPGA內(nèi)部運(yùn)行。在FPGA內(nèi)運(yùn)行循環(huán)可大大降低每次調(diào)整所需的時(shí)間。與在主機(jī)上運(yùn)行控制循環(huán)相比,通過使用開放式FPGA,并在FPGA上執(zhí)行控制循環(huán),調(diào)整待測設(shè)備輸出功率所需的時(shí)間將大大縮短。對于本例中的DUT,功率調(diào)整只需大約5毫秒,而采用傳統(tǒng)方法則需要150毫秒。請注意,基于硬件的方法比傳統(tǒng)方法多一個(gè)步驟。但是,調(diào)整所需的總體時(shí)間卻少得多。與圖4相比,在圖6中,前面幾個(gè)步驟執(zhí)行的速度非???縮短了平均時(shí)間),之后隨著調(diào)整循環(huán)的收斂,點(diǎn)之間的間距不斷增大。

  

  圖6.與傳統(tǒng)方法相比,基于硬件的調(diào)整可使功率電平上升的時(shí)間大大縮短。

  信號處理

  用戶可編程FPGA最典型的應(yīng)用之一是減少儀器上必須發(fā)送回主機(jī)進(jìn)行處理的數(shù)據(jù)量,從而將通信總線釋放出來進(jìn)行其他數(shù)據(jù)傳輸,同時(shí)降低了CPU的負(fù)荷。常見的方法包括對采集的數(shù)據(jù)集進(jìn)行復(fù)雜觸發(fā)、濾波、峰值檢測或者執(zhí)行FFT(快速傅立葉變換)。

  例如,在圖7所示的應(yīng)用中,有四個(gè)待測設(shè)備需要并行進(jìn)行測試。ADC(模擬數(shù)字轉(zhuǎn)換器)將采樣數(shù)據(jù)傳送至FPGA,但當(dāng)收到一個(gè)自定義觸發(fā)才會(huì)開始采集數(shù)據(jù)。在采集數(shù)據(jù)時(shí),F(xiàn)PGA會(huì)對測量結(jié)果進(jìn)行實(shí)時(shí)平均,然后將計(jì)算結(jié)果序列化到記錄中。接著,對記錄的數(shù)據(jù)進(jìn)行FFT,然后開始測量SFDR(無雜散動(dòng)態(tài)范圍)、SNR(信噪比)和SINAD(信噪失真比)。這些結(jié)果僅僅是來自ADC的輸入信號的一小部分?jǐn)?shù)據(jù),通過DMA FIFO(直接內(nèi)存存取,先入先出)機(jī)制傳輸至主機(jī)。

  

  圖7.開放式FPGA可讓您采集數(shù)據(jù)、對信號取平均值以去噪、將并行數(shù)據(jù)轉(zhuǎn)化為串行數(shù)據(jù),并應(yīng)用數(shù)學(xué)運(yùn)算、FFT和濾波。

  FFT作為DSP中的一個(gè)基本函數(shù),F(xiàn)FT可用于許多測試應(yīng)用。FPGA具有這個(gè)功能有助于測試頻域觸發(fā)、數(shù)據(jù)壓縮、基于頻率的閉環(huán)控制和圖像處理等應(yīng)用。圖8顯示了該示例如何使用LabVIEW FPGA實(shí)現(xiàn)FFT.

  

  圖8.代碼顯示了開放式FPGA上執(zhí)行FFT的位置。

  雖然本文提到的僅僅是FPGA幾個(gè)令人激動(dòng)的數(shù)字信號處理功能,但是FPGA上還具有許多其他功能可用于測試應(yīng)用中。許多開放式FPGA均具有這種處理功能,圖9顯示的是NI硬件通過LabVIEW FPGA可實(shí)現(xiàn)的一些處理類型。

  

  圖9. FPGA上具有的數(shù)字信號處理功能包括數(shù)學(xué)運(yùn)算、濾波、三角函數(shù)和視頻處理。

隨著開放式FPGA在整個(gè)測試測量行業(yè)的日益普及,具有固定功能的儀器將會(huì)逐步被淘汰。相反,儀器的功能將越來越多地由軟件來定義,這類似于“應(yīng)用程序”為移動(dòng)設(shè)備行業(yè)帶來的變革。測試應(yīng)用程序?qū)⒉辉偈芟抻跍y試廠商可以開發(fā)何種軟件功能,而是受限于硬件和使用該儀器的工程師的想象


上一頁 1 2 下一頁

關(guān)鍵詞: 開放式FPGA增加測試靈活

評論


技術(shù)專區(qū)

關(guān)閉