株式会社デンソー
世界的な自動車用部品開発メーカの株式会社デンソーは、IAR Embedded Workbenchを導入することによって得られたメリットを次のように語っている。
「決め手となったのは、性能と機能安全対応です。特に性能は、最終的な製品のコストに影響します。先ほどコンパイラの速度とサイズの話を挙げましたが、20%も他社ツールに比べて性能差があると、製品開発側としては、その20%分のリソースを他に割り当てて付加価値を得ることを考えられます。もちろんコードサイズが小さくなると、ワンサイズ下のマイコンへの実装も可能になりますから部品コスト低減も可能になります。そういう最終製品のコストを下げることが可能になるツール、という意味でのコストメリットがあると思います。同じコストなら更に高性能、同じ性能なら更に低コスト、を実現してくれるツールということだと思います。」
御社の事業内容は?
先進的な自動車技術、システム、製品を、世界中の自動車メーカに提供するサプライヤーです。
その中で「基盤ソフト技術部技術企画室」は何を担当していますか?
弊社内には、様々な自動車用コンピュータ(Electronic Control Unit = ECU)の開発部署があるのですが、ECUに搭載されているマイコンのソフトウェア開発に使用するC/C++コンパイラ(以下コンパイラ)について、社内標準化のための評価、選定および品質確保を行っています。コンパイラには、半導体メーカの自社製品やサードパーティー製品やGCCのようなフリーソフトなど様々な選択肢があります。そういう製品群の中から、性能・品質のベンチマーク分析は勿論のこと、ライセンス形態とかかるコスト、サポート契約・体制等の調査などを行って、どのコンパイラが製品開発部署や弊社のお客様である自動車メーカ様にとってベストの選択なのかを見極めています。
御社がソフトウェア開発環境に対して抱えていた課題について教えて下さい。
先ず背景として、元々ハイエンド仕様の32ビットマイコンについては、以前から社内で標準的に使用しているコンパイラがあったのですが、その一方で機械系の部品やセンサ制御部分のインテリジェント化や小型モータ制御の拡大により増えてきた16ビットマイコンに対しての標準的なコンパイラは用意していませんでした。その理由として、16ビットマイコンは半導体メーカの統合・合併などを経ても、過去のシリーズを継承していることが多く、16ビットマイコン毎に開発環境(コンパイラ)も存在するため、標準的なものを選定しにくいということがありました。しかし、前述のように16ビットマイコンの採用も拡大傾向であり、また丁度その頃にルネサスエレクトロニクス社(以下ルネサス)の16ビット系マイコンのラインナップがRL78ファミリに統合されることもあり、16ビットマイコン用コンパイラも弊社内で標準的に使えるものを選定する必要があると感じていました。
課題を解決するためにIARシステムズのツールを検討した背景は何ですか?重要な判断ポイントは何だったのでしょうか?
RL78ファミリに対応したコンパイラとしてIARシステムズ(以下IAR)のツールがあることを知り、製品の説明を聞きました。もちろん他社製ツールもあるので、Dhrystoneや社内で実際に使用するものに近いECUソフトなどを使用して両者のベンチマークを取り比較検討しました。すると、コード速度においてIARのツールが平均で20%、最大で30%程度も優位という結果*1が出ました。またコードサイズにおいても、控えめな最適化オプションにしたはずのIARのツールが20%程度も小さなコードサイズとなり、コンパイラから出力されるコード速度とサイズのバランスがとても優秀なコンパイラだと感じました。その性能差を分析したところ、IARのツールはABI(Application Binary Interface)の使い方が上手く、実際の命令数も減っており、それが性能面の優位性に表れていたことがわかり、きちんとした技術的な裏付けも取れました。
*1あくまでベンチマーク時点での性能差であり、現在もその結果であるとは限りません。
開発現場の視点から、コンパイラで重要なのは、「速くて」「書いた通りに動く」ことです。検証の結果、それを実現できるツールとしてIAR Embedded Workbench for RL78標準版を直ぐに購入しました。その後暫くしてIARから機能安全版がリリースされたため、そちらに移行しました。
また、コンパイラの性能面以外にもIARのツールを採用した理由として、いくつか大事な点があります。
- ソフトウェアコンポーネント各部の単体検査ができるシミュレータが予め用意されていたことです。最近はシミュレータが用意されていないツールもあるのですが、この機能はソフトウェアコンポーネントの単体検査にも、コンパイラの評価にも必須であると考えています。
- ツールのライセンス形態と価格に柔軟なオプションが用意されていたことも、購入時だけでなく、その後の保守・運用面でも助かりました。
- 他にも大事なポイントとして長期供給面が挙げられます。自動車の部品はライフサイクルが非常に長く、10数年から20年もの間供給責任が発生する訳ですが、そうすると部品にしてもツールにしても事業継続性のあるメーカのものを採用することが重要になってきます。特に外資系メーカの場合だと日本法人があっても、単に営業事務所を構えているだけであったり、わずか数年で撤退してしまうということもありますので、多数の製品担当部署で長期間の開発・運用がある場合、それでは困ってしまうこともあります。IARはその点、長期的にサポート頂けるという印象を受け安心できました。
- ユーザーサポートの満足度があります。IARは、回答期日を守る(※1営業日以内に1次回答)サポート体制を提供してくれていますね。日本法人から直接タイムリーなレスポンスを頂けるのは営業、技術窓口に関わらず大変ありがたいです。また、ハンズオンセミナーも充実しており、セミナカリキュラムも受講側のカスタマイズ要望に気軽に相談にのって頂けるところも良かった点です。
IARのツールは他社と違って16ビット等の小規模マイコンやBSP含めた開発キットへの対応数が非常に多いので助かっています。様々な展示会での宣伝や、新製品情報で感じることは、目新しいアーキテクチャや高性能プロセッサへの対応といったハイエンド市場への参入競争に積極的なツールメーカが多い印象ですが、ローエンドマイコンに対するラインナップが充実しているツールメーカは少ない印象を持っています。車載製品においては前述のセンサ制御といったようなローエンドマイコンの領域が数多くあって、なおかつ重要な部分に使われています。ですので、IARのこの方針は是非継続してもらいたいです。
御社がIAR Embedded Workbenchを導入したことにより得られたメリットや解決できた課題は何ですか?
「性能」と「機能安全対応」です。特に性能は最終的な製品のコストに影響します。先ほどコンパイラの速度とサイズの話を挙げましたが、20%も他社ツールに比べて性能差があると、製品開発側としては、その20%分のリソースを他に割り当てて付加価値を得ることを考えられます。もちろんコードサイズが小さくなると、ワンサイズ下のマイコンへの実装も可能になりますから部品コスト低減も可能になります。そういう最終製品のコストを下げることが可能になるツール、という意味でのコストメリットがあると思います。同じコストなら更に高性能、同じ性能なら更に低コスト、を実現してくれるツールということだと思います。
同様に、解決できなかったことは何ですか?今後の要望はありますか?
Windows以外の環境にも対応頂けるとありがたいです。弊社の製品開発形態の中には、お客様である自動車メーカ様と共同でECU開発を行うこともあり、そうした場合にWindows以外のお客様の開発プラットフォームにも対応されていると提案の幅が広がります。Linux, Solarisなど様々なものがあり全てに対応するのは難しいと思いますが、Windows以外のプラットフォームへの対応にも今後期待しています。
機能安全についてお伺いします。開発ツール側の認証取得が重要視されだしたのは何時頃からですか?
機能安全対応はお客様である自動車メーカ様のご意向・ご要望をうかがいながら、具体的な対応時期を決めてきました。弊社は様々な自動車メーカ様と取引きさせて頂いているため、お客様によりご要望されるレベルも異なる場合もあろうかと判断し、コンパイラ単体での機能安全認証取得は必要になると以前から考えておりました。
同様に、重要視される最も大きな理由は何でしょうか?
もし仮に、機能安全認証の取れていないツールを採用していて、機能安全対応のご要望を受けた場合、認証取得のための人工(工数)や費用は我々コンパイラユーザー側で責任もって対応する必要が出てきます。そのためのコストは、機能安全対応と未対応のツールそのもののコスト差よりもはるかに大きくなります。多くのツールメーカは機能安全対応を考えて頂いてますが、その中にはおおまかに2種類あって、機能安全認証取得済みのツールを提供頂いているメーカと、認証取得はユーザーで行い、その支援をして頂くメーカがあります。しかしながら、ユーザーからするとコンパイラの認証はハードルが高過ぎて自力で行うことは技術的困難が生じる恐れがあるため極力、認証済みツールを採用することが望ましいと考えられます。単純な想定でも自社で認証取得を行うことを想定すると、優に数か月は掛かる計算になりますし、コンパイラに対する知識・技術や認証機関との交渉力を持った担当者を用意する必要もあり、現実的にも、非常に困難を要するものになると思います。
IARシステムズ製品で開発された、具体的な製品適用例を教えていただけませんか?
IAR Embedded Workbenchは現在16ビットマイコンに使用していることもあり、特に小型モータ制御アプリケーションに多く使われています。また、ボディ、シャーシ、パワートレインに関わるインテリジェントセンサ系やエンジン制御にも適用が拡大しています。また、車載製品以外の産業機器や民生品にも採用されていくこともありますし、その際に、機能安全ISO26262認証を取得していることは、決してマイナスにはならず、むしろプラス要素になるかと思います。今後も良いツールを提供し続けて頂けることを期待しています。