JPH0384630A - マイクロプロセッサ - Google Patents

マイクロプロセッサ

Info

Publication number
JPH0384630A
JPH0384630A JP22205689A JP22205689A JPH0384630A JP H0384630 A JPH0384630 A JP H0384630A JP 22205689 A JP22205689 A JP 22205689A JP 22205689 A JP22205689 A JP 22205689A JP H0384630 A JPH0384630 A JP H0384630A
Authority
JP
Japan
Prior art keywords
branch
address
pfp
instruction
physical 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.)
Pending
Application number
JP22205689A
Other languages
English (en)
Inventor
Masahiro Kusuda
昌弘 楠田
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 JP22205689A priority Critical patent/JPH0384630A/ja
Publication of JPH0384630A publication Critical patent/JPH0384630A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Advance Control (AREA)

Abstract

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

Description

【発明の詳細な説明】 〔産業上の利用分野〕 本発明は、仮想記憶機能内蔵のマイクロプロセッサに関
し、特に物理アドレスであるPFP値をキーに分岐予測
テーブルを検索し分岐先物理アドレスを得て、プリフェ
ッチ・アドレスの流れを切換える方式の分岐予測に於い
て、分岐元物理アドレスの分岐予測テーブルへの登録方
法に関する。
〔従来の技術〕
分岐予測機構を有する仮想記憶内蔵のマイクロプロセッ
サはなかった。従来技術について、分岐命令によるパイ
プラインの乱れを示したタイムチャートである第7図と
分岐命令処理に関わる主な緒源について示した第6図を
参照して説明する。
従来の仮想記憶内蔵のマイクロプロセッサ107が分岐
処理に関わる主なパイプライン・ステージは、第7図に
示すようにプリフェッチ(以降PFと称す)、命令デコ
ード(以降りと称す)、論理アドレス生成(以降AGと
称す)、アドレス変換(以降TLと称す)である。Dは
命令デコード部(以降DUと称す)103で、AGは論
理アドレス生成部(以降AUと称す)104で、TLは
アドレス変換機構(以降TUと称す)105で各々処理
される。PFP 101はDU103での命令デコード
に先立ち命令コードを命令メモリ106から命令コード
・バス503上に導くために、プリフェッチ・アドレス
501を出力として持つ。フリフェッチされた命令列中
に分岐命令がないかぎりPFP 101値は、加算器1
02により1回のプリフェッチ分加算されマルチプレク
サ112によりPFP I O1に書き込まれる。分岐
する場合はTU105で変換された分岐先物理アドレス
が、物理アドレス・バス502を通りマルチプレクサ1
12によりPFP 101に書き込まれる。第7図を参
照すると、■が分岐命令である場合分岐先の命令■がプ
リフェッチされるまでの間プリフェッチされた命令列■
■■は無駄なフェッチとなり捨てられる。この時、後続
のり、AG、TLの各ステージではパイプラインが乱れ
、処理の空きが生じていた。
〔発明が解決しようとする課題〕
従来のパイプライン方式のマイクロプロセッサは分岐予
測機構を有していなかったので、分岐によるパイプライ
ン・フラッシュが頻繁に発生しパイプラインの効率が低
下するという問題点があった。仮想記憶内蔵のマイクロ
プロセッサではパイプライン・ステージがアドレス変換
ステージ分多いため、パイプラインの乱れからの回復が
特に遅くなる。
〔課題を解決するための手段〕
物理アドレスを保持するPFPと、分岐元物理アドレス
と分岐先物理アドレスを対に記憶する分岐予測テーブル
と、分岐元及び分岐先論理アドレスを変換するアドレス
変換機構とを有する。
このように、上述した仮想記憶内蔵のマイクロプロセッ
サが分岐予測機構を有していなかったのに対し、本発明
は分岐元物理アドレスと分岐先物理アドレスを対にして
分岐予測テーブルに登録し、物理アドレスであるPFP
をキーとして前記分岐予測テーブルを検索し得た分岐先
物理アドレスをPFPに書き込むことにより分岐命令に
よるパイプラインの乱れを少なくしている。
〔実施例〕
次に、本発明について図面を用いて説明する。
第1図は、本発明の一実施例のブロック図であり、第4
図(a)はその分岐予測登録時の、第4図(b)は分岐
予測の効果が発揮されている状態のタイムチャートであ
る。
DU103.AU104.TU105及びPFPlol
の構成は、前述の従来例と同様である。分岐予測テーブ
ル108は連悲部109とデータ部110からなり、共
に物理アドレス・バス502が入力されており、各々分
岐元アドレス・ストローブ504と分岐先アドレス・ス
トローブ505により前記物理アドレス・バス502上
の値が書き込まれる。分岐予測登録時の動作を示す第4
図(a)を参照すると、分岐命令■がプリフェッチされ
た場合PFとDは前述の従来例と同様■■■処理期間は
無駄な時間となるが、その間AGとTLでは順次分岐先
アドレスのと分岐元アドレス■−1が生成/変換される
。分岐予測テーブル108は、PFP 101から出力
されるプリフェッチ・アドレス501をキーに分岐先ア
ドレスを検索され、該当する分岐元物理アドレスと分岐
先物理アドレスの対が既に登録されている場合(以降本
状態を分岐予測テーブルにヒツトした状態と称す)分岐
先予測アドレス・バス506にヒツトしたエントリの分
岐先物理アドレスを出力する。分岐予測がヒツトした場
合、マルチプレクサ112は分岐先予測アドレス・バス
506値を選択しPFPlolに書き込む。分岐予測ヒ
ツト時の動作を示す第4図(b)を参照すると、PFの
アドレス■が分岐予測テーブルにヒツトし次のサイクル
でPFのアドレスが分岐先アドレス■に変更され、Dは
■処理の次のサイクルで即分岐先命令である■の処理を
行なうことが可能となり、分岐によるパイプラインの乱
れがなくなることが分る。なお、分岐予測ヒツトした分
岐命令では、分岐元アドレスのAG、TLを必要としな
い。
第2図は、本発明の他の実施例のブロック図であり、第
5図はその分岐予測登録時のタイムチャートである。
第2図を参照すると、第1図に更に分岐元アドレス用ア
ドレス変換機構(以降TCUと称す)113及び分岐元
物理アドレス・バス507.分岐元論理アドレス・バス
508が追加されている。
分岐元論理アドレスは分岐命令デコード中のプログラム
・カウンタ値であり、AU104からTCU113へ分
岐元論理アドレス・バス508経由で転送される。第5
図を参照すると、分岐先アドレスと分岐元アドレスが各
々TU105及びTCU113によって同時に変換可能
なため、TLGが■のみで終了することが分る。分岐予
測ヒツト時のタイムチャートは第4図(b)と同様であ
る。
第3図は、本発明さらに他の実施例のブロック図である
分岐元物理アドレスは、AU1o4及びTU105にて
生成/変換されずPFP 101値をパイプラインの各
ステージ分の段階を有するプリフェッチ・アドレス・キ
ュー509に順次格納され、分岐命令の分岐先アドレス
を物理アドレス・バス502から出力すると同時に分岐
元物理アドレス・バス507へ出力し分岐予測テーブル
110のデータ部110に格納される。
分岐予測登録時及び分岐予測ヒツト時のタイムチャート
は各々第5図及び第4図(b)と同じになる。
〔発明の効果〕
以上説明したように本発明は、プリフェッチ・ポインタ
の物理アドレスを検索用キーとする分岐予測テーブルを
有する分岐予測機構を持つことにより、繰返しループ等
の同一分岐命令の実行時にパイプラインの乱れを最小に
抑えることが出来る。
このため、仮想記憶内蔵のマイクロプロセッサの性能を
向上させることになる。
【図面の簡単な説明】
第1.2.3図は各々本発明の第1.第2.第3の実施
例に対応した仮想記憶内蔵のマイクロフロセッサの分岐
命令の実行に関わる主な部分を説明したブロック図、第
4図(a)は第1の実施例に於ける分岐予測登録時の、
第4図(b’)は各実施例に於ける分岐予測ヒツト時の
、第5図は第2.第3の実施例に於ける分岐予測登録時
のタイムチャートである。第6図及び第7図は、各々従
来の仮想記憶内蔵のマイクロフロセッサのブロック図及
び分岐命令実行のタイムチャートである。 101・・・・・・プリフェッチ・ポインタ(PFP)
、102・・・・・・加算器、103・・・・・・命令
デコード部(DU)、104・・・・・・論理アドレス
生成部(AU)、105・・・・・・アドレス変換機構
(TU)、106・・・・・命令メモリ、107・・・
・・・従来の仮想記憶内蔵のマイクロプロセッサ、10
8・・・・・・分岐予測テーブル、109・・・・・・
連想部、110・・・・・・データ部、111・・・・
・・本発明の仮想記憶内蔵のマイクロプロセッサ、11
2・・・・・・マルチプレクサ、113・・・・・分岐
元アドレス用アドレス変換機構(TCU)。

Claims (1)

  1. 【特許請求の範囲】 1、パイプライン制御のマイクロプロセッサに於いて、
    プリフェッチすべき命令の物理アドレスを保持するプリ
    フェッチ・ポインタ(以降PFPと称す)と、PFPを
    プリフェッチ1回分アドレスを増加させる機構と、分岐
    命令の指定する分岐先物理アドレスをデータ部とし当該
    分岐命令の物理アドレス(以降分岐元物理アドレスと称
    す)を連想部として保持する連想メモリ(以降分岐予測
    テーブルと称す)と、分岐先及び分岐元の論理アドレス
    を順次物理アドレスに変換するアドレス変換機構と、ア
    ドレス変換により得られた分岐先及び分岐元物理アドレ
    スを分岐予測テーブルに各々登録機構と、命令を解釈し
    分岐命令の分岐先と分岐元論理アドレスを計算しアドレ
    ス変換機構に転送する機構と、PFP値をキーとして前
    記分岐予測テーブルを検索しテーブルにヒットした場合
    には対応する分岐先アドレスを得てPFPに書き込む機
    構とを有するマイクロプロセッサ。 2、特許請求の範囲第1項に於いて、分岐先アドレスと
    分岐元アドレスを同時にアドレス変換するために、アド
    レス変換機構を複数組有することを特徴とするマイクロ
    プロセッサ。 3、特許請求の範囲第1項に於いて、PFP値を保持す
    るキュー(以降PFPQと称す)をプリフェッチからオ
    ペランド・アドレス変換に於けるパイプラインの深さ分
    有し、分岐予測テーブルに分岐先物理アドレス及び分岐
    元物理アドレスを登録する際分岐先アドレスのみアドレ
    ス変換機構により変換し物理アドレスを得、分岐元物理
    アドレスは前記PFPQから分岐命令の分岐先物理アド
    レスに対応するPFP履歴を取り出し連想部に書き込む
    機構を有することを特徴とするマイクロプロセッサ。
JP22205689A 1989-08-28 1989-08-28 マイクロプロセッサ Pending JPH0384630A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP22205689A JPH0384630A (ja) 1989-08-28 1989-08-28 マイクロプロセッサ

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP22205689A JPH0384630A (ja) 1989-08-28 1989-08-28 マイクロプロセッサ

Publications (1)

Publication Number Publication Date
JPH0384630A true JPH0384630A (ja) 1991-04-10

Family

ID=16776410

Family Applications (1)

Application Number Title Priority Date Filing Date
JP22205689A Pending JPH0384630A (ja) 1989-08-28 1989-08-28 マイクロプロセッサ

Country Status (1)

Country Link
JP (1) JPH0384630A (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5729707A (en) * 1994-10-06 1998-03-17 Oki Electric Industry Co., Ltd. Instruction prefetch circuit and cache device with branch detection

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS5991553A (ja) * 1982-11-17 1984-05-26 Nec Corp 実アドレス分岐ヒストリテ−ブルを有する命令先取り装置
JPS63189943A (ja) * 1987-02-02 1988-08-05 Mitsubishi Electric Corp 分岐予測制御方式

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS5991553A (ja) * 1982-11-17 1984-05-26 Nec Corp 実アドレス分岐ヒストリテ−ブルを有する命令先取り装置
JPS63189943A (ja) * 1987-02-02 1988-08-05 Mitsubishi Electric Corp 分岐予測制御方式

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5729707A (en) * 1994-10-06 1998-03-17 Oki Electric Industry Co., Ltd. Instruction prefetch circuit and cache device with branch detection

Similar Documents

Publication Publication Date Title
US7458069B2 (en) System and method for fusing instructions
US6553488B2 (en) Method and apparatus for branch prediction using first and second level branch prediction tables
JP2539974B2 (ja) 情報処理装置におけるレジスタの読出制御方式
JPS6323586B2 (ja)
KR19990087940A (ko) 단일클럭사이클내에불연속명령을페치하기위한방법및시스템
US7266676B2 (en) Method and apparatus for branch prediction based on branch targets utilizing tag and data arrays
JP2018506776A (ja) 選択的ページミス変換プリフェッチによってプログラムメモリコントローラにおけるページ変換ミスレイテンシを隠すこと
JP3182438B2 (ja) データプロセッサ
JP2006520964A5 (ja)
US5889986A (en) Instruction fetch unit including instruction buffer and secondary or branch target buffer that transfers prefetched instructions to the instruction buffer
JP5335440B2 (ja) オペランドの早期の条件付き選択
US5276825A (en) Apparatus for quickly determining actual jump addresses by assuming each instruction of a plurality of fetched instructions is a jump instruction
JPH04213135A (ja) 外部メモリアクセスシステム
JP3345787B2 (ja) データ処理装置
JP3811140B2 (ja) 情報処理装置
JPH0384630A (ja) マイクロプロセッサ
JP4247132B2 (ja) 情報処理装置
JPH02214937A (ja) データ処理装置
JP3765111B2 (ja) 分岐登録命令を有するプロセッサ
WO2019134376A1 (zh) 虚拟地址确定方法及装置、处理器、存储介质
KR100300875B1 (ko) 캐쉬 미스 시 처리 방법
JPH0248733A (ja) 情報処理装置
JP4049490B2 (ja) 情報処理装置
JPH07191845A (ja) 即値データ転送装置
JPS6047618B2 (ja) 情報処理装置