TOPPERS/ASPカーネル(以下,ASPカーネル)は、TOPPERS新世代カーネルの基盤(出発点)となるリアルタイムカーネルで、TOPPERS新世代カーネル統合仕様に準拠しています。ASP(Advanced Standard Profile)の名前が示す通り、μITRON4.0仕様のスタンダードプロファイル準拠のリアルタイムカーネルであるTOPPERS/JSPカーネルを拡張・改良する形で開発しました。
ASPカーネルは、ターゲットシステムごとに必要なソースコードを一つにまとめた簡易パッケージと、簡易パッケージの内容を分割した個別パッケージの二つの形態で配布しています。簡易パッケージはこちらから、個別パッケージはこちらから、それぞれダウンロードできます。
また、ASPカーネルの仕様を記述したTOPPERS新世代カーネル統合仕様書はこちらから、ASPカーネルを使用する際に必要となるコンフィギュレータのソースコードはこちらから、それぞれダウンロードできます。
ASPカーネルは、20年以上に渡るITRON仕様の技術開発成果をベースとして、完成度の高いリアルタイムカーネルを実現したものです。完成度を高めるという観点から、カーネル本体の仕様については、枯れた技術で実装できる範囲に留めています。保護機能を持ったカーネルやマルチプロセッサ対応のカーネルは、ASPカーネルを拡張する形で開発しています。
ASPカーネルの主な適用対象は、高い信頼性・安全性・リアルタイム性を要求される組込みシステムです。ソフトウェア規模の面では、プログラムサイズ(バイナリコード)が数十KB〜1MB程度のシステムを主な適用対象と考えています。それより大規模なシステムには、保護機能を持ったカーネルを適用すべきと考えられます。
ASPカーネルの機能は、カーネル内で動的なメモリ管理が不要な範囲に留めています。これは、高い信頼性・安全性・リアルタイム性を要求される組込みシステムでは、システム稼働中に発生するメモリ不足への対処が難しいためです。この方針から、カーネルオブジェクトは静的に生成することとし、動的なオブジェクト生成機能は設けていません。ただし、アプリケーションプログラムが動的なメモリ管理をするためのカーネル機能である固定長メモリプール機能はサポートしています。
ASPカーネルは、現時点で、以下のターゲットプロセッサ/ターゲットシステムをサポートしています。
| ディレクトリ名 | 開発環境 | |
|---|---|---|
| プロセッサ(型番) | システム(メーカ名) | |
| arm_gcc | GCC | |
| ARM | Skyeye(ISSシミュレータ) | |
| ARM(AT91SAM7A) | AT91SAM7A3EK(ATEMEL) | |
| ARM(AT91SAM7S) | BTC090(ベストテクノロジ) | |
| arm_m_gcc | GCC | |
| ARM Cortex-M3(LM3SXXXX) | LM3SXXXX(TI(旧Luminary Micro)) | |
| ARM Cortex-M3(STM32F103) | CQ-STARM(CQ出版) | |
| sh12a_gcc | GCC | |
| SH2A(SH7211) | AP-SH2A-0A(アルファプロジェクト) | |
| sh12a_shc | HEW | |
| SH2A(SH7211) | AP-SH2A-0A(アルファプロジェクト) | |
| SH2A(SH7263) | SH7263 Evaluation Board R0K572630D001BR(ルネサスエレクトロニクス) | |
| sh34_gcc | GCC | |
| SH3(SH7727) | MS7727CP01((株)日立超LSIシステムズ) | |
| SH4(SH7780) | AP-SH4A-0A(アルファプロジェクト) | |
| h8300h_h8c | HEW | |
| H8/300H(H8/3048F-ONE) | HSB8F3048BF25SB(北斗電子) | |
| h8300h_gcc | GCC | |
| H8/300H | AKI-H8/3048F(秋月電子通商) | |
| H8/300H | AKI-H8/3069F(秋月電子通商) | |
| m16c_nc30 | HEW / TM | |
| M16C | Renesas Starter Kit for M16C/62P(ルネサスエレクトロニクス) | |
| M16C | HSB16C29S64NE(北斗電子) | |
| m32c_nc308 | HEW | |
| M32C | S810-CLG3-85(サニー技研) | |
| m32r_gcc | GCC | |
| M32102 | OAKS32R-Borad Kit(オークス電子) | |
| M32R-II | M3A-ZA36(ルネサスエレクトロニクス) | |
| nios2_gcc | GCC | |
| Nios II | FSMPB for Nios II(富士ソフト) | |
| microblaze_gcc | GCC | |
| MicroBlaze | SUZUME(YDKテクノロジーズ) | |
| MicroBlaze | Spartan-3A DSP 1800A(Xilinx) | |
| macos_gcc | GCC | |
| PowerPC | Mac OS X用シミュレータ | |
| m68k_gcc | GCC | |
| M68040(MC68LC040) | DVE-68K/40(電産) ※参考実装 | |
| rx_rxc | HEW | |
| RX610 | RX610 Renesas Starter Kit for RX610(ルネサスエレクトロニクス) | |
| v850_gcc | GCC | |
| V850 | CQ-V850(CQ出版) | |
TOPPERSプロジェクトのメンバとして、TOPPERS/ASPカーネルの開発に参加している開発スタッフは次の通りです(所属は参加した時点のもの)。
| 名前 | 所属 | 時期 | 担当 |
|---|---|---|---|
| 高田広章 | 名古屋大学 情報科学研究科 | 2006年〜 | ASPカーネル本体, M68040, MAC OS X用シミュレータ |
| 本田晋也 | 名古屋大学 情報科学研究科 | 2006年〜 | SH3/4, ARM, Cortex-M3 |
| 高木信尚 | 個人特別会員 | 2006年〜 | コンフィギュレータ |
| 今井和彦 | 宮城県産業技術総合センター | 2007年〜 | SH1/2A, H8/300H |
| - | (株)ヴィッツ | 2008年〜 | SH1/2A, M16C, M32C, RX |
| 松原豊 | 名古屋大学 情報科学研究科 | 2006年〜 | M32R |
| 安積卓也 | 立命館大学 情報理工学部 | 2008年〜 | HSB16C29S64NE, Skyeye |
| 高木伸英 | (株)未来技術研究所 | 2008年〜 | Cortex-M3 |
| - | 富士ソフト(株) | 2008年〜 | Nios II |
| - | (株)ワイ・デー・ケー YDKテクノロジーズ | 2008年〜 | MicroBlaze |
※ 開発スタッフの名前は、掲載を了承された方のみ記載しています。