JPH01258154A - マイクロ命令実行制御方式 - Google Patents

マイクロ命令実行制御方式

Info

Publication number
JPH01258154A
JPH01258154A JP63085431A JP8543188A JPH01258154A JP H01258154 A JPH01258154 A JP H01258154A JP 63085431 A JP63085431 A JP 63085431A JP 8543188 A JP8543188 A JP 8543188A JP H01258154 A JPH01258154 A JP H01258154A
Authority
JP
Japan
Prior art keywords
page number
page
cpu
microinstruction
execution
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
JP63085431A
Other languages
English (en)
Inventor
Isao Sakuma
佐久間 功
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
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 filed Critical Toshiba Corp
Priority to JP63085431A priority Critical patent/JPH01258154A/ja
Priority to US07/329,210 priority patent/US5151982A/en
Publication of JPH01258154A publication Critical patent/JPH01258154A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Memory System Of A Hierarchy Structure (AREA)

Abstract

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

Description

【発明の詳細な説明】 [発明の目的] (産業上の利用分野) 本発明は仮想記憶機構を有する計算システムのマイクロ
命令実行lll11方式に関する。
(従来の技術) 従来この種の計算機システムにおいて、仮想記憶機構は
、比較的小容量の主記憶装置と大容量の外部記憶装置を
用いて、プログラムをあたかも大容量の主記憶装置が存
在するがごとくに実行させるための、重要な機構である
。仮想記憶機構は、プログラムが使用する仮想アドレス
と実際の主記憶上の位置を示す物理アドレスとの間の対
応づけを行なうアドレス変換機構を必要とする。このア
ドレス変換機構は、一般に第3図の4に示すように、主
記憶装置2を制御するメモリコントロールユニット(H
CU)3内に置かれている。仮想アドレスによって指し
示される仮想空間と主記憶装置の物理空間は、ともにペ
ージと呼ばれる一定の大きざのブロックに分割され、仮
想アドレスから物理アドレスへのアドレス交換は、この
ページを単位として行なわれるのが一般的である。アド
レス変換の過程で、必要な仮想アドレスを含むページが
主記憶上に存在しない場合には、CPU1に対してペー
ジフォルト信号が送られる。CPU1は、主記憶装置2
への讃込み要求時には、続出し要求時とは異なり、主記
憶装置2からデータが返されるのを待つ必要がないため
、次のマイクロ命令の実行に進む方式を取ることが可能
である。しかし、この方式では、書込み要求に対してペ
ージフォルトが発生した場合に、CPU1の状態が書込
み要求が発生したときのものから変化しているため、外
部記1!装置6から必要なページを入出力処理袋@7を
介して主記憶装置2に読み込むページイン操作の11命
令再実行が困難になる。
このため、従来は書込み要求時に、メモリコントロール
ユニット3からの応答によって正常に書込みが終了した
か、ページフォルトが発生したかが明らかになるまで、
CPUIが次のマイクロ命令の実行に移らないように待
機させるため、CPUI内部にマイクロ命令実行待ち発
生回路5が設けられていた。
ところが、このような方式では、書込み要求が発生する
ごとに必ずCPU1に待ちサイクルが発生して処理が停
止するために、CPU1の処理性能が低下するという問
題がある。
一方、書込み要求が発生した時点でCPUIの状態を保
存した優に次のマイクロ命令の実行に移り、ページフォ
ルトが発生した場合には、保存してあったCPUIの状
態を復元して命令の再実行を行なうという方式も知られ
ている。
この方式ではCPU1の待ちは発生しないが、CPU1
の状態を保存、復元するための処理が複雑でハードウェ
アの量も、増大するという問題点がおる。
(発明が解決しようとする課題) 上記の如〈従来の仮想記憶機構を持った計算機システム
では、主記憶への書込み要求時に、メモリコントロール
ユニット3からの応答によって正常に書込みが終了した
か、ページフォルトが発生したかが明らかになるまで、
CPUIが次のマイクロ命令の実行に移らないように待
機させるため、CPU1内部にマイクロ命令実行待ち発
生回路5が設けられている。このため、書込み要求が発
生するごとに必ずCPUIに待ちサイクルが発生して処
理が停止するために、cpuiの処理能力が低下すると
いう不都合があった。
そこで、上記マイクロ命令実行待ち発生回路を設けず、
書込み要求が発生した時点でCPUの状態を保存した後
に次のマイクロ命令の実行に移り、ページフォルトが発
生した場合に、保存してあったCPUの状態を復元して
命令の再実行を行なうというシステムもあるが、CPU
の状態を保存、復元するための処理が複雑で、ハードウ
ェアの量も増大するという不都合があった。
本発明は上記の欠点を除去するもので、主記憶への書込
み要求時マイクロ命令実行待ち発生回路によるCPUの
待ちサイクルを簡単なハードウェア構成にて減少させて
CPUの能力の低下を防止することができるマイクロ命
令実行制御方式を提供することを目的としている。
[発明の構成] (課題を解決するための手段) 本発明は、ベージング方式による仮想記憶機構を有し、
且つ、主記憶への書き込みが正常に終了したかページフ
ォルトが発生したかが明らかになるまでCPUが次のマ
イクロ命令の実行に移らないようにするマイクロ命令の
実行待ち発生機能を有した計算機システムにおいて、書
き込みを行なった仮想空間中のページのページ番号を保
持する保持手段と、この保持手段に保持されたページ番
号が有効か否かを示す表示手段と、前記保持手段によっ
て保持され、且つ前記表示手段が示す有効な全てのペー
ジ番号と仮想アドレスによって示されるページ番号とが
一致するか否かを比較する比較手段と、この比較手段に
よって前記一致が検出されない時のみマイクロ命令の実
行待ち発生機能を動作させる制御手段とを具備した方式
を採用している。
(作用) 本発明のマイクロ命令実行制御方式において、保持手段
は書き込みを8行なった仮想空間中のページのページ番
号を保持する。比較手段は前記保持手段によって保持さ
れ且つ表示手段が示す有効な全てのページ番号と仮想ア
ドレスによって示されるページ番号とが一致するか否か
を比較して、その結果を制御手段に知らせる。制御手段
は前記比較手段によって前記一致が検出されない時のみ
マイクロ命令の実行待ち発生機能を動作させる。これに
より、CPUの待ちサイクル発生を低減させることがで
きる。
(実施例) 以下、本発明の一実施例を図面を参照して説明する。
第1図は本発明のマイクロ命令実行制御方式を適用した
CPUの一実施例を示したブロック図である。プログラ
ムの使用する仮想アドレスは、一般に11の仮想アドレ
スレジスタ内部に保持され、その仮想アドレスが含まれ
る仮想空間中のページを指し示すページ番@12と、ペ
ージ内部での位置を示すページ内相対アドレス13から
成る。、14は過去に書き込みを行なった仮想空間中の
ページのページ番号を保持するためのページ番号レジス
タ群である。ページ番号レジスタ群14の個々のページ
番号レジスタ15は、そのページ番号レジスタの保持し
ているページ番号が有効であるかどうかを示す有効ビッ
ト16を持っている。17はページ番号レジスタ群14
の保持するすべてのページ番号18と、CPUが書込み
要求を発生した仮想アドレスのページ番号12とを比較
する比較器である。比較器17の比較出力信号19は、
入力されるページ番号が有効であって、かつ比較の結果
が一致した場合のみ、論理値“1″をとるものである。
比較出力信号19は、20のマイクロ命令実行待ち発生
回路に入力される。
マイクロ命令実行待ち発生回路20は、17の比較器が
、ページ番号レジスタ群14に保持されているページ番
号18中に、仮想アドレスレジスタ11に示されるペー
ジ番号12と一致する有効なページ番号を検出できなか
った場合に、CPUが次のマイクロ命令の実行を開始し
ないようにするためのものである。なお、この第1図に
示した回路は計算機システムを構成するCPUの内部に
設けられている。
次に本実施例の動作について説明する。
最初に、ページ番号レジスタ群14のすべてのページ番
号レジスタ15の持つ有効ビット1Bは、ページ番号レ
ジスタ15の内容が無効であることを示す値、すなわち
論理値“O″に設定される。CPUにおいて主記憶への
書込み要求が発生すると、書込み要求の発生した仮想ア
ドレスのページ番号12が、比較器17によってページ
番号レジスタ群14の保持しているすべてのページ番号
18と比較される。比較の結果、一致するものが存在し
ない場合は、ページフォルトが発生する可能性があるこ
とをしめし、このとき、比較器17の比較出力信@19
は論理値“Onをとる。これによりマイクロ命令実行待
ち発生回路20はCPUが次のマイクロ命令の実行を開
始しないようにし、図示されない主記憶を制御するメモ
リコントロールユニットから正常に書込みが終了したか
、あるいはページフォルトが発生したかを示す応答が返
るまで、CPUの処理に待ちを発生させる。一致が検出
されなかった場合、仮想アドレスのページ@@12は、
ページ番号レジスタ群14のページ番号レジスタ15の
うち有効ビット16が“0”であるページ番号レジスタ
15のうちの一つを選んでその中に保持される。このと
き、そのページ番号レジスタ15に対応する有効ビット
は1″に設定される。有効ビット16が“Oeeである
ようなページ番号レジスタ15が存在しない場合には、
すべてのページ番号レジスタ15の有効ビットを“0゛
とした後、ページ番号レジスタ15の一つを選んでペー
ジ番号を書き込み、そのページ番号レジスタの有効ビッ
トを“1°′にする。主記憶からページを外部記憶に追
い出すロールアウトの処理を行なう場合には、そのペー
ジに対応するページ番号がページ番号レジスタ群14の
ページ番号レジスタ15の中に保持されているかどうか
を検査し、もし保持されている場合にはそのページ番号
を保持しているベージlt@レジスタの有効ビット16
を“0″にする。これにより、ページ番号レジスタ群1
4のページ番号レジスタ15のうち、有効ビット16が
、41パであるページ番号レジスタ15が保持している
ページ番号は、主記憶中に存在するページのページ番号
であることが保証される。書込み要求の発生した仮想ア
ドレスのページ番号12と同じページ番号が、ページ番
号レジスタ群14のページ番号レジスタ15のうちの有
効ビット16が“1′″であるページ番号レジスタの保
持しているページ番号18の中に存在するとき、ページ
番号に対応するページが主記憶中に存在することを意味
する。このとき比較器17の比較出力信号19が論理値
“1″をとり、この結果、マイクロ命令実行待ち発生回
路20はCPtJの実行サイクル中に持ちを発生させず
、即座に次のマイクロ命令の実行が開始される。なお、
マイクロ命令実行持ち発生回路20内には、比較器17
からの比較出力信号19が論理値“0″の時に本回路を
起動させ、論理値“′1″の時に本回路の動作を停止さ
せる制御回路が設けられている。
本実施例によれば、仮想アドレスのページ番号12と同
一のページ番号がページ番号レジスタ群14の保持して
いるすべてのページ番号の中にない場合、即ちページフ
ォルトが発生する可能性がある場合にのみ、マイクロ命
令実行待ち発生回路20を動作させて、メモリコントロ
ールユニットからの正常書き込みの終了又はページフォ
ルトの発生を示す応答があるまで、CPUの処理待ちを
発生させ、伯の場合はCPIJの実行サイクル中に待ち
を発生させないようにして、直ちに次のマイクロ命令の
実行を行なうため、マイクロ命令実行待ち発生回路20
によるCPUの待ちサイクルを著しく削減することがで
き、この分CPUの能力の低下を防止することができる
。又、上記効果をもたらすための構成は比較器17等の
若干のハードウェアを付加した簡単なもので実現するこ
とができ、CPUのコストの上昇を防止することができ
る。
第2図は、本発明の他の実施例を示したものである。第
2図において、構成要素が第1図と同じものである場合
には、第1図と同じ番号をつけである。本実施例におい
て前実施例と異なる点は、ページ番号を比較する比較器
17がページ番号レジスタ15と同数存在しており、こ
れら比較器17の出力の論理和をとるORゲート32が
設けられていることと、ページ番号レジスタ群14の各
ページ番号レジスタ15ごとに優先度レジスタ33が設
けられていることの2点である。ページ番号を比較する
比較器17は、対応するページ番号レジスタ15の保持
するページ番号が有効なものであって、しかも書込みの
発生した仮想アドレスのページ番号と一致している場合
に、その比較出力信号34が、論理値“1″をとり、そ
のほかの場合には論理値“O″をとる。ORゲート32
はすべての比較器17の出力の論理和を取ることによっ
て、ページ番号レジスタ15のどれかに書込みの発生し
た仮想アドレスのページ番号と同じ有効なページ番号が
保持されていることを検出するものであり、その場合に
のみ、ORゲートの出力35は論理値“1パをとる。こ
のORゲートの出力はマイクロ命令実行待ち発生回路2
0に入力される。優先度レジスタ33は、すべてのペー
ジ番号レジスタ15が有効なページ番号を保持している
ときに、それらのページ番号とは異なるページ番号を持
つ新たなページ番号に対して言込み要求が発生した場合
に、どのページ番号レジスタの内容を新しいページ番号
で置き換えるかを決定するための優先度を示す値を保持
するものである。
次に本実施例の動作について説明する。
最初に、ページ番号レジスタ群14のすべてのページ番
号レジスタ15の持つ有効ビット16は、ページ番号レ
ジスタ15の内容が無効であることを示す値、すなわち
論理値“0″に設定される。この時、優先度レジスタ3
3の値は何であってもよい。cPuにおいて主記憶への
書込み要求が発生すると、書込み要求の発生した仮想ア
ドレスのページ番号12が、各比較器17によってペー
ジ番号レジスタ群14の保持しているすべてのページ番
号18と比較される。
比較の結果、一致するものが存在しない場合は、ページ
フォルトが発生する可能性があることを示す。このとき
、すべての比較器17の比較出力信号34は論理値“O
atをとり、したがってORゲートの出力は論理値゛0
゛′をとる。これによりマイクロ命令実行待ち発生回路
20はCPIJが次のマイクロ命令の実行を開始しない
ようにし、図示されない主記憶を制御するメモリコント
ロールユニットから正常に書込みが終了したか、あるい
はページフォルトが発生したかを示す応答が返るまで、
CPUの処理に待ちを発生させる。一致が検出されなか
った場合、仮想アドレスのページ番号12は、ページ番
号レジスタ群14のページ番号レジスタ15のうち、有
効ビット16が“0″であるページ番号レジスタのうち
の一つを選んでその中に保持される。
このとき、そのページ番号レジスタ15に対応する有効
ビットは“1′°に設定され、優先度レジスタ33の値
は、最も低い優先度を示す値に設定される。
そのほかのページ番号レジスタ15に対応する優先度レ
ジスタの値はそれまでより1だけ優先度の高い値に再設
定される。有効ビット16が“0”であるようなページ
番号レジスタ15が存在しない場合には、ページ番号レ
ジスタ15のうちで、対応する優先度レジスタ33が最
も高い優先度を示す値を持っているものを選択し、そこ
に新しいページ番号12を保持させる。主記憶からペー
ジを外部記憶に追い出すロールアウトの処理を行なう場
合には、そのページに対応するページ番号がページ番号
レジスタ群14のページ番号レジスタ15の中に保持さ
れているかどうかをチエツクする。もし保持されている
場合には、そのページ番号を保持しているページ番号レ
ジスタ15の有効ビット1Bを“0″にする。これによ
り、ページ番号レジスタ群14のページ番号レジスタ1
5のうち有効ビット16が“1″であるページ番号レジ
スタ15が保持しているページ番号は、主記憶中に存在
するページのページ番号であることが保証される。書込
み要求の発生した仮想アドレスのページ番号12と同じ
ページ番号が、ページ番号レジスタ群14のページ番号
レジスタ15のうちの有効ビット1Bが“1′′である
ページ番号レジスタの保持しているページ番号18の中
に存在するとき、ページ番号に対応するページが主記憶
中に存在することを意味する。このとき、ページ番号1
2と同じページ番号を保持しているページ番号レジスタ
15に対応する比較器17の比較出力34は論理値“1
″をとり、ORゲート32の出力は論理値゛1″をとる
。この結果、マイクロ命令実行待ち発生回路20はCP
Uの実行サイクル中に待ちを発生させず、即座に次のマ
イクロ命令の実行を開始させる。
本実施例も、ページフォルトが発生する可能性がある場
合にのみ、マイクロ命令実行待ち発生回路20を動作さ
せて、CPUの処理待ちを発生するため、前実施例と同
様にCPUの待ちサイクルを著しく削減することができ
る。特に各ページ番号レジスタ15毎に比較器17が設
けられているため、マイクロ命令実行待ち発生回路20
を起動するかしないかの判定を迅速に行なうことができ
る。なお、本構成は優先度レジスタ33を持っていない
前実施例に適用しても同様の効果がある。
[発明の効果] 以上記述した如く本発明のマイクロ命令実行制御方式に
よれば、仮想記憶機構を採用している計算機システムに
おいて、主記憶中に存在するページのうち、新たに書込
み要求の発生したページのページ番号のいくつかをCP
U内部で記憶しておくことによって、次に書込み要求が
発生したときに、記憶しておいたページ番号と比較する
ことで主記憶中に必要なページが存在するかどうかを判
断できるようにしたものである。この方式は、従来知ら
れていたCPUの状態の保存、回復による方式に比べて
、処理、ハードウェアともにはるかに単純でありながら
、書込み要求時に常に必要であったページフォルトの有
無の確認のためのCPUの実行待ちサイクルを大幅に低
減することができ、CPUの処理効率を向上させること
ができる。
【図面の簡単な説明】
第1図は本発明のマイクロ命令実行制御方式を適用した
CPUの一実施例を示したブロック図、第2図は本発明
の他の実施例を示したブロック図、第3図は従来のマイ
クロ命令実行制御方式を適石した計算機システムの一例
を示したブロック図である。 11・・・仮想アドレスレジスタ 14・・・ページ番号レジスタ群 17・・・比較器 20・・・マイクロ命令実行待ち発生回路32・・・O
Rゲート 代理人 弁理士  則 近 憲 缶 周  山王 − 第2図 第3図

Claims (1)

    【特許請求の範囲】
  1. ページング方式による仮想記憶機能を有し、且つ、主記
    憶への書き込みが正常に終了したかページフオルトが発
    生したかが明らかになるまでCPUが次のマイクロ命令
    の実行に移らないようにするマイクロ命令の実行待ち発
    生機能を有した計算機システムにおいて、書き込みを行
    なつた仮想空間中のページのページ番号を保持する保持
    手段と、この保持手段に保持されたページ番号が有効か
    否かを示す表示手段と、前記保持手段によって保持され
    且つ前記表示手段が示す有効な全てのページ番号と仮想
    アドレスによって示されるページ番号とが一致するか否
    かを比較する比較手段と、この比較手段によって前記一
    致が検出されない時のみマイクロ命令の実行待ち発生機
    能を動作させる制御手段とを具備したことを特徴とする
    マイクロ命令実行制御方式。
JP63085431A 1988-03-30 1988-04-08 マイクロ命令実行制御方式 Pending JPH01258154A (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP63085431A JPH01258154A (ja) 1988-04-08 1988-04-08 マイクロ命令実行制御方式
US07/329,210 US5151982A (en) 1988-03-30 1989-03-27 Data processing system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP63085431A JPH01258154A (ja) 1988-04-08 1988-04-08 マイクロ命令実行制御方式

Publications (1)

Publication Number Publication Date
JPH01258154A true JPH01258154A (ja) 1989-10-16

Family

ID=13858654

Family Applications (1)

Application Number Title Priority Date Filing Date
JP63085431A Pending JPH01258154A (ja) 1988-03-30 1988-04-08 マイクロ命令実行制御方式

Country Status (1)

Country Link
JP (1) JPH01258154A (ja)

Similar Documents

Publication Publication Date Title
US5297281A (en) Multiple sequence processor system
JPH0242569A (ja) ベクター処理システムに用いる文脈スイッチング方法及び装置
JPH0583932B2 (ja)
US5003458A (en) Suspended instruction restart processing system based on a checkpoint microprogram address
US4740889A (en) Cache disable for a data processor
JPH07219809A (ja) データ処理装置およびデータ処理方法
US5363502A (en) Hot stand-by method and computer system for implementing hot stand-by method
US5146569A (en) System for storing restart address of microprogram, determining the validity, and using valid restart address to resume execution upon removal of suspension
JPS58121457A (ja) 情報処理装置
US4124892A (en) Data processing systems
US4985826A (en) Method and device to execute two instruction sequences in an order determined in advance
JPH07141176A (ja) コマンドリトライ制御方式
IE61306B1 (en) Method and device to execute two instruction sequences in an order determined in advance
US5898867A (en) Hierarchical memory system for microcode and means for correcting errors in the microcode
JPH0789328B2 (ja) データ処理装置
JPH01258154A (ja) マイクロ命令実行制御方式
JP2671160B2 (ja) 例外処理方式
JP3507193B2 (ja) ロード・ストア命令処理装置
JPH0133856B2 (ja)
JP2715988B2 (ja) プログラムシミュレータ装置及びプログラムデバッグ方法
JPS59172044A (ja) 命令制御方式
JP2562838B2 (ja) プロセッサ及びストアバッファ制御方法
JPH0368034A (ja) チェックポイント再試行方式
JPS61117635A (ja) 仮想記憶制御方式
JPS59112479A (ja) キヤツシユメモリの高速アクセス方式