JPS62210541A - レジスタ選択方式 - Google Patents
レジスタ選択方式Info
- Publication number
- JPS62210541A JPS62210541A JP5316686A JP5316686A JPS62210541A JP S62210541 A JPS62210541 A JP S62210541A JP 5316686 A JP5316686 A JP 5316686A JP 5316686 A JP5316686 A JP 5316686A JP S62210541 A JPS62210541 A JP S62210541A
- Authority
- JP
- Japan
- Prior art keywords
- operand
- microprogram
- micro
- pointer
- 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
- 238000010187 selection method Methods 0.000 claims description 10
- 238000000034 method Methods 0.000 claims 1
- 238000004904 shortening Methods 0.000 abstract description 2
- 230000010365 information processing Effects 0.000 description 3
- 238000010586 diagram Methods 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 230000006870 function Effects 0.000 description 1
- 230000000873 masking effect Effects 0.000 description 1
Abstract
(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。
め要約のデータは記録されません。
Description
【発明の詳細な説明】
〔産業上の利用分野〕
本発明はレジスタ選択方式に関し、特にマイクロプログ
ラム制御の情報処理装置におけるレジスタ選択方式に関
する。
ラム制御の情報処理装置におけるレジスタ選択方式に関
する。
(従来の技術〕
従来、マイクロプログラム制御の情報処理装置における
レジスタ選択方式では、マイクロプログラム中で参照す
るレジスタの指定はマイクロプログラム自身がマイクロ
オペランドアドレスをオペランドポインタに格納し、ま
たはデコード部で実行するソフトウェア命令の解読を行
い得られたマイクロオペランドアドレスをソフトウェア
命令の実行開始に先立ってオペランドポインタに格納し
、このオペランドポインタのマイクロオペランドアドレ
スをマイクロオペランドバスを介してマイクロオペラン
ドデコーダに転送することによって行われていた。
レジスタ選択方式では、マイクロプログラム中で参照す
るレジスタの指定はマイクロプログラム自身がマイクロ
オペランドアドレスをオペランドポインタに格納し、ま
たはデコード部で実行するソフトウェア命令の解読を行
い得られたマイクロオペランドアドレスをソフトウェア
命令の実行開始に先立ってオペランドポインタに格納し
、このオペランドポインタのマイクロオペランドアドレ
スをマイクロオペランドバスを介してマイクロオペラン
ドデコーダに転送することによって行われていた。
上述した従来のマイクロプログラム制御の情報処理装置
におけるレジスタ選択方式では、オペランドポインタ中
の1つのマイクロオペランドアドレスに対して参照でき
るレジスタは1つに限られていたので、例えば多倍長演
算命令のように1オペランドとして複数のレジスタを参
照する場合にはマイクロプログラムにより逐次オペラン
ドポインタの値を書き換えなければならず、制御記憶の
容量を増加させるとともにソフトウェア命令の実行時間
を増大させる欠点がある。
におけるレジスタ選択方式では、オペランドポインタ中
の1つのマイクロオペランドアドレスに対して参照でき
るレジスタは1つに限られていたので、例えば多倍長演
算命令のように1オペランドとして複数のレジスタを参
照する場合にはマイクロプログラムにより逐次オペラン
ドポインタの値を書き換えなければならず、制御記憶の
容量を増加させるとともにソフトウェア命令の実行時間
を増大させる欠点がある。
本発明の目的は、上述の点に鑑み、オペランドポインタ
中の1つのマイクロオペランドアドレスに対して複数の
レジスタを参照することができるレジスタ選択方式を提
供することにある。
中の1つのマイクロオペランドアドレスに対して複数の
レジスタを参照することができるレジスタ選択方式を提
供することにある。
本発明のレジスタ選択方式は、マイクロプログラムを格
納する制御記憶と、デコード部でソフトウェア命令を解
読して得られたマイクロオペランドアドレスを前記ソフ
トウェア命令の実行開始時に格納するかまたは前記マイ
クロプログラムの制御によりデータバスの内容を格納す
るオペランドポインタと、前記マイクロオペランドアド
レスをマイクロオペランドデコーダに転送するマイクロ
オペランドバスとを備え、前記マイクロオペランドアド
レスを前記マイクロオペランドデコーダが解読すること
により参照すべきレジスタをアクセスするレジスタ選択
方式において、前記マイクロプログラムをその実行前毎
に保持するマイクロプログラムラッチと、前記オペラン
ドポインタおよび前記マイクロプログラッチの内容から
参照するレジスタのマイクロオペランドアドレスを決め
るためのマスク値を保持するマスクレジスタと、前記デ
ータバスから前記マスクレジスタへのデータ転送ならび
に前記マイクロプログラムラッチおよび前記オペランド
ポインタから前記マイクロオペランドバスへの同時デー
タ転送を制御するマイクロプログラム111m手段とを
有する。
納する制御記憶と、デコード部でソフトウェア命令を解
読して得られたマイクロオペランドアドレスを前記ソフ
トウェア命令の実行開始時に格納するかまたは前記マイ
クロプログラムの制御によりデータバスの内容を格納す
るオペランドポインタと、前記マイクロオペランドアド
レスをマイクロオペランドデコーダに転送するマイクロ
オペランドバスとを備え、前記マイクロオペランドアド
レスを前記マイクロオペランドデコーダが解読すること
により参照すべきレジスタをアクセスするレジスタ選択
方式において、前記マイクロプログラムをその実行前毎
に保持するマイクロプログラムラッチと、前記オペラン
ドポインタおよび前記マイクロプログラッチの内容から
参照するレジスタのマイクロオペランドアドレスを決め
るためのマスク値を保持するマスクレジスタと、前記デ
ータバスから前記マスクレジスタへのデータ転送ならび
に前記マイクロプログラムラッチおよび前記オペランド
ポインタから前記マイクロオペランドバスへの同時デー
タ転送を制御するマイクロプログラム111m手段とを
有する。
(実施例〕
次に、本発明について図面を参照して説明する。
図は本発明の一実施例を示す構成図である0本実施例の
レジスタ選択方式は、制御記憶(図示せず)からのマイ
クロプログラムを保持するマイクロプログラムラッチ2
と、マイクロオペランドアドレスを保持するオペランド
ポインタ3と、マイクロプログラムラッチ2およびオペ
ランドポインタ3の内容から参照するレジスタのマイク
ロオペランドアドレスを決めるためのマスク値を保持す
るマスクレジスタ1と、マイクロプログラムによって制
御されるデータバス11と、ソースオペランドに対する
マイクロオペランドアドレスをマイクロオペランドデコ
ーダ(図示せず)に転送するマイクロオペランドソース
バス18と、デストネーションオペランドに対するマイ
クロオペランドアドレスをマイクロオペランドデコーダ
に転送するマイクロオペランドデストネーシッンバス1
9とから、その主要部が構成されている。
レジスタ選択方式は、制御記憶(図示せず)からのマイ
クロプログラムを保持するマイクロプログラムラッチ2
と、マイクロオペランドアドレスを保持するオペランド
ポインタ3と、マイクロプログラムラッチ2およびオペ
ランドポインタ3の内容から参照するレジスタのマイク
ロオペランドアドレスを決めるためのマスク値を保持す
るマスクレジスタ1と、マイクロプログラムによって制
御されるデータバス11と、ソースオペランドに対する
マイクロオペランドアドレスをマイクロオペランドデコ
ーダ(図示せず)に転送するマイクロオペランドソース
バス18と、デストネーションオペランドに対するマイ
クロオペランドアドレスをマイクロオペランドデコーダ
に転送するマイクロオペランドデストネーシッンバス1
9とから、その主要部が構成されている。
オペランドポインタ3は、7ビツト構成をとっており、
入力がデータバス11に接続されているとともに、信号
線12を介してデコード部に接続されている。オペラン
ドポインタ3の出力は、マイクロオペランドソースバス
18およびマイクロオベランドデストネーシッンバス1
9に接続されているとともに、ゲート31ならびに出力
信号線16および17を介してマイクロオペランドソー
スバス18およびマイクロオペランドデストネーシッン
バス19に接続されている。
入力がデータバス11に接続されているとともに、信号
線12を介してデコード部に接続されている。オペラン
ドポインタ3の出力は、マイクロオペランドソースバス
18およびマイクロオベランドデストネーシッンバス1
9に接続されているとともに、ゲート31ならびに出力
信号線16および17を介してマイクロオペランドソー
スバス18およびマイクロオペランドデストネーシッン
バス19に接続されている。
マイクロプログラムラッチ2は、ソースオペランド指定
用およびデストネーションオベランド指定用の各7ビツ
トずつ用意され、14ビツトの構成をとっている。マイ
クロプログラムラッチ2の人力は信号線13を介して制
御記憶に接続され、出力は信号線15、ゲート32およ
び33ならびに出力信号vA2Bおよび29を介してマ
イクロオペランドソースバス1日およびマイクロオペラ
ンドデストネーションバス19に接続されている。
用およびデストネーションオベランド指定用の各7ビツ
トずつ用意され、14ビツトの構成をとっている。マイ
クロプログラムラッチ2の人力は信号線13を介して制
御記憶に接続され、出力は信号線15、ゲート32およ
び33ならびに出力信号vA2Bおよび29を介してマ
イクロオペランドソースバス1日およびマイクロオペラ
ンドデストネーションバス19に接続されている。
マスクレジスタ1は、オペランドポインタ3と同じ7ビ
ント長で構成されており、入力がデータバス11に接続
されている。マスクレジスタ1の出力は、ゲート32お
よび33の制御端子に接続されているとともに、インバ
ータ30を介してゲート31の制御端子に接続されてい
る。
ント長で構成されており、入力がデータバス11に接続
されている。マスクレジスタ1の出力は、ゲート32お
よび33の制御端子に接続されているとともに、インバ
ータ30を介してゲート31の制御端子に接続されてい
る。
なお、符号20〜23はマスクレジスタ1、マイクロプ
ログラムラッチ2およびオペランドポインタ3に対する
書込み許可信号、24〜27はマスクレジスタ1、マイ
クロプログラムラッチ2およびオペランドポインタ3に
対する出力許可信号をそれぞれ示す。
ログラムラッチ2およびオペランドポインタ3に対する
書込み許可信号、24〜27はマスクレジスタ1、マイ
クロプログラムラッチ2およびオペランドポインタ3に
対する出力許可信号をそれぞれ示す。
次に、このように構成された本実施例のレジスタ選択方
式の動作について説明する。
式の動作について説明する。
まず、デコード部からソフトウェア命令のマイクロオペ
ランドアドレスを与えられる場合について説明する。
ランドアドレスを与えられる場合について説明する。
デコード部から与えられるマイクロオペランドアドレス
は、信号線12を介してオペランドポインタ3に転送さ
れる。書込み許可信号(INSTBON)21は、前ソ
フトウェア命令の実行終了時に出力され、現ソフトウェ
ア命令の実行開始時にはオペランドポインタ3の値は確
定している。
は、信号線12を介してオペランドポインタ3に転送さ
れる。書込み許可信号(INSTBON)21は、前ソ
フトウェア命令の実行終了時に出力され、現ソフトウェ
ア命令の実行開始時にはオペランドポインタ3の値は確
定している。
いま仮に、マイクロオペランドアドレスとして汎用レジ
スタ(GR)7を指す値である0000111B (B
は2進数であることを示す、以下同様)がデコード部で
指定されたとすると、オペランドポインタ3には0OO
OIIIBが格納されている。
スタ(GR)7を指す値である0000111B (B
は2進数であることを示す、以下同様)がデコード部で
指定されたとすると、オペランドポインタ3には0OO
OIIIBが格納されている。
現ソフトウェア命令が多倍長演算命令で1オペランドと
して4つのレジスタの参照が必要であるときには、マイ
クロプログラムではマスクレジスタ1を用いたオペラン
ド指定を行う、マスクレジスタ1へのデータ転送は、デ
ータバス11を介してマイクロプログラム制御手段によ
って書込み許可信号(MSKWR)20を働かせて行う
、マスクレジスタ1への書込みは、ソフトウェア命令の
実行開始時やリードルーチン中で行うことができる。
して4つのレジスタの参照が必要であるときには、マイ
クロプログラムではマスクレジスタ1を用いたオペラン
ド指定を行う、マスクレジスタ1へのデータ転送は、デ
ータバス11を介してマイクロプログラム制御手段によ
って書込み許可信号(MSKWR)20を働かせて行う
、マスクレジスタ1への書込みは、ソフトウェア命令の
実行開始時やリードルーチン中で行うことができる。
なお、現時点では、マスクレジスタ1には111110
0Bの値が保持されているものとする。
0Bの値が保持されているものとする。
オペランドポインタ3の第【ビットをPi、マスクレジ
スタlの第1ビフトをMl、マイクロプログラムラッチ
2のソースオペランド指定フィールドの第iビットをL
Si、デストネーションオベランド指定フィールドの第
iビットをLDl、マイクロオペランドソースバス18
の第iビットをBS l、マイクロオペランドデストネ
ーシッンバス19の第iピントをBDi (0≦l≦
6)として、BSi■Pi−Mi+LSi −Mi。
スタlの第1ビフトをMl、マイクロプログラムラッチ
2のソースオペランド指定フィールドの第iビットをL
Si、デストネーションオベランド指定フィールドの第
iビットをLDl、マイクロオペランドソースバス18
の第iビットをBS l、マイクロオペランドデストネ
ーシッンバス19の第iピントをBDi (0≦l≦
6)として、BSi■Pi−Mi+LSi −Mi。
BDI雪Pi−Ml+LDi −Mi
となるようなマスク機能をマスクレジスタ1に持たせて
おけば、マスク値が1のビットはオペランドポインタ3
の対応するビットが、マスク値が0のビットはマイクロ
プログラムラッチ2の対応するビットがそれぞれ選択さ
れる。
おけば、マスク値が1のビットはオペランドポインタ3
の対応するビットが、マスク値が0のビットはマイクロ
プログラムラッチ2の対応するビットがそれぞれ選択さ
れる。
マイクロプログラム中でGR5の参照が指定されていた
とすれば、マイクロプログラムラッチ2の出力信号線2
8および29にはXXXXX0I Bが、またオペラン
ドポインタ3の出力信号線16および17には0OOO
IXX Bが出力され、マイクロプログラム制御手段は
出力許可信号(MR−3−3EL)25を働かせてマイ
クロオペランドソースバス18に0000101 Bを
出力する。このマイクロオペランドソースバス1°8上
のマイクロオペランドアドレスをマイクロオペランドデ
コーダがデコードしてGR5に対する参照を行うことが
できる。
とすれば、マイクロプログラムラッチ2の出力信号線2
8および29にはXXXXX0I Bが、またオペラン
ドポインタ3の出力信号線16および17には0OOO
IXX Bが出力され、マイクロプログラム制御手段は
出力許可信号(MR−3−3EL)25を働かせてマイ
クロオペランドソースバス18に0000101 Bを
出力する。このマイクロオペランドソースバス1°8上
のマイクロオペランドアドレスをマイクロオペランドデ
コーダがデコードしてGR5に対する参照を行うことが
できる。
続いて、マイクロプログラム中でGR6の参照が指定さ
れていたとすれば、マイクロプログラムラッチ2の出力
信号線28および29にはXXXXXl0 Bが出力さ
れ、マイクロオペランドソースバス18には00001
10 Bが出力される。したがって、GR6の参照が行
われる。
れていたとすれば、マイクロプログラムラッチ2の出力
信号線28および29にはXXXXXl0 Bが出力さ
れ、マイクロオペランドソースバス18には00001
10 Bが出力される。したがって、GR6の参照が行
われる。
以下同様にして、オペランドポインタ3を書き換えるこ
となく、マスクレジスタ1に格納されたマスク値を用い
ることにより多倍長演算命令におけるオペランド参照を
順次行うことができる。
となく、マスクレジスタ1に格納されたマスク値を用い
ることにより多倍長演算命令におけるオペランド参照を
順次行うことができる。
ソフトウェア命令が通常の命令で1オペランドについて
ルジスタの参照を行うときには、マイクロプログラムで
はオペランドポインタ3を用いたオペランド指定を行う
、オペランドポインタ3には0000111 Bが保持
されているので、GR7の参照が可能である。マイクロ
プログラム制御手段は、信号線(PR−3−3EL)2
4を働かせてGR7に対する参照を行うことができる。
ルジスタの参照を行うときには、マイクロプログラムで
はオペランドポインタ3を用いたオペランド指定を行う
、オペランドポインタ3には0000111 Bが保持
されているので、GR7の参照が可能である。マイクロ
プログラム制御手段は、信号線(PR−3−3EL)2
4を働かせてGR7に対する参照を行うことができる。
なお、上記動作の説明では、ソースオペランドとしてレ
ジスタを参照する場合について述べたが、デストネーシ
ッンオペランドとしてレジスタを参照する場合には、出
力許可信号25および24の代わりに、出力許可信号線
(MR−D−3EL)27および出力許可信号線(PR
−D−5EL)26を働かせるようにすればよい。
ジスタを参照する場合について述べたが、デストネーシ
ッンオペランドとしてレジスタを参照する場合には、出
力許可信号25および24の代わりに、出力許可信号線
(MR−D−3EL)27および出力許可信号線(PR
−D−5EL)26を働かせるようにすればよい。
また、オペランドポインタ3およびマスクレジスタ1は
データバス11にも接続されているので、マイクロプロ
グラム制御手段により信号線(MSKWR>20や信号
線(PRWR)23を働かせてオペランドポインタ3お
よびマスクレジスタ1の内容を書き換えることができ、
このようにすることによってマイクロプログラムの実行
中においてもオペランドポインタ中の1つのマイクロオ
ペランドアドレスについて複数のレジスタを参照するこ
とができる。
データバス11にも接続されているので、マイクロプロ
グラム制御手段により信号線(MSKWR>20や信号
線(PRWR)23を働かせてオペランドポインタ3お
よびマスクレジスタ1の内容を書き換えることができ、
このようにすることによってマイクロプログラムの実行
中においてもオペランドポインタ中の1つのマイクロオ
ペランドアドレスについて複数のレジスタを参照するこ
とができる。
以上説明したように本発明は、実行するマイクロプログ
ラムを保持するマイクロプログラムラッチとこのマイク
ロプログラムラッチおよびオペランドポインタの内容か
ら参照するマイクロオペランドアドレスを決めるための
マスク値を保持するマスクレジスタとを設けることによ
り、レジスタの参照を行うときにマイクロプログラムラ
ッチとオペランドポインタとの内容をマスク値で制御し
てマイクロオペランドアドレスとして用いることによっ
て可変数のレジスタを参照することが可能となり、制御
記憶の容量の減少と命令実行時間の短縮化とを図ること
ができる効果がある。
ラムを保持するマイクロプログラムラッチとこのマイク
ロプログラムラッチおよびオペランドポインタの内容か
ら参照するマイクロオペランドアドレスを決めるための
マスク値を保持するマスクレジスタとを設けることによ
り、レジスタの参照を行うときにマイクロプログラムラ
ッチとオペランドポインタとの内容をマスク値で制御し
てマイクロオペランドアドレスとして用いることによっ
て可変数のレジスタを参照することが可能となり、制御
記憶の容量の減少と命令実行時間の短縮化とを図ること
ができる効果がある。
図は本発明のレジスタ選択方式の一実施例を示す構成図
である。 図において、 1・・・マスクレジスタ、 2・・・マイクロプログラムラッチ 3・・・オペランドポインタ、 11・・・データバス、 18・・・マイクロオペランドソースバス、19・・・
マイクロオペランドデストネーションノイス、 30・・・インバータ、 31.32.33・・・ゲートである。
である。 図において、 1・・・マスクレジスタ、 2・・・マイクロプログラムラッチ 3・・・オペランドポインタ、 11・・・データバス、 18・・・マイクロオペランドソースバス、19・・・
マイクロオペランドデストネーションノイス、 30・・・インバータ、 31.32.33・・・ゲートである。
Claims (1)
- 【特許請求の範囲】 マイクロプログラムを格納する制御記憶と、デコード部
でソフトウェア命令を解読して得られたマイクロオペラ
ンドアドレスを前記ソフトウェア命令の実行開始時に格
納するかまたは前記マイクロプログラムの制御によりデ
ータバスの内容を格納するオペランドポインタと、前記
マイクロオペランドアドレスをマイクロオペランドデコ
ーダに転送するマイクロオペランドバスとを備え、前記
マイクロオペランドアドレスを前記マイクロオペランド
デコーダが解読することにより参照すべきレジスタをア
クセスするレジスタ選択方式において、 前記マイクロプログラムをその実行前毎に保持するマイ
クロプログラムラッチと、 前記オペランドポインタおよび前記マイクロプロクラッ
チの内容から参照するレジスタのマイクロオペランドア
ドレスを決めるためのマスク値を保持するマスクレジス
タと、 前記データバスから前記マスクレジスタへのデータ転送
ならびに前記マイクロプログラムラッチおよび前記オペ
ランドポインタから前記マイクロオペランドバスへの同
時データ転送を制御するマイクロプログラム制御手段と
、 を有することを特徴とするレジスタ選択方式。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP5316686A JPS62210541A (ja) | 1986-03-11 | 1986-03-11 | レジスタ選択方式 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP5316686A JPS62210541A (ja) | 1986-03-11 | 1986-03-11 | レジスタ選択方式 |
Publications (1)
Publication Number | Publication Date |
---|---|
JPS62210541A true JPS62210541A (ja) | 1987-09-16 |
Family
ID=12935271
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP5316686A Pending JPS62210541A (ja) | 1986-03-11 | 1986-03-11 | レジスタ選択方式 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JPS62210541A (ja) |
-
1986
- 1986-03-11 JP JP5316686A patent/JPS62210541A/ja active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP2539199B2 (ja) | デジタルプロセッサ制御装置 | |
US4839797A (en) | Microprocessor compatible with any software represented by different types of instruction formats | |
KR930018378A (ko) | 캐쉬 메모리 시스템의 성능최적화 방법 및 장치 | |
US5682531A (en) | Central processing unit | |
US5077659A (en) | Data processor employing the same microprograms for data having different bit lengths | |
EP0240606B1 (en) | Pipe-line processing system and microprocessor using the system | |
JPH034936B2 (ja) | ||
KR910001708B1 (ko) | 중앙처리장치 | |
JPS62210541A (ja) | レジスタ選択方式 | |
JP2553200B2 (ja) | 情報処理装置 | |
JPS6217773B2 (ja) | ||
JPH0831033B2 (ja) | データ処理装置 | |
US5463747A (en) | Microprogram data processor processing operand address calculation and instruction execution with common hardware | |
JPS6320631A (ja) | レジスタ選択方式 | |
JPS6230455B2 (ja) | ||
JP2000112754A (ja) | データ処理装置 | |
JPH05334074A (ja) | マイクロプロセッサ | |
JPH0352092B2 (ja) | ||
JPS62150435A (ja) | デ−タ処理方式 | |
JPS62210542A (ja) | レジスタ選択方式 | |
JPH064331A (ja) | 10進チェック回路 | |
JPS6117474Y2 (ja) | ||
JPH07104997A (ja) | データ処理装置 | |
JPH03204029A (ja) | 情報処理装置 | |
JPH05250156A (ja) | Riscプロセッサ |