【ASAM】最小構成のMBD事例 第2章 その275【MDF④】

【ASAM】最小構成のMBD事例 第2章 その275【MDF④】 事例
【ASAM】最小構成のMBD事例 第2章 その275【MDF④】

バックナンバーはこちら。
https://www.simulationroom999.com/blog/model-based-of-minimum-2-backnumber/

はじめに

前回はMDFのDT内のレコードについて説明した。
1レコードとCGが紐づいており、
DG内に複数のCGがあると、異なる構成のレコードが混在することとなる。

今回はこのレコードの混在の仕方に着目した話となる。

登場人物

博識フクロウのフクさん

指差しフクロウ

イラストACにて公開の「kino_k」さんのイラストを使用しています。
https://www.ac-illust.com/main/profile.php?id=iKciwKA9&area=1

エンジニア歴8年の太郎くん

技術者太郎

イラストACにて公開の「しのみ」さんのイラストを使用しています。
https://www.ac-illust.com/main/profile.php?id=uCKphAW2&area=1

unsorted MDFとsorted MDF

フクさん
フクさん

ちなみにDGの中に複数のCGを入れるMDFのことをunsorted MDFと呼び
1個だけのCGを入れてるだけのMDFをsorted MDFと呼んだりする。

太郎くん
太郎くん

ほう?
そういう呼び方があるってことは、その違いによって扱いが変わるって事になるのかな?

フクさん
フクさん

中々察しが良いね。
基本的にはsorted MDFはデータ構造がシンプルでこっちの構成の方を推奨されていることが多い。
対してunsorted MDFは異なるレコードが非同期に混在するのでDT内がごちゃごちゃした状態になってしまう。

太郎くん
太郎くん

確かにそれは前回説明聞いたときにちょっと思った。

実際のツール達が生成MDFは?

フクさん
フクさん

現状のMCツール、

特に代表格のVetor社CANpaeとかETAS社INCAは必ずsorted MDFにしているはずだ。

太郎くん
太郎くん

あ、業界レベルでそうするような流れになっているんだ。

フクさん
フクさん

ちなみに非ASAM仕様であるMDF Version3なんかはDGという概念がなかったんで
無条件にunsorted MDFの構造と取らざるを得なかったというのはあるね。

太郎くん
太郎くん

なるほど。
そういう意味でもMDF version4且つsorted MDFにした方が良いってことになるのか。

MDFの内部構造を確認できないか?

太郎くん
太郎くん

MDFの基本的な構造はわかってきたけど、
これをバイナリエディタで追いかけると思うと大変そうだな―。

フクさん
フクさん

そうね。
結構大変だと思う。
というわけで便利なツールがVector社から無償で公開されてる。

太郎くん
太郎くん

おー!
そうなのかー!

フクさん
フクさん

MDF Validator」というツールになる。
メール登録とか必要かもしれないが、以下から入手可能だ。

フクさん
フクさん

ちなみにASAM MDF仕様をDLした来た時に何個かサンプルMDFも入手できるんで、
それをMDF Validatorで解析させた様子が以下になる。

MDF Validator動作状況、Vector MDF Validator、Vecot_CANape.MF4、ID Block、Header Block Description Value、Meta Data Block File path、File History 1 (ci = 0) A Length of file 25904、Data Group 1 File name Vector CANape MF 4、Data Block File path、Channel Group 1 Create time 2018-09-06 - 13:10:26、Text Block Last access time 2022-01-08 - 16:33:13、Text Block Last write time 2015-06-11 - 02:07:30、Sorted MDF file true、PWMFiltered、Data Group 2、Channel Group 1、Text Block、no information available for root、Source Information
太郎くん
太郎くん

あ、MDF内部のデータ構造を分かりやすく表示してくれるんだ。

フクさん
フクさん

まぁ我々が今回MDFの中を直接読み書きすることは無い予定だが、
何かしらで生成したMDFが結果としてどういう構造になっているかを確認するにはもってこいのツールだ

まとめ

フクさん
フクさん

まとめだよ。

  • MDFのDGに含まれるCGの数によってunsorted MDFとsorted MDFに分けられる。
    • unsorted MDFが複数CG、sorted MDFが単一のCG。
    • Version3は無条件でunsorted MDF相当になる。
  • Vector MDF ValidatorでMDFの内部構造を参照できる。

バックナンバーはこちら。

コメント

タイトルとURLをコピーしました