AUTOSAR_CP_SWS_E2ETransformer

概述

本规范规定了AUTOSAR基础软件模块E2E转换器的功能、API和配置。
E2E转换器封装了E2E保护配置和处理的复杂性,并提供了标准的转换器接口。由于这一点,E2E转换器的调用方不需要知道E2E内部。
根据【1,SRS变压器概述】,E2E转换器属于“安全”类,并基于【2,ASWS转换器概述】中的规范。
E2E转换器通过QM通信堆栈确保I信号的正确通信。通信堆栈被视为“黑色通道”通信。如果接收SW-C没有评估E2E转换器的返回代码,则SW-C可能使用损坏的数据。
E2E转换器基于其配置来实例化E2E配置和E2E状态数据结构。E2E转换器负责基于特定数据元素(I信号)的配置来调用E2E库。
不存在数据分割/合并,即一个i信号不是由几个数据元素组成的,一个数据元素不是由几个i信号组成的。在发送方,一个数据元素精确地一对一地映射到I信号。在接收机侧,一个或多个数据元素表示整个接收到的I信号。存在到接收器侧上的一个或多个数据元素的扇出I信号。

缩写

以下术语表包括与通信管理相关的缩写词和缩写词,这些缩写词和缩略词未包含在[3, TR_Glossary]中。

引用文档

输入文件及相关标准规范

[1] Requirements on Transformer
[[AUTOSAR_CP_SRS_Transformer]]

[2] General Specification of Transformers
[[AUTOSAR_CP_ASWS_TransformerGeneral]]

[3] Glossary
[[AUTOSAR_FO_TR_Glossary]]

[4] System Template
AUTOSAR_CP_TPS_SystemTemplate

[5] E2E Protocol Specification
[[AUTOSAR_FO_PRS_E2EProtocol]]

[6] Specification of SW-C End-to-End Communication Protection Library
[[AUTOSAR_CP_SWS_E2ELibrary]]

[7] General Specification of Basic Software Modules
AUTOSAR_CP_SWS_BSWGeneral

[8] Software Component Template
AUTOSAR_CP_TPS_SoftwareComponentTemplate

[9] SOME/IP Protocol Specification
AUTOSAR_FO_PRS_SOMEIPProtocol

[10] Specification of RTE Software
AUTOSAR_CP_SWS_RTE

相关规范

AUTOSAR提供了转换器通用规范[2, ASWS_TransformerGeneral],该规范也适用于E2E转换器。因此,规范[2, ASWS_TransformerGeneral]应被视为E2E转换器的附加和要求规范。

约束和假设

限制

关于E2E保护和可检测故障模式的一般限制在[5,PRS_E2EProtocol]中进行了描述。
此外,已知以下限制:

  1. 尚未指定向DEM报告错误。

适用于汽车领域

E2E转换器适用于安全相关通信。

对其它模块的依赖性

E2E转换器取决于[6,SWS E2ELibrary]。E2E库提供数据类型和无状态函数。E2E转换器执行将配置和状态作为功能参数传递的E2E库例程。

支持的配置变体

除了[7,SWS_BSWGeneral]和[2,ASWS_TransformerGeneral]中指定的设置外,目前没有明确的预编译时配置设置。

功能规范

E2E转换器负责保护与安全相关的数据元素。在数据提供侧,转换器E2E保护数据。在接收侧,E2E转换器E2E检查数据,通过RTE将E2E检查的结果提供给SW-C。在接收侧的E2E转换器被称为反向E2E转换器。
E2E转换器由RTE调用。
所有算法均由[6,SWS E2ELibrary](保护、检查、转发、状态机)提供。E2E转换器调用E2E库函数并提供要使用的配置和状态。
无论接收SW-C是否读取转换器返回代码,总线上的数据是否受E2E保护对通信SWCs都是透明的。
每个待E2E保护或E2E测试的I信号组需要至少一个E2E转换器或反向E2E转换器功能。
在很大程度上生成了E2E转换器,其中生成了配置数据结构和功能。配置输入可在[4,TPS_SystemTemplate]和[8,TPS_SoftwareComponentTemplate]中找到。E2E转换器不需要特定的ECU配置,因为其整个配置基于E2ETransformationDescription、E2ETranslationISignalProps和E2ETransformationComSpecProps。因此,[2,ASWS_TransformerGeneral]的通用ECU配置就足够了。
如果出现以下情况,则应将本文件中定义的E2E转换器用作转换器:

  1. 将TransformationTechnology的属性协议设置为E2E。
  2. 并且TransformationTechnology的属性版本被设置为1.0.0。
  3. 并且TransformationTechnology的属性transformerClass设置为安全。

E2E transformer支持以下类型的通信:
•基于信号的通信
•与事件的面向服务的通信(发布者/订阅者)
•与方法的面向服务通信(客户端/服务器架构)

此外,还支持基于信号和面向服务的通信之间的转换:
•信号到服务的翻译
注意:E2E字段的处理方式与通知程序中的事件或获取/设置请求中的方法相同。
对于基于信号的通信,发送器/接收器原理用于传输受E2E保护的数据。在接收侧,对接收到的消息进行E2E检查。
对于面向服务的与事件的通信,对发布者/订阅者模式采用了E2E保护。通常应用的E2E检查与基于信号的通信相同。
对于采用方法的面向服务的通信,客户端/服务器模式采用了E2E保护。对于,

  1. 请求(无论是否期望响应),通常应用的E2E检查与基于信号的通信相同。
  2. 在发送对请求的响应时,需要考虑额外的通信步骤。基于请求的检查结果,正常响应或错误响应被回复为E2E保护数据。
  3. 响应(无论是正常响应还是错误响应),通常应用的E2E检查与基于信号的通信相同。此外,可以在接收应用程序的级别上添加最后期限监控。
    信号到服务的转换意味着网络内通信类型的改变。虽然提供的数据是基于信号的消息,但接收方期望的是面向服务的消息,反之亦然。通过信号到服务的转换,提供了两种不同通信类型之间的映射以及E2E状态的映射。有关信号到服务翻译的详细信息,请参阅[信号到服务转换的E2E]章节。
    对于不同类型的通信,E2E处理通常是相同的,但在细节上有所不同。

支持的RTE功能

目前,支持以下ECU间通信功能:

  1. Rte_Write/Rte_Read
  2. Rte_IWrite/Rte_IRead
  3. Rte_Send/Rte_Receive
  4. Rte_Call/Rte_Result

序列图

E2E用于发送器/接收器

发送E2E保护信号

在这里插入图片描述

接收E2E保护信号(激活模式)

以下序列图显示了如何在接收方实现用于数据传输和激活可运行实体(激活模式)的发送方/接收方通信(参见[10,CP_SWS_RTE]中的图“具有事件语义的发送方-接收方通信和作为接收机制的可运行实体的激活”)。
在这里插入图片描述

信号到服务转换的E2E(轮询模式)

下面的时序图显示了发送方/接收方如何进行数据通信接收端可以实现轮询方式传输(参见[10,CP_SWS_RTE]“发送端接收方通信的数据语义和 dataReceivePointByArgument 为接收机制”)。
在这里插入图片描述

E2E事件

下面的序列显示了发布者/订阅者模式。当事件更新时,所有订阅者都会收到更新消息。RTE调用SomeIp转换器(序列化)和E2E转换器进行E2E保护.

发送E2E保护事件

在这里插入图片描述

接收E2E保护事件(激活模式)

以下序列图显示了用于数据传输的发布者/订阅者通信,以及可以在订阅者侧实现可运行实体的激活(激活模式)(参见[10,CP_SWS_RTE]中的图“具有事件语义的发送方-接收方通信和可运行实体作为接收机制的激活”)。在这种模式下,消息的接收触发RTE调用订户的应用程序。
在这里插入图片描述

受E2E保护的事件出现在COM。RTE检索消息,调用E2E转换器检查是否存在E2E错误,如果没有E2E错误则调用SomeIp转换器进行反序列化。在E2E错误的情况下,不更新订阅者,在没有E2E错误情况下,订阅者获得事件的更新值。

反向E2E变压器和反向SOM/IP变压器按顺序运行。链中变压器的行为和可能的错误在[2,ASWS_TransformerGeneral]的“错误处理”一章中进行了描述。

接收E2E保护事件(轮询模式)

以下序列图显示了可以在订户侧实现轮询模式下的数据传输的发布者/订户通信(参见[10,CP_SWS_RTE]中的图“具有事件语义和dataReceive-PointByArgument作为接收机制的发送方-接收方通信”)。
在这里插入图片描述

E2E用于方法调用/方法响应

在这里插入图片描述

SWC调用一个在其他地方执行的远程方法。这是一个异步调用。当在远程端执行远程方法时,客户端应用程序不会被阻止。客户端应用程序的调用首先由RTE处理。此调用在被发送到执行它的远程位置之前是受E2E保护的。因此RTE调用SomeIp转换器进行串行化,然后调用E2E转换器添加E2E保护。受E2E保护的消息通过网络发送到其目的地。

接收并响应E2E保护方法调用

在这里插入图片描述

受E2E保护的消息来自COM,并转发到RTE。RTE调用E2E转换器来检查E2E错误,然后-如果没有E2E错误-SomeIp转换器进行反序列化。E2E检查的结果决定是否调用了远程函数。在E2E错误的情况下,没有调用。在这两种情况下(E2E错误/无E2E错误),都会设置响应/错误消息,并在发送回之前对其进行序列化和E2E保护。

接收对方法调用的E2E保护响应

在这里插入图片描述

受E2E保护的响应消息来自COM,并转发到RTE。
RTE调用E2E转换器,然后调用SomeIp转换器来检查E2E错误。在E2E错误的情况下,向客户端应用程序提供错误消息。因此,客户端应用程序被告知没有从远程返回有效值。在没有E2E错误的情况下,客户端应用程序可以使用作为响应消息提供的结果值。

信号到服务转换中的E2E

以下序列显示了带有E2E保护的信号到服务转换。
在这里插入图片描述

翻译应用程序创建一个新消息,该消息由反序列化的数据和E2E结果构建而成。如果这个E2E结果是一个错误,那么以这种方式建立新消息,它也将在其接收器处调用E2E错误。

  • 7
    点赞
  • 25
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Jetty.Liu

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值