JPS6115452B2 - - Google Patents

Info

Publication number
JPS6115452B2
JPS6115452B2 JP10526078A JP10526078A JPS6115452B2 JP S6115452 B2 JPS6115452 B2 JP S6115452B2 JP 10526078 A JP10526078 A JP 10526078A JP 10526078 A JP10526078 A JP 10526078A JP S6115452 B2 JPS6115452 B2 JP S6115452B2
Authority
JP
Japan
Prior art keywords
code
stored
control storage
register
address
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
JP10526078A
Other languages
English (en)
Other versions
JPS5532162A (en
Inventor
Saburo Kaneda
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 JP10526078A priority Critical patent/JPS5532162A/ja
Publication of JPS5532162A publication Critical patent/JPS5532162A/ja
Publication of JPS6115452B2 publication Critical patent/JPS6115452B2/ja
Granted legal-status Critical Current

Links

Landscapes

  • Executing Machine-Instructions (AREA)

Description

【発明の詳細な説明】 本発明はマイクロプログラムのアドレス生成方
式に関し、特にマシン命令の形式に応じてブラン
チを設けるか否かを決めるとともに、実行処理内
容の共通する部分が多いものについてはネツクス
ト・アドレスで届く範囲に該共通のマイクロプロ
グラムを格納する如く構成すると共に、マイクロ
命令ステツプの大小に応じてアドレス生成の態様
を変化して、マイクロプログラムのアクセスを能
率的に行なうものに関する。
マイクロプログラムにより制御されるデータ処
理方式では、読み出したマシン命令を実行するた
めに、その操作に対応するマイクロプログラムに
従つて制御が行なわれる。
従来はマシン命令から必要とするマイクロプロ
グラムを読み出す場合、第1図イに示す如く、マ
シン命令1のオペレーシヨナルコードPの一部
と、該マシン命令を実行するためのマイクロプロ
グラムアドレス2とを、該アドレス2を上位にし
て、コントロール・ストレイジ・アドレス・レジ
スタ3に連結し、該マシン命令を実行するに必要
な処理マイクロプログラムのアドレスを作成して
いた。
しかし、この方式によれば、コントロール・ス
トレイジに格納される先頭アドレス及びそれに続
くマイクロ命令の占有するエリアが狭いために、
上記マシン命令の処理が、マイクロ命令の1語で
終らないときに、コントロール・ストレイジの別
の部分に格納したマイクロ命令にブランチして、
処理を継続させなければならない。そして通常の
場合、マイクロ命令の1語で処理されるマシン命
令は非常に少ないので、大部分のマシン命令に対
しブランチを設けなければならず、ブランチ時間
により性能が落ちるために、処理効率が悪くなる
欠点がある。
これを改善するために、第1図ロに示す如く、
オペレーシヨナルコードPの下方に例えば2ビ
ツドを「00」に設定しておく。換言すれば、この
0ビツトの分だけアドレスを上位の方にずらした
ことになりコントロール・ストレイジの上記先頭
アドレス及びそれに続くマイクロ命令の占有でき
るエリアを固定的に広くすることが行なわれてい
る。しかしながら、オペレーシヨン毎にステツプ
数が異なり、短かいステツプで処理できるオペレ
ーシヨンも多いので、上記の如く、一律に占有エ
リアを拡大しても、今度はあまる場合もあり、か
えつてコントロール・ストレイジの占有効率が悪
くなる。しかも、このように占有エリアを広くし
ても処理ステツプの長い命令の実行には、やはり
ブランチを必要とする。
したがつて、本発明では、このような問題点を
改善するために、次のような方針でマイクロプロ
グラムを格納する如く定める。
(1) 処理ステツプの短かいものは、従来のブラン
チ方式では、ブランチ時間より性能が落ちるの
で、処理ステツプに応じたアドレスのずらしを
行なう。
(2) 処理が類似するものは、共通ルーチンが設け
られ、ネツクスト・アドレスで届く範囲にアド
され、同一ルーチンの共通化をはかる。
(3) 処理ステツプの長いものは、従来のブランチ
方式でも性能が落ちない。つまり、ステツプ全
体からみれば、ブランチ時間が占める割合が少
ないので、コントロール・ストレイジを有効に
使うために、従来通りのブランチを使用する。
なお、上記(2)について、第2図にもとづき、更
に説明する。例えば、加算を行なう場合に、(イ)レ
ジスタに格納されたデータのみを加算する場合
と、(ロ)レジスタに格納されたデータとメモリに格
納されたデータとを加算する場合がある。
上記(イ)の場合は、第2図イに示す如く、マイク
ロ命令としては、(i)レジスタRに格納されている
データを読み、(ii)これを加算し、(iii)レジスタRに
その結果を格納し、演算を終了する、というケー
スを示している。これはRR形式という命令で指
令されている。
また、上記(ロ)の場合は、第2図ロに示す如く、
マイクロ命令としては、(i)レジスタR1及びメモ
リに格納されているデータを読み、(ii)これを加算
し、(iii)レジスタR1にその結果を格納し、演算を
終了するというケースを示している。これはRX
形式という命令で指令されている。
上記(イ)及び(ロ)を比較すると、相違するのはそれ
らの(i)のみで他の(ii)乃至(iii)は全く一致しているこ
とがわかる。このように、加算という非常に類似
の処理の場合には、それらの(ii)乃至(iii)を共通にす
ることが可能である。
したがつて、第2図ハに示す如く、ADD、
ENDというステツプを共通ルーチン化してお
く。そして、いずれもREADのステツプのあとの
ネツクスト・アドレスにより上記共通ルーチンの
先頭番地を指示すれば、これらの処理のうち共通
部分が一方省略できることになる。この場合、少
ないビツト数でその位置を指示できること、ブラ
ンチ処理が行なわれる場合にはブランチ時間のた
め性能が落ちるために、処理ステツプが短かい場
合には能率が悪くなること、等の理由により、上
記共通ルーチン部分はネツクスト・アドレスで届
く範囲に位置させる必要がある。
そして本発明では、上記(1)、(2)、(3)に記載した
如き目的を達成するために、マイクロプログラム
が格納されるコントロール・ストレイジを有する
データ処理装置において、複数のマイクロプログ
ラムであつて類似のマイクロステツプを有するも
のについてはそれらの共通部分を共通ルーチン化
して格納すると共に、処理ステツプの短いマイク
ロプログラムについてはアドレスの位置移動を行
なつて格納し、かつ処理ステツプの長いマイクロ
プログラムについてはブランチを使用して格納す
るコントロール・ストレイジと、マシン命令の形
式を示すコードを識別するコード識別部を具備
し、上記コード識別部の出力により、上記マイク
ロプログラムが上記処理ステツプの短いものかそ
れとも長いものかを識別し、それに応じてコント
ロール・ストレイジ・アドレス・レジスタの生成
コードを制御する如く構成したことを特徴とす
る。
本発明の一実施例を第3図について説明する。
図中、4はマシン命令アドレス・レジスタ、5は
主記憶装置、6は命令バツフア、7はコントロー
ル・ストレイジ、8はOPコード・レジスタ、9
はフアンクシヨン・ブランチ機構、10はコント
ロール・ストレイジ・アドレス・レジスタ、11
はマイクロ命令コード、12,12′はデコー
ダ、13,13′はアンド回路、14,14′はオ
ア回路、15,15′はアンド回路、16,1
6′は否定入力付アンド回路をそれぞれ示す。
コントロール・ストレイジ7に格納されたマイ
クロプログラムは、上記(2)及び、第2図に関して
説明した如く、処理の類似するものは、共通ルー
チンが設けられ、ネツクスト・アドレスで届く範
囲にアドレスされている。
第3図イに示す如く、いま、マシン命令アドレ
ス・レジスタ4の内容により、主記憶装置5から
上記マシン命令が読出されると、該マシン命令は
命令バツフア6にセツトされる。この場合、上記
命令コードの一部には、該命令がどの形式に属す
るのかを識別する識別コードが記入されている。
命令バツフア6はOPコードをOPコード・レジ
スタ8に伝達し、更にフアンクシヨン・ブランチ
機構を径由してコントロール・ストレイジ・アド
レス・レジスタ10にコントロール・ストレイジ
7をアクセスするために必要なアドレス情報がセ
ツトされる。
この場合、第3図ロに示す如く、フアンクシヨ
ンブランチ機構9にはアンド回路、15,15′
及び否定入力付アンド回路、16,16′が設け
られている。そして、OPコード・レジスタ8の
0ビツト位置の情報がコントロール・ストレイ
ジ・アドレス・レジスタ10のビツト2位置に伝
達されるように構成され(以下これを0→2と表
す)、1→8、2→3、3→4、4→5または
11、5→6または12、6→9、7→10に伝達され
るように構成されている。なお、上記マイクロ命
令コードの形式を識別する識別コードがOPコー
ド・レジスタ8のビツト0位置に格納されてい
る。マイクロ命令コードの形式は、周知の如く、
RR、RX、RS、Si、SA及びSS等がある。
いま、第4図に示す如くRR及びRXを1つのグ
ループとし、他のものをもう1つのグループとし
て識別する場合を説明する。
いま、上記OPコード・レジスタ8のビツト0
位置に「0」が記入されればRRまたはRXであ
り、「1」が記入されるときはその他の形式のも
のである。
(A) 仮りに、上記OPコード・レジスタ8のビツ
ト0位置に「0」が記入されていたものとす
る。この場合は、第3図ロから明らかなよう
に、アンド回路15及び15′はオフとなり、
コントロール・ストレイジ・アドレス・レジス
タ10のビツト11位置及びビツト12位置には
OPコード・レジスタ8のビツト4位置及びビ
ツト5位置に格納された情報は伝達されず、そ
れぞれ「0」、「0」の状態になる。そして否定
入力付アンド回路16,16′がオンするの
で、OPコード・レジスタ8のビツト4位置及
びビツト5位置の情報はコントロール・ストレ
イジ・アドレス・レジスタ10のビツト5位置
及びビツト6位置に記入される。OPコード・
レジスタ8のその他のビツト位置の情報は、上
記した如く、コントロール・ストレイジ・アド
レス・レジスタ10の矢印先のビツト位置に記
入される。
したがつて、上記の如く、コントロール・ス
トレイジ・アドレス・レジスタ10に格納され
たマイクロ命令コードがRRまたはRX形式の場
合は、第4図に示す如く、ビツト11位置とビツ
ト12位置が「0」、「0」であり、上記(1)に相当
した状態にアドレスコードも合致する。
勿論、コントロール・ストレイジ7には上記
(1)に相当するように、処理ステツプの短いこれ
らの形式のものについては、ブランチを使用す
ることなく、処理が終了する。したがつて、ブ
ランチ時間により性能が落ちるようなことな
く、効率的な処理ができる。
(B) 次に上記OPコード・レジスタ8のビツト0
位置に「1」が記入されていたものとする。こ
の場合、第3図ロより明らかな如く、アンド回
路15,15′はオンとなり、否定入力付アン
ド回路16,16′はオフになる。したがつて
OPコード・レジスタ8のビツト4位置の情報
及びビツト5位置の情報は、それぞれコントロ
ール・ストレイジ・アドレス・レジスタ10の
ビツト1位置及びビツト12位置に入力されて、
第4図に示す、RS、Si、SA及びSSのタイプの
処理に対応した状態になる。したがつて、今度
は、上記(A)の如く、コントロール・ストレイジ
7の当該アドレスをアクセスする。そしてその
アドレスにはブランチ用のマイクロプログラム
が格納されており、第3図イに示される、マイ
クロ命令コード11に従つて、ブランチ制御フ
イールド、定数フイールド、ネクストアドレス
フイールド、A、Bブランチフイールドに格納
されたデータを使用することになる。これらの
マシン命令の如く、マイクロプログラムの処理
ステツプが長い場合には、全体の処理時間も長
くなるので、ブランチに時間を要したとして
も、全体の処理能率を大きく低下することには
ならない。この場合、周知の如く、該ブランチ
コードは、デコーダ12により解読され、コン
トロール・ストレージ・アドレス・レジスタ1
0に飛び先アドレスがセツトされる。
なお上記(2)の場合については、以上の説明で充
分理解できるので詳細な説明については省略する
ものの、第4図のいずれの形式の命令であれ、例
えば第3図イのマイクロ命令コード11に記載さ
れたネツクスト・アドレスにより、共通ルーチン
を使用するように構成されている。
以上説明した如く、結局本発明によれば、マイ
クロプログラムの処理ステツプ数の大小により、
コントロール・ストレイジに格納される態様を変
化させ、しかも類似の処理で共通ルーチンにする
ことが可能なものについては、ルーチンを一部共
通にしたので、コントロール・ストレイジの利用
効率が必常によくなるとともに、データ処理時間
もかなりのものについて短縮することが可能にな
る。
【図面の簡単な説明】
第1図は従来の方式の説明、第2図、第3図及
び第4図は本発明の方式及びそのアドレス状態を
説明する図面である。 図中1はマシン命令、2,2′は先頭アドレ
ス、3,3′はコントロール・ストレイジ・アド
レス・レジスタ、4はマシン命令アドレス・レジ
スタ、5は主記憶装置、6は命令バツフア、7は
コントロール・ストレイジ、8はOPコード・レ
ジスタ、9はフアンクシヨンブランチ機構、10
はコントロール・ストレイジ・アドレス・レジス
タ、11は命令コード、12はデコーダ、13,
13′はアンド回路、14,14′はオア回路、1
5,15′はアンド回路、16,16′は否定入力
付アンド回路をそれぞれ示す。

Claims (1)

  1. 【特許請求の範囲】 1 マイクロプログラムが格納されるコントロー
    ル・ストレイジを有するデータ処理装置におい
    て、複数のマイクロプログラムであつて頼似のマ
    イクロステツプを有するものについてはそれらの
    共通部分を共通ルーチン化して格納すると共に、
    処理ステツプの短かいマイクロプログラムについ
    てはアドレスの位置移動を行つて格納し、かつ処
    理ステツプの長いマイクロプログラムについては
    ブランチを使用して格納するコントロール・スト
    レイジと、 マシン命令の形式を示すコードを識別するコー
    ド識別部を具備し、 上記コード識別部の出力により、上記マイクロ
    プログラムが上記処理ステツプの短かいものかそ
    れとも長いものかを識別し、それに応じてコント
    ロール・ストレイジ・アドレス・レジスタの生成
    コードを制御する如く構成したことを特徴とする
    マイクロプログラム生成方式。
JP10526078A 1978-08-29 1978-08-29 Microprogram production system Granted JPS5532162A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP10526078A JPS5532162A (en) 1978-08-29 1978-08-29 Microprogram production system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP10526078A JPS5532162A (en) 1978-08-29 1978-08-29 Microprogram production system

Publications (2)

Publication Number Publication Date
JPS5532162A JPS5532162A (en) 1980-03-06
JPS6115452B2 true JPS6115452B2 (ja) 1986-04-24

Family

ID=14402678

Family Applications (1)

Application Number Title Priority Date Filing Date
JP10526078A Granted JPS5532162A (en) 1978-08-29 1978-08-29 Microprogram production system

Country Status (1)

Country Link
JP (1) JPS5532162A (ja)

Also Published As

Publication number Publication date
JPS5532162A (en) 1980-03-06

Similar Documents

Publication Publication Date Title
US3374466A (en) Data processing system
US3938100A (en) Virtual addressing apparatus for addressing the memory of a computer utilizing associative addressing techniques
CA1037159A (en) Processing link control system for data processing equipment
JPH0346850B2 (ja)
KR20010051522A (ko) 처리 시스템에서 스택, 팝 및 푸쉬 동작을 수행하기 위한장치 및 방법
KR920004279B1 (ko) 포인터레지스터를 구비한 마이크로프로세서
US3480917A (en) Arrangement for transferring between program sequences in a data processor
GB1003924A (en) Indirect addressing system
EP0336091A2 (en) Pipeline type microprocessor
JPH0552539B2 (ja)
US6772271B2 (en) Reduction of bank switching instructions in main memory of data processing apparatus having main memory and plural memory
EP0063612A1 (en) Numerical control unit
JP2985244B2 (ja) 情報処理装置
KR960029969A (ko) 파이프라인 처리기능을 갖는 데이타프로세서
JPS6148735B2 (ja)
JPS60189043A (ja) プロセツサ
JPS6146854B2 (ja)
JPH08297583A (ja) 割り込み処理装置およびその方法
JPS5840273B2 (ja) デ−タシヨリソウチ
JPS6226738B2 (ja)
JPH04199240A (ja) キャッシュシステム
JPS59186048A (ja) マイクロプログラム制御方式
JPS61157942A (ja) マイクロプログラム制御計算機
JPH02272654A (ja) キャッシュメモリ装置
JPS60223099A (ja) 連想メモリ