ということで、あらためてERIKA Enterpriseの説明は図6の通りになる。OSEK/VDXへの対応状況は図7で、OSEKの基本的なコンポーネントにはおおむね対応している形だ。
図7 BCC1〜ECC2はコンフォーマンスクラスで、基本タスクのみのBCC1から、1つの優先度に対して複数のタスクの割り当ておよび多重起動が可能なECC2まで定義される。OILはOSEK Implementation Languageの略でコンフィギュレーション用の専用言語のサポート、ORTIはOSEK Run Time Interfaceでデバッガとのインタフェース、COM(Communication)はECU間の通信で、現在はCCCA/CCCB/CCC0/CCC1の4つが定義されているが、この当時は2つだった(クリックで拡大)もう少し一般的なERIKA Enterpriseの特性を、Linuxと比較したのが図8と図9である。RTOSとLinuxを比較することそのものがちょっとアレ、という意見はあるかと思うが分かりやすいのも事実だ。
図8 RETISにおける最初のRTOSのターゲットは16ビットMCUだったそうで、それもあって基本的にはMCUがターゲットで、最小構成だと8ビットMCUでも稼働するというRTOSらしい構成。強いて普通のRTOSとの違いを挙げれば、OSEKやAUTOSARを強く意識していることだろうか(クリックで拡大)AUTOSARあるいはOSEK/VDXへの配慮が目立つのがユニークではあるが、提供される機能や特徴そのものは一般的なRTOSというのが理解できる。なお、ビルドツールとしてはシステム記述言語仕様であるOIL(OSEK/VDX Implementation Language)をベースにした「RT DRUID」と呼ばれるツールが提供されることになる(図10)。
図10 先のライセンシングにも関係する話だが、ERIKA Enterpriseは完全に静的リンクで構成されるのが大きな特徴である。まぁこのあたりは便利さと安全性のトレードオフであるが、車載向けを前提にすると安全性に振るのは仕方がない(クリックで拡大)さて、このERIKA Enterprise、当初サポートしたMCUを順に並べてゆくと、STマイクロの「ST10」、Armの「ARM 7」、日立の「H8」、アルテラの「Nios II」、マイクロチップの「dsPIC」、アトメルの「AVR」、インフィニオンの「TriCore」フリースケールの「S12/PowerPC 5000/MPC5674」、マイクロチップの「PIC24/PIC32」、ラティスの「MICO32」といった具合。そして、最初のメジャーカスタマーとしてイタリアのCobra Automotive Technologiesを獲得する(図11)。
図11 Cobra AT(Cobra Automotove Technologies)は2014年8月、Vodafoneに買収された。現在の社名はVodafone Automotiveとなっている(クリックで拡大)次いで同じくイタリアの大手サプライヤーであるマニエッティ・マレリ(Magneti Marelli)にも採用され(図12)、その後はさまざまな企業からの採用事例が続いている(図13)。ちなみに、現在の主要な(公開できる)顧客リストはWebサイトで公開されており、かなり広範に利用されていることが分かる。
なお、ここまでERIKA EnterpriseとLinuxの比較表もあったが、エンジンやボディーの制御はERIKA Enterpriseが、HMIの処理はLinuxが担うというコンセプトも提案していた(図14)。
Copyright © ITmedia, Inc. All Rights Reserved.
組み込み開発の記事ランキング
コーナーリンク
よく読まれている編集記者コラム