simulationを進めているが、3.2.2 biterrorの各項目についてほぼsimulationできた。
ただし、このManualに記載されている項目は規格と矛盾する箇所もあった。
Test of transmitterの項目14ではError Passive状態時のreserved bitがdominant
の場合と、Passive Error Flagの先頭でdominantが検出された場合の動作を検証して
いて後者については、
The transmitter detects a bit error and starts sending a Passive Error Flag again.
となっている。 しかし、規格書には次のような記述がある。
A TRANSMITTER sending a PASSIVE ERROR FLAG and detecting a 'dominant'
bit does not interpret this as a BIT ERROR (ERROR HANDLING / Error Detection / BIT ERROR)
CAN busに繋がっている全てのnodeの状態がError Passiveとは限らず、Error Active
のnodeも存在する可能性はある筈だ。 Error Passiveが出力するPASSIVE ERROR
FLAGはRECESSIVE、 Error Activeが出力するACTIVE ERROR FLAGはDOMINANT
でこれらが競合した場合はDOMINANTになる。 従って、Error PassiveのnodeがPASSIVE
ERROR FLAGを出力したのにDOMINANTが検出されたからと言って、それは、bit error
とは言えないと思う。従って、User's Manualの記述は誤りだと思う。 ということで、
この部分は無視することにした。
User's Manual記載の項目以外にも検証項目を幾つか追加した結果、Line coverageは
100%にすることができた。

ただし、改めて規格書を読み返してみると、まだまだ検証できていない項目がある。
0 件のコメント:
コメントを投稿