JPS616753A - Common memory device - Google Patents
Common memory deviceInfo
- Publication number
- JPS616753A JPS616753A JP12531684A JP12531684A JPS616753A JP S616753 A JPS616753 A JP S616753A JP 12531684 A JP12531684 A JP 12531684A JP 12531684 A JP12531684 A JP 12531684A JP S616753 A JPS616753 A JP S616753A
- Authority
- JP
- Japan
- Prior art keywords
- common memory
- bank
- signals
- processors
- access
- 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
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/14—Handling requests for interconnection or transfer
- G06F13/16—Handling requests for interconnection or transfer for access to memory bus
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F15/00—Digital computers in general; Data processing equipment in general
- G06F15/16—Combinations of two or more digital computers each having at least an arithmetic unit, a program unit and a register, e.g. for a simultaneous processing of several programs
- G06F15/163—Interprocessor communication
- G06F15/167—Interprocessor communication using a common memory, e.g. mailbox
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computer Hardware Design (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Software Systems (AREA)
- Multi Processors (AREA)
Abstract
Description
【発明の詳細な説明】
〔発明の技術分野〕
本発明は、複数のプロセッサで共有する、コモンメモリ
装置Iこ関するものである。DETAILED DESCRIPTION OF THE INVENTION [Technical Field of the Invention] The present invention relates to a common memory device I that is shared by a plurality of processors.
一つのシステムの中に、複数のプロセッサを内蔵し、こ
れらで並列に演算制御を行なう、マルチプロセッサシス
テムが近年数多く適用される様になってきた。In recent years, many multiprocessor systems have come into use, in which a single system includes a plurality of processors and performs arithmetic control in parallel.
このマルチプロセッサシステムには、メインプロセッサ
に演算コープロセツサを密に結合するものから、単一バ
スに複数のプロセッサを接続するもの、複数のプロセッ
サと複数のメモリやIloをマトリックス状に接続する
ものなどがある。These multiprocessor systems include those in which an arithmetic processor is tightly coupled to the main processor, those in which multiple processors are connected to a single bus, and those in which multiple processors are connected to multiple memories and ILOs in a matrix. be.
これらの中で最も一般的に採用されているのが、複数の
プロセッサで一つのメモリを共有するコモンメモリ方式
である。このコモンメモリ方式のマルチプロセッサシス
テムの例ヲ、フロセッサが2つの場合について、第3図
に示す。The most commonly adopted of these is the common memory method in which a single memory is shared by multiple processors. An example of this common memory type multiprocessor system is shown in FIG. 3 with two processors.
それぞれのプロセッサ10 、20は、ローカルバス1
2 、22を介して主メモリ11 、21を持っており
、それぞれのプロセッサ10 、20で実行されるプロ
グラムやデータは、この主メモリ11 、21に格納さ
れる。Each processor 10, 20 has a local bus 1
It has main memories 11 and 21 via processors 2 and 22, and programs and data executed by the respective processors 10 and 20 are stored in these main memories 11 and 21.
またローカルバス12 、22はそれぞれ独立しており
、それぞれのプロセッサ10 、20は独立、並列に演
算を行なうことができる。この2つのプロセッサ10゜
20間でデータやプログラムの受渡しが必要となったと
きに、コモンメモリ30を使用する。Furthermore, the local buses 12 and 22 are independent, and the respective processors 10 and 20 can perform operations independently and in parallel. The common memory 30 is used when data or programs need to be exchanged between these two processors 10 and 20.
このコモンメモリ30は、この例では2つのプロセッサ
10 、20からアクセスされるために、一方からアク
セスされている間、他方のアクセスは待たされる。In this example, the common memory 30 is accessed by two processors 10 and 20, so while it is being accessed by one processor, access by the other processor is delayed.
このように、コモンメモリ方式はマルチプロセッサシス
テムでは最も広く適用されていながら、従来のものでは
コモンメモリに対するアクセスが重りだ、場合、アクセ
スの競合が必ず起こり、その間一方は待たされるので、
待たされた側のプロセッサの演算効率は低下し、ひいて
はシステム全体の効率低下をもたらすという問題点があ
る。In this way, although the common memory method is most widely applied in multiprocessor systems, in the case of conventional methods, where access to the common memory is heavy, conflicting accesses always occur, and one side is forced to wait.
There is a problem in that the computational efficiency of the processor on the waiting side decreases, which in turn causes a decrease in the efficiency of the entire system.
本発明は、従来のコモンメモリ方式の上記の問題点を克
服するためになされたものであり、コモンメモリに対す
るアクセスが重りでも競合が起こる確率を減少するよう
にしたコモンメモリ装置を提供することを目的とする。The present invention has been made in order to overcome the above-mentioned problems of the conventional common memory system, and it is an object of the present invention to provide a common memory device that reduces the probability of contention occurring even when access to the common memory is frequent. purpose.
〔発明の概要〕
本発明は上記目的を達成するために複数のプロセッサで
共有するコモンメモリ装置において、コモンメモリを2
つ以上のコモンメモリバンクに分け、それぞれのコモン
メモリバンクに独立にアクセスできるように前記複数の
プロセッサにより切換える切換手段を設け、コモンメモ
リに対する競合の確率を減少させ、システム全体の効率
が向上するようにしたコモンメモリ装置である。[Summary of the Invention] In order to achieve the above object, the present invention provides a common memory device shared by a plurality of processors.
The common memory banks are divided into three or more common memory banks, and a switching means is provided for switching by the plurality of processors so that each common memory bank can be accessed independently, thereby reducing the probability of contention for the common memory and improving the efficiency of the entire system. This is a common memory device.
本発明の主要構成を、プロセッサが2つの場合を例に、
第1図に示す。The main configuration of the present invention will be explained using the case where there are two processors as an example.
Shown in Figure 1.
第1図の例では、コモンメモリを2つ以上のバンク31
、32に分け、図示しないプロセッサの指令により切
替る切換回路オ、34を設け、それぞれ独立にアクセス
できる様にすることにより、アクセスの競合が減少する
ようにしれものである。すなわち、一方のプロセッサが
コモンメモリの一方のバンクをアクセスしている間に、
他方のプロセッサはコモンメモリの他方のバンクをアク
セスすることができる。但し、2つのプロセッサがコモ
ンメモリの同一バンクを同時にアクセスした場合には、
従来と同様にアクセスの競合が起こる。それぞれのプロ
セッサのコモンメモリへのアクセスがコモンメモリ全域
にランダムに平均化している場合を想定すると、コモン
メモリを2つに分けた場合、競合する割合は%に減少す
る。減少の度合は、コモンメモリを細分化するほど大き
くなるが、制御回路が複雑になってしまう。プロセッサ
が2つの場合は、コモンメモリを2つに分ければ、コモ
ンメ% IJのアクセスの仕方を考慮すれば十分である
。In the example of FIG. 1, the common memory is divided into two or more banks 31.
, 32, and are provided with switching circuits O and 34 which are switched by commands from a processor (not shown) so that they can be accessed independently, thereby reducing access contention. That is, while one processor is accessing one bank of common memory,
The other processor can access the other bank of common memory. However, if two processors access the same bank of common memory at the same time,
Access contention occurs as before. Assuming that each processor's access to the common memory is randomly averaged over the entire common memory, if the common memory is divided into two, the contention rate will be reduced to %. The degree of reduction increases as the common memory is subdivided, but the control circuit becomes more complex. In the case of two processors, it is sufficient to divide the common memory into two and take into account how the common memory is accessed.
第2図Iこ、プロセッサが2つで、コモンメモリを2つ
のバンクに分けた場合の一実施例を示す。FIG. 2 shows an embodiment in which there are two processors and the common memory is divided into two banks.
本発明によるコモンメモリは、バンク切換制御回路35
により制御され、それぞれのコモンメモリバンク31
、32に与えるアドレス信号121.221及びデータ
信号122,222を選択するとともに、それぞれのコ
モンメモリバンク31 、32に対して、バンク選択信
号361,362及びリードライト信号371 、37
2を与える。The common memory according to the present invention has a bank switching control circuit 35
each common memory bank 31
, 32 and the bank selection signals 361, 362 and read/write signals 371, 37 for the respective common memory banks 31, 32.
Give 2.
それぞれのプロセッサ10 、20からコモンメモリに
導ひかれるローカルバスは、アドレス信号121122
1、データ信号122,222 、メモリリード信号1
23.223、メモリライト信号124,224、及び
応答信号125.225から構成される。The local bus leading from each processor 10, 20 to the common memory has an address signal 121122.
1, data signal 122, 222, memory read signal 1
23.223, memory write signals 124, 224, and response signals 125.225.
どちらか一方のプロセッサ10 、20からコモンメモ
リに対してアクセスが起こると、バンク切換制御回路3
5は、そのアドレス信号121.221からどちらのバ
ンクlこ対するアクセスか選択し、それぞれのアドレス
選択器331.341及びデータ選択器332゜342
に対して選択信号381,382を送り、アドレス信号
121.221及びデータ信号122,222をコモン
メモリバンク31 、32へ導ひく。これと同時に、バ
ンク選択信号361.362及びリードライト信号37
1゜372を選択されたコモンメモリバンク31 、3
2に対して出力する。そして所定のアクセスタイム/サ
イクルタイム後にバンク選択信号361,362及びリ
ードライト信号371.372の出力を止め、プロセッ
サ10 、20に対して応答信号125 、225を出
力する。When access to the common memory occurs from either processor 10 or 20, the bank switching control circuit 3
5 selects which bank is to be accessed from the address signal 121, 221, and the respective address selectors 331, 341 and data selectors 332, 342
Selection signals 381 and 382 are sent to the memory banks 31 and 32, and address signals 121 and 221 and data signals 122 and 222 are guided to the common memory banks 31 and 32. At the same time, bank selection signals 361, 362 and read/write signals 37
1°372 selected common memory bank 31, 3
Output for 2. Then, after a predetermined access time/cycle time, output of bank selection signals 361, 362 and read/write signals 371, 372 is stopped, and response signals 125, 225 are output to processors 10, 20.
相方のプロセッサ10 、20からアクセスがあった場
合は、先取り優先で以上の処理を行ない、他方ノフロセ
ッサlこ対しては、一方のプロセッサ10 。If there is an access from the other processor 10 or 20, the above processing is performed with priority given to the other processor 10.
20のアクセスが終了するまで待たせたのち、以上の処
理を同様に行なう。但し待たされるのは同一バンクの時
のみ。After waiting until 20 accesses are completed, the above process is performed in the same way. However, you will only have to wait if the bank is the same.
以上の様にコモンメモリを構成し、制御することにより
、一方のプロセッサが一方のコモンメモリバンクをアク
セスしている間に、他方のプロセッサは他方のコモンメ
モリパンクを同時にアクセスすることができ、コモンメ
モリアクセスの競合を減少することができる。By configuring and controlling the common memory as described above, while one processor is accessing one common memory bank, the other processor can simultaneously access the other common memory bank. Memory access contention can be reduced.
本実施例では、コモンメモリを2つのバンクに分けたが
、3つ以上のバンクに分けることも容易であり、細かく
分ければ分けるほど、アクセスが競合する可能性が減少
する。しかしあまり細かく分けすぎるとアドレス選択器
とデータ選択器のハードウェアが増大し、メモリ素子に
対してバランスがとれなくなるので、コストパフォーマ
ンスを考えて分は方を決めるべきである。In this embodiment, the common memory is divided into two banks, but it can easily be divided into three or more banks, and the more finely divided the common memory is, the less likely there will be access conflicts. However, if they are divided too finely, the hardware of the address selector and data selector will increase, making it impossible to maintain a balance with respect to the memory elements, so the division should be decided in consideration of cost performance.
また本実施例では1つのコモンメモリを2つのプロセッ
サで共有する場合を考えたが、プロセッサが3つ以上の
場合にも容易に拡張できる。Further, in this embodiment, a case where one common memory is shared by two processors has been considered, but it can be easily extended to a case where there are three or more processors.
本発明によるコモンメモリ装置を用いれば、コモンメモ
リに対してアクセスの競合を減少させることができ、シ
ステム全体の効率を向上させることができる。By using the common memory device according to the present invention, contention for accessing the common memory can be reduced, and the efficiency of the entire system can be improved.
第1図は本発明の主要構成図、第2図は本発明による一
実施例の詳細構成図、第3図は、従来のコモンメモリ装
置を説明する図である。
10.20・・・プロセッサ 11.21・・・主メ
モリ12.22・・・ローカルバス 30 ・・コモ
ンメモリ31.32・・・コモンメモリアク
セス34・・・切換回路 35 ・・・バンク
切換制御回路331.341・・・アドレス選択器
332.342・・・デー・夕選択器
(7317) 代理人弁理士 則 近 憲 佑 (ほ
か1名)第1図
第3図FIG. 1 is a main configuration diagram of the present invention, FIG. 2 is a detailed configuration diagram of an embodiment of the present invention, and FIG. 3 is a diagram illustrating a conventional common memory device. 10.20...Processor 11.21...Main memory 12.22...Local bus 30...Common memory 31.32...Common memory access 34...Switching circuit 35...Bank switching control Circuit 331.341...Address selector 332.342...Day/evening selector (7317) Representative patent attorney Kensuke Chika (and 1 other person) Fig. 1 Fig. 3
Claims (1)
、コモンメモリを2つ以上のコモンメモリバンクに分け
、それぞれのコモンメモリバンクに独立にアクセスでき
るように前記複数のプロセッサにより切換える切換手段
を備えたことを特徴とするコモンメモリ装置。A common memory device shared by a plurality of processors, characterized by comprising switching means for dividing the common memory into two or more common memory banks and switching by the plurality of processors so that each common memory bank can be accessed independently. common memory device.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP12531684A JPS616753A (en) | 1984-06-20 | 1984-06-20 | Common memory device |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP12531684A JPS616753A (en) | 1984-06-20 | 1984-06-20 | Common memory device |
Publications (1)
Publication Number | Publication Date |
---|---|
JPS616753A true JPS616753A (en) | 1986-01-13 |
Family
ID=14907087
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP12531684A Pending JPS616753A (en) | 1984-06-20 | 1984-06-20 | Common memory device |
Country Status (1)
Country | Link |
---|---|
JP (1) | JPS616753A (en) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS62187355U (en) * | 1986-05-20 | 1987-11-28 | ||
EP0280251A2 (en) * | 1987-02-27 | 1988-08-31 | Bull HN Information Systems Inc. | Shared memory controller arrangement |
JPS63304344A (en) * | 1987-06-05 | 1988-12-12 | Mitsubishi Electric Corp | Multi-port memory circuit |
-
1984
- 1984-06-20 JP JP12531684A patent/JPS616753A/en active Pending
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS62187355U (en) * | 1986-05-20 | 1987-11-28 | ||
EP0280251A2 (en) * | 1987-02-27 | 1988-08-31 | Bull HN Information Systems Inc. | Shared memory controller arrangement |
JPS63304344A (en) * | 1987-06-05 | 1988-12-12 | Mitsubishi Electric Corp | Multi-port memory circuit |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US5822772A (en) | Memory controller and method of memory access sequence recordering that eliminates page miss and row miss penalties | |
US3931613A (en) | Data processing system | |
EP0243085A2 (en) | Coprocessor architecture | |
JPS5837585B2 (en) | Keisan Kisouchi | |
JPH04348451A (en) | Parallel computer | |
US4048623A (en) | Data processing system | |
US20030070049A1 (en) | Memory control method, memory control circuit using the control method, and integrated circuit device with the memory control circuit | |
US4089052A (en) | Data processing system | |
JPS616753A (en) | Common memory device | |
JPH0341856B2 (en) | ||
JPS6136845A (en) | single chip microcomputer | |
JPH0330175B2 (en) | ||
JPH0358163A (en) | Loosely coupled multiprocessor system | |
US6499087B1 (en) | Synchronous memory sharing based on cycle stealing | |
KR960003650B1 (en) | Input/output processor for improving computer system performance | |
JP2606824Y2 (en) | Multiport memory device | |
JPS6240565A (en) | Memory control system | |
JPH0350301B2 (en) | ||
JPS61165172A (en) | Memory access control method | |
JPH04117697A (en) | Multiport memory circuit | |
JPH0877072A (en) | Cache memory device | |
JPS62297954A (en) | Memory control system | |
JPH04326453A (en) | Multi-processor system | |
JPS59111563A (en) | Controlling system of multi-processor | |
JPS59125465A (en) | multiprocessor system |