メディア

モデルベース開発ツールを使いこなせ組み込み開発の効率化を実現するために(4/5 ページ)

» 2007年04月01日 00時00分 公開
[Warren Webb,EDN]

モデルベース開発ツールの実例(2)

・独自のモデリング環境で高機能化――Simulink

 多くのモデルベース開発ツールは、UMLをベースとする。その一方で、独自のグラフィカルモデリングシステムに基づいて構築されたソフトウエア開発ツールもいくつか存在する。例えば、米The MathWorks社が提供する「Simulink」は、システムをモデリング、シミュレーション、解析するための対話型ツールである(図3)。同ツールはモデルの構築に使用するブロックをライブラリとして提供するが、そのブロックのカスタマイズも可能となっている。モデルの構成要素をサブシステムに分割して構成を簡略化したり、複数のプロジェクトで再利用したりすることもできる。対話型のシミュレータでは、システム性能を評価した上で設計を最適化することが可能である。

 Simulinkはイベント駆動の動作をモデリングするための「Stateflow」や、ANSI/ISO C準拠のコードを自動生成する「Real-Time Workshop Embedded Coder」と統合することが可能である(両ツールともThe MathWorks社製)。いずれのツールにも「MATLAB」(価格は1900米ドル)が必要で、SimulinkまたはStateflowの拡張ツールは2800米ドル、Real-Time Workshop Embedded Coderは5000米ドルで販売されている。

図3 Simulinkのユーザーインターフェース 図3 Simulinkのユーザーインターフェース TheMathWorks社製のSimulinkでは、ライブラリとして提供される定義済みブロックを使ってシステムのモデルを構築し、システム性能を評価することができる。

・ターゲット別の最適化機能を提供  ――Gedae

 米Gedae社が提供する「Gedae」も独自仕様のモデルベース開発ツールであり、レーダー、ソナー、イメージング、オーディオなどの信号処理用途に多く利用されている(価格は7500米ドルから)。Gedaeのツールセットには、ワークステーション上で用いる開発環境に加え、PowerPCプロセッサ、FPGA、DSPなど、ターゲットごとのランタイムカーネルが含まれている。こうしたターゲットごとに最適化が行える点がその特徴である。ただし、モデルの構築は、ターゲットやプログラミング言語の違いにかかわらず行える(図4)。

 Gedaeは、あらかじめ用意された、あるいはユーザーが入力した実装パラメータを用いて、ターゲットにおける性能が最適になるようにモデルに処理を加える。その後、ターゲット上でアプリケーションを実現するためのコードを出力する。Gedaeには、アプリケーションを複数のプロセッサにマッピングし、実行状態を視覚化するためのさまざまなツールも含まれている。複数の基板ベンダーからサポートパッケージが提供されており、開発キット「Gedae BSP(board support package)」により、ユーザーはコードを独自のハードウエア向けに最適化することができる。

図4 Gedaeのユーザーインターフェース 図4 Gedaeのユーザーインターフェース Gedaeはターゲットごとの最適化機能を備えている。ただし、モデルの作成は、ターゲットやプログラミング言語の違いにかかわらず行える。

・広範なターゲットのサポート――LabVIEW

 米National Instruments社は、20年前に開発したグラフィカルプログラミング言語「LabVIEW」を最近アップグレードした。これもまた組み込みソフトウエア設計者向けにコードの自動生成機能を提供している。システムモデリングおよびシミュレーションの機能に加え、最新のLabVIEWはオブジェクト指向プログラミングにも対応した(カプセル化のサポート)。

 LabVIEWの新しい組み込みソフトウエア開発モジュールは、ほとんどのリアルタイムOS、および多くの32ビットプロセッサ/DSPなどのターゲットに対し、C言語のコードを生成する。LabVIEWの価格は1199米ドルからで、組み込みソフトウエア開発モジュールは1万995米ドルである。

 National Instruments社はモジュール式で再構成可能な工業用制御/集録システム「CompactRIO」も提供している(価格は2495米ドルから)。CompactRIOには、リアルタイムプロセッサとFPGAが内蔵されている。このFPGAはユーザーがプログラミングでき、LabVIEWアプリケーションを同社従来品の100倍の速度で実行可能な並列処理演算エンジンである。設計者は、LabVIEW、「LabVIEW Real-Time Module」、「LabVIEW FPGA Module」を用いて、独自のハードウエア回路を定義することができる(図5)。筐体は4または8スロットのいずれかを備え、ホットスワップ可能な15個の産業用I/Oモジュールを組み合わせることができる。

図5 CompactRIOの外観 図5 CompactRIOの外観 NationalInstruments社のCompactRIOを使えば、再構成可能なFPGAとグラフィカル開発ツールであるLabVIEWを用いてハードウエア回路を定義できる。

Copyright © ITmedia, Inc. All Rights Reserved.

RSSフィード

公式SNS

EDN 海外ネットワーク

All material on this site Copyright © ITmedia, Inc. All Rights Reserved.
This site contains articles under license from AspenCore LLC.