JPH0227464A - Shared memory control system for multi-processor system - Google Patents
Shared memory control system for multi-processor systemInfo
- Publication number
- JPH0227464A JPH0227464A JP63177192A JP17719288A JPH0227464A JP H0227464 A JPH0227464 A JP H0227464A JP 63177192 A JP63177192 A JP 63177192A JP 17719288 A JP17719288 A JP 17719288A JP H0227464 A JPH0227464 A JP H0227464A
- Authority
- JP
- Japan
- Prior art keywords
- processor
- shared memory
- memory management
- address
- page
- 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
Landscapes
- Multi Processors (AREA)
- Memory System (AREA)
- Memory System Of A Hierarchy Structure (AREA)
Abstract
(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。(57) [Summary] This bulletin contains application data before electronic filing, so abstract data is not recorded.
Description
【発明の詳細な説明】
〔産業上の利用分野〕
本発明は共通のシステムバスに複数のプロセッサが接続
され、そのシステムバス上に共有メモリが置かれたマル
チプロセッサシステムにおける前記共有メモリの管理方
式に関するものである。Detailed Description of the Invention [Field of Industrial Application] The present invention relates to a shared memory management method in a multiprocessor system in which a plurality of processors are connected to a common system bus and a shared memory is placed on the system bus. It is related to.
従来のこの種のマルチプロセッサシステムは第4図に示
すように構成されており、共有メモリのは、各プロセッ
サO〜■からシステムバス■を介してアクセスされる。A conventional multiprocessor system of this type is configured as shown in FIG. 4, and the shared memory is accessed from each of the processors O to (2) via a system bus (2).
そして、各プロセッサO〜[F]はそれぞれメモリ管理
ユニットを独立して持っており、共有メモリのに対する
メモリ管理も各プロセッサが独自に行なっている。Each of the processors O to [F] has an independent memory management unit, and each processor independently manages the shared memory.
従って共有メモリの上の領域をページングによりメモリ
管理を行なおうとする時、ページテーブルを物理メモリ
のどこに配置するかによって管理方法が考えられている
。Therefore, when attempting to manage memory by paging an area on the shared memory, management methods are considered depending on where in the physical memory the page table is placed.
第1の方法は、第5図に示すようにページテーブル◎を
各プロセッサにおけるメモリ管理ユニットMMU内の個
有のローカルなメモリ領域におく方法である。(特開昭
62−263538号公報参照)ところが、この方法は
、共有メモリ■の為のページテーブルが複数存在するこ
とになるため、あるプロセッサが共有メモリ■の為のペ
ージテーブル◎を書き替えた場合、その全てのプロセッ
サの管理する共有メモリ用ページテーブルも同時に変更
して、各ページテーブル間の一貫性を保つ必要があるた
め、かなり?1!雑なソフトウェア処理が必要となる。The first method is to place the page table ◎ in its own local memory area within the memory management unit MMU of each processor, as shown in FIG. (Refer to Japanese Unexamined Patent Publication No. 62-263538.) However, since this method results in the existence of multiple page tables for shared memory ■, a certain processor rewrites page table ◎ for shared memory ■. In this case, the page tables for shared memory managed by all processors must also be changed at the same time to maintain consistency between each page table, so is this a significant problem? 1! Requires complicated software processing.
そこで、第2の方法として第6図に示すように共有メモ
リのためのページテーブル■を共有メモリの上に置(方
法が考えられた。Therefore, as a second method, a method was considered in which the page table (2) for the shared memory was placed on the shared memory as shown in FIG.
(特開昭62−115554号公報参照)この第2の方
法は、各プロッセサから見ればただ一つのページテーブ
ルがあることになり、第1の方法で述べた様な、複数の
ページテーブルの管理といった問題がなくなり、実用化
が容易である。(Refer to Japanese Unexamined Patent Publication No. 115554/1982) This second method means that there is only one page table from the perspective of each processor, and management of multiple page tables as described in the first method is not possible. This problem is eliminated, and practical application is easy.
しかしながら、この場合もメモリ管理機能自体は各プロ
セッサ側にあり、トランスレーション・ルック・アサイ
ドバッファ(以下TLBという)■を各プロセッサに設
ける必要があり、しかも各TLBの管理についても第1
の方法と同様に複雑なハード及びソフト上の処理が必要
となる。However, in this case as well, the memory management function itself is located on each processor side, and it is necessary to provide a translation look-aside buffer (hereinafter referred to as TLB) in each processor.
Similar to the above method, complex hardware and software processing is required.
そこで本発明は、上に述べた様なマルチプロセッサシス
テムにおける共有メモリのメモリ管理方式として実現が
容易で効率の良い方式を提室しようとするものである。Therefore, the present invention aims to provide an easy-to-implement and efficient method for managing shared memory in a multiprocessor system as described above.
本発明は上記の課題を解決する方法として、第1図に示
すようにシステムバス■に接続される共有メモリ回路に
ページテーブル■とアドレス変換機構を備えたメモリ管
理ユニットMMUを設け、且つシステム中の1つのプロ
セッサを共有メモリ管理プロセッサとして用いるように
したものである。As a method for solving the above problems, the present invention provides a memory management unit MMU equipped with a page table ■ and an address conversion mechanism in a shared memory circuit connected to a system bus ■, as shown in FIG. One of the processors is used as a shared memory management processor.
メモリ管理の整合性を保つため、後述のようにアドレス
変換機構から各プロセッサへページ不在信号aとアクセ
ス再開信号すを送出し、メモリ管理プロセッサからはア
ドレス変換機構へページ不在処理終了信号dを送出し、
前記メモリ管理プロセッサ以外の各プロセッサ以外の各
プロセッサから前記アドレス変換機構とメモリ管理プロ
セッサへ同時にアクセスアボート信号Cを送出するよう
にすれば効果的ある。In order to maintain consistency in memory management, the address translation mechanism sends a page absence signal a and an access restart signal s to each processor as described later, and the memory management processor sends a page absence processing end signal d to the address translation mechanism. death,
It is effective if the access abort signal C is simultaneously sent from each processor other than the memory management processor to the address translation mechanism and the memory management processor.
本発明にか−る方式は、第1図かられかるように、従来
方式とは異なり、共有メモリのメモリ管理機能自体が共
有メモリ上にあるため、システムから見た場合、共有メ
モリに関する管理機能がただ一ケ所であるので、各プロ
セッサから共有メモリをアクセスする場合、システムバ
ス上に物理的に出されるアドレスは、論理アドレスであ
り、共有メモリに対するアクセスは、その論理アドレス
を共有メモリのメモリ管理機構により物理アドレスに変
換して、共有メモリのアドレスとしてアクセスすること
になる。As can be seen from FIG. 1, the method according to the present invention differs from the conventional method in that the memory management function of the shared memory itself is located on the shared memory. When accessing shared memory from each processor, the address physically issued on the system bus is a logical address, and when accessing shared memory, that logical address is used as a memory management address for shared memory. The mechanism converts it into a physical address and accesses it as a shared memory address.
従って、この場合メモリ管理機構そのものが、ただ−ケ
所のみである為、メモリ管理を整合性を保って行う事が
容易となる。Therefore, in this case, since the memory management mechanism itself is only in one place, it becomes easy to perform memory management while maintaining consistency.
具体的なインプリメンテーション方法としては、共有メ
モリのメモリ管理機構として、メモリ管理用プロセッサ
を置き、システムバス上の各プロセッサが共有メモリの
メモリ管理を行うのではなく、前記メモリ管理用プロセ
ッサに対し、コマンドを発行して、共有メモリのメモリ
管理を行う事とすることにより、共有メモリのメモリ管
理の整合性を容易に実現できる。As a specific implementation method, a memory management processor is installed as a memory management mechanism for shared memory, and instead of each processor on the system bus managing the shared memory, By issuing commands to perform memory management of the shared memory, consistency in memory management of the shared memory can be easily achieved.
第2図は本発明の実施例を示すもので、プロセッサIA
が共有メモリ已に対してアクセスしようとした時、先づ
アドレス変換機構GによってページテーブルFにおける
アドレスがページテーブルアドレスバスHを通ってペー
ジテーブルFに与えられる。FIG. 2 shows an embodiment of the present invention, in which the processor IA
When a user attempts to access the shared memory, the address in the page table F is first given to the page table F via the page table address bus H by the address translation mechanism G.
ページテーブルの対応するページアドレスが見つかれば
、制御信号バス0を通してその旨をアドレス変換機構G
に通知する。それと同時に共有メモリ已にページアドレ
スバス■を通してページアドレスを与える。又共有メモ
リ已に対してページ内オフセット値は、アドレスバスL
から分岐したアドレスバスによって与えられる。If the corresponding page address of the page table is found, the address translation mechanism G
Notify. At the same time, a page address is given to the shared memory through the page address bus. Also, the intra-page offset value for the shared memory is determined by the address bus L.
is given by an address bus branched from .
その結果、コントロールバスDの伏態に従い、共有メモ
リ已に対するリード/ライト動作が実行される。As a result, read/write operations on the shared memory are executed according to the state of the control bus D.
もし、ページテーブルFの対応するページアドレスが、
ページテーブル上に見つからなかった場合、制御信号バ
ス0を通して、アドレス変換機構Gに対して、ページ不
在の通知がなされる。その結果、アドレス変換機構Gは
共有メモリ已に対するアクセスを要求したプロセッサI
Aに対してアクセスの一時中断コマントをコントロール
バスDを通じて知せる。そして、それと同時に、共有メ
モリ已におけるメモリ管理を司どるプロセッサに対して
コントロールバスDを通して、ページ不在のアクセスが
発生した旨を知らせる。If the corresponding page address of page table F is
If the page is not found on the page table, the address translation mechanism G is notified of the absence of the page via the control signal bus 0. As a result, the address translation mechanism G determines that the processor I that requested access to the shared memory
A command to temporarily suspend access is sent to A via the control bus D. At the same time, it notifies the processor in charge of memory management in the shared memory via the control bus D that a page-missing access has occurred.
メモリ管理を行うプロセッサは、それに対して適切な処
置を行い、アドレス変換機構Gに対して、処置の内容と
終了の結果を知らせる。The processor that performs memory management takes appropriate action and notifies the address translation mechanism G of the content of the action and the result of completion.
もし、プロセッサIAの実行が再開できるのであれば、
プロセッサIAに対しアドレス変換機構Gが再開のコマ
ンドを出して、共有メモリEのアクセスを再開する。If execution of processor IA can be resumed,
The address translation mechanism G issues a restart command to the processor IA, and access to the shared memory E is restarted.
また、もし、再開できない場合、プロセッサIAに対し
、再開できない旨を通知して、プロセッサIAからの今
回の共有メモリ已に対するアクセスを終了する。If restart is not possible, processor IA is notified that restart is not possible, and the current access to the shared memory from processor IA is terminated.
第3図は、第2図におけるコントロールバス信号のうち
、ページ不在が生じた場合にプロセッサとアドレス変換
機構Gとの間でやりとりを行う信号について示すもので
、ページ不在信号aはページテーブル中に該当するペー
ジが存在しながった時、共有メモリEのアクセスを要求
したプロセッサAに対し、不在を通知する為の信号であ
る。FIG. 3 shows, among the control bus signals in FIG. 2, signals that are exchanged between the processor and the address translation mechanism G when a page absence occurs. This is a signal to notify processor A, which requested access to shared memory E, of the absence when the corresponding page no longer exists.
アクセスを要求したプロセッサAは、不在信号を受ける
ると、アクセスを一時中断し、システムバスを解放する
。When processor A, which requested access, receives the absence signal, it temporarily suspends access and releases the system bus.
同時に、メモリ管理プロセッサXは(システム中にただ
1つのみ存在する。)不在信号が発生したことを知ると
、それに対する処理プロセスを実行する。このとき、ア
ドレス変換機構G内に、ページ不在が生じたアドレスに
関する情報等は保持されており、メモリ管理プロセッサ
Xはそれらの情報にアクセスできるようになっている。At the same time, when the memory management processor X (of which there is only one in the system) learns that the absence signal has occurred, it executes a processing process for it. At this time, information regarding the address where the page failure has occurred is held in the address translation mechanism G, and the memory management processor X can access this information.
ページ不在処理プロセスが終了すると、メモリ管理プロ
セッサXは、ページ不在処理終了信号dによりアドレス
変換機構Gへ通知する。When the page absence processing process is completed, the memory management processor X notifies the address conversion mechanism G by using a page absence processing completion signal d.
もし、アクセスの再開が可能であれば、アクセス再開信
号すにより、アクセスを中断していたプロセッサAはア
クセスを再開する。If it is possible to resume access, processor A, which had suspended access, resumes access in response to the access restart signal.
再開が不可能な場合は、アクセスアボート信号Cにより
、再開できない旨を通知する。If restart is not possible, access abort signal C is used to notify that restart is not possible.
アクセスを要求していたプロセッサAはアクセスができ
ない事により、共有メモリアクセス不能の処理ルーチン
へ割込みがかかる。Since processor A, which had requested access, is unable to access the shared memory, an interrupt is generated to a processing routine that cannot access the shared memory.
本発明方式によれば共通のシステムバスを通してアクセ
スできるような共有メモリを持つマルチプロセッサシス
テムにおいて、共有メモリのメモリ管理を、安全で効率
的に行う事ができる。According to the method of the present invention, memory management of the shared memory can be performed safely and efficiently in a multiprocessor system having a shared memory that can be accessed through a common system bus.
第1図は本発明の基本構成を示すブロック図、第2図は
本発明の実施例のブロック図、第3図は実施例における
プロセッサとアドレス変換機構との間で行なわれる信号
のやりとりを示す説明図、第4図は従来のマルチプロセ
ッサシステムの構成を示すブロック図、第5図及び第6
図はそれぞれ従来の共有メモリ管理方式のブロック図、
第1図は本発明の基本構成を示すブロック図、第2図は
本発明の実施例のブロック図、第3図は実施例における
プロセッサとアドレス変換機構との間で行なわれる信号
のやりとりを示す説明図である。
■・・・共有メモリ
■・・・システムバス
■・・・プロセッサ1
■・・・プロセッサ2
■・・・プロセッサn
[F]・・・メモリ管理ユニット
■・・・ページテーブル
A・・・プロセッサI
B・・・アドレスバス
C・・・データバス
D・・・コントロールバス
E・・・共有メモリ
F・・・ページテーブル
G・・・アドレス変換機構
H・・・ページテーブルアドレスバス
I・・・ページアドレスバス
J・・・データバス
K・・・データバス
L・・・アドレスバス
M・・・コントロールバス
N・・・プロセッサ2
0・・・制御信号バス
P・・・共有メモリ回路
X・・・メモリ管理プロセッサ
A・・・プロセッサl
B・・・アドレスバス
C・・・データバス
D・・・コントロールバス
E・・・共有メモリ
F・・・ページテーブル
G・・・アドレス変換機構
H・・・ページテーブルアドレスバス
夏・・・ページアドレスバス
J・・・データバス
K・・・データバス
L・・・アドレスバス
M・・・コントロールバス
N・・・プロセッサ2
0・・・制御信号バス
P・・・共存メモリ回路
X・・・メモリ管理プロセッサFig. 1 is a block diagram showing the basic configuration of the present invention, Fig. 2 is a block diagram of an embodiment of the invention, and Fig. 3 shows the exchange of signals between the processor and the address translation mechanism in the embodiment. An explanatory diagram, FIG. 4 is a block diagram showing the configuration of a conventional multiprocessor system, and FIGS. 5 and 6 are
The figures are block diagrams of conventional shared memory management methods,
Fig. 1 is a block diagram showing the basic configuration of the present invention, Fig. 2 is a block diagram of an embodiment of the invention, and Fig. 3 shows the exchange of signals between the processor and the address translation mechanism in the embodiment. It is an explanatory diagram. ■... Shared memory ■... System bus ■... Processor 1 ■... Processor 2 ■... Processor n [F]... Memory management unit ■... Page table A... Processor I B... Address bus C... Data bus D... Control bus E... Shared memory F... Page table G... Address conversion mechanism H... Page table address bus I... Page address bus J...Data bus K...Data bus L...Address bus M...Control bus N...Processor 20...Control signal bus P...Shared memory circuit X...・Memory management processor A...Processor I B...Address bus C...Data bus D...Control bus E...Shared memory F...Page table G...Address conversion mechanism H...・Page table address bus Summer...Page address bus J...Data bus K...Data bus L...Address bus M...Control bus N...Processor 2 0...Control signal bus P ...Coexistence memory circuit X...Memory management processor
Claims (2)
れ、そのシステムバス上に共有メモリが置かれたマルチ
プロセッサシステムにおいて、前記共有メモリとページ
テーブルおよびアドレス変換機構を備えた共有メモリ回
路をシステムバスに接続すると共に、システム中の1つ
のプロセッサを共有メモリ管理プロセッサとしたことを
特徴とするマルチプロセッサシステムにおける共有メモ
リ管理方式。(1) In a multiprocessor system in which multiple processors are connected to a common system bus and a shared memory is placed on the system bus, the shared memory circuit including the shared memory, page table, and address conversion mechanism is connected to the system bus. 1. A shared memory management method in a multiprocessor system, characterized in that one processor in the system is connected to a shared memory management processor.
信号aとアクセス再開信号bを送出し、メモリ管理プロ
セッサからはアドレス変換機構へページ不在処理終了信
号dを送出し、前記メモリ管理プロセッサ以外の各プロ
セッサから前記アドレス変換機構とメモリ管理プロセッ
サへ同時にアクセスアボート信号cを送出するようにし
たことを特徴とする請求項1記載のマルチプロセッサシ
ステムにおける共有メモリ管理方式。(2) The address translation mechanism sends a page absence signal a and an access restart signal b to each processor, and the memory management processor sends a page absence processing end signal d to the address translation mechanism, and each processor other than the memory management processor 2. A shared memory management system in a multiprocessor system according to claim 1, wherein an access abort signal c is simultaneously sent from said address translation mechanism and said memory management processor.
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP63177192A JPH0227464A (en) | 1988-07-18 | 1988-07-18 | Shared memory control system for multi-processor system |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP63177192A JPH0227464A (en) | 1988-07-18 | 1988-07-18 | Shared memory control system for multi-processor system |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| JPH0227464A true JPH0227464A (en) | 1990-01-30 |
Family
ID=16026787
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP63177192A Pending JPH0227464A (en) | 1988-07-18 | 1988-07-18 | Shared memory control system for multi-processor system |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JPH0227464A (en) |
-
1988
- 1988-07-18 JP JP63177192A patent/JPH0227464A/en active Pending
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US5497480A (en) | Broadcast demap for deallocating memory pages in a multiprocessor system | |
| US6757786B2 (en) | Data consistency memory management system and method and associated multiprocessor network | |
| US4831581A (en) | Central processor unit for digital data processing system including cache management mechanism | |
| JPS59114659A (en) | Memory access control circuit | |
| JPH01169557A (en) | Storage control system for computer | |
| JPH03656B2 (en) | ||
| JPS6341103B2 (en) | ||
| JPH0553912A (en) | Control method for cache memory | |
| JP3219422B2 (en) | Cache memory control method | |
| JPH03210645A (en) | Cache control system | |
| JPS6024663A (en) | Memory access controlling system | |
| JPH0668738B2 (en) | Light back control system of file controller | |
| JPH04291642A (en) | Cache control system | |
| JPH0630085B2 (en) | Computer system | |
| JPS61272861A (en) | Multiprocessor device | |
| JPS60103476A (en) | Bus interface device | |
| JPS63143658A (en) | Memory control system | |
| JPS635460A (en) | Parallel computer | |
| JPS63311467A (en) | Virtual storage managing system for multi-processor system | |
| JPH058458B2 (en) | ||
| JPH01258169A (en) | Shared memory addressing scheme | |
| JPH04117538A (en) | Memory control system | |
| JPH0630083B2 (en) | Data transfer device | |
| JPH01281545A (en) | Cache memory control system | |
| JP2000285089A (en) | Microprocessor and data sharing system |