📖 AUTOSAR
上級
Mayhem を使用してソフトウェアインザループ (SIL) テスト フェーズ中に組み込みソフトウェアを解析できます。このステージで解析を行うと、ハードウェア統合の前に欠陥を検出して修正することができます。SIL テストを行うには、電子制御ユニット (ECU) を仮想化する必要があります。
解析の要件¶
仮想化された ECU (vECU) を解析するには、以下が必要です。
Tip
- Mayhem
2.10
以上 mayhem
CLI- vVirtualTarget を使用して作成された vECU または OpenSUT API を公開する vECU。Mayhem は Linux x64/x86、Linux x64/x86、Windows x64 でコンパイルされた vECU をサポートしています。
Vector ツールチェインおよび vECU の作成の詳細については、Vector のドキュメントを参照してください。
vECU ターゲットでの Mayhem の実行¶
Mayhem は組み込みソフトウェア用の汎用ハーネスを使用して vECU を解析します。このハーネスは、Mayhem CLI 内のバイナリ実行ファイルとして提供され、Mayhem の他のハーネス テンプレートと同様に利用されます。
vECU を生成したら、次の操作を行います。
1. Mayhem の SUT ランナーを初期化する
ターミナルで次のコマンドを実行します。
mayhem init --template=opensut
2. vECU および関連ファイルを Mayhem ディレクトリにコピーする
dll
(Windows) または so
(Linux) および生成された pdb
ファイルを mayhem init
によって作成された root
ディレクトリにコピーします。
3. Mayhem ランを構成する
Mayhemfile
の cmd
行のコメントを解除し、Mayhem SUT ランナーおよびターゲットを指すように編集します。例:
- Windows x86:
/mayhem-sut-runner-win32.exe /<your-target.dll> @@
- Windows x64:
/mayhem-sut-runner-win32.exe /<your-target.dll> @@
- Linux:
/mayhem-sut-runner-linux <your-target.so> @@
4. Mayhem を実行する
ターミナルで mayhem run .
を実行します。
詳細設定¶
Mayhem の解析動作を変更する環境変数を設定することで、エラー チェック、入力遅延時間などを細かく調整できます。設定可能な変数および未指定の場合のデフォルト値の一覧は次のとおりです。
MAYHEM_BOOT_DELAY_MS
milliseconds
ランナーが入力のスティミュレーションを開始するまでの遅延時間をミリ秒単位で指定します。
デフォルト値は 100
です。
MAYHEM_STEP_DELAY_MS
milliseconds
スティミュレーション ステップ間の遅延時間を指定します。
デフォルトでは、Mayhem によって制御される不定の値です。
MAYHEM_CTRL_PINS
comma-seperated
各ステップ後にチェックする制御出力です。指定された文字列を含む名前に一致します。たとえば、foo
と指定すると foobar_output
に一致します。複数の文字列を指定するには、カンマで区切ります。
デフォルトでは、Error
が含まれます。
空白のままにすると、すべてのエラー チェックが無効化されます。
MAYHEM_SKIP_PINS
comma-seperated
スティミュレーション発生時にスキップする入力値を指定します。指定された文字列を含む入力値に一致します。
デフォルトでは、Reset
、Error
および Ram
が含まれます。
MAYHEM_CAN_ID
integer
SUT が期待する CAN ID を指定できます。
デフォルトでは、必要に応じて Mayhem が CAN ID を生成します。
MAYHEM_TRIAGING
boolean
設定した場合、目視で解読可能なスティミュレーション トレースを生成します。トレースは CANoe での共有や mayhem の Web コンソールでの表示が可能です。
デフォルトでは未設定です。