自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(190)
  • 收藏
  • 关注

原创 关于AUTOSAR 系列文章的一点想法

1.本人所写的AUTOSAR 系列文章并不适合初学者和资深AUTOSAR专家,如果你能完全看懂AUTOSAR Offical Spec ,可以不用看我写的内容. 很多内容过于抽象需要有一点基础2.目前完成的30多篇主要介绍的是AUTOSAR 所能实现的功能,很少涉及架构涉及,性能优化。后续会增加部分内容(作为AUTOSAR 架构首先要知道AUTOSAR 能做什么, 有多少种方案,性能如何,才能设计出合理的架构)3.本人所写内容是基于7年AUTOSAR 使用和架构设计经验总结而成,并不是对AUTOSA

2021-09-19 21:51:44 1948 4

原创 Customer Diagnosis(ISO14229) 总结

General NRC behavior with subfunctionSID Level NRC FlowSub-function Level NRC FlowImportant CommentServer Response behavior 是针对 Server Level 的 CheckServer Response behavior with sub_function 是针对 sub-function Level 的 Check比如$28 03 01 在28 S

2022-02-19 13:58:10 1624

原创 AUTOSAR CanNm & Nm Configuration

General由于Network Management 涉及的内容比较多,我分为多个Blog来写,细节如下CAN Network Management 介绍:参见AUTOSAR CAN Network Management Introduction Can Partial Network配置:参见AUTOSAR Partial Network Configuration Can Wakeup 的唤醒方式配置:参见AUTOSAR Network Wakeup(Can) Configuration

2022-02-08 22:42:32 3336

原创 AUTOSAR NvM&Fee Configuration

针对NVM Block 分为3种类型NATIVE/DATASET/REDUNDANT,本文将以这三种为例子进行介绍NVM/FEE的介绍,对于AUTOSAR NVM的介绍还请参考AUTOSAR NVM Introduction 一文,本文还是以介绍NVM/FEE 模块的配置为主。 还是那句话配置内容是基于AUTOSAR 标准,不受限于任何工具NOTE:由于不同芯片对应FLS都不尽相同,因此本文不会介绍FLS的内容StructureNVM CommonNVM Block Configurat

2022-02-05 20:07:09 4659 8

原创 AUTOSAR LIN STACK Configuration

General 本文主要介绍如何配置LIN Stack , 对于LIN Stack的功能介绍还请参见AUTOSAR LIN Introduction本文配置内容以VECTOR 工具为基础,不过对于其他工具也是一样的配置方法。很多朋友可能有疑问认为很多工具都支持自动导入LIN LDF 文件,所有配置都可以自动生成,为什么还需要了解细节和手动配置这部分内容。我是这么理解这个问题的:理解这些属性的原理和配置底层逻辑,可以使你摆脱工具的限制,避免出现换了工具就不会了这种情况 目前AUTOS

2022-02-04 16:52:25 2148 3

原创 AUTOSAR IPDUM Configuration

对于IPDUM , AUTOSAR 提供2种实现方式, 一种是 I-PDU MultiplexingMultiple PDU to Container Mapping ,本文主要介绍 Multiple PDU to Container Mapping 的配置方法,对于IPDUM的功能请参考我的另外一篇Blog – AUTOSAR IPDUM IntroductionData FlowCommunication Matrix 我们假设我们由如下Multiple PDU, 只简单列出来有关系

2022-02-02 21:22:38 1916

原创 AUTOSAR DEM Configuration

本文只介绍AUTOSAR DEM配置,目的在于知道DEM快速开发,对于AUTOSAR DEM 功能请参见AUTOSAR DEM Introduction 一文Workflow Step Action Refer to Section 1 定义DEM General Dem General 2 定义Freeze Frame

2022-02-01 13:12:22 3769

原创 AUTOSAR DCM Configuration

本文主要介绍AUTOSAR DCM的配置,对于ISO14229 以及Customer Diagnosis的作用不是本文重点Dcm Configuration Workflow Step Action Refer to Section. 1 定义$27 ,$10 27 Service 10 Service 2 定义SID/Sub

2022-01-29 15:27:52 3397 2

原创 AUTOSAR Network Wakeup(Can) Configuration

General Introduction在AUTOSAR CAN Wakeup Analysis 一文中已经介绍过 , 这里就做简单的说明。 本文还是以介绍配置为主对于在AUTOSAR SPEC 中规定对于Network Wakeup 功能,主要可以通过2种方式进行处理1.Controller (CAN)这种唤醒方式需要CAN Controller 支持相应的功能, 绝大部分的MCU 都支持,可以简单的理解这种唤醒方式需要先唤醒在校验。优点: 不需要支持PNC的transceiver ,

2022-01-25 15:18:33 2193 4

原创 RH850 MPU 实现介绍

General Introduction对于RH850 来说最多支持16 组Memory 分区, 这些Memory 分区可以是RAM/ROM/D-FALSH/Stack(RAM)/Register(RAM), 我们可以针对memory分区设置访问其所需要的权限,只有Memory 访问者具备相应的权限才可以合法访问memory ,否则会触发MPU Error进入到OS Protection Hook一般来说对于VECTOR 工具链中是提供UI 界面进行配置, 本文主要将从芯片的角度介绍RH850 ..

2022-01-15 19:38:14 2327 1

原创 AUTOSAR Partial Network Configuration

General Introduction可以将ECU 通信网络分成很多个子网络,每个子网路都有自己的PN INFO, 通过BSWM 监控收到的PN INFO 进而控制对应的PDU Groups是否开启其中PN Info的位置可以通过CanNmPnInfoOffset and CanNmPnInfoLength 设置另外可以通过设置PN Filter Mask 对于收到的PN INFO 进行过滤,通过过滤后的PN INFO来决定是否有对应的PDU Groups需要开启由于Par..

2022-01-13 22:05:29 2449 2

原创 Vector Davinci Developer(RTE) Usage Introduction

本文主要用于介绍如果使用Davinci Developer 创建SWC/CDD 以及响应的功能,对于RTE的基础知识并不会结束,比如使用QUEUE Port 和NON QUEUE Port的区别对于RTE 功能,可以参考我的另外一篇文章AUTOSAR RTE IntroductionScenarioRefer to Section: 为可参见的后面的章节Application Data Transmission 这里指定的是两个SWC/CDD的通过Application Port 进..

2022-01-09 01:27:42 4380

原创 AUTOSAR关于使用PDUR 进行路由的CDD使用策略

根据AUTOSAR 架构体系, Lower Layer通过PDUR 传递PDU给Upper Layer 是可以选择具体的Upper Layer Module ,如DCM,COM 或者选择CDD 并且由APP 自行实现这个CDD为什么要使用AUTOSAR CDD? 不使用原生的AUTOSAR BSW 而使用需要自己实现的AUTOSAR CDD一定是有原因的,导致原生AUTOSAR BSW 不能被使用,比如功能安全的限制, AUTOSAR BSW 自身的限制等下面我结合经历过真实例子,详..

2022-01-01 22:44:39 3544 2

原创 AUTOSAR Diagnosis Message Configuration

General本文主要介绍基于VECTOR MICROSAR 介绍如何完成 CAN 通信的诊断报文的配置Diagnosis Dataflow假设有如下诊断报文DIAG_REQUEST_PHYSICAL DIAG_REQUEST_FUNCTIONAL DIAG_RESPONSE_PHYSICAL那么哪些AUTOSAR Component需要配置呢EcuCDIAG_RESPONSE_PHYSICAL需要创建 3 个EcuCECUC_RESPONSE_PHYS

2021-12-27 23:27:31 1286

原创 AUTOSAR Crypto Stack UseCase

General StructureKey Management对于Key的注入在AUTOSAR Crypto Stack 主要通过以下API 进行STEP 1: Csm_KeyElementSet(KeyId,KeyElementId,keyPtr,keyLength)STEP 2: Csm_KeySetValid(KeyId)有的Key注入完成后可能有返回值,需要通过如下API 获取STEP3: Csm_KeyElementGet(KeyId,KeyElementId,ke..

2021-12-26 00:09:12 2430 1

原创 AUTOSAR (Safety)WdgM Introduction

Why use it 满足功能安全ISO26262 -6 :程序流监控,执行时间监控要求GeneralWorkflow评估SE中的AS/DS/LS à 决定LOCAL STATUS à决定GLOBAL STATUSàERROR HandlingStructureSupervised Entity 被监管的实体, 由多个Checkpoint所构成,SE 可以理解为一个收到监管,监控的功能,假设我们有个ASILD 的功能是计算数据并发送数据。那么这个功能就是一个SE ,我

2021-12-19 01:29:03 1737

原创 AUTOSAR Memory Stack UseCase

本文着重介绍Memory Stack中的重要API, 以及一些时序调度问题我们知道Memory Stack 一共由三个MainFunction用于执行RAM 于D-FLASH的交互,如何设计 MainFunction调度时序可以达到最优解,细节如下Init Phase Sequence触发时机:INIT TASKFls_Init -->有的可能放在ECUM InitList1 用于绕开MPU 监管 NvM_Init Fee_InitNormal Phase Sequence因

2021-12-12 19:57:26 1337 1

原创 Memory Protection Unit Introduction

为什么使用MPU通常ECU 内部集成了很多模块,这些模块可能来自第三方(Vector ,EB, 其他公司)或者由自己开发完成, 从功能安全的角度来说,这些模块(代码)都会有对应的安全等级(QM,ASILA~D), 因为不同的安全等级评估标准(设计,实现,测试)是不一样的,因此如何保证基于不同标准实现的模块可以安全的共存在ECU 内部是功能安全架构需要考虑的内容之一Memory Protection 就是其中一项重要的评估,设计内容,对于不同ASIL 等级的模块,需要保证其运行时所对应的Memor

2021-12-09 23:15:13 1835 15

原创 AUTOSAR Runtime 评估&优化的一些想法

一直以来想写一篇关于基于AUTOSAR 架构 Runtime 分析以及优化的文章,但是感觉方法很多可是又过于具体和依赖实际软件架构,所以很难抽离出一套万能的方案但是,很多内容是可以复用的,鉴于此,本文只介绍Runtime优化的思路,并不会列举出具体的方案,再写本文时,本想画几张图,避免过于理论,但是实在是太难用图形合理表达所有的内容,所以只能全部是文字了Runtime 分析指标平均负载在任意时间段内,CPU Load 最好低于90%,意味着CPU需要有10%的空闲时间单点负载

2021-12-02 21:14:10 1243 1

原创 AUTOSAR E2EXf & E2ESM Introduction

General针对E2E 数据校验目前存在2种方式,如下E2E Lib + E2E PW: 采用这种方式的校验E2E_Check接口将返回E2E PXX Status(例子可参见E2E PXX Status Estimation) ,App 需要自行根据返回的E2E PXX Status来判断采取什么Action , 对于这种组合在AUTOSAR 4.3 之后就不再采用了E2E Lib +E2EXf+ E2ESM: 对于AUTOSAR 4.3 之后的版本都将采用这种组合,和前面提到的那种方式相比

2021-11-28 00:02:45 1884 2

原创 AUTOSAR Init时序与周期调用时序.周期分析

General本文主要介绍AUTOSAR Component Init Sequence ,以及各个Main Function调用的时序和推荐周期。 尽量指出每个main Function 所推荐的周期的理由简单来说,通过此种方案设计,可以减少因调度顺序所引入的tolerance, 或者因Polling time设置过短导致Runtime 的浪费NOTE: 最合理的方案一定是结合需求,真实RT 平衡后的方案,比如多个TASK的引入,这里列出的只作为参考Init Sequence Anal

2021-11-19 23:26:13 2054

原创 AUTOSAR SecOC 同步异步处理方式分析

General前文介绍过SecOC 需要和Crypto Stack 一起使用用于数据的加密与验证,对于SecOC 模块和Crypto Stack 都存在同步和异步的处理方式,本文将对于同步与异步的策略进行分析Crypto Stack Process对应SecOC属性:SecOcCsmModeSYNCHRONOUS对于数据加密与校验以同步方式完成,从请求到完成整个过程都是同步的ASYNCHRONOUS对于数据加密与校验以异步方式完成,需要受到Csm_Mainfunction/Cry

2021-11-13 17:41:15 2728

原创 AUTOSAR SecOC Configuration

GeneralQuery Freshness Value (SecOCQueryFreshnessValue)当SecOCQueryFreshnessValue = CFUNC 且SecOCProvideTxTruncatedFreshnessValue = FALSE 是, 对于Tx Freshness 交由SecOC 处理(SecOC_GetTxFreshness)当SecOCQueryFreshnessValue = CFUNC 且SecOCProvideTxTruncatedFr..

2021-11-13 17:38:34 2013 4

原创 AUTOSAR FEE 评估策略分析

在前面提到的基于相同的Mcu. 可能有不同的供应商提供Fee模块(或者可以给Fee Suppiler提要求),他们的对于换页机制,存储结构,读写速度等相关功能可能存在差异因此在选择Fee Supplier的时候需要结合项目的需求来进行选择本文将介绍Fee的评估策略,本次全部内容均为文字描述,没有图片。纯经验总结,部分内容可能过于理论化,介绍的方法,不会提供具体的计算公式,Fee Init 时长有些Fee Supplier 所提供的Fee 存在初始化时间过长的问题, 比如 可能在Fee i

2021-11-07 23:29:15 1832

原创 AUTOSAR Fee & Fls 换页策略与读写的分析与设计

在正式说起FEE/FLS 换页策略和读写流程之前,我们先介绍了FLS 的一些基本概念在MCU 中有一块非易失性存储器我们称之为Data Flash , 在AUTOSAR FEE/FLS 规范中,通过DATA FLASH 模拟EEP的形式将数据存储在Data Flash中Page: 由若干个字节所组成,是读写的最小单元, 比如 Page:8 bytes, 也就意味着即使向DATA FLASH 写入一个字节,也会占用Page 这么大的空间Logical Section: 逻辑扇区,擦除的最小单元..

2021-11-04 00:50:49 4064 2

转载 AUTOSAR Post Build / Pre Compile / Link Time Introduction

找到一篇介绍Post Bulid / Pre Compile /Link Time非常好的文章。在这里转载下原文地址:AUTOSAR配置中的PostBuild、Precompile、Linktime_Xiaowestwind的博客-CSDN博客AUTOSAR的配置软件中,经常可以见到PostBuild、Precompile、Linktime这三个的影子,所以想搞清楚它们的区别,以及知道大概是干什么的。编译基础回顾静态库是经过编译的二进制文件。在链接阶段,引用库一旦链接成功,将汇编生成的.

2021-10-30 23:33:12 1591

原创 AUTOSAR CAN Polling or ISR Usage Analysis

今天和一个同行讨论了关于如何减少CAN Message的tolerance的问题 , 大家都知道AUTOSAR CAN DRIVER 针对于CAN Frame的处理存在CAN Driver Layer存在 POLLING 和ISR 两种方式,在COM Layer 有Deferred 和Immediate两种方式。 那么究竟哪种组合方式对于SW 架构设计更合理呢,两种方式的使用的场景又如何呢?接下来我们详细分析下RX Message ISR & Immediate当收到RX m..

2021-10-29 01:29:40 1314 1

原创 AUTOSAR Multi-Partition BSWM Introduction

General在前面AUTOSAR BSWM Introduction 中已经介绍了 BSWM 的基本概念,简单来说BSWM是整个AUTOSAR 架构下的信息收集中心,各个Component 可以将自己的运行时信息“扔给”BSWM, 但是不用关心这个信息需要会被谁使用,需要使用这些信息的Component,只需要在BSWM注册所需要监控的 “信息“ 情况, 当被监控的“信息”满足条件时, BSWM 就会通知到 “监控者“这样设计的好处就是减少 Component的相互依赖。ECU..

2021-10-20 17:42:33 1638 2

原创 AUTOSAR MultiCores ECUM Design

General Introduction前面在AUTOSAR ECUM Introduction已经介绍了ECUM的基础机制,这里将介绍在多核系统中ECUM将如何使用每一个Core 需要有唯一的ECUM INSTANCE虽然每一个CORE 都可以有一份ECUM Instance,每份ECUM Instance都包含ECUM的几乎所有功能(E.g STARTUP, UP, SHUTDOWN and SLEEP),但是对于“外设”只存在一份,因此对于相同的Wakeup Source 通常在只..

2021-10-19 18:01:04 1213

原创 AUTOSAR E2E & SecOC Comparison

前面已经介绍过了E2E 和 SecOC(CMAC) 了,既然2者都可以进行数据完整性保护,那么2者有什么区别呢下面基于我的经验所总结。欢迎补充,更正 E2E SecOC(CMAC) 实现方式 SW HW Runtime 消耗 高(与CRC精度与加密数据长度相关) 低(HSM/SHE) Key ..

2021-10-08 23:25:53 6720 1

原创 AUTOSAR (JASPAR)FVM Introduction

“在阅读本文之前,请先了解SecOC流程,可参见AUTOSAR SecOC Introduction”Introduction FVM (Freshness Management) 的主要功能负责管理Freshness Value,正如在SecOC 一文中介绍因为CMAC 授权码是基于对称加密算法而产生,那么也就意味着对于相同内容的Secured I-PDU,所产生的CMAC 也是一致的, 因此对于“攻击者“来说即使不知道密钥(KEY)的情况下,只要模拟发送这个固定内容的Secured I-PD..

2021-10-07 19:05:32 2282 2

原创 AUTOSAR SecOC Introduction -- Part 2

Encryption & Validation FlowEncryption主要分为如下几步传输Authentic I-PDU 获取SecOC ID 获取Freshness Value 获取Key 构建Authentication data 生成MAC 构建Secured I-PDU可以将Secured I-PDU 拆成2帧报文进行发送(通过设置SecOCTxSecuredPduCollection)Authentic I -PDU (Including Mes

2021-10-06 01:01:20 1105

原创 AUTOSAR SecOC Introduction -- Part 1

IntroductionAUTOSAR Secure Onboard Communication (SecOC) 作用是提供一种机制用于保证ECU之间通信过程中的“重要”数据的完整性和身份验证。目前SecOC 需要和COM Stack 结合使用,对于SWCs之间的数据保护则不能使用SecOC在AUTOSAR 架构中,SecOC 和PDUR 数据同一层, 其要负责和Crypto Stack交互进行数据加密与验证,也要负责和PDUR 交互进行数据的传递传统通信方式弊端数据完整性的保护机制

2021-10-06 00:59:13 2695 2

原创 AUTOSAR BSWM Configuration for $28 Functionality

通过BSWM 控制通信开启与停止,主要是控制PDU 的启停功能,PDU 被按照规则被分配到不同的PDU GROUP, BSWM 通过控制PDU GROUP 的启停就可以控制其里面包含的所有PDU收发需要说明的时,28 服务只是应用BSWM 控制通信开启与停止的一个实例, 其还有更多的应用场景,比如在运行期根据配置动态控制报文的开启与停止(Part offline/partition network), 总之任何涉及到APP message 通信开启与停止的功能都可以通过BSWM 配置来完成需要.

2021-09-25 22:00:28 1363 1

原创 AUTOSAR CANTP(ISO15765-2) Introduction -- Part 2

Unexpected arrival of frame单工 :单工就是指A只能发信号,而B只能接收信号,通信是单向的半双工:半双工就是指A能发信号给B,B也能发信号给A,但这两个过程不能同时进行全双工:全双工比半双工又进了一步。在A给B发信号的同时,B也可以给A发信Segmented Transmitted in progress指的是发送SF /FC, 收到FF/ CF的一端Single Frame receptionCASE 1:接收到的FF/CF 之后 发送新的

2021-09-25 16:41:39 689 1

原创 AUTOSAR CANTP(ISO15765-2) Introduction -- Part 1

AUTOSAR CAN TP 是基于ISO 15765-2 所要求的功能实现的, 因此看懂ISO15765 -2 是理解 CAN TP的基础OverviewUnsegmented MessageSegmented MessageFormat OverviewSingle FrameFormat$0x $xx $xx $xx $xx $xx $xx $xxAttributeSF_DL单一帧的数据长度Range:0~8 ,如SF_DL超出范围,

2021-09-25 16:38:08 690

原创 AUTOSAR Security Diagnosis

前面介绍AUTOSAR Crypto 时,介绍过Crypto的一个使用场景就是Security Diagnosis为什么需要它Security Access 功能好比是个安全屏障,ECU 一些重要的功能需要Security Access 通过后,才可以执行,如果诊断仪或者其他工具可以不加限制的访问ECU 内部的所有内容,将对ECU 造成威胁,比如重要数据被修改,删除, 重要的Fault 被清除,意外触发了某些功能传统Security Access的劣势Seed 并非“随机” 而更多的是一些特

2021-09-21 17:37:42 807 1

原创 AUTOSAR LIN Introduction

GeneralLIN 是 Local Interconnect Network 的缩写,是基于 UART/SCI(Universal Asynchronous Receiver-Transmitter / Serial Communication Interface,通用异步收发器/串行通信接口)的低成本串行通信协议。可用于汽车、家电、办 公设备等多种领域LIN 的拓扑结构为单线总线,应用单主机多从机的概念。LIN总线电平为 12V,传输位速率(Bitrate)最高为 20kbps。由于物理层限制,

2021-09-19 20:12:05 1265

原创 AUTOSAR PDUR Introduction

GeneralPDU ROUTER : PDU 路由器,作用是负责数据路由,比如,当我们从CAN BUS 收到一条报文之后,CAN IF 是如何正确的将数据传递给COM 中正确的Indication Callback的呢? 这其中起到关键作用的就是PDUR, PDUR 好像是邮局,里面定义了每个PDU的流转地址, 其他模块主要需要将PDU 人给PDUR, PDUR 就会根据预定义好的流转地址,将PDU 传给正确的Component.正如上面描述, PDUR 主要把包括两部分功能PDUR Modu

2021-09-15 23:21:53 2432 1

原创 AUTOSAR Functional Safety

前言功能安全(Functional Safety)是一项系统特性,由于基于功能安全的设计会影响到系统设计,所以从系统开发初始阶段就要进行考虑。由于软件的复杂度会影响 到功能安全的设计,所以在AUTOSAR规范中,包含了部分与功能安全相关的需求,这些新技术和概念能够帮助降低功能安全相关组件的复杂度。不过需要强调的是,AUTOSAR虽然通过提供安全措施和机制来支持基于功能安全产品开发,但这些独立的安全措施(Safety Measure)并不能形成整体的安全解决方案。在功能安全标准(ISO 262..

2021-09-15 21:03:06 1274

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除