マルチコア組み込みシステムの挙動、 リアルタイム、および性能解析

製品概要
Intel® CoFluent™ Studio
システムレベルのモデリングおよび
シミュレーション環境
マルチコア組み込みシステムの挙動、
リアルタイム、および性能解析
Intel® CoFluent™ Studioは、Eclipse を
ベースとした組み込みシステムの視覚的な
モデリング/シミュレーション・ツールセット
です。Intel CoFluent 向けに最適化された
ドメイン固有言語 (DSL)、または標準の
UML* 表記、すなわち SysML* と MARTE
プロファイルの組み合わせによって、モデ
ルがグラフィカル・ダイアグラムにキャプ
チャーされます。データ型とアルゴリズム
のキャプチャーには、ANSI C または C++ が
アクション言語として使用されます。実行
時間、消費電力、メモリ値などといった非
機能的なシステム要件またはモデル較正
データは、モデル属性を通じて追加され
ます。
モデルは実行の際にトランザクション・
レベル・モデリング (TLM) SystemC コード
に変換されます。SystemC コードがインス
トルメントされ、さまざまな解析ツールで
監視できるトレースを生成します。ホスト
ベースの高速シミュレーションにより、
設計者はマルチプロセッサー/マルチコア・
プラットフォーム・モデルで、アプリケー
ション・モデルの実行をリアルタイムで
観測できます。レイテンシ、スループット、
バッファー・レベル、リソース負荷、消費電
力、メモリ・フットプリント、コストなどの
性能値を抽出できます。
Intel CoFluent Studioは設計上、以下に
示す 2 つの主な課題に対処します。
• 組み込みシステムを指定し、その仕様を
検証する
• マルチコア・リアルタイム組み込みシステム
の性能を予測し、最適化する
表 1 Time-Behavioral Modeling の回路図作成言語
TBM モデル表現
Intel CoFluent DSL
UML
階層構造
• CoFluent 構造ダイアグラム
と挙動ダイアグラム
SysML ブロック定義ダイアグラム
データ・フロー
SysML 内部ブロック定義ダイアグラム
+ MARTE ステレオタイプ
SysML アクティビティ・ダイアグラム
+ MARTE ステレオタイプ
制御フロー
実行時間
• 宣言: CoFluent 属性
宣言: MARTE タグ付き値
制御ステートメント
• 定義: ANSI C または C++
定義: ANSI C または C++
アルゴリズム
データ型
Intel CoFluent Studioは、上記のそれぞれ
の課題に対処する 2 種類のパッケージから
お選びいただけます。
• Intel® CoFluent™ Studio for TimedBehavioral Modeling (TBM)
• Intel® CoFluent™ Studio for System
Architecting (SA)
Intel® CoFluent™ Reader は、Intel CoFluent
Studio で作成されたモデルを試用できる
無料版のビューアおよびシミュレーター/
プレイヤーです。これにより、設計者は
モデル、シミュレーション結果および観測
結果を Intel CoFluent Studio にアクセスで
きないプロジェクト関係者と共有できます。
その他のエンジニア、
マネージャ、エンド
ユーザー、顧客、
マーケターも、Intel
CoFluent Reader を使ってモデルとその挙
動を閲覧できます。Intel CoFluent Reader
により、モデルとシミュレーションの読み
取り、理解、共有が容易になります。
Timed-Behavioral Modeling
組み込みシステムとチップの開発において
は、適正な仕様が重要であることは言うま
でもありません。しかしながら、システム
が指定された後、選択された設計がシステ
ムの機能要件および非機能要件を満たす
かどうかを、どのような方法で確認すれば
良いのかといった疑問が残ります。モデル
の作成は、文書で記述したり図を描くより
もはるかに有効な解決策となります。理想
的なソリューションは、モデルを実行して
検証することです。
Intel CoFluent Studio for TimedBehavioral Modeling (TBM) では、設計
意図とシステムのユース・ケースをシンプル
なグラフィカル・モデルにキャプチャーする
ことができます。
システムとユース・ケースの挙動は、特定
の論理的目的を達成するために動作およ
び相互作用する、コンカレント・プロセス
のネットワークとして表現されます。プロ
セス間、および各プロセスのデータと制御
のフローは、グラフィカル言語である Intel
CoFluent DSL または UML を使って記述さ
れます。 ANSI C/C++ は、アクション言語と
して使用されます。
2 タイプのモデリングが可能です。
• 挙動型 (統計ベースまたはトークンベース
とも呼ばれる): データの通信と計算が
単一の実行時間に沿って抽象化される
ように、データ型とアルゴリズムは空の
ままとします。並列的に実行されるプロ
セス、およびプロセス間の通信と同期を
検証する場合に有益です。
• 機能型: データ型とアルゴリズムは、
実際のデータ定義とシステムで実施
されるプロセスに対応します。ANSI C
または C++ による定義、または MATLAB*
や Simulink* による記述が可能です。
ダイアグラムは自動的に TLM SystemC
コードに変換されます。コードはホスト
ベースの実行と監視のために、C++ コン
パイラーによりインストルメントおよび
ビルドされます。以下の解析ツールを備え
ています。
1. テキスト・プリントアウト・コンソール。
2. プロット・チャート: 時間関数で変化、
別の変数関数で変化。
3. 画像の表示。
4. アルゴリズムのプロファイリング: アル
ゴリズムの実行時間 (最短、最長、平均)
の測定実行回数の計時と計数。
5. タイムライン: 時間内に並列的に実行さ
れるプロセス、その状態 (実行、ブロッ
ク、アイドル) とプロセス間通信 (データ
読み/書き、イベントの取得/設定) - タイ
ミングの UML シーケンス図と同等の内
容を表示。
システムのユース・ケースがキャプチャー
されると、結果として得られる SystemC の
テスト・ケースは、下位レベルのより詳細な
モデルまたは最終実装の検証に使用され
る、SystemC ベースのシミュレーション
および検証環境で再利用できます。グラ
フィカルな抽象化と自動コード生成によ
り、手動のコーディングと比べ、生産性が
2 桁の単位で向上すると予測され、より
複雑で現実的なテスト・ケースの作成が
可能になります。
2
表 2 Intel® CoFluent™ Studio for Timed-Behavioral Modeling のお得な点
機能
利点
概念から設計への移行時間を
短縮
• シミュレーションを推進する現実的な作業負荷シナリオを
作成します
• モデルにより実験が可能になり、革新を強化します
• シミュレーションが解析とチーム間の交流を促進します
• モデルが特許申請をサポートします
• グラフィックスを処理の複雑さに合わせて最適化します
生産性の向上
• C/C++ プログラミングとクワベて、グラフィックスの効率が
2 桁単位で向上します
設計の最適化
• パイプライン、バッファー、タイミング
実装と検証の時間を短縮
• 実行可能な実装仕様を提供します
• 検証のテスト・ケースを再利用します
• システム・シミュレーションとの統合モデルを再利用します
以下の点は、特にハードウェア・システムに
おいて有利です。
• SoC 仮想プラットフォームの複雑なユー
ス・ケースを作成し、トラフィック・ジェネ
レーターまたは標準の TLM-2 バス・イン
ターフェースを通じてシミュレーションを
実行します。
システム・アーキテクティング
マルチプロセッサー/マルチコア組み込み
システムは、現在および将来のアプリケー
ションの性能と低電力の要件に対処でき
なければなりません。また、将来生じる問
題に応じて、設計者は以下のように対処す
る必要があります。
• TLM 仮想プラットフォームへの統合に、
複雑な専用のハードウェア IP による
機能モデルをモデリングおよび再利用
し、同じテスト・ケースを使用してモデル
とその RTL 実装を検証できます。
• 異なるコア上で実行されるハードウェアと
ソフトウェアのコンポーネントの挙動と
性能を予測する
システムの挙動とユース・ケースの実行可
能なモデルの指定により、Intel CoFluent
Studio を使用して、組み込みシステムまた
はチップの実行可能な仕様および検証用
テスト・ケースを実現します。
• ハードウェア・アクセラレーションのため
に適切な機能を選択する
• 必要なメモリ、電力消費、帯域幅、計算
リソースを評価する
• ハードウェアの仮想化とスケジューリン
グの層をスーパーバイザー、ハイパーバイ
ザー、リアルタイム・オペレーティング・
システム (RTOS) といった複数レベルから
検証して、非対称マルチプロセッサー
ユース・ケースのモデリング
IP モデリング&評価
ユース・ケース
ユース・ケース
CoFluent
IP
生成
生成
TLM SystemC
統合
テスト・ケース
作業負荷/テスト・ケース
仮想プラットフォーム
TLM IP
図 1 生成された SystemC モデルの再利用
統合
TLM IP
(AMP)、スーパーバイザー AMP (sAMP)、
または対称マルチプロセッサー (SMP)
アーキテクチャーの選択による影響を
解析する
• ソフトウェアのタスク・スケジューリング
と優先順位を解析する
• システムの通信トポロジー、すなわち
バス、ネットワーク、インターコネクトを
解析する
リソースが共有されるマルチプロセッサー/
マルチコア・プラットフォーム上でのハード
ウェア/ソフトウェア混合アプリケーション
の実行をモデリングする場合、モデルをさ
らに洗練させる必要があります。このため
のリソースとして、コア、バス、共有メモリ
が使用できます。
Intel CoFluent Studio for System
Architecting (SA) では、設計者のシステム
計算、通信およびストレージ・ユニットを
記述し、記述されたプラットフォーム上での
アプリケーションの実行も記述できます。
アプリケーションとユース・ケース・モデル
MsQ2
F1
V1
MsQ1
F0
プラットフォーム・リソース・モデル
N0
Ev
F31
V3
P1 (HW)
F32
M
F3
性能解析
設計空間の
探索
仮想システム (SystemC)
インターフェースと通信ネットワーク
P0
P2
P1
F0
MsQ1
IntP0
N0
IntP01 MsQ1
F1
V1
MsQ2
F2
MsQ2
N1
IntP1
IntP2
Ev
V1
F31
V3
F32
F3
V1 M
RTOS
図 2 アプリケーションとプラットフォーム間のマッピング
TBM のシミュレーション結果以外に、SA
シミュレーションは以下を提供します。
表 3 Intel® CoFluent™ Studio for System Architecting のお得な点
組み込みシステムまたはチップ・アプリケー
ションとユース・ケースのリアルタイム挙動の
モデリングと検証に、プロジェクトのライ
フサイクルの任意の時点で、Intel CoFluent
メモリ
マッピング
図 3 システム・アーキテクティングの監視ツール
• パフォーマンス・プロファイリング:
システムとシステムの各コンポーネントに
ついて、リソース負荷 (パーセントまたは
MCycles/s)、消費電力、メモリ・フット
プリント、コスト性能 (時間に対する
最小、最大、平均、動的プロファイル) が
取得されます。
P2
(SW)
N1
性能属性
設計者はまず、システム実行プラットフォー
ムの静的モデルを作成します。次に、TBM
のプロセスをコアに割り当て、共有データ
をメモリに保存し、プロセッサー間物理
リンク上のデータをルーティングします。
この操作はマッピングまたは割り当てと
呼ばれ、シンプルでインタラクティブなド
ラッグ・アンド・ドロップ編集で実行しま
す。マッピングまたは割り当ての結果得ら
れたモデルは SystemC に変換し、TBM と
類似の方法でシミュレーションできます。
• より拡充したタイムライン機能: プロ
セッサーの通信インターフェース、OS
スケジューリング、バス・トランザクション
の表示。
通信ネットワーク
P0 (HW)
F2
機能
利点
生産性の向上
• マルチコア・アプリケーションの分解を簡素化します
– プロセスとプロセス間の通信と同期
• グラフィカル・モデル = 実装の青写真
– 組み込み設計者にガイドラインを提供します
– 実行時間の予算でアルゴリズムの開発ができます
リスクの軽減
• 潜在的なリアルタイムの問題を回避します
– ハードウェアとソフトウェアのリリース前からリスクを軽減でき
ます
– デッドロック、競合状態、CPU スターベーションなどのリスクを
軽減します
• プロジェクトのキャンセルと遅延を減少させます
最終製品の最適化
• 制約なく、柔軟にアーキテクチャーを活用できます
• 並列実行に最適なアーキテクチャーを特定します
– タスク割り当て、CPU 負荷、通信トポロジー
• 性能とその他の要件とのトレードオフを解析します
– メモリ・フットプリント、消費電力、コスト
3
Studio を使用できます。Intel CoFluent Studio
では、
マルチコア/マルチプロセッサー・
プラットフォーム・モデル上でのアプリケー
ションおよびユース・ケース・モデルの実行
により、性能データを予測できます。
割り当てられるモデルは、完全なハード
ウェア/ソフトウェア・システムの記述と
シミュレーションを包括した仮想システム
です。
TLM またはサイクル・アキュレイト仮想
プラットフォームまたは仮想プロトタイピ
ング・モデルと異なり、仮想システムは IP
モデルのアセンブリに依存せずに、実際の
組み込みソフトウェア・コードとファーム
ウェア (ドライバー、オペレーティング・
システム、入力/出力ライブラリなど) の
ハードウェアと命令セット・シミュレー
ション (ISS) をモデリングし、性能データ
を抽出します。
Intel CoFluent プラットフォーム・モデル
は、コンピューティング・ユニット、バス、
ネットワーク・ルーター、ポイント・ツー・
ポイント・リンク、メモリ、DMA、I/O
インターフェースとスケジューラ―から
成る汎用パフォーマンス・モデルから構築
されます。パラメーターと較正データは、
各コンポーネントの特性の設定に使用さ
れます。ハードウェアとソフトウェアの実行
は、TBM で決定される計算と通信のシー
ケンスによりシミュレーションされます。
実行時間も TBM で設定されます。実行時
間は、C/C++ コードのホストベースのプロ
ファイリングで測定された、または変動範
囲から探索された較正データからバック・
アノテートできます。これにより手間がかか
らず短期間でモデルを記述し、シミュレー
ション結果を得られるようになります。
表 4 仮想プロトタイピング・ソリューション
仮想化テクノロジー
仮想システム/Intel CoFluent
仮想プラットフォーム
仮想シリコン・プロトタイプ
性能予測
迅速なソフトウェア開発
ハードウェア/ソフトウェア・
コベリフィケーション
ソフトウェア/ファームウェア・コード
不要
必要
必要
ハードウェア IP
不要
必要 (TLM)
必要 (RTL)
メッセージ・レベル – ISS なし
TLM/CA + ISS
RTL + ISS
高
中/低
低
1000 倍単位までの高速化
∼100 倍単位までの高速化 (TLM)
1x
低
中/高
高
数週間
数か月
プロジェクト終了
目的
抽象化と精度
探索および最適化要因
シミュレーション速度
モデリング作業
性能予測
CoFluent の詳細については、cofluent.intel.comをご参照ください。
性能試験に使用されるソフトウェアと作業負荷の最適化は、インテル マクロプロセッサー上での性能に限定されている場合があります。SYSmark と MobileMark などの性能試験は、特定のコンピューター・システム、
コンポーネント、ソフトウェア、操作、および機能を使って測定されています。これらの要素のいずれかの変更により、結果は異なる場合があります。他の製品に搭載した場合の性能など、予定される購入内容の詳細な
評価に役立つその他の情報および性能については、事前にお問い合わせください。
性能試験と定格は、特定のコンピューター・システムおよびコンポーネントを使用して測定されており、試験測定時のインテル製品の大まかな性能を示すものです。システムのハードウェアまたはソフトウェアの設計
または構成の違いにより、実際の性能に影響が及ぶ場合があります。システムまたはコンポーネントを購入する前に、他の情報源を参照し、性能を評価してください。性能試験および Intel 製品の性能の詳細につい
ては、www.intel.com/performance/resources/limits.htm をご覧になるか、電話 1-800-628-8686 (米国内) または 1-916-356-3104 にお問合せください。
記載される日付と製品はすべて計画目的のものであり、予告なく変更される場合があります。
各ベンチマークの相対的な性能は、初回プラットフォーム試験における実際のベンチマーク結果を考慮し、1.0 を基準値として割り当てて計算されています。その他のプラットフォーム試験の相対性能の計算では、
基準プラットフォームの実際のベンチマーク結果を他の各プラットフォームのベンチマーク結果にそれぞれ分類し、報告される性能改善に相関する
相対性能の数値を割り当てて計算されています。
本書に記載されている情報は、インテル製品との関連によって提供されています。明示的にせよ黙示的によ、本書を通じた知的財産権に対するライセンス付与は
認められていません。
かかる製品に対してインテルの販売条件で規定されている場合を除き、インテルはいかなる責任も負わず、特定目的への適合性、市場性、またはあらゆる特許、
著作権またはその他の知的財産権の侵害に関する法的責任または保証を含む、インテル製品の販売および使用に関し、明示的にせよ黙示的にせよいかなる
保証もいたしません。インテル製品は、医療、救命、または生命維持の用途を対象としたものではありません。インテルは、製品に関する仕様や説明を予告なしに
変更する可能性があります。
Copyright © 2012 Intel Corporation. 無断転載・複写禁止。Intel、Intelのロゴ、Intel CoFluent Studio、Intel CoFluent Readerは米国およびその他の国における Intel Corporation の
商標です。
*その他の名称およびブランドは他者の所有物として主張されている場合があります。
Printed in USA
0612/VP/OCG/XX/PDF
Please Recycle
327424-001JP