T-Engine
T-Engine(ティー・エンジン)は、組込みシステムの開発効率向上のためにミドルウェアの流通を目的として作られたプロジェクト[1]。
概要
[編集]T-EngineプロジェクトはT-Engineフォーラムにより推進されている。T-EngineフォーラムはTRONとT-Engineの提唱者である坂村健を会長として2002年に発足した非営利任意団体で、T-Engineの趣旨に賛同する国内の主要な半導体メーカー、セットメーカー、流通、サービス、自治体、学術団体をはじめとして、海外からも多くの企業、研究機関が参加している(2006年4月26日現在476団体)。
TRONプロジェクトでは、これまでにもITRONと呼ばれるリアルタイムOSでサービスコールの仕様の標準化(「弱い標準化」)を進め、携帯電話やFAX、コピー機といったさまざまな家電製品からATM、カラオケマシンといった業務用機器、さらには自動車のエンジン制御といった多様な分野で、非常に多くの製品に採用されてきた実績がある。しかし、より高機能で、ネットワーク対応が進む組込み機器やユビキタス・コンピューティング環境の開発効率を向上させるため、T-Engineでは各種のハードウェア仕様やドライバのインタフェース、オブジェクトフォーマットなどについても標準化(「強い標準化」)を行うことにより、ソフトウェア資産の共通化と有効活用を図ることを目標にしている。
具体的な開発プラットフォームとしてSHやMIPS、ARMさらにはFPGA上のソフトコアなど、各種CPUに対応した「T-Engine開発キット」が入手できる。また、応用製品として「Teacube」などもある。これらの開発環境上でソフト開発を行う一方、並行してハードウェアの開発を進め、最終的にT-Engine上で開発したソフトをターゲットハードウェアに移植する、といった開発手法をとることで、最終製品のTime-to-Marketの短縮を目的としている。
T-Engineフォーラムは、2015年4月1日に「トロンフォーラム(英文名:TRON Forum)」へと名称を変更した。 トロンフォーラムでは、T-Engineフォーラムとして推進してきたユビキタス・コンピューティング基盤技術の標準化に加え、「オープンデータ」や「オープンAPI」の整備・普及活動にも取り組んでいる[2]。
仕様
[編集]2006年現在、制定されている仕様は以下の通り。
ハードウェア仕様
[編集]標準T-Engine
[編集]携帯情報端末など比較的高度なユーザインタフェースを持つ機器のための開発用プラットフォーム。CPUボードのサイズは75mm×120mmと規格で決められている。LCD、拡張ボードなどを接続できるようになっている。具体的なパッケージとして各種CPUに対応した「T-Engine開発キット」がある。
μT-Engine(マイクロ・ティーエンジン)
[編集]家電や計測機器などで必ずしもGUIを必要としない機器のための開発用プラットフォーム。CPUボードのサイズは60mm×85mmと規格で決められている。具体的なパッケージとして各種CPUに対応した「μT-Engine開発キット」がある。
nT-Engine(ナノ・ティーエンジン)
[編集]小型家電機器等に適用するための、コイン大のプラットフォーム。標準T-EngineやμT-Engineといった開発用のプラットフォームではなく、デリバリを目的とした規格である。
pT-Engine(ピコ・ティーエンジン)
[編集]照明器具、スイッチ、センサー、錠、バルブなど、ユビキタスコンピューティング環境の最小単位に適用する機器のためのプラットフォーム。nT-Engine同様、デリバリを目的とした規格である。
ソフトウェア仕様
[編集]T-Kernel
[編集]詳細は「T-Kernel」を参照
T-Kernel (ティー・カーネル) は、オープンソースのリアルタイムオペレーティングシステム(RTOS)である。
T-KernelはT-Engine用のRTOSとして公開された[3]が、その後のバージョンアップに伴いT-Engine以外のターゲットハードウェアもサポートするようになっている[4]。
T-Kernelのソースコードは、トロンフォーラムがT-License(ティー・ライセンス)という独自のライセンスに従って無償で配布している。
T-Kernelは、従来からのITRONと同様、スタティックメモリアロケーションによるカーネルベースでのプログラミングが可能。しかし、T-Engine本来の目的である「ミドルウェアの流通」を実現するためには、ダイナミックメモリアロケーションが可能でプロセスベースでのプログラミングも可能なT-Kernel/Standard Extensionを使いこなすことが望まれる。
2013年9月に打ち上げられた国産ロケットイプシロンと、それに搭載された観測衛星ひさきに、μITRONとT-Kernelがそれぞれ使われた[5]。2014年12月3日にH-IIAロケットで打ち上げられたはやぶさ2の制御システムにT-Kernel 2.0が用いられた[6]。
T-Kernelの構造
[編集]T-Kernelは機能的に以下の3つの部分に分かれている[7]。
- T-Kernel/OS (Operating System)
- リアルタイムOSとしての基本機能を提供する。
(μITRONに相当する機能は主にこの部分が受け持っている。) - T-Kernel/SM (System Manager)
- デバイスドライバやシステムメモリの管理など、システム全体の管理機能を提供する。
T-KernelにおいてμITRONから拡張された機能となる。 - T-Kernel/DS (Debugger Support)
- デバッガなどの開発ツールが使用するための機能を提供する。
T-Monitor
[編集]OSの起動やデバッグを行うためのモニタソフトウェア。
応用製品(T-Engineアプライアンス)
[編集]T-KernelやT-Kernel Extensionを使った実際の製品である機器は「T-Engineアプライアンス(T-Engine応用製品)」と呼ばれる。 T-Engineアプライアンスのハードウェア仕様については特に制約はなく、それぞれの製品に最適なハードウェア構成とすることができる。
- Teacube - T-Engine+T-Kernel+T-Shell(BTRON仕様OS「超漢字」に似たGUIミドルウェア)の実装例。コンシューマ用ではなく、組込みエンジニア向けにT-Kernelの評価用機器として発売されている。
- Teaboard - T-Kernelを搭載した開発環境付きの学習用ボード[8]。
- μTeaboard - 組込み教育の教材や制御用ボードコンピュータとしての用途を想定したボード。パーソナルメディアが移植したPMC T-Kernelが搭載されている[9]。
脚注
[編集]- ^ 「T-Kernel標準ハンドブック」(改訂新版)、2005年6月10日、3頁
- ^ 「T-Engineフォーラムが「トロンフォーラム」へと名称変更」、トロンフォーラム
- ^ 「T-Kernel標準ハンドブック」(改訂新版)、2005年6月10日、10頁
- ^ 「サポートCPU一覧」、トロンフォーラム
- ^ 「TRONWARE VOL.146」、2014年4月5日、"Welcome to T-Engine Forum & Ubiquitous ID Center"
- ^ 「T-Kernel標準ハンドブック」(改訂新版)、2005年6月10日、12頁
- ^ T-Engineプログラミング環境を構築しよう、MONOist、2006年06月06日
- ^ 「μTeaboard/ARM7-AT91」、パーソナルメディア、2007年4月5日
参考文献
[編集]- 『T-Kernel標準ハンドブック』《改訂新版》パーソナルメディア株式会社、2005年。
- 『TRONWARE』《VOL.146》パーソナルメディア株式会社、2014年。
- 『Interface』《2012年5月号》CQ出版株式会社、2012年。