siemens x
傳感器

虛擬儀器技術的進展及如何提升并行處理能力

2025China.cn   2008年07月07日


  日新月異的科技發(fā)展與日趨激烈的市場競爭給工程師們帶來了持續(xù)的壓力和挑戰(zhàn)。其中一個挑戰(zhàn)就是協(xié)議的多樣化,比如在通訊行業(yè)中,比起十年前,目前的通訊協(xié)議幾乎數不清(見圖1),而且沒有一個明顯的主導協(xié)議,因此最終產品就需要同時實現多個協(xié)議。

  產品功能的日趨集成化也是挑戰(zhàn)之一,拿新上市的iPhone為例(見圖2),它匯聚了多種功能,不僅用來通話,也可以用作MP3、PDA、數字相機等等,并且為了保持市場的競爭力,新的功能會被不斷地加入。


 
圖1:通訊行業(yè)并存著多樣的協(xié)議

 

 

   圖2:產品功能日趨集成化

  顯然,如果要跟上這樣的發(fā)展,實現產品的覆蓋測試,功能固定的傳統(tǒng)測試方法已無法滿足靈活性的要求;傳統(tǒng)方式是一套測試儀器針對一個協(xié)議,不同功能采用不同的儀器,這在今天是根本無法接受的。

  基于這些挑戰(zhàn),測試儀器也正在經歷一個基本原則的變更——從功能固定的分立儀器向著靈活的基于軟件的模塊化儀器架構轉變,這正是NI在20多年前提出的“虛擬儀器技術”的概念。利用虛擬儀器技術的特性,可以有效地解決上述的挑戰(zhàn):基于軟件的自定義功能使得工程師們可以針對不同的協(xié)議開發(fā)對應的測試程序;而模塊化的儀器架構則可以根據不同的功能測試選用不同的模塊硬件,在同一個測試平臺上靈活地實現測試系統(tǒng)的集成。

  虛擬儀器技術目前已經被應用在測試測量和自動化的各大領域,協(xié)助越來越多的工程師來創(chuàng)建高性能、高擴展性的測試系統(tǒng)。與此同時,虛擬儀器技術本身也在不斷發(fā)展和創(chuàng)新,縱觀其20多年來的發(fā)展歷程,可以看到,由于虛擬儀器技術是建立在商用技術的基礎之上,因此它能夠將新興發(fā)展的科學技術都融合進來,使工程師能以最迅速和便捷的方式來享用,從而創(chuàng)建更高性能的測試系統(tǒng)。PC處理器技術的發(fā)展就是一個很好的例子:在1990年,用當時的PC(Intel 386/16)處理65000個點的FFT需要1100秒時間,而現在使用3.4GHz的P4計算機實現相同的FFT只需要約0.8秒。

  這些蓬勃發(fā)展著的新興技術也是動虛擬儀器技術發(fā)展的新動力,例如PCI Express總線技術可以讓更多的原始數據以更高的速度傳送給PC;而多核技術則可以實現真正的并行運算,從而直線提升系統(tǒng)的數據處理性能;可編程邏輯門陣列(FPGA)技術則允許工程師根據不同的測試要求通過軟件重新定制硬件的功能。因此,可以預見的是,這些主流的商用技術將讓虛擬儀器技術向許多之前只能用昂貴的專用設備的應用領域敞開了大門。另外,縱觀目前主流的商用技術,可以很明顯地看到,其發(fā)展的趨勢是通過并行拓撲結構來實現更高的性能。下面是幾種新興技術實例:

PCI Express總線技術

  傳統(tǒng)儀器由于將數據處理和分析的過程放在了儀器硬件內部,因此它只能返回一個結果值,這種方式雖然方便,但是卻無法滿足之前已經敘述過的靈活性的要求。因此,一個更好的測試方式就是直接得到原始數據,再使用專業(yè)的分析工具來分析數據,這種方式可以允許工程師們對原始數據進行多次的分析,從而不再需要做多次測試來獲得不同的分析結果,節(jié)省了時間和成本。

  然而,隨著采樣率的不斷提高和通道數的增多,現有的總線帶寬能否進行原始數據的實時讀取,這是實現很多新興測試應用之前就需要解決的問題。

  現有的PCI總線的數據傳達吞吐率可以高達132兆/秒,這個相比其他總線已經屬于相當高了,并且還具有最低的延時(圖3)。然而它是一個共享資源的總線,也就是說,當多個設備同時在總線上傳輸數據時,每個設備可享受的帶寬會成比例地降低。隨著I/O速度和應用要求的提高,這樣的架構成為了瓶頸。而新一代的PCI Express技術,它運用了點對點總線的拓撲架構,使每個儀器可以通過獨立的通道向處理器傳輸數據,明顯地改善了傳輸數據的帶寬,對內存的需求最少,并加快了數據流的傳輸(圖4)。

 


 
圖3:總線帶寬與延時比較

 


                                                                         圖4:PCI與PCI Express總線對比

  眾所周知,在通信背板上添加的PCI總線是推動PXI得到快速應用的一個關鍵因素?,F在,隨著商用的PC技術從PCI總線發(fā)展到PCI Express,PXI也已經將PCI Express結合到PXI標準中,即PXI Express(圖5)。PXI Express不僅保留了PXI的定時和同步等特性,還加入了很多新的同步特性,甚至還提供了微分系統(tǒng)時鐘,微分信號以及微分星觸發(fā)等。

 


 
圖5:PXI Express機箱

  重要的是,PXI Express標準還提供了向后的軟件兼容性,這樣工程師們就可以充分利用他們在已有軟件系統(tǒng)中所開發(fā)的成果。此外,NI提供的PXI Express混合插槽可以同時支持PXI和PXI Express兩種總線形式的模塊,從而更好地保留了過去的投資。

  總而言之,PCI Express技術的誕生使得虛擬儀器技術可以實現對于數據吞吐率有高要求的應用,例如汽車碰撞測試的高速圖像采集或高速數字I/O應用等等。

 


 
圖6:處理器速度的發(fā)展趨勢

多核處理器技術

  PCI Express技術提高了總線帶寬和數據吞吐率,使得工程師可以獲得原始數據,并通過專業(yè)的分析工具拿到可靠的測試結果。不過近年的數據量快速增長,導致對這些數據進行處理和分析成為擺在工程師們面前的又一個問題。

  多核處理器技術能夠提高傳統(tǒng)的測試算法的運行速度,Intel已經許諾了在2011年會推出80個芯核的CPU。但是不同于以往的單核,為了實現性能的提高,開發(fā)人員需要在應用軟件里配置線程。從圖7中可以看到,即使是在四核的處理器上,如果其應用只是單線程的話,操作系統(tǒng)仍舊會將所有的任務分配到其中的一個核上運行??梢?,為了實現在多核處理器上程序性能的提升,就必須將你的應用程序分成多個線程,再由OS協(xié)調分配在不同的核上運行,這樣才能最大限度的利用多核處理器并行的優(yōu)勢來提升性能。

 


 
圖7:使用多線程編程才能最大限度地利用多核處理器的性能

  然而,這對于許多習慣于開發(fā)單線程應用的開發(fā)者來說都是一個極大的挑戰(zhàn)。如果工程師使用的是基于文本的編程語言,如C語言,那么在進行多線程應用軟件的編寫時,需要專門的語義創(chuàng)建和管理線程,并且在線程安全方式下進行數據的傳送。

  而NI LabVIEW,就非常適合于創(chuàng)建并行的多線程應用。首先,相比文本編程語言的至上而下的順序結構,LabVIEW本身就是一種并行的編程結構;其次,早在LabVIEW 5.0時LabVIEW就已經支持多線程,在LabVIEW程序編寫完畢后,LabVIEW編譯器可以自動地識別線程并創(chuàng)建線程到不同的任務和循環(huán)上,再由OS分配到不同的核上運行(圖8)。而最新的LabVIEW 8.5更針對多核技術進行了全面的支持;此外,在實時操作系統(tǒng)中,用戶還可以自己分配特定的線程在特定的核上運行,如圖9所示。

 


 
圖8:使用LabVIEW方便實現多線程編程

 


                                               圖9:LabVIEW 8.5允許用戶手動分配線程在指定的核上運行

  而且,隨著更多的核的運用,LabVIEW可以自動創(chuàng)建更多的線程來自動提升程序的性能。簡單來說,就是當你把測試系統(tǒng)的控制器升級為更多核的處理器時,不需要對程序做任何修改,測試系統(tǒng)就能自動達到更高的處理性能。

  因此說,多核處理器使用了并行拓撲架構可以提高處理能力,但利用真正的多線程編程語言,如LabVIEW,才可以輕松實現運算性能的真正提高。

FPGA技術

  虛擬儀器技術最初的一個重要特性就是可以使用軟件來定制硬件的功能。隨著LabVIEW作為并行化的編程語言的地位逐漸穩(wěn)固,它的應用也得到了不斷的擴展,并對強大的并行硬件技術FPGA提供了強有力的支持。

  通常來說,FPGA的軟件開發(fā)平臺是使用VHDL語言來實現,但是這種語言需要很長的學習時間,并且也需要深厚的硬件技術背景,因此只有少數的一些專業(yè)人員掌握。隨著可編程硬件的需求日益增長,FPGA已成為一種主流的技術,這種趨勢需要能夠有方法降低FPGA編程的門檻,從而將FPGA技術帶給更多的工程師。

  LabVIEW的并行化的編程方式以及圖形化的編程環(huán)境可以允許工程師們能以直觀的方式來實現FPGA的邏輯功能。例如,使用LabVIEW,在FPGA中實現圖10所示的邏輯功能就變得相對簡單。

 


 
圖10:使用LabVIEW實現FPGA邏輯功能

  當然,如果要搭建一個完整的測控平臺,還需要有很多不同的IO模塊來選擇。NI提供給工程師們完整的基于FPGA的商用型平臺以供選擇,讓工程師們能夠利用這一技術實現更高性能的測試應用。

結論

  目前,虛擬儀器技術已經根植于許多領域。PCI Express總線的高帶寬將虛擬儀器技術的應用范圍擴展到更多新興的應用,從而使工程師們能夠在享受高通道、高采樣率的好處的同時,又可根據自身需要靈活定制相關功能;利用真正的多線程編程語言,如LabVIEW,可以輕松實現多核并行運算性能的真正提高;隨著LabVIEW并行化的編程語言的快速發(fā)展,工程師們可以靈活地根據待測單元、軟件或者是測試需求的變化來對硬件進行重新配置,從而對FPGA提供了強有力的支持。

(轉載)

標簽:虛擬儀器技術 進展 提升 并行處理能力 我要反饋 
2024世界人工智能大會專題
即刻點擊并下載ABB資料,好禮贏不停~
優(yōu)傲機器人下載中心
西克
2024全景工博會
專題報道