開放式FPGA增加測試靈活度
上傳人:LEDth/整理 上傳時間: 2015-01-04 瀏覽次數: 88 |
當今大多數的儀器透過將封閉式FPGA與固定韌體相結合的方式來實現儀器的各種功能。如果您看過一個拆解后的示波器,應該看到裡面的FPGA了。FPGA能提高測試儀器的處理能力,而且如果您會使用儀器中的開放式FPGA,就可以自行編寫儀器的測試功能。
儀器廠商很早就掌握了FPGA的優勢,而且也利用其獨特的處理能力來建置儀器的各種特性:在示波器上進行預觸發擷取;在向量訊號分析儀(VSA)上以訊號處理產生I和Q數據;以及即時為高速數位儀器建置圖形產生和向量的比較。
測試設備製造商正致力于協助用戶更有效地利用FPGA,從而為更多的特定應用實現最佳化。FPGA具有確定且即時的處理、真正的平行執行、可重配置與低延遲等關鍵特性,使其特別適用于測試應用。
此外,利用開放式FPGA可達到以前無法實現的哪些功能呢?為了說明這些可能性,以下介紹一些利用開放式FPGA的常見測試應用。
加速測試系統
在量產產線的終端生產測試中,測試時間分秒必爭。當生產線的測試速率與生產速率可相互配合,生產效率達到最大。如果無法配合,則必須採用創新的技術來縮短測試時間。傳統的方法透過乙太網路、USB或GPIB將獨立的桌上型儀器連接到PC主機。由于待測物(DUT)透過不同的數據匯流排分別進行控制、測量和處理,因而所需要的測試時間相對較長。另一種方法是使用開放式FPGA來加速該過程,如圖1所示。
圖1:在測試儀器中,開放式FPGA可實現觸發和后處理等功能
FPGA并未利用外部通訊匯流排,而是使用PXIe等高速匯流排來連接儀器,并透過其配置埠(如I2C、SPI或其他控制匯流排)連接到DUT。在此類應用中,FPGA可控制DUT、觸發其他儀器開始擷取採樣數據,甚至對這些採樣數據進行處理,將其轉換成對主機有意義的結果。
低延遲是能夠加速此類應用執行速度的一個關鍵因素。FPGA本身并不具有作業系統,它是在具有高速時脈速率的硬體上實現所有邏輯。這意味著一個響應可能需要一個時脈週期來進行擷取、一個時脈週期來進行處理以及一個時脈週期來做出響應。如果時脈速率為200MHz(時脈週期為4ns),則一個完整的響應需要12ns。由于FPGA的確定性特性,這種響應并不是一次性的,而是每一次都是12ns。因此,FPGA就可以省去與主機相關的延遲,而且能以最小化主機處理的非確定性延遲。
[NT:PAGE]
協議感知
并不是所有的數位和MEMS元件都能針對已知的結果向量進行測試。例如,為PDM(脈衝密度麥克風)提供一個激勵訊號,由于PDM的類比特性,每次測試得到的位元串流都不一樣。為了取得此類DUT相關的有意義結果,首先必須根據相應協議解碼數位串流,之后再比較結果。使用開放式FPGA,可針對測試系統進行配置,在FPGA上執行PDM協議,而不是將其傳輸到CPU上進行解讀。從更廣泛的角度來說,您可以今天對FPGA進行配置來執行PDM協議,明天也對同一個FPGA進行重新配置來執行其他協議,以測試數位溫度感測器、加速度計或MEMS元件。
在圖2中,協議并不是在CPU上執行,而是在FPGA上。正因為如此,該測試系統可支援快速握手協議,適應精確等待週期等協議行為,并根據該通訊做出決策。這種方法不僅可接收來自DUT的更高層級數據,如PDM麥克風解碼后的類比數據,而且也可以讓您使用更高層級的命令來編寫測試腳本。
圖2:FPGA適用于處理協議,使其感知匯流排所使用的協議。
閉環測試:功率放大器
在無線通訊系統中,功率放大器(PA) IC可在將訊號發送至天線之前增加訊號的強度。PA通常在一個特定的輸出功率下具有特定的性能。因此,當PA在特定輸出功率電平下執行時,有必要對PA進行測試。但是,我們通常只是粗略地知道放大器的增益(例如±3分貝),而且放大器的增益在設備執行範圍內是非線性的。越接近最大輸出功率,增益越低。因此,在進行任何性能測量之前必須「調整」放大器的輸出。輸出調整通常稱為功率調整或功率伺服。其基本塬理是調整放大器的輸入功率直至測量得到正確的輸出功率。
用于測量PA的傳統測試裝置如圖3所示。向量訊號產生器(VSG)產生一個激勵波形至DUT。功率計可確保DUT輸出的是正確的功率電平。最后,VSA測量DUT的性能──如誤差向量幅度(EVM)或鄰通道功率(ACP)。這些測量是在各種中心頻率和功率電平下進行的。
圖3:用于測量PA輸出的傳統測試配置包含一個VSG、VSA和功率計。
PA的輸出功率必須根據每個所需的中心頻率和功率電平進行調整。在調整過程中可以遵循以下步驟:(1)根據DUT的估算增益,選擇一個起始VSG功率電平;(2)設置VSG功率電平;(3)等待VSG穩定;(4)等待DUT穩定;(5)使用功率計進行測量;(6)如果功率在量程內,則煺出。否則運算新的VSG功率電平,并返回步驟2。
調整所需的時間取決于DUT的類型、所需的精密度以及所使用的儀器類型,通常為幾百毫秒到幾秒。調整完成后,使用VSA進行性能測量。
[NT:PAGE]
圖4顯示的是一個DUT在調整過程中的輸出,該設備採用傳統方法來獲得28dBm的平均輸出功率。如果PA的增益呈線性且匹配數據表中規定的標準增益,則VSG產生的第一個點會輸出28dBm的功率。相反地,放大器的輸出只有26.5dBm,說明PA規定的標準增益并不準確。因此,需要對VSG輸出功率進行調整,同時VSA擷取另一個點。此時的平均功率為27.6dBm,這顯示了放大器處于增益壓縮狀態。總體上,該方法需要七個步驟以及大約150毫秒的時間才能使放大器的輸出達到所需的等級。在這個例子中,每個步驟的DUT穩定時間為10ms。但是,穩定時間根據每個DUT而有所不同,從而大幅影響整體的調整時間。
圖4:調整PA輸出的傳統方法顯示功率電平逐步增加。
VST(向量訊號收發儀)結合了VSG、VSA和FPGA。這一組合使用戶可將功率調整演算法的執行轉移到硬體上。在圖5中,雖然沒有功率計,但也可以執行一個系統校準步驟,在VSA上獲得與功率計相同的精確度。
圖5:向量訊號收發器結合訊號產生器、訊號分析儀和FPGA。
與在主機上執行控制循環相較,透過使用開放式FPGA,并在FPGA上執行控制循環,調整DUT輸出功率所需的時間將大幅縮短。對于本例中的DUT,功率調整只需大約5毫秒,而採用傳統方法則需要150毫秒。請注意,基于硬體的方法比傳統方法多一個步驟。但是,調整所需的總體時間卻少得多。與圖4相較,在圖6中,前面幾個步驟執行的速度非???縮短了平均時間),之后隨著調整循環的收斂,各點之間的間距不斷增大。
圖6:與傳統方法相較,基于硬體的調整可使功率電平上升的時間大幅縮短。
[NT:PAGE]
訊號處理
用戶可程式FPGA最典型的應用之一是減少儀器上必須發送回主機進行處理的數據量,因而將通訊匯流排釋放出來進行其他數據傳輸,同時降低CPU的負載。常見的方法包括對擷取的數據集進行復雜觸發、濾波、峰值檢測或者執行快速傅立葉變換(FFT)。
例如,在圖7所示的應用中,有四個DUT需要平行進行測試。ADC將採樣數據傳送至FPGA,但當收到一個自定義觸發才會開始採集數據。在擷取數據時,FPGA會對測量結果進行即時平均,然后將運算結果序列化到記錄中。接著,對記錄的數據進行FFT,然后開始測量SFDR(無雜散動態範圍)、SNR(訊息雜訊比)和訊息雜訊失真比(SINAD)。這些結果僅僅是來自ADC的輸入訊號的一小部份數據,透過DMA FIFO機制傳輸至主機。
圖7:開放式FPGA可讓您採集數據、對訊號取平均值以去噪、將平行數據轉化為串列數據,并應用數學運算、FFT和濾波。
PA的輸出功率調整步驟類似于傳統方法步驟,不同的是調整循環是在開放式FPGA內部執行。在FPGA內執行循環可大幅降低每次調整所需的時間。
FFT作為DSP中的一個基本函數,FFT適用于許多測試應用。FPGA具有這個功能有助于測試頻域觸發、數據壓縮、基于頻率的閉環控制和影像處理等應用。圖8顯示該示例如何使用LabVIEW FPGA實現FFT。
圖8:程式碼顯示了開放式FPGA上執行FFT的位置。
[NT:PAGE]
雖然本文提到的僅僅是FPGA幾個令人激動的數位訊號處理功能,但是FPGA上還具有許多其他功能適用于測試應用中。許多開放式FPGA均具有這種處理功能,圖9顯示的是NI硬體通過LabVIEW FPGA可實現的一些處理類型。
圖9:FPGA上具有的數位訊號處理功能包括數學運算、濾波、叁角函數和視訊處理。
隨著開放式FPGA在整個測試量測產業日益普及,具有固定功能的儀器將會逐步被淘汰。相反地,儀器的功能將越來越多地由軟體來定義,這類似于「應用程式」為行動設備產業帶來的變革。測試應用程式將不再受限于測試廠商可開發何種軟體功能,而是受限于硬體和使用該儀器的工程師想像力。
用戶名: 密碼: