[go: up one dir, main page]

JPH11272480A - オンチップリアルタイムos - Google Patents

オンチップリアルタイムos

Info

Publication number
JPH11272480A
JPH11272480A JP9548298A JP9548298A JPH11272480A JP H11272480 A JPH11272480 A JP H11272480A JP 9548298 A JP9548298 A JP 9548298A JP 9548298 A JP9548298 A JP 9548298A JP H11272480 A JPH11272480 A JP H11272480A
Authority
JP
Japan
Prior art keywords
task
time
function
real
tasks
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP9548298A
Other languages
English (en)
Inventor
Jiro Naganuma
次郎 長沼
Hiroe Iwasaki
裕江 岩崎
Makoto Endo
真 遠藤
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Nippon Telegraph and Telephone Corp
Original Assignee
Nippon Telegraph and Telephone Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Nippon Telegraph and Telephone Corp filed Critical Nippon Telegraph and Telephone Corp
Priority to JP9548298A priority Critical patent/JPH11272480A/ja
Publication of JPH11272480A publication Critical patent/JPH11272480A/ja
Pending legal-status Critical Current

Links

Abstract

(57)【要約】 【課題】 1つのCPU上に、CPUと専用ハードウェ
アとによって構成されるエンベディドシステム上に、ま
たは、それらを1つのチップ上に集積したオンチップ・
エンベディドシステム上に、リアルタイム情報処理を構
築するオンチップリアルタイムOSを提供することを目
的とするものである。 【解決手段】 リアルタイム処理を実現するのに不可欠
な最低限の機能として、タスク管理と、割込管理と、セ
マフォ管理とのみを設けたものである。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】特に、本発明は、CPUと専
用ハードウェアとによって構成されるエンベディドシス
テム(Embedded System )上に、または、それらを1つ
のチップ上に集積したオンチップ・エンベディドシステ
ム(On Chip Embedded System )上に、リアルタイム情
報処理を構築するオンチップリアルタイムOSに関す
る。
【0002】
【従来の技術】従来、複数のタスク(処理の主体)を、
1つのCPU(計算機)上で、時間多重で処理を行い、
しかも、所定の一定時間以内に全てのタスクの呼び出し
(起動)を保証するオンチップリアルタイムOSの構成
方法の実現方式として、下記文献[1]〜[4]に示さ
れている方式を採ることが一般的である。
【0003】または、1つのCPUと専用のハードウェ
アとによって構成され、上記CPUと上記専用ハードウ
ェアとの間で情報の授受を行いながら処理を進める情報
処理装置であるエンベディドシステムで、上記CPU上
で、複数のタスクを、時間多重で処理を行い、しかも、
所定の一定時間以内に全てのタスクの呼び出しを保証す
るオンチップリアルタイムOSの構成方法の実現方式と
して、下記文献[1]〜[4]に示されている方式を採
ることが一般的である。
【0004】また、通常の計算機システムの構成が、文
献[5]に記載され、エンベディドシステムの構成が、
文献[6]に記載されている。
【0005】[1]J.L.Perterson 他,“オペレーティ
ングシステムの概念”,培風館,1987. [2]K.Sakamura ed., “μITRON3.0 Specifi
cation”,TRON Association. [3]M. Accetta 他,“Mach : A New Kernel Founda
tion for UNIX Development”, Proc. Summer 198
6 USENIX,pp. 93-112, 1986. [4]J.K.Ousterhout 他,“The Sprite Network Ope
rating Syste”,IEEE Computer,Vol.21, No.2, p
p.23-36, 1988. [5]J.L.Hennessy and D.A.Patterson, “Computer A
rchitecture:A Quantitative Approach ”,Morgan Kau
fmann Publishers, Inc., 1990. [6]Daniel D.Gaisli ,“Specification and Design
of Embedded Systems”,Prentice Hall, 1994. なお、エンベディドシステム(Embedded System )は、
CPUと専用ハードウエアとによって構成され、CPU
上のソフトウエアと専用ハードウエアとの間で情報の授
受を行いながら処理を進めることによって、専用ハード
ウエアの「高速性」とCPU上のソフトウェアによる
「柔軟性」とを兼ね備えたシステムである。さらに、こ
れらを1つのチップ上に集積したオンチップ・エンベデ
ィドシステム(On Chip Embedded System )は、マルチ
メディア関連LSIのような大規模かつ複雑なLSIを
短期間で開発するLSI構成法として脚光を浴びてい
る。
【0006】
【発明が解決しようとする課題】ところで、文献[5]
に示す通常の計算機システム、または、文献[6]に示
すエンベディドシステムを1つのチップ上に集積したオ
ンチップ・エンベディドシステム上に、文献[1]〜
[4]に示すようなリアルタイムOSを用いてオンチッ
プリアルタイムOSを実現する場合、次の問題がある。
【0007】上記のように、エンベディドシステムは、
CPUと専用ハードウェアとによって構成され、CPU
上のソフトウェア(SW)と専用ハードウェア(HW)
との間で情報の授受(Interactions)を行いながら処理
を進める。一般に、HWとSWのインタラクシヨンは、
数十個を越えるHW/SWインタフェースのレジスタを
介して行われる。
【0008】HWを制御するCPU上のソフトウェアヘ
の要求条件として、次の(1)〜(4)が挙げられる。 (1)複数のハードウェア(HW)資源の制御 ターゲットLSIは、コアCPU上で動作するソフトウ
ェアによって全体の制御を行う。したがって、複数の機
能部品とのインタラクションやデッドラインを考慮した
上で設計されなければならない。 (2)リアルタイム性 ターゲットLSIでは、一定時間内に処理を完了するこ
とを保証する必要がある。また、割り込みイベントが発
生してから、ソフトウェアが割り込みを受け付けるまで
の時間が十分短くなければならない。 (3)資源の排他制御 LSIの低コスト化のため、メモリ量、ゲート規模等の
ハードウェア制約が厳しい。排他制御によってオンチッ
プ上の限られた資源を共有しなければならない。 (4)異常処理 LSIが正常に動作できなくなった場合に、異常検出ま
たは正常状態に復帰できるように処理しなければならな
い。
【0009】これらの要求に対し、文献[1]〜[4]
に示すリアルタイムOSは、基本機能として、(a)マ
ルチタスク機能とプリエンプティブなスケジューリング
機能を有するタスク管理機能、(b)最優先タスク実行
中においても割り込みイベントを受け付ける機能を有す
る割込管理機能、(c)複数のタスク間での情報授受の
排他制御を行うセマフォ管理機能、のみならず、(x1)
複数のタスクに独立したメモリ空間を与えるメモリ管理
機能、(x2)複数のタスク間で情報の授受を実現するタ
スク間通信機能、を有しており、さらに、これらの基本
機能を用いて、(x3)ネットワークを介して複数のシス
テム間を結合するネットワーク機能、(x4)システムの
入出力やファイルを実現するI/O・ファイル機能、
(x5)ユーザインタフェース機能、等の豊宮な応用機能
を提供している場合が多い。
【0010】図11は、ソフトウェアに対する要求条件
と、それを実現するリアルタイムOSの機能との関係を
示す図である。
【0011】図11に示すように、ソフトウェアに対す
る要求条件を満たす本質的なリアルタイム情報処理に不
可欠なリアルタイムOSの機能は、(a)タスク管理、
(b)割込管理、(c)セマフォ管理のみである。しか
し、文献[1]〜[4]に示すようなリアルタイムOS
は、豊富な機能を提供しているものの、実行時の動的メ
モリ量として、膨大なメモリ量を必要とし、数十kBを
越える動的メモリを持っているオンボードでは可能であ
るが、数kB以下の動的メモリしか持っていないオンチ
ップでは極めて困難である。
【0012】図12は、本発明オンチップリアルタイム
OSがターゲットとする動的メモリ量と、既存のリアル
タイムOSの動的メモリ量との関係を示す図である。
【0013】図12に示すように、オンボードに組み込
み可能な最も小さく軽いリアルタイムカーネルでも数十
kB〜数百kBのメモリを必要とし、パンコンやワーク
ステーション上の高機能リアルタイムOSはさらに数M
B以上のメモリを必要としている。これに対し、本発明
がターゲットとする動的メモリ量は数kB以下のもので
ある。
【0014】上記のように、オンチップ・エンベディド
システム上での従来のオンチップリアルタイムOSにお
ける問題点は、これから開発される種々のエンベディド
システムにおいても同様に発生する。「システムオンシ
リコン」に代表されるような集積回路技術の進展による
「高速性」と「柔軟性」とを兼ね備えたエンベディドシ
ステムの「オンボード」から「オンチップ」への発展を
考慮すると、今後ますます深刻な問題になる。すなわ
ち、オンチップ・エンベディドシステムに適した新しい
オンチップリアルタイムOSの構成方法が不可欠であ
る。しかし、従来は、最も小さく軽いリアルタイムカー
ネルでも数十kB〜数百kBのメモリを必要とするオン
ボード用のものしか存在しないという問題がある。
【0015】一方、豊富な機能を有する既存のリアルタ
イムOSから機能を削減することによって動的メモリ量
を低減する方法も考えられる。つまり、プリミティブな
基本機能を用いたネットワーク機能、入出力・ファイル
機能、ユーザインタフェース機能等の応用機能は、必要
な機能を取捨選択することによって動的メモリ量を低減
することができる。たとえば、図12に示すように、高
機能リアルタイムOSとオンボードリアルタイムOSと
のメモリ量の違いは、機能の選択によるところが大き
い。しかし、タスク管理、割込管理、セマフォ管理、メ
モリ管理、タスク間通信等の基本機能で構成されるシス
テムから、さらに、メモリ管理とタスク間通信とを分離
して取り除き、動的メモリ量をさらに低減しようとする
試みはなされてない。つまり、メモリ管理やタスク間通
信は、リアルタイムOSのプログラム構成上、タスク管
理やセマフォ管理と密接に結合されているので、これら
を分離して動的メモリ量を低減しようとする概念も試み
もされていないばかりでなく、分離する手段も試みもさ
れていない。
【0016】なお、オンチップ・エンベディドシステム
のリアルタイムOSを用いる場合、複数のHW資源を制
御しつつ、リアルタイム性を保証するシーケンス制御が
最も重要であり、本来、数十kB程度しか搭載できない
メモリ空間のデータ管理は、ユーザに任せても、あまリ
プログラミング上の負担にはならない。
【0017】本発明は、搭載メモリが極めて少ない情報
処理システム上にリアルタイム情報処理を構築するオン
チップリアルタイムOSを提供することを目的とするも
のである。
【0018】特に、本発明は、1つのCPU上に、CP
Uと専用ハードウェアとによって構成されるエンベディ
ドシステム(Embedded System )上に、または、それら
を1つのチップ上に集積したオンチップ・エンベディド
システム(On Chip EmbeddedSystem )上に、リアルタ
イム情報処理を構築するオンチップリアルタイムOSを
提供することを目的とするものである。
【0019】
【課題を解決するための手段】本発明は、リアルタイム
処理を実現するのに不可欠な最低限の機能として、タス
ク管理と、割込管理と、セマフォ管理とのみを設けたも
のである。
【0020】
【発明の実施の形態および実施例】図1は、本発明の第
1の実施例であるオンチップリアルタイムOS21を含
むオンチップリアルタイム情報処理装置IS1を示す図
である。
【0021】オンチップリアルタイム情報処理装置IS
1は、1つのCPU(計算機)11と、オンチップリア
ルタイムOS21と、アプリケーションソフト31とを
有する。
【0022】オンチップリアルタイムOS21は、タス
ク管理手段21aと、割込管理手段21bと、セマフォ
管理手段21cとのみを有する。
【0023】タスク管理手段21aは、CPU11上
に、複数のタスクを時間多重で独立に処理する機能であ
るマルチタスク機能と、複数のタスクに付与されている
優先度に応じて、優先度の低いタスクよりも優先度の高
いタスクを優先的に処理する機能であるプリエンプティ
ブなスケジューリング機能とを有する手段である。
【0024】割込管理手段21bは、どのような優先度
のタスクの実行中においても割り込みイベントを受け付
ける機能を有する手段である。
【0025】セマフォ管理手段21cは、複数のタスク
間での情報授受の排他制御機能を有する手段である。
【0026】図2は、本発明の第2の実施例であるオン
チップリアルタイムOS22を含むオンチップリアルタ
イム情報処理装置IS2を示す図である。
【0027】オンチップリアルタイム情報処理装置IS
2は、専用ハードウェア12と、Core CPU12
aと、オンチップリアルタイムOS22と、HW/SW
IF(ハードウェアとソフトウェアとのインターフェ
ース)22Iと、アプリケーションソフト32とを有す
る。
【0028】リアルタイムOS22は、専用ハードウェ
ア12とCore CPU12aとによって構成される
エンベディドシステム上に、タスク管理手段22aと、
割込管理手段22bと、セマフォ管理手段22cとのみ
を有する。
【0029】図3は、上記実施例におけるタスク管理、
割込管理、セマフォ管理を実現する18個のシステムコ
ールを示す図である。
【0030】タスク管理手段21a、22aは、タスク
管理を実現するタスクの生成を行う手段と、タスクの起
動を行う手段と、タスクの終了を行う手段と、タスクの
削除を行う手段と、他タスク強制終了を行う手段と、周
期的に起動されるタスクである周期タスクの生成を行う
手段と、周期タスクの起動を行う手段と、周期タスクの
終了を行う手段と、周期タスクの削除を行う手段と、他
周期タスク強制終了を行う手段と、自タスクID情報取
得を行う手段とを具備するものである。
【0031】割込処理手段21b、22bは、割込管理
を実現する割込ハンドラ定義を行う手段と、割込ハンド
ラ定義解除を行う手段と、割込終了を行う手段とを具備
するものである。
【0032】セマフォ管理手段21c、22cは、セマ
フォ管理を実現するセマフォ生成を行う手段と、セマフ
ォ操作を行う手段と、セマフォ削除を行う手段とを具備
するものである。
【0033】初期設定手段21d、22dは、カーネル
初期設定手段であり、このカーネル初期設定は、タスク
管理手段21a、22aが具備する上記各手段と、割込
管理手段21b、22bが具備する上記各手段と、上記
セマフォ管理手段21c、22cが具備する上記各手段
とを起動する初期設定手段である。
【0034】図4は、上記実施例において、タスク管理
手段21a、22aにおけるタスクが状態遷移する例を
示す図である。
【0035】タスクは、Non−exist、Exis
t、Ready、Runの4つの状態を持つ。各システ
ムコールによるタスクの状態遷移が図4に示されてい
る。
【0036】図5は、上記実施例のタスク管理手段21
a、22aにおけるマルチタスク機能とスケジューリン
グ機能との例を示す図である。
【0037】マルチタスク機能は、複数の独立したタス
クを用いて所望の処理を実現することができる。各タス
クの実行順序を決定する機能がスケジユーリング機能で
ある。スケジユーリング機能は、タスク生成時に付与さ
れた優先度に従い、優先度の高いタスクから順番に実行
するスケジューリング方法である。実行中に、優先度の
高いタスクが実行待ちになつた場合、図5に示すよう
に、実行中のタスクをプリエンプション(中断)し、優
先度の高いタスクを実行する。
【0038】図6は、上記実施例における割込処理手段
21b、22bを具体的に示す図である。
【0039】割込処理手段21b、22bは、リアルタ
イム性の厳しい処理を行ったり、異常処理を行うために
割込管理機能を実現している。図6に示すように、最も
高い優先度を持つタスクの処理中であっても、割込発生
時には、登録している割込ハンドラが直ちに起動され
る。
【0040】図7は、上記実施例におけるセマフォ管理
手段21c、22cを具体的に示す図である。
【0041】セマフォ管理によって、資源の排他制御を
実現する。各タスクは、セマフォ操作システムコールを
発行することによって、資源の確保・解放ができる。図
7に示すように、セマフォ制御によって、共通に使用で
きる資源を排他制御し(1つのタスクが使用中の資源に
対して他のタスクのアクセスを禁止し)、タスク間で資
源を共有することができる。
【0042】図8は、本発明の第3の実施例であるオン
チップリアルタイムOS23を含むオンチップリアルタ
イム情報処理装置IS3を示す図である。
【0043】オンチップリアルタイム情報処理装置IS
3は、MUX(MPEG2多重)LSI13と、オンチ
ップリアルタイムOS23と、HW/SW IF(ハー
ドウェアとソフトウェアとのインターフェース)23I
と、アプリケーションソフト33とを有する。MUX
LSI13は、MUX用ハードウェアとCore CP
U13aとによって構成されている。
【0044】リアルタイムOS23は、MUX LSI
13上に、タスク管理手段23aと、割込管理手段23
bと、セマフォ管理手段23cとのみを有する。
【0045】アプリケーションソフト33は、Vide
o処理33aと、Audio処理33bと、User処
理33cと、PCR(システムの時刻管理を行うタイム
スタンプ)処理33dと、PSI(環境情報)処理33
eとを独立したタスクとして実現している。
【0046】すなわち、オンチップリアルタイム情報処
理装置IS3は、MPEG2システムが規定する映像/
音声/ユーザストリームの多重(Multiplexer:MUXと
呼ぶ)に適用した場合の例である。
【0047】上記MUXは、特願平8−75346号プ
ロトコル処理装置に規定されているように、複数の入力
ストリームとして、MPEG2準拠の映像ストリーム、
音声ストリーム、ユーザストリームを扱い、複数の出力
ストリームとして、トランスポートストリームまたはプ
ログラムストリーム等のストリームを扱うものであり、
映像、音声、ユーザの3つのストリーム(「エレメンタ
リストリーム」と呼ばれる)を多重化し、1つのトラン
スポートまたはプログラムストリームを出力するプロト
コル処理装置が上記MUXである。
【0048】図9は、上記第3の実施例を、MPEG2
システムに適用した場合の具体的な例を示す図である。
【0049】MUX13の独立したタスク構成として、
Video、PCR、PSI等の詳細なタスクとその優
先度との関係を示している。
【0050】図10は、上記第3の実施例を、MPEG
2システムに適用した場合の具体的な例を示す図であ
る。
【0051】実際のトランスポートストリームの処理に
おいて、Video、PCR、PSI等が起動される各
タスクの実行過程、各タスクの実行の割合等を示してい
る。実際の規定のレートは、Video:5.0Mbp
s、PCR:100msecに1個、PSI:1sec
に1個であり、全体のTSのレートは、6.144Mb
psであり、図10に示す各タスクの起動の割合は、こ
れらの規定レートに従ったものになっている。なお、タ
スクの優先度と具体的なタスクとの対応は図9に示して
ある。
【0052】上記実施例は、リアルタイム処理を実現す
るのに不可欠な最低限の機能として、夕スク管理、割込
管理、セマフォ管理のみを提供することによって、極め
て搭載メモリの少ない情報処理システム上に、MPEG
2システムのアプリケーション等のリアルタイム情報処
理を構築するのに好適なオンチップリアルタイムOSを
実現することが可能である。図8に示したMUXへの適
用では、本発明の実施例であるオンチップリアルタイム
OSの部分が約2kB、複数タスクで構成されるMUX
のアプリケーションの部分が約2kB以下となり、両方
合わせても4kBという極めて少ない動的メモリ量でリ
アルタイムOSを実装し、MUXのアプリケーション動
作させることができる。
【0053】なお、上記実施例は、リアルタイム処理を
実現するのに不可欠な最低限の機能として、夕スク管
理、割込管理、セマフォ管理のみを提供することによっ
て、極めて搭載メモリの少ない情報処理システム上にリ
アルタイム情報処理を構築するのに好適なオンチップリ
アルタイムOSを提供することにある。特に、CPUと
専用ハードウェアから構成されるエンベディドシステム
(Embedded System )上に、または、それらを1つのチ
ップ上に集積したオンチップ・エンベデイドシステム
(On Chip Embedded System )上に、リアルタイム情報
処理を構築するのに好適なオンチップリアルタイムOS
を提供することにある。このため、アプリケーションの
種類や、アプリケーションのタスクを用いた構成法等は
特にここで規定するところではない。また、ハードウェ
アである計算機(CPU)またはCPUと専用ハードウ
ェアから構成されているエンベディドシステム、また
は、1つのチップ上に集積したオンチップ・エンベディ
ドシステム等の構成法も、特にここで規定するところで
はない。
【0054】すなわち、上記実施例のオンチップリアル
タイムOSは、オンチップエンベディドシステムの大規
模化、複雑化するソフトウェアに対する要求条件である
以下の項目に対して、極めて有効な手段を提供すること
ができる。
【0055】・複数のハードウェア資源の制御 マルチタスク機能を用いて、複数のハードウェア資源を
制御することができる。異なる処理単位で、独立にタス
クを設計することが可能である。各々のタスクは、オン
チップリアルタイムOSが提供するマルチタスク機能に
よって、他のタスクとの依存性を考慮せずに設計でき
る。
【0056】・リアルタイム性 オンチップリアルタイムOSでスケジューリングを行
い、リアルタイム性を保証している。このため、異なる
処理間で、互いにデッドラインを考慮してソフトウェア
を設計する必要はない。また、割込管理によって、割込
の即応性にも優れている。
【0057】・資源の排他制御 オンチップリアルタイムOSで提供されるシステムコー
ルを用いて、容易にタスク間で資源を共有することがで
きる。
【0058】・異常処理 割込管理のサポートによって、即座に異常を検出し、適
切な異常処理を行うことができる。
【0059】また、上記実施例を、MPEG2システム
が規定する映像/音声/ユーザストリームの多重(MU
X)処理に適用する場合、ハードウェアとして、特願平
8−75346号に開示されているプロトコル処理装置
を適用し、そのソフトウェアとして上記実施例を利用す
る場合、極めて容易にMUX処理で不可欠な複雑なリア
ルタイム処理を実現することができるので、従来のMU
Xのソフトウェアでは困難であった機能の変更や追加等
を容易に行うことができる。
【0060】なお、上記特願平8−75346号に開示
されているプロトコル処理装置は、複数の入力ポートか
ら入力された複数の入力ストリーム中のデータを、所定
のシンタックスに従って、データの組立、分解、挿入、
削除、加工、並び替え等の処理を行い、複数の出力ポー
トへ複数の出力ストリームとして出力するプロトコル処
理装置において、2ポートメモリで構成され、入出力ス
トリームの一部を格納するバッファメモリと、上記複数
の入力ストリームを上記バッファメモリの第1のポート
へ書き込む動作を制御するライト制御部と、上記バッフ
ァメモリの第2のポートから複数の出力ストリームを読
み出す動作を制御するリード制御部と、2ポートメモリ
で構成され、シンタックス処理を実行するために作業デ
ータを一時的に格納するデータメモリと、上記バッファ
メモリ内のデータを参照、読み出し、上記データメモリ
を用いて上記シンタックス処理を実現し、このシンタッ
クス処理されたデータを上記バッファメモリに書き込む
処理を実現するプログラム可能なシンタックス処理制御
部とを有し、所定のプロトコル処理を実現する装置であ
る。なお、このプロトコル処理装置におけるプロトコル
処理を、上記所定のリアルタイム処理として実行するよ
うにしてもよい。
【0061】さらに、上記実施例であるオンチップリア
ルタイムOSの適用によって、オンチップ・エンベディ
ドシステムにおけるアプリケーション(アプリケーショ
ンソフトウェア)の設計が簡易になり、ソフトウェア開
発の短TAT化を図ることができる。さらに、タスクと
して、ソフトウェアを複数の機能毎に部品化を図ること
によって、機能の変更や追加を容易に実行することがで
きるばかりでなく、ソフトウェア機能部品の再利用も容
易である。これによって、たとえば、MPEG2準拠の
ビデオエンコーダ、ビデオデコーダ、オーディオエンコ
ーダ、オーディオデコーダ、さらに、MPEG2システ
ムが規定する多重化(MUX)処理、分離化(Demultip
lexer:DMUXと呼ぶ)処理等を個別のソフトウェア機
能部品として構成し、それらをオンチップリアルタイム
OSを用いて同時に時間分割でかつリアルタイム性を保
証して実行することも可能である。
【0062】集積回路技術の進展によって、オンチップ
システムの大規模・複雑化は今後も進展すると考えられ
るので、オンチップ・エンベディドシステムに上記実施
例であるオンチップリアルタイムOSを搭載すること
は、複雑なソフトウェア開発の効率化を図るために極め
て有効である。
【0063】上記のように、将来的なネットワーク技術
をベースにしたマルチメディア時代において、上記実施
例が提供する小型、経済化、VLSI化が可能な新しい
オンチップリアルタイムOSの果たす役割は図り知れな
い。
【0064】上記実施例においては、CPUと専用ハー
ドウェアから構成されるエンベディドシステム上に、ま
たは、それらを1つのチップ上に集積したオンチップ・
エンベデイドシステム上に、オンチップリアルタイムO
S21、22、23を実装したものであるが、1つのC
PU上に、オンチップリアルタイムOS21、22、2
3を実装するようにしてもよい。
【0065】
【発明の効果】本発明によれば、搭載メモリが極めて少
ない情報処理システム上にリアルタイム情報処理を構築
することができるので、従来のオンチップリアルタイム
OSに比べ、小型、経済化を図った新しいオンチップリ
アルタイムOSを実現することができ、特に、オンチッ
プリアルタイムOSは、CPUと専用ハードウェアから
構成されるエンベディドシステム(Embedded System )
上に、または、それらを1つのチップ上に集積したオン
チップ・エンベデイドシステム(On Chip Embedded Sys
tem )上に、数kB程度で実装できるので、オンチップ
リアルタイムOSの小型、経済化、VLSI化を図るこ
とができるという効果を奏する。
【図面の簡単な説明】
【図1】本発明の第1の実施例であるオンチップリアル
タイムOS21を含むオンチップリアルタイム情報処理
装置IS1を示す図である。
【図2】本発明の第2の実施例であるオンチップリアル
タイムOS22を含むオンチップリアルタイム情報処理
装置IS2を示す図である。
【図3】上記実施例におけるタスク管理、割込管理、セ
マフォ管理を実現する18個のシステムコールを示す図
である。
【図4】上記実施例において、タスク管理手段21a、
22aにおけるタスクが状態遷移する例を示す図であ
る。
【図5】上記実施例のタスク管理手段21a、22aに
おけるマルチタスク機能とスケジューリング機能との例
を示す図である。
【図6】上記実施例における割込処理手段21b、22
bを具体的に示す図である。
【図7】上記実施例におけるセマフォ管理手段21c、
22cを具体的に示す図である。
【図8】本発明の第3の実施例であるオンチップリアル
タイムOS23を含むオンチップリアルタイム情報処理
装置IS3を示す図である。
【図9】上記第3の実施例を、MPEG2システムに適
用した場合の具体的な例を示す図である。
【図10】上記第3の実施例を、MPEG2システムに
適用した場合の具体的な例を示す図である。
【図11】ソフトウェアに対する要求条件と、それを実
現するリアルタイムOSの機能との関係を示す図であ
る。
【図12】本発明オンチップリアルタイムOSがターゲ
ットとする動的メモリ量と、既存のリアルタイムOSの
動的メモリ量との関係を示す図である。
【符号の説明】
IS1、IS2、IS3…オンチップリアルタイム情報
処理装置、 11…CPU、 12…専用ハードウェア、 12a、13a…Core CPU、 13…MUX LSI、 21、22、23…オンチップリアルタイムOS、 21a、22a、23a…タスク管理手段、 21b、22b、23b…割込処理手段、 21c、22c、23c…セマフォ管理手段、 31、32、33…アプリケーション。

Claims (5)

    【特許請求の範囲】
  1. 【請求項1】 複数のタスクを1つのCPU上で時間多
    重で処理し、しかも、所定の一定時間以内に全てのタス
    クの呼び出しを保証するオンチップリアルタイムOSに
    おいて、 複数のタスクを時間多重で独立に処理する機能であるマ
    ルチタスク機能と、上記タスクのそれぞれに付与されて
    いる優先度の低いタスクよりも上記優先度の高いタスク
    を優先的に処理する機能であるプリエンプティブなスケ
    ジューリング機能とを有するタスク管理手段と;どのよ
    うな優先度のタスクの実行中においても、割り込みイベ
    ントを受け付ける機能を有する割込管理手段と;複数の
    タスク間における情報授受の排他制御機能を有するセマ
    フォ管理手段と;を有し、所定のリアルタイム情報処理
    を実現することを特徴とするオンチップリアルタイムO
    S。
  2. 【請求項2】 1つのCPUと専用のハードウェアとに
    よって構成され、上記CPUと上記専用ハードウェアと
    の間で情報の授受を行いながら処理を進める情報処理装
    置であるエンベディドシステムで、上記CPU上で複数
    のタスクを時間多重で処理を行い、しかも、所定の一定
    時間以内に全てのタスクの呼び出しを保証するオンチッ
    プリアルタイムOSにおいて、 複数のタスクを時間多重で独立に処理する機能であるマ
    ルチタスク機能と、複数のタスクに付与されている優先
    度の低いタスクよりも上記優先度の高いタスクを優先的
    に処理する機能であるプリエンプティブなスケジューリ
    ング機能を有するタスク管理手段と;どのような優先度
    のタスクの実行中においても割り込みイベントを受け付
    ける機能を有する割込管理手段と;複数のタスク間での
    情報授受の排他制御機能を有するセマフォ管理手段と;
    を具備し、所定のリアルタイム情報処理を実現すること
    を特徴とするオンチップリアルタイムOS。
  3. 【請求項3】 請求項1または請求項2において、 上記タスク管理手段は、 上記タスクの生成を行う手段と、上記タスクの起動を行
    う手段と、上記タスクの終了を行う手段と、上記タスク
    の削除を行う手段と、他タスク強制終了を行う手段と、
    周期的に起動されるタスクである周期タスクの生成を行
    う手段と、上記周期タスクの起動を行う手段と、上記周
    期タスクの終了を行う手段と、上記周期タスクの削除を
    行う手段と、上記周期タスク以外のタスクである他周期
    タスクを強制終了する手段と、自タスクID情報取得を
    行う手段とを具備し、 上記割込管理手段は、 割込ハンドラ定義を行う手段と、割込ハンドラ定義解除
    を行う手段と、割込終了を行う手段とを具備し、 上記セマフォ管理手段は、 セマフォ生成を行う手段と、セマフォ操作を行う手段
    と、セマフォ削除を行う手段とを具備し、 さらに、上記タスク管理手段が具備する上記各手段と、
    上記割込管理手段が具備する上記各手段と、上記セマフ
    ォ管理手段が具備する上記各手段とを起動する初期設定
    手段を具備し、所定のリアルタイム情報処理を実現する
    ことを特徴とするオンチップリアルタイムOS。
  4. 【請求項4】 請求項1〜請求項3のいずれか1項にお
    いて、 上記オンチップリアルタイムOSを、1つのチップ上に
    構成し、所定のリアルタイム情報処理を実現することを
    特徴とするオンチップリアルタイムOS。
  5. 【請求項5】 請求項1〜請求項4のいずれか1項にお
    いて、 複数の入力ポートから入力された複数の入力ストリーム
    中のデータを、所定のシンタックスに従って、データの
    組立、分解、挿入、削除、加工、並び替え等の処理を行
    い、複数の出力ポートへ複数の出力ストリームとして出
    力するプロトコル処理装置において、2ポートメモリで
    構成され、入出力ストリームの一部を格納するバッファ
    メモリと、上記複数の入力ストリームを上記バッファメ
    モリの第1のポートへ書き込む動作を制御するライト制
    御部と、上記バッファメモリの第2のポートから複数の
    出力ストリームを読み出す動作を制御するリード制御部
    と、2ポートメモリで構成され、シンタックス処理を実
    行するために作業データを一時的に格納するデータメモ
    リと、上記バッファメモリ内のデータを参照、読み出
    し、上記データメモリを用いて上記シンタックス処理を
    実現し、このシンタックス処理されたデータを上記バッ
    ファメモリに書き込む処理を実現するプログラム可能な
    シンタックス処理制御部とを有し、所定のプロトコル処
    理を実現するプロトコル処理を、上記所定のリアルタイ
    ム処理として実行することを特徴とするオンチップリア
    ルタイムOS。
JP9548298A 1998-03-24 1998-03-24 オンチップリアルタイムos Pending JPH11272480A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP9548298A JPH11272480A (ja) 1998-03-24 1998-03-24 オンチップリアルタイムos

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP9548298A JPH11272480A (ja) 1998-03-24 1998-03-24 オンチップリアルタイムos

Publications (1)

Publication Number Publication Date
JPH11272480A true JPH11272480A (ja) 1999-10-08

Family

ID=14138842

Family Applications (1)

Application Number Title Priority Date Filing Date
JP9548298A Pending JPH11272480A (ja) 1998-03-24 1998-03-24 オンチップリアルタイムos

Country Status (1)

Country Link
JP (1) JPH11272480A (ja)

Cited By (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2003027846A1 (en) * 2001-09-20 2003-04-03 Ricoh Company, Ltd. Task switching system, task switching method and dsp modem
US7089555B2 (en) 2001-06-27 2006-08-08 International Business Machines Corporation Ordered semaphore management subsystem
US7143414B2 (en) 2001-09-26 2006-11-28 International Business Machines Corporation Method and apparatus for locking multiple semaphores
WO2008023426A1 (fr) 2006-08-24 2008-02-28 Netcleus Systems Corporation Dispositif de traitement de tâche
US7349688B2 (en) 2001-12-07 2008-03-25 Ntt Docomo, Inc. Mobile communications terminal, application program execution state control method, and execution state control computer program product
US7454753B2 (en) 2001-06-27 2008-11-18 International Business Machines Corporation Semaphore management subsystem for use with multi-thread processor systems
US7472214B2 (en) 2005-08-05 2008-12-30 Mitsubishi Denki Kabushiki Kaisha Real-time embedded simple monitor method and computer product
US7917908B2 (en) 2001-09-26 2011-03-29 International Business Machines Corporation Flow lookahead in an ordered semaphore management subsystem
US8327379B2 (en) 2006-08-24 2012-12-04 Kernelon Silicon Inc. Method for switching a selected task to be executed according with an output from task selecting circuit
US8341641B2 (en) 2007-08-16 2012-12-25 Kernelon Silicon Inc. Task processor
WO2013175610A1 (ja) 2012-05-24 2013-11-28 カーネロンシリコン株式会社 タスク処理装置
US8996761B2 (en) 2007-08-10 2015-03-31 Kernelon Silicon Inc. Virtual queue processing circuit and task processor

Cited By (21)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7089555B2 (en) 2001-06-27 2006-08-08 International Business Machines Corporation Ordered semaphore management subsystem
US7454753B2 (en) 2001-06-27 2008-11-18 International Business Machines Corporation Semaphore management subsystem for use with multi-thread processor systems
WO2003027846A1 (en) * 2001-09-20 2003-04-03 Ricoh Company, Ltd. Task switching system, task switching method and dsp modem
US7917908B2 (en) 2001-09-26 2011-03-29 International Business Machines Corporation Flow lookahead in an ordered semaphore management subsystem
US7143414B2 (en) 2001-09-26 2006-11-28 International Business Machines Corporation Method and apparatus for locking multiple semaphores
US7349688B2 (en) 2001-12-07 2008-03-25 Ntt Docomo, Inc. Mobile communications terminal, application program execution state control method, and execution state control computer program product
US7472214B2 (en) 2005-08-05 2008-12-30 Mitsubishi Denki Kabushiki Kaisha Real-time embedded simple monitor method and computer product
US9342350B2 (en) 2006-08-24 2016-05-17 Renesas Electronics Corporation System for selecting a task to be executed according to an output from a task control circuit
US9753729B2 (en) 2006-08-24 2017-09-05 Renesas Electronics Corporation System for selecting a task to be executed according to an output from a task control circuit
WO2008023426A1 (fr) 2006-08-24 2008-02-28 Netcleus Systems Corporation Dispositif de traitement de tâche
US8327379B2 (en) 2006-08-24 2012-12-04 Kernelon Silicon Inc. Method for switching a selected task to be executed according with an output from task selecting circuit
US9047120B2 (en) 2007-08-10 2015-06-02 Kernelon Silicon Inc. Virtual queue processing circuit and task processor
US8996761B2 (en) 2007-08-10 2015-03-31 Kernelon Silicon Inc. Virtual queue processing circuit and task processor
US9104470B2 (en) 2007-08-16 2015-08-11 Renesas Electronics Corporation Task processor
US8776079B2 (en) 2007-08-16 2014-07-08 Kernelon Silicon Inc. Task processor
US8341641B2 (en) 2007-08-16 2012-12-25 Kernelon Silicon Inc. Task processor
US9766924B2 (en) 2007-08-16 2017-09-19 Renesas Electronics Corporation Task processor
US10387191B2 (en) 2007-08-16 2019-08-20 Renesas Electronics Corporation Task processor
US10949249B2 (en) 2007-08-16 2021-03-16 Renesas Electronics Corporation Task processor
WO2013175610A1 (ja) 2012-05-24 2013-11-28 カーネロンシリコン株式会社 タスク処理装置
US9753779B2 (en) 2012-05-24 2017-09-05 Renesas Electronics Corporation Task processing device implementing task switching using multiple state registers storing processor id and task state

Similar Documents

Publication Publication Date Title
JP4028444B2 (ja) スケジューリング方法およびリアルタイム処理システム
JP3889726B2 (ja) スケジューリング方法および情報処理システム
JP3920818B2 (ja) スケジューリング方法および情報処理システム
US7661107B1 (en) Method and apparatus for dynamic allocation of processing resources
KR101258502B1 (ko) 멀티코어 아키텍처 내의 리소스 관리
JP5367816B2 (ja) オペレーションの保護モードスケジューリング
US9052957B2 (en) Method and system for conducting intensive multitask and multiflow calculation in real-time
EP1622015A2 (en) Method and system for performing real-time operation
Saksena et al. Design and implementation of Maruti-II
WO2006055864A2 (en) Method and apparatus for implementing task management of computer operations
JPH11272480A (ja) オンチップリアルタイムos
CA1304513C (en) Multiple i/o bus virtual broadcast of programmed i/o instructions
Pöhnl et al. A middleware journey from microcontrollers to microprocessors
Ditze DReaMS—Concepts of a distributed real-time management system
Gopalan Real-time support in general purpose operating systems
US7320044B1 (en) System, method, and computer program product for interrupt scheduling in processing communication
JP2003345614A (ja) シングルプロセッサ向けosによる並列処理システム
Burgess et al. BED: a multithreaded kernel for embedded systems
Rodrigues et al. The design of RT-Appia
Kamrad et al. An Ada runtime system implementation of the Ravenscar profile for high speed application-layer data switch
Hofer Sloth: The Virtue and Vice of Latency Hiding in Hardware-Centric Operating Systems
Schmidt et al. TAO: a High-performance ORB Endsystem Architecture for Real-time CORBA
van Dijk The design of the EMPS multiprocessor executive for distributed computing
Schmidt et al. Half-Sync/Half-Async
CN118519683A (zh) 一种支持硬实时的嵌入式混合内核操作方法及系统