Sourcery CodeBench Virtual Edition

Sourcery CodeBench Virtual Editionは、ソフトウェア開発者にとっての新たなアプローチを可能にするものです。ハードウェア開発のすべての段階にわたってネイティブのソフトウェア開発環境で業務を完結することができます。Sourcery CodeBench Professional Editionの機能とSourcery Analyzerの機能が統合され、Vistaの仮想プロトタイピング機能Veloceエミュレーション機能に対するソフトウェアデバッグインタフェースとしての役割も果たしているため、抽象度の高い初期のシミュレーションモデル、RTLエミュレーション、物理プロトタイプから最終製品の組込みシステムまでのすべての段階に対応できます。

Sourcery CodeBench Virtual Editionを使用すると、ソフトウェア開発ドメインとの直観的な統合を実現できるので、実ハードウェアでは得られなかったハードウェアの可視性と制御を得ることができます。Sourcery CodeBench Virtual Editionの利点を以下に示します。

 

詳細

仮想プラットフォーム上でのソフトウェアとハードウェアの協調デバッグ

ハードウェアを抽象化したシミュレーションモデルを使ってソフトウェアとハードウェアを一緒にデバッグできます。ハードウェアモデルはVistaが生成した仮想プラットフォーム上で動作し、コードを高速実行するための命令セットシミュレータと、SoCのその他の機能の高精度モデルで構成されます。ソフトウェアエンジニアがCodeBench Virtual Editionを使用すると、実ボードで確認できないハードウェアステートが可視化され、仮想プラットフォームでコードを実行しながらデバッグできます。ハードウェアレジスタはすべて視覚的に処理されます。ユーザは実行クロックを完全に制御できるので、ハードウェアスレッドとソフトウェアスレッドのどちらにもブレークポイントを追加できます。SMPと非SMPの両クラスタのデバッグをサポートしています。

 

 

 

仮想プラットフォーム上でのソフトウェア開発

実ハードウェアの入手前にソフトウェア開発に着手できるため、ソフトウェアデバッグのタイミングを前倒しし、ハードウェアの開発と平行してシステム統合を進められ、結果的に製品化までの期間短縮につながります。Sourcery CodeBench Virtual Editionによるハードウェアの見える化は、ハードウェアとソフトウェアの複雑な相互作用をデバッグしやすくするだけでなく、開発工期の短縮にも効果的です。加えて、仮想プラットフォームは次の3つの点で品質向上にも威力を発揮します。第1に、あらかじめすべてをコーディングしておき、プロトタイプが用意できたらすべてをデバッグするのではなく、コードをレイヤ化して段階的にコーディング、デバッグ、解析するという対話形式のソフトウェア開発アプローチを可能にします。第2に、ハードウェアの不良が見つかったり、機能拡張が必要になったりした場合でも、ハードウェア設計を変更する時間的余裕が生まれます。第3に、仮想プラットフォームはテストを自動化し、継続的に統合を進める設計環境に最適なアプローチです。

 

 

 

 

仮想プラットフォームによるハードウェア/ソフトウェア性能解析

Sourcery CodeBench Virtual Editionにはソフトウェアとハードウェアの振る舞いを同じ時間軸で同時に解析する機能があり、ハードウェア設計が最終段階に入る前に、性能に関する想定や判断が正しいかどうかを検証できます。Sourcery CodeBench Virtual Edition独自のNIT(Non-Intrusive Trace: 非侵入型)プロファイリングテクノロジが提供する多彩なデバッグ/プロファイリング/カバレッジ機能により、ターゲットの振る舞いに影響を及ぼすことなくソフトウェアを実行してデバッグすることが可能であり、イメージを再コンパイルする手間もかかりません。制約されることのない「非侵入型」のプロファイリングは、システムレベルの一貫性と反復性を確保したデターミニスティックな実行を可能にします。ハードウェア詳細設計とソフトウェア操作はともにシステム全体の性能と消費電力にどのような影響を及ぼすのか、最終的なソフトウェアで制御された状態でその影響を測定できるので、製品要件を確実に満たした最終製品を実現します。

 

 

 

業界標準プラットフォームのための仮想プロトタイピングキット(VPK)

Sourcery CodeBench Virtual Editionは、カスタマイズ可能な市販の仮想プロトタイプであるMentor Embedded Virtual Prototype Kits(VPK)をサポートしています。このVPKは必要な部分のみを自動的にインストールでき、CodeBench Virtual Edition内で簡単にカスタマイズして、ベアメタルとLinuxアプリケーションをデバッグ/解析することができます。仮想プロトタイプで使用するハードウェアの主要属性は付属のパラメータファイルを用いてユーザが高度にカスタマイズ可能です。CodeBench Virtual Editionは以下のVPKに対応しています。

  • Altera Arria-V SoC
  • ARM® Versatile Express for Cortex® A-9
  • Freescale i.MX6デュアル/クアッドアプリケーションプロセッサ
  • Xilinx Zynq-7000のプログラマブルSoCすべて
 

 

 

 

Mentor Embeddedランタイムプラットフォーム

Mentor Embedded Virtual Prototype Kits(VPK)は、Sourcery CodeBenchに統合されたソフトウェア統合開発環境(IDE)上で動作するMentor Embeddedランタイムプラットフォームと緊密に連携されています。Mentor Embeddedランタイムプラットフォームでは、Mentor Embedded Linux Development PlatformNucleusリアルタイムオペレーティングシステム(RTOS)を利用できます。一部のプラットフォームはMentor Embedded LinuxとNucleusを使用した複数のアプリケーション、ベアメタルのアプリケーション、デモを含みます。

 

 

 

 

Veloceエミュレータ上でのソフトウェアとハードウェアの協調デバッグ

Veloceエミュレータでハードウェアとソフトウェアを一緒にデバッグすると、部分的なテストケースではなく、実際の製品ソフトウェアを使用してハードウェアRTLをテストしたり、実シリコン入手前に実際のハードウェア設計上のソフトウェアをテストできます。ハードウェアエンジニアはVeloceのUIからRTLコードをモニタし、デバッグします。一方、ソフトウェアエンジニアはエミュレータで走らせているコードをSourcery CodeBench Virtual Edition上でデバッグします。これにより、ソフトウェア主導のハードウェア検証、ハードウェアと相互作用するソフトウェアの機能のデバッグ、完全なシステム統合とOSブートが可能になるため、予期せぬハードウェアの変更といったコストのかかる手戻りを避けることができます。

 

 

 

Veloceエミュレータ上でのソフトウェア開発

Sourcery CodeBench Virtual Editionでは、実ハードウェアのRTL設計から合成したエミュレーションモデルを使ってソフトウェアを開発できます。このため、サイクル精度の環境でハードウェアへの依存度の高いソフトウェアをテストしたり、実ハードウェアの入手時期までテストできないタイミング依存性を検証したりすることが可能です。CodeBench Virtual Edition上で協調エミュレーションのためのハイブリッド型仮想プロトタイプを用いてソフトウェアを実行することで、仮想プロトタイプ化したプロセッサのサブシステムを高速実行しながら、残りのRTL設計部分をエミュレータで実行します。このアプローチによってハードウェアの問題を手遅れになる前に発見できるので、設計終盤になってソフトウェアを変更して対処するという急場しのぎから脱却し、製品品質を向上させます。

 

 

 

実ハードウェア上でのデバッグと解析

プロトタイプまたは製品ハードウェアが到着したら、仮想プラットフォーム上のSourcery CodeBench Virtual EditionとVeloceエミュレータのIDEと同じ環境で使用したJTAGプローブを実機につなぎ、Sourcery CodeBench Professional Editionでデバッグ、解析することができます。

 
 

Copyright © 2016 Mentor Graphics Corporation. 本ウェブサイトに記載されたMentor Graphicsの製品およびプロセスに関する商標はMentor Graphics Corporationの米国およびその他の国における商標または登録商標です。A2BおよびAutomotive Audio Busは、Analog Devices, Inc.の登録商標です。MATLABは、The Mathworks, Inc.の登録商標です。Androidは、Google Inc.の商標です。この商標を使用する場合は、事前にGoogleから使用許諾を得る必要があります。QtはQt Company Oyのフィンランドおよびその他の国における登録商標です。Linuxは、Linus Torvalds氏の日本およびその他の国における登録商標または商標です。登録商標Linuxは、全世界における商標保持者Linus Torvalds氏から排他的ライセンスを受けているLMI (Linux Mark Institute) からの許諾により使用しています。その他本ウェブサイトに記載されている製品名および会社名は各社の商標または登録商標です。

製品情報リクエスト