Specification of CAN Driver, AUTOSAR R22-11, CP, No.11(2)

Specification of CAN Driver, AUTOSAR R22-11, CP, No.11

AUTOSARが、2022年の版、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_CANDriver.pdf


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

https://www.autosar.org/

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

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


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



Classic Platform Release Overview, AUTOSAR R22-11, CP, No.0(2)

https://qiita.com/kaizen_nagoya/items/80636f4ca7c16501803b


AUTOSAR R22-11 マラソン

https://qiita.com/kaizen_nagoya/items/988aa405a6fdd794fe53



Qiitaの記事の一覧は作成中です。

AUTOSAR R22-11 一覧（２）

https://qiita.com/kaizen_nagoya/items/6b0615884e954c65fb43

## Bosch Controller Area Network
https://web.archive.org/web/20151211125301/http://www.bosch-semiconductors.de/media/ubk_semiconductors/pdf_1/canliteratur/can_fd_spec.pdf

BoschがISO規格寸前の版を公開している。


![CANFD.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/51423/071df73f-c84e-3c7a-70d7-acafba96c94a.png)


© Copyright 2011, Robert Bosch GmbH, Robert Bosch Platz 1, 70839 Gerlingen, Germany



# ISO CAN
## SO/CD 11898-1
Road vehicles — Controller area network (CAN) — Part 1: Data link layer and physical coding sub-layer

https://www.iso.org/standard/83292.html

I## SO/DIS 11898-2
Road vehicles — Controller area network (CAN) — Part 2: High-speed medium access unit

https://www.iso.org/standard/85120.html

###   Normative references

ISO 11898-1:2015, Road vehicles — Controller area network (CAN) — Part 1: Data link layer and physical signalling
ISO 16845-2, Road vehicles — Controller area network (CAN) conformance test plan — Part 2: High-speed medium access unit — Conformance test plan

### Bibliography

[1]	ISO/IEC 7498-1, Information technology — Open Systems Interconnection — Basic Reference Model: The Basic Model
[2]	ISO 11898-3, Road vehicles — Controller area network (CAN) — Part 3: Low-speed, fault-tolerant, medium-dependent interface
[3]	ISO 11898-4, Road vehicles — Controller area network (CAN) — Part 4: Time-triggered communication




# Abstract Platform との関係　

文書全体で、どう統合するとよいかの指針を示すとよい。　

案：
1  RequirementおよびSpecificationの基本事項はすべてAbstract Platformに記載する。　
2　国際規格との関係はすべてAbstract Platformに記載する。
3  Model類はAbstract Platform Modelから導出するようにする。
4 文書、ARXML,json, Manifest 類のTemplateは基本Abstract Platformで記述する。
5 C++ Template 機能について、OS、通信規約、制御用を提案する。


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

必要があれば国際規格を改定する。

 <この項は書きかけです。順次追記します。>
## 文書変更(Document Change) 
CanXL requirements were added
 Minor corrections / clarifications /
editorial changes;

# 用語(terms)

|Term|Description|
|:--|:--|
|CAN controller| A CAN controller serves exactly one physical channel.
|CAN Hardware Unit|A CAN Hardware Unit may consists of one or multiple CAN controllers of the same type and one or multiple CAN RAM areas. The CAN Hardware Unit is either on-chip, or an external device. The CAN Hardware Unit is represented by one CAN driver.
|CAN L-PDU| Data Link Layer Protocol Data Unit. Consists of Identifier, Data Length and Data (SDU). (see[19])
|CAN L-SDU |Data Link Layer Service Data Unit. Data that is transported inside the LPDU. (see[19])
|DLC| Data Length Code (part of CAN message describes the SDU length)
|Hardware Object| A CAN hardware object is defined as a PDU buffer inside the CAN RAM of the CAN hardware unit / CAN controller. A Hardware Object is defined as L-PDU buffer inside the CAN RAM of the CAN Hardware Unit.
|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 can be used to optimize 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 hardware objects that are configured as 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.
|ISR| Interrupt Service Routine
|L-PDU Handle |The L-PDU handle is defined and placed inside the CanIf module layer. Typically each handle represents an L-PDU, which is a constant structure with information for Tx/Rx processing.
|MCAL| Microcontroller Abstraction Layer
|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 L-PDU 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.
|Priority |The Priority of a CAN L-PDU is represented by the CAN Identifier. The lower the numerical value of the identifier, the higher the priority.
|SFR |Special Function Register. Hardware register that controls the controller behavior.
|SPAL| Standard Peripheral Abstraction Layer

## 英日
日本語は仮訳

T.B.D.

# 参考(reference)

[1] Layered Software Architecture
AUTOSAR_EXP_LayeredSoftwareArchitecture.pdf
[2] General Requirements on Basic Software Modules
AUTOSAR_SRS_BSWGeneral.pdf
[3] General Requirements on SPAL
AUTOSAR_SRS_SPALGeneral.pdf
[4] Requirements on CAN
AUTOSAR_SRS_CAN.pdf
[5] Specification of CAN Interface
AUTOSAR_SWS_CANInterface.pdf
[6] Specification of Default Error Tracer
AUTOSAR_SWS_DefaultErrorTracer.pdf
[7] Specification of ECU State Manager
AUTOSAR_SWS_ECUStateManager.pdf
[8] Specification of MCU Driver
AUTOSAR_SWS_MCUDriver.pdf
[9] Specification of Operating System
AUTOSAR_SWS_OS.pdf
[10] Specification of ECU Configuration
AUTOSAR_TPS_ECUConfiguration.pdf
[11] Specification of SPI Handler/Driver
AUTOSAR_SWS_SPIHandlerDriver.doc.pdf
[12] Specification of Memory Mapping
AUTOSAR_SWS_MemoryMapping.pdf
[13] Specification of BSW Scheduler
AUTOSAR_SWS_BSW_Scheduler.pdf
[14] Basic Software Module Description Template
AUTOSAR_TPS_BSWModuleDescriptionTemplate.pdf
[15] List of Basis Software Modules
AUTOSAR_TR_BSWModuleList.pdf
[16] General Specification of Basic Software Modules
AUTOSAR_SWS_BSWGeneral.pdf
[17] Specification of Time Synchornization over CAN
AUTOSAR_SWS_TimeSyncOverCAN.pdf
[18] ISO11898 – Road vehicles - Controller area network (CAN)
[19] ISO/IEC 7498-1 – OSI Basic Reference Model
[20] CiA601-2 Node and system design Part 2: CAN controller interface
specification
[21] CiA603 – CAN Frame time-stamping


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

# 関連文書(Related document)

「はじめてのCAN/CANFD 」 ベクタージャパン ＜エンジニア夏休み企画>【読書感想文】

https://qiita.com/kaizen_nagoya/items/1fee270be00ef90ca4ec


三方良し　Udemy 車載LAN入門講座 CAN通信編

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


詳解 車載ネットワーク CAN, CAN FD, LIN, CXPI, Ethernetの仕組みと設計のために(1) 著者　 ＜エンジニア夏休み企画 読書感想文＞

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

詳解 車載ネットワーク CAN, CAN FD, LIN, CXPI, Ethernetの仕組みと設計のために(2)参考文献 ＜エンジニア夏休み企画>【読書感想文】

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

詳解 車載ネットワーク CAN、CAN FD、LIN、CXPI、Ethernetの仕組みと設計のために

https://qiita.com/kaizen_nagoya/items/44a9e6b0f5363b4a5b35

# 最新URL変更記事


Specification of CAN Driver, AUTOSAR No.11, R22-11, CP 20230421

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



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

# 文書履歴(document history)
ver. 0.01 初稿 20230105
ver. 0.02 ありがとう追記 20230503

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

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

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

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