新聞中心

EEPW首頁 > 測試測量 > 設計應用 > LabVIEW并行化技術來提高測試的吞吐量

LabVIEW并行化技術來提高測試的吞吐量

作者: 時間:2008-12-04 來源:網絡 收藏

概覽

  二十世紀一位很有影響力的建筑設計師Frank Floyd Wright曾經說過:“每個偉大的建筑設計師都是他所處時代的偉大解讀者 ?!边@句話同樣適用于測試系統(tǒng)設計師們。在他們設計、開發(fā)和實現系統(tǒng)的時候,他們必須理解不斷進步的技術,如多核處理器、現場可編程門陣列(FPGA)和高速數據總線,如PCI Express等等。通過將這些技術與NI LabVIEW并行化編程軟件及NI TestStand編程管理軟件結合在一起,測試工程師們可以創(chuàng)建出高性能的測試系統(tǒng),用于并行化處理、并行化測量,甚至于在生產階段進行完全并行化的測試。借助于基于PC機的并行化技術,用戶可以將測試速度提高到傳統(tǒng)儀器的10倍以上。

  并行化處理

  在傳統(tǒng)CPU設計中,CPU性能會受限于實際的困難,如高速時鐘速率帶來的散熱問題等。為了確保PC機平臺可以滿足不斷增長的處理需求,芯片制造商們正在開發(fā)具有多個處理核心的新型處理器。在自動化測試應用中,為了充分發(fā)揮多核技術在性能和吞吐量上的優(yōu)勢,必須針對多個處理核心編寫軟件應用程序,即創(chuàng)建出在多個處理核心上分別執(zhí)行的多個線程。


   圖1.LabVIEW編譯器在不需要用戶配置的情況下,即可為并行代碼段創(chuàng)建獨立的執(zhí)行線程

  利用基于文本的編程語言(如ANSI C等)編寫多線程應用程序,對于多數設計和測試工程師而言,都不是一件很容易的事情,它需要精通創(chuàng)建和管理線程,并且懂得以線程安全的方式在線程間傳遞數據。利用LabVIEW圖形化編程環(huán)境,工程師們可以充分發(fā)揮出多核處理的計算性能。如圖1所示,在LabVIEW中,兩個沒有數據依賴關系的循環(huán)會自動在獨立的線程中執(zhí)行,而開發(fā)者不需要考慮線程管理等細節(jié)內容。如果需要了解如何利用多核處理器的應用案例,請閱讀名為《使用多核處理器和NI LabVIEW來最優(yōu)化自動測試應用》的白皮書。

  對于特殊的數據操作和信號處理而言,為這些任務分配專用的處理單元是十分必要的。多核控制器可以很好地滿足這種需求,然而對于最終的并行處理而言,它的性能很難超過FPGA。FPGA為自動化測試系統(tǒng)提供了無與倫比的性能和可靠性,是目前并行化編程計算硬件中的佼佼者。LabVIEW FPGA Module軟件使用LabVIEW技術對LabVIEW圖形化開發(fā)進行了擴展,并且針對NI可配置I/O(RIO)硬件上的FPGA芯片。LabVIEW有著清晰的并行化和數據流表示方法,因而非常適合對FPGA進行編程。借助于LabVIEW FPGA Module軟件,用戶可以創(chuàng)建出自定義的測量和控制硬件,而無需了解低級別的硬件描述語言或板級設計。用戶可以借助于個性化的并行化硬件來進行實現特殊的定時和觸發(fā)例程、超高速控制、與數字協(xié)議進行接口、數字信號處理(DSP)和其它許多需要高速的硬件可靠性和確定性的應用。

  使用FPGA,用戶可以實現協(xié)同處理的應用(如圖2所示)。例如,使用具有新型定點計算能力的LabVIEW FPGA以及ni.com/ipnet上提供的快速傅里葉變換(FFT),用戶可以在NI PXI-7852 R系列模塊上的Virtex-5 LX50 FPGA中擺放40個并行化的FFT操作。隨著PXI Express的專用帶寬(高達1GB/秒/方向)和點對點流盤技術的出現,這種能力的價值正在不斷提升。

圖2.LabVIEW FPGA的定點計算能力可以使PXI FPGA上包含FFT在內的協(xié)處理應用的性能得到提高

  并行化測量

  并行化測量要求測試系統(tǒng)中所有的子部件都支持并行化的模型,而不只是處理器。其中包含了數據的采集和傳輸。

圖3.PCI Express實現了專用帶寬而非共享式數據傳輸,進而顯著提高采集和傳輸到硬盤的數據數量

  現在,模塊儀器中最常用的數據傳輸總線包括PCI、USB、以太網和GPIB,但是它們都不支持真正的并行化數據傳輸模型,因為總線上的設備共享總線的帶寬。如果I/O設備采集或生成的累計速率比總線可用的速率高,那么將造成數據的丟失。解決這個問題的通常辦法是順序化地進行測量,并且在I/O設備上集成大容量的板上存儲器作為緩沖區(qū),這樣在等待通信總線可用的過程中,數據就不會丟失了。

  相反,PCI Express是最新的高性能數據傳輸總線,它為每個設備提供了專用的帶寬,而且提供的吞吐量比上面提到的其它商業(yè)化通信總線都要大??捎玫腜CI Express總線有x1、x4、x8和x16(發(fā)音為“乘1”,“乘4”等等)通道幾種,其中每條通道的有用吞吐量為250MB/s。x1和x4選項是儀器類硬件中最為常見的,分別實現了250MB/s和1GB/s(4條250MB/s的通道)的專用帶寬。

  通過在背板中使用PCI Express技術,可將PXI可用的帶寬從132MB/s提高到6GB/s,在帶寬方面的提高達到了45倍多,同時保持了與PXI模塊在軟件和硬件上的兼容性。PXI Express技術與PXI平臺完全整合在一起,為PXI用戶提供了每個插槽1GB/秒/方向的專用帶寬,以及工業(yè)上最高性能的時序和同步功能。

           圖4.PCI Express和模塊化儀器為并行化測量提供了可調整的模型

  在PXI Express模塊采集數據時,它通過專用的PCI Express通道將數據從板上存儲器寫入到硬盤驅動器或者系統(tǒng)存儲器中。當數據被傳輸到系統(tǒng)存儲器中時,LabVIEW應用程序可以訪問數據,而且如果與多核處理器配合使用,那么從信號到最后測量的并行化測量就實現了。

  并行化測試

  利用多核處理器、PCI Express總線和LabVIEW軟件,用戶可以創(chuàng)建并行化的測量系統(tǒng),它們能夠同時測試一個待測單元(UUT)。但是,并行化測試的定義是指多個待測單元同時接受測試。替代方案是順序化地測試待測單元。雖然并行化測試可以顯著地降低總體的測試時間、增加測試吞吐量,并且改進儀器的使用方法,但是開發(fā)并行化測試系統(tǒng)的復雜性是非常巨大的。開發(fā)測試管理軟件以實現同時測試多個待測單元,需要理解底層的操作系統(tǒng)并行化工作的原理(如Windows的臨界代碼段)有所了解,不僅需要周密地考慮在多個待測單元間進行儀器共享,而且要避免沖突或者死鎖。

  從頭開發(fā)自定義的并行化測試系統(tǒng)的替代方案是使用即時可用的測試管理軟件,如NI Teststand。該軟件使用內建的特性,對并行化測試系統(tǒng)開發(fā)中底層的復雜度進行了抽象化,用于在多個線程中執(zhí)行并行化的測試序列,同時對操作系統(tǒng)和儀器資源進行管理。另外,用戶可以使用NI Teststand Resource Profiler工具來理解儀器的使用和并行化測試系統(tǒng)的執(zhí)行,進而降低測試時間并提高吞吐量。Resource Profiler工具可對測試系統(tǒng)執(zhí)行進行分析,并且確定儀器的瓶頸來幫助用戶優(yōu)化測試代碼,區(qū)分未來儀器投資的優(yōu)先順序。如圖5所示,profiler工具實時顯示了儀器和其它資源的使用情況。

圖5. NI TestStand Resource Profiler工具幫助開發(fā)者理解并行測試系統(tǒng)的執(zhí)行, 進而提高了系統(tǒng)的吞吐量

  為了解釋采用并行化測試構架的性能優(yōu)勢,請考慮比較使用PXI平臺和傳統(tǒng)儀器來實現基本的WCDMA測試序列。與W-CDMA測試標準一致,基準應該包含測量(如相鄰信道功率(ACP)、占用帶寬(OBW)、補償累積分布函數(CCDF)和誤差向量幅度(EVM))的時間和精度。如圖6所示,在測量速度方面,基于NI TestStand、LabVIEW和PXI平臺的并行化測試平臺提供了5倍的改進。這可以顯著地節(jié)省終端用戶的開銷。需要了解更多關于基準分析的信息,請查閱《射頻基準比較白皮書》。

 圖6. 相比于傳統(tǒng)儀器,基于LabVIEW、NI TestStand和PXI的NI并行化測試平臺,提供了5倍的測量速度改進和更高的精度

  完成并行測試構架


  多核處理器、FPGA和PCI Express正在改變現代PC機的版圖,并幫助LabVIEW圖形化編程根據工程師應用邏輯的數據流向,實現真正的并行化處理和并行化測量。利用NI TestStand軟件,可以完成并行化的測試構架。具有此結構的測試系統(tǒng)利用PCI Express提高了數據吞吐量,使用LabVIEW、多核處理器和FPGA增強了處理能力,最后利用NI TestStand軟件降低了每個待測單元的總體測試時間和費用。

linux操作系統(tǒng)文章專題:linux操作系統(tǒng)詳解(linux不再難懂)


評論


相關推薦

技術專區(qū)

關閉