毛片视频免费观看-毛片视频在线免费观看-毛片手机在线视频免费观看-毛片特级-中文亚洲字幕-中文一级片

基于NI LabVIEW 2010和NI RIO構(gòu)建精確定時的嵌入式系統(tǒng)

2014-10-17 來源:微波射頻網(wǎng) 字號:

1、介紹

在構(gòu)建嵌入式系統(tǒng)時,不論是為了確保控制循環(huán)能夠可靠的執(zhí)行,還是保證I/O信號能夠被及時響應(yīng),或是讓處理速度達(dá)到系統(tǒng)應(yīng)用的要求,定時都是其中的關(guān)鍵。構(gòu)建一套可以滿足定時要求的系統(tǒng),首先從硬件開始進(jìn)行選擇,必須在尺寸、功耗、處理能力和延遲等方面進(jìn)行很好的平衡。另外,嵌入式系統(tǒng)的軟件在執(zhí)行調(diào)節(jié)、中斷響應(yīng)和計算任務(wù)之間的時間平衡幾個方面扮演著重要的角色。

在考慮定時性能的前提下進(jìn)行嵌入式軟硬件集成將是一件極其耗時的挑戰(zhàn)。但是,在NI LAbVIEW 2010軟件平臺和RIO硬件平臺的幫助下,構(gòu)建一套可以滿足絕大部分系統(tǒng)應(yīng)用需求的可靠的精確定時系統(tǒng)所需要付出的代價將極大降低。繼續(xù)深入下去,了解集成了實時CPU和FPGA的NI RIO硬件系統(tǒng),以及定時特性是如何與LabVIEW 2010無縫集成的,可以幫助工程師、科學(xué)家和嵌入式設(shè)計人員們利用這套硬件系統(tǒng)構(gòu)建出健壯的實時響應(yīng)系統(tǒng)。

2、集成實時CPU和高性能FPGA的NI RIO硬件

NI嵌入式硬件的目標(biāo)系統(tǒng)是基于RIO架構(gòu)的,包括了一個一般用于運行實時操作系統(tǒng)的CPU和一套或多套FPGA。在這樣的集成架構(gòu)下,用戶可以在FPGA上完成那些需要納秒級定時精度或者大量并行的任務(wù);在CPU上完成諸如浮點計算等密集計算任務(wù)。FPGA和CPU之間通過PCI總線進(jìn)行通信,通過NI-RIO驅(qū)動模塊提供的直接明了、功能強大的數(shù)據(jù)傳輸接口, 使用LabVIEW或C可以很容易的進(jìn)行相關(guān)開發(fā)。

最終的結(jié)論是:NI-RIO是可以適用于范圍廣泛的嵌入式原型設(shè)計,并且具有很高靈活性的平臺。同時,由于NI-RIO框架是很多不同NI硬件目標(biāo)系統(tǒng)的標(biāo)準(zhǔn)架構(gòu),例如NI Single-Board RIO和NI CompactRIO,用戶在部署軟件時,不論是堅固型系統(tǒng)還是經(jīng)濟(jì)型系統(tǒng),都可以最大限度地實現(xiàn)代碼的復(fù)用。

基于NI LabVIEW 2010和NI RIO構(gòu)建精確定時的嵌入式系統(tǒng)

圖1. NI-RIO嵌入式設(shè)備均基于集成了CPU、FPGA和模塊化I/O的統(tǒng)一架構(gòu)

例如,Ventura市航空中心使用LabVIEW和NI Single-Board RIO開發(fā)了一套火情監(jiān)控系統(tǒng),用于在聯(lián)邦快遞公司的運輸機上防控火災(zāi)。在這套系統(tǒng)中,實時CPU負(fù)責(zé)運行確定性控制算法、網(wǎng)絡(luò)通訊和數(shù)據(jù)記錄,F(xiàn)PGA硬件上則執(zhí)行其他的關(guān)鍵任務(wù)。

3、LabVIEW 2010和內(nèi)置的定時特性簡化了確定性可靠系統(tǒng)的編程

LabVIEW不單可以使用圖形化的編程界面來編寫目標(biāo)CPU(包括了運行實時操作系統(tǒng)的CPU)和FPGA(包括RIO目標(biāo)硬件上的FPGA)程序,同時LabVIEW圖形化編程語言本身也是基于定時和同步概念而設(shè)計的。下面的一些例子將說明,LabVIEW結(jié)合Real-Time模塊和FPGA模塊是如何讓嵌入式系統(tǒng)的定時變得簡潔明了的。

4、LabVIEW Real-Time模塊集成的定時特性

使用Real-Time模塊和Timed Loop進(jìn)行確定性的閉環(huán)系統(tǒng)編程

LabVIEW 2010 Real-Time模塊把LabVIEW圖形化編程擴(kuò)展到了NI實時硬件系統(tǒng)(包括RIO設(shè)備)特定的第三方PC上。根據(jù)使用的目標(biāo)硬件不同,LabVIEW Real-Time模塊會自動在目標(biāo)硬件上部署與標(biāo)準(zhǔn)的VxWorks或ETS實時操作系統(tǒng)相對應(yīng)的組件,以保證確定性和精確的實時性。

當(dāng)使用LabVIEW Real-Time模塊進(jìn)行閉環(huán)控制系統(tǒng)的編程時,通過使用Timed Loop,只需要輕點幾下鼠標(biāo),就可以實現(xiàn)周期性執(zhí)行代碼,硬件控制循環(huán)速率同步,定義多種循環(huán)執(zhí)行優(yōu)先級,甚至可以指定某一循環(huán)在某一個CPU內(nèi)核上執(zhí)行。另外,用戶還可以選擇KHz、MHz或者自定義的外部時鐘來作為循環(huán)定時的基準(zhǔn)時鐘。

基于NI LabVIEW 2010和NI RIO構(gòu)建精確定時的嵌入式系統(tǒng)

圖2. LabVIEW Timed Loop可以讓用戶通過簡潔明了的方式實現(xiàn)配置循環(huán)定時、通過硬件I/O進(jìn)行同步、控制實時代碼執(zhí)行優(yōu)先級、指定代碼執(zhí)行CPU內(nèi)核等

在多系統(tǒng)間實現(xiàn)Timed Loop的同步

在使用LabVIEW Real-Time模塊編程的嵌入式硬件設(shè)備上,用戶可以使用IEEE 1588同步協(xié)議進(jìn)行多系統(tǒng)間的同步,以保證給定的任務(wù)在多系統(tǒng)上是同步執(zhí)行的。根據(jù)用戶使用的硬件設(shè)備不同,IEEE 1588同步協(xié)議可以通過軟件、硬件或者軟硬結(jié)合這幾種不同方式來實現(xiàn)。

使用LabVIEW Real-Time模塊實現(xiàn)多硬件設(shè)備間的軟件同步,將Timed Loop設(shè)置為使用絕對時間源即可。在設(shè)置好Timed-Loop后,只需要再連接一個起始時間戳,然后選擇運行,就可以在多硬件設(shè)備間同時開始循環(huán)的執(zhí)行。

基于NI LabVIEW 2010和NI RIO構(gòu)建精確定時的嵌入式系統(tǒng)

圖3. 用戶可以使用LabVIEW Timed-Loop來實現(xiàn)IEEE 1588同步協(xié)議,在多個分布式的嵌入式設(shè)備中實現(xiàn)同步控制(上圖為NI CompactRIO)

使用NI Real-Time執(zhí)行跟蹤工具包進(jìn)行定時的細(xì)節(jié)分析

在LabVIEW Real-Time模塊下使用Real-Time執(zhí)行跟蹤工具包,可以獲取線程和子VI的執(zhí)行時間、優(yōu)先級、繼承關(guān)系等多種詳細(xì)信息。通過這套工具包,不但可以幫助用戶優(yōu)化實時程序的執(zhí)行情況,更可以幫助用戶發(fā)現(xiàn)諸如優(yōu)先級設(shè)置不當(dāng)、資源競爭等潛在的不穩(wěn)定因素。

在實時硬件上確定性的運行m文件

如果已經(jīng)有了現(xiàn)成的m文件,用戶可以通過LabVIEW MathScript RT模塊,在使用LabVIEW Real-Time模塊編程的嵌入式系統(tǒng)中使用這些代碼。這種方式從根本上改變了以往從m文件到實時硬件代碼的復(fù)雜而繁瑣的遷移過程,使其變得簡潔而迅速。只需要將用戶的m文件通過MathScript節(jié)點嵌入到LabVIEW圖形代碼中,再在LabVIEW項目中將其拖放到實時硬件上,整個遷移過程就完成了。

5、LabVIEW FPGA模塊內(nèi)置的定時特性

使用單周期定時循環(huán)優(yōu)化FPGA程序

LabVIEW 2010 FPGA模塊中的單周期定時循環(huán)移除了循環(huán)內(nèi)部的寄存器,用戶可以在其中最優(yōu)化地運行與之相兼容的代碼。這項措施可以使那些需要在硬件上可靠運行的關(guān)鍵操作達(dá)到最高40MHz的循環(huán)速率。另外,在單周期定時循環(huán)內(nèi)執(zhí)行的代碼占用的FPGA資源更少,從而可以節(jié)省出更多的資源給其他的任務(wù)。

基于NI LabVIEW 2010和NI RIO構(gòu)建精確定時的嵌入式系統(tǒng)

圖4. LabVIEW FPGA模塊中的單周期定時循環(huán)可以讓用戶的這部分代碼達(dá)到最高40MHz的循環(huán)速率

使用循環(huán)定時器來調(diào)整FPGA代碼的執(zhí)行

想要在FPGA上周期性地執(zhí)行操作其實很簡單,只需要在LabVIEW FPGA的代碼框圖里添加一個循環(huán),然后在其中放置一個循環(huán)定時器就可以了。循環(huán)定時器的定時控制可以根據(jù)需要選擇循環(huán)周期為納秒級、微秒級或者毫秒級的不同硬件時鐘作為定時基準(zhǔn)。在默認(rèn)的40MHz時鐘速率下,循環(huán)定時器可以實現(xiàn)25ns整數(shù)倍的定時周期。

通過中斷對實時程序和FPGA程序的定時進(jìn)行同步

在FPGA硬件系統(tǒng)中,用戶可以在FPGA程序中產(chǎn)生中斷,通知實時程序各種事件的發(fā)生,例如數(shù)據(jù)采集完畢,發(fā)生錯誤,任務(wù)已經(jīng)完成等等。使用LabVIEW FPGA模塊中的相關(guān)中斷函數(shù)結(jié)合LabVIEW Real-Time模塊中的Wait on Interrupt方法,用戶可以實現(xiàn)整個嵌入式系統(tǒng)中CPU和FPGA之間的同步。一個系統(tǒng)中最多能夠使用32個中斷。

使用關(guān)鍵路徑高亮幫助確定系統(tǒng)瓶頸。

在開發(fā)過程中,確定和修正時序錯誤的FPGA代碼是一件耗時費力的事情。為了簡化這一過程,可以使用LabVIEW FPGA模塊的關(guān)鍵路徑高亮功能來突出關(guān)鍵路徑上的每一步操作,迅速跳轉(zhuǎn)到出現(xiàn)瓶頸的代碼部分,編寫更高效的代碼或者流水線來對瓶頸進(jìn)行修正。

基于NI LabVIEW 2010和NI RIO構(gòu)建精確定時的嵌入式系統(tǒng)

圖5. LabVIEW FPGA模塊的關(guān)鍵路徑高亮功能可以幫助用戶迅速確定FPGA程序中的瓶頸所在

6、在您的下一次嵌入式原型或設(shè)計中使用LabVIEW和NI RIO

NI RIO硬件設(shè)備和LabVIEW由于其短周期高可靠的開發(fā)特性,已經(jīng)在數(shù)以千計的嵌入式原型或工程產(chǎn)品中得到成功應(yīng)用。當(dāng)您在計劃下一次的嵌入式設(shè)計時,請考慮這樣一套功能強大、擴(kuò)展性強的成熟系統(tǒng)為您所帶來的時間和金錢成本上的節(jié)省,以及LabVIEW的圖形化編程、內(nèi)置的定時特性以及數(shù)以百計的IP內(nèi)核幫助您縮短的開發(fā)周期。

主題閱讀:NI  LabVIEW
主站蜘蛛池模板: 91久久精品国产91久久性色也 | 国产精品1024永久免费视频 | 香蕉国产人午夜视频在线观看 | 男女黄网站 | 国产成人精品一区二三区在线观看 | 97精品国产高清在线看入口 | 狠狠狠综合色 | 日本亚洲欧美国产ay | 果冻传媒国产精品 | 奇怪的美发沙龙973 妻子的诱惑中文版在线免费观看 | 国产午夜亚洲精品不卡免下载 | 天堂网在线最新版www | 天天爱天天干天天操 | 免费永久在线观看黄网 | 极品国产一区二区三区 | 国产在线麻豆自在拍91精品 | 国产一区二区三区在线影院 | 四虎影视精品永久免费 | 婷婷色九月 | 亚洲专区在线播放 | 国内自拍成人网在线视频 | 免费观看成人羞羞视频网站观看 | 尤物国产在线精品福利一区 | 黄页视频在线观看免费 | 欧美精选在线观看 | 日本久久久久久中文字幕 | 国产欧美日韩一区 | 日韩欧美一区二区三区免费看 | 国产人成在线视频 | 天天做天天爱天天做天天吃中 | 永久精品免费影院在线观看网站 | 国产一区二卡三区四区 | 国产精品成人扳一级aa毛片 | 国产高清在线看 | 尤物精品国产福利网站 | 日韩去日本高清在线 | 成人久草 | 特级做a爰片毛片免费看一区 | 国产成人毛片毛片久久网 | 国产中文字幕亚洲 | 欧美日韩国产免费一区二区三区 |