0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

讨论AUTOSAR方法中的软件组件的概念

工程师邓生 来源:智能汽车开发者平台 作者:明琴 2022-09-08 17:43 次阅读

什么是软件组件?

一般来说,一个软件应用程序可以被分解成若干部分,以减少整个应用程序的复杂性。这些部分,或者说组件,以一种标准化的方式相互作用,这使得组件可以像机器的可替换部件一样被换入或换出。基于分层的方法是降低整体设计复杂性的另一种方式。AUTOSAR基础设施从这两种方法中获益。

51aec97a-2f57-11ed-ba43-dac502259ad0.png

AUTOSAR允许在RTE之上进行基于组件的软件设计,并对BSW采用分层方法。

AUTOSAR软件组件(SW-C)

AUTOSAR 应用程序涉及相互连接的软件组件。它们中的每一个都封装了整个应用的一部分功能。AUTOSAR规定了允许几个AUTOSAR软件组件在涉及网络ECU的基础设施中正确集成所需的一切。 一个AUTOSAR软件由以下部分组成:

正式的软件组件描述,指定基础设施必须如何为该组件配置。

作为目标代码或源代码的软件组件的执行。

AUTOSAR SW-C描述 AUTOSAR SW-C 是以 .arxml 文件格式描述的。该描述的结构被称为软件组件模板,它包含:

软件组件提供和要求的操作和数据元素,

该软件组件对基础设施和所需资源的要求(服务),

关于该软件组件实施的信息

51be9364-2f57-11ed-ba43-dac502259ad0.png


SW-C描述是通过AUTOSAR编写工具生成的,或者使用文本编辑器手动编写。.arxml 文件将由描述软件组件的标准 AUTOSAR XML 标签组成。

AUTOSAR SW-C的执行

在SW-C描述的必要部分如内部行为准备好后,可以使用组件API生成器(可以是RTE生成器)生成SW-C的API。有了C头文件,SW-C的功能就可以独立实现,并且可以生成C源文件。

51e5018e-2f57-11ed-ba43-dac502259ad0.png

对于经典的AUTOSAR应用来说,软件组件的实现通常是在C源文件中完成的。

通信机制

被广泛采用两个的通信模式是客户端-服务器和发送器-接收器。首先谈谈这些通信模式,以便能够了解AUTOSAR是如何支持这两种模式的。

客户端-服务器通信

在这种通信模式中,客户端请求一个服务,服务器执行该服务。如果客户端等待服务器完全解决该请求,那么该通信被称为同步通信,否则,如果客户端没有被阻止,那么它被称为异步通信。 在AUTOSAR背景下,SW-C可以作为客户端或服务器或两者。通信的启动方向被用来划分SW-C是客户端还是服务器。

520d4a18-2f57-11ed-ba43-dac502259ad0.png

多个客户端可以从一个服务器上请求一个服务。该服务通常是在另一个软件组件中实现的C函数,它被称为 "操作"。

发送者-接收者通信

在这种通信模式中,发送方永远不会被拦截,接收方自主决定何时和如何使用发送方发送的信息。 在 AUTOSAR 上下文中,发送方 SW-C 并不期望从接收方 SW-C 得到响应。与流量控制和信息分配有关的后勤问题由AUTOSAR软件栈中的通信基础设施处理。发送方SW-C也不知道接收方的身份,甚至不知道接收方的数量。

521ff46a-2f57-11ed-ba43-dac502259ad0.png

发送方SW-C将放送数据,所有接收方SW-C将随意获得该数据。

端口接口

为了实现多个软件组件之间的通信,AUTOSAR 将端口定义为软件组件之间的交互点。只有通过端口,一个软件组件才能与另一个软件组件互动。根据通信的性质,端口可以是PP端口(提供某种东西的端口)或R端口(需要某种东西的端口)。请注意,端口是特定于一个软件组件的。

522b2ec0-2f57-11ed-ba43-dac502259ad0.png


一个使用客户端-服务器接口的提供类端口的例子。


523a5382-2f57-11ed-ba43-dac502259ad0.png

一个使用发送者-接收者接口提供类端口的例子。 通过端口,可以确定哪些软件组件是相互作用的。但它们是如何互动的呢?为了解释一个软件组件的端口所提供或要求的服务/数据,AUTOSAR引入了接口概念。有不同种类的接口选项,为实现发送方-接收方通信,需要使用发送方-接收方接口。同样,当需要从软件组件中请求服务时,也要使用客户端-服务器接口。请注意,接口不是特定于一个软件组件及其端口的。

52561b94-2f57-11ed-ba43-dac502259ad0.png

发送者-接收者接口的例子

526715ac-2f57-11ed-ba43-dac502259ad0.png

客户端-服务器接口的一个例子 当一个软件组件的PP端口提供一个接口时,这意味着该端口所属的软件组件提供了客户端-服务器接口中定义的操作的执行,要么生成面向数据的发送者-接收者接口中描述的数据。 5280759c-2f57-11ed-ba43-dac502259ad0.png

AUTOSAR为端口接口定义了特定的形状,这样就可以在AUTOSAR编写工具或文档中一目了然地了解SW-C的结构。



审核编辑:刘清

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 服务器
    +关注

    关注

    12

    文章

    9015

    浏览量

    85169
  • AUTOSAR
    +关注

    关注

    10

    文章

    350

    浏览量

    21466
  • ecu
    ecu
    +关注

    关注

    14

    文章

    880

    浏览量

    54397

原文标题:AUTOSAR软件组件的简要概述

文章出处:【微信号:智能汽车电子与软件,微信公众号:智能汽车电子与软件】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    极海正式推出自研AUTOSAR MCAL软件包和配置工具,加速汽车创新应用量产落地

    开发技术和综合服务能力,成为国内为数不多可以开发和提供符合AUTOSAR标准的软硬件的汽车芯片设计企业之一。 什么是AUTOSAR MCAL? AUTOSAR是一个全球性的合作项目,旨在为汽车电子控制单元(ECU)的
    发表于 11-20 13:45 70次阅读
    极海正式推出自研<b class='flag-5'>AUTOSAR</b> MCAL<b class='flag-5'>软件</b>包和配置工具,加速汽车创新应用量产落地

    极海半导体推出AUTOSAR MCAL软件包和配置工具

    开发技术和综合服务能力,成为国内为数不多可以开发和提供符合AUTOSAR标准的软硬件的汽车芯片设计企业之一。 什么是AUTOSAR MCAL? AUTOSAR是一个全球性的合作项目,旨在为汽车电子控制单元(ECU)的
    的头像 发表于 11-17 16:42 331次阅读
    极海半导体推出<b class='flag-5'>AUTOSAR</b> MCAL<b class='flag-5'>软件</b>包和配置工具

    AUTOSAR架构下,持续集成CI的最佳实践

    随着汽车电子技术的快速发展,汽车软件的复杂性与日俱增,如何确保软件开发的高效性与稳定性成为了一个关键问题。为了解决这个问题,许多汽车企业和供应商逐渐引入了AUTOSAR架构,并在此基础上构建了持续
    的头像 发表于 10-24 08:06 380次阅读
    <b class='flag-5'>AUTOSAR</b>架构下,持续集成CI的最佳实践

    Vector AUTOSAR的TISCI服务器集成

    电子发烧友网站提供《Vector AUTOSAR的TISCI服务器集成.pdf》资料免费下载
    发表于 08-30 11:16 0次下载
    Vector <b class='flag-5'>AUTOSAR</b><b class='flag-5'>中</b>的TISCI服务器集成

    首款支持AUTOSAR车规MCU亮相AUTOSAR中国日

    8月5日,由盖世汽车、AUTOSAR组织联合主办的2022第三届软件定义汽车论坛暨AUTOSAR中国日于武汉光谷成功举办。论坛围绕车用基础软件发展方向、SOA架构、多域融合OS、中央计
    的头像 发表于 07-02 15:56 437次阅读
    首款支持<b class='flag-5'>AUTOSAR</b>车规MCU亮相<b class='flag-5'>AUTOSAR</b>中国日

    接口测试的概念和重点是什么?

    一、接口测试的概念 接口测试是一种软件测试方法,主要用于验证软件系统之间的交互是否符合预期。在现代软件开发
    的头像 发表于 05-30 15:08 630次阅读

    Aurix Development Studio来构建Autosar MCAL FW,构建\"IfxGtm_reg.h\" 时总是出错怎么解决?

    我使用 Aurix Development Studio 来构建 Autosar MCAL FW,在构建\"IfxGtm_reg.h\" 时总是出错。 \"- 语法错误
    发表于 05-29 07:34

    AUTOSAR MCAL驱动程序与演示程序的Libraries的驱动程序有什么不同之处?

    1.关于 AUTOSAR MCAL 驱动程序 与演示程序的 Libraries 的驱动程序 有什么不同之处? 2.AUTOSAR MCAL 驱动程序
    发表于 05-17 06:55

    Bladed软件的使用问题讨论

    你们使用Bladed软件有出现这种情况过吗?有使用过此软件的大家可以讨论一下吗?
    发表于 05-08 17:34

    Elektrobit已正式推出现成的Classic AUTOSAR和OSEK软件和服务

    Elektrobit现已正式推出现成的Classic AUTOSAR和OSEK软件和服务。无论您的项目大小,我们都能根据您的需求提供可靠且互通的解决方案,同时支持多个汽车制造商规范,并有助于降低软件开发成本。
    的头像 发表于 03-26 10:03 395次阅读

    经纬恒润出席2024第五届软件定义汽车论坛暨AUTOSAR中国日

    近日,由盖世汽车与AUTOSAR组织共同主办的“2024第五届软件定义汽车论坛暨AUTOSAR中国日”圆满闭幕。大会围绕车载通信解决方案、SOA架构、车云计算、智驾域中间件、高性能计算软件
    的头像 发表于 03-19 08:00 365次阅读
    经纬恒润出席2024第五届<b class='flag-5'>软件</b>定义汽车论坛暨<b class='flag-5'>AUTOSAR</b>中国日

    加特兰深度解析基于AUTOSAR的芯片基础软件开发模式

    3月12日,第五届软件定义汽车论坛暨AUTOSAR中国日活动在上海召开。本次活动由AUTOSAR组织及盖世汽车联合举办,聚焦软件定义汽车(Software-Defined Vehicl
    的头像 发表于 03-13 14:05 624次阅读

    SR5E1 AUTOSAR MCAL技术解决方案分享

    AUTOSAR(AUTomotive Open System Architecture)是一种开放和标准化的汽车软件架构,支持汽车电控单元(ECU)软件框架,由汽车制造商及其供应商和来自半导体和
    的头像 发表于 02-21 18:26 1045次阅读
    SR5E1 <b class='flag-5'>AUTOSAR</b> MCAL技术解决方案分享

    AUTOSAR Builder—符合AUTOSAR(CPAP)的嵌入式系统设计工具

    的工具并与其他工具供应商进行集成。AUTOSAR Builder在此基础上新增了多个工具套件,更加能够贴合不同用户角色(OEM、Tier1)的使用场景和研发流程,覆盖基于AUTOSAR软件研发的各个环节。
    的头像 发表于 01-08 18:06 526次阅读
    <b class='flag-5'>AUTOSAR</b> Builder—符合<b class='flag-5'>AUTOSAR</b>(CPAP)的嵌入式系统设计工具

    AUTOSAR架构复杂驱动设计

    复杂驱动(Complex Driver,CDD)是一种不受 AUTOSAR 标准化约束的软件实体,它可以通过 AUTOSAR 接口和/或基础软件模块 API 进行访问
    的头像 发表于 12-21 10:13 4208次阅读
    <b class='flag-5'>AUTOSAR</b>架构<b class='flag-5'>中</b>复杂驱动设计