需要が拡大する自動車制御OSを知る ――機能向上に対応するには開発効率向上が必須

服部博行,森川聡久

tag: 組み込み

技術解説 2005年3月 8日

4.TOPPERS/OSEKカーネルの開発

 ヴィッツと名古屋大学は,OSEK/VDX仕様準拠のリアルタイム・カーネル「TOPPERS/OSEKカーネル注11」をオープン・ソース・ソフトウェアとして共同開発しました(表1).カーネルの開発にあたっては,将来的な仕様拡張に対応しやすいように読みやすさを重視し,できる限りC言語で記述しました(逆に言うと,実行速度や省メモリを目的としたぎりぎりのチューニングはしていない).また,ターゲット・プロセッサに依存する部分と依存しない部分を明確に分離して実装したため,移植しやすい構造になっています.

 TOPPERS/OSEKカーネルの原形は,名古屋大学大学院 情報科学研究科情報システム学専攻 高田・冨山研究室 (組み込みリアルタイムシステム研究室)が開発したものです.組み込みリアルタイム研究室は,以前よりトヨタ自動車と車両制御用のソフトウェアについて共同研究を進めており,その研究比較対象として「OSEK/VDX」のシステム・コール部分を開発していました.ただし,実際のターゲット・ボード上では稼働させていませんでした.

 筆者ら(ヴィッツ)は,成果物をオープン・ソースとして公開することを条件に利用許諾を得て,組み込みリアルタイム研究室と共同で「TOPPERS/OSEKカーネル」として開発し,プロセッサ上で稼働させました.また,名古屋市工業研究所とルネサステクノロジの協力を得て,MISRA-CやMODISTARCにも対応させました.

 注11;TOPPERS/OSEKカーネルは,NPO法人であるTOPPERSプロジェクトからオープン・ソースとして一般公開される予定.一般公開日程は現在検討中だが,プロジェクトの会員向けには2004年7月末にリリース済み.TOPPERSプロジェクトのURLは「http://www.toppers.jp/」.

表1 TOPPERS/OSEKカーネルの主な仕様

準拠した仕様 OSEK/VDX仕様 Version 2.2.1に準拠
(ただし,厳密に言うと異なる部分あり)
*1
適合クラス ECC-2*2に対応
対応プロセッサ ルネサス テクノロジ製M32C(M32C/83),M16C,H8S*3
開発ツール 統合開発環境:TM V.3.20A*4
Cコンパイラ :NC308WA V.5.10
シミュレータ・デバッガ:PD308S V.1.00
使用ROM領 約6Kバイト
使用RAM領域 59バイト
その他 MISRA-Cに対応(一部逸脱あり)
MODISTARCに対応

*1 p.104のコラム「待ち状態のタスクの起動順序」を参照.
*2 OSEK-OSには,対応するタスクの種類や多重要求の有無などにより,4段階のコンフォーマンス(適合)クラス(BCC-1,BCC-2,ECC-1,ECC-2)がある.ECC-2は最上位のクラスであり,OSEK-OSの全機能を利用できる.
*3 ただし,最初に公開するのはM32C対応版のみ.ほかは用意が整いしだい,順次公開する予定.
*4 GNU CコンパイラがM32Cプロセッサに対応していなかったため,無償で入手できるルネサス テクノロジの開発ツール(試用版)を使用した.

組み込みキャッチアップ

お知らせ 一覧を見る

電子書籍の最新刊! FPGAマガジン No.12『ARMコアFPGA×Linux初体験』好評発売中

FPGAマガジン No.11『性能UP! アルゴリズム×手仕上げHDL』好評発売中! PDF版もあります

PICK UP用語

EV(電気自動車)

関連記事

EnOcean

関連記事

Android

関連記事

ニュース 一覧を見る
Tech Villageブログ

渡辺のぼるのロボコン・プロモータ日記

2年ぶりのブログ更新w

2016年10月 9日

Hamana Project

Hamana-8最終打ち上げ報告(その2)

2012年6月26日