<meter id="pryje"><nav id="pryje"><delect id="pryje"></delect></nav></meter>
          <label id="pryje"></label>

          新聞中心

          EEPW首頁(yè) > 測(cè)試測(cè)量 > 設(shè)計(jì)應(yīng)用 > 基于OMAP的無(wú)線傳感網(wǎng)節(jié)點(diǎn)處理器的設(shè)計(jì)與實(shí)現(xiàn)

          基于OMAP的無(wú)線傳感網(wǎng)節(jié)點(diǎn)處理器的設(shè)計(jì)與實(shí)現(xiàn)

          作者:陳卓,朱杰,袁曉兵,沈杰 時(shí)間:2008-07-23 來(lái)源:電子技術(shù)應(yīng)用 收藏

            是計(jì)算技術(shù)、通信技術(shù)和技術(shù)相結(jié)合的產(chǎn)物。傳感網(wǎng)應(yīng)用場(chǎng)合非常廣泛,節(jié)點(diǎn)也可以搭載不同類(lèi)型的。當(dāng)節(jié)點(diǎn)自身搭載的為震動(dòng)、磁傳感器時(shí),采集到的數(shù)據(jù)量較小,處理簡(jiǎn)單,目前的傳感網(wǎng)節(jié)點(diǎn)(如Mica節(jié)點(diǎn))就可以滿(mǎn)足需要。但當(dāng)節(jié)點(diǎn)集成圖像傳感器、紅外傳感器等大數(shù)據(jù)量傳感器對(duì)傳感數(shù)據(jù)網(wǎng)絡(luò)的實(shí)時(shí)要求相當(dāng)高時(shí),現(xiàn)有的節(jié)點(diǎn)受處理及存儲(chǔ)能力的限制無(wú)法滿(mǎn)足要求。

          本文引用地址:http://www.ex-cimer.com/article/86128.htm

            本文主要分析在設(shè)計(jì)較高處理及存儲(chǔ)能力傳感節(jié)點(diǎn)時(shí),如何滿(mǎn)足傳感網(wǎng)節(jié)點(diǎn)低功耗和高處理能力間的平衡關(guān)系,并介紹基于處理器的部分的實(shí)現(xiàn)方案。

          1 無(wú)線傳感網(wǎng)節(jié)點(diǎn)功耗分析

            首先對(duì)節(jié)點(diǎn)各模塊與處理器模塊的功耗關(guān)系進(jìn)行分析。

            依照功能,無(wú)線傳感網(wǎng)節(jié)點(diǎn)在硬件上分為數(shù)據(jù)采集模塊、數(shù)據(jù)處理模塊、無(wú)線收發(fā)模塊、供電模塊。圖1為其節(jié)點(diǎn)示意圖。

           

            圖中虛線表示處理器模塊所涉及的功能,它負(fù)責(zé)數(shù)據(jù)處理模塊的全部工作及數(shù)據(jù)采集模塊與無(wú)線收發(fā)模塊的部分工作。其中數(shù)據(jù)處理模塊主要由處理器與存儲(chǔ)器組成。若處理器不搭配存儲(chǔ)器,則在分析功耗時(shí),只對(duì)處理器模塊進(jìn)行分析即可。

            下面對(duì)各模塊進(jìn)行功耗分析。

            (1)數(shù)據(jù)采集模塊
            數(shù)據(jù)采集模塊通過(guò)傳感器采集外界數(shù)據(jù)并存儲(chǔ)。處理器模塊主要是配合傳感器工作,并進(jìn)行數(shù)據(jù)存儲(chǔ)。

            (2)數(shù)據(jù)處理模塊
            數(shù)據(jù)處理模塊是處理器的主要工作模塊。在工作態(tài)內(nèi),處理器模塊的主要工作為數(shù)據(jù)采集、數(shù)據(jù)處理及數(shù)據(jù)傳送。在數(shù)據(jù)處理階段,處理器又負(fù)責(zé)模式識(shí)別、協(xié)議處理以及通信相關(guān)的三類(lèi)任務(wù)。
           
            在選擇數(shù)據(jù)處理階段的算法時(shí),應(yīng)考慮功耗問(wèn)題。在達(dá)到系統(tǒng)要求的情況下,算法應(yīng)盡可能簡(jiǎn)化。

            值得注意的是:選擇簡(jiǎn)單的通信相關(guān)算法可能使接收部分的性能下降,只能通過(guò)增加無(wú)線收發(fā)模塊的發(fā)射能量來(lái)補(bǔ)償,使整個(gè)節(jié)點(diǎn)的功耗增加。

            該模塊的設(shè)計(jì)原則:①數(shù)據(jù)處理部分軟件盡量簡(jiǎn)化;②工作態(tài)和待機(jī)態(tài)功耗應(yīng)盡量降低;③通信相關(guān)的算法會(huì)影響到無(wú)線收發(fā)模塊的功耗,應(yīng)整體考慮后再選擇。
           
            (3)無(wú)線收發(fā)模塊
            由于無(wú)線收發(fā)模塊工作時(shí)需要處理器配合,將數(shù)據(jù)與無(wú)線收發(fā)模塊交互。因此工作時(shí)間內(nèi),必須考慮處理器模塊的功耗。

            以上分析了無(wú)線傳感網(wǎng)節(jié)點(diǎn)中的各個(gè)模塊在工作態(tài)時(shí)與處理器模塊的關(guān)系。下面利用上述結(jié)論,針對(duì)基于芯片的的設(shè)計(jì)進(jìn)行具體分析。

          2 基于的低功耗設(shè)計(jì)

            2.1 功耗與處理主頻的關(guān)系

            下面根據(jù)OMAP5912的電流/處理速率比分析節(jié)點(diǎn)的功耗與處理器主頻的關(guān)系。OMAP為雙核處理器,對(duì)兩個(gè)核的功耗、計(jì)算能力要分別考慮。

            2.1.1 OMAP內(nèi)部雙核間的任務(wù)分配
            OMAP5912中的DSP核為C5x系列的5510,ARM核為ARM926EJ。其中DSP核有內(nèi)部乘加器且具有并行執(zhí)行語(yǔ)句的特點(diǎn),在進(jìn)行大數(shù)據(jù)量的數(shù)值運(yùn)算時(shí)效率極高。以FFT為例,1024點(diǎn)的FFT程序在ARM端的計(jì)算量約為1M條指令,在ARM核現(xiàn)有的流水線機(jī)制下,要花費(fèi)1M指令周期。而在DSP核中運(yùn)算時(shí),由于程序可根據(jù)DSP內(nèi)部的硬件結(jié)構(gòu)優(yōu)化,整個(gè)運(yùn)算只消耗40K指令周期。所以主要的數(shù)值處理計(jì)算應(yīng)該在OMAP內(nèi)部的DSP核內(nèi)計(jì)算,而ARM核負(fù)責(zé)處理協(xié)議上層邏輯性較強(qiáng)的部分。

            2.1.2 OMAP核的電流/主頻比
            芯片的電流消耗與其運(yùn)行的主頻成線性關(guān)系,工作頻率越高,電流就越大。

            根據(jù)實(shí)測(cè)值,OMAP內(nèi)部DSP核的電流值與DSP主頻的關(guān)系約為:
          IDSP=(25+0.3×FDSP)mA  (1)

            其內(nèi)部ARM核的電流值與ARM核主頻的關(guān)系約為:
          IARM=(20+0.2×FARM)mA  (2)

            兩個(gè)核的電流/頻率示意圖如圖2所示。

            由圖2可知:DSP核的功耗略大于ARM核的功耗,而且主頻越高越明顯。

            2.1.3 OMAP核工作頻率的選擇

            下面介紹OMAP兩個(gè)核工作頻率的選擇。此處引入一個(gè)變量M,代表一個(gè)處理器完成某項(xiàng)運(yùn)算所需要的指令周期數(shù)。

            (1)DSP核的頻率選擇分析
            設(shè)DSP核所承擔(dān)的任務(wù)共需要MDSP,則DSP核完成此工作所消耗的能量為:
           EDSP=Pworking×Tworking
                =(VDSP×MDSP×0.3+VDSP×MDSP×25/FDSP)mJ (3)

            對(duì)式(3)求EDSP對(duì)FDSP的導(dǎo)數(shù)得:
          EDSP′=-VDSP×MDSP×25/(FDSP)2(4)

            由于FDSP∈(0MHz,192MHz],在此區(qū)間內(nèi)EDSP′≠0,即函數(shù)無(wú)極值。由于EDSP′<0,所以當(dāng)FDSP=192MHz時(shí),EDSP得到最小值:
          EDSP_min=(VDSP×MDSP×0.43)mJ (5)

            (2)ARM核的頻率選擇分析
            進(jìn)行類(lèi)似上面的分析,并滿(mǎn)足剛好在TDSP_pro時(shí)間內(nèi)完成MARM的運(yùn)算量處理時(shí),ARM的能耗EARM最小。

            此時(shí):FARM=FDSP×MARM/MDSP(6)

            (3)工作頻率選擇的結(jié)論
           ?、僭谙哪芰孔钌俚脑瓌t下,當(dāng)DSP核運(yùn)算時(shí),應(yīng)選擇全速運(yùn)行。運(yùn)算結(jié)束后,馬上由ARM核將其轉(zhuǎn)入被動(dòng)模式。

            ARM核根據(jù)選擇的算法,估算MDSP與MARM的關(guān)系,根據(jù)式(7)進(jìn)行具體計(jì)算。

           ?、谠诓杉瘮?shù)據(jù)和數(shù)據(jù)傳遞階段,應(yīng)盡量選擇低主頻,以達(dá)到功耗最低的目的。

            2.1.4 節(jié)點(diǎn)方案中各狀態(tài)的設(shè)計(jì)

            根據(jù)節(jié)點(diǎn)處理器模塊的狀態(tài),分為待機(jī)狀態(tài)和工作狀態(tài)。其中工作狀態(tài)又根據(jù)功能的不同分為數(shù)據(jù)采集、數(shù)據(jù)處理和數(shù)據(jù)傳送三個(gè)階段。
           
            各狀態(tài)的轉(zhuǎn)換關(guān)系如圖3所示。


            當(dāng)節(jié)點(diǎn)處于各狀態(tài)時(shí),處理器的主頻及任務(wù)如下:

            (1)節(jié)點(diǎn)待機(jī)態(tài)時(shí),處理器內(nèi)部ARM核及DSP核處于睡眠狀態(tài)。

            (2)數(shù)據(jù)采集階段時(shí),處理器內(nèi)部的ARM核處于工作狀態(tài),F(xiàn)ARM=2MHz;DSP核處于睡眠狀態(tài)。
          處理器模塊的任務(wù):ARM核將A/D從傳感器處采集到的數(shù)據(jù)讀入內(nèi)部存儲(chǔ)區(qū)。

            (3)數(shù)據(jù)處理階段時(shí),處理器中ARM核處于工作狀態(tài),F(xiàn)ARM=2MHz;DSP核處于工作狀態(tài),F(xiàn)DSP=192MHz。
          處理器模塊的任務(wù):ARM核協(xié)議處理,包括組幀、解幀。DSP核的模式識(shí)別中待發(fā)送的數(shù)據(jù)量為320bit;圖像壓縮中待發(fā)送的數(shù)據(jù)量為95Kbit。與通信相關(guān)的處理包括調(diào)制解調(diào)、信道編解碼。

            (4)數(shù)據(jù)傳送階段時(shí),處理器內(nèi)部ARM核處于工作狀態(tài)FARM=2MHz,DSP核處于睡眠狀態(tài)。

            處理器模塊的任務(wù)是配合無(wú)線收發(fā)模塊傳送數(shù)據(jù)。

            各工作狀態(tài)耗費(fèi)電流如表1。

           


          上一頁(yè) 1 2 下一頁(yè)

          評(píng)論


          相關(guān)推薦

          技術(shù)專(zhuān)區(qū)

          關(guān)閉
          看屁屁www成人影院,亚洲人妻成人图片,亚洲精品成人午夜在线,日韩在线 欧美成人 (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })();