“世界是并行的。人是并行的。計算機是并行的。為什么要把我們自己限制在順序編程語言中呢?”
Jeff Kodosky是NI LabVIEW軟件之父,他在幾年前一年一度的NIWeek會議上提出了這個問題。在您閱讀這篇文章的時候,您的大腦正在同時處理多個并行操作,例如圖像采集、視覺特征識別、文字解析、數(shù)據(jù)處理、數(shù)據(jù)存儲和運動控制功能——所有這些事情的進行同時還維持著重要的生命機能,包括呼吸、將血液送到全身、產生能量等等。這些關鍵技能中有一部分需要自己有意識的思考,但是大部分并不需要。
相似的,您現(xiàn)在創(chuàng)建的測量與控制系統(tǒng)也可以同時進行多項任務。計算領域的工程創(chuàng)新引進了許多建立更高效并行系統(tǒng)所需的關鍵技術:多核處理器、現(xiàn)場可編程門陣列(FPGA)和無線通信。使用這些傳統(tǒng)工具利用這些關鍵技術并不十分容易;但是,如果在應用中使用這些技術,就可以獲得性能更高的系統(tǒng),提高測量與自動化系統(tǒng)的吞吐量,降低成本。LabVIEW的最新版本8.6為您提供了使用下一代并行技術所需的工具,從多核處理器到高性能FPGA直至無線設備。
?
圖1:NI機器視覺開發(fā)模塊的例如圖像卷積函數(shù)等多個圖像處理函數(shù)現(xiàn)在能夠自動分配到多個核心進行處理。
1. 在桌面上進行多核超級計算
在世界最頂級的500臺超級計算機( )的最新排名中,有77%使用了多核處理器簇,而在2007年這個數(shù)字只有22%。這些超級計算機和您現(xiàn)在PC中使用的多核處理器是相同的。當然,要充分利用這些超級計算機需要編寫專用的軟件。幸運的是,LabVIEW的設計就已經考慮了并行處理,對多任務處理的支持已經長達10多年。
?
圖2:LabVIEW 8.6為FPGA編程提供了強大的算法工程平臺,包含了交互式用戶界面、大型分析庫以及到實時硬件原型上的快速移植。
LabVIEW 8.6是基于現(xiàn)有的多核兼容性而編寫的,大大提高了利用多核處理所能夠獲得的性能。在LabVIEW 8.6中超過1200個數(shù)學和信號處理庫中的函數(shù)已經為多核系統(tǒng)進行了優(yōu)化;此外,新型的高級緩存連續(xù)技術能夠進一步提高性能。這樣使得對CPU核心的使用更為高效。舉例來說,相對于單核系統(tǒng)而言,一個運行在八核系統(tǒng)上的基準測試程序運行快了6.6倍。LabVIEW控制設計與仿真模塊也使用了多核處理器,執(zhí)行并行動態(tài)系統(tǒng)仿真模塊快了5倍。NI機器視覺開發(fā)模塊中的多個圖像處理函數(shù)已經為自動將任務平分到多個核心中進行了優(yōu)化。例如,圖像卷積函數(shù)的基準測試在雙核系統(tǒng)上運行快了高達15倍(見圖1)。這些新型特性為您的測量或控制系統(tǒng)提供了超級計算機級別的性能。
2. 降低FPGA開發(fā)時間
FPGA可能是現(xiàn)在并行能力最高的可編程計算硬件,為測量和控制系統(tǒng)提供了前所未有的性能和可靠性。但是,由于FPGA的開發(fā)困難重重,許多工程師不太愿意涉足FPGA編程。甚至算法設計專家在進行定點實現(xiàn)的工作也覺得十分困難。LabVIEW提供了強大的算法工程平臺,使用交互式用戶界面、大型分析庫和與實時硬件原型的快速移植特性,滿足了這些挑戰(zhàn)的需求。LabVIEW 8.6擴展了這些課題,解決了下面列出的最為常見的FPGA挑戰(zhàn)。
1、使用傳統(tǒng)的FPGA開發(fā)軟件需要數(shù)字設計的專業(yè)知識——使用LabVIEW直觀的數(shù)據(jù)流模型,您可以使用圖形化LabVIEW FPGA模塊,對FPGA進行編程,而不必學習硬件描述語言(HDL)的復雜內容。
2、FPGA代碼在執(zhí)行之前可能需要很長的編譯周期——LabVIEW 8.6大大增強了FPGA開發(fā)和調試特性,您可以在無需編譯的情況下,在開發(fā)計算機上對FPGA和主機接口代碼進行仿真。此外,現(xiàn)在您可以在無需修改FPGA代碼的情況下,通過仿真I/O信號為FPGA邏輯建立測試工作臺,在編譯之前對設計進行驗證。
如果您使用NI CompactRIO硬件,就可以利用LabVIEW 8.6中全新的CompactRIO掃描模式特性,無需對FPGA進行編程,訪問實時處理器的I/O。有了這個全新選項,在您的應用程序需要更高性能或是自定義行為時,可以選擇“全面開啟”FPGA。
3、將算法從軟件原型移植到硬件實現(xiàn)中十分困難——由于LabVIEW可以運行在臺式機平臺和FPGA上,相對于使用傳統(tǒng)工具需要重寫算法而言,從臺式機到硬件的過渡十分平滑。LabVIEW 8.6中FPGA上的新增定點數(shù)據(jù)類型支持和例如快速傅立葉變換(FFT)函數(shù)等高級分析知識產權(IP)使得這種過渡更加順利。
4、使用最新的FPGA硬件更新設計需要耗費時間和資金——LabVIEW通過利用硬件抽象保護了您的開發(fā)投資,因此您可以使用全新硬件平臺,例如基于Xilinx Virtex-5 FPGA的NI R系列設備和NI單板RIO板卡專用可重復配置I/O(RIO)平臺,而無需對LabVIEW FPGA代碼進行修改。
3. 簡化Wi-Fi測量系統(tǒng)的實現(xiàn)
LabVIEW除了簡化了在多核處理器和FPGA上的并行代碼開發(fā)之外,還通過為新型NI Wi-Fi數(shù)據(jù)采集(DAQ)設備提供支持,簡化了并行分布式測量的開發(fā)和部署。盡管很久之前LabVIEW就已經為一系列插入式和有線總線的數(shù)據(jù)采集提供了支持,包括PCI、PXI、USB、LAN和GPIB,但是在數(shù)據(jù)采集應用中無線技術的引進卻慢了很多。這主要是因為對可靠、安全、高性能無線系統(tǒng)的編程和部署相對更為復雜。隨著Wi-Fi(IEEE 802.11)在IT領域中普及以來,性能、可靠性和安全性已經大大提高了這個技術能夠適用于包括數(shù)據(jù)采集在內的關鍵任務的可行性。
對基于Wi-Fi的LabVIEW配置和數(shù)據(jù)采集步驟和對本地插入式USB設備的信號采集是相似的。兩者都使用相同的LabVIEW應用程序接口(API)連接NI-DAQmx驅動程序,從而避免了在將Wi-Fi設備加入到現(xiàn)有有線或插入式NI數(shù)據(jù)采集系統(tǒng)時所需的代碼修改。在LabVIEW中進行編程的時候,您可以使用NI數(shù)據(jù)采集助手,這是一個基于配置的向導,能夠幫助您定義測量,快速方便地通過Wi-Fi采集數(shù)據(jù)。LabVIEW 8.6中的數(shù)據(jù)采集助手和NI-DAQmx API使得將您的Wi-Fi系統(tǒng)從幾十個擴展到上百個設備變得十分容易。現(xiàn)在您可以將LabVIEW 8.6和新型NI Wi-Fi數(shù)據(jù)采集驅動程序用于以下應用領域:
1、用于預測維護的機器監(jiān)視——機器狀態(tài)監(jiān)視可以預防意外事故、優(yōu)化機器性能,并且降低修理時間和維護成本。使用LabVIEW和Wi-Fi振動測量,可以大大減少與機器監(jiān)視相關的安裝和布線成本。Wi-Fi數(shù)據(jù)采集還簡化了筆記本電腦和基于PC的移動現(xiàn)場診斷系統(tǒng)的建立。
2、結構狀態(tài)的診斷監(jiān)視——結構狀態(tài)監(jiān)視包括通過負載、壓力和張力等主要指標對建筑和橋梁的性能進行評估。由于這些結構尺寸較大,使用有線解決方案成本高昂,并且難于實現(xiàn)。對于這些及其他動態(tài)結構測試應用而言,高帶寬的全新NI Wi-Fi數(shù)據(jù)采集設備是使用LabVIEW在線分析,進行振動和張力測量連續(xù)數(shù)據(jù)流傳送的理想選擇。
3、環(huán)境質量監(jiān)視——環(huán)境監(jiān)視的范圍包括土壤、水和空氣的完整度直至與溫度和濕度調節(jié)相關的服務器與易損品等重要資產的室內儲藏。使用LabVIEW和Wi-Fi熱電偶和電壓測量,建立安裝與支持簡單的無線遠程監(jiān)督解決方案。
?
圖3:您可以在多種應用中將新型Wi-Fi數(shù)據(jù)采集設備與LabVIEW一起使用,其中包括機器、診斷與環(huán)境監(jiān)視。
4. LabVIEW 8.6中的其他新特性
除了繼續(xù)引進多核處理器、FPGA和Wi-Fi測量等最新并行技術之外,LabVIEW 8.6還包括了為長期老用戶專門設計的新增特性和重要改進。一個十分顯著的改變是通過LabVIEW平臺DVD套件所帶來的更好的用戶體驗,它大大簡化了LabVIEW開發(fā)系統(tǒng)、附加模塊和工具包以及NI兼容設備驅動程序的安裝。在單一的對話框中,您可以安裝分布在多張DVD上的軟件,并且盡可能少地更換媒介。您還可以對DVD上所包含的您暫時并不擁有的軟件進行30天的評估。
LabVIEW 8.6還包括了新增開發(fā)特性,可以提高工作效率,其中包括全新的程序框圖整理工具,只需要單擊鼠標,就可以按照LabVIEW風格指南中所給出的編程建議對程序框圖進行大小改變和重新排列。我們知道LabVIEW選板隨著LabVIEW平臺的發(fā)展,變得越來越復雜,LabVIEW 8.6也引進了快速放置功能,您可以使用可預測方式進行選擇,對前面板和程序框圖對象進行查找和放置。
世界是并行的,工程師和科學家必須能夠基于可響應的軟件,開發(fā)測量與自動化系統(tǒng)。LabVIEW 8.6可以充分利用多核處理器、FPGA以及Wi-Fi數(shù)據(jù)采集設備,它提供了由其自身圖形化編程平臺所帶來的相同優(yōu)點——無論何如復雜都可以利用最新PC技術的能力。
評論