JPH06124233A - メモリ拡張方法 - Google Patents

メモリ拡張方法

Info

Publication number
JPH06124233A
JPH06124233A JP4300297A JP30029792A JPH06124233A JP H06124233 A JPH06124233 A JP H06124233A JP 4300297 A JP4300297 A JP 4300297A JP 30029792 A JP30029792 A JP 30029792A JP H06124233 A JPH06124233 A JP H06124233A
Authority
JP
Japan
Prior art keywords
bank
page
memory
physical
window
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
JP4300297A
Other languages
English (en)
Inventor
Kiyoshi Ito
清 伊藤
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.)
Oki Electric Industry Co Ltd
Original Assignee
Oki Electric Industry 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 Oki Electric Industry Co Ltd filed Critical Oki Electric Industry Co Ltd
Priority to JP4300297A priority Critical patent/JPH06124233A/ja
Publication of JPH06124233A publication Critical patent/JPH06124233A/ja
Pending legal-status Critical Current

Links

Landscapes

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

Abstract

(57)【要約】 【構成】 物理アドレス空間に設けた窓を通して複数の
バンクメモリをアクセスするバンク切替えメモリのメモ
リ拡張方法において、第1に、論理アドレスを窓のサイ
ズのブロックで分割する。第2に、論理アドレスのブロ
ック番号と、現在そのブロックが窓にあるか否かを示す
フラグと、論理アドレスのブロックとバンク切替えメモ
リのバンク番号との対応関係を示すテーブルとを設け
る。そして、論理アドレスの複数ページにまたがるよう
なプログラムを実行する場合、異なるブロックに移行す
る場合は、テーブルを参照してバンク切替えを行い、ま
た、テーブルを更新する。 【効果】 ユーザプログラムが複数のバンクにまたがる
ように格納されている場合でも、ユーザプログラムはバ
ンク切替えを意識する必要がない。

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明はバンク切替えメモリ上で
プログラムを実行させるためのメモリ拡張方法に関す
る。
【0002】
【従来の技術】メモリの物理アドレス空間以上のアドレ
ス空間を得る方法としてバンク切替えメモリによる方法
がある。図2に、バンク切替えメモリによるメモリ拡張
方法を示す。図において、1はメモリにおける物理アド
レス空間を示し、この物理アドレス空間の一部分を窓1
aと呼ばれるアドレス空間とする。そして、この物理ア
ドレス空間1とは別に、窓1aの大きさと各バンク0〜
nの大きさが等しいバンク切替えメモリ2を設け、ま
た、そのバンク切替えのためのバンク選択レジスタ3を
設ける。
【0003】このように構成されたバンク切替えシステ
ムは、窓1aのアドレスに対応する物理メモリを切替え
ることにより、物理メモリサイズを拡張する方法であ
り、バンク切替えメモリ2の切替えはバンク選択レジス
タ3に設定するバンク番号(0〜n)を切替えることに
より実施される。そして、このようなバンク切替え機能
は、パーソナルコンピュータ等の場合、ユーザプログラ
ムやデバイスドライバ等に開放されており、バンク切替
えシステムは、従来、RAM(ランダム・アクセス・メ
モリ)ディスクといったデータ格納域として用いられる
ことが多かった。
【0004】
【発明が解決しようとする課題】しかしながら、上記従
来のメモリ拡張方法では、以下の述べる理由からプログ
ラム実行用には適さなかった。 一つのプログラムが複数のバンク(0〜n)にまたが
るような格納方法とした場合、ユーザプログラムはバン
クを切替えるタイミングを掴むことができない。 上記の問題を解決するためには、プログラムを一つ
のバンクに入りきるようにする必要があり、従って、こ
れには窓1aのサイズを大きくする必要がある。しかし
ながら、このような場合、窓1aが物理アドレス空間1
を大きく占有してしまうといった別の問題点があった。
【0005】本発明は、上記従来の問題点を解決するた
めになされたもので、一つのプログラムを複数のバンク
にまたがって格納しても、ユーザプログラムがバンクの
切替えを意識しなくてもよい等、大きなプログラムでも
格納することのできるメモリ拡張方法を提供することを
目的とする。
【0006】
【課題を解決するための手段】本発明のメモリ拡張方法
は、物理アドレス空間に設けた窓を通してバンク切替え
メモリにアクセスし、複数のバンクの切替えを行うメモ
リ拡張方法において、論理アドレス空間を前記窓のサイ
ズとしたブロックで分割し、前記論理アドレス空間のブ
ロック番号と前記バンク切替えメモリにおけるバンク番
号との対応関係を示すテーブルを備え、前記論理アドレ
ス空間上で異なるブロックに移行する場合は、前記テー
ブルに基づき、バンク切替えを行うようにしたことを特
徴とするものである。
【0007】
【作用】本発明のメモリ拡張方法においては、論理アド
レスの複数のページ上にまたがるようなプログラムを実
行させる場合に、現在実行しているページから次のペー
ジに移行する時は、テーブルを参照する。テーブルを参
照して、先ず、以前マッピングされていたページの物理
ページ存在フラグを不在とし、かつ、そのページに対応
するバンク切替えメモリのバンク番号を設定する。そし
て、ページフォルトの発生したページの物理ページ存在
フラグを存在に設定し、窓の物理アドレスを設定する。
また、バンク選択レジスタの内容を以前マッピングされ
ていたページのバンク番号から現在の窓に存在するペー
ジのバンク番号に切替える。従って、実行しているプロ
グラムとしては、バンク切替えを意識する必要がない。
【0008】
【実施例】以下、本発明の実施例を図面を用いて詳細に
説明する。図1は本発明のメモリ拡張方法の実施例を示
すフローチャートであるが、これに先立ち、本発明のメ
モリ拡張方法の原理を説明する。本発明は、メモリ管理
のハードウェア機構(例えば、ページング方式またはセ
クメンテーション方式による仮想記憶機能)を用いて、
物理メモリサイズを拡張する方法である。尚、以下、ペ
ージング方式の場合を説明するが、セグメンテーション
方式の場合であっても同様に実現可能である。
【0009】通常、メモリ管理の仮想記憶機能は、小さ
い物理メモリを仮想的に大きく見せるために用いられる
が、本発明では、大きな物理メモリが物理アドレス空間
に入りきらないような場合を考えている。このような場
合に、大きな物理メモリをバンク切替え方式で物理アド
レス空間に配置し、メモリ管理の仮想記憶機能を用いて
論理アドレス空間上では、リニアで連続したメモリのよ
うに見せる方法である。
【0010】図3は、本発明のメモリ拡張方法を適用し
たコンピュータシステムの構成図である。図のシステム
は、中央処理装置(CPU)10、主記憶装置20、バ
ンク切替えメモリ30、キーボード40、ディスプレイ
50、磁気ディスク装置60、バス70からなる。
【0011】中央処理装置10は、バス70を介して各
部の制御を行うと共に、バンク選択レジスタ11、メモ
リ管理機構12を備えている。バンク選択レジスタ11
については図4において後述する。メモリ管理機構12
は、上述した仮想記憶機能を有する管理機構である。
【0012】主記憶装置20は半導体のランダム・アク
セス・メモリからなり、各種のデータやプログラムを一
時記憶すると共に、中央処理装置10の作業領域を構成
し、また、この主記憶装置20が物理アドレス空間を形
成している。この主記憶装置20にはテーブル21、例
外ハンドラ22が配置される。テーブル21は、論理ア
ドレスとバンク番号の関係等を示すテーブルであるが、
これについては図4で詳述する。例外ハンドラ22は、
プログラム実行中に例外割込みが発生した場合にこの割
込み処理を行う機能を有している。バンク切替えメモリ
30は、後述するように、複数のバンクで分割された半
導体メモリであり、ランダム・アクセス・メモリ等で構
成されている。また、キーボード40およびディスプレ
イ50はコンピュータシステムの入出力装置であり、磁
気ディスク装置60は、外部記憶装置としての機能を有
している。
【0013】図4に、自動バンク切替えの原理として、
アプリケーションプログラム(処理プログラム)の実行
に従って自動的にバンクを切替える方法を示す。図4に
おいて、80はユーザから見た仮想的な論理アドレス空
間で、3つのブロックとしてページ0、1、2に分割さ
れている。90は、メモリの実アドレス空間である物理
アドレス空間で、この物理アドレス空間の一部分に窓9
1が形成されている。また、30は、上述したように、
複数のバンク0〜nに分割されているバンク切替えメモ
リであり、各バンクの大きさと前記論理アドレス空間8
0の各ページとが、物理アドレス空間90の窓91の大
きさに一致している。
【0014】また、バンク選択レジスタ11は、現在、
物理アドレス空間90の窓91にどのバンクが存在して
いるかを示すレジスタである。そして、テーブル21
は、論理アドレス空間80のページ番号(ブロック番
号)と、そのページが物理アドレス空間90の窓91に
あるか否かを示す存在フラグと、論理アドレスの各ペー
ジと、窓91の物理アドレスあるいはバンク切替えメモ
リ30のバンク番号との対応関係を示すテーブルであ
る。
【0015】上記の図4は、バンク切替え動作の初期状
態を示しており、処理プログラムのページ0、1、2
は、それぞれバンク切替えメモリ30のバンク1、バン
ク3、バンク2の順に対応している。そして、この状態
では、処理プログラムのページ0のみ物理ページが存在
する状態になっている。また、論理アドレス空間80に
おける矢印81は、処理プログラムの実行する流れを示
している。
【0016】このような状態から、処理プログラムの実
行が論理アドレス空間80におけるA点に達すると、ペ
ージング方式のメモリ管理機構12により、例外が発生
する。すると、例外ハンドラ22に制御が渡り、例外ハ
ンドラ22はテーブル21の内容に基づいて、バンク選
択レジスタ11を設定すると共に、テーブル21の内容
を更新し、オンデマンドでバンク切替えを行う。
【0017】以下、例外ハンドラ22によるバンク切替
え動作を図1のフローチャートに沿って説明する。先
ず、例外ハンドラ22は、発生した例外の種類はページ
フォルトであるかを判定し(ステップS1)、ページフ
ォルト以外の例外であった場合は、その例外処理を行う
(ステップS2)。一方、ステップS1において、例外
の種類がページフォルトであった場合は、そのページフ
ォルトが、バンク切替えのためのページフォルトである
かを判定する(ステップS3)。このステップS3にお
いて、ページフォルトがバンク切替えのためのページフ
ォルトでなかった場合は、そのページフォルトに対応し
たページフォルト処理を行う(ステップS4)。また、
ステップS3において、バンク切替えのためのページフ
ォルトであった場合は、ステップS5〜ステップS7の
バンク切替え処理を行う。
【0018】バンク切替え処理において、例外ハンドラ
22は、最初に、以前にマッピングされていたページの
物理ページ存在フラグを“0”に設定し、窓91の物理
アドレスの部分に、対応したバンク番号を設定する(ス
テップS5)。例えば、図4の論理アドレス空間80に
おけるA点の場合、例外ハンドラ22は、テーブル21
の物理ページ存在フラグにおけるページ0を不在“0”
に変更する。次いで、例外ハンドラ22は、バンク選択
レジスタ11の内容を切替える(ステップS6)。例え
ば、上記A点の場合、バンク選択レジスタ11は“1”
から“3”に設定される。
【0019】また、例外ハンドラ22は、ページフォル
トの発生した物理ページ存在フラグを“1”に設定し、
窓91の物理アドレスを設定する(ステップS7)。例
えば、A点の場合は、テーブル21におけるページ1の
物理ページ存在フラグを“1”とし、窓91の物理アド
レスを設定する。このような操作により、ページ1のみ
物理メモリが存在する状態となる。
【0020】図5は、A点以降のバンク選択レジスタ1
1とテーブル21の状態を示す図である。即ち、バンク
選択レジスタ11にはページ1のバンク番号である
“3”が設定されており、テーブル21における物理ペ
ージ存在フラグはページ1のみが存在“1”となってい
る。
【0021】その後、例外ハンドラ22から処理プログ
ラムに戻ると、処理プログラムの実行が続行される。そ
して、処理プログラムがB点に達すると、上記A点の場
合と同様に例外が発生し、例外ハンドラ22が同様な処
理を行うことによってプログラムの実行を継続すること
ができる。
【0022】また、上記実施例では、バンク切替えメモ
リ30への窓91は、一つであったため、異なるバンク
が参照される度にバンク切替えが発生する。そこで、バ
ンク切替えメモリのハードウェアにバンク選択レジスタ
を複数備えることにより、窓の数を増すこともできる。
【0023】図6に、窓の数を複数とした例を示す。図
6の例は、物理アドレス空間900の窓901をn個と
したものである。そのため、バンク選択レジスタ110
はn個となっている。また、ここで、処理プログラムの
ための論理アドレス空間800をページ0〜ページx
(xは正の整数)とし、バンク切替えメモリ300のバ
ンク数をバンク0〜バンクy(yは正の整数)とした場
合(但し、y≧x>n)、テーブル210は、図に示す
ようになり、例えば上記実施例のようにページ0からペ
ージ1へ移行する場合でもバンク切替えは発生しない。
このように、窓901の数を複数個とすることにより、
バンク切替えが発生する頻度を少なくすることができ
る。
【0024】以上のように、上記各実施例では、メモリ
管理の仮想記憶機能を用いて論理アドレス空間上では連
続したメモリに見えるよう構成したので、例えば、イン
テル社 80386といった仮想アドレス機構を持った
CPUを用いたシステムにおいて、外部バスの幅に制限
がある場合(例えば、ISAバスでは16Mバイト)
に、バンク切替えメモリを用いて、バス幅を超える量の
物理メモリを実装し、それをあたかも連続したメモリで
あるかのように見せて処理プログラムを実行させること
ができる。
【0025】
【発明の効果】以上説明したように、本発明のメモリ拡
張方法によれば、論理アドレスを、物理アドレス空間に
おける窓のサイズと同様のサイズのブロックで分割し、
このブロック番号とバンクメモリのバンク番号との対応
関係を示すテーブルを備え、このテーブルを参照してバ
ンク切替えを行うよう構成したので、ユーザプログラム
がバンク切替えを意識しなくてもよく、大きなプログラ
ムであっても実行することができる等の効果がある。
【図面の簡単な説明】
【図1】本発明のメモリ拡張方法を示すフローチャート
である。
【図2】一般的なバンク切替えメモリによるメモリ拡張
方法の説明図である。
【図3】本発明のメモリ拡張方法を適用したシステムの
構成図である。
【図4】本発明のメモリ拡張方法におけるバンク切替え
の原理説明図である。
【図5】本発明のメモリ拡張方法におけるページ切替え
後の状態説明図である。
【図6】本発明のメモリ拡張方法における他の実施例の
説明図である。
【符号の説明】
11、110 バンク選択レジスタ 12 メモリ管理機構 21、210 テーブル 22 例外ハンドラ 30、300 バンク切替えメモリ 80、800 論理アドレス空間 90、900 物理アドレス空間

Claims (1)

    【特許請求の範囲】
  1. 【請求項1】 物理アドレス空間に設けた窓を通してバ
    ンク切替えメモリにアクセスし、複数のバンクの切替え
    を行うメモリ拡張方法において、 論理アドレス空間を前記窓のサイズとしたブロックで分
    割し、 前記論理アドレス空間のブロック番号と前記バンク切替
    えメモリにおけるバンク番号との対応関係を示すテーブ
    ルを備え、 前記論理アドレス空間上で異なるブロックに移行する場
    合は、前記テーブルに基づき、バンク切替えを行うよう
    にしたことを特徴とするメモリ拡張方法。
JP4300297A 1992-10-13 1992-10-13 メモリ拡張方法 Pending JPH06124233A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP4300297A JPH06124233A (ja) 1992-10-13 1992-10-13 メモリ拡張方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP4300297A JPH06124233A (ja) 1992-10-13 1992-10-13 メモリ拡張方法

Publications (1)

Publication Number Publication Date
JPH06124233A true JPH06124233A (ja) 1994-05-06

Family

ID=17883095

Family Applications (1)

Application Number Title Priority Date Filing Date
JP4300297A Pending JPH06124233A (ja) 1992-10-13 1992-10-13 メモリ拡張方法

Country Status (1)

Country Link
JP (1) JPH06124233A (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2025139598A1 (zh) * 2023-12-29 2025-07-03 浪潮(北京)电子信息产业有限公司 服务器的物理内存扩展架构、服务器、方法、设备及介质

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH01140253A (ja) * 1987-11-26 1989-06-01 Nec Corp バンクメモリ切換え制御方式

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH01140253A (ja) * 1987-11-26 1989-06-01 Nec Corp バンクメモリ切換え制御方式

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2025139598A1 (zh) * 2023-12-29 2025-07-03 浪潮(北京)电子信息产业有限公司 服务器的物理内存扩展架构、服务器、方法、设备及介质

Similar Documents

Publication Publication Date Title
US6658549B2 (en) Method and system allowing a single entity to manage memory comprising compressed and uncompressed data
US5751988A (en) Microcomputer with memory bank configuration and register bank configuration
EP1064600A2 (en) Interrupt/software-controlled thread processing
JP3970609B2 (ja) プロセッサシステム
JPS5821304B2 (ja) デ−タシヨリソウチ
JPH03147157A (ja) 情報処理装置
JP2585905B2 (ja) マルチタスク実行装置
JP3699003B2 (ja) データ処理装置および方法
JPS6269321A (ja) プロセススイツチ方式
JP2522248B2 (ja) 記憶装置アクセス機構
JPH02163834A (ja) マルチ・タスク処理方式
JPS6314242A (ja) メモリ拡張方式
JPH01318127A (ja) メモリ・バンクの切換方式
JPH06231038A (ja) メモリアドレス空間拡張装置
JPH039431A (ja) 割込み処理方式
JPS6031662A (ja) アドレス制御回路
JPH07141252A (ja) データ処理装置
JPH0477930A (ja) マイクロコンピュータ
JPH02307123A (ja) 計算機
JPH0724025B2 (ja) マルチレジスタセツト方式のマイクロコンピユ−タ
JPS6222149A (ja) プロセス切り換え方式
JPH0997185A (ja) 情報処理装置およびその方法
JPS63180171A (ja) 情報処理装置
JPH04165440A (ja) バンク切り換えによる動作モード変更装置
JPH0298744A (ja) 割込み処理方式

Legal Events

Date Code Title Description
A977 Report on retrieval

Effective date: 20061214

Free format text: JAPANESE INTERMEDIATE CODE: A971007

A131 Notification of reasons for refusal

Effective date: 20070116

Free format text: JAPANESE INTERMEDIATE CODE: A131

A02 Decision of refusal

Effective date: 20070724

Free format text: JAPANESE INTERMEDIATE CODE: A02