JPH05151085A - 仮想メモリ方式計算機システム用プロセツサ - Google Patents

仮想メモリ方式計算機システム用プロセツサ

Info

Publication number
JPH05151085A
JPH05151085A JP3312401A JP31240191A JPH05151085A JP H05151085 A JPH05151085 A JP H05151085A JP 3312401 A JP3312401 A JP 3312401A JP 31240191 A JP31240191 A JP 31240191A JP H05151085 A JPH05151085 A JP H05151085A
Authority
JP
Japan
Prior art keywords
address
virtual
conversion table
address conversion
processor
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.)
Withdrawn
Application number
JP3312401A
Other languages
English (en)
Inventor
Norichika Miyamoto
範親 宮本
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.)
Omron Corp
Original Assignee
Omron Corp
Omron Tateisi Electronics Co
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 Omron Corp, Omron Tateisi Electronics Co filed Critical Omron Corp
Priority to JP3312401A priority Critical patent/JPH05151085A/ja
Publication of JPH05151085A publication Critical patent/JPH05151085A/ja
Withdrawn legal-status Critical Current

Links

Landscapes

  • Memory System Of A Hierarchy Structure (AREA)

Abstract

(57)【要約】 【目的】 アドレス変換テーブルの内容更新に際して無
駄な更新が生じないようにでき、プログラムの実行を切
り換える際のオーバヘッドを軽減し、資源の高級化を必
要とせずに既存のシステムとの互換性を保って仮想メモ
リ方式計算機システムの動作効率を向上すること。 【構成】 仮想メモリ方式に於て仮想アドレスを物理ア
ドレスに変換するアドレス変換テーブルを有する仮想メ
モリ方式計算機システム用プロセッサに於て、アドレス
変換テーブル15を複数個の領域に分割し、分割された
領域毎に個別にテーブル操作されるよう構成する。アド
レス変換テーブル15は、分割された領域毎に更新操作
を行われ得るようになり、指定された仮想アドレス空間
の領域毎にアドレス変換テーブルを指定され、本当に無
効になる仮想アドレス空間のアドレス変換の際に必要と
なるデータのみを無効とされる。

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明は、仮想メモリ方式計算機
システム用プロセッサに関し、特に直接変換テーブルを
用いる仮想メモリ方式計算機システム用プロセッサに関
するものである。
【0002】
【従来の技術】直接変換テーブルを用いる仮想メモリ方
式計算機システムのプロセッサは、メモリ管理機構とし
て、仮想アドレスを物理アドレスに変換するアドレス変
換テーブルをハードウェア構成により内蔵している。
【0003】上述の如き仮想メモリ方式計算機システム
に於いては、仮想メモリを取り扱うプロセッサが仮想ア
ドレスから物理アドレスに変換する度にアドレス変換テ
ーブルのデータを検索するから、このデータの検索時間
がアドレス変換の効率を左右する。
【0004】従来のプロセッサのアドレス変換テーブル
は、仮想アドレスをキーとして物理アドレスを管理し、
その全ての仮想アドレス空間に亘って一個のアドレス変
換テーブルとして取り扱われている。
【0005】アドレス変換テーブルの内容は、各プログ
ラムが個々の仮想アドレス空間内アドレスをもって生成
される都合上、各プログラム間にて物理アドレスが重複
しないよう、プログラムの実行が切換えられる際に、オ
ペレーティングシステムにより無効にされる必要があ
り、アドレス変換テーブルは全ての仮想アドレス空間に
亘って一個のアドレス変換テーブルとして取り扱われて
いるから、このアドレス変換テーブルの内容は、プログ
ラムの実行が切換えられる際に、全て無効にされてい
る。
【0006】
【発明が解決しようとする課題】上述の如きアドレス変
換テーブルの更新操作では、ライトウェイト(ligh
t−weight)型のプログラミングモデルのシステ
ムを構築する場合、プログラムの実行環境を切換える時
に有効なデータをも無効にする場合が生じることがあ
る。
【0007】たとえば、同一プログラムを複数のライト
ウェイトプロセスが実行する場合、同じプログラム上で
動作しているプロセス間で実行権が切換えられる時に
は、プログラムの実行命令がある仮想アドレス空間のア
ドレス変換テーブルの内容を無効にする必要はなく、各
ライトウェイトプロセスに割り当てられている仮想アド
レスに対応するアドレス変換テーブルの内容だけを無効
にすればよい。
【0008】換言すれば、データ共有型プログラムに於
ては、共有データ部分の内容は無効にされる必要はな
い。
【0009】これに対し、現状のプロセッサが提供して
いるアドレス変換テーブルに関する操作には、特定の仮
想アドレスを無効にする機能はあるが、あるまとまった
範囲のアドレス空間に対応するアドレス変換テーブルの
内容を無効にする機能はない。このため、ライトウェイ
ト型のプロセスを切換える際、アドレス変換テーブルの
内容の更新に無駄が発生し、これはシステムの動作効率
を低下させる原因になる。
【0010】本発明は、従来のアドレス変換テーブルを
有する仮想メモリ方式計算機システム用プロセッサに於
ける上述の如き問題点に着目してなされたものであり、
アドレス変換テーブルの内容更新に際して無駄な更新が
生じないようにでき、プログラムの実行を切り換える際
のオーバヘッドを軽減し、資源の高級化を必要とせずに
既存のシステムとの互換性を保って仮想メモリ方式計算
機システムの動作効率を向上する仮想メモリ方式計算機
システム用プロセッサを提供することを目的としてい
る。
【0011】
【課題を解決するための手段】上述の如き目的は、本発
明によれば、仮想メモリ方式に於て仮想アドレスを物理
アドレスに変換するアドレス変換テーブルを有する仮想
メモリ方式計算機システム用プロセッサに於て、前記ア
ドレス変換テーブルが、複数個の領域に分割され、分割
された領域毎に個別にテーブル操作されるよう構成され
ていることを特徴とする仮想メモリ方式計算機システム
用プロセッサによって達成される。
【0012】
【作用】上述の如き仮想メモリ方式計算機システム用プ
ロセッサに於いては、プロセッサが内蔵しているアドレ
ス変換テーブルを、ユーザが任意に分割し、各々に仮想
アドレスの領域の割り当てができるインタフェースを備
えたメモリ管理機構が提供されればよく、指定されたア
ドレスに対応するアドレス変換のためのデータは、ユー
ザが指定したアドレス変換テーブルに格納される。
【0013】これによりアドレス変換テーブルは、分割
された領域毎に更新操作を行われ得るようになり、指定
された仮想アドレス空間の領域毎にアドレス変換テーブ
ルを指定され、本当に無効になる仮想アドレス空間のア
ドレス変換の際に必要となるデータのみを無効とされ
る。このことにより有効な仮想アドレス空間のアドレス
変換の際に必要となるデータを保存でき、複数のライト
ウェート型プログラミングモデルのシステムに於いて、
仮想アドレス空間を共有しているプログラムを実行する
場合、プログラムの実行を切換える際に発生するオーバ
ヘッドが軽減される。
【0014】
【実施例】以下に添付の図を参照して本発明を実施例に
ついて詳細に説明する。
【0015】図1は本発明による仮想メモリ方式計算機
システム用プロセッサの一実施例を示している。仮想メ
モリ方式計算機システム用プロセッサは、プログラムカ
ウント部1とアドレス/データ部2とを含む実行ユニッ
ト3と、メモリ管理ユニット4とを有している。メモリ
管理ユニット4は仮想アドレスを物理アドレスに変換す
るアドレス変換テーブル5を有している。アドレス変換
テーブル5は、仮想アドレスをキーとして物理アドレス
を管理するものであり、図2に例示されている如く、仮
想アドレス部と物理アドレス部とを有し、更に属性情報
の有無を示す部分と備えている。
【0016】実行ユニット3にはデータバス6と命令バ
ス7とデータアドレスバス8とが接続されており、デー
タバス6と命令バス7はバス切替部9により物理アドレ
スバス10と論理アドレスバス11の何れかに選択的に
切替接続されるようになっている。
【0017】命令バス7には命令キャシュ12が接続さ
れ、データアドレスバス8にはデータキャシュ13が接
続されている。
【0018】物理アドレスバス10はアドレスパッド1
4に直接接続され、実行ユニット3よりの物理アドレス
は物理アドレスバス10によりアドレスパッド14へ直
接伝送されるようになっている。
【0019】論理アドレスバス11はメモリ管理ユニッ
ト4に接続され、実行ユニット3より論理アドレスバス
11を介してメモリ管理ユニット4に入力される論理ア
ドレス、即ち仮想アドレスは、メモリ管理ユニット4の
アドレス変換テーブル5により物理アドレスに変換さ
れ、物理アドレスバス15によりアドレスパッド14へ
伝送されるようになっている。
【0020】メモリ管理ユニット4は制御信号バス16
により実行ユニット3よりアドレス変換テーブル5の操
作に関する命令を与えられ、システムの初期化時に、図
2に例示されている如き特定の仮想アドレス空間の領域
のアドレス変換に使用されるアドレス変換テーブル5を
生成するようになっている。
【0021】図3はメモリ管理ユニット4のアドレス変
換テーブル5によるアドレス変換時の処理フローを示し
ている。この処理フローは、アドレス変換が必要、ある
いはアドレス変換テーブルの情報が必要な場合に実行さ
れ、この処理フローに於いては、先ずアドレス変換テー
ブル5に仮想アドレス変換に必要なデータがあるか否か
の判別を行う(ステップ10)。
【0022】アドレス変換テーブル5に仮想アドレス変
換に必要なデータがある場合は、そのアドレス変換テー
ブル5より仮想アドレスに対応する物理アドレスを取り
出すことが行われる(ステップ20)。
【0023】アドレス変換テーブル5に仮想アドレス変
換に必要なデータがない場合は、メモリに於けるページ
テーブルを検索し(ステップ30)、検索したページテ
ーブルよりアドレス変換に必要なデータをアドレス変換
テーブル5に取り込り、ステップ10に戻ることが行れ
る(ステップ40)。
【0024】アドレス変換テーブル5は、プログラムを
配置した領域をアドレス変換するためのアドレス変換テ
ーブル部5aと、プログラムの実行に必要とする領域を
アドレス変換するためのアドレス変換テーブル部5bと
に区分される。
【0025】この場合、プログラムを配置した領域はプ
ログラムを外部メモリより内部メモリに配置ある領域で
あり、プログラムの実行に必要とする領域はロードされ
たプログラムをプロセッサが実行する際に必要とされる
作業領域であり、この作業領域は、スタック、タスクの
切換時にプロセッサの情報を格納する領域であってオペ
レーションシステムが提供する実行単位固有の領域であ
り、例えば或るプログラムを複数のライトウェイトプロ
セスと呼ばれる実行にて実行するプログラミングモデル
に於いて、ライトウェイトプロセスの実行時に必要とさ
れる各ライトウェイトプロセス固有の領域である。
【0026】アドレス変換テーブル5の分割領域は、シ
ステムの初期化時にシステムに提供する仮想アドレス空
間に応じて決定され、図2に於いては、4Gバイトの仮
想アドレス空間を提供するシステムに於いて、アドレス
変換テーブル部5aは0Gバイトより3Gバイトまでの
仮想アドレス空間のためのアドレス変換テーブルとさ
れ、アドレス変換テーブル部5bは3Gバイトより4G
バイトまでの仮想アドレス空間のためのアドレス変換テ
ーブル部5bとされている。
【0027】アドレス変換テーブル5は仮想アドレスの
ビットパターンに従って上述の如く分割され、変換され
る仮想アドレスは、そのビットパターンと一致するアド
レス変換テーブルの情報により変換され、あるいはその
テーブルの情報を更新する。
【0028】アドレス変換テーブル部5bを無効とする
場合は、システム初期化時の指定値、あるいは命令結果
としての返値により、アドレスのビットパターンを指定
して、その内容を無効になる命令が発行される。
【0029】アドレス変換テーブル5の分割をプロセッ
サに指示するインタフェースとしては、例えば、atc
div、value、レジスタが与えられ、value
はアドレス変換テーブルを分割するためのデータレジス
タであり、この命令が実行されることによりアドレス変
換テーブルが分割される。以後、この分割されたテーブ
ルの操作、例えばテーブルの内容を無効するなどは、こ
のレジスタに対して行われる。このレジスタの個数とし
て2〜4個程度、必要である。
【0030】valueとして与えるデータのフォーマ
ットは図4に示されている。
【0031】valueとして与えるデータのフォーマ
ットとうち、仮想アドレスベースはアドレス変換テーブ
ルを仮想アドレスのビットパターンに従って分割する場
合に、その仮想アドレスのパターンの一部として与えら
れ、仮想アドレスのベースアドレスである。このビット
パターンは、32ビットで表されるアドレスのうち、上
位8ビットに関するものである。仮想アドレス空間の分
割は、16MB単位で行われることになる。
【0032】仮想アドレス空間のサイズは仮想アドレス
のビットパターンの一部として与えられ、仮想アドレス
ベースで始まる領域のサイズを指定するもので、これは
16MB単位での個数である。
【0033】アドレス変換テーブルの個数は、仮想アド
レスベースと仮想アドレス空間のサイズとで指定された
仮想アドレスパターン毎にアドレス変換テーブルを分割
する場合に於いて、前記仮想アドレスパターンに一致す
る領域のアドレス変換のためのテーブルのエントリの数
を指定するものである。
【0034】属性情報は、プロテクト情報など、分割さ
れるアドレス変換テーブルの属性情報である。
【0035】図5はアドレス変換テーブルを分割する処
理フローを示している。この処理フローに於いては、先
ずアドレス変換テーブルに登録される仮想アドレスのビ
ットパターン、分割されるアドレス変換テーブルのサイ
ズを与え(ステップ100)、次に本来のアドレス変換
テーブルを、ステップ100にて指定された仮想アドレ
スパターンをもつアドレスを変換するためのアドレス変
換テーブルとその他のものとに分割する(ステップ11
0)。
【0036】図6は仮想アドレスベースと仮想アドレス
空間のサイズとを解図的に示している。この場合、プロ
セッサは仮想アドレス空間のサイズにより画定された領
域Aのアドレス変換に必要な情報をアドレス変換テーブ
ル5のB領域に更新する。これにより仮想アドレス空間
の領域Aをアドレス変換するのに必要な情報を格納する
ために使用されるアドレス変換テーブル5の領域がB領
域となる。
【0037】例えば、同一のプログラムを複数のライト
ウェイトプロセスと呼ばれる実行の単位にて実行するプ
ログラミングモデルでは、タスクの切換時に同一プログ
ラムを実行しているライトウェイトプロセス間で実行権
の委譲が発生する。この場合、従来ではアドレス空間全
てを切換える必要があり、アドレス変換テーブル5のア
ドレス変換テーブル部5a、5bに対応するすべてのエ
ントリを無効にすることなるが、上述の如き本発明によ
る仮想メモリ方式計算機システム用プロセッサに於いて
は、アドレス変換テーブル部5bの領域に対応するアド
レス変換テーブルのエントリだけを無効にすればよい。
この結果、アドレス変換テーブル部5aの情報が引続き
有効に利用される。
【0038】
【発明の効果】以上の説明から理解される如く、本発明
による仮想メモリ方式計算機システム用プロセッサによ
れば、ドレス変換テーブルは、分割された領域毎に更新
操作を行われ得るようになり、指定された仮想アドレス
空間の領域毎にアドレス変換テーブルを指定され、本当
に無効になる仮想アドレス空間のアドレス変換の際に必
要となるデータのみを無効とされることより、有効な仮
想アドレス空間のアドレス変換の際に必要となるデータ
を保存でき、複数のライトウェート型プログラミングモ
デルのシステムに於いて、仮想アドレス空間を共有して
いるプログラムを実行する場合、アドレス変換テーブル
の内容更新に際して無駄な更新が生じなくなり、プログ
ラムの実行を切り換える際のオーバヘッドが軽減され、
資源の高級化を必要とせずに既存のシステムとの互換性
を保って仮想メモリ方式計算機システムの動作効率が向
上する。
【図面の簡単な説明】
【図1】本発明による仮想メモリ方式計算機システム用
プロセッサの一実施例を示すブロック線図。
【図2】本発明による仮想メモリ方式計算機システム用
プロセッサに於けるブロッメモリ管理ユニットのアドレ
ス変換テーブルの一例を解図的に示す説明図。
【図3】メモリ管理ユニットのアドレス変換テーブルに
よるアドレス変換時の処理フローの一例を示すフローチ
ャート。
【図4】アドレス変換テーブル5の分割を行うめにva
lueとして与えるデータのフォーマット例を示す説明
図。
【図5】アドレス変換テーブルを分割する処理フローの
一例を示すフローチャート。
【図6】仮想アドレスベースと仮想アドレス空間のサイ
ズとを解図的に示す説明図。
【符号の説明】
3 実行ユニット 4 メモリ管理ユニット 5 アドレス変換テーブル 9 バス切替部 12 命令キャシュ 13 データキャシュ 14 アドレスパッド

Claims (1)

    【特許請求の範囲】
  1. 【請求項1】 仮想メモリ方式に於て仮想アドレスを物
    理アドレスに変換するアドレス変換テーブルを有する仮
    想メモリ方式計算機システム用プロセッサに於て、 前記アドレス変換テーブルが、複数個の領域に分割さ
    れ、分割された領域毎に個別にテーブル操作されるよう
    構成されていることを特徴とする仮想メモリ方式計算機
    システム用プロセッサ。
JP3312401A 1991-11-27 1991-11-27 仮想メモリ方式計算機システム用プロセツサ Withdrawn JPH05151085A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP3312401A JPH05151085A (ja) 1991-11-27 1991-11-27 仮想メモリ方式計算機システム用プロセツサ

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP3312401A JPH05151085A (ja) 1991-11-27 1991-11-27 仮想メモリ方式計算機システム用プロセツサ

Publications (1)

Publication Number Publication Date
JPH05151085A true JPH05151085A (ja) 1993-06-18

Family

ID=18028802

Family Applications (1)

Application Number Title Priority Date Filing Date
JP3312401A Withdrawn JPH05151085A (ja) 1991-11-27 1991-11-27 仮想メモリ方式計算機システム用プロセツサ

Country Status (1)

Country Link
JP (1) JPH05151085A (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5924127A (en) * 1995-09-19 1999-07-13 Hitachi, Ltd. Address translation buffer system and method for invalidating address translation buffer, the address translation buffer partitioned into zones according to a computer attribute

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5924127A (en) * 1995-09-19 1999-07-13 Hitachi, Ltd. Address translation buffer system and method for invalidating address translation buffer, the address translation buffer partitioned into zones according to a computer attribute

Similar Documents

Publication Publication Date Title
US5123094A (en) Interprocessor communications includes second CPU designating memory locations assigned to first CPU and writing their addresses into registers
KR920004400B1 (ko) 가상계산기시스템
US4577274A (en) Demand paging scheme for a multi-ATB shared memory processing system
US10353826B2 (en) Method and apparatus for fast context cloning in a data processing system
US5619671A (en) Method and apparatus for providing token controlled access to protected pages of memory
US20020065989A1 (en) Master/slave processing system with shared translation lookaside buffer
JPH11232173A (ja) ローカルメモリに組み込んでいるリモートキャッシュとcc−NUMA(キャッシュ整合型の不均一メモリアクセス)アーキテクチュアを有するデータ処理システム
JPS61141055A (ja) 情報処理装置のアドレス変換方式
JPH0816536A (ja) マルチプロセッサシステム
JPH0340046A (ja) キャッシュメモリ制御方式および情報処理装置
EP3830700A1 (en) Memory protection unit using memory protection table stored in memory system
JP2001051900A (ja) 仮想計算機方式の情報処理装置及びプロセッサ
CN101004715B (zh) 地址转换器和地址转换方法
US5440708A (en) Microprocessor and storage management system having said microprocessor
JPH07248967A (ja) メモリ制御方式
KR101102260B1 (ko) 가상 어드레스 캐시 및 고유 태스크 식별자를 이용하는데이터를 공유하기 위한 방법
JPH05151085A (ja) 仮想メモリ方式計算機システム用プロセツサ
US5333289A (en) Main memory addressing system
JPH0721781B2 (ja) マルチプロセツサ・システム
JPH04311233A (ja) アドレス変換装置
JPS6349945A (ja) デ−タ処理装置のプロセス・ロ−ルイン方式
JPS5847784B2 (ja) キ−記憶システム
EP1262875A1 (en) Master/slave processing system with shared translation lookaside buffer
EP1262876B1 (en) Multiprocessing system with shared translation lookaside buffer
JP2742245B2 (ja) 並列計算機

Legal Events

Date Code Title Description
A300 Withdrawal of application because of no request for examination

Free format text: JAPANESE INTERMEDIATE CODE: A300

Effective date: 19990204