JPH035625B2 - - Google Patents

Info

Publication number
JPH035625B2
JPH035625B2 JP56046808A JP4680881A JPH035625B2 JP H035625 B2 JPH035625 B2 JP H035625B2 JP 56046808 A JP56046808 A JP 56046808A JP 4680881 A JP4680881 A JP 4680881A JP H035625 B2 JPH035625 B2 JP H035625B2
Authority
JP
Japan
Prior art keywords
page
main memory
processor
address
main
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.)
Expired - Lifetime
Application number
JP56046808A
Other languages
English (en)
Other versions
JPS57162164A (en
Inventor
Masayuki Mizuma
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
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 Nippon Electric Co Ltd filed Critical Nippon Electric Co Ltd
Priority to JP56046808A priority Critical patent/JPS57162164A/ja
Publication of JPS57162164A publication Critical patent/JPS57162164A/ja
Publication of JPH035625B2 publication Critical patent/JPH035625B2/ja
Granted legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/08Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Multi Processors (AREA)
  • Memory System Of A Hierarchy Structure (AREA)

Description

【発明の詳細な説明】 本発明は仮想記憶方式を採用した主プロセツサ
と仮想記憶方式を採用していない従プロセツサか
らなる機能分散型計算機におけるデータ転送装置
に関するものである。
機能分散型計算機とは、いくつかの専用プロセ
ツサを結合し、お互のプロセツサが助け合いなが
らジヨブを遂行する計算機である。
このような計算機の中には、プロセツサ間の情
報交換のため、主メモリを共用するものがある。
本発明は主プロセツサが仮想記憶方式を採用し
た機能分散型計算機で従プロセツサが主プロセツ
サの主メモリを共用する計算機を対象としてい
る。
仮想記憶方式は、比較的少量の主メモリで大量
のプログラムを実行できるように補助記憶装置
(通常磁気デイスクまたは磁気ドラムが使用され
る)を利用したもので、プログラムを補助記憶装
置に保存しておき、必要に応じてプログラムの一
部分を補助記憶装置から主メモリへ転送し処理を
行う方法である。
この方式では、主メモリが補助記憶装置に比べ
容量が小さいため補助記憶装置から主メモリへ転
送するための余分のスペースが存在しなかつた場
合には、以前使用されていたが今後使用価値が低
いと思われる部分を主メモリから補助記憶装置に
追い出し、新しいスペースとして明け渡す必要が
ある。この管理をリプレースメント管理(または
スワツピング管理)と呼ぶ、リプレースメント管
理方式はシステム性能に大きな影響を与える。
仮想記憶方式には、プログラムを固定長のブロ
ツク(ページ)に分割するページング方式と固定
長ではないが適当なサイズで分割するセグメント
方式がある。
ここでは、説明を簡単にするためにページング
方式の仮想記憶を考える。
ページング方式の計算機では、仮想空間上で表
現された論理アドレスを主メモリ上の物理アドレ
スへ変換する必要がある。論理アドレスは一般に
ページ番号とページ内相対番地の対で表現され
る。
この論理アドレスから物理アドレスへの変換を
高速に行うため、多くの計算機では、連想メモリ
あるいは擬似連想メモリを使用している。即ち連
想メモリには、現在主メモリ上に存在しているす
べてのページに対し、そのページ番号と主メモリ
の物理アドレスの対応を記憶させ、メモリアクセ
スの要求時には、この連想メモリを通して物理ア
ドレスへの変換を行う。
ここで、従プロセツサが主プロセツサの主メモ
リを参照する方式を考えよう。
従来の計算機では、次の2つの方法が使用され
ていた。
1つは主プロセツサと同一のアドレス変換装置
を備える方法である。この方式では、従プロセツ
サも論理アドレスで主メモリへのアクセスを行う
ことができるため、使い易い。しかしながら、論
理アドレスから物理アドレスへの変換のために、
個々のプロセツサ単位で連想メモリを準備する必
要があり非常に高価になる。
他の1つは、従プロセツサはページング機能を
持たない場合で、物理アドレスで直接主メモリの
参照を行う方式である。主プロセツサは、従プロ
セツサが使用するページを主メモリ上に常駐にさ
せ、その物理アドレスを従プロセツサに知らせる
ことになる。
この方式は、安価に実現できるが、従プロセツ
サが使用中の間、対象ページを主メモリ上に常駐
させる必要があり、主メモリの有効利用がはかれ
ない。特に従プロセツサからの参照頻度は少い
が、広範囲な空間を参照するような場合には、シ
ステム性能を大きく低下させる。
本発明の目的は、上記の欠点をなくすため、主
プロセツサが他の従プロセツサの制約を受けず自
由に、主メモリのリプレースメント管理を行える
ようにし、主メモリの有効利用をはかることと、
従プロセツサから主プロセツサの主記憶へのデー
タの書き込み読み出しを行うためのデータ転送装
置を安価に実現することにある。
本発明の基本的な考え方を以下に示す。
従プロセツサから主プロセツサの主記憶へアク
セスしたい場合には、目的ペーシを主記憶上のど
の位置に割り当てたかを示す主記憶上のアドレス
情報(以後ページベースアドレスと略す)とペー
ジ識別番号を記憶している主記憶常駐固定領域の
アドレス(以後PIDアドレスと略す)を主プロセ
ツサから予め受信しておく。
PIDアドレスに示されるページ識別番号は従プ
ロセツサがページをアクセスする際に、該当ペー
ジが主プロセツサによつてリプレースされていな
いかをチエツクするためのものである。通常PID
アドレスはページテーブルの対応エントリに相当
し、そのエントリにはページ識別番号とページベ
ースアドレスが示されている。以後、従プロセツ
サが、主プロセツサの主記憶に対しデータの読み
出し、書き込みを行うときには、このベースペー
ジアドレスを基準に、本発明のデータ転送装置を
介して行う。データ転送装置は、前記のページベ
ースアドレスで示されるページが、真に目的とす
るページであるか否かを判定するため、前記の
PIDアドレスで示される主記憶の内容と要求ペー
ジの識別番号の一致性を確認した後に要求データ
を転送するようにする。もしページ識別番号が一
致しなかつた場合には、データ転送装置は、主プ
ロセツサの都合により要求ページが主記憶装置か
らスワツプアウトされたと解釈し、データ転送を
行わず、従プロセツサにその旨を知らせる。な
お、前記のPIDアドレスで示される主記憶の内容
の読み出しとデータ転送時の間に、主プロセツサ
が、対象ページをスワツプアウトするのを防ぐた
めデータ転送装置は、ページ識別番号読み出しと
同時にデータ転送が終了するまで対象ページをロ
ツクされる。
以下、本発明の一実施例を図に従つて説明す
る。
第1図は、本発明のデータ転送装置を使用した
機能分散型マルチプロセツサの概略図を示してい
る。図において、破線で囲まれた部分1が、主プ
ロセツサを示している。2は従プロセツサ、3は
本発明のデータ転送装置を示す。
主プロセツサ1は、演算処理装置4、補助記憶
装置5、アドレス変換装置6、主記憶装置7から
成る。
演算処理装置4は、接続母線10,11,12
を介して、それぞれ、アドレス変換装置6、補助
記憶装置5、主記憶装置7と接続されている。接
続母線13により補助記憶装置5と主記憶装置7
が接続されている。また、演算処理装置4は接続
母線14,15を介して従プロセツサと接続して
いる。
本発明のデータ転送装置3は、接続母線16,
18を介して従プロセツサに、接続母線17,1
9を介して主プロセツサ1の主記憶装置にそれぞ
れ接続している。
なお、主プロセツサ1の演算処理部と従プロセ
ツサ2の間の通信制御は主プロセツサの負担を軽
くするためポーリング方式で行われる。
次に、主プロセツサ1と従プロセツサ2の動作
を説明する。
主プロセツサ1は、仮想記憶方式を採用してい
るため、演算処理装置4は、主記憶装置7の情報
を必要とする際には、論理アドレス(通常セグメ
ント番号、ページ番号、ページ内相対番地の組で
表わされる)を物理アドレスへ変換するため、接
続母線10を介してアドレス変換装置6にその変
換要求を出す。そして、物理アドレスを得た後、
接続母線12を介して主記憶装置をアクセスす
る。このとき主記憶上に目的ページが主記憶上に
存在しない(ミツシングフオルト)ことを確認す
るとリプレースメント管理が行われる。即ち。主
記憶中に空き領域を作るため、最も効果的(比較
的不要)のページフレームを1つ選択した後、接
続母線13を介して補助記憶装置5から目的ペー
ジを主記憶装置7上の今求められたページフレー
ムに転送される。そして対応する管理テーブルに
今求められた新しいページ識別番号をセツトす
る。
主プロセツサ1は上記の方法でデータ処理を続
行中に必要があれば、接続母線14を通して、従
プロセツサ2にデータ処理の指示を与える。この
とき処理に関するページの主記憶上でのページベ
ースアドレスと管理テーブル上の対応するページ
識別番号を示すアドレスを接続母線15を通して
演算処理装置4から従プロセツサ2に渡される。
主プロセツサ1は、従プロセツサ2にデータ処理
の指示を与えた後処理を続行する。
データ処理要求を受けた従プロセツサ2は、必
要に応じて、主プロセツサ1の主記憶装置7をア
クセスする。主記憶装置7へのアクセスは、常に
データ転送装置3を介して行われる。すなわち、
接続母線16を介して、ページの識別番号やPID
アドレス、ページベースアドレス、ページ内相対
位置情報等データ転送に必要な情報を送る。デー
タ転送装置3は、指定されたページベースアドレ
スで示される主記憶装置7上のページが真に求め
るページであるか否かを確認し、求めるページで
あればデータ転送を行う。求めるページでなけれ
ばデータ転送を行わず従プロセツサ2にその旨を
報告する。このとき、従プロセツサは目的ページ
が主プロセツサ1の都合によりスワツプアウトさ
れたと解釈し、再度、目的ページの主記憶装置7
への割り当てを主プロセツサ1に要求するため、
接続母線14による通信信号を待つ。前記要求が
主プロセツサ1に受け付けられ主記憶装置7への
割り当てが完了すると、新しいページベースアド
レスが接続母線15を介して従プロセツサに送ら
れる。従プロセツサ2は接続母線16を介してデ
ータ転送装置3に再度データ転送要求を出す。
第2図は、本発明のデータ転送装置の具体的な
構成の一例を示している。
図中21,22,23,30はデータ転送に必
要な情報を示すレジスタ群で、レジスタ21はペ
ージ識別番号、レジスタ23はページベースアド
レス、レジスタ22はデータのページ内相対番
地、レジスタ30はPIDアドレスをそれぞれ示
す。24はレジスタ30で示される主記憶装置の
内容を示すレジスタである。また26はアドレス
レジスタ25はデータレジスタを示す。29はペ
ージ識別番号の一致性を比較する比較器であり、
28はデータの物理アドレスを計算する加算器で
ある。27は制御部を示す。
次にデータ転送装置3の動作を図に従つて説明
する。
ここで、データ転送は、主記憶装置7からの読
み出しを仮定する。制御部27は制御信号線18
を介して従プロセツサ2からデータ転送要求を受
けると接続母線16を介して、ページ識別番号、
ページベースアドレス、データのページ内相対位
置情報、PIDアドレスをそれぞれレジスタ21,
22,23,30に受信させる。なお、論理アド
レスはページ識別番号とページ内相対位置情報で
ある。データ転送装置3は、ページの確認を行う
前にページベースアドレスを接続線30を介して
アドレスレジスタにセツトする。そして制御信号
線19を介して、主記憶装置7上のページのロツ
ク要求を出す。他のプロセツサが使用中であれば
待つ。ロツクが認められるとPIDアドレスレジス
タ30に示される主記憶上のアドレスからのペー
ジ識別番号(PID)をレジスタ24に読み込むた
めに、PIDアドレスをアドレスレジスタ26にセ
ツトし、データ(ページ識別番号)をレジスタ2
4に読み込む。次に、主記憶装置7のページが該
当ページであるか否かを判定するため、比較器2
9によりレジスタ21とレジスタ24の内容が比
較される。それと併行して、データの物理アドレ
スを決定するため加算器28によりレジスタ22
とレジスタ23の内容が加えられアドレスレジス
タ26にセツトされる。前記比較器29による比
較結果が等しければ制御部27は制御信号線19
を通して主記憶装置7にデータの読み込み指示を
与える。主記憶装置7より接続母線17を通して
データがデータレジスタ25に読み込まれると主
記憶装置7にアンロツク指示を与えた後、接続母
線16を通して、データレジスタ25の内容を従
プロセツサに送る。なお前記比較器29による比
較結果が等しくなかつた場合には、主記憶装置7
から目的ページがスワツプアウトされているもの
と制御部27は解釈し、データの読み込み指示を
与えず、直ちに主記憶装置7にアンロツク指示を
与える。そして、データ転送が行われなかつたこ
とを接続母線16を介して従プロセツサ2に知ら
される。
主記憶装置7へのデータの書き込み処理におい
ては、データレジスタ25へ従プロセツサ2から
データを読み込み主記憶装置3にその内容を書き
込むという動作にデータの流れが変わることを除
けば前記と同様の動作で行われる。
なお、第2図で示されるデータ転送装置では、
主記憶装置へ1ワードのデータ転送のみを考えた
が、データのページ内相対位置を示すレジスタ2
2とデータレジスタ25の対を複数個設けること
により、一度に複数ワードのデータ転送を行う方
式も可能である。
以上のように、本発明に係るデータ転送装置を
設けることにより、仮想記憶方式を採用する主プ
ロセツサは、他の従プロセツサが使用するページ
を主記憶装置上に常駐させておく必要がなく、主
記憶装置の有効利用をはかれるため、現在どのペ
ージを他のプロセツサが使用しているかを意識す
ることなくページのリプレースメント管理を行う
ことができる。しかも、本装置は安価に実現でき
る。また、従プロセツサは、主プロセツサのよう
に高価なアドレス変換装置を備える必要がなくな
る。
【図面の簡単な説明】
第1図は本発明のデータ転送装置を使用した機
能分散型マルチプロセツサのブロツク図、第2図
は本発明のデータ転送装置の一実施例を示すブロ
ツク図である。 1……主プロセツサ、2……従プロセツサ、3
……本発明のデータ転送装置、4……主プロセツ
サの演算処理装置、5……補助記憶装置、6……
主プロセツサのアドレス変換装置、7……主プロ
セツサの主記憶装置、21……ページ識別名を示
すレジスタ、22……データのページ内相対位置
を示すレジスタ、23……ページのベースアドレ
スを示すレジスタ、24……ページの識別番号を
示すレジスタ、25……データレジスタ、26…
…アドレスレジスタ、27……データ転送装置の
制御部、28……加算器、29……比較器、30
……PIDアドレスレジスタ。

Claims (1)

    【特許請求の範囲】
  1. 1 仮想記憶方式を採用する主プロセツサと非仮
    想方式の従プロセツサからなる主記憶共用型マル
    チプロセツサにおいて、論理アドレスに対応する
    ページの識別番号を示すレジスタと、ページの先
    頭を示すページベースアドレスレジスタと、ペー
    ジ内相対位置を示すレジスタと、主記憶上の対応
    するページが要求されたページのページ識別番号
    に一致するか否かを判定する比較器と、物理アド
    レスを計算するための加算器を備え、前記従プロ
    セツサと前記主プロセツサの主記憶装置との間の
    データ転送要求が発生したときに、前記ベースア
    ドレスで示されるページをロツクし、主記憶上の
    主記憶常駐固定領域に記憶されたページ識別番号
    と前記ペーシの識別番号を示すレジスタの内容を
    前記比較器により比較し、比較結果が等しいとき
    に、前記加算器により物理アドレスの計算を行
    い、データ転送を実行し、転送が終了すると該ペ
    ージをアンロツクし、前記比較結果が等しくなけ
    れば、データ転送を行わず該ページをアンロツク
    し、その旨を従プロセツサに通知するようにした
    ことを特徴とするデータ転送装置。
JP56046808A 1981-03-30 1981-03-30 Data transfer device Granted JPS57162164A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP56046808A JPS57162164A (en) 1981-03-30 1981-03-30 Data transfer device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP56046808A JPS57162164A (en) 1981-03-30 1981-03-30 Data transfer device

Publications (2)

Publication Number Publication Date
JPS57162164A JPS57162164A (en) 1982-10-05
JPH035625B2 true JPH035625B2 (ja) 1991-01-28

Family

ID=12757624

Family Applications (1)

Application Number Title Priority Date Filing Date
JP56046808A Granted JPS57162164A (en) 1981-03-30 1981-03-30 Data transfer device

Country Status (1)

Country Link
JP (1) JPS57162164A (ja)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0630092B2 (ja) * 1987-06-12 1994-04-20 日本電気株式会社 マルチプロセッサシステムにおける仮想記憶管理方法
JPS63311467A (ja) * 1987-06-12 1988-12-20 Nec Corp マルチプロセッサシステムにおける仮想記憶管理方法
WO2004102401A1 (ja) * 2003-05-13 2004-11-25 Fujitsu Limited 入出力装置、計算機、計算機システム、入出力制御プログラム、os、ページ管理プログラム、及びページ管理方法
JP5448496B2 (ja) * 2009-02-19 2014-03-19 キヤノン株式会社 情報処理装置及びその制御方法

Also Published As

Publication number Publication date
JPS57162164A (en) 1982-10-05

Similar Documents

Publication Publication Date Title
JP2662603B2 (ja) 無効要求を選別する方法及び装置
JP3102495B2 (ja) 仮想記憶管理方法
EP0497600B1 (en) Memory access method and apparatus
US6356983B1 (en) System and method providing cache coherency and atomic memory operations in a multiprocessor computer architecture
US6260118B1 (en) Snooping a variable number of cache addresses in a multiple processor system by a single snoop request
US7069394B2 (en) Dynamic data routing mechanism for a high speed memory cloner
US20040111565A1 (en) High speed memory cloner with extended cache coherency protocols and responses
KR0175983B1 (ko) 데이타 처리 시스템
EP0512685B1 (en) Quadrature bus protocol for carrying out transactions in a computer system
EP0480858A2 (en) Hardware primary directory lock
JP2746530B2 (ja) 共有メモリマルチプロセッサ
EP1224553B1 (en) Multi-processor system and method of accessing data therein
US6898677B2 (en) Dynamic software accessibility to a microprocessor system with a high speed memory cloner
JPH0277858A (ja) 複数のプロセッサを有する計算機システムの記憶制御装置
JPH035625B2 (ja)
US6986011B2 (en) High speed memory cloner within a data processing system
US6915390B2 (en) High speed memory cloning facility via a coherently done mechanism
US5404549A (en) Method for efficient access of data stored in a nexus table using queue tag indexes in a table portion
JPS63253448A (ja) マルチ計算機装置
US6928524B2 (en) Data processing system with naked cache line write operations
JP2823038B2 (ja) 論理ダイレクトメモリアクセス方式
JP2636760B2 (ja) マルチプロセッサシステム
JPH0750466B2 (ja) 並列計算機キャッシュ・メモリ制御方式
DE3882298T2 (de) Schaltung zur steuersignalerzeugung für eine arithmetische logische einheit in einem digitalverarbeitungsgerät.
JP2517859B2 (ja) 並列プロセス管理方法