JPS58182758A - 演算制御装置 - Google Patents

演算制御装置

Info

Publication number
JPS58182758A
JPS58182758A JP57065821A JP6582182A JPS58182758A JP S58182758 A JPS58182758 A JP S58182758A JP 57065821 A JP57065821 A JP 57065821A JP 6582182 A JP6582182 A JP 6582182A JP S58182758 A JPS58182758 A JP S58182758A
Authority
JP
Japan
Prior art keywords
microinstruction
signal
circuit
bus
arithmetic
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
JP57065821A
Other languages
English (en)
Other versions
JPS6232504B2 (ja
Inventor
Tsutomu Sakamoto
務 坂本
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.)
Toshiba Corp
Original Assignee
Toshiba Corp
Tokyo Shibaura Electric Co 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 Toshiba Corp, Tokyo Shibaura Electric Co Ltd filed Critical Toshiba Corp
Priority to JP57065821A priority Critical patent/JPS58182758A/ja
Priority to US06/484,260 priority patent/US4642757A/en
Priority to GB08309933A priority patent/GB2120425B/en
Priority to DE19833314139 priority patent/DE3314139A1/de
Publication of JPS58182758A publication Critical patent/JPS58182758A/ja
Publication of JPS6232504B2 publication Critical patent/JPS6232504B2/ja
Granted legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR 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/28Enhancement of operational speed, e.g. by using several microcontrol devices operating in parallel
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR 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/223Execution means for microinstructions irrespective of the microinstruction function, e.g. decoding of microinstructions and nanoinstructions; timing of microinstructions; programmable logic arrays; delays and fan-out problems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR 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/30Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/38Concurrent instruction execution, e.g. pipeline or look ahead
    • G06F9/3836Instruction issuing, e.g. dynamic instruction scheduling or out of order instruction execution
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR 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/30Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/38Concurrent instruction execution, e.g. pipeline or look ahead
    • G06F9/3854Instruction completion, e.g. retiring, committing or graduating
    • G06F9/3858Result writeback, i.e. updating the architectural state or memory
    • G06F9/38585Result writeback, i.e. updating the architectural state or memory with result invalidation, e.g. nullification

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Executing Machine-Instructions (AREA)
  • Advance Control (AREA)

Abstract

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

Description

【発明の詳細な説明】 〔発明の技術分野〕 本発明はそれぞれ固有の演算機能を有する複数の演算要
素を備え、マイクロ命令の指令に従って該当する演算要
素が起動される演算制御装置に関する。
〔発明の技術的背景〕
一般にこの種の演算制御装置は、第1図に示されるよう
に構成されている。図中、10は制御部であり、制御記
憶1ノや各種レジスタ類を備えている。20..20.
、・・・・−・・20nは演算要素(演算エレメント、
演算実行部)であり、それぞれ固有の演算機能を有して
いる。演算要素20、 、20. 、20nはそれぞれ
例えば乗算、固定小数点加減算、浮動小数点加減算を実
行するエレメントである。30は制御部10内の制御記
憶11から読み出されたマイクロ命令の転送路としての
マイクロ命令バス、40はデータバスである。データバ
ス40は、制御部10内のレジスタ類から演算要素20
..20. 、・・・・・・・20nへデータを転送し
たり、或いは演算要素20.。
20□、・・・・・・・20nの演算結果を制御部10
内のレジスタ類に転送したりするためのデータ転送路で
ある。データバス40は演算結果の転送路としてのデー
タバスと、ソースデータの転送路としての2種のデータ
バスとから成っているが、便宜上1本で図示されている
。50はエレメントビジーライン(以下、EBSYライ
ンと称する)である。EBSYライン50は演算要素2
0k(1=1.2.・・・・−・・n)において1つの
マイクロ命令の処理に複数クロック(システムクロック
)分必要とする場合に当該演算要素201から出力され
るエレメントビジー信号(以下信号EB8Yと称する)
の転送路である。この信号EB8Yは後続するマイクロ
命令の実行を抑止するための抑止信号であり、EBSY
ライン50を介して制御部10に伝達される。
第2図は第1図の制御部10および演算要素201(1
=1.2.・・・・−・・n)の内部構成を示すもので
ある。制御部10内の制御記憶11から読み出されたマ
イクロ命令はシステムクロックCLKに同期した第1タ
イミングクロツクCLK7に応じてAマイクロ命令レジ
スタ(以下、MIRAと称する)12に一旦置数される
。このMIRAz 2に置数されたマイクロ命令はマイ
クロ命令バス30上に送出される。制御部10には演算
結果等の各種データが格罪されるレジスタファイル13
が設けられており、マイクロ命令バス30上に送出され
た上記マイクロ命令の所定フィールドの内容によってレ
ジスタ指定がなされる。そして、レジスタファイル13
から上記マイクロ命令により指定されたレジスタの内容
がデータバス40上に送出される。また、マイクロ命令
バス30上のマイクロ命令は各演算要素20t(t=t
、2.・・・・−・・n)に転送される。
演算要素201にはマイクロ命令バス30を介して転送
されるマイクロ命令をデコードするデコード部21Kが
設けられている。デコード部21にはマイクロ命令バス
30上のマイクロ命令(またはマイクロ命令の一部)を
保持した後デコードして該当する演算要素201が選択
されていることを判断すると、上記マイクロ命令(また
はマイクロ命令の所定フィールド)をBマイクロ命令レ
ジスタ(以下、MIRBと称する)221に渡す一方、
以後デコード部21量に対するマイクロ命令バス3o上
のマイクロ命令の入力を禁止する。この禁止が解除され
るのは、当該マイクロ命令の実行終了時である。デコー
ド部21NからMIR822iに渡されたマイクロ命令
はシステムクロックCLKに応じてMIRB2j?!に
置数される。これと同時にデータバス40上の内容が演
算器231に・入力される。演算器23Iは前述した各
演算要素20..20. 、・・・・−・・20nの機
能から明らかなように、演算要素20.の場合には乗算
器、演算要素20tの場合には、加算器、・・・・・・
・演算要素20Qの場合には加算器やシフタなどから構
成される。MIRB221  の内容は制御回路241
に出力され、これにより制御回路241は演算器231
に対してモード指定を行なったり、演算のシーケンス制
御を行なう。そして演算器231の演算結果はデータバ
ス40上に送出される。このデータバス40上のデータ
(演算結果)は(マイクロ命令バス30定 上の)マイクロ命令の所定フィールドにより指嵯された
レジスタファイル13内のレジスタに格納される。
以上で1つのマイクロ命令に対応する動作が終了する。
一方、演算要素201の動作が1クロツク(lシステム
クロック)で終了せず、多クロックに渡る場合には、制
御回路241から信号EBSY(論理10mで有効)が
EBSYライン50上に送出される。EBSYライン5
0上の信号EBBYは制御部10内の抑止回路14に供
給される。抑止回路14にはMIRAZ2にマイクロ命
令を置数するための第1タイミングクロツクCLK 1
の出力を制御する抑止ゲート(以下、Aと称する)15
と、レジスタファイル13にデータを書き込むための第
2タイミングクロツクCLK2の出力を制御するA(抑
止ゲート)16とが設けられている。Aノ5はシステム
クロックCLK。
抑止条件としての上記信号EBSY、信号17(この信
号はメモリビジー信号であるが本発明に直接関係しない
ので説明を省略する)が入力される例えばアンドゲート
であり、信号E B BY。
信号17の少なくともいずれか一方が有効(論理′0“
)である期間中、システムクロックCLKを第1タイミ
ングクロツクCLK7としてMIRAZ2 に出力する
のを抑止する。したがって、上述のように演算要素20
童の制御回路241から論理@0“の信号EBSYが、
EB8Yライン50上に送出されると、A15の働きに
より第1タイミングクロツクCLKIがMIRAZ、?
に供給されるのが抑止され、次のマイクロ命令のMIR
AZ2への取り込み、すなわち次のマイクロ命令の実行
が禁止される。また、A16はシステムクロックCLK
、抑止条件としての上記信号EBSY、信号18(この
信号は演算結果のレジスタファイル13への格納、すな
わちデスティネーションを禁止するいわゆるDN144
〆指定情報のデコード信号である)が入力される例えば
アンドゲートであり、信号EBSY。
信号18の少なくともいずれか一方が有効(論理”0“
)である期間中、システムクロックCLKを第2タイミ
ングクロツクCLK2としてレジスタファイル13に出
力するのを抑止する。
第3図は上述した従来例の動作を示すタイミングチャー
トであり、マイクロ命令Ml、マイクロ命令M2、マイ
クロ命令M3の順でマイクロ命令が実行される場合が示
されている。この場合、マイクロ命令M1は演算処理に
複数クロック分を必要とする命令、例えば乗算命令であ
る。そして、マイクロ命令Mlでは、乗算結果がレジス
タファイル13に取り込まれないように前述したDNU
LL指定がされている。この例では、上記乗算結果は次
のマイクロ命令M2の指定に従ってレジスタファイル1
3に格納されるようになっている。前述した説明から明
らかなように、複数クロックを要するマイクロ命令M1
を実行する場合、有効な信号ElSYが該当する演算要
素201の制御回路24N(この例では命令M1は乗算
命令であり、従って乗算機能を有する演算要素、例えば
演算要素20mの制御回路である)から出力される(第
3図のフローチャート参照)。この信号EBSYはマイ
クロ命令M1の処理期間中、出力されており、当該マイ
クロ命令Mlがクロック1からクロック6までの6クロ
ツクを要する場合、この6クロツクの期間中、抑止回路
14(のA i s 、 7 g)の抑止機能が働く。
この結果、第3図のフローチャートに示されるように第
1タイミングクロツクCLKZの出力が抑止され、制御
記憶11から読み出される次のマイクロ命令M2がMI
RA12に置数されることが禁止される。すなわち信号
EBSYに基づく抑止回路14の働きによって他のマイ
クロ命令の実行が禁示される。そして、マイクロ命令M
1の処理が終了するシステムクロックCLKのクロック
6の成る時点において、制御回路2dlが信号EBSY
の状態を論理°11に戻すと、A15は抑止状態から解
禁され、クロック7以降k15から第1タイミングクロ
ツクCLKIが再び出力される(第3図参照)。
一方、A16jこは、マイクロ命令M1によるDNUL
L指定に対応したデコード信号18が入力されており、
したがって116が抑止状態から解放されて116から
第2タイミングクロツからとなる。         
      し1以上の説明から明らかなように、従来
の演算制御装置では、複数クロックを要するマイクロ命
令の実行処理中は、信号EBSYによって抑止回路14
が働き、後続するマイクロ命令が実行されることが禁止
される。これは、後続するマイクロ命令が例えば上記複
数クロックを要するマイクロ命令の実行結果を用いる命
令の場合などに有効である。ところで、複数クロックを
要するマイクロ命令の実行中に他のマイクロ命令が実行
されることを禁止するためには、制御記憶11において
複数クロックを要するマイクロ命令の後にダミーのマイ
クロ命令(例えばNOPマイクロ命令スなわちノーオペ
レーションマイクロ命令)を幾つか挿入するようにして
もよい。
こ戸することにより抑止回路14を不要とすることがで
きる。しかし、上述のようにダミーのマイクロ命令を制
御記憶11内の各所に挿入しなければならないため、制
御記憶11の記憶容量が大きくなってしまう不都合が生
じる。
このように従来の演算制御装置では、抑止回路(14に
設け、複数クロックを必要とするマイクロ命令の実行中
に抑止口[74)の抑止機能が働くような構成とするこ
とにより、上述したダミーのマイクロ命令′を制御記憶
11内の各所に挿入することなくすなわち制御記憶11
の記憶容量を大きくすることなく、複数クロックを必要
とするマイクロ命令の実行中に他のマイクロ命令が実行
されて正しい演算結果が得り方くなることを防止するよ
うにしていた。
〔背景技術の問題点〕
しかし、従来の演算制御装置では、上述の効果はあるも
のの、抑止回路(14)の抑止機能により、複数クロッ
クを必要とするマイクロ命令の実行期間中は、例え後続
するマイクロ命令とのがあった。このため、他の演算要
素は休止状態となり、貴重なハードウェア資源が有効に
使用されないと共に、処理速度の高速化を図ることが困
難であった。
〔発明の目的〕
本発明は上記事情に鑑みてなされたものでその目的は、
複数クロックを要するマイクロ命令の実行期間中におい
て、当該マイクロ命令との並列動作が不可能なサイクル
には抑止回路の働きによってダミーのマイクロ命令の挿
入などを行なわなくても他のマイクロ命令の実行を禁止
することができ、上記並列動作が可能なサイクルには極
めて簡単に抑止回路の働きを解除して他のマイクロ命令
との並列処理が行なえ、もって演算処理の高速化が図れ
る演算制御装置を提供することにある。
〔発明の概要〕
本発明は、複数クロックを要するマイクロ命令の実行期
間中に対応する演算要素から出力される信号EBSY(
抑止信号)が抑止回路に供給され、これによってシステ
ムクロックに同期した第1タイミング信号CLKIがマ
イクロ命令レジスタ(MIRA12)に出力されること
が抑止され、次のマイクロ命令が上記複数クロックを要
するマイクロ命令と並列に処理されることを禁止 りするように構成されている演算制御装置において、抑
止回路の前段に抑止制御回路を設け、演算要素から出力
される信号が上記抑止回路に供給されることを制御する
ことにしたものである。そして、本発明では、この制御
条件をマイクロ命令バス上のマイクロ命令の所定フィー
ルドで与えることにより、マイクロ命令レベルで抑止回
路の抑止動作並びに抑止解除を指定するようにしている
〔発明の実施例〕
以下、本発明の一実施例を図面を参照して説明する。な
お、第2図と同一部分には同一符号を付して詳細な説明
を省略する。第4図において100は制御部である。制
御部100は従来例の制御部10と基本構成はほぼ同様
である。
制御部1ooの制御部10と異なる点はEB SYライ
ン50と抑止回路14との間に介挿された抑止制御回路
200を備えていることである。抑止制御回路200に
はデコーダ201、インバータ(以下、■と称する)2
02、およびナンドゲ−1・(以下、Nと称する)20
3が設けられている。デコーダ201はマイクロ命令バ
ス30上のマイクロ命令の所定フィールド例えばCMD
フィールドの内容をデコードし、当該CMDフィールド
で後述するビジーキャンセル指定(以下、BCAN指定
と称する)が定義されている場合有効(論理10“)な
抑止解除信号204を出力する。1202はEBSYラ
イン50上の信号EBSYのレベルを反転する。I20
2の出力およびデコーダ201の出力(抑止解除信号2
04)はN2O3に入力され、N2O3の出力は第2図
の信号EBSYに代わる信号EBSYZとして抑止回路
14に入力される。なお、第4図では演算要素は第2図
と同様に符号20iで示されているが、第1図と同様に
演算要素20m。
201.・・・・・・・20nがマイクロ命令バス30
.データバス40、EBSYライン50に接続されてい
るものとする。そして、これらの演算要素20、〜20
nの一つを演算要素20にとして代表させているものと
する。
第5図は本発明の一実施例で適用されるマイクロ命令の
フォーマットの一部を示すもので、ESは複数個の演算
要素の一つを選択指定するためのフィールドである。F
は選択指定した演算要素の演算モードを指定するフィー
ルド、Rはデータが格納されるレジスタファイル(13
)の中のレジスタを指定するフィールドである。
Rフィールドは演算結果の格納先レジスタを指定するD
(デスティネーション)フィールド、演算すべきデータ
(ソースデータ)の格納先レジスタを指定するB並びに
Aフィールドから成っている。CMDは各種のハードウ
ェア制御を司るフィールドであり、例えば制御フリップ
70ツブのセット/リセットや主メモリ(いずれも図示
せず月こ対する読み出し/書き込みの指定等に使用され
る。またCMDは前述したよりにBCAM指定にも使用
される。このBCAN指定は、複数クロックを要するマ
イクロ命令の実行期間中に該当演算要素201(の制御
回路241)から出力される有効な信号EBSYの無効
化を指示するものである。
次に本発明の一実施例の動作を第6図のタイミングチャ
ートを参照して説明する。第6図のマイクロ命令バス3
0の内容として示されているマイクロ命令M7 、M2
 、M3については基本的に従来例で説明したマイクロ
命令と同じものとする。ただし、本実施例では、マイク
ロ命令M1のCMDフィールドでBCAN指令がなされ
ている点が従来例と異なっている。今、制御記憶11か
ら読み出されたマイクロ命令M1が、システムクロック
CLKのクロック1に同期した第1タイミングクロツク
CLKIによって従来例と同様にMIRAZ2に置数さ
れたものとする。
MI RA J 2に置数されたマイクロ命令M1は第
6図のフローチャートに示されているようにマイクロ命
令バス30上に送出される。このマイクロ命令Mlは従
来例で示したように複数クロックを要する乗算命令であ
り、例えば演算要素20t(t=1)で処理される。
マイクロ命令M1がマイクロ命令バス30上に送出され
ると、当該マイクロ命令M1のBフィールド、Aフィー
ルドで被乗数1乗数が格納されるレジスタファイル13
の各レジスタが指定される。一方、Dフィールドでは従
来例と同様にDNULL指定がなされており、乗算結果
の格納が禁止されている。本実施例において、この(マ
イクロ命令Mlの実行による)乗算結果は、従来例と同
様にマイクロ命令M2を実行することでレジスタファイ
ル13内に格納されるようになっている。また、マイク
ロ命令M1のCMDフィールドではBCAN指定が定義
されている。抑止制御回路zoo内のデコーダはマイク
ロ命令バス30上のマイクロ命令のCMDフィールドの
内容をデコードしており、当該CMDフィールドでBC
AN指定が定義されている場合、論理106の有効な抑
止解除信号204を出力する。また、マイクロ命令M1
のE8フィールドで例えば演算要素20I(i=1)が
指定され、Fフィールドで乗算が指定される。
演算要素201 (i = 1 )がマイクロ命令M1
のESフィールドで指定されて起動され、動作を開始す
ると演算要素201(t=x)内の制御回路241(t
==t)から第6図に示されるように論理°01の有効
な信号EBSYが出力される。この信号EBSYはEB
SY5oを介して抑止制御回路200内の1202に入
力され、工202でレベル反転されてN2O3の一方の
入力端子に入力される。N2O3の他方の入力端子には
デコーダ204の出力である抑止解除信号204が入力
されている。CMDフィールドでBCAN指定されてい
るマイクロ命令M1がマイクロ命令バス30上に送出さ
れている場合、上記抑止解除信号204は論理°0°(
有効)であり、したがってN2O3の出力(信号EBS
Y7)はl2Q2の出力の状態に無関係に論理11°と
なる。すなわち、マイクロ命令のCMDフィールドでB
CAN指定が定義されている場合、当該マイクロ命令の
CMDフィールドがデコーダ201でデコードされるこ
とにより、たとえ演算要素201から論理11”の有効
な信号EBSYが出力されていても、この論理Solの
信号EB8Yがそのまま論理°O1の信号EB8YJと
して抑止回路14に供給されることが禁止合れる。この
結果、抑止回路14の抑止機能が一部解除され、次のク
ロック2においてA15からシステムクロックCLKに
同期した第1タイミングクロツクCLKIが出力される
(第6図参照)。これにより制御記憶11から読み出さ
れている次のマイクロ命令m1がMIRA7!に置数さ
れる。一方、マイクロ命令M1のDNULL指定により
信号18が有効(論理00°)となっているため、A1
6の抑止条件は完全には解除されず、第5図に示される
ように第2タイミングクロツクCLK2の出力は抑止さ
れる。
本実施例において制御記憶11におけるマイクロ命令M
1が格納されている位置の後続する位置には、マイクロ
命令ml、マイクロ命令m2、マイクロ命令ms、マイ
クロ命令m4、マイクロ命令M!、マイクロ命令M3・
・・が順に格納されている。上記マイクロ命令m1〜m
3は複数クロックを要するマイクロ命令M1実行中に、
休止状態にある他の演算要素例えば演算要素201(+
−=n)を動作させる命令である。更にマイクロ命令m
1〜m3はそれぞれCMDフィールドでBCAN指定さ
れている。
前述したように演算要素2 o ((1=1 )から論
理°0”の働E B S Yが出力されているにもかか
わらず、クロック2においてMIRA[に置数されたマ
イクロ命令m1はマイクロ命令バス30上に送出される
。これにより演算要素2ON(1=n)が選択され、演
算要素201(+==n)においてマイクロ命令m1が
実行される。
このとき、演算要素z o l(1= t )において
マイクロ命令M1が実行されていることは勿論である。
上記マイクロ命令m1は上述したようにそのCMDフィ
ールドでBCAN指定されているため、少なくとも次の
マイクロ命令がマイクロ命令バス30上に送出されるま
で、抑止制御回路200は論理IO°の有効な信号EB
SYがそのまま論理°0°の信号EBSYIとして抑止
回路14に供給されることを禁止する。この結果、次の
クロック3においてマイクロ命令m2が、同様にクロッ
ク4においてマイクロ命令m3が演算要素201(1=
−n)で実行される。また、同じくクロック5ではマイ
クロ命令m4がMIRAJ2に置数されてマイクロ命令
バス30上に送出される。このマイクロ命令m4はマイ
クロ命令M1と同様にDNULL指定された命令であり
、タイミングの調整用に実行される。ただし、DNUL
L指定が可能であれば、すなわち比較命令などのように
演算結果をレジスタファイル13に取り込む必要がない
マイクロ命令であれば、マイクロ命令m4も他のマイク
ロ命令ml〜m3と同様に並列演算としての意味をもつ
0 マイクロ命令m4はそのCMDフィールドで3 BCAN指定がなされていない。この結果、当該マイク
ロ命令m4がマイクロ命令バス30上に送出されるよう
になると、抑止制御回路200内のデコーダ201の出
力である抑止解除信号204が論理111となる。これ
により論理°01の有効な信号EBSYはそのまま論理
101の信号EBSYIとして抑止回路14に供給され
、少なくとも次のクロック6における第1タイミングク
ロツクCLK 1、第2タイミングクロツクCLK2の
出力が抑止される。このため、クロック6ではマイクロ
命令m4の次の命令(この例ではマイクロ命令M2)の
実行は行訪れず、正しくタイミング(時間)調整が行な
われる。すなわちダミーのマイクロ命令を挿入すること
なく信号EBSYに従ってタイミング調整が行なわれる
そして、クロック6において、マイクロ命令M1の実行
終了前に演算要素20I(1=1)によって信号EBS
Yが論理11@にされる。これにより第6図に示される
ように信号EB8Y1も論理@1“となり、抑止回路1
4に対する一つの4 抑止条件が解除される。この結果、クロック7において
第1タイミングクロツクCLK/が出力され、マイクロ
命令M2がMI RA Z 2に置数される。
次に本発明の他の実施例を第7図のブロック図、第8図
のタイミングチャートを参照して説明する。第7図は前
記実施例における抑止制御回路200と同様の機能を有
する抑止制御回路のブロック図である。本発明の他の実
施例の説明において抑止制御回路300以外の部分が必
要となる場合には、第4図の抑止制御回路200を抑止
制御回路soOに置き換え、第4図をも参照しながら説
明する。すなわち、本発明の他の実施例の前記実施例と
異なる構成は、抑止制御回路の内部構成である。第7図
において第4図と同一部分には同一符号を付して詳細な
説明は省略する。図中301はデコーダである。デコー
グ30/はマイクロ命令バス30上のマイクロ命令のC
MDフィールドの内容をデコードする。本実施例ではマ
イクロ命令のCMDフィールドに2つの指令を定義して
いる。一つはフリップフロップセット指定(以下、F/
Fセット指定と称する)であり、他の一つはフリップフ
ロップリセット指定(以下F/Fリセット指定と称する
)である。デコーダSOXは上記CMDフィールドでF
/Fセット指定が定義されている場合にセット信号SE
Tを出力し、同じくF/FIJセット指定が定義されて
いる場合にリセット信号RESETを出力する。302
はJKフリップフロップなどのフリップフロップ(以下
、F/Fと称する)である。F/F s 02はデコー
ダ301からセット信号SETが出力されている場合、
システムクロックCLKの例えば立下りでセットされる
。またF/T?sozはセット状態においてデコーダ3
01からリセット信号RESETが出力されている場合
、システム下 クロックCLKの立2つでリセットされる。
F/F、902の司出力は(第4図のデコーダ200の
出力と同じ)抑止解除信号204として用いられる。
今、制御記憶11における連続する領域に、マイクロ命
令M 1 、 m 1 、 m 2 、 m 3 、 
M 2 +M3が順に格納されているものとする。また
、これらのマイクロ命令は基本的に前記実施例のマイク
ロ命令M 1 、 m 1 、 m 2 、 m 3 
、 M 2 、 M 3とほぼ同じものとする。ただし
、本実施例のマイクロ命令M1はCMDフィールドでF
/Fセット指定が定義され、同じくマイクロ命令m2は
CMDフィールドでF/Fリセット指定が定義されてい
る。また本実施例ではCMDフィールドでBCAN指定
を定義することは行なっていない。また、本実施例のマ
イクロ命令m3はDNULL指定が定義されている。
第8図に示されているように複数クロックを要するマイ
クロ命令M1がクロック1でマイクロ命令バス30上l
こ送出されたものとする。このマイクロ命令 Mlは乗
算命令であり前記実施例と同様に演算要素20t(t=
i)で命令実行が行なわれる。演算要素2o 1(t=
t)内の制御回路24N(1=1)は、マイクロ命命M
lが複数クロックを要する命令であることから、論理°
0゛の有効な信号EB8Y7i−EB8Yライン50上
に送出する(第8図参照)。
マイクロ命令MlのCMDフィールドでは、上述したよ
うにF/Fセット指定が定義されている。したがって、
抑止制御回路SOO内のプツト信号SETを出力する。
この結果、F / F2O3は次のクロック2の立下り
のタイミングでセットされ、出力端子司より論理°0°
の抑止解除信号204を出力する。これにより、演算要
素20t(t=t)から出力されている論理”OIの信
号EBSYがそのまま論理101の信号EBSY7とし
て抑止回路14に供給されることが禁示される(第8図
参照)。この状態はり302がリセットされ、抑止解除
信号204が論理11mとなるまで続く。このため、マ
イクロ命令M1に後続するマイクロ命令m1〜m3のマ
イクロ命令M1との並列実行が可能となる。
マイクロ命令m2のCMDフィールドでは前述したよう
にF/FIJセット指定が定義されている。したがって
マイクロ命令m2がマイクロ命令バス30上に送出され
た場合、当該マイクロ命令m2のCMDフィールドのデ
コード結果としてリセット信号RESETを出力する。
この結果F / F 302は次のクロック5の立下り
のタイミングでリセットされる。これにより抑止解除信
号204は論理11′となり、論理”Ooの信号ITh
BSYがそのまま論理lO″の信号EBSY1として抑
止回路14に供給される。このため、抑止回路14の抑
止機能が働き、次のクロック6におけるマイクロ命令の
取り込みが禁止される。
クロック5ではDNULL指定のマイクロ命令m3がマ
イクロ命令M1と並列に実行されており、当該マイクロ
命令m3は信号EIBYが論理“loとなって(すなわ
ちマイクロ命令M1の実行が終了して)次のクロックで
後続するマイクロ命令(この例ではマイクロ命令M2)
が取り出されるまでのタイミング調整に実行される。
このように本発明の他の実施例によれば複数クロックを
要するマイクロ命令M1のCMDフィールドでF / 
Fセット指定を定義しておくだけで、後続する各マイク
ロ命令のCMDフィールドで特別の指定(例えば前記実
施例におけるBCAN指定)を行うことなく、後続のマ
イクロ命令を並列実行させることができる。したがって
本実施例によれば、複数クロックを要するマイクロ命令
と並行して他のマイクロ命令を実行ことかできる。
〔発明の効果〕
以上詳述したように本発明の演算制御装置によれば、複
数クロックを要するマイクロ命令の実行期間中において
、当該マイクロ命令との並列動作が不可能なサイクルに
は抑止回路の働きによってダミーのマイクロ命令などを
行なわなくても他のマイクロ命令の実行を禁止すること
ができ、上記並列動作が可能なサイクル−こは極めて簡
単に抑止回路の働きを解除して他のマイクロ命令との並
列処理ができるので、演算処理の高速化が図れる。
【図面の簡単な説明】
第1図は一般的な演算制御装置の概略構成を示すブロッ
ク図、第2図は従来例を示すブロック図、第3図は従来
例の動作を説明するためのタイミングチャート、第4図
は本発明の一実施例を示すブロック図、第5図はマイク
ロ命令のフォーマットを示す図、第6図は上記実施例の
動作を説明するためのタイミングチャート、第7図は本
発明の他の実施例を示すブロック図、第8図は上記他の
実施例の動作を説明するためのタイミングチャートであ
る。 1o、100・・・制御部、11・・・制御記憶、12
・・・マイクロ命令レジスタ(MIRA)、13・・・
レジスタ群(レジスタファイル)、14・・・抑止回路
、20し・・演算要素、30・・・マイクロ命令バス、
40・・・データバス、50・・・エレメントビジーラ
イン(EB8Yライン)、290,3001 ・・・抑止制御回路、201,301・・・デコーダ、
203・・・ナントゲート(N、ゲート回路)、302
・・・フリップフロップ(F/F)。 出願人代理人  弁理士  鈴 江 武 彦2 第3図 第4図 10n。 第5図 第6図 CLに1 CLに2 第7図

Claims (1)

  1. 【特許請求の範囲】 (1)  各種マイクロプログラムが貯蔵されている制
    御記憶と、この制御記憶から読み出されるマイクロ命令
    がシステムクロックに同期した第1タイミングクロツク
    に応じて置数されるマイクロ命令レジスタと、このマイ
    クロ命令レジスタに置数されているマイクロ命令の転送
    路としてのマイクロ命令バスと、各種データの転送路と
    してのデータバスと、このデータバス上のデータが上記
    システムクロックに同期した第2タイミングクロツクに
    応じて格納されるレジスタ群と、上記データバスおよび
    マイクロ命令バスに接続され、上記マイクロ命令バス上
    のマイクロ命令に基づいて選択されて指定された演算処
    理を行なう演算要素であって、複数のシステムクロック
    を要する演算処理中に後続するマイクロ命令の実行を抑
    止するための抑止信号を出力する複数の演算要素と、上
    記抑止信号が供給された場合に少なくとも上記第1タイ
    ミングクロツクの発生を抑止する抑止回路と、上記演算
    要素から出力される上記抑止信号が上記抑止回路に供給
    されることを上記マイクロ命令バス上のマイクロ命令の
    所定フィールドの解読結果に応じて制御する抑止制御回
    路とを具備することを特徴とする演算制御装置。 (2)  上記抑止制御回路が、上記マイクロ命令の所
    定フィールドを解読し当該所定フィールドで特定指令が
    指定されている場合に上記抑止信号が上記抑止回路に供
    給されることを禁止するための信号を発生するデコーダ
    を備えていることを特徴とする特許請求の範囲第1項記
    載の演算制御装置。 (31上記抑止制御回路が、上記マイクロ命令の所定フ
    ィールドを解読し、当該所定フィールドで第1特定指令
    が指定されている場合に第1デコード信号を発生し、第
    2t+1定指令が指定されている場合に第2デコード信
    号を発生するデコーダと、このデコーダから発生される
    上記第1デコード信号に応じて状態遷移し、上記第2デ
    コード信号に応じて旧状態に復帰するフリップ70ツブ
    と、このフリップフロップの状態に応じて上記抑止信号
    が上記抑止回路に供給されることを禁止または許可する
    ゲート回路とを備えていることを特徴とする特許請求の
    範囲第1項記載の演算制御装置。 (4)  上記抑止回路は上記抑止信号が供給された場
    合に上記第1および第2タイミングクロツクの発生を抑
    止することを特徴とする特許請求の範囲第1項、第2項
    または第3項に記載の演算制御装置。
JP57065821A 1982-04-20 1982-04-20 演算制御装置 Granted JPS58182758A (ja)

Priority Applications (4)

Application Number Priority Date Filing Date Title
JP57065821A JPS58182758A (ja) 1982-04-20 1982-04-20 演算制御装置
US06/484,260 US4642757A (en) 1982-04-20 1983-04-12 Microinstruction controlled arithmetic control unit
GB08309933A GB2120425B (en) 1982-04-20 1983-04-13 Arithmetic control unit
DE19833314139 DE3314139A1 (de) 1982-04-20 1983-04-19 Mikrobefehlgesteuerte arithmetische steuereinheit

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP57065821A JPS58182758A (ja) 1982-04-20 1982-04-20 演算制御装置

Publications (2)

Publication Number Publication Date
JPS58182758A true JPS58182758A (ja) 1983-10-25
JPS6232504B2 JPS6232504B2 (ja) 1987-07-15

Family

ID=13298071

Family Applications (1)

Application Number Title Priority Date Filing Date
JP57065821A Granted JPS58182758A (ja) 1982-04-20 1982-04-20 演算制御装置

Country Status (4)

Country Link
US (1) US4642757A (ja)
JP (1) JPS58182758A (ja)
DE (1) DE3314139A1 (ja)
GB (1) GB2120425B (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0269825A (ja) * 1988-09-06 1990-03-08 Fujitsu Ltd パイプライン制御方式

Families Citing this family (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5053989A (en) * 1986-08-27 1991-10-01 Minolta Camera Kabushiki Kaisha Digital image processing apparatus having a microprogram controller for reading microinstructions during a vacant period of the image processing circuit
US5519873A (en) * 1990-08-31 1996-05-21 International Business Machines Corporation Apparatus for switching digital command execution between a general purpose microprocessor and dedicted execution logic
JP3055999B2 (ja) * 1992-03-16 2000-06-26 日本電気株式会社 マイクロプログラム制御装置群
JPH07147201A (ja) * 1993-11-25 1995-06-06 Nec Corp チップ部品
US5619408A (en) * 1995-02-10 1997-04-08 International Business Machines Corporation Method and system for recoding noneffective instructions within a data processing system
JP3323045B2 (ja) * 1995-11-20 2002-09-09 東芝マイクロエレクトロニクス株式会社 情報処理装置
US7743232B2 (en) * 2007-07-18 2010-06-22 Advanced Micro Devices, Inc. Multiple-core processor with hierarchical microcode store
CN107783917B (zh) * 2016-08-26 2024-05-17 北京忆芯科技有限公司 生成nvm芯片接口命令的方法与装置
US11467838B2 (en) 2018-05-22 2022-10-11 Advanced Micro Devices, Inc. Fastpath microcode sequencer
US11016763B2 (en) 2019-03-08 2021-05-25 Advanced Micro Devices, Inc. Implementing a micro-operation cache with compaction

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS49113542A (ja) * 1973-02-26 1974-10-30
JPS5729150A (en) * 1980-07-30 1982-02-17 Toshiba Corp Method and device for arithmetic control

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3573852A (en) * 1968-08-30 1971-04-06 Texas Instruments Inc Variable time slot assignment of virtual processors
US4558411A (en) * 1969-05-19 1985-12-10 Burroughs Corp. Polymorphic programmable units employing plural levels of sub-instruction sets
US3656123A (en) * 1970-04-16 1972-04-11 Ibm Microprogrammed processor with variable basic machine cycle lengths
US4077060A (en) * 1976-12-27 1978-02-28 International Business Machines Corporation Asymmetrical multiprocessor system
GB1581650A (en) * 1977-04-20 1980-12-17 Hughes Aircraft Co Synchronous data processor

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS49113542A (ja) * 1973-02-26 1974-10-30
JPS5729150A (en) * 1980-07-30 1982-02-17 Toshiba Corp Method and device for arithmetic control

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0269825A (ja) * 1988-09-06 1990-03-08 Fujitsu Ltd パイプライン制御方式

Also Published As

Publication number Publication date
DE3314139A1 (de) 1983-10-27
US4642757A (en) 1987-02-10
GB2120425B (en) 1986-04-16
DE3314139C2 (ja) 1988-11-17
GB2120425A (en) 1983-11-30
JPS6232504B2 (ja) 1987-07-15
GB8309933D0 (en) 1983-05-18

Similar Documents

Publication Publication Date Title
EP0111776B1 (en) Interrupt processor
JPH0546593B2 (ja)
CA1098214A (en) Data processing system with an enhanced instruction pipeline control
JPS6243764A (ja) バス・ステ−ト制御回路
JPS58182758A (ja) 演算制御装置
JPH0721021A (ja) 情報処理装置
US4677549A (en) Pipelined data processor system having increased processing speed
JP2798121B2 (ja) データ処理装置
JPS6161416B2 (ja)
JPS60178580A (ja) 命令制御方式
JPS6259829B2 (ja)
JP2814683B2 (ja) 命令処理装置
JP2883488B2 (ja) 命令処理装置
JP2504263B2 (ja) デ―タ処理装置
JP2511063B2 (ja) パイプライン制御方式
JP2869414B1 (ja) データ処理装置
JPH03257665A (ja) 情報処理装置
JP2636074B2 (ja) マイクロプロセッサ
JPS62166463A (ja) デ−タ転送方式
JPS63155330A (ja) マイクロプログラム制御装置
JP2001014214A (ja) メモリ共有方法、およびこの方法を使用したマルチプロセッサ設備
JPH07182066A (ja) Lsiおよびそのクロック信号制御方法
JPS5936838A (ja) インタフエ−ス制御方式
JPH0528870B2 (ja)
JPS58166454A (ja) デ−タ処理装置