JPS61141055A - 情報処理装置のアドレス変換方式 - Google Patents
情報処理装置のアドレス変換方式Info
- Publication number
- JPS61141055A JPS61141055A JP59264071A JP26407184A JPS61141055A JP S61141055 A JPS61141055 A JP S61141055A JP 59264071 A JP59264071 A JP 59264071A JP 26407184 A JP26407184 A JP 26407184A JP S61141055 A JPS61141055 A JP S61141055A
- Authority
- JP
- Japan
- Prior art keywords
- address
- relocation
- processor
- logical
- logical 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.)
- Granted
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/0223—User address space allocation, e.g. contiguous or non contiguous base addressing
- G06F12/0284—Multiple user address space allocation, e.g. using different base addresses
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Memory System Of A Hierarchy Structure (AREA)
- Complex Calculations (AREA)
Abstract
(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。
め要約のデータは記録されません。
Description
〔発明の利用分野〕
本発明は、プログラムで指定された論理アドレスを実ア
ドレスに変換する仮想記憶方式を採るプロセッサを複数
個有する情報処理装置に係り、詳しくは、そのアドレス
変換方式に関する。 〔発明の背景〕 科学技術分野において、計算機の大規模化、高速化の要
求はますます強まってきている。一方。 半導体集積技術の進歩も著しく、大容量メモリを備え、
高速演算を目的とする科学技術計算専用計算機が、最新
のハードウェア技術を使用して製品化されてきている。 この種の科学技術計算専用計算機は、一般にベクトル演
算を専用に実行するベクトル処理ユニット(ベクトルプ
ロセッサ)と、全体の計算機資源の管理(オペレーティ
ングシステム)や、科学技術計算プログラムでベクトル
命令に展開できない部分を実行するスカラ処理ユニット
(スカラプロセッサ)から構成される。 このような構成をとる科学技術計算専用計算機が仮想記
憶方式を採る場合、ベクトルプロセッサとスカラプロセ
ッサは、論理アドレス空間上にある技術計算プログラム
をお互いに関連し合いながら効率よく実行していくが、
技術計算プログラムの大規模化に伴なって、論理アドレ
ス空間も、従来の16MB (MB :メガバイト)か
ら20B(GB:ギガバイト)に拡張され、実メモリも
256MB程度のものが製品化されてきている。 ところで、技術計算プログラムは、従来のプログラムと
は異なり1例えば1行列データというような特殊なデー
タが、プログラムの中の大部分を占めていることが多い
。このような特殊なデータを持つプログラムの処理は、
その特徴を生かした処理(例えばアドレス変換方式)を
行うことがより効率的であろうと考えられる。このよう
なデータ領域は、一般的に以下の特徴がある。 (1)プログラム全体が走る中で、ある一定期間。 集中的に本領域中のデータの参照l更新が行われる。 (2)シかも、この参照/更新の途中で、処理が中断す
るようなこと(ページフォールト等)のないことが望ま
しい。 このような領域に対しては、ページ単位にデータを主記
憶装置と外部記憶装置の間で移動させるページングの対
象からはずしくすなわち、ページ固定)、データの必要
時、全データを主記憶装置上に常駐させ、不要になった
ときは、全データを外部記憶装置に掃き出すといういわ
ゆるスワップイン/アウト方式で対処することが効率的
である。 このようなプログラムに対して、スカラプロセッサは、
ページを固定し、従来のセグメントテーブル/ページテ
ーブルを使用したアドレス変換を行って論理アドレスを
実アドレス(実メモリ)に変換し、メモリのアクセスを
行う、上記テーブルは、主記憶装置上に存在するが、ア
ドレスを高速に行えるように、一部の論理アドレスと実
アドレスの変換対を高速メモリ(T L B : Tr
anslationLook−aside Buffe
r)上に持つのが普通である。 これに対して、ベクトルプロセッサは、高速処理が必要
なため、上記アドレス変換を行うためには、すべてのア
クセス領域について、高速の変換テーブル(TL’B)
を持つ必要がある。しかし、ベクトルプロセッサに、こ
のような高速の変換テーブルを全テーブルエントリ分持
つには、現在の半導体集積技術をもってしても物量が大
きくなり、実現が難かしい。 1つの対応案としては、プロセッサを論理アドレスと実
アドレスが等しくなるように主記憶装置上にロードし実
行することが考えられる。このようにすれば、ベクトル
プロセッサのアドレス変換テーブルが不要になる゛が1
反面、主記憶装置の使用効率が悪くなるという問題があ
る。つまり、上記方法では、連続した主記憶領域をプロ
グラムに与える必要があるが、確保−解放を繰返すうち
に主記憶装置上に空き領域が虫食い的に発生しくフラグ
メンテーション)、虫食い部分の総計では十分あるが、
連続していないために使用できず、ジョブの実行が待さ
れてしまう。 なお、本発明に関連する公知文献としては例えば特開昭
58−97184号公報が挙げられるが、上記問題の解
決には考慮がはられれてい′ない。
ドレスに変換する仮想記憶方式を採るプロセッサを複数
個有する情報処理装置に係り、詳しくは、そのアドレス
変換方式に関する。 〔発明の背景〕 科学技術分野において、計算機の大規模化、高速化の要
求はますます強まってきている。一方。 半導体集積技術の進歩も著しく、大容量メモリを備え、
高速演算を目的とする科学技術計算専用計算機が、最新
のハードウェア技術を使用して製品化されてきている。 この種の科学技術計算専用計算機は、一般にベクトル演
算を専用に実行するベクトル処理ユニット(ベクトルプ
ロセッサ)と、全体の計算機資源の管理(オペレーティ
ングシステム)や、科学技術計算プログラムでベクトル
命令に展開できない部分を実行するスカラ処理ユニット
(スカラプロセッサ)から構成される。 このような構成をとる科学技術計算専用計算機が仮想記
憶方式を採る場合、ベクトルプロセッサとスカラプロセ
ッサは、論理アドレス空間上にある技術計算プログラム
をお互いに関連し合いながら効率よく実行していくが、
技術計算プログラムの大規模化に伴なって、論理アドレ
ス空間も、従来の16MB (MB :メガバイト)か
ら20B(GB:ギガバイト)に拡張され、実メモリも
256MB程度のものが製品化されてきている。 ところで、技術計算プログラムは、従来のプログラムと
は異なり1例えば1行列データというような特殊なデー
タが、プログラムの中の大部分を占めていることが多い
。このような特殊なデータを持つプログラムの処理は、
その特徴を生かした処理(例えばアドレス変換方式)を
行うことがより効率的であろうと考えられる。このよう
なデータ領域は、一般的に以下の特徴がある。 (1)プログラム全体が走る中で、ある一定期間。 集中的に本領域中のデータの参照l更新が行われる。 (2)シかも、この参照/更新の途中で、処理が中断す
るようなこと(ページフォールト等)のないことが望ま
しい。 このような領域に対しては、ページ単位にデータを主記
憶装置と外部記憶装置の間で移動させるページングの対
象からはずしくすなわち、ページ固定)、データの必要
時、全データを主記憶装置上に常駐させ、不要になった
ときは、全データを外部記憶装置に掃き出すといういわ
ゆるスワップイン/アウト方式で対処することが効率的
である。 このようなプログラムに対して、スカラプロセッサは、
ページを固定し、従来のセグメントテーブル/ページテ
ーブルを使用したアドレス変換を行って論理アドレスを
実アドレス(実メモリ)に変換し、メモリのアクセスを
行う、上記テーブルは、主記憶装置上に存在するが、ア
ドレスを高速に行えるように、一部の論理アドレスと実
アドレスの変換対を高速メモリ(T L B : Tr
anslationLook−aside Buffe
r)上に持つのが普通である。 これに対して、ベクトルプロセッサは、高速処理が必要
なため、上記アドレス変換を行うためには、すべてのア
クセス領域について、高速の変換テーブル(TL’B)
を持つ必要がある。しかし、ベクトルプロセッサに、こ
のような高速の変換テーブルを全テーブルエントリ分持
つには、現在の半導体集積技術をもってしても物量が大
きくなり、実現が難かしい。 1つの対応案としては、プロセッサを論理アドレスと実
アドレスが等しくなるように主記憶装置上にロードし実
行することが考えられる。このようにすれば、ベクトル
プロセッサのアドレス変換テーブルが不要になる゛が1
反面、主記憶装置の使用効率が悪くなるという問題があ
る。つまり、上記方法では、連続した主記憶領域をプロ
グラムに与える必要があるが、確保−解放を繰返すうち
に主記憶装置上に空き領域が虫食い的に発生しくフラグ
メンテーション)、虫食い部分の総計では十分あるが、
連続していないために使用できず、ジョブの実行が待さ
れてしまう。 なお、本発明に関連する公知文献としては例えば特開昭
58−97184号公報が挙げられるが、上記問題の解
決には考慮がはられれてい′ない。
本発明の目的は、ベクトルプロセッサなどの高性能化を
維持しつN、最適な半導体の物量でもって実アドレス空
間/論理アドレス空間の有効利用が図られる情報処理装
置を提供することにある。 〔発明の概要〕 本発明は、仮想記憶方式を取るプロセッサを複数個有す
る情報処理装置において、第1のプロセッサはセグメン
トテーブル/ページチー/用を使用した従来のアドレス
変換方式を取り、第2のプロセッサは、第1のプロセッ
サとは別に高速の変換テーブル(リロケーションテーブ
ル)を持ち、あらかじめ設定された論理アドレス範囲の
みリロケーションを行い、アドレス変換テーブルとりロ
ケーシ目ンテーブルに矛盾が生じないように第1のプロ
セッサが管理することを特徴とする。 〔発明の実施例〕 以下、本発明の一実施例を図面により詳細に説明する。 第1図は本発明の一実施例の全体ブロック図を示す、第
1図において、スカラプロセッサlは。 アドレス変換機構2を通して主記憶装置(MS)5にア
クセスし、ベクトルプロセッサ3は、アドレスリロケー
ション機構4を通して主記憶装置5にアクセスする。 第2図および第3図は、論理アドレス空間上のプログラ
ムの構成とアドレス変換後の実アドレス空間上のプログ
ラム構成の一例を示したものである。 第2図の論理アドレス空間を大きく分割すると。 16MB以内の領域6,161V[8以上の領域でスカ
ラプロセッサ1が使用する領域7.10.16MB以上
でベクトルプロセッサ3とスカラプロセッサ1が使用す
る拡張領域8とに分けられ、技術計算プログラム3本は
、各空間にそれぞれ斜線で示した領域に割当てられてい
る。第2図においては、これらのプログラムは、論理空
間上のアドレスがお互いに異なっていることが特徴であ
り、リロケーションテーブルの管理が簡単になる。これ
らのプログラムは、スカラプロセッサ1では、アドレス
変換機構2によりアドレス変換されて、実アドレス空間
9をアクセスし、ベクトルプロセッサ3では、アドレス
リロケーション機構4によりアドレス変換されて、実ア
ドレス空間9をアクセ゛ スすることを示している。 第3図は、第2図と比較して、論理アドレス空間の拡張
領域8でのプログラム割当て方式が異なり、ここでは、
空間の異なる領域のプログラムが。 同じ論理アドレスに割当てられている。 第2図および第3図において、拡張領域8には。 技術計算プログラムの命令とデータが割当てら九れるが
、第2図で示す割当て方法であると、実アドレス上のフ
ラグメンテーションはなくなるが。 論理アドレス空間上のフラグメンテーションはなくなら
ない、第3図で示すような拡張領域の割当て方法では、
論理アドレス空間上のフラグメンテーションもなくなり
、より効率のよい領域割当てが可能となる。しかし、そ
の反面、リロケーションテーブルの管理が、第2図で示
すような空間割当て方式のときより複雑になる。 第4図は、スカラプロセッサ1がアドレス変換機構2を
通して論理アドレス空間上のプログラムを実アドレス空
間に変換するときの変換方式を示したもので、これは従
来よく知られたものである。 簡単に説明すると、論理アドレス20の上位アドレスと
セグメント起点アドレス21を加え、セグメントテーブ
ル22の中の1つのエントリを取りだす。これに論理ア
ドレス20の中位アドレスを加えて、ページテーブル2
3の中の1つの壬ントリを取りだして実アドレスの上位
とする。実アドレスの下位は、論理アドレス20の下位
をそのままもってくる。セグメントテーブル22.ペー
ジテーブル23は、主記憶装置5上にあるが、アドレス
変換の高速化をはかるため、アドレス変換機構2は、論
理アドレスと対応する実アドレスの変換対の一部を格納
した高速変換テーブル(TLB)を持つが普通である。 第5図は、ベクトルプロセッサ3がアドレスリロケーシ
ョン機構4を通して論理アドレス空間上のプログラムを
実アドレス空間に変換するときの変換方式の一例を示し
たものである。こきでは、1MBQi位のリロケーショ
ンテーブル38が示されている。範囲レジスタ32.3
3には、それぞれリロケーション対象となる論理アドレ
ス上の上限と下限が、スカラプロセッサ1によりあらか
しめセットされている。また主記憶袋M5の容量は25
6MBとして・いる、以下に具体例をもって説 明す
る。 論理アドレス20のビット4〜11の値31により、リ
ロケーションテーブル(この例では、256エントリあ
る)の中の1つのエントリを選択し、上位に3ビツトの
ゼロ39を付加し、セレクタ40に送られる。また、論
理アドレス20のビット1〜11は、そのまNセレクタ
40に送られると同時に比較凹路34.35に送られ、
範囲レジスタ32.33と比較され、論理アドレスが。 リロケーション対象の範囲にあるかどうかが調べられる
。その結果はアンド回路36を曙して、セレクタ40に
送られ、データ線45.46のどちらかが選択される。 即ち、リロケーション対象岬囲であればデータ線46が
選択され、対象範囲外であれば、データ線45が選択さ
れる。セレクタ40の出力は実アドレス24のピクト1
.−11にセットされる。論理アドレス20のビット1
2〜31は、そのまま実アドレス24のビット12〜3
1にセットされる。ここで、主記憶装置9の容量は25
6MBであるとしているので、実アト・レス24のビッ
ト1〜3のいずれかにII 1 #lがセットされると
、11″検出回路41によりアドレスエラー信号が発行
される。 第2図の様な論理アドレス空間構成のシステムを本ハー
ドウェアで実現するためには、まず、システム立ち上げ
時、リロケーション範囲(拡張領域8)の上/下限の値
を、レジスタ32.33にセットし、各科学計算ジョブ
の開始時に、対応するリロケーションテーブル38のエ
ントリにアドレスをセットすればよい。16MB以内の
領域にある各科学計算ジョブは、リロケーション範囲外
であるので、データ線45が選択される。オペレーティ
ングシステム(スカラプロセッサで動作)は、第4図の
アドレス変換テーブルと、第5図のリロケーションテー
ブル38に矛盾が生じないように管理する。 第3図の様な論理アドレス空間構成のシステムを1本ハ
ードウェアで実現するためには、まず。 システム立ち上げ時、リロケーション範囲の上/下限の
値を、レジスタ32.33にセットし、1つの科学計算
ジョブの開始時に、対応するリロケーションテーブル3
8のエントリアドレスをセットし、他のジョブが起動さ
れた時には、空間の切換えごとにリロケーションテーブ
ルエントリの内容を、そのジョブに対応した内容に書き
直す必要がある。この空間切換時のオーバヘッドを軽減
するために、リロケーションテーブルを複数個持ち。 そのポインタを設け、ソフトから設定できるようにして
もよい、第5図の点線で示しているものが。 これらのハードウェアであり、42がポインタ、43が
別のリロケーションテーブルを示す。 スカラプロセッサとベクトルプロセッサのアドレス変換
をまとめると、以下の第1表のようになる。 ここで、A1は論理アドレス、AT(A、、)は論理ア
ドレスA1.をアドレス変換機構で変換することを、R
T(A、、)は論理アドレスをアドレスリロケーション
機構で変換することを意味する。 第6図は、第5図にゼロ検出回路50.セレクタ51、
エラー信号52を加えたもので、スカラプロセッサとベ
クトルプロセッサは、以下の第2表の様に動作する。A
L、AT (AL)、RT(A、)の意味は第1表と同
じである6リロケーシヨンテーブルエントリ等のアドレ
スリロケーションに必要な情報を、各レジスタにセット
するスカラ命令である。第7図の命令60.61は、第
2図の論理アドレス空間の割当てを前提に考えられてお
り、システム立ち上げ時、命令61により、リロケーシ
ョン範囲の上限/下限を設定し、各科学技術計算ジョブ
の立ち上げ時、それに対応したリロケーションの値を、
命令60により設定する0本命令は、ジョブの立ち上げ
時、1回だけ出されればよく、リロケーションテーブル
の内容は、当該ジョブが終了するまで使用される。 命令62は、第3図の論理アドレス空間の割当てを前提
に考えられたもので、科学技術計算ジョブの立ち上げ時
に、当該ジョブのリロケーション範囲とその内容を同時
にセットし、タスク切換え時(ある空間のジョブから他
の空間のジョブに制御が切換わること)にも1本命令が
出され、これがら実行されるジョブに対するリロケーシ
ョン範囲とその内容がセットされる。 第8図は、第5図や第6図のリロケーションテーブルの
範囲を、スカラプロセッサの2GBと同じ大きさまで拡
張し、リロケーション対象を示す範囲レジスタを除いた
ものである。ここにおいても、リロケーションの単位は
IMBとしており。 スカラプロセッサの4KBとは異なっている。第8図で
示すように、リロケーションテーブル70は2048エ
ントリから構成さ九ている。 [発明の効果〕 以上説明した如く1本発明によれば、スカラプロセッサ
とは別に、ベクトルプロセッサ用のアドレスリロケーシ
ョン用の変換対テーブルを持つので、ベクトルプロセッ
サの高性能化を維持しつつ、実アドレス空間(主記憶装
置)/論理アドレス空間の有効利用がはかられ、しかも
、最適な半導体の物量で実現が可能である。なお1本発
明はスカラプロセッサとベクトルプロセッサ以外の、一
般にプログラムで指定された論理アドレスを実アドレス
に変換する仮想記憶方式をとるプロセッサを複数個有す
る情報処理装置に広く適当可能である。
維持しつN、最適な半導体の物量でもって実アドレス空
間/論理アドレス空間の有効利用が図られる情報処理装
置を提供することにある。 〔発明の概要〕 本発明は、仮想記憶方式を取るプロセッサを複数個有す
る情報処理装置において、第1のプロセッサはセグメン
トテーブル/ページチー/用を使用した従来のアドレス
変換方式を取り、第2のプロセッサは、第1のプロセッ
サとは別に高速の変換テーブル(リロケーションテーブ
ル)を持ち、あらかじめ設定された論理アドレス範囲の
みリロケーションを行い、アドレス変換テーブルとりロ
ケーシ目ンテーブルに矛盾が生じないように第1のプロ
セッサが管理することを特徴とする。 〔発明の実施例〕 以下、本発明の一実施例を図面により詳細に説明する。 第1図は本発明の一実施例の全体ブロック図を示す、第
1図において、スカラプロセッサlは。 アドレス変換機構2を通して主記憶装置(MS)5にア
クセスし、ベクトルプロセッサ3は、アドレスリロケー
ション機構4を通して主記憶装置5にアクセスする。 第2図および第3図は、論理アドレス空間上のプログラ
ムの構成とアドレス変換後の実アドレス空間上のプログ
ラム構成の一例を示したものである。 第2図の論理アドレス空間を大きく分割すると。 16MB以内の領域6,161V[8以上の領域でスカ
ラプロセッサ1が使用する領域7.10.16MB以上
でベクトルプロセッサ3とスカラプロセッサ1が使用す
る拡張領域8とに分けられ、技術計算プログラム3本は
、各空間にそれぞれ斜線で示した領域に割当てられてい
る。第2図においては、これらのプログラムは、論理空
間上のアドレスがお互いに異なっていることが特徴であ
り、リロケーションテーブルの管理が簡単になる。これ
らのプログラムは、スカラプロセッサ1では、アドレス
変換機構2によりアドレス変換されて、実アドレス空間
9をアクセスし、ベクトルプロセッサ3では、アドレス
リロケーション機構4によりアドレス変換されて、実ア
ドレス空間9をアクセ゛ スすることを示している。 第3図は、第2図と比較して、論理アドレス空間の拡張
領域8でのプログラム割当て方式が異なり、ここでは、
空間の異なる領域のプログラムが。 同じ論理アドレスに割当てられている。 第2図および第3図において、拡張領域8には。 技術計算プログラムの命令とデータが割当てら九れるが
、第2図で示す割当て方法であると、実アドレス上のフ
ラグメンテーションはなくなるが。 論理アドレス空間上のフラグメンテーションはなくなら
ない、第3図で示すような拡張領域の割当て方法では、
論理アドレス空間上のフラグメンテーションもなくなり
、より効率のよい領域割当てが可能となる。しかし、そ
の反面、リロケーションテーブルの管理が、第2図で示
すような空間割当て方式のときより複雑になる。 第4図は、スカラプロセッサ1がアドレス変換機構2を
通して論理アドレス空間上のプログラムを実アドレス空
間に変換するときの変換方式を示したもので、これは従
来よく知られたものである。 簡単に説明すると、論理アドレス20の上位アドレスと
セグメント起点アドレス21を加え、セグメントテーブ
ル22の中の1つのエントリを取りだす。これに論理ア
ドレス20の中位アドレスを加えて、ページテーブル2
3の中の1つの壬ントリを取りだして実アドレスの上位
とする。実アドレスの下位は、論理アドレス20の下位
をそのままもってくる。セグメントテーブル22.ペー
ジテーブル23は、主記憶装置5上にあるが、アドレス
変換の高速化をはかるため、アドレス変換機構2は、論
理アドレスと対応する実アドレスの変換対の一部を格納
した高速変換テーブル(TLB)を持つが普通である。 第5図は、ベクトルプロセッサ3がアドレスリロケーシ
ョン機構4を通して論理アドレス空間上のプログラムを
実アドレス空間に変換するときの変換方式の一例を示し
たものである。こきでは、1MBQi位のリロケーショ
ンテーブル38が示されている。範囲レジスタ32.3
3には、それぞれリロケーション対象となる論理アドレ
ス上の上限と下限が、スカラプロセッサ1によりあらか
しめセットされている。また主記憶袋M5の容量は25
6MBとして・いる、以下に具体例をもって説 明す
る。 論理アドレス20のビット4〜11の値31により、リ
ロケーションテーブル(この例では、256エントリあ
る)の中の1つのエントリを選択し、上位に3ビツトの
ゼロ39を付加し、セレクタ40に送られる。また、論
理アドレス20のビット1〜11は、そのまNセレクタ
40に送られると同時に比較凹路34.35に送られ、
範囲レジスタ32.33と比較され、論理アドレスが。 リロケーション対象の範囲にあるかどうかが調べられる
。その結果はアンド回路36を曙して、セレクタ40に
送られ、データ線45.46のどちらかが選択される。 即ち、リロケーション対象岬囲であればデータ線46が
選択され、対象範囲外であれば、データ線45が選択さ
れる。セレクタ40の出力は実アドレス24のピクト1
.−11にセットされる。論理アドレス20のビット1
2〜31は、そのまま実アドレス24のビット12〜3
1にセットされる。ここで、主記憶装置9の容量は25
6MBであるとしているので、実アト・レス24のビッ
ト1〜3のいずれかにII 1 #lがセットされると
、11″検出回路41によりアドレスエラー信号が発行
される。 第2図の様な論理アドレス空間構成のシステムを本ハー
ドウェアで実現するためには、まず、システム立ち上げ
時、リロケーション範囲(拡張領域8)の上/下限の値
を、レジスタ32.33にセットし、各科学計算ジョブ
の開始時に、対応するリロケーションテーブル38のエ
ントリにアドレスをセットすればよい。16MB以内の
領域にある各科学計算ジョブは、リロケーション範囲外
であるので、データ線45が選択される。オペレーティ
ングシステム(スカラプロセッサで動作)は、第4図の
アドレス変換テーブルと、第5図のリロケーションテー
ブル38に矛盾が生じないように管理する。 第3図の様な論理アドレス空間構成のシステムを1本ハ
ードウェアで実現するためには、まず。 システム立ち上げ時、リロケーション範囲の上/下限の
値を、レジスタ32.33にセットし、1つの科学計算
ジョブの開始時に、対応するリロケーションテーブル3
8のエントリアドレスをセットし、他のジョブが起動さ
れた時には、空間の切換えごとにリロケーションテーブ
ルエントリの内容を、そのジョブに対応した内容に書き
直す必要がある。この空間切換時のオーバヘッドを軽減
するために、リロケーションテーブルを複数個持ち。 そのポインタを設け、ソフトから設定できるようにして
もよい、第5図の点線で示しているものが。 これらのハードウェアであり、42がポインタ、43が
別のリロケーションテーブルを示す。 スカラプロセッサとベクトルプロセッサのアドレス変換
をまとめると、以下の第1表のようになる。 ここで、A1は論理アドレス、AT(A、、)は論理ア
ドレスA1.をアドレス変換機構で変換することを、R
T(A、、)は論理アドレスをアドレスリロケーション
機構で変換することを意味する。 第6図は、第5図にゼロ検出回路50.セレクタ51、
エラー信号52を加えたもので、スカラプロセッサとベ
クトルプロセッサは、以下の第2表の様に動作する。A
L、AT (AL)、RT(A、)の意味は第1表と同
じである6リロケーシヨンテーブルエントリ等のアドレ
スリロケーションに必要な情報を、各レジスタにセット
するスカラ命令である。第7図の命令60.61は、第
2図の論理アドレス空間の割当てを前提に考えられてお
り、システム立ち上げ時、命令61により、リロケーシ
ョン範囲の上限/下限を設定し、各科学技術計算ジョブ
の立ち上げ時、それに対応したリロケーションの値を、
命令60により設定する0本命令は、ジョブの立ち上げ
時、1回だけ出されればよく、リロケーションテーブル
の内容は、当該ジョブが終了するまで使用される。 命令62は、第3図の論理アドレス空間の割当てを前提
に考えられたもので、科学技術計算ジョブの立ち上げ時
に、当該ジョブのリロケーション範囲とその内容を同時
にセットし、タスク切換え時(ある空間のジョブから他
の空間のジョブに制御が切換わること)にも1本命令が
出され、これがら実行されるジョブに対するリロケーシ
ョン範囲とその内容がセットされる。 第8図は、第5図や第6図のリロケーションテーブルの
範囲を、スカラプロセッサの2GBと同じ大きさまで拡
張し、リロケーション対象を示す範囲レジスタを除いた
ものである。ここにおいても、リロケーションの単位は
IMBとしており。 スカラプロセッサの4KBとは異なっている。第8図で
示すように、リロケーションテーブル70は2048エ
ントリから構成さ九ている。 [発明の効果〕 以上説明した如く1本発明によれば、スカラプロセッサ
とは別に、ベクトルプロセッサ用のアドレスリロケーシ
ョン用の変換対テーブルを持つので、ベクトルプロセッ
サの高性能化を維持しつつ、実アドレス空間(主記憶装
置)/論理アドレス空間の有効利用がはかられ、しかも
、最適な半導体の物量で実現が可能である。なお1本発
明はスカラプロセッサとベクトルプロセッサ以外の、一
般にプログラムで指定された論理アドレスを実アドレス
に変換する仮想記憶方式をとるプロセッサを複数個有す
る情報処理装置に広く適当可能である。
第1図は本発明の一実施例のシステム構成図。
第2図及び第3図は論理アドレスと実アドレスの関係を
示す図、第4図はスカラプロセッサのアドレス変換を示
す図、第5図及び第6図は本発明によるベクトルプロセ
ッサのアドレス変換方式の一実施例を示す図、第7図は
本発明で用いる命令の一例を示す図、第8図は本発明に
よるベクトルプロセッサのアドレス変換方式の他の実施
例を示す図である。 1・・・スカラプロセッサ、 2・・・アドレス変換
機構、 3・・・ベクトルプロセッサ、 4・・・ア
ドレスリロケーション機構、 5・・・主記憶装置。 38.70・・・リロケーションテーブル5第2図 潴丁1−2rし2り町 第4図 第5図 第6図
示す図、第4図はスカラプロセッサのアドレス変換を示
す図、第5図及び第6図は本発明によるベクトルプロセ
ッサのアドレス変換方式の一実施例を示す図、第7図は
本発明で用いる命令の一例を示す図、第8図は本発明に
よるベクトルプロセッサのアドレス変換方式の他の実施
例を示す図である。 1・・・スカラプロセッサ、 2・・・アドレス変換
機構、 3・・・ベクトルプロセッサ、 4・・・ア
ドレスリロケーション機構、 5・・・主記憶装置。 38.70・・・リロケーションテーブル5第2図 潴丁1−2rし2り町 第4図 第5図 第6図
Claims (1)
- (1)仮想記憶方式を採るプロセッサを複数個有する情
報処理装置において、第1のプロセッサはアドレス変換
テーブルを使用して論理アドレスを実アドレスに変換す
るアドレス変換機構を具備し、第2のプロセッサはリロ
ケーションテーブルを使用し、論理アドレスが予め設定
されたリロケーション対象範囲にあるときのみアドレス
リロケーションを行うアドレスリロケーション機構を具
備していることを特徴とする情報処理装置。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP59264071A JPH0652511B2 (ja) | 1984-12-14 | 1984-12-14 | 情報処理装置のアドレス変換方式 |
US06/807,684 US4769770A (en) | 1984-12-14 | 1985-12-11 | Address conversion for a multiprocessor system having scalar and vector processors |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP59264071A JPH0652511B2 (ja) | 1984-12-14 | 1984-12-14 | 情報処理装置のアドレス変換方式 |
Publications (2)
Publication Number | Publication Date |
---|---|
JPS61141055A true JPS61141055A (ja) | 1986-06-28 |
JPH0652511B2 JPH0652511B2 (ja) | 1994-07-06 |
Family
ID=17398112
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP59264071A Expired - Lifetime JPH0652511B2 (ja) | 1984-12-14 | 1984-12-14 | 情報処理装置のアドレス変換方式 |
Country Status (2)
Country | Link |
---|---|
US (1) | US4769770A (ja) |
JP (1) | JPH0652511B2 (ja) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS62128343A (ja) * | 1985-11-30 | 1987-06-10 | Nec Corp | 計算機システムの主記憶管理方式 |
JPH0240744A (ja) * | 1988-07-25 | 1990-02-09 | Digital Equip Corp <Dec> | 仮想アドレス‐物理アドレスの変換が有効に行なわれることを予想する方法及び装置 |
WO2008015836A1 (fr) * | 2006-08-02 | 2008-02-07 | Fuji System Machines Co., Ltd. | Dispositif, système et procédé de traitement d'image |
Families Citing this family (28)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5249276A (en) * | 1987-06-22 | 1993-09-28 | Hitachi, Ltd. | Address translation apparatus having a memory access privilege check capability data which uses mask data to select bit positions of priviledge |
US5063497A (en) * | 1987-07-01 | 1991-11-05 | Digital Equipment Corporation | Apparatus and method for recovering from missing page faults in vector data processing operations |
JP2523653B2 (ja) * | 1987-07-08 | 1996-08-14 | 株式会社日立製作所 | 仮想計算機システム |
JPS6467680A (en) * | 1987-09-09 | 1989-03-14 | Hitachi Ltd | Vector processor |
JP2507756B2 (ja) * | 1987-10-05 | 1996-06-19 | 株式会社日立製作所 | 情報処理装置 |
JPH0195347A (ja) * | 1987-10-08 | 1989-04-13 | Nec Corp | アドレス変換方式 |
FR2642252A1 (fr) * | 1989-01-26 | 1990-07-27 | Centre Nat Rech Scient | Unite d'interconnexion entre circuits, notamment du type crossbar procede de mise en oeuvre d'une unite d'interconnexion entre circuits, et utilisations d'une unite d'interconnexion entre circuits |
US5197132A (en) * | 1990-06-29 | 1993-03-23 | Digital Equipment Corporation | Register mapping system having a log containing sequential listing of registers that were changed in preceding cycles for precise post-branch recovery |
US5341485A (en) * | 1991-05-07 | 1994-08-23 | International Business Machines Corporation | Multiple virtual address translation per computer cycle |
JPH0695898A (ja) * | 1992-09-16 | 1994-04-08 | Hitachi Ltd | 仮想計算機の制御方法および仮想計算機システム |
US6012135A (en) * | 1994-12-01 | 2000-01-04 | Cray Research, Inc. | Computer having multiple address ports, each having logical address translation with base and limit memory management |
US6438671B1 (en) * | 1999-07-01 | 2002-08-20 | International Business Machines Corporation | Generating partition corresponding real address in partitioned mode supporting system |
US20020129336A1 (en) * | 2000-12-19 | 2002-09-12 | Bolding Joe D. | Automatic symbol table selection in a multi-cell environment |
US6782464B2 (en) | 2001-07-17 | 2004-08-24 | International Business Machines Corporation | Mapping a logical address to a plurality on non-logical addresses |
US7184944B1 (en) * | 2004-02-20 | 2007-02-27 | Unisys Corporation | Apparatus and method for the simulation of a large main memory address space given limited resources |
GB2461850A (en) * | 2008-07-10 | 2010-01-20 | Cambridge Consultants | Memory management unit with address translation for a range defined by upper and lower limits |
US8443167B1 (en) | 2009-12-16 | 2013-05-14 | Western Digital Technologies, Inc. | Data storage device employing a run-length mapping table and a single address mapping table |
US8194340B1 (en) | 2010-03-18 | 2012-06-05 | Western Digital Technologies, Inc. | Disk drive framing write data with in-line mapping data during write operations |
US8856438B1 (en) | 2011-12-09 | 2014-10-07 | Western Digital Technologies, Inc. | Disk drive with reduced-size translation table |
US8699185B1 (en) | 2012-12-10 | 2014-04-15 | Western Digital Technologies, Inc. | Disk drive defining guard bands to support zone sequentiality when butterfly writing shingled data tracks |
US8687306B1 (en) | 2010-03-22 | 2014-04-01 | Western Digital Technologies, Inc. | Systems and methods for improving sequential data rate performance using sorted data zones |
US8693133B1 (en) | 2010-03-22 | 2014-04-08 | Western Digital Technologies, Inc. | Systems and methods for improving sequential data rate performance using sorted data zones for butterfly format |
US9330715B1 (en) | 2010-03-22 | 2016-05-03 | Western Digital Technologies, Inc. | Mapping of shingled magnetic recording media |
US8793429B1 (en) | 2011-06-03 | 2014-07-29 | Western Digital Technologies, Inc. | Solid-state drive with reduced power up time |
US9213493B1 (en) | 2011-12-16 | 2015-12-15 | Western Digital Technologies, Inc. | Sorted serpentine mapping for storage drives |
US8819367B1 (en) | 2011-12-19 | 2014-08-26 | Western Digital Technologies, Inc. | Accelerated translation power recovery |
US8953269B1 (en) | 2014-07-18 | 2015-02-10 | Western Digital Technologies, Inc. | Management of data objects in a data object zone |
US9875055B1 (en) | 2014-08-04 | 2018-01-23 | Western Digital Technologies, Inc. | Check-pointing of metadata |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS5724081A (en) * | 1980-07-16 | 1982-02-08 | Hitachi Ltd | Virtual storage controller of multiprocessor |
Family Cites Families (21)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US3569938A (en) * | 1967-12-20 | 1971-03-09 | Ibm | Storage manager |
US3693165A (en) * | 1971-06-29 | 1972-09-19 | Ibm | Parallel addressing of a storage hierarchy in a data processing system using virtual addressing |
US3764996A (en) * | 1971-12-23 | 1973-10-09 | Ibm | Storage control and address translation |
US3723976A (en) * | 1972-01-20 | 1973-03-27 | Ibm | Memory system with logical and real addressing |
US3902164A (en) * | 1972-07-21 | 1975-08-26 | Ibm | Method and means for reducing the amount of address translation in a virtual memory data processing system |
US3825904A (en) * | 1973-06-08 | 1974-07-23 | Ibm | Virtual memory system |
JPS5615066B2 (ja) * | 1974-06-13 | 1981-04-08 | ||
FR119649A (ja) * | 1975-03-24 | |||
JPS51115737A (en) * | 1975-03-24 | 1976-10-12 | Hitachi Ltd | Adress conversion versus control system |
US4241401A (en) * | 1977-12-19 | 1980-12-23 | Sperry Corporation | Virtual address translator utilizing interrupt level code |
JPS54111726A (en) * | 1978-02-22 | 1979-09-01 | Hitachi Ltd | Control unit for multiplex virtual memory |
US4376297A (en) * | 1978-04-10 | 1983-03-08 | Signetics Corporation | Virtual memory addressing device |
US4373179A (en) * | 1978-06-26 | 1983-02-08 | Fujitsu Limited | Dynamic address translation system |
US4170039A (en) * | 1978-07-17 | 1979-10-02 | International Business Machines Corporation | Virtual address translation speed up technique |
JPS5687282A (en) * | 1979-12-14 | 1981-07-15 | Nec Corp | Data processor |
US4482952A (en) * | 1980-12-15 | 1984-11-13 | Nippon Electric Co., Ltd. | Virtual addressing system using page field comparisons to selectively validate cache buffer data on read main memory data |
US4521846A (en) * | 1981-02-20 | 1985-06-04 | International Business Machines Corporation | Mechanism for accessing multiple virtual address spaces |
US4456954A (en) * | 1981-06-15 | 1984-06-26 | International Business Machines Corporation | Virtual machine system with guest architecture emulation using hardware TLB's for plural level address translations |
JPS6047623B2 (ja) * | 1982-02-12 | 1985-10-22 | 株式会社日立製作所 | アドレス変換方式 |
US4654777A (en) * | 1982-05-25 | 1987-03-31 | Tokyo Shibaura Denki Kabushiki Kaisha | Segmented one and two level paging address translation system |
JPS5987566A (ja) * | 1982-11-12 | 1984-05-21 | Hitachi Ltd | メモリアクセス検出方式 |
-
1984
- 1984-12-14 JP JP59264071A patent/JPH0652511B2/ja not_active Expired - Lifetime
-
1985
- 1985-12-11 US US06/807,684 patent/US4769770A/en not_active Expired - Fee Related
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS5724081A (en) * | 1980-07-16 | 1982-02-08 | Hitachi Ltd | Virtual storage controller of multiprocessor |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS62128343A (ja) * | 1985-11-30 | 1987-06-10 | Nec Corp | 計算機システムの主記憶管理方式 |
JPH0240744A (ja) * | 1988-07-25 | 1990-02-09 | Digital Equip Corp <Dec> | 仮想アドレス‐物理アドレスの変換が有効に行なわれることを予想する方法及び装置 |
WO2008015836A1 (fr) * | 2006-08-02 | 2008-02-07 | Fuji System Machines Co., Ltd. | Dispositif, système et procédé de traitement d'image |
JP2008040614A (ja) * | 2006-08-02 | 2008-02-21 | Fuji Syst Kiki Kk | 画像処理装置、画像処理システム及び画像処理方法 |
Also Published As
Publication number | Publication date |
---|---|
JPH0652511B2 (ja) | 1994-07-06 |
US4769770A (en) | 1988-09-06 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JPS61141055A (ja) | 情報処理装置のアドレス変換方式 | |
US8799621B2 (en) | Translation table control | |
US6275917B1 (en) | High-speed address translation system | |
EP0208428B1 (en) | Direct input/output in a virtual memory system | |
US4774653A (en) | Hybrid hardware/software method and apparatus for virtual memory address translation using primary and secondary translation buffers | |
JP3666689B2 (ja) | 仮想アドレス変換方法 | |
US5555395A (en) | System for memory table cache reloads in a reduced number of cycles using a memory controller to set status bits in the main memory table | |
EP0506236A1 (en) | Address translation mechanism | |
JPH05257803A (ja) | 仮想記憶空間管理方法及びアドレス計算装置 | |
JPH0816479A (ja) | メモリ・アドレス空間管理 | |
WO1985000451A1 (en) | Demand paging scheme for a multi-atb shared memory processing system | |
KR910001314B1 (ko) | 데이타 처리 시스템에서의 가상 메모리 사용방법 | |
JP2930071B2 (ja) | 情報処理装置およびプロセッサ | |
JP2768503B2 (ja) | 仮想記憶アドレス空間アクセス制御方式 | |
JPH04308953A (ja) | 仮想アドレス計算機装置 | |
JP4011871B2 (ja) | プロセッサ及びコンピュータシステム | |
JPS5858752B2 (ja) | アドレス変換装置 | |
JPS6237754A (ja) | 仮想拡張記憶方式 | |
JPS63245743A (ja) | メモリアクセス方式 | |
JPH0521256B2 (ja) | ||
JP2742245B2 (ja) | 並列計算機 | |
JPS62192832A (ja) | アドレス変換方式 | |
JPH02101552A (ja) | アドレス変換バッファ処理方式 | |
JPS62274351A (ja) | アドレス変換方法および装置 | |
JPH0447344B2 (ja) |