分享

AUTOSAR软件组件的简要概述

 yeshuheng 2022-09-08 发布于浙江

图片
来源:智能汽车开发者平台
作者:明琴

在这篇文章中,我们将讨论AUTOSAR方法中的软件组件的概念。

什么是软件组件?

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

AUTOSAR软件组件(SW-C)

AUTOSAR 应用程序涉及相互连接的软件组件。它们中的每一个都封装了整个应用的一部分功能。AUTOSAR规定了允许几个AUTOSAR软件组件在涉及网络ECU的基础设施中正确集成所需的一切。
一个AUTOSAR软件由以下部分组成:
  • 正式的软件组件描述,指定基础设施必须如何为该组件配置。
  • 作为目标代码或源代码的软件组件的执行。
AUTOSAR SW-C描述
AUTOSAR SW-C 是以 .arxml 文件格式描述的。该描述的结构被称为软件组件模板,它包含:
  • 软件组件提供和要求的操作和数据元素,
  • 该软件组件对基础设施和所需资源的要求(服务),
  • 关于该软件组件实施的信息。
图片
SW-C描述是通过AUTOSAR编写工具生成的,或者使用文本编辑器手动编写。.arxml 文件将由描述软件组件的标准 AUTOSAR XML 标签组成。

AUTOSAR SW-C的执行

在SW-C描述的必要部分如内部行为准备好后,可以使用组件API生成器(可以是RTE生成器)生成SW-C的API。有了C头文件,SW-C的功能就可以独立实现,并且可以生成C源文件。
图片
对于经典的AUTOSAR应用来说,软件组件的实现通常是在C源文件中完成的。

通信机制

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

客户端-服务器通信

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

发送者-接收者通信

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

端口和接口

为了实现多个软件组件之间的通信,AUTOSAR 将端口定义为软件组件之间的交互点。只有通过端口,一个软件组件才能与另一个软件组件互动。根据通信的性质,端口可以是PP端口(提供某种东西的端口)或R端口(需要某种东西的端口)。请注意,端口是特定于一个软件组件的。
图片
一个使用客户端-服务器接口的提供类端口的例子。
图片
一个使用发送者-接收者接口提供类端口的例子。
通过端口,可以确定哪些软件组件是相互作用的。但它们是如何互动的呢?为了解释一个软件组件的端口所提供或要求的服务/数据,AUTOSAR引入了接口概念。有不同种类的接口选项,为实现发送方-接收方通信,需要使用发送方-接收方接口。同样,当需要从软件组件中请求服务时,也要使用客户端-服务器接口。请注意,接口不是特定于一个软件组件及其端口的。
图片
发送者-接收者接口的例子
图片
客户端-服务器接口的一个例子
当一个软件组件的PP端口提供一个接口时,这意味着该端口所属的软件组件提供了客户端-服务器接口中定义的操作的执行,要么生成面向数据的发送者-接收者接口中描述的数据。
图片
AUTOSAR为端口接口定义了特定的形状,这样就可以在AUTOSAR编写工具或文档中一目了然地了解SW-C的结构。

关于AUTOSAR软件组件的更多信息

有不同类型的AUTOSAR软件组件,其中传感器/执行器软件组件是一个特殊类型。这些组件依赖于特定的传感器和/或执行器,但不依赖于它们所映射的ECU。出于性能考虑,这类组件被映射到传感器/执行器实际连接的ECU上。一般来说,AUTOSAR软件组件的实现独立于基础硬件。

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多