Home
製品(概要) 事例紹介 パートナー サポート ダウンロード お問い合わせ グレープシステムへ戻る
Google

WWW を検索
サイト内検索
Awards

組み込み機器向けのコンパクトなリアルタイムOS

パッケージThreadXは、米国Express Logic社が組み込み用に設計開発した高速なリアルタイムOS (RTOS)です。

ThreadX は、フットプリントが小さく、リアルタイムのレスポンスを
要求する組み込み開発に最適な独自アーキテクチャのコアを採用しているので、組み込みアプリケーション開発のためのRTOS としては理想的です。

ThreadX Ver.5 はさらに機能が拡張され、SH、x86、ARM などの人気の高いプラットフォームで使用できます。人気の高いプラットフォームで使用できます。

ThreadX-μITRONは、グレープシステムが開発したThreadXに対応したμITRON ライブラリです。弊社ではこれをラッパー関数としてThreadXの上位に搭載することでμITRON OSとしての使用を可能にしました。ThreadXの小さなフットプリントを活かした高速なμITRONを実現することで、お手持ちのμITRONアプリの資産を有効にお役立ていただけます。

TIセミナーでThreadXをご紹介しました。 セミナーの動画はこちら

提供物
  • 標準版 : 「ThreadX」
  • μITRON版 「ThreadX μITRON」
  • デュアルコア版 「ThreadX/SMP」
  • マルチスレッド版 「ThreadX/MT」
評価版ダウンロード

弊社では、Windows上で評価できるThreadX、および、ThreadX μITRON の両方の評価版のほか、Blackfinや、XILINXのPower PCや、Micro Blazeなどで評価できるThreadXもご用意しております。

評価版をご希望のかたは、右のCDの図をクリックしてダウンロードページをご覧ください。

評価版ダウンロードページはこちら

特長

コンパクトなサイズ

ThreadXはCライブラリとして構築します。最終的に利用する機能だけをアプリケーションとリンクするためコンパクトで、最小フットプリントはCISC プロセッサの場合で2.5KB 程度です。

ThreadX サービス 標準的なバイト数
コア・サービス(必須) 2,000
キュー・サービス 900
イベントフラグ・サービス 900
セマフォ・サービス 450
ミューテックス・サービス 1,200
ブロック・メモリ・サービス 550
バイト・メモリ・サービス 900

注):バイト数は開発環境によって多少変化しますので、詳細は、弊社営業までお問い合わせください。

使いやすいAPI

ThreadX が持っているAPI (サービス)は、名称が実際の用語からできており直感的に認識できる機能的なものとして実装されています。アプリケーションはtx_api.hファイルをインクルードして、オブジェクトを ThreadX のCライブラリとリンクさせることで簡単に作成できます。

(簡単な使用例)
/* Get a semaphore with suspension */
status = tx_semaphore_get(&semaphore_0,
TX_WAIT_FOREVER);
/* Check status. */
if (status != TX_SUCCESS)
break;
/* Sleep for 2 ticks to hold the semaphore */
tx_thread_sleep(2);
/* Release the semaphore */
status = tx_semaphore_put(&semaphore_0);
/* Check status. */
if (status != TX_SUCCESS)
break;

高速でパフォーマンスの良いRTOS

ThreadX を使えば、アプリケーションは以前よりも速く外部イベン トをハンドリングすることができ、タスク制御は決定的になります。外 部イベントの発生順に、優先順位の高いスレッドから最適なコンテキス ト切り替えが実行されます。一般的なITRON と比較しても15% から 50%程度、速く動作します。

ThreadX
 サービス
Service
Time
Suspend Resume Context
Switch
Thread Suspend 0.6μs 0.8μs - -
Thread Resume - - 0.6μs 1.1μs
Queue Send 0.3μs 0.9μs 0.7μs 1.2μs
Queue Receive 0.3μs 0.9μs 0.9μs 1.4μs
Get Semaphone 0.2μs 0.9μs - -
Put Semaphone 0.2μs - 0.6μs 1.1μs
Context Switch - - - 0.4μs
Interrupt Response 0.0μs(min) - - 0.6μs(max)

注):上記のデータは200MHz のプロセッサを基準にしています。

容易な動作解析

ThreadX は、C 言語によるソースと若干のアセンブラから構築されているため、その動作を簡単に検証する事ができます。

プリエンプション・スレッシュホルド (Preemption Threshold™)

ThreadX のプリエンプション・スレッシュホルド技術は、優先度ベースのプリエンプティブなスケジューリングアルゴリズムを意味しています。
アプリケーションは全システムのプリエンプションを禁止するのではなく、設定された範囲の優先度でプリエンプションを禁止することができます。
プリエンプション・スレッシュホルドを利用する事で、過度なコンテキスト切り替えや非決定的な優先度の逆転を禁止し、全体的なレスポンスを高める事ができます。

優先順位の継承

非決定的な優先度の逆転を防ぐためのもうひとつのツールが、ミューテックス(Mutex)オブジェクトに見られる「優先順位継承」です。

柔軟なメモリ構成

スレッドスタック、メッセージキュー、メモリプールに関連した ThreadX のコントロールブロックやメモリブロックは、実行中のハード上で、どんなアドレススペースに対しても簡単に配置する事が可能です。
例えばスタックを高速なメモリに配置する事で優先順位の高いスレッドのパフォーマンスを上げる事が簡単にできます。

ダイナミック・クリエーション

ThreadX ではシステムリソースを動的に生成することができ、利用可能なリソース数に制限はありません。
システムオブジェクトの数はパフォーマンスに影響しないので、スレッド数が多いからといってパフォーマンスが低下する事もありません。

負荷の少ないタイマ管理

ThreadX のアプリケーションタイマ機能は、一回だけのトリガ動作でも複数回の周期的動作のどちらでも利用できます。
起動や終了を、使っているタイマ毎にひとつずつ行っていると負荷となってしまうため、ThreadX 内部ではトリガ毎に管理しています。
このため通信やプロセス制御などタイマ中心のアプリケーションを使っても負荷にはなりません。

豊冨なシステムサービス

  • スレッド
  • アプリケーションタイマ
  • メッセージキュー
  • カウンティング・セマフォ
  • ミューテックス
  • イベントフラグ
  • ブロックメモリプール
  • バイトメモリプール

広範囲にわたるプロセッササポート

移植性のよいシステムであるため、どのようなプロセッサでも2週間程度でポーティング作業が終了でき、次期製品の市場投入がいち早くできます。

  • ARC 600、700
  • ARM7/9/11、StrongARM、Thumb、Cortex-M3/R4/A8/A9
  • RENESAS SH1、SH2、SH3、SH4、SH2-DSP、SH3-DSP、H8/300H…
  • ALTERA Nios II
  • Atmel AVR32
  • ADI SHARC、BlackFin ADSP-BF53x/56x
  • LSI Logic ZSP、StarCore
  • Luminary Micro Stellaris、 iMX
  • PowerPC 821/860、82xx、83xx、85xx、405、440
  • 68K、MCORE、MCF52xx、MCF53xx、MCF522xx
  • Microchip PIC24/dsPIC、PIC32
  • MIPS 4K、24K、34K、64K、1004K
  • NEC V85x/V83xシリーズ
  • NXP LPC23xx、LPC24xx、LPC17xx
  • OKI ML674K/ML675K
  • STMicroelectronics STM 32
  • Intel x86/x386
  • Tensilica Xtensa/Diamond
  • TriCore
  • TMS320C54x、TMS320C6xファミリ
  • XScale
  • XILINX Micro Blaze
  • ZSP

注:サポートCPU、開発ツールについては、常時追加更新されています。
詳しくは弊社営業までお問い合わせください。

ThreadX シュミレーションパッケージ

NetX とGR-WinNETを組み合わせたシミュレーション・パッケージ

  • Windows 上でのシミュレーションにより、ただちにプログラミング開始が可能
  • GR-WinNET により、低レベルパケットの送受信まで含めたテストが可能
  • 実際の通信におけるパラメータを実機なしに調整可能
  • Windows2000およびWindowsXPに対応
  • GR-WinNET ・ NetX ドライバ部分はソースコードで提供
  • 複数のアプリケーションを同時に起動可能
  • 教育用途にも使用可能

標準版の対応開発ツール一覧

  • ルネサスエレクトロニクス 社
  • C/C++コンパイラパッケージ
  • ARM社
  • ARM Developer Suite
    RealView
    Real View MDK (KEIL)
  • Analog Devices 社
  • Visual DSP
  • Computex 社
  • CSIDE
  • Green Hills Software 社
  • MULTI2000
    Event Analyzer for ThreadX,
    Thread-safe libraries
  • MetaWare 社
  • SeeCode
  • WindRiver 社
  • Workbench 2.3
    WindRiver Compiler (旧名称 Diab)
    WindRiver ICE、WindRiver Probe
    (旧vision ICE II / /vision Probe II 用 vision CLICK)
  • Texas Instruments 社
  • Code Composer Studio
  • Lauterbach 社
  • Power View
  • Metrowerks 社
  • CodeWarrior Development Studio
  • IAR 社
  • IAR Embedded Workbench
  • その他
  • GNU、CAD-UL, Microtec, EPI,Watcom, Borland,
    Microsoft Visual Studio, Apogee Softwareなど

    はThreadX Kernel Aware対応済のもの

    μITRON リアルタイムOS ThreadX-μITRON

    ThreadX- μ ITRONは、トロン協会のITRON 仕様準拠登録製品であり、μ ITRON4.0仕様スタンダード・プロファイル機能以外にも、ミューテックス/メッセージバッファ/ ランデブも標準でサポートしているので、多彩なアプリケーション開発の要求にも応えられます。

    従来資産の活用が容易

    ユーザーアプリケーションは ThreadX を意識せず、純粋なμITRON4.0 仕様RTOS として使用できますので、これまで開発してきたμITRON ソフトウェア資産や、μITRON 対応の各種ミドルウェアと組み合わせて使用することができます。

    共用できるサービスコール

    ThreadX- μ ITRON上のタスクから ThreadX のサービスコールを使用することができます。
    ThreadX のサービスコールはシンプルで高速に動作しますので、より高速な通信を必要とする場合に利用できます。また、ThreadX のスレッドからも、μ ITRON サービスコールも利用できますので、どちらのサービスコールでも状況によって使い分けることができます。
    このようにサービスコール使用の自由度が高いので、ユーザーアプリケーションの可能性が広がります。


    • ソース、バイナリともご提供可能
    • ロイヤリティフリーの契約
    • 3ヶ月の無償サポート
    • ポーティング、カスタマイズも可能

    お問合せ・ご相談はグレープシステムまで
    ホーム ページ先頭
    Copyright(C) 1998-2008 Grape Systems Inc. All Rights Reserved.
    個人情報保護について
    株式会社グレープシステム
    〒220-6108 横浜市西区みなとみらい2-3-3
    クイーンズタワーB 8F