那曲檬骨新材料有限公司

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

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

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

AUTOSAR存儲棧分析之MemIfFee

jf_EksNQtU6 ? 來源:汽車MCU軟件設計 ? 2023-12-19 09:33 ? 次閱讀

MemIf

和所有的抽象層作用差不多,MemIf把Driver層的模塊抽象出來提供給上層使用,具體層級結構如下:

10bcb252-9d8c-11ee-8b88-92fbcf53809c.png

NvM調(diào)用MemIf提供的標準接口,例如MemIf_ReadWrite等;在MemIf根據(jù)已配置的抽象驅(qū)動模塊(FeeEA)分別調(diào)用不同的API,實際舉例如下:

1104d122-9d8c-11ee-8b88-92fbcf53809c.png

根據(jù)標準,F(xiàn)ee或者Ea又會調(diào)用MeeAcc提供的接口去訪問不同的Flash驅(qū)動。

我們以Vector的實際代碼為例,在MemIf層配置提供的接口如下:

/**-- MemHwA Function Pointers --**/
CONST(MemIf_MemHwAApi_Type, MEMIF_CONST) MemIf_MemHwaApis[MEMIF_NUMBER_OF_DEVICES] =
{
   /*  Fee_30_SmallSector  */ {
    Fee_30_SmallSector_Read, 
    MemIf_Fee_30_SmallSector_WriteWrapper, 
    Fee_30_SmallSector_EraseImmediateBlock, 
    Fee_30_SmallSector_InvalidateBlock, 
    Fee_30_SmallSector_Cancel, 
    Fee_30_SmallSector_GetStatus, 
    Fee_30_SmallSector_GetJobResult, 
    Fee_30_SmallSector_SetMode
  }
};

在Fee層級配置的Flash驅(qū)動接口如下:


/* FLS API pointer table */
CONST(Fee_30_SmallSector_FlsApiType, FEE_30_SMALLSECTOR_PRIVATE_CONST) Fee_30_SmallSector_FlsApi0 = 
{
   /*  Read Service  */ Fls_Read, 
   /*  Write Service  */ Fls_Write, 
   /*  Compare Service  */ Fls_Compare, 
   /*  Erase Service  */ Fls_Erase, 
   /*  Blank Check Service  */ Fls_BlankCheck, 
   /*  Get Status Service  */ Fls_GetStatus, 
   /*  Get Job Result Service  */ Fls_GetJobResult
};

發(fā)現(xiàn)沒有,這一層的API并沒有MemAccM相關的接口,所以雖然規(guī)范定義了這樣的層級結構,但是在實現(xiàn)上有多種可能,簡單有效才是硬道理。

Fee

之所以在車規(guī)MCU里需要提供這樣的機制,主要還是為了節(jié)約成本,提供數(shù)據(jù)的高效、實時存儲,滿足車規(guī)對于Data Flash百萬次刷寫的要求。

在AUTOSAR的規(guī)范里,也提供了這樣類似的示例機制來提高DFlash的使用壽命:

1116cbe8-9d8c-11ee-8b88-92fbcf53809c.png

在該示例中,共計有1500Bytes數(shù)據(jù)需要管理,這些數(shù)據(jù)被均勻分成10個Block;當Fee發(fā)現(xiàn)某個Block數(shù)據(jù)更改并且需要重新編程的時候,他會找到目前空閑的Flash空間把數(shù)據(jù)寫進Flash并設置有效。需要注意的是,在設計Fee驅(qū)動時,需要考慮到Flash IP支持的最小可擦除單位和最小可編程單位,只要熟悉IP特性,才能做好Flash磨損均衡算法。

小結

NvM的狀態(tài)機每家供應商的代碼區(qū)別還是挺大的,不過我們在看代碼的時候首先需要了解這些API的調(diào)用時序,如下圖為用戶調(diào)用NvM_Write服務的時序圖:

112911d6-9d8c-11ee-8b88-92fbcf53809c.png

熟讀AUTOSAR NV Data Handling Guideline,才能更好理解代碼,必要時自己畫一個狀態(tài)遷移圖。

來源:汽車MCU軟件設計

審核編輯:湯梓紅

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

    關注

    33

    文章

    8694

    瀏覽量

    151929
  • 存儲
    +關注

    關注

    13

    文章

    4355

    瀏覽量

    86182
  • AUTOSAR
    +關注

    關注

    10

    文章

    363

    瀏覽量

    21783
  • 代碼
    +關注

    關注

    30

    文章

    4828

    瀏覽量

    69063

原文標題:AUTOSAR 存儲棧分析--MemIfFee

文章出處:【微信號:談思實驗室,微信公眾號:談思實驗室】歡迎添加關注!文章轉(zhuǎn)載請注明出處。

收藏 人收藏

    評論

    相關推薦

    AUTOSAR存儲模塊的基礎知識

    AUTOSAR存儲模塊的解釋文章很多,本文整理存儲模塊基礎知識。
    發(fā)表于 10-08 09:30 ?7073次閱讀

    存儲協(xié)議的Error流轉(zhuǎn)過程分析

    前言 前面的文章我們詳細分析了NvM,F(xiàn)ee,F(xiàn)ls模塊以及NvM User和NvM的交互,對AUTOSAR架構下的存儲協(xié)議應該有了一個比較深入的了解了?;仡^來看,站在NvM使用者的
    的頭像 發(fā)表于 09-04 09:53 ?1472次閱讀
    <b class='flag-5'>存儲</b>協(xié)議<b class='flag-5'>棧</b>的Error流轉(zhuǎn)過程<b class='flag-5'>分析</b>

    AUTOSAR的工作原理是什么?為什么需要AUTOSAR

    AUTOSAR的工作原理是什么?為什么需要AUTOSAR?
    發(fā)表于 05-17 06:44

    AUTOSAR是什么

    一、AUTOSAR是什么AUTOSAR組織自己的介紹是AUTOSAR (AUTomotive Open System ARchitecture) is a worldwide development
    發(fā)表于 11-10 07:47

    AUTOSAR的相關資料推薦

    AUTOSAR基礎篇EcuM_wto9109的博客-CSDN博客【AutoSAR】【EcuM】ECU狀態(tài)管理專注汽車軟件開發(fā)、AutoSAR、車載以太網(wǎng)、SOA、EE架構。07-08
    發(fā)表于 01-27 08:25

    一文詳解存儲的結構

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

    STM32堆和及變量的存儲理解

    STM32堆和及變量的存儲理解
    發(fā)表于 11-30 16:51 ?19次下載
    STM32堆和<b class='flag-5'>棧</b>及變量的<b class='flag-5'>存儲</b>理解

    如何用eBPF優(yōu)化內(nèi)存存儲功能

    隨著存儲設備的升級與發(fā)展,當代的存儲設備性能越來越高,延遲也越來越低。對于內(nèi)核而言,Linux I/O 存儲棧的軟件所帶來的性能開銷已經(jīng)越來越不可忽視。
    的頭像 發(fā)表于 08-09 11:43 ?1184次閱讀

    AUTOSAR通信協(xié)議的幾個問題(一)

    最近在研究AUTOSAR通信協(xié)議的時候產(chǎn)生了以下幾個問題。
    的頭像 發(fā)表于 01-31 09:23 ?2051次閱讀

    AUTOSAR中通信協(xié)議配置詳解

    通訊協(xié)議幾乎是CP AUTOSAR中最龐雜的一塊。由于其涉及的模塊比較多(僅實現(xiàn)CAN信號的收發(fā)就需要ECUC/CAN/CANIF/CANTP/PDUR/COM/XCP這么多模塊的協(xié)作!),且名詞
    的頭像 發(fā)表于 09-21 10:02 ?6215次閱讀
    <b class='flag-5'>AUTOSAR</b>中通信協(xié)議<b class='flag-5'>棧</b>配置詳解

    AUTOSAR經(jīng)典平臺介紹

    汽車電子系統(tǒng)的軟件組件、運行時環(huán)境和通信機制,以實現(xiàn)模塊化、可重用和可擴展的系統(tǒng)開發(fā)。 在AUTOSAR CP中,軟件組件被分為應用軟件組件(SWC)和基礎軟件組件(BSW)。SWC是實現(xiàn)特定功能的軟件模塊,例如引擎控制、制動系統(tǒng)等。BSW是提供基礎功能和服務的軟件模塊,例如通信協(xié)議
    的頭像 發(fā)表于 10-27 15:30 ?1455次閱讀
    <b class='flag-5'>AUTOSAR</b>經(jīng)典平臺介紹

    AUTOSAR平臺研究報告:國產(chǎn)基礎軟件+芯片全方案加快量產(chǎn)

    2023年12月7日,AUTOSAR組織發(fā)布了最新版本AUTOSAR R23-11標準,從功能角度方面,更新主要集中在信息安全、功能安全以及通信協(xié)議等三個方面。
    的頭像 發(fā)表于 02-21 15:30 ?3358次閱讀
    <b class='flag-5'>AUTOSAR</b>平臺研究報告:國產(chǎn)基礎軟件+芯片全<b class='flag-5'>棧</b>方案加快量產(chǎn)

    AUTOSAR解決方案 — INTEWORK-EAS-AP

    經(jīng)緯恒潤自主研發(fā)的Adaptive AUTOSAR平臺產(chǎn)品, 遵循AUTOSAR Adaptive R19-11和R22-11規(guī)范, 使用C++11、C++17語言開發(fā)??赏ㄟ^極易上手的自研工具配置,實現(xiàn)AUTOSAR AP協(xié)議
    的頭像 發(fā)表于 11-06 16:11 ?773次閱讀
    <b class='flag-5'>AUTOSAR</b>解決方案 — INTEWORK-EAS-AP

    AUTOSAR通信協(xié)議解析 如何實現(xiàn)AUTOSAR通信

    通信協(xié)議是一個復雜的系統(tǒng),它涵蓋了多種通信方式和模塊,以實現(xiàn)車內(nèi)ECU之間的高效、可靠的數(shù)據(jù)交換。以下是對AUTOSAR通信協(xié)議的解析及實現(xiàn)AUTOSAR通信的方法: 一、AUTOSAR
    的頭像 發(fā)表于 12-17 14:54 ?1034次閱讀

    AUTOSAR通信實現(xiàn)中的常見問題

    AUTOSAR(Automotive Open System Architecture)汽車開放系統(tǒng)架構旨在實現(xiàn)汽車電子的軟硬件分離,降低ECU軟件開發(fā)的復雜度,提高軟件可重用性。 一、通信協(xié)議
    的頭像 發(fā)表于 12-17 15:03 ?488次閱讀
    百家乐有电脑游戏吗| 利赢百家乐官网现金网| 做生意的好风水好吗| 新晃| 七胜百家乐娱乐平台| 百家乐官网最佳投注办法| 威尼斯人娱乐场官网网站是多少| 百家乐官网扎金花斗地主| 大发888娱乐城客服电话| 做生意门面朝向风水| 建瓯市| 威尼斯人娱乐城网上赌场| 小孟百家乐官网的玩法技巧和规则 | 娱乐网百家乐官网的玩法技巧和规则 | 微信百家乐官网群资源| 网上百家乐官网优博| 百家乐77s| 互博百家乐官网的玩法技巧和规则| 新河县| 新全讯网网站112| 百家乐官网园选蒙| 百家乐官网网上投注网站| 大发888充值平台| 百家乐玩法及技巧| 云鼎百家乐官网程序开发有限公司| 亲朋棋牌捕鱼辅助| 百家乐高命中打法| 百家乐官网博娱乐场开户注册| 南华县| 大发888娱乐城下载新澳博| 澳门百家乐技巧| 神人百家乐官网赌场| 平博娱乐| 大上海百家乐娱乐城| 现场百家乐官网能赢吗| 百家乐官网必胜绝技| 大发888电话客服| 百家乐赌博代理| 菲彩百家乐官网的玩法技巧和规则 | 全讯网433234| 百家乐三路秘诀|