JPS63221440A - アドレス変換装置 - Google Patents

アドレス変換装置

Info

Publication number
JPS63221440A
JPS63221440A JP62057348A JP5734887A JPS63221440A JP S63221440 A JPS63221440 A JP S63221440A JP 62057348 A JP62057348 A JP 62057348A JP 5734887 A JP5734887 A JP 5734887A JP S63221440 A JPS63221440 A JP S63221440A
Authority
JP
Japan
Prior art keywords
address
conversion
register
space
buffer
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
JP62057348A
Other languages
English (en)
Inventor
Toshiyuki Furui
古井 利幸
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 JP62057348A priority Critical patent/JPS63221440A/ja
Publication of JPS63221440A publication Critical patent/JPS63221440A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Memory System Of A Hierarchy Structure (AREA)
  • Complex Calculations (AREA)

Abstract

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

Description

【発明の詳細な説明】 〔産業上の利用分野〕 本発明はアドレス変換装置、特に仮想記憶方式において
ベクトル演算時に好適なアドレス変換装置に関する。
〔従来の技術〕
近年、気象予報や原子力分野におけるシミュレーション
や、資源探査分野における画像処理等で超高速科学技術
計算機(スーパーコンピュータ)の必要性が増大してき
ている。スーパーコンピュータでは、配列状になった多
量のデータの各組に対して同一演算を行なう、いわゆる
ベクトル演算が主に実行される。
配列状の各要素は、比較的速度の遅い主記憶装置に蓄え
られており、これを配列要素の先頭アドレス(B)と要
素量比11!(D)とによって、配列の行、列、対角方
向等(B+1D)(iは整数)に一定間隔で処理装置に
読出し、演算処理後に同一または別の番地に格納される
。取り扱う配列データは一般に主記憶装置の容量に比べ
て大きなものとなるため、プログラム上での論理アドレ
スをアドレス変換表に基づき実アドレスに変換して主記
憶装置をアクセスする、いわゆる仮想記憶方式を採るの
が一般的である。
アドレス変換を高速に行なうためにアドレス変換バッフ
ァ(以下変換バッファと略記する)を設けて、主記憶装
置に格納されているアドレス変換表の写しを保持するよ
うにしたものが多い。
特にベクトル演算処理に適した変換バッファとして本出
願人による「アドレス変換方式」 (特願昭58−22
373 )が考えられており、アドレス変換バッファの
ミスピットの低減と変換表のロードのオーバーヘッドの
低減を計っている。
〔発明が解決しようとする問題点〕
しかし、多数のプログラムを見かけ上並列に処理する多
重プログラミングの環境下では各プログラムとも同一論
理アドレス空間を使用するので、プログラムのディスバ
ッチがされる毎に変換バッファの無効化と、新しいプロ
グラムに対応したアドレス変換表の変換バッファへの再
ロードが発生し、システムの性能を低下させる。
本発明の目的は、上記オーバーヘッドを軽減し、多重プ
ログラミングの環境下での好適なアドレス変換装置を提
供することにある。
〔問題点を解決するための手段〕
本発明のアドレス変換装置は、各プログラムでアクセス
可能な論理アドレス空間が同一サイズの複数個の部分空
間に分割され、該部分空間は同一サイズの複数個のペー
ジに分割され、前記論理空間を各ページ単位に実アドレ
スに変換して主記憶をアクセスするアドレス変換装置で
あって、前記部分空間のそれぞれが含む全ページに対す
るアドレス変換表写しを保持する少なくとも一つの変換
バッファと、 前記変換バッファ毎に設けられ、対応する変換バッファ
内にロードされているアドレス変換表を使用するプログ
ラムを示すプログラム識別番号と部分空間番号とを保持
する空間番号レジスタと、前記空間番号レジスタ毎に設
けられ、主記憶アクセスのプログラム識別番号および部
分空間番号と使用中の前記空間番号レジスタの保持する
値が一致しているか否かを検出する検出回路と、変換後
の実アドレスを保持するアドレスレジスタと、 各変換バッファの実ページ番号出力の中から1つを選択
し、前記アドレスレジスタに実ページ番号をセットする
選択回路と、 前記検出回路の出力を入力し、ソフトウェア命令により
、プログラム識別番号と部分空間番号と該部分空間対応
のアドレス変換表の主記憶中の先頭アドレスを示すポイ
ンタが示され、アドレス変換表のロードが指示された時
、前記空間番号レジスタに既に登録済のものがあれば該
変換バッファに主記憶よりアドレス変換表を一括ロード
し、なければ未使用の変換バッファにロードし、論理ア
ドレスから実アドレスへの変換時に、前記検出回路のい
ずれかが一致を検出した、該検出回路に対応する変換バ
ッファの実ページ番号出力を前記選択回路が出力するよ
うに前記選択回路を制御し、前記検出回路がすべて一致
を検出しない場合には該プログラムに割り込みを発生す
る制御回路とを存する。
〔作 用〕
すなわち本発明は、ジョブ番号によるロード、クリア管
理をして、多重プログラミングの環境下でのオーバーヘ
ッドを低減させるようにしたものである。
〔実施例〕
次に、本発明の実施例について図面を参照して説明する
第1図は本発明のアドレス変換装置の一実施例を示すブ
ロック図、第2図は本実施例における論理アドレスと実
アドレスの関係を示す図である。
本実施例は、主記憶アクセスの要求元プログラム番号を
保持する6ビツトのジョブ番号レジスタ1と、論理アド
レスを保持する30ビツトのアドレスレジスタ2と、変
換後の実アドレスを保持する25ビツトのアドレスレジ
スタ3と、選択回路4と、制御回路5と、空間切替命令
のアドレス変換表のポインタレジスタ6と、クリアビッ
ト7と、4個の変換バッファ30〜33と、4個の空間
番号レジスタIn−13と、4個の検出回路20〜23
とから構成されている。
ジョブ番号レジスタ1には処理装置(図示せず)で実行
中のプログラムを識別するためのジョブ番号が処理装置
からアクセス毎にセットされる。このジョブ番号レジス
タ1は6ビツトで構成されており64プログラムまでが
同時に処理されても判別可能となっている。アドレスレ
ジスタ2にはプログラムで指定可能な230個の論理ア
ドレスを指定できるように30ビツトの論理アドレス信
号が処理装置によって設定される。論理アドレス信号の
うち上位から6ビツト、4ビツトおよび20ビツトは空
間番号S、ページ番号Pおよびページ内アドレスRAを
表現するためのものである。すなわち、論理アドレス空
間はそれぞれが16ページ(1ページは230 = 1
,048’、57Bアドレス)を存する64個の部分空
間に分割されている。空間番号Sとページ番号Pとで表
現される論理ページLPは第2図に示すように実ベージ
RP (5ビツト)にアドレス変換され、この実ベージ
RPとページ内アドレスRA(論理アドレスのものと同
一)とによって、実アドレスレジスタ3から主記憶装置
9をアクセスすることができるようになる。このアドレ
ス変換を行なうことによって、主記憶装置9が32ペ一
ジ分へ容量であるにもかかわらず、同時に必要な32ペ
ージ以下のページを主記憶装置9にロードしておけば、
プログラム上はあたかも32倍の1,024ページがあ
るかのようにデータを扱うことができる。
上述のアドレス変換を行なうためのアドレス変換表(1
,024個)は、、分空間(16ページ)対応に64個
のアドレス変換表にまとめられて、プログラムや他のデ
ータと共に主記憶装W9に予め格納されている。1プロ
グラム当りこれら64個のアドレス変換表のうちの最大
4個が変換バッファ30〜33にロードすることができ
る。どの変換表がどの変換バッファにロードされている
のかを示すのが空間番号レジスタlO〜13である。空
間番号レジスタlO〜13は、対応する変換バッファ3
0〜33内に有効データがロードされている(使用中)
か否かを示す1ビツトの有効ビットVと、ロードされて
いるアドレス変換表を使用するジョブ番号J(6ビツト
)と、−分空間番号S(6ビツト)の計13ビットから
構成されている。
次に、すべての変換バッファ30〜33が未使用の時J
=A、S=Oでアドレス変換表のロード要求が処理装置
から送られてきた場合の動作について述べる。この時、
ジョブ番号レジスタ1にはAが、アドレスレジスタ2の
空間番号部にはOがセットされポインタレジスタ6には
プログラムAの部分空間Oのアドレス変換表が格納され
ている主記憶装置9のアドレスがセットされ、クリアビ
ット7の指示はロードを示すC=0が処理装置によって
セットされる。出力100で検出回路20〜23に送ら
れたJ=A、S=Oは空間番号レジスタlO〜13の有
効ビットVがすべて0(未使用)のため一致とならずそ
の出力120〜123はすべて不一致状態を示す。前記
出力120〜+23を受信した制御回路5は、ポインタ
レジスタ6の出力103のアドレスを出力170へ送出
し、主記憶装置9をアクセスして該アドレス変換表をデ
ータ線105を介して変換バッファ30ヘロードすると
ともにストローブ信号130で空間番号レジスタ10に
V=1、J=A、S2Oをセットする。
その後、変換バッファ31にJ=B、5=O1また変換
バッファ32にはJ=A、S=1そして変換バッファ3
3にはJ=B、S=2のアドレス変換表かロードされた
とする。この状態で主記憶装置9のページの割付けが変
更になり、J=A、S2Oのアトlメス変換表を再ロー
ドする必要性が生じたとする。この場合、最初のロード
と同様J=A、S2Oでロード指示を出すと、検出回路
20で一致が検出され制御回路5はロードデータを対応
する変換バッファ30ヘロードするように動作する。
このように2つのプログラムAとBがそれぞれ部分空間
0.1と0.2を使って実行されている時すべての主記
憶装置9へのアクセスアドレスレジスタ2の論理アドレ
スからアドレスレジスタ3の実アドレスに変換される。
以下変換動作を更に詳細に説明する。
今、ジョブ番号レジスタlおよびアドレスレジスタ2に
J=B、5=O1P=8、A=100がセットされたと
する。JとSの出力100は各検出回路20〜23に送
られ空間番号レジスタ10〜13の出力110〜113
と検査される。空間番号レジスタ11にはV=1、J=
B、S2Oが保持されており検出回路2Iが一致を検出
し、出力121でf&(J御回路5に知らされる。ペー
ジ番号P=8は出力+01で各変換バッファ30〜33
にセットアドレスとして送られそれぞれの部分空間の8
番目のページの実ページ番号RPがそれぞれの出力14
0〜143に送出される。選択回路4は前記各変換バッ
ファ30〜33の実ページ番号出力140〜143の中
から制御回路5からの指示150により1つを選び出力
151でアドレスレジスタ3の上位5ビツトに実ページ
番号をセットする。今、検出回路21で一致が検出され
たのでIII御回路5は指示+50で選択回路4に入力
+41を出力+51に送出するように指示する。したが
って、J=B、S2O、P=8に対応する実ページ番号
がアドレスレジスタ3のRP部に、アドレスレジスタ2
のページ内アドレスRAが出力102でアドレスレジス
タ3のRA部にセットされ論理アドレスから実アドレス
への変換が行なわれたことになる。論理アドレスから実
アドレスへの変換において処理装置からのアクセスのJ
とSに対応するアドレス変換表が変換バッファにロード
されていない時には検出回路20〜23はすべて不一致
となり、制御回路5は変換不能な状態を出力180で処
理装置に割込みを発生させることにより通知する。さら
に、すべての変換バッファ30〜33に有効なデータが
ロードされている状態で新しいJ、Sの値を持つロード
要求があった場合、制御回路5は出力180で処理装置
に例外を発生させ変換バッファ30〜33に空きのない
ことを知らせる。
例外処理プログラムはロード要求の代りに不要なプログ
ラムの部分空間を変換バッファから追い出すために、ク
リアビット7をC=1として無効化を指示する。今、J
=B、S=2を追い出す場合の動作を説明する。ジョブ
番号レジスタ1とアドレスレジスタ2の空間番号部Sに
J=B、S=2をセットし、クリアビットC=1で制御
回路5にロード要求が出されると検出回路23で一致が
検出され、出力123で制御回路5に知らされる。制御
回路5はC=1のためロード動作をする代りにストロー
ブ信号133を使い一致が検出された空間番号レジスタ
13のVビットを0に変更し、変換バッファ33を未使
用状態にする。この後新たな部分空間にロード要求があ
っても変換バッファ33が空いているのでロードが可能
となり例外を発生しない。
本実施例においては、変換バッファの数を4としたがこ
の数は同時に処理すべきプログラムの数と1プログラム
当りの使用部分空間数から最適な値を求めるべきもので
4個に限定されるものではない。
〔発明の効果〕
以、L説明したように本発明は、ジョブ番号およびある
部分空間単位でアドレス変換バッファを管理することに
より、多重プログラミングの環境下においてもオーバー
ヘッドが少なく、ベクトル演算時の演体処理速度を向上
させる効果がある。
【図面の簡単な説明】
第1図は本発明のアドレス変換装置の一実施例を示すブ
ロック図、第2図は該実施例における論理アドレスと実
アドレスの関係を示す図である。 1−−−−−−−−・・−・−・−ジョブ番号レジスタ
、2 、3−−−−−−−−−−アドレスレジスタ、4
・・・・・・・・・・・・・・・・・・選択回路、5・
・・・・・・・・・・・・・・・・・制御回路、6・・
・・・・・・・・・・・・・・・・ポインタレジスタ、
7 ・−−−−−−−−・・・・・・・・・クリアビッ
ト、10.11,12.13−一空間番号レジスタ、2
0.2+、22.23−・・検出回路、30.3+、3
2.33・・・変換バッファ、9−−−−−−−−−−
−−−−・・・主記憶装置。 へ埋人 升埋rh胤 仲(、。

Claims (1)

  1. 【特許請求の範囲】 1、各プログラムでアクセス可能な論理アドレス空間が
    同一サイズの複数個の部分空間に分割され、該部分空間
    は同一サイズの複数個のページに分割され、前記論理空
    間を各ページ単位に実アドレスに変換して主記憶をアク
    セスするアドレス変換装置であって、 前記部分空間のそれぞれが含む全ページに対するアドレ
    ス変換表写しを保持する少なくとも一つの変換バッファ
    と、 前記変換バッファ毎に設けられ、対応する変換バッファ
    内にロードされているアドレス変換表を使用するプログ
    ラムを示すプログラム識別番号と部分空間番号とを保持
    する空間番号レジスタと、前記空間番号レジスタ毎に設
    けられ、主記憶アクセスのプログラム識別番号および部
    分空間番号と使用中の前記空間番号レジスタの保持する
    値が一致しているか否かを検出する検出回路と、変換後
    の実アドレスを保持するアドレスレジスタと、 各変換バッファの実ページ番号出力の中から1つを選択
    し、前記アドレスレジスタに実ページ番号をセットする
    選択回路と、 前記検出回路の出力を入力し、ソフトウェア命令により
    、プログラム識別番号と部分空間番号と該部分空間対応
    のアドレス変換表の主記憶中の先頭アドレスを示すポイ
    ンタが示され、アドレス変換表のロードが指示された時
    、前記空間番号レジスタに既に登録済のものがあれば該
    変換バッファに主記憶よりアドレス変換表を一括ロード
    し、なければ未使用の変換バッファにロードし、論理ア
    ドレスから実アドレスへの変換時に、前記検出回路のい
    ずれかが一致を検出した、該検出回路に対応する変換バ
    ッファの実ページ番号出力を前記選択回路が出力するよ
    うに前記選択回路を制御し、前記検出回路がすべて一致
    を検出しない場合には該プログラムに割り込みを発生す
    る制御回路とを有するアドレス変換装置。 2、部分空間のアドレス変換表ロード命令にはクリアビ
    ットを含み、前記制御回路は、クリアビットが変換バッ
    ファの無効化指示を指定しない時には部分空間単位での
    アドレス変換表の一括ロードを行ない、無効化指示があ
    る時には該命令で示されるプログラム識別番号と部分空
    間番号の一致するものを前記検出回路で検査し、一致す
    るものがあれば変換バッファ内の全てのアドレス変換表
    を無効とするため、前記部分空間レジスタを未使用状態
    とする特許請求の範囲第1項記載のアドレス変換装置。
JP62057348A 1987-03-11 1987-03-11 アドレス変換装置 Pending JPS63221440A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP62057348A JPS63221440A (ja) 1987-03-11 1987-03-11 アドレス変換装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP62057348A JPS63221440A (ja) 1987-03-11 1987-03-11 アドレス変換装置

Publications (1)

Publication Number Publication Date
JPS63221440A true JPS63221440A (ja) 1988-09-14

Family

ID=13053069

Family Applications (1)

Application Number Title Priority Date Filing Date
JP62057348A Pending JPS63221440A (ja) 1987-03-11 1987-03-11 アドレス変換装置

Country Status (1)

Country Link
JP (1) JPS63221440A (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH01228039A (ja) * 1988-02-10 1989-09-12 Internatl Business Mach Corp <Ibm> コンピユータ・システム

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH01228039A (ja) * 1988-02-10 1989-09-12 Internatl Business Mach Corp <Ibm> コンピユータ・システム

Similar Documents

Publication Publication Date Title
US3573855A (en) Computer memory protection
US4412303A (en) Array processor architecture
US5408626A (en) One clock address pipelining in segmentation unit
EP0011442B1 (en) Data processing system having an integrated stack and register machine architecture
US4951193A (en) Parallel computer with distributed shared memories and distributed task activating circuits
US5590301A (en) Address transformation in a cluster computer system
CA1174374A (en) Memory management unit for developing multiple physical addresses in parallel for use in a cache
GB2037041A (en) Cache unit
US3778776A (en) Electronic computer comprising a plurality of general purpose registers and having a dynamic relocation capability
EP0580943B1 (en) Cache miss prediction method and apparatus for use with a paged main memory in a data processing system
US4188662A (en) Address converter in a data processing apparatus
US3710349A (en) Data transferring circuit arrangement for transferring data between memories of a computer system
JPH07120312B2 (ja) バッファメモリ制御装置
US4991083A (en) Method and system for extending address space for vector processing
US3982231A (en) Prefixing in a multiprocessing system
JPS6257044A (ja) データ処理装置
JPS63221440A (ja) アドレス変換装置
JPH0192856A (ja) アクセス及び欠陥論理信号を用いて主メモリユニットを保護する装置及び方法
JP2503702B2 (ja) アドレス変換装置
EP0533190A2 (en) Data processing system with address translation function for different page sizes
JPS59111557A (ja) アドレス変換装置
JP2509981B2 (ja) 仮想記憶制御装置
JPH03191449A (ja) 情報処理装置
JP2927072B2 (ja) アクセス権検査装置
JPH03147042A (ja) 仮想メモリシステムの試験方式