LabVIEW 2010是如何與時(shí)俱進(jìn)的?
眾所周知,對(duì)于工程師而言,時(shí)間在任何方面都是寶貴的因素。無(wú)論您是需要更快地采集數(shù)據(jù),從而利用軟件更精準(zhǔn)地反映真實(shí)世界的信號(hào)、同步遠(yuǎn)程系統(tǒng)、還是僅僅更快速地完成您的工作,時(shí)間都是非常重要的。
本文引用地址:http://butianyuan.cn/article/115788.htm作為圖形化的編程語(yǔ)言,NI公司的LabVIEW軟件有助于節(jié)省您的時(shí)間和編譯G語(yǔ)言的時(shí)間。 圖形化的編程方法可以讓您只需關(guān)注數(shù)據(jù)以及對(duì)數(shù)據(jù)的操作,并且抽象出了諸如內(nèi)存分配和語(yǔ)法規(guī)則等大量復(fù)雜的計(jì)算機(jī)編程工作,從而進(jìn)一步提高您的工作效率。此外,LabVIEW也包括了高級(jí)的定時(shí)機(jī)制和應(yīng)用程序API函數(shù),來(lái)定義硬件和軟件之間時(shí)間約束的參數(shù)和關(guān)系。
LabVIEW最新版軟件LabVIEW 2010,其最顯著的新功能就是針對(duì)各種時(shí)間實(shí)現(xiàn)的優(yōu)化。最新的版本是整個(gè)軟件平臺(tái)的綜合更新,包括直接被客戶(hù)需求推動(dòng)的新功能,新的FPGA IP模塊,增強(qiáng)的定時(shí)和同步功能,以及改進(jìn)的用于產(chǎn)生優(yōu)化機(jī)器碼的后端編譯器,總體可提升高達(dá)20%的應(yīng)用程序運(yùn)行性能。
本文將通過(guò)編譯器的優(yōu)化、內(nèi)置的定時(shí)與同步以及用戶(hù)自身提出的新特性,三個(gè)方面,為您全面介紹LabVIEW 2010。
編譯器的優(yōu)化
LabVIEW編譯器在提升編程效率方面是一個(gè)關(guān)鍵的技術(shù)。編譯器用于處理復(fù)雜的任務(wù)如內(nèi)存分配和線程管理等,并在編輯時(shí),當(dāng)程序框圖代碼不可執(zhí)行的情況下提供反饋給用戶(hù)。最終,復(fù)雜的編譯器和優(yōu)化線程解析您高層次設(shè)計(jì)并返回高效率的機(jī)器代碼。
在過(guò)去的數(shù)十年中, 編譯器已經(jīng)愈加地智能化和最優(yōu)化, 加入了內(nèi)嵌法(inplaceness),類(lèi)型傳播法,聚叢法,虛擬寄存器,文本編譯器優(yōu)化以及其他來(lái)自于NI編譯器研發(fā)者智囊團(tuán)的智能化處理方法。無(wú)論是一個(gè)新增功能,修正漏洞,還是編譯器的改進(jìn),每一次發(fā)布都引入了更新的編譯器,讓您的代碼性能更優(yōu)化。LabVIEW 2010版本關(guān)注的焦點(diǎn)之一就是VI 運(yùn)行時(shí)的性能–也就是說(shuō),無(wú)需改變?cè)创a本身,提升您的VI運(yùn)行性能。
為了更快地提高您的代碼執(zhí)行效率同時(shí)無(wú)須更改您的代碼,研發(fā)者引入了2個(gè) “層”到編譯器層次關(guān)系中。LabVIEW 2009 引入了數(shù)據(jù)流的中間代碼表示(DFIR),一個(gè)高層次的架構(gòu)用于轉(zhuǎn)換從您的程序框圖中產(chǎn)生的數(shù)據(jù)流驅(qū)動(dòng)的圖形化代碼。 LabVIEW 2010加入了基于底層虛擬機(jī)(LLVM)的后端 ,提供了一種新的標(biāo)準(zhǔn)編譯器的優(yōu)化(圖2) 。 DFIR和LLVM協(xié)同工作提供高層次和低層次的中間代碼表示,以便于編譯器使用中間代碼細(xì)分和優(yōu)化LabVIEW程序。 在LabVIEW 2010中,采用了中間代碼表示意味著編譯器優(yōu)化線程并未影響實(shí)際的程序框圖,但由于產(chǎn)生了優(yōu)化的機(jī)器代碼,這就為您的應(yīng)用程序提升了高達(dá)20%的運(yùn)行時(shí)執(zhí)行效率。
LabVIEW 2010通過(guò)幫助您管理源代碼和開(kāi)發(fā)更多模塊化的軟件架構(gòu),提供了助力于大型應(yīng)用程序開(kāi)發(fā)這一新功能。通過(guò)從LabVIEW編寫(xiě)出的源代碼中分離出已經(jīng)編譯過(guò)的對(duì)象,LabVIEW 2010可以明顯提高開(kāi)發(fā)者的工作流程。 當(dāng)這一新的VI屬性選項(xiàng)設(shè)置打開(kāi)時(shí),一個(gè)VI在重新編譯后并不顯示為已經(jīng)修改,除非開(kāi)發(fā)人員修改了圖形化的源程序;這就避免了重新保存和重新提交文件到源代碼控制的需要。
新的打包項(xiàng)目庫(kù)提供了更加模塊化的軟件設(shè)計(jì)和開(kāi)發(fā)過(guò)程,更短的生成時(shí)間和更簡(jiǎn)便的部署方法。 LabVIEW打包項(xiàng)目庫(kù)文件是一個(gè)新的LabVIEW文件類(lèi)型,由一個(gè)項(xiàng)目庫(kù)和所有涉及的子程序組合而成一個(gè)單獨(dú)的文件。 導(dǎo)出的VI包含在這個(gè)文件中,就如同其它的VI保存為不帶程序框圖的形式,但是它們的層次已經(jīng)完全被隱藏。它們遵循一個(gè)生成規(guī)范,現(xiàn)有的lvlib后綴文件被選擇用于確定哪些VI正在被生成到打包的項(xiàng)目庫(kù)中以及哪些VI是公共的或?qū)С龅摹?/p>
評(píng)論