一文,本文就來(lái)自低向上的分析AUTOSAR架構(gòu)下存儲(chǔ)協(xié)議棧的Error處理機(jī)制,希望能幫助NvM使用者快速定位和分析問(wèn)題! 縮略詞: 簡(jiǎn)寫(xiě) 全稱 DMU D ata M emory U nit Fls Fl a s h OPER F las" />

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

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

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

存儲(chǔ)協(xié)議棧的Error流轉(zhuǎn)過(guò)程分析

832065824 ? 來(lái)源:汽車電子嵌入式 ? 2023-09-04 09:53 ? 次閱讀

前言

前面的文章我們?cè)敿?xì)分析了NvM,F(xiàn)ee,F(xiàn)ls模塊以及NvM User和NvM的交互,對(duì)AUTOSAR架構(gòu)下的存儲(chǔ)協(xié)議棧應(yīng)該有了一個(gè)比較深入的了解了。回頭來(lái)看,站在NvM使用者的角度來(lái)看最關(guān)心的是如何使用NvM存儲(chǔ)服務(wù),以及使用過(guò)程中出現(xiàn)Error后如何快速定位和分析問(wèn)題。NvM服務(wù)的使用可以參考<>一文,本文就來(lái)自低向上的分析AUTOSAR架構(gòu)下存儲(chǔ)協(xié)議棧的Error處理機(jī)制,希望能幫助NvM使用者快速定位和分析問(wèn)題!

縮略詞:

簡(jiǎn)寫(xiě) 全稱
DMU Data Memory Unit
Fls Flash
OPER Flash Operation Error
SQER Command Sequence Error
EVER Erase Verify Error

注:本公眾號(hào)文章中使用了一些第三方工具和文檔,若有侵權(quán),請(qǐng)聯(lián)系作者刪除!

參考文檔:

1.AURIXTC3XX_um_part1_v2.0.pdf

2. Specification of Flash EEPROM Emulation

3. Specification of Flash Driver

4.Specification of NVRAM Manager AUTOSAR CP Release 4.3.1

5.AUTOSAR架構(gòu)下NVM Block連續(xù)寫(xiě)及Default Value問(wèn)題分析

6.AUTOSAR架構(gòu)下NvM模塊詳細(xì)分析

7.AUTOSAR架構(gòu)下Fee詳細(xì)分析

8.TC37x芯片F(xiàn)LASH基本概念介紹

9.AUTOSAR架構(gòu)下Fls詳細(xì)分析

10.TC3xx芯片DMU介紹

正文

1.Error自定向上分析

由于從NvM User的存儲(chǔ)服務(wù)請(qǐng)求正向自定向下分析Error發(fā)生的條件和流轉(zhuǎn)十分困難,我們采用自底向上的方法從底層已知Error出發(fā)向上分析Error的流轉(zhuǎn),也就是:Fls已知Error àFeeàNvMàNvM User

如下表所示,我們把自底向上分析的結(jié)果以表格的形式統(tǒng)計(jì)出來(lái),通過(guò)這種方式,NvM User就能從JobResult結(jié)果查找NvM,Fee,Fls報(bào)了什么錯(cuò)誤,也就能采用對(duì)應(yīng)的應(yīng)對(duì)措施。

Note:

1.該表格僅把NvM最常用的服務(wù)(讀,寫(xiě),擦除)可能產(chǎn)生的Error統(tǒng)計(jì)進(jìn)去,像NvMCancell這類的不常用服務(wù)沒(méi)有統(tǒng)計(jì)進(jìn)去。

2.NvM除了底層上報(bào)的錯(cuò)誤外,本身還有很多Error處理機(jī)制,比如,調(diào)用底層接口的返回值判斷等,這里錯(cuò)誤也沒(méi)有統(tǒng)計(jì)進(jìn)去,也就是我們僅僅把NvM DMU上報(bào)的錯(cuò)誤統(tǒng)計(jì)出來(lái)

3.DMU上報(bào)的Error的原因,以及對(duì)應(yīng)軟件的處理辦法可以查看數(shù)據(jù)手冊(cè)獲得。具體請(qǐng)參考: <<TC3xx芯片DMU介紹>>

NvM User NvM Fee Fls
NvM User可以通過(guò)Block Callback獲取NvM Job請(qǐng)求的結(jié)果,
然后根據(jù)結(jié)果執(zhí)行對(duì)應(yīng)的策略
NvM調(diào)用NvM Block配置的Callback函數(shù)JobEndCbkExtFunc_pt,傳入的JobResult為NVM_REQ_NOT_OK

NvM_CurrentBlockInfo_t.LastResult_t = NVM_REQ_NOT_OK



Fee在處理Write任務(wù)時(shí)會(huì)調(diào)用Fls的Compare接口對(duì)比寫(xiě)入DFlash的數(shù)據(jù)和RAM緩存的數(shù)據(jù),如果出現(xiàn)錯(cuò)誤,F(xiàn)ee會(huì)調(diào)用NvM_JobErrorNotification

Fls調(diào)用Fee_JobErrorNotification, Fee_JobErrorNotication調(diào)用FeeNvmIllegalStateNotification


FeeJobResult == MEMIF_BLOCK_FAILED

Note: FeeNvmIllegalStateNotification是一個(gè)Callout函數(shù),由User實(shí)現(xiàn)
Fls執(zhí)行Compare任務(wù)時(shí)發(fā)生錯(cuò)誤,調(diào)用Fee_JobErrorNotification

FlsJobResult == MEMIF_BLOCK_INCONSISTENT

Note: 寫(xiě)入Flash的數(shù)據(jù)和RAM緩存的數(shù)據(jù)不一致
Fls調(diào)用Fee_JobErrorNotification, Fee_JobErrorNotification調(diào)用NvM_JobErrorNotification

FeeJobResult == MEMIF_BLOCK_FAILED
Fls擦寫(xiě)過(guò)程中發(fā)生了超時(shí),調(diào)用Fee_JobErrorNotification

FlsJobResult == MEMIF_BLOCK_FAILED

Note: 監(jiān)控擦寫(xiě)任務(wù)執(zhí)行的時(shí)間,超時(shí)就會(huì)報(bào)錯(cuò)
Fls擦除過(guò)程中發(fā)生錯(cuò)誤,調(diào)用Fee_JobErrorNotification

FlsJobResult == MEMIF_BLOCK_FAILED

Note: 發(fā)生OPER, EVER, SQER
Fls寫(xiě)數(shù)據(jù)過(guò)程發(fā)生錯(cuò)誤,調(diào)用Fee_JobErrorNotification

FlsJobResult == MEMIF_BLOCK_FAILED

Note: 發(fā)生OPER, PVER, SQER錯(cuò)誤
Fls讀數(shù)據(jù)過(guò)程發(fā)生錯(cuò)誤,調(diào)用Fee_JobErrorNotification

FlsJobResult == MEMIF_BLOCK_FAILED

Note: 開(kāi)啟了ECC_ERROR檢查,如果發(fā)生了ECC錯(cuò)誤就會(huì)報(bào)錯(cuò)
NvM調(diào)用NvM Block配置的Callback函數(shù)JobEndCbkExtFunc_pt,傳入的JobResult為NVM_REQ_INTEGRITY_FAILED

NvM_CurrentBlockInfo_t.LastResult_t = NVM_REQ_INTEGRITY_FAILED
Fee在處理Read任務(wù)時(shí)發(fā)現(xiàn)數(shù)據(jù)不一致(比如,Block重來(lái)沒(méi)有被寫(xiě)過(guò))就會(huì)調(diào)用NvM_JobErrorNotification

FeeJobResult == MEMIF_BLOCK_INCONSISTENT
NvM調(diào)用NvM Block配置的Callback函數(shù)JobEndCbkExtFunc_pt,傳入的JobResult為NVM_REQ_NV_INVALIDATED

NvM_CurrentBlockInfo_t.LastResult_t = NVM_REQ_NV_INVALIDATED
Fee在處理Read任務(wù)時(shí)發(fā)現(xiàn)數(shù)據(jù)是無(wú)效的就會(huì)調(diào)用NvM_JobErrorNotification

FeeJobResult == MEMIF_BLOCK_INVALID
NvM調(diào)用NvM Block配置的Callback函數(shù)JobEndCbkExtFunc_pt,傳入的JobResult為NVM_REQ_NOT_OK

NvM_CurrentBlockInfo_t.LastResult_t = NVM_REQ_NOT_OK
Fee在處理寫(xiě)任務(wù)時(shí)發(fā)現(xiàn)寫(xiě)的次數(shù)已經(jīng)超過(guò)該Block配置的最大寫(xiě)次數(shù)了就會(huì)調(diào)用NvM_JobErrorNotification

FeeJobResult == MEMIF_BLOCK_FAILED

2.數(shù)據(jù)INTEGRITY_FAILED錯(cuò)誤示例

我們把TC3xx芯片的DFlash都擦除掉,然后通過(guò)仿真器執(zhí)行重啟。

Fee在處理Read任務(wù)時(shí)發(fā)現(xiàn)數(shù)據(jù)不一致(Block沒(méi)有被寫(xiě)過(guò)),F(xiàn)ee_MainFunction會(huì)調(diào)用

NvM_JobErrorNotification通知到上層的NvM模塊。

acf1a5fc-4ab6-11ee-97a6-92fbcf53809c.png

如果對(duì)應(yīng)的NvM Block配置了Callback函數(shù),NvM模塊就會(huì)調(diào)用該Block的Callback函數(shù)通知到NvM_User,這樣NvM User就能知道當(dāng)前NvM Block的狀態(tài)。

ad21b2ce-4ab6-11ee-97a6-92fbcf53809c.png

3. 總結(jié)

本文自底向上分析了存儲(chǔ)協(xié)議棧的Error流轉(zhuǎn)過(guò)程,通過(guò)本文總結(jié)的Error流轉(zhuǎn)表格,我們可以方便的查找DMU操作出問(wèn)題的可能原因。但是,對(duì)于NvM模塊本身的一些邏輯狀態(tài)上報(bào)的Error,這個(gè)表格沒(méi)有統(tǒng)計(jì),感興趣的朋友可以自己再去研究。

審核編輯:彭菁

聲明:本文內(nèi)容及配圖由入駐作者撰寫(xiě)或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問(wèn)題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • 存儲(chǔ)
    +關(guān)注

    關(guān)注

    13

    文章

    4507

    瀏覽量

    87112
  • 軟件
    +關(guān)注

    關(guān)注

    69

    文章

    5124

    瀏覽量

    88973
  • NVM
    NVM
    +關(guān)注

    關(guān)注

    1

    文章

    42

    瀏覽量

    19359
  • 協(xié)議棧
    +關(guān)注

    關(guān)注

    2

    文章

    145

    瀏覽量

    34028

原文標(biāo)題:AUTOSAR架構(gòu)下存儲(chǔ)協(xié)議棧Error問(wèn)題自底向上分析

文章出處:【微信號(hào):汽車電子嵌入式,微信公眾號(hào):汽車電子嵌入式】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。

收藏 人收藏

    評(píng)論

    相關(guān)推薦
    熱點(diǎn)推薦

    LTE協(xié)議軟件分析測(cè)試方法

    本文介紹了一種應(yīng)用在LTE協(xié)議系統(tǒng)軟件開(kāi)發(fā)過(guò)程的測(cè)試和調(diào)試的模型,并給出了測(cè)試模型的應(yīng)用結(jié)果。該模型以LTE接入網(wǎng)標(biāo)準(zhǔn)架構(gòu)為原型,分層調(diào)試為思想,多彩模塊化打印為手段,具有環(huán)境簡(jiǎn)易、調(diào)試方便的特點(diǎn)
    發(fā)表于 12-16 14:06 ?7107次閱讀

    lwip協(xié)議代碼分析

    lwIP(Lightweight IP)是一個(gè)為嵌入式系統(tǒng)設(shè)計(jì)的輕量級(jí)TCP/IP協(xié)議
    的頭像 發(fā)表于 10-29 17:37 ?2635次閱讀
    lwip<b class='flag-5'>協(xié)議</b><b class='flag-5'>棧</b>代碼<b class='flag-5'>分析</b>

    Zigbee技術(shù)規(guī)范與協(xié)議分析 -

    Zigbee技術(shù)規(guī)范與協(xié)議分析 -
    發(fā)表于 08-12 23:46

    協(xié)議是什么 協(xié)議又是什么

    協(xié)議協(xié)議的具體實(shí)現(xiàn)形式, 通俗的理解就是用代碼實(shí)現(xiàn)的函數(shù)庫(kù), 以便于開(kāi)發(fā)人員調(diào)用。協(xié)議是通常是一個(gè)層級(jí)結(jié)構(gòu)。
    發(fā)表于 08-05 07:00

    電機(jī)實(shí)際的運(yùn)轉(zhuǎn)過(guò)程是怎樣的?

    什么是步進(jìn)電機(jī)?具有哪些優(yōu)缺點(diǎn)?步進(jìn)電機(jī)的工作原理是什么?有哪些種類?電機(jī)實(shí)際的運(yùn)轉(zhuǎn)過(guò)程是怎樣的?
    發(fā)表于 10-19 09:08

    藍(lán)牙協(xié)議實(shí)現(xiàn)模式分析

    藍(lán)牙技術(shù)是未耒無(wú)線通信的一個(gè)重要的研究方向。本文主要介紹了藍(lán)牙技術(shù)的體系結(jié)構(gòu)及其特點(diǎn),并結(jié)合東芝公司生產(chǎn)的藍(lán)牙協(xié)議產(chǎn)品BluetoothTM Utility 軟件分析了它的軟件實(shí)
    發(fā)表于 08-21 09:50 ?62次下載

    對(duì)幾種開(kāi)源的TCPIP協(xié)議分析

    對(duì)幾種開(kāi)源的TCPIP協(xié)議分析
    發(fā)表于 11-03 16:52 ?24次下載

    采用精簡(jiǎn)協(xié)議的ZigBee網(wǎng)絡(luò)節(jié)點(diǎn)分析

    采用精簡(jiǎn)協(xié)議的ZigBee網(wǎng)絡(luò)節(jié)點(diǎn)分析   ZigBee是一種新興的短距離、低功耗、低數(shù)據(jù)速率、低成本、低復(fù)雜度的無(wú)線網(wǎng)絡(luò)技術(shù)。ZigBee在整個(gè)協(xié)議
    發(fā)表于 03-29 15:07 ?1608次閱讀
    采用精簡(jiǎn)<b class='flag-5'>協(xié)議</b><b class='flag-5'>棧</b>的ZigBee網(wǎng)絡(luò)節(jié)點(diǎn)<b class='flag-5'>分析</b>

    uIP協(xié)議介紹

    uIP 協(xié)議是一種免費(fèi)的可實(shí)現(xiàn)的極小的TCP/IP協(xié)議,可以使用于由8位或16位微處理器構(gòu)建的嵌入式系統(tǒng)。本文分析了uIP
    發(fā)表于 07-15 15:27 ?0次下載

    基于TCN實(shí)時(shí)協(xié)議過(guò)程數(shù)據(jù)通信研究

    基于TCN實(shí)時(shí)協(xié)議過(guò)程數(shù)據(jù)通信研究
    發(fā)表于 08-31 14:45 ?16次下載
    基于TCN實(shí)時(shí)<b class='flag-5'>協(xié)議</b><b class='flag-5'>棧</b><b class='flag-5'>過(guò)程</b>數(shù)據(jù)通信研究

    TCP/IP協(xié)議之路由器簡(jiǎn)要分析

    TCP/IP協(xié)議中,在封裝報(bào)文時(shí)就相當(dāng)于是壓操作,而在報(bào)文解析過(guò)程中,則是一個(gè)出過(guò)程,在封裝是最先被壓進(jìn)
    發(fā)表于 10-10 11:46 ?1次下載

    一文詳解存儲(chǔ)的結(jié)構(gòu)

    存儲(chǔ)結(jié)構(gòu)與之前所學(xué)的線性存儲(chǔ)結(jié)構(gòu)有所差異,這緣于對(duì)數(shù)據(jù) “存” 和 “取” 的過(guò)程有特殊的要求。
    發(fā)表于 10-09 16:00 ?2580次閱讀
    一文詳解<b class='flag-5'>棧</b><b class='flag-5'>存儲(chǔ)</b>的結(jié)構(gòu)

    tcpip協(xié)議是什么?tcpip協(xié)議有哪些協(xié)議?tcpip協(xié)議中報(bào)文封裝和解封裝過(guò)程

    tcpip協(xié)議是什么? TCP/IP協(xié)議是計(jì)算機(jī)網(wǎng)絡(luò)中使用的最常見(jiàn)的網(wǎng)絡(luò)協(xié)議。它是一個(gè)四層
    的頭像 發(fā)表于 08-01 17:51 ?9572次閱讀
    tcpip<b class='flag-5'>協(xié)議</b><b class='flag-5'>棧</b>是什么?tcpip<b class='flag-5'>協(xié)議</b><b class='flag-5'>棧</b>有哪些<b class='flag-5'>協(xié)議</b>?tcpip<b class='flag-5'>協(xié)議</b><b class='flag-5'>棧</b>中報(bào)文封裝和解封裝<b class='flag-5'>過(guò)程</b>

    基于ZigBee協(xié)議的無(wú)線傳感網(wǎng)絡(luò)的建立過(guò)程

    電子發(fā)燒友網(wǎng)站提供《基于ZigBee協(xié)議的無(wú)線傳感網(wǎng)絡(luò)的建立過(guò)程.pdf》資料免費(fèi)下載
    發(fā)表于 10-24 10:32 ?1次下載
    基于ZigBee<b class='flag-5'>協(xié)議</b><b class='flag-5'>棧</b>的無(wú)線傳感網(wǎng)絡(luò)的建立<b class='flag-5'>過(guò)程</b>

    基于BlueZ協(xié)議的藍(lán)牙語(yǔ)音接入系統(tǒng)實(shí)現(xiàn)與性能分析

    電子發(fā)燒友網(wǎng)站提供《基于BlueZ協(xié)議的藍(lán)牙語(yǔ)音接入系統(tǒng)實(shí)現(xiàn)與性能分析.pdf》資料免費(fèi)下載
    發(fā)表于 10-30 11:25 ?0次下載
    基于BlueZ<b class='flag-5'>協(xié)議</b><b class='flag-5'>棧</b>的藍(lán)牙語(yǔ)音接入系統(tǒng)實(shí)現(xiàn)與性能<b class='flag-5'>分析</b>
    主站蜘蛛池模板: 播色屋| 成人网在线观看 | 国产片91人成在线观看 | 男人女人真曰批视频播放 | 免费看h网站| 欧亚精品卡一卡二卡三 | 97se亚洲综合 | 免费手机黄色网址 | 亚洲 欧美 成人 | 一级做a爰片久久毛片免费 一级做a爰片久久毛片免费看 | 夜夜操夜夜操 | 在线观看三级视频 | 特黄特色 | 黄色网址在线免费观看 | 亚洲不卡免费视频 | 色多多入口| 手机看日韩毛片福利盒子 | 永久免费在线视频 | 亚洲精品久久久久午夜三 | 人日人操| 亚洲激情都市 | 亚洲一区二区三区播放在线 | 夜夜操夜夜骑 | 欧美h视频 | 国产破苞合集 magnet | 永久黄网站色视频免费观看 | 夜夜穞狠狠穞 | 欧美黑人粗暴另类多交 | 婷婷影院在线综合免费视频 | 国模私拍大尺度视频在线播放 | 在线中文字幕一区 | 天堂中文www在线 | 老司机深夜影院入口aaaa | 免费特黄一区二区三区视频一 | 国产在线视频不卡 | 五月婷婷在线观看 | 激情综合色综合啪啪开心 | 亚洲欧美在线观看 | 国产欧美视频在线 | 亚洲主播自拍 | 欧美一卡二卡科技有限公司 |