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

          新聞中心

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

          基于FlexRay的媒體接入控制設(shè)計

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


          時鐘產(chǎn)生模塊處理流程如圖2所示。

          時鐘產(chǎn)生模塊處理流程

          1.2控制模塊

          控制模塊主要為通信控制器的功能提供所需的時隙劃分,主要有靜態(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)槽,通信控制器根據(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ò)空閑段。

          處理流程
          具體處理流程如圖3所示。

          2設(shè)計驗證

          確保設(shè)計正確性的關(guān)鍵是設(shè)計驗證,主要通過邏輯功能仿真。邏輯功能仿真是在不考慮信號延遲的情況下對設(shè)計的邏輯功能進行驗證。驗證過程是:首先編寫好設(shè)計的HDL代碼;然后編寫對應(yīng)的TestBcnch,對設(shè)計進行關(guān)鍵性的驗證;最后利用仿真軟件ModelSim進行模擬,查看波形或者輸出,若發(fā)現(xiàn)錯誤則查找錯誤原因、修改代碼或者測試文件,直到符合設(shè)計要求。


          評論


          相關(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); })();