36
embOS リアルタイムOS「エンボス」 2019/8/6 Copyright © 2019 EmbITeK Co., Ltd. All Rights Reserved.

embOS · embOSシミュレーションはハードウェアを利用する事 なくソフトウェアで動作をシミュレーションすることが できます。 すべてのembOS

  • Upload
    others

  • View
    1

  • Download
    0

Embed Size (px)

Citation preview

Page 1: embOS · embOSシミュレーションはハードウェアを利用する事 なくソフトウェアで動作をシミュレーションすることが できます。 すべてのembOS

embOSリアルタイムOS「エンボス」

2019/8/6 Copyright © 2019 EmbITeK Co., Ltd. All Rights Reserved.

Page 2: embOS · embOSシミュレーションはハードウェアを利用する事 なくソフトウェアで動作をシミュレーションすることが できます。 すべてのembOS

embOS概要

小さなフットプリントで、汎用性の高いRTOSソリューション

2019/8/6 Copyright © 2019 EmbITeK Co., Ltd. All Rights Reserved. 2

Page 3: embOS · embOSシミュレーションはハードウェアを利用する事 なくソフトウェアで動作をシミュレーションすることが できます。 すべてのembOS

SEGGER J-Linkで利用されているソフトウェア累計60万台以上の販売実績を持つJ-Linkシリーズ

2019/8/6 3

emUSBDevice

RTOSembOS

不正改造・量産防止

emSecure

TCP/IPemNet

embOSは、J-Link・J-Trace,Flasherシリーズの基幹ソフトウェアとして、25年以上の実績を持つRTOSです。

Page 4: embOS · embOSシミュレーションはハードウェアを利用する事 なくソフトウェアで動作をシミュレーションすることが できます。 すべてのembOS

embOSの実績25年以上に渡り、欧州・米国を中心に利用実績を積んだ組込用RTOS 欧州・米国を中心に1,000ライセンス以上の販売実績10億台以上の量産品出荷(SEGGER社調べ)

2019/8/6 4

「embOS」は、省電力を求められるバッテリ駆動を前提としたシングルチップ製品から、ハイエンドシステムまであらゆる用途に利用でき、ハードウェアの性能を最大限に活用できます。グローバルの市場において、産業機器、IoT機器、ネットワーク機器、コンシューマ、自動車、医療機器航空宇宙電子機器など、様々な分野で利用されています。

Page 5: embOS · embOSシミュレーションはハードウェアを利用する事 なくソフトウェアで動作をシミュレーションすることが できます。 すべてのembOS

embOSライセンスバリエーション

2019/8/6 5

ソースコード提供ライセンス

オブジェクト提供ライセンス

embOS基本パッケージ メモリ保護機能 機能安全認証

オブジェクト版 オブジェクト版

長期間の実績と信頼性が実現するオブジェクト版ローコストライセンス

ロイヤリティフリー・開発製品無制限のユーザライセンスで提供可能

Page 6: embOS · embOSシミュレーションはハードウェアを利用する事 なくソフトウェアで動作をシミュレーションすることが できます。 すべてのembOS

embOSのユーザメリット

2019/8/6 6

ロイヤリティフリー・開発製品無制限のユーザライセンスで提供可能

開発プロジェクト無制限様々な開発で利用可能マイコン変更も対応(Cortex-Mxライセンス) C社Cortex-M4F CPUA社Cortex-M7 CPU B社Cortex-M4F CPU

embOSユーザライセンス(開発者ライセンス)

File systemTCP/IP

GUI

Page 7: embOS · embOSシミュレーションはハードウェアを利用する事 なくソフトウェアで動作をシミュレーションすることが できます。 すべてのembOS

embOSは数多くのミドルウェアをサポート

2019/8/6 7

数多くのソフトウェアモジュールを提供

御社のソフトウェア開発のベースとして、利用可能です。

Page 8: embOS · embOSシミュレーションはハードウェアを利用する事 なくソフトウェアで動作をシミュレーションすることが できます。 すべてのembOS

embOSの利点組込アプリケーションの基盤OSとして、設計されたリアルタイムOSです。組込ソフトウェア開発に求められる機能・性能・パッケージを提供します。

2019/8/6 8

効率性

汎用性

信頼性

使いやすさ

数十億の量産デバイスに搭載出荷実績を持ち、機能安全規格に準拠しています。

分かりやすいAPI、開発を支援するツールなど。開発ユーザ視点に立った使いやすさを実現。

低いROM/RAM使用量にもかかわらず、高いリアルタイム性能を実現します。

幅広いコア・コンパイラ対応で、マイコンやツールに依存しない資産を構築

Page 9: embOS · embOSシミュレーションはハードウェアを利用する事 なくソフトウェアで動作をシミュレーションすることが できます。 すべてのembOS

embOSの効率性

RTOSのオーバヘッドは、最小限にパフォーマンスの高いアプリケーション開発に最適です。

2019/8/6 9

Page 10: embOS · embOSシミュレーションはハードウェアを利用する事 なくソフトウェアで動作をシミュレーションすることが できます。 すべてのembOS

■プリエンプティブマルチタスク

embOSの効率性:マルチタスクシステムユーザアプリケーションに最適なマルチタスクシステムを構築可能

2019/8/6 10

■非プリエンプティブマルチタスク

ラウンドロビン方式のスケジューリングやプライオリティでコントロールするアルゴリズムと小型のRTOSながら、高性能なRTOS機構を持ちます。

Page 11: embOS · embOSシミュレーションはハードウェアを利用する事 なくソフトウェアで動作をシミュレーションすることが できます。 すべてのembOS

embOSの効率性:ROM/RAMサイズ極めて小さなリソースで、効率的なアプリケーション実装が可能です。

2019/8/6 11

embOSリソース RAMカーネル 71 B

タスクコントロールブロック 36 B

リソースセマフォ 16 B

カウンタセマフォ 8 B

メールボックス 24 B

ソフトウェアタイマ 20 B

タスクイベント 0 B

カーネル実装ROMサイズ:1.7KByte

(Byte)

Page 12: embOS · embOSシミュレーションはハードウェアを利用する事 なくソフトウェアで動作をシミュレーションすることが できます。 すべてのembOS

embOSの効率性:割込レイテンシー(遅延)なしembOSは、ゼロレイテンシ割込をサポートしています。

2019/8/6 12

優先度の高い、緊急性の高い割込が発生した際に、RTOSのオーバヘッドを受けることなく、可能な限り早くコードを実行する事が、組込機器には求められます。

embOSでは、ゼロレイテンシ割込は、RTOSによる遅延が発生することなく、RTOSなしと同じくらい高速に処理する事のできる仕組みを持っています。

ゼロレイテンシ割込を利用したサンプルによる、パフォーマンス測定結果を以下URLにて公開しています。https://www.segger.com/products/rtos/embos/technology/performance/

Page 13: embOS · embOSシミュレーションはハードウェアを利用する事 なくソフトウェアで動作をシミュレーションすることが できます。 すべてのembOS

embOSの効率性:TicklessサポートTicklessサポートにより、省電力性を向上

2019/8/6 13

embOSでは、各システムティック毎のタイマー割込を使う代わりに、省電力モードに設定するタイミングに合わせてタイマー時間を調整して、対応します。

embOSのTicklessサポートは、主に3つのAPIを利用して、実現します。

OS_TICKLESS_GetNumIdleTicks()OS_TICKLESS_Start()OS_TICKLESS_AdjustTime()

embOS Ticklessサポートのサンプルは、以下URLにてソース公開しています。https://www.segger.com/products/rtos/embos/technology/tickless-support/

Page 14: embOS · embOSシミュレーションはハードウェアを利用する事 なくソフトウェアで動作をシミュレーションすることが できます。 すべてのembOS

embOSの効率性:ペリフェラルの電力制御embOSによりペリフェラルの電力をコントロール

2019/8/6 14

embOSのAPIを活用して、ペリフェラルの電力をコントロールペリフェラルの電力制御例(例)Peripheral A, B, Cを定義

次のコードで、Peripheral A, Cが初期化され、OS_POWER_UsageInc()コールによって、使用中とマーク

Peripheral Cの利用を止める場合、OS_POWER_UsageDec():をコールし、未使用とマーク

Page 15: embOS · embOSシミュレーションはハードウェアを利用する事 なくソフトウェアで動作をシミュレーションすることが できます。 すべてのembOS

embOSの効率性:電力制御2

2019/8/6 15

OS_Idle()中に、OS_POWER_GetMask()を呼び出し、電源管理カウンタからビットマスクを取得します。ビットマスクを使用して、制御レジスタのビット修正、使用中のペリフェラルのみ残します。

Page 16: embOS · embOSシミュレーションはハードウェアを利用する事 なくソフトウェアで動作をシミュレーションすることが できます。 すべてのembOS

embOSの汎用性

ユーザ様の環境に合わせて利用できるRTOS。

2019/8/6 16

Page 17: embOS · embOSシミュレーションはハードウェアを利用する事 なくソフトウェアで動作をシミュレーションすることが できます。 すべてのembOS

embOSの汎用性MISRA-C2012に準拠したソースコード80以上のコアとコンパイラの組合せサポート500を超える評価ボードBSPを用意8/16/32bitマイコンを一つのRTOSでカバーしています。

ハイエンドからローエンドマイコンまで、幅広く利用可能

代表的なコアARM(Cortex-A/R/M, ARM7/9/11)、RISC-V、RX、RH850、RL78、FR16/30、STM8、MSP430、78K0、H8/H8S/H8SX、M16C/R8C、M32C、SH2/SH2A

主なIDE/コンパイラSEGGER Embedded Studio、IAR EWxxx、ARM MDK、ARM DS-5、GHS、ST Atollic TrueSTUDIO、GNU

2019/8/6 17

arm RX

RISC-V RL78

Page 18: embOS · embOSシミュレーションはハードウェアを利用する事 なくソフトウェアで動作をシミュレーションすることが できます。 すべてのembOS

embOSの汎用性:マルチコア・マルチOSマルチコア・マルチOSで利用可能なOS間同期・通信用APIをサポートします。

2019/8/6 18

コアの同期、データ交換を制御するために利用可能なSpinlock APIが含まれます。

これにより、共有メモリ・周辺機器などへのアクセスを実現します。

汎用的なロックメカニズムにより、プロセスの同期を行う事ができます。

Page 19: embOS · embOSシミュレーションはハードウェアを利用する事 なくソフトウェアで動作をシミュレーションすることが できます。 すべてのembOS

embOSの信頼性

25年以上の利用されているRTOSソリューション

2019/8/6 19

Page 20: embOS · embOSシミュレーションはハードウェアを利用する事 なくソフトウェアで動作をシミュレーションすることが できます。 すべてのembOS

embOSの信頼性

2019/8/6 20

機能安全認証対応(embOS-safe)IEC 61508 SIL 3 / IEC 62304 Class C認証取得済みRTOS

embOSは、様々な領域の製品で安心して利用することができます。

数十億台の量産製品出荷実績リリース以来、25年にわたりお客様製品に搭載され量産出荷されています。

MISRA-C2012準拠のオリジナルコードオープンソースコードは一切利用せず、SEGGER社のembOS開発チームにより開発されたオリジナルRTOS。

Page 21: embOS · embOSシミュレーションはハードウェアを利用する事 なくソフトウェアで動作をシミュレーションすることが できます。 すべてのembOS

embOSの使いやすさ

開発しやすいRTOSソリューションで、開発時間を短縮。様々な開発支援ツールを利用できます。

2019/8/6 21

Page 22: embOS · embOSシミュレーションはハードウェアを利用する事 なくソフトウェアで動作をシミュレーションすることが できます。 すべてのembOS

使いやすいRTOSソリューション

2019/8/6 22

embOSは、様々な領域の製品で安心して利用することができます。

洗練されたソースコード見やすく分かりやすいソースコード提供

BSPサポート500以上の評価ボードへBSPを提供しています。

分かりやすいAPI扱いやすいAPIを提供初めてでも使いやすく

日本語サポート当社より日本語サポートを提供英語でSEGGER社開発者から直接サポートを受けることも可能

Page 23: embOS · embOSシミュレーションはハードウェアを利用する事 なくソフトウェアで動作をシミュレーションすることが できます。 すべてのembOS

embOS開発支援ツール

2019/8/6 23

embOSView

SEGGER Embedded Studio Plug-in / EW Plug-in

embOSシミュレーション

ソフトウェア開発を支援する様々な無償提供ツール群

SystemView

Page 24: embOS · embOSシミュレーションはハードウェアを利用する事 なくソフトウェアで動作をシミュレーションすることが できます。 すべてのembOS

embOS View

2019/8/6 24

ターゲットの接続embOS Viewはターゲットとシリアル接続(UART)ARM、RXの場合はEthernetや他の通信チャネルも対応可能

提供バージョンすべてのembOSライセンス無償評価版にも提供

ターゲットで動作しているアプリケーション状況を可視化する事ができます。

コンパイラやIDEに依存しないため、お客様の環境で利用することができます。

Page 25: embOS · embOSシミュレーションはハードウェアを利用する事 なくソフトウェアで動作をシミュレーションすることが できます。 すべてのembOS

embOS View

2019/8/6 25

Name Description

Prio 現在のプライオリティタスク

Id タスクID, タスクコントロールブロックのアドレス

Name 作成名

Status 現在のタスク状況(ready, executing, delay, reason for suspension)

Data ステータス状況

Timeout 次の立ち上がり時間

Stack 利用スタックサイズ/最大スタックサイズ/スタックポインタ

CPULoad タスクによるCPU利用率

Run Count リセットからの回数

Time slice ラウンドロビン情報

OS_Version embOSバージョン

CPU ターゲットCPU,コンパイラ

LibMode ターゲットアプリケーションに利用されるライブラリモード

OS_Time タイマーティックからの現在時間

OS_NumTasks 定義されたタスクの数

OS_Status 現在のOS状況

OS_pActiveTask

実行されるべきアクティブタスク

OS_pCurrentTask

現在の実行タスク

SysStack 利用サイズ、最大サイズ、システムスタックポインタ

IntStack 利用サイズ、最大サイズ、割込スタックポインタ

TraceBuffer トレースバッファの状況(サイズ・システムカウンタ)

embOS Viewでは、以下の様な情報をターゲットからリアルタイムに取得し、表示することができます。

Page 26: embOS · embOSシミュレーションはハードウェアを利用する事 なくソフトウェアで動作をシミュレーションすることが できます。 すべてのembOS

embOS Plug-in for IDE

2019/8/6 26

各種IDE用に「RTOS認識プラグイン」を用意、IDE上でembOSの状況を表示することができます。

タスクリストで、各タスクレベルの状態を表示します。

embOS上のオブジェクト、メールボックスやセマフォなどの状態を表示

SEGGER EmbeddedStudioでは標準実装されていますので、簡単に利用可能です。

Page 27: embOS · embOSシミュレーションはハードウェアを利用する事 なくソフトウェアで動作をシミュレーションすることが できます。 すべてのembOS

embOS シミュレーション

2019/8/6 27

embOSシミュレーションはハードウェアを利用する事なくソフトウェアで動作をシミュレーションすることができます。すべてのembOS APIをシミュレーション可能

MinGW用/Microsoft VisualStudio用が用意されています。

embOSシミュレーションを使ってハードウェアシミュレーションをする事も可能です。LEDやディスプレイなどコントロールすることも出来ます。

Page 28: embOS · embOSシミュレーションはハードウェアを利用する事 なくソフトウェアで動作をシミュレーションすることが できます。 すべてのembOS

embOS-MPU

メモリ保護機能付きRTOS

2019/8/6 28

Page 29: embOS · embOSシミュレーションはハードウェアを利用する事 なくソフトウェアで動作をシミュレーションすることが できます。 すべてのembOS

embOS MPU

2019/8/6 29

Cortex-Aなどのハイエンドマイコンで実装されているMPU機能に対応します。メモリ保護機能を持つことにより、OSと特権タスクはメモリ保護され、非特権タスクの悪影響から隔離されます。embOSと互換性のあるAPIを実装ため、embOSで開発されたアプリケーションも最小の工数でembOS-MPUに適合させることができます。

embOS-MPUは、ハードウェアのメモリ保護ユニット(MPU)と、embOS-MPUで実装されたソフトウェア機能により、1つのタスクがシステム全体に影響を与えないようにします。これにより、あるタスクでバグが発生した場合でも、他のタスクやオペレーティングシステムが実行を継続することができます。

embOS-MPUでは、特権タスクはメモリにフルアクセスできます。非特権タスクは、それぞれの個別のメモリ領域に対し、特定のアクセス権限を持ちます。また周辺機器にアクセスするため、追加のメモリロケーションとOS制御構造、デバイスドライバ、特定のembOS APIなどを非特権タスクから呼び出すように設定も可能です。

「特権命令」は特権状態で動作します。MPU設定の初期化タスクやデバイスドライバを含みます。特権命令を使用するタスクは、完全な信頼性を確認する必要があります。

「非特権命令」アプリケーションは、特権のない状態で実行されるため、不具合が発生した場合においても、メモリ保護機能により、基本システムに影響を与えることはありません。

Page 30: embOS · embOSシミュレーションはハードウェアを利用する事 なくソフトウェアで動作をシミュレーションすることが できます。 すべてのembOS

embOS MPUサンプルコード

2019/8/6 30

embOS MPUサンプルコードで利用方法を確認頂けます。

https://www.segger.com/products/rtos/embos/editions/embos-mpu/embos-mpu-sample-application/

Page 31: embOS · embOSシミュレーションはハードウェアを利用する事 なくソフトウェアで動作をシミュレーションすることが できます。 すべてのembOS

embOS-Safe

機能安全認証対応RTOS

2019/8/6 31

Page 32: embOS · embOSシミュレーションはハードウェアを利用する事 なくソフトウェアで動作をシミュレーションすることが できます。 すべてのembOS

embOS-safe

2019/8/6 32

RTOSは、安全性を重視したアプリケーションで最も重要なコンポーネントです。

embOS-safeを利用する事により、安全性が重要なコードを分離し、他のタスクと干渉することなく動作出来るようにする事が可能です。これにより、アプリケーションの機能安全対応をより簡素に行う事が出来ます。

embOS-safeは、産業・医療・自動車・家電などの安全分野向けに設計されています。

産業機器IEC61508 SIL3

医療機器IEC62304 ClassC

車載ISO26262(お問合せ)

家電製品IEC61508 SIL3

Page 33: embOS · embOSシミュレーションはハードウェアを利用する事 なくソフトウェアで動作をシミュレーションすることが できます。 すべてのembOS

embOS-safe

2019/8/6 33

機能安全認証対応(embOS-safe)IEC 61508 SIL 3 / IEC 62304 Class C認証取得済みRTOS

embOS-safeは、お客様製品の機能安全認証取得をサポートします。

通常embOSと共通化embOSとAPIは共通化されていますので、embOS用に開発されたプロジェクトをそのままリユースができます。

embOS機能安全マニュアル・認証キットembOS機能安全マニュアルを含むドキュメントがパッケージされています。

Page 34: embOS · embOSシミュレーションはハードウェアを利用する事 なくソフトウェアで動作をシミュレーションすることが できます。 すべてのembOS

ライセンス

embOSの提供ライセンス体系

2019/8/6 34

Page 35: embOS · embOSシミュレーションはハードウェアを利用する事 なくソフトウェアで動作をシミュレーションすることが できます。 すべてのembOS

embOSライセンスシステム

2019/8/6 35

柔軟なライセンス体系をニーズに合わせて選択可能

ライセンスモデル 提供コード 対象製品 開発者人数 CPU/ コンパイラ

プロダクトライセンス ソースコードまたはオブジェクト 一つの製品 無制限 1CPU型番

1コンパイラ

プロダクトファミリーライセンス ソースコードまたはオブジェクト 製品シリーズ 無制限 1CPU型番

1コンパイラ

ユーザーライセンス ソースコードまたはオブジェクト 無制限 1名 1CPUファミリー

1コンパイラ

CPUライセンス ソースコードまたはオブジェクト 無制限 無制限 1CPUファミリー

1コンパイラ

1CPUファミリーは、以下の通りARM CPUファミリー: Cortex-Mファミリー(M0/M0+/M1/M3/M4/M7デバイス) ARM7/9 Cortex-A/Rファミリー

RXファミリー など

Page 36: embOS · embOSシミュレーションはハードウェアを利用する事 なくソフトウェアで動作をシミュレーションすることが できます。 すべてのembOS

お問合せ窓口

2019/8/6 36

製品については、お気軽に以下窓口へお問い合わせください。

株式会社エンビテックTEL: 03-6240-2655

FAX : 03-6240-2656E-mail:[email protected]://www.embitek.co.jp