バックナンバーはこちら。
https://www.simulationroom999.com/blog/diagnostic-communication-backnumber/
はじめに
AUTOSAR-Dcmのコンフィグレーションの話。
Dspの役割、クラス図など。
Dspの位置づけの話。
ISO14229-1依存部と完成車メーカ依存部の分離と結合方法の話。
Dspの中で最も複雑な構造部はどこか。
などなど。
登場人物
博識フクロウのフクさん
![](https://www.simulationroom999.com/blog/wp-content/uploads/2020/05/指差しフクロウ.png)
イラストACにて公開の「kino_k」さんのイラストを使用しています。
https://www.ac-illust.com/main/profile.php?id=iKciwKA9&area=1
エンジニア歴8年の太郎くん
![](https://www.simulationroom999.com/blog/wp-content/uploads/2020/05/技術者01アップ.png)
イラストACにて公開の「しのみ」さんのイラストを使用しています。
https://www.ac-illust.com/main/profile.php?id=uCKphAW2&area=1
AUTOSAR-Dcm Dspの役割
![フクさん](https://www.simulationroom999.com/blog/wp-content/uploads/2020/05/指差しフクロウ.png)
今回はAUTOSAR-Dcm、最後のサブモジュールであるDspについて。
DspはDiagnostic Service Processingの略。
![太郎くん](https://www.simulationroom999.com/blog/wp-content/uploads/2020/05/「技術者a」13アップ.png)
流れとしてはこれが最上位層に相当するから・・・。
アプリケーション層?
![フクさん](https://www.simulationroom999.com/blog/wp-content/uploads/2020/05/お休みフクロウ.png)
そうだね。
各サービスの実際の振る舞いを規定する部分になる。
![太郎くん](https://www.simulationroom999.com/blog/wp-content/uploads/2020/05/「技術者a」13アップ.png)
振る舞いの規定って、完成車メーカ依存なんじゃない?
![フクさん](https://www.simulationroom999.com/blog/wp-content/uploads/2020/05/考え中フクロウ.png)
厳密にはISO14229-1で規定されている部分と完成車メーカ依存の部分がある。
ISO14229-1で規定されているものはDspでハンドリングして、
完成車メーカ依存の部分はコールバック関数を登録して、
その関数内に完成車メーカ依存のコードを埋め込むってのが基本的な考え方になる。
![太郎くん](https://www.simulationroom999.com/blog/wp-content/uploads/2020/05/技術者02アップ.png)
なるほど。
必要なタイミングでコールバックするから、
必要なコードは各自でちゃんと書いてねって感じだね。
AUTOSAR-Dcm Dspコンフィグレーション構造
![フクさん](https://www.simulationroom999.com/blog/wp-content/uploads/2020/05/指差しフクロウ.png)
そして、Dspのコンフィグレーション構造。
![Dcm_DspType、Dcm_DspDidType、Dcm_DspDidInfoType,Dcm_DspDidControlRecordSizesTyep、Dcm_DspDidAccessType,Dcm_DspDidControlType,Dmc_DspDidReadType,Dcm_DspDidWriteType,Dcm_DspSecurityRowType,Dcm_DspSessionRowType,DIDを使用するサービス用のコールバック関数、DID別の有効なセキュリティとセッションレベルの定義、I/O Controlサービス用のパラメータ定義、サービスに紐づいたセキュリティ状態、サービスに紐づいたセッション状態、基本的には、各種サービス、DIDのセッションとセキュリティレベルの紐づけと、該当サービスやDID、RID別のコールバック関数の定義](https://www.simulationroom999.com/blog/wp-content/uploads/2020/09/02_Dspクラス図-1024x626.png)
![太郎くん](https://www.simulationroom999.com/blog/wp-content/uploads/2020/05/「技術者a」20アップ.png)
Dslよりかはマシだけど、結構複雑そうだなー。
![フクさん](https://www.simulationroom999.com/blog/wp-content/uploads/2020/05/指差しフクロウ.png)
ちなみに今回使用する範囲に絞ってるんで実際の構造はもっとカオス
![太郎くん](https://www.simulationroom999.com/blog/wp-content/uploads/2020/05/「技術者a」10アップ.png)
(まじかー)
AUTOSAR-Dcm Dspコンフィグレーション構造のちょい解説
![フクさん](https://www.simulationroom999.com/blog/wp-content/uploads/2020/05/指差しフクロウ.png)
今回記載している範囲はDIDに関係する部分になっている。
実際にはECU Reset、routine Controlなどにコンフィグレーションセットもあるけど、シミュレーションでは使用しないので割愛。
![太郎くん](https://www.simulationroom999.com/blog/wp-content/uploads/2020/05/「技術者a」10アップ.png)
雰囲気としてはDIDと同じ感じになるのかな?
![フクさん](https://www.simulationroom999.com/blog/wp-content/uploads/2020/05/考え中フクロウ.png)
DIDよりかはシンプルになると思うよ。
DIDの場合は読み/書き/IO制御の3種類で使用されるのでややこしいことになってるんだけど、
他のリソースは割とすぐコールバックでお任せって感じになる。
![太郎くん](https://www.simulationroom999.com/blog/wp-content/uploads/2020/05/技術者02アップ.png)
ということは、DID関連が分かってしまえば、他のはチョロい?
![フクさん](https://www.simulationroom999.com/blog/wp-content/uploads/2020/05/指差しフクロウ.png)
まぁそうなるかな。
DID関連が広いは深いわなんで、これに耐えられれば他のはチョロい。
![太郎くん](https://www.simulationroom999.com/blog/wp-content/uploads/2020/05/技術者01アップ.png)
なるほど。
まとめ
![フクさん](https://www.simulationroom999.com/blog/wp-content/uploads/2020/05/指差しフクロウ.png)
まとめだよ。
- Dspはアプリケーション層。
- ISO14229-1依存と完成車メーカ依存に分かれ、完成車メーカ依存はコールバック関数で対応。
- Dspの中でDIDに関連するものが最も複雑。
- DID関連を知ってしまえば、他のコンフィグレーションは比較的たやすい。
バックナンバーはこちら。
コメント