CPAUTOSAR中复杂驱动(CDD)的设计开发建议

原创 汽车电子与软件 2025-01-26 08:34
         

 

作者 | 不可说
出品 | 汽车电子与软件



#01
引  入
 
复杂驱动程序(CDD,CDD曾经是复杂设备驱动程序或复杂驱动程序的缩写,但不限于驱动程序)是未经 AUTOSAR 标准化的软件实体,可以通过 AUTOSAR 接口和/或基本软件模块 API 访问或访问。根据AUTOSAR 分层软件架构,CDD 是位于BSW层级的复杂驱动程序层中的特定模块,它与标准BSW 模块或RTE交互。

  • CDD可能需要与分层软件架构的模块进行接口连接交互

  • 分层软件架构的某个模块可能需要与CDD进行接口连接交互

  • CDD可能需要通过RTE与SWC进行接口交互


CDD在AUTOSAR软件架构中的层级

CDD的主要目标是使用特定的中断和/或复杂的微控制器外设、外部设备(通信收发器、ASIC等)直接访问微控制器,以执行复杂的传感器和执行器控制,从而满足特定的功能和时序要求。

此外,它还可以用于实现增强的服务/协议,或封装非AUTOSAR系统的遗留功能。CDD的实现可能依赖于应用程序、微控制器和ECU。
   
最后,CDD可以作为迁移机制,将现有或新的概念引入到AUTOSAR软件架构中。
        


#02
CDD设计建议

为了在AUTOSAR架构中接口和简化CDD集成,设计者应考虑以下几点。

用户手册  


为了简化集成过程并向客户提供充分的信息,CDD设计师应编制一份用户手册,内容涵盖以下方面:
         

 

1、CDD介绍与概述:

对CDD的基本概念、用途和重要性进行简要介绍。

2功能操作描述:

详细说明CDD的初始化、正常运行、关机以及故障处理等操作流程。

3、与其他BSW模块、SchM和RTE的关系与需求:

阐述CDD与BSW模块、调度管理器(SchM)和RTE之间的相互作用和依赖关系,例如从NvM获取内存块,以及需要配置的关键部分。

4、文件结构与依赖关系:

描述CDD相关文件的组织结构、文件间的依赖关系以及文件命名规范。

5、接口描述(包括服务):

列出CDD提供的接口(服务)名称、功能描述、重入性、参数(名称、类型、范围和值)、返回值(名称、类型、范围和值)以及配置类别。

6、非功能性需求描述: 
 
说明CDD的定时要求、行为要求、资源使用情况以及与其他BSW模块或SWC的交互行为。

7、Dem错误(可选Det错误)及调试变量描述:

描述CDD可能遇到的诊断错误(Dem)、可选的检测错误(Det)以及相关的调试变量。

8、配置参数描述:

列出CDD的配置参数名称、类型、范围和值,以便用户根据需求进行配置。

9、内存映射需求描述:

说明CDD对Flash和RAM等内存资源的需求。

10、使用限制与开放问题:

指出CDD在使用过程中可能遇到的限制条件以及当前尚未解决的问题。

11、集成约束与其他模块要求:

阐述CDD在集成到其他系统或模块时可能遇到的约束条件以及需要满足的要求。

12、示例:

提供具体的CDD使用示例,帮助用户更好地理解CDD的功能和使用方法。
         

 

这份用户手册旨在为用户提供全面而详细的CDD使用指南,确保用户能够正确、高效地集成和使用CDD。
         

 

实现  


在CDD的实施方面,AUTOSAR提出的约束较少,但至少包括以下几点:
         

 

1、遵守输入规范:

CDD必须遵守《General Requirements on Basic Software Modules AUTOSAR_CP_SRS_BSWGenera》、《Layered Software Architecture AUTOSAR_CP_EXP_LayeredSoftwareArchitecture》等输入规范。这意味着CDD的设计和实现必须基于这些规范进行,以确保其与其他AUTOSAR组件的兼容性和互操作性。   
         

 

2、保护关键资源:

CDD需要定义关键区域,这些区域可以通过SchM或OS机制进行处理,以保护其关键资源。这是为了确保在并发环境下,CDD的关键数据不会被意外修改或破坏。
         

 

3、管理模式:

CDD的模式可能由EcuM和BswM模块进行管理。这意味着EcuM和BswM可以监控和控制CDD的运行状态,以确保其按照预期工作。
         

 

4、内存处理:

CDD可以使用内存映射机制来处理其内存区域。这允许CDD更有效地管理其内存资源,确保数据的正确存储和访问。
         

 

5、错误报告:

CDD可以使用Det或Dem模块来报告其错误。这有助于及时发现和解决问题,提高系统的可靠性和稳定性。
         

 

通过遵守这些约束,可以确保CDD在复杂的车载系统中稳定运行,为车辆提供可靠的控制和诊断功能。
         

 

CDD文件  


代码文件

CDD模块的代码文件结构并非固定不变,除了需满足文档《General Requirements on Basic Software Modules》和文档《General Specification on Basic Software Modules》中的要求外。

至少,应提供一个名为CDD__Irq.c的文件。其中,代表具体的模块名称。

         

 

中断函数可以放置在名CDD__Irq.c的文件中。这样,与中断处理相关的代码可以集中管理,便于维护和调试。    
         

 

回调函数可以放置在名CDD__Callout.c的文件中。回调函数通常用于在特定事件发生时执行特定操作,将其单独放置在一个文件中有助于保持代码的清晰和模块化。
      

 

根据需求,链接时从配置生成的C对象可以放置在名为CDD__Lcfg.c的文件中。这些对象可能包括在链接阶段根据配置生成的静态数据或代码。
        

 

同样地,根据需求,构建后从配置生成的C对象可以放置在名为CDD__PBcfg.c的文件中。这些对象可能包括在构建后的某个阶段根据配置生成的额外数据或代码。
        

 

如果CDD模块的实现需要额外的代码文件,则可以自由地包含它们。这意味着CDD模块的代码结构具有一定的灵活性,可以根据具体需求和实现方式进行调整。
         

 

头文件

以下图示包含了CDD模块所定义的AUTOSAR头文件层次结构。CDD模块应提供一个头文件结构,这样,CDD模块的用户就只需包含CDD_.h文件即可。其中,代表具体的模块名称。    


CDD头文件层次结构

如果某些回调函数需要由其他BSW模块处理,CDD模块可能会提供一个
CDD__Cbk.h头文件。
         

 

根据需求,从配置中生成的C对象声明可能会被放置在
CDD__Cfg.hCDD__PBcfg.hCDD__Lcfg.h文件中。这些文件分别用于存储配置、构建后配置和链接时配置的相关信息。
         

 

如果CDD模块的实现需要额外的头文件,那么可以自由地包含它们。这些头文件是自包含的,即它们会包含所有它们自身所需要的其他头文件。
         

 

CDD模块可能会包含Det.h和Dem.h头文件来报告错误。这些头文件通常用于错误检测和报告机制。
         

 

如果某些内存映射区域需要定义,CDD模块可能会包含_MemMap.h头文件。其中,是模块实v现前缀。这个头文件用于定义内存映射的详细信息。
         

 

如果配置了与RTE的接口,CDD模块可能会包含Rte_CDD_.h头文件。这个头文件用于定义与RTE交互的接口和函数。    
         

 



#03
CDD的行为与接口描述

某些CDD不仅具有与其他BSW模块或集群的接口,还通过RTE具有可从应用SWC访问的更抽象的接口。
         

 

在这些情况下,需要一个CDD SWC类型来连接RTE,并且CDD应遵循文档《Basic Software Module Description Template》中的要求。
         

 

该描述文件应包含以下内容:

1、CDD服务描述:

对CDD所提供的服务进行描述,这些服务可能是数据处理、通信等。

2、类型和端口接口:

列出CDD所使用的数据类型和端口接口,这些接口定义了与其他组件的交互方式。

3、内部行为和可运行实体的描述:

描述CDD的内部逻辑和行为,以及可运行实体的状态和转换。

4、可运行实体所需触发事件的描述:

详细说明哪些事件会触发CDD中的可运行实体执行特定操作。

5、共享资源保护的独占区域描述:

描述CDD如何管理对共享资源的访问,以避免冲突和数据损坏。

6、内存映射:

提供CDD在内存中的布局和地址分配信息。
         

 

   
这里所需的更抽象的接口被称为AUTOSAR接口,它们通过软件组件模板(SWCT)进行描述,由端口、端口接口及其进一步详细信息组成。
         


#04
小  结

首先,CDD模块作为AUTOSAR中的一个软件实例,虽然未被AUTOSAR标准化,但也要遵循相应的模板规范和设计开发建议。
         

 

其次,文档是CDD开发过程中不可或缺的一部分。开发者需要提供详细的用户手册,包括CDD的介绍、功能描述、与其他模块的依赖关系、接口描述、非功能性需求以及配置参数等信息。这些文档将有助于简化客户集成工作,并提供必要的信息以支持后续的开发和维护。
         

 

在接口设计方面,CDD可能需要与其他BSW模块、库以及标准模块接口进行交互。因此,开发者需要确保CDD的接口设计符合AUTOSAR标准,并能够与其他模块进行无缝连接。此外,对于需要通过RTE访问的抽象接口,开发者还需要遵循相应的文档要求,并确保CDD SWC类型与RTE的兼容性。
         

 

在内部行为和接口描述方面,开发者需要清晰地定义CDD的内部逻辑和行为,以及可运行实体的状态和转换。这将有助于确保CDD的正确性和可靠性,并为其他开发者提供清晰的参考。
         

 

最后,开发者还需要遵循AUTOSAR的相关文档和规范,以确保CDD的开发过程符合标准要求。这包括但不限于AUTOSAR分层软件架构、基础软件模块一般要求、基础软件模块规范等文档。   



/ END /


    

 

    

汽车电子与软件 主要介绍汽车电子软件设计相关内容,每天分享一篇技术文章!
评论 (0)
  • 这款无线入耳式蓝牙耳机是长这个样子的,如下图。侧面特写,如下图。充电接口来个特写,用的是卡座卡在PCB板子上的,上下夹紧PCB的正负极,如下图。撬开耳机喇叭盖子,如下图。精致的喇叭(HY),如下图。喇叭是由电学产生声学的,具体结构如下图。电池包(AFS 451012  21 12),用黄色耐高温胶带进行包裹(安规需求),加强隔离绝缘的,如下图。451012是电池包的型号,聚合物锂电池+3.7V 35mAh,详细如下图。电路板是怎么拿出来的呢,剪断喇叭和电池包的连接线,底部抽出PCB板子
    liweicheng 2025-05-06 22:58 533浏览
  • 二位半 5线数码管的驱动方法这个2位半的7段数码管只用5个管脚驱动。如果用常规的7段+共阳/阴则需要用10个管脚。如果把每个段看成独立的灯。5个管脚来点亮,任选其中一个作为COM端时,另外4条线可以单独各控制一个灯。所以实际上最多能驱动5*4 = 20个段。但是这里会有一个小问题。如果想点亮B1,可以让第3条线(P3)置高,P4 置低,其它阳极连P3的灯对应阴极P2 P1都应置高,此时会发现C1也会点亮。实际操作时,可以把COM端线P3设置为PP输出,其它线为OD输出。就可以单独控制了。实际的驱
    southcreek 2025-05-07 15:06 428浏览
  • 后摄像头是长这个样子,如下图。5孔(D-,D+,5V,12V,GND),说的是连接线的个数,如下图。4LED,+12V驱动4颗LED灯珠,给摄像头补光用的,如下图。打开后盖,发现里面有透明白胶(防水)和白色硬胶(固定),用合适的工具,清理其中的胶状物。BOT层,AN3860,Panasonic Semiconductor (松下电器)制造的,Cylinder Motor Driver IC for Video Camera,如下图。TOP层,感光芯片和广角聚焦镜头组合,如下图。感光芯片,看着是玻
    liweicheng 2025-05-07 23:55 308浏览
  • 随着智能驾驶时代到来,汽车正转变为移动计算平台。车载AI技术对存储器提出新挑战:既要高性能,又需低功耗和车规级可靠性。贞光科技代理的紫光国芯车规级LPDDR4存储器,以其卓越性能成为国产芯片产业链中的关键一环,为智能汽车提供坚实的"记忆力"支持。作为官方授权代理商,贞光科技通过专业技术团队和完善供应链,让这款国产存储器更好地服务国内汽车厂商。本文将探讨车载AI算力需求现状及贞光科技如何通过紫光国芯LPDDR4产品满足市场需求。 车载AI算力需求激增的背景与挑战智能驾驶推动算力需求爆发式
    贞光科技 2025-05-07 16:54 190浏览
  • UNISOC Miracle Gaming奇迹手游引擎亮点:• 高帧稳帧:支持《王者荣耀》等主流手游90帧高画质模式,连续丢帧率最高降低85%;• 丝滑操控:游戏冷启动速度提升50%,《和平精英》开镜开枪操作延迟降低80%;• 极速网络:专属游戏网络引擎,使《王者荣耀》平均延迟降低80%;• 智感语音:与腾讯GVoice联合,弱网环境仍能保持清晰通话;• 超高画质:游戏画质增强、超级HDR画质、游戏超分技术,优化游戏视效。全球手游市场规模日益壮大,游戏玩家对极致体验的追求愈发苛刻。紫光展锐全新U
    紫光展锐 2025-05-07 17:07 281浏览
  • 温度传感器的工作原理依据其类型可分为以下几种主要形式:一、热电阻温度传感器利用金属或半导体材料的电阻值随温度变化的特性实现测温:l ‌金属热电阻‌(如铂电阻 Pt100、Pt1000):高温下电阻值呈线性增长,稳定性高,适用于工业精密测温。l ‌热敏电阻‌(NTC/PTC):NTC 热敏电阻阻值随温度升高而下降,PTC 则相反;灵敏度高但线性范围较窄,常用于电子设备温控。二、热电偶传感器基于‌塞贝克效应‌(Seebeck effect):两种不同
    锦正茂科技 2025-05-09 13:31 109浏览
  • 在过去的很长一段时间里,外卖市场呈现出美团和饿了么双寡头垄断的局面。美团凭借先发优势、强大的地推团队以及精细化的运营策略,在市场份额上长期占据领先地位。数据显示,截至2024年上半年,美团外卖以68.2%的市场份额领跑外卖行业,成为当之无愧的行业老大。其业务广泛覆盖,从一线城市的繁华商圈到二三线城市的大街小巷,几乎无处不在,为无数消费者提供便捷的外卖服务。饿了么作为阿里本地生活服务的重要一环,依托阿里强大的资金和技术支持,也在市场中站稳脚跟,以25.4%的份额位居第二。尽管市场份额上与美团有一定
    用户1742991715177 2025-05-06 19:43 79浏览
  • 文/郭楚妤编辑/cc孙聪颖‍相较于一众措辞谨慎、毫无掌舵者个人风格的上市公司财报,利亚德的财报显得尤为另类。利亚德光电集团成立于1995年,是一家以LED显示、液晶显示产品设计、生产、销售及服务为主业的高新技术企业。自2016年年报起,无论业绩优劣,董事长李军每年都会在财报末尾附上一首七言打油诗,抒发其对公司当年业绩的感悟。从“三年翻番顺大势”“智能显示我第一”“披荆斩棘幸从容”等词句中,不难窥见李军的雄心壮志。2012年,利亚德(300296.SZ)在深交所创业板上市。成立以来,该公司在细分领
    华尔街科技眼 2025-05-07 19:25 352浏览
  • Matter协议是一个由Amazon Alexa、Apple HomeKit、Google Home和Samsung SmartThings等全球科技巨头与CSA联盟共同制定的开放性标准,它就像一份“共生契约”,能让原本相互独立的家居生态在应用层上握手共存,同时它并非另起炉灶,而是以IP(互联网协议)为基础框架,将不同通信协议下的家居设备统一到同一套“语义规则”之下。作为应用层上的互通标准,Matter协议正在重新定义智能家居行业的运行逻辑,它不仅能向下屏蔽家居设备制造商的生态和系统,让设备、平
    华普微HOPERF 2025-05-08 11:40 289浏览
  • 文/Leon编辑/cc孙聪颖‍《中国家族企业传承研究报告》显示,超四成“企二代” 明确表达接班意愿,展现出对家族企业延续发展的主动担当。中国研究数据服务平台(CNRDS)提供的精准数据进一步佐证:截至 2022 年,已有至少 280 家上市家族企业完成权杖交接,其中八成新任掌门人为创始人之子,凸显家族企业代际传承中 “子承父业” 的主流模式。然而,对于“企二代” 而言,接棒掌舵绝非易事。在瞬息万变的商业环境中,他们既要在白热化的市场竞争中开拓创新、引领企业突破发展瓶颈,又需应对来自父辈管理层的经
    华尔街科技眼 2025-05-06 18:17 27浏览
  • 飞凌嵌入式作为龙芯合作伙伴,隆重推出FET-2K0300i-S全国产自主可控工业级核心板!FET-2K0300i-S核心板基于龙芯2K0300i工业级处理器开发设计,集成1个64位LA264处理器,主频1GHz,提供高效的计算能力;支持硬件ECC;2K0300i还具备丰富的连接接口USB、SDIO、UART、SPI、CAN-FD、Ethernet、ADC等一应俱全,龙芯2K0300i支持四路CAN-FD接口,具备良好的可靠性、实时性和灵活性,可满足用户多路CAN需求。除性价比超高的国产处理器外,
    飞凌嵌入式 2025-05-07 11:54 65浏览
  • 硅二极管温度传感器是一种基于硅半导体材料特性的测温装置,其核心原理是利用硅二极管的电学参数(如正向压降或电阻)随温度变化的特性实现温度检测。以下是其工作原理、技术特点及典型应用:一、工作原理1、‌PN结温度特性‌硅二极管由PN结构成,当温度变化时,其正向电压 VF与温度呈线性负相关关系。例如,温度每升高1℃,VF约下降2 mV。2、‌电压—温度关系‌通过jing确测量正向电压的微小变化,可推算出环境温度值。部分型号(如SI410)在宽温域内(如1.4 K至475 K)仍能保持高线性度。
    锦正茂科技 2025-05-09 13:52 119浏览
我要评论
0
0
点击右上角,分享到朋友圈 我知道啦
请使用浏览器分享功能 我知道啦