JPH01276232A - データ処理装置 - Google Patents
データ処理装置Info
- Publication number
- JPH01276232A JPH01276232A JP10532288A JP10532288A JPH01276232A JP H01276232 A JPH01276232 A JP H01276232A JP 10532288 A JP10532288 A JP 10532288A JP 10532288 A JP10532288 A JP 10532288A JP H01276232 A JPH01276232 A JP H01276232A
- Authority
- JP
- Japan
- Prior art keywords
- instruction
- type
- program
- instructions
- microprogram
- 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.)
- Granted
Links
- 230000000694 effects Effects 0.000 abstract description 7
- 238000000034 method Methods 0.000 description 5
- 238000010586 diagram Methods 0.000 description 4
- 230000006870 function Effects 0.000 description 3
- 238000001514 detection method Methods 0.000 description 2
- 238000006073 displacement reaction Methods 0.000 description 1
- 230000000717 retained effect Effects 0.000 description 1
Landscapes
- Executing Machine-Instructions (AREA)
Abstract
(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。
め要約のデータは記録されません。
Description
【発明の詳細な説明】
1丘立1
本発明はデータ処理装置に関し、特に制御記憶に格納さ
れたマイクロプログラムにより制御されるデータ処理装
置に関する。
れたマイクロプログラムにより制御されるデータ処理装
置に関する。
良米及韮
従来、この種のデータ処理装置においては、処理性能の
向上を計るなめにマイクロプログラムを構成するマイク
ロ命令が1ステツプで実行する機能を多くし、並列処理
性を高めなビット構成の大きな、いわゆる水平型マイク
ロ命令化が屈著である。
向上を計るなめにマイクロプログラムを構成するマイク
ロ命令が1ステツプで実行する機能を多くし、並列処理
性を高めなビット構成の大きな、いわゆる水平型マイク
ロ命令化が屈著である。
特に基本演算命令など使用頻度の高いものについては、
上述の水平型マイクロ命令化の特徴が最大限にいかせる
ようにハードウェアの構造も最適化されるので、マイク
ロプログラムのステップ数が極めて少なくなるように実
現されている。
上述の水平型マイクロ命令化の特徴が最大限にいかせる
ようにハードウェアの構造も最適化されるので、マイク
ロプログラムのステップ数が極めて少なくなるように実
現されている。
しかしながら、他の多くの命令、たとえば各種制御命令
や主記憶上でのデータハンドリングを繰返すようなリス
ト処理命令などではシーケンシャルな処理が多い。
や主記憶上でのデータハンドリングを繰返すようなリス
ト処理命令などではシーケンシャルな処理が多い。
このような従来のデータ処理装置では、シーケンシャル
な処理において高度に水平化されたマイクロ命令を使用
しても、1ステツプで実行される機能の並列度が高くな
いため、そのマイクロ命令の未使用フィールドが多くな
り、マイクロプログラムを格納する制御記憶のワード方
向の使用効率が悪いという欠点がある。
な処理において高度に水平化されたマイクロ命令を使用
しても、1ステツプで実行される機能の並列度が高くな
いため、そのマイクロ命令の未使用フィールドが多くな
り、マイクロプログラムを格納する制御記憶のワード方
向の使用効率が悪いという欠点がある。
丸肌立旦週
本発明は上記のような従来のものの欠点を除去すべくな
されたもので、マイクロプログラムを格納する制御記憶
の使用効率を向上させることができ、制御記憶の容量を
縮小することができるデータ処理装置の提供を目的とす
る。
されたもので、マイクロプログラムを格納する制御記憶
の使用効率を向上させることができ、制御記憶の容量を
縮小することができるデータ処理装置の提供を目的とす
る。
i匪立1羞
本発明によるデータ処理装置は、制御記憶に格納された
マイクロプログラムにより制御されるデータ処理装置で
あって、第1および第2の命令で構成される命令プログ
ラムを格納する第1の格納手段と、前記第1および前記
第2の命令を格納する第2の格納手段と、前記第1およ
び前記第2の格納手段から読出された命令が前記第1の
命令であるか前記第2の命令であるかを識別する識別手
段と、前記識別手段により前記第2の命令であると識別
されたときに、前記第1の格納手段から読出された前記
命令プログラムにより前記第2の命令を実行する実行手
段とを有し、前記第1の命令を前記マイクロプログラム
により実現し、前記第2の命令を前記第1の格納手段に
格納された前記命令プログラムにより実現するようにし
たことを特徴とする。
マイクロプログラムにより制御されるデータ処理装置で
あって、第1および第2の命令で構成される命令プログ
ラムを格納する第1の格納手段と、前記第1および前記
第2の命令を格納する第2の格納手段と、前記第1およ
び前記第2の格納手段から読出された命令が前記第1の
命令であるか前記第2の命令であるかを識別する識別手
段と、前記識別手段により前記第2の命令であると識別
されたときに、前記第1の格納手段から読出された前記
命令プログラムにより前記第2の命令を実行する実行手
段とを有し、前記第1の命令を前記マイクロプログラム
により実現し、前記第2の命令を前記第1の格納手段に
格納された前記命令プログラムにより実現するようにし
たことを特徴とする。
K隻頂
次に、本発明の一実施例について図面を参照して説明す
る。
る。
第1図は本発明の一実施例の構成を示すブロック図であ
る0図において、本発明の一実施例によるデータ処理装
置は、主記憶1と、命令フェッチ回路2と、命令解析用
メモリ3と、制御記憶回路4と、演算回路5とを含んで
構成されている。
る0図において、本発明の一実施例によるデータ処理装
置は、主記憶1と、命令フェッチ回路2と、命令解析用
メモリ3と、制御記憶回路4と、演算回路5とを含んで
構成されている。
主記憶1は所定の処理を行うソフトウェアプログラムが
格納されたソフトウェアプログラム部11と、第1種お
よび第2種の命令で記述された命令プログラムが格納さ
れた命令プログラム部12とを含んで構成されている。
格納されたソフトウェアプログラム部11と、第1種お
よび第2種の命令で記述された命令プログラムが格納さ
れた命令プログラム部12とを含んで構成されている。
ここで、ソフトウェアプログラムは第1種の命令と第2
種の命令とにより構成されており、第1種の命令は制御
記憶回路4に格納されたマイクロプログラムにより実現
され、第2種の命令は命令プログラム部12に格納され
た命令プログラムにより実現される。
種の命令とにより構成されており、第1種の命令は制御
記憶回路4に格納されたマイクロプログラムにより実現
され、第2種の命令は命令プログラム部12に格納され
た命令プログラムにより実現される。
また、第1種の命令は水平型マイクロ命令の並列処理の
効果が充分に発揮できる基本命令であり、一般にソフト
ウェアプログラムに使用される頻度が格段に高い命令で
ある。第2種の命令はマイクロプログラムで実現しよう
とすると水平型マイクロ命令の並列処理の効果がそれほ
ど発揮できない命令であり、むしろ垂直型のマイクロ命
令に近い使い方になる命令である。
効果が充分に発揮できる基本命令であり、一般にソフト
ウェアプログラムに使用される頻度が格段に高い命令で
ある。第2種の命令はマイクロプログラムで実現しよう
とすると水平型マイクロ命令の並列処理の効果がそれほ
ど発揮できない命令であり、むしろ垂直型のマイクロ命
令に近い使い方になる命令である。
命令フェッチ回路2は命令アドレスレジスタ21と、命
令バッファレジスタ22と、分岐アドレス生成回路23
と、逐次アドレス生成回路24と、命令カウンタ25と
、命令カウンタ退避レジスタ26と、ポインタレジスタ
27と、セレクタ28とにより構成されている。
令バッファレジスタ22と、分岐アドレス生成回路23
と、逐次アドレス生成回路24と、命令カウンタ25と
、命令カウンタ退避レジスタ26と、ポインタレジスタ
27と、セレクタ28とにより構成されている。
命令解析用メモリ3には命令の処理のマイクロプログラ
ム制御に必要な初期値としての制御情報31〜33が格
納されている。
ム制御に必要な初期値としての制御情報31〜33が格
納されている。
制御記憶回路4はマイクロプログラムが格納された制御
記憶41と、マイクロ命令シーゲンサ42と、マイクロ
アドレスレジスタ4.3と、マイクロ命令レジスタ44
とにより構成されている。
記憶41と、マイクロ命令シーゲンサ42と、マイクロ
アドレスレジスタ4.3と、マイクロ命令レジスタ44
とにより構成されている。
演算回路5は制御記憶回路4により制御され、第1種の
命令で定義された機能を実現するためのマイクロプログ
ラムにより各種の演算処理を行う。
命令で定義された機能を実現するためのマイクロプログ
ラムにより各種の演算処理を行う。
第2図は本発明の一実施例のソフトウェアプログラムの
シーケンスを示す図である0図において、A1−A4お
よびAa〜Adは制御記憶回路4に格納されたマイクロ
プログラムにより実現される第1種の命令を示し、B1
は命令プログラム部12に格納された命令プログラムに
より実現される第2種の命令を示している。すなわち、
第2種の命令B1は第1種の命令Aa〜Adにより記述
された命令プログラムにより実現される。
シーケンスを示す図である0図において、A1−A4お
よびAa〜Adは制御記憶回路4に格納されたマイクロ
プログラムにより実現される第1種の命令を示し、B1
は命令プログラム部12に格納された命令プログラムに
より実現される第2種の命令を示している。すなわち、
第2種の命令B1は第1種の命令Aa〜Adにより記述
された命令プログラムにより実現される。
次に、第1図と第2図とを用いて本発明の一実施例の動
作について説明する。
作について説明する。
主記憶1のソフトウェアプログラム部11に格納された
ソフトウェアプログラムの命令は、命令フェッチ回路2
の命令アドレスレジスタ21に保持されたアドレスによ
り主記憶1から読出され、この読出されたソフトウェア
プログラムの命令は命令バッファレジスタ22に格納さ
れる。
ソフトウェアプログラムの命令は、命令フェッチ回路2
の命令アドレスレジスタ21に保持されたアドレスによ
り主記憶1から読出され、この読出されたソフトウェア
プログラムの命令は命令バッファレジスタ22に格納さ
れる。
命令の取出しは、実際にその命令が実行されるときに命
令バッファレジスタ22に到着済みであるように先取り
する、いわゆるブリフェッチにより行われるのが一般的
である。
令バッファレジスタ22に到着済みであるように先取り
する、いわゆるブリフェッチにより行われるのが一般的
である。
命令バッファレジスタ22に格納された命令の命令コー
ド部221は命令解析用メモリ3に供給され、命令解析
用メモリ3からその命令の処理のマイクロプログラム制
御に必要な初期値として制御情報31〜33が読出され
る。
ド部221は命令解析用メモリ3に供給され、命令解析
用メモリ3からその命令の処理のマイクロプログラム制
御に必要な初期値として制御情報31〜33が読出され
る。
制御情報32はその命令が第1種の命令であるか第2種
の命令であるかを示す情報であり、命令フェッチ回路2
の分岐アドレス生成回路23と命令カウンタ退避レジス
タ26とポインタレジスタ27と、制御記憶回路4のマ
イクロ命令シーケンサ42とに供給される。
の命令であるかを示す情報であり、命令フェッチ回路2
の分岐アドレス生成回路23と命令カウンタ退避レジス
タ26とポインタレジスタ27と、制御記憶回路4のマ
イクロ命令シーケンサ42とに供給される。
このとき、制御情報32が第1種の命令AI 。
A2であることを示していれば、マイクロ命令シーケン
サ42は制御情報31をこの命令A1 、 A2の処理
を実現するマイクロプログラムの先頭番地として制御記
憶41に供給し、制御記憶41のその番地からマイクロ
命令を読出す、読出されたマイクロ命令は一旦マイクロ
命令レジスタ44に保持され、マイクロ命令レジスタ4
4から演算回路5に提供される。
サ42は制御情報31をこの命令A1 、 A2の処理
を実現するマイクロプログラムの先頭番地として制御記
憶41に供給し、制御記憶41のその番地からマイクロ
命令を読出す、読出されたマイクロ命令は一旦マイクロ
命令レジスタ44に保持され、マイクロ命令レジスタ4
4から演算回路5に提供される。
尚、このマイクロ命令には次のマイクロ命令を読出すア
ドレスの決定方法やそのアドレスそのものの情報が含ま
れており、この情報をマイクロ命令シーケンサ42がマ
イクロ命令レジスタ44から受取ることにより次のマイ
クロ命令の読出しが行われる。以下、上述の処理と同様
にして逐次的に目的のマイクロプログラムが実行されて
いく。
ドレスの決定方法やそのアドレスそのものの情報が含ま
れており、この情報をマイクロ命令シーケンサ42がマ
イクロ命令レジスタ44から受取ることにより次のマイ
クロ命令の読出しが行われる。以下、上述の処理と同様
にして逐次的に目的のマイクロプログラムが実行されて
いく。
制御情報32が第2種の命令B1であることを示してい
れば、マイクロ命令シーケンサ42は制御記憶41から
のマイクロ命令の読出しを停止し、マイクロ命令レジス
タ44にはN0P(ノーオペレーション)のマイクロ命
令が保持されて演算回路5の動作が一時中断される。
れば、マイクロ命令シーケンサ42は制御記憶41から
のマイクロ命令の読出しを停止し、マイクロ命令レジス
タ44にはN0P(ノーオペレーション)のマイクロ命
令が保持されて演算回路5の動作が一時中断される。
このとき同時に、制御情報32は分岐アドレス生成回路
23に提供され、分岐アドレス生成回路23は制御情報
31をこの命令B1の処理を実現する命令プログラム(
第1種の命令Aa〜Adで構成されている)の開始番地
としてセレクタ28を介して命令アドレスレジスタ21
に出力して保持させる。命令アドレスレジスタ21では
この開始番地を主記憶1に出力し、主記憶1の命令プロ
グラム部12から命令プログラムを読出す動作が起動さ
れる。
23に提供され、分岐アドレス生成回路23は制御情報
31をこの命令B1の処理を実現する命令プログラム(
第1種の命令Aa〜Adで構成されている)の開始番地
としてセレクタ28を介して命令アドレスレジスタ21
に出力して保持させる。命令アドレスレジスタ21では
この開始番地を主記憶1に出力し、主記憶1の命令プロ
グラム部12から命令プログラムを読出す動作が起動さ
れる。
また、この制御情報32は命令カウンタ退避レジスタ2
6に供給され、その命令B1が主記憶1から読出された
ときの命令カウンタ25の値(命令B1のアドレス)を
格納するように命令カウンタ退避レジスタ26に指示す
る。
6に供給され、その命令B1が主記憶1から読出された
ときの命令カウンタ25の値(命令B1のアドレス)を
格納するように命令カウンタ退避レジスタ26に指示す
る。
命令カウンタ退避レジスタ26は4つの格納場所261
〜264から構成され、退避情報(命令カウンタ25の
値)の格納(書込み)のときにはポインタレジスタ27
により番地が特定される。命令カウンタ退避レジスタ2
6に何も格納されていない状態では、ポインタレジスタ
27は格納場所261を指定している。
〜264から構成され、退避情報(命令カウンタ25の
値)の格納(書込み)のときにはポインタレジスタ27
により番地が特定される。命令カウンタ退避レジスタ2
6に何も格納されていない状態では、ポインタレジスタ
27は格納場所261を指定している。
制御情報32によって格納場所261に命令カウンタ2
5の値が格納されると、ポインタレジスタ27は更新さ
れて格納場所262を指定し、以下命令カウンタ退避レ
ジスタ26に退避情報が格納される度にポインタレジス
タ27が更新され、格納場所263.264が順次指定
されることになる。
5の値が格納されると、ポインタレジスタ27は更新さ
れて格納場所262を指定し、以下命令カウンタ退避レ
ジスタ26に退避情報が格納される度にポインタレジス
タ27が更新され、格納場所263.264が順次指定
されることになる。
逆に、命令カウンタ退避レジスタ26から退避情報が取
出されるときには、ポインタレジスタ27の指定してい
る格納場所の1つ前、たとえば格納場所262が指定さ
れていれば格納場所261から退避情報を読出して、同
時にポインタレジスタ27も退避情報が読出された格納
場所を指定するように更新される。すなわち、命令カウ
ンタ退避レジスタ26はポインタレジスタ27の制御に
よってLIFO(ラストインファーストアウト;後入れ
先出し)スタックとして動作を行う。
出されるときには、ポインタレジスタ27の指定してい
る格納場所の1つ前、たとえば格納場所262が指定さ
れていれば格納場所261から退避情報を読出して、同
時にポインタレジスタ27も退避情報が読出された格納
場所を指定するように更新される。すなわち、命令カウ
ンタ退避レジスタ26はポインタレジスタ27の制御に
よってLIFO(ラストインファーストアウト;後入れ
先出し)スタックとして動作を行う。
命令プログラム部12から読出された命令プログラムの
第1の命令Aaは命令バッファレジスタ22に格納され
、この第1の命令Aaの命令コード部221が命令解析
用メモリ3に供給され、命令解析用メモリ3から制御情
報31〜33が読出される。
第1の命令Aaは命令バッファレジスタ22に格納され
、この第1の命令Aaの命令コード部221が命令解析
用メモリ3に供給され、命令解析用メモリ3から制御情
報31〜33が読出される。
この第1の命令Aaは第1種の命令であるので、上述の
第1種の命令AI 、A2の場合と同様にして逐次的に
目的のマイクロプログラムが実行されていく。
第1種の命令AI 、A2の場合と同様にして逐次的に
目的のマイクロプログラムが実行されていく。
命令プログラム部12から111次読出される命令プロ
グラムの命令Ab 、ACも第1種の命令であるので、
上述の処理と同様にして実行される。
グラムの命令Ab 、ACも第1種の命令であるので、
上述の処理と同様にして実行される。
命令プログラム部12から読出された命令プログラムの
命令Adは第1種の命令であるが、第2種の命令B1を
実現するための命令プログラムの最後の命令であり、元
のソフトウェアプログラムシーケンス上で命令B1の次
の命令A3に戻るための役割を果たす。
命令Adは第1種の命令であるが、第2種の命令B1を
実現するための命令プログラムの最後の命令であり、元
のソフトウェアプログラムシーケンス上で命令B1の次
の命令A3に戻るための役割を果たす。
すなわち、命令Adは命令カウンタ退避レジスタ26に
保持される番地をベースにした相対分岐命令として定義
される。命令カウンタ退避レジスタ26の格納場所26
1には命令B1が読出されたときの命令カウンタ25の
値が保持されているので、相対分岐命令の実行によって
、格納場所261に保持された命令カウンタ25の値が
読出されて分岐アドレス生成回路23に供給され、同時
にポインタレジスタ27は格納場所261を指定するよ
うに更新される。
保持される番地をベースにした相対分岐命令として定義
される。命令カウンタ退避レジスタ26の格納場所26
1には命令B1が読出されたときの命令カウンタ25の
値が保持されているので、相対分岐命令の実行によって
、格納場所261に保持された命令カウンタ25の値が
読出されて分岐アドレス生成回路23に供給され、同時
にポインタレジスタ27は格納場所261を指定するよ
うに更新される。
分岐アドレス生成回路23においては、相対分岐命令(
命令Ad )の変位として命令B1の命令語長を設定す
ることにより、命令シーケンス上で命令B1の次の命令
A3の命令アドレスが生成され、この命令アドレスがセ
レクタ28を介して命令アドレスレジスタ21に保持さ
れる。
命令Ad )の変位として命令B1の命令語長を設定す
ることにより、命令シーケンス上で命令B1の次の命令
A3の命令アドレスが生成され、この命令アドレスがセ
レクタ28を介して命令アドレスレジスタ21に保持さ
れる。
同時に、命令アドレスレジスタ21に保持されたアドレ
スにより主記憶1のソフトウェアプログラム部11から
命令A3を読出す動作が起動され、ソフトウェアプログ
ラム部11から読出された命令A3は命令バッファレジ
スタ22に格納される。
スにより主記憶1のソフトウェアプログラム部11から
命令A3を読出す動作が起動され、ソフトウェアプログ
ラム部11から読出された命令A3は命令バッファレジ
スタ22に格納される。
命令A3は第1種の命令であるので、制御記憶41に格
納されたマイクロプログラムによって実現され、上述の
第1種の命令AI 、A2の場合と同様にして逐次的に
ソフトウェアプログラム上の命令が実行されていく。
納されたマイクロプログラムによって実現され、上述の
第1種の命令AI 、A2の場合と同様にして逐次的に
ソフトウェアプログラム上の命令が実行されていく。
第2図においては、第2種の命令B1を実現する命令プ
ログラムが第1種の命令Aa〜Adのみで構成されて場
合を示しているが、第3図に示すように命令プログラム
が他の第2種の命令を含んで構成されていれば、命令プ
ログラムを一層簡略化できることは明白である。
ログラムが第1種の命令Aa〜Adのみで構成されて場
合を示しているが、第3図に示すように命令プログラム
が他の第2種の命令を含んで構成されていれば、命令プ
ログラムを一層簡略化できることは明白である。
第3図においては、A1〜A4 、 Aa \Ad 。
Ai〜Al、Ap〜AWは夫々第1種の命令を示し、8
1〜B3は第2種の命令を示している。このソフトウェ
アプログラムは第1種の命令A1〜A4と第2種の命令
B1とで構成されている。このソフトウェアプログラム
中の第2種の命令B1を実現する命令プログラムは第1
種の命令Aa〜Adと第2種の命令B2とで構成され、
その命令プログラム中の第2種の命令B2を実現する命
令プログラムは第1種の命令Ai〜A11と第2種の命
令B3とで構成されている。また、この命令プログラム
中の第2種の命令B3を実現する命令プログラムは第1
種の命令At1〜AVのみで構成されている。
1〜B3は第2種の命令を示している。このソフトウェ
アプログラムは第1種の命令A1〜A4と第2種の命令
B1とで構成されている。このソフトウェアプログラム
中の第2種の命令B1を実現する命令プログラムは第1
種の命令Aa〜Adと第2種の命令B2とで構成され、
その命令プログラム中の第2種の命令B2を実現する命
令プログラムは第1種の命令Ai〜A11と第2種の命
令B3とで構成されている。また、この命令プログラム
中の第2種の命令B3を実現する命令プログラムは第1
種の命令At1〜AVのみで構成されている。
この第3図に示すように命令プログラムが他の第2種の
命令B2 、B3を含んで構成されている場合には、上
述したように、命令カウンタ退避レジスタ26には第2
種の命令81〜B3が出現する度に、命令カウンタ25
の値がブツシュダウンでスタックされることになり、第
2種の命令B3を実現する命令プログラム中の命令Al
lが実行されるときには格納場所261〜263に各々
命令81〜B3が読出されたときの命令カウンタ25の
値が格納され、ポインタレジスタ27は格納場所264
を指定している。
命令B2 、B3を含んで構成されている場合には、上
述したように、命令カウンタ退避レジスタ26には第2
種の命令81〜B3が出現する度に、命令カウンタ25
の値がブツシュダウンでスタックされることになり、第
2種の命令B3を実現する命令プログラム中の命令Al
lが実行されるときには格納場所261〜263に各々
命令81〜B3が読出されたときの命令カウンタ25の
値が格納され、ポインタレジスタ27は格納場所264
を指定している。
第2種の命令81〜B3夫々を実現する命令プログラム
が順次実行され、第1種の命令AV 、 Am 、Ad
が夫々実行されるときには、命令カウンタ退避レジスタ
26から夫々の命令カウンタ25の値が読出され、それ
らの番地をベースにした相対分岐が実行されるとともに
、ポインタレジスタ27は指定する格納場所を順次格納
場所263,262゜261へと更新していく。
が順次実行され、第1種の命令AV 、 Am 、Ad
が夫々実行されるときには、命令カウンタ退避レジスタ
26から夫々の命令カウンタ25の値が読出され、それ
らの番地をベースにした相対分岐が実行されるとともに
、ポインタレジスタ27は指定する格納場所を順次格納
場所263,262゜261へと更新していく。
上述のように、第2種の命令B1 、B2を実現する命
令プログラム中に他の第2種の命令B2゜B3が夫々出
現し、結果的に多段の命令プログラムが実行されるよう
な場合でも、この命令プログラムの段数の深さか命令カ
ウンタ退避レジスタ26に予め用意した格納場所の数量
以内であれば、論理的に矛盾を生ずることなく実現する
ことが可能となる。
令プログラム中に他の第2種の命令B2゜B3が夫々出
現し、結果的に多段の命令プログラムが実行されるよう
な場合でも、この命令プログラムの段数の深さか命令カ
ウンタ退避レジスタ26に予め用意した格納場所の数量
以内であれば、論理的に矛盾を生ずることなく実現する
ことが可能となる。
また、命令カウンタ退避レジスタ26に予め用意した格
納場所の数量を越えて退避情報の格納が試みられた場合
には、使用中の格納場所への上書きなどによって命令プ
ログラムの暴走を生ずる可能性があるので、退避情報の
格納が格納場所の数量を越えていることを検出する検出
手段を用意し、その検出手段により退避情報の格納が格
納場所の数量を越えていることが検出されたときに、ハ
ードウェアエラーとするなどの処置を取る必要がある。
納場所の数量を越えて退避情報の格納が試みられた場合
には、使用中の格納場所への上書きなどによって命令プ
ログラムの暴走を生ずる可能性があるので、退避情報の
格納が格納場所の数量を越えていることを検出する検出
手段を用意し、その検出手段により退避情報の格納が格
納場所の数量を越えていることが検出されたときに、ハ
ードウェアエラーとするなどの処置を取る必要がある。
格納場所の数量を越えて退避情報の格納が試みられるの
は命令プログラムの設計ミスか、ハードウェアの故障か
のいずれかである。
は命令プログラムの設計ミスか、ハードウェアの故障か
のいずれかである。
このように、マイクロプログラムで実現しようとすると
水平型マイクロ命令の並列処理の効果がそれほど発揮で
きない第2種の命令B1を、水平型マイクロ命令の並列
処理の効果が充分に発揮できる基本命令Aa〜Adを含
んで構成される命令プログラムの実行により実現するこ
とにより、マイクロプログラムを格納する制御記憶41
の使用効率を向上させることができ、制御記憶41の容
量を従来よりも縮小させることができる。
水平型マイクロ命令の並列処理の効果がそれほど発揮で
きない第2種の命令B1を、水平型マイクロ命令の並列
処理の効果が充分に発揮できる基本命令Aa〜Adを含
んで構成される命令プログラムの実行により実現するこ
とにより、マイクロプログラムを格納する制御記憶41
の使用効率を向上させることができ、制御記憶41の容
量を従来よりも縮小させることができる。
また、第2種の命令B1 、B2を実現する命令プログ
ラム中に、他の命令プログラムにより実現される他の第
2種の命令B2 、B3が出現してもその命令プログラ
ムの実行が可能なようにすることによって、命令プログ
ラムの階層化により論理を単純化することができ、命令
プログラムの容量を縮小することができる。
ラム中に、他の命令プログラムにより実現される他の第
2種の命令B2 、B3が出現してもその命令プログラ
ムの実行が可能なようにすることによって、命令プログ
ラムの階層化により論理を単純化することができ、命令
プログラムの容量を縮小することができる。
さらに、パイプライン処理などによりソフトウェア命令
の並列処理が行えるハードウェアにおいては、実行時間
を短縮することができる。
の並列処理が行えるハードウェアにおいては、実行時間
を短縮することができる。
尚、本発明の一実施例では命令カウンタ退避レジスタ2
6に4つの格納場所261〜264を用意し、LIFO
スタックにより退避情報を格納するようにしたが、この
格納場所は幾つでもよく、LIFOスタック以外の方法
によって退避情報を格納するようにしてもよく、これら
に限定されないことは明白である。
6に4つの格納場所261〜264を用意し、LIFO
スタックにより退避情報を格納するようにしたが、この
格納場所は幾つでもよく、LIFOスタック以外の方法
によって退避情報を格納するようにしてもよく、これら
に限定されないことは明白である。
また、本発明の一実施例においては、第2種の命令B1
の処理を実現する命令プログラムの開始番地がそのまま
命令解析用メモリ3に格納されるようになっているが、
開始番地の一部のみを命令解析用メモリ3に格納し、こ
の開始番地の一部と予め定められた定数とを合成して開
始番地が生成されるようにしてもよい。
の処理を実現する命令プログラムの開始番地がそのまま
命令解析用メモリ3に格納されるようになっているが、
開始番地の一部のみを命令解析用メモリ3に格納し、こ
の開始番地の一部と予め定められた定数とを合成して開
始番地が生成されるようにしてもよい。
さらに、本発明の一実施例においては、第1種の命令A
1〜A4 、Aa〜Adの処理を実現するマイクロプロ
グラムの先頭番地と、第2種の命令B1の処理を実現す
る命令プログラムの開始番地とが命令解析用メモリ3の
同一フィールドの制御情報31により定義されているが
、第2種の命令B1の処理を実現する命令プログラムの
開始番地が命令解析用メモリ3の制御情報33に割当て
られてもよく、これらに限定されない。
1〜A4 、Aa〜Adの処理を実現するマイクロプロ
グラムの先頭番地と、第2種の命令B1の処理を実現す
る命令プログラムの開始番地とが命令解析用メモリ3の
同一フィールドの制御情報31により定義されているが
、第2種の命令B1の処理を実現する命令プログラムの
開始番地が命令解析用メモリ3の制御情報33に割当て
られてもよく、これらに限定されない。
実際、命令プログラムの開始番地は論理番地なので、マ
イクロプログラムアドレスより長いビット構成になるの
が一般的であり、第2種の命令B1では命令解析用メモ
リ3の制御情報33が使用されていないので、第2種の
命令B1の処理を実現する命令プログラムの開始番地が
命令解析用メモリ3の制御情報33に割当てられてらよ
い。
イクロプログラムアドレスより長いビット構成になるの
が一般的であり、第2種の命令B1では命令解析用メモ
リ3の制御情報33が使用されていないので、第2種の
命令B1の処理を実現する命令プログラムの開始番地が
命令解析用メモリ3の制御情報33に割当てられてらよ
い。
丸肌為ガ遇
以上説明したように本発明によれば、第1の命令と第2
の命令とを識別し、その識別結果が第2の命令であるこ
とを示すとき、第1の命令と第2の命令とで構成される
命令プログラムにより第2の命令を実行するようにし、
その第1の命令を制御記憶に格納されたマイクロプログ
ラムにより実現し、第2の命令を第1の命令と第2の命
令とで構成される命令プログラムにより実現するように
することによって、マイクロプログラムを格納する制御
記憶の使用効率を向上させることができ、制御記憶の容
認を縮小することができるという効果がある。
の命令とを識別し、その識別結果が第2の命令であるこ
とを示すとき、第1の命令と第2の命令とで構成される
命令プログラムにより第2の命令を実行するようにし、
その第1の命令を制御記憶に格納されたマイクロプログ
ラムにより実現し、第2の命令を第1の命令と第2の命
令とで構成される命令プログラムにより実現するように
することによって、マイクロプログラムを格納する制御
記憶の使用効率を向上させることができ、制御記憶の容
認を縮小することができるという効果がある。
第1図は本発明の一実施例の構成を示すブロック図、第
2図および第3図は本発明の一実施例のソフトウェアプ
ログラムのシーケンスを示す図である。 主要部分の符号の説明 2・・・・・・命令フェッチ回路 3・・・・・・命令解析用メモリ 4・・・・・・制御記憶回路 11・・・・・・ソフトウェアプログラム部12・・・
・・・命令プログラム部 25・・・・・・命令カウンタ 26・・・・・・命令カウンタ退避レジスタ27・・・
・・・ポインタレジスタ A1〜A4 、 Aa 〜Ad 。 Ar 〜All 、Ap〜Aw ・・・・・・第1種の命令 B1〜B3・・・・・・第2種の命令
2図および第3図は本発明の一実施例のソフトウェアプ
ログラムのシーケンスを示す図である。 主要部分の符号の説明 2・・・・・・命令フェッチ回路 3・・・・・・命令解析用メモリ 4・・・・・・制御記憶回路 11・・・・・・ソフトウェアプログラム部12・・・
・・・命令プログラム部 25・・・・・・命令カウンタ 26・・・・・・命令カウンタ退避レジスタ27・・・
・・・ポインタレジスタ A1〜A4 、 Aa 〜Ad 。 Ar 〜All 、Ap〜Aw ・・・・・・第1種の命令 B1〜B3・・・・・・第2種の命令
Claims (1)
- (1)制御記憶に格納されたマイクロプログラムにより
制御されるデータ処理装置であって、第1および第2の
命令で構成される命令プログラムを格納する第1の格納
手段と、前記第1および前記第2の命令を格納する第2
の格納手段と、前記第1および前記第2の格納手段から
読出された命令が前記第1の命令であるか前記第2の命
令であるかを識別する識別手段と、前記識別手段により
前記第2の命令であると識別されたときに、前記第1の
格納手段から読出された前記命令プログラムにより前記
第2の命令を実行する実行手段とを有し、前記第1の命
令を前記マイクロプログラムにより実現し、前記第2の
命令を前記第1の格納手段に格納された前記命令プログ
ラムにより実現するようにしたことを特徴とするデータ
処理装置。
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP63105322A JPH0814792B2 (ja) | 1988-04-27 | 1988-04-27 | データ処理装置 |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP63105322A JPH0814792B2 (ja) | 1988-04-27 | 1988-04-27 | データ処理装置 |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| JPH01276232A true JPH01276232A (ja) | 1989-11-06 |
| JPH0814792B2 JPH0814792B2 (ja) | 1996-02-14 |
Family
ID=14404479
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP63105322A Expired - Fee Related JPH0814792B2 (ja) | 1988-04-27 | 1988-04-27 | データ処理装置 |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JPH0814792B2 (ja) |
Citations (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JPS5079228A (ja) * | 1973-09-26 | 1975-06-27 |
-
1988
- 1988-04-27 JP JP63105322A patent/JPH0814792B2/ja not_active Expired - Fee Related
Patent Citations (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JPS5079228A (ja) * | 1973-09-26 | 1975-06-27 |
Also Published As
| Publication number | Publication date |
|---|---|
| JPH0814792B2 (ja) | 1996-02-14 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US9032185B2 (en) | Active memory command engine and method | |
| US5740414A (en) | Method and apparatus for coordinating the use of physical registers in a microprocessor | |
| US6009509A (en) | Method and system for the temporary designation and utilization of a plurality of physical registers as a stack | |
| US8589664B2 (en) | Program flow control | |
| US6338134B1 (en) | Method and system in a superscalar data processing system for the efficient processing of an instruction by moving only pointers to data | |
| JPH0682320B2 (ja) | データ処理装置 | |
| JPH03233630A (ja) | 情報処理装置 | |
| JPS61221936A (ja) | データ処理装置 | |
| TW201734769A (zh) | 處理向量指令 | |
| US4456958A (en) | System and method of renaming data items for dependency free code | |
| CN1021604C (zh) | 在向量数据处理运算中从缺页故障中恢复的设备和方法 | |
| JPH01276232A (ja) | データ処理装置 | |
| US7779236B1 (en) | Symbolic store-load bypass | |
| JPS581246A (ja) | 命令処理順序制御方式 | |
| US5893928A (en) | Data movement apparatus and method | |
| JP2552738B2 (ja) | データ処理装置 | |
| US12124699B2 (en) | Processing device for handling misaligned data | |
| JP3490191B2 (ja) | 計算機 | |
| JPS63240634A (ja) | 情報処理装置 | |
| JPH01276231A (ja) | データ処理装置 | |
| JPH07114509A (ja) | メモリアクセス装置 | |
| JP3015565B2 (ja) | 複数命令の並列実行機能を持つ情報処理装置 | |
| JP3057732B2 (ja) | 情報処理装置 | |
| JPH01310440A (ja) | データ処理装置 | |
| JPS61194566A (ja) | ベクトルデ−タ参照制御方式 |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| LAPS | Cancellation because of no payment of annual fees |