Specification of Communication, AUTOSAR 15,  R22-11, CP 20230421

AUTOSARは自動車用OSの業界団体規格です。　
業務で利用する場合には、会員になることを条件にしています。

2002年から20年経ち、当初の狙いの段階に近づいてきました。

MATLABでモデルさえ記述すれば、あとは自動生成だけでソフトが完成するところまで、あと一歩です。
Ethernet, UNIXが生まれて20年で大衆化したのと同じように考えると分かりやすいでしょう。　

AUTOSARの上で動く、クラウド対応のミドルウェアが出て、開発も運用もクラウドになれば、一気にAUTOSARは大衆化するでしょう。

AUTOSAR Abstract Platformへの道 R22-11

https://qiita.com/kaizen_nagoya/items/8ac2826635a8c536c7ec

AUTOSARは、ISO、IEC、ITUと情報交換契約を結んでいません。
AUTOSAR文書には、ISO、IEC,ITU記述を全文引用することはできません。
WTO/TBT協定に基づき、国際的な調達は国際規格との差異を記述することにより文化依存しない仕様を目指します。
ISO、IEC、ITU文書を合わせて読むと技術内容は理解できます。　
CAN、OSEK/VDX OS、DIAGは、ISO定義を先に確認しましょう。　　
OSEK COM、OSEK NMなどはISOの規定から、基本的な部分でAUTOSARでは定義を変えています。
AUTOSARで変更している部分を仕様等で明記するか、ISOを改定するとよいでしょう。　

AUTOSARの参考文献欄の改定が進んでいません。　
Glossary用語定義の網羅性が低いです。
本文を読む前に確認するとよいかもしれません。
本文を読んでから確認してもよいかもしれません。

 ＜この記事は書きかけです。順次追記します。＞
 This article is not completed. I will add some words in order.


# 2023年4月URL変更
この項は2023年4月21日、AUTOSARの文書のURLが変更になった。
/classic/22-11/
が
/R22-11/CP/
過去記事で、URLでエラーが出たら書き換えてみてください。

/adaptive/22-11/
は　
/R22-11/AP/

/foundation/22-11/
は　
/R22-11/FO/
です。
## 2022年11月URL変更
2022年11月にもAUTOSAR文書のURLが変更になっている。
/user_upload/standards/classic/21-11/
を
/standards/R21-11/CP/
などに書き換えてください。

/user_upload/standards/adaptive/21-11/
を
/standards/R21-11/AP/

/user_upload/standards/foundation/21-11/
を
/standards/R21-11/FO/

お手数をおかけします。
１年に２度URLを変更するなんて、新しい記事が書ける。とても嬉しい。

# 一覧

１年に２度URLを変更するなんて、新しい記事が書ける。とても嬉しい。

AUTOSAR R22-11 Qiita記事一覧 20230421 。

https://qiita.com/kaizen_nagoya/items/81a35774f1aa3d64d3f6

分量が多く２分割しました。

AUTOSAR R22-11 Qiita記事一覧 20230421(2)
https://qiita.com/kaizen_nagoya/items/b3b992ec1885ad29801a

記事の表題の最後に「20230421」を加えます。

<この項は書きかけです。順次追記します。>

AUTOSARが、2022年の版、R22-11を公開しました。

https://www.autosar.org/fileadmin/standards/R22-11/CP/AUTOSAR_SWS_COM.pdf

R21-11

https://www.autosar.org/fileadmin/standards/R21-11/CP/AUTOSAR_SWS_COM.pdf

R20-11

https://www.autosar.org/fileadmin/standards/R20-11/CP/AUTOSAR_SWS_COM.pdf

R19-11

https://www.autosar.org/fileadmin/standards/R19-11/CP/AUTOSAR_SWS_COM.pdf

https://www.autosar.org/

文書は検索してダウンロードできます。

R20-11,R21-11, R22-11の３年分だけになりました。


公開行事の模様は

AUTOSAR R22-11 Release Event 20221208

https://qiita.com/kaizen_nagoya/items/18471d0b340480fdcd42


AUTOSAR R22-11 Classic Platform 一覧はこちら。


Classic Platform Release Overview, AUTOSAR No.0 ,R22-11, CP, 20230421

https://qiita.com/kaizen_nagoya/items/9d22c8722cbc0f42b137


# Abstract Platformとの関係

メモリの抽象モデルを、コンパイル時、リンク時、実行時、退避時について一貫して扱う。

Specification of Communication, AUTOSAR R22-11, CP, No.15

AUTOSARが、2022年の版、R22-11公開しました。公開行事の模様は

AUTOSAR R22-11 Release Event 20221208

https://qiita.com/kaizen_nagoya/items/18471d0b340480fdcd42



# OSEK COM およびAUTOSAR COM

OSEK/VDX Communication Version 3.0.3

https://www.osek-vdx.org/mirror/OSEKCOM303.pdf

INTERACTION LAYERという名前は OSEK/VDX COMから来ている。

OSEK Table 2-1: Message filter algorithms

|Algorithm Reference|Algorithm|Description|
|:--|:--|:--|
|F_Always|True|No filtering is performed so that the message always passes
|F_Never|False|The filter removes all messages
|F_MaskedNewEqualsX|(new_value&mask) == x|Pass messages whose masked value is equal to a specific value
|F_MaskedNewDiffersX|(new_value&mask) != x|Pass messages whose masked value is not equal to a specific value
|F_NewIsEqual|new_value == old_value|Pass messages which have not changed
|F_NewIsDifferent|new_value != old_value|Pass messages which have changed
|F_MaskedNewEqualsMaskedOld|(new_value&mask) == (old_value&mask)|Pass messages where the masked value has not changed
|F_ MaskedNewDiffersMaskedOld|(new_value&mask) != (old_value&mask)|Pass messages where the masked value has changed
|F_NewIsWithin|min <= new_value <= max|Pass a message if its value is within a predefined boundary
|F_NewIsOutside|(min > new_value) OR (new_value > max)|Pass a message if its value is outside a predefined boundary
|F_NewIsGreater|new_value > old_value|Pass a message if its value has increased
|F_NewIsLessOrEqual|new_value <= old_value|Pass a message if its value has not increased
|F_NewIsLess|new_value < old_value|Pass a message if its value has decreased
|F_NewIsGreaterOrEqual|new_value >= old_value|Pass a message if its value has not decreased
|F_OneEveryN|occurrence % period == offset|Pass a message once every N message occurrences.Start: occurrence = 0.Each time the message is received or transmitted, occurrence is incremented by 1 after filtering.Length of occurrence is 8 bit (minimum).

ISO OSEK/VDX と AUTOSARの大きな違いを４つあげれば、

AUTOSAR はOSを拡張している。
COMとNMが違う。　
RTEを定義している。
OIL(OSEK Implementation Language)ではなくARXMLで幅広い設定ができる。

|Function|ISO OSEK/VDX|AUTOSAR|
|:--|:--|:--|
|Filter|定義|参照|
|VFB|COM|RTE|





COMの違いは、RTEを定義していることにもよる。

それ以外にも、AUTOSARにはISO OSEK/VDXにない機能がいろいろあるが、　
OS、COM、NMが関係しているのは

# Abstract Platform との関係　

ISO 各種規格に基づいた診断、通信の抽象的な定義をする。

必要があれば国際規格を改定する。
# 文書変更(Document Change) 
> Removed I-PDU counter and I-PDU replication
 Added support for independent de- velopment of CP Software Clusters
 minor corrections / clarifications / editorial changes

# 用語(terms)

|Term|Description|
|:--|:--|
|AUTOSAR COM |The AUTOSAR COM module is derived from [17]. For details, see Chapter 7.2.1.
|DM |Deadline Monitoring, for details see Chapter 7.3.6
|I-PDU |Interaction Layer Protocol Data Unit. An I-PDU carries signals. It is defined in [17].
|L-PDU |Data Link Layer Protocol Data Unit. In AUTOSAR, the Data Link Layer is equivalent to the Communication Hardware Abstraction and Microcontroller Abstraction Layer.
|MDT |A detailed description of the Minimum Delay Timer (MDT) can be found in [17]. See also Chapter 7.3.5.5.
|PDU Router |The PDU Router is a module transferring I-PDUs from one module to another module. The PDU Router can be utilized for gateway operations and for internal routing purposes.
|SDU |Service Data Unit For a description see [1] Chapter 4.
|TM |Transmission Mode
|TMC |Transmission Mode Condition, see Chapter 7.3.3.2
|TMS |Transmission Mode Selector, see Chapter 7.3.3.2
|Confirmation| With a Confirmation, the PDU Router reports that a request by the AUTOSAR COM module has been completed successfully. It is a reaction to a request of COM. E.g. when a PDU has been successfully transmitted.
|Data Invalid Value| Value sent by the AUTOSAR COM module to indicate that the sender side AUTOSAR Software Component is not able to provide a valid value.
|Dynamic Length Signal|A dynamic length signal is a signal which length can vary at run-time.
|Dynamic Length I-PDU|A dynamic length I-PDU is an I-PDU containing a dynamic length signal. It length varies depending on the length of the included dynamic length signal.
|Group signal |A group signal is a signal that is contained in a signal group.
|Indication| An Indication is asynchronous information from PDU Router to COM, e.g. to acknowledge that something has been received.
|Init Value| I-PDUs and signals are set to the Init Value by the AUTOSAR COM module after start-up. This value is used until it is overwritten.
|I-PDU group |An I-PDU Group is an arbitrary collection of I-PDUs of the same direction (i.e. send or receive) in the COM module.
|Inter-ECU – communication|Communication between two or more ECUs for example via a CAN network Intra-ECU – communication|Communication between Software components that reside on the same ECU
|Large Signal| A large signal is a signal that is too large to fit into a single L-PDU of the underlying communication protocol.
|Large I-PDU| Large I-PDUs are I-Signal-I-PDUs which do not fit into a single L-PDU of the underlying communication protocol. Large I-PDUs will be handled like other  I-PDUs by COM, but are transmitted/received via the TP API. Please note that large I-PDUs can also be handled in a more efficient way by LargeDataCOM if they contain just one signal, or if the signals can be (de- )serialized by the RTE. But if the signals have to be treated separately or have to be routed, the large I-PDUs have to be handled by COM.
|Message |[17] uses always the synonym message. In AUTOSAR, message is replaced by signal but with the same meaning.
|Metadata |For some I-PDUs, e.g. J1939 I-PDUs, the payload is extended with additional metadata containing for example the CAN-ID. Notification Information by the AUTOSAR COM module to its users (e.g. RTE, SwCluC), e.g. when new data is available, an error occurred.
|Signal| A signal in the AUTOSAR COM module’s context is equal to a message in [17]; see also [7].
|Signal group |In AUTOSAR, so called complex data types are used. Inside a complex data type, there are one or more data elements (primitive data types), like in a C struct. The data consistency of such complex data types must be ensured. The user (e.g. RTE or SwCluC) decomposes the complex data type in single signals and sends them to the AUTOSAR COM module. As these signals altogether need to be treated consistently, they are called signal group. See also [7].
|Update-bit |A mechanism supported by the AUTOSAR COM module with that the receiver of a signal/ signal group could identify whether the sender has updated the data in this signal/ signal group before sending. See Chapter 7.9.

## 英日単語帳
日本語は仮訳

T.B.D.

## 参考(reference)

[1] AUTOSAR Layered Architecture
AUTOSAR_EXP_LayeredSoftwareArchitecture.pdf
[2] Specification of Communication Stack Types
AUTOSAR_SWS_CommunicationStackTypes.pdf
[3] General Requirements on Basic Software Modules
AUTOSAR_SRS_BSWGeneral.pdf
[4] Basic Software UML Model
AUTOSAR_MOD_BSWUMLModel.eap
[5] Specification of Standard Types
AUTOSAR_SWS_StandardTypes.pdf
[6] Specification of the Virtual Functional Bus
AUTOSAR_EXP_VFB.pdf
[7] Requirements on Communication
AUTOSAR_SRS_COM.pdf
[8] Software Component Template
AUTOSAR_TPS_SoftwareComponentTemplate.pdf
[9] Requirements on Gateway
AUTOSAR_SRS_Gateway.pdf
[10] Specification of PDU Router
AUTOSAR_SWS_PDURouter.pdf
[11] Specification of Operating System
AUTOSAR_SWS_OS.pdf
[12] System Template
AUTOSAR_TPS_SystemTemplate.pdf
[13] Specification of RTE Software
AUTOSAR_SWS_RTE.pdf
[14] Specification of ECU Configuration
AUTOSAR_TPS_ECUConfiguration.pdf
[15] Specification of Communication Manager
AUTOSAR_SWS_COMManager.pdf
[16] AUTOSAR Basic Software Module Description Template
AUTOSAR_TPS_BSWModuleDescriptionTemplate.pdf
[19] Specification of CAN Transport Layer
AUTOSAR_SWS_CANTransportLayer.pdf
[20] Specification of FlexRay Transport Layer
AUTOSAR_SWS_FlexRayTransportLayer.pdf
[21] List of Basic Software Modules,
AUTOSAR_TR_BSWModuleList.pdf
[22] Generic Structure Template
AUTOSAR_TPS_GenericStructureTemplate.pdf
[23] General Specification of Basic Software Modules
AUTOSAR_SWS_BSWGeneral.pdf
[24] Specification of Software Cluster Connection
AUTOSAR_SWS_SoftwareClusterConnection.pdf
[17] ISO 17356-4:2005 Road vehicles -- Open interface for embedded automotive
applications -- Part 4: OSEK/VDX Communication (COM)
[18] ISO 17356-6:2006 Road vehicles -- Open interface for embedded automotive
applications -- Part 6: OSEK/VDX Implementation Language (OIL)

Glossary も　参考に入れましょう。
https://www.autosar.org/fileadmin/standards/R22-11/FO/AUTOSAR_TR_Glossary.pdf


# 参考資料　

@kazuo_reve 私が効果を確認した「小川メソッド」
https://qiita.com/kazuo_reve/items/a3ea1d9171deeccc04da

@kazuo_reve 新人の方によく展開している有益な情報
https://qiita.com/kazuo_reve/items/d1a3f0ee48e24bba38f1


## 自己参照　

AUTOSAR Abstract Platformへの道（詳細編）
https://qiita.com/kaizen_nagoya/items/cb217133884fa0a2c704

AUTOSAR Abstract Platform User Group Weekly Report(1) 2022.1.8
https://qiita.com/kaizen_nagoya/items/fece4f7719ef55d612bf

祝休日・謹賀新年：2023年の目標
https://qiita.com/kaizen_nagoya/items/24584ac215517a4621ee

AUTOSAR 　R22-11で　リンク切れ、表示しない文書
https://qiita.com/kaizen_nagoya/items/13edb17f6ffd45cdc690

ボッシュ自動車handbook(英語)11版(0-1) 課題と記事一覧new
https://qiita.com/kaizen_nagoya/items/a9d2887bf2a7598dc8e5

「ぼくの好きな先生」「人がやらないことをやれ」プログラマになるまで。仮説（37）
https://qiita.com/kaizen_nagoya/items/53e4bded9fe5f724b3c4

小川メソッド　覚え（書きかけ）
https://qiita.com/kaizen_nagoya/items/3593d72eca551742df68

DoCAP（ドゥーキャップ）って何ですか？
https://qiita.com/kaizen_nagoya/items/47e0e6509ab792c43327

「@kazuo_reve 新人の方によく展開している有益な情報」確認一覧
https://qiita.com/kaizen_nagoya/items/b9380888d1e5a042646b

全世界の不登校の子供たち「博士論文」を書こう。世界子供博士論文遠隔実践中心
https://qiita.com/kaizen_nagoya/items/912d69032c012bcc84f2

Views１万越え、もうすぐ１万記事一覧
https://qiita.com/kaizen_nagoya/items/d2b805717a92459ce853

「想定外」3.11 東日本大震災をIT技術者が振り返る
https://qiita.com/kaizen_nagoya/items/80433f4bf7fe116bddd1

「はじめてのCAN/CANFD 」 ベクタージャパン ＜エンジニア夏休み企画>【読書感想文】
https://qiita.com/kaizen_nagoya/items/1fee270be00ef90ca4ec

# Researchmap 
https://researchmap.jp/blogs/blog_entries/view/954753/cf4dd9624e5323f8fd03e4b79f874572

# R23-11
https://qiita.com/kaizen_nagoya/items/b16c62b8765254fdf3da

＜この記事は個人の過去の経験に基づく個人の感想です。現在所属する組織、業務とは関係がありません。＞

# 文書履歴(document history)
ver. 0.01 初稿 　20230503

## 最後までおよみいただきありがとうございました。

いいね　💚、フォローをお願いします。

####  Thank you very much for reading to the last sentence.

Please press the like icon 💚　and follow me for your happy life.