JPS60140432A - 情報処理装置 - Google Patents

情報処理装置

Info

Publication number
JPS60140432A
JPS60140432A JP24719283A JP24719283A JPS60140432A JP S60140432 A JPS60140432 A JP S60140432A JP 24719283 A JP24719283 A JP 24719283A JP 24719283 A JP24719283 A JP 24719283A JP S60140432 A JPS60140432 A JP S60140432A
Authority
JP
Japan
Prior art keywords
control
instruction
unit
control signal
section
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
Application number
JP24719283A
Other languages
English (en)
Other versions
JPH0522934B2 (ja
Inventor
Masahiro Hashimoto
眞宏 橋本
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.)
Hitachi Ltd
Original Assignee
Hitachi 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 Hitachi Ltd filed Critical Hitachi Ltd
Priority to JP24719283A priority Critical patent/JPS60140432A/ja
Publication of JPS60140432A publication Critical patent/JPS60140432A/ja
Publication of JPH0522934B2 publication Critical patent/JPH0522934B2/ja
Granted legal-status Critical Current

Links

Abstract

(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。

Description

【発明の詳細な説明】 〔発明の利用分野〕 本発明は情報処理装置に係り、特に命令の実行を制御す
る手段の構成法に関する。
〔発明の背景〕
情報処理装置の命令実行を制御するに当って、その制御
手段として、ハードワイアドロシックによる方法と制御
ストレッジによる方法とが知られている。ハードワイア
ドロシックによる制御方法は、処理速度が速い特徴を有
しているか、−たび処理装置が完成してしまうと、その
後に発生する処理装置の仕様変更や、仕様追加のたびに
論理回路の変更を伴なうという欠点がある。一方、制御
ストレッジによる制御方法の場合、速度はノ・−ドワイ
アドロジックに比べて遅いが、仕様の変更、追加にあっ
ては、制御ストレッジ内の制御語を豊きかえれば良く、
容易に追随できる利点がある。
高速な情報処理装置の典型的な制御構成法を第1図及び
第2図によシ説明する。
第1図は、情報処理装置の内部構成の概念図を示す。図
に於いて、1は命令解読ユニツ)(Iユニット)、2は
演算を実行する演算実行ユニット(Eユニット)、3は
主記憶およびそれを制御する記憶制御ユニット(SCユ
ニット)である。■ユニット1は、命令をSCユニット
3から読み出すとともに、その命令語で指定されたオペ
ランドをSCユニット3あるいは処理装置内部のレジス
タから読み出しEユニット2へ送付する。
Eユニット2は、エユニットから命令実行に必要なデー
タ及び制御情報を受けとると、指定された命令の実行を
行なう。この実行には四則演算、論理演算、データ転送
、装置内部の処理モードの変更等が含まれる。
第1図の構成に於いて、エユニット1とSCユニット3
はハードワイアドロシックで制御され、Eユニット2は
制御ストレッジで制御される。高速な処理装置でこの様
な制御方式がとられるのは、エユニット1とSCユニッ
ト3はその動作が、命令解読と記憶制御という内容に限
定されていること、装置の高速性を追及するには、この
部分はパイプライン制御を実施する必要があシ、制御ス
トレッジ方式には向かないということが挙げられる。
一方、Eユニット2は、演算実行を全て行なうから、動
作の種類も多岐多様になシ、装置の仕様変更にそくして
柔軟な制御構造にしておく必要から、制御ストレッジに
よる制御方法がとられてきた0 第2図はEユニット2での従来の制御ストレッジによる
制御方法の概念図を示す。図に於いて、4はEユニット
内のサブユニットである制御ストレッジ部を示す。この
中にはアドレスレジスタ(C8AR) 6、制御ストレ
ッジ本体(C8)7、読み出しデータレジスフ(C8D
R)8を含む。5は被制御演算部で、この中にはデコー
ダ9を含む。
命令の実行開始時、■ユニット1から信号線102を介
して、命令の実行のためのC8先頭アドレスをもらうと
、それをC3AR6にセットし、1サイクルの間に、該
C3AR6の内容でC87をアクセスし、該C87から
読み出したマイクロ命令をC3DR8にセットし、信号
線101を介して、これを被制御部5に送付する。Eユ
ニットで実行中の命令がマイクロ命令を数ステップ使用
する場合は、次のCSアドレスがC3DR8の一部に現
われ、これを信号線100を介してC3AR6に供給す
る。
信号線101は被制御部5内でデコーダ9に接続され、
マイクロ命令をデコードし、その出力に制御信号を発生
させる。デコーダ9は図では1つしか示していないが、
実際には、1つのマイクロ命令は複数個のフィールドか
ら成シ、したがってデコーダ9はそのフィールド分だけ
存在することになる。また、C3AR6に入力される信
号線103は、割シ込み等の例外ケース発生時に、その
マイクロ命令シーケンスの先頭を指すものでSL Eユ
ニット2内の制御論理が例外状態を検出したときに送付
するものである。
ところで、近年Eユニットを制御ストレッジで制御する
方式を取った場合、半導体、実装技術といった基本的な
テクノロジーの技術進歩に追随していけない傾向にある
。半導体技術の進歩は、ゲートアレイについていえば、
LSIチップ内に収容するゲート数の増加と、スイッチ
ングスピードの高速化をもたらす。ストレッジを構成す
るRAMLSIについていえば、チップ当たりの収容記
憶能力の増加とそのアクセスタイムの向上がはかれる〇 一般の論理部分、例えば第2図に於けるC8の被制御部
分5については、ゲートアレイの進歩によシ、従来より
少ないLSI数で論理回路を構成することができる。こ
の結果、LSI内のゲートのスイッチングスピードとL
SI間の実装距離の短縮により性能向上に寄与させるこ
とができる。
これに対し、C8部4では、一般論理に於ける程、処理
速度の増加は期待できない。これは、RAMチップ内に
収容できる記憶素子の数が、記憶素子の巾ではなく、記
憶深長という面で増加するからである。すなわち、ある
テクノロジーでRAMチップ内の記憶素子が、読み出し
デー夕巾、書き込みデータ中が1ビツトで、その中の記
憶素子数がAビットであったとすると、その後のテクノ
ロジーによる集積度の進歩は、データ中が同一で、その
中の記憶素子数が4Aビツトになるといった形で実現さ
れる。一方、制御ストレッジから読み出すマイクロ命令
の巾、すなわち、第2図のC3DR8の巾はテクノロジ
ーによらず、処理方式の論理方式によシ定まる。例えば
、C3DR8の巾が64ビツトであるなら、テクノロジ
ーの進歩のいかんにかかわらず64個のRAMチップを
使用することとガる。このことはC8部4では、RAM
チップ自身のアクセス時間の短縮は期待できるが、被制
御部5.に於ける程、チップ間実装距離の短縮を期待で
きないということを意味する。
この結果、Eユニットの構成を第2図の様な従来通シの
C8制御構成とすると、処理速度のネックがC8部周辺
で発生してしまう危険がある。これを避けるには、ハー
ドウェア制御論理とし、制御論理を被制御論理部5内に
分散して配置すれば良いのだが、こうすると、装置の仕
様変更への追随性が悪くなる。
〔発明の目的〕
本発明の目的は、演算実行ユニットに論理制御構造の柔
軟性を保つぺぐ制御ストレッジ方式を採用しながら、か
つ処理速度のネックがC8部周辺とならない制御方式を
提供することにある。
〔発明の概要〕
本発明では演算実行ユニット(Eユニット)に、ハード
ワイアド論理による制御方式と制御ストレッジとが混在
する制御方式を使用する。この場合、処理速度を重視す
る命令では、ハードワイアド論理により命令の実行は高
速に行なわれる。命令の実行手順が複雑な命令では、制
御ストレッジ(すなわちマイクロ命令)により制御され
る。さらに、Eユニットがマイクロ命令によって制御さ
れている状況にかんがみ、マイクロ命令からハードウェ
ア制御論理の出力と等価な制御信号を発生させるか、も
しくは、マイクロ命令からハードワイアド論理を起動さ
せる手段を持つ。これによシ、従来技術に於けると同様
、処理装置の動作仕様の変更といった場合に於いても、
制御ストレッジ内のマイクロ命令を入れ替えるだけで対
処し得る。
エユニットにて命令が解読されると、Eユニットのハー
ドワイアド制御論理に起動がかかる。同時に、制御スト
レッジ部に対してもマイクロ命令を読み出すだめのアド
レスが送られる。高速性を要求される命令では、ハード
ウェア制御論理自身で、その命令の実行制御を完了し、
その次の命令がまたハードウェア制御論理に対し起動さ
れる。
処理内容が繁雑な命令乃至差程の高速性を安水されない
命令では、命令開始時点はノ・−ドワイアド論理に起動
がかかるが、その後1乃至数サイクルの後マイクロ命令
に制御が渡る。この後、マイクロ命令が命令実行を完了
するまで制御し続ける。
この除、ハードワイアド制御論理の一部を起動した方が
、処理上、速度上、有利な場合がある。例えば、乗算命
令がノ・−ド制御の場合、そのノ・−ド制御部分をマイ
クロ命令から起動する。ただし、実行制御の進行管理は
マイクロ命令にあり、起動されるハードワイアド制御論
理の一部に対してのみ起動がかけられ、命令開始時にハ
ードワイアド論理全体に起動がかかったのと事情が異な
る。
〔発明の実施例〕
第3図に本発明を実施した場合のEユニットの概略構成
図を示す。図に於いて、4は制御ストレッジ部であり、
第2図の4と同じ構成要素を持つ。
11はハードワイアド論理回路によるEユニット制御論
理部、5はEユニットの他の論理回路で演算器、レジス
タ割シ込み検出回路等を含む。
命令開始時点に信号線104を介し、■ユニットが命令
コードをハードワイアド制御論理部11に送り込む。同
様にマイクロ命令に制御が渡る場合、信号線102を介
してマイクロ命令の第1ステツプのアドレスが制御スト
レッジ部4に送られる。命令の実行が開始すると、ハー
ドワイアド制御論理部11は命令コードを解読してイン
タフェース106に制御信号を発生させ、Eユニットの
被制御論理部5を動かす。もし、命令がハードワイアド
制御論理部11だけで制御し切れるものなら、マイクロ
命令に制御を移すことなく命令の実行亦完了し、次の処
理のため新たな命令コードが■ユニットから送られてく
る。実行する命令がマイクロ命令制御をともなうもので
ある場合は、ハードワイアド制御論理部11が命令開始
時点で起動され、ついで1〜数サイクルの動作後、マイ
クロ命令を起動する。この時、ハードワイアド制御論理
部11の出力インタフェース106中の信号線109が
1′となる。この信号線109をTOC8信号線と以後
呼ぶ。TOC8信号線109が“1”になると、被制御
論理部5内のC8起動管理部が動作を開始し、信号線1
11を介して制御ストレッジ部4のマイクロ命令読み出
しを制御する。同時に、被制御論理部5は、制御ストレ
ッジ部4からの出力であるC8 DRの内容を信号線1
01を介して受けとり、以後、命令終了まで制御ストレ
ッジ部4から制御を受けることとなる。
第4図はハードワイアド制御論理部11の構成例を示す
。図に於いて、信号線108はマイクロ命令から起動さ
れる場合″1″となる信号線であシ、命令開始時にはθ
″となっている。信号線108については、第3図の信
号線105とともにマイクロ命令による再起動として後
述する。命令開始時、信号線104を介してエユニット
から命令コードが送られてくるが、°信号線108が0
”ということで、これを命令コードレジスタ12にセッ
トする。この内容は、デコーダ13に入力され、命令コ
ードに対応して演算ユニット各部を動作させるための制
御信号群がインタフェース106に出力される。
インタフェース106はTOCS信号線109と他の制
御信号線群110からなる。また、該ハードワイアド制
御論理部11の制御サイクルが数サイクルに及ぶ場合、
命令に応じてシフトレジスタ群14゜15を駆動する。
シフトレジスタ14.15は、演算に必要なサイクル数
を管理するレジスタであり、その出力はデコーダ13に
戻される。これにより、デコーダ13は各サイクルに必
要な制御信号を命令コードとシフトレジスタ群14.1
5で示されるサイクル数とによシ適時発生せしめる。
この制御信号の発生方法については後述する。
第5図に被制御論理部5が?)−ドワイアド制御論理部
11とマイクロ命令の両方から制御される模様をメイン
アダーを例にとって説明する。
第5図において、16.17,18.19はワークレジ
スタ、23はメインアダーである。この論理ブロックで
は、ワークレジスタ16.17,18.19の内のどれ
か2つがメインアダー23に入力され、該メインアダー
23に於いて加減算あるいは論理演算が行なわれ、その
結果が核当ワークレジスタに戻される。各ワークレジス
タは、装置内の他の部分と入出力関係を持つが、第5図
では簡単のため省略しである。
この論理ブロックを制御するためには、3種の制御信号
が必要である。第1はメインアダー23に入力されるワ
ークレジスタを選定する制御信号であシ、これはデコー
ダ21から得られる。第2はメインアダー23で行なう
演算を指定する制御信号であシ、これはデコーダ22か
ら得られる。
最後は演算結果を格納するレジスタの選択であシ、これ
はデコーダ20より得られる。デコーダ20〜22には
、ハードワイアド制御論理部11の出力信号線110と
制御ストレッジ部4の出力線すなわちC3DR出力線1
01が入力される。さらに、デコーダ20〜22には、
これら2組の信号線の内いずれか一方が入力される様ア
ンドゲート24が機能する。すなわち、アンド回路24
の出力が′1″のとき、デコーダ20〜22には制御ス
トレッジ部4のC3DR110の出力線101が、0″
のときハードワイアド制御論理部11の出力線101が
入力される。
AND回路24の入力の内、信号線108はマイクロ命
令がハードワイアド制御論理部11を起動するとき1”
となるもので命令開始時点は0”になっている。信号線
108は当面゛0″とし、インバータ24′の出力は1
nであるとする。信号線111はマイクロ命令による制
御状態のとき1”となるC8選択線であシ、命令開始時
はやはり“0”となつている。これによシ、命令開始時
はANDゲート24の出力は10″となっているから、
ノーードワイアド制御論理部からの出力インタフェース
110がデコーダ20〜22に入力される。実行中の命
令がハードワイアド制御論理だけで終結してしまうなら
、信号線111は“0″のままであるが、制御ストレッ
ジ部4のマイクロ命令に制御か渡るものなら、ハードウ
ェア制御論理部内 信号線109を”1”にする。この信号線が”1”にな
るとC8選択線111が”1′となシ、従ってAND回
路24の出力が1″となり、デコーダ20〜22には、
マイクロ命令を実行すべく制御ストレッジ部4のC3D
R出力@ 101が入力され、以後、第5図の論理ブロ
ックはマイクロ命令により制御されることとなる。同時
に、C8選択線11工は以後命令が終fするまで1”と
なシ続け、命令終了時に次の命令開始に備えるべく0″
となる。
次に、第4図のハードウェア制御論理部内のデコーダ1
3の動作を、第5図の論理ブロックを用いて2進10進
変換命令を実行する場合を例に説明する。変換動作は3
2ビツトの2進数を10進数に変換するとする。この命
令の処理には、第5図のワークレジフタ、メインアダー
の他にシフタも使われるが、第5図では省略されている
。演算処理は以下の通如実行される。命令の開始時点、
符号付2進数がワークレジスタ17にセットされている
とする。
第1ステップ:ワークレジフタ17の内容をメインアダ
ー23に入力し、2の補数 をとる。ワークレジスタ17の内 容をシックに送り、0ピツトのシ スト(事実上、シフトなし)を行 なう。ワークレジスタ17の内容 が正ならシック出力を、負ならメ インアダー23の出力をワークレ シフタ17に再セットする。しか して、2進数絶対値がワークレジ フタ17にシフトされる。同時に 2進数の符号ビットを演算制御用 ラッチにセットする。
第2ステップ:ワークレジスタ17の内容をシフタに送
シ、左1ビツトシフトする (2M数先頭ビットが、シフタの 第0ビツト目にくる)。1ビツト 左シフトした結果をワークレジス タ17にセットする。ワークレジ フタ16とワークレジスタ18を ″′0″クリアする。
第3〜33ス:ワークレジスタ16と18のデーテップ
 タをメインアダー23に入力し、該ワークレジスタの
下から第4ビ ット目から第5ビツト目へ前サイ クルのシックの先頭ビットを入力 し、2進10進変換を行ガう。ワー クレジスタ17の内容はシフタに 送シ、1ピツト左シフトする(次 サイクルで変換する2進数をシフ タの先頭に持って行くため)。メ インアダー23の演算結果をワー クレシフタ16と18に戻す。シ フタの1ビツト左シフトした結果 をワークレジスタ17にセットす る。
第34ステップ:ワークレジスタ16をメインアダー2
3に入力し、第1ステツプで セットしておいた演算制御ラッチ を参照して、10進の正負符号をメ インアダー23の出力に埋め込む。
その結果をワークレジスタ16に セットする。
第35ステップ:ワークレジスタ16の内容をSCユニ
ットに送り、演算結果をスト レッジに書き込む。
ここで第3〜33ステツプの2進化10進変換の概要は
次の通りである。ワークレジスタ16と18から送られ
る前サイクルの演算結果を用い、メインアダー23で前
サイクル結果を10進2倍する。
シックの先頭ビットから下4ビット目からのキャリーに
入れるデータは今サイクルに加算される2進数である。
10進2倍は以下の様である。ワークレジスタ16と1
8からは同一のデータがくる。
この内、ワークレジスタ16のデータは左1ビツトシフ
トされる。もし、あるディジットの値がO〜4なら2倍
した値は左1ビツトシフトしたものと一致する。5〜9
なら6を加え込むことによって上位ディジットへキャリ
ーを伝えるとともに、そのディジットは2進化10倍の
正しい結果を得る。このため、ワークレジスタ18のデ
ータは各ディジットごとに調べられ、0〜4なら0″を
、5〜9なら′6″を出力するようメインアダー23の
入力で操作される。この結果が左1ビツトシフトされた
ワークレジスタ16の内容と2進加算がとられ、かくて
10進2倍の結果かえられる。
以上の動作を、ワークレジスタ16,17.18のセッ
トとメインアダー23への入力条件とメインアダー23
の演算条件とについて整理すると第1表の様になる。
第1表 第6図に第4図内のデコーダ13の詳細図を示す。これ
と上の2進10進変換の表を用いてデコーダ13の動作
を説明する。第6図はデコーダ13の内、第5図のメイ
ンアダ一部分を制御するに必要な制御部分のみを示す。
第6図において、該デコーダ13はTOC8信号109
と他の制御信号115〜121を発生する。この内、1
15はEOP (ErLdof 0peration)
 信号であり、ハードワイアド制御論理だけで命令実行
が終了する場合、最終サイクルで11′″となる。この
信号115が”1″となると、次の命令処理のため必要
なデータ、制御情報をIユニットから受け取るべく働く
。例えば第4図の命令コードレジスタ12はEOP信号
115が1″となると、次のステップの命令コードを受
けとる。信号116〜121は第4図の演算制御出力信
号群110の一部であり、116はメインアダー23へ
のデータ入力指定制御信号であυ、ワークレジスタ16
.17のいずれを入力すべきかを指示する。117はメ
インアダー23の他の入力指定制御線であシ、ワークレ
ジスタ18゜19の選択を指示する。以下、118はメ
インアダー23の動作指定、119,120,121は
ワークレジスタ16,17.18のセット指示信号線で
あシ、各ワークレジスタにメインアダー23もしくは他
の演算器(例えばシフタ)からの出力を選択してセット
することを指示する。これら信号線116〜121と第
5図の対応は、116 、117はデコーダ21に、1
18はデコーダ22に、119〜121はデコーダ20
に供給される。なお、各信号は複数ビットのエンコード
された形式をとっている。
第6図のラッチ32は、ハードワイアド制御論理か2サ
イクル以上動作するとき1″となシ、その出力は反転回
路32′を介してANDN−ゲート群に接続される。こ
れにより、命令の第1サイクルではデコーダ30の出力
群109α、 115a〜121αが信号線109及び
115〜121に導かれる。エンコーダ31は第4図の
シフトレジスタ群14.15の出力信号群123をエン
コードする回路である。命令の第1サイクルでは、シフ
トレジスタ群14.15は起動されない。したがって、
シフトレジスタ14.15の出力信号群123は”0″
であり、その結果、制御信号109b、 115b〜1
21bも全て0″となり、ANDN−ゲート群の出力が
信号&!109 、115〜121に正しく反映される
。ハードワイアド制御論理が2サイクル以上を制御する
命令では、デコ−ダ30は、アンドゲート群33へ制御
信号を発生するとともに、信号線群122の内1つを′
1″とする。信号線群122はシフトレジスフ群14 
、15の1系列を起動するとともにラッチ32を−“1
″にセットする。したがって、第2サイクル以降はエン
コーダ31を介して、制御信号109b、 115.6
〜121bを発生させる。
ラッチ32のリセットには信号群123aが接続されて
いるが、これは信号線群123の一部であって、各シフ
トレジスタ14.15の最終ラッチの出力から成シ、ハ
ードワイアド制御の最終サイクルにラッテ32をリセッ
トすべく働く。また、信号群123αはエンコーダ31
にも入力され、命令に応じて116b〜121bを発生
させるが、特に109A 、 115bのいずれかを”
1′とする。すなわち、その後に、マイクロ命令制御が
続くのなら信号線109bを“1″とし、TOC8信号
を発生させる。ハードヮイアド制御で完結するものであ
るならEOP信号115bを11111とする。
2進化10進命令の場合の第6図の動作は次の通シであ
る。デコーダ30の出力の内、TOC8信号109α、
EOP信号115αは、2サイクル以上制御する命令だ
から0″となる。116α〜121αは第1表の第1ス
テツプに対応する制御信号パターンを出力する。すなわ
ち、116αはワークレジ17選択、117aは″′0
″出力、118αは減算指示、119αはメインアダー
またはシフタの選択的セット、120α。
121αはNo operation (何もしナイ)
 ヲ出カーt−ル。
同時に、出力線群122の内、2進10進命令に対応す
るシフトレジスタ(例えば14)を起動する信号を′1
”とする。この結果、信号線123には、シフトレジス
タ14の動作に対応して、第2サイクル以降、2進10
進変換命令の処理ステップに対応する信号のみ1″とな
る。例えば、第2ステツプではエンコーダ31により1
09h、 115bを10″に、119hをワークレジ
スタ16の0クリア、120bにワークレジスタ17の
シフタ出力セット、121bにワークレジスタ18の0
クリアセツトパターンを、他の出力にはNo oper
ation パターンを出力する。同様に、第3〜33
ステツプ及び第34ステツプでも第1表の対応動作を指
示すべく、エンコーダ31から出力信号が発生する。第
35ステツプに対応する123の信号が′1″となると
、これは123αに含まれ、ラッチ32をリセットする
と同時に、エンコーダ115bをl′1″とし、他はN
o operatiOルパターンを出力する。
第7図は制御ストレッジ部4と被制御論理部5の詳細図
である。第7図中、制御ストレッジ部4内にあるC8逐
次制御部35は、マイクロ命令の動作中では、C3DR
8へのセットとその分岐アドレスのCS AR6へのセ
ットをすべく所望の制御信号を発生させる。命令開始時
点では、C8逐次制御部35はエユニットから出される
線102のCSアドレスをC3AR6にセットするのみ
である。
TOCS信号109が1”になシ、被制御論理部5のC
8起動回路38がC8選択線111を1″にすると、C
8逐次制御部35は、C3DR8のセットとC3AR6
への分岐アドレス線100の取シ込みを行うべく動作す
る。これでマイクロ命令による制御に移り、その最終の
マイクロ命令でEOPが発せられて、C3DR出力線1
01の一部である信号線(BOP信号線)113が1”
になり、CS起動回路38が線111を”0″に戻すと
、C8逐次制御部35は逐次制御を停止し、信号線10
2の情報をC8AR6にセットして次命令に備える〇第
8図は被制御論理部5におけるC8起動回路38の詳細
図である。前記の如く、C8選択線111はTO,C8
信号109がハードワイアド制御論理から発せられると
1”に[へマイクロ命令でEOP信号113が発せられ
ると”0″になる。しかし、実際には、この他に強制的
に”0″もしくは“1″にする機能が必要である。ハー
ドワイアド制御論理の実行中に割シ込みが検出された場
合、処理装置内では割り込みプログラムに制御を渡すべ
く特殊な処理(OLD PSWのストレッジへの格納と
New PSWの設定)か必要となるが、これは、マイ
クロ命令で制御する。したがって、割シ込み発生時はC
8選択線111を強制的に′1”とする必要がある。
また、分岐命令の直後では、C8選択線111を強制的
に“0”とすることが必要となる。例えば、命令αが分
岐命令で、これに命令6が続き、該命令すは処理に数サ
イクルか\す、第1サイクルのみハードコア制御論理部 クロ命令か制御するとする。この場合、分岐命令αの実
行サイクルに分岐判定が下るだろう。このとき第4図の
命令コードレジスタ12には締金6がセットされておシ
、そのサイクルの終了時点には、C8選択線111が1
″となる。しかし、分岐命令の後続命令は、高速な処理
装置にあっては、分岐成功ケースもしくは分岐不成功ケ
ースの分岐判定結果を待つことなく実行する様働く。分
岐成功、不成功のどちらの命令を分岐命令の次にEユニ
ットに送るかは分岐命令の種類に応じて決められる。こ
のようにして直ちにEユニットに送られる命令を予測命
令と呼ぶ。もし分岐判定結果が予測成功であるなら命令
すはそのま\実行されるが、分岐判定が予測不成功なら
、命令すの実行は停止され、予測したと逆の命令があら
ためて■ユニットでデコードされることとなる。このと
き、C8選択線111は命令すがTOC8信号を出して
も“o″としなければならない。なぜならば、命令すは
分岐予測失敗の結果実行されないものであり、これにか
わる命令が■ユニットから送られ、従って、サイクル3
以降、はじめに働く制御論理はハードコア制御論理部と
なるからである。
さて、第8図において、ラッチ25はC8選択ビットで
あり、その出力はC8選択線111に他ならない。命令
開始時、ラッチ25はθ″で、反転回路41の出力は1
”である。このときハードヮイアド制御論理からTOC
8信号109が発せられ、かつ、分岐予測失敗を知らせ
る信号線114が@0″で反転回路42の出力が1″カ
ら、アンド回路26が開き、ラッチ25は1”になる。
この後、マイクロ命令に制御が渡シ、その命令の最終マ
イクロ詰合ステップがくると、C3DRのEOPビット
が1″となり、この結果、信号線113が@1″となυ
、アンド回路27、OR回路29を介してラッチ25は
10″にリセットされる。まだ、現在Eユニットで実行
中の命令で分岐予測失敗の判定が下った場合、信号線1
14が“1″となり、同様にラッチ25は0″となる。
また、現在実行中の命令で割シ込みが発生した場合は信
号線112が1″となり、ラッチ25は”1”となる。
第7図にもどシ、割シ込み信号線112は被制御演算部
5内の割込み管理回路37から出され、分岐予測失敗を
示す信号線114は演算部36から出される。すなわち
、割り込み管理部37は、演算部36で発生する演算例
外割り込み、あるいはSCユニットで発生するアクセス
例外、外部割シ込み等を入力として割シ込み要因が発生
すると、命令処理の適当なタイミングで割シ込み信号線
112を出力させる。分岐予測失敗は分岐命令実行時に
、演算部36内のコンディションコードと分岐命令のマ
スクが比較され、その結果として信号線114を出力さ
れる。なお、割り込み信号線112が“1″となると、
C8逐次制御部35は、割シ込み管理回路37から出力
される例外処理先頭アドレス103をC3AR6にセッ
トし、この後、C3DIJIのセットとその分岐先アド
レス100のC3AR6へのセットを行なうべく動作す
る。
次に、本発明の実施例全体を通しハードヮイアド制御論
理とマイクロ命令の制御遷移について説明する。第9図
はそれを説明するタイムチャートである。
第4図の命令コードレジスタ12は命令の実行開始1サ
イクル前にヒツトされ、1サイクルの間にデコーダ13
を通り、第5図のデコーダ2o乃至22に到着する。デ
コーダ20〜22には、第5図では省略しであるが、少
なくとも実行サイクル開始時に信号線110あるいは信
号線101の内容を保持するラッチを含む。
さて、第9図において、1サイクルの初しめに命令αの
命令コードが、命令コードレジスタ12にセットされる
と、ハードコア制御論理部のデコード結果によシ第2サ
イクルで命令αの実行が行なわれる。第1サイクルの先
頭では制御ストレッジ部4のC3AR6にも命令aに対
応するCSアドレスがセットされているだろうが、命令
aは1サイクルで完了する命令ゆえ、この結果はC3D
Rに反映されない。命令コードレジスタ12にセットさ
れた命令αは、1サイクルで終了する命令ゆえ、1サイ
クル目の間に、最終天性サイクルの実行であることを示
す制御信号(EOP信号)を発行する。
このEOP信号がでると、命令コードレジスタ12とC
8ARfiは、次の命令に備えるべく第2サイクルの先
頭で命令すの命令フードと、マイクロプログラムの第1
ステツプアドレスをセットする。
EOP信号は、ハードワイアド制御論理部11の場合、
第6図に示した様に命令の最後に信号線115を1″と
する。一方、制御ストレッジ部4のマイクロプログラム
に制御が渡った場合、マイクロ命令の中にEOPを示す
ビットを1ピツト用意しておき、その最終ステップでの
み′1″となる様コーディングしておけばよい。こうす
ると、ハードワイアド制御論理部11とC8制御部4の
両方からEOP信号がでるが、これは、第5図のデコー
ダ20,21.22の入力をAND回路24の出力で選
択としたと同じ制御を施した後に論理回路各部へ送付す
る。
第9図の砧令すは、その実行に5サイクルか\シ、シか
も命令の第1サイクルのみハードワイアド制御論理が動
作し、以後はマイクロ命令が制御する例である。命令す
の実行開始の1サイクル前、すなわち、第9図のサイク
ル2の先頭で命令すの命令コードが命令コードレジスタ
12にセットされると、ハードワイアド制御論理部11
は、演算制御に必要な制御信号とともに第2サイクル目
以降はマイクロ命令に制御を渡すことを示す’rocs
信号線109を@1”にする。この結果、サイクル2の
終りにC8選択線111が工”にセットされ、かくして
第5図のデコーダ20,21.22にはCSDRの出力
軸101が入力されることとなる。C8選択線111が
1”になると、制御ストレッジ部4はサイクル2の先頭
でセットされたC3AR6の内容でC87を読み出して
、サイクル3の間にC3DR8にセットし、これをサイ
クル5で実行する命令6の第2ステツプの制御情報とし
て使用する。また、サイクル4の先頭では、サイクル3
でセットされた第2ステツプ(b−2)のC3DR8か
ら分岐先アドレスをC8AR6に送り、第3ステツプ(
b−3)のアドレスとしてセットする。この結果、サイ
クル5にてC3DR8に第3ステツプ(A−3)のマイ
クロ命令がセットされ、その内容により、サイクル7で
第3ステツプの実行制御が行なわれる。また、第3ステ
ツプは命令すの終了であるから、C3DIRsはそのE
OPビットが1”であり、命令の終了を宣言する。その
結果、サイクル7のはじめに命令コードレジスフ12と
C3AR6に次命令の実行開始に必要な命苓コードとマ
イクロ命令の第1ステツプのアドレスをセットする。同
時にC8選択線111をθ″にし、サイクル7に於いて
ノ1−ドワイアド制御論理に制御権を渡す。
第9図に於いて、サイクル1とサイクル6でEOP信号
がでるが、前者はノーードワイアド制御論理部11から
の出力、後者は制御ストレッジ4のC3DRsの出力で
ある。これらEOP信号のどちらを使用するかは、第5
図のデコーダ20〜22と同様、C8選択線111の状
態による。サイクル1ではC8選択線111が1”ゆえ
、ノ1−ドワイヤド制御論理出力が、サイクル6ではC
8選択線111 カ”1” ユ、t、C3DR出力力E
OPatMノ11HtflJ御部分に送付されることと
なる。
また、第9図では次の点に注意すべきである。
図に於いて、C3AR6からC3DR8のセットまでに
1.5サイクル、C3DR8から実行サイクルまでに1
.5サイクルかかシ、結果としてマイクロ命令で制御さ
れている場合、その実行は1サイクルおきに成される。
これに対し、ハードワイアド制御論理が制御しているサ
イクル2、サイクル7.8は毎サイクル実行75z成さ
れるのに対比されるべきである。これは、制御ストレッ
ジ自身が一般論理の演算スピードに゛おいつけない状況
を示すものであシ、したがって、高速を吸水される命令
ではノ・−ドワイアド制御論理により、また、高速性は
差程ではないが処理内容が複雑なものはC8制御をとる
所以である。
次に、マイクロ命令に制御がわたった後に、再度ハード
ワイアド制御論理を駆動する様子を示す。
この様なものに例えば乗算がある。すなわち、特殊カ命
令に於いては、その処理過程で乗算を行なう必要があり
、その様な場合にはハードウェア制御論理内の乗算部分
を起動する。この場合、・・−ドワイアド制御論理の全
体を動作させるということはない。この理由は、乗算命
令の結果として通常汎用レジスタにその結果を格納する
が、他の命令にあっては必らずしも汎用レジスタが結果
の格納場所とは限らない。よって演算ユニットのワーク
レジスタに結果を入れるまでを制御するハードウェア制
御論理部分のみマイクロ命令から起動するが、他の部分
は起動しない。
マイクロ命令から起動される部分には、ハード動作モー
ドが供給される。これは第4図の命令コードレジスタ1
2の入力と第5図のアンドゲート24の入力として懺わ
れる。マイクロ命令からの再起動は、上述した様に部分
的に行なわれるから、マイクロ命令の再起動の対象と力
らない部分には信号線108は供給されない。この様な
部分では、第5図のアンドゲート24の入力としては、
C8選択線111のみが入力される。また、起動される
ハードワイアド論理は、複数種類あって良く、例えば、
整数型演算器と浮動小数点演算器を独立にもつ装置では
、それぞれに専用のハード動作モードを作れば良い。
ハードワイアド制御論理の再起動方法を第10図のタイ
ムチャートを参照しながら説明する。
第10図に於いて、命令が開始されるとハードワイアド
制御論理が起動され、ついで、ハードウェア制御論理か
らTOC8信号が発せられるとマイクロ命令に制御が渡
シ、このときC8選択線111も”1”になる。この後
、マイクロ命令にょp再起動するハードワイアド制御論
理のハード制御モード線108を1″にする。この後、
制御ストレッジ部4からC3DRの一部を命令コードと
して信号線105を介してハードワイアド制御論理部1
1に送る(第3図参照)。第4図に示す如く、ハードワ
イアド制御論理部では、信号線108が1″の状態では
命令コードレジスタ12に制御ストレッジ部4から送ら
れたC3DRの一部を信号線105よシセットし、デコ
ーダ13、シフトレジスタ群14.15を使用して出力
制御信号群106を発生する。
今、再起動されたブロックがメインアダーだとして、第
5図を見るに、AND回路24の一方の入力にハード制
御モード信号108が反転回路24′を介して接続され
ている。ハード制御モード信号108は1工”のため、
ANDゲート24は0″を出力し、デコーダ20〜22
にはノ1−ドワイアド制御論理の出力110が入力され
る。
第10図に戻るに、再起動されたハード制御論理が制御
を終了するとTOC8もしくはEOPを出すから、これ
によシ、・・−ド制御モード信−′108をリセットす
る様にしておけば、以後、制御は全てマイクロ命令に戻
ることとなる。また、この動作中C8選択線111はM
ITlのままである。この結果、ハードウェア制御論理
の発行するEOPはハード制御モードラッチのリセット
以外には使用されない。この後マイクロ命令は更に必要
な処理を行ない、命令の最終ステップで自身でEOPを
発行し命令を終了する。
ハード制御ラッチのリセットはハードウェア制御論理か
らのTOCSまたはEOPでなく、マイクロ命令自身に
よってもかまわない。この場合、マイクロ命令はハード
制御論理に費やす実行サイクル数をあらかじめ知ってい
るか、もしくはTOCSまたはEOPビットをマイクロ
命令のテスト機能によって調べ、ハードウェア制御論理
の動作終了後、マイクロ命令でリセットを行なえばよい
以上が本発明の詳細な説明である。実施例の説明に於い
ては、ハードワイアド制御論理はゲートアレイで構成す
るとしたが、命令コードのデコード等に対してはRAM
を使用してもかまわない。
〔発明の効果〕
本発明によれば、高速な制御論理と低速だが柔軟性のあ
る制御iia理とにより制御可能な制御論理が得られ、
これによシ装置の仕様変更に追随できる高速な制御方式
を得ることができる。
【図面の簡単な説明】
M1図は情報処理装置の全体構成図、第2図は従来の制
御ストレッジによる演算実行ユニットの概念図、第3図
は本発明による演算実行ユニットの概念図、第4図は第
3図のハードクイアト制御論理部の構成図、m5図は第
3図における被制御論理部の一例を示す図、第6図は第
4図のデコーダ部の詳細図、第7図は第3図の制御スト
レッジと被制御論理部の関係を示す図、第8図は第7図
のC8起動回路の詳細図、第9図及び第10図は本発明
の詳細な説明するタイミング図である。 1・・・命令解読ユニット、2・・・演算実行ユニット
、3・・・記憶制御ユニット、4・・・制御ストレッジ
部、5・・・被制御論理部、11・・・ハードクイアト
制御論理部。 オ 1 図 第2 図 A−7図 オ8 図 オ9図 210I図

Claims (3)

    【特許請求の範囲】
  1. (1) 記憶装置のアクセスを制御する記憶制御ユニッ
    トと、記憶制御ユニットによシ読み出された命令の解読
    及びそれに付随した処理を行う命令解読ユニットと、命
    令解読ユニットから命令実行に盛装なデータ及び制御情
    報を受け取り指定された命令の実行を行う命令実行ユニ
    ットを具備してなる情報処理装置において、前記命令実
    行ユニットに第1制御信号発生手段と第2制御信号発生
    手段とを設け、命令実行開始時点では前記第1制御信号
    発生手段からの制御信号で被制御論理部を制御し、その
    後必要に応じ前記第2制御信号発生手段に制御を移し、
    命令終了まで該第2制御信号発生手段からの制御信号で
    被制御論理部を制御することを特徴とする情報処理装置
  2. (2)前記第2制御信号発生手段に制御を移した後、/
    久要に応じて再び前記第1制御信号発生手段に制御を移
    すことを特徴とする特許請求の範囲第1項記載の情報処
    理装置。
  3. (3) 前記第1制御信号発生手段はノ)−ドワイアド
    論理による制御形式をとシ、前記第2制御信号発生手段
    はマイクロブ四グラムによる制御形式をとることを特徴
    とする特許請求の範囲第1項もしくは第2項記載の情報
    処理装置。
JP24719283A 1983-12-28 1983-12-28 情報処理装置 Granted JPS60140432A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP24719283A JPS60140432A (ja) 1983-12-28 1983-12-28 情報処理装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP24719283A JPS60140432A (ja) 1983-12-28 1983-12-28 情報処理装置

Publications (2)

Publication Number Publication Date
JPS60140432A true JPS60140432A (ja) 1985-07-25
JPH0522934B2 JPH0522934B2 (ja) 1993-03-31

Family

ID=17159807

Family Applications (1)

Application Number Title Priority Date Filing Date
JP24719283A Granted JPS60140432A (ja) 1983-12-28 1983-12-28 情報処理装置

Country Status (1)

Country Link
JP (1) JPS60140432A (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002073331A (ja) * 2000-08-29 2002-03-12 Pacific Design Kk データ処理装置

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS55108053A (en) * 1979-02-14 1980-08-19 Hitachi Ltd Microprogram high speed control system
JPS5748137A (en) * 1980-09-03 1982-03-19 Fujitsu Ltd Data processor
JPS5831451A (ja) * 1981-08-18 1983-02-24 Nec Corp マイクロプログラム制御装置

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS55108053A (en) * 1979-02-14 1980-08-19 Hitachi Ltd Microprogram high speed control system
JPS5748137A (en) * 1980-09-03 1982-03-19 Fujitsu Ltd Data processor
JPS5831451A (ja) * 1981-08-18 1983-02-24 Nec Corp マイクロプログラム制御装置

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002073331A (ja) * 2000-08-29 2002-03-12 Pacific Design Kk データ処理装置

Also Published As

Publication number Publication date
JPH0522934B2 (ja) 1993-03-31

Similar Documents

Publication Publication Date Title
US5297263A (en) Microprocessor with pipeline system having exception processing features
US4761755A (en) Data processing system and method having an improved arithmetic unit
EP0173515B1 (en) Error recovery system in a data processor having a control storage
US4467415A (en) High-speed microprogram control apparatus with decreased control storage requirements
JPH0346850B2 (ja)
JPS6224326A (ja) デ−タ処理装置
JPH04245324A (ja) 演算装置
US3668650A (en) Single package basic processor unit with synchronous and asynchronous timing control
US4674063A (en) Information processing apparatus having a sequence control function
JPS60140432A (ja) 情報処理装置
KR920008142B1 (ko) 마이크로 프로그램 처리장치
US3290655A (en) Program control for data processing machine
GB1584003A (en) Data processing system and information scanout
JPS60214043A (ja) パイプライン制御回路
JPS6161412B2 (ja)
JP3621477B2 (ja) マイクロプログラムのリトライ方法
JPS62274354A (ja) メモリ読出レジスタ制御装置
JPH02183332A (ja) プログラムド制御方式
JP2982129B2 (ja) マイクロプログラム制御装置
JP2573711B2 (ja) マイクロサブルーチン制御方式
KR100345678B1 (ko) 설계의 변경이 용이한 제어 유닛
JPH0218732B2 (ja)
JPH0136137B2 (ja)
JPS5917460B2 (ja) 計算機の制御装置
JPS60134935A (ja) マイクロプログラム制御方式