JPH01150939A - 情報処理装置 - Google Patents
情報処理装置Info
- Publication number
- JPH01150939A JPH01150939A JP62308754A JP30875487A JPH01150939A JP H01150939 A JPH01150939 A JP H01150939A JP 62308754 A JP62308754 A JP 62308754A JP 30875487 A JP30875487 A JP 30875487A JP H01150939 A JPH01150939 A JP H01150939A
- Authority
- JP
- Japan
- Prior art keywords
- micro
- interrupt
- information
- branch
- storage means
- 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
- 238000000034 method Methods 0.000 claims abstract description 23
- 230000010365 information processing Effects 0.000 claims description 21
- 230000004075 alteration Effects 0.000 abstract 2
- 238000010586 diagram Methods 0.000 description 5
- 238000007792 addition Methods 0.000 description 4
- 230000006870 function Effects 0.000 description 1
Abstract
(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。
め要約のデータは記録されません。
Description
【発明の詳細な説明】
[発明の目的]
(産業上の利用分野)
この発明は、複数のマイクロ割込の処理を効率的に行な
うようにした情報処理装置に関する。
うようにした情報処理装置に関する。
(従来の技術)
従来、情報処理装置では、プログラムは通常の処理を行
う通常プログラムと、割込処理を行う割込ハンドラとか
らなっており、機械語命令で記述されている。マイクロ
プログラム制御方式の情報処理装置では、実際はひとつ
の機械語命令は複数のマイクロ命令からなるマイクロプ
ログラムで処理しており、割込が発生し割込ハンドラに
分岐する処理もやはりマイクロプログラムで処理してい
た。すなわち、マイクロプログラムレベルの割込(μ割
込)が複数用意されており、μ割込が発生すると、実行
中のマイクロプログラムを中断してμ割込処理のマイク
ロプログラムに分岐していた。そして、μ割込処理のマ
イクロプログラム内で割込ハンドラに分岐する処理を行
っていた。
う通常プログラムと、割込処理を行う割込ハンドラとか
らなっており、機械語命令で記述されている。マイクロ
プログラム制御方式の情報処理装置では、実際はひとつ
の機械語命令は複数のマイクロ命令からなるマイクロプ
ログラムで処理しており、割込が発生し割込ハンドラに
分岐する処理もやはりマイクロプログラムで処理してい
た。すなわち、マイクロプログラムレベルの割込(μ割
込)が複数用意されており、μ割込が発生すると、実行
中のマイクロプログラムを中断してμ割込処理のマイク
ロプログラムに分岐していた。そして、μ割込処理のマ
イクロプログラム内で割込ハンドラに分岐する処理を行
っていた。
例えば、μ割込にはセグメントのリミットオーパーツμ
割込とか、W rite P rotection
(ライト・プロテクション)保護のμ割込とか、Il
oからのμ割込等があり、これらのμ割込に対応する機
械語命令の割込があった。ただし、一対一には対応して
おらず、セグメントのリミットオーバーのμ割込と、W
rite Protection保護のμ割込は、メ
モリ保護割込に、Iloからのμ割込は外部割込に対応
している。
割込とか、W rite P rotection
(ライト・プロテクション)保護のμ割込とか、Il
oからのμ割込等があり、これらのμ割込に対応する機
械語命令の割込があった。ただし、一対一には対応して
おらず、セグメントのリミットオーバーのμ割込と、W
rite Protection保護のμ割込は、メ
モリ保護割込に、Iloからのμ割込は外部割込に対応
している。
これらのμ割込が発生すると、対応するμ割込処理のマ
イクロプログラム、例えば、セグメントのリミットオー
バーのμ割込のマイクロプログラムを実行していた。そ
して、このマイクロプログラム内で、セグメントのリミ
ットオーバーのμ割込に対応するメモリ保護の割込ハン
ドラに分岐する処理を行っていた。
イクロプログラム、例えば、セグメントのリミットオー
バーのμ割込のマイクロプログラムを実行していた。そ
して、このマイクロプログラム内で、セグメントのリミ
ットオーバーのμ割込に対応するメモリ保護の割込ハン
ドラに分岐する処理を行っていた。
すなわち、ひとつのμ割込に対し、ひとつのμ割込処理
のマイクロプログラムが用意されており、あるμ割込が
発生すると、最初からμ割込受付回路が対応する個々の
μ割込処理のマイクロプログラムの先頭番地に分岐する
ようになっていた。
のマイクロプログラムが用意されており、あるμ割込が
発生すると、最初からμ割込受付回路が対応する個々の
μ割込処理のマイクロプログラムの先頭番地に分岐する
ようになっていた。
例えば、Write Protection保護違反
のμ割込が発生すると、マイクロプログラムの100番
地に固定的に分岐し、外部のIloからのμ割込が発生
すると、マイクロプログラムの110番地に固定的に分
岐し、それぞれ対応するμ割込処理のマイクロプログラ
ムを実行していた。一方、同時にそれらが発生した場合
には、予め決められた優先順位に従って、μ割込受付回
路がいずれか一方を選択して、μ割込処理のマイクロプ
ログラムを実行していた。すなわち、WriteP r
oteCtion保護違反の優先順位が高いとすると、
それらが発生した時は、μ割込受付回路内にある優先順
位制御回路が前者を選択し、100番地からのマイクロ
プログラムに分岐していた。
のμ割込が発生すると、マイクロプログラムの100番
地に固定的に分岐し、外部のIloからのμ割込が発生
すると、マイクロプログラムの110番地に固定的に分
岐し、それぞれ対応するμ割込処理のマイクロプログラ
ムを実行していた。一方、同時にそれらが発生した場合
には、予め決められた優先順位に従って、μ割込受付回
路がいずれか一方を選択して、μ割込処理のマイクロプ
ログラムを実行していた。すなわち、WriteP r
oteCtion保護違反の優先順位が高いとすると、
それらが発生した時は、μ割込受付回路内にある優先順
位制御回路が前者を選択し、100番地からのマイクロ
プログラムに分岐していた。
(発明が解決しようとする問題点)
このように、従来のマイクロプログラム制御方式の情報
処理装置にあって、システムの仕様変更等によりμ割込
処理の優先順位を変更しようとする場合には、優先順位
制御回路自身を変更しなければならず、容易に行なうこ
とが困難であった。
処理装置にあって、システムの仕様変更等によりμ割込
処理の優先順位を変更しようとする場合には、優先順位
制御回路自身を変更しなければならず、容易に行なうこ
とが困難であった。
また、セグメントのリミットオーバーのμ割込とw r
ite p rotection保護のμ割込で、セ
グメントがスタックの場合には、メモリ保護割込とは別
のスタック保護割込にするという仕様変更を行なう必要
があるが、このような変更は極めて困難であった。
ite p rotection保護のμ割込で、セ
グメントがスタックの場合には、メモリ保護割込とは別
のスタック保護割込にするという仕様変更を行なう必要
があるが、このような変更は極めて困難であった。
そこで、この発明は、上記に鑑みてなされたものであり
、その目的とするところは、複数のマイクロ割込処理に
おける実行順位に対して柔軟に対応することができると
ともに、マイクロ割込の追加、変更を容易に行なうこと
ができる情報処理装置を提供することにある。
、その目的とするところは、複数のマイクロ割込処理に
おける実行順位に対して柔軟に対応することができると
ともに、マイクロ割込の追加、変更を容易に行なうこと
ができる情報処理装置を提供することにある。
[発明の構成]
(問題点を解決するための手段)
上記目的を達成するために、この第1の発明は、複数の
マイクロ割込をマイクロプログラム制御方式によって処
理する情報処理装置にして、発生した少なくとも1つ以
上のマイクロ割込の情報を格納する第1の記憶手段と、
前記複数のそれぞれのマイクロ割込を処理するマイクロ
割込処理ブ[1グラムと、前記第1の記憶手段に格納さ
れるマイクロ割込の情報に対応して分岐条件を示すマス
ク情報を備えた複数のマイクロ命令を含み前記複数のマ
イクロ割込の少なくとも1つ以上が発生してこれを受け
付けると実行される共通のマイクロ割込処理プログラム
を格納するマイクロ命令記憶手段と、前記マイクロ命令
記憶手段から実行処理しようとするマイクロ命令を読み
出す読出し手段と、前記マスク情報を含む複数のマイク
ロ命令を所定の順序で実行して前記第1の記憶手段に格
納された複数のマイクロ割込の情報と前記マスク情報を
比較することにより実行するマイクロ割込を選択する第
1の比較選択手段と、前記マイクロ命令記憶手段から読
出されるマイクロ命令の格納領域を前記読出し手段に指
令し、前記第1の比較選択手段により選択されたマイク
ロ割込のマイクロ割込処理プログラムを実行中のプログ
ラムから分岐して実行するために、選択されたマイクロ
割込のマイクロ割込処理プログラムの読出しを前記読出
し手段に指令する指令手段とから構成される。
マイクロ割込をマイクロプログラム制御方式によって処
理する情報処理装置にして、発生した少なくとも1つ以
上のマイクロ割込の情報を格納する第1の記憶手段と、
前記複数のそれぞれのマイクロ割込を処理するマイクロ
割込処理ブ[1グラムと、前記第1の記憶手段に格納さ
れるマイクロ割込の情報に対応して分岐条件を示すマス
ク情報を備えた複数のマイクロ命令を含み前記複数のマ
イクロ割込の少なくとも1つ以上が発生してこれを受け
付けると実行される共通のマイクロ割込処理プログラム
を格納するマイクロ命令記憶手段と、前記マイクロ命令
記憶手段から実行処理しようとするマイクロ命令を読み
出す読出し手段と、前記マスク情報を含む複数のマイク
ロ命令を所定の順序で実行して前記第1の記憶手段に格
納された複数のマイクロ割込の情報と前記マスク情報を
比較することにより実行するマイクロ割込を選択する第
1の比較選択手段と、前記マイクロ命令記憶手段から読
出されるマイクロ命令の格納領域を前記読出し手段に指
令し、前記第1の比較選択手段により選択されたマイク
ロ割込のマイクロ割込処理プログラムを実行中のプログ
ラムから分岐して実行するために、選択されたマイクロ
割込のマイクロ割込処理プログラムの読出しを前記読出
し手段に指令する指令手段とから構成される。
また、この第2の発明は、複数のマイクロ割込をマイク
ロプログラム制御方式によって処理する情報処理装置に
して、発生した少なくとも1つ以上のマイクロ割込の情
報を格納する第1の記憶手段と、前記第1の記憶手段に
格納された情報のマイクロ割込の発生後に発生したマイ
クロ割込の情報を格納する第2の記憶手段と、前記複数
のそれぞれのマイクロ割込を処理するマイロ割込処理プ
ログラムと、前記第1及び第2の記憶手段に格納される
マイクロ割込の情報に対応して分岐条件を示すマスク情
報を備えた複数のマイクロ命令を含み前記複数のマイク
ロ割込の少なくとも1つ以上が発生してこれを受け付け
ると実行される共通のマイクロ割込処理プログラムを格
納するマイクロ命令記憶手段と、前記マイクロ命令記憶
手段から実行処理しようとするマイクロ命令を読出す読
出し手段と、前記マスク情報を含む複数のマイクロ命令
を所定の順序で実行して前記第1の記憶手段に格納され
た複数のマイクロ割込の情報と前記マスク情報を比較す
ることによりマイクロ割込を選択する第1の比較選択手
段と、前記マスク情報を含む複数のマイクロ命令を所定
の順序で実行して前記第2の記憶手段に格納された複数
のマイクロ割込の情報と前記マスク情報を比較すること
によりマイクロ割込を選択する第2の比較選択手段と、
前記マイクロ命令記憶手段から読出されるマイクロ命令
の格納領域を前記読出し手段に指令し、前記第1及び第
2の比較選択手段により選択されたマイクロ割込のマイ
クロ割込処理プログラムを実行中のプログラムから分岐
して実行するために、実行プるマイクロ割込のマイクロ
割込処理プログラムの読出しを前記読出し手段に指令す
る指令手段とから構成される。
ロプログラム制御方式によって処理する情報処理装置に
して、発生した少なくとも1つ以上のマイクロ割込の情
報を格納する第1の記憶手段と、前記第1の記憶手段に
格納された情報のマイクロ割込の発生後に発生したマイ
クロ割込の情報を格納する第2の記憶手段と、前記複数
のそれぞれのマイクロ割込を処理するマイロ割込処理プ
ログラムと、前記第1及び第2の記憶手段に格納される
マイクロ割込の情報に対応して分岐条件を示すマスク情
報を備えた複数のマイクロ命令を含み前記複数のマイク
ロ割込の少なくとも1つ以上が発生してこれを受け付け
ると実行される共通のマイクロ割込処理プログラムを格
納するマイクロ命令記憶手段と、前記マイクロ命令記憶
手段から実行処理しようとするマイクロ命令を読出す読
出し手段と、前記マスク情報を含む複数のマイクロ命令
を所定の順序で実行して前記第1の記憶手段に格納され
た複数のマイクロ割込の情報と前記マスク情報を比較す
ることによりマイクロ割込を選択する第1の比較選択手
段と、前記マスク情報を含む複数のマイクロ命令を所定
の順序で実行して前記第2の記憶手段に格納された複数
のマイクロ割込の情報と前記マスク情報を比較すること
によりマイクロ割込を選択する第2の比較選択手段と、
前記マイクロ命令記憶手段から読出されるマイクロ命令
の格納領域を前記読出し手段に指令し、前記第1及び第
2の比較選択手段により選択されたマイクロ割込のマイ
クロ割込処理プログラムを実行中のプログラムから分岐
して実行するために、実行プるマイクロ割込のマイクロ
割込処理プログラムの読出しを前記読出し手段に指令す
る指令手段とから構成される。
(作用)
上記第1の発明にあっては、マイクロ割込が発生してこ
れらが受け付けられると、共通のマイクロ割込処理プロ
グラムを実行し、この共通のマイクロ割込処理プログラ
ムに含まれるマスク情報を備えたマイクロ命令を実行す
ることにより、実行しようとするマイクロ割込を選択し
て、選択されたマイクロ割込のマイクロ割込処理プログ
ラムを実行するようにしている。
れらが受け付けられると、共通のマイクロ割込処理プロ
グラムを実行し、この共通のマイクロ割込処理プログラ
ムに含まれるマスク情報を備えたマイクロ命令を実行す
ることにより、実行しようとするマイクロ割込を選択し
て、選択されたマイクロ割込のマイクロ割込処理プログ
ラムを実行するようにしている。
また、上記第2の発明にあっては、マイクロ割込が発生
してこれらが受け付けられると、共通のマイクロ割込処
理プログラムを実行し、この共通のマイクロ割込処理プ
ログラムに含まれるマスク情報を備えたマイクロ命令を
実行するとともに、さらに、これらのマイクロ割込が発
生した以降に発生したマイクロ割込に対して、共通のマ
イクロ割込処理プログラムに含まれるマスク情報を備え
たマイクロ命令を実行することにより、実行しようとす
るマイクロ割込を選択して、選択されたマイクロ割込の
マイクロ割込処理プログラムを実行するようにしている
。
してこれらが受け付けられると、共通のマイクロ割込処
理プログラムを実行し、この共通のマイクロ割込処理プ
ログラムに含まれるマスク情報を備えたマイクロ命令を
実行するとともに、さらに、これらのマイクロ割込が発
生した以降に発生したマイクロ割込に対して、共通のマ
イクロ割込処理プログラムに含まれるマスク情報を備え
たマイクロ命令を実行することにより、実行しようとす
るマイクロ割込を選択して、選択されたマイクロ割込の
マイクロ割込処理プログラムを実行するようにしている
。
(実施例)
以下、図面を用いてこの発明の一実施例を説明する。
第1図はこの発明の第1の実施例に係る情報処理装置の
構成を示す図であり、同図に示す情報処理装置は、マイ
クロプログラム制御方式によりプログラム処理を行なう
ものであり、マイクロ割込をそれぞれの優先順位に応じ
て、所定のマイクプログラムによって処理しようとする
ものである。
構成を示す図であり、同図に示す情報処理装置は、マイ
クロプログラム制御方式によりプログラム処理を行なう
ものであり、マイクロ割込をそれぞれの優先順位に応じ
て、所定のマイクプログラムによって処理しようとする
ものである。
第1図において、この情報処理装置で実行処理されるマ
イクロプログラムは、マイクロROM(μROM)1に
格納保持されている。このμROMIには、マイクロ割
込処理を行なうためのマイクロプログラムが格納されて
おり、このマイクロプログラムは、本実施例では例えば
201番地から格納されているものとする。
イクロプログラムは、マイクロROM(μROM)1に
格納保持されている。このμROMIには、マイクロ割
込処理を行なうためのマイクロプログラムが格納されて
おり、このマイクロプログラムは、本実施例では例えば
201番地から格納されているものとする。
また、このマイクロプログラムは、マイクロ割込の内容
を判別するマイクロ割込分岐命令Aを有している。この
マイクロ割込分岐命令Aは、オペレーションフィールド
(OP)、分岐マスクフィールド(MK)、分岐アドレ
スフィールド(BA)かう構成されている。分岐マイク
フィールドの情報は、マイクロ割込の内容を判別する時
に用いられ、そのビット数はマイクロ割込の種類と同数
となっている。ここで、分岐マスクフィールドの情報に
は、少なくともWrite Protection
(ライトプロテクション、以下rWPJと呼ぶ)保護
違反が発生しているか否かを調べるためにマスクする情
報と、Iloからのマイクロ割込が発生しているか否か
を調べるためにマスクする情報とを含んでいる。分岐ア
ドレスフィールドの情報は、複数のマイクロ割込の中か
ら選択されて処理されるマイクロ割込の処理プログラム
の先頭番地を示している。このようなマイクロ割込分岐
命令Aを含むマイクロプログラムは、実行処理される際
にマイクロ命令レジスタ3にμROM1からマイクロア
ト1ノスレジスタ(RAR)5から与えられるアドレス
にしたがって読出される。
を判別するマイクロ割込分岐命令Aを有している。この
マイクロ割込分岐命令Aは、オペレーションフィールド
(OP)、分岐マスクフィールド(MK)、分岐アドレ
スフィールド(BA)かう構成されている。分岐マイク
フィールドの情報は、マイクロ割込の内容を判別する時
に用いられ、そのビット数はマイクロ割込の種類と同数
となっている。ここで、分岐マスクフィールドの情報に
は、少なくともWrite Protection
(ライトプロテクション、以下rWPJと呼ぶ)保護
違反が発生しているか否かを調べるためにマスクする情
報と、Iloからのマイクロ割込が発生しているか否か
を調べるためにマスクする情報とを含んでいる。分岐ア
ドレスフィールドの情報は、複数のマイクロ割込の中か
ら選択されて処理されるマイクロ割込の処理プログラム
の先頭番地を示している。このようなマイクロ割込分岐
命令Aを含むマイクロプログラムは、実行処理される際
にマイクロ命令レジスタ3にμROM1からマイクロア
ト1ノスレジスタ(RAR)5から与えられるアドレス
にしたがって読出される。
マイクロ命令レジスタ3は、μROMIから読出されて
実行処理中のマイクロ命令をセットするものである。し
たがって、μROMIから読出されたμ割込分岐命令A
は、それぞれのフィールドの情報がマイクロ命令レジス
タ3のそれぞれ対応する領域に格納される。マイクロ命
令レジスタ3に格納されたμ割込分岐命令Aは、そのオ
ペレーションフィールドの情報がデコーダ7に与えられ
、分岐マスクフィールドの情報が分岐判定回路9aに与
えられ、分岐アドレスフィールドの情報が選択回路11
に与えられる。
実行処理中のマイクロ命令をセットするものである。し
たがって、μROMIから読出されたμ割込分岐命令A
は、それぞれのフィールドの情報がマイクロ命令レジス
タ3のそれぞれ対応する領域に格納される。マイクロ命
令レジスタ3に格納されたμ割込分岐命令Aは、そのオ
ペレーションフィールドの情報がデコーダ7に与えられ
、分岐マスクフィールドの情報が分岐判定回路9aに与
えられ、分岐アドレスフィールドの情報が選択回路11
に与えられる。
マイクロアドレスレジスタ(RAR)5は、次に実行す
る予定のマイクロ命令が格納されているアドレスの値を
格納するものである。したがって、μROMIでは、こ
のマイクロアドレスレジスタ5に格納されたアドレスに
したがって、格納されたマイクロ命令が読出される。マ
イクロアドレスレジスタ5には、加算回路13が接続さ
れている。
る予定のマイクロ命令が格納されているアドレスの値を
格納するものである。したがって、μROMIでは、こ
のマイクロアドレスレジスタ5に格納されたアドレスに
したがって、格納されたマイクロ命令が読出される。マ
イクロアドレスレジスタ5には、加算回路13が接続さ
れている。
この加算回路13は、マイクロアドレスレジスタ5の内
容に1を加算して、アドレス更新を行なうものである。
容に1を加算して、アドレス更新を行なうものである。
この加算回路13の出力は選択回路11に与えられる。
選択回路11は、加算回路13の出力とマイクロ命令レ
ジスタ3の分岐アドレスフィールドの情報及びマイクロ
割込処理のプログラムの先頭番地(201番地)を選択
するものである。この選択回路11によって選択された
情報は、マイクロアドレスレジスタ5に与えられて格納
される。
ジスタ3の分岐アドレスフィールドの情報及びマイクロ
割込処理のプログラムの先頭番地(201番地)を選択
するものである。この選択回路11によって選択された
情報は、マイクロアドレスレジスタ5に与えられて格納
される。
デコーダ7は、マイクロ命令レジスタ3のオペレーショ
ンフィールドの情報を受けて、これをデコードするもの
である。デコーダ7は、μ割込分岐命令Aをデコードし
た場合に、その出力を“1パレベルとする。
ンフィールドの情報を受けて、これをデコードするもの
である。デコーダ7は、μ割込分岐命令Aをデコードし
た場合に、その出力を“1パレベルとする。
分岐判定回路9aは、マイクロ割込レジスタ15aが接
続されている。このマイクロ割込レジスタ15aは、複
数のマイクロ割込にそれぞれ対応してそれぞれのマイク
ロ割込の発生を示すマイクロ割込信号をそれぞれのビッ
トに対応してセットするものである。それぞれのマイク
ロ割込信号は、対応したマイクロ割込が発生すると゛1
″レベルとなり、WP保1違反の発生を示す信号と!1
0からのマイクロ割込の発生を示す信号を含んでいる。
続されている。このマイクロ割込レジスタ15aは、複
数のマイクロ割込にそれぞれ対応してそれぞれのマイク
ロ割込の発生を示すマイクロ割込信号をそれぞれのビッ
トに対応してセットするものである。それぞれのマイク
ロ割込信号は、対応したマイクロ割込が発生すると゛1
″レベルとなり、WP保1違反の発生を示す信号と!1
0からのマイクロ割込の発生を示す信号を含んでいる。
マイクロ割込レジスタ15aに格納されたそれぞれのマ
イクロ割込信号は、分岐判定回路9aに与えられる。
イクロ割込信号は、分岐判定回路9aに与えられる。
分岐判定回路9aは、マイクロ割込レジスタ15aのそ
れぞれのマイクロ割込信号と、マイクロ命令レジスタ3
のそれぞれの分岐マスクフィールドの情報とを入力し、
発生したマイクロ割込の実行優先度を分岐マスクフィー
ルドの情報により判定し、判定結果を分岐成立信号とし
て出力する。
れぞれのマイクロ割込信号と、マイクロ命令レジスタ3
のそれぞれの分岐マスクフィールドの情報とを入力し、
発生したマイクロ割込の実行優先度を分岐マスクフィー
ルドの情報により判定し、判定結果を分岐成立信号とし
て出力する。
すなわち、分岐マスクフィールドのそれぞれのビットを
優先度の高いマイクロ割込に対応したビットから順次“
1”レベルとし、このような分岐マスクフィールドの情
報とそれぞれのマイクロ割込信号とを比較する。分岐マ
スクフィールドの“1″レベルとなったビットに対応し
たマイクロ割込信号が″1°ルベルであれば、分岐成立
信号は゛1″レベルとなる。一方、対応したマイクロ割
込信号が゛0パレベルであれば、分岐成立信号は“0″
レベルとなる。
優先度の高いマイクロ割込に対応したビットから順次“
1”レベルとし、このような分岐マスクフィールドの情
報とそれぞれのマイクロ割込信号とを比較する。分岐マ
スクフィールドの“1″レベルとなったビットに対応し
たマイクロ割込信号が″1°ルベルであれば、分岐成立
信号は゛1″レベルとなる。一方、対応したマイクロ割
込信号が゛0パレベルであれば、分岐成立信号は“0″
レベルとなる。
111 ITレベルの分岐成立信号が出力されると、μ
割込分岐命令Aから分岐マスクフィールドの“1ルベル
のビットに対応したマイクロ割込を処理するマイクロプ
ログラムに分岐して、このマイクロプログラムが実行さ
れる。一方、分岐成立信号が゛′0″レベルの場合には
、分岐不成立となり、次のアドレスのマイクロ命令が実
行される。
割込分岐命令Aから分岐マスクフィールドの“1ルベル
のビットに対応したマイクロ割込を処理するマイクロプ
ログラムに分岐して、このマイクロプログラムが実行さ
れる。一方、分岐成立信号が゛′0″レベルの場合には
、分岐不成立となり、次のアドレスのマイクロ命令が実
行される。
このような分岐判定回路9aは、例えば第2図に示すよ
うに構成される。第2図において、分岐判定回路9aは
、それぞれのマイクロ割込信号とこれらのマイクロ割込
信号に対応した分岐マスクフィールドの情報との論理積
(AND)をとるANDゲート19と、それぞれのAN
Dゲート19の出力の論理和(OR)をとるORゲート
21とから構成されており、ORゲート21の出力を分
岐成立信号としている。
うに構成される。第2図において、分岐判定回路9aは
、それぞれのマイクロ割込信号とこれらのマイクロ割込
信号に対応した分岐マスクフィールドの情報との論理積
(AND)をとるANDゲート19と、それぞれのAN
Dゲート19の出力の論理和(OR)をとるORゲート
21とから構成されており、ORゲート21の出力を分
岐成立信号としている。
このような構成にあっては、分岐マスクフィールドの″
゛1″1″レベルしたマイクロ割込信号が“1″レベル
であれば、少なくとも1つのANDゲート19の出力は
“1″レベルとなり、分岐成立信号は“1”レベルとな
る。一方、分岐マスクフィールドの“1ルベルに対応し
たマイクロ割込信号が゛0″レベルであれば、すべての
ANDゲート19の出力は“0”レベルとなり、分岐成
立信号は“O”レベルとなる。
゛1″1″レベルしたマイクロ割込信号が“1″レベル
であれば、少なくとも1つのANDゲート19の出力は
“1″レベルとなり、分岐成立信号は“1”レベルとな
る。一方、分岐マスクフィールドの“1ルベルに対応し
たマイクロ割込信号が゛0″レベルであれば、すべての
ANDゲート19の出力は“0”レベルとなり、分岐成
立信号は“O”レベルとなる。
再び、第1図に戻って、分岐判定回路9aの出力は、選
択回路11の選択動作を制御する選択制御回路23を構
成する3人力ANDゲート25に与えられている。
択回路11の選択動作を制御する選択制御回路23を構
成する3人力ANDゲート25に与えられている。
選択制御回路23は、ANDゲート25に加えて、マス
クレジスタ27及び2人力のANDゲート29、ORゲ
ート31、反転(NOT)ゲート33の各ゲートから構
成されており、ANDゲート25.29の両川力によっ
て選択回路11を制御している。
クレジスタ27及び2人力のANDゲート29、ORゲ
ート31、反転(NOT)ゲート33の各ゲートから構
成されており、ANDゲート25.29の両川力によっ
て選択回路11を制御している。
マスクレジスタ27は、マイクロ割込の受け付は状態を
示すものであり、通常状態にあっては11”レベルであ
り、マイクロ割込が発生してこれを受け付けると0′”
レベルとなる。したがって、マスクレジスタ27が゛O
″レベルであるならば、マイクロ割込レジスタ15aの
少なくとも1ビツト以上が゛1″レベルであっても、マ
イクロ割込の発生を禁止する。一方、マスクレジスタ2
7が゛1″レベルであるならば、マイクロ割込レジスタ
15aの少なくとも1つ以上のビットが11111レベ
ルであれば、マイクロ割込を発生する。
示すものであり、通常状態にあっては11”レベルであ
り、マイクロ割込が発生してこれを受け付けると0′”
レベルとなる。したがって、マスクレジスタ27が゛O
″レベルであるならば、マイクロ割込レジスタ15aの
少なくとも1ビツト以上が゛1″レベルであっても、マ
イクロ割込の発生を禁止する。一方、マスクレジスタ2
7が゛1″レベルであるならば、マイクロ割込レジスタ
15aの少なくとも1つ以上のビットが11111レベ
ルであれば、マイクロ割込を発生する。
ANDゲート25は、その入力にデコーダ7の出力と分
岐成立信号及びNOTゲー]・33を介したANDゲー
ト29の出力が与えられており、その出力は選択回路1
1に与えられている。ANDゲート29は、その入力に
マイクロ割込レジスタ15aのそれぞれの出力を入力と
するORゲート31の出力とマスクレジスタ27に格納
された情報が与えられており、その出力は選択回路11
に与えられている。
岐成立信号及びNOTゲー]・33を介したANDゲー
ト29の出力が与えられており、その出力は選択回路1
1に与えられている。ANDゲート29は、その入力に
マイクロ割込レジスタ15aのそれぞれの出力を入力と
するORゲート31の出力とマスクレジスタ27に格納
された情報が与えられており、その出力は選択回路11
に与えられている。
このような選択制御回路23によって制御される選択回
路11は、ANDゲート25及びANDゲート29の出
力がともに“Onレベルにあっては、加算器13の出力
を選択し、ANDゲート25の出力がOITレベルでへ
NOゲート29の出力が“1″レベルにあっては、”
201 ”番地を選択し、ANDゲート25の出力が゛
1′ルベルrANDゲート29の出力が“0′ルベルに
あっては、マイクロ命令レジスタ3の分岐アドレスフィ
ールドの情報を選択するようになっている。
路11は、ANDゲート25及びANDゲート29の出
力がともに“Onレベルにあっては、加算器13の出力
を選択し、ANDゲート25の出力がOITレベルでへ
NOゲート29の出力が“1″レベルにあっては、”
201 ”番地を選択し、ANDゲート25の出力が゛
1′ルベルrANDゲート29の出力が“0′ルベルに
あっては、マイクロ命令レジスタ3の分岐アドレスフィ
ールドの情報を選択するようになっている。
以上説明したように、この発明の第1の実施例は構成さ
れており、次にこの実施例の作用を説明する。
れており、次にこの実施例の作用を説明する。
まず、マイクロ割込が発生しておらず、通常の機械語命
令を実行している場合について説明する。
令を実行している場合について説明する。
マイクロ割込信号の全ビットはOIIレベルのままであ
る。したがって、マイクロ割込レジスタ15aの全出力
は“0″レベルのままであり、ORゲート31の出力も
“0″レベルのままである。
る。したがって、マイクロ割込レジスタ15aの全出力
は“0″レベルのままであり、ORゲート31の出力も
“0″レベルのままである。
この結果、マスクレジスタ27を“1′ルベルにしてお
いてもANDゲート29の出力は″゛OOパレベルまと
なり、マイクロ割込分岐命令Aを実行しなければ、選択
回路11は加算回路13の出力を選択し、これをマイク
ロアドレスレジスタ5にセットする。これにより、通常
のマイクロプログラムが実行される。
いてもANDゲート29の出力は″゛OOパレベルまと
なり、マイクロ割込分岐命令Aを実行しなければ、選択
回路11は加算回路13の出力を選択し、これをマイク
ロアドレスレジスタ5にセットする。これにより、通常
のマイクロプログラムが実行される。
次に、マイクロ割込が発生し、マイクロ割込が受け付け
られるまで、すなわち、マイクロプログラムが201番
地からのマイクロ割込処理のマイクロプログラムに分岐
するまでについて説明する。
られるまで、すなわち、マイクロプログラムが201番
地からのマイクロ割込処理のマイクロプログラムに分岐
するまでについて説明する。
まず、WP保If反のマイクロ割込と、外部の110か
らのマイクロ割込が同時に発生したとする。すなわち、
マイクロ割込信号のうち、WP保護違反のマイクロ割込
信号と、外部のIloからのマイクロ割込信号が“1”
レベルになる。そして、マイクロ割込レジスタ15aの
これらの2ビツトが“1″レベルとなり、ORゲート3
1の出力が“1”レベルとなる。一方、マスクレジスタ
27は゛1″レベルのままであるから、ANDゲート2
9の出力は“1“レベル、ANDゲート25の出力が“
0″レベルとなる。この結果、選択回路11は、“20
1”番地を選択し、マイクロアドレスレジスタ5にセッ
トする。また、マスクレジスタ27が゛0゛ルベルとな
る。これ以降、マイクロアドレスレジスタ5の値が’
201 ”であるから、201番地のマイクロ命令から
実行が開始される。
らのマイクロ割込が同時に発生したとする。すなわち、
マイクロ割込信号のうち、WP保護違反のマイクロ割込
信号と、外部のIloからのマイクロ割込信号が“1”
レベルになる。そして、マイクロ割込レジスタ15aの
これらの2ビツトが“1″レベルとなり、ORゲート3
1の出力が“1”レベルとなる。一方、マスクレジスタ
27は゛1″レベルのままであるから、ANDゲート2
9の出力は“1“レベル、ANDゲート25の出力が“
0″レベルとなる。この結果、選択回路11は、“20
1”番地を選択し、マイクロアドレスレジスタ5にセッ
トする。また、マスクレジスタ27が゛0゛ルベルとな
る。これ以降、マイクロアドレスレジスタ5の値が’
201 ”であるから、201番地のマイクロ命令から
実行が開始される。
次に、マイクロ割込処理のマイクロプログラムでマイク
ロ割込の内容を調べる処理について説明する。
ロ割込の内容を調べる処理について説明する。
この処理では、マイクロ割込が発生すると、必ず201
番地からのμ割込処理のマイクロプログラムを開始する
。まず最初に、マイクロ割込レジスタ15aの内容をμ
割込分岐命令Aで検査して、どのマイクロ割込が発生し
ているかを調べる。この時、調べるビットの順序は、マ
イクロ割込の優先順位となる。
番地からのμ割込処理のマイクロプログラムを開始する
。まず最初に、マイクロ割込レジスタ15aの内容をμ
割込分岐命令Aで検査して、どのマイクロ割込が発生し
ているかを調べる。この時、調べるビットの順序は、マ
イクロ割込の優先順位となる。
具体的には、以下のようになる。
マイクロ割込が発生した時のマイクロ割込信号は、マイ
クロ割込レジスタ15aに格納されているので、“1″
レベルになっているビットをマイクロ命令で調べればよ
い。この処理は、μ割込分岐命令Aを実行することによ
り行なわれる。すなわち、μ割込分岐命令Aを用いてマ
イクロ割込レジスタ15aの″゛1″1″レベルトされ
ているビットをきめられた優先度にしたがってスキャン
する。
クロ割込レジスタ15aに格納されているので、“1″
レベルになっているビットをマイクロ命令で調べればよ
い。この処理は、μ割込分岐命令Aを実行することによ
り行なわれる。すなわち、μ割込分岐命令Aを用いてマ
イクロ割込レジスタ15aの″゛1″1″レベルトされ
ているビットをきめられた優先度にしたがってスキャン
する。
次に、μ割込分岐命令Aの動作を詳細に説明する。
μ割込分岐命令Aがマイクロ命令レジスタ3にセットさ
れて、デコーダ7によってデコードされると、デコーダ
7は出力を“1”レベルにする。
れて、デコーダ7によってデコードされると、デコーダ
7は出力を“1”レベルにする。
また、マイクロ命令レジスタ3の分岐マスクフィールド
の出力とマイクロ割込レジスタ15aの出力とでビット
毎の論理積和をとる。すなわち、分岐判定回路9aで、
μ割込レジスタ15aの出力と分岐マスクフィールドの
出力で、ANDゲート19で論理積をとり、ORゲート
21でそれらの論理和をとる。この結果、分岐成立信号
が“1ルベルならば、ORゲート31を経由して選択回
路11で、マイクロ命令レジスタ3の分岐フィールドの
出力を選択する。そして、マイクロアドレスレジスタ5
にセットする。一方、分岐不成立の場合には、分岐成立
信号がO11レベルになるので、選択回路11は、加算
回路13の出力を選択する。
の出力とマイクロ割込レジスタ15aの出力とでビット
毎の論理積和をとる。すなわち、分岐判定回路9aで、
μ割込レジスタ15aの出力と分岐マスクフィールドの
出力で、ANDゲート19で論理積をとり、ORゲート
21でそれらの論理和をとる。この結果、分岐成立信号
が“1ルベルならば、ORゲート31を経由して選択回
路11で、マイクロ命令レジスタ3の分岐フィールドの
出力を選択する。そして、マイクロアドレスレジスタ5
にセットする。一方、分岐不成立の場合には、分岐成立
信号がO11レベルになるので、選択回路11は、加算
回路13の出力を選択する。
次に、例えば、wpfii違反のマイクロ割込と、外部
I10からのマイクロ割込の2つが同時に発生した場合
について説明する。
I10からのマイクロ割込の2つが同時に発生した場合
について説明する。
まず、WP保II違反のマイクロ割込と、外部I10か
らのマイクロ割込の2つが発生し、対応するマイクロ割
込レジスタ15aが゛ginレベルになる。そして、2
01番地からのマイクロプログラムの実行が開始される
。まず最初に、一番優先度の高いマイクロ割込が発生し
ているかをμ割込分岐命令Aを用いて調べる。すなわち
、一番優先度の高いマイクロ割込に対応した分岐マスク
フィールドのビットを“1”レベルにしたマイクロ命令
を実行する。上記の2個のマイクロ割込が最も優先度の
高いマイクロ割込でないとするならば、分岐マスクフィ
ールドの出力のうち、上記のマイクロ割込に対応した出
力はともに“0ルベルとなる。そこで、ANDゲート1
9の出力のうちこれらに対応する出力はともに“O”レ
ベルとなる。
らのマイクロ割込の2つが発生し、対応するマイクロ割
込レジスタ15aが゛ginレベルになる。そして、2
01番地からのマイクロプログラムの実行が開始される
。まず最初に、一番優先度の高いマイクロ割込が発生し
ているかをμ割込分岐命令Aを用いて調べる。すなわち
、一番優先度の高いマイクロ割込に対応した分岐マスク
フィールドのビットを“1”レベルにしたマイクロ命令
を実行する。上記の2個のマイクロ割込が最も優先度の
高いマイクロ割込でないとするならば、分岐マスクフィ
ールドの出力のうち、上記のマイクロ割込に対応した出
力はともに“0ルベルとなる。そこで、ANDゲート1
9の出力のうちこれらに対応する出力はともに“O”レ
ベルとなる。
この時、最も優先度の高いマイクロ割込が発生していな
ければ、AND回路19の出力はすべて′“0″レベル
のままであるから、分岐成立信号は110 ITレベル
となる。したがって、分岐不成立となり、次の番地のマ
イクロ命令が実行される。
ければ、AND回路19の出力はすべて′“0″レベル
のままであるから、分岐成立信号は110 ITレベル
となる。したがって、分岐不成立となり、次の番地のマ
イクロ命令が実行される。
次に、二番目に優先度の高いマイクロ割込がWP保護違
反のマイクロ割込とすると、μ割込分岐命令AのWP保
護違反に対応する出力が“1′ルベルになるから、これ
に対応したAND回路19の出力が“1″レベルとなる
。これにより、OR回路21の出力である分岐成立信号
は゛1″レベルとなり、選択回路11は、分岐アドレス
フィールドの出力を選択する。この結果、マイクロアド
レスレジスタ5には、WP保護違反のマイクロ割込処理
のマイクロプログラムの先頭番地がセットされて、この
処理が開始される。
反のマイクロ割込とすると、μ割込分岐命令AのWP保
護違反に対応する出力が“1′ルベルになるから、これ
に対応したAND回路19の出力が“1″レベルとなる
。これにより、OR回路21の出力である分岐成立信号
は゛1″レベルとなり、選択回路11は、分岐アドレス
フィールドの出力を選択する。この結果、マイクロアド
レスレジスタ5には、WP保護違反のマイクロ割込処理
のマイクロプログラムの先頭番地がセットされて、この
処理が開始される。
このように、μ割込分岐命令Aでマイクロ割込レジスタ
15aの“1″レベルがセットされているビットを検査
する際、検査するビット順をかえることにより、すなわ
ち、分岐マスクフィールドの内容をかえることにより、
容易に優先度の変更ができる。
15aの“1″レベルがセットされているビットを検査
する際、検査するビット順をかえることにより、すなわ
ち、分岐マスクフィールドの内容をかえることにより、
容易に優先度の変更ができる。
また、割込の追加変更に対しても柔軟に対処できる。例
えば、スタック保護の割込を新たに追加する場合、μ割
込分岐命令AでWP保護違反であるか否かを検査する前
にスタック動作を行ったかどうかをマイクロ分岐命令(
図示していない)を実行して調べる。もし、スタック動
作が行なわれているならば分岐するので、分岐先のマイ
クロ命令でマイクロ割込分岐命令Aを実行させてWP保
Ha反であるか否かを検査すればよい。
えば、スタック保護の割込を新たに追加する場合、μ割
込分岐命令AでWP保護違反であるか否かを検査する前
にスタック動作を行ったかどうかをマイクロ分岐命令(
図示していない)を実行して調べる。もし、スタック動
作が行なわれているならば分岐するので、分岐先のマイ
クロ命令でマイクロ割込分岐命令Aを実行させてWP保
Ha反であるか否かを検査すればよい。
したがって、このようにマイクロ割込発生の内容をマイ
クロプログラムで調べることにより、割込の追加や変更
に柔軟に対処することができる。
クロプログラムで調べることにより、割込の追加や変更
に柔軟に対処することができる。
次に、この発明の第2の実施例について説明する。
第3図はこの発明の第2の実施例に係る情報処理装置の
構成を示す図である。同図に示す情報処理装置は、第1
図に示した情報処理装置に対して、分岐判定回路9b及
びマイクロ割込レジスタ15bを追加するとともに、μ
割込分岐命令Aと同様なフィールドで構成されたμ割込
分岐命令Bを、前記実施例において、μROM1の20
1番地から格納されてマイクロ割込を処理するマイクロ
プログラム中に設け、マイクロ割込を処理するマイクロ
プログラムの実行中に発生したマイクロ割込に対処する
ようにしたものである。なお、第3図に示す情報処理装
置において、第1図と同符号のものは同一機能を有する
ものであり、その説明は省略する。
構成を示す図である。同図に示す情報処理装置は、第1
図に示した情報処理装置に対して、分岐判定回路9b及
びマイクロ割込レジスタ15bを追加するとともに、μ
割込分岐命令Aと同様なフィールドで構成されたμ割込
分岐命令Bを、前記実施例において、μROM1の20
1番地から格納されてマイクロ割込を処理するマイクロ
プログラム中に設け、マイクロ割込を処理するマイクロ
プログラムの実行中に発生したマイクロ割込に対処する
ようにしたものである。なお、第3図に示す情報処理装
置において、第1図と同符号のものは同一機能を有する
ものであり、その説明は省略する。
第3図において、マイクロ割込レジスタ15bは、マイ
クロ割込信号をそれぞれのビットに対応してセットする
ものである。マイクロ割込レジスタ15bに格納された
マイクロ割込信号は、マイクロ割込レジスタ15aと分
岐判定回路9b及びORゲート31与えられる。また、
マイクロ割込レジスタ15bは、格納されたマイクロ割
込信号がマイクロ割込レジスタ15aに転送されると、
それまで格納されていたマイクロ割込信号のすべてのビ
ットがクリアされて、0”レベルとなる。
クロ割込信号をそれぞれのビットに対応してセットする
ものである。マイクロ割込レジスタ15bに格納された
マイクロ割込信号は、マイクロ割込レジスタ15aと分
岐判定回路9b及びORゲート31与えられる。また、
マイクロ割込レジスタ15bは、格納されたマイクロ割
込信号がマイクロ割込レジスタ15aに転送されると、
それまで格納されていたマイクロ割込信号のすべてのビ
ットがクリアされて、0”レベルとなる。
分岐判定回路9bは、マイクロ命令レジスタ3の分岐マ
スクフィールドの情報と、マイクロ割込レジスタ15b
に格納されたマイクロ割込信号を入力とし、これらの入
力に対して、分岐判定回路9aと同様の処理を行なうも
のである。したがって、分岐判定回路9bは、分岐判定
回路9aと同様に例えば第2図に示すように構成されて
いる。
スクフィールドの情報と、マイクロ割込レジスタ15b
に格納されたマイクロ割込信号を入力とし、これらの入
力に対して、分岐判定回路9aと同様の処理を行なうも
のである。したがって、分岐判定回路9bは、分岐判定
回路9aと同様に例えば第2図に示すように構成されて
いる。
分岐判定回路9aの出力である分岐成立信号は、選択制
御回路23を構成するANDゲート35の一方の入力に
与えられており、分岐判定回路9bの出力である分岐成
立信号は、選択制御回路23を構成するANDゲート3
7の一方の入力に与えられている。
御回路23を構成するANDゲート35の一方の入力に
与えられており、分岐判定回路9bの出力である分岐成
立信号は、選択制御回路23を構成するANDゲート3
7の一方の入力に与えられている。
ANDゲート35は、その他方の入力に、μv1込分岐
命令Aがデコードされた時に゛′1″レベルとなるデコ
ーダ7の出力が与えられており、その出力がORゲート
39の一方の入力に与えられている。ANDゲート37
は、その他方の入力に、μ割込分岐命令Bがデコードさ
れた時に111 ITレベルどなるデコーダ7の出力が
与えられており、その出力はORゲート39の他方の入
力に与えられている。ORゲート39の出力は、NOT
ORゲート31力が一方の入力に与えられるANDゲー
ト41の他方の入力に与えられている。ANDゲート4
1は、その出力が選択回路11に与えられており、この
ANDゲート41は、第1の実施例で示したANDゲー
ト25の選択回路11に対する作用と同様に選択回路1
1に対して作用する。
命令Aがデコードされた時に゛′1″レベルとなるデコ
ーダ7の出力が与えられており、その出力がORゲート
39の一方の入力に与えられている。ANDゲート37
は、その他方の入力に、μ割込分岐命令Bがデコードさ
れた時に111 ITレベルどなるデコーダ7の出力が
与えられており、その出力はORゲート39の他方の入
力に与えられている。ORゲート39の出力は、NOT
ORゲート31力が一方の入力に与えられるANDゲー
ト41の他方の入力に与えられている。ANDゲート4
1は、その出力が選択回路11に与えられており、この
ANDゲート41は、第1の実施例で示したANDゲー
ト25の選択回路11に対する作用と同様に選択回路1
1に対して作用する。
以上説明したように、この発明の第2の実施例は構成さ
れており、次にこの第2の実施例の作用を説明する。
れており、次にこの第2の実施例の作用を説明する。
まず、はじめにマイクロ割込が発生しておらず、通常の
機械語命令を実行している場合は、第1の実施例と同様
である。また、マイクロ割込が発生で、このマイクロ割
込が受け付けられるまでは、201番地の値がマイクロ
アドレスレジスタ5にセットされた後に、マイクロ割込
レジスタ15bの内容がマイクロ割込レジスタ15aに
転送されて、マイクロ割込レジスタ15bの内容がすべ
て“OIIレベルにクリアされる以外は、第1の実施例
と同様にしてマイクロ割込を処理するマイクロプログラ
ムへの分岐が行なわれる。
機械語命令を実行している場合は、第1の実施例と同様
である。また、マイクロ割込が発生で、このマイクロ割
込が受け付けられるまでは、201番地の値がマイクロ
アドレスレジスタ5にセットされた後に、マイクロ割込
レジスタ15bの内容がマイクロ割込レジスタ15aに
転送されて、マイクロ割込レジスタ15bの内容がすべ
て“OIIレベルにクリアされる以外は、第1の実施例
と同様にしてマイクロ割込を処理するマイクロプログラ
ムへの分岐が行なわれる。
次に、この第2の実施例の特徴である例えばWP保護違
反のマイクロ割込がIloからのマイクロ割込よりも遅
れて発生した場合について説明する。
反のマイクロ割込がIloからのマイクロ割込よりも遅
れて発生した場合について説明する。
Iloからのマイクロ割込信号のみが゛1″レベルにな
ると、このマイクロ割込信号に対応したマイクロ割込レ
ジスタ15bの出力だけが″“1パレベルとなる。この
結果、ORゲート31の出力がij 1 uレベルとな
り、マスクレジスタ27も“1″レベルなので、選択回
路13は、” 201 ”番地を選択する。この時、マ
イクロ割込レジスタ15bの値は、マイクロ割込レジス
タ15aに転送されて、マイクロ割込レジスタ15aの
出力のうち、マイクロ割込レジスタ15bの“1パレベ
ルの出力に対応した出力だけがii 1 +tレベルに
なる。
ると、このマイクロ割込信号に対応したマイクロ割込レ
ジスタ15bの出力だけが″“1パレベルとなる。この
結果、ORゲート31の出力がij 1 uレベルとな
り、マスクレジスタ27も“1″レベルなので、選択回
路13は、” 201 ”番地を選択する。この時、マ
イクロ割込レジスタ15bの値は、マイクロ割込レジス
タ15aに転送されて、マイクロ割込レジスタ15aの
出力のうち、マイクロ割込レジスタ15bの“1パレベ
ルの出力に対応した出力だけがii 1 +tレベルに
なる。
この時、WP保護違反のマイクロ割込が発生したとする
。すなわち、マイクロ割込信号41のうちWP保護違反
に対応したマイクロ割込信号が111 IIレベルにな
る。そして、マイクロ割込レジスタ15bにセットされ
る。この結果、マイクロ割込レジスタ15bの出力のう
ち、対応した出力が“1”レベルになるが、マスクレジ
スタ27は“0″レベルなので、ORゲート31の出力
が“1”レベルであっても、再マイクロ割込は発生しな
い。また、マイクロ割込レジスタ15aへはWP保護違
反のマイクロ割込信号は転送されないので、マイクロ割
込レジスタ15aのWP保護違反のマイクロ割込信号に
対応した出力は“O”レベルのままである。もちろん、
マイクロ割込レジスタ15bの対応する出力は゛1″レ
ベルになっている。
。すなわち、マイクロ割込信号41のうちWP保護違反
に対応したマイクロ割込信号が111 IIレベルにな
る。そして、マイクロ割込レジスタ15bにセットされ
る。この結果、マイクロ割込レジスタ15bの出力のう
ち、対応した出力が“1”レベルになるが、マスクレジ
スタ27は“0″レベルなので、ORゲート31の出力
が“1”レベルであっても、再マイクロ割込は発生しな
い。また、マイクロ割込レジスタ15aへはWP保護違
反のマイクロ割込信号は転送されないので、マイクロ割
込レジスタ15aのWP保護違反のマイクロ割込信号に
対応した出力は“O”レベルのままである。もちろん、
マイクロ割込レジスタ15bの対応する出力は゛1″レ
ベルになっている。
次に、マイクロ割込処理のマイクロ70グラムでμ割込
分岐命令Aを実行する際、(10からのマイクロ割込だ
けが“1″レベルなので、外部割込ハンドラへの分岐の
処理を行う。
分岐命令Aを実行する際、(10からのマイクロ割込だ
けが“1″レベルなので、外部割込ハンドラへの分岐の
処理を行う。
そして、外部割込のハンドラへの分岐処理のマイクロプ
ログラムの最後で、μ割込分岐命令Bで110からのマ
イクロ割込受付は以降に発生したマイクロ割込の有無を
調べる。この時、マイクロ割込の種類により、新に発生
したマイクロ割込に対応する割込みハンドラに分岐する
か、無視して外部割込のハンドラの処理を行うかを判断
する。
ログラムの最後で、μ割込分岐命令Bで110からのマ
イクロ割込受付は以降に発生したマイクロ割込の有無を
調べる。この時、マイクロ割込の種類により、新に発生
したマイクロ割込に対応する割込みハンドラに分岐する
か、無視して外部割込のハンドラの処理を行うかを判断
する。
次に、μ割込分岐命令Bの実行について説明する。
まず、μ割込分岐命令BがμROM1から読み出されて
、マイクロ命令レジスタ3にセットされると、デコーダ
7はこれをデコードして、μ割込分岐命令Bに対応した
出力信号が゛1″レベルになる。一方、マイクロ命令レ
ジスタ3の分岐マスクフィールドの出力は、μ割込レジ
スタ15bの出力とともに、分岐判定回路9bに入力さ
れる。
、マイクロ命令レジスタ3にセットされると、デコーダ
7はこれをデコードして、μ割込分岐命令Bに対応した
出力信号が゛1″レベルになる。一方、マイクロ命令レ
ジスタ3の分岐マスクフィールドの出力は、μ割込レジ
スタ15bの出力とともに、分岐判定回路9bに入力さ
れる。
この時、分岐マスクフィールドの出力で、上記の割込ハ
ンドラ先頭番地不正に対応するビットが“1″レベルな
らば、分岐判定回路9bの分岐成立信号は“1ルベルに
なる。この結果、ANDゲート41の出力は“1″レベ
ルとなり、選択回路11は、マイクロ命令レジスタ3の
分岐先アドレスフィールドの出力を選択する。そして、
この値がマイクロアドレスレジスタ5にセットされる。
ンドラ先頭番地不正に対応するビットが“1″レベルな
らば、分岐判定回路9bの分岐成立信号は“1ルベルに
なる。この結果、ANDゲート41の出力は“1″レベ
ルとなり、選択回路11は、マイクロ命令レジスタ3の
分岐先アドレスフィールドの出力を選択する。そして、
この値がマイクロアドレスレジスタ5にセットされる。
これ以降、メモリ保護違反の割込ハンドラ先頭番地不正
の処理が開始される。
の処理が開始される。
このようにして、μ割込分岐命令Bを実行させることに
より、マイクロ割込処理のマイクロプログラム実行中に
発生したマイクロ割込にも対処することができる。
より、マイクロ割込処理のマイクロプログラム実行中に
発生したマイクロ割込にも対処することができる。
次に、マイクロ割込処理のマイクロプログラム実行中、
つまり、割込ハンドラへの分岐処理中の不正発生による
再マイクロ割込について説明する。
つまり、割込ハンドラへの分岐処理中の不正発生による
再マイクロ割込について説明する。
例えば、上記のWP保護違反のマイクロ割込処理中に、
割込ベクトルテーブルの値が不正であったとする。すな
わち、割込ベクトルテーブル内にある割込ハンドラの先
頭番地が不正であったとする。この不正が発生すると、
マイクロ割込信号のセグメントのリミットオーバーに対
応するビットが″1″レベルになる。そして、マイクロ
割込レジスタ15bの対応するビットを゛1″レベルに
セットする。なお、マイクロ割込レジスタ15bは、マ
イクロ割込受付は時、すなわち、マイクロ割込レジスタ
15bの内容をμ割込レジスタ15aに転送する時、゛
0″レベルにクリアされている。ところが、この時、マ
スクレジスタ27は110 IIレベルのままであるた
め、再マイクロ割込は発生しない。したがって、マイク
ロ割込レジスタ15bの内容はマイクロ割込レジスタ1
5aには転送されない。しかし、このマイクロ割込発生
は、μ割込分岐命令Bで分岐マスクフィールドの対応す
るビットを“1″レベルにして、μ割込分岐命令Bを実
行することにより調べることができる。
割込ベクトルテーブルの値が不正であったとする。すな
わち、割込ベクトルテーブル内にある割込ハンドラの先
頭番地が不正であったとする。この不正が発生すると、
マイクロ割込信号のセグメントのリミットオーバーに対
応するビットが″1″レベルになる。そして、マイクロ
割込レジスタ15bの対応するビットを゛1″レベルに
セットする。なお、マイクロ割込レジスタ15bは、マ
イクロ割込受付は時、すなわち、マイクロ割込レジスタ
15bの内容をμ割込レジスタ15aに転送する時、゛
0″レベルにクリアされている。ところが、この時、マ
スクレジスタ27は110 IIレベルのままであるた
め、再マイクロ割込は発生しない。したがって、マイク
ロ割込レジスタ15bの内容はマイクロ割込レジスタ1
5aには転送されない。しかし、このマイクロ割込発生
は、μ割込分岐命令Bで分岐マスクフィールドの対応す
るビットを“1″レベルにして、μ割込分岐命令Bを実
行することにより調べることができる。
したがって、この発明の第2の実施例にあっては、ある
マイクロ割込よりも遅れて発生した優先度の高いマイク
ロ割込に対しても対処することが可能となる。さらに、
マイクロ割込処理のマイクロプログラム実行中に、その
不正により発生したマイクロ割込に対処することもでき
るようになる。
マイクロ割込よりも遅れて発生した優先度の高いマイク
ロ割込に対しても対処することが可能となる。さらに、
マイクロ割込処理のマイクロプログラム実行中に、その
不正により発生したマイクロ割込に対処することもでき
るようになる。
[発明の効果]
以上説明したように、この発明によれば、発生したマイ
クロ割込をそれぞれ処理するマイクロ割込処理プログラ
ムへの分岐動作を、マイクロ命令によって行なうように
したので、複数のマイクロ割込処理における実行順位に
対して柔軟に対処するとともに、マイクロ割込の追加及
び変更が容易となる情報処理装置を提供することができ
る。
クロ割込をそれぞれ処理するマイクロ割込処理プログラ
ムへの分岐動作を、マイクロ命令によって行なうように
したので、複数のマイクロ割込処理における実行順位に
対して柔軟に対処するとともに、マイクロ割込の追加及
び変更が容易となる情報処理装置を提供することができ
る。
第1図はこの発明の第1の実施例に係る情報処理装置の
構成図、第2図は第1図及び第3図に示す情報処理装置
における分岐判定回路の一構成図、第3図はこの発明の
第2の実施例に係る情報処理装置の構成図である。 1・・・μROM 3・・・マイクロ命令レジスタ 5・・・マイクロアドレスレジスタ 9a、9b・・・分岐判定回路 11・・・選択回路 15a、15b・・・マイクロ割込レジスタ23・・・
選択制御回路
構成図、第2図は第1図及び第3図に示す情報処理装置
における分岐判定回路の一構成図、第3図はこの発明の
第2の実施例に係る情報処理装置の構成図である。 1・・・μROM 3・・・マイクロ命令レジスタ 5・・・マイクロアドレスレジスタ 9a、9b・・・分岐判定回路 11・・・選択回路 15a、15b・・・マイクロ割込レジスタ23・・・
選択制御回路
Claims (2)
- (1)複数のマイクロ割込をマイクロプログラム制御方
式によつて処理する情報処理装置にして、発生した少な
くとも1つ以上のマイクロ割込の情報を格納する第1の
記憶手段と、 前記複数のそれぞれのマイクロ割込を処理するマイクロ
割込処理プログラムと、前記第1の記憶手段に格納され
るマイクロ割込の情報に対応して分岐条件を示すマスク
情報を備えた複数のマイクロ命令を含み前記複数のマイ
クロ割込の少なくとも1つ以上が発生してこれを受け付
けると実行される共通のマイクロ割込処理プログラムを
格納するマイクロ命令記憶手段と、 前記マイクロ命令記憶手段から実行処理しようとするマ
イクロ命令を読み出す読出し手段と、前記マスク情報を
含む複数のマイクロ命令を所定の順序で実行して、前記
マスク情報と前記第1の記憶手段に格納された複数のマ
イクロ割込の情報を比較することにより実行するマイク
ロ割込を選択する第1の比較選択手段と、 前記マイクロ命令記憶手段から読出されるマイクロ命令
の格納領域を前記読出し手段に指令し、前記第1の比較
選択手段により選択されたマイクロ割込のマイクロ割込
処理プログラムを実行中のプログラムから分岐して実行
するために、選択されたマイクロ割込のマイクロ割込処
理プログラムの読出しを前記読出し手段に指令する指令
手段とを有することを特徴とする情報処理装置。 - (2)複数のマイクロ割込をマイクロプログラム制御方
式によつて処理する情報処理装置にして、発生した少な
くとも1つ以上のマイクロ割込の情報を格納する第1の
記憶手段と、 前記第1の記憶手段に格納された情報のマイクロ割込の
発生後に発生したマイクロ割込の情報を格納する第2の
記憶手段と、 前記複数のそれぞれのマイクロ割込を処理するマイロ割
込処理プログラムと、前記第1及び第2の記憶手段に格
納されるマイクロ割込の情報に対応して分岐条件を示す
マスク情報を備えた複数のマイクロ命令を含み前記複数
のマイクロ割込の少なくとも1つ以上が発生してこれを
受け付けると実行される共通のマイクロ割込処理プログ
ラムを格納するマイクロ命令記憶手段と、 前記マイクロ命令記憶手段から実行処理しようとするマ
イクロ命令を読出す読出し手段と、前記マスク情報を含
む複数のマイクロ命令を所定の順序で実行して前記第1
の記憶手段に格納された複数のマイクロ割込の情報と前
記マスク情報を比較することによりマイクロ割込を選択
する第1の比較選択手段と、 前記マスク情報を含む複数のマイクロ命令を所定の順序
で実行して前記第2の記憶手段に格納された複数のマイ
クロ割込の情報と前記マスク情報を比較することにより
マイクロ割込を選択する第2の比較選択手段と、 前記マイクロ命令記憶手段から読出されるマイクロ命令
の格納領域を前記読出し手段に指令し、前記第1及び第
2の比較選択手段により選択されたマイクロ割込のマイ
クロ割込処理プログラムを実行中のプログラムから分岐
して実行するために、実行するマイクロ割込のマイクロ
割込処理プログラムの読出しを前記読出し手段に指令す
る指令手段と を有することを特徴とする情報処理装置。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP62308754A JPH01150939A (ja) | 1987-12-08 | 1987-12-08 | 情報処理装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP62308754A JPH01150939A (ja) | 1987-12-08 | 1987-12-08 | 情報処理装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
JPH01150939A true JPH01150939A (ja) | 1989-06-13 |
Family
ID=17984889
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP62308754A Pending JPH01150939A (ja) | 1987-12-08 | 1987-12-08 | 情報処理装置 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JPH01150939A (ja) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH0486918A (ja) * | 1990-07-31 | 1992-03-19 | Nec Corp | マイクロプログラム制御装置 |
JP2017076300A (ja) * | 2015-10-16 | 2017-04-20 | 三菱電機株式会社 | 制御装置およびレジスタの故障復帰方法 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS51138356A (en) * | 1975-05-26 | 1976-11-29 | Mitsubishi Electric Corp | Priority interruption control circuit |
JPS55123736A (en) * | 1979-03-16 | 1980-09-24 | Hitachi Ltd | Interrupt control system |
JPS59105151A (ja) * | 1982-12-07 | 1984-06-18 | Fujitsu Ltd | 割込み処理制御方式 |
JPS60117338A (ja) * | 1983-11-14 | 1985-06-24 | タンデム コンピユーターズ インコーポレーテツド | 割込みベクトリング装置及び方法 |
-
1987
- 1987-12-08 JP JP62308754A patent/JPH01150939A/ja active Pending
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS51138356A (en) * | 1975-05-26 | 1976-11-29 | Mitsubishi Electric Corp | Priority interruption control circuit |
JPS55123736A (en) * | 1979-03-16 | 1980-09-24 | Hitachi Ltd | Interrupt control system |
JPS59105151A (ja) * | 1982-12-07 | 1984-06-18 | Fujitsu Ltd | 割込み処理制御方式 |
JPS60117338A (ja) * | 1983-11-14 | 1985-06-24 | タンデム コンピユーターズ インコーポレーテツド | 割込みベクトリング装置及び方法 |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH0486918A (ja) * | 1990-07-31 | 1992-03-19 | Nec Corp | マイクロプログラム制御装置 |
JP2017076300A (ja) * | 2015-10-16 | 2017-04-20 | 三菱電機株式会社 | 制御装置およびレジスタの故障復帰方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US3825902A (en) | Interlevel communication in multilevel priority interrupt system | |
US4074353A (en) | Trap mechanism for a data processing system | |
US4636944A (en) | Multi-level priority micro-interrupt controller | |
NO155830B (no) | Databehandlingssystem. | |
JPS5960652A (ja) | デ−タ処理装置 | |
US4251859A (en) | Data processing system with an enhanced pipeline control | |
US3706077A (en) | Multiprocessor type information processing system with control table usage indicator | |
JPH0348537B2 (ja) | ||
US5003468A (en) | Guest machine execution control system for virutal machine system | |
US5124910A (en) | Microprogram control apparatus for generating a branch condition signal to be designated by a micro-branch instruction | |
JPH01150939A (ja) | 情報処理装置 | |
CN108985098A (zh) | 数据处理器 | |
JPS6290728A (ja) | 割込処理方法 | |
JPS59206947A (ja) | マイクロプログラム制御装置 | |
JPH0377137A (ja) | 情報処理装置 | |
JPS60108973A (ja) | 配列要素の最小値および最小要素の要素番号を求める方法 | |
JPH02191042A (ja) | 割込み制御方式 | |
JP2583614B2 (ja) | ベクトル演算装置 | |
JPS60105043A (ja) | 情報処理方式 | |
JPS62259139A (ja) | マイクロプログラム制御装置 | |
JPS599758A (ja) | マイクロプログラム制御デ−タ処理装置 | |
JPS607295B2 (ja) | デ−タ処理装置 | |
JPS6057440A (ja) | 情報処理装置 | |
JPS6367635A (ja) | マイクロプログラム制御装置 | |
JPS61117625A (ja) | マイクロプログラム条件分岐方式 |