JPH07200320A - 時分割同時プログラム処理装置 - Google Patents

時分割同時プログラム処理装置

Info

Publication number
JPH07200320A
JPH07200320A JP5348752A JP34875293A JPH07200320A JP H07200320 A JPH07200320 A JP H07200320A JP 5348752 A JP5348752 A JP 5348752A JP 34875293 A JP34875293 A JP 34875293A JP H07200320 A JPH07200320 A JP H07200320A
Authority
JP
Japan
Prior art keywords
job
processing
interrupt
time
execution
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
JP5348752A
Other languages
English (en)
Inventor
Shigeo Tanaka
繁雄 田中
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.)
Sony Corp
Original Assignee
Sony 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 Sony Corp filed Critical Sony Corp
Priority to JP5348752A priority Critical patent/JPH07200320A/ja
Publication of JPH07200320A publication Critical patent/JPH07200320A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Television Signal Processing For Recording (AREA)

Abstract

(57)【要約】 【目的】 時分割同時プログラム処理装置において、待
ち時間のある処理を含む複数の処理を同時に行う場合
に、待ち時間の間でも他の処理を行うことができるよう
にする。 【構成】 各ジョブの実行に与えられている時間内に各
ジョブが実行を終了したときに、各ジョブより発生する
システム割り込みを検出する。そして、システム割り込
みを発生したジョブから次のジョブに移行するように制
御する。これにより、待ち時間のある処理を含む複数の
処理を同時に行う場合に、待ち時間の間でも他の処理を
行うことができる。なお、システム割り込みの検出は、
クロック信号のカウント値が所定値に一致したときに行
われる。または、テレビの垂直同期信号を検出したとき
に行われる。

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明は、複数のプロセスを一定
周期の時分割処理で実行する時分割同時プログラム処理
装置に関する。
【0002】
【従来の技術】従来、MSDOS(米国マイクロソフト
社の登録商標)上で、複数の異なるユーザープログラム
を、テレビの垂直期間(例えば60Hz)毎に時分割に
よるタスク切り替によりあたかも同時に動いているよう
に処理するプログラム処理装置がある。
【0003】
【発明が解決しようとする課題】ところで、上述した従
来のプログラム処理装置にあっては、複数の処理を同時
に行う場合で、時間待ち/返事待ち等の待ち時間を有す
る処理があると、この処理と同時に処理すべき処理も一
緒に動かすようにする配慮が必要であり、この配慮が非
常に面倒であるという問題点があった。すなわち、時間
待ち/返事待ちが一定の時間に行われれば、この時間内
では他の処理を行うことができる。しかしながら、時間
待ち/返事待ちが不変であることが一般的であるので、
この時間内に他の処理を割り当てることが非常に難し
い。
【0004】例えば、図18に示すような処理(AVバ
スからパワーオン命令受信)をマイクロコンピュータ
(以下マイコンという)で実現しようとすると、この処
理の”テレビマイコンからの返事待ち処理”では、この
処理のみ行っているのであれば、メインルーチン内でそ
の待ち処理で全体の処理の流れを止めても良い。しかし
ながら、実際は、返事待ちの間にも他に同時に行わなけ
ればならない処理が多くあるので、一箇所で処理を止め
て待つことは全体の処理時間をむやみに長くするだけで
ある。例えば図18の処理の中でAVバスからの受信デ
ータ分析処理中に、図19および図20に示す割り込み
処理を行なう必要がある。
【0005】そこで本発明は、待ち時間のある処理を含
む複数の処理を同時に行う場合に、待ち時間の間でも他
の処理を行うことができる時分割同時プログラム処理装
置を提供することを目的としている。
【0006】
【課題を解決するための手段】上記目的達成のため請求
項1記載の発明による時分割同時プログラム処理装置
は、複数のジョブの各々を周期的に実行させる時分割同
時プログラム処理装置において、前記各ジョブの実行に
与えられている時間内に各ジョブが実行を終了したとき
に各ジョブより発生するシステム割り込みを検出するシ
ステム割り込み検出手段と、前記システム割り込み検出
手段にてシステム割り込みが検出されたときに、該シス
テム割り込みを発生したジョブから次のジョブに移行す
るように制御する制御手段とを設けたことを特徴とす
る。
【0007】また、請求項2記載の発明によるプログラ
ム処理装置は、請求項1記載の発明による時分割同時プ
ログラム処理装置において、クロック信号をカウントす
るカウント手段を有し、前記システム割り込み検出手段
は、前記カウント手段によるカウント値が所定値に一致
したときにシステム割り込みを検出することを特徴とす
る。また、請求項3記載の発明によるプログラム処理装
置は、請求項1記載の発明による時分割同時プログラム
処理装置において、テレビの垂直同期信号を検出する垂
直同期信号検出手段を有し、前記システム割り込み検出
手段は、前記垂直同期信号検出手段にてテレビの垂直同
期信号が検出されたときにシステム割り込みを検出する
ことを特徴とする。
【0008】また、請求項4記載の発明によるプログラ
ム処理装置は、”例えば第1のビデオテープレコーダを
スイッチオンしてプレイを実行し、次いで、第2のビデ
オテープレコーダをスイッチオンして録画を開始する”
というフィーチャ処理の各細部の処理をそれぞれ定義す
ると共に名称を付け、それらの単純処理を各フィーチャ
毎にテーブル化して1つづつ順番に実行することを特徴
とする。また、請求項5記載のプログラム処理装置は、
請求項4記載のプログラム処理装置において、AVバス
制御のモジュールソフトをマルチタスク処理にて構築
し、フィーチャールーチンより簡単なコマンドでAVバ
ス制御モジュールを呼び出せるようにしたことを特徴と
する。
【0009】また、請求項6記載のプログラム処理装置
は、ある領域のデータを記録媒体に書き込む専用のモジ
ュールを、マルチタスク処理の中の1つの処理として動
かし、前記記録媒体に書き込み/読み出しする場合、フ
ァイル名の指示のみで予め設定されているテレビ内のメ
モリより、又は、メモリ領域へデータの転送ができるよ
うなIFモジュールを有することを特徴とする。また、
請求項7記載のプログラム処理装置は、請求項6記載の
プログラム処理装置において、上位IFルーチンを用意
して、システム管理ルーチン及びROM、IO及びIN
T等のシステム管理用資源へは直接アクセスしないよう
にしたことを特徴とする。また、請求項8記載のプログ
ラム処理装置は、OSD内蔵のCPU内で定時タイマ割
り込みにて特定のアドレスのバッファ領域のデータに基
づき予め定められた仕様にしたがってバッファ内のデー
タをCRT画面上に表示することを特徴とする。
【0010】
【作用】請求項1記載の発明では、システム管理用タイ
マ割込処理ルーチンは、タイマカウンタの値と、事前に
設定されているタイマーカウンタ比較用レジスタの値と
が一致したときに割り込みが発生するようになってい
る。もし、プログラム上でタイマカウンタの値を比較用
レジスタの値にセットすると、タイマ割り込みが発生す
るので、ユーザープログラム内で処理が完了して別のJ
OBに処理を移してもよい場合は、ユーザープログラム
のなかでこのような処理を行なう。このような処理は、
短いプログラムであるが、各所から使われている汎用的
な処理なので、システムコールとして事前にサブルーチ
ンとして用意しておき、ユーザープログラムからはただ
単にそのサブルーチンを呼ぶだけで、自分の処理を中断
することができるようにする。
【0011】請求項2記載の発明では、カウンタICの
出力信号がCPUのノンマスカブルインタラプト入力端
子に供給される。ユーザプログラムより与えられた時間
内にシステム割り込みを発生させる方法として、CPU
のパラレル出力ポートを制御することでカウンタICよ
り信号出力が発生するようにしている。この場合、CP
Uのノンマスカブルインタラプトは、ユーザープログラ
ム内で割り込み禁止状態になっていても割り込みが発生
するので、プログラムがロックしてシステム割り込みが
発生しなくなることはない。
【0012】請求項3記載の発明では、テレビの垂直ま
たは水平同期信号を用いてシステム割込信号とする。こ
のように外部の周期的なパルスを利用して、これを割込
信号とすることで、特別なハードまたはCPU内のタイ
マ資源等を使用することなく、安価にマルチタスク処理
が実現できる。
【0013】請求項4記載の発明では、フィーチャの各
細部の処理をそれぞれ定義して、それぞれに名称を付け
る。そして、それらの単純処理を各フィーチャ毎に並べ
てテーブル化し、それらの単純処理を1つづつ順番に解
釈し、実行する。具体的には以下の通りでる。 DEVn:機器nへの命令(各コマンド列の前に送り、どの機
器に送るのかを決める)。この場合、nは番号、n=allで
全ての機器 REW:デバイスナンバー REWn:巻き戻し REC:録画/録音 PLY:再生(正常スピード) PLYn:n倍スピード STOP:停止(終了) PAUSE:停止 WAIT:休止 WAITn:n秒休止 ON:電源ON(ON以外でも各種実行コマンドで電源ONとな
る) OFF:電源OFF CHn:チャンネルをnに設定(VTR/TVのみ) TILL--:--まで(次のコマンドと組み合わせて使用す
る) ROUTE **:ルート選択 **は信号経路を決めるパラ
メータ END:終了検出 DO==WHILE--:--の間 ==を実行する。 KEY:DO WHILE等の処理を実行中に何かのキー入力された
【0014】例1:nチャンネルを録画する。 ”DEVALL ON REW CHn REC TILL END DEVALL OFF” この意味は、”全ての機器のPOWER SWをONにし、VTRを
リワインドして、nチャンネルに設定し、録画をスター
トする。テープが終了したら、全てのPOWER SWをOFFに
する。”ユーザはファンクションF1を押した後、CH-NUM
BERを続けて押すように画面で指示される。CH-NUMBERを
押すと、このバッチ処理が実行される。 例2:VTR1からVTR2へのダビング。 ”DEV1 ON PLY DEV2 ON REC TILL END DEV1 OFF DEV2 O
FF” この意味は、まず、VTR1をスイッチONしてプレイを実行
し、VTR2をスイッチONにし、録画を開始する。テープ終
了後、VTR1、VTR2のそれぞれのスイッチをOFFにする。
【0015】例3:LDPからVTR1へのダビング。 ”DEV3 ON PLY DEV1 ON REC TILL END DEV3 OFF DEV1 O
FF” この意味は、まず、DEV3(例えばLDP)をスイッチONに
して、プレイを実行し、DEV1(VTR1)をスイッチONにし、
録画を開始する。LDPの終わりでLDP、VTR1のそれぞれの
スイッチをOFFにする。
【0016】例4:VTRを繰り返し連続再生 ”DEV1 ON DO PLY TILL END REW WHILE KEY STOP” この意味は、DEV1(VTR1)をスイッチONにしてプレイを実
行し、VTR1のテープが終了したら、巻き戻しをして再度
再生を実行する。この処理を繰り返している時に何かの
キーが押されたら処理を中止する。ここで、集合命令コ
マンドテーブル例を挙げる。 F1:DEVALL ON REW CHN REC TILL END DE VALL OFF F2:DEV1 ON PLY DEV2 ON REC TILL END DEV1 OFF DEV2
OFF F3:DEV3 ON PLY DEV1 ON REC TILL END DEV3 OFF DEV1
OFF F4:DEV1 ON DO PLY TILL END REW WHILE KEY STOP
【0017】請求項5記載の発明では、例えば、3つの
タスクJOB−A、JOB−B、JOB−Cのうち、J
OB−A、JOB−Bが常に動作しているものとし、J
OB−Cがリモコンからフィーチャ実行コマンドを受信
したときなどに実行するものとする。この状態で、各A
Vバス送信および受信処理や、テレビマイコンへの送受
信処理などを、JOB−A、JOB−Bがそれぞれ実行
してJOB−Cのフィーチャ処理ルーチンからJOB−
A、JOB−B内のサブルーチンを実行させる場合、簡
単なインタフェース用のメモリ領域を用意し、その中の
処理命令部にJOB−Cからの命令を書き込むことでJ
OB−A、JOB−Bを実行させる。そして、実行結果
をインタフェースメモリ領域でJOB−A、JOB−B
からJOB−Cに引き渡すことにより、JOB−Cから
JOB−A、JOB−B内のサブルーチン処理を呼び出
して実行させることができる。なお、従来のマルチタス
クではない処理方法で、このようなサブルーチンの使い
方をすると、フィーチャルーチンの中でJOB−A、J
OB−Bの様な処理を呼び出して実行させる間にもその
他の処理(AVバス制御用タイマー処理等)を同時に処
理しなければならない。このため、プログラム作成処理
時に他の各処理も考慮する必要があった。
【0018】請求項6記載の発明では、テレビの画面デ
ータや、音声データをあるメモリに書き込んだ後、ファ
イル名を指定するだけで、フロッピーディスク、光磁気
ディスク、半導体メモリ、ハードディスク等の記録手段
への書き込み/読み出しする場合、マルチタスクではな
い通常の処理では、ユーザープログラムから記録手段に
データの書き込み/読み出しするルーチンを呼び出すこ
とが一般的である。しかし、そのような場合、それらの
処理は一般的にはかなり処理速度が遅く、ユーザープロ
グラム側でかなりの時間待たされるのが普通であった。
このため、テレビ内で他の高速繰り返し処理が要求され
る場合には、時間的に1つのマイクロコンピュータでは
間に合わなかった。しかし、このようなマルチタスク処
理を採用すれば、多少時間がかかっても同時処理を行な
うので、処理時間としての不都合はなくなる。
【0019】請求項7記載の発明では、ユーザープログ
ラムからシステム管理用のフラグ等をセット、リセット
するときに、直接それらのフラグをいじらないで、シス
テムコールサブルーチンを介して処理することでシステ
ムが管理するフラグ等の変更処理をユーザープログラム
から変更するときにシステムが知って変更することにな
るので、各種システム状態で、それらのフラグの変更が
不可能な場合などでも、直接ユーザープログラムから変
更しないことで対処することができる。
【0020】請求項8記載の発明では、一般処理から定
時割込処理でOSD処理を行なう場合、OSD処理を行
なう場合のスタック領域には、通常一般処理の領域に続
いている場所を用いるが、はじめからこの割込処理等に
特定の領域をスタック領域にできる様なマイクロコンピ
ュータであれば、PC、フラグ、レジスタ等のセーブ領
域を専用の場所に確保する様にしてあれば、ユーザープ
ログラムからみた場合、プログラム処理としてはOSD
処理部は全く妨げとならない。
【0021】
【実施例】以下、本発明を図面に基づいて説明する。図
1は本発明の時分割同時プログラム処理装置の一実施例
であるマイクロプロセッサICの内部構成図である。こ
の図に示すように、マイクロプロセッサIC100は、
CPU1、割り込み入力端子2、パラレルIOポート
3、シリアルIOポート4、RAM5、ROM6、比較
器7、タイマーカウンタ8を有して構成されている。R
OM6にはCPU1を制御するためのプログラムが書き
込まれている。RAM5はワークエリアとして使用され
る。一方、図2は上記マイクロプロセッサIC100と
外部ICとの接続を示す図であり、この図に示すよう
に、8ビットパラレルバス10を介してAVバス制御通
信用IC11が接続されている。シリアルIOポート3
にはTV選局/リモコン用マイコン12が接続されてい
る。
【0022】ここで、以下の説明において使用する略号
および記号の意味は次の通りである。 CCR:CPUステータスレジスタ PC:プログラムカウンタ(CPU1が命令を実行する
ときの命令実行をROMアドレスから取り出すアドレス
カウンタ) JOB−Cx:JOB−C1、JOB−C2またはJO
B−C3の意味 RTE:アセンブル命令語の1つで、割り込み処理から
戻るときにCPU1のフラグとPC(プログラムカウン
タ)をスタック領域から取り出してきてCPU1のフラ
グおよびプログラムカウンタにしまう2つの動作をさせ
る命令語。
【0023】NMI:ノンマスカブルインタラプトの略
で、CPU1の内部のフラグなどで割り込み禁止の制御
ができなくて、いつでも割り込みが入ってしまう割り込
みのこと。通常は、最優先割り込みに使用される。 SP:スタックポインタの略で、CPU1の内部のレジ
スタの1つで、プログラム処理のなかでサブルーチンを
呼ばれたときや、割り込み処理が発生した場合に、必要
なレジスタやフラグやプログラムカウンタなどをRAM
5の領域にしまうときのアドレスポインタ。 メカSTS−REQ:AVバス経由でVTRなどのメカ
の動作を伴う機器に対して現在の動作状態を問い合せる
命令。
【0024】I2Cバス:IICバスとも表現され、機
器内IC間通信バス。 Iフラグ:8ビット1チップマイクロコンピュータ内の
割り込み禁止フラグで、このフラグがセットされると割
り込み処理を行なわない。このフラグがセットされると
ころは、プログラム処理内で、このフラグをセットする
命令たあった場合、または、割り込み処理に入ったと
き。 CPU−FLAG:CCRと同じ フィーチャCMD:AVセンタが受信したリモコン受信
データの中で、見る、録る、ダビングなどの機能をAV
センタからシステム内に接続されてくる機器に向って、
その機能の動作の命令を送る。そのコマンドを送られた
機器はそのフィーチャを実行する。
【0025】SPA:JOB−A用スタックメモリ領
域。 #SPA:頭に#がつくと、SPA(スタック領域)の
しまってあるアドレスという意味になる。 #SPA+4:SPAメモリ領域のスタートアドレス+
4という意味。 #SPA+4−→:MA_SP:SPA領域スタートア
ドレス+4の値をMA_SPという名のワークにしまう
という意味。 PUSH命令:CPU1の内部のレジスタまたはフラグ
の値をスタックセーブRAM5の領域に16ビット分セ
ーブし、スタックポインタを+2する。 POP命令:PUSH命令の処理の逆の処理。但し、C
CRはバイト構成なので、POP時にCCRの8ビット
分は無視される。
【0026】以上に示す略号および記号を踏まえてこの
実施例を説明する。システム管理用タイマー割り込み処
理ルーチンは、カウンタ8がクロック信号を入力してカ
ウントしたタイマーカウントの値と、事前に設定されて
いるタイマーカウンタ比較用レジスタの値とが一致した
時に割り込みが発生する様になっている。プログラム上
でタイマーカウンタの値を比較用レジスタの値にセット
することによりタイマ割り込みが発生するので、ユーザ
プログラム内で処理が完了して別のジョブに処理を移し
ても良い場合は、ユーザプログラムの中でこのような処
理を行う。このような処理は短いプログラムであるが、
各所から使われている汎用的な処理であるので、システ
ムコールとして事前にサブルーチンとして用意してお
き、ユーザプログラムからはただ単にそのサブルーチン
を呼ぶだけで、自分の処理を中断することができるよう
にする。
【0027】図3において、JOB−A、JOB−B、
JOB−Cが時分割で、一定周期毎(各JOBのそれぞ
れの実行時間が短くなる場合もある)に割り込みが入る
と、例えばJOB−Aを実行中にシステム管理用定時割
り込みが入ると、JOB−Aの処理が中断される。そし
て、システム管理用定時割り込み処理のなかでJOB−
Aの次の処理(JOB−B)の実行が開始される。同様
にJOB−Bの実行中にシステム管理用定時割り込み処
理が発生すると、JOB−Bの実行が中断される。そし
て、このJOB−Bの実行が中断された後、システム管
理用定時割り込み処理のなかで次に実行させる処理すな
わちJOB−Cを実行させる。同様にJOB−Cの実行
中にシステム管理用割り込みが発生すると、システム管
理用定時割り込み処理のなかでJOB−Aの処理を開始
させる。
【0028】このようにして各JOB側ではタイムスラ
イスされた処理が実行されてゆき、全体でみるとあたか
もJOB−A、JOB−B、JOB−Cが一緒に動作し
ている様な動きを行う。図4はシステム全体で8つのJ
OBが一緒に働く例を示す概念図である。この図におい
て、はシステム管理割り込み処理(システム管理用定
時タイマー割り込み処理)、はAVバス受信割り込み
処理、はAVバス受信完了割り込み処理、はタイマ
割り込み処理、はTVマイコンからのデータ受信割り
込み処理である。〜は所謂通常処理ルーチンである
割り込み処理である。
【0029】システム管理用フラグ システム管理用フラグは以下の通りである。 1)フラグ ・実行中のJOB番号と、各番号に対応するワーク用レ
ジスタを次のように設定する。 00H:JOB−A 01H:JOB−B 02H:JOB−C なお、ワーク用レジスタは、現在、どのJOBが実行さ
れているかという管理のために使用されるレジスタであ
る。 ・実行中フラグ(JOB−A、JOB−Bは常にオンに
する。JOB−Cはオン/オフあり)
【0030】・実行要求フラグ (JOB−C1、JO
B−C2、JOB−C3) JOB−C1、JOB−C2、JOB−C3のうち、少
なくとも1つの実行要求フラグが立っている場合、シス
テム管理処理ルーチン内でJOB−Cが既に実行中でな
ければ、JOB−Cの実行処理に移る。この時、そのJ
OB−Cx(xは1、2、3)の実行要求フラグはクリ
アされ、JOB−Cの実行中フラグがセットされる。こ
の実行要求フラグがセットされる場所は、JOB−A
の中(パワーオン処理、接続依頼処理等)、JOB−
Bの中のテレビマイコンからのリモコンコマンド受信処
理の中である。
【0031】2)各JOBのスタック領域は、80バイ
トの領域をとる。 3)JOB内で実行処理が完成したとき、各JOB内か
らシステム割り込みが発生するような手順を用意する
(各JOB内から自分のJOBが中断され、システム割
り込みルーチンに制御が移る処理を行う)。例えばタイ
マカウンタの値をタイマコンペアーマッチの値にセット
することで、セット直後にシステム処理用のタイマ割り
込みが発生する。
【0032】全JOB 1)システム管理割り込み(例えば1msec毎のタイ
マー割り込み) ・タイマ出力をCPU1のNMI(ノンマスカブルイン
タラプト)入力端子に供給して動作させる方法) ・内部タイマ割り込みを用いる方法 2)AVバス受信割り込み 3)AVバス送信完了割り込み 4)タイマ割り込み(AVバスデータ送信エラー時の再
送処理を含む) 5)テレビマイコンからのI2CバスSIO受信割り込
み 6)JOB−A (JOB−Aの”実行中フラグ”はい
つもオン) 受信データ分類、処理(モジュール名:D2BPRC_
L) 分類処理 相手機器に返事”BUSY(ビジー)”送信処理(AV
バス制御処理) テレビマイコンに命令送信処理(内部処理) テレビマイコンからの返事待処理 相手機器に返事”完了”送信(AVバス制御処理) (JOB−Aの割り当てられている時間内にJOB−A
の処理が終了したら、システム割り込みを発生させる)
【0033】7)JOB−B (JOB−Bの”実行中
フラグ”はいつもオン) 処理1 テレビマイコンから受信してバッファにしまい
分析処理。 +処理2 テレビマイコンへデータや命令の送信処理 +処理3 AVバス制御用タイマー管理、AVバス制御
用返事受信処理、AVバス制御用通信エラー対処処理
(モジュール名:TIMPRC_L) +処理4 LEDエラー表示処理(JOB−Aの割り当
ている時間内にJOB−Aの処理が完了したらシステム
割り込みを発生させる)
【0034】8)JOB−B (JOB−C実行中フラ
グ、JOB−C1、JOB−C2、JOB−C3実行要
求フラグが立っていたらJOB−Cの実行へ移る) JOB−C1 ワンタッチプレイ処理(この処理実行中
はバス経由の他のCMDを受け付けない。また、テレビ
マイコンからのフィーチャコマンドの処理も実行しな
い) フィーチャコマンド ワンタッチプレイを指定された相
手機器に送る。相手機器からの返事待ち 終了(JOB−C1の”実行中フラグ”をクリアする)
【0035】JOB−C2 接続依頼処理(この処理実
行中はテレビマイコンからのフィーチャコマンド処理は
行わない) 接続依頼コマンドを送ってきた機器にBUSYの返事を
発信。AVバス経由でコマンドで指定された相手機器1
へ接続CMD発信。相手機器からの返事待ち。AVバス
経由でコマンドで指定された相手機器2へ接続CMD発
信。相手機器からの返事待ち。AVバス経由で接続依頼
処理を送ってきた相手へ”完了の返事”発信終了(JO
B−C2の”実行中フラグ”をクリアする)
【0036】JOB−C3 テレビからのフィーチャリ
モコンコマンド受信処理(この処理実行中はこの処理に
かかわらないバス経由のCMDを受け付けない)。オー
ルオフフィーチャ実行処理。バスへ”メカSTS−RE
Q”発信。相手機器からの返事待ち。バス経由でVTR
2へパワーオフ CMD発信。相手機器からの返事待
ち。バス経由でLDPへパワーオフ CMD発信。相手
機器からの返事待ち。終了(JOB−C3の”実行中フ
ラグ”をクリアする)。図5、図6の各々は各JOB間
の処理を示す図であり、このうち、図5はAVバス受信
割り込み処理であり、図6はTVマイコンからの受信割
り込み処理である。
【0037】処理手順アーキテクチャー 1)システム割り込み 例:1msec毎のタイマー割り込み(”実行中JOB
番号”で指定されたJOBのCPUレジスタをセーブ
し、JOB番号で指定されている該JOBの次のJOB
の”実行中フラグ”がオンかオフかを判別する)。 実行中のJOB番号 JOB名 00H JOB−A 01H JOB−B 02H JOB−C(JOB-C1、JOB-c2、JOB-c
3) JOB−A、JOB−B、JOB−Cの各処理がそれぞ
れ割り当てられている時間内に処理が終了したら、シス
テム割り込みを発生させる処理を各JOB内で行う。
【0038】図7はJOB−A、JOB−B、JOB−
Cの全てにおいて実行中フラグが立っている場合のシス
テム割り込み起動の様子を示す図である。JOB−A、
JOB−B、JOB−Cの全てにおいて実行中フラグが
立っている場合で、かつJOB−A、JOB−Bは内部
処理が完了している状態のときは、図8に示すようにJ
OB−A、JOB−Bの中でシステム割り込みの起動を
かける。
【0039】JOB−A、JOB−Bの実行中フラグが
立っていて、JOB−Cの実行中フラグが立っておら
ず、JOB−C1、JOB−C2、JOB−C3の実行
要求フラグも立っていないときは、図9に示すように処
理の繰り返しとなる。この場合JOB−A、JOB−B
の各処理が割り当てられた各処理時間以内に完了してい
るときは、JOB−A、JOB−Bの中でシステム割り
込みが発生するように起動をかけ、同図に示すようにな
る。
【0040】システム管理割り込みルーチンの処理手順 図10は1msec毎のタイマー割り込み処理の手順を
示す図である。パワーON開始手順 *CPU1のパワーONからの動作手順 #SPA→SP #リセットスタートアドレス→PC マルチの割り込み動作は停止させて以下の処理を行う。
各JOB用レジスタセーブ領域を00でクリアする。各
JOBの”実行中フラグ”を設定する。必須のJOB
(JOB−A、JOB−B)のみONにセット。JOB
−AのスタートADRSを#START−Aとすると、
#START−A→JOB−A用スタック領域の最初の
アドレス(ワード単位で)にセーブする。初期CCR→
JOB−A用スタック領域の最初から2バイト目(ワー
ド単位で)にセーブする。JOB−BのスタートADR
Sを#START−Bとすると、#START−A→J
OB−B用スタック領域の最初のアドレス(ワード単位
で)にセーブする。初期CCR→JOB−B用スタック
領域の最初から2バイト目(ワード単位で)にセーブす
る。
【0041】ダミールーチンのスタートアドレスを#D
UMMYとすると、#DUMMY→JOB−C用スタッ
ク領域の最初のアドレス(ワード単位で)にセーブす
る。ダミーCCR→JOB−C用スタック領域の最初か
ら2バイト目(ワード単位で)にセーブする。 #SPA+4→MA_SP #SPB+4→MB_SP #SPC+4→MC_SPを書き込む。実行中JOB番
号カウンタは、00H:(JOB−A)にしておく。マ
ルチ動作開始(システム割り込み可にする)
【0042】パワーオン初期化フロー 図11はパワーオン初期化の手順を示す図である。この
図において、システム制御用ワークの初期化として以下
の処理が行なわれる。各JOBのレジスタセーブ領域に
は初期値”00”を格納する。SPセーブ領域には各ス
タック領域の頭のアドレス+4を格納する。JOB−C
1、JOB−C2、JOB−C3の実行要求フラグをク
リアする。JOB−A、JOB−Bの実行中フラグをオ
ンにセットする。各JOBの開始アドレスを各スタック
領域の頭の上にしまう。CCRの初期値を各JOBのス
タック領域の+2の上にしまう。CCR内の割り込み許
可フラグは可にセットしておく。実行JOB番号=00
H:(JOB−A)にセットする。SPの値を現在の値
より+4にセットする。
【0043】また、この図において、システム割り込み
ルーチンの初期化処理部へジャンプにおいて、以下の処
理が行なわれる。JOB−A用のレジスタセーブ領域は
既に初期設定されているので、ここではJOB−Aのレ
ジスタ値をセーブしない。現在のJOB番号は00H
(JOB−A用)であるので、JOB−Bを開始するた
めにJOB−BのCPUレジスタセーブ領域からCPU
レジスタに値を戻し(SPも含む)、JOB番号を01
H:JOB−Bの値に変更する。そして、RTEでCC
R、PCを戻してJOB−Bの処理に移る。
【0044】JOB−C1、JOB−C2、JOB−C
3の開始終了方法 終了方法 JOB−C1、JOB−C2、JOB−C3の”JOB
−C実行中フラグ”をJOB−Cの中で実行中のJOB
が終了したらクリアする(JOB−Cからシステムコー
ルを呼ぶことで処理する)。 開始方法 システム割り込み内でJOB−C実行中フラグがOFF
の場合、JOB−C1、JOB−C2、JOB−C3の
実行要求フラグが立っているか否かを判定し、実行要求
フラグが立っていたら、そのJOB−Cx(xは1、
2、3)の実行開始設定を行い、JOB−C実行中フラ
グをONにする。
【0045】実行開始手順(JOB−C1、JOB−C
2、JOB−C3) システム割り込み処理内でJOB−Bの処理中に割り込
んだ場合、JOB−Cxの実行を開始するか否かを判定
する。JOB−Cの実行中フラグがOFFで、JOB−
C1、JOB−C2、JOB−C3のうちの少なくとも
1つの実行要求フラグが立っていたら実行処理開始手順
を始める。 手順 *実行要求フラグが立っているJOB−Cxの開始アド
レスをJOB−C用スタック領域のプログラムカウンタ
領域に格納し、また、(CCR)CPU−FLAGをJ
OB−C用スタック領域のCPU−FLAGセーブ領域
に格納する。 *JOB−Cxの実行要求フラグのクリア、JOB−C
の”実行中フラグ”のセットおよびJOB−C用CPU
レジスタセーブ領域の値の初期化を行う。さらに、JO
B−CのCPUレジスタセーブ領域からCPUレジスタ
に値をコピーし、RTE命令を実行する。
【0046】システム処理ルーチンのインタラプト処理 実行JOBカウンタが、”00”:JOB−Aの場合 定時(1msec)割り込み処理−A実行中から実行J
OB番号を調べる。00H=JOB−Aの場合は、JO
B−Aで使用していたレジスタ領域をセーブする(各レ
ジスタはワード=2バイト単位)。下記の例はあるマイ
コンICを使用した例であるが、レジスタバンクを複数
有するマイコンの場合、CPU内レジスタはバンク切り
替えにより、高速に切り替えることができる。
【0047】
【0048】システム割り込みがされたJOBのJOB
番号=自分のJOBの次のJOBすなわち、JOB−
B、JOB−Cの順にJOB−BへはJOB−Bの実行
中フラグがONかどうかを調べずにJOB−Bの実行に
移る。(JOB−A、JOB−Bの実行中フラグが常に
ONのため)
【0049】定時(1msec)割り込み処理−B実行
中からの割り込み 実行JOB番号を調べて、01H=JOB−Bの場合、
JOB−Bで使っていたレジスタをRAM領域にセーブ
する。
【0050】JOB−Cの実行中フラグが立っていたら
【0051】JOB−Bの実行中からの割り込み JOB−Cの実行中フラグが立っていなければ、実行J
OB番号を調べて、01H=JOB−Bの場合、JOB
−Cの実行中フラグが立っていなければJOB実行要求
が出ているJOBを探す。自分のJOBの次のJOBす
なわちJOB−C1、JOB−C2、JOB−C3の順
にJOBを探す。JOB−Cxの”実行中フラグ”が立
っていればそのJOB−Cxの実行要求フラグをクリア
し、そのJOB−Cxの”実行中フラグを立てる。そし
て、JOB−Cのスタック領域のPC(プログラムカウ
ンタ)の値が格納された場所にJOB−Cxの開始アド
レスを格納する。CCR(CPUステータスレジスタ)
を格納している場所のCCRの値を初期化し、その後、
JOB−Cのレジスタセーブ領域のSP(スタックポイ
ンタ)を格納している領域を除く各レジスタの値を初期
化する。その後、下記の処理を行う。
【0052】
【0053】注:CCRは8ビットで構成されるが、こ
のマイコンのPUSH命令は全て16ビット処理なの
で、PUSH処理時にCCR*の場所にはダミーの値が
入るが、POP処理時にはCCR*はCPUのフラグレ
ジスタにはセーブされず無視される。PUSH命令とは
CPU1の内部のレジスタをスタック領域にしまう命令
であり、POP命令とはCPU1の内部のレジスタをス
タック領域に戻す命令である。
【0054】定時(1msec)割り込み処理−C実行
中からの割り込み。 実行JOB番号を調べて02H=JOB−Cの場合、J
OB−Cで使用していたレジスタをRAM領域にセーブ
する。
【0055】JOB-Aの処理に移る。
【0056】各JOBの中でシステム割り込み起動をか
けた場合、その処理が実行される前にシステム割り込み
が発生した場合、システム割り込み発生の命令は、次に
このJOBが実行された時に行われる。なお、それぞれ
のJOBから別のJOB内のサブルーチンはリエントラ
ントになっていなければ呼べない。ここで、そのリエン
トラントとは、サブルーチンを実行中に割り込みなど
で、また、そのサブルーチンを呼ばれても正しく動作す
る様に作られたものである。その一例を図12に示す。
【0057】図13〜図17の各々は具体的な各JOB
のフローチャートである。ここで、図13はJOB−A
(AVバスデータの分析処理)、図14はJOB−B
(テレビマイコンからの受信データ処理、テレビマイコ
ンへの送信処理、テレビマイコンからのリモコンフィー
チャ分析処理)である。また、図15はワンタッチプレ
イフィーチャの場合のJOB−C1であり、この処理の
実行要求はJOB−Bのテレビマイコンからのリモコン
コマンド分析処理内で立てられる。また、図16は接続
依頼処理の場合のJOB−C2であり、この処理の実行
要求はJOB−AのAVバスコマンド分析処理内で立て
られる。また、図17はall−power−offの
場合のJOB−C3であり、この処理の実行要求はJO
B−AのAVバスコマンド分析処理内で立てられる。
【0058】
【発明の効果】本発明によれば、各JOBの中で与えら
れている実行時間内に処理が完了している場合、システ
ム割り込みを発生させるようにしたので、全体の処理時
間の有効利用ができる。また、定時割り込み処理を行っ
ている時、無効処理時間短縮を目的にユーザーJOBの
なかからシステム割り込みを発生させる方法として、P
IOからリセット信号を発生させ、カウンター出力を発
生させてCPUの割り込み信号として利用するようにし
たので、上記同様の効果が得られる。
【図面の簡単な説明】
【図1】本発明に係る時分割同時プログラム処理装置の
一実施例の構成図である。
【図2】同実施例の時分割同時プログラム処理装置と外
部機器との接続を示す構成図である。
【図3】同実施例の時分割同時プログラム処理装置の処
理手順を示す図である。
【図4】同実施例の時分割同時プログラム処理装置の処
理手順を示す図である。
【図5】同実施例の時分割同時プログラム処理装置の処
理手順を示す図である。
【図6】同実施例の時分割同時プログラム処理装置の処
理手順を示す図である。
【図7】同実施例の時分割同時プログラム処理装置の処
理を示す図である。
【図8】同実施例の時分割同時プログラム処理装置の処
理を示す図である。
【図9】同実施例の時分割同時プログラム処理装置の処
理を示す図である。
【図10】同実施例の時分割同時プログラム処理装置の
処理手順を示す図である。
【図11】同実施例の時分割同時プログラム処理装置の
処理手順を示す図である。
【図12】同実施例の時分割同時プログラム処理装置の
処理を示す図である。
【図13】同実施例の時分割同時プログラム処理装置の
処理手順を示す図である。
【図14】同実施例の時分割同時プログラム処理装置の
処理手順を示す図である。
【図15】同実施例の時分割同時プログラム処理装置の
処理手順を示す図である。
【図16】同実施例の時分割同時プログラム処理装置の
処理手順を示す図である。
【図17】同実施例の時分割同時プログラム処理装置の
処理手順を示す図である。
【図18】従来技術の時分割同時プログラム処理装置の
処理手順を示す図である。
【図19】従来技術の時分割同時プログラム処理装置の
処理手順を示す図である。
【図20】従来技術の時分割同時プログラム処理装置の
処理手順を示す図である。
【符号の説明】
1 CPU 2 割り込み入力端子 3 パラレルIOポート 4 シリアルIOポート 5 RAM 6 ROM 7 比較器 8 タイマーカウンタ 10 8ビットパラレルバス 11 AVバス制御通信用IC 12 TV選局/リモコン用マイコン
───────────────────────────────────────────────────── フロントページの続き (51)Int.Cl.6 識別記号 庁内整理番号 FI 技術表示箇所 H04N 5/765

Claims (8)

    【特許請求の範囲】
  1. 【請求項1】 複数のジョブの各々を周期的に実行させ
    る時分割同時プログラム処理装置において、 前記各ジョブの実行に与えられている時間内に各ジョブ
    が実行を終了したときに各ジョブより発生するシステム
    割り込みを検出するシステム割り込み検出手段と、 前記システム割り込み検出手段にてシステム割り込みが
    検出されたときに、該システム割り込みを発生したジョ
    ブから次のジョブに移行するように制御する制御手段
    と、を設けたことを特徴とする時分割同時プログラム処
    理装置。
  2. 【請求項2】 クロック信号をカウントするカウント手
    段を有し、 前記システム割り込み検出手段は、前記カウント手段に
    よるカウント値が所定値に一致したときにシステム割り
    込みを検出することを特徴とする請求項1記載の時分割
    同時プログラム処理装置。
  3. 【請求項3】 テレビの垂直同期信号を検出する垂直同
    期信号検出手段を有し、 前記システム割り込み検出手段は、前記垂直同期信号検
    出手段にてテレビの垂直同期信号が検出されたときにシ
    ステム割り込みを検出することを特徴とする請求項1記
    載の時分割同時プログラム処理装置。
  4. 【請求項4】 ”例えば第1のビデオテープレコーダを
    スイッチオンしてプレイを実行し、次いで、第2のビデ
    オテープレコーダをスイッチオンして録画を開始する”
    というフィーチャ処理の各細部の処理をそれぞれ定義す
    ると共に名称を付け、それらの単純処理を各フィーチャ
    毎にテーブル化して1つづつ順番に実行することを特徴
    とするプログラム処理装置。
  5. 【請求項5】 AVバス制御のモジュールソフトをマル
    チタスク処理にて構築し、フィーチャールーチンより簡
    単なコマンドでAVバス制御モジュールを呼び出せるよ
    うにしたことを特徴とする請求項4記載の時分割同時プ
    ログラム処理装置。
  6. 【請求項6】 ある領域のデータを記録媒体に書き込む
    専用のモジュールを、マルチタスク処理の中の1つの処
    理として動かし、前記記録媒体に書き込み/読み出しす
    る場合、ファイル名の指示のみで予め設定されているテ
    レビ内のメモリより、又は、メモリ領域へデータの転送
    ができるようなIFモジュールを有することを特徴とす
    る時分割同時プログラム処理装置。
  7. 【請求項7】 上位IFルーチンを用意して、システム
    管理ルーチン及びROM、IO及びINT等のシステム
    管理用資源へは直接アクセスしないようにしたことを特
    徴とする請求項6記載の時分割同時プログラム処理装
    置。
  8. 【請求項8】 OSD内蔵のCPU内で定時タイマ割り
    込みにて特定のアドレスのバッファ領域のデータに基づ
    き予め定められた仕様にしたがってバッファ内のデータ
    をCRT画面上に表示することを特徴とする時分割同時
    プログラム処理装置。
JP5348752A 1993-12-27 1993-12-27 時分割同時プログラム処理装置 Pending JPH07200320A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP5348752A JPH07200320A (ja) 1993-12-27 1993-12-27 時分割同時プログラム処理装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP5348752A JPH07200320A (ja) 1993-12-27 1993-12-27 時分割同時プログラム処理装置

Publications (1)

Publication Number Publication Date
JPH07200320A true JPH07200320A (ja) 1995-08-04

Family

ID=18399132

Family Applications (1)

Application Number Title Priority Date Filing Date
JP5348752A Pending JPH07200320A (ja) 1993-12-27 1993-12-27 時分割同時プログラム処理装置

Country Status (1)

Country Link
JP (1) JPH07200320A (ja)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7802036B2 (en) 2007-02-06 2010-09-21 Seiko Epson Corporation Serial communication system using an I2C bus as a serial bus
JP4976570B1 (ja) * 2011-04-19 2012-07-18 株式会社大都技研 遊技台
JP2012223575A (ja) * 2012-04-12 2012-11-15 Daito Giken:Kk 遊技台
JP2015060491A (ja) * 2013-09-20 2015-03-30 株式会社エクサ バッチ処理制御プログラム、バッチ処理システム

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7802036B2 (en) 2007-02-06 2010-09-21 Seiko Epson Corporation Serial communication system using an I2C bus as a serial bus
JP4976570B1 (ja) * 2011-04-19 2012-07-18 株式会社大都技研 遊技台
JP2012223575A (ja) * 2012-04-12 2012-11-15 Daito Giken:Kk 遊技台
JP2015060491A (ja) * 2013-09-20 2015-03-30 株式会社エクサ バッチ処理制御プログラム、バッチ処理システム

Similar Documents

Publication Publication Date Title
US6107937A (en) Remote control system and method
US6085265A (en) System for handling an asynchronous interrupt a universal serial bus device
EP0459714B1 (en) Interrupt processing allocation in a multiprocessor system
US5379427A (en) Task tracing apparatus in a multitask operating system
JPH0640321B2 (ja) 割込み処理のためのシステムおよび方法
JP2004208323A (ja) ワイヤレスの通信信号を生成する方法
US5666555A (en) Audio output method and apparatus in multi-window system
US5615401A (en) Video and audio data presentation interface
JPH0454255B2 (ja)
JP3794119B2 (ja) データ処理方法、記録媒体及びデータ処理装置
US4237533A (en) Preventing initial program load failures
US5544333A (en) System for assigning and identifying devices on bus within predetermined period of time without requiring host to do the assignment
JPH07200320A (ja) 時分割同時プログラム処理装置
US6195715B1 (en) Interrupt control for multiple programs communicating with a common interrupt by associating programs to GP registers, defining interrupt register, polling GP registers, and invoking callback routine associated with defined interrupt register
JPH08275266A (ja) 遠隔制御システムおよび遠隔制御方法
GB2191612A (en) Display terminal
JPH04302035A (ja) 割り込み制御装置
US20010039558A1 (en) Cache memory management method for real time operating system
JP2002010380A (ja) 操作装置、操作システム、操作制御方法、及び記憶媒体
JPH10289114A (ja) マルチタスク制御方法、マルチタスク制御プログラムを記録した記録媒体、およびマルチタスク制御プログラムを組み込んだ電子機器
JP3656294B2 (ja) Av機器制御方法およびav機器
JPS6127791B2 (ja)
JPH1173333A (ja) データ処理方法、記録媒体及びデータ処理装置
EP0526788A2 (en) Device for the provision of information by telephone
JPH03144705A (ja) プログラマブルコントローラの動作状態監視装置

Legal Events

Date Code Title Description
A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20040323