JPH01291343A - メモリ管理装置 - Google Patents
メモリ管理装置Info
- Publication number
- JPH01291343A JPH01291343A JP63121606A JP12160688A JPH01291343A JP H01291343 A JPH01291343 A JP H01291343A JP 63121606 A JP63121606 A JP 63121606A JP 12160688 A JP12160688 A JP 12160688A JP H01291343 A JPH01291343 A JP H01291343A
- Authority
- JP
- Japan
- Prior art keywords
- memory
- data
- address
- cpu
- processing unit
- 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
Links
- 230000015654 memory Effects 0.000 title claims abstract description 159
- 238000012545 processing Methods 0.000 claims abstract description 133
- 238000013507 mapping Methods 0.000 claims abstract description 46
- 238000012546 transfer Methods 0.000 abstract description 15
- 230000000694 effects Effects 0.000 abstract description 3
- 230000003446 memory effect Effects 0.000 abstract 2
- 230000003247 decreasing effect Effects 0.000 abstract 1
- 238000010586 diagram Methods 0.000 description 12
- 238000006243 chemical reaction Methods 0.000 description 5
- 238000000034 method Methods 0.000 description 5
- 238000004891 communication Methods 0.000 description 3
- 239000000872 buffer Substances 0.000 description 2
- 239000013256 coordination polymer Substances 0.000 description 2
- 241001234891 Bletia purpurea Species 0.000 description 1
- 239000003795 chemical substances by application Substances 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000010365 information processing Effects 0.000 description 1
- 230000004044 response Effects 0.000 description 1
Landscapes
- Memory System (AREA)
Abstract
(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。
め要約のデータは記録されません。
Description
【発明の詳細な説明】
〔産業上の利用分野〕
本発明は、メモリ管理装置に関し、特にCPUに接続さ
れたデータメモリのアドレス管理、およびデータの読み
出し、書き込みの管理を行うメモリ管理装置に関するも
のである。
れたデータメモリのアドレス管理、およびデータの読み
出し、書き込みの管理を行うメモリ管理装置に関するも
のである。
一般に、情報処理装置においては、CPUと主記憶装置
の間でデータの転送を行って、CPUで処理した結果デ
ータの格納、およびCPUで処理するために必要なデー
タの読み出しを行っている、第8図および第9図は、そ
れぞれ複数の処理単位間での処理の過程を示す図である
。
の間でデータの転送を行って、CPUで処理した結果デ
ータの格納、およびCPUで処理するために必要なデー
タの読み出しを行っている、第8図および第9図は、そ
れぞれ複数の処理単位間での処理の過程を示す図である
。
単一C,P U内、あるいは複数のCPU間でデータ列
の授受の処理を行う場合、次のような方θ、か用いられ
る。
の授受の処理を行う場合、次のような方θ、か用いられ
る。
(i)複数の処理単位間でのデータ列の受は渡し操作
第8図に示すように、前段の処理単位(n−1)82が
出力データ列(A、B、C)をデータメモリ(D、at
a:M) 81に書き込み、次に別の処理単位(n)8
3がこのデータ列を読み出して、決められた処理を行っ
た後、処理済みのデータ列(Z、 B。
出力データ列(A、B、C)をデータメモリ(D、at
a:M) 81に書き込み、次に別の処理単位(n)8
3がこのデータ列を読み出して、決められた処理を行っ
た後、処理済みのデータ列(Z、 B。
C)をデータメモリ (Data:N) 81に書き込
み、次に別の処理単位(n+1)84にこのデータ列(
Z、B、C)を渡している。なお、ここで、処理単位と
は、CPUで実行されるプログラムの各処理を言う。
み、次に別の処理単位(n+1)84にこのデータ列(
Z、B、C)を渡している。なお、ここで、処理単位と
は、CPUで実行されるプログラムの各処理を言う。
(信)複数の処理単位間での共有データ列の変更操作
第9図に示すように、処理単位(n)92と別の処理単
位(n+1)93とが共有しているデータ列(Data
:M)を、処理単位(n+1)93が処理して一部変更
する場合には、変更を加える度ごとにデータ列(Dat
a:M)の内容を処理単位(n+1)93のメモリ内に
コピーして書き換えていた。すなわち、第9図の場合に
は、先ず、メモリ91からデータ列(A、B、C)を面
処理単位92.93に読み出して、それぞれ処理を行い
、処理単位93のみがこのデータ列を(Z、B、C)と
変更して装置内のメモリに格納している。
位(n+1)93とが共有しているデータ列(Data
:M)を、処理単位(n+1)93が処理して一部変更
する場合には、変更を加える度ごとにデータ列(Dat
a:M)の内容を処理単位(n+1)93のメモリ内に
コピーして書き換えていた。すなわち、第9図の場合に
は、先ず、メモリ91からデータ列(A、B、C)を面
処理単位92.93に読み出して、それぞれ処理を行い
、処理単位93のみがこのデータ列を(Z、B、C)と
変更して装置内のメモリに格納している。
なお、このようなメモリの例としては、昭和54年3月
30日電子通信学会発行の「電子通信ハンドブックJP
、1258に記載されている。
30日電子通信学会発行の「電子通信ハンドブックJP
、1258に記載されている。
このように、データ列の授受の処理に際しては、データ
列のメモリ間転送処理が行われるため、メモリ使用率の
増大、およびバス使用率の増大を引き起こし、さらにソ
フトウェアによる複雑なメモリバッファの管理を必要と
していた。その結果、CPUは負荷の増大を招いていた
。
列のメモリ間転送処理が行われるため、メモリ使用率の
増大、およびバス使用率の増大を引き起こし、さらにソ
フトウェアによる複雑なメモリバッファの管理を必要と
していた。その結果、CPUは負荷の増大を招いていた
。
本発明の目的は、このような従来の課題を解決し、単一
CPU内または複数のCPU間で複数の処理単位間にま
たがって処理を行う場合、データ列の授受を行う際のメ
モリ間転送処理を削減して、メモリ使用率およびバス使
用率を低減させ、かつ複雑なメモリバッファ管理を削減
して、CPUの負荷を低減させることが可能なメモリ管
理装置を提供することにある。
CPU内または複数のCPU間で複数の処理単位間にま
たがって処理を行う場合、データ列の授受を行う際のメ
モリ間転送処理を削減して、メモリ使用率およびバス使
用率を低減させ、かつ複雑なメモリバッファ管理を削減
して、CPUの負荷を低減させることが可能なメモリ管
理装置を提供することにある。
上記目的を達成するため、本発明のメモリ管理装置は、
CPU内の処理単位間でデータ列の授受を行うデータ処
理システム内に設けられたメモリ管理装置であって、上
記CPUに接続されたメモリとは独立で、かつ、データ
列の授受に用いられる処理単位に共通のデータメモリと
、上記CP Uのアドレス空間を該データメモリのアド
レス空間に変換する複数個のメモリマツピング回路と、
該メモリマツピング回路より該データメモリへのアドレ
ス出力の中から、該データメモリにアクセス中のメモリ
マツピング回路のアドレス出力を選択するアドレスセレ
クタ回路とを備えたことに特徴がある。また、複数のC
PU間でデータ列の授受を行うデータ処理システム内に
設けられたメモリ管理装置であって、他のCPUに接続
されたメモリを互いに利用するか、該メモリとは独立に
設けられ、データ列の授受に用いられる処理単位に共通
のデータメモリと、上記CPUのアドレス空間を該デー
タメモリのアドレス空間に変換するため、各CPU対応
に設けられたメモリマツピング回路と、該メモリマツピ
ング回路より該データメモリへのアドレス出力の中から
、該データメモリにアクセス中のメモリマツピング回路
のアドレス出力を選択するアドレスセレクタ回路とを備
えたことにも特徴がある。
CPU内の処理単位間でデータ列の授受を行うデータ処
理システム内に設けられたメモリ管理装置であって、上
記CPUに接続されたメモリとは独立で、かつ、データ
列の授受に用いられる処理単位に共通のデータメモリと
、上記CP Uのアドレス空間を該データメモリのアド
レス空間に変換する複数個のメモリマツピング回路と、
該メモリマツピング回路より該データメモリへのアドレ
ス出力の中から、該データメモリにアクセス中のメモリ
マツピング回路のアドレス出力を選択するアドレスセレ
クタ回路とを備えたことに特徴がある。また、複数のC
PU間でデータ列の授受を行うデータ処理システム内に
設けられたメモリ管理装置であって、他のCPUに接続
されたメモリを互いに利用するか、該メモリとは独立に
設けられ、データ列の授受に用いられる処理単位に共通
のデータメモリと、上記CPUのアドレス空間を該デー
タメモリのアドレス空間に変換するため、各CPU対応
に設けられたメモリマツピング回路と、該メモリマツピ
ング回路より該データメモリへのアドレス出力の中から
、該データメモリにアクセス中のメモリマツピング回路
のアドレス出力を選択するアドレスセレクタ回路とを備
えたことにも特徴がある。
本発明においては、(i)単一CPUの場合、CPU内
のメモリとは独立した各処理単位間でデータ列の授受を
行うための共通のデータメモリを設け、メモリマツピン
グ回路により、各処理単位ごとにCPUのアドレス空間
とデータメモリのアドレス空間を変換した後、複数のメ
モリマツピング回路により変換されたデータメモリの複
数のアドレス空間の中から、アドレスセレクタ回路によ
り1つだけ選択する。また、(j])複数CPUの場合
には、データメモリを介して各CPUの処理中1位間で
データ列の授受を行い、メモリマツピンク回路により各
CPUの処理単位ごとにCPUのアドレス空間とデータ
メモリのアドレス空間を変換した後、複数のメモリマツ
ピング回路により変換されたデータメモリの複数のアド
レス空間のうち、アドレスセレクタ回路により1つだけ
選択する。
のメモリとは独立した各処理単位間でデータ列の授受を
行うための共通のデータメモリを設け、メモリマツピン
グ回路により、各処理単位ごとにCPUのアドレス空間
とデータメモリのアドレス空間を変換した後、複数のメ
モリマツピング回路により変換されたデータメモリの複
数のアドレス空間の中から、アドレスセレクタ回路によ
り1つだけ選択する。また、(j])複数CPUの場合
には、データメモリを介して各CPUの処理中1位間で
データ列の授受を行い、メモリマツピンク回路により各
CPUの処理単位ごとにCPUのアドレス空間とデータ
メモリのアドレス空間を変換した後、複数のメモリマツ
ピング回路により変換されたデータメモリの複数のアド
レス空間のうち、アドレスセレクタ回路により1つだけ
選択する。
以下、本発明の原理および実施例を、図面により詳細に
説明する。
説明する。
(i)複数の処理単位間でのデータ列の受渡し操作
CPUのアドレス空間の下で処理される処理単位n−1
から処理単位nの処理を経て、処理単位n+1にデータ
列の受渡し操作が行われる場合を例にとり、説明する(
第8図に対応する)。
から処理単位nの処理を経て、処理単位n+1にデータ
列の受渡し操作が行われる場合を例にとり、説明する(
第8図に対応する)。
先ず、処理単位n−1が処理単位nに対して出力しよう
とするデータ列Mは、処理単位n−1のCPUアドレス
空間の中に作成される。このとき、処理単位n−1の扱
うデータ列MのCPUアドレス空間は、処理単位n−1
対応に設けられたメモリマツピング回路により、データ
メモリのアドレス空間に変換される。従って、処理単位
n−1が処理単位nに対して出力しようとするデータ列
Mは、全てデータメモリ内に作成されることになる。
とするデータ列Mは、処理単位n−1のCPUアドレス
空間の中に作成される。このとき、処理単位n−1の扱
うデータ列MのCPUアドレス空間は、処理単位n−1
対応に設けられたメモリマツピング回路により、データ
メモリのアドレス空間に変換される。従って、処理単位
n−1が処理単位nに対して出力しようとするデータ列
Mは、全てデータメモリ内に作成されることになる。
次に、処理単位nでは、処理単位nの扱うデータ列Mの
CPUアドレス空間が処理単位n対応に設けられたメモ
リマツピング回路により、データメモリのアドレス空間
に変換される。このため、処理単位nからデータ列Mの
読み出しが可能となる。
CPUアドレス空間が処理単位n対応に設けられたメモ
リマツピング回路により、データメモリのアドレス空間
に変換される。このため、処理単位nからデータ列Mの
読み出しが可能となる。
このようにして、処理単位n−1から処理単位nに対し
てデータ列の受渡しが、メモリ間の転送処理なしに実現
できる。
てデータ列の受渡しが、メモリ間の転送処理なしに実現
できる。
次に、処理単位nがデータ列Mに処理を加えて=7−
MlとM2(ここでは、MlがMに対して変更領域、M
2がMの中の未変更領域)からなる新データ列Nにして
、処理単位n+1にデータ列を受は渡すものとする。
2がMの中の未変更領域)からなる新データ列Nにして
、処理単位n+1にデータ列を受は渡すものとする。
処理単位nでは、処理単位n対応に設けられたメモリマ
ツピング回路により、変更領域のM1領域のCPUアド
レス空間をデータメモリの中の新たに割り当てたデータ
列に変換し、未変更領域のM2領域のCPUアドレス空
間は以前のデータメモリの中のデータ列のアドレス空間
に変換して、これを処理単位n+1に受は渡す。
ツピング回路により、変更領域のM1領域のCPUアド
レス空間をデータメモリの中の新たに割り当てたデータ
列に変換し、未変更領域のM2領域のCPUアドレス空
間は以前のデータメモリの中のデータ列のアドレス空間
に変換して、これを処理単位n+1に受は渡す。
処理単位n+1では、処理単位n+1の扱うデータ列N
のCPUアドレス空間が処理単位n+1対応に設けられ
たメモリマツピング回路により、データメモリのアドレ
ス空間に変換される。このため、処理単位n+1からデ
ータ列Nの読み出しが可能になる。
のCPUアドレス空間が処理単位n+1対応に設けられ
たメモリマツピング回路により、データメモリのアドレ
ス空間に変換される。このため、処理単位n+1からデ
ータ列Nの読み出しが可能になる。
これにより、受は渡されるデータ列N中のM1領域は、
新たに割り当てられたデータメモリの領域を使用するが
、M2領域に関しては、処理単位nから処理単位n+1
に受は渡される過程でメモリ間転送処理なしに実現でき
る。
新たに割り当てられたデータメモリの領域を使用するが
、M2領域に関しては、処理単位nから処理単位n+1
に受は渡される過程でメモリ間転送処理なしに実現でき
る。
(ii)複数の処理単位間での共有データ列の変更操作
処理単位nと処理単位n+1とで共有データ列Mを持ち
、これを処理単位n+1側が一部書き換える操作を例に
とって説明する(第9図に対応する)。
、これを処理単位n+1側が一部書き換える操作を例に
とって説明する(第9図に対応する)。
処理単位nでは、処理単位nの扱う共有データ列MのC
PUアドレス空間が、処理単位n対応に設けられたメモ
リマツピング回路により、データメモリのアドレス空間
に変換される。このため、処理単位nからデータ列Mの
読み出しが可能となる。
PUアドレス空間が、処理単位n対応に設けられたメモ
リマツピング回路により、データメモリのアドレス空間
に変換される。このため、処理単位nからデータ列Mの
読み出しが可能となる。
処理単位n+1では、処理単位n+1の扱う共有データ
列MのCPUアドレス空間が、処理単位n+1対応に設
けられたメモリマツピング回路により、データメモリの
アドレス空間に変換される。
列MのCPUアドレス空間が、処理単位n+1対応に設
けられたメモリマツピング回路により、データメモリの
アドレス空間に変換される。
これにより、処理単位nと処理単位n+1で同じデータ
列を共有していることになる。
列を共有していることになる。
このときに、処理単位n+1がデータ列Mの一部を変更
して、Ml+M2とする場合(Mlが変更箇所、M2が
共有箇所の残り部分とする)には、処理単位n+1対応
に設けられたメモリマツピング回路を使用して、変更領
域M1のCPUアドレス空間はデータメモリの中の新た
に割り当てたデータ列に変換し、一方の共有領域の残り
のM2のCPUアドレス空間は、以前のデータメモリの
中のデータ列のアドレス空間に変換する。
して、Ml+M2とする場合(Mlが変更箇所、M2が
共有箇所の残り部分とする)には、処理単位n+1対応
に設けられたメモリマツピング回路を使用して、変更領
域M1のCPUアドレス空間はデータメモリの中の新た
に割り当てたデータ列に変換し、一方の共有領域の残り
のM2のCPUアドレス空間は、以前のデータメモリの
中のデータ列のアドレス空間に変換する。
これにより、Mlの領域は、新たに割り当てられたデー
タメモリの領域を使用するが、残りのM2の領域は、メ
モリ間転送の処理なしで処理単位nと共有して利用する
ことが可能となる。
タメモリの領域を使用するが、残りのM2の領域は、メ
モリ間転送の処理なしで処理単位nと共有して利用する
ことが可能となる。
第1図は、本発明の第1の実施例を示すメモリ管理装置
のブロック図であって、単一CPU内にデータ列の送受
を行う2つの処理単位が存在する場合を示している。
のブロック図であって、単一CPU内にデータ列の送受
を行う2つの処理単位が存在する場合を示している。
第1図において、10が本発明のメモリ管理装置、11
はデータメモリ、12はアドレスセレクタ回路、13.
14はメモリマツピング回路、15はCPU、16はプ
ログラム/データメモリ、161.162はプログラム
/データメモリに格納されている処理単位(1)、(2
)、17はデータバス、18はアドレスバスである。
はデータメモリ、12はアドレスセレクタ回路、13.
14はメモリマツピング回路、15はCPU、16はプ
ログラム/データメモリ、161.162はプログラム
/データメモリに格納されている処理単位(1)、(2
)、17はデータバス、18はアドレスバスである。
2つの処理単位161,162がアクセスするデータ列
のCPUアドレス空間は、2つの処理単位に対応して設
けられた2つのメモリマツピング13.14を経由して
、それぞれデータメモリ11のアドレス空間に変換され
る。2つのデータメモリのアドレス空間は、アドレスセ
レクタ回路12により1つが選択され、それがデータメ
モリ11のアドレスとなって、メモリ11のリード/ラ
イトのアクセスが可能となる。
のCPUアドレス空間は、2つの処理単位に対応して設
けられた2つのメモリマツピング13.14を経由して
、それぞれデータメモリ11のアドレス空間に変換され
る。2つのデータメモリのアドレス空間は、アドレスセ
レクタ回路12により1つが選択され、それがデータメ
モリ11のアドレスとなって、メモリ11のリード/ラ
イトのアクセスが可能となる。
ここで、データメモリ11は、専用のデータRAMで構
成されているものとする。
成されているものとする。
第2図は、第1図におけるメモリマツピング回目の構成
図である。
図である。
第2図において、21がメモリマツピング回路、22は
CPUアドレスバス、23はデータメモリアドレスバス
、211はアドレス変換テーブルで=11− ある。
CPUアドレスバス、23はデータメモリアドレスバス
、211はアドレス変換テーブルで=11− ある。
例えば、CP U 15からデータ列へのア1−レス5
000H(ここで、Hは16進を示す)は、アドレス変
換テーブル211によりその箇所の物理アドレスの60
00Hに変換される。
000H(ここで、Hは16進を示す)は、アドレス変
換テーブル211によりその箇所の物理アドレスの60
00Hに変換される。
第3図は、本発明の第2の実施例を示すメモリ管理装置
のブロック図であって、複数のCPU間でデータ列の入
出力を行う2つの処理単位が存在する場合を示している
。
のブロック図であって、複数のCPU間でデータ列の入
出力を行う2つの処理単位が存在する場合を示している
。
第3図において、30は本発明のメモリ管理装置、31
はデータメモリ、32はアドレスセレクタ回路、33.
34はメモリマツピング回路(1)。
はデータメモリ、32はアドレスセレクタ回路、33.
34はメモリマツピング回路(1)。
(2)、35.36はc p u(1)、(2)、37
.38はプログラム/データメモリ、371,381は
処理単位(1)(2)、39はデータバス、4]、、4
2はアドレスバスである。
.38はプログラム/データメモリ、371,381は
処理単位(1)(2)、39はデータバス、4]、、4
2はアドレスバスである。
CPU35のアドレス空間は、メモリマツピング回路3
3によりデータメモリ31のアドレス空間に変換された
後、アドレスセレクタ回路32により選択されて、デー
タメモリ31内のデータ列を操作することができる。C
PU36側からは、CPU36の論理アドレス空間がメ
モリマツピング回路34を経由してデータメモリ31の
アドレス空間に変換された後、アドレスセレクタ回路3
2により選択されて、データメモリ31内のデータ列を
操作することができる。
3によりデータメモリ31のアドレス空間に変換された
後、アドレスセレクタ回路32により選択されて、デー
タメモリ31内のデータ列を操作することができる。C
PU36側からは、CPU36の論理アドレス空間がメ
モリマツピング回路34を経由してデータメモリ31の
アドレス空間に変換された後、アドレスセレクタ回路3
2により選択されて、データメモリ31内のデータ列を
操作することができる。
ここで、データメモリ31は、専用のデータRAMで構
成されるか、あるいはCPU35,36のメインメモリ
の一部を使用することも可能である。また、第3図に示
すように、2つのCPUの処理単位間の場合には、アド
レスセレクタ回路32とデータRAM31を内蔵した2
ボ一トRAMを使用することも可能である。
成されるか、あるいはCPU35,36のメインメモリ
の一部を使用することも可能である。また、第3図に示
すように、2つのCPUの処理単位間の場合には、アド
レスセレクタ回路32とデータRAM31を内蔵した2
ボ一トRAMを使用することも可能である。
なお、実施例では、データの授受用のデータメモリ31
をCPU35,36のプログラム/データメモリ37.
38とは独立して設けた場合を示しているが、例えば、
アクセス頻度が多くない場合には、データの受は渡し用
データメモリをプログラム/データメモリと共有するこ
とも可能である。この場合には、第3図において、アド
レスセレクタ回路32の入力としてCPU35または3
6のうちのいずれか一方のアドレスバス(41゜42の
うちの1つ)を加えて3人力とし、メモリマツピング回
路33.34の出力とアドレスバス41または42を必
要に応じて切り替えることにより実現できる。
をCPU35,36のプログラム/データメモリ37.
38とは独立して設けた場合を示しているが、例えば、
アクセス頻度が多くない場合には、データの受は渡し用
データメモリをプログラム/データメモリと共有するこ
とも可能である。この場合には、第3図において、アド
レスセレクタ回路32の入力としてCPU35または3
6のうちのいずれか一方のアドレスバス(41゜42の
うちの1つ)を加えて3人力とし、メモリマツピング回
路33.34の出力とアドレスバス41または42を必
要に応じて切り替えることにより実現できる。
第4図および第5図は、複数の処理単位間でのデータ列
の受は渡し操作を示す図である。
の受は渡し操作を示す図である。
第4図に示すように、例えば、処理単位(1)(2)(
3)の3つの処理単位間での受は渡し操作において、処
理単位(1)が使用するCPUのアドレス空間6000
〜6FFFは、メモリマツピング回路42により、デー
タメモリの71(レス空間2000〜2FFFに変換さ
れる。また、処理単位(2)のcpuのアドレス空間8
000〜8FFFは、メモリマツピング回路43により
、同一のデータメモリのアドレス空間2000〜2FF
Fに変換され、処理単位間でのデータ列の入出力が可能
となる。
3)の3つの処理単位間での受は渡し操作において、処
理単位(1)が使用するCPUのアドレス空間6000
〜6FFFは、メモリマツピング回路42により、デー
タメモリの71(レス空間2000〜2FFFに変換さ
れる。また、処理単位(2)のcpuのアドレス空間8
000〜8FFFは、メモリマツピング回路43により
、同一のデータメモリのアドレス空間2000〜2FF
Fに変換され、処理単位間でのデータ列の入出力が可能
となる。
第5図に示すように、処理単位(2)において、処理単
位(2)の使用するCPUのアドレス空間54の中でM
1領域(8000〜8100)を変更する場合には、処
理単位(2)に対応するメモリマツピング回路52によ
り、M1領域に対して新たなデータメモリ空間PMI(
4000〜40 F F)に変換して変更を加える。未
変更領域のM2領域(8100〜8 F F F)に関
しては、処理単位(2)に対応したメモリマツピング回
路52により、M2領域を元のデータメモリ空間51中
のPM2M7C3100〜2 F F F)に変換する
。
位(2)の使用するCPUのアドレス空間54の中でM
1領域(8000〜8100)を変更する場合には、処
理単位(2)に対応するメモリマツピング回路52によ
り、M1領域に対して新たなデータメモリ空間PMI(
4000〜40 F F)に変換して変更を加える。未
変更領域のM2領域(8100〜8 F F F)に関
しては、処理単位(2)に対応したメモリマツピング回
路52により、M2領域を元のデータメモリ空間51中
のPM2M7C3100〜2 F F F)に変換する
。
このM1+M2からなるデータ列Nを処理単位(3)に
受は渡す時には、処理単位(3)のCPUアドレス空間
(AOOO−AFFF)55を処理単位(3)に対応し
たメモリマツピング回路53により、データメモリアド
レス空間51のPMI領域(4000〜40 F F)
およびPM2M7C3100〜2 F F F)に変換
することによって、処理単位間でのデータ列の入出力が
可能となる。
受は渡す時には、処理単位(3)のCPUアドレス空間
(AOOO−AFFF)55を処理単位(3)に対応し
たメモリマツピング回路53により、データメモリアド
レス空間51のPMI領域(4000〜40 F F)
およびPM2M7C3100〜2 F F F)に変換
することによって、処理単位間でのデータ列の入出力が
可能となる。
第4図および第5図から明らかなように、本実施例では
、単一CPUの場合であっても、複数=15− CPUの場合であっても、複数の処理単位間で入出力さ
れるデータ列は、未変更領域に関してはメモリ間転送処
理なしで授受が可能になるという利点がある。
、単一CPUの場合であっても、複数=15− CPUの場合であっても、複数の処理単位間で入出力さ
れるデータ列は、未変更領域に関してはメモリ間転送処
理なしで授受が可能になるという利点がある。
第6図および第7図は、複数の処理単位間での共有デー
タ列の変更操作の一例を示す説明図である。ここでは、
処理単位(1)と処理単位(2)とが、データ列Mを共
有している場合を示している。
タ列の変更操作の一例を示す説明図である。ここでは、
処理単位(1)と処理単位(2)とが、データ列Mを共
有している場合を示している。
第6図に示すように、処理単位(1)では、CPUアド
レス空間64のM領域(1000〜IFFF)を処理単
位(1)に対応したメモリマツピング回路62によりデ
ータメモリ空間61のPM領域(2000〜2 F F
F)に変換している。また、処理単位(2)では、C
PUアドレス空間65のM領域(3000〜3FFF)
を処理単位(2)に対応したメモリマツピング回路63
によりデータメモリ空間61(7)PM領域(2000
−2F F F)ニ変換している。このため、互いに同
じデータ列を共有して読み出すことができる。
レス空間64のM領域(1000〜IFFF)を処理単
位(1)に対応したメモリマツピング回路62によりデ
ータメモリ空間61のPM領域(2000〜2 F F
F)に変換している。また、処理単位(2)では、C
PUアドレス空間65のM領域(3000〜3FFF)
を処理単位(2)に対応したメモリマツピング回路63
によりデータメモリ空間61(7)PM領域(2000
−2F F F)ニ変換している。このため、互いに同
じデータ列を共有して読み出すことができる。
第7図においては、処理単位(2)のCP Uアトレス
空間75の内容を下のアドレスからFFバイトのみを書
き換える例を示している。すなわち、処理単位(2)で
は、CPUアドレス空間75のデータN領域(3000
〜3FFF)のうちで未変更領域(3100〜3 F
F F)までを、メモリマツピング回路73を使用して
データメモリのアドレス空間71のPM領域の(410
0〜4 F F F)に変換する。また、CPUアドレ
ス空間75の変更領域(3000〜30 F F)につ
いては、メモリマツピング回路73を使用してデータメ
モリのアドレス空間71の新たすP M 1領域(60
00〜6OFF)に変換することにより、処理単位(2
)はCPU7ドL/ス空間75(7)(3000〜3
F F F)マでを使用することが可能である。
空間75の内容を下のアドレスからFFバイトのみを書
き換える例を示している。すなわち、処理単位(2)で
は、CPUアドレス空間75のデータN領域(3000
〜3FFF)のうちで未変更領域(3100〜3 F
F F)までを、メモリマツピング回路73を使用して
データメモリのアドレス空間71のPM領域の(410
0〜4 F F F)に変換する。また、CPUアドレ
ス空間75の変更領域(3000〜30 F F)につ
いては、メモリマツピング回路73を使用してデータメ
モリのアドレス空間71の新たすP M 1領域(60
00〜6OFF)に変換することにより、処理単位(2
)はCPU7ドL/ス空間75(7)(3000〜3
F F F)マでを使用することが可能である。
この結果、複数の処理単位間で同一のデータ列の内容の
一部を変更して、各処理単位で使用する場合であっても
、データ列の内容の全てをメモリ間転送の処理を行うこ
となく、変更領域のみの書換えにより実現することがで
きる。
一部を変更して、各処理単位で使用する場合であっても
、データ列の内容の全てをメモリ間転送の処理を行うこ
となく、変更領域のみの書換えにより実現することがで
きる。
なお、これらの実施例では、各処理単位に1個のメモリ
マツピンク回路を設けているが、高速化を図るために、
各処理単位に複数のメモリマツピング回路を設けてもよ
く、さらに第2図に示すメモリマツピング回路の変換テ
ーブルを複数個設けて、これらを切り替えて使用するこ
とにより、各処理単位ごとに設けたメモリマツピング回
路を統合することも可能である。
マツピンク回路を設けているが、高速化を図るために、
各処理単位に複数のメモリマツピング回路を設けてもよ
く、さらに第2図に示すメモリマツピング回路の変換テ
ーブルを複数個設けて、これらを切り替えて使用するこ
とにより、各処理単位ごとに設けたメモリマツピング回
路を統合することも可能である。
以上説明したように、本発明によれば、処理が複数の処
理単位間で分割して行われる場合、すなわち各処理単位
が単一のCPU内に存在するが、あるいは複数のCPU
にまたがって存在するかに係わらず、(i)処理単位間
でデータ列の受渡し操作をする際に、メモリ間転送処理
を行わずに、データ列の授受が可能であり、(ii)処
理単位間で共有しているデータ列の一部を変更して使用
する際には、データ列の未変更領域に関して、メモリ間
転送処理を行わずに、このデータ列を利用することがで
きる。その結果、メモリ使用率およびバス使用率を減少
させるとともに、ソフトウェアによる複雑なメモリ管理
登行う必要がなくなる。
理単位間で分割して行われる場合、すなわち各処理単位
が単一のCPU内に存在するが、あるいは複数のCPU
にまたがって存在するかに係わらず、(i)処理単位間
でデータ列の受渡し操作をする際に、メモリ間転送処理
を行わずに、データ列の授受が可能であり、(ii)処
理単位間で共有しているデータ列の一部を変更して使用
する際には、データ列の未変更領域に関して、メモリ間
転送処理を行わずに、このデータ列を利用することがで
きる。その結果、メモリ使用率およびバス使用率を減少
させるとともに、ソフトウェアによる複雑なメモリ管理
登行う必要がなくなる。
第1図は本発明の第1の実施例を示すもので、単一CP
U内で複数の処理単位要存在する場合のメモリ管理装置
の構成図、第2図は第1図におけるメモリマツピング回
路の一例を示す図、第3図は本発明の第2の実施例を示
すもので、複数のCPUの各処理単位間で適用されるメ
モリ管理装置の構成図、第4図および第5図はそれぞれ
複数の処理単位間でのデータ列の受渡し操作の一例を示
す図、第6図および第7図は複数の処理単位間での共有
データ列の変更操作の一例を示す図、第8図および第9
図はそれぞれ従来における複数の処理単位間での処理過
程を示す図である。 10.30:メモリ管理装置、11.31:データメモ
リ、]、2,32ニアドレスセレクタ回路、13.14
,21,33,34,4.2,43,52゜53.62
,63,72,73:メモリマツピング回路、15,3
5,36:CPU、16,37゜38ニブログラム/デ
ータメモリ、17.39:=19= データバス、18,41,42ニアドレスバス(CP
Uアドレス空間)、161,162,371゜372:
処理単位、211ニアドレス変換テーブル、44,64
,74:処理単位(1)用CPU7ドレス空間、45,
54,65,75:処理単位(2)用CPUアドレス空
間、55:処理単位(3)用CPUアドレス空間、41
,51,61,71:データメモリアドレス空間。 特許出願人 日本電信電話株式会社 □ 代理人 弁理士 磯 村 雅 俊
U内で複数の処理単位要存在する場合のメモリ管理装置
の構成図、第2図は第1図におけるメモリマツピング回
路の一例を示す図、第3図は本発明の第2の実施例を示
すもので、複数のCPUの各処理単位間で適用されるメ
モリ管理装置の構成図、第4図および第5図はそれぞれ
複数の処理単位間でのデータ列の受渡し操作の一例を示
す図、第6図および第7図は複数の処理単位間での共有
データ列の変更操作の一例を示す図、第8図および第9
図はそれぞれ従来における複数の処理単位間での処理過
程を示す図である。 10.30:メモリ管理装置、11.31:データメモ
リ、]、2,32ニアドレスセレクタ回路、13.14
,21,33,34,4.2,43,52゜53.62
,63,72,73:メモリマツピング回路、15,3
5,36:CPU、16,37゜38ニブログラム/デ
ータメモリ、17.39:=19= データバス、18,41,42ニアドレスバス(CP
Uアドレス空間)、161,162,371゜372:
処理単位、211ニアドレス変換テーブル、44,64
,74:処理単位(1)用CPU7ドレス空間、45,
54,65,75:処理単位(2)用CPUアドレス空
間、55:処理単位(3)用CPUアドレス空間、41
,51,61,71:データメモリアドレス空間。 特許出願人 日本電信電話株式会社 □ 代理人 弁理士 磯 村 雅 俊
Claims (2)
- (1)CPU内の処理単位間でデータ列の授受を行うデ
ータ処理システム内に設けられたメモリ管理装置であっ
て、上記CPUに接続されたメモリとは独立で、かつ、
データ列の授受に用いられる処理単位に共通のデータメ
モリと、上記CPUのアドレス空間を該データメモリの
アドレス空間に変換する複数個のメモリマッピング回路
と、該メモリマッピング回路より該データメモリへのア
ドレス出力の中から、該データメモリにアクセス中のメ
モリマッピング回路のアドレス出力を選択するアドレス
セレクタ回路とを備えたことを特徴とするメモリ管理装
置。 - (2)複数のCPU間でデータ列の授受を行うデータ処
理システム内に設けられたメモリ管理装置であって、他
のCPUに接続されたメモリを互いに利用するか、該メ
モリとは独立に設けられ、データ列の授受に用いられる
処理単位に共通のデータメモリと、上記CPUのアドレ
ス空間を該データメモリのアドレス空間に変換するため
、各CPU対応に設けられたメモリマッピング回路と、
該メモリマッピング回路より該データメモリへのアドレ
ス出力の中から、該データメモリにアクセス中のメモリ
マッピング回路のアドレス出力を選択するアドレスセレ
クタ回路とを備えたことを特徴とするメモリ管理装置。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP63121606A JPH01291343A (ja) | 1988-05-18 | 1988-05-18 | メモリ管理装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP63121606A JPH01291343A (ja) | 1988-05-18 | 1988-05-18 | メモリ管理装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
JPH01291343A true JPH01291343A (ja) | 1989-11-22 |
Family
ID=14815417
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP63121606A Pending JPH01291343A (ja) | 1988-05-18 | 1988-05-18 | メモリ管理装置 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JPH01291343A (ja) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2008217591A (ja) * | 2007-03-06 | 2008-09-18 | Fuji Xerox Co Ltd | 情報処理装置、画像処理装置、画像形成装置、画像形成システム、アドレス変換処理プログラム |
JP2015524979A (ja) * | 2012-08-17 | 2015-08-27 | インテル・コーポレーション | ユニファイドメモリアーキテクチャを介したメモリ共有 |
JP2018139128A (ja) * | 2012-08-17 | 2018-09-06 | インテル コーポレイション | 共有仮想メモリ |
JP2021526766A (ja) * | 2018-06-12 | 2021-10-07 | 華為技術有限公司Huawei Technologies Co.,Ltd. | メモリ管理の方法、装置、およびシステム |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS56166570A (en) * | 1980-05-27 | 1981-12-21 | Mitsubishi Electric Corp | Address generating circuit |
JPS58168166A (ja) * | 1982-03-30 | 1983-10-04 | Nec Corp | メモリ拡張方式 |
JPS62168257A (ja) * | 1986-01-20 | 1987-07-24 | Fujitsu Ltd | メモリを共用するマルチプロセツサシステム |
-
1988
- 1988-05-18 JP JP63121606A patent/JPH01291343A/ja active Pending
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS56166570A (en) * | 1980-05-27 | 1981-12-21 | Mitsubishi Electric Corp | Address generating circuit |
JPS58168166A (ja) * | 1982-03-30 | 1983-10-04 | Nec Corp | メモリ拡張方式 |
JPS62168257A (ja) * | 1986-01-20 | 1987-07-24 | Fujitsu Ltd | メモリを共用するマルチプロセツサシステム |
Cited By (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2008217591A (ja) * | 2007-03-06 | 2008-09-18 | Fuji Xerox Co Ltd | 情報処理装置、画像処理装置、画像形成装置、画像形成システム、アドレス変換処理プログラム |
JP2015524979A (ja) * | 2012-08-17 | 2015-08-27 | インテル・コーポレーション | ユニファイドメモリアーキテクチャを介したメモリ共有 |
JP2016146201A (ja) * | 2012-08-17 | 2016-08-12 | インテル・コーポレーション | ユニファイドメモリアーキテクチャを介したメモリ共有 |
US9514559B2 (en) | 2012-08-17 | 2016-12-06 | Intel Corporation | Memory sharing via a unified memory architecture |
JP2017021837A (ja) * | 2012-08-17 | 2017-01-26 | インテル・コーポレーション | 異種コンピューティングデバイス、異種コンピューティングシステム、方法、プログラム、および非一時的機械可読記録媒体 |
JP2017208124A (ja) * | 2012-08-17 | 2017-11-24 | インテル・コーポレーション | ユニファイドメモリアーキテクチャを介したメモリ共有 |
JP2018139128A (ja) * | 2012-08-17 | 2018-09-06 | インテル コーポレイション | 共有仮想メモリ |
US10198361B2 (en) | 2012-08-17 | 2019-02-05 | Intel Corporation | Memory sharing via a unified memory architecture |
US10929304B2 (en) | 2012-08-17 | 2021-02-23 | Intel Corporation | Memory sharing via a unified memory architecture |
US11531623B2 (en) | 2012-08-17 | 2022-12-20 | Intel Corporation | Memory sharing via a unified memory architecture |
JP2021526766A (ja) * | 2018-06-12 | 2021-10-07 | 華為技術有限公司Huawei Technologies Co.,Ltd. | メモリ管理の方法、装置、およびシステム |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP3127853B2 (ja) | メモリ集積回路並びにこれを用いた主記憶システム及びグラフィクスメモリシステム | |
US6931462B2 (en) | Memory controller which increases bus bandwidth, data transmission method using the same, and computer system having the same | |
JPH01291343A (ja) | メモリ管理装置 | |
US20190286606A1 (en) | Network-on-chip and computer system including the same | |
EP0344677B1 (en) | Microprocessor system | |
CN116150058B (zh) | 一种基于axi总线的并发传输模块和方法 | |
JPH07271654A (ja) | コントローラ | |
JPS6130300B2 (ja) | ||
KR200210744Y1 (ko) | 복수개의 보드간 프로세서 통신 장치 | |
JPS6215642A (ja) | 2アクセス方式メモリ装置 | |
JPS6347867A (ja) | デユアルcpu間通信方式 | |
JPH07175768A (ja) | デュアルcpuシステム | |
JPS61267852A (ja) | デ−タ・バス変換方式 | |
JPS63305447A (ja) | メモリアクセス制御回路 | |
JPS63128464A (ja) | プロセツサ回路 | |
JPH0756860A (ja) | マルチcpuシステム | |
JPS592134A (ja) | 通信制御装置のバスインタフエ−ス回路 | |
JPH04120648A (ja) | 共通バス接続装置 | |
JPS6347856A (ja) | メモリシステム | |
JPH05265923A (ja) | データ転送装置 | |
JPH04156656A (ja) | マルチcpuシステム間通信方法 | |
JPS58213336A (ja) | 通信制御装置 | |
JPS6383854A (ja) | デ−タ転送回路 | |
JPS6261976B2 (ja) | ||
JPS59201153A (ja) | スタンドアロン型画像処理システムのホスト接続方式 |