新聞中心

        EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > 基于OSEK標(biāo)準(zhǔn)的嵌入式實(shí)時操作系統(tǒng)在汽車電子中的應(yīng)用

        基于OSEK標(biāo)準(zhǔn)的嵌入式實(shí)時操作系統(tǒng)在汽車電子中的應(yīng)用

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

        引言
        隨著國內(nèi)產(chǎn)業(yè)的不斷升級和研發(fā)投入的不斷加大,國內(nèi)生產(chǎn)的,如簡單的ECU已經(jīng)越來越普及,于車載音響、儀表、車身控制BCM、動力轉(zhuǎn)向EPS等。越來越多的企業(yè)將精力投入到比較復(fù)雜的控制領(lǐng)域,比如發(fā)動機(jī)控制,防抱死系統(tǒng)(ABS)等,對于這些邏輯復(fù)雜、性和安全性高的控制任務(wù),傳統(tǒng)的前后臺系統(tǒng)模式非處理的弊端就越來越呈現(xiàn)出來,這就勢必需要用到來管理這些任務(wù)。
        是1993年德國汽車工業(yè)界聯(lián)合推出的,“的開放式系統(tǒng)及接口軟件規(guī)范”,即(Open System and the Corres-ponding Interfaces for Automotive Electronics)。1994年法國汽車工業(yè)界的相似規(guī)范VDX(Vehicle Distributed Executive)和規(guī)范合并,從而形成OSEK/VDX規(guī)范體系。當(dāng)前OSEK已經(jīng)成為汽車電子軟件開發(fā)領(lǐng)域中的通用,旨在增強(qiáng)軟件代碼安全性、移植性,減少軟件開發(fā)周期。
        目前,市場上通用的開源RTOS有很多,比如μC/OS-Ⅱ,F(xiàn)reeRTOS,Linux-2.6等,但是這些核多半是用于通用領(lǐng)域或者安全性要求不太高的領(lǐng)域,如果將這些移植到汽車電子動力安全控制領(lǐng)域,是不太合適的;而且,這些核本身不是OSEK標(biāo)準(zhǔn),如果引入OSEK標(biāo)準(zhǔn),無疑加大了內(nèi)核移植的難度。NEC電子的實(shí)時RX850是一款OSEK標(biāo)準(zhǔn)的汽車級專用RTOS,其內(nèi)核的實(shí)時性已經(jīng)得到第三方的專業(yè)測試。它已經(jīng)被移植到了NEC芯片的集成開發(fā)環(huán)境PM Plus和Green Hills,客戶只需要在IDE(Integrated Develop Environment)中編寫腳本文件來配置RTOS即可通過編譯,使得客戶從底層驅(qū)動編寫到RTOS任務(wù)調(diào)度輕松實(shí)現(xiàn)“無縫結(jié)合”,大大縮短了RTOS移植的開發(fā)周期。本文建立了NEC電子32位車身專用芯片V850/Fx3的軟件平臺,并介紹了如何實(shí)現(xiàn)RX850的配置,以發(fā)動機(jī)控制模塊為控制模型來實(shí)現(xiàn)多任務(wù)的實(shí)時調(diào)度,最后通過軟仿工具來分析該內(nèi)核的效率和任務(wù)調(diào)度的實(shí)時性。

        1 系統(tǒng)平臺介紹
        本系統(tǒng)采用NEC電子的32位車身專用芯片V850/Fx3系列,V850是NEC電子的32位微處理器核,5級流水線控制,內(nèi)部32個32位寄存器,乘法/除法指令,數(shù)據(jù)空間支持最大4 GB線性尋址能力,代碼空間支持64 MB線性尋址能力,內(nèi)部1 MB的codeFLASH,60 KB的RAM空間,32 KB的data FLASH用作E2PROM模擬。
        基于OSEK標(biāo)準(zhǔn)的RX850實(shí)時操作系統(tǒng)符合以下標(biāo)準(zhǔn):操作系統(tǒng)規(guī)范(OSEKOS)、通信規(guī)范(OSEKCOM)、網(wǎng)絡(luò)管理規(guī)范(OSEKNM)和OSEK實(shí)現(xiàn)語言(OSEKOIL)。
        其中OSEKOS是針對汽車特點(diǎn)而專門制定的一個小型RTOS規(guī)范,著重以下幾個方面:
        (1)可移植性,所有API都是標(biāo)準(zhǔn)化的并且在功能上都有明確的定義;
        (2)可擴(kuò)展性,OSEKOS旨在通用于任何類型的ECU,因此一方面系統(tǒng)要高度的模塊化,另一方面又要能進(jìn)行靈活的配置;
        (3)汽車的特定需求,諸如可靠性、實(shí)用性和代價(jià)敏感性等。
        相應(yīng)地,OSEKOS靜態(tài)配置可以通過OS2EKOIL語言實(shí)現(xiàn),用戶在系統(tǒng)生成時靜態(tài)制定任務(wù)的個數(shù)、需要的資源和系統(tǒng)服務(wù)。OSEKCOM為通信網(wǎng)絡(luò)中的數(shù)據(jù)交換提供了標(biāo)準(zhǔn)的接口和協(xié)議。OSEKNM為監(jiān)視網(wǎng)絡(luò)的流量提供了一組標(biāo)準(zhǔn)的功能函數(shù),以保證網(wǎng)絡(luò)的安全性和可靠性。

        2 RX850內(nèi)核配置
        由于RX850已經(jīng)被嵌入到IDE,因此用戶直接編寫內(nèi)核腳本文件即可,下面介紹如何來配置內(nèi)核。
        (1)系統(tǒng)時鐘設(shè)置
        clkhdr INTTMOEQ0 //選定TimerM為時間片中斷源
        (2)堆棧設(shè)置
        RX850的堆棧分為系統(tǒng)堆棧和任務(wù)堆棧。
        POOL0功能:系統(tǒng)基本表信息、準(zhǔn)備隊(duì)列、每個管理塊、任務(wù)堆棧、中斷句柄堆棧(系統(tǒng)堆棧)、可變長度內(nèi)存、不變長度內(nèi)存。
        POOL1功能:任務(wù)堆棧、中斷句柄堆棧(系統(tǒng)堆棧)、可變長度內(nèi)存、不變長度內(nèi)存。
        POOL0和POOL1都可以作為任務(wù)堆棧,即使沒有POOL1也可以。配置如下:

        linux操作系統(tǒng)文章專題:linux操作系統(tǒng)詳解(linux不再難懂)

        上一頁 1 2 3 下一頁

        評論


        相關(guān)推薦

        技術(shù)專區(qū)

        關(guān)閉
        主站蜘蛛池模板: 鸡东县| 武宣县| 万盛区| 青田县| 舒兰市| 凤冈县| 南华县| 虞城县| 巴塘县| 娄烦县| 新建县| 岳西县| 洛扎县| 类乌齐县| 滨州市| 通山县| 沂源县| 农安县| 上虞市| 黑龙江省| 盐亭县| 长葛市| 淮北市| 囊谦县| 连州市| 达州市| 葫芦岛市| 西畴县| 于都县| 图木舒克市| 阜宁县| 鄂温| 镇江市| 平顶山市| 恭城| 四子王旗| 金川县| 小金县| 宜兰县| 车致| 陈巴尔虎旗|