JPS60179846A - 変換例外割込み制御方式 - Google Patents

変換例外割込み制御方式

Info

Publication number
JPS60179846A
JPS60179846A JP3580284A JP3580284A JPS60179846A JP S60179846 A JPS60179846 A JP S60179846A JP 3580284 A JP3580284 A JP 3580284A JP 3580284 A JP3580284 A JP 3580284A JP S60179846 A JPS60179846 A JP S60179846A
Authority
JP
Japan
Prior art keywords
instruction
address
exception
conversion
register
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
JP3580284A
Other languages
English (en)
Other versions
JPH0235331B2 (ja
Inventor
Kouhei Ootsuyama
大津山 公平
Yuji Oinaga
勇次 追永
Sukesumi Koike
小池 夫澄
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.)
Fujitsu Ltd
Original Assignee
Fujitsu 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 Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP3580284A priority Critical patent/JPS60179846A/ja
Publication of JPS60179846A publication Critical patent/JPS60179846A/ja
Publication of JPH0235331B2 publication Critical patent/JPH0235331B2/ja
Granted legal-status Critical Current

Links

Abstract

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

Description

【発明の詳細な説明】 (A)発明の技術分野 本発明は変換例外割込み制御方式、特に、パイプライン
制御を行うデータ処理装置であって、分岐命令の時、分
岐条件の判定が確定する前に命令フェッチを行う装置に
おいて、変換例外が生じたアドレスを管理し制御する変
換例外割込み制御方式に関するものである。
(B)技術の背景 アドレス変換機構を備えた情報処理装置では、仮想記憶
空間上の論理アドレスが、アドレス変換機構によって、
実記憶空間上の実アドレスに変換される。この論理アド
レスから実アドレスへの変換は、論理ページから実ペー
ジへのマツピングによって行われるが、このマツピング
が動的に変化するため、論理ページの有効性も動的に変
化する。
従って、命令を実行する際、実行に先立って使用するオ
ペランドが属するページの有効性を、確認する必要があ
る。また、命令フェッチの際にも、同様にページの有効
性を確認する必要がある。
この確認では、一般にアドレス、プロテクション、ペー
ジ変換、セグメント変換、変換指定の5つの例外が、い
ずれも検出されなかったとき、使用するページが有効と
みなされる。このうち、ページ変換、セグメント変換、
変換指定のいずれかの例外、即ち変換例外が検出された
時、そのオペランドもしくは命令のアドレスは、変換例
外アドレス(T X A : Translation
 Exception Address)として保持さ
れる。
(C)従来技術と問題点 従来方式では、命令フェッチやオペランドへのアクセス
について、記憶制御部(S−Unit)で前記各種の変
換例外を検出し、命令制御部(1−Unit)に報告し
、ページ変換例外、セグメント変換例外のときには、変
換例外アドレス(TXA)を記憶制御部内で保持してい
た。
パイプライン制御を行う情報処理装置において、上記T
XAをめる際に、分岐命令によって命令列が変更された
とき、如何にTXAを制御するかという問題がある。従
来方式では、分岐命令のときには、分岐条件の判定が確
定することを予測できたときに、命令フェッチを出し、
もし成功しない場合には、命令語レジスタへの書き込み
及びTXAへのセントを禁止することにより、1個のT
XAを保持するアドレスレジスタを用意し、制御するよ
うにしていた。
ところが、パイプライン段数が深(なり、分岐命令の条
件判定が確定する以前に、命令フエ・ノチを行い、性能
を上げるような制御方式を採用しようとすると、分岐命
令によって分岐した各命令列に対応するTXA用のアド
レスレジスタを持ち、分岐不成功のときには、そのアド
レスレジスタの内容を無効化する必要があり、制御が複
雑になると共に、複数のTXAレジスタを持つため、ハ
ードウェア量も増加するという問題がある。
(D)発明の目的と構成 本発明は上記問題点の解決を図り、分岐命令の条件判定
が確定する以前に、命令をフエ・ソチするパイプライン
制御を行う場合であっても、比較的簡易に変換例外アド
レスの制御を行い得るようにした変換例外割込み制御方
式を提供することを目的としている。そのため、本発明
の変換例外割込み制御方式は、パイプラインにより命令
を実行制御する情報処理装置における変換例外割込み制
御方式において、各パイプラインのステージに対応して
命令アドレスまたはオペランド・アドレスを保持するア
ドレスレジスタと、変換例外が生じた時どの位置に変換
例外が生じたかを示す情報を各パイプラインのステージ
対応に保持する例外情報レジスタと、命令の最終ステー
ジに上記例外情報レジスタからの信号に基づき変換例外
が生したアドレスを補正する補正回路とを備え、上記補
正回路の出力を変換例外アドレスとすることを特徴とし
ている。以下、図面を参照しつつ、実施例に従って説明
する。
(B)発明の実施例 第1図は本発明の実施例として採り上げるパイプライン
制御を説明するためのタイムチャート、第2図は本発明
による制御概要を説明するための図、第3図は本発明の
一実施例構成、第4図および第5図は第3図図示回路に
よる変換例外アドレス生成を説明するための図を示す。
第1図は、命令フェッチに3ステージ、命令実行に6ス
テージかかるパイプライン構成の計算機における命令制
御例を示している。命令のフェッチ制御は、例えば命令
をフェッチするアドレスを決定するlステージと、命令
アドレスを実アドレスに変換するITlステージ、命令
をへソファから読み出すIBステージとからなり、実行
制御は、命令フェッチ後に、命令をデコードするDステ
ージと、オペランド・アドレスを計算するAステージと
、オペランド・アドレスを実アドレスに変換するlステ
ージと、記憶制御部が管理するバッファから読み出しを
行うBステージと、演算処理するEステージと、結果を
チェックして書き込むWステージの各制御ステージから
なる。これらの各ステージは、一般に独立であって、先
行制御が可能であり、高速な計算機では、パイプライン
処理が行われている。以下、上記制御ステージをもつ場
合を例にして説明するが、本発明は、これに限られるわ
けではない。
特に、本発明が適用される情報処理装置では、第2図図
示の如く、先取り命令アドレスレジスタ1−0.1−L
・・・が複数個設けられ、分岐命令に対して非分岐側、
即ち分岐不成功側の命令列と、分岐側の命令列とが、別
々に、先行読出しされることが考慮されている。この場
合、命令フェッチ時に変換例外が起きると、その変換例
外が起きたアドレスを、実際にその命令が実行されるま
で記1.シシ、また非分岐側で起きたか、分岐側で起き
たかといった情報を管理しなければならない。分岐が2
回以上重なる場合には、さらに制御が複雑となる。
本発明の場合、記憶制御部で変換例外アドレスを保持し
ておくことを止め、′例えば、記憶制御部でアクセス例
外を検出したときに、例外情1(exce。
tion code)をパイプラインの各ステージで覚
え、また位置情報についても、直接のアドレスではなく
、命令フェッチ用のアドレスと、命令語レジスタまたは
命令バッファから命令を選択する命令ポインタ(NSI
)とにより、その命令の先頭アドレスをめ、各ステージ
で保持し、命令の最終ステージで、そのアドレスを補正
することにより、変換例外アドレスを生成する。またオ
ペランドについては、同様に、記憶制御部へアクセス要
求を出したアドレスを、各ステージで覚えておき、最終
ステージで補正を行うことにより、変換例外アドレスを
生成するようにされる。
そのため、命令制御部を中心とした本発明の一実施例回
路は、例えば第3図図示の如くになっている。図中、1
−〇ないし1−2は先行読出し用の先取り命令アドレス
レジスタ、2は命令ポインタであって、現在実行してい
る命令が先取り命令アドレスレジスタの示すアドレスか
ら何ハーフ・ワード(Ilalf Word)目かを示
すポインタ、3は先取りした命令の各先頭アドレスを計
算する加算器、4ないし8ばそれぞれ各ステージに対応
する命令アドレスレジスタ、10はPFKレジスタ、1
1は先取り命令の実効アドレスを生成する加算器、12
は命令実効アドレスレジスタ、13はバッファ、14ば
命令語レジスタ、15は半語(ハーフ・ワード)マーク
、16はエンコーダ、1フないし21は例外情報レジス
タ、22は補正値回路、23は変換例外アドレスをめる
加算器、24は変換例外アドレスレジスタ、30はディ
スプレイスメント・レジスタ、31はヘース・レジスタ
、32はインデックス・レジスタ、33はオペランド・
アドレス生成回路、34はオペランド・アドレス・レジ
スタ、36はオペランド語レジスタ、37は実行回路、
38は結果レジスタ、40ないし43はそれぞれ各ステ
ージに対応するオペランド・アドレスレジスタを表す。
先取り命令アドレスレジスタ1−〇〜1−2は、複数回
の分岐命令に対して、分岐毎に命令列を変更(この例で
は最大3命令まで)できるようにするために、複数個設
けられている。この先取り命令アドレスレジスタ1−〇
〜1−2には、例えば8バイト単位で命令をフェッチす
るためのアドレスが格納される。PFKレジスタ10は
、初期値゛0”であって、その後には8゛の値を保持す
る。加算器11は、先取り命令アドレスレジスタ1−0
〜1−2の値とPFKレジスタ10の値とを加算し、実
効アドレスをレジスタ12にセットする。このアドレス
によって、記憶制御部により、バッファ13が検索され
、命令がフェッチされて、命令語レジスタ14に読み出
されることになる。それ以降は、命令アドレスに°8”
加算されて、順次フェッチが行われる。なお、命令語レ
ジスタ14も、複数個設けられる。
命令ポインタ2は、第4図図示の如く、実行される各命
令が、8ハイド華位でフェッチされた命令のどこに位置
するかについての相対変位を保持する。第4図に斜線で
示した部分が、パイプラインを流れる命令の位置であり
、加算器3の出力は、その命令の先頭アドレスとなる。
このアドレスは、複数段のシフトレジスタで構成される
命令アドレスレジスタ4〜8に、順次送り出される。即
ち、実行する命令の先頭アドレスは、先取り命令アドレ
スレジスタ1−θ〜1−2のうち選択された1つのレジ
スタに、命令ポインタ2の内容を加え合わせることによ
って得られる。
半語マーク15ば、2バイト単位のポインタであり、命
令フェッチの際に変換例外が発生した場合、先取りした
8バイトのアドレスのうち、どこで例外が発生したかを
示す。半語マーク15の内容は、エンコーダ16によっ
て、+2もしくは+4等といった情報に変換され、命令
フェッチ時の例外であるというフラグや割込みコード等
と共に、例外情報の一部として、例外情報レジスタ17
〜21に順次送り出される。即ち、例外情報についても
、命令アドレスと同様に、各ステージで保持されること
になる。最終ステージにおいて、例外情報<wxc> 
qよって決定される補正値回路22の出力値を、加算器
23によって、命令アドレスレジスタ8の内容に加える
ことにより、変換例外アドレス(’IXA)が生成され
、変換例外アドレスレジスタ24にセットされる。
オペランド・アドレス生成回路33は、レジスタ30〜
32等の内容から、オペランドの実効アドレスを計算し
、オペランド・アドレス・レジスタ34に七ソI−する
。これによって、記憶制御部(S−Unit)により、
バッファ13がアクセスされて、オペランド語が用意さ
れ、演算ユニット部である実行回路37によって、演算
が行われる。その演算結果は、結果レジスタ38に書き
込まれる。なお、各ステージに対応して、オペランド・
アドレスを保持するレジスタ40〜43が設けられ、加
算器33によって得られたオペランド・アドレスが、順
次シフトされて、保持されるようになっている。
ここでオペランド・フェッチの際、変換例外が生じると
、命令フェッチの場合と同様に、オペランド例外情報が
、例外情報レジスタ20に供給される。ところで、オペ
ランド・フェッチの場合、各オペランド・アドレスレジ
スタ40〜43には、オペランドの先頭アドレスが入り
、そのアドレスから、例えば最大256バイトの長さの
オペランドが、フェッチまたはストアされ得る。従って
、オペランドが2つのページにまたがる可能性がある。
そのため、オペランド例外のときには、前のページに関
する例外か、後のページに関する例外かを示す情報につ
いても、保持するようにされる。
そして、オペランドに藺する変換例外の場合、最終ステ
ージにおいて、例外情報(WXC)によって選択された
補正値回路22の値に凸づき、変換例外が前のページの
場合には、アドレスレジスタ43が保持するアドレスに
十〇を加え、後のページの場合には、+2048 (ペ
ージサイズ)を加えることにより、変換例外アドレスを
生成する。
オペランドの変換例外では、ページ内の変位についての
情報は必要とされないので、オペランドが2つのページ
にまたがった場合、前後のどちらかを認知できればよく
、第5図から分がるように、図示A側で変換例外が生じ
たときには、レジスタ(WOAR)の内容が変換例外ア
ドレスとされ、図示B側で生したときには、レジスタ(
WOAR)の内容に2048バイト加算されたものが、
変換例外アドレスとされる。
(F)発明の詳細 な説明した如く、本発明によれば、変換例外アドレスレ
ジスタを特に複数個用意することなく、変換例外アドレ
スを制御でき、分岐命令のとき、分岐条件の判定が確定
する以前に命令フェッチを行うパイプライン制御を、比
較的簡易な回路構成でもって実現できるようになる。
【図面の簡単な説明】
第1図は本発明の実施例として採り上げるパイプライン
制御を説明するためのタイムチャート、第2図は本発明
による制御概要を説明するための閏、第3図は本発明の
一実施例構成、第4図および第5図は第3図図示回路に
よる変換例外アドレス生成を説明するだめの図を示す。 図中、■−0ないしl−2は先取り命令アドレスレジス
タ、2は命令ポインタ、3は加算器、4ないし8はそれ
ぞれ各ステージに対応する命令アドレスレジスタ、10
はPFKレジスタ、11は加算器、12は命令実効アド
レスレジスタ、13はバッファ、14は命令語レジスタ
、15は半語マーク、16はエンコーダ、17ないし2
1は例外情報レジスタ、22は補正値回路、23ば加算
器、24は変換例外アドレスレジスタ、30はディスプ
レイスメント・レジスタ、31はヘース・レジスタ、3
2はインデックス・レジスタ、33はオペランド・アド
レス生成回路、34はオペランド・アドレス・レジスタ
、36はオペランド語レジスタ、37は実行回路、38
は結果レジスタ、40ないし43はオペランド・アドレ
スレジスタを表す。 特許出願人 富士通株式会社 代理人弁理士 森1)寛(外1名) 才 1 品

Claims (2)

    【特許請求の範囲】
  1. (1)パイプラインにより命令を実行制御する情報処理
    装置における変換例外割込み制御方式において、各パイ
    プラインのステージに対応して命令アドレスまたはオペ
    ランド・アドレスを保持するアドレスレジスタと、変換
    例外が生じた時どの位置に変換例外が生じたかを示す情
    報を各パイプラインのステージ対応に保持する例外情報
    レジスタと、命令の最終ステージに上記例外情報レジス
    タからの信号に基づき変換例外が生したアドレスを補正
    する補正回路とを備え、」二記補正回路の出力を変換例
    外アドレス誤することを特徴とする変換例外割込み制御
    方式。
  2. (2)上記補正回路は、変換例外がオペランドのフェッ
    チに関するとき、変換例外がページ境界の前で生じたか
    ページ境界の後で生じたかにより、命令の最終ステージ
    でオペランド・アドレスに零またはページ長を加算する
    ことを特徴とする特許請求の範囲第(1)項記載の変換
    例外割込み制御方式。
JP3580284A 1984-02-27 1984-02-27 変換例外割込み制御方式 Granted JPS60179846A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP3580284A JPS60179846A (ja) 1984-02-27 1984-02-27 変換例外割込み制御方式

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP3580284A JPS60179846A (ja) 1984-02-27 1984-02-27 変換例外割込み制御方式

Publications (2)

Publication Number Publication Date
JPS60179846A true JPS60179846A (ja) 1985-09-13
JPH0235331B2 JPH0235331B2 (ja) 1990-08-09

Family

ID=12452047

Family Applications (1)

Application Number Title Priority Date Filing Date
JP3580284A Granted JPS60179846A (ja) 1984-02-27 1984-02-27 変換例外割込み制御方式

Country Status (1)

Country Link
JP (1) JPS60179846A (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH01214932A (ja) * 1988-02-23 1989-08-29 Mitsubishi Electric Corp データ処理装置
JPH0223431A (ja) * 1988-05-31 1990-01-25 Internatl Business Mach Corp <Ibm> 割込み処理システム

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0220131U (ja) * 1988-07-26 1990-02-09

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS5775356A (en) * 1980-10-28 1982-05-11 Fujitsu Ltd Instruction pre-fetch control system

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS5775356A (en) * 1980-10-28 1982-05-11 Fujitsu Ltd Instruction pre-fetch control system

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH01214932A (ja) * 1988-02-23 1989-08-29 Mitsubishi Electric Corp データ処理装置
JPH0223431A (ja) * 1988-05-31 1990-01-25 Internatl Business Mach Corp <Ibm> 割込み処理システム

Also Published As

Publication number Publication date
JPH0235331B2 (ja) 1990-08-09

Similar Documents

Publication Publication Date Title
JP3871883B2 (ja) 間接分岐ターゲットを計算するための方法
EP0381447B1 (en) Method and apparatus for controlling the conversion of virtual to physical memory addresses in a digital computer system
US7240159B2 (en) Data processor having cache memory
CA1325283C (en) Method and apparatus for resolving a variable number of potential memory access conflicts in a pipelined computer system
JP3423310B2 (ja) 仮想アドレス能力が保持され、パイプライン命令ユニットと実効アドレス計算ユニットとを有するcpu
US6581151B2 (en) Apparatus and method for speculatively forwarding storehit data based on physical page index compare
EP0381470A2 (en) Processing of memory access exceptions along with prefetched instructions within the instruction pipeline of a virtual memory system-based digital computer
JP2539357B2 (ja) デ−タ処理装置
WO2011079824A1 (en) Branching processing method and system
JP6467605B2 (ja) 命令処理システムと方法
JP3045952B2 (ja) フルアソシアティブ・アドレス変換器
EP0772819A2 (en) Apparatus and method for efficiently determining addresses for misaligned data stored in memory
JPH06236353A (ja) マルチプロセッサ・コンピュータ・システムのシステム・メモリの並行性を増大する方法およびシステム
US5206945A (en) Single-chip pipeline processor for fetching/flushing instruction/data caches in response to first/second hit/mishit signal respectively detected in corresponding to their logical addresses
US6363471B1 (en) Mechanism for handling 16-bit addressing in a processor
KR100204024B1 (ko) 페이지 경계에 걸리는 분할 라인을 한 사이클에 억세스할 수 있는 컴퓨팅 시스템
EP0726525A2 (en) Method and system for efficient memory management in a data processing system utilizing a dual mode translation lookaside buffer
JPS60179846A (ja) 変換例外割込み制御方式
JP2001522082A (ja) より小さな数の分岐予測および代替ターゲットを用いて近似的により大きな数の分岐予測をすること
JPH08249178A (ja) プロセッサのアネックス内において修飾ビットを形成する方法及び装置
US5349672A (en) Data processor having logical address memories and purge capabilities
EP0912929B1 (en) A data address prediction structure and a method for operating the same
WO1998002806A1 (en) A data address prediction structure utilizing a stride prediction method
JPS63311438A (ja) ストア命令不一致制御回路
JPS5940386A (ja) 仮想記憶制御方式