JPH0883187A - データ処理装置 - Google Patents

データ処理装置

Info

Publication number
JPH0883187A
JPH0883187A JP22044894A JP22044894A JPH0883187A JP H0883187 A JPH0883187 A JP H0883187A JP 22044894 A JP22044894 A JP 22044894A JP 22044894 A JP22044894 A JP 22044894A JP H0883187 A JPH0883187 A JP H0883187A
Authority
JP
Japan
Prior art keywords
program
context
interrupt
execution
recording
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.)
Withdrawn
Application number
JP22044894A
Other languages
English (en)
Inventor
Hitoshi Ishikawa
仁 石川
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.)
Omron Corp
Original Assignee
Omron Corp
Omron Tateisi Electronics Co
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 Omron Corp, Omron Tateisi Electronics Co filed Critical Omron Corp
Priority to JP22044894A priority Critical patent/JPH0883187A/ja
Publication of JPH0883187A publication Critical patent/JPH0883187A/ja
Withdrawn legal-status Critical Current

Links

Abstract

(57)【要約】 【目的】 メインプログラムの実行停止から割込みプロ
グラムの実行開始までのプログラム停止時間を短縮し
て、割込み処理の応答を迅速にすると共に、プログラム
実行時間を短縮化する。 【構成】 ユーザプログラムメモリ2にはメインおよび
割込みプログラムが格納されており、実行用CPU1の
プログラム実行部11は、通常、メインプログラムを実
行すると共に、そのコンテキストを対応するコンテキス
トレジスタ12aに記録している。そして、周辺ユニッ
ト5等から割込みが発生すると、切替CPU4は、その
割込み信号を受けて、プログラム実行部1にメインプロ
グラムの実行を停止させると共に、当該割込みプログラ
ムのコンテキストが対応するコンテキスト12bに記録
されるようプログラム実行部11に対してコンテキスト
の記録先の切替え制御を行う。

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明は、プログラムを実行する
と共に当該プログラムのコンテキストを記録するプログ
ラム実行手段を備えたデータ処理装置に関する。
【0002】
【従来の技術】従来のデータ処理装置では、通常、コン
テキストレジスタが1つしか設けられていなかっため、
メインプログラムの実行中に割込みが発生して、割込み
プログラムを実行する場合、通常、図8に示すように、
以下の手順でコンテキストレジスタのコンテキストを入
れ替えていた。
【0003】.割込みの発生。 .メインプログラムの停止。 .メインプログラムのコンテキストのセーブ。 .コンテキストレジスタの初期化。 .割込みラダープログラムの起動・実行。
【0004】ここで、コンテキストとは、プログラム実
行中の前後関係をいい、プログラムカウンタ値等が該当
する。
【0005】
【発明が解決しようとする課題】しかし、従来のデータ
処理装置では、コンテキストレジスタが1つしか設けら
れていなかっため、割込みにより実行中のメインプログ
ラムを停止して割込みプログラムを実行する場合、コン
テキストレジスタにおけるメインおよび割込みプログラ
ムのコンテキストの入替えの間は、メインプログラムの
実行を中断しなければならず、割込み処理の応答性が悪
いと共に、プログラム実行時間が全体として長期化す
る、という問題があった。
【0006】そこで、本発明は、メインプログラム実行
停止から割込みプログラム実行開始までのプログラム停
止時間を短縮して、割込み処理の応答を迅速にすると共
に、プログラムの実行時間を短縮化できるデータ処理装
置を提供することを目的とする。
【0007】
【課題を解決するための手段】上記目的を達成するた
め、本発明では、プログラムを実行すると共に当該プロ
グラムのコンテキストを記録するプログラム実行手段を
備えたデータ処理装置において、メインプログラムおよ
び割込みプログラムのコンテキストが各々記録される複
数のコンテキスト記録手段と、メインプログラムの実行
中は当該メインプログラムのコンテキストが対応する上
記コンテキスト記録手段に記録される一方、割込みの発
生により割込みプログラムが実行される場合は当該割込
みプログラムのコンテキストが対応する上記コンテキス
ト記録手段に記録されるよう上記プログラム実行手段を
制御する切替制御手段と、を具備することを特徴とす
る。
【0008】
【作用】本発明では、切替制御手段が、メインプログラ
ムの実行中は当該メインプログラムのコンテキストが対
応するコンテキスト記録手段に記録されるようにプログ
ラム実行手段を制御し、割込みの発生により割込みプロ
グラムが実行される場合は当該割込みプログラムのコン
テキストが対応するコンテキスト記録手段に記録される
ようプログラム実行手段を制御する。
【0009】
【実施例】以下、本発明に係るデータ処理装置を、プロ
グラマブルコントローラ(以下「PLC」という。)の
実施例により説明する。
【0010】図1に、本発明に係るPLCの第1実施例
の構成を示す。
【0011】このPLCは、図1に示すように、メイン
プログラムおよび割込みプログラムを実行等する実行用
CPU1と、メインプログラムおよび割込みプログラム
がそれぞれ1つずつ格納されたユーザプログラムメモリ
2と、I/Oメモリ3と、切替制御手段としての切替制
御用CPU4とを有しており、割込み信号を送信してく
る周辺ユニット5が接続されている。
【0012】実行用CPU1には、この第1実施例の場
合、プログラム実行手段としてメインおよび割込みプロ
グラムを実行すると共に実行プログラムのコンテキスト
を記録するプログラム実行部11と、コンテキスト記録
手段として上記メインプログラムおよび割込みプログラ
ムの各々に対応して設けられた初期済みの2つのコンテ
キストレジスタ12a,12bが設けられている。
【0013】切替制御用CPU4は、詳細は後述する
が、通常のメインプログラムの実行中は当該メインプロ
グラムのコンテキストが対応するコンテキストレジスタ
12aに記録され、割込みの発生により割込みプログラ
ムが実行される場合は当該割込みプログラムのコンテキ
ストが対応するコンテキスト12bに記録されるよう、
プログラム実行部11に対してコンテキストの記録先の
切替え制御等を行うように構成されている。
【0014】次に、この第1実施例のPLCの動作を図
面を参照して説明する。
【0015】図2に、この第1実施例のPLCにおける
実行用CPU1と切替制御用CPU4の動作を示す。
【0016】まず、このPLCの最初の状態において
は、実行用CPU1内のプログラム実行部11がユーザ
プログラムメモリ2に格納されているメインプログラム
を実行すると共に、当該メインプログラムのコンテキス
トを当該メインプログラム用のコンテキストレジスタ1
2aに格納しているものとする。
【0017】このメインプログラムの実行中に、周辺ユ
ニット5からこのPLCへ割込み信号が入力した場合、
切替制御用CPU4がその割込み信号を受ける。
【0018】割込み信号を受けた切替制御用CPU4
は、まず実行用CPU1にメインプログラムの実行を停
止させ(ステップ100)、続いて表・裏コンテキスト
レジスタ切替え処理を行って、当該割込みに対応した割
込みプログラムのコンテキストが対応する現在は裏であ
るコンテキストレジスタ12bに記録されるようプログ
ラム実行部11に対しコンテキストの記録先切替え指示
を送り、プログラム実行部11にコンテキストの記録先
をメインプログラム用のコンテキストレジスタ12aか
ら割込みプログラム用のコンテキストレジスタ12bに
切替えさせる(ステップ110)。
【0019】この切替により、今まで裏のコンテキスト
レジスタであったコンテキストレジスタ12bが表のコ
ンテキストレジスタに切り替わり、今まで表のコンテキ
ストレジスタであったコンテキストレジスタ12aが裏
のコンテキストレジスタに切り替わる。
【0020】ここで、“表コンテキストレジスタ”と
は、実行中のプログラムのコンテキストが格納されるコ
ンテキストレジスタ、“裏コンテキストレジスタ”と
は、“表コンテキストレジスタ”以外のコンテキストレ
ジスタをいい、プログラム実行部11がプログラムの実
行中でも、切替制御用CPU4からその内容を操作でき
るものと定義する。
【0021】その後、切替制御用CPU4は、プログラ
ム実行部11に割込みプログラムを起動するよう指示を
送り、プログラム実行部11に割込みプログラムを実行
させると共に、当該割込みプログラムのコンテキストを
対応する表のコンテキストレジスタ12bに記録させる
(ステップ120)。
【0022】そして、プログラム実行部11は、割込み
プログラムを実行し、割込みプログラムが終了すると、
切替制御用CPU4に終了通知を送る。
【0023】終了通知を受けた切替制御用CPU4は、
まず、表・裏コンテキストレジスタ切替え処理を行っ
て、実行を再開するメインプログラムのコンテキストが
対応するコンテキストレジスタ12aに記録されるよう
プログラム実行部11へコンテキストの記録先切替え指
示を送り、プログラム実行部11にコンテキストの記録
先を割込みプログラム用のコンテキストレジスタ12b
からメインプログラム用のコンテキストレジスタ12a
に切替えさせる(ステップ130)。
【0024】この切替により、今まで裏のコンテキスト
レジスタであったコンテキストレジスタ12aが表のコ
ンテキストレジスタに切り替わり、今まで表のコンテキ
ストレジスタであったコンテキストレジスタ12bが裏
のコンテキストレジスタに切り替わる。
【0025】そして次に、切替制御用CPU4は、プロ
グラム実行部11にメインプログラム再開の指示を送
り、プログラム実行部11にメインプログラムの実行を
再開させると共に、メインプログラムのコンテキストを
再度表に切替えられたコンテキストレジスタ12aに記
録させる(ステップ140)。
【0026】従って、この第1実施例によれば、割込み
により割込みプログラムを実行する際、従来メインプロ
グラムの停止後に行われていたメインプログラムのコン
テキストのセーブおよびコンテキストレジスタの初期化
処理が必要なくなるので、メインプログラムの実行停止
から割込みプログラムの実行開始までのプログラム停止
時間が短縮化する。
【0027】このため、割込み処理の応答が迅速になる
と共に、割込みディレイ時間も短縮化し、プログラム実
行時間が短縮化する。
【0028】また、割込みプログラムの実行終了後、メ
インプログラムの実行を再開する際、従来割込みプログ
ラム終了後に行われていたメインプログラムのコンテキ
ストのロードの処理も不要となるため、割込みプログラ
ムの実行終了からメインプログラムの実行再開までのプ
ログラム停止時間も短縮化し、この点によってもプログ
ラムの実行時間が短縮化する。
【0029】次に、本発明に係るPLCの第2実施例を
説明する。
【0030】図3に、本発明に係るPLCの第2実施例
の構成を示す。
【0031】なお、図1に示す第1実施例のPLCと同
一構成要素には、同一符号を付して説明を省略する。
【0032】この第2実施例のPLCでは、図1に示す
第1実施例のPLCと異なり、メインプログラムの他に
複数(例えば、4つとする。)の割込みプログラムをユ
ーザプログラムメモリ2に有し、かつ、実行用CPU1
にメインプログラムおよびその複数の割込みプログラム
の各々に対応した初期化済みのコンテキストレジスタ1
2a〜12eが設けられていることを特徴としている。
【0033】そして、この第2実施例の切替制御用CP
U4では、通常のメインプログラムの実行中は当該メイ
ンプログラムのコンテキストが対応するコンテキストレ
ジスタ12aに記録され、割込みの発生により当該割込
みプログラムが実行される場合は当該割込みプログラム
のコンテキストが対応するコンテキスト12b〜12e
に記録されるよう、プログラム実行部11に対してコン
テキストの記録先の切替え制御等を行うように構成され
ている。
【0034】次に、この第2実施例のPLCの動作を図
面を参照して説明する。
【0035】なお、この第2実施例において、割込みが
1段、すなわちある割込みが発生して、その割込みプロ
グラムの実行終了まで他の割込みが発生しない場合は、
第1実施例の場合と同様に、切替制御用CPU4が図2
に示すステップ100〜140までの処理を順次行っ
て、実行用CPU1の動作を制御する。
【0036】図4に、第2実施例のPLCにおいて割込
みが多段(便宜上2段とする。)発生した場合における
実行用CPU1と切替制御用CPU4の動作を示す。
【0037】第2実施例において、多段の割込み、すな
わちある割込みが発生し、その割込みプログラムの実行
終了前に他の割込みが発生した場合、切替制御用CPU
4は、まず第1の割込みに対して、第1実施例で説明し
た図2に示すステップ100〜120の処理と同様のス
テップ200〜220の処理を行う。
【0038】ここで、その第1の割込み処理が終了する
前に他の割込みである第2の割込みが発生した場合、切
替制御用CPU4は、その第2の割込みに対しても、第
1実施例で説明した図2に示すステップ100〜120
の処理と同様のステップ230〜250の処理を行う。
【0039】そして、その第2の割込みプログラムの実
行が終了した場合には、第1実施例で説明した図2に示
すステップ130,140の処理と同様のステップ26
0,270の処理を行って、プログラム実行部1に第1
の割込みプログラムの実行を再開させ、その第1の割込
みプログラムの実行が終了した場合にも、第1実施例で
説明した図2に示すステップ130、140の処理と同
様のステップ280,290の処理を行って、プログラ
ム実行部1にメインプログラムの実行を再開させる。
【0040】従って、この第2実施例によれば、上記第
1実施例の場合と同様に、1段または多段の割込みによ
り1または複数の割込みプログラムを実行する際、従来
メインプログラムや割込みプログラムの停止後に行われ
ていたメインプログラムや割込みプログラムのコンテキ
ストのセーブおよびコンテキストレジスタの初期化処理
が必要なくなるので、メインプログラムの実行停止から
割込みプログラムの実行開始まで、および多段の割込み
プログラム間のプログラム停止時間が短縮化する。
【0041】このため、上記第1実施例と同様に、割込
み処理の応答が迅速になると共に、割込みディレイ時間
も短縮化し、プログラムの実行時間が短縮化する。
【0042】また、割込みプログラムの実行終了後、そ
れより前段の割込みプログラムやメインプログラムの実
行を再開する際に、従来割込みプログラム終了後に行わ
れていた前段の割込みプログラムやメインプログラムの
コンテキストのロード処理も不要となるため、割込みプ
ログラムの実行終了から前段の割込みプログラムやメイ
ンプログラムの実行再開までのプログラム停止時間も短
縮化し、この点によってもプログラムの実行時間が全体
として短縮化する。
【0043】尚、この第2実施例では、割込みが2段の
場合で説明したが、割込みが3段、4段、等2段以外の
多段でも勿論良く、この場合には、多段の割込みが入る
毎に図4に示すステップ230〜250までの処理をそ
の段数だけ繰り返すと共に、多段の割込み処理が終了す
る毎にステップ260,260の処理をその段数だけ繰
り返せば良い。
【0044】次に、本発明に係るPLCの第3実施例を
説明する。
【0045】図5に、本発明に係るPLCの第3実施例
の構成を示す。
【0046】なお、図1に示す第1実施例、図3に示す
第2実施例のPLCと同一構成要素には、同一符号を付
して説明を省略する。
【0047】第3実施例のPLCは、メインプログラム
の他に複数(例えば、4つとする。)の割込みプログラ
ムをユーザプログラムメモリ2に有する点では上記第2
実施例のPLCと共通するが、上記第1実施例や第2実
施例のPLCとは異なり、メインプログラムおよび複数
の割込みプログラム用に初期化済みの2つのコンテキス
トレジスタ12a、13aのみが設けられていることを
特徴としている。
【0048】また、第3実施例の切替制御用CPU4
は、メインプログラムおよび複数の割込みプログラム各
々のコンテキストを退避するためのコンテキスト退避ス
タック41を有し、多段の割込みが生じた場合には、詳
細は後述するが、コンテキスト退避スタック41により
コンテキストレジスタ12a,13aに格納された未終
了のコンテキストをLIFOでセーブ及びロードして、
プログラム実行部11にコンテキストの記録先を切替制
御等を行うように構成されている。
【0049】次に、第3実施例のPLCの動作を図面を
参照して説明する。
【0050】なお、この第3実施例において、割込みが
1段、すなわちある割込みが発生し、その割込みプログ
ラムの実行終了まで他の割込みが発生しない場合は、第
1実施例や第2実施例の場合と同様に、切替制御用CP
U4が図2に示すステップ100〜140の処理を行っ
て、実行用CPU1の動作を制御する。
【0051】図6に、この第3実施例のPLCにおいて
割込みが多段(便宜上2段とする。)発生した場合にお
ける2段目の割込みプログラムが実行されるまでの実行
用CPU1と切替制御用CPU4の動作を示す。
【0052】まず、図6において、2段目、すなわち第
2の割込みが発生するまでは、切り替え制御用CPU4
は、図4に示す第2実施例のPLCのステップ200〜
220までの処理と同様の処理を実行して、プログラム
実行部11にメインプログラムの実行を停止させ(ステ
ップ300)、続いて表・裏コンテキストレジスタ切替
え処理を行い(ステップ310)、その後プログラム実
行部11に第1の割込みプログラムを実行させると共
に、当該割込みプログラムのコンテキストを表に切り替
わったコンテキストレジスタ13aに記録させる(ステ
ップ320)。
【0053】なお、上記第1実施例のところで説明した
ように、“表コンテキストレジスタ”とは、実行中のプ
ログラムのコンテキストが格納されるもの、“裏コンテ
キストレジスタ”とは、プログラム実行部11がプログ
ラムの実行中でも切替制御用CPU4からその内容を操
作(この第3実施例では、コンテキストのセーブ/ロー
ドや、初期化処理が行われる。)できるもの、と定義さ
れているため、最初のメインプログラムの実行中は、コ
ンテキストレジスタ12aが表のコンテキストレジス
タ、コンテキストレジスタ13aが裏コンテキストレジ
スタとした場合、第1の割込みプログラムの実行中は切
替用CPU4によってコンテキストレジスタ13aが表
のコンテキストレジスタ、コンテキストレジスタ12a
が裏のコンテキストレジスタとなる。
【0054】そして、第1の割込みプログラムの実行中
に第2の割込みが発生した場合、切替制御用CPU4
は、まず、裏コンテキストのセーブ処理、すなわち裏の
コンテキストレジスタ12aに記録されたメインプログ
ラムのコンテキストをコンテキスト退避スタック41に
セーブして(ステップ330)、続いてその裏のコンテ
キストレジスタ12aを初期化する(ステップ34
0)。
【0055】その後、切替制御用CPU4は、プログラ
ム実行部11に当該第1の割込みプログラムの実行を停
止させ(ステップ350)、表・裏コンテキストレジス
タ切替え処理によって第2の割込みプログラムのコンテ
キストが現在裏であるコンテキストレジスタ12aに記
録されるようプログラム実行部11にコンテキストの記
録先を切替えさせる(ステップ360)。
【0056】これにより、表と裏のコンテキストが切替
わるため、切替制御用CPU4は、その後プログラム実
行部11に第2の割込みプログラムを実行させると共
に、当該第2の割込みプログラムのコンテキストを新た
に表となったコンテキストレジスタ12aに記録させる
(ステップ370)。
【0057】図7に、第3実施例において割込みが2段
発生した場合における2段目の割込みプログラムが終了
してからの実行用CPU1と切替制御用CPU4の動作
を示す。
【0058】プログラム実行部11における第2の割込
みプログラムの実行中に、3段目の割込みが発生せず、
当該第2の割込みプログラムが終了した場合、切替制御
用CPU4は、プログラム実行慰撫11より終了通知を
受けて、まずは表・裏コンテキストレジスタ切替え処理
を行って、当該第2の割込みプログラムより前で最新か
つ未終了の割込みプログラムあるいはメインプログラ
ム、すなわちこの場合には第1の割込みプログラムのコ
ンテキストがあるため、現在裏であるコンテキストレジ
スタ13aに記録されるようプログラム実行部11にコ
ンテキストの記録先を切替えさせる(ステップ38
0)。
【0059】これにより、表と裏のコンテキストが切替
わるため、その後プログラム実行部11に第1の割込み
プログラムの実行を再開させると共に、当該第1の割込
みプログラムのコンテキストを新たに表に切替えられた
コンテキストレジスタ13aに記録させる(ステップ3
90)。
【0060】そして、この第1の割込みプログラムより
前で最新かつ未終了の割込みプログラムあるいはメイン
プログラム、すなわちこの場合には未終了のメインプロ
グラムがあるため、切替制御用CPU4は、この第1の
割込みプログラムの実行中に、現在裏のコンテキストレ
ジスタ12aを初期化して(ステップ400)、コンテ
キスト退避スタック41にセーブしておいた未終了のメ
インプログラムのコンテキストを当該裏のコンテキスト
レジスタ12aへロードする(ステップ410)。
【0061】そしてさらに、第1の割込みプログラムの
実行が終了した場合、切替制御用CPU4は、その終了
通知をプログラム実行部11から受けて、表・裏コンテ
キストレジスタ切替え処理により、当該第1の割込みプ
ログラムより前の未終了のメインプログラムのコンテキ
ストを、現在裏であるコンテキストレジスタ12aに記
録されるようプログラム実行部11にコンテキストの記
録先を切替えさせる(ステップ420)。
【0062】これにより、表と裏のコンテキストが切替
わるため、その後プログラム実行部11にメインプログ
ラムの実行を再開させると共に、当該メインプログラム
のコンテキストを新たに表に切替えられたコンテキスト
レジスタ12aに記録させる(ステップ430)。
【0063】従って、この第3実施例によれば、上記第
2実施例と同様に、1段または多段の割込みにより1ま
たは複数の割込みプログラムを実行する際、従来メイン
プログラムや割込みプログラムの停止後に行われていた
メインプログラムや割込みプログラムのコンテキストの
セーブおよびコンテキストレジスタの初期化処理が必要
なくなるので、メインプログラムの実行停止から割込み
プログラムの実行開始まで、および多段の割込みプログ
ラム間のプログラム停止時間が短縮化する。
【0064】このため、プログラム実行時間が短縮化
し、特にメインプログラムの実行中から第1の割込み処
理開始までの割込み処理の応答が迅速にると共に、割込
みディレイ時間も短縮化する。
【0065】また、割込みプログラムの実行終了後、そ
れより前で最新かつ未終了の割込みプログラムやメイン
プログラムの実行を再開する際に、従来割込みプログラ
ムの実行終了後に行われていた以前の割込みプログラム
やメインプログラムのコンテキストのロード処理が、裏
コンテキストレジスタを利用して割込みプログラムの実
行中に行われるため、割込みプログラムの実行終了から
それより前の割込みプログラムやメインプログラムの実
行再開までのプログラム停止時間も短縮化し、この点に
よってもプログラムの実行時間が全体として短縮化す
る。
【0066】尚、この第3実施例では、上記第2実施例
の場合と同様に割込みが2段の場合で説明したが、割込
みが3段、4段等2段以外の多段でも勿論良く、この場
合には、多段の割込みが入る毎に図6に示すステップ3
30〜370までの処理をその段数だけ繰り返すと共
に、多段の割込み処理が終了する毎に図7に示すステッ
プ380〜410までの処理をその段数だけ繰り返せば
良い。
【0067】
【発明の効果】以上説明したように、本発明によれば、
コンテキスト記録手段を複数設け、切替制御手段がメイ
ンプログラムの実行中は当該メインプログラムのコンテ
キストが対応するコンテキスト記録手段に記録させる一
方、割込みの発生により割込みプログラムが実行される
場合は当該割込みプログラムのコンテキストが対応する
コンテキスト記録手段に記録されるようコンテキストの
記録先を切替え制御するため、割込みプログラムを実行
する際、従来メインプログラムの停止後に行われていた
メインプログラムのコンテキストのセーブ、およびコン
テキスト記録手段の初期化処理が必要なくなるので、メ
インプログラムの実行停止から割込みプログラムの実行
開始までのプログラム停止時間が短縮化する。
【0068】このため、割込み処理の応答が迅速になる
と共に、割込みディレイ時間も短縮化し、プログラム実
行時間が短縮化する。
【0069】また、割込みプログラム終了後、メインプ
ログラムの実行を再開する際にも、コンテキストの記録
先の切替えだけですむため、従来割込みプログラム終了
後に行われていたメインプログラムのコンテキストのロ
ードの処理も不要となり、割込みプログラムの実行終了
からメインプログラムの実行再開までのプログラム停止
時間が短縮化するため、この点によってもプログラムの
実行時間が短縮化する。
【図面の簡単な説明】
【図1】本発明に係るデータ処理装置の第1実施例の構
成を示すブロック図。
【図2】第1実施例における実行用CPU1と切替制御
用CPU4の動作を示すフローチャート。
【図3】本発明に係るデータ処理装置の第2実施例の構
成を示すブロック図。
【図4】第2実施例における実行用CPU1と切替制御
用CPU4の動作を示すフローチャート。
【図5】本発明に係るデータ処理装置の第3実施例の構
成を示すブロック図。
【図6】第3実施例における2段目の割り込むプログラ
ムが実行されるまでの実行用CPU1と切替制御用CP
U4の動作を示すフローチャート。
【図7】第3実施例における2段目の割り込むプログラ
ムが終了してからの実行用CPU1と切替制御用CPU
4の動作を示すフローチャート。
【図8】従来のデータ処理装置における割込み処理の手
順を示すブロック図。
【符号の説明】
1 実行用CPU 2 ユーザプログラムメモリ 3 I/Oメモリ 4 切替用CPU 5 周辺ユニット 11 プログラム実行部(プログラム実行手段) 12a〜12e コンテキストレジスタ(コンテキスト
記録手段) 13a コンテキストレジスタ(コンテキスト記録手
段) 41 コンテキスト退避スタック(コンテキスト退避手
段)

Claims (7)

    【特許請求の範囲】
  1. 【請求項1】 プログラムを実行すると共に当該プログ
    ラムのコンテキストを記録するプログラム実行手段を備
    えたデータ処理装置において、 メインプログラムおよび割込みプログラムのコンテキス
    トが各々記録される複数のコンテキスト記録手段と、 メインプログラムの実行中は当該メインプログラムのコ
    ンテキストが対応する上記コンテキスト記録手段に記録
    される一方、割込みの発生により割込みプログラムが実
    行される場合は当該割込みプログラムのコンテキストが
    対応する上記コンテキスト記録手段に記録されるよう上
    記プログラム実行手段を制御する切替制御手段と、 を具備することを特徴とするデータ処理装置。
  2. 【請求項2】 複数のコンテキスト記録手段は、 1つのメインプログラムと1つの割込みプログラムとに
    対応して2つ設けられ、 切替制御手段は、 メインプログラムの実行中は、プログラム実行手段に当
    該メインプログラムのコンテキストを対応する上記コン
    テキスト記録手段に記録させる一方、 メインプログラムの実行中に割込みが発生した場合は、
    プログラム実行手段にメインプログラムの実行を停止さ
    せ、次に割込みプログラムのコンテキストが対応するコ
    ンテキスト記録手段に記録されるようプログラム実行手
    段にコンテキストの記録先を切替えさせ、その後プログ
    ラム実行手段に割込みプログラムを実行させると共に、
    当該割込みプログラムのコンテキストを対応する上記コ
    ンテキスト記録手段に記録させる、 ことを特徴とする請求項1記載のデータ処理装置。
  3. 【請求項3】 切替制御手段は、さらに、 実行中の割込みプログラムが終了した場合、メインプロ
    グラムのコンテキストが対応するコンテキスト記録手段
    に記録されるようプログラム実行手段にコンテキストの
    記録先を切替えさせ、 その後プログラム実行手段に当該メインプログラムの実
    行を再開させると共に、当該メインプログラムのコンテ
    キストを対応する上記コンテキスト記録手段に記録させ
    る、 ことを特徴とする請求項2記載のデータ処理装置。
  4. 【請求項4】 複数のコンテキスト記録手段は、 1つのメインプログラムと複数の割込みプログラムの各
    々に対応して設けられ、 切替制御手段は、 メインプログラムの実行中は、メインプログラム実行手
    段に当該メインプログラムのコンテキストを対応する上
    記コンテキスト記録手段に記録させる一方、 メインプログラムの実行中に割込みが発生した場合、プ
    ログラム実行手段にメインプログラムの実行を停止さ
    せ、次に当該割込みプログラムのコンテキストが対応す
    るコンテキスト記録手段に記録されるようプログラム実
    行手段にコンテキストの記録先を切替えさせ、その後プ
    ログラム実行手段に当該割込みプログラムを実行させる
    と共に、当該割込みプログラムのコンテキストを対応す
    る上記コンテキスト記録手段に記録させ、 割込みプログラムの実行中に他の割込みが発生した場合
    は、さらにプログラム実行手段に当該割込みプログラム
    の実行を停止させ、次に当該他の割込みプログラムのコ
    ンテキストが対応するコンテキスト記録手段に記録され
    るようプログラム実行手段にコンテキストの記録先を切
    替えさせ、その後プログラム実行手段に当該他の割込み
    プログラムを実行させると共に、当該他の割込みプログ
    ラムのコンテキストを対応する上記コンテキスト記録手
    段に記録させる、 ことを特徴とする請求項1記載のデータ処理装置。
  5. 【請求項5】 切替制御手段は、さらに、 次の割込みが発生する前に実行中の割込みプログラムが
    終了した場合、当該割込み前の割込みプログラムあるい
    はメインプログラムのコンテキストが対応するコンテキ
    スト記録手段に記録されるようプログラム実行手段にコ
    ンテキストの記録先を切替えさせ、 その後プログラム実行手段に当該割込み前の割込みプロ
    グラムあるいはメインプログラムの実行を順次未終了で
    最新のものから再開させると共に、そのコンテキストを
    対応する上記コンテキスト記録手段に記録させる、 ことを特徴とする請求項4記載のデータ処理装置。
  6. 【請求項6】 複数のコンテキスト記録手段は、 1つのメインプログラムと複数の割込みプログラム用に
    2つ設けられ、 切替制御手段は、 上記メインプログラムおよび複数の割込みプログラム各
    々のコンテキストを退避させるコンテキスト退避手段を
    有し、 メインプログラムの実行中は、メインプログラム実行手
    段に当該メインプログラムのコンテキストを一方の上記
    コンテキスト記録手段に記録させる一方、 メインプログラムの実行中に割込みが発生した場合は、
    プログラム実行手段にメインプログラムの実行を停止さ
    せ、次に当該割込みプログラムのコンテキストが他方の
    上記コンテキスト記録手段に記録されるようプログラム
    実行手段にコンテキストの記録先を切替えさせ、その後
    プログラム実行手段に当該割込みプログラムを実行させ
    ると共に、当該割込みプログラムのコンテキストを上記
    他方のコンテキスト記録手段に記録させ、 割込みプログラムの実行中に他の割込みが発生した場合
    は、さらに当該割込みプログラムのコンテキストが記録
    されていない他方のコンテキスト記録手段から当該他方
    のコンテキスト記録手段に記録されたメインプログラム
    あるいは前の割込みプログラムのコンテキストを上記コ
    ンテキスト退避手段にセーブし、上記他方のコンテキス
    ト記録手段を初期化して、プログラム実行手段に割込み
    プログラムの実行を停止させ、次に当該他の割込みプロ
    グラムのコンテキストが上記他方のコンテキスト記録手
    段に記録されるようプログラム実行手段にコンテキスト
    の記録先を切替えさせ、その後プログラム実行手段に当
    該他の割込みプログラムを実行させると共に、当該他の
    割込みプログラムのコンテキストを上記他方のコンテキ
    スト記録手段に記録させる、 ことを特徴とする請求項1記載のデータ処理装置。
  7. 【請求項7】 切替制御手段は、さらに、 次の割込みが発生する前に実行中の割込みプログラムが
    終了した場合、プログラム実行手段にコンテキストの記
    録先を当該割込みプログラムのコンテキストが記録され
    ている一方のコンテキスト記録手段から他方の記録手段
    に切替えさせ、その後プログラム実行手段に当該割込み
    プログラムより前で最新かつ未終了の割込みプログラム
    あるいはメインプログラムを実行させると共に、そのコ
    ンテキストを上記他方のコンテキスト記録手段に記録さ
    せる一方、 さらに未終了の割込みプログラムあるいはメインプログ
    ラムがある場合は、割込みプログラムの実行中にそのコ
    ンテキストが記録されていない他方のコンテキスト記録
    手段を初期化して、コンテキスト退避手段から上記他方
    のコンテキスト記録手段へ当該割込みプログラムより前
    で最新かつ未終了の割込みプログラムあるいはメインプ
    ログラムのコンテキストをロードする共に、 当該割込みプログラムの実行終了後、プログラム実行手
    段にコンテキストの記録先を当該割込みプログラムのコ
    ンテキストが記録された一方の記録手段から上記他方の
    コンテキスト記録手段に切替えさせ、その後プログラム
    実行手段に当該割込みプログラムより前で最新かつ未終
    了の割込みプログラムあるいはメインプログラムを実行
    させると共に、そのコンテキストを上記他方のコンテキ
    スト記録手段に記録させる、 ことを特徴とする請求項6記載のデータ処理装置。
JP22044894A 1994-09-14 1994-09-14 データ処理装置 Withdrawn JPH0883187A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP22044894A JPH0883187A (ja) 1994-09-14 1994-09-14 データ処理装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP22044894A JPH0883187A (ja) 1994-09-14 1994-09-14 データ処理装置

Publications (1)

Publication Number Publication Date
JPH0883187A true JPH0883187A (ja) 1996-03-26

Family

ID=16751282

Family Applications (1)

Application Number Title Priority Date Filing Date
JP22044894A Withdrawn JPH0883187A (ja) 1994-09-14 1994-09-14 データ処理装置

Country Status (1)

Country Link
JP (1) JPH0883187A (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003512671A (ja) * 1999-10-20 2003-04-02 ソニー エレクトロニクス インク 並列コンテキスト切換を用いてアイソクロノス処理をサポートする方法

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003512671A (ja) * 1999-10-20 2003-04-02 ソニー エレクトロニクス インク 並列コンテキスト切換を用いてアイソクロノス処理をサポートする方法

Similar Documents

Publication Publication Date Title
JP2001166950A (ja) 割り込み管理装置及び割り込み管理方法
JPH02156334A (ja) 情報処理装置
JPS6364144A (ja) 記憶装置間デ−タ転送方式
JPH0883187A (ja) データ処理装置
JPH06208525A (ja) 処理装置の動作モード切替え方法
JPS6027031A (ja) 情報処理装置
JPH0322032A (ja) プログラム例外コード制御回路
JPH01292413A (ja) 情報処理装置
JPH07287660A (ja) プログラマブルコントローラの割り込み処理方法
JPH04155532A (ja) タスク切替方式
JPH0954697A (ja) マイクロプロセッサ
JPH05342021A (ja) マルチタスク計算機
JPH03211628A (ja) 割込み制御方法
JPS6231439A (ja) 命令再処理制御方式
JPH11224126A (ja) モーション制御装置
JP2001084151A (ja) 中央処理装置
JPH0689349A (ja) マイクロプロセッサ
JPH0588914A (ja) プロセツサ制御方法およびその装置
JPS63268003A (ja) プログラマブルコントロ−ラ
JPH1091220A (ja) プログラマブル・コントローラ
JPH04322332A (ja) プログラム実行制御方式
JPH03126134A (ja) Cpuのタスク切替方式
JPH04287421A (ja) A/d若しくはd/a変換器の起動回路
JPH01232440A (ja) 入出力処理方式
JPH04242833A (ja) 動作状態保存方式

Legal Events

Date Code Title Description
A300 Withdrawal of application because of no request for examination

Free format text: JAPANESE INTERMEDIATE CODE: A300

Effective date: 20011120