亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        基于MPC8548E的嵌入式實時系統(tǒng)自舉優(yōu)化設(shè)計?

        2012-03-31 19:46:10孫亮楊斌鐘瑜西南交通大學(xué)信息科學(xué)與技術(shù)學(xué)院成都6003中國西南電子技術(shù)研究所成都60036
        電訊技術(shù) 2012年2期
        關(guān)鍵詞:嵌入式優(yōu)化策略

        孫亮,楊斌,鐘瑜(.西南交通大學(xué)信息科學(xué)與技術(shù)學(xué)院,成都6003 .中國西南電子技術(shù)研究所,成都60036)

        基于MPC8548E的嵌入式實時系統(tǒng)自舉優(yōu)化設(shè)計?

        孫亮1,楊斌1,鐘瑜2
        (1.西南交通大學(xué)信息科學(xué)與技術(shù)學(xué)院,成都610031 2.中國西南電子技術(shù)研究所,成都610036)

        板級支持包(BSP)是嵌入式系統(tǒng)中聯(lián)系操作系統(tǒng)與硬件平臺的橋梁。以PowerPC體系架構(gòu)下的MPC8548E的微處理器硬件為平臺,研究了VxWorks操作系統(tǒng)的啟動過程,并從BSP的總體架構(gòu)、存儲空間的地址分配、運行過程等方面進(jìn)行分析,提出了一種新的策略來優(yōu)化實時操作系統(tǒng)啟動時間,通過實驗證明此方法可行且安全,具有一定的適用性。

        嵌入式系統(tǒng);啟動時間;PowerPC體系;板級支持包;自舉;優(yōu)化設(shè)計

        1 引言

        在目前嵌入式系統(tǒng)中,嵌入式設(shè)備從上電到操作系統(tǒng)完全啟動及應(yīng)用程序的加載需要10 s左右的時間,這相對于家庭電腦來說是一個很不錯的啟動時間,然而相對一些需要實時、快速運行應(yīng)用程序的軍事、航空、航天等要求可靠性較高的工業(yè)應(yīng)用來說,啟動時間顯然已經(jīng)無法滿足其對快速加載并使用應(yīng)用程序的要求,故需要對操作系統(tǒng)的啟動過程進(jìn)行研究、分析、更改,使得嵌入式平臺能夠在短時間內(nèi)啟動并運行應(yīng)用程序,達(dá)到系統(tǒng)要求。

        BSP是板極支持包(Board Supporting Packet)的縮寫。它是操作系統(tǒng)內(nèi)核運行之前運行的一段小程序,通過這段小程序,可以實現(xiàn)對所用的外設(shè)接口及功能部件進(jìn)行初始化,建立內(nèi)存空間映射圖,為操作系統(tǒng)內(nèi)核的后續(xù)載入提供軟件環(huán)境,故通過對BSP的研究能夠?qū)Σ僮飨到y(tǒng)啟動時間進(jìn)行優(yōu)化。然而BSP是依賴于具體的硬件配置而實現(xiàn)[1],建立一個通用的BSP幾乎是不可能的。

        BSP能夠支持一些系列的PowerPC體系,還能支持MIPS、x86、ARM、NIOS、XScale等諸多常用系列的處理器。BSP對VxWorks的支持非常完善,是嵌入式VxWorks的最佳選擇。BSP的主要功能是系統(tǒng)引導(dǎo)、操作系統(tǒng)接口功能、設(shè)備驅(qū)動功能、上電自檢功能等。VxWorks5.5使用的是wind內(nèi)核,它具有支持多任務(wù)實時、內(nèi)核精簡、高效、穩(wěn)定和可移植性好等優(yōu)點,專門應(yīng)用于具有實時性需求的嵌入式平臺。這里主要討論的是在以MPC8548E微處理器的系統(tǒng)開發(fā)板,設(shè)計并實現(xiàn)特定的BSP,并利用實現(xiàn)好的BSP去引導(dǎo)VxWorks操作系統(tǒng)達(dá)到操作系統(tǒng)啟動時間優(yōu)化的效果。

        2 嵌入式實時系統(tǒng)硬件平臺的設(shè)計

        以PowerPC體系結(jié)構(gòu)的Freescale PPC8548E微處理器為硬件平臺核心[2],其內(nèi)部包含兩個處理模塊:一個高性能嵌入式PowerPC e500內(nèi)核和一個通信處理模塊(CPM)。硬件的配置如圖1所示。

        3 系統(tǒng)啟動過程及存儲空間的地址規(guī)劃設(shè)計

        BSP是系統(tǒng)用來管理外設(shè)[3]的部分,主要由初始化程序和驅(qū)動程序兩部分組成。初始化是指從系統(tǒng)上電復(fù)位開始直到wind kernel和usrRoot根任務(wù)啟動的這段時間,系統(tǒng)的執(zhí)行過程。驅(qū)動程序就是一些包含I/O操作的子函數(shù)。

        VxWorks內(nèi)核[4]可分為3種:可加載類型內(nèi)核(Loadable Image)、帶有ROM啟動功能的壓縮或不壓縮內(nèi)核(ROM-based Image)以及駐留ROM的內(nèi)核(ROM-resident Image)。對于可引導(dǎo)型帶ROM啟動的不壓縮內(nèi)核的系統(tǒng)啟動過程來說,由于基于PowerPC處理器的系統(tǒng)上電后會自動加載并運行位于0地址的指令,故在0地址處通常應(yīng)放置一條跳轉(zhuǎn)指令,它跳轉(zhuǎn)到位于romInit.s中的初始化入口函數(shù)romInit(),接著跳轉(zhuǎn)到位于bootInit.c中的romStart()函數(shù),romStart()將駐留ROM的VxWorks映像(代碼段、數(shù)據(jù)段和BSS段)拷貝到RAM中,接下來開始運行VxWorks內(nèi)核的入口程序sysInit(),sysInit()實現(xiàn)一些與romInit()函數(shù)類似的功能后,再開始調(diào)用Vx-Works內(nèi)核的第一個C函數(shù)usrInit(),usrInit()會根據(jù)BSP的配置,調(diào)用sysHwInit()和sysHwInit2()等,最終完成整個內(nèi)核的前期初始化工作。在usrInit()的最后,由kernelInit()激活多任務(wù)環(huán)境,并且創(chuàng)建一個任務(wù)來安裝設(shè)備驅(qū)動程序。同時啟動設(shè)備,初始化VxWorks系統(tǒng)庫,調(diào)用應(yīng)用程序,啟動完成。該平臺使用的是虛地址方式[5],通過訪問虛地址空間,然后通過虛地址實地址映射來訪問外設(shè)和存儲器。

        4 實時系統(tǒng)自舉時間分析

        通過對BSP啟動過程分析,并使用sysprintk(msg)插入到各個程序執(zhí)行段,該函數(shù)能夠在系統(tǒng)內(nèi)核還未啟動、C語言環(huán)境還未建立時,打印串口信息,通過記錄時間發(fā)現(xiàn)對于PowerPC8548E的開發(fā)板vxWorks系統(tǒng)的啟動時間需要10 s左右,然而嵌入式產(chǎn)品在從上電到啟動用戶程序有特殊要求的,10 s時間顯得太長。通過了解VxWorks OS的啟動步驟,研讀BSP找到了花費時間較多的幾項系統(tǒng)工作,如表1所示。

        (1)內(nèi)存的清零操作是一項相對比較耗時的操作,PowerPC8548E中的BSP是通過函數(shù)bootClear()來進(jìn)行內(nèi)存清零操作,對PowerPC8548E而言,這個操作大約需要3.1 s,耗時非常巨大,是一個時間優(yōu)化的大項。

        (2)網(wǎng)絡(luò)啟動部分是另外的一個非常耗時的操作,網(wǎng)絡(luò)啟動需要對網(wǎng)卡進(jìn)行初始化,以及各種網(wǎng)絡(luò)協(xié)議的配置。實驗發(fā)現(xiàn),大約需要0.9 s來對網(wǎng)絡(luò)初始化,這對于一個需要快速啟動操作來說是一個不可容忍的時間,故這也是需要進(jìn)行優(yōu)化的。

        (3)VxWorks內(nèi)存管理是一個最重要的裁剪部分,它消耗了巨大的時間,對于PowerPC8548E,其內(nèi)核是e500,并不支持BAT(粗粒度映射)模式的MMU和TLB的傳統(tǒng)的內(nèi)存管理辦法。通過研究可以找到以下解決辦法:縮小頁表,即縮小內(nèi)存總數(shù);將頁表存為文件,啟動時直接讀取,跳過建立頁表部分;轉(zhuǎn)換思路,從主要使用頁表映射轉(zhuǎn)換為主要使用BAT映射。然而MPC8548E使用的是e500的內(nèi)核,無法支持BAT模式,將頁表轉(zhuǎn)為文件同樣花費時間較大,故選擇縮小內(nèi)存映射的總數(shù)來減少MMU初始化時間。

        (4)PCI的初始化是一個值得注意的項,程序中PCI的使用是用枚舉的方法進(jìn)行的,通過三重的循環(huán)去查找,首先進(jìn)行256次的總線號、32次的設(shè)備號以及8次的功能號進(jìn)行三重循環(huán)。然而,事實上一般的嵌入式產(chǎn)品都不會使用到這么多的總線號、設(shè)備號和功能號。

        5 實時系統(tǒng)自舉優(yōu)化策略分析

        5.1 策略一

        BSP啟動過程如圖3所示,對主要耗時的4個部分逐個進(jìn)行裁剪。

        (1)內(nèi)存清零操作,可以直接屏蔽內(nèi)存清零操作,即bootClear()函數(shù)進(jìn)行注釋。

        (2)網(wǎng)絡(luò)啟動無法更改,因為該嵌入式系統(tǒng)需要通過網(wǎng)口進(jìn)行在線更新和通信。

        (3)MMU初始化是一個關(guān)鍵的地方,通過縮小表的尺寸縮小耗時,故對一些不需要地址分配不進(jìn)行映射。

        (4)PCI初始化可以進(jìn)行相應(yīng)的更改,PCI上掛載的設(shè)備是很少的,故可對總線號、功能號和設(shè)備號進(jìn)行相應(yīng)的縮小以縮減時間。

        5.2 策略二

        策略一在安全性方面有所降低,因為不對內(nèi)存進(jìn)行零初始化,可能會在以后程序運行時出現(xiàn)異常,再者通過更改MMU初始化也可能會對地址映射出現(xiàn)問題,是不具備安全性。方法二是在方法一的策略上進(jìn)行改進(jìn)。系統(tǒng)的主要目的是在1.5 s左右能夠啟動應(yīng)用程序,既然如此,可以啟動一個最小的操作系統(tǒng)環(huán)境,然后直接加載用戶程序,將一些其他的初始化交給用戶程序后續(xù)去處理,這樣既保證了安全性又能更快的啟動操作系統(tǒng)。啟動過程如圖4所示:在用戶程序usrAppInit(void){}中將未初始化項進(jìn)行初始化,內(nèi)存二次清零操作;修改sysPhys-MemDesc數(shù)組來更改MMU映射;再者就是網(wǎng)絡(luò)初始化啟動,最終完成整個啟動。

        通過對策略一和策略二兩種不同的啟動方式進(jìn)行啟動時間優(yōu)化,并通過測試,結(jié)果如表2所示(表中數(shù)據(jù)已經(jīng)經(jīng)過處理)。

        實驗數(shù)據(jù)顯示,策略二的優(yōu)化方法是最有效也是最安全的,能夠在1.7 s的時間內(nèi)啟動應(yīng)用程序,達(dá)到了嵌入式系統(tǒng)快速啟動應(yīng)用程序的要求。

        6 結(jié)束語

        每種不同的CPU體系結(jié)構(gòu)都有不同的引導(dǎo)程序和操作系統(tǒng),引導(dǎo)程序是嚴(yán)格地依附于你所用的特定的硬件資源[6],但它最基本的功能是大致相同的,都分為兩個步驟,硬件初始化和引導(dǎo)、裝載操作系統(tǒng)。通過從BSP的總體構(gòu)架去分析操作系統(tǒng)啟動過程,從而對操作系統(tǒng)啟動時間進(jìn)行分析優(yōu)化,通過列舉一般操作系統(tǒng)啟動時間優(yōu)化策略的分析,提出一種新的操作系統(tǒng)啟動優(yōu)化策略,通過實驗對比發(fā)現(xiàn)新策略較原有策略在BSP設(shè)計、啟動時間優(yōu)化、安全性等方面有較大改進(jìn),并對進(jìn)一步優(yōu)化更為復(fù)雜的系統(tǒng)的啟動時間優(yōu)化具有很好的實用價值和參考價值。

        [1]WindRiverSystem Inc.VxWorks BSP Developer’sGuide5.5[M].[S.l.]:WindRiverSystem Inc.,2002.

        [2]Freescale Semiconductor.MPC8548E PowerQUICCTM III Integrated Processor Family Reference Manual[M]//MPC8548ERM Datasheet.East Kilbride,USA:Freescale-Semiconductor Inc.,2007:1035-1222.

        [3]岳曉東,蔡本華,賀占莊.基于實時嵌入式系統(tǒng)的BSP構(gòu)建技術(shù)[J].微電子學(xué)與計算機,2006,23(5):105-108. YUE Xiao-dong,CAI Ben-hua,HE Zhan-zhuang.The Technology Based On Building a BSP For Real-time Embedded System[J].Microelectronics&Computer,2006,23(5):105-108.(in Chinese)

        [4]袁浩,肖沙里.基于MPC8260的VxWorks系統(tǒng)的BSP實現(xiàn)[J].微處理機,2009,30(1):170-172. YUAN Hao,XIAO Sha-li.Realization of VxWorks′s BSP Based on MPC8260[J].Microprocessors,2009,30(1):170-172.(in Chinese)

        [5]蘇義鑫,黃強.面向S3C44B0X的VxWorks BSP設(shè)計[J].電子原器件應(yīng)用,2007,9(7):17-20. SU Yi-xin,HUANG Qiang.Design of VxWorks BSP Based on S3C44B0X[J].Electronic Component&Device Applications,2007,9(7):17-20.(in Chinese)

        [6]楊斌.嵌入式系統(tǒng)原理及應(yīng)用[M].成都:西南交通大學(xué)出版社,2006. YANG Bin.Principle and Application of Embedded System[M].Chengdu:Southwest Jiaotong University Press,2006.(in Chinese)

        SUN Liang was born in Jishui,Jiangxi Province,in 1988.He received the B.S.degree from Sichuan Normal University in 2009. He is now a graduate student.His research interests include embedded system and distributed system.

        Email:biy395626983@163.com

        楊斌(1955—),男,四川人,碩士,教授,主要研究方向為嵌入式系統(tǒng)與分布式系統(tǒng)、信號處理;

        YANG Bin was born in Sichuan Province,in 1955.He is now a professor with the M.S.degree.His research interests include embedded system and distributed system,signal processing.

        Email:byang@home.swjtu.edu.cn.

        鐘瑜(1979—),男,貴州人,高級工程師,主要從事信號處理方面的工作。

        ZHONG Yu was born in Guizhou Province,in 1979.He is now a senior engineer.His research concerns signal processing.

        Email:jade.Zhong@hotmail.com

        Optimized Design of Embedded Real-time System Bootloading Based on MPC8548E

        SUN Liang1,YANG Bin1,ZHONG Yu2
        (1.School of Information Science and Technology,Southwest Jiaotong University,Chengdu 610031,China;2.Southwest China Institute of Electronic Technology,Chengdu 610036,China)

        Board Supporting Packet(BSP)is the bridge between the operating system and the hardware platform in an embedded system.This paper describes how to shorten the VxWorks operating system startup time based on MPC8548E under PowerPC architecture,analyses and designs the BSP from the overall architecture and the address assigned ofstorage and the running process,and proposes a new policy which can optimize the startup time of realtime operating system.Finally,it proves the feasibility and security of this method by experiment.This method has a certain commonality and flexibility.

        embedded system;startup time;PowerPC architecture;board supporting packet;bootloading;optimized design

        TP316.2

        A

        10.3969/j.issn.1001-893x.2012.02.025

        孫亮(1988—),男,江西吉水人,2009年于四川師范大學(xué)獲學(xué)士學(xué)位,現(xiàn)為碩士研究生,主要研究方向為嵌入式系統(tǒng)與分布式系統(tǒng);

        1001-893X(2012)02-0241-04

        2011-08-08;

        2011-11-23

        猜你喜歡
        嵌入式優(yōu)化策略
        超限高層建筑結(jié)構(gòu)設(shè)計與優(yōu)化思考
        民用建筑防煙排煙設(shè)計優(yōu)化探討
        關(guān)于優(yōu)化消防安全告知承諾的一些思考
        一道優(yōu)化題的幾何解法
        例談未知角三角函數(shù)值的求解策略
        我說你做講策略
        搭建基于Qt的嵌入式開發(fā)平臺
        高中數(shù)學(xué)復(fù)習(xí)的具體策略
        嵌入式軟PLC在電鍍生產(chǎn)流程控制系統(tǒng)中的應(yīng)用
        Passage Four
        91情侣视频| 强奷乱码中文字幕| 亚洲美女又黄又爽在线观看| 亚洲成AⅤ人在线观看无码| 亚洲视频一区二区蜜桃| 亚洲一区二区日韩专区| 亚洲永久免费中文字幕| 免费观看a级毛片| 日日噜噜噜夜夜爽爽狠狠视频| 毛片无遮挡高清免费久久| 五月激情在线观看视频| 久久人人爽人人爽人人片av高请| 曰批免费视频播放免费直播| 国产农村三片免费网站| 中文字幕专区一区二区| 欧美顶级少妇作爱| 国产高潮国产高潮久久久| 日本中文字幕一区二区高清在线| 少妇被啪出水在线视频| 台湾佬中文娱乐网22| 人妻无码中文字幕免费视频蜜桃| 成人国产一区二区三区精品不卡| 91久久偷偷做嫩模影院| 无人视频在线观看免费播放影院| 日韩在线不卡免费视频| 色老板在线免费观看视频日麻批 | 日韩精品人妻中文字幕有码| 黄射视频在线观看免费| 亚洲av成人无码精品电影在线| 激情五月天伊人久久| 丰满人妻一区二区三区52 | 男女干逼视频免费网站| 亚洲精品中文字幕免费专区| 伊人狠狠色丁香婷婷综合| 亚洲中文字幕乱码免费| 亚洲午夜经典一区二区日韩| 精品亚洲国产成人| 国产曰批免费视频播放免费s| 一区二区三区精品婷婷| 无码国产成人午夜电影在线观看| 无码中文字幕人妻在线一区二区三区|