在线观看www成人影院-在线观看www日本免费网站-在线观看www视频-在线观看操-欧美18在线-欧美1级

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

分享一個實例:Node路由超時引發(fā)的Bug

冬至配餃子 ? 來源:開心果 Need Ca ? 作者:開心果 Need Ca ? 2022-08-23 17:42 ? 次閱讀

項目包含Autosar網(wǎng)絡管理時,一般會要求Node外發(fā)的第一幀是網(wǎng)絡管理報文,目的是為快速喚醒網(wǎng)絡;同時也會充分考慮通信棧的任務周期和時序,因為網(wǎng)絡狀態(tài)切換與其密切相關,如果未考慮好這兩點則可能帶來潛在的Bug。本文從工程實際出發(fā),分享一個實例:Node路由超時引發(fā)的Bug。

1、需求描述

如下圖,Node1所在CAN/Flexray總線接收網(wǎng)絡管理報文NM1,該網(wǎng)絡管理報文在VCU內部轉發(fā)給Node2(Node2連接CAN總線),如果收到的NM1包含Node2的PNCdes置位,則Node2網(wǎng)絡喚醒,且Node2發(fā)送網(wǎng)絡管理報文NM2。這里使用了PN的GateWay功能。

注意:Node1接收的NM1報文可以是不同的節(jié)點發(fā)來的網(wǎng)絡管理報文,即測試時,接收到的NM1報文時間可以是隨機的。

pYYBAGMEoHGANn1OAABYpWt56Zo972.png

接收的NM1報文,第一次PNCsrc = 1、PNCdes = 1時,設置時間為T1,Node2外發(fā)第一幀NM2的時間設置為T2,需求規(guī)定T2-T1 < 15ms,偏差10%,即(T2-T1)max < 15+15*10% = 16.5ms,T2-T1=Tgate。

NM1在Node1 Bus和NM2在Node2 Bus的具體行為如下所示:

pYYBAGMEoIiAIRh-AACq6SOaFJE955.png

實際測試結果實際測試Tgate > 16.5ms,不符合需求,Bug就這么來了。

2、Bug原因分析

問題點1:Node2發(fā)出的第一幀報文不是網(wǎng)絡管理報文NM2,而是Node2的應用報文(周期性報文),由于NM2的優(yōu)先級低于應用報文,導致NM2發(fā)送延遲。

具體分析1:如下圖所示,如果NM、App等報文在通信開啟的那一刻(t0)都請求驅動發(fā)送報文,比如:Can Controller,它只能根據(jù)優(yōu)先級(CANID)決定報文發(fā)送順序,因為NM報文相對App報文優(yōu)先級低,所以NM報文會被延遲發(fā)送。

如果讓每個周期性App報文,偏移(Offset)一段時間(t1、t2等)發(fā)送,而不是在t0時刻搶占NM報文,則可以讓NM報文優(yōu)先發(fā)送。

poYBAGMEoJyAPFtNAAB-SuObkeg357.png

問題點2

:通信棧模塊周期不匹配,這個因素影響較大

具體分析2

:比如CanSM、CanNM、Can等模塊任務周期是5ms,ComM模塊任務周期是20ms。當收到NM1中的

PNCsrc = 1

時,信息由CanNM通知到ComM,ComM切換到FULL_COMMUNICATION,這個過程實際只是一個狀態(tài)切換指令下發(fā),真正做狀態(tài)切換的是CanSM,而CanSM狀態(tài)機的切換需要時間,切換狀態(tài)后通知到ComM,

此時ComM至少要一個任務周期(20ms)才能知道狀態(tài)是否切換成功,切換成功才請求NM啟動網(wǎng)絡,

網(wǎng)絡狀態(tài)切換告知ComM時間過長導致路由時間超時

pYYBAGMEoLOAAHOlAAEanvOjfBc701.png

3、Bug修復策略

問題點1修復策略

CanNM模塊修改配置

配置Retry Frist Message Request,確保Node2的NM2報文發(fā)送成功,即當前周期發(fā)送失敗,下一周期繼續(xù)嘗試發(fā)送。

Com模塊修改配置

Com模塊中,配置所有周期性(PERIODIC)/混合(MIXED)應用報文偏移值(ComTxModeTimeOffset,默認值為0),避免高優(yōu)先級的應用報文在通信開始時,搶占網(wǎng)絡管理報文,確保網(wǎng)絡管理報文被優(yōu)先發(fā)送。

問題點2修復策略

修改ComM模塊任務周期。由20ms調整到5ms,與CanSM、CanNM、Can等通信模塊任務周期匹配,確保ComM能更快地獲取底層狀態(tài)切換結果。


審核編輯:劉清

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權轉載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • CAN總線
    +關注

    關注

    145

    文章

    1953

    瀏覽量

    130917
  • 網(wǎng)絡管理

    關注

    0

    文章

    122

    瀏覽量

    27703
  • AUTOSAR
    +關注

    關注

    10

    文章

    363

    瀏覽量

    21642
收藏 人收藏

    評論

    相關推薦

    隱秘的串口中斷BUG案例分享

    本文分享STM32L4平臺串口驅動比較隱秘的BUG,分享的目的不在結論本身,而在于問題的分析過程,和如何形成標準,形成checklist,避免類似問題,以及在嵌入式開發(fā)中的思想。
    的頭像 發(fā)表于 09-19 14:05 ?2255次閱讀
    <b class='flag-5'>一</b><b class='flag-5'>個</b>隱秘的串口中斷<b class='flag-5'>BUG</b>案例分享

    matlab script node

    哪位大神有matlab script node 操作的視頻教程 或者實例沒有求分享啊謝謝了
    發(fā)表于 10-07 23:01

    反饋論壇BUG

    `瀏覽論壇是件很愉快的事情,內容挺豐富。發(fā)現(xiàn)不知道是不是BUG的東西,供參閱:每次打開帖子,總有
    發(fā)表于 07-13 19:52

    C語言中括號引發(fā)的……

    C語言中括號引發(fā)的……作者:薛定諤的coding貓今天給大家?guī)?b class='flag-5'>一比較典型的問題,
    發(fā)表于 05-19 14:06

    lwip網(wǎng)路組件中的測試實例出現(xiàn)bug

    主題:測試實例1、ftpd中似乎bug,現(xiàn)象:ftpd_start()運行該函數(shù),發(fā)現(xiàn)旦連接和互傳數(shù)據(jù),就會有內存嘩嘩泄漏,list_mem()可以看到內存占用從12K上升到40K
    發(fā)表于 04-01 11:02

    華為路由器配置實例

    華為路由器配置實例 華為路由器(R2621)、交換機(S3026e)各臺,組建VLAN,實現(xiàn)虛擬網(wǎng)和物理網(wǎng)之間的連接。實現(xiàn)防火墻策略,
    發(fā)表于 05-25 08:17 ?4467次閱讀

    用戶近日曝光 iPhone 12 的奇怪的充電 bug

    近日有用戶曝光了 iPhone 12 的奇怪的充電 bug,多口適配器在為該機充電時都會受影響。
    的頭像 發(fā)表于 11-16 14:31 ?1790次閱讀

    5G案例|T310超時引發(fā)VIVO終端 SCG failure失敗資料下載

    電子發(fā)燒友網(wǎng)為你提供5G案例|T310超時引發(fā)VIVO終端 SCG failure失敗資料下載的電子資料下載,更有其他相關的電路圖、源代碼、課件教程、中文資料、英文資料、參考設計、用戶指南、解決方案等資料,希望可以幫助到廣大的電子工程師們。
    發(fā)表于 04-13 08:40 ?8次下載
    5G案例|T310<b class='flag-5'>超時</b><b class='flag-5'>引發(fā)</b>VIVO終端 SCG failure失敗資料下載

    如何解決JVM中極小概率發(fā)生的bug

    編者按:筆者遇到非常典型 JVM 架構相關問題,在 x86 正常運行的應用,在 aarch64 環(huán)境上低概率偶現(xiàn) JVM 崩潰。這是典型的 JVM 內部
    的頭像 發(fā)表于 08-23 17:35 ?3445次閱讀

    Elasticsearch底層模塊:如何去規(guī)劃和配置各種各樣的node

    node module,主要是用來處理各種不同類型的節(jié)點的,es有哪些類型的node,另外就是對這些類型的node有些什么特殊的參數(shù),對于
    的頭像 發(fā)表于 12-22 10:18 ?919次閱讀

    冗余電路導致的BUG

      昨天解了BUG低級錯誤導致的BUG
    的頭像 發(fā)表于 05-14 15:28 ?920次閱讀
    <b class='flag-5'>一</b><b class='flag-5'>個</b>冗余電路導致的<b class='flag-5'>BUG</b>

    基于Node-RED的優(yōu)易通串口服務器應用實例

    實例的方式,詳細介紹了基于Node-RED的優(yōu)易通串口服務器采集Modbus-RTU水位傳感器數(shù)據(jù),并將數(shù)據(jù)可視化的過程。
    的頭像 發(fā)表于 05-29 21:15 ?2376次閱讀
    基于<b class='flag-5'>Node</b>-RED的優(yōu)易通串口服務器應用<b class='flag-5'>實例</b>

    req-ack接口引發(fā)的問題分析

    最近定位了bug,代碼是以前的同事留下的,沒有經(jīng)過太多充分的測試,且沒有仿真平臺,定位的過程是相當?shù)耐纯啵昂蠡瞬畈欢?b class='flag-5'>一星期。但是解
    的頭像 發(fā)表于 09-06 17:36 ?751次閱讀
    <b class='flag-5'>一</b><b class='flag-5'>個</b>req-ack接口<b class='flag-5'>引發(fā)</b>的問題分析

    socket連接超時如何處理

    在網(wǎng)絡編程中,socket連接超時常見的問題,它可能由多種原因引起,比如網(wǎng)絡延遲、服務器負載過高或者客戶端請求超時設置過短等。處理socket連接
    的頭像 發(fā)表于 11-01 16:48 ?846次閱讀

    socket 連接超時處理技巧

    在網(wǎng)絡編程中,Socket連接超時常見的問題。處理超時的關鍵在于確保程序能夠優(yōu)雅地處理這些情況,避免程序崩潰或者無響應。以下是些處理
    的頭像 發(fā)表于 11-12 14:13 ?518次閱讀
    主站蜘蛛池模板: 午夜免费福利影院| 亚洲香蕉久久一区二区三区四区| 日日夜夜天天操| 天天拍天天操| 男女视频免费| 久久国产免费观看| 国产精品午夜剧场| 男人操女人视频在线观看| 中文字幕一区二区三区在线不卡 | zsvdy午夜片| 爽好舒服老师快点| 在线黄色免费观看| 欧美猛操| 色色激情网| 在线电影亚洲| 天堂伊人| 欧美区在线播放| 久久99久久精品97久久综合| 日韩一级欧美一级在线观看| 欧美日韩性猛交xxxxx免费看| 激情六月天| 国产偷窥女洗浴在线观看亚洲| 7777sq国产精品| 国产精品你懂的在线播放| 99色99| 奇米影视7777| 国产黄网站| 中国一级特黄特色真人毛片| 色资源在线观看| 深爱开心激情网| 美女污污网站| 真实子伦视频不卡| 哟交小u女国产精品视频| 久久久久88色偷偷免费| 在线 | 一区二区三区四区| 亚洲人成电影综合网站色| 亚洲 自拍 欧美 综合| 亚洲日韩图片专区第1页| 日本电影在线观看黄| ts人妖系列在线专区| 精品视频一区在线观看 |