JPH04117697A - Multiport memory circuit - Google Patents
Multiport memory circuitInfo
- Publication number
- JPH04117697A JPH04117697A JP2237583A JP23758390A JPH04117697A JP H04117697 A JPH04117697 A JP H04117697A JP 2237583 A JP2237583 A JP 2237583A JP 23758390 A JP23758390 A JP 23758390A JP H04117697 A JPH04117697 A JP H04117697A
- Authority
- JP
- Japan
- Prior art keywords
- boat
- port
- shared memory
- read
- write
- 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
- Static Random-Access Memory (AREA)
- Multi Processors (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 multi-port memory circuit, and particularly to a multi-port memory circuit that can realize an improvement in utilization rate.
近年、情報処理システムの機能・性能に関する高度化の
要求はますます強くなり、システム全体に要求される機
能を機能分散方式を採り入れたマルチプロセッサシステ
ムにより実現しようとする傾向が高まっている。これは
1つのシステム内に複数のマイクロプロセッサ(以下、
MPUと称す)を取り込み、それぞれのMPU毎にサブ
システムを形成し、システムの稼働率を向上させたもの
である。これに伴い各MPU間の情報伝達を行うマルチ
ポートメモリに対する需要が高まっている。In recent years, there has been an increasing demand for advanced functions and performance of information processing systems, and there is a growing trend to implement the functions required for the entire system using a multiprocessor system that adopts a functional distribution method. This means that multiple microprocessors (hereinafter referred to as
In this system, a subsystem is formed for each MPU to improve system availability. Along with this, there is an increasing demand for multi-port memories that transmit information between MPUs.
第3図は従来の複数のMPU間のデータ転送を最も一般
的な汎用マルチポートメモリを用いて構成したマルチポ
ートメモリ回路を示す回路図であり、図において、13
は共有メモリ領域、11はパスラインAを介して共有メ
モリ領域13をAポートから独立してアクセス可能なM
PUA、t2はパスラインBを介して共有メモリ領域1
3をBボートから独立してアクセス可能なMPUB、3
1はMPUA 11とMPU112が共存メモリ領域1
3の同一番地を選択した際のみ、アクセスポートの調停
を実施し、先着ポートにのみアクセスの優先権を与える
ボートアービトレーション機能である。FIG. 3 is a circuit diagram showing a conventional multi-port memory circuit in which data transfer between multiple MPUs is configured using the most common general-purpose multi-port memory.
11 is a shared memory area, and 11 is M which can access the shared memory area 13 independently from the A port via the path line A.
PUA, t2 is connected to shared memory area 1 via pass line B.
3 is an MPUB that can be accessed independently from the B boat, 3
1 is memory area 1 where MPUA 11 and MPU 112 coexist
This is a boat arbitration function that performs access port arbitration only when the same location of 3 is selected, and gives access priority only to the port that arrives first.
次に動作について説明する。Next, the operation will be explained.
アクセスボートA、 Bは、各々独立したパスライン
A、Bを有し、個々に対応するMPUA I lとMP
U、12からの動作命令に応動して、共有メモリ領域1
3に対してアクセスを要求する。Access boats A and B have independent path lines A and B, respectively, and have respective corresponding MPUA I and MP lines.
In response to the operation command from U, 12, the shared memory area 1
Request access to 3.
この場合、A、 Bボートに接続されたMPUA11
、 MPUe l 2は、それぞれ独立・非同期に共有
メモリ領域13のアドレスを任意に選択し、各アクセス
ポートから任意に選択した共有メモリ領域13のアドレ
スに対してデータの書き込み及び読み出しを行う。In this case, MPUA11 connected to A and B boats
, MPUel 2 arbitrarily select addresses of the shared memory area 13 independently and asynchronously, and write and read data from each access port to the arbitrarily selected addresses of the shared memory area 13.
また、MPUA 11.MPU5 12から共有メモリ
領域13の同一番地か競合選択された場合には、アクセ
スポートA、、 Bのとちらかにアクセスの優先権を
与えるために、アクセスボート調停機能であるボートア
ービトレーション機能31か働く。この場合、通例とし
ては共有メモリ領域13に対するアクセスが先着したボ
ートに優先権が与えられ、後着側ボートのMPUに対し
ては、該MPUの動作をアドレスの競合選択期間中−時
的にウェイト(停止)させるためのBusy信号か出力
される。Also, MPUA 11. If the MPU 5 12 selects the same location in the shared memory area 13 in conflict, the boat arbitration function 31, which is an access boat arbitration function, is activated to give access priority to either access port A or B. work. In this case, priority is usually given to the boat that accesses the shared memory area 13 first, and the operation of the MPU of the later arriving boat is temporarily suspended during the address conflict selection period. A Busy signal for (stopping) is output.
このように、MPUA 11とMPUB12からアクセ
スポートA、 Bを介して独立・非同期にアクセス可
能なため、A、 Bボートからのアドレス設定により
共有メモリセル13の同一番地か競合選択される可能性
かあり、この場合、A、Bボートからのアクセスモード
の設定により下記4通りの基本動作が考えられる。In this way, since MPUA 11 and MPUB 12 can be accessed independently and asynchronously via access ports A and B, there is a possibility that the same location in shared memory cell 13 will be competitively selected depending on the address settings from ports A and B. In this case, the following four basic operations are possible depending on the access mode settings from boats A and B.
(1) Aポート−読み出し Bボート−読み出しく
2)Aボート−読み出し Bボート−書き込み(3)A
ポート−書き込み Bボート−読み出しく4)Aボート
−書き込み Bボート−書き込みすなわち、(1)のよ
うに同一番地に対して、A。(1) A port - read B boat - read 2) A port - read B boat - write (3) A
Port - Write B Boat - Read 4) A Boat - Write B Boat - Write In other words, A to the same location as in (1).
Bポートか各々読み出しモードで動作している場合は、
双方に正しいデータか読み出され、特に問題は生じない
が、(21,(31のようにA、Bボートか異なるモー
ドで動作した場合には、書き込みは正しく行われるが、
逆ポートにおける読み出しデータが同一サイクル期間内
において、データの読み出し時点によって書き込み動作
以前のデータを読み出す可能性、または書き込み動作以
後のデータを読み出す可能性、またはちょうど書き込み
動作中の不安定なデータを読み出す可能性等が生じる。If the B port or each is operating in read mode,
Correct data is read to both sides and no particular problem occurs, but if the A and B ports operate in different modes as in (21, (31), the write is performed correctly, but
Within the same cycle period, read data at the opposite port may read data before the write operation, read data after the write operation, or read unstable data just during the write operation, depending on the data read point. Possibilities etc. arise.
また、(4)のようにA、 Bポートが書き込み動作
の場合には、互いに逆データを書き込んでメモリ内容か
不確定となる可能性が生ずる。Furthermore, when the A and B ports perform a write operation as in (4), there is a possibility that opposite data will be written to each other, making the memory contents uncertain.
従来のマルチポートメモリ回路は以上のように構成され
ているので、共有メモリの同一番地が競合選択された場
合に、ボートアービトレーション機能で、アクセスポー
トの優先権を調停しなければならず、さらに上記アービ
トレーション機能の作用により共有メモリへのアクセス
要求が後着と判断されたMPU側はアドレスの競合選択
期間中に限りウェイト状態をとらなければならず、シス
テム全体の稼働率が低下するという問題点かあった。Conventional multi-port memory circuits are configured as described above, so when the same address in the shared memory is competitively selected, the priority of access ports must be arbitrated using the boat arbitration function. Due to the arbitration function, the MPU side that has determined that the request to access the shared memory has arrived later has to wait in a wait state only during the address conflict selection period, which is a problem in that the operating rate of the entire system decreases. there were.
二の発明は上記のような問題点を解消するためになされ
たもので、共有メモリの競合選択時に、MPUの動作を
ウェイト状態(停止)する必要がなく、MPUの稼働率
の向上か実現できるマルチポートメモリ回路を得ること
を目的とする。The second invention was made to solve the above problem, and it is not necessary to wait (stop) the operation of the MPU when selecting a shared memory conflict, which improves the utilization rate of the MPU. The purpose is to obtain a multi-port memory circuit.
この発明に係るマルチポートメモリ回路は、共有メモリ
セル領域を複数にバンク分割し、上記各々の共有メモリ
セル領域に対する書き込み及び読み出し用のアクセスポ
ートを固定したものである。In the multi-port memory circuit according to the present invention, a shared memory cell area is divided into a plurality of banks, and access ports for writing and reading to each of the shared memory cell areas are fixed.
この発明においては、共有メモリセル領域を複数にバン
ク分割し、上記各々の共有メモリセル領域に対する書き
込み及び読み出し用のアクセスポートを固定するように
したから、アクセスボート調停のためのボートアービト
レション機能を不要とてき、これに伴いMPUへのウェ
イト要求出力信号も省略でき端子数を減らすことができ
るとともに、MPUにウェイト状態か生じないことから
MPU自体の稼働率を向上することかできる。In this invention, the shared memory cell area is divided into a plurality of banks, and access ports for writing and reading to each of the shared memory cell areas are fixed, so a boat arbitration function for access boat arbitration is provided. This eliminates the need for a wait request output signal to the MPU, thereby reducing the number of terminals, and since no wait state occurs in the MPU, the operating rate of the MPU itself can be improved.
以下、この発明の一実施例を図について説明する。第1
図は本発明の実施例によるマルチポートメモリ回路の構
成図であり、図において、第3図と同一符号は同−又は
相当部分を示し、また14はAボートからは書込み動作
のみを実施し、Bボートからは読出し動作のみを実施す
る第1の共有メモリ領域、15はAポートからは読出し
動作のみを実施し、Bボートからは書込み動作のみを実
施する第2の共有メモリ領域である。An embodiment of the present invention will be described below with reference to the drawings. 1st
The figure is a block diagram of a multi-port memory circuit according to an embodiment of the present invention. In the figure, the same reference numerals as in FIG. A first shared memory area 15 performs only read operations from the B port, and a second shared memory area 15 performs only read operations from the A port, and only write operations from the B port.
また、第2図は第1図に示す構成図を具体的に示した回
路図であり、図において、21はA、 Bボートから
アクセス可能な共有メモリ領域、22は共有メモリ領域
2I内てAボートからは書き込みのみ、Bボートからは
読み出しのみを行う第1の共有メモリセル領域、23は
共有メモリ領域21内でAボートからは読み出しのみ、
Bポートからは書き込みのみを行う第2の共存メモリセ
ル領域、24はアクセスボートA、 Bから独立・非
同期に読み出し、書き込みを可能とするため、1本のア
ドレス線と2本のデータ線を2組持つ1ビット分の共有
メモリセル、25はAボートからのデータ書き込み制御
回路、26はBボートへのデータ読み出し制御回路、2
7はAポートへのデータ読み出し制御回路、28はBボ
ートからのデータ書き込み制御回路である。Further, FIG. 2 is a circuit diagram specifically showing the configuration diagram shown in FIG. A first shared memory cell area that only writes from the boat and only reads from the B boat; 23 is a shared memory area 21 that only reads from the A boat;
The second coexisting memory cell area 24 is for writing only from the B port, and in order to enable independent and asynchronous reading and writing from the access ports A and B, one address line and two data lines are connected to the second coexisting memory cell area 24. 25 is a data write control circuit from the A boat, 26 is a data read control circuit to the B boat, 2
7 is a data read control circuit to the A port, and 28 is a data write control circuit from the B port.
次に動作について説明する。Next, the operation will be explained.
第2図に示すようにA、82つのボートから独立・非同
期に書き込み・読み出し動作が可能な共有メモリ領域2
1において、A、 BボートのMPUの書き込み及び読
み出し要求に応動して、Aボートのデータ書き込み制御
回路25.Bボートのデータ書き込み制御回路28.A
ボートのデータ読み出し制御回路26.Bボートのデー
タ読み出し制御回路27のうち、どれか2つか作用し、
各ボートのアドレス線により選択されたメモリセルに対
してデータの書き込み又は読み出し動作を行う。ただし
、同一ボートのデータ書き込み制御回路とデータ読み出
し制御回路は同時にON状態とはならない。As shown in Figure 2, A is a shared memory area 2 that can be independently and asynchronously written and read from 82 ports.
1, the data write control circuit 25.1 of the A boat responds to the write and read requests of the MPUs of the A and B boats. B boat data write control circuit 28. A
Boat data read control circuit 26. Any two of the data read control circuits 27 of the B boat act;
A data write or read operation is performed on the memory cell selected by the address line of each boat. However, the data write control circuit and data read control circuit of the same boat are not turned on at the same time.
この場合、両ボートからの、アクセスモードの設定によ
り下記4通りの基本動作か考えられる。In this case, the following four basic operations can be considered depending on the access mode settings from both boats.
(1)Aボート−読み出し Bホード−読み出しく2)
Aポート−読み出し Bホード−書き込み(3)Aボー
ト−書き込み Bボート−読み出しく4)Aボート−書
き込み Bホード−書き込み上記4通りの基本動作のう
ち、(11のようにA、 Bポート共に読み出し、ま
たは(4)のようにA、Bボート共に書き込みというよ
うに同一命令を実行しているときには、同一アドルスが
選択されることはない。特に(4)のようにA、Bボー
ト共に書き込み動作にてアクセスした場合にも共有メモ
リの同一番地が選択されないため、書き込み動作の衝突
が回避できる。また(2+、 (3)のように一方のボ
ートが書き込み、もう一方のボートが読み出しにてアク
セスした場合には、A、Bボートからのアドルスか競合
選択される可能性があり、読み出し動作中のボート出力
データが逆ボートの書き込み動作により同一サイクル期
間中に変化することがあるが、この問題点はソフト上に
て出力データを2回読みしてデータの確定を判断するこ
とにより回避できる。(1) A boat - Readout B boat - Readout 2)
Port A - Read B Hold - Write (3) A Boat - Write B Boat - Read 4) A Boat - Write B Hold - Write Among the above four basic operations, (as shown in 11, both A and B ports read) , or when the same instruction is executed such as writing on both A and B boats as in (4), the same address will not be selected. In particular, as in (4), when both A and B boats write, the same address will not be selected. Since the same location in the shared memory is not selected even when accessed with In this case, there is a possibility that addresses from A and B boats will be competitively selected, and the boat output data during the read operation may change during the same cycle due to the write operation of the opposite boat. This can be avoided by reading the output data twice on the software and determining whether the data is final.
このように本実施例によれば、共有メモリセル領域を複
数にバンク分割し、上記各々の共有メモリセル領域に対
する書き込み及び読み出し用のアクセスポートを固定し
たから、共有メモリの同一番地が競合選択された際に一
方のMPUの動作を一時的に停止させる必要がなくなり
、MPUの稼働率を向上できる。As described above, according to this embodiment, the shared memory cell area is divided into a plurality of banks, and the write and read access ports for each of the shared memory cell areas are fixed, so that the same location in the shared memory is not competitively selected. There is no need to temporarily stop the operation of one of the MPUs when a problem occurs, and the operating rate of the MPU can be improved.
なお、上記実施例では共有メモリ領域21をAポートか
らは書き込み動作のみ、Bボートからは読み出し動作の
みを行う第1のメモリ領域22、Aボートからは読み出
し動作のみ、Bボートからは書き込み動作のみを行う第
2のメモリ領域23とに分割したことにより、データの
受は渡しは、書き込み動作ボートから入力され共有メモ
リを介し、読み出し動作ボートへ出力される一方向の流
れてあったが、これに加え書込み動作ボート自身にも書
き込んだデータを読み出せる機能を付加してもよく、上
記実施例と同様の効果を奏する。In the above embodiment, the shared memory area 21 is the first memory area 22 that performs only write operations from the A port and only read operations from the B port, only read operations from the A port, and only write operations from the B port. By dividing the memory area into a second memory area 23 that performs In addition, a function for reading written data may be added to the write operation board itself, and the same effect as in the above embodiment can be obtained.
以上のように本発明のマルチポートメモリ回路によれば
、共有メモリセル領域を複数にバンク分割し、上記各々
の共有メモリセル領域に対する書き込み及び読み出し用
のアクセスボートを固定したから、共有メモリの同一番
地が競合選択された際に一方のMPUの動作を一時的に
停止させる必要がなくなり、MPUの稼働率を向上でき
、またアクセスボート調停のためのポートアービトレシ
ョン機能を不要とでき、これに伴いMPUへのウェイト
要求出力信号も省略でき端子数を減らすことができる効
果かある。As described above, according to the multi-port memory circuit of the present invention, the shared memory cell area is divided into a plurality of banks, and the access ports for writing and reading to each of the shared memory cell areas are fixed. It is no longer necessary to temporarily stop the operation of one MPU when a conflicting address is selected, improving the MPU utilization rate, and eliminating the need for a port arbitration function for access boat arbitration. Accordingly, the wait request output signal to the MPU can also be omitted, which has the effect of reducing the number of terminals.
第1図はこの発明の一実施例による2ボ一トメモリ回路
を示す構成図、第2図は第1図の2ポ一トメモリ回路を
具体的に示す回路図、第3図は従来の最も一般的な2ポ
一トメモリ回路の構成図である。
図において、11はMPUA、12はMPUB、13は
共有メモリ領域、14は第1の共有メモリ領域、15は
第2の共有メモリ領域、22は第1の共有メモリセル領
域、23は第2の共有メモリセル領域、24は1ビット
分の共有メモリセル、25はAボートデータ書き込み制
御回路、26はBボートデータ読み出し制御回路、27
はAポートデータ読み出し制御回路、28はBボートデ
ータ書き込み制御回路、31はボートアービトレーショ
ン機能である。
なお図中同一符号は同−又は相当部分を示す。FIG. 1 is a block diagram showing a 2-point memory circuit according to an embodiment of the present invention, FIG. 2 is a circuit diagram specifically showing the 2-point memory circuit of FIG. 1, and FIG. FIG. 2 is a configuration diagram of a typical two-point memory circuit. In the figure, 11 is MPUA, 12 is MPUB, 13 is a shared memory area, 14 is a first shared memory area, 15 is a second shared memory area, 22 is a first shared memory cell area, and 23 is a second shared memory area. A shared memory cell area, 24 a shared memory cell for 1 bit, 25 an A boat data write control circuit, 26 a B boat data read control circuit, 27
28 is a B port data write control circuit, and 31 is a boat arbitration function. Note that the same reference numerals in the figures indicate the same or equivalent parts.
Claims (1)
よりアクセスを要求される共有メモリセル領域とを有す
るマルチポートメモリ回路において、上記共有メモリセ
ル領域をバンク分割して形成した複数の分割メモリ領域
と、 上記各分割メモリ領域に対する書き込み及び読み出し用
の上記アクセスポートを固定する手段とを備えたことを
特徴とするマルチポートメモリ回路。(1) In a multi-port memory circuit having two or more access ports and a shared memory cell area that is requested to be accessed by the access ports, a plurality of divided memory areas formed by dividing the shared memory cell area into banks. and means for fixing the access port for writing to and reading from each of the divided memory areas.
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2237583A JPH04117697A (en) | 1990-09-07 | 1990-09-07 | Multiport memory circuit |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2237583A JPH04117697A (en) | 1990-09-07 | 1990-09-07 | Multiport memory circuit |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| JPH04117697A true JPH04117697A (en) | 1992-04-17 |
Family
ID=17017471
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP2237583A Pending JPH04117697A (en) | 1990-09-07 | 1990-09-07 | Multiport memory circuit |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JPH04117697A (en) |
Cited By (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| KR100813133B1 (en) * | 2006-11-22 | 2008-03-17 | 엠텍비젼 주식회사 | Adaptive use of a shared memory region of a dual port memory device, a memory system having the same, and a dual port memory device |
| JP2012513073A (en) * | 2008-12-19 | 2012-06-07 | フルクラム・マイクロシステムズ・インコーポレーテッド | Pseudo dual port SRAM |
-
1990
- 1990-09-07 JP JP2237583A patent/JPH04117697A/en active Pending
Cited By (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| KR100813133B1 (en) * | 2006-11-22 | 2008-03-17 | 엠텍비젼 주식회사 | Adaptive use of a shared memory region of a dual port memory device, a memory system having the same, and a dual port memory device |
| JP2012513073A (en) * | 2008-12-19 | 2012-06-07 | フルクラム・マイクロシステムズ・インコーポレーテッド | Pseudo dual port SRAM |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US4975838A (en) | Duplex data processing system with programmable bus configuration | |
| EP1646925B1 (en) | Apparatus and method for direct memory access in a hub-based memory system | |
| US4691280A (en) | High performance multi-processor system | |
| EP0872800B1 (en) | Method and device for exchanging data between two processor units | |
| JPH04117697A (en) | Multiport memory circuit | |
| JPH0546527A (en) | Dual port memory circuit | |
| JPS592058B2 (en) | Storage device | |
| JPH0391191A (en) | Multiport memory | |
| EP0464637B1 (en) | Expanded memory unit | |
| JPH07160655A (en) | Memory access method | |
| JPH04192192A (en) | Multiport memory control circuit | |
| JP3063501B2 (en) | Memory access control method | |
| JPS62226366A (en) | Shared memory system | |
| JPH05324541A (en) | Bus interface device | |
| JPH0214741B2 (en) | ||
| JPH01154272A (en) | multiprocessor equipment | |
| JPS60252980A (en) | Dual port memory configuration method | |
| JPH02211571A (en) | Information processor | |
| JPH04357548A (en) | multiprocessor | |
| JPH0528090A (en) | Memory controller | |
| JPH05324533A (en) | Dual port memory device | |
| JPS63217444A (en) | Multiple port memory | |
| JPH0611041U (en) | Data processing device | |
| JPS62209636A (en) | Bank memory switching circuit | |
| CN1125869A (en) | data transfer interface device |