つながるワイヤレス通信機器の開発手法(13) ――ファームウェアを設計する

太田 博之

tag: 組み込み

技術解説 2004年9月16日

● リアルタイムOSとメイン・ループの関係

 最近のワイヤレス通信機器では,ITRONなどのリアルタイムOSを搭載することが多くなってきた.リアルタイムOSは組み込み型プログラム向けのOSであり,優先順位を持ったタスクの切り替え機能,タスク間のメッセージング機能,メモリの管理機能を有し,設計者は処理間のタイミング調整やリソースの過多をあまり気にしなくてもプログラムを組むことができる.

 リアルタイムOSの機能の一つである優先順位を持ったタスク切り替え機能は,図11のように動作する.

1)時刻t1において,タスクCが発生.時刻t1ではほかのタスクがないのでタスクCを時刻t2まで実行.
2)時刻t2でタスクCの処理が終わり,アイドル(待機)状態に移行.
3)時刻t3でタスクBが発生し,処理を開始.
4)時刻t4でタスクAが発生する.このときCPUはタスクBを処理中であるが,タスクAのほうが優先順位が高いため,CPUはタスクBの処理を一時的に停止する.
5)時刻t5でタスクAが終了.このとき,待たせていたタスクBの処理を再開.同時にタスクCも発生するが優先順位が低いため,タスクBが終わるまで待たされる.
6)時刻t6でタスクBが終了し,タスクCの処理を開始.
7)時刻t7でタスクCが終了し,CPUはアイドル状態に戻る.

 数十ms以上の長さのタスク処理を切り替える場合,リアルタイムOSを使用するメリットは大きい.それより短い周期のタスクについては,割り込み型プログラムとの併用が必要になる.図10の例では,メイン処理の部分にリアルタイムOSを利用するとよい.

 また,ITRONなどの標準的なリアルタイムOSの場合,アプリケーション系ファームウェアで使われるTCP/IPスタックやPIM(Personal Information Manager)などのソフトウェア部品が,多くのベンダから有償または無償で提供されている.これらを利用すれば,設計工数を削減することができる.

f11_01.gif
〔図11〕リアルタイムOSのタスク切り替え機能
図の上側が処理状態,下側が処理要求である.停止中の処理は縦線で表している.


おおた・ひろゆき
加賀電子(株)
◆筆者プロフィール◆
20年以上にわたり,通信関連のエンジニア,エンジニアリング・チームのマネージャ,コンサルタントと,技術出身者としてはまっとうな(?)成長段階を経て,現在は電子専門商社にてマーケティング,新事業企画に従事.得意領域はこれまでのGPS,携帯電話,ワイヤレスLAN,Bluetoothに加えて,VoIP技術,テレマティクスとその領域は今でも広がり続けている.

組み込みキャッチアップ

お知らせ 一覧を見る

電子書籍の最新刊! FPGAマガジン No.12『ARMコアFPGA×Linux初体験』好評発売中

FPGAマガジン No.11『性能UP! アルゴリズム×手仕上げHDL』好評発売中! PDF版もあります

PICK UP用語

EV(電気自動車)

関連記事

EnOcean

関連記事

Android

関連記事

ニュース 一覧を見る
Tech Villageブログ

渡辺のぼるのロボコン・プロモータ日記

2年ぶりのブログ更新w

2016年10月 9日

Hamana Project

Hamana-8最終打ち上げ報告(その2)

2012年6月26日