JPH0488535A - 共有メモリのメモリマッピング方法、マルチcpuシステム - Google Patents

共有メモリのメモリマッピング方法、マルチcpuシステム

Info

Publication number
JPH0488535A
JPH0488535A JP20246790A JP20246790A JPH0488535A JP H0488535 A JPH0488535 A JP H0488535A JP 20246790 A JP20246790 A JP 20246790A JP 20246790 A JP20246790 A JP 20246790A JP H0488535 A JPH0488535 A JP H0488535A
Authority
JP
Japan
Prior art keywords
address
shared memory
cpu
access
memory
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
JP20246790A
Other languages
English (en)
Inventor
Hiroaki Fukumaru
広昭 福丸
Yoshihiro Miyazaki
義弘 宮崎
Yoshiaki Takahashi
義明 高橋
Hirokazu Kasashima
広和 笠嶋
Tsutomu Matsuki
勉 松木
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 JP20246790A priority Critical patent/JPH0488535A/ja
Publication of JPH0488535A publication Critical patent/JPH0488535A/ja
Pending legal-status Critical Current

Links

Abstract

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

Description

【発明の詳細な説明】 [産業上の利用分野] 本発明は共有メモリのメモリマツピング方法に係り、特
に共有メモリに対するアドレスリーチの異なるCPUで
構成されたマルチCPUシステムに好敵な共有メモリの
マツピング方法に関する。
[従来の技術] マルチCPUシステムにおけるCPU間通信の1つの手
段として、共有メモリを用いて行うものがあり、1つの
CPUが共有メモリへ書き込んだデータを他のCPUが
読み取る、という方法で通信が行われる。このようなシ
ステムで、アドレスリーチの異なるCPUが用いられて
いる場合には、第2図に示すような共有メモリのマツピ
ングが行われていた。(HARDWARE MANIJ
AL HIDTC805erieS”0ctiber、
1983.HITAC旧江TD参照)即ちいま、3台の
CPUが用いられていて、CPUI、2の共有メモリに
対するアドレスリーチが512KB(キロバイト)、C
PU3の同アドレスリーチが4MB (メガバイト)と
する。そうすると各CPUのアドレスは共有メモリのI
I OIT番地から当該CPUよりアクセス可能なアド
レスまでがマツピングされる。従って今の場合3台のC
PUに共通なマツピングエリアは第2図(a)の共通部
に示したように、0”〜“0007FFFF (16進
)″番地までの542KBとなる3このうち、全CP 
U間の制御に必要な容量を256KBとすると、残りの
256KBをCPU″lと3間、及びCPU2と3間の
データ転送用エリアとして分割使用する。第2図(b)
ではこれらにそれぞれ128KBが割り当てられている
様子を示している3[発明が解決しようとする課題] 上記した従来技術では、共有メモリを介してCPU間の
通信を行う場合に、アドレスリーチの小さいCPUはど
小さい通信用エリアしか使用できず、とくにそのアドレ
スリーチの小さいCP Uが多くなるほど、1つのCP
Uで使えるエリアは小さくなり、データ転送の効率が悪
くなるという問題があった。
本発明の目的は、アドレスリーチの小さなCPUと、ア
ドレスリーチの大きなCPUとの間の通信用エリアを拡
大することによって上記CPUの通信時のスルーブツト
を向上することのできる共有メモリのメモリマツピング
方法を提供するにある。
口課題を解決するための手段] 上記の目的を達成するために、本発明においては、アド
レスリーチの小さなCPUの共有メモリに対するアドレ
ス空間を、予め設定した境界値アドレスで第1及び第2
エリアに分割し、また各CPUから共有メモリへアクセ
スするアドレスの変換手段を各CPUに設けるとともに
、該変換手段によって、アドレスリーチの小さいCPU
からの共有メモリへのアクセスアドレスが上記第1エリ
アにあるときはどのCPUに対しても共通の共有メモリ
エリアに割り付け、第2エリアにあるときは当該小アド
レスリーチのCPUの間で異なる共有メモリが割り付け
られるようにした。
[作用] アドレスリーチの小さなCPtJから共有メモリへのア
クセス時に、変換手段はアクセスアドレスを予め設定さ
れた境界値アドレスと比較し、共有メモリのアドレス空
間のどのエリアに対応するかを判定する。その結果第2
エリアにあれば、当該CPU対応に予め定められた共有
メモリ上のエリアの物理アドレスに変換して共有メモ1
jをアクでスする。従ってアドレスリーチの小さいCP
Uの第2エリアに対応する共有メモリ上のエリアは当該
CPU毎に別のエリアとする二とができ、アドレスリー
チの小さいCPUの間で1つのエリアを分けて使う必要
がなくなる。一方、アドレスリーチの大きいCPUのア
ドレスに対しては共有メモリの大きなエリアがマツピン
グされているから、上記アドレスリーチの小さい各CP
Uの第2エリア対応の上記共有メモリ上の各エリアは、
アドレスリーチの大きいCPUのマツピングエリア上に
分散されて配置できる。従ってアドレスリーチ小のCP
Uの各々とアドレスリーチ大のCPUとの間の通信用に
は、アドレスリーチ小のCPUの第2エリア全部に相当
する共有メモリ上のエリアが利用でき、そのエリアをさ
らに分割していた従来方法よりも通信のスループットが
大幅に向上する。
[実施例] 以下本発明を実施例によって詳細に説明する。
第3図は本発明の方法を適用したマルチCPUシステム
の構成例を示すものである。CPUI、2はセンサ5.
6のデータを信号線51.61を介して読み取り、イン
タフェース50.60を介し共有メモリ(GM)4にそ
のデータを一時格納する。CPU3は、インタフェース
70を介してそのデータを読み取ることでデータ転送が
行われる。
ここでCPUI、2は、CPU3と較ベアトレスリーチ
の小さなCPUである。
第1図は第3図(7)CPUI (またはCPL’2)
の一実施例を示すブロック図で、実行ユニット(EU)
150は、基本処理装置(BPU)155、プライベー
トメモリ(PM)154、バスコントローラ(BC)1
57、入出カプロセッサ(工○P)156、内部バス1
58にて構成される。共有メモリ接続機構(GMP)1
00は、本発明の特徴とする境界値アドレス記憶機構(
FENCE)140、比較器(CMP)130、アドレ
ス変換機構120、共有メモリアクセスコントローラ(
CNT)160より構成される。
以下本実施例の動作を説明する。まず実行ユニット15
0より信号線153を介しライトアクセス要求が発行さ
れると、アクセスコントローラ160は信号線502を
介し共有メモリ4ヘライトアクセス要求を出す。また、
アクセスアドレスAは、アドレスバス151を介しアド
レス変換機構120及び比較器130へ入力され、比較
器130はアドレス記憶機構140の境界値アドレスA
OとアクセスアドレスAとを比較する。その結果、もし
A<AOであれば比較器出力はオフとなり、このときア
ドレス変換機構120は、入力されたアクセスアドレス
Aをそのままビット拡張したアドレスACとしく上位に
必要なだけII Oj+ビットを付加して共有メモリの
全アドレスに必要な桁数にする)、バス501を介して
共有メモリ4へ出力する。一方、A≧AO1即ちアクセ
スアドレスAが境界値アドレス記憶機構であるときは比
較器130出力はオンとなり、アドレス変換機構120
は記憶機構110に格納された変換情報としてのオフセ
ット値ASをアクセスアドレスAに加えたAC=A+A
Sを出力アドレスとして共有メモリ4へ出力する。この
ようにして共有メモリ4へのアドレス送出が行われると
、アクセスコントローラ160は信号線153を介して
実行ユニット150にライトデータ送出要求を行い、デ
ータバス152、バス501を経由で共有メモリ4ヘラ
イトデータを出力する。こうしてライトアクセスが終了
するとコントローラ160は、信号線153を介しライ
トアクセス終了報告を実行ユニット150に行う。
実行ユニットからのリードアクセス時も全く同様で、共
有メモリ4へのリードアクセス要求の送出、アクセスア
ドレスAの境界値アドレスAOとの比較、AHAOかA
≧AOかに応じたアドレス変換機構の動作とその出力ア
ドレスACの共有メモリへの送出が行われる。リードア
クセスの場合はこのアドレスACの送出によって共有メ
モリ4からリードデータが出力され、それがバス501
.152にオンバスされると、コントローラ160は信
号線153を介してリードアクセス終了を実行ユニット
150に報告する。
第4図は以上の動作によるマツピングの例を示している
。従来例の説明(第2図)の場合と同じく、CPUI、
2の共有メモリに対するアドレスリーチが512KB、
CPU3のアドレスリーチが4MB、全てのCPU間の
制御に必要な共有メモリ容量を256KBとする。この
とき、第1図の記憶機構140の境界値アドレスAOを
CPU1.2ともにAO= ”0O03FFFF” と
L、一方記憶機構110のオフセットASをCPUIに
対してAS=”O”、CPU2に対してAS=“000
3FFFF (16進)″に設定する。そうすると、C
PUI、2ともそのアクセスアドレスAがA<AOの時
は、Aがそのまま共有メモリのアドレスACとされるか
ら、共有メモリの# OITからAO= ”0O03F
FFF” L、−相当すル共通部がアクセスされる。こ
れは上記のCPtJ間の制御に必要なエリアである。一
方、アクセスアドレスAが“0O07FFFF”≧A≧
AOのときはCPUIではそのまま共有メモリにマツピ
ングされ、CPU2ではAC:A+AS、”0007F
F F F ”≦AC≦” 0008 F F F F
 ”なるアドレスACにマツピングされるから、CPU
IとCPU3間のデータ転送用エリアもCPU2とCP
U5間の同エリアもともに256KB確保でき、従来の
方法による第2図の場合と比ベデータ転送用の専用エリ
アが2倍に拡大される。
第5図は本発明の別の実施例を示すものである。
第1図の実施例では、記憶機構140及び120に記憶
されている境界値アドレスAO及びアドレス変換情報A
Sは固定値であった。この場合、確保されたデータ転送
用エリアの容量を超えるデータを転送する場合には、C
PUIまたは2とCPU3の間のデータ転送が完了する
までは欣のデータをデータ転送用エリアへ書き込むこと
ができず、その転送を一時中断する必要があった。本実
施例では、境界値アドレスAO及びアドレス変換情報A
Sを書き換え可能としてこの問題点を解決したものであ
る。このために、第1図の構成に、アクセスコントロー
ラ160から記憶機構110のアドレス変換情報を書き
換えるための信号線161と、記憶機構140の境界値
アドレスを書き換えるための信号線162を付加してい
る。
この第5図の構成において、実行ユニット150から信
号線153を介してアドレス変換情報の変更要求が出さ
れると、コントローラ160は信号線161の信号をオ
ンとし、実行ユニット150からデータバス152にオ
ンバスされた新しいアドレス変換情報を記憶機構110
に書き込む。
また、実行ユニット150から信号線153を介して境
界値アドレスの変更要求が出されると、コントローラ1
60は信号線162の信号をオンとし、実行ユニット1
50からデータバス152にオンバスされた新しい境界
値アドレスを記憶機構140に書き込む。
本実施例によれば、共有メモリに対するアドレスリーチ
の分割位置とその分割したアドレス空間ノ共有メモリ上
へのマツピング位置を変更可能とすることで、転送デー
タ量に応じたダイナミックなマツピングで効率の良い転
送を行える。
なお、以上の実施例では、3台のマルチCPUシステム
の場合について述べたが、本発明は3台に限らず実施可
能であることが明らかである。
[発明の効果コ 本発明によれば、アドレスリーチの異なるCPUにて構
成されるマルチCPUシステムムを7おいて、CPU間
の通信用エリアに使用できるアドレス空間を従来よりも
拡張でき、またデータ転送量に応じてダイナミックにそ
の空間の大きさを設定できるから、CPU間データ転送
のスループットを向上することができる効果がある。
【図面の簡単な説明】
第1図は本発明の方法を実現するCPUの一実施例を示
すブロック図、第2図は従来のマツピング例を示す図、
第3図はマルチCPUシステムの構成例を示す図、第4
図は本発明を用いた場合の共有メモリアドレス空間のマ
ツピング例を示す図、第5図は本発明の別の実施例を示
すブロック図である。 1〜3・・CPU、4・・・共有メモリ装置、110・
・アドレス変換情報記憶機構、120・・・アドレス変
換機構、 アドレス比較器、 140・境界 値アドレス記憶機構。

Claims (1)

  1. 【特許請求の範囲】 1、共有メモリと、該共有メモリの全エリアにアクセス
    可能なアドレスリーチを有するところの少なくとも1台
    の大CPUと、上記共有メモリの全エリアをアクセスす
    るために必要なアドレスリーチを有させないところの複
    数台の小CPUとを備えたマルチCPUシステムでの共
    有メモリのメモリマッピング方法において、上記小CP
    Uの各々に、当該CPUの上記共有メモリに対するアド
    レス空間を第1及び第2空間へ分割するための境界値ア
    ドレスを記憶する第1の手段と、上記境界値アドレスと
    上記共有メモリへのアクセスアドレスとを比較して該ア
    クセスアドレスが上記第1及び第2の空間のいずれにあ
    るかを判定する第2の手段と、該手段の判定結果に応じ
    た上記アクセスアドレスの変換を行う第3の手段とを有
    せしめ、上記小CPUから上記共有メモリへのアクセス
    は上記第3の手段により生成されたアドレスによって行
    うことを特徴とする共有メモリのメモリマッピング方法
    。 2、前記第1の手段の境界値アドレスを前記小CPUの
    実行ユニットから書き換え可能としたことを特徴とする
    請求項1記載の共有メモリのメモリマッピング方法。 3、前記第3の手段によるアクセスアドレスの変換方法
    を前記小CPUの実行ユニットから書き換え可能とした
    ことを特徴とする請求項1または2記載の共有メモリの
    メモリマッピング方法。 4、前記第3の手段は、オフセットアドレスを記憶する
    記憶手段と、上記オフセットアドレスとアクセスアドレ
    スとを加算して出力するアドレス加算手段とから成るこ
    とを特徴とする請求項1または3記載の共有メモリのメ
    モリマッピング方法。 5、共有メモリと、該共有メモリの全エリアにアクセス
    可能なアドレスリーチを有するところの少なくとも1台
    の大CPUと、上記共有メモリの全エリアをアクセスす
    るために必要なアドレスリーチを有させないところの複
    数台の小CPUとを備えたマルチCPUシステムにおい
    て、上記小CPUの各々は、当該CPUの上記共有メモ
    リに対するアドレス空間を第1及び第2空間へ分割する
    ための境界値アドレスを記憶する第1の手段と、上記境
    界値アドレスと上記共有メモリへのアクセスアドレスと
    を比較して該アクセスアドレスが上記第1及び第2の空
    間のいずれにあるかを判定する第2の手段と、該手段の
    判定結果に応じた上記アクセスアドレスの変換を行い上
    記共有メモリをアクセスするためのアドレスを生成する
    アドレス変換手段とを備えたことを特徴とするマルチC
    PUシステム。
JP20246790A 1990-08-01 1990-08-01 共有メモリのメモリマッピング方法、マルチcpuシステム Pending JPH0488535A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP20246790A JPH0488535A (ja) 1990-08-01 1990-08-01 共有メモリのメモリマッピング方法、マルチcpuシステム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP20246790A JPH0488535A (ja) 1990-08-01 1990-08-01 共有メモリのメモリマッピング方法、マルチcpuシステム

Publications (1)

Publication Number Publication Date
JPH0488535A true JPH0488535A (ja) 1992-03-23

Family

ID=16458011

Family Applications (1)

Application Number Title Priority Date Filing Date
JP20246790A Pending JPH0488535A (ja) 1990-08-01 1990-08-01 共有メモリのメモリマッピング方法、マルチcpuシステム

Country Status (1)

Country Link
JP (1) JPH0488535A (ja)

Similar Documents

Publication Publication Date Title
JP3687990B2 (ja) メモリアクセス機構
EP0497600B1 (en) Memory access method and apparatus
CN105830059A (zh) 文件访问方法、装置及存储设备
US3778776A (en) Electronic computer comprising a plurality of general purpose registers and having a dynamic relocation capability
JPH11512857A (ja) クラスタ・コンピュータ・システムにおけるアドレス変換
US5060186A (en) High-capacity memory having extended addressing capacity in a multiprocessing system
JPS61211758A (ja) マルチ・プロセツサ・システム
US6286089B1 (en) Coupling facility using dynamic address translation
JPH04308953A (ja) 仮想アドレス計算機装置
JPS6126152A (ja) アドレスチエツク方式
EP1103898A2 (en) Microprocessor and memory
JPH04288643A (ja) マルチプロセッサシステムのメモリマッピング方式
JPH0488535A (ja) 共有メモリのメモリマッピング方法、マルチcpuシステム
US5303363A (en) Image processing apparatus having disk storage resembling ram memory
EP0787326B1 (en) System and method for processing of memory data and communication system comprising such system
GB2221066A (en) Address translation for I/O controller
JP2823038B2 (ja) 論理ダイレクトメモリアクセス方式
JPH05108477A (ja) メモリアクセス方式
JPH05313999A (ja) メモリ制御装置
JP2001022640A (ja) メモリ管理方法
JPH0235551A (ja) チャネル装置におけるアドレス変換方式
JPS59146344A (ja) 仮想スタツク先行制御方式
JPH0244445A (ja) データ処理装置
JPH05197617A (ja) マルチプロセッサシステム
JPS63245545A (ja) Dma方式