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

          新聞中心

          EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計應(yīng)用 > T-Kernel在Blackfin處理器上的移植分析

          T-Kernel在Blackfin處理器上的移植分析

          作者: 時間:2012-03-20 來源:網(wǎng)絡(luò) 收藏

          系統(tǒng)中的每個任務(wù)可以定義一個特定的任務(wù)異常處理程序,任務(wù)異常處理被觸發(fā)后,優(yōu)先于該任務(wù)得到執(zhí)行。

          4.3系統(tǒng)調(diào)用入口移植

          對應(yīng)用層調(diào)用系統(tǒng)服務(wù)和擴展服務(wù)進行了限制,只能調(diào)用相應(yīng)的接口函數(shù)(以tk_***_***()命名的API),在接口函數(shù)中觸發(fā)軟中斷進入Call_entry(),在Call_entry()函數(shù)中才能取得實際服務(wù)函數(shù)(以_tk_***_***()命名)的入口地址執(zhí)行[3]。處理流程如圖3所示。系統(tǒng)調(diào)用可能發(fā)生在中斷過程中,所以Call_entry()軟中斷異常的優(yōu)先級需要設(shè)為最高。Fncd是每個服務(wù)函數(shù)唯一的標識碼,從中可以判斷出該函數(shù)是系統(tǒng)服務(wù)還是子系統(tǒng)的擴展系統(tǒng)服務(wù),后者需要通過svc_ientry()函數(shù)調(diào)用。

          圖3 系統(tǒng)調(diào)用處理流程

          5 移植測試

          移植測試工作主要分為穩(wěn)定性測試和實時性測試兩部分。測試的目的是保證移植工作的正確性。

          通過新建15個不同優(yōu)先級的任務(wù)進行休眠暫停請求異常處理和請求信號量等操作,同時定義計時器中斷喚醒任務(wù),可以測試系統(tǒng)的穩(wěn)定性。移植系統(tǒng)的實時性可以通過任務(wù)的建立時間,結(jié)束時間,任務(wù)的切換時間,搶占時間,中斷延遲時間,信號量混洗時間等指標來確定。

          任務(wù)切換時間為系統(tǒng)在兩個具有相同優(yōu)先級獨立任務(wù)之間切換所需的時間。搶占時間定義為系統(tǒng)控制從低優(yōu)先級任務(wù)轉(zhuǎn)移到高優(yōu)先級任務(wù)所花費的時間。中斷延遲時間指從中斷響應(yīng)到中斷子程序語句得到執(zhí)行的時間間隔。信號量混洗時間指一個信號被釋放到等待該信號量的任務(wù)被激活的時間延遲[6]。部分的測試結(jié)果如表5.1所示。移植代碼編譯為速度優(yōu)化100%,時間單位是Blackfin處理器cycles寄存器所記錄的運行時鐘周期??梢钥吹剑到y(tǒng)運行在600MHz時的性能指標都在微秒級。

          任務(wù)切換時間

          搶占時間(中斷觸發(fā))

          中斷延遲時間

          信號量混洗時間

          cycles

          1716

          1662

          424

          1584

          運行時間(600MHz)

          2.9us

          2.7us

          0.7 us

          2.6us

          表1 部分適時性測試時間結(jié)果

          6 總結(jié)

          本文針對Blackfin處理器(BF533)平臺上移植T-Kernel的應(yīng)用需求,分析和歸納了移植的主要過程,總結(jié)了中斷管理、任務(wù)切換和系統(tǒng)調(diào)用接口三部分的移植方法,對系統(tǒng)的穩(wěn)定性和實時性進行相應(yīng)的測試以保證移植工作的正確性。移植過程揭示了T-Kernel內(nèi)核任務(wù)調(diào)度的原理和技術(shù)細節(jié),對于其它RTOS的開發(fā)有很大的借鑒意義。

          文中所討論的移植方法,沒有包括對于MMU(Memory Management Unit)管理模塊的移植,因為在絕大多數(shù)嵌入式實時性應(yīng)用中,由于對速度和資源的限制,并不開啟處理器的MMU功能,如果在數(shù)據(jù)和信息處理的應(yīng)用中有需求,可以針對特定處理器的MMU模塊進行相關(guān)代碼的移植。

          (特別感謝上海易律電子劉湘毅的技術(shù)支持)

          參考文獻

          [1] Forum T-Kernel Specification Version 1.00.00 2005

          [2] ADI ADSP-BF533 Blackfin Processor Hardware Reference Revision 3.0 Feb 2004

          [3] Mohit Sindhwani, Anatomy of a System Call, page:www.onghu.com/te 2006

          [4] Forum T-Kernel Implementation guide to New Hardware Rev.1.00.01 2006.06.2

          [5]黃天戍,李秀紅 RTOS數(shù)據(jù)采集系統(tǒng)中實時處理與高速性的設(shè)計考慮[J] 微計算機信息 No.28 P.95-97 2005

          [6] 李慶誠,顧健 嵌入式實時操作系統(tǒng)性能測試方法研究 單片機與嵌入式系統(tǒng)應(yīng)用

          NO.8 P.19-21 2005


          上一頁 1 2 3 下一頁

          關(guān)鍵詞: T-Kernel Blakfin T-Engine RTOS移植

          評論


          相關(guān)推薦

          技術(shù)專區(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); })();