Submit Search
Upload
NiosII と RTOS について
•
1 like
•
2,821 views
ryos36
Follow
NiosII と RTOS についてまとめてみました。
Read less
Read more
Software
Report
Share
Report
Share
1 of 24
Download now
Download to read offline
Recommended
Andes RISC-V vector extension demystified-tutorial
Andes RISC-V vector extension demystified-tutorial
RISC-V International
Microprocessor & Micro-controller
Microprocessor & Micro-controller
Om Bheda
本当に無駄な仕事をしたくない人のためのHoudiniプロシージャル入門
本当に無駄な仕事をしたくない人のためのHoudiniプロシージャル入門
jyouryuusui
はじめてのUniRx
はじめてのUniRx
torisoup
Autentificarea si autorizarea web
Autentificarea si autorizarea web
Cezar Derevlean
embedded system and AVR
embedded system and AVR
Urvashi Khandelwal
Unity用ビジュアルノベルツール「宴3」開発帰還報告書
Unity用ビジュアルノベルツール「宴3」開発帰還報告書
Ryohei Tokimura
UnityでUI開発を高速化した件
UnityでUI開発を高速化した件
Grenge, Inc.
Recommended
Andes RISC-V vector extension demystified-tutorial
Andes RISC-V vector extension demystified-tutorial
RISC-V International
Microprocessor & Micro-controller
Microprocessor & Micro-controller
Om Bheda
本当に無駄な仕事をしたくない人のためのHoudiniプロシージャル入門
本当に無駄な仕事をしたくない人のためのHoudiniプロシージャル入門
jyouryuusui
はじめてのUniRx
はじめてのUniRx
torisoup
Autentificarea si autorizarea web
Autentificarea si autorizarea web
Cezar Derevlean
embedded system and AVR
embedded system and AVR
Urvashi Khandelwal
Unity用ビジュアルノベルツール「宴3」開発帰還報告書
Unity用ビジュアルノベルツール「宴3」開発帰還報告書
Ryohei Tokimura
UnityでUI開発を高速化した件
UnityでUI開発を高速化した件
Grenge, Inc.
Programming with PIC microcontroller
Programming with PIC microcontroller
Raghav Shetty
PIC Microcontroller | ADC Interfacing
PIC Microcontroller | ADC Interfacing
International Institute of Information Technology (I²IT)
【Unity道場スペシャル 2017札幌】乱数完全マスター
【Unity道場スペシャル 2017札幌】乱数完全マスター
Unity Technologies Japan K.K.
Digital dice
Digital dice
Hari Krishna
Jetson agx xavier and nvdla introduction and usage
Jetson agx xavier and nvdla introduction and usage
jemin lee
【CEDEC2017】Unityを使ったNintendo Switch™向けのタイトル開発・移植テクニック!!
【CEDEC2017】Unityを使ったNintendo Switch™向けのタイトル開発・移植テクニック!!
Unity Technologies Japan K.K.
UE4 Ray Tracingによる リアルタイムコンテンツ制作
UE4 Ray Tracingによる リアルタイムコンテンツ制作
エピック・ゲームズ・ジャパン Epic Games Japan
Mikro tik advanced training
Mikro tik advanced training
Jignesh H. Bhalsod
Plug-ins & Third-Party SDKs in UE4
Plug-ins & Third-Party SDKs in UE4
Gerke Max Preussner
Unity WebSocket
Unity WebSocket
光晶 上原
Watch-dog Timer in LPC1768
Watch-dog Timer in LPC1768
Srishti Kakade
UE4 Saitama 初心者向けハンズオン #5 『アニメーションモンタージュ(Slotアニメーション)でコンボを作る』
UE4 Saitama 初心者向けハンズオン #5 『アニメーションモンタージュ(Slotアニメーション)でコンボを作る』
Yuuki Ogino
RISC-V software state of the union
RISC-V software state of the union
RISC-V International
Mikrotik firewall raw table
Mikrotik firewall raw table
Achmad Mardiansyah
Multi thread 多執行緒程式設計(use c#)
Multi thread 多執行緒程式設計(use c#)
Gelis Wu
Arduino course
Arduino course
Ahmed Shelbaya
Live2Dの描画の裏側の話
Live2Dの描画の裏側の話
Naoki Aso
VLAN on mikrotik
VLAN on mikrotik
Achmad Mardiansyah
【CEDEC2013】20対20リアルタイム通信対戦オンラインゲームのサーバ開発&運営技法
【CEDEC2013】20対20リアルタイム通信対戦オンラインゲームのサーバ開発&運営技法
モノビット エンジン
Latch & Flip-Flop Design.pptx
Latch & Flip-Flop Design.pptx
GargiKhanna2
G7プレゼンrtos自作
G7プレゼンrtos自作
Kazuhiro Takahashi
リアルタイムOSの必要性とTOPPERS/SSPの紹介
リアルタイムOSの必要性とTOPPERS/SSPの紹介
NSaitoNmiri
More Related Content
What's hot
Programming with PIC microcontroller
Programming with PIC microcontroller
Raghav Shetty
PIC Microcontroller | ADC Interfacing
PIC Microcontroller | ADC Interfacing
International Institute of Information Technology (I²IT)
【Unity道場スペシャル 2017札幌】乱数完全マスター
【Unity道場スペシャル 2017札幌】乱数完全マスター
Unity Technologies Japan K.K.
Digital dice
Digital dice
Hari Krishna
Jetson agx xavier and nvdla introduction and usage
Jetson agx xavier and nvdla introduction and usage
jemin lee
【CEDEC2017】Unityを使ったNintendo Switch™向けのタイトル開発・移植テクニック!!
【CEDEC2017】Unityを使ったNintendo Switch™向けのタイトル開発・移植テクニック!!
Unity Technologies Japan K.K.
UE4 Ray Tracingによる リアルタイムコンテンツ制作
UE4 Ray Tracingによる リアルタイムコンテンツ制作
エピック・ゲームズ・ジャパン Epic Games Japan
Mikro tik advanced training
Mikro tik advanced training
Jignesh H. Bhalsod
Plug-ins & Third-Party SDKs in UE4
Plug-ins & Third-Party SDKs in UE4
Gerke Max Preussner
Unity WebSocket
Unity WebSocket
光晶 上原
Watch-dog Timer in LPC1768
Watch-dog Timer in LPC1768
Srishti Kakade
UE4 Saitama 初心者向けハンズオン #5 『アニメーションモンタージュ(Slotアニメーション)でコンボを作る』
UE4 Saitama 初心者向けハンズオン #5 『アニメーションモンタージュ(Slotアニメーション)でコンボを作る』
Yuuki Ogino
RISC-V software state of the union
RISC-V software state of the union
RISC-V International
Mikrotik firewall raw table
Mikrotik firewall raw table
Achmad Mardiansyah
Multi thread 多執行緒程式設計(use c#)
Multi thread 多執行緒程式設計(use c#)
Gelis Wu
Arduino course
Arduino course
Ahmed Shelbaya
Live2Dの描画の裏側の話
Live2Dの描画の裏側の話
Naoki Aso
VLAN on mikrotik
VLAN on mikrotik
Achmad Mardiansyah
【CEDEC2013】20対20リアルタイム通信対戦オンラインゲームのサーバ開発&運営技法
【CEDEC2013】20対20リアルタイム通信対戦オンラインゲームのサーバ開発&運営技法
モノビット エンジン
Latch & Flip-Flop Design.pptx
Latch & Flip-Flop Design.pptx
GargiKhanna2
What's hot
(20)
Programming with PIC microcontroller
Programming with PIC microcontroller
PIC Microcontroller | ADC Interfacing
PIC Microcontroller | ADC Interfacing
【Unity道場スペシャル 2017札幌】乱数完全マスター
【Unity道場スペシャル 2017札幌】乱数完全マスター
Digital dice
Digital dice
Jetson agx xavier and nvdla introduction and usage
Jetson agx xavier and nvdla introduction and usage
【CEDEC2017】Unityを使ったNintendo Switch™向けのタイトル開発・移植テクニック!!
【CEDEC2017】Unityを使ったNintendo Switch™向けのタイトル開発・移植テクニック!!
UE4 Ray Tracingによる リアルタイムコンテンツ制作
UE4 Ray Tracingによる リアルタイムコンテンツ制作
Mikro tik advanced training
Mikro tik advanced training
Plug-ins & Third-Party SDKs in UE4
Plug-ins & Third-Party SDKs in UE4
Unity WebSocket
Unity WebSocket
Watch-dog Timer in LPC1768
Watch-dog Timer in LPC1768
UE4 Saitama 初心者向けハンズオン #5 『アニメーションモンタージュ(Slotアニメーション)でコンボを作る』
UE4 Saitama 初心者向けハンズオン #5 『アニメーションモンタージュ(Slotアニメーション)でコンボを作る』
RISC-V software state of the union
RISC-V software state of the union
Mikrotik firewall raw table
Mikrotik firewall raw table
Multi thread 多執行緒程式設計(use c#)
Multi thread 多執行緒程式設計(use c#)
Arduino course
Arduino course
Live2Dの描画の裏側の話
Live2Dの描画の裏側の話
VLAN on mikrotik
VLAN on mikrotik
【CEDEC2013】20対20リアルタイム通信対戦オンラインゲームのサーバ開発&運営技法
【CEDEC2013】20対20リアルタイム通信対戦オンラインゲームのサーバ開発&運営技法
Latch & Flip-Flop Design.pptx
Latch & Flip-Flop Design.pptx
Viewers also liked
G7プレゼンrtos自作
G7プレゼンrtos自作
Kazuhiro Takahashi
リアルタイムOSの必要性とTOPPERS/SSPの紹介
リアルタイムOSの必要性とTOPPERS/SSPの紹介
NSaitoNmiri
マイコンでマルチタスク
マイコンでマルチタスク
Katsuhiko Terawaki
REAL TIME OPERATING SYSTEM
REAL TIME OPERATING SYSTEM
prakrutijsh
Real Time OS For Embedded Systems
Real Time OS For Embedded Systems
Himanshu Ghetia
Real time Operating System
Real time Operating System
Tech_MX
Viewers also liked
(6)
G7プレゼンrtos自作
G7プレゼンrtos自作
リアルタイムOSの必要性とTOPPERS/SSPの紹介
リアルタイムOSの必要性とTOPPERS/SSPの紹介
マイコンでマルチタスク
マイコンでマルチタスク
REAL TIME OPERATING SYSTEM
REAL TIME OPERATING SYSTEM
Real Time OS For Embedded Systems
Real Time OS For Embedded Systems
Real time Operating System
Real time Operating System
Similar to NiosII と RTOS について
基礎教養としてのUbuntuサーバ_後編.pptx
基礎教養としてのUbuntuサーバ_後編.pptx
Yuji Naito
フロー技術によるネットワーク管理
フロー技術によるネットワーク管理
Motonori Shindo
Lagopus Router v19.07.1
Lagopus Router v19.07.1
Tomoya Hibi
LPICレベル1技術解説セミナー(2012/11/11)
LPICレベル1技術解説セミナー(2012/11/11)
Kazuko Itoda
Introduction Pycon2010
Introduction Pycon2010
(shibao)芝尾 (kouichiro)幸一郎
Report of OpenStack Ops Meetup Palo Alto (in Japanese)
Report of OpenStack Ops Meetup Palo Alto (in Japanese)
Hirofumi Ichihara
DVB recording command on gstreamer.
DVB recording command on gstreamer.
裕士 常田
Lagopus workshop@Internet weekのそば
Lagopus workshop@Internet weekのそば
Yoshihiro Nakajima
LPICレベル1技術解説セミナー(2012/11/11)
LPICレベル1技術解説セミナー(2012/11/11)
Kazuko Kanai
2015RTミドルウエア講習会
2015RTミドルウエア講習会
openrtm
次世代の高速メモリストレージ利用に向けたソフトウェアのモダナイゼーション
次世代の高速メモリストレージ利用に向けたソフトウェアのモダナイゼーション
NTT Software Innovation Center
「NVIDIA プロファイラを用いたPyTorch学習最適化手法のご紹介(修正版)」
「NVIDIA プロファイラを用いたPyTorch学習最適化手法のご紹介(修正版)」
ManaMurakami1
OpenStack Ops Mid-cycle Meetup 参加報告
OpenStack Ops Mid-cycle Meetup 参加報告
NTT Communications Technology Development
今話題のいろいろなコンテナランタイムを比較してみた
今話題のいろいろなコンテナランタイムを比較してみた
Kohei Tokunaga
EnrootとPyxisで快適コンテナ生活
EnrootとPyxisで快適コンテナ生活
Kuninobu SaSaki
iREX2015 RTM講習会
iREX2015 RTM講習会
openrtm
OpsからみたOpenStack Summit
OpsからみたOpenStack Summit
NTT Communications Technology Development
KubeCon EU報告(ランタイム関連,イメージ関連)
KubeCon EU報告(ランタイム関連,イメージ関連)
Akihiro Suda
130711 01
130711 01
openrtm
GPU Container as a Serviceを実現するための最新OSS徹底比較 - OpenStack最新情報セミナー 2017年7月
GPU Container as a Serviceを実現するための最新OSS徹底比較 - OpenStack最新情報セミナー 2017年7月
VirtualTech Japan Inc.
Similar to NiosII と RTOS について
(20)
基礎教養としてのUbuntuサーバ_後編.pptx
基礎教養としてのUbuntuサーバ_後編.pptx
フロー技術によるネットワーク管理
フロー技術によるネットワーク管理
Lagopus Router v19.07.1
Lagopus Router v19.07.1
LPICレベル1技術解説セミナー(2012/11/11)
LPICレベル1技術解説セミナー(2012/11/11)
Introduction Pycon2010
Introduction Pycon2010
Report of OpenStack Ops Meetup Palo Alto (in Japanese)
Report of OpenStack Ops Meetup Palo Alto (in Japanese)
DVB recording command on gstreamer.
DVB recording command on gstreamer.
Lagopus workshop@Internet weekのそば
Lagopus workshop@Internet weekのそば
LPICレベル1技術解説セミナー(2012/11/11)
LPICレベル1技術解説セミナー(2012/11/11)
2015RTミドルウエア講習会
2015RTミドルウエア講習会
次世代の高速メモリストレージ利用に向けたソフトウェアのモダナイゼーション
次世代の高速メモリストレージ利用に向けたソフトウェアのモダナイゼーション
「NVIDIA プロファイラを用いたPyTorch学習最適化手法のご紹介(修正版)」
「NVIDIA プロファイラを用いたPyTorch学習最適化手法のご紹介(修正版)」
OpenStack Ops Mid-cycle Meetup 参加報告
OpenStack Ops Mid-cycle Meetup 参加報告
今話題のいろいろなコンテナランタイムを比較してみた
今話題のいろいろなコンテナランタイムを比較してみた
EnrootとPyxisで快適コンテナ生活
EnrootとPyxisで快適コンテナ生活
iREX2015 RTM講習会
iREX2015 RTM講習会
OpsからみたOpenStack Summit
OpsからみたOpenStack Summit
KubeCon EU報告(ランタイム関連,イメージ関連)
KubeCon EU報告(ランタイム関連,イメージ関連)
130711 01
130711 01
GPU Container as a Serviceを実現するための最新OSS徹底比較 - OpenStack最新情報セミナー 2017年7月
GPU Container as a Serviceを実現するための最新OSS徹底比較 - OpenStack最新情報セミナー 2017年7月
More from ryos36
Pycairo を使ってみる その1
Pycairo を使ってみる その1
ryos36
ストーリーとは
ストーリーとは
ryos36
CNN でテニス選手の動きを解析する
CNN でテニス選手の動きを解析する
ryos36
Polyphony の行く末(2018/3/3)
Polyphony の行く末(2018/3/3)
ryos36
Polyphony の並列化
Polyphony の並列化
ryos36
Polyphony 新機能ツアー
Polyphony 新機能ツアー
ryos36
Polyphony: Python ではじめる FPGA
Polyphony: Python ではじめる FPGA
ryos36
Stellaris を使った組み込みアプリ開発ガイド
Stellaris を使った組み込みアプリ開発ガイド
ryos36
研究者のための Python による FPGA 入門
研究者のための Python による FPGA 入門
ryos36
数値計算のための Python + FPGA
数値計算のための Python + FPGA
ryos36
Polyphony IO まとめ
Polyphony IO まとめ
ryos36
PYNQ 祭り: Pmod のプログラミング
PYNQ 祭り: Pmod のプログラミング
ryos36
SDSoC でストリーム
SDSoC でストリーム
ryos36
Analog Devices の IP コアを使う
Analog Devices の IP コアを使う
ryos36
SDSoC と Vivado
SDSoC と Vivado
ryos36
高速化のポイント
高速化のポイント
ryos36
20周遅れ
20周遅れ
ryos36
90分 Scheme to C(勝手に抄訳版)
90分 Scheme to C(勝手に抄訳版)
ryos36
並列計算への道 2015年版
並列計算への道 2015年版
ryos36
Synthesijer で作るFORTH仮想マシン
Synthesijer で作るFORTH仮想マシン
ryos36
More from ryos36
(20)
Pycairo を使ってみる その1
Pycairo を使ってみる その1
ストーリーとは
ストーリーとは
CNN でテニス選手の動きを解析する
CNN でテニス選手の動きを解析する
Polyphony の行く末(2018/3/3)
Polyphony の行く末(2018/3/3)
Polyphony の並列化
Polyphony の並列化
Polyphony 新機能ツアー
Polyphony 新機能ツアー
Polyphony: Python ではじめる FPGA
Polyphony: Python ではじめる FPGA
Stellaris を使った組み込みアプリ開発ガイド
Stellaris を使った組み込みアプリ開発ガイド
研究者のための Python による FPGA 入門
研究者のための Python による FPGA 入門
数値計算のための Python + FPGA
数値計算のための Python + FPGA
Polyphony IO まとめ
Polyphony IO まとめ
PYNQ 祭り: Pmod のプログラミング
PYNQ 祭り: Pmod のプログラミング
SDSoC でストリーム
SDSoC でストリーム
Analog Devices の IP コアを使う
Analog Devices の IP コアを使う
SDSoC と Vivado
SDSoC と Vivado
高速化のポイント
高速化のポイント
20周遅れ
20周遅れ
90分 Scheme to C(勝手に抄訳版)
90分 Scheme to C(勝手に抄訳版)
並列計算への道 2015年版
並列計算への道 2015年版
Synthesijer で作るFORTH仮想マシン
Synthesijer で作るFORTH仮想マシン
NiosII と RTOS について
1.
NiosII と RTOS
について (有)シンビー
2.
OS 比較 RTOS API ライセンス
提供元 Linux × pthread GPL N/A ucLinux × pthread GPL N/A RT‐Linux ○ pthread GPL N/A TOPPERS ○ 独自 TOPPERS N/A μC3 ○ iTRON 商用 イーフォース NORTi ○ iTRON 商用 ミスポ T‐Kernel ○ T‐Engine 商用 eSOL eCos PRO ○ pthread LGPL eCos FreeRTOS ○ 独自 例外条項付きGPL FreeRTOS MicroC/OS‐II ○ 独自 商用 Micrium QNX ○ 独自 商用 QNX NiosII の標準。すぐに使えるようにテンプレートが用意されている
3.
RTOS の理解 • RTOS
ではタスクを有効に使う – RTOS のタスクはプライオリティを持っている • タスクはコンテキストを保持することが可能 – CPU を仮想化する技術 – CPU の使用率を上げることができる – 割り込みはコンテキストを保持できない • 割り込み処理では wait することができない • タスクの優先順位と割り込みを理解 → RTOS の理解
4.
RTOSのタスクの役割 高 IDLE 低 優先順位を 管理 休眠中 タスク プライオリティをもって優先順位の管理を行う
5.
ハードリアルタイム • システムに課せられたある処理がデッドライ ン内に終了しなかった時(デッドラインミス)、 システム全体にとって致命的ダメージが生じ る • デッドライン内での終了が保証されなければ ならないシステム。 Wikipedia より抜粋
6.
ハードリアルタイム • ロケットの制御 • レポート提出期限
12/26 17:00 – 提出しなかったものは落第 デッドラインを過 ぎると価値が0
7.
ソフトリアルタイム • デッドラインミスが起こっても、システム全体 に致命的なダメージを与えることはなく、その 処理自体の価値も、終了時間などにより徐々 に落ちていく Wikipedia より抜粋
8.
ソフトリアルタイム • 動画の再生 • レポート提出期限
12/26 17:00 – 1分遅れるごとに1点減点 デッドラインを過 ぎると徐々に 価値が下がる
9.
ポーリング処理 while(true){ wait(100); polling(); 処理() } MEMS Data 処理 Polling 処理 Polling
10.
ポーリング処理(N G例) while(true){ wait(100); polling(); 処理() } MEMS Data 処理 Polling 処理 Polling コンフリクト 取りこぼし
11.
while (true) { } 割り込みを使えばいいか? 処理() MEMS Data 処理 処理 割り込み発生後に 即座に他の処理をす ることは難しい 別の処理 別の処理 割り込み 高 低 割り込み
12.
割り込みの延長は? MEMS Data 他の割り込みの管理 が難しくなる 別の処理 別の処理 割り込み + 処理 割り込み + 処理
13.
タスクでコンテキストを保持/切り替え 高 IDLE 低 優先順位を 管理 作業中 タスク(1つだけ) 作業を中断している 作業を中断している
14.
割り込みとRTOSで制御 MEMS Data タスク1 タスクスイッチ タスク2 割り込み OS TCP/IP タスク1 タスク2 割り込み OS 割り込み TCP/IP ACK等
15.
多くのRTOSの設計 TCP/IP 高 APP IDLE 低 ネットワークのタスク 高い優先度 ユーザアプリケーションの 優先度
16.
RTOS アプリケーション設計上の注意 • プライオリティの設定 –
RTOS の中には TCP/IP より高いプライオリティは 設定できないものもある • タスク設計 – タスク切り替えを考えると複数タスクに分割しな いほうがよいケースもある • 割り込みの管理 • 処理時間の見積もり
17.
RTOS でも解決しない事 処理1 処理2
規定時間
18.
各方式比較 アプリ実装 事象への反応 必要RAM
TCP/IP との相 性 ポーリング 易しい △ BRAM/外部RAM ○ 作り方によっては有力 な候補になる 割り込み 難しい ◎ BRAM/外部RAM ○ 簡単なシステムでは 採用 割り込み+優先順位 易しい △ BRAM/外部RAM ○ ポーリングと同じ 多重割り込み すごく難しい ◎ BRAM/外部RAM ○ 難しすぎるので通常 は採用しない RTOS 難しい ○ 外部RAM △ リアルタイムの性能を 考慮しやすい。
19.
NiosIIのメモリ構成例(1) 0x0000 0000 8KBRAM 0x2000 0000 各種レジスタ 簡単なプログラムを置け る。FPGA の資源を使うた め通常は 8K や
16K 程 度。 RTOS やTCP/IP のスタック を置くことは難しいことが 多い。
20.
NiosIIのメモリ構成例(2) 0x0000 0000 8KBRAM 0x2000 0000 各種レジスタ SOFの後にプログラムを 置くことができる。BRAM 等に展開する(Qsys が自 動的に作る) EPCS
21.
NiosIIのメモリ構成例(3) 0x0000 0000 512KFlash ROM 0x2000 0000 各種レジスタ プログラムを置くことがで きる。不揮発性。アクセ スは高速ではない 1M SRAM/SDRAM 0x1000 0000 プログラムやデータを置 くことができる。揮発性の ため電源を切ったら情報 はなくなる。
22.
NiosII で uC/OS II を使う方法 •
Qsys によるシステムの構築 • Eclipse のテンプレート
23.
Qsys によるシステムの構築(例) RTOS の為に
Timer を追加。 RTOS の為にSDRAMを追加。
24.
Eclipse のテンプレート RTOS の雛形が標準でついている
Download now