JPH05298119A - マイクロプロセッサのコンテキストスイッチ機構 - Google Patents
マイクロプロセッサのコンテキストスイッチ機構Info
- Publication number
- JPH05298119A JPH05298119A JP9762692A JP9762692A JPH05298119A JP H05298119 A JPH05298119 A JP H05298119A JP 9762692 A JP9762692 A JP 9762692A JP 9762692 A JP9762692 A JP 9762692A JP H05298119 A JPH05298119 A JP H05298119A
- Authority
- JP
- Japan
- Prior art keywords
- context
- history
- information
- storage device
- register
- 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
Links
Abstract
(57)【要約】
【目的】 コンテキストスイッチに際してバスネックを
発生することがなく、従ってシステム全体の処理効率が
高くなるマイクロプロセッサのコンテキストスイッチ機
構の提供を目的とする。 【構成】 現在実行中のコンテキストによりいずれのレ
ジスタがアクセスされたかを示すアクセス情報を保持す
るアクセス情報保持回路3と、コンテキストスイッチに
際して記憶装置13に退避されたコンテキスト情報のアク
セス情報を履歴として格納する履歴格納回路5と、入れ
換えるべきコンテキスト情報を履歴格納回路5に格納さ
れている履歴に従って指示する履歴制御回路7と、コン
テキストスイッチ要求があった場合に履歴制御回路7か
ら要求されたコンテキスト情報を入れ換える退避情報制
御回路9とを備えている。
発生することがなく、従ってシステム全体の処理効率が
高くなるマイクロプロセッサのコンテキストスイッチ機
構の提供を目的とする。 【構成】 現在実行中のコンテキストによりいずれのレ
ジスタがアクセスされたかを示すアクセス情報を保持す
るアクセス情報保持回路3と、コンテキストスイッチに
際して記憶装置13に退避されたコンテキスト情報のアク
セス情報を履歴として格納する履歴格納回路5と、入れ
換えるべきコンテキスト情報を履歴格納回路5に格納さ
れている履歴に従って指示する履歴制御回路7と、コン
テキストスイッチ要求があった場合に履歴制御回路7か
ら要求されたコンテキスト情報を入れ換える退避情報制
御回路9とを備えている。
Description
【0001】
【産業上の利用分野】本発明はマイクロプロセッサのコ
ンテキストスイッチ機構に関し、更に詳述すれば、コン
テキストスイッチに際してコンテキスト情報の退避及び
復帰に伴ってマイクロプロセッサと記憶装置との間で発
生するバスネックの解消を図ったマイクロプロセッサの
コンテキストスイッチ機構に関する。
ンテキストスイッチ機構に関し、更に詳述すれば、コン
テキストスイッチに際してコンテキスト情報の退避及び
復帰に伴ってマイクロプロセッサと記憶装置との間で発
生するバスネックの解消を図ったマイクロプロセッサの
コンテキストスイッチ機構に関する。
【0002】
【従来の技術】マイクロプロセッサが並行処理可能なプ
ログラムの単位をコンテキストと称し、各コンテキスト
はそれらが実行されるシステム上の資源を時分割で使用
している。外部割込みなどの要因により、その時点で実
行中のコンテキストの処理を中断してシステム上の全て
の資源を開放し、新たなコンテキストの処理を行うこと
をコンテキストスイッチと言う。
ログラムの単位をコンテキストと称し、各コンテキスト
はそれらが実行されるシステム上の資源を時分割で使用
している。外部割込みなどの要因により、その時点で実
行中のコンテキストの処理を中断してシステム上の全て
の資源を開放し、新たなコンテキストの処理を行うこと
をコンテキストスイッチと言う。
【0003】図4に従来の一般的なマイクロプロセッサ
の構成のブロック図を示す。図4において、参照符号1
はマイクロプロセッサ(以下、 MPUと言う) であり、シ
ステムバス12により記憶装置13と接続されている。MPU1
内にはレジスタ10が備えられている。このレジスタ10に
はコンテキストを実行する上で必要なコンテキスト情報
が格納される。
の構成のブロック図を示す。図4において、参照符号1
はマイクロプロセッサ(以下、 MPUと言う) であり、シ
ステムバス12により記憶装置13と接続されている。MPU1
内にはレジスタ10が備えられている。このレジスタ10に
はコンテキストを実行する上で必要なコンテキスト情報
が格納される。
【0004】記憶装置13には複数のコンテキスト情報領
域18-1, 18-2…18-nが設けられており、これらの第1,
第2…第nのコンテキスト情報領域18-1, 18-2…18-nは
それぞれ第NのコンテキストCN(但し、N=1, 2…n)の
コンテキスト情報領域になっている。なお、参照符号17
-1, 17-2…17-nは各コンテキスト情報領域18-1, 18-2…
18-nの先頭アドレスを示すコンテキストベースアドレス
を示している。
域18-1, 18-2…18-nが設けられており、これらの第1,
第2…第nのコンテキスト情報領域18-1, 18-2…18-nは
それぞれ第NのコンテキストCN(但し、N=1, 2…n)の
コンテキスト情報領域になっている。なお、参照符号17
-1, 17-2…17-nは各コンテキスト情報領域18-1, 18-2…
18-nの先頭アドレスを示すコンテキストベースアドレス
を示している。
【0005】図5はコンテキストスイッチの際の処理の
流れを示す模式図である。図5において、参照符号C1は
先行して処理されている第1のコンテキストを、C2は第
1のコンテキストよりも後に処理要求が発生し且つ第1
のコンテキストC1よりも先に処理されるべき第2のコン
テキストをそれぞれ示している。また、参照符号14はコ
ンテキストスイッチ要求14を、22-1は第1のコンテキス
トC1から第2のコンテキストC2へのコンテキストスイッ
チ(第1のコンテキストC1の退避) を、22-2は第2のコ
ンテキストC2から第1のコンテキストC1へのコンテキス
トスイッチ(第1のコンテキストC1の復帰) をそれぞれ
示している。
流れを示す模式図である。図5において、参照符号C1は
先行して処理されている第1のコンテキストを、C2は第
1のコンテキストよりも後に処理要求が発生し且つ第1
のコンテキストC1よりも先に処理されるべき第2のコン
テキストをそれぞれ示している。また、参照符号14はコ
ンテキストスイッチ要求14を、22-1は第1のコンテキス
トC1から第2のコンテキストC2へのコンテキストスイッ
チ(第1のコンテキストC1の退避) を、22-2は第2のコ
ンテキストC2から第1のコンテキストC1へのコンテキス
トスイッチ(第1のコンテキストC1の復帰) をそれぞれ
示している。
【0006】まず、図5を参照してコンテキストスイッ
チによる処理の流れを説明する。MPU1で第1のコンテキ
ストC1を実行中に割込み等の外的要因によりコンテキス
トスイッチ要求14が発生した場合、MPU1は第1のコンテ
キストC1の処理を一旦中断すると共に、第2のコンテキ
ストC2の処理が終了した後に第1のコンテキストC1の処
理を再実行するために必要なコンテキスト情報をレジス
タ10から記憶装置13に退避させる処理であるコンテキス
トスイッチ22-1 (退避) を実行する。そして第2のコン
テキストC2の処理が終了すると、MPU1は処理を中断して
いた第1のコンテキストC1の処理を再開するためのコン
テキストスイッチ22-2 (復帰) を実行し、記憶装置13に
退避されていたコンテキスト情報をレジスタ10に復帰さ
せて第1のコンテキストC1の処理を再開する。
チによる処理の流れを説明する。MPU1で第1のコンテキ
ストC1を実行中に割込み等の外的要因によりコンテキス
トスイッチ要求14が発生した場合、MPU1は第1のコンテ
キストC1の処理を一旦中断すると共に、第2のコンテキ
ストC2の処理が終了した後に第1のコンテキストC1の処
理を再実行するために必要なコンテキスト情報をレジス
タ10から記憶装置13に退避させる処理であるコンテキス
トスイッチ22-1 (退避) を実行する。そして第2のコン
テキストC2の処理が終了すると、MPU1は処理を中断して
いた第1のコンテキストC1の処理を再開するためのコン
テキストスイッチ22-2 (復帰) を実行し、記憶装置13に
退避されていたコンテキスト情報をレジスタ10に復帰さ
せて第1のコンテキストC1の処理を再開する。
【0007】ところで、第2のコンテキストC2の実行中
に新たなコンテキストスイッチ要求が更に発生した場合
は、上述同様に第2のコンテキストC2に対するコンテキ
スト情報のレジスタ10から記憶装置13への退避のための
コンテキストスイッチ22-1と、その後のコンテキスト情
報の記憶装置13からレジスタ10への復帰のためのコンテ
キストスイッチ22-2とが実行される。
に新たなコンテキストスイッチ要求が更に発生した場合
は、上述同様に第2のコンテキストC2に対するコンテキ
スト情報のレジスタ10から記憶装置13への退避のための
コンテキストスイッチ22-1と、その後のコンテキスト情
報の記憶装置13からレジスタ10への復帰のためのコンテ
キストスイッチ22-2とが実行される。
【0008】コンテキストがN個ある場合のコンテキス
トの退避を図4を参照して説明する。第1のコンテキス
トC1に対するコンテキスト情報は第1のコンテキストベ
ースアドレス17-1が示す記憶装置13の第1のコンテキス
ト退避領域18-1にMPU1のレジスタ10からシステムバス12
を通じて格納され、同様に第2のコンテキストC2に対す
るコンテキスト情報は第2のコンテキストベースアドレ
ス17-2が示す第2のコンテキスト退避領域18-2に、第n
のコンテキストCnに対するコンテキスト情報は第nのコ
ンテキストベースアドレス17-nが示す第nのコンテキス
ト退避領域18-nにそれぞれレジスタ10から退避される。
トの退避を図4を参照して説明する。第1のコンテキス
トC1に対するコンテキスト情報は第1のコンテキストベ
ースアドレス17-1が示す記憶装置13の第1のコンテキス
ト退避領域18-1にMPU1のレジスタ10からシステムバス12
を通じて格納され、同様に第2のコンテキストC2に対す
るコンテキスト情報は第2のコンテキストベースアドレ
ス17-2が示す第2のコンテキスト退避領域18-2に、第n
のコンテキストCnに対するコンテキスト情報は第nのコ
ンテキストベースアドレス17-nが示す第nのコンテキス
ト退避領域18-nにそれぞれレジスタ10から退避される。
【0009】一方、中断されていたコンテキスト処理を
再開する場合は、前述のコンテキスト情報の退避の際の
処理とは逆に、記憶装置13に格納されている各コンテキ
ストに対応するコンテキスト情報をシステムバス12を通
じてMPU1に読み出してレジスタ10に格納する。
再開する場合は、前述のコンテキスト情報の退避の際の
処理とは逆に、記憶装置13に格納されている各コンテキ
ストに対応するコンテキスト情報をシステムバス12を通
じてMPU1に読み出してレジスタ10に格納する。
【0010】
【発明が解決しようとする課題】ところで従来のマイク
ロプロセッサでは、コンテキストスイッチが要求された
場合には、マイクロプロセッサはその時点で実行中のコ
ンテキストには不要な、換言すれば記憶装置へ退避する
必要のない情報を区別することも、また既に他のコンテ
キストスイッチに伴って記憶装置へ退避されているコン
テキスト情報等を検出することも出来ないため、マイク
ロプロセッサ内部のコンテキスト情報の全てを記憶装置
へ一括して退避している。このため、コンテキストスイ
ッチ要求が発生する確率が高いシステム処理に際して
は、コンテキスト情報の退避の際にシステムバスがコン
テキスト情報により占有され、これがバスネックとなっ
てシステム全体の処理能力の低下を招来している。
ロプロセッサでは、コンテキストスイッチが要求された
場合には、マイクロプロセッサはその時点で実行中のコ
ンテキストには不要な、換言すれば記憶装置へ退避する
必要のない情報を区別することも、また既に他のコンテ
キストスイッチに伴って記憶装置へ退避されているコン
テキスト情報等を検出することも出来ないため、マイク
ロプロセッサ内部のコンテキスト情報の全てを記憶装置
へ一括して退避している。このため、コンテキストスイ
ッチ要求が発生する確率が高いシステム処理に際して
は、コンテキスト情報の退避の際にシステムバスがコン
テキスト情報により占有され、これがバスネックとなっ
てシステム全体の処理能力の低下を招来している。
【0011】本発明はこのような事情に鑑みてなされた
ものであり、コンテキストスイッチに際してバスネック
を発生することがなく、従ってシステム全体の処理効率
が高くなるマイクロプロセッサのコンテキストスイッチ
機構の提供を目的とする。
ものであり、コンテキストスイッチに際してバスネック
を発生することがなく、従ってシステム全体の処理効率
が高くなるマイクロプロセッサのコンテキストスイッチ
機構の提供を目的とする。
【0012】
【課題を解決するための手段】本発明のマイクロプロセ
ッサのコンテキストスイッチ機構の第1の発明は、現在
実行中のコンテキストによりいずれのレジスタがアクセ
スされたかを示すアクセス情報を保持するアクセス情報
保持手段と、コンテキストスイッチに際して記憶装置に
退避されたコンテキスト情報のアクセス情報を履歴とし
て格納する履歴格納手段と、入れ換えるべきコンテキス
ト情報を履歴格納手段に格納されている履歴に従って指
示する履歴制御手段と、コンテキストスイッチ要求があ
った場合に履歴制御手段から要求されたコンテキスト情
報を入れ換える退避情報制御手段とを備えている。
ッサのコンテキストスイッチ機構の第1の発明は、現在
実行中のコンテキストによりいずれのレジスタがアクセ
スされたかを示すアクセス情報を保持するアクセス情報
保持手段と、コンテキストスイッチに際して記憶装置に
退避されたコンテキスト情報のアクセス情報を履歴とし
て格納する履歴格納手段と、入れ換えるべきコンテキス
ト情報を履歴格納手段に格納されている履歴に従って指
示する履歴制御手段と、コンテキストスイッチ要求があ
った場合に履歴制御手段から要求されたコンテキスト情
報を入れ換える退避情報制御手段とを備えている。
【0013】また本発明のマイクロプロセッサのコンテ
キストスイッチ機構の第2の発明では、上述の第1の発
明の構成に加えて、履歴格納手段に格納させる履歴数を
設定可能な履歴数保持手段を備えている。
キストスイッチ機構の第2の発明では、上述の第1の発
明の構成に加えて、履歴格納手段に格納させる履歴数を
設定可能な履歴数保持手段を備えている。
【0014】
【作用】本発明のマイクロプロセッサのコンテキストス
イッチ機構の第1の発明では、コンテキストスイッチ要
求が発生した場合に、履歴格納手段に格納されている履
歴内容に基づいて、実行中のコンテキストでアクセスさ
れたコンテキスト情報のみが記憶装置に格納され、また
格納されている履歴の更新と履歴格納手段に全てのコン
テキスト情報の履歴が格納出来ない場合は全てのコンテ
キスト情報及び履歴情報が退避されるように履歴制御手
段により退避情報制御手段に対する制御が行われる。
イッチ機構の第1の発明では、コンテキストスイッチ要
求が発生した場合に、履歴格納手段に格納されている履
歴内容に基づいて、実行中のコンテキストでアクセスさ
れたコンテキスト情報のみが記憶装置に格納され、また
格納されている履歴の更新と履歴格納手段に全てのコン
テキスト情報の履歴が格納出来ない場合は全てのコンテ
キスト情報及び履歴情報が退避されるように履歴制御手
段により退避情報制御手段に対する制御が行われる。
【0015】本発明のマイクロプロセッサのコンテキス
トスイッチ機構の第2の発明では、コンテキストスイッ
チ要求が発生した場合に、履歴格納手段に格納されてい
る履歴内容に基づいて、実行中のコンテキストでアクセ
スされたコンテキスト情報のみが記憶装置に格納され、
また格納されている履歴の更新と履歴格納手段に全ての
コンテキスト状の履歴が格納できない場合、または履歴
数保持手段に設定されている任意の履歴数に達した場合
に全てのコンテキスト情報及び履歴情報が退避されるよ
うに履歴制御手段により退避情報制御手段に対して制御
が行われる。
トスイッチ機構の第2の発明では、コンテキストスイッ
チ要求が発生した場合に、履歴格納手段に格納されてい
る履歴内容に基づいて、実行中のコンテキストでアクセ
スされたコンテキスト情報のみが記憶装置に格納され、
また格納されている履歴の更新と履歴格納手段に全ての
コンテキスト状の履歴が格納できない場合、または履歴
数保持手段に設定されている任意の履歴数に達した場合
に全てのコンテキスト情報及び履歴情報が退避されるよ
うに履歴制御手段により退避情報制御手段に対して制御
が行われる。
【0016】
【実施例】以下、本発明をその実施例を示す図面に基づ
いて詳述する。
いて詳述する。
【0017】図1は本発明のマイクロプロセッサのコン
テキストスイッチ機構の第1の発明の実施例の構成を示
すブロック図であり、マイクロプロセッサに組み込まれ
た状態を示している。なお、この図1のブロック図にお
いては、前述の従来例の説明で参照した図4と同一の参
照符号は同一又は相当部分を示している。
テキストスイッチ機構の第1の発明の実施例の構成を示
すブロック図であり、マイクロプロセッサに組み込まれ
た状態を示している。なお、この図1のブロック図にお
いては、前述の従来例の説明で参照した図4と同一の参
照符号は同一又は相当部分を示している。
【0018】図1において、参照符号1はマイクロプロ
セッサ (以下、 MPUという) であり、コンテキスト情報
を保持するためのレジスタ10と、本発明に係るコンテキ
ストスイッチ機構2とをその内部に備えている。
セッサ (以下、 MPUという) であり、コンテキスト情報
を保持するためのレジスタ10と、本発明に係るコンテキ
ストスイッチ機構2とをその内部に備えている。
【0019】また、参照符号3はレジスタ10に保持され
ているコンテキスト情報に対するアクセス状況、即ちコ
ンテキストの実行に際してそれぞれのコンテキスト情報
がアクセスされたか否かを示すアクセス情報を保持する
アクセス情報保持回路であり、このアクセス情報は参照
符号4にて示されているように、コンテキストスイッチ
に際して履歴制御回路7及び履歴格納回路5へ読み出さ
れる。
ているコンテキスト情報に対するアクセス状況、即ちコ
ンテキストの実行に際してそれぞれのコンテキスト情報
がアクセスされたか否かを示すアクセス情報を保持する
アクセス情報保持回路であり、このアクセス情報は参照
符号4にて示されているように、コンテキストスイッチ
に際して履歴制御回路7及び履歴格納回路5へ読み出さ
れる。
【0020】履歴格納回路5は上述のようにコンテキス
トスイッチの際にアクセス情報保持回路3から読み出さ
れたアクセス情報を保持することにより、レジスタ10か
ら記憶装置13に退避されたコンテキスト情報の履歴、即
ち履歴情報を保持する。また履歴制御回路7は、コンテ
キストスイッチの際に履歴格納回路5を検索して退避ま
たは復帰が必要なコンテキスト情報を指示するための履
歴情報を参照符号6にて示されているように読み出して
退避要求8として退避情報制御回路9に与える。
トスイッチの際にアクセス情報保持回路3から読み出さ
れたアクセス情報を保持することにより、レジスタ10か
ら記憶装置13に退避されたコンテキスト情報の履歴、即
ち履歴情報を保持する。また履歴制御回路7は、コンテ
キストスイッチの際に履歴格納回路5を検索して退避ま
たは復帰が必要なコンテキスト情報を指示するための履
歴情報を参照符号6にて示されているように読み出して
退避要求8として退避情報制御回路9に与える。
【0021】退避情報制御回路9は、コンテキストスイ
ッチ要求14が外部から与えられた場合に、履歴制御回路
7から参照符号8にて示されている退避要求8に基づい
て記憶装置13に退避させるコンテキスト情報を制御する
ための制御信号11をレジスタ10及び記憶装置13に出力す
る。
ッチ要求14が外部から与えられた場合に、履歴制御回路
7から参照符号8にて示されている退避要求8に基づい
て記憶装置13に退避させるコンテキスト情報を制御する
ための制御信号11をレジスタ10及び記憶装置13に出力す
る。
【0022】なお、記憶装置13の構成及び記憶装置13と
MPU1とがシステムバス12により接続されていることは図
4に示されている従来例と全く同様である。
MPU1とがシステムバス12により接続されていることは図
4に示されている従来例と全く同様である。
【0023】次に、上述のような構成の本発明のマイク
ロプロセッサのコンテキストスイッチ機構の第1の発明
の実施例の動作について説明する。
ロプロセッサのコンテキストスイッチ機構の第1の発明
の実施例の動作について説明する。
【0024】MPU1がコンテキストの処理を行う際には、
制御レジスタあるいはデータレジスタ等にて構成されて
いるレジスタ10に保持されているコンテキスト情報をア
クセスする。アクセスされたコンテキスト情報はコンテ
キストを実行する際に必要な情報であり、コンテキスト
スイッチが発生した場合、その時点で実行中のコンテキ
ストの再実行のために記憶装置13に退避する必要がある
情報である。このため、アクセス情報保持回路3は、レ
ジスタ10に保持されているコンテキスト情報がアクセス
される都度、そのコンテキスト情報に対応するアクセス
情報をセットする。
制御レジスタあるいはデータレジスタ等にて構成されて
いるレジスタ10に保持されているコンテキスト情報をア
クセスする。アクセスされたコンテキスト情報はコンテ
キストを実行する際に必要な情報であり、コンテキスト
スイッチが発生した場合、その時点で実行中のコンテキ
ストの再実行のために記憶装置13に退避する必要がある
情報である。このため、アクセス情報保持回路3は、レ
ジスタ10に保持されているコンテキスト情報がアクセス
される都度、そのコンテキスト情報に対応するアクセス
情報をセットする。
【0025】まず、コンテキストスイッチに際して、レ
ジスタ10に保持されているコンテキスト情報を記憶装置
13に退避させる場合について説明する。たとえば、第n
番目のコンテキストスイッチ要求14が入ると、履歴制御
回路7はアクセス情報保持回路3をアクセスすることに
よりアクセス情報をアクセス情報保持回路3から読み出
し、アクセス情報がセットされているコンテキスト情報
の退避要求8を発生する。退避要求8を受けて退避情報
制御回路9は対応するコンテキスト情報をレジスタ10か
ら記憶装置13の第nのコンテキスト退避領域18-n (図4
参照) に退避させるように制御信号11を発生する。この
際、履歴格納回路5にはアクセス情報保持回路3が保持
しているアクセス情報がコピーされる。
ジスタ10に保持されているコンテキスト情報を記憶装置
13に退避させる場合について説明する。たとえば、第n
番目のコンテキストスイッチ要求14が入ると、履歴制御
回路7はアクセス情報保持回路3をアクセスすることに
よりアクセス情報をアクセス情報保持回路3から読み出
し、アクセス情報がセットされているコンテキスト情報
の退避要求8を発生する。退避要求8を受けて退避情報
制御回路9は対応するコンテキスト情報をレジスタ10か
ら記憶装置13の第nのコンテキスト退避領域18-n (図4
参照) に退避させるように制御信号11を発生する。この
際、履歴格納回路5にはアクセス情報保持回路3が保持
しているアクセス情報がコピーされる。
【0026】履歴制御回路7は上述のように、コンテキ
ストスイッチが発生する都度、履歴格納回路5の履歴更
新を行う。
ストスイッチが発生する都度、履歴格納回路5の履歴更
新を行う。
【0027】ここで、MPU1内に設定可能な履歴格納回路
5の容量には限度があるため、この容量を超過した場合
に履歴格納回路5に格納されている履歴自身を外部に退
避する必要が生じる。いまたとえば、履歴格納回路5の
容量がn回のコンテキストスイッチ分である場合、第n
番目の更新が発生した際には履歴制御回路7はレジスタ
10に保持されている全てのコンテキスト情報を記憶装置
13に退避させ、同時に履歴格納回路5に格納されている
全ての履歴情報6を記憶装置13に退避するように退避情
報制御回路9に要求する。
5の容量には限度があるため、この容量を超過した場合
に履歴格納回路5に格納されている履歴自身を外部に退
避する必要が生じる。いまたとえば、履歴格納回路5の
容量がn回のコンテキストスイッチ分である場合、第n
番目の更新が発生した際には履歴制御回路7はレジスタ
10に保持されている全てのコンテキスト情報を記憶装置
13に退避させ、同時に履歴格納回路5に格納されている
全ての履歴情報6を記憶装置13に退避するように退避情
報制御回路9に要求する。
【0028】次にコンテキスト情報10を復帰する場合に
ついて説明する。実行中のコンテキストが終了すると同
時にコンテキスト処理の最後で元のコンテキスト処理へ
の復帰(図5の22-2に相当する処理) 要求が発せられ
る。この復帰要求を受けて履歴制御回路7は履歴格納回
路5を検索する。この結果、コンテキスト情報の最新情
報が格納されている記憶装置13のコンテキスト退避領域
(18-1 〜18-n) が履歴情報6として退避情報制御回路9
に指示されるので、退避情報制御回路9は記憶装置13か
らコンテキスト情報を読み出すために必要な制御信号11
をこの指示に従って発生する。
ついて説明する。実行中のコンテキストが終了すると同
時にコンテキスト処理の最後で元のコンテキスト処理へ
の復帰(図5の22-2に相当する処理) 要求が発せられ
る。この復帰要求を受けて履歴制御回路7は履歴格納回
路5を検索する。この結果、コンテキスト情報の最新情
報が格納されている記憶装置13のコンテキスト退避領域
(18-1 〜18-n) が履歴情報6として退避情報制御回路9
に指示されるので、退避情報制御回路9は記憶装置13か
らコンテキスト情報を読み出すために必要な制御信号11
をこの指示に従って発生する。
【0029】また、履歴格納回路5に退避されている履
歴情報6を復帰させたい場合、たとえば履歴格納回路5
に履歴が格納されていないか、または退避させていたコ
ンテキストの復帰により格納可能な回数の履歴情報を使
い切った場合等にも同様な手順がとられる。
歴情報6を復帰させたい場合、たとえば履歴格納回路5
に履歴が格納されていないか、または退避させていたコ
ンテキストの復帰により格納可能な回数の履歴情報を使
い切った場合等にも同様な手順がとられる。
【0030】通常、コンテキストスイッチは退避と復帰
とが交互に反復されるため、システム上のコンテキスト
情報を保持する最大値の見積りはそれほど困難ではな
く、最適な履歴格納のために容量を与えることが出来る
ので、履歴情報6自体の退避及び復帰の発生頻度は低
い。
とが交互に反復されるため、システム上のコンテキスト
情報を保持する最大値の見積りはそれほど困難ではな
く、最適な履歴格納のために容量を与えることが出来る
ので、履歴情報6自体の退避及び復帰の発生頻度は低
い。
【0031】次に、前述したコンテキスト情報の復帰処
理における最新のコンテキスト情報の検索方法について
説明する。図2は履歴格納回路5の構成を示す模式図で
あり、参照符号16はコンテキスト番号を、 100はレジス
タ10を構成する各レジスタの番号をそれぞれ示してい
る。
理における最新のコンテキスト情報の検索方法について
説明する。図2は履歴格納回路5の構成を示す模式図で
あり、参照符号16はコンテキスト番号を、 100はレジス
タ10を構成する各レジスタの番号をそれぞれ示してい
る。
【0032】この例では、第nのコンテキストCn(コン
テキスト番号16がn)の実行に際してアクセスされたの
は”1”がセットされたレジスタ番号R0, R4, R6, R7に
保持されていたコンテキスト情報である。これらの4個
のコンテキスト情報は第nのコンテキストCnの処理に特
有の値を有しているため、コンテキストスイッチに際し
てレジスタ10から記憶装置13に退避される。一方、レジ
スタ番号R1, R2, R3,R5に保持されていたコンテキスト
情報はこのコンテキストの実行に際しては用いられては
いない。従って、履歴制御回路7はそれぞれのコンテキ
スト情報に対してレジスタ番号R1については第1のコン
テキストC1で退避されたコンテキスト情報が、同じくR
2, R3は第3のコンテキストC3で退避されたコンテキス
ト情報が、R5は第2のコンテキストC2で退避されたコン
テキスト情報がそれぞれ最新であることを検索し、コン
テキスト情報の復帰の際はこれらの値を復帰するように
退避情報制御回路9に要求する。
テキスト番号16がn)の実行に際してアクセスされたの
は”1”がセットされたレジスタ番号R0, R4, R6, R7に
保持されていたコンテキスト情報である。これらの4個
のコンテキスト情報は第nのコンテキストCnの処理に特
有の値を有しているため、コンテキストスイッチに際し
てレジスタ10から記憶装置13に退避される。一方、レジ
スタ番号R1, R2, R3,R5に保持されていたコンテキスト
情報はこのコンテキストの実行に際しては用いられては
いない。従って、履歴制御回路7はそれぞれのコンテキ
スト情報に対してレジスタ番号R1については第1のコン
テキストC1で退避されたコンテキスト情報が、同じくR
2, R3は第3のコンテキストC3で退避されたコンテキス
ト情報が、R5は第2のコンテキストC2で退避されたコン
テキスト情報がそれぞれ最新であることを検索し、コン
テキスト情報の復帰の際はこれらの値を復帰するように
退避情報制御回路9に要求する。
【0033】また、図2に示されているように、第1の
コンテキストC1のコンテキストスイッチに際して履歴格
納回路5に格納されている全ての履歴情報6が更新され
るように設定を行っておけば、この第1のコンテキスト
C1のコンテキストスイッチが行われる都度、全てのコン
テキスト情報が必ず一旦記憶装置13に退避されるので、
履歴格納回路5に登録されているコンテキストの最新の
コンテキスト情報は全て履歴格納回路5を参照すること
により検索可能である。
コンテキストC1のコンテキストスイッチに際して履歴格
納回路5に格納されている全ての履歴情報6が更新され
るように設定を行っておけば、この第1のコンテキスト
C1のコンテキストスイッチが行われる都度、全てのコン
テキスト情報が必ず一旦記憶装置13に退避されるので、
履歴格納回路5に登録されているコンテキストの最新の
コンテキスト情報は全て履歴格納回路5を参照すること
により検索可能である。
【0034】図3は本発明のマイクロプロセッサのコン
テキストスイッチ機構の第2の発明の実施例の構成を示
す模式図である。図3において、参照符号15は履歴数保
持回路を示し、他の部分は図1に示されている第1の実
施例と同様である。
テキストスイッチ機構の第2の発明の実施例の構成を示
す模式図である。図3において、参照符号15は履歴数保
持回路を示し、他の部分は図1に示されている第1の実
施例と同様である。
【0035】この第2の実施例の動作で前述の第1の実
施例と異なるのは、履歴格納回路5に格納可能な履歴数
以下の回数を履歴数保持回路15により指定可能にしたこ
とである。履歴制御回路7は履歴格納回路5に格納され
ている履歴情報6の状態 (格納可能な履歴数) には拘わ
らずに履歴数保持回路15が保持する履歴数により全ての
コンテキスト情報と履歴情報6とを記憶装置13に退避す
ることを退避情報制御回路9に要求する。
施例と異なるのは、履歴格納回路5に格納可能な履歴数
以下の回数を履歴数保持回路15により指定可能にしたこ
とである。履歴制御回路7は履歴格納回路5に格納され
ている履歴情報6の状態 (格納可能な履歴数) には拘わ
らずに履歴数保持回路15が保持する履歴数により全ての
コンテキスト情報と履歴情報6とを記憶装置13に退避す
ることを退避情報制御回路9に要求する。
【0036】なお、以上のいずれの説明においても履歴
格納回路5をMPU1内部に有する構成について説明した
が、記憶装置13にテーブル(履歴情報格納領域)を設定
し、このテーブルに履歴情報を保持させるような構成も
可能である。しかしこのような構成を採る場合には、コ
ンテキストスイッチが行われる都度、記憶装置13からMP
U1へ履歴情報を読み込んで比較する必要が生じるため本
来の目的であるバスネックの解消には役立たない。
格納回路5をMPU1内部に有する構成について説明した
が、記憶装置13にテーブル(履歴情報格納領域)を設定
し、このテーブルに履歴情報を保持させるような構成も
可能である。しかしこのような構成を採る場合には、コ
ンテキストスイッチが行われる都度、記憶装置13からMP
U1へ履歴情報を読み込んで比較する必要が生じるため本
来の目的であるバスネックの解消には役立たない。
【0037】
【発明の効果】以上に詳述したように、本発明のマイク
ロプロセッサのコンテキストスイッチ機構の第1及び第
2の発明によれば、コンテキストスイッチ要求が発生し
た場合に、アクセス情報保持回路に保持されているアク
セス情報または履歴格納回路に格納されている履歴内容
に基づいて、コンテキストの実行に伴ってアクセスされ
たコンテキスト情報のみがレジスタから記憶装置へ退避
または記憶装置からレジスタへ復帰するように制御され
るので、マイクロプロセッサと記憶装置との間を移動す
るコンテキスト情報の量が必要最小限となり、コンテキ
ストスイッチに伴うバス占有時間が減少するので、シス
テムの処理効率が向上する。
ロプロセッサのコンテキストスイッチ機構の第1及び第
2の発明によれば、コンテキストスイッチ要求が発生し
た場合に、アクセス情報保持回路に保持されているアク
セス情報または履歴格納回路に格納されている履歴内容
に基づいて、コンテキストの実行に伴ってアクセスされ
たコンテキスト情報のみがレジスタから記憶装置へ退避
または記憶装置からレジスタへ復帰するように制御され
るので、マイクロプロセッサと記憶装置との間を移動す
るコンテキスト情報の量が必要最小限となり、コンテキ
ストスイッチに伴うバス占有時間が減少するので、シス
テムの処理効率が向上する。
【0038】また、記憶装置でのコンテキスト退避領域
による専有容量を小さくすることが可能になるので、結
果的にメモリの有効利用が図れる。
による専有容量を小さくすることが可能になるので、結
果的にメモリの有効利用が図れる。
【0039】更に本発明の第2の発明によれば、システ
ムにとって必要と考えられる特定回数のコンテキストス
イッチが行われる都度、全てのコンテキスト情報が記憶
装置に一旦退避させられるので、フェイルセーフの構成
をとった上でバスネックを抑制することが可能になる。
ムにとって必要と考えられる特定回数のコンテキストス
イッチが行われる都度、全てのコンテキスト情報が記憶
装置に一旦退避させられるので、フェイルセーフの構成
をとった上でバスネックを抑制することが可能になる。
【図1】本発明のマイクロプロセッサのコンテキストス
イッチ機構の第1の発明の実施例の構成を示すブロック
図であり、マイクロプロセッサに組み込まれた状態を示
している。
イッチ機構の第1の発明の実施例の構成を示すブロック
図であり、マイクロプロセッサに組み込まれた状態を示
している。
【図2】本発明のマイクロプロセッサのコンテキストス
イッチ機構の履歴格納回路の構成を示す模式図である。
イッチ機構の履歴格納回路の構成を示す模式図である。
【図3】本発明のマイクロプロセッサのコンテキストス
イッチ機構の第2の発明の実施例の構成を示す模式図で
ある。
イッチ機構の第2の発明の実施例の構成を示す模式図で
ある。
【図4】従来の一般的なマイクロプロセッサの構成を示
すブロック図である。
すブロック図である。
【図5】コンテキストスイッチの際の処理の流れを示す
模式図である。
模式図である。
1 MPU(マイクロプロセッサ) 2 コンテキストスイッチ機構 3 アクセス情報保持回路 5 履歴格納回路 7 履歴制御回路 9 退避情報制御回路 10 レジスタ 13 記憶装置 14 コンテキストスイッチ要求 15 履歴数保持回路
Claims (2)
- 【請求項1】 レジスタに保持された複数のコンテキス
ト情報を使用してコンテキストを実行し、現在実行中の
コンテキストとは異なるコンテキストを実行するための
コンテキストスイッチが要求された場合には、それまで
実行していたコンテキストに関するコンテキスト情報を
記憶装置へ退避させると共に、新たに実行すべきコンテ
キストに関するコンテキスト情報を前記記憶装置から前
記レジスタへ復帰させるべくなしてあるマイクロプロセ
ッサのコンテキストスイッチ機構において、 前記レジスタに格納されているコンテキスト情報の内の
いずれが現在実行中のコンテキストによりアクセスされ
たかを示すアクセス情報を保持するアクセス情報保持手
段と、 前記記憶装置にコンテキスト情報が退避された場合にそ
のアクセス情報を履歴として格納する履歴格納手段と、 前記履歴格納手段に格納されている履歴の読み出しを制
御する履歴制御手段と、 コンテキストスイッチが要求された場合に、前記記憶装
置と前記レジスタとの間でコンテキスト情報を入れ換え
る退避情報制御手段とを備え、 前記履歴制御手段は、コンテキストスイッチが要求され
た場合に、前記アクセス情報保持手段に保持されている
アクセス情報に従ってそれまで実行されていたコンテキ
ストでアクセスされたコンテキスト情報のみを前記レジ
スタから前記記憶装置へ退避させるように、また前記履
歴格納手段から読み出した履歴に従って新たに実行され
るコンテキストのコンテキスト情報のみを前記記憶装置
から前記レジスタへ復帰するように前記退避情報制御手
段に指示し、更に前記履歴格納手段に全てのコンテキス
ト情報の履歴が格納出来ない場合は、前記退避情報制御
手段に対して全てのコンテキスト情報の退避及び履歴情
報の退避を要求し、 前記退避情報制御手段は、前記履歴制御手段の要求に応
じて、コンテキスト情報の前記記憶装置への退避及び前
記記憶装置からの復帰を制御すべくなしてあることを特
徴とするマイクロプロセッサのコンテキストスイッチ機
構。 - 【請求項2】 履歴格納手段に格納させる履歴数を設定
可能な履歴数保持手段を備え、履歴制御手段は前記履歴
格納手段に全てのコンテキスト情報の履歴が格納出来な
い場合または前記履歴数保持手段に設定された履歴数に
達した場合に、全てのコンテキスト情報及び履歴情報を
記憶装置へ退避するように退避情報制御手段に対して指
示すべくなしてあることを特徴とする請求項1に記載の
マイクロプロセッサのコンテキストスイッチ機構。
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP9762692A JPH05298119A (ja) | 1992-04-17 | 1992-04-17 | マイクロプロセッサのコンテキストスイッチ機構 |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP9762692A JPH05298119A (ja) | 1992-04-17 | 1992-04-17 | マイクロプロセッサのコンテキストスイッチ機構 |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| JPH05298119A true JPH05298119A (ja) | 1993-11-12 |
Family
ID=14197397
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP9762692A Pending JPH05298119A (ja) | 1992-04-17 | 1992-04-17 | マイクロプロセッサのコンテキストスイッチ機構 |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JPH05298119A (ja) |
Cited By (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2010530563A (ja) * | 2007-05-11 | 2010-09-09 | エコスター テクノロジーズ エル.エル.シー. | 安全な環境におけるプロセッサ実行を制御するための装置 |
| JP2011526476A (ja) * | 2008-06-26 | 2011-10-06 | クゥアルコム・インコーポレイテッド | マルチプロセッサデバイスにおけるデータ転送および受信の期間中のコンテキストスイッチングを低減するための方法および装置 |
-
1992
- 1992-04-17 JP JP9762692A patent/JPH05298119A/ja active Pending
Cited By (5)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2010530563A (ja) * | 2007-05-11 | 2010-09-09 | エコスター テクノロジーズ エル.エル.シー. | 安全な環境におけるプロセッサ実行を制御するための装置 |
| US8613081B2 (en) | 2007-05-11 | 2013-12-17 | Nagrastar Llc | Apparatus for controlling processor execution in a secure environment |
| US9043902B2 (en) | 2007-05-11 | 2015-05-26 | Nagrastar, Llc | Apparatus for controlling processor execution in a secure environment |
| JP2011526476A (ja) * | 2008-06-26 | 2011-10-06 | クゥアルコム・インコーポレイテッド | マルチプロセッサデバイスにおけるデータ転送および受信の期間中のコンテキストスイッチングを低減するための方法および装置 |
| US8588253B2 (en) | 2008-06-26 | 2013-11-19 | Qualcomm Incorporated | Methods and apparatuses to reduce context switching during data transmission and reception in a multi-processor device |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US5752268A (en) | Minimum-delay recoverable disk control system using checkpoints and nonvolatile memory | |
| KR20030072550A (ko) | 데이터 처리장치와 복귀상태의 저장방법 | |
| JPH09212371A (ja) | レジスタ退避及び復元システム | |
| JPS6364144A (ja) | 記憶装置間デ−タ転送方式 | |
| JPH0736848A (ja) | 情報処理装置および処理方法 | |
| US20010037425A1 (en) | Interrupt processing method in an operation processing device and the device using the same | |
| JP2005275703A (ja) | プロセッサ及びコンテキスト切り替え方法 | |
| JPH09134292A (ja) | 割り込み制御方法 | |
| JPS6212535B2 (ja) | ||
| JPH0561774A (ja) | スワツピング制御方式 | |
| JPS59144955A (ja) | 情報処理装置 | |
| JP2871171B2 (ja) | マイクロコンピュータ | |
| JPH0486923A (ja) | タスク管理制御方式 | |
| JPH0756633B2 (ja) | タスク切換え方式 | |
| JPH0262633A (ja) | プログラム間通知方式 | |
| JPH06119190A (ja) | タスク切替処理方式 | |
| JPH01147636A (ja) | 障害発生時の処理再試行方式 | |
| JPH01303546A (ja) | メモリ制御方式 | |
| JPH1078884A (ja) | 仮想記憶を利用したデータ復旧方法 | |
| JPH04195540A (ja) | 割り込み処理方式 | |
| JP2000305844A (ja) | キャッシュ制御装置 | |
| JP2001084151A (ja) | 中央処理装置 | |
| JP2003076559A (ja) | 情報処理装置 | |
| JPS63208945A (ja) | 情報処理装置 | |
| JPH0359727A (ja) | マイクロプロセッサにおける退避・復元方式 |