TOPPERS/ASPカーネルとは

TOPPERS/ASPカーネル(以下,ASPカーネル)は、TOPPERS新世代カーネルの基盤(出発点)となるリアルタイムカーネルで、TOPPERS新世代カーネル統合仕様に準拠しています。ASP(Advanced Standard Profile)の名前が示す通り、μITRON4.0仕様のスタンダードプロファイル準拠のリアルタイムカーネルであるTOPPERS/JSPカーネルを拡張・改良する形で開発しました。

TOPPERS/ASPカーネルのダウンロード方法

ASPカーネルは、ターゲットシステムごとに必要なソースコードを一つにまとめた簡易パッケージと、簡易パッケージの内容を分割した個別パッケージの二つの形態で配布しています。簡易パッケージはこちらから、個別パッケージはこちらから、それぞれダウンロードできます。

また、ASPカーネルの仕様を記述したTOPPERS新世代カーネル統合仕様書はこちらから、ASPカーネルを使用する際に必要となるコンフィギュレータのソースコードはこちらから、それぞれダウンロードできます。

TOPPERS/ASPカーネルの適用対象領域と仕様設計方針

ASPカーネルは、20年以上に渡るITRON仕様の技術開発成果をベースとして、完成度の高いリアルタイムカーネルを実現したものです。完成度を高めるという観点から、カーネル本体の仕様については、枯れた技術で実装できる範囲に留めています。保護機能を持ったカーネルやマルチプロセッサ対応のカーネルは、ASPカーネルを拡張する形で開発しています。

ASPカーネルの主な適用対象は、高い信頼性・安全性・リアルタイム性を要求される組込みシステムです。ソフトウェア規模の面では、プログラムサイズ(バイナリコード)が数十KB〜1MB程度のシステムを主な適用対象と考えています。それより大規模なシステムには、保護機能を持ったカーネルを適用すべきと考えられます。

ASPカーネルの機能は、カーネル内で動的なメモリ管理が不要な範囲に留めています。これは、高い信頼性・安全性・リアルタイム性を要求される組込みシステムでは、システム稼働中に発生するメモリ不足への対処が難しいためです。この方針から、カーネルオブジェクトは静的に生成することとし、動的なオブジェクト生成機能は設けていません。ただし、アプリケーションプログラムが動的なメモリ管理をするためのカーネル機能である固定長メモリプール機能はサポートしています。

ターゲットシステム

ASPカーネルは、現時点で、以下のターゲットプロセッサ/ターゲットシステムをサポートしています。

ディレクトリ名 開発環境

 
プロセッサ(型番) システム(メーカ名)
arm_gcc GCC
  ARM Cortex-A9(R-Mobile A1) Armadillo-800 EVA((株)アットマークテクノ)
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出版)
ARM Cortex-M3(CY8C5xLP) CY8CKIT-050 PSoC 5LP Development Kit(Cypress Semiconductor)
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出版)
arc_gcc GCC
  DesignWare ARC EM Family (ARCv2 ISA) EMSK ver.1,ver.2(Synopsys)
  EM4,EM6(FPGA) EMSK ver.1(Synopsys)
  EM5D(and EM4),EM7D(and EM6)(FPGA) EMSK ver.2(Synopsys)

開発スタッフ

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

※ 開発スタッフの名前は、掲載を了承された方のみ記載しています。