Specification of CAN Interface, AUTOSAR 22-11, CP, No.12


AUTOSAR Countdown Calendar 2022

https://qiita.com/advent-calendar/2022/autosar

2022/12/09日の投稿です。

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

AUTOSAR R22-11 Release Event 20221208

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

下記は想定URLです。順次確認中です。

https://www.autosar.org/fileadmin/standards/classic/22-11/AUTOSAR_SWS_CANInterface.pdf

間違っていたら、いいね　を押していただいて、コメント欄にご報告くださると幸いです。
編集リクエストが、構造的な変更をしている最中に、構造的な編集リクエストをしていただくと、
何をどう直したらいいかわからなくなってしまいます。自動修復ツールがつくれていません。ごめんなさい。

https://www.autosar.org/

文書は検索してダウンロードすることができます。
クラウドサービスにありがちな、あるのにないかのような検索結果が出ることがあります。

https://www.autosar.org/nc/document-search/

AUTOSAR R22-11 Qiita 記事一覧はこちらに編集中です。

https://qiita.com/kaizen_nagoya/items/11a1654e1e9ec0e4d001

 <この項は書きかけです。順次追記します。>
# 用語(terms)

|Term|Description|
|:--|:--|
|CAN L-PDU| CAN Protocol Data Unit. Consists of an identifier, Data Length and data (SDU) Visible to the CAN driver.
|CAN L-SDU|CAN Service Data Unit. Data that are transported inside the CAN L-PDU. Visible to the upper layers of the CAN interface (e.g. PDU Router).
|CanDrv| CAN Driver module
|CAN FD |CAN with Flexible Data-Rate
|CanId| CAN Identifier
|CanIf| CAN Interface module
|CanNm |CAN Network Management module
|CanSm |CAN State Manager module
|CanTp |CAN Transport Layer module
|CanTrcv |CAN Transceiver Driver module
|CanTSyn| Global Time Synchronization over CAN
|ComM |Communication Manager module
|DCM |Diagnostic Communication Manager module
|EcuM |ECU State Manager module
|HOH| CAN hardware object handle
|HRH |CAN hardware receive handle
|HTH| CAN hardware transmit handle
|J1939Nm| J1939 Network Management module
|J1939Tp |J1939 Transport Layer module
|PduR| PDU Router module
|PN |Partial Networking
|SchM| Scheduler Module
|Buffer|Fixed sized memory area for a single data unit (e.g. CAN ID, Data Length, SDU, etc.) is stored at a dedicated memory address in RAM.
|CAN communication matrix|Describes the complete CAN network: • Participating nodes • Definition of all CAN PDUs (Identifier, Data Length) • Source and Sinks for PDUs
|CAN Controller|A CAN Controller is a CPU on-chip or external standalone hardware device. One CAN Controller is connected to one physical channel.
|CAN Device Driver| Generic term of CAN Driver and CAN Transceiver Driver.
|CAN Hardware Unit|A CAN Hardware Unit may consist of one or multiple CAN Controllers of the same type and one, two or multiple CAN RAM areas. The CAN Hardware Unit is located on-chip or as external device. The CAN hardware unit is represented by one CAN Driver.
|CanIf Controller mode state machine|This is not really a state machine, which may be influenced by transmission requests. This is an image of the current abstracted state of an appropriate CAN Controller. The state transitions can only be realized by upper layer modules like the CanSm or by external events like e.g. if a BusOff occurred.
|CanIf Receive L-PDU / CanIf Rx L-PDU |L-PDU of which the direction is set to "lower to upper layer".
|CanIf Receive L-PDU buffer / CanIfRxBuffer|Single element RAM buffer located in the CAN Interface module to store whole receive L-PDUs.
|CanIf Transmit L-PDU / CanIf Tx L-PDU |L-PDU of which the direction is set to "upper to lower layer".
|CanIf Transmit L-PDU buffer / CanIfTxBuffer| Single CanIfTxBuffer element located in the CanIf to store one or multiple CanIf Tx L-PDUs. If the buffersize of a single CanIfTxBuffer element is set to 0, a CanIfTxBuffer element is only used to refer a HTH.
|Hardware object / HW object |A CAN hardware object is defined as a PDU buffer inside the CAN RAM of the CAN Hardware Unit / CAN Controller.
|Hardware Receive Handle(HRH)|The Hardware Receive Handle (HRH) is defined and provided by the CAN Driver. Each HRH typically represents just one hardware object. The HRH is used as a parameter by the CAN Interface Layer for i.e. software filtering.
|Hardware Transmit Handle(HTH)|The Hardware Transmit Handle (HTH) is defined and provided by the CAN Driver. Each HTH typically represents just one or multiple CAN hardware objects that are configured as CAN hardware transmit buffer pool.
|Inner priority inversion|Transmission of a high-priority L-PDU is prevented by the presence of a pending low-priority L-PDU in the same transmit hardware object.
|Integration Code|Code that the Integrator needs to add to an AUTOSAR System, to adapt non-standardized functionalities. Examples are Callouts of the ECU State Manager and Callbacks of various other BSW modules. The I/O Hardware Abstraction is called Integration Code, too.
|Lowest In - First Out / LOFO |This is a data storage procedure, whereas always the elements with the lowest values will be extracted.
|L-PDU channel group |Group of CAN L-PDUs, which belong to just one underlying network. Usually they are handled by one upper layer module.
|Outer priority inversion|A time gap occurs between two consecutive transmit L-PDUs. In this case a lower priority L-PDU from another node can prevent sending the own higher priority L-PDU. Here the higher priority LPDU cannot participate in arbitration during network access because the lower priority L-PDU already won the arbitration.
|Physical channel|A physical channel represents an interface from a CAN Controller to the CAN Network. Different physical channels of the CAN Hardware Unit may access different networks.
|Tx request |Transmit request to the CAN Interface module from a upper layer module of the CanIf

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

T.B.D.

# 参考(reference)

[1] Specification of CAN Driver
AUTOSAR_SWS_CANDriver
[2] Specification of CAN Transceiver Driver
AUTOSAR_SWS_CANTransceiverDriver
[3] Specification of CAN State Manager
AUTOSAR_SWS_CANStateManager
[4] Specification of CAN Network Management
AUTOSAR_SWS_CANNetworkManagement
[5] Specification of CAN Transport Layer
AUTOSAR_SWS_CANTransportLayer
[6] Specification of PDU Router
AUTOSAR_SWS_PDURouter
[7] Layered Software Architecture
AUTOSAR_EXP_LayeredSoftwareArchitecture
[8] Glossary, 
https://www.autosar.org/fileadmin/standards/classic/22-11/AUTOSAR_TR_glossary.pdf
[9] General Specification of Basic Software Modules
AUTOSAR_SWS_BSWGeneral
[10] General Requirements on Basic Software Modules
AUTOSAR_SRS_BSWGeneral
[11] Requirements on CAN
AUTOSAR_SRS_CAN
[12] ISO 11898-1:2015 – Road vehicles – Controller area network (CAN)
[13] Specification of ECU State Manager
AUTOSAR_SWS_ECUStateManager
[14] Specification of ECU Configuration
AUTOSAR_TPS_ECUConfiguration


# Countdown Calendar 2022

今年企画した6つのCountdown Calendarと、それぞれの記事一つをご紹介します。

AUTOSAR Countdown Calendar 2022

https://qiita.com/advent-calendar/2022/autosar

AUTOSAR References to ISO, IEC, ITU, IEEE, RFC and SEA etc.

https://qiita.com/kaizen_nagoya/items/d7d252211e10a79516df

Automotive Handbook Countdown Calendar 2022

https://qiita.com/advent-calendar/2022/automotivehandbook

Basic principles, ボッシュ自動車handbook(英語)11版まとめ<2>

https://qiita.com/kaizen_nagoya/items/24a1ba5da3d09b2a95d1


2022 いいねをいただいた記事ランキング(O.K.版) Countdown Calendar 2022

https://qiita.com/advent-calendar/2022/goods

2022年１月下旬　いいねをいただいた記事　16

https://qiita.com/kaizen_nagoya/items/0ee589a8edaeab24fd2a

CDCale(O.K.) Countdown Calendar 2022

https://qiita.com/advent-calendar/2022/adventcalendar2022

「会議は15分未満」に。小耳にはさんだ話。

https://qiita.com/kaizen_nagoya/items/510c47c5d1e8d03145db

ABC language (O.K.版） Advent Calendar 2022

https://qiita.com/advent-calendar/2022/abc_ok

LLVMソースコードのコンパイルをしようと思ってハマった罠とそこから脱出するための努力

https://qiita.com/kaizen_nagoya/items/16f270e42b947756ced3

ABC maker(O.K版） Advent Calendar 2022

https://qiita.com/advent-calendar/2022/abcmaker

JAXA/IPA クリティカルソフトウェアワークショップ WOCS言語関連発表(改定版)

https://qiita.com/kaizen_nagoya/items/4789832baf494cb74626

年末100記事を30点に仕上げる。

https://qiita.com/kaizen_nagoya/items/3ffdc82caee3a325d1d7

2023 書き初め

https://qiita.com/kaizen_nagoya/items/d494737e2627127b530d

CountdownCalendar2022 報告

https://qiita.com/kaizen_nagoya/items/5b4b99cb9ad571f4094b


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

# 文書履歴(document history)
ver. 0.01 初稿 20221209
ver. 0.02 URL修正 20221222