JPS6130295B2 - - Google Patents

Info

Publication number
JPS6130295B2
JPS6130295B2 JP17346180A JP17346180A JPS6130295B2 JP S6130295 B2 JPS6130295 B2 JP S6130295B2 JP 17346180 A JP17346180 A JP 17346180A JP 17346180 A JP17346180 A JP 17346180A JP S6130295 B2 JPS6130295 B2 JP S6130295B2
Authority
JP
Japan
Prior art keywords
address
instruction
register
control
control memory
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.)
Expired
Application number
JP17346180A
Other languages
English (en)
Other versions
JPS5797148A (en
Inventor
Kyosumi Sato
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.)
Fujitsu Ltd
Original Assignee
Fujitsu Ltd
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 Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP17346180A priority Critical patent/JPS5797148A/ja
Publication of JPS5797148A publication Critical patent/JPS5797148A/ja
Publication of JPS6130295B2 publication Critical patent/JPS6130295B2/ja
Granted legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/22Microcontrol or microprogram arrangements
    • G06F9/26Address formation of the next micro-instruction ; Microprogram storage or retrieval arrangements
    • G06F9/262Arrangements for next microinstruction selection

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)

Description

【発明の詳細な説明】 本発明はマイクロプログラム分岐制御方式に関
し、特に分岐条件コードを備えた機械語命令の制
御メモリアドレスを制御メモリ内に特別に用意さ
れた制御情報により作成するようにしたマイクロ
プログラム分岐制御方式に関するものである。
マイクロプログラム制御方式において、例えば
拡張命令(SUBOP)コードをもたない一般命命
(機械語命令)によつて必要とされる制御メモリ
アドレスは、該一般命令コードを制御メモリにア
ドレスすることにより直接求めることができる。
すなわちこの場合には、命令レジスタにセツトさ
れた命令の命令コード部分をそのまま制御メモリ
のアドレスの一部としてアクセスすればよい。こ
の一般命令が1マイクロ命令で完了する場合に
は、次の一般命令のオペレーシヨン・コードによ
つて当該一般命令を実行するための、当該オペレ
ーシヨン・コードが制御メモリのアドレスとして
再び選択されるようになつている。
しかし最近では機械語命令の機能を強化するた
めサブオペレーシヨン・コードのような拡張命令
コードを持つ命令コードが使用されている。この
場合には、例えば第1図に示すように、SUBOP
コードにもとづきプログラムを実行する場合にこ
のSUBOPコードの例えば下位4ビツトを第1図
のコード「A」(16進)に置換えて処理を行な
い、これにもとづきマイクロプログラムを順次読
出して制御を行つたのちに、そのマイクロプログ
ラムのアドレスの下位4ビツトを第1図のコード
「B」に置換え処理を行なうというような制御が
行なわれていた。しかしながらこのような方式で
は、制御メモリのアドレスが例えば4ビツト+4
ビツト分の256通り必要となるが、実際に分岐命
令コードを持つものは現時点では約20程度でよ
い。したがつて、このように分岐命令コードのビ
ツト数に対応した容量で、制御メモリを構成する
場合には制御メモリに大容量のものを必要とする
ものならず、このような大容量のものを使用して
も命令が格納される部分は一部分に限定されるこ
とになり、制御メモリの使用効率上好ましくな
い。また何回かに分けて制御メモリを読出すので
時間的損失も大きい。
したがつて本発明はこのような問題点を改善す
るために、一般命令コードにより読出したネクス
ト・アドレス・コードと分岐インデツクス・コー
ドを演算することにより所望のアドレスを得るよ
うにすることにより、ハードウエアを複雑にする
ことなく、しかも制御メモリを必要以上に大きな
ものを使用することもなく命令機能を拡大して複
雑な制御が行えるようにしたマイクロプログラム
分岐制御方式を提供することを目的とする。
そしてこのために本発明におけるマイクロプロ
グラム分岐制御方式では、命令コードを有する機
械語命令及び命令コードと拡張命令コードとを有
する機械語命令がセツトされるインストラクシヨ
ン・レジスタ1と、マイクロ命令が格納された制
御メモリ2とを備えたマイクロプログラム制御方
式において、機械語命令の命令コードにもとづき
読出された上記制御メモリの出力を一時記憶する
制御メモリ出力レジスタのネクスト・アドレス部
3−0、CSアドレス制御フイールド部3−1、
制御フイールド部3−2と、拡張命令コードによ
り読出された制御メモリの分岐インデツクス・コ
ードを一時記憶する出力レジスタのインデツク
ス・フイールド部3−3と演算手段9と、次に読
出すマイクロ命令のアドレスを指定する制御メモ
リ・アドレス・レジスタ8と、アドレス・コント
ロール回路4と、一般命令コードをゲート制御す
る第1ゲート回路10と、上記制御メモリ・アド
レス・レジスタ8からの出力をゲート制御する第
2ゲート回路11と、拡張命令コードをゲート制
御する第3ゲート回路12を具備するとともに上
記制御メモリより選択されるマイクロ命令にネク
スト・アドレス・フイールドNAとアドレス制御
フイールドACを設け、上記アドレス制御フイー
ルドACの出力を受けて上記アドレス・コントロ
ール回路4の出力に応じて上記インストラクシヨ
ン・レジスタ1の命令コード部分OP、制御メモ
リ・アドレス・レジスタ8にセツトされたデータ
又はインストラクシヨン・レジスタ1の拡張命令
コード部分SUBOPいずれかをアドレスとして選
択するようなすとともに、上記ネクスト・アドレ
ス・フイールドを表わすコードが上記出力レジス
タを経て格納される制御メモリ・アドレス・レジ
スタ8の一部ビツトにより上記分岐インデツク
ス・コードの1つを選択出力するように制御する
とともに上記制御メモリ・アドレス・レジスタ8
の他のビツトと上記選択された分岐インデツク
ス・コードを上記演算手段9で演算することによ
り得られた新らたなアドレス情報にもとづき制御
メモリをアクセス可能とするようにしたことを特
徴とする。
以下本発明の一実施例として、拡張命令コート
が分岐条件コードとして働く場合を第2図にもと
づき説明する。
図中、1はインストラクシヨン・レジスタ、2
は制御メモリ、3はデータ・レジスタ、4はアド
レス・コントロール回路、5はセレクタ、6,7
はアドレス選択ラツチ、8はアドレス・レジス
タ、9は論理演算回路、10,11,12はアン
ド回路である。ここでアンド回路10は一般命令
コードをゲート制御する第1ゲート回路として作
用し、アンド回路11は制御メモリ・アドレス・
レジスタ8からの出力をゲート制御する第2ゲー
ト回路として作用し、アンド回路12は拡張命令
コードをゲート制御する第3ゲート回路として作
用する。
インストラクシヨン・レジスタ1は一般命令コ
ードOPと、拡張命令コードとオペランド指定部
等がセツトされるものである。
制御メモリ2は複数のブロツク0,1……Nよ
りなり、ブロツク0の領域には分岐先のアドレス
作成のためのインデツクス値を指定するインデツ
クス・フイールドSIが設けられている。このイン
デツクス・フイールドSIは、例えばSI0〜SI3の
4つのインデツクス・コードに分割されており、
セレクタ5によりその1つが選択されるものであ
る。
データ・レジスタ3は制御メモリ2から読出さ
れたマイクロ命令が一時セツトされるレジスタで
あつて、ネクスト・アドレスNAのセツトされる
ネクスト・アドレス部3−0と、後述するように
次に読出すべき制御メモリアドレスの入力回路を
選択する制御コードACがセツトされるCSアドレ
ス制御フイールド部3−1と、各種レジスタ及び
バスを制御する制御情報がセツトされる制御フイ
ールド部3−2と、インデツクス・フイールドSI
がセツトされるインデツクス・フイールド部3−
3等により構成されている。
アドレス・コントロール回路4は上記制御コー
ドACに応じて制御メモリ2をアクセスするため
のアドレス情報が伝達されるルートを選択するた
めの制御を行なうものである。このアドレス・コ
ントロール回路4がアドレス選択ラツチ6,7の
出力を「0」になるように制御する場合にはアン
ド回路10がオン状態となり、ラインL1を経由
してインストラクシヨン・レジスタ1のOPコー
ド部分がアドレスとして伝達され、アドレス選択
ラツチ6が「1」を出力するように制御する場合
にはアンド回路11がオン状態となりラインL2
を経由してアドレス・レジスタ8にセツトされた
データがアドレスとして伝達され、またアドレス
選択ラツチ7が「1」を出力するように制御する
場合にはアンド回路12がオン状態となりライン
L3を経由して分岐条件コードがアドレスとして
伝達されるものである。
セレクタ5はインデツクス・フイールドSIの複
数のインデツクス・コードSI0〜SI3のうちの1
つをアドレス・レジスタ8から伝達される選択指
令にもとづき選択的に出力するものである。
アドレス選択ラツチ6,7はアンド回路10〜
12を選択的にオン状態にして制御メモリ2のア
ドレスを選択するものであり、アドレス・コント
ロール回路4によりその状態が制御される。この
うちアドレス選択ラツチ7はインストラクシヨ
ン・レジスタ1にセツトされた命令が拡張命令コ
ードをもつ命令のときに「1」にセツトされるも
のである。
アドレス・レジスタ8は制御メモリ2をアクセ
スすべきアドレスがセツトされるレジスタであ
る。論理演算回路9はセレクタ5から出力された
インデツクスとアドレス・レジスタ8に保持され
ているアドレスとを、例えば加算したり、連結し
たり、オアする等の論理演算を行なつて新らしい
アドレスを作成するものである。
次に第2図にもとづき分岐制御について説明す
る。
(1) まず、主記憶装置から読出された命令をイン
ストラクシヨン・レジスタ1にセツトするが、
このときアドレス選択ラツチ6,7はいずれも
「0」を出力しているので、アンド回路10が
オンとなり、インストラクシヨン・レジスタ1
にセツトされた、命令を定義する8ビツトの一
般命令コードOPがそのまま制御メモリ2のア
ドレスとなり、ブロツク0の0〜255番地にあ
る1語のマイクロ命令を読出し、これをデー
タ・レジスタ3に格納する。もしもこの命令が
1語のマイクロ命令で終るときは、データ・レ
ジスタ3の制御コードACをアドレス・コント
ロール回路4がデコードしたとき、アドレス選
択ラツチ6,7がいずれも「0」を出力する。
これによりインストラクシヨン・レジスタ1に
次の命令が格納されることになる。
(2) しかしながらインストラクシヨン・レジスタ
1にセツトされた命令が拡張命令コードをもつ
命令の場合には、データ・レジスタ3の制御コ
ードACをアドレス・コントロール回路4がデ
コードしたときアドレス選択ラツチ7が「1」
にセツトされ、分岐命令であることがわかる。
そしてデータ・レジスタ3のネクスト・アドレ
ス部3−0に格納されているネクスト・アドレ
スNAがアドレス・レジスタ8に格納される。
(3) 上記アドレス選択ラツチ7が「1」にセツト
されたことにより、アンド回路12がオンとな
り、今度は複数のビツト(例えば8ビツト)か
らなる拡張命令コードをアドレスとして制御メ
モリ2を読出し、そのデータがデータ・レジス
タ3に格納される。このときデータ・レジスタ
3の内容はインデツクス・フイードSIだけが使
用され、他のフイールドは無視される。このと
きインデツクス・フイールドSIが複数のグルー
プに分割されているときには、アドレス・レジ
スタ8の下位2ビツトにもとづきセレクタ5が
選択し、これを論理演算回路9に出力する。こ
のとき、選択信号として使用されなかつたアド
レス・レジスタ8のその他のビツトはライン
L4を経由して論理演算回路9に入力される。
(4) 論理演算回路9は上記セレクタ5から出力さ
れたインデツクス・フイールドからのデータ
と、上記ラインL4を経由して入力されたアド
レス・レジスタ8からのデータとを論理演算し
その結果をラインL5を経由してアドレス・レ
ジスタ8にセツトする。このときアドレス・コ
ントロール回路4はアドレス選択ラツチ7をリ
セツトし6をセツトするように制御する。かく
してアドレス選択ラツチ6がセツトされて
「1」を出力し、アンド回路11がオンとなる
ので、上記の如くして得られたアドレス・レジ
スタ8にセツトされた分岐先アドレスにもとづ
き制御メモリ2がアクセスされ、分岐制御が行
なわれる。以後は一般命令と同様の動作でマイ
クロ命令が読出されることになる。
(5) また上記(1)において1語のマイクロ命令で命
令が終了しないときは、上記制御コードACを
アドレス・コントロール回路4がデコードした
結果、アドレス選択ラツチ6がセツトされ7が
リセツトされる。これによりネクスト・アドレ
スNAがアドレス・レジスタ8に格納され、ま
たアンド回路11がオン状態になるので、この
アドレス・レジスタ8に格納されたアドレスに
より制御メモリ2から次のマイクロ命令が読出
される。このようなことが繰返され、制御コー
ドACをデコードの結果、アドレス選択ラツチ
6,7がともにリセツトされるとき、この命令
が終了する。
勿論、拡張命令コードを持たない命令でも、も
その命令特有の分岐条件があればインストラクシ
ヨン・レジスタの拡張命令コードのフイールドに
上記分岐条件コードがセツトされ、上記の場合と
同様な制御が行なわれることになる。
したがつて本発明によれば、制御メモリを不本
意に大きくする必要なく、制御メモリを有効的に
使用して分岐制御を行なうことができる。しかも
拡張命令コードを、ハード的に処理制御して制御
メモリをアクセスすることができるので、高速に
動作させることが可能となる。
【図面の簡単な説明】
第1図は拡張命令コードを有する命令形式の説
明図、第2図は本発明の一実施例構成図である。 図中、1はインストラクシヨン・レジスタ、2
は制御メモリ、3はデータ・レジスタ、4はアド
レス・コントロール回路、5はセレクタ、6,7
はアドレス選択ラツチ、8はアドレス・レジス
タ、9は論理演算回路、10,11,12はアン
ド回路をそれぞれ示す。

Claims (1)

  1. 【特許請求の範囲】 1 命令コードを有する機械語命令及び命令コー
    ドと拡張命令コードとを有する機械語命令がセツ
    トされるインストラクシヨン・レジスタ1と、マ
    イクロ命令が格納された制御メモリ2とを備えた
    マイクロプログラム制御方式において、 機械語命令の命令コードにもとづき読出された
    上記制御メモリの出力を一時記憶する制御メモリ
    出力レジスタのネクスト・アドレス部3−0、
    CSアドレス制御フイールド部3−1、制御フイ
    ールド部3−2と、 拡張命令コードにより読出された制御メモリの
    分岐インデツクス・コードを一時記憶する出力レ
    ジスタのインデツクス・フイールド部3−3と、 演算手段9と、 次に読出すマイクロ命令のアドレスを指定する
    制御メモリ・アドレス・レジスタ8と、 アドレス・コントロール回路4と、 一般命令コードをゲート制御する第1ゲート回
    路10と、 上記制御メモリ・アドレス・レジスタ8からの
    出力をゲート制御する第2ゲート回路11と、 拡張命令コードをゲート制御する第3ゲート回
    路12を具備するとともに上記制御メモリより選
    択されるマイクロ命令にネクスト・アドレス・フ
    イールドNAとアドレス制御フイールドACを設
    け、上記アドレス制御フイールドACの出力を受
    けて上記アドレス・コントロール回路4の出力に
    応じて上記インストラクシヨン・レジスタ1の命
    令コード部分OP、制御メモリ・アドレス・レジ
    スタ8にセツトされたデータ又はインストラクシ
    ヨン・レジスタ1の拡張命令コード部分SUBOP
    のいずれかをアドレスとして選択すようになすと
    ともに、上記ネクスト・アドレス・フイールドを
    表わすコードが上記出力レジスタを経て格納され
    る制御メモリ・アドレス・レジスタ8の一部ビツ
    トにより上記分岐インデツクス・コードの1つを
    選択出力するように制御するとともに上記制御メ
    モリ・アドレス・レジスタ8の他のビツトと上記
    選択された分岐インデツクス・コードを上記演算
    手段9で演算することにより得られた新らたなア
    ドレス情報にもとづき制御メモリをアクセス可能
    とするようにしたことを特徴とするマイクロプロ
    グラム分岐制御方式。
JP17346180A 1980-12-09 1980-12-09 Branch control system of microprogram Granted JPS5797148A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP17346180A JPS5797148A (en) 1980-12-09 1980-12-09 Branch control system of microprogram

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP17346180A JPS5797148A (en) 1980-12-09 1980-12-09 Branch control system of microprogram

Publications (2)

Publication Number Publication Date
JPS5797148A JPS5797148A (en) 1982-06-16
JPS6130295B2 true JPS6130295B2 (ja) 1986-07-12

Family

ID=15960897

Family Applications (1)

Application Number Title Priority Date Filing Date
JP17346180A Granted JPS5797148A (en) 1980-12-09 1980-12-09 Branch control system of microprogram

Country Status (1)

Country Link
JP (1) JPS5797148A (ja)

Also Published As

Publication number Publication date
JPS5797148A (en) 1982-06-16

Similar Documents

Publication Publication Date Title
US5177701A (en) Computer and method for performing immediate calculation by utilizing the computer
US4631663A (en) Macroinstruction execution in a microprogram-controlled processor
JPH0241053B2 (ja)
JPH0248931B2 (ja)
US4394735A (en) Data processor controlled by microprograms
JPS623461B2 (ja)
JPH027097B2 (ja)
KR900005547B1 (ko) 시퀀스 콘트로울러
JPH034936B2 (ja)
JPH0363092B2 (ja)
KR940002478B1 (ko) 정보 처리장치
JPS6130295B2 (ja)
JPS6065342A (ja) マイクロコンピユ−タ
JP2576589B2 (ja) 仮想記憶アクセス制御方式
JPH0713758A (ja) 命令デコード方法
JPH0218732B2 (ja)
JPS62147545A (ja) 情報処理装置における転送命令処理方式
JPH0353321A (ja) 情報処理装置
JPH0399321A (ja) 命令制御方式
JPH0319570B2 (ja)
JPS592938B2 (ja) メモリ ワ−クスペ−ス アンドレツシングホウホウオヨビソウチ
JPS6158042A (ja) マイクロプログラム制御方式
JPS6126089B2 (ja)
JPS6362065A (ja) デ−タ転送制御方式
JPS62115541A (ja) マイクロ命令分岐アドレス生成方式