...

インペラス社の革新的な仮想プラットフォームベースのソフトウェアテスト

by user

on
Category: Documents
25

views

Report

Comments

Transcript

インペラス社の革新的な仮想プラットフォームベースのソフトウェアテスト
インペラス社の革新的な仮想プラット
フォームベースのソフトウエア・テスト
「ISIT第15回カーエレクトロニクス研究会」
2014年7月14日(月)
© 2014 Imperas Software Ltd.
アジェンダ

東京ナノファーム合同会社
(代表)横川秀美([email protected]): インペラス社日本営業担当
 インペラス社紹介
 基本技術とソリューション概要

アップウィンドテクノロジーインコーポレイテッド
(社長)中村憲一([email protected]): インペラス社日本技術担当
 ツールデモ
Page 2
© 2012 Imperas Software Ltd.
インペラス社概要

ミッション
 組み込みSW開発課題に対しての仮想プラットフォームベースのソリューションを提供



設立:2007年
本社:英国オックスフォード
組織:
 Simon Davidmann, founder/CEO
 EDA veteran entrepreneur: Co-Design Automation (SystemVerilog),
Ambit, Chronologic Simulation (VCS), Gateway/Cadence (Verilog), …
 Larry Lapides, VP sales
 EDA veteran entrepreneur: Calypto (SLEC), Verisity (Specman),
Mentor/Exemplar Logic, …
 Engineering team has EDA, processor backgrounds

Funding: self-funded (completely employee-owned, no VC)

実績:




Page 3
設立以来毎年売り上げが順調に伸びている
主要顧客:車業界、産業機器業界、家電業界、他
OVPの登録者数は、商用顧客、大学研究関係を含め、全世界で数千名規模に拡大
大手主要プロセッサーベンダー7社とモデル開発のパートナー
© 2012 Imperas Software Ltd.
組み込みSW開発:
現アプローチと課題
 ハードウエア・プロトタイプ
 プロトタイプからデバック情報の入手が面倒(その都度ドライバSWの変更が必要)
 プロトタイプを必要な時に使えない(数の制限と場所)、 また最新のバージョンを
反映していない。
 仮想プラットフォーム
 サイクル精度のシミュレーション
 プロジェクトの初期段階で使用不可(モデル開発に多くの時間と費用を要する)
 システム全体に対してのシミュレーション速度が遅い
 インストラクション精度のシミュレーション
→インペラス社は、インストラクション精度のシミュレーションを提供
⇒「SW開発にはそれぞれのアプローチの使い分けが必要」
Page 4
© 2012 Imperas Software Ltd.
仮想プラットフォームの主要要求項目:
→インペラス社のソリューション
 実時間に近いスピード →100MIPS以上、LinuxOSブート時間は数秒
 ターゲットバイナリを変更不要で実行可能 →SlipStreamer
 常に同じ結果を保証するシミュレーター
→C*DEV, S*DEV, M*DEV (商用向け)
→OVPSim(評価向け、大学向け)
 マルチ・プロセッサ、周辺デバイスを含むプラットフォームのデバック・ツール
→M*SDK (Multi-Processor/Multi-Core/Multi-Thread Software Development Kit)
 標準言語でのモデルと、そのソースコードを公開
→C言語のモデル、SystemC/TLM wrapper提供
→OVP(Open Virtual Platform):無償登録のウエブサイト
・125種以上のプロセッサーモデル、100種類以上の周辺デバイスモデル、各種プラットフォームサンプル
 新規モデルを簡単に開発可能
→iGen(周辺デバイスモデル開発ツール:開発期間:数時間から数日)
→cpuGen(プロセッサーモデル開発ツール:開発期間:2‐3ヶ月)
 低価格で仮想プラットフォームを展開
→ツールライセンス費用のみの投資: OVP内のすべてのモデルを追加費用不要で使用可能。
Page 5
© 2012 Imperas Software Ltd.
インペラス社の革新的仮想プラットフォーム
を構成する4つのコンポーネント
(4)ツール:
SW開発、デバック、テスト、解析
(3)デバイス・モデル:
ハイパフォーマンスでプログラマブル
(2)ウエブサイトのインフラ:
標準化を目指し基本技術を無償で提供
Integrated
tool suite
(1)基本技術:シミュレーション
High performance
processor models
Page 6
© 2013 Imperas Software Ltd.
Platform coded in
standard format
e.g. OVP, SystemC
(1)基本技術:シミュレーション
*SIM
Just-in-time code morphing アルゴリズムが
実機に近い実行スピードを実現
ToolMorphing™
ツールとプロセッサー・モデルが、ダイナミックに同じ
コード・ストリームとして統合されている
SlipStreamer™
アプリケーションSWのソースコードを
変更せずにデバック可能
QuantumLeap™
ホストPCのマルチコアを最大限に生かした並列シミュ
レーション・アルゴリズムが更なる高速化を実現
Page 7
© 2013 Imperas Software Ltd.
シミュレーターとモデルが統合
(SlipStreamer, ToolMorphing)
一般的なシミュレーター実行
Application
binary
instruction to
be executed
Sim
Engine
results
file
Processor
Model
*SlipStreamer Interception librariesによって:
・アプリケーションデバッグ時のソースコード修正不要
シミュレーターとモデルが統合
Application
binary
・ 最小オーバヘッドでの実行が可能
OVP
Fast Processor
Model
(ツール情報を含む)
SlipStreamer
Binary Interception
Library
instruction to
be executed
tool code
Page 8
© 2012 Imperas Software Ltd.
ToolMorphing
Engine
(モデルとツール
の統合)
results
+
analysis
file
QuantumLeap: 現商用シミュレーター
に比べて15倍以上の高速化実現
50
45
40
35
30
25
20
15
10
5
0
43.0743.07
40.49
15x faster
avg.
on quad host
33.01
28.74
22.94
19.39
5.12
10.5311.57
7.49 8.90
Platform Containing Four ARM Cortex-A9 UP
Page 9
© 2012 Imperas Software Ltd.
(2)ウエブサイトからインフラ技術提供
無償登録でプラットフォーム構築に必要なアイテムをダウンロード、
及びOVPコミュニティ・フォーラムに参加
Processor Model
125+ open source
models
Peripheral Model
UART, timer, interrupt,
DMA, I/O, etc.
Modeling API
For processor,
peripheral, & platform
Environment
Third party interfaces
to SystemC, OSCI, etc
Page 10
OVPworld.org
© 2013 Imperas Software Ltd.
(3)検証済みプロセッサ・モデル提供:
(125種類以上)

ARM: Models for ARMv4™, v5™, v6™, v7™ and v8™ architectures


MIPS: Models for microMIPS, MIPS32 and MIPS64 architectures



Verification, licensing, and distribution relationship
Including MMU, MPU, DSP, FPU, MT, MSA, VZ architecture subsets
Renesas: Models for V850 architecture, 16 bit microcontroller cores






Including MMU, MPU, TCM, Thumb™, Thumb-2™, Jazelle™, SIMD, VFPv3, NEON™, TrustZone,
virtualization, …
V850 ES, E1, E1F; M16C cores
Power Architecture family cores
Synopsys (ARC): Models of ARC6xx, ARC7xx families
Altera Nios II
Xilinx Microblaze
Other CPU families available: MS1750a, openCores, SPARC, proprietary
Page 11
© 2013 Imperas Software Ltd.
シミュレータ・ベンチマーク結果
Page 12
Confidential and Proprietary © 2014 Imperas Software Ltd.
25-Jan-14
(4)解析・テストツール群
・VAP (Verification, Analysis, Profiling)
・3D-Debug (Spatial: view all platform components, Temporal: set conditional breakpoints,
Abstraction: firmware, OS kernel, driver, application SW concurrently)


現在53種類のツール提供。バージョンアップ毎に随時追加。
容易にカスタム機能追加可能:故障注入、プロトコル検証、SWビヘイビア解析、他
Page 13
© 2013 Imperas Software Ltd.
シミュレーションのインフラと階層:
(アプリケーションSW変更不要でカスタム機能を簡単に追加可能)
Page 14
© 2012 Imperas Software Ltd.
ツール製品群:
C*DEV, S*DEV, M*DEV, M*SDK (*の呼び方:“スター”)
Imperas Product Family
Controller
Standard
Multicore
C*DEV
S*DEV
M*DEV
M*SDK
Model Library (Apache 2.0 open source license)
✔
✔
✔
✔
iGen™ (peripheral model generator)
✔
✔
✔
✔
✔
✔
✔
✔
✔
✔
✔
✔
✔
Simulation (*SIM)
Base capability, single core
Standard capability, homogeneous
Advanced capability, heterogeneous
✔
VAP(Verification/Analysis/Profiling) 3D-Debug™
QuantumLeap™
Parallel Simulation Option
Processor model framework generator
Page 15
© 2014 Imperas Software Ltd.
cpuGen™
網羅的なテストソリューション事例:
NIRA Dynamics AB (Audi subsidiary)

アプリケーション
 ABSデータを使ったタイヤプレッシャーテスト
 リアルタイム解析を実行する為に、数種類のプロセッサ上で
ソフトウエアを実行。信頼性が最重要条件

ソフトウエア・テストと解析
 Stimuliはロードテストデータ使用
 Regressionスイートで数千のテストを夜間で実施
 メモリー解析によってスタックとヒープの振る舞いを確認

Imperas M*SDKツール、OVPプロセッサモデル




完全なテストには、高速シミュレーションが必須
バグ・トラッキングには、マルチ・プロセッサのデバッグが必須
マルチ・プロセッサーのサポート(複数ABSシステム)が必須
ソースコード変更不要でのメモリー解析が、シミュレーション
結果の正しさを保証する
“Imperas社M*SDK ツールは、我々のコードのバグを発見しただけでなく、使用中のコンパイ
ラーのバグも発見した。しかもツールでのテスト機能なくしてソフトウエアを出荷出来なかった。”
Peter Lindskog, Head of Development, NIRA Dynamics AB
Page 16
© 2013 Imperas Software Ltd.
Confidential and Proprietary © 2012 Imperas Software Ltd.
SimulinkとOVP統合事例:
 OFFIS:ドイツの大学研究機関
 ウェアラブル医療機器の開発プロジェクト
 OVPSimがマスターシミュレーター
 http://system-synthesis.org/offissimlink
 FZI:ドイツの研究機関
 詳細システム解析プロジェクト
 Simulinkがマスターシミュレーター
 論文:“Scalable problem-oriented approach for
dynamic verification of embedded systems”
Page 18
© 2014Imperas Software Ltd.
OVPの性能解析の有効性確認プロジェクト:
LIRMM:フランスの大学研究機関
 OVP機能を拡張し、擬似サイクル
精度タイミングCPUモデルを開発し
、このモデルの精度を実システムと
比較しながら評価
 その結果は、ベンチマークの種類
によって、0.06%から10.56%のモ
デル精度が得られた。
 論文:“Instruction-driven Timing CPU
Model for Efficient Embedded
Software Development using OVP”
Page 19
© 2012 Imperas Software Ltd.
デモ
 各種プラットフォームのシミュレーション
 Single core, Multi-core shared memory, Many-cores, Heterogeneous, etc.
 QuantumLeap
 インペラスツールの各種機能
 シミュレーター・ビルトイン
 VAP (Verification, Analysis, Profile)
 コード・カバレッジ
 コード・プロファイリング
 メモリー解析
 OS Aware
 カスタムツール事例
 故障注入
 SWプロトコル
Page 20
© 2012 Imperas Software Ltd.
もしご興味を持たれ方は:

まずOVP無償登録を!
⇒プレゼン資料、技術資料、デモ、フォーラ
ムなどの情報参照可能

http://www.ovpworld.org/forumspage
OVP内のプラットフォーム事例を使い、
シミュレーターの評価に興味
⇒OVPウエブサイトから評価用シミュレータ
(OVPSim)ライセンス依頼

先進テスト・デバッグツール(M*SDK)の
評価に興味
⇒NDA(秘密保持契約)の締結後、短期のラ
イセンス提供
Page 21
© 2013 Imperas Software Ltd.
Fly UP