現在的大多數儀器通過將封閉式FPGA與固定固件相結合來實現儀器的各種功能。如果您看過一個拆解后的示波器,您可能已經看過里面的FPGA.FPGA提高了測試儀器的處理能力,而且如果您會使用儀器中的開放式FPGA,就可以自己編寫儀器的測試功能。
儀器廠商早就認識到FPGA的優勢,而且也利用其獨特的處理能力來實現儀器的各種特性:
*在示波器上進行預觸發采集
*在矢量信號分析儀上通過信號處理生成I和Q數據
*實時實現模式生成和高速數字儀器的向量比較
測試設備制造商正在致力于幫助用戶更好地利用FPGA,以針對更多的特定應用進行優化。為了幫助您理解這一轉變的好處,以下幾點是FPGA特別適用于測試應用的關鍵屬性:
*確定實時的處理
*真正的并行執行
*可重配置
*低延遲
再進一步思考一下,您可以利用開放式FPGA來實現以前無法實現的哪些功能呢?為了說明這些可能性,以下介紹了一些利用開放式FPGA的常見測試應用。
加速測試系統
在高產量生產線的末端生產測試中,測試時間分秒必爭。當生產線的測試速率與生產速率相匹配時,生產效率達到最大。如果無法實現這一匹配,則必須采用創新的技術來縮短測試時間。傳統的方法通過以太網、USB或GPIB將獨立的臺式儀器連接到PC主機上。由于待測設備通過不同的數據總線分別進行控制、測量和處理,因而所需要的測試時間相對較長。另一種方法是使用開放式FPGA來加速該過程,如圖1所示。
圖1:在測試儀器中,開放式FPGA可實現觸發和后處理等功能。
FPGA沒有利用外部通信總線,而是使用PXIe等高速總線來連接儀器,并通過其配置端口(如I2C、SPI或其他控制總線)連接到待測設備。在此類應用中,FPGA可控制DUT(待測設備)、觸發其他儀器開始采集采樣數據,甚至對這些采樣數據進行處理,將其轉換成對主機有意義的結果。
低延遲是能夠加快此類應用運行速度的一個關鍵因素。FPGA本身并不具有操作系統,它是在具有高速時鐘速率的硬件上實現所有邏輯。這意味著一個響應可能需要一個時鐘周期來進行采集、一個時鐘周期來進行處理以及一個時鐘周期來做出響應。如果時鐘速率為200MHz(時鐘周期為4ns),則一個完整的響應需要12ns.由于FPGA的確定性特性,這種響應并不是一次性的,而是每一次都是12ns.因此,FPGA就可以省去與主機相關的延遲,而且可以最小化基于主機的處理的非確定性延遲。
協議感知
今天,并不是所有的數字和MEMS器件可以針對已知的結果向量進行測試。例如,給PDM(脈沖密度麥克風)一個激勵信號,由于PDM的模擬特性,每次測試得到的比特流都會不一樣。為了獲得此類待測設備相關的有意義結果,首先需要根據相應協議解碼數字流,之后再比較結果。使用開放式FPGA,您可以對測試系統進行配置,在FPGA上執行PDM協議,而不是將其傳輸到CPU上進行解讀。從更寬泛的角度來說,您今天可以對FPGA進行配置來執行PDM協議,明天也可對同一個FPGA進行重新配置來執行其他協議,以測試數字溫度傳感器、加速度計、或MEMS器件。
在圖2中,協議并不是在CPU上執行,而是在FPGA上。正因為如此,該測試系統可以支持快速握手腳本,適應精確等待周期等協議行為,并根據該通信做出決策。這種方法不僅可以讓您接收來自DUT的更高層數據,如PDM麥克風解碼后的模擬數據,而且也可以讓您使用更高級別的命令來編寫測試腳本。
圖2. FPGA可用于處理協議,使其感知總線所使用的協議。
閉環測試:功率放大器
在無線通信系統中,功率放大器集成電路可在將信號發送至天線之前增加信號的強度。功率放大器通常在一個特定的輸出功率下具有特定的性能。因此,當功率放大器在特定輸出功率電平下運行時,有必要對功率放大器進行測試。但是,我們通常只是粗略地知道放大器的增益(例如±3分貝),而且放大器的增益在設備運行范圍內是非線性的。越接近最大輸出功率,增益越低。因此,在進行任何性能測量之前必須“調整”放大器的輸出。輸出調整通常稱為功率調整或功率伺服。其基本原理是,調整放大器的輸入功率直至測量得到正確的輸出功率。
用于測量功率放大器的傳統測試裝置如圖3所示。VSG(矢量信號發生器)生成一個激勵波形至DUT(待測設備)。功率計可確保DUT輸出的是正確的功率電平。最后,VSA(矢量信號分析儀)測量待測設備的性能——如EVM(誤差矢量幅度)或ACP(鄰信道功率)。這些測量是在各種中心頻率和功率電平下進行的。
圖3.用于測量功率放大器輸出的傳統測試裝置包含一個VSG、VSA和功率計。
功率放大器的輸出功率必須根據每個所需的中心頻率和功率電平進行調整。在調整過程中可以遵循以下步驟:
●根據待測設備的估算增益,選擇一個起始VSG功率電平。
●設置VSG功率電平。
●等待VSG穩定。
●等待DUT穩定。
●使用功率計進行測量。
●如果功率在量程內,則退出。否則計算新的VSG功率電平,并返回步驟2.
調整所需的時間取決于待測設備的類型、所需的精度以及所使用的儀器類型,通常為幾百毫秒到幾秒。調整完成后,使用VSA進行性能測量。
圖4顯示的是一個待測設備在調整過程中的輸出,該設備采用傳統方法來獲得28dBm的平均輸出功率。如果功率放大器的增益呈線性且匹配數據表中規定的標準增益,則VSG生成的第一個點會輸出28dBm的功率。相反,放大器的輸出只有26.5dBm,這說明功率放大器規定的標準增益并不準確。因此,需要對VSG輸出功率進行調整,同時VSA捕獲另一個點。此時的平均功率為27.6dBm,這表明了放大器處于增益壓縮狀態??傮w上,該方法需要七個步驟以及大約150毫秒的時間才能使放大器的輸出達到所需的級別。在這個例子中,每個步驟的待測設備穩定時間為10ms.但是,穩定時間根據每個待測設備而有所不同,這會大大影響整體的調整時間。
圖4.調整功率放大器輸出的傳統方法顯示了功率電平呈逐步增大狀態。
VST(矢量信號收發儀)結合了VSG、VSA和FPGA.這一組合使您可將功率調整算法的運行轉移到硬件上。在圖5中,雖然沒有功率計,但是您也可以運行一個系統校準步驟,在VSA上獲得與功率計相同的精確度。
圖5.矢量信號收發儀結合了信號發生器、信號分析儀和FPGA.
功率放大器的輸出功率調整步驟類似于傳統方法步驟,不同的是調整循環是在開放式FPGA內部運行。在FPGA內運行循環可大大降低每次調整所需的時間。與在主機上運行控制循環相比,通過使用開放式FPGA,并在FPGA上執行控制循環,調整待測設備輸出功率所需的時間將大大縮短。對于本例中的DUT,功率調整只需大約5毫秒,而采用傳統方法則需要150毫秒。請注意,基于硬件的方法比傳統方法多一個步驟。但是,調整所需的總體時間卻少得多。與圖4相比,在圖6中,前面幾個步驟執行的速度非??欤s短了平均時間),之后隨著調整循環的收斂,點之間的間距不斷增大。
圖6.與傳統方法相比,基于硬件的調整可使功率電平上升的時間大大縮短。
信號處理
用戶可編程FPGA最典型的應用之一是減少儀器上必須發送回主機進行處理的數據量,從而將通信總線釋放出來進行其他數據傳輸,同時降低了CPU的負荷。常見的方法包括對采集的數據集進行復雜觸發、濾波、峰值檢測或者執行FFT(快速傅立葉變換)。
例如,在圖7所示的應用中,有四個待測設備需要并行進行測試。ADC(模擬數字轉換器)將采樣數據傳送至FPGA,但當收到一個自定義觸發才會開始采集數據。在采集數據時,FPGA會對測量結果進行實時平均,然后將計算結果序列化到記錄中。接著,對記錄的數據進行FFT,然后開始測量SFDR(無雜散動態范圍)、SNR(信噪比)和SINAD(信噪失真比)。這些結果僅僅是來自ADC的輸入信號的一小部分數據,通過DMA FIFO(直接內存存取,先入先出)機制傳輸至主機。
圖7.開放式FPGA可讓您采集數據、對信號取平均值以去噪、將并行數據轉化為串行數據,并應用數學運算、FFT和濾波。
FFT作為DSP中的一個基本函數,FFT可用于許多測試應用。FPGA具有這個功能有助于測試頻域觸發、數據壓縮、基于頻率的閉環控制和圖像處理等應用。圖8顯示了該示例如何使用LabVIEW FPGA實現FFT.
圖8.代碼顯示了開放式FPGA上執行FFT的位置。
評論
查看更多