バックナンバーはこちら

today&tomorrow

Technology Update

  • T&T HOME
  • Technology Update
  • ソフトウェア・イン・ザ・ループからバーチャル・ハードウェア・イン・ザ・ループへのシームレスな移行を実現するVirtualizer Studio

2017 Dec. vol.108

ソフトウェア・イン・ザ・ループからバーチャル・ハードウェア・イン・ザ・ループへのシームレスな移行を実現するVirtualizer Studio

シノプシス バーチャル・プロトタイピングR&D担当マネージャー Andreas Ropers
シノプシス バーチャル・プロトタイピング担当エンジニア Markus Wedler
シノプシス バーチャル・プロトタイピング担当テクニカル・マーケティング・マネージャー Victor Reyes

画像(仮)

図3:SimulinkサブシステムをVirtualizer Studioにインポート

図3に示したVirtualizer Studioの画面では、Simulinkサブシステムからインポートしたピンが緑色の円で囲んだ部分に表示されています。RPM信号(rpm_digital)はアナログ信号出力(Simulinkから見た方向)の欄に表示され、ギア信号(gear_0~gear_2)は入力信号の欄に表示されます。

次に、ECUの内部信号に接続したい信号をダブルクリックします。すると[Add Connection]ダイアログ・ボックスが表示され、ここで外部SimulinkピンとECUピンの接続を作成します。ECUピンは外部ピンと同じタイプのもののみが候補に表示されるため、接続の手間が大幅に軽減されます。

VDKの高速通信テクノロジ

バーチャル・ハードウェア・イン・ザ・ループでは少なくとも2つのシミュレータを使用し、各シミュレータ間でデータ交換およびシミュレーション時間の同期を実行する必要があります。アナログ・コンポーネントおよびバス(CAN、FlexRay、LIN、Ethernetなど)を使用するような複雑なセットアップでは、使用するシミュレータの数はもっと多くなります。また、プラント・モデルの一部を1つのECUで実行し、別の一部を異なるECUモデルに移したセットアップもあります。このため、次の条件を満たした通信レイヤが必要となります。

  • 高いデータ・スループット:複数のシミュレータを接続した場合、通信レイヤが実行速度のボトルネックとならないようにする必要があります。VDKは最大で実時間係数3での実行が可能です。つまりECUモデルは実際のハードウェアの1/3の速度で動作し、全体的なシミュレーション速度は約30 MHzとなります。しかしI/O境界(A/Dコンバータなど)のトラフィックは更に周波数が低く(通常MHzレンジ)、これが通信レイヤに求められるスループットの目安となります。シミュレータどうしのプロセス間通信は多くの方法で実装できます。分散コンピューティングもその1つですが、ターンアラウンド・タイム(レイテンシ)が大きく、シミュレーション速度の要件を満たすことができません。マルチコアのホストPC 1台でシミュレーションを実行する場合、名前付きパイプと共有メモリーを使用できます。名前付きパイプはシミュレータ間で32ビット整数を1秒間に約50kしか転送できませんが、共有メモリーならこれよりもはるかに高いスループットが得られます。
  • シミュレーション時間の同期:共有メモリーを使用するとデータ・スループットは十分に確保できますが、シミュレータ同期の問題が残ります。セマフォなどOSでサポートされるメカニズムもありますが、1回のアクセスで6000〜8000のアセンブリ命令を実行する必要があり、1秒で転送できる32ビット・データは100〜150kにとどまります。VDKには専用の同期アルゴリズムがあり、これを使用すると必要なアセンブリ命令が数百に抑えられるため、32ビット・データの転送レートは1Mまで向上します。これだけのスループットがあれば、複数のシミュレータで構成されるvHiLプラットフォームをモデルのネイティブな速度で実行でき、通信レイヤがシミュレーションのボトルネックとなることはありません。

まとめ

特に自動車業界では、Vモデルに従って多くのフェーズを経て新製品が開発されます。フェーズが進むにつれて、デザインの各部品を「モデル・イン・ザ・ループ」から実際の動作をより正確に反映したシミュレータへと移行していきます。VDKではECUの動作をシミュレーションできると同時に、優れたデバッグ機能も利用できます。Mathworks社のSimulink、Vector社のCANoe、およびシノプシスSaberといったツールにVDKを直接統合することにより、複雑なセットアップもサポートできます。その他のツールも、業界標準のFMI(Functional Mock-up Interface)によりサポートされます。Virtualizer Studioを使用すると「モデル/ソフトウェア・イン・ザ・ループ」から「バーチャル・ハードウェア・イン・ザ・ループ」への複雑な移行手順を完全に自動化でき、プラットフォームの早期ブリングアップが可能です。VDKは高速通信メカニズムを備えており、接続したすべてのシミュレータを同期できるため、高いシミュレーション性能が得られます。

カテゴリートップ