JPS603656B2 - 計算機のメモリ拡張方式 - Google Patents

計算機のメモリ拡張方式

Info

Publication number
JPS603656B2
JPS603656B2 JP7990677A JP7990677A JPS603656B2 JP S603656 B2 JPS603656 B2 JP S603656B2 JP 7990677 A JP7990677 A JP 7990677A JP 7990677 A JP7990677 A JP 7990677A JP S603656 B2 JPS603656 B2 JP S603656B2
Authority
JP
Japan
Prior art keywords
address
register
instruction
mapping
space
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
Application number
JP7990677A
Other languages
English (en)
Other versions
JPS5414635A (en
Inventor
泰 福永
忠秋 坂東
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.)
Hitachi Ltd
Original Assignee
Hitachi 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 Hitachi Ltd filed Critical Hitachi Ltd
Priority to JP7990677A priority Critical patent/JPS603656B2/ja
Publication of JPS5414635A publication Critical patent/JPS5414635A/ja
Publication of JPS603656B2 publication Critical patent/JPS603656B2/ja
Expired legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/0223User address space allocation, e.g. contiguous or non contiguous base addressing
    • G06F12/0292User address space allocation, e.g. contiguous or non contiguous base addressing using tables or multilevel address translation means

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)

Description

【発明の詳細な説明】 本発明はマッピング方式になる計算機のメモリ拡張方式
、特に、メモリ拡張の過程を簡便にしてなる計算機のメ
モリ拡張方式に関する。
計算機のメモリ拡張方式とは、論理アドレス空間と物理
アドレス空間とがメモリエリア的に不平衡の場合、両者
のアドレスを対応ずける技術である。
一般的にみてマイクロコンピュータやミニコンピュータ
では、論理アドレス空間が物理アドレス空間よりもメモ
リエリア的に4・さし、。従って、こうした場合のメモ
リ拡張方式とは、論理アドレス空間をいかに物理アドレ
ス空間に対応ずけるかが問題となる。かかる時点でメモ
リ拡張方式が採用される。メモリ拡張方式の代表的なも
のにマッピング方式がある。このマツピング方式は、複
数個のマッピングレジスタを備え、該マツピングレジス
タにマツピング用アドレスをセットしておき、拡張時に
このマッピング用アドレスを活用しようとするものであ
る。以下、詳述しよう。第1図は、マッピング方式にな
るメモリ拡張方式のハード構成を示す図である。論理ア
ドレスレジスタ11には論理アドレスが設定される。こ
の論理アドレスの中で、上位mビットが、複数個のマツ
ピングレジスタより成るマッピングレジスタ群12の特
定のマッピングレジスタを選択できるように設定されて
いる。下位nビットが物理アドレス空間上の実際のアド
レスの一部を指定するようになっている。各マッピング
レジスタには、マッピング用アドレスが設定されている
。論理アドレスレジスタ11上の上位mビットによって
そのmビットの示す内容に従ってマッピングレジスタ群
12の中の一つのマツピングレジスタが選択される。
この選択されたレジスタの内容としジスタ11の下位n
ビットの内容とが加算部14で加算され、その結果が物
理アドレスレジスタ13の中にセットされる。このセッ
トされた内容が物理アドレスとなる。尚、加算するに際
しては、マッピングレジスタの内容とnビットの内容と
を並置させるだけのやり方もあれば、両者をある程度オ
ーバーラップさせ実際の加算を行うやり方もある。従っ
て、両者と後者とでは、加算の持つ意味合いは違ってく
る。第2図は論理アドレス空間21と物理アドレス空間
22との実際のアクセス関係を示す図である。図から明
らかなように、論理アドレス空間21のエリアは、物理
アドレス空間のエリアよりも小さい。特に図では、論理
アドレス空間21を6巡W、物理アドレス空間22をI
MWとしている。かかる状態の中で、論理アドレス空間
21が物理アドレス空間22を最大値アクセス可能な状
態を考えると、物理アドレス空間22への最大アクセス
空間は、論理アドレス空間21の空間そのものの容量と
なる。
図では、物理アドレス空間22の中で斜線部を除いた部
分がこれを示している。従って、問題は、斜線部をアク
セスする場合どうするかということである。一例として
、論理アドレス空間の指示している物理アドレスがAで
あり、このアドレスAの代りに先頭アドレスがBであっ
て、データCが記憶されてなるエリアを新たにアクセス
する場合を想定しよう。尚、第2図をマッピングレジス
タとの関係で説明すれば、マッピングされた結果が、即
ち物理アドレスレジスター3にセットされた値が、物理
アドレス空間22上のアドレス指示となっている。新た
にデータCのあるエリアをアクセスする場合、先ず、A
を指示するマツピングレジスタではAを一担、一時的に
このレジスタから他のエリアへ退避する。
次いで、該マッピングレジスタへBをセットする。この
後で、セットされたBに従って、データCがアクセスさ
れる。アクセス完了後、再び、先に一時的に退避したA
を元のマツピングレジスタにセットする。以上の操作は
、プログラムによって行われる。このプログラムの一例
を第3図に示す。第3図に於いてマップレジス夕のうち
の一つにアドレスAを示す値が入っていたとすると、ま
ず最初にレジスタの値を記憶するSTR命令(STor
eRegster)により、マップレジスタの内容Aを
一時退避エリアに入れる。
次にレジスタの値をセットするLDR命令(LoaDR
egister)によって、Bをマップレジスタに入れ
る。これによりエリア23の代わりに、エリア24がア
クセス可能となる。次にアキュムレータにデータを取り
込むLD命令(山ad)によりCのデータを取り込む。
マッピングレジスタの内容は元へ戻しておかねばならな
いのでLDR命令により一時退避エリアに入れておいた
Aを元へ戻す。D、Eのデータ書き込み、取り込みが必
要な場合も同様にして、マッピングレジスタの内容を書
き換えねばならない。
こういった状況は第4図に示すように、オペレーティン
グシステムが動作する論理空間41と、タスクの存在す
る論理空間42が異なる場合、矢印で示すような相互の
パラメータ受け渡し時によく起こることである。
そしてそのパラメータが存在しているアドレスがいろい
ろな所に分散している場合、一つのパラメータをとり込
むごとにマツピングレジスタの内容を変更しなければな
らず、マッピングレジスタ切り換え時のオーバーヘッド
が大きいという欠点がある。本発明の目的は、物理アド
レスでも直接アクセス可能なようにして拡張物理空間へ
のアクセスを柔軟にしてなる計算機のメモリ拡張方式を
提供するものである。
本発明では、物理アドレスを論理アドレスから作るので
はなく、命令により、物理アドレスを直接生成可能なよ
うにしたものである。
従って、本発明によれば、マッピング機能と共に併用す
ることによってマッピング機能の事実上の能力増大を達
成できる。以下、図面により本発明を詳述しよつo第5
図イ,口は本発明で使用される新規な命令のデータ構造
と従来の命令のデータ構造とを示したものであり、イ図
が本発明で使用される物理アドレスでアクセス可能な命
令を示し、口図が従来使用されている論理アドレスでア
クセス可能な命令を示している。
いずれも、最語命令(例えば16ビットを1ワードとし
て、32ビット2ワード構成)を示している。OP部5
1は命令コードを指定する。
またB部52、×部53はそれぞれベースレジスタ指定
、インデックスレジスタ指定部で、命令の実効アドレス
は上記二つのレジスタの値により、修飾される。ADD
R部57は、アドレス指定フィールドで、論理アドレス
空間をアドレス可能なようになっている。以上のフィー
ルドは、物理アドレスによるアクセス、論理アドレスに
よるアクセス共に共通なフィールドである。両者で異っ
ている点はコード60とコード58である。コード60
、即ちEXADDR部601ま物理アドレス空間までア
ドレス可能とするための拡張アドレス部で、物理アドレ
スによるアクセスでは、本フィールドとADDR部でも
つて物理アドレスの全エリアをアドレスできる。論理ア
ドレスによるコード58を使用するアクセス命令は、本
フィールドKを別の意味、たとえば、分岐命令の条件指
定や、拡張命令コードとして使用できる。物理アドレス
によるアクセス命令の使用過程、及び、その命令発行時
の物理アドレス生成をハードウェア構成の面からソフト
ウェアとかみ合せて以下で説明する。
第4図に示すように、オペレーティングシステムの論理
空間41と、タスク空間の論理空間42とにオーバーラ
ップがない場合、たとえばタスクが入出力要求を発行し
た場合、その入出力のデータアドレス、データカウント
数、入出力機器のアドレス、転送終了時の入出力の状態
格納部等のパラメータは、タスク空間上にあり、オペレ
ーティングシステム動作空間からは直俊論理アドレスで
はアクセスできない。
そこで、物理空間全体のアクセスが必要となる。今、論
理アドレス空間を16ビット64KW、物理アドレス空
間を20ビットIMWとすると、物理アドレス生成のハ
ードウェア構成は第6図のようになる。
先ず、命令の実行にあたっては、メモリ66からメモリ
データバスMDBを介して読み出された16ビットの命
令語がファンクションレジスタ50にセットされる。
この命令語は第5図イの長語命令の中での第1ワードー
こ相当する。一方、第5図イの長語命令の中での第2ワ
ードのADDRはアドレス指定部としてアドレス指定レ
ジスタ57にセットされる。ファンクションレジスタ5
0‘こ記憶された命令の中で、OP部51は命令デコー
ダ65により解読され、その命令に従った処理への分岐
を指示する。
今の場合、第5図イの命令を読み出したため、物理アド
レスによるアクセス命令が解読され、このアクセス命令
を示す信号PAl(Ph$icaIAccessIns
tructionの略)が出力され、後述するアドレス
セレクタ63に送られ、アドレス選択用に供される。一
方、OP51の解読と同時に、命令実行のデータ納入部
を指定する実効アドレスが計算される。
一般に、長講命令による実効アドレスEAは次のように
なる。EA=(B)十(×)十ADDR・・・・・・・
・・・・・・・・‘11但し、上記物理アドレスによる
アクセス命令では拡張アドレス指定部EXADDRを併
せた形で実効アドレスを求めている。
この実効アドレスの算出はしジスタフアィル67と実効
アドレス演算部61を介して行っている。この演算部6
1の演算結果は、一時記憶レジスタ62に記憶される。
実効アドレスを算出する具体例を述べよう。拡張アドレ
ス指定部EXADDR4ビット、ADDR部16ビット
の20ビットデータと、B部、×部で指定される16ビ
ットのデータの演算を行って実効アドレスを求めること
になる。この結果は、一時記憶レジスタ62に記憶され
る。一方、論理アドレスによるアクセス命令では、従釆
と全く同様にして一時記憶レジスタ62に論理アドレス
がセットされる。
この時の一時記憶レジスタ62の中で、上位4ビットは
下位16ビットLAの算出(命令拡張部Kを利用)過程
で生じたキャリーを含むものであり、アドレス生成には
全く関与しない。論理アドレスLAの上位ビットはマツ
ピングレジスタ群12のマツピングレジスタを指定して
いる。この結果、指定されたマッピングレジス夕の内容
と論理アドレスLAの下位ビットとが加算部14で加算
され、物理アドレスが生成され、セレクタ63に送られ
る。次に、セレクタ63の働きを説明しよう。
セレク夕63は、デコーダ65の出力PAlによって制
御される。物理アドレスによるアクセス命令の場合には
、一時記憶レジスタ62に一時記憶されてなるデータ、
即ち先に算出した実効アドレスを取り込み、論理アドレ
スによるアクセス命令の場合にはマツピングによって拡
張されて得られるデータ、即ち、加算部14を介して得
られる拡張された物理アドレスを取り込む。即ち、本発
明の物理アドレスによってアクセスされるアクセス命令
の際には、マッピング機構を使用することなく、拡張さ
れたアドレスが生成可能となる。以上の動作説明と若干
重複するが、以下で簡単に述べよう。
今、物理アドレスによって直接メモリをアクセスする命
令が実行された場合、実効アドレス演算回路61はEX
ADDR部60とADDR部56を一連の20ビットの
アドレス情報とし、それにインデックスレジスタ、ベー
スレジスタの値を修飾して実効アドレスを求める。
セレクタ63は一時記憶レジスタ側を選択しているため
、求められた実効アドレスがそのまま物理アドレスとし
て主記憶に送られる。一方、実行する命令が、論理アド
レスによるアクセスである場合は、命令語のEXADD
R部にあたる部分とADDR部57により実効アドレス
演算部61を用いて20ビットのアドレス情報は一時記
憶レジスタ62に与えられるが、物理アドレスとしては
、マツピングによって拡張されたアドレス出力側がセレ
クタ63により選択されているため、一時記憶レジスタ
の上位4ビットは無視され下位16ビットのみが論理ア
ドレスとして使用される。
このため、論理アドレスによるアクセス方式をとる場合
の命令フオーマット中、EXADDR部にあたる部分は
、アドレス情報には反映されず、まったく別の意味を持
つフィールドとして使用可能である。以上の本発明によ
れば、前記した割込み処理時のパラメータの転送は第7
図に示すフローにより実行できる。
このことを、第2図の事例に即して説明しよう。第2図
に於いて、デ−タCとしては入出力のアドレス、データ
カウント数がセットされており、データDとしては入出
力機器のアドレスがセットされており、データEとして
は転送終了時の入出力の状態格納がセットされるものと
する。今、フロー100‘こよるタスク実行に伴って、
タスクからの1/0要求が出されると、マップ内容は第
2図の物理アドレス空間のうち、白くぬかれた部分しか
アクセスできないようになる。
そこでCのデータの取込み、Dのデータの取込み、Eへ
のデータ書込みに対しては、論理アドレスによるアクセ
スに代って物理アドレスによるアクセス命令が使用され
る。この間の過程がフロ−101,102である。以後
はフロー103,104,105,106を通して処理
される。たとえば、Cのデータ取込に対しては、物理ア
ドレスによるデータのロード命令、これをLOP命令(
論理アドレスによるロード命令LDと異なる)とすると
、そのEXADDR部、及びADDR部でCのデータの
入っているエリア(セグメント)の先頭番地Bが指示さ
れ、ベースレジス夕、インデックスレジスタのどちらか
で、Cのデータまでの変位が指定されれば、LDP命令
によってCのデータすなわち、入出力のデータアドレス
、データカウント数が、マップの内容を変更することな
く、処理装置に取込むことができる。
○のデータの取込に対しても、同じLDP命令によって
、データの取込が可能である。
また1/0転送終了時のステータス情報については、物
理アドレスによる、データのメモリへのストア命令を、
STP命令(論理アドレスによるストア命令STと異な
る)とすると、同じように、STP命令のEXADDR
部、ADDR部で、Eのデータのあるセグメントの先頭
アドレス、及び、その先頭アドレスからの変位を指定す
れば、Eにステータス情報の書込が可能となる。これよ
り、本発明によれば、論理アドレスで動作しているプロ
グラムから、直接物理アドレスでデータのアクセスが可
能となるので、マツピングレジスタの内容を書き換える
ことなく、物理空間上のあらゆるアドレスをアクセスで
き、パラメータの相互参照を行うのに効果がある。
【図面の簡単な説明】
第1図はマツピングによるメモリ拡張方式を示す図、第
2図は、論理空間と物理空間の関係を示す図、第3図は
、マップレジスタ内容変更のプログラムフロー図、第4
図は、OS空間とタスク空間分離時のパラメータ移動の
説明図、第5図は、命令フオーマットを示す図、第6図
は、本発明実施例のハードウェアブロック図、第7図は
、本発明による物理空間直接アクセス命令によるプログ
ラムを示す図である。 11・・・…論理アドレスレジスタ、12・・・・・・
マツピングレジスタ群、13・・・・・・物理アドレス
レジスタ。 業ー図 柴2図 劣3図 第4図 髪s図 髪5図 髪ヮ図

Claims (1)

    【特許請求の範囲】
  1. 1 マツピングにより実効アドレスを主メモリ上の物理
    アドレスに拡張する機能と、実効アドレスを物理アドレ
    スとして出力する手段とを備えると共に、物理アドレス
    の生成に際して、上記マツピングによる拡張機能を選択
    するか、上記実効アドレスを物理アドレスとして出力す
    る手段を選択するかを、命令の種類によって行わしめる
    ようにした計算機のメモリ拡張方式。
JP7990677A 1977-07-06 1977-07-06 計算機のメモリ拡張方式 Expired JPS603656B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP7990677A JPS603656B2 (ja) 1977-07-06 1977-07-06 計算機のメモリ拡張方式

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP7990677A JPS603656B2 (ja) 1977-07-06 1977-07-06 計算機のメモリ拡張方式

Publications (2)

Publication Number Publication Date
JPS5414635A JPS5414635A (en) 1979-02-03
JPS603656B2 true JPS603656B2 (ja) 1985-01-30

Family

ID=13703315

Family Applications (1)

Application Number Title Priority Date Filing Date
JP7990677A Expired JPS603656B2 (ja) 1977-07-06 1977-07-06 計算機のメモリ拡張方式

Country Status (1)

Country Link
JP (1) JPS603656B2 (ja)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS5682958A (en) * 1979-12-08 1981-07-07 Toshiba Corp Address conversion system
JPS63213522A (ja) * 1987-02-27 1988-09-06 Toyobo Co Ltd 新規なピペラジン系コポリアミド

Also Published As

Publication number Publication date
JPS5414635A (en) 1979-02-03

Similar Documents

Publication Publication Date Title
JPH0241053B2 (ja)
JPH0248931B2 (ja)
JPH0454652A (ja) マイクロコンピュータ
US6687808B2 (en) Data processor using indirect register addressing
JPH03233630A (ja) 情報処理装置
JP2551167B2 (ja) マイクロコンピュータ
JPS6137654B2 (ja)
JPS603656B2 (ja) 計算機のメモリ拡張方式
JPH01145770A (ja) ベクトル処理装置
JPS6032220B2 (ja) 情報処理装置
JP2576589B2 (ja) 仮想記憶アクセス制御方式
JPS5850B2 (ja) 主記憶拡張装置のアクセス方式
JP3392413B2 (ja) 2レベルマイクロ制御方式及び方法
JP3474347B2 (ja) マイクロコンピュータの命令解読部
JPS5951070B2 (ja) アドレス変換装置
JPS61165148A (ja) テ−ブルアクセス命令方式
JP2002544619A (ja) 専用ポインタメモリを使用するオブジェクト指向処理
JPH0512107A (ja) プログラム実行方式
JPH08272411A (ja) ラダー命令処理装置
JPS60214040A (ja) デ−タ処理装置
JPS63271567A (ja) 非対称密結合マルチプロセツサシステム
JPH02138623A (ja) ポインタレジスタを備えたマイクロプログラム制御方式のマイクロプロセッサ
JPS592938B2 (ja) メモリ ワ−クスペ−ス アンドレツシングホウホウオヨビソウチ
JPS62295138A (ja) アドレス生成方式
JP2003150575A (ja) データ駆動型情報処理装置および情報処理方法