新聞中心

        EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計應(yīng)用 > FlexRay的通信控制器媒體接入控制設(shè)計

        FlexRay的通信控制器媒體接入控制設(shè)計

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

        引言
        當(dāng)前廣泛應(yīng)用的車載總線技術(shù)(如CAN、VAN、LIN等總線)由于缺少確定性、同步性及容錯機(jī)制等并不能滿足要求,聯(lián)盟推進(jìn)了的標(biāo)準(zhǔn)化,使之成為了新一代汽車內(nèi)部網(wǎng)絡(luò)通信協(xié)議。關(guān)注的是當(dāng)今汽車行業(yè)的一些核心需求,包括更快的數(shù)據(jù)速率、更靈活的數(shù)據(jù)通信、更全面的拓?fù)溥x擇和容錯運(yùn)算。
        FlexRay總線中的每個接入端稱為節(jié)點。節(jié)點主要由電源供給系統(tǒng)(Power Supply)、總線驅(qū)動器(Bus Driver)、固化有FlexRay通信協(xié)議的(Communication Controller)及主機(jī)(Host)4個部分組成。是通信節(jié)點的核心器件。它主要的功能有、時鐘同步、編解碼、協(xié)議操作控制等。功能是的核心功能,解決數(shù)據(jù)進(jìn)入FlexRay通信控制器的方式,為通信控制器的編解碼功能做好時間準(zhǔn)備以及數(shù)據(jù)準(zhǔn)備。
        本文提出一種FlexRay通信控制器的設(shè)計方法。該方法直接訪問內(nèi)存,大大縮短了獲取配置的時間;設(shè)計更加精簡,能夠保證通信的穩(wěn)定性。

        1 媒體接入控制的設(shè)計
        本文提出的基于內(nèi)存方式實現(xiàn)媒體接入控制的方法包括以下步驟:首先,媒體接入控制模塊的所有子模塊在統(tǒng)一時鐘域下工作,用戶把與媒體接入控制相關(guān)的配置信息寫入內(nèi)存;然后,媒體接入控制的各個子模塊直接從內(nèi)存中讀取該信息。媒體接入控制原理圖如圖1所示。

        d.JPG


        時鐘產(chǎn)生模塊根據(jù)用戶的配置信息,對控制器晶振產(chǎn)生的最小時鐘節(jié)拍按照協(xié)議規(guī)定形成系統(tǒng)所需要的時鐘周期;控制模塊根據(jù)用戶配置的信息將時鐘周期進(jìn)一步劃分為4個獨(dú)立的段,即靜態(tài)段、動態(tài)段、符號窗口、網(wǎng)絡(luò)空閑段;計時器模塊根據(jù)用戶配置信息實現(xiàn)計時功能,用來記錄媒體接入控制所需要的時間。
        1.1 時鐘產(chǎn)生模塊
        時鐘產(chǎn)生模塊實現(xiàn)媒體接入控制所需要的時鐘周期,為編解碼功能做好時間準(zhǔn)備,同時把該信息傳遞給控制模塊。該模塊首先從內(nèi)存中讀取所需配置信息,主要有g(shù)MacroPerCycle、gdStaticSlot、pMicroPerCycle。時鐘產(chǎn)生模塊根據(jù)這些配置信息進(jìn)行初始化操作,然后等待晶振的最小時鐘節(jié)拍(vMicrotick)。當(dāng)最小時鐘節(jié)拍大于等于pMicroPerCycle/(gMacroPerCyclc-1)時,該模塊產(chǎn)生周期。
        時鐘產(chǎn)生模塊處理流程如圖2所示。

        e.JPG


        1.2 控制模塊
        控制模塊主要為FlexRay通信控制器的媒體接入控制功能提供所需的時隙劃分,主要有靜態(tài)段(static segment)、動態(tài)段(dynamic seg ment)、符號窗口(symbol window)、網(wǎng)絡(luò)空閑段(network idle time)。
        本文提出的基于內(nèi)存的方式實現(xiàn)控制功能的思路如下:首先從內(nèi)存中讀取所需要的配置信息,主要有g(shù)dstaticSloc、gNumberOfMinislo ts、gdSymbolWindow、gdActionPointOffset、gdMinislotActionPointOffset。當(dāng)接收到時鐘產(chǎn)生模塊提供的周期開始信號時,控制模塊根據(jù)gdstaticSloc實現(xiàn)周期中的靜態(tài)段。靜態(tài)段使用靜態(tài)槽實現(xiàn)TDMA,以協(xié)調(diào)數(shù)據(jù)的傳輸。在每個通道,通信控制器上設(shè)置一個槽計數(shù)器(vslotcountcr),統(tǒng)計靜態(tài)槽的個數(shù)。當(dāng)時鐘周期開始的時候,設(shè)置槽計數(shù)器的值為1;當(dāng)槽結(jié)束的時候,槽計數(shù)器的值加1。對于一個具體的簇,靜態(tài)槽的總數(shù)是一定的,由參數(shù)gNumberOfStaticSlots確定。對于每個靜態(tài)槽,F(xiàn)lexRay通信控制器根據(jù)用戶的配置和MAC模塊當(dāng)前的操作模式?jīng)Q定是否為編解碼模塊提供數(shù)據(jù)。
        根據(jù)gNumberOfMinislots,該模塊實現(xiàn)周期中的動態(tài)段。動態(tài)段使用動態(tài)槽實現(xiàn)事件觸發(fā)的媒體接入方法,以協(xié)調(diào)數(shù)據(jù)的發(fā)送。通信控制器在每個通道上設(shè)置一個動態(tài)槽計數(shù)器,統(tǒng)計動態(tài)槽的個數(shù)。每個動態(tài)槽根據(jù)zMinislot來計數(shù),當(dāng)有數(shù)據(jù)傳送時,動態(tài)槽可能占用多個zMinislot;當(dāng)沒有數(shù)據(jù)傳送時,動態(tài)槽占用一個zMinislot。所以動態(tài)槽的大小是根據(jù)是否有數(shù)據(jù)發(fā)送決定的。對于一個具體的簇,zMinisl ot的總數(shù)是一定的,由參數(shù)gNimberOfMinislots確定;最后它根據(jù)gdSymbolWindow實現(xiàn)周期中的符號窗口。最后一個周期中剩下的時間就是網(wǎng)絡(luò)空閑段。


        上一頁 1 2 下一頁

        評論


        相關(guān)推薦

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

        關(guān)閉
        主站蜘蛛池模板: 云阳县| 柯坪县| 尼木县| 依兰县| 镇宁| 南川市| 正定县| 漳平市| 弋阳县| 广安市| 永寿县| 边坝县| 台东县| 曲靖市| 永顺县| 来凤县| 桐乡市| 花莲市| 千阳县| 麟游县| 崇义县| 循化| 平罗县| 平果县| 通辽市| 通渭县| 北碚区| 长治市| 凯里市| 黎城县| 巢湖市| 兴业县| 深水埗区| 汪清县| 桂林市| 眉山市| 彝良县| 古蔺县| 汶川县| 沙坪坝区| 萨嘎县|