DCM是什么
DCM全称Diagnostic Communication Manager,它位于AUTOSAR基础软件的服务层,它的主要作用是为开发和生产阶段提供与诊断仪交互的诊断服务。
DCM模块可以保证诊断数据流的正确性,管理诊断状态,比如会话状态和安全访问等级状态。DCM会检查某个诊断请求是否被支持,以及在当前的会话状态和安全访问等级下下该诊断请求会不会被执行。
DCM在AUTOSAR中的位置
DCM模块在AUTOSAR架构中的位置如下图:
DCM模块独立于网络总线,也就是说DCM不区分接收到的诊断请求是来自于CAN总线还是LIN总线,抑或是Flexray总线,所有与总线有关的处理都在PDUR模块完成。DCM模块从PDUR接收诊断报文,然后在DCM内部完成检查和处理。在这个过程中DCM将会与其他BSW模块或SWC(通过RTE)进行交互,以获得需要的数据或者执行相应的命令。DCM最终会收集并整合信息,最后发送响应报文给PDUR模块。
DCM包含的子模块
为了合理的分配DCM的各项任务,DCM被划分为如下三个子模块:
DSL(Diagnostic Session Layer):处理诊断请求和响应的数据流,监督和管理诊断协议时序,管理会话和安全访问状态。
DSD(Diagnostic Service Dispatcher):检查诊断请求的有效性(诊断ID是否支持、会话状态、安全等级),把有效的诊断请求委托给DSP,并追踪诊断请求的处理
DSP(Diagnostic Service Processing):检查诊断请求格式以及诊断子服务是否支持,获得需要返回的数据或者执行需要被调用的函数(调用SWC的函数写数据到NVM,调用DEM的服务获得DTC状态)、填充response的数据
DCM各个子模块及其他软件模块之间的交互
下面利用一张图来厘清DCM各个子模块之间的关系,以及与其他软件模块的交互关系。
现在通过诊断仪发送一条配置车辆识别码(VIN)的诊断命令,看一下DCM的整个处理流程。
首先这条诊断报文(0x2E, 0xF1, 0x90, ......)会经由PDUR传送到DSL,DSL会先确认当前是否有其他诊断请求正在处理,如果没有将会把该诊断请求发送给DSD模块。
DSD模块收到0x2E的诊断报文后,会先判断服务ID 0x2E在不在当前的Service Identifier Table中,如果不在将会拒绝该请求(一般情况下ECU都是支持0x2E服务的,这里只是举例子),如果该服务ID在Service Identifier Table中,接下来要判断当前的诊断会话(从DSL获取)是否为扩展会话,以及当前的安全访问状态是否允许0x2E写入。如果所有检查通过,则会把该诊断请求委托给DSP模块。否则将会拒绝该诊断请求,并通知DSL发送响应的负反馈到PDUR。
DSP收到0x2E的诊断请求后,会先检查请求的格式,比如总的报文长度是否符合定义,以及诊断子服务0xF190是否支持。如果校验通过则调用APP层相应的SWC的函数,把VIN数据写入到NVM。然后准备正响应报文并发送给DSD,DSD再发送给DSL,最后通过PDUR发送到相应到网络总线上。
关键字:DCM AUTOSAR
引用地址:
DCM是什么?DCM在AUTOSAR中的位置
推荐阅读最新更新时间:2024-11-07 10:54
AutoSAR中的诊断模块是什么
什么是诊断 首先,举个一个简单的例子来说明诊断的重要性:想象你的汽车是一个经常生病的孩子,每当它出现问题时,它会哭泣(警告灯亮起)。而诊断技术就像是医生的听诊器,帮助你准确找出宝宝为什么哭泣,从而迅速治疗。职责划分:在实际开发过程中,OEM的电子电器架构部门(EE),会在某个项目节点之前向各ECU的供应商提供相应的诊断调查表作为诊断开发的需求输入。供应商内部的系统工程师则负责根据诊断调查表设计ECU内部诊断架构和细节实现。 流程简笔画 图来源于作者 诊断调查表里一般包括通讯地址、DID、DTC、RID、快照等等一些服务要求,这些基本概念不多赘述。诊断依赖于通讯进行实现,下面主要聊聊这些需求在AP和CP中的实现。 1.DEM D
[嵌入式]
Vicor 推出一系列支持 ±1% 稳压的器件
Vicor 推出一系列支持 ±1% 稳压的器件,进一步壮大其采用 ChiP 封装的隔离稳压 DC-DC 转换器模块 (DCM) 阵营。最新系列产品具有无与伦比的功率密度,高达 1,032 W/in3,可实现全工作范围±1%的精度要求。而之前的ChiP 封装的 DCM 系列为了支持大功率输出,可以采用多个DCM模块并联阵列,其输出电压精度为 ±3%。 DCM ChiP 可将未稳压的宽范围输入电压,转换成隔离稳压的 DC 输出,而 DCM 转换器则可利用高频率零电压开关 (ZVS) 拓扑,在其整个输入电压范围内始终如一地提供高效率。 支持负载点应用 最新 DCM 系列初始额定输入电压为 28V、270V 及 275V。这些产品的目标是
[电源管理]
基于AUTOSAR的智能车域控制器网络管理功能设计实现
智能驾驶的整车控制部分需要采用AUTOSAR框架进行开发,以满足高实时性以及高级别的功能安全需求。在本文中,通过采用AUTOSAR框架中网络管理的实现方式,对网络管理报文的格式进行定义,并描述CAN网络休眠与唤醒的状态转换、网络唤醒状态中各个子状态的切换、CAN Bus-off状态下的处理策略以及非正常电压模式下的处理策略等。在CANoe上对网络管理功能的策略进行验证,测试结果表明能够实现AUTOSAR网络管理的各项功能。 1 引言 近些年来,智能驾驶相关技术在世界范围内获得广泛关注和蓬勃发展。智能网联汽车是指搭载各传感器、控制器、执行器等装置,融合现代通信与网络、人工智能等技术,实现车与X(车、路、人、云等)智能信息交换、共
[嵌入式]
Vicor 推出 750W、48V 至 12V 稳压转换器 DCM3717,峰值效率高达97%
5 月 20 日,Vicor面向数据中心、汽车和工业市场的客户推出最新稳压转换器DCM3717,该产品可迅速为其传统的12V 负载部署高性能 48V 供电,同时显著优化电源系统尺寸、重量及效率。 Vicor 面向数据中心、汽车以及工业市场的 DCM3717 稳压 48V-12V 转换器 DCM3717是尺寸为37 x 17 x 7.4 毫米的表贴封装转换器 (SM-ChiP),支持 40 至 60V SELV 工作输入电压,可提供 10.0 至 13.5V 的稳压输出、750W 的持续额定功率以及 97% 的峰值效率。 DCM3717支持纯电动及混合动力汽车的 LV148 规范(48V 汽车标准),以及近期出台的分布式
[汽车电子]
AUTOSAR中的入侵检测系统(IDS)
什么是汽车IDS? ISO/SAE 21434(道路车辆-网络安全工程)是车辆安全标准,定义了当攻击发生时如图所示的5个步骤。汽车制造商必须对车辆中出现的安全漏洞做出响应。但是,只有在这些漏洞已知的情况下,才能执行此操作。汽车IDS由车载IDS和后端组成。 IDS检测针对ECU和网络的外部攻击,将其收集后发送到汽车制造商的后端-安全运营中心(SOC)。汽车制造商对数据进行评估并决定如何应对。 分布式车载IDS架构主要由四部分组成: 安全传感器 入侵检测系统管理器(IdsM) 安全事件存储 入侵检测系统报告器(IdsR) 安全传感器和安全事件 AUTOSAR的BSW,CDD和SWC模块都可以被指作为安全传感器,安全传
[嵌入式]
芯驰科技采用Elektrobit 的EB tresos Studio工具进行AUTOSAR 软件开发
作为一家富有远见卓识的汽车行业嵌入式互联软件产品的全球供应商, Elektrobit (EB) 今天宣布, 芯驰科技 ( SemiDrive ) 选择了 EB tresos Studio 工具用于其符合 AUTOSAR 标准的微控制器抽象层(MCAL)开发平台。芯驰是一家位于中国的半导体公司,专注于下一代高性能车规级芯片解决方案。凭借这一组合解决方案,汽车制造商和一级供应商将能更容易地开发基于 AUTOSAR 标准的用于高度自动化及互联车辆的高级应用。 EB tresos 搭载 EB tresos Studio 的芯驰芯片,能够提供一个完整的硬件平台基础,满足所有电子控制单元 (ECU) 上各类汽车应
[汽车电子]