組込み向けハイパーバイザー TOPPERS-Pro SafeGシリーズ TrustZoneセキュリティ拡張機能利用、Armプロセッサ上で
汎用OSとRTOSを安全に同時実行

『TOPPERS-Pro SafeG』、『TOPPERS-Pro SafeG64』および『TOPPERS-Pro SafeG-M』は、NPO法人TOPPERSプロジェクトが開発したオープンソースソフトウェア「SafeG」、「SafeG64」および「SafeG-M」をベースとした、商用の組込み向けハイパーバイザーです。

SafeG技術とは、ArmプロセッサのTrustZoneセキュリティ拡張機能を利用した技術です。この技術を活用することにより、同一ハードウェアプラットフォーム上で信頼性の高いRTOSであるTOPPERSカーネルと信頼性の高くない汎用OS(Linux/AndroidやFreeRTOS、Mbed OSなど)とを分離し、安全に同時実行できます。

ブロック図

主な特長

シングルコアでも安全にRTOSと汎用OSとを分離し、同時実行

Arm TrustZone 技術を活用し、仮に汎用OSが意図しない停止をしても、RTOSには影響がありません。
標準では、RTOSとしてTOPPERS OS、汎用OSとして Linux(SafeG-Mでは FreeRTOS)をサポートしていますが、他OSでも使用可能です。

マルチコアに対応

マルチコアを使用する場合、RTOSと汎用OSとをコア毎に分けて使用することも、コアを共用することも可能です。例えば、クアッドコアの場合、RTOS:汎用OSを、1:3で使用、2:4で使用、4:4で使用など、自由に設定できます。

64ビットにも対応

Arm社の64ビット拡張アーキテクチャであるArmv8-A(AArch64)にも対応しました。Armv8-A(AArch64)用のTOPPERS-Pro SafeG64はArm社から無償提供されているATF(Arm Trusted Firmware)を使用します。

Arm Cortex-Mシリーズにも対応

Arm Cortex-MベースのシステムでもTrustZoneテクノロジーを使用することができる最新のArmv8-Mアーキテクチャにも対応しました。

RTOSと汎用OSとの切り替えが高速

コアのクロックなどにも影響されますが、RTOSの割込み応答遅延は低く、OS切り替えをうたう製品群の中でトップクラスの速さを誇ります。一般的なCortex-A9コアの場合、RTOSの切り替えに伴う割込み応答遅延は2μsec.以下です。

優れたコストパフォーマンス

TOPPERS-Pro SafeG、TOPPERS-Pro SafeG64およびTOPPERS-Pro SafeG-Mはシンプルな構成であり、移植性に優れています。汎用OS側の修正量が少なくて済むため、購入時の改造コストやその後のメンテナンスコストが低くすむメリットがあります。

MDCOM(ドメイン間通信ライブラリ)を提供

TOPPERS-Pro SafeG、TOPPERS-Pro SafeG64およびTOPPERS-Pro SafeG-MにはMDCOMと呼ばれる、RTOSと汎用OSとの通信ライブラリを提供します。通信方式として、共有メモリを使うAPIとチャネル(イベント)通信を使うAPIを用意しています。

対応環境

対応CPUコア

  • Arm Cortex-A7/A9/A15
  • Arm Cortex-A32/A35/A53/A57/A72/A73
  • Arm Cortex-M23/M33

上記コアはいずれもMPCoreにも対応

TOPPERS-Proシリーズ CPU別対応表

ユーザーメリット

  • 従来のµITRONのソフトウェア資産が、ほぼそのまま使用可能なため、工数の削減に寄与します。
  • 一般的なハイパーバイザーのように極端なハードウェアの仮想化を行わずに、TrustZoneのワールドコンテキスト切り替え機能のみを利用するため、オーバヘッドが非常に低くパフォーマンスが高いシステムが構築できます。
  • RTOSが優先される仕組みのため、リアルタイム性と高速起動を実現できます。オプション製品のUbiquitous QuickBootを組み合わせることで、RTOSのみならず、Android/Linuxの高速起動も実現可能です。
  • 汎用 OS(Android/LinuxおよびFreeRTOS)の変更が軽微であるため、OSのバージョンアップへの追随が容易です。

技術サポート体制

専任の担当者による技術サポートを提供します。

移植・チューニング

ユビキタスAIが提供するソフトウェアの移植サービスからアプリケーションの開発受託サービスなどを、別途承っております。開発期間が短い場合やエンジニアリングリソースが不足している時など、お客様に代わって経験豊富なエンジニアが移植、開発作業を行います。