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

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

Info

Publication number
JPH04145531A
JPH04145531A JP26669190A JP26669190A JPH04145531A JP H04145531 A JPH04145531 A JP H04145531A JP 26669190 A JP26669190 A JP 26669190A JP 26669190 A JP26669190 A JP 26669190A JP H04145531 A JPH04145531 A JP H04145531A
Authority
JP
Japan
Prior art keywords
address
branch
instruction
code
prefetch queue
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
JP26669190A
Other languages
English (en)
Inventor
Shinichi Okugawa
奥川 伸一
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
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 filed Critical NEC Corp
Priority to JP26669190A priority Critical patent/JPH04145531A/ja
Publication of JPH04145531A publication Critical patent/JPH04145531A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Advance Control (AREA)

Abstract

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

Description

【発明の詳細な説明】 〔産業上の利用分野〕 本発明はマイクロプログラム制御装置に係シ、特に命令
コードのプリフエッチキューを持ち、パイプライン制御
を行うマイクロプログラム制御装置に関するものである
〔従来の技術〕
従来、ブリフェッチ制御を行なうマイクロプログラム制
御装置においては、ブランチ動作を行なう場合ブリフエ
ツデされ念命令は全て無効となう、改めてブランチ先の
命令を7エツチしてブリ7エツデキユーにセットすると
いう動作を行なうのが一般的であった。
〔発明が解決しようとする課題〕
上述したような、ブランチ動作を行うたびに、プリフェ
ッチキューにセットする命令コードの再フエツチ動作が
必要になるマイクロプログラム制御装置では、ブランチ
時のオーバーヘッドが大きいため、特にループなどを多
用してあシブランチを行なう頻度が高いプログラムを動
かすと処理速度が遅くなるという課題があった。
〔課題を解決するための手段〕
本発明のマイクロプログラム制御装置は、命令コードの
グリ7エツチキユーを持ち、パイプライン制御を行うマ
イクロプログラム制御装置K>いて、上記プリフェッチ
キューに入れられる最大バイト数分の幅を持つコード部
と、ブランチ命令のアドレスを格納するアドレス部から
なるブランチ用アドレス−コード変換テーブル金持ち、
ブランチ命令が出現してブランチを実行する際、上記ア
ドレス−コード変換テーブルのアドレス部を検索してそ
のブランチ命令のアドレスと一致するものがあるかどう
か調べ、一致するものがなかった場合a通常どおりブラ
ンチ先の命令を7エツチしてプリフェッチキューにセッ
トし直すという作業を行うようになしこれと同時にこの
アドレス−コード変換テーブルの1つのエントリーをと
ってそのアドレス部にはこのブランチ命令のアドレスを
コード部にはそのプリフエッチキューにセラトスるブラ
ンチ先の命令コードをそれぞれ格納し、検索の結果一致
するものがあった場合は上記アドレス−コード変換テー
ブルのコード部をとシ出し、そのフェッチキューにセッ
トすることによシ、プリフェッチキュー分の7工ツチ時
間を省略してブランチ動作をすばやく行うようにしたも
のである。
〔作用〕
本発明においては、システムの実行性能に大きく関与す
るブランチ命令の実行速度に関して、ブランチ先命令の
コードをプリフエッチキューの分だけ格納するアドレス
−コード変換テーブルを持つことによシ、ブランチ実行
時におけるプリフェッチキュー補正作業の時間のロスを
最小限におさえる。
〔実施例〕
以下、図面に基づき本発明の実施例を詳細に説明する。
図は本発明の一実施例を示すブロック図である。
図において、1aは本発明を適用したマイクロプログラ
ム制御装置、1bは外部からのデータが印加される入力
端子、2はプリフェッチキューに入れられる最大バイト
数分の@金持つコード部と。
ブランチ命令のアドレスを格納するアドレス部からなる
ブランチ用アドレス−コード変換テーブル、3はこのア
ドレス−コード変換テーブル2を管理する変換テーブル
管理ブロック、4,5.6は命令コードのプリフェッチ
レジスタ、Tは現在実行中の命令が入っているカレント
命令レジスタ、8は実行中命令のアドレスを示すプログ
ラムカウンタが格納しであるプログラムカウンタレジス
タ、9はブランチ命令が発行されたときその条件を判定
してブランチを行なうか行なわないかを判断するブラン
チ条件判定ブロック、10は外部から与えられる命令コ
ードをプリフェッチレジスタ4やアドレス−コード変換
テーブル2に伝える命令コードバスである。
なお、プリフェッチレジスタ4,5.6で3段のプリフ
エッチキューを形成している。
そして、ブランチ命令が出現してブランチを実行する際
、アドレス−コード変換テーブル2のアドレス部を検索
してそのブランチ命令のアドレスと一致するものがある
かどうか調べ、一致するものがなかつ念場合は通常どお
りブランチ先の命令をフェッチしてプリフェッチキュー
にセットし直すという作業を行うようになしこれと同時
にこのアドレス−コード変換テーブル201つのエント
リーをとってそのアドレス部にはこのブランチ命令のア
ドレスを、コード部にはそのプリフエッチキューにセッ
トするブランチ先の命令コードをそれぞれ格納し、検索
の結果一致するものがあった場合はアドレス−コード変
換テーブル2のコード部をとシ出し、そのプリフェッチ
キューにセットすることによシ、プリフェッチキュー分
の7工ツチ時間を省略してブランチ動作をすばやく行う
ように構成されている。
つぎにこの図に示す実施例の動作全説明する。
まず、ブランチ命令以外の通常命令を実行しているとき
は、プリフェッチした命令はまずプリフェッチレジスタ
4にセットされ、カレント命令レジスタγにセットしで
ある命令の実行が終了するごとに、プリ7エツチレジス
タ4→プリフエツチレジスタ5→プリ7エツチレジスタ
6→カレント命令レジスタγと転送され、カレント命令
レジスタ7にセットされた時点でその命令の実行が始ま
る。
つffK、カレント命令レジスタTにセットされた命令
が条件ブランチ命令であった場合を説明する。まずブラ
ンチ条件判定ブロック9で条件が成立したか否かを判定
し、不成立の場合は従来どおりプリフェッチレジスタ6
から次の命令をカレント命令レジスタ7に転送し、その
命令の実行に入る。一方、条件が成立した場合には、変
換チーフル管理ブロック3にその旨を伝え、そのブラン
チ命令のアドレスがセットされであるプログラムカウン
タレジスタ8の内容を読みとってアドレス−コード変換
テーブル2のアドレス部との比較を行なう。そこでもし
一致するものがなかった場合は、従来の装置と同様ブラ
ンチ先の゛アドレスを計算し命令をフェッチしてプリフ
ェッチレジスタ4にセットするが、その際アドレス−コ
ード変換テーブル2の1つのエントリーをとってそのコ
ード部の(A)フィールドにもセットする。ここで、本
し、アドレスコード変換テーブル2が満杯だつ恵ときは
、最も古くエントリーされたものを追い出して使用する
。そして、さらに続ぐ2命令を7エツチして、その都度
プリフェッチレジスタ4→プリ7エツチレジスタ5→プ
リフエツチレジスタ6の転送をやりながらフェッチした
命令をプリフェッチレジスタ4にセットするが、これと
同時にアドレス−コード変換テーブル2のコード部の(
B)フィールドおよび(C)フィールドにもセットする
。また、そのエントリーのアドレス部にはブランチ命令
のアドレスをセットしておく。
以上でプリフェッチキューの準備が完了し、プリフェッ
チレジスタ6の命令をカレント命令レジスタ7へ転送し
て実行を再開する。
一方、プログラムカウンタレジスタ8とアドレス−コー
ド変換テーブル2のアドレス部の比較で一致したものが
あるときは、そのエントリーコード部にブランチ先の命
令コードが3命令分格納しであるため、それをプリフェ
ッチキューに転送する。すなわち、コード部の(A)フ
ィールドの内容をプリフェッチレジスタ6へ、 (B)
フィールドの内容をプリフェッチレジスタ5へ、(C)
フィールドの内容をプリフェッチレジスタ4へ同時に転
送することにより、プリフェッチキューの準備が1ステ
ツプ完了する。
このように、ブランチ命令のアドレスが変換テーブルに
ヒツトしたときはフェッチ動作、すなわち、メモリアク
セスなしにプリフエッチキューの準備が即完了するため
、ブランチ実行時のロスが最小限で済む。特にループ動
作のように同じ箇所のブランチ命令で何度もブランチす
るような場合はヒツト率がかなシ高ぐな夛有効である。
〔発明の効果〕
以上説明したように本発E!Aは、システムの実行性能
に大きく関与するブランチ命令の実行速度に関して、ブ
ランチ先命令のコードをプリ7エツテキユーの分だけ格
納するアドレスコード変換テーブルを持つことにより、
ブランチ実行時におけるプリフェッチキュー補正作業の
時間のロスを最小限におさえ、システムの実行性能を大
幅に向上することができる効果がある。
【図面の簡単な説明】
図は本発明の一実施例を示すブロック図である。 2・・・・ブランチ用アドレス−コード変換チーフル、
3・・φ・変換テーブル管理ブロック、4〜6・・・拳
プリフェッチレジスタ、7・・・・カレント命令レジス
タ、8・・・・プログラムカウンタレジスタ、9・−・
・ブランチ条件判定ブロック、10・・・・命令コード
バス。 特ト出願人  日本電気株式会社

Claims (1)

    【特許請求の範囲】
  1. 命令コードのプリフエッチキューを持ち、パイプライン
    制御を行うマイクロプログラム制御装置において、前記
    プリフエッチキューに入れられる最大バイト数分の幅を
    持つコード部と、ブランチ命令のアドレスを格納するア
    ドレス部からなるブランチ用アドレスコード変換テーブ
    ルを持ち、ブランチ命令が出現してブランチを実行する
    際、前記アドレス−コード変換テーブルのアドレス部を
    検索してそのブランチ命令のアドレスと一致するものが
    あるかどうか調べ、一致するものがなかった場合は通常
    どおりブランチ先の命令をフェッチしてプリフエッチキ
    ューにセットし直すという作業を行うようになしこれと
    同時にこのアドレス−コード変換テーブルの1つのエン
    トリーをとってそのアドレス部にはこのブランチ命令の
    アドレスを、コード部にはそのプリフエッチキューにセ
    ットするブランチ先の命令コードをそれぞれ格納し、検
    索の結果一致するものがあった場合は前記アドレス−コ
    ード変換テーブルのコード部をとり出し、そのプリフエ
    ッチキューにセットすることにより、プリフエッチキュ
    ー分のフェッチ時間を省略してブランチ動作をすばやく
    行うようにしたことを特徴とするマイクロプログラム制
    御装置。
JP26669190A 1990-10-05 1990-10-05 マイクロプログラム制御装置 Pending JPH04145531A (ja)

Priority Applications (1)

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

Applications Claiming Priority (1)

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

Publications (1)

Publication Number Publication Date
JPH04145531A true JPH04145531A (ja) 1992-05-19

Family

ID=17434352

Family Applications (1)

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

Country Status (1)

Country Link
JP (1) JPH04145531A (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2013206006A (ja) * 2012-03-27 2013-10-07 Fujitsu Ltd プロセッサ

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0195331A (ja) * 1987-10-08 1989-04-13 Fujitsu Ltd パイプライン処理システム

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0195331A (ja) * 1987-10-08 1989-04-13 Fujitsu Ltd パイプライン処理システム

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2013206006A (ja) * 2012-03-27 2013-10-07 Fujitsu Ltd プロセッサ

Similar Documents

Publication Publication Date Title
US4648034A (en) Busy signal interface between master and slave processors in a computer system
EP0180725B1 (en) Instruction prefetch operation for branch instructions
JPH0215369A (ja) ベクター処理システムの命令を実行する方法及び装置
JPH0769812B2 (ja) データ処理装置
US5146570A (en) System executing branch-with-execute instruction resulting in next successive instruction being execute while specified target instruction is prefetched for following execution
US5197136A (en) Processing system for branch instruction
JPH0348537B2 (ja)
EP0240606B1 (en) Pipe-line processing system and microprocessor using the system
JPH04145531A (ja) マイクロプログラム制御装置
CA1287177C (en) Microprogrammed systems software instruction undo
JPH03175548A (ja) マイクロプロセッサ及びアドレス制御方式
JPS6273333A (ja) エミュレーション制御装置
EP0411679A2 (en) Apparatus for dynamically adding a next address field to the instructions of a computer system.
JPH0326862B2 (ja)
EP0315995B1 (en) Processing system for branch instruction
JPS60231241A (ja) プログラム先行フエツチ制御方式
JP2586690B2 (ja) 命令プリフェッチ装置
JP3625586B2 (ja) プロセッサの命令実行制御システム
JPS60241136A (ja) デ−タ処理装置
JP2768878B2 (ja) データ処理装置、命令実行の同期方法、例外発生時の命令アドレス待避方法及び例外発生時の命令処理無効化方法
JPH0248733A (ja) 情報処理装置
JPH02100740A (ja) キャッシュ・メモリユニットのブロック・ロード動作方式
JP3414579B2 (ja) プログラマブルコントローラ
JPS61289429A (ja) 演算処理装置
JPH0514288B2 (ja)