1 © 2011 The MathWorks, Inc.
モデルベース開発の業界動向
2011.10.14
MathWorks Japan
インダストリーマーケティング部
柴田 克久
2Agenda
はじめに
今日のモデルベース開発とその背景
–
ユーザー事例にみるモデルベース開発のトレンド
事例紹介:東風車両
/Medrad/Faraday
モデルベース開発のトレンド
–
ユーザーニーズの変化への対応
MBDを支援するMathWorksツールの今後の展望
–
マルチドメインシステムモデリング
–
シミュレーションの高速化
–
コード生成
–
テスト検証の強化
終わりに
3
はじめに
4会社概要
-
MathWorks, Inc.
–
1985年創業
–
本社:米国
マサチューセッツ州, Natick
–
従業員
2,300名超
–
製品:
MATLABプロダクトファミリ, Polyspace
6ヶ月毎に最新版をリリース(2006/03~) 3月と9月の年2回(R20XX a/b)–
25カ国に代理店を展開
–
350社以上のパートナー
導入実績
–
175カ国以上、100万人以上のユーザ
–
3,500以上の大学
日本法人
: MathWorks Japan
–
2009/7/1より営業開始
–
オフィス:東京、名古屋、大阪
Earth’s topography on an equidistant cylindrical projection, created with MATLAB® and Mapping Toolbox™. Natick本社ビル
5
MathWorks製品のご紹介
視覚的に理解可能なモデリング
/シミュレーション環境
–
ブロック線図シミュレーション環境
–
開発ツールの連携による統合された開発環境
–
自動コード生成による組込み
科学技術計算のための最先端の開発環境
–
対話的なプログラミング環境
–
アプリケーション固有の簡潔なプログラミング言語
–
データの探索、解析、計算およびグラフィックス機能
–
アルゴリズム開発、カスタマイズ可能な各種機能
MATLAB
Simulink
Polyspace
テストケースを必要としない静的なコード解析ツール
–
ソースコード内にランタイムエラーが存在しないことを証明
–
MISRA-Cなどのコーディング規約の適用
–
IEC61508, ISO26262, DO-178など各種認証のレポート
6
MATLAB&Simulinkプロダクトファミリ(機能別)
Fixed Point Toolbox,Simulink Fixed Point
Stateflow, SimEvents Simscape, SimRF, SimElectronics, SimPowerSystems Simulink 3D Animation, Gauges Blockset, Simulink Report Generator EDA Simulator Link,
Simulink Verification and Validation, Simulink Design Verifier,
SystemTest, Polyspace xPC Target Parallel Computing Toolbox, MATLAB Distributed Computing Server MATLAB Coder, Simulink Coder, Embedded Coder, Filter Design HDL Coder,
Simulink HDL Coder Statistics Toolbox,
Curve Fitting Toolbox, Symbolic Math Toolbox,
Optimization Toolbox, Neural Network Toolbox
MATLAB Compiler, MATLAB Builder NE/JA/EX,
Spreadsheet Link EX
Database Toolbox, MATLAB Report
7
MATLABプロダクトファミリ(適用分野別)
Control System Toolbox System Identification Toolbox
Fuzzy Logic Toolbox Robust Control Toolbox Simulink Control Design Simulink Design Optimization
Signal Processing Toolbox DSP System Toolbox Communications System Toolbox
Wavelet Toolbox Fixed Point Toolbox
RF Toolbox Phased Array System Toolbox
SimRF Image Processing Toolbox
Computer Vision System Toolbox
Mapping Toolbox Data Acquisition Toolbox Instrument Control Toolbox
Image Acquisition Toolbox Vehicle Network Toolbox Financial Toolbox
Econometrics Toolbox Datafeed Toolbox Fixed-Income Toolbox Financial Derivatives Toolbox Bioinformatics Toolbox SimBiology 8
主要な顧客エリア
航空宇宙
/防衛
自動車
通信
エレクトロニクス
半導体
産業機器・オートメーション
エネルギー産業
教育
バイオ・製薬
金融サービス
9
今日のモデルベース開発とその背景
10モデルベース開発の
Best Practice
ー車載機器開発における
MATLAB利用事例
システム設計から、制御アルゴリズムの開発、プロトタイピ
ング、組込みソフトウェアの実装、検証に
モデル
を適用
例)
–
パワートレイン制御
ガソリン
/ディーゼルエンジンの燃焼制御
トランスミッション制御
–
HEV/EVの制御
モーター制御
バッテリー制御
–
走行制御
サスペンション制御
EPS
システム開発 ソフトウェア 開発11
ユーザー様の声: 自動車業界
アイシン・エィ・ダブリュ株式会社 久保様, 「JMAAB活動紹介」, JMAAB Open Conference 2009
12
東風電動車両、モデルベースデザインを
使用して
ハイブリッド電気自動車のバッテリ
管理システムを
開発
チャレンジ
ハイブリッド電気バス用のバッテリ管理制御シス
テムを開発すること
ソリューション
コントローラー設計のコードをモデルリング、検証、
生成するために、
MathWorks のモデルベース
デザイン
ツールを採用
結果
予定より早くプロジェクトを完了
設計の再利用が可能に
全てのアプリケーションコードを自動生成
“モデルベースデザインの導入により、アイデ アの発案から量産コードの生成に至るまでの 開発プロセスを統合することができました。 MathWorks ツールのおかげで、設計の早期 段階から連続的な検証が可能となり、我々が 持つ高度な技術力を活かして重要なバッテリ 管理技術の開発ができるようになりました" Dr. Xiaokang Liu Dongfeng Electric Vehicle Link to user story13
Medrad社はMathWorksのツールにより
MRI血管造影剤注入ポンプの安全性を確保
チャレンジ
患者への薬剤の安全レベルを管理する
MRI血管造
影剤注入ポンプの設計
ソリューション
ポンプの圧力センシング技術の改善に
MathWorks
のツールを使用
結果
設計期間を数か月短縮
名誉ある産業賞を受賞
FDA の承認を獲得
“MathWorksツールにより、シ ステムレベルでコンポーネント 間の相互作用を理解することが 可能となり、物理特性をモデル 化し、ポンプの安全限界を非常 に効率的かつ迅速に 決定するこ とができました。” John F. Kalafut Medrad Medrad 社のSpectris Solaris 造影剤注入システムLink to user story
14
Faraday がSIP開発を加速し、
NANDフラッシュコントローラECCエンジンの
ゲート数を
57%まで削減
チャレンジ
SoCおよびASICの開発の高速化
ソリューション
システムレベルシミュレーションの高速化、システム性能
の改善、および商品化までの期間短縮のためのモデル
ベースデザイン環境構築に
MathWorks製品を採用
結果
シミュレーションを
200倍高速化
スループット性能を
15%向上
ゲート数を
57%削減
“Simulink環境はシステムレベルアー キテクチャの検討に理想的です。シ ミュレーションは従来のワークフロー より200倍 速くなりました。 — そして SimulinkモデルはCにもHDLにも容易 に変換することが できます。それは高 いスケーラビリティと再利用性を実現 するでしょう。” Ken Chen Faraday Link to user story15
モデルベース開発のトレンド
1.
MBD適用分野の拡大
–
MBDの効果は、
航空宇宙・防衛、自動車以外
の分野でも証明済み
–
MBDの適用は
制御、信号処理のいずれの分野にも可能
である
2.
自動コード生成適用の深化
–
プロトタイプ向けから
量産用
Cコードへ
–
Cコード(ソフトウェア開発)から
HDL
(
IC, LSI開発)へ
3.
安全性、品質保証への対応
–
FDAに代表される第三者認証機関も、MBDに基づく
開発プロセスの
信頼性
や、
開発された製品の品質
を認めている
4.
地域的な広がり
–
北米・ヨーロッパ・日本から
アジア
へ
16MBD Cost
Non-MBD
Cost
Advantage
MBD
Telecom/Datacom
$3,224,478
$6,279,861
94.9%
Auto/Transportation $2,270,597
$3,151,078
38.8%
Industrial
Automation
$1,605,783
$1,593,047
-0.8%
Medical
$1,265,059
$2,269,310
79.4%
Military/Aerospace
Special Analysis
出展:Model-Based Design in Practice – A Survey of Outcomes for Engineers and Business Leaders/Embedded Market Focus
MBD適用分野の拡大の背景には…
17 0 200 400 600 800 1000 1200 1400 1600 1800 1990's 2002 3G 2010
KLOCS Engineering Man Months
組込みソフトウェアの開発規模は増大中。
開発要員を増やせば解決できる問題か?
出展: Bob Frankel, Chief SW strategist & TI Fellow
自動コード生成の適用深化の背景
18
Visteon, SAE Technical Paper 2004-01-0269, March 2004
http://www.mathworks.com/mason/tag/proxy.html?dataid=4361&fileid=20307
自動生成されたコードはハンド
コードよりもよい結果に
19
安全性、品質保証への対応の背景
機能安全規格への対応
–
IEC61508
–
ISO26262
–
DO-178B
–
DO-254
ガイドラインへの準拠
–
AUTOSAR
–
MISRA-C
–
MAAB Style Guide
–
NASA Orion GN&C Guideline
20
地域的な広がりの背景には
…
地域別比較
: MBD vs. non-MBD
MBD Cost
Non-MBD
Cost
Advantage
MBD
North America
$3,153,452 $3,921,519
24.4%
Europe
$2,722,134 $3,744,894
37.6%
Asia
$3,374,067 $10,189,266
202%
実際、アジアにおける開発プロジェクト毎に比較すると
non-MBD開発
では
MBD開発の約2倍の人数の開発者が投入されている。
21
1.
新しいテクノロジーへの対応
2.
実現手段は多様化・複雑化
3.
安全性・品質への厳しい要求
1.
マルチドメイン
システムモデリング
2.
コード生成
3.
テスト
&検証
ユーザーニーズの変化への対応
統合開発環境へのステップ
22MBDを支援する
MathWorksツールの今後の展望
23
モデルベースデザインにおける
MATLAB&Simulinkの位置付け
対象となるシステムを記述した“モデル”を仕様とし
て定義し、このモデルをよりどころとして開発プロセ
スを再構築する手法。
ソフトウェアの分析
/
設計モデル
信号処理や制御
アルゴリズムのモデル
広義のモデルベース開発
狭義のモデルベース開発
(
MathWorks製品の適用範囲)
(日経エレクトロニクス2月号/2008 より) 24テ
ス
ト
&
検証
システム設計
環境モデル
タイミング/制御ロジックアルゴリズム
アナログモデル デジタルモデル研究
要件定義
システムモデリング
実行可能な仕様書
–紙ベースの仕様書を補完する「モデル」 –チーム間コミュニケーションを改善シミュレーションによる設計
–複合ドメインシステムをモデルに統合 –設計のトレードオフ探索 –サブシステム間の相互作用検証性能向上や全体最適化を実現するには
異なる
技術ドメイン
を組み合わせた検討が必要
25
マルチドメインシステムモデル
風力発電システムの「実行可能な仕様書」モデル
26様々なモデリングアプローチ
太陽電池セルのコンポーネントモデル
第
1原理
Simulink
物理コンポーネント
Simscape
より高度な電気コンポーネントライブラリ
SimElectronics
27
シミュレーション事例:安川電機様
アプリケーション
出典:MATLAB EXPO2008「メカトロ機器開発における連成シミュレーション」メカトロ機器開発用連成シミュレーション環境の構築
課題
試作検証に課題
・
機能開発、機器開発コスト大
・
実機による統合検証の工数大
・
最終実機検証後の手戻り
メリット
連成シミュレーション環境構築
・
機械装置、周辺環境必要なし。
・
実機による統合検証の性能評価
・
問題点の分離が容易
・ 設計資源の有効利用
http://www.mathworks.co.jp/mason/tag/proxy.html?dataid=11776&fileid=65793 28コンポーネント開発
/ 実装
RF, Analog MCU DSP FPGA ASICElectric VHDL, Verilog C, C++
テ
ス
ト
&
検証
システム設計
環境モデル
タイミング/制御ロジックアルゴリズム
アナログモデル デジタルモデルコード生成 ・ テスト&検証
自動コード生成
–事前に検証されたC, HDLを自動生成 –再現性の高い実装結果 –プロトタイプテストを効率化連続したテスト・検証
–モデルを再利用した検証用テストベンチ –協調シミュレーション/テストの自動化 –より分かりやすい指標で可視化実現性や性能見込を早期に確認し、検証を
効率化するには
アルゴリズムと実装の架け橋
が必要
29
自動コード生成を利用したテスト検証の例
アルゴリズム検証のためのコード生成
–
開発早期に実現性を見極める手段の一つ
ラピッドプロトタイピング
シミュレーション高速化
他の設計
/開発プラットフォームへデザインをエクスポート
実装を検証するためのコード生成
–
実装対象となるコンポーネントモデルからコード生成
PILS
–
実装対象以外のコンポーネントモデルからコード生成
HILS
30MATLAB & Simulinkからのコード生成機能
Simulink Coder (C)
DSP & µC
FPGA & ASIC
MATLAB
Coder (C)
Embedded Coder (C)
Simulink HDL Coder
(Verilog or VHDL Code)
31
異なるターゲットを対象としたコード生成の適用例
Virtual Platform
Simulink 高抽象度モデル
モ
デ
ル
の詳細化
H/W実装用 HDLコード生成
Simulink HDL CoderSimulink 詳細モデル
32IDE
Embedded
Coder
HDL Simulator
EDA
Simulator
Link
Simulink
データ解析C/HDLを統合したマルチドメインシステム開発
システムモデル~シミュレーション~
C/HDLコード生成~検証
組込み用コードを協調シミュレーションにより検証
フィードバック系で検証可能
入力信号 速度制御 MPUC
電流制御 FPGA SW電源 AC MotorHDL
生成 生成 AC モーター33
標準規格への対応
34
35 MATLAB code
マルチ
ドメイン
Stateflow Simulink Blockマルチ
ターゲット
C C++ HDL PLC Simscapeコンポーネント間の相互作用分析
システム全体の最適化
マルチドメインモデルからマルチターゲットへ実装
“実行可能な仕様書”
Simulink Model
コード生成
モデルのエントリー
36システムシミュレーションの高速化
並列処理技術へのスケーラブルな対応
並列処理リソースを自動
的に利用可能なコンポー
ネントライブラリ、モデリン
グ環境の整備
モデルに変更を加えるこ
となく、シミュレーションを
実行する環境を変えるだ
けで高速化が実現
シングル
プロセッサ
マルチコア
マルチ
プロセッサ
クラスタ
グリッド、クラウド
GPU
37
コーディングからモデルの詳細化へ
システムレベルの
高抽象度モデル
全体最適化
アルゴリズム検証
詳細設計
詳細設計
ブロックレベル
(
HW部)
ブロックレベル
(
SW部)
コード生成設定
•デバイス指定 •リソース共有 •パイプライン化, etc.コード生成設定
•プロセッサ指定 •メモリマップ •スケジューラ, etc.自動生成
実装用コード
(
HDL or C)
38モデル・コード・実機による協調検証環境
モデル
実機
コード
39
シミュレーション実行前にエラーを検出
• テストベクタ生成の自動化
• より速く振舞いの正しさを
検証
エラー検出を自動化
バグの発見を自動化
シミュレーションを実行し、
エラーを検出
エラーを検出、修正した後に
シミュレーションを実行
Before
After
40実行可能な仕様書
–紙ベースの仕様書を補完する「モデル」 –チーム間コミュニケーションを改善シミュレーションによる設計
–複合ドメインシステムを同一環境でモデル化 –設計のトレードオフ探索 –サブシステム間の相互作用検証自動コード生成
–事前に検証されたC, HDLコードを自動生成 –再現性の高い実装結果 –プロトタイプテストを効率化連続したテスト・検証
–システムモデルを検証用テストベンチに再利用 –協調シミュレーション/テストの自動化 –より分かりやすい指標で可視化シミュレー
ションに
よる設計
実行可能な
仕様書
連続した
テスト・検
証
自動
コード生成
ModelsMATLAB & Simulinkによる
41 © 2011 The MathWorks, Inc. MATLAB and Simulink are registered trademarks of The MathWorks, Inc. See
www.mathworks.com/trademarks for a list of additional trademarks. Other product or brand names may be trademarks or registered trademarks of their respective holders.