運用示波器和用戶(hù)可定義的 FPGA 提高測量質(zhì)量與速度
1. 什么是「軟件設計的示波器」?
示波器等儀器通常采用多個(gè)軟件層,有些是用戶(hù)較容易存取的軟件,有些則否。 PC 上的軟件可控制測試系統的整體運作,儀器驅動(dòng)程序可提供示波器的通訊功能,嵌入儀器本身的軟件則控制了數據采集和提供給用戶(hù)的方式。 傳統儀器會(huì )通過(guò)儀器驅動(dòng)程序提供固定的測量功能;模塊化儀器則運用了開(kāi)放式的 PC 軟件和現代 CPU 的處理性能,可以在 PC (而非儀器內部) 執行訊號分析。 這樣一來(lái),用戶(hù)即可迅速定制針對采集到的數據執行數據分析的方式,以此滿(mǎn)足個(gè)人的特殊需求,例如縮短測試時(shí)間或提高測量分辨率。
本文引用地址:http://dyxdggzs.com/article/201612/333314.htm軟件設計儀器進(jìn)一步運用這個(gè)概念,可供用戶(hù)修改或甚至徹底替換儀器 FPGA 上所執行的嵌入式軟件。 因為每個(gè)采集到的數據點(diǎn)都可以實(shí)時(shí)在儀器 FPGA 上完成分析,所以用戶(hù)可實(shí)現定制的實(shí)時(shí)分析和復雜的觸發(fā),并且避免空滯時(shí)間 (錯失訊號)。 簡(jiǎn)而言之,軟件設計儀器能夠讓用戶(hù)存取所有的軟件層,從主機 PC 到儀器數據轉換器的針腳全都包含在內,進(jìn)一步實(shí)現定制的修改內容,滿(mǎn)足特定的應用需求。
全新 NI PXIe-5171R 示波器是一種軟件設計儀器,配備 8 個(gè)輸入通道、300 MHz 模擬帶寬、250 MS/s 取樣率、14 位分辨率,以及用戶(hù)可設定的 Xilinx Kintex-7 FPGA。
圖 1: 用戶(hù)可定義的 FPGA 作為軟件設計儀器 (PXIe-5171R 示波器) 程序框圖的核心組件。
2. 透過(guò)軟件來(lái)設計示波器 FPGA 的程序
LabVIEW FPGA Module 能夠把 LabVIEW 系統設計軟件擴充至 NI 可重設 I/O (RIO) 硬件上的 FPGA;而這類(lèi)硬件則包含了 PXIe-5171R 和 PXIe-5624R 示波器、數字序列儀器、RF 向量訊號分析器,以及在 2012 年發(fā)表「軟件設計儀器」概念的向量訊號收發(fā)器 (VST)。
LabVIEW 本身即具有平行機制,而且數據流概念和 FPGA 的數據流也很像,因此非常適合用來(lái)設計 FPGA 程序。 LabVIEW 能夠抽象化系統內不同操作部分所執行的處理和數據遷移作業(yè) (例如儀器內的 FPGA 和 PC 內的微處理器),因此工程師和科學(xué)家不需要 Verilog 或 VHDL 之類(lèi)的 FPGA 程序設計、運算架構或數據串流等方面的深入知識,即可充分發(fā)揮軟件設計儀器的性能。
LabVIEW 本身即具有平行機制,而且數據流概念和 FPGA 的數據流也很像,因此非常適合用來(lái)設計 FPGA 程序。 LabVIEW 能夠抽象化系統內不同操作部分所執行的處理和數據遷移作業(yè) (例如儀器內的 FPGA 和 PC 內的微處理器),因此工程師和科學(xué)家不需要 Verilog 或 VHDL 之類(lèi)的 FPGA 程序設計、運算架構或數據串流等方面的深入知識,即可充分發(fā)揮軟件設計儀器的性能。
圖 2 為軟件設計儀器的軟件架構 (目前以示波器為例)。 此架構包含了實(shí)現 FPGA 的例程,可用于實(shí)際采集和實(shí)時(shí)處理,以及主機 PC 上對應的軟件模塊,能夠和 FPGA 上的對應部分互動(dòng),進(jìn)一步設定/控制測量作業(yè)、處理 PXI Express 總線(xiàn)的數據傳輸,并且呈現數據給用戶(hù)。
圖 2: 就軟件設計儀器的架構而言,主 VI 會(huì )和 FPGA 上的對應部分互動(dòng),以此設定硬件并執行測量。
主機 PC 的組件和儀器驅動(dòng)程序很類(lèi)似,FPGA 程序代碼則是和傳統的示波器硬件比較像。 不同于傳統示波器,這些組件可用來(lái)建置定制示波器 IP,同時(shí)也因為開(kāi)放式特性,可供用戶(hù)根據特定需求而修改或擴充
3. 示波器搭配用戶(hù)可定義的 FPGA 所提供的測試優(yōu)勢
測試應用的終極目標之一就是縮短整體的測試時(shí)間。 時(shí)間通常是提高大量制造成本的主要原因之一,彈性和可重復使用率對高度混合或高度維護測試系統而言則是非常重要。 下列三個(gè)范例說(shuō)明了示波器搭配用戶(hù)可定義的 FPGA 如何節省時(shí)間和成本。
在線(xiàn)處理和 DUT 控制,加快測量速度
許多應用必須透過(guò)通過(guò)數字濾波、信道化、快速傅立葉變換 (FFT) 或解調等措施來(lái)處理所采集的數據。 雖然現代的多核心 CPU 可提供無(wú)與倫比的處理性能給桌面計算機,但通常無(wú)法實(shí)時(shí)處理多核心示波器所產(chǎn)生的數據,所以也沒(méi)辦法快速執行測量作業(yè)。 結果就是 CPU 會(huì )成為測試速度的關(guān)鍵。 有了 FPGA 和固有的平行機制,即可輕松持續執行復雜的分析作業(yè),例如實(shí)時(shí)并行計算多個(gè)通道的功率頻譜。
圖 3 為用戶(hù)可定義的 FPGA 如何用于 PXIe-5171R 示波器,只要一次就能采集并測量一個(gè) DUT (RF 切換器) 內多個(gè)通道的串音。 4 個(gè)示波器通道會(huì )平行采集 DUT 所有 4 個(gè)信道的輸出訊號,計算所有 4 個(gè)通道的功率頻譜,并且針對違反情況執行屏蔽測試。
圖 3: PXIe-5171R 示波器搭配用戶(hù)可定義的 FPGA,可執行平行的頻譜測量,進(jìn)而縮短測試時(shí)間。
另一個(gè)在線(xiàn)處理的例子就是透過(guò) DUT 關(guān)閉循環(huán)。 示波器本身可控制 DUT 并縮短測試時(shí)間,而非由主機 PC 來(lái)控制測試系統內的 DUT 和示波器 (這樣會(huì )帶來(lái)通訊時(shí)間的運作成本)。 示波器的 I/O 通道可做為分離式 I/O 使用,也可當作 SPI 之類(lèi)的序列總線(xiàn),以便和 DUT 通訊。
圖 4: 測試高速數字轉模擬轉換器 (DAC) 的刺激反應系統。
透過(guò)點(diǎn)對點(diǎn)數據流技術(shù),示波器即可結合其他儀器,打造出閉循環(huán)測試系統 (圖 4)。 示波器內部的 FPGA 會(huì )產(chǎn)生測試訊號,并且傳送至數字序列儀器,以此驅動(dòng) DAC 輸入。 示波器會(huì )采集頻譜,并且自動(dòng)比較采集到的訊號和預期的訊號 (也就是之前產(chǎn)生的訊號)。
透過(guò)自定義觸發(fā)和協(xié)議解碼縮短測試時(shí)間
對許多測量作業(yè)而言,偵測特定的訊號狀況以啟動(dòng)采集作業(yè)是相當重要的功能。 傳統的示波器可以精確采集一些觸發(fā)狀況 (例如某個(gè)訊號超過(guò)臨界值),但因為儀器處理已采集的資料而帶來(lái)的空滯時(shí)間,所以無(wú)法每次都偵測到更復雜的事件,例如脈寬。
用戶(hù)可設定的 FPGA 可做為訊號鏈不可或缺的一部分,并且針對用戶(hù)定義的狀況實(shí)時(shí)分析每個(gè)訊號。 這樣一來(lái)即可以精確穩定的方式,偵測簡(jiǎn)易 (準位和磁滯) 和復雜觸發(fā),例如訊號抖動(dòng)或脈寬、特定上升時(shí)間,或甚至特定的訊號形狀。 圖 5 的觸發(fā)狀況運用了一個(gè)訊號封包,以此觸發(fā)采集作業(yè)。 諸如此類(lèi)的觸發(fā)情境可用于設計和測試項目,以便偵測單邊緣觸發(fā)器難以偵測到的異常行為。
圖 5: 特定訊號形狀引發(fā)的觸發(fā)。 在此范例中,訊號必須介于紅色和綠色曲線(xiàn)之間,才能夠觸發(fā)采集作業(yè)。
此外,也可以組合多個(gè)觸發(fā)器,進(jìn)而偵測復合狀況,例如可以在不同通道上看到特定頻譜內容的數字樣式,或者是一連串的事件,通常稱(chēng)為 A-B 觸發(fā)器。
有個(gè)相關(guān)功能就是可根據序列通訊接口上的特定數據字詞或錯誤,偵測并觸發(fā)采集作業(yè)。 有了用戶(hù)可定義的 FPGA,即可測試訊號的完整性 (根據規格測試訊號的模擬波形),同時(shí)平行譯碼輸入數據,以此驗證數據內容。 這樣一來(lái),用戶(hù)不但可以測試訊號,也能夠建立可做為最終系統組件并快速制作原型的測試設定,有效運用單一儀器同時(shí)完成兩項工作。
仿真舊設備以減緩產(chǎn)品汰換問(wèn)題
軍事或航天應用領(lǐng)域內許多維護測試系統都有使用壽命的需求,可延長(cháng)至 10 年以上。 通常會(huì )根據特定的儀器特性而撰寫(xiě)測試程序代碼 (無(wú)論是否刻意),因此很難在避免大幅變動(dòng)的情況下替換儀器,而且重新認證測試程序代碼也需要高額的成本。
用戶(hù)可定義的 FPGA 可供程序設計,藉此修改儀器并仿真遭替換設備的行為,有助于避免上述問(wèn)題。 運用 FPGA 邏輯即可輕松復制觸發(fā)行為或時(shí)序組合等特性,此外只要透過(guò)數字方式實(shí)作所需的濾波器,甚至可以模擬更復雜的方面,例如示波器的濾波特性。
4. 示波器搭配用戶(hù)可定義的 FPGA 所提供的科學(xué)應用優(yōu)勢
就高能物理等科學(xué)應用而言,儀器的性能與彈性都是很重要的特色。 一般來(lái)說(shuō),這類(lèi)應用大部分的訊號處理和控制作業(yè)都會(huì )采用模擬電子和相對較慢的 ADC,以此采集預先處理過(guò)的訊號。 現在,快速的高分辨率 ADC (14 位和 250 MS/s 以上) 可直接從傳感器采集訊號樣本。 只要儀器搭載用戶(hù)可設定的 FPGA,即可在采集期間同時(shí)執行訊號處理作業(yè),不必通過(guò) PC 完成后續處理。 這樣不但可以更快取得結果,也能夠提高科學(xué)實(shí)驗控制的彈性和效率。
有效實(shí)時(shí)反饋系統的在線(xiàn)處理
許多科學(xué)實(shí)驗都必須仰賴(lài)控制系統,確保所有設定項目都維持在明確定義的狀態(tài)。 舉例來(lái)說(shuō),DIII-D Tokamak 等融合研究系統會(huì )透過(guò) RF 功率來(lái)加熱等離子體,這會(huì )需要測量復雜的 RF 反射系數,并且根據測量結果衍生出合適的控制參數
使用粒子加速器和同步加速器時(shí),必須持續監控粒子光束的軌跡,才能滿(mǎn)足磁鐵的正確控制輸入需求。 示波器搭配用戶(hù)可定義的 FPGA,提供了固有的快速平行處理性能,能夠同時(shí)分析訊號和頻域,以及極高速的控制循環(huán),因此有助于解決 DIII-D Tokamak 等應用問(wèn)題。 只要客制化 FPGA,即可監測重要的安全參數,以便在系統處于非理想狀態(tài)時(shí)觸發(fā)關(guān)機作業(yè)。
示波器可透過(guò)高速 PXI Express 總線(xiàn),搭配輸出模塊以產(chǎn)生實(shí)驗所需的控制訊號,或是以每個(gè)儀器超過(guò) 3 GB/s 的速度連續把數據串流至儲存媒介。 用戶(hù)可定義的 FPGA 還有另一個(gè)優(yōu)點(diǎn),那就是可以快速修改處理和控制算法。 可以把已編譯過(guò)的位串流加載 FPGA,只要不到一秒的時(shí)間,即可改變示波器的行為。
實(shí)時(shí)事件偵測和數據減量,有助于加速探索
判斷重點(diǎn)事件通常相當困難。 常見(jiàn)的作法就是等到實(shí)際數據采集作業(yè)結束之后,在后續處理期間尋找事件,不過(guò)這么做很花時(shí)間,而且必須儲存大量的數據。
另外有一個(gè)更有效的方式,就是在采集期間決定要保留和舍棄的訊號,以此把數據量降到最低。 通常唯一的重點(diǎn)參數就是時(shí)戳和能量脈沖的計算結果,所以就儲存觀(guān)點(diǎn)而言,從儀器回傳這些參數會(huì )更有效率,而且因為采集到的結果可輕松卸除至主機 PC,所以還可以延長(cháng)測量時(shí)間。
舉例來(lái)說(shuō),飛行時(shí)間 (ToF) 應用會(huì )持續繪制粒子和能量。 如圖 5 所示,較快的粒子位于左邊 (飛行時(shí)間較短),較慢的粒子則位于右邊。
圖 5: 標準的 ToF 圖和偵測到的脈沖,這些脈沖會(huì )傳輸至主機 PC。
測量系統的功用在于采集、時(shí)戳、測量能量脈沖,并且排除時(shí)間 (采集到的數據),中間完全沒(méi)有脈沖,通常稱(chēng)為零點(diǎn)抑制。 透過(guò) FPGA 即可輕松實(shí)作,因為可以實(shí)時(shí)計算每個(gè)樣本。 如圖 5 所示,偵測事件的一般架構可能會(huì )是脈沖 (例如某個(gè)臨界值) 偵測器,接著(zhù)是符合已偵測脈沖上參考脈沖 (例如高斯形狀) 的算法,以便估計最大值。 偵測峰值和對應時(shí)戳并加以?xún)Υ嬷?,即可舍棄所采集到的脈沖,也可傳送至另一個(gè)緩沖區,以便進(jìn)一步分析或于 PC 顯示。
LabVIEW FPGA 提供一些工具給用戶(hù),能夠把必要的訊號處理階段實(shí)作于示波器上,藉此執行脈沖過(guò)濾和整形、計算出現次數并加上時(shí)戳、測量高度和上升時(shí)間、直接在儀器內重新建構基線(xiàn),并且把壓縮過(guò)的結果回傳至 PC,以便提高研究人員的工作效率。
5. 結論
傳統示波器的原理是基于對信號進(jìn)行快照的模式,然后在采樣的后端將采到的信號對齊現實(shí)給客戶(hù)波形測量。這樣的方式會(huì )丟掉兩次快照之間的數據,如果我們需要尋找一個(gè)信號中很小概率的細節,那傳統儀器無(wú)疑會(huì )增加很多的測試時(shí)間。并且,基于FPGA將所有信號無(wú)縫采集,可以進(jìn)行實(shí)時(shí)的信號處理,比如找出特定的信號波形,將其觸發(fā)。與傳統的示波器只能基于電平的觸發(fā)方式不同,全新的可重配置示波器可幫助用戶(hù)透過(guò)定制化觸發(fā),更快偵測事件,并且實(shí)時(shí)處理數據,直接透過(guò)儀器把數據轉換成結果,進(jìn)一步提高測量質(zhì)量與速度。
評論