組み込みソフトウェア開発技術:6.組み込みソフト開発支援ツール
5
0
0
全文
(2) 6. 組み込みソフトウェア開発支援ツールの動向. 図 -1 LSI ドライバ開発用ツール. ら存在するプロセッサのシミュレータは,組み込みプ. 含めていくつか存在するようになってきた.残念なが. ログラム開発の支援を目的とはしていなかった.一言で. ら,その操作性や教育資料が十分でないため,広く普及. 言えば,ターゲット CPU 上での実行に比べて 10 倍とか. するには至っていないが,今後の展開が期待されてい. 100 倍の実行時間がかかるため学習用以上の使い道はあ. る.その一例に日立システム製の ITRON/TOPPERS 対応. まりなかったといえる.ところが,最近はパソコンの性. シミュレータ(http://www.hitachi-system.co.jp/embd/. 能の飛躍的な向上とシミュレータ開発環境の向上により. index.html)がある.. 十分な実行速度でかつ多種類の組み込みプロセッサに対 応するシミュレータが開発可能になってきた. それらは,. ●バーチャル・プラットフォーム. ツールの特性が活きてくる用途によって以下のように分. ハードウェアの振る舞いをシミュレートした上. 類できる.. で,RTOS ま で を 一 貫 し て シ ミ ュ レ ー ト す る ツ ー ル.. ● LSI ドライバ開発用. Windows 上でプロセッサから周辺 LSI ,WindowsCE の ような OS からアプリケーションまでをすべてシミュ. コンパイルしたターゲットプログラムを SoC 内の IO. レーションしてしまう.こうなると本当の仮想ターゲッ. ペリフェラルを含めてシミュレーションを実行するツー. トがパソコン上で動作する世界を実現できる. ただ,ハー. ル.こうしたツールはサプライヤが供給する組み込み. ドウェアのタイミングシミュレーションはしないのでど. プロセッサと周辺 LSI までを含めたドライバ開発など. ちらかというとカスタムなハードを利用した組み込みア. に効果がある.今後,SoC サプライヤが力を入れる領. プリの開発加速が目的となる.大規模開発に対してハー. 域になると考えられる.このタイプの製品例としては,. ドの試作待ちという組み込みソフト固有の開発ボトル. 図 -1 に示す富士通社製のソフチューン開発環境が挙げ. ネックを本格的に改善するためのツールといえる.図 -2. られる.図はターゲットのソースコードとその実行した. は, Virtio 社製(http://www.virtio.com/products) のシミュ. 結果としてディジタル出力の時系列パターンを表示して. レータ例である.この製品では CPU のコアロジックの. いる例である.. 上に状態モデルで周辺チップの動作仕様を付加する. こうしたツールの出現によってハードウェアの開発ス. ● RTOS を前提にしたアプリケーション開発用. ケジュールによる制限を緩和できるようになった.. RTOS のシステムコールや割り込みなど個別シリコン より少し高いレベルから上のレイヤでシミュレーショ ンを能率よく実行するツール.以前から RTOS のシミュ. プログラム生成ツール. レータツールは存在したもののきわめて高価であっ た.最近になって組み込みシステムのデファクトであ. 組み込みのソフトウェア開発では,プログラミング. る ITRON 系の廉価なシミュレータがオープンソースを. に先立って数学的な設計モデルを先に定義する場合があ IPSJ Magazine Vol.45 No.7 July 2004. 705.
(3) 特集 組み込みソフトウェア開発技術. 図 -2 バーチャル・プラットフォーム. 3). る.自然法則に支配されるメカトロニクスの分野がそ. ExecutableUML と呼ばれる方法論に基づいたマルチド. の典型だ.この場合には,人間が設計モデルをきちん. メインの統合モデリングツールの進展が期待される.こ. と作成したあとのプログラミング作業をツールに任せ. れらは,UML で表現された特定の定義(メタモデル)に. ることができる.たとえば,古典的な制御理論で定義. 基づいてソフトウェアモデルを実行可能にしている.つ. された設計モデルから C プログラムへの自動翻訳が実用. まり,UML モデルをホスト上でモデルとしてシミュレー. レベルに達している.PID 制御(Proportional, Integral,. ション,検証した上で組み込みターゲットのプログラミ. Derivative)の自動制御ブロック図で制御条件を設計する. ング言語と拘束条件に従ってモデル変換すなわちプログ. と,その要件を満たすプログラムが生成される.例とし. ラムを生成する.とはいえ,最適化やモデリングにスキ. て MathWorks 製のシミュレータとコードジェネレータ. ルが要求されるため,広く普及するには,まだ時間を要. (http://www.mathworks.com/products/rtwembedded/). するだろう.. がある. ただし,PID 制御モデルは連続系のフィードバックモ デルなので制御条件が閾値を超えたときに振る舞いを. 信頼性・品質保証ツール. 劇的に変えるといったモデルをそこに組み込むことは スコープ外である.連続系モデルに従ってブレーキを. 従来,多くの組み込みシステムは,エレクトロニクス. かけ続けたが,衝突までにあと 2m ,速度が依然として. の延長として開発されてきた.日本全体で電気,電子関. 20m/Sec ある場合にエアバッグ爆薬に点火するようなモ. 連の技術者 30 数万人のうち何割かが組み込みシステム. デルが現実には必要となる.こうなると,数学的に枯. のソフトウェア開発にかかわっている.残念ながら,こ. れた分野と非線形な条件制御の組合せを全体としてモ. れらの技術者の中で,開発される組み込みソフトウェア. デリングする手法が求められる.特に組み込みの特徴. の信頼性や品質までを十分に考えて開発する技術者はい. である実時間性を含めたモデリングが必須要件となる.. まだ一握りであり,多くの技術者は適切なプログラミン. こ の よ う な ニ ー ズ に 対 し て は,MDA(Model Driven. グ作法やソフトウェア工学に関する知識も不十分な状態. 1). 2). Architecture) とか MDD(Model Driven Development). で開発を続け,量産 ROM の素を作っている.. と最近言われる方法に基づいて多くのツールが利用でき. このような環境の中で,最近の組み込みソフトウェア. るようになってきた.こうしたモデル中心のソフトウェ. の需要拡大から,その信頼性や品質保証についての問題. ア開発は今後のトレンドとなる可能性が高い.たとえば. が顕著になってきた.この理由はいくつかある.. 706. 45 巻 7 号 情報処理 2004 年 7 月.
(4) 6. 組み込みソフトウェア開発支援ツールの動向. 品質試験する必要性が増えてきた.これに対応するもの. ●プログラミング言語を使用する技術者の学習 環境の劣化. はツールとは呼ばれず,検証スイートと呼ばれるが,試 験を支援するツールの一種である.たとえば,日本ノー. 電気や電子技術者にとって,プログラミング言語はア. ベルの試験スイート(http://www.jnovel.co.jp/products/. プリケーションを作成するための手段であるから,それ. itron/seg_itronOutline.html)がある.. 単体での品質やリスクを考えるという意識は薄い.特に. また,組み込みの世界では単体テストは自分でやるの. 組み込みでは C と C++ の利用が多いが,その言語上の. が当たり前だった.これをより少ない工数で実施する支. リスクを理解せずに使用しているケースが多い.この. 援ツールも登場している.IPL 社の Cantata++(http://. 問題を緩和するためには熟練したプログラマについてレ. www.iplbath.com/products/p0000.shtml)などは,今後. ビューを重ねることが好ましいが,その機会を得ること. の C++ 開発需要に応えるツールだろう.. は難しくなりつつある.ここで,人間のレビューを代 替するツールが静的テストツールとして使われるよう になっている.静的テストの考え方とツールは,ツール. 設計情報統合ツール. QA 集(http://www.toyo.co.jp/ss/topics/qacqa.html) が 組み込みソフトウェアは,性能最適化を図ると CPU. 参考になる.. や ハ ー ド ロ ジ ッ ク に 依 存 し た コ ー ド が 増 え て く る.. ●組み込みシステムの安全性への影響が高く なってリコールリスクの増加. 10KLOC 以下の組み込みのコードは,これを徹底的に追 求する必要があるので一般に普遍性は得にくい.これが. 個々の企業や個人のスキルアップにだけ依存するので. 災いして量産の部品が変わったときに対応する組み込み. は社会的な安全保障の枠組みとして不十分である.ヨー. ソフトウェアの部品を間違えるという事故がなくならな. ロッパの国々は,国家の枠を超えて規格化を行うことで. い.こうした問題は,一般にソフトウェア構成管理技術. 安全保障の一助とする仕組みを活用している.この枠組. で対処する.組み込みの場合,さらに,SoC の一般化や. みで自動車用の組み込みソフトウェアの信頼性を確保. MEMS(Micro-Electro-Mechanical System)などの進展か. する開発ガイドラインが 1990 年代に発行された.これ. ら,ハードウェアと対応するソフトウェアの組合せを確. は,MISRA 開発ガイドラインと呼ばれ,特に C 言語のプ. 実に管理する能力が現代の組み込み技術者には求められ. ログラミング標準は別冊で MISRA-C ガイドラインとし. るようになってきた. ハードウェアの制御プログラムは,. て発行されている(http://www.misra.org.uk/) .日本国. ハードメーカから供給される場合も増えているし,ミド. 4). 内でも,MISRAC 解釈の研究は盛んである .また,こ. ルウェアの採用も避けられない.. のガイドラインへの準拠の程度を測定して組み込み C プ. しかし, ここはソフト側だけであがいても限度がある.. ログラムの信頼性指標とするツールが実用化されてい. そこでハードとハード対応ソフトウェアの両者を確実に. る.その一例は,ルネサステクノロジー社製の SQMlint. 構成管理するためのツールが提供されている.. (http://www.renesas.com/jpn/products/mpumcu/. このようなハードも含めたシステム開発においては,. toolhp/datsheet/misra_c/)で,統合環境にチェック機能. ギガバイト単位の設計データを速やかに出し入れするこ. をアドオンしている.. とが求められるので,ソフトウェア工学的な構成管理機. ●システムのテストが直感的にできなくなりつ つある. 能に加えてツールとしての IO 性能が要求される.たと えば,設計のチェックイン/アウトに要する時間やイン デックス参照のオーバヘッド時間,ネットワークをまた. アプリケーションのソフトウェアを開発するために利. がった並行開発のシンクロナイズ作業時間などなど一般. 用するミドルウェアや RTOS の機能範囲がかなり広がっ. のソフトウェア開発ではあまり気にしない問題である.. てきている.ケイタイの開発を見ていても i モードが. こうした分野に特化したツールは今後多数登場するこ. コードの総量を一挙に数倍(100 万行オーダ)まで増やし. とが予想される.先行している製品例として ICmanage. た.こうなると,ソフトウェアのテストを自前のドライ. 社の IC マネージがある(http://icmanage.com/products/. バとスタブで地道にこなすのは時間的に難しくなる.こ. index.html).. のために,組み込み分野に特化したテストツールが利用 され始めている. 特 に 日 本 で は 組 み 込 み の RTOS 需 要 の 半 分 以 上 が μ ITRON である.このため,各社のμ ITRON 互換性を IPSJ Magazine Vol.45 No.7 July 2004. 707.
(5) 特集 組み込みソフトウェア開発技術. 図 -3 要求フェーズ支援ツール. 要求フェーズ支援ツール. 今後の動向. このカテゴリは,一般ソフトウェアと重複するが,組. 現在の組み込みソフトウェア開発に問題は多々ある. み込みであるか否かにかかわらず利用の必要性が認識さ. が,中でも大規模化する開発に対する適切な支援ツール. れつつあるので説明したい.. の問題は重要性を増している.組み込みソフトウェア開. 組み込みソフトウェアの開発問題でも要求との不一致. 発はシステム開発の下流工程という認識が変わりつつあ. や開発工程での要求トレースは大きな問題である.要求. る.このため,製品企画やハード開発との情報共有と多. 管理/トレースツールは,海外では航空宇宙,防衛など. 人数,複数拠点での開発をうまく支援するツールが求め. の組み込みシステム分野を筆頭に 20 年も前から利用さ. られる.こうしたツールは, 既存の構成管理, 要求トレー. れ,実践されてきているが,日本の組み込み開発の世界. スツールの改良と連携によって実現されるであろう.. ではほとんど議論されてこなかった.この理由には,要. また,扱う問題がハードウェアや自然現象を含む組み. 求記述は各国の母国語で行われるのが普通であり,管理. 込み開発では問題を文言で記述できないという場面も多. 方式がその文法に強く依存しているため海外のツールと. い.これゆえに,要求,設計,実装の工程を通して一貫. 日本語の親和性で問題があったためといわれている.最. した用語や製品動作の概念を維持することすら現在のと. 近になって,図 -3 に例示するような要求管理ツールが. ころ実現されていない.この解決には,従来の支援ツー. 日本語でも利用できるようになり,今後はこうしたツー. ルの延長では十分ではない.新しい概念や仕組みの提案. ルの導入が進むと考えられる.. と,ツールの開発が待たれる.. ただし,これらのツールに関しては,その利用上の方 法論の確立が課題となる.特に非機能仕様をどのように 要求として顕在化させるかは重要である.これらの問題 については,大学を始めとする研究機関で適切な方向性 の提示が期待されるテーマと考えられる.組み込みソ フトウェアシンポジウムのような場での専門家による議 論にも期待したい.図 -3 は,ボーランド社の CaliberRM (http://www.borland.com/caliber/)で要求の相互関連を マトリクスとツリーで表示している例である.. 708. 45 巻 7 号 情報処理 2004 年 7 月. 参考文献 1)Mellor, S., Scott, K., Uhl, A. and Weise, D.: MDA Distilled, AddisonWesley(2004). 2)IEEE Software 特集:Model Driven Development(Sep./Oct. 2003) . 3)Balcer, M. and Mellor, S. : ExecutableUML MDA モデル駆動型アーキテ クチャの基礎,翔泳社(2003). 4)MISRA − C 研究会 編:組込み開発者におくる MISRA − C 組込みプロ グラミングの高信頼化ガイド,日本規格協会(2004). (平成 16 年 6 月 7 日受付).
(6)
図
関連したドキュメント
る、というのが、この時期のアマルフィ交易の基本的な枠組みになっていた(8)。
【ご注意点】 ・カタログの中からお好みの商品を1点お 選びいただき、同封のハガキに記載のお
えて リア 会を設 したのです そして、 リア で 会を開 して、そこに 者を 込 ような仕 けをしました そして 会を必 開 して、オブザーバーにも必 の けをし ます
(7)
親権者等の同意に関して COPPA 及び COPPA 規 則が定めるこうした仕組みに対しては、現実的に機
(今後の展望 1) 苦情解決の仕組みの活用.
航続距離(約 700km ) 水素充填時間(約 3 分). 氷点下始動性(
戦後考古学は反省的に考えることがなく、ある枠組みを重視している。旧石 器・縄紋・弥生・古墳という枠組みが確立するのは