JPS59206947A - マイクロプログラム制御装置 - Google Patents

マイクロプログラム制御装置

Info

Publication number
JPS59206947A
JPS59206947A JP58081162A JP8116283A JPS59206947A JP S59206947 A JPS59206947 A JP S59206947A JP 58081162 A JP58081162 A JP 58081162A JP 8116283 A JP8116283 A JP 8116283A JP S59206947 A JPS59206947 A JP S59206947A
Authority
JP
Japan
Prior art keywords
microinstruction
instruction
address
executed
branch
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
Application number
JP58081162A
Other languages
English (en)
Inventor
Mutsuo Saito
齋藤 睦男
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.)
NEC Corp
Original Assignee
NEC Corp
Nippon 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 NEC Corp, Nippon Electric Co Ltd filed Critical NEC Corp
Priority to JP58081162A priority Critical patent/JPS59206947A/ja
Publication of JPS59206947A publication Critical patent/JPS59206947A/ja
Pending 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

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Advance Control (AREA)
  • Memory System Of A Hierarchy Structure (AREA)

Abstract

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

Description

【発明の詳細な説明】 (産業上の利用分野) 本発明はデータ処理装置におけるマイクロプログラム制
御装置に関し、特にキャッシュ方式を採用した水平形マ
イクロプログラム制御装置のブロックロード方式に関す
る。
(従来技術) 従来、キャッシュ方式を採用した水平形マイクロプログ
ラム制御装置においては、マイクロ命令語を実行するご
とに、このマイクロ命令語により指定されたブロックが
実際に存在するか否かを判断していた、したがって、も
し上記ブロックが存在しなかった場合には、その時点で
新たにブロックをロードする必要があり、その間にマイ
クロプログラムの実行を中断しなければ力らないという
欠点があった。
(発明の目的) 本発明の目的は、現在実行中のマイクロ命令語の数ステ
ップ後に実行されるべき分岐命令によシ指定された分岐
先アドレスを含むブロックが、現在実行中のブロックの
カかにおいて論理的に定義されていると判明した時点で
、マイクロ命令語の指示により次のブロックの存在をチ
ェックし、次のブロックが存在しかいときにはブロック
ロードを起動し、現ブロックのマイクロ命令語の実行と
並行して次のブロックのロードを行わせることにより、
実際に分岐命令により指定された分岐先アドレスのマイ
クロ命令語の実行を開始しようとしたときには既にブロ
ックロードが完了しているか、あるいは可能な限りブロ
ックロード時間を短縮しているように構成したマイクロ
プログラム制御装置を提供することにある。
(発明の構成) 本発明によるマイクロプログラム制御装着は二次記憶装
置と、制御メモリと、アドレスアレイとを具備し、実行
しようとするマイクロ命令語が含まれているブロックが
制御メモリの内部に存在するか否かを試験し、もしブロ
ックが制御メモリの内部に存在しなかった場合には二次
記憶装置から制御メモリにブロックロードを行ってマイ
クロ命令語を実行するようなキャッシュ方式を採用した
水平形のものの改良である。二次記憶装置はマイクロ命
令語を複数個格納することができ、複数個のコンパート
メントから成るものである。制御メモリも同様に複数個
のコンパートメントから成るものである。アドレスアレ
イは二次記憶装置に記憶されたデータブロックの管理情
報を保持し、複数のエントリを備えたものである。
本発明によるマイクロプログラム制御装置は、上記のほ
かにデコーダと1分岐予測アドレス生成装置と9分岐予
測アドレスレジスタと、マイクロ命令アドレスレジスタ
と、第1および第2の比較器と、制御装置とを具備して
構成したものである。
デコーダはマイクロ命令語の内部の特定フィールドに動
作指示をしない命令、すなわち、NOP命令が存在する
場合に、相当する分岐予測のための先取りの指示をする
ための特定の命令を解読するためのものである。
分岐予測アドレス生成装置は、デコーダによす分岐予測
アドレスを生成するためのものである。
分岐予測アドレスレジスタは、分岐予測アドレス生成装
置により生成された分岐予測アドレスを保持するための
ものである。
マイクロ命令アドレスレジメタは、実行中のマイクロ命
令語から次のステップにおいて実行されるべきマイクロ
命令語のアドレスを抽出し、これを保持するためのもの
である。
第1の比較器は、制御メモリ上に実行中の次のステップ
において実行されるべきマイクロ命令語が制御メモリ上
に存在するか否かを索引するために、アドレスアレイの
内容とマイクロ命令アドレスレジスタの内容とを比較す
るだめのものである。
第2の比較器は、実行中のマイクロ命令語の数ステップ
後に実行されるべき分岐命令により決定される分岐先ア
ドレスを含むブロックが、制御メモリ上に存在するか否
かを索引するためのものである。
制御装置は、第2の比較器の出力により分岐先アドレス
を含むブロックが制御メモリ上に存在しない場合171
1fj、マイクロ命令語の実行と並行してブロックを制
御メモリにロードするためのものである。
(実施例) 次に本発明について図面を参照して詳細に説明する。
第1図に示す本発明によるマイクロプログラム制御装置
は二次記憶装置1と、制御メモリ2と。
マイクロ命令レジスタ3と、デコーダ4と1分岐予測ア
ドレス生成装置5と、アドレスアレイ6と。
第1および第2の比較器71.72と、マイクロ命令ア
ドレスレジスタ8と9分岐予測アドレスレジスタ9と、
制御装置10とから成立つ。
二次記憶装置1はマイクロ命令語を記憶するためのもの
であり、制御メモリ2は二次記憶装置1から読出された
マイクロ命令語の一部を保持するためのものである。マ
イクロ命令レジスタ3Fi制御メモリ2から読出された
動作指示部および分岐アドレス部を有するマイクロ命令
を保持するものである。デコーダ4は、マイクロ命令レ
ジスタ3の内部の特定フィールドにある動作指示をしな
い命令、すなわち、NOP命令が存在する場合に、相当
する分岐予測のための先取シ指示をするための特定の命
令をデコードするためのものである。
分岐予測アドレス生成装置5はデコーダ4の出力と、マ
イクロ命令レジスタ3の出力とから実行中のマイクロ命
令の数ステップ後に実行格れるべき分岐命令の分岐先ア
ドレスを予測して生成するためのものである。アドレス
アレイ6は二次記憶装置1と、制御メモリ2のデータブ
ロックの管理情報とを保持し、複数のエントリを有する
ものである。第1の比較器71tj制御メモリ2上にお
いて実行中の次のステップにより実行されるべきマイク
ロ命令語が、制御メそり2上に存在するか否かを索引す
るため、アドレスアレイ6の出力とマイクロ命令アドレ
スレジスタ8の出力とを比較するためのものである。第
2の比較器72Fi、実行中のマイクロ命令語の数ステ
ップ後に実行されるべき分岐命令による分岐先アドレス
を含むブロックが、制御メモリ2上に存在するか否かを
索引するため、アドレスアレイ6の出力と分岐予測アド
レスレジスタ9の出力とを比較するためのものである。
マイクロ命令アドレスレジスタ8Ifi、実行中のマイ
クロ命令語をもとにして次のステップに対して実行され
るマイクロ命令のアドレスを保持するためのものである
。分岐予測アドレスレジスタ9Fi、分岐予測アドレス
生成装置5により生成された分岐予測アドレスを保持す
るためのものである。制御装置10は、このマイクロプ
ログラム制御装置の全体を制御するためのものである。
なお、第1図においては制御装置10から各ブロックへ
の制御線は省略してあり、本実施例を説明するための情
報信号線のみが記載しである。
次に本実施例について、最初に1分岐命令の分岐先アド
レスによる分岐予測を実施しない場合について説明する
いま、実行しよう□としているマイクロ命令語が制御メ
モリ2から読出され、マイクロ命令レジスタ3に格納さ
れると、マイクロ命令による動作指示をするためにマイ
クロ命令レジスタ3の出力が制御装置10に入力される
。制御装置10においては、マイクロ命令語の動作指示
部によりこのマイクロプログラム制御装置の各種動作を
制御し、いっぽうではマイクロ命令語の分岐アドレス部
により、現在実行中の次のステップにおいて実行される
べきマイクロ命令語のアドレスが生成され、マイクロ命
令アドレスレジスタ8に格納される。
現在実行中のマイクロ命令語が終了し、次のステップに
おいて実行すべきマイクロ命令語を制御メモリ2からマ
イクロ命令レジスタ3に格納するため、所望のマイクロ
命令語が制御メそり2に格納されているか否か、第1の
比較器711Cよりアドレスアレイ6の出力と、マイク
ロ命令アドレスレジスタ8の出力となるブロックナンバ
ーとが比較される。もし第1の比較器T1の出力が一致
出力を表わしている場合には、次に実行しようとするマ
イクロ命令語が制御メモリ2に存在し、マイクロ命令語
は制御メモリ2からマイクロ命令レジスタ3に読出され
、そのまま実行される。一方、第1の比較器71の出力
が一致出力を表わしていない場合には、第1の比較器T
1の出力が制御装置10に入力され、マイクロ命令の実
行は抑止される。制御装置10は上記信号を受信すると
、マイクロ命令アドレスレジスタ8のブロックアドレス
から二次記憶装置1のアドレスを作成し、二次記憶装M
1から制御メモリ2に対してブロックロードを実行し、
ロードされたブロックが制御メモリ2に格納され、アド
レスアレイ6にも上記ブロックのブロックナンバーが保
持される。上記の格納が完了すると、マイクロプログラ
ムの再開が起動するように制御装置10によって制御が
行われる。
次に、分岐命令の分岐先アドレスによる分岐予測を実行
する場合について説明する。分岐命令による分岐先アド
レスの分岐予測のための先取力指示をするための特定の
命令を備えたマイクロ命令語がマイクロ命令レジスタ3
に読出されると、上記特定命令がデコーダ4により解読
され、デコーダ4の出力が分岐予測アドレス生成装置5
に入力される。分岐予測アドレス生成装置5においては
実行中のマイクロ命令のアドレスとデコーダ4の出力と
によシ、現在実行中のマイクロ命令の数ステップ後の分
岐命令の分岐先アドレスを予測して生成し、その出力を
分岐予測アドレスレジスタ9に入力させる。上記分岐命
令の分岐先アドレスが制御メモリ2に格納されているか
否かを調べるために第2の比較器72を使用し、アドレ
スアレイ6と分岐予測アドレスレジスタ9のブロックナ
ンバーとを比較する。両者間で一致がとれた場合には、
所望のマイクロ命令語が制御メモリ2に存在する。この
場合には、数ステップ後の分岐命令もそのまま実行され
る。一方、第2の比較器72によって比較した結果、一
致がとれない場合には、第2の比較器72の出力が制御
装置10に入力され、現在実行中のマイクロ命令が抑止
されることなく現在実行中のマイクロ命令と並行して、
二次記憶装置1から制御メモリ2へ上記分岐命令による
分岐先アドレスを含むブロックがロードされ、アドレス
アレイ6にもこのブロックのブロックナンバーが保持さ
れる。現在実行中のマイクロ命令の斂ステップ後の分岐
命令が実行されようとした場合には、制御メモリ2に上
記ブロックが存在するか、あるいは先取り動作が実行さ
れている。その時点からブロックのロードを開始する必
要はないため、マイクロプログラムの実行時間が短縮さ
れるわけである。このような場合には、上記分岐命令の
実行条件が成立しないため、ブロックロードされたブロ
ックへ分岐が行われないで、そのまま実行が開始されて
も動作には何ら影響がない。
一方、シーケンスによっては先取りを実行することによ
り制御メモリ2のビット率が低下する恐れもあるが、こ
のような場合には二次配憶装置1に有効なブロック割付
けを実施することにより解消することができる。
(発明の効果) 本発明は以上説明したように、制御メモリをキャッシュ
メモリとして使用すると共に、実行中のマイクロ命令の
数ステップ後に実行するであろう分岐命令の分岐先アド
レスを含むブロックの先取りを可能にすることにより、
ブロックロードに要する時間を無視できる程妾にまで減
するか、あるいけかなりの程度に′!!で短縮すること
が可能となり、マイクロプログラム実行時間が向上する
という効果がある。
【図面の簡単な説明】
第1図は、本発明によるマイクロプログラム制御装置の
一実施例を示すブロック図である。 1・・・二次記憶装置 2e・・制御メモリ 3働命・マイクロ命令レジスタ 4・ψ・デコーダ 5咎・−分岐予測アドレス生成装置 6eIl@アドレスアレイ 71.72・・・比較器 8−・・マイクロ命令アドレスレジスタ9・・・分岐予
測アドレスレジスタ 10@豐・制御装置 特許出願人 日本電気株式会社 代理人 弁理士 井 ノ ロ   農

Claims (1)

  1. 【特許請求の範囲】 マイクロ命令語を複数個格納することができ複数のコン
    パートメントから成る二次記憶装置と。 前記複数のコンパートメントから成る制御メモリと、@
    記二次記憶装置に記憶されたデータブロックの管理情報
    を保持して複数のエントリを備えたアドレスアレイとを
    具備し、実行しようとするマイクロ命令語が含まれてい
    るブロックが前記制御メモリの内部に存在するか否かを
    試験し、もし前記ブロックが帥配制御メモリの内部に存
    在しなかった場合には二次記憶装置から前記制御メモリ
    にブロックロードして前記マイクロ命令語を実行するよ
    うがキャッシュ方式を採用した水平形マイクロプログラ
    ム制御装置において、前記マイクロ命令語の内部の特定
    フィールドに動作指示をしない命令、すなわち、NOP
    命令を含む場合に、相当する分岐予測のための先取りの
    指示をするための特定の命令を解読するためのデコーダ
    と、前記デコーダにより分岐予測アドレスを生成するた
    めの分岐予測アドレス生成装置と、@記分岐予測アドレ
    ス生成装情により生成された前記分岐予測アドレスを保
    持するための分岐予測アドレスレジスタと、実行中の前
    記マイクロ命令語から次のステップKpいて実行される
    べき前記マイクロ命令語のアドレスを抽出して保持する
    ためのマイクロ命令アドレスレジスタと、前記制御メモ
    リ上に実行中の次のステップにおいて実行されるべき前
    記マイクロ命令語が制御メモリ上に存在するか否かを索
    引するために前記アドレスアレイの内容と前記マイクロ
    命令アドレスレジスタの内容とを比較するための第1の
    比較器と、@記実行中のマイクロ命令語の数ステップ後
    に実行される前記分岐命令により決定されるべき分岐先
    アドレスを含むブロックが前記制御メモリ上に存在する
    か否かを索引するだめの第2の比較器と、前記第2の比
    較器の出力によシ前記分岐先アドレスを含むブロックが
    前記制御メモリ上に存在しない場合には、前記マイクロ
    命令語の実行と並行して前記ブロックを制御メモリ上に
    ロードするための制御装置とを具備したことを特徴とす
    るマイクロプログラム制御装置。
JP58081162A 1983-05-10 1983-05-10 マイクロプログラム制御装置 Pending JPS59206947A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP58081162A JPS59206947A (ja) 1983-05-10 1983-05-10 マイクロプログラム制御装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP58081162A JPS59206947A (ja) 1983-05-10 1983-05-10 マイクロプログラム制御装置

Publications (1)

Publication Number Publication Date
JPS59206947A true JPS59206947A (ja) 1984-11-22

Family

ID=13738752

Family Applications (1)

Application Number Title Priority Date Filing Date
JP58081162A Pending JPS59206947A (ja) 1983-05-10 1983-05-10 マイクロプログラム制御装置

Country Status (1)

Country Link
JP (1) JPS59206947A (ja)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS6254341A (ja) * 1985-09-03 1987-03-10 Nec Corp 命令先取り装置
JPH01258131A (ja) * 1988-04-08 1989-10-16 Nec Corp データ処理装置
JPH04239324A (ja) * 1991-01-14 1992-08-27 Nec Corp 分岐先予測方式
JP2019537163A (ja) * 2016-12-09 2019-12-19 アドバンスト・マイクロ・ディバイシズ・インコーポレイテッドAdvanced Micro Devices Incorporated オペレーションキャッシュ

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS6254341A (ja) * 1985-09-03 1987-03-10 Nec Corp 命令先取り装置
JPH01258131A (ja) * 1988-04-08 1989-10-16 Nec Corp データ処理装置
JPH04239324A (ja) * 1991-01-14 1992-08-27 Nec Corp 分岐先予測方式
JP2019537163A (ja) * 2016-12-09 2019-12-19 アドバンスト・マイクロ・ディバイシズ・インコーポレイテッドAdvanced Micro Devices Incorporated オペレーションキャッシュ

Similar Documents

Publication Publication Date Title
US5509134A (en) Method and apparatus for execution of operations in a flash memory array
JP2539199B2 (ja) デジタルプロセッサ制御装置
US4775927A (en) Processor including fetch operation for branch instruction with control tag
US5463746A (en) Data processing system having prediction by using an embedded guess bit of remapped and compressed opcodes
US4761731A (en) Look-ahead instruction fetch control for a cache memory
JPH0682320B2 (ja) データ処理装置
US4212060A (en) Method and apparatus for controlling the sequence of instructions in stored-program computers
JPS59206947A (ja) マイクロプログラム制御装置
JPS6049340B2 (ja) 分岐命令先取り方式
US6535943B1 (en) Information processing device enabling floating interrupt to be pending and a method executing an interrupt condition change instruction
US9501667B2 (en) Security domain prediction
JPH0342723A (ja) データ処理装置
JPH01150939A (ja) 情報処理装置
JPS60201441A (ja) マイクロプログラム制御装置
JP4151497B2 (ja) パイプライン処理装置
JPS6116334A (ja) デ−タ処理装置
JP2583614B2 (ja) ベクトル演算装置
JPH03127171A (ja) ベクトル処理装置
JPS59189446A (ja) マイクロプログラム制御装置
JPS617976A (ja) ベクトル演算処理装置
JPH04175927A (ja) プログラムのパッチ方式
JPH10240702A (ja) 並列処理プロセッサおよびその処理方法
JPH08297583A (ja) 割り込み処理装置およびその方法
JPH0290324A (ja) マイクロプログラム制御装置
JPH03282927A (ja) マイクロプログラム制御方法およびその制御装置