JPH01291343A - Memory managing device - Google Patents

Memory managing device

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
Application number
JP63121606A
Other languages
Japanese (ja)
Inventor
Mitsuru Maruyama
充 丸山
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.)
Nippon Telegraph and Telephone Corp
Original Assignee
Nippon Telegraph and Telephone Corp
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 Nippon Telegraph and Telephone Corp filed Critical Nippon Telegraph and Telephone Corp
Priority to JP63121606A priority Critical patent/JPH01291343A/en
Publication of JPH01291343A publication Critical patent/JPH01291343A/en
Pending legal-status Critical Current

Links

Landscapes

  • Memory System (AREA)

Abstract

PURPOSE:To curtail an inter-memory transfer processing at the time of giving and receiving a data train and to decrease a memory activity ratio and a bus activity ratio by providing plural memory mapping circuits for converting an address space of a CPU to an address space of a common data memory. CONSTITUTION:CPU address spaces of a data train to which two processing units 161, 162 execute an access pass through memory mapping circuits 13, 14 of a memory managing device 10, respectively and converted to address spaces of a data memory 11, respectively. As for two data memory address spaces, one is selected by an address selector circuit 12, it becomes an address and an access of read/write of the memory 11 can be executed. In such a way, the data train can be given and received without executing an inter-memory transfer processing between the processing units 161, 162, a memory activity ratio and a bus activity ratio are decreased, and also, a complicated memory management by a software becomes unnecessary.

Description

【発明の詳細な説明】 〔産業上の利用分野〕 本発明は、メモリ管理装置に関し、特にCPUに接続さ
れたデータメモリのアドレス管理、およびデータの読み
出し、書き込みの管理を行うメモリ管理装置に関するも
のである。
[Detailed Description of the Invention] [Field of Industrial Application] The present invention relates to a memory management device, and more particularly to a memory management device that manages addresses of data memory connected to a CPU, and manages reading and writing of data. It is.

〔従来の技術〕[Conventional technology]

一般に、情報処理装置においては、CPUと主記憶装置
の間でデータの転送を行って、CPUで処理した結果デ
ータの格納、およびCPUで処理するために必要なデー
タの読み出しを行っている、第8図および第9図は、そ
れぞれ複数の処理単位間での処理の過程を示す図である
Generally, in an information processing device, data is transferred between the CPU and the main memory, and data processed by the CPU is stored and data necessary for processing by the CPU is read. FIG. 8 and FIG. 9 are diagrams each showing a process of processing between a plurality of processing units.

単一C,P U内、あるいは複数のCPU間でデータ列
の授受の処理を行う場合、次のような方θ、か用いられ
る。
When data strings are exchanged within a single CPU or CPU or between multiple CPUs, the following method θ is used.

(i)複数の処理単位間でのデータ列の受は渡し操作 第8図に示すように、前段の処理単位(n−1)82が
出力データ列(A、B、C)をデータメモリ(D、at
a:M) 81に書き込み、次に別の処理単位(n)8
3がこのデータ列を読み出して、決められた処理を行っ
た後、処理済みのデータ列(Z、 B。
(i) Receiving data strings between multiple processing units is a passing operation. As shown in FIG. D,at
a:M) Write to 81, then another processing unit (n) 8
3 reads this data string and performs the predetermined processing, and then reads the processed data string (Z, B.

C)をデータメモリ (Data:N) 81に書き込
み、次に別の処理単位(n+1)84にこのデータ列(
Z、B、C)を渡している。なお、ここで、処理単位と
は、CPUで実行されるプログラムの各処理を言う。
C) to the data memory (Data:N) 81, and then write this data string (N) to another processing unit (n+1) 84.
Z, B, C) are passed. Note that the processing unit here refers to each process of a program executed by the 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)と
変更して装置内のメモリに格納している。
(Communication) Operation of changing a shared data string between multiple processing units As shown in FIG.
:M) is processed by the processing unit (n+1) 93 to partially change the data string (Dat
a:M) was copied into the memory of the processing unit (n+1) 93 and rewritten. That is, in the case of FIG. 9, first, the data string (A, B, C) is read out from the memory 91 to the surface processing units 92 and 93 and processed respectively, and only the processing unit 93 reads this data string ( Z, B, C) and stored in the memory within the device.

なお、このようなメモリの例としては、昭和54年3月
30日電子通信学会発行の「電子通信ハンドブックJP
、1258に記載されている。
An example of such memory is "Electronic Communication Handbook JP" published by the Institute of Electronics and Communication Engineers on March 30, 1978.
, 1258.

〔発明が解決しようとする課題〕[Problem to be solved by the invention]

このように、データ列の授受の処理に際しては、データ
列のメモリ間転送処理が行われるため、メモリ使用率の
増大、およびバス使用率の増大を引き起こし、さらにソ
フトウェアによる複雑なメモリバッファの管理を必要と
していた。その結果、CPUは負荷の増大を招いていた
In this way, when data strings are exchanged, data strings are transferred between memories, which increases memory usage and bus usage, and requires software to manage complex memory buffers. I needed it. As a result, the load on the CPU has increased.

本発明の目的は、このような従来の課題を解決し、単一
CPU内または複数のCPU間で複数の処理単位間にま
たがって処理を行う場合、データ列の授受を行う際のメ
モリ間転送処理を削減して、メモリ使用率およびバス使
用率を低減させ、かつ複雑なメモリバッファ管理を削減
して、CPUの負荷を低減させることが可能なメモリ管
理装置を提供することにある。
An object of the present invention is to solve such conventional problems and to improve inter-memory transfer when sending and receiving data strings when processing is performed across multiple processing units within a single CPU or between multiple CPUs. An object of the present invention is to provide a memory management device capable of reducing processing, reducing memory usage rate and bus usage rate, and reducing complicated memory buffer management to reduce the load on a CPU.

〔課題を解決するための手段〕[Means to solve the problem]

上記目的を達成するため、本発明のメモリ管理装置は、
CPU内の処理単位間でデータ列の授受を行うデータ処
理システム内に設けられたメモリ管理装置であって、上
記CPUに接続されたメモリとは独立で、かつ、データ
列の授受に用いられる処理単位に共通のデータメモリと
、上記CP Uのアドレス空間を該データメモリのアド
レス空間に変換する複数個のメモリマツピング回路と、
該メモリマツピング回路より該データメモリへのアドレ
ス出力の中から、該データメモリにアクセス中のメモリ
マツピング回路のアドレス出力を選択するアドレスセレ
クタ回路とを備えたことに特徴がある。また、複数のC
PU間でデータ列の授受を行うデータ処理システム内に
設けられたメモリ管理装置であって、他のCPUに接続
されたメモリを互いに利用するか、該メモリとは独立に
設けられ、データ列の授受に用いられる処理単位に共通
のデータメモリと、上記CPUのアドレス空間を該デー
タメモリのアドレス空間に変換するため、各CPU対応
に設けられたメモリマツピング回路と、該メモリマツピ
ング回路より該データメモリへのアドレス出力の中から
、該データメモリにアクセス中のメモリマツピング回路
のアドレス出力を選択するアドレスセレクタ回路とを備
えたことにも特徴がある。
In order to achieve the above object, the memory management device of the present invention includes:
A memory management device installed in a data processing system that exchanges data strings between processing units within a CPU, which is independent of the memory connected to the CPU and is used for exchanging data strings. a data memory common to the unit; and a plurality of memory mapping circuits for converting the address space of the CPU into the address space of the data memory;
The present invention is characterized in that it includes an address selector circuit that selects the address output of the memory mapping circuit that is accessing the data memory from among the address outputs from the memory mapping circuit to the data memory. Also, multiple C
A memory management device installed in a data processing system that exchanges data strings between CPUs, which mutually utilizes memories connected to other CPUs, or is provided independently from other CPUs to transfer data strings. A data memory common to the processing units used for transfer and reception, a memory mapping circuit provided for each CPU in order to convert the address space of the CPU into the address space of the data memory, and a memory mapping circuit provided for each CPU, and Another feature of the present invention is that it includes an address selector circuit that selects the address output of the memory mapping circuit that is accessing the data memory from among the address outputs to the data memory.

〔作  用〕[For production]

本発明においては、(i)単一CPUの場合、CPU内
のメモリとは独立した各処理単位間でデータ列の授受を
行うための共通のデータメモリを設け、メモリマツピン
グ回路により、各処理単位ごとにCPUのアドレス空間
とデータメモリのアドレス空間を変換した後、複数のメ
モリマツピング回路により変換されたデータメモリの複
数のアドレス空間の中から、アドレスセレクタ回路によ
り1つだけ選択する。また、(j])複数CPUの場合
には、データメモリを介して各CPUの処理中1位間で
データ列の授受を行い、メモリマツピンク回路により各
CPUの処理単位ごとにCPUのアドレス空間とデータ
メモリのアドレス空間を変換した後、複数のメモリマツ
ピング回路により変換されたデータメモリの複数のアド
レス空間のうち、アドレスセレクタ回路により1つだけ
選択する。
In the present invention, (i) in the case of a single CPU, a common data memory is provided for exchanging data strings between each processing unit independent of the memory within the CPU, and a memory mapping circuit is used for each processing unit. After converting the address space of the CPU and the address space of the data memory for each unit, only one address space is selected by the address selector circuit from among the plurality of address spaces of the data memory converted by the plurality of memory mapping circuits. In addition, (j]) In the case of multiple CPUs, data strings are exchanged between the first processing units of each CPU via the data memory, and the address space of the CPU is stored for each processing unit of each CPU using the memory pin pink circuit. After converting the address space of the data memory, the address selector circuit selects only one of the plurality of address spaces of the data memory converted by the plurality of memory mapping circuits.

〔実施例〕〔Example〕

以下、本発明の原理および実施例を、図面により詳細に
説明する。
The principles and embodiments of the present invention will be explained in detail below with reference to the drawings.

(i)複数の処理単位間でのデータ列の受渡し操作 CPUのアドレス空間の下で処理される処理単位n−1
から処理単位nの処理を経て、処理単位n+1にデータ
列の受渡し操作が行われる場合を例にとり、説明する(
第8図に対応する)。
(i) Transfer operation of data strings between multiple processing units Processing unit n-1 processed under the address space of the CPU
This will be explained by taking as an example a case where a data string is passed from , to processing unit n, and then to processing unit n+1 (
(corresponding to Figure 8).

先ず、処理単位n−1が処理単位nに対して出力しよう
とするデータ列Mは、処理単位n−1のCPUアドレス
空間の中に作成される。このとき、処理単位n−1の扱
うデータ列MのCPUアドレス空間は、処理単位n−1
対応に設けられたメモリマツピング回路により、データ
メモリのアドレス空間に変換される。従って、処理単位
n−1が処理単位nに対して出力しようとするデータ列
Mは、全てデータメモリ内に作成されることになる。
First, a data string M that processing unit n-1 attempts to output to processing unit n is created in the CPU address space of processing unit n-1. At this time, the CPU address space of the data string M handled by the processing unit n-1 is
A correspondingly provided memory mapping circuit converts it into the address space of the data memory. Therefore, the entire data string M that processing unit n-1 attempts to output to processing unit n will be created in the data memory.

次に、処理単位nでは、処理単位nの扱うデータ列Mの
CPUアドレス空間が処理単位n対応に設けられたメモ
リマツピング回路により、データメモリのアドレス空間
に変換される。このため、処理単位nからデータ列Mの
読み出しが可能となる。
Next, in the processing unit n, the CPU address space of the data string M handled by the processing unit n is converted into the data memory address space by a memory mapping circuit provided corresponding to the processing unit n. Therefore, it becomes possible to read the data string M from the processing unit n.

このようにして、処理単位n−1から処理単位nに対し
てデータ列の受渡しが、メモリ間の転送処理なしに実現
できる。
In this way, data strings can be transferred from processing unit n-1 to processing unit n without any transfer processing between memories.

次に、処理単位nがデータ列Mに処理を加えて=7− MlとM2(ここでは、MlがMに対して変更領域、M
2がMの中の未変更領域)からなる新データ列Nにして
、処理単位n+1にデータ列を受は渡すものとする。
Next, processing unit n applies processing to data string M, and = 7- Ml and M2 (here, Ml is a change area for M, M
2 is an unaltered area in M), and the data string is passed to the processing unit n+1.

処理単位nでは、処理単位n対応に設けられたメモリマ
ツピング回路により、変更領域のM1領域のCPUアド
レス空間をデータメモリの中の新たに割り当てたデータ
列に変換し、未変更領域のM2領域のCPUアドレス空
間は以前のデータメモリの中のデータ列のアドレス空間
に変換して、これを処理単位n+1に受は渡す。
In the processing unit n, the memory mapping circuit provided for the processing unit n converts the CPU address space of the M1 area of the changed area into a newly allocated data string in the data memory, and converts the CPU address space of the M1 area of the changed area into the newly allocated data string of the unchanged area M2 area. The CPU address space of is converted into the address space of the data string in the previous data memory, and this is passed to the processing unit n+1.

処理単位n+1では、処理単位n+1の扱うデータ列N
のCPUアドレス空間が処理単位n+1対応に設けられ
たメモリマツピング回路により、データメモリのアドレ
ス空間に変換される。このため、処理単位n+1からデ
ータ列Nの読み出しが可能になる。
In the processing unit n+1, the data string N handled by the processing unit n+1
The CPU address space of is converted into the data memory address space by a memory mapping circuit provided corresponding to the processing unit n+1. Therefore, data string N can be read from processing unit n+1.

これにより、受は渡されるデータ列N中のM1領域は、
新たに割り当てられたデータメモリの領域を使用するが
、M2領域に関しては、処理単位nから処理単位n+1
に受は渡される過程でメモリ間転送処理なしに実現でき
る。
As a result, the M1 area in the data string N that is passed to the receiver is
The newly allocated data memory area is used, but for the M2 area, processing unit n to processing unit n+1 is used.
Receipt can be achieved without memory-to-memory transfer processing during the passing process.

(ii)複数の処理単位間での共有データ列の変更操作 処理単位nと処理単位n+1とで共有データ列Mを持ち
、これを処理単位n+1側が一部書き換える操作を例に
とって説明する(第9図に対応する)。
(ii) Changing operation of shared data string between multiple processing units Processing unit n and processing unit n+1 have a shared data string M, and the processing unit n+1 side partially rewrites this. (corresponding to the figure).

処理単位nでは、処理単位nの扱う共有データ列MのC
PUアドレス空間が、処理単位n対応に設けられたメモ
リマツピング回路により、データメモリのアドレス空間
に変換される。このため、処理単位nからデータ列Mの
読み出しが可能となる。
In the processing unit n, C of the shared data string M handled by the processing unit n
The PU address space is converted into a data memory address space by a memory mapping circuit provided for each processing unit n. Therefore, it becomes possible to read the data string M from the processing unit n.

処理単位n+1では、処理単位n+1の扱う共有データ
列MのCPUアドレス空間が、処理単位n+1対応に設
けられたメモリマツピング回路により、データメモリの
アドレス空間に変換される。
In the processing unit n+1, the CPU address space of the shared data string M handled by the processing unit n+1 is converted into the data memory address space by a memory mapping circuit provided for the processing unit n+1.

これにより、処理単位nと処理単位n+1で同じデータ
列を共有していることになる。
This means that processing unit n and processing unit n+1 share the same data string.

このときに、処理単位n+1がデータ列Mの一部を変更
して、Ml+M2とする場合(Mlが変更箇所、M2が
共有箇所の残り部分とする)には、処理単位n+1対応
に設けられたメモリマツピング回路を使用して、変更領
域M1のCPUアドレス空間はデータメモリの中の新た
に割り当てたデータ列に変換し、一方の共有領域の残り
のM2のCPUアドレス空間は、以前のデータメモリの
中のデータ列のアドレス空間に変換する。
At this time, if processing unit n+1 changes a part of data string M to make it Ml+M2 (Ml is the changed part and M2 is the remaining part of the shared part), a Using a memory mapping circuit, the CPU address space of the modified area M1 is converted to a newly allocated data string in the data memory, and the CPU address space of the remaining M2 of one shared area is converted to the previous data memory. Convert to the address space of the data string in .

これにより、Mlの領域は、新たに割り当てられたデー
タメモリの領域を使用するが、残りのM2の領域は、メ
モリ間転送の処理なしで処理単位nと共有して利用する
ことが可能となる。
As a result, the Ml area uses the newly allocated data memory area, but the remaining M2 area can be shared and used with the processing unit n without the need for inter-memory transfer processing. .

第1図は、本発明の第1の実施例を示すメモリ管理装置
のブロック図であって、単一CPU内にデータ列の送受
を行う2つの処理単位が存在する場合を示している。
FIG. 1 is a block diagram of a memory management device showing a first embodiment of the present invention, and shows a case where two processing units for sending and receiving data strings exist within a single CPU.

第1図において、10が本発明のメモリ管理装置、11
はデータメモリ、12はアドレスセレクタ回路、13.
14はメモリマツピング回路、15はCPU、16はプ
ログラム/データメモリ、161.162はプログラム
/データメモリに格納されている処理単位(1)、(2
)、17はデータバス、18はアドレスバスである。
In FIG. 1, 10 is a memory management device of the present invention, and 11 is a memory management device of the present invention.
12 is a data memory; 12 is an address selector circuit; 13.
14 is a memory mapping circuit, 15 is a CPU, 16 is a program/data memory, and 161.162 are processing units (1) and (2) stored in the program/data memory.
), 17 is a data bus, and 18 is an address bus.

2つの処理単位161,162がアクセスするデータ列
のCPUアドレス空間は、2つの処理単位に対応して設
けられた2つのメモリマツピング13.14を経由して
、それぞれデータメモリ11のアドレス空間に変換され
る。2つのデータメモリのアドレス空間は、アドレスセ
レクタ回路12により1つが選択され、それがデータメ
モリ11のアドレスとなって、メモリ11のリード/ラ
イトのアクセスが可能となる。
The CPU address space of the data strings accessed by the two processing units 161 and 162 is transferred to the address space of the data memory 11 via two memory mappings 13 and 14 provided corresponding to the two processing units. converted. One of the address spaces of the two data memories is selected by the address selector circuit 12, which becomes the address of the data memory 11, and the memory 11 can be accessed for read/write.

ここで、データメモリ11は、専用のデータRAMで構
成されているものとする。
Here, it is assumed that the data memory 11 is composed of a dedicated data RAM.

第2図は、第1図におけるメモリマツピング回目の構成
図である。
FIG. 2 is a block diagram of the memory mapping time in FIG. 1.

第2図において、21がメモリマツピング回路、22は
CPUアドレスバス、23はデータメモリアドレスバス
、211はアドレス変換テーブルで=11− ある。
In FIG. 2, 21 is a memory mapping circuit, 22 is a CPU address bus, 23 is a data memory address bus, and 211 is an address conversion table.

例えば、CP U 15からデータ列へのア1−レス5
000H(ここで、Hは16進を示す)は、アドレス変
換テーブル211によりその箇所の物理アドレスの60
00Hに変換される。
For example, address 1-5 from CPU 15 to data string
000H (here, H indicates hexadecimal) is 60 of the physical address at that location according to the address conversion table 211.
Converted to 00H.

第3図は、本発明の第2の実施例を示すメモリ管理装置
のブロック図であって、複数のCPU間でデータ列の入
出力を行う2つの処理単位が存在する場合を示している
FIG. 3 is a block diagram of a memory management device showing a second embodiment of the present invention, and shows a case where there are two processing units that input and output data strings between a plurality of CPUs.

第3図において、30は本発明のメモリ管理装置、31
はデータメモリ、32はアドレスセレクタ回路、33.
34はメモリマツピング回路(1)。
In FIG. 3, 30 is a memory management device of the present invention, 31
32 is a data memory, 32 is an address selector circuit, and 33.
34 is a memory mapping circuit (1).

(2)、35.36はc p u(1)、(2)、37
.38はプログラム/データメモリ、371,381は
処理単位(1)(2)、39はデータバス、4]、、4
2はアドレスバスである。
(2), 35.36 is c p u (1), (2), 37
.. 38 is a program/data memory, 371 and 381 are processing units (1) (2), 39 is a data bus, 4], 4
2 is an address bus.

CPU35のアドレス空間は、メモリマツピング回路3
3によりデータメモリ31のアドレス空間に変換された
後、アドレスセレクタ回路32により選択されて、デー
タメモリ31内のデータ列を操作することができる。C
PU36側からは、CPU36の論理アドレス空間がメ
モリマツピング回路34を経由してデータメモリ31の
アドレス空間に変換された後、アドレスセレクタ回路3
2により選択されて、データメモリ31内のデータ列を
操作することができる。
The address space of the CPU 35 is provided by the memory mapping circuit 3.
3 into the address space of the data memory 31, it is selected by the address selector circuit 32, and the data string in the data memory 31 can be manipulated. C
From the PU 36 side, after the logical address space of the CPU 36 is converted into the address space of the data memory 31 via the memory mapping circuit 34, the address selector circuit 3
2, the data string in the data memory 31 can be manipulated.

ここで、データメモリ31は、専用のデータRAMで構
成されるか、あるいはCPU35,36のメインメモリ
の一部を使用することも可能である。また、第3図に示
すように、2つのCPUの処理単位間の場合には、アド
レスセレクタ回路32とデータRAM31を内蔵した2
ボ一トRAMを使用することも可能である。
Here, the data memory 31 may be composed of a dedicated data RAM, or a part of the main memory of the CPUs 35 and 36 may be used. Furthermore, as shown in FIG. 3, in the case of processing between two CPU processing units, two
It is also possible to use a button RAM.

なお、実施例では、データの授受用のデータメモリ31
をCPU35,36のプログラム/データメモリ37.
38とは独立して設けた場合を示しているが、例えば、
アクセス頻度が多くない場合には、データの受は渡し用
データメモリをプログラム/データメモリと共有するこ
とも可能である。この場合には、第3図において、アド
レスセレクタ回路32の入力としてCPU35または3
6のうちのいずれか一方のアドレスバス(41゜42の
うちの1つ)を加えて3人力とし、メモリマツピング回
路33.34の出力とアドレスバス41または42を必
要に応じて切り替えることにより実現できる。
In addition, in the embodiment, the data memory 31 for sending and receiving data
program/data memory 37. of the CPUs 35, 36.
38 is shown, but for example,
If the frequency of access is not high, it is also possible to share the data memory for receiving and passing data with the program/data memory. In this case, in FIG. 3, the CPU 35 or 3
By adding one of the address buses 41 and 6 (one of 41 and 42) to make it a three-person operation, and switching between the output of the memory mapping circuit 33 and 34 and the address bus 41 or 42 as necessary. realizable.

第4図および第5図は、複数の処理単位間でのデータ列
の受は渡し操作を示す図である。
FIGS. 4 and 5 are diagrams illustrating an operation for receiving and passing data strings between a plurality of processing units.

第4図に示すように、例えば、処理単位(1)(2)(
3)の3つの処理単位間での受は渡し操作において、処
理単位(1)が使用するCPUのアドレス空間6000
〜6FFFは、メモリマツピング回路42により、デー
タメモリの71(レス空間2000〜2FFFに変換さ
れる。また、処理単位(2)のcpuのアドレス空間8
000〜8FFFは、メモリマツピング回路43により
、同一のデータメモリのアドレス空間2000〜2FF
Fに変換され、処理単位間でのデータ列の入出力が可能
となる。
As shown in FIG. 4, for example, processing units (1) (2) (
In the transfer operation between the three processing units in 3), the address space 6000 of the CPU used by the processing unit (1) is
~6FFF is converted by the memory mapping circuit 42 to 71 (response space 2000 ~ 2FFF) of the data memory. Also, the address space 8 of the CPU of processing unit (2)
000 to 8FFF are assigned to address spaces 2000 to 2FF of the same data memory by the memory mapping circuit 43.
F, and data strings can be input and output between processing units.

第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)に変換する
As shown in FIG. 5, in the processing unit (2), M in the address space 54 of the CPU used by the processing unit (2)
When changing one area (8000 to 8100), the memory mapping circuit 52 corresponding to the processing unit (2) creates a new data memory space PMI (
4000-40 F F) and make changes. Regarding the M2 area (8100 to 8 FFF) which is an unchanged area, the memory mapping circuit 52 corresponding to the processing unit (2) maps the M2 area to PM2M7C3100 to 2 FFF in the original data memory space 51. Convert to

このM1+M2からなるデータ列Nを処理単位(3)に
受は渡す時には、処理単位(3)のCPUアドレス空間
(AOOO−AFFF)55を処理単位(3)に対応し
たメモリマツピング回路53により、データメモリアド
レス空間51のPMI領域(4000〜40 F F)
およびPM2M7C3100〜2 F F F)に変換
することによって、処理単位間でのデータ列の入出力が
可能となる。
When passing the data string N consisting of M1+M2 to the processing unit (3), the CPU address space (AOOO-AFFF) 55 of the processing unit (3) is transferred by the memory mapping circuit 53 corresponding to the processing unit (3). PMI area of data memory address space 51 (4000 to 40 F F)
and PM2M7C3100-2FFF), it becomes possible to input and output data strings between processing units.

第4図および第5図から明らかなように、本実施例では
、単一CPUの場合であっても、複数=15− CPUの場合であっても、複数の処理単位間で入出力さ
れるデータ列は、未変更領域に関してはメモリ間転送処
理なしで授受が可能になるという利点がある。
As is clear from FIGS. 4 and 5, in this embodiment, whether there is a single CPU or multiple = 15 CPUs, input/output is performed between multiple processing units. Data strings have the advantage that they can be exchanged without memory-to-memory transfer processing for unmodified areas.

第6図および第7図は、複数の処理単位間での共有デー
タ列の変更操作の一例を示す説明図である。ここでは、
処理単位(1)と処理単位(2)とが、データ列Mを共
有している場合を示している。
FIGS. 6 and 7 are explanatory diagrams showing an example of an operation for changing a shared data string between a plurality of processing units. here,
A case is shown in which processing unit (1) and processing unit (2) share data string 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)ニ変換している。このため、互いに同
じデータ列を共有して読み出すことができる。
As shown in FIG. 6, in the processing unit (1), the M area (1000 to IFFF) of the CPU address space 64 is mapped to the PM area (1000 to IFFF) of the data memory space 61 by the memory mapping circuit 62 corresponding to the processing unit (1). 2000~2 F F
F). In addition, in processing unit (2), C
M area of PU address space 65 (3000 to 3FFF)
A memory mapping circuit 63 corresponding to the processing unit (2)
Data memory space 61 (7) PM area (2000
-2F F F) conversion. Therefore, the same data string can be shared and read out.

第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)マでを使用することが可能である。
FIG. 7 shows an example in which only the FF byte of the contents of the CPU address space 75 of the processing unit (2) is rewritten from the lower address. That is, in the processing unit (2), the data N area (3000
~3FFF), the unmodified area (3100~3FFF)
Using the memory mapping circuit 73, the data up to F F) are mapped to (410
0 to 4 FF F). Furthermore, regarding the changed area (3000 to 30 FF) of the CPU address space 75, the memory mapping circuit 73 is used to change the new P M 1 area (60 FF) of the address space 71 of the data memory.
00 to 6OFF), the processing unit (2
) is the CPU 7 space 75 (7) (3000~3
It is possible to use F F F).

この結果、複数の処理単位間で同一のデータ列の内容の
一部を変更して、各処理単位で使用する場合であっても
、データ列の内容の全てをメモリ間転送の処理を行うこ
となく、変更領域のみの書換えにより実現することがで
きる。
As a result, even if a part of the contents of the same data string is changed between multiple processing units and used in each processing unit, the entire contents of the data string must be transferred between memories. This can be achieved by rewriting only the changed area.

なお、これらの実施例では、各処理単位に1個のメモリ
マツピンク回路を設けているが、高速化を図るために、
各処理単位に複数のメモリマツピング回路を設けてもよ
く、さらに第2図に示すメモリマツピング回路の変換テ
ーブルを複数個設けて、これらを切り替えて使用するこ
とにより、各処理単位ごとに設けたメモリマツピング回
路を統合することも可能である。
In addition, in these embodiments, one memory pine pink circuit is provided for each processing unit, but in order to increase the speed,
A plurality of memory mapping circuits may be provided in each processing unit, and by providing a plurality of memory mapping circuit conversion tables shown in FIG. It is also possible to integrate memory mapping circuitry.

〔発明の効果〕〔Effect of the invention〕

以上説明したように、本発明によれば、処理が複数の処
理単位間で分割して行われる場合、すなわち各処理単位
が単一のCPU内に存在するが、あるいは複数のCPU
にまたがって存在するかに係わらず、(i)処理単位間
でデータ列の受渡し操作をする際に、メモリ間転送処理
を行わずに、データ列の授受が可能であり、(ii)処
理単位間で共有しているデータ列の一部を変更して使用
する際には、データ列の未変更領域に関して、メモリ間
転送処理を行わずに、このデータ列を利用することがで
きる。その結果、メモリ使用率およびバス使用率を減少
させるとともに、ソフトウェアによる複雑なメモリ管理
登行う必要がなくなる。
As explained above, according to the present invention, when processing is performed dividedly among a plurality of processing units, that is, each processing unit exists within a single CPU, or
Regardless of whether the data string exists across the processing units, (i) when transferring the data string between the processing units, it is possible to transfer the data string without performing inter-memory transfer processing, and (ii) the processing unit When changing and using a part of a data string shared between devices, this data string can be used without performing inter-memory transfer processing on the unaltered area of the data string. As a result, the memory usage rate and bus usage rate are reduced, and the need for complicated memory management registration by software is eliminated.

【図面の簡単な説明】[Brief explanation of the drawing]

第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:データメモリアドレス空間。 特許出願人 日本電信電話株式会社 □ 代理人 弁理士 磯 村 雅 俊
FIG. 1 shows a first embodiment of the present invention, in which a single CP
A block diagram of a memory management device when a plurality of processing units are required in U, FIG. 2 is a diagram showing an example of the memory mapping circuit in FIG. 1, and FIG. 3 is a diagram showing a second embodiment of the present invention. FIG. 4 and FIG. 5 are diagrams each showing an example of a data string transfer operation between a plurality of processing units; FIGS. 6 and 7 are diagrams showing an example of an operation for changing a shared data string between multiple processing units, and FIGS.
Each figure is a diagram showing a conventional processing process between a plurality of processing units. 10.30: Memory management device, 11.31: Data memory, ], 2,32 Near address selector circuit, 13.14
,21,33,34,4.2,43,52゜53.62
, 63, 72, 73: Memory mapping circuit, 15, 3
5,36: CPU, 16,37゜38 Niprogram/Data memory, 17.39:=19= Data bus, 18,41,42 Near address bus (CP
U address space), 161, 162, 371° 372:
Processing unit, 211 Near address conversion table, 44, 64
, 74: CPU7 dress space for processing unit (1), 45,
54, 65, 75: CPU address space for processing unit (2), 55: CPU address space for processing unit (3), 41
, 51, 61, 71: data memory address space. Patent applicant Nippon Telegraph and Telephone Corporation □ Agent Patent attorney Masatoshi Isomura

Claims (2)

【特許請求の範囲】[Claims] (1)CPU内の処理単位間でデータ列の授受を行うデ
ータ処理システム内に設けられたメモリ管理装置であっ
て、上記CPUに接続されたメモリとは独立で、かつ、
データ列の授受に用いられる処理単位に共通のデータメ
モリと、上記CPUのアドレス空間を該データメモリの
アドレス空間に変換する複数個のメモリマッピング回路
と、該メモリマッピング回路より該データメモリへのア
ドレス出力の中から、該データメモリにアクセス中のメ
モリマッピング回路のアドレス出力を選択するアドレス
セレクタ回路とを備えたことを特徴とするメモリ管理装
置。
(1) A memory management device provided in a data processing system that exchanges data strings between processing units within a CPU, which is independent of the memory connected to the CPU, and
A data memory common to processing units used for sending and receiving data strings, a plurality of memory mapping circuits that convert the address space of the CPU into the address space of the data memory, and an address from the memory mapping circuit to the data memory. A memory management device comprising: an address selector circuit that selects an address output of a memory mapping circuit that is accessing the data memory from among the outputs.
(2)複数のCPU間でデータ列の授受を行うデータ処
理システム内に設けられたメモリ管理装置であって、他
のCPUに接続されたメモリを互いに利用するか、該メ
モリとは独立に設けられ、データ列の授受に用いられる
処理単位に共通のデータメモリと、上記CPUのアドレ
ス空間を該データメモリのアドレス空間に変換するため
、各CPU対応に設けられたメモリマッピング回路と、
該メモリマッピング回路より該データメモリへのアドレ
ス出力の中から、該データメモリにアクセス中のメモリ
マッピング回路のアドレス出力を選択するアドレスセレ
クタ回路とを備えたことを特徴とするメモリ管理装置。
(2) A memory management device installed in a data processing system that exchanges data strings between multiple CPUs, which mutually uses the memory connected to other CPUs or is installed independently from the memory. a memory mapping circuit provided for each CPU to convert the address space of the CPU into the address space of the data memory;
A memory management device comprising: an address selector circuit that selects an address output of a memory mapping circuit that is accessing the data memory from among address outputs from the memory mapping circuit to the data memory.
JP63121606A 1988-05-18 1988-05-18 Memory managing device Pending JPH01291343A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP63121606A JPH01291343A (en) 1988-05-18 1988-05-18 Memory managing device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP63121606A JPH01291343A (en) 1988-05-18 1988-05-18 Memory managing device

Publications (1)

Publication Number Publication Date
JPH01291343A true JPH01291343A (en) 1989-11-22

Family

ID=14815417

Family Applications (1)

Application Number Title Priority Date Filing Date
JP63121606A Pending JPH01291343A (en) 1988-05-18 1988-05-18 Memory managing device

Country Status (1)

Country Link
JP (1) JPH01291343A (en)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008217591A (en) * 2007-03-06 2008-09-18 Fuji Xerox Co Ltd Information processor, image processor, image forming apparatus, image forming system, and address conversion processing program
JP2015524979A (en) * 2012-08-17 2015-08-27 インテル・コーポレーション Memory sharing through unified memory architecture
JP2018139128A (en) * 2012-08-17 2018-09-06 インテル コーポレイション Shared virtual memory
JP2021526766A (en) * 2018-06-12 2021-10-07 華為技術有限公司Huawei Technologies Co.,Ltd. Memory management methods, equipment, and systems

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS56166570A (en) * 1980-05-27 1981-12-21 Mitsubishi Electric Corp Address generating circuit
JPS58168166A (en) * 1982-03-30 1983-10-04 Nec Corp Memory extension system
JPS62168257A (en) * 1986-01-20 1987-07-24 Fujitsu Ltd Multiprocessor system sharing memory

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS56166570A (en) * 1980-05-27 1981-12-21 Mitsubishi Electric Corp Address generating circuit
JPS58168166A (en) * 1982-03-30 1983-10-04 Nec Corp Memory extension system
JPS62168257A (en) * 1986-01-20 1987-07-24 Fujitsu Ltd Multiprocessor system sharing memory

Cited By (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008217591A (en) * 2007-03-06 2008-09-18 Fuji Xerox Co Ltd Information processor, image processor, image forming apparatus, image forming system, and address conversion processing program
JP2015524979A (en) * 2012-08-17 2015-08-27 インテル・コーポレーション Memory sharing through unified memory architecture
JP2016146201A (en) * 2012-08-17 2016-08-12 インテル・コーポレーション Memory sharing via unified memory architecture
US9514559B2 (en) 2012-08-17 2016-12-06 Intel Corporation Memory sharing via a unified memory architecture
JP2017021837A (en) * 2012-08-17 2017-01-26 インテル・コーポレーション Heterogeneous computing device, heterogeneous computing system, method, program, and non-transitory machine-readable storage medium
JP2017208124A (en) * 2012-08-17 2017-11-24 インテル・コーポレーション Memory sharing via unified memory architecture
JP2018139128A (en) * 2012-08-17 2018-09-06 インテル コーポレイション Shared virtual memory
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 (en) * 2018-06-12 2021-10-07 華為技術有限公司Huawei Technologies Co.,Ltd. Memory management methods, equipment, and systems

Similar Documents

Publication Publication Date Title
JP3127853B2 (en) Memory integrated circuit, main storage system and graphics memory system using the same
US6931462B2 (en) Memory controller which increases bus bandwidth, data transmission method using the same, and computer system having the same
JPH01291343A (en) Memory managing device
US20190286606A1 (en) Network-on-chip and computer system including the same
EP0344677B1 (en) Microprocessor system
CN116150058B (en) AXI bus-based concurrent transmission module and method
JPH07271654A (en) Controller
JPS6130300B2 (en)
KR200210744Y1 (en) Apparatus for data communication between processors
JPS6215642A (en) Memory device for double access system
JPS6347867A (en) Inter-dual cpu communication system
JPH07175768A (en) Dual cpu system
JPS63305447A (en) Memory access control circuit
JPS63128464A (en) Processor circuit
JPS593532A (en) Data processing device
JPH0756860A (en) Multi-cpu system
JPS592134A (en) Bus interface circuit of communication control device
JPH04120648A (en) Common bus connecting device
JPS6347856A (en) Memory system
JPH05265923A (en) Data transfer equipment
JPH04156656A (en) Communication method between multi-cpu systems
JPS58213336A (en) Communication controller
JPS6383854A (en) Data transfer circuit
JPS6261976B2 (en)
JPS59201153A (en) Host connection system for stand-alone type picture processing system