Synopsys
Ansys

「仮想プロトタイピング 」とは何ですか?

シノプシス 編集部

2021年7月26日 / 読了時間:2分

定義

組み込みソフトウェア開発における従来のツールや手法では、今日の複雑な組み込みシステム、特にマルチコアチップやSoC、そしてその厳しい開発スケジュールに対応するには不十分である。

仮想プロトタイプとは、ホストシステム上で動作する実行可能なソフトウェアモデルのことです。これは、CPU命令セット、メモリマップ、レジスタ、割り込みなど、ハードウェアを、ソフトウェア開発に合わせて調整可能な十分なレベルでエミュレートします。 ソフトウェアの観点からは、エミュレート対象のハードウェアとバイナリ互換性があり、ユーザーは、低レベルのデバイスやファームウェアからオペレーティングシステム、ミドルウェア、そして最終的に開発中のアプリケーションに至るまで、ソフトウェアスタック全体を構成するバイナリイメージを、修正することなく実行することができます。これは、ソフトウェア開発を行うためのターゲットシステムの完全な機能的表現です。

仮想プロトタイピング はどのように機能するのでしょうか?

仮想プロトタイプは、ソフトウェア開発者にとって無関係なハードウェアの詳細を抽象化します。命令セットシミュレータを用いて、仮想プロトタイプは標準的なPC上で組み込みターゲットコードを実行します。システムの周辺機器は、変更を加えていないソフトウェアイメージを実行するのに必要な最小限の詳細度で、トランザクションレベルでモデル化されます。例えば、レジスタの挙動は正確に再現されますが、タイミングについては正確に再現されません。

シミュレーション速度は非常に高速であるため、AUTOSARやAndroid OS上で動作するアプリケーションなど、大規模なソフトウェアスタックをインタラクティブに実行することが可能です。仮想プロトタイプは、仮想および実世界のI/Oを利用して、USB、PCIe、イーサネット、シリアルデバイスなどの実世界のインターフェースに接続します。

の利点とメリット仮想プロトタイピング

早期の利用可能性、バイナリ互換性、そして高い性能により、仮想プロトタイプを活用することで、実際の物理ハードウェアが利用可能になるずっと前、多くの場合はチップの設計が完了する前であっても、システムソフトウェアの開発、デバッグ、統合、および検証を行うことが可能になります。

  • 早期のソフトウェア開発。仮想 プロトタイプを活用することで、ソフトウェア開発を早期に開始することが可能となり、現在「シフトレフト」アプローチとして知られる手法により、新製品の開発およびテストに必要な総時間を短縮できます。
  • ハードウェア/ソフトウェアの統合。ソフトウェアの観点から見ると、仮想プロトタイプにより、従来は FPGA プロトタイプに依存してきたハードウェア/ソフトウェアの統合を、より早い段階から開始できるようになります。
  • グローバルな開発。物理的なハードウェアが不要なため、仮想プロトタイプを世界中のチーム間で共有・利用することができ、ソフトウェア開発チームの効率と生産性を向上させることができます。
  • デバッグのしやすさ。システムソフトウェアとハードウェアを独自かつ相互に関連付けて可視化できること、可視化や障害注入のためにハードウェアの内部にアクセスできること、そしてCIやTDDといったソフトウェア設計パラダイムとの互換性により、デバッグが容易になります。
  • 互換性。お手持ちのソフトウェアツール(コンパイラ、デバッガ、シミュレータなど)と併用可能です。

仮想プロトタイピング はいつ使うべきか?

仮想プロトタイプは、開発サイクルの早い段階で導入するのが最適であり、具体的には次のような時期が挙げられます:

  • デバッグとテスト
  • 妥当性確認と検証 
  • 回帰分析の設定
  • 速度向上のためのハードウェア試作
開発段階メリット仮想プロトタイピング
初期のソフトウェア開発ハードウェアが利用可能になる前に、早期のコーディングやテストが可能になります
ハードウェア/ソフトウェアの統合FPGA の提供開始に先立ち、統合テストを円滑に進めることができます
デバッグとテスト高度なデバッグツールと可視性
回帰分析の設定簡単に自動化でき、再現性の高いテスト環境
ハードウェアのプロトタイピング反復プロセスを迅速化するための補足または代替手段

仮想プロトタイピング そして シノプシス

シノプシス 仮想プロトタイピング ソリューションの全ラインナップを提供しています。これには、初期段階のアーキテクチャ分析のための「Platform Architect™ 」、業界最大規模のトランザクションレベルモデル(TLM)ポートフォリオを備えたソフトウェア開発用仮想プロトタイプ作成ツール「Virtualizer™」、多数の自動車プラットフォームに対応したすぐに使える「Virtualizer Development Kits(VDK)」に加え、プロジェクトの成功を確実にするターンキーサービスや立ち上げ支援サービスが含まれます。

続きを読む

Ask BETA This experience is in beta mode. Please double check responses for accuracy.

チャットを終了する

このウィンドウを閉じると、チャット履歴が消去され、セッションが終了します。本当に このチャットを終了してもよろしいですか?