JPH0232432A - Control system for dual port memory - Google Patents

Control system for dual port memory

Info

Publication number
JPH0232432A
JPH0232432A JP63183064A JP18306488A JPH0232432A JP H0232432 A JPH0232432 A JP H0232432A JP 63183064 A JP63183064 A JP 63183064A JP 18306488 A JP18306488 A JP 18306488A JP H0232432 A JPH0232432 A JP H0232432A
Authority
JP
Japan
Prior art keywords
cpu
memory
signal
bank
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
Application number
JP63183064A
Other languages
Japanese (ja)
Inventor
Koji Nakai
康二 仲井
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.)
Fuji Electric Co Ltd
Original Assignee
Fuji Electric Co Ltd
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 Fuji Electric Co Ltd filed Critical Fuji Electric Co Ltd
Priority to JP63183064A priority Critical patent/JPH0232432A/en
Publication of JPH0232432A publication Critical patent/JPH0232432A/en
Pending legal-status Critical Current

Links

Landscapes

  • Multi Processors (AREA)
  • Memory System (AREA)

Abstract

PURPOSE:To improve the processing speed without stopping the action of one side CPU by providing a bank control means, switching alternately the bank which can be accessed by respective CPUs and permitting a memory access to respective CPUs. CONSTITUTION:A CPU 101, when initialization is completed, outputs a bank switching permitting signal (b) to a bank control part 600. On the other hand, a CPU 102, when the access for refreshing is completed, outputs an access completing signal to the control part 600. Thus, the control part 600 inverts an address upper-most order bit signal (a) on a signal line 701. By the code of the signal a0, the processing is executed in a dual port memory 200 as the upper-most order bit on an address bus 301 or 302. Consequently, the coincidence of the address on the memory 200 can be avoided, the generation of the waiting time due to the stoppage of one side CPU can be prevented and the processing speed can be improved.

Description

【発明の詳細な説明】 (産業上の利用分野) 本発明は2つのCPU間でデータ交換を行なうためのデ
ュアルポートメモリの制御方式に関する。
DETAILED DESCRIPTION OF THE INVENTION (Field of Industrial Application) The present invention relates to a control method for a dual port memory for exchanging data between two CPUs.

(従来の技術) 従来、デュアルポートメモリを用いて2つのCPU間で
データ交換を行なうシステムとしては、第3図に示すも
のが知られている。同図において、101.102はC
PU、200はデュアルポートメモリ(デュアルポート
RAM;以下単にメモリという)、301、302はア
ドレスバス、401.402はデータバス、501、5
02は信号線であり、CP UIOI、 102はそれ
ぞれアドレスバス301.302及びデータバス401
゜402を用いてメモリ200に対するアクセスを行な
い、データの書き込み、読み出しを行なっている。
(Prior Art) Conventionally, the system shown in FIG. 3 is known as a system that exchanges data between two CPUs using a dual port memory. In the same figure, 101.102 is C
PU, 200 is a dual port memory (dual port RAM; hereinafter simply referred to as memory), 301, 302 are address buses, 401.402 are data buses, 501, 5
02 is a signal line, CP UIOI, 102 is an address bus 301, 302 and a data bus 401, respectively.
402 is used to access the memory 200 and write and read data.

このような構成において、いま、アドレスバス301、
302の示すアドレスが異なる場合にはCPULot、
 102とメモリ200との間のデータの授受は並行し
て行なわれるが、これらのアドレスが一致すると、メモ
リ200は後からアクセスした方のCPU101または
102に対して信号線501または502を介しBUS
Y信号を送り、送り先のCPUの動作を−時的に停止さ
せてアクセス権を調停することが知られている。
In such a configuration, the address bus 301,
If the addresses indicated by 302 are different, CPULot,
102 and the memory 200 are performed in parallel, but when these addresses match, the memory 200 sends a BUS signal to the CPU 101 or 102 accessed later via the signal line 501 or 502.
It is known to arbitrate access rights by sending a Y signal to temporarily stop the operation of the destination CPU.

(発明が解決しようとする課M) しかしながらこの方式によると、アドレスが一致するた
びに一方のCPUの動作が停止することになり、当該C
PUの処理速度の低下を招くという問題があった。また
、CPUl0I、 102はメモリ200上の任意のア
ドレスを非同期でそれぞれ独立してアクセスするため、
 CPUl0I、 102間でデータの同期をとること
ができない等の欠点もあった。
(Problem M to be solved by the invention) However, according to this method, the operation of one CPU stops every time the addresses match, and the
There was a problem in that the processing speed of the PU decreased. Furthermore, since the CPUs 10I and 102 access any address on the memory 200 asynchronously and independently,
There were also drawbacks such as the inability to synchronize data between CPU10I and CPU102.

本発明は上記問題点を解決するために提案されたもので
、その目的とすることろは、各CPUからのアドレスバ
ス上のアドレスが一致した場合にも一方のCPUの動作
を停止させることなく処理速度の向上を図り、しかも各
CPU間のデータの同期確保を可能にしたデュアルポー
トメモリの制御方式を提供することにある。
The present invention was proposed in order to solve the above problems, and its purpose is to avoid stopping the operation of one CPU even when the addresses on the address bus from each CPU match. An object of the present invention is to provide a control method for a dual port memory that improves processing speed and also makes it possible to ensure data synchronization between CPUs.

(課題を解決するための手段) 上記目的を達成するため、本発明は、データ交換を行な
うCPU間にデュアルポートメモリの2つのバンクを切
り替えるためのバンク制御部を設け、このバンク制御部
は、一方のCPUにより出力されるデュアルポートメモ
リのバンク切替許可信号と、他方のCPUにより出力さ
れる前記メモリのアクセス終了信号とが入力されたこと
を条件として各CPUによるアクセスが可能なバンクを
交互に切り替えると共に、各CPUによる前記メモリの
アクセスを許可することを特徴とする。
(Means for Solving the Problems) In order to achieve the above object, the present invention provides a bank control unit for switching between two banks of a dual port memory between CPUs that exchange data, and this bank control unit: Banks that can be accessed by each CPU are alternately switched on the condition that a dual-port memory bank switching permission signal output from one CPU and a memory access end signal output from the other CPU are input. It is characterized in that in addition to switching, access to the memory by each CPU is permitted.

(作用) 本発明によれば、各CPUがアクセス可能なバンクが交
互に切り替わるため、仮りに各CPUのアドレスバス上
のアドレスが一致した場合でもデュアルポートメモリ上
のアドレスは異なったものとなり、各CPUからのアク
セスが有効となる。
(Function) According to the present invention, the banks that can be accessed by each CPU are alternately switched, so even if the addresses on the address bus of each CPU match, the addresses on the dual port memory will be different, and each Access from the CPU becomes valid.

また、バンク制御部は、一方のCPUによるアクセス終
了に伴うパンク切替許可信号と、他方のCPUによるア
クセス終了信号とを確認するハンドシェイクによりメモ
リのバンク切り替えを行なうこととしたため、各CPU
間でメモリを介して授受されるデータの同期をとること
ができる。
In addition, since the bank control unit switches memory banks by handshaking that confirms the puncture switching permission signal accompanying the end of access by one CPU and the end signal of access by the other CPU, each CPU
It is possible to synchronize data exchanged between the two via memory.

(実施例) 以下、図に沿って本発明の一実施例を説明する。(Example) An embodiment of the present invention will be described below with reference to the drawings.

第1図において、前記同様に101.102はデータ交
換を行なうCPU、200は2つのバンクを有する。デ
ュアルポートメモリ(デュアルポートRAM)、301
、302はアドレスバス、401.402はデータバス
であり、CP UIOI、 102はそれぞれアドレス
バス301、302、データバス401.402により
メモリ200に対してアクセス可能となっている。また
、600はバンク制御部であり、後述する如く、アドレ
ス最上位ビット信号a0を信号線701からメモリ20
0に送ることでメモリ200のバンクを切替えるための
ものである。そして、信号線701には符号反転器80
0が設けられており、前記信号a0のほか、その反転信
号がメモリ200のアドレス最上位ビットに加えられて
いる。
In FIG. 1, similarly to the above, 101 and 102 have CPUs for exchanging data, and 200 has two banks. Dual port memory (dual port RAM), 301
, 302 are address buses, and 401, 402 are data buses, and the CPU IO I, 102 can access the memory 200 through the address buses 301, 302, and data buses 401, 402, respectively. Further, 600 is a bank control unit, which transmits an address most significant bit signal a0 from a signal line 701 to the memory 20 as described later.
This is for switching the bank of the memory 200 by sending the data to 0. A sign inverter 80 is connected to the signal line 701.
0 is provided, and in addition to the signal a0, its inverted signal is added to the most significant bit of the address of the memory 200.

また、バンク制御部600には一方のCPUl0Iから
信号@702を介してパンク切替許可信号すが、また他
方のCP U 102から信号線703を介してCPU
 102によるアクセス終了信号Cがそれぞれ入力され
、更に、信号線704を介してCPU101に対する割
込信号dが出力されるようになっている。
In addition, a puncture switching permission signal is sent to the bank control unit 600 from one CPU l0I via a signal @702, and a blowout switching permission signal is sent from the other CPU 102 via a signal line 703.
The access end signal C from 102 is inputted, and furthermore, an interrupt signal d to the CPU 101 is outputted via a signal line 704.

次にこの実施例の動作を第2のタイミングチャートを参
照しつつ説明する。まずCPUl0Iは。
Next, the operation of this embodiment will be explained with reference to the second timing chart. First of all, CPU10I.

IPL(イニシャル・プログラム・ロード)等のイニシ
ャライズが完了すると、第2図の時刻t1からパンク切
替許可信号すをバンク制御部600に対して出力する。
When initialization such as IPL (initial program load) is completed, a puncture switching permission signal S is output to the bank control section 600 from time t1 in FIG.

一方、CPU102は1時刻t2からメモリ200の一
方のバンクAに対しデータリフレッシュ分のアクセスを
行なっており、このアクセスが時刻t。
On the other hand, the CPU 102 has been accessing one bank A of the memory 200 for data refresh since time t2, and this access is at time t.

で終了すると同時にアクセス終了信号Cをバンク制御部
600に対して出力する。この時点でバンク制御部60
0は、CPU101からのパンク切替許可信号すの存在
を確認して、信号線7旧上のアドレス最上位ビット信号
a、を反転させる。この信号a0はアドレスバス301
上のアドレスの最上位ビットとしてメモリ200内で処
理されるため、メモリ200では、当該信号ao(例え
ば“0″)を最上位ビットにもつ一方のバンクAへのC
PUl0Iからのアクセスが可能となる。
At the same time, the access end signal C is output to the bank control section 600. At this point, the bank control unit 60
0 confirms the presence of the puncture switching permission signal from the CPU 101 and inverts the address most significant bit signal a on the signal line 7. This signal a0 is the address bus 301
Since it is processed in the memory 200 as the most significant bit of the above address, in the memory 200, the C
Access from PUl0I becomes possible.

同時に、信号a0は符号反転器800により符号反転さ
れ、アドレスバス302上のアドレスの最上位ビットと
してメモリ200内で処理される。従って、メモリ20
0では、信号a0の反転信号(例えば11111)を最
上位ビットにもつバンクBへのCPU102からのアク
セスが可能となる。すなわち、時刻t。
At the same time, signal a0 is sign inverted by sign inverter 800 and processed in memory 200 as the most significant bit of the address on address bus 302. Therefore, memory 20
0, the CPU 102 can access bank B which has an inverted signal (for example, 11111) of the signal a0 in the most significant bit. That is, time t.

における信号a0の符号反転は、CP Ulol、 1
02からのアクセス可能なバンクをそれまでのバンクと
切替える作用をなす。
The sign inversion of the signal a0 at is CP Ulol, 1
It functions to switch the bank accessible from 02 to the previous bank.

バンク制御部600は、時刻t3後の時刻t4において
バンク切替許可信号すをクリアし、同時にCPUl0I
に対して割込信号dを出力する。この信号はCPUIQ
Iによるアクセスを許可する信号であり、この信号dを
受けたCPUl0Iは時刻t、においてメモリ200の
バンクA(それまでCPU102によってアクセスされ
ていたバンク)に対してアクセスを行なう。
The bank control unit 600 clears the bank switching permission signal at time t4 after time t3, and at the same time
It outputs an interrupt signal d to. This signal is CPUIQ
The CPU 10I receives this signal d and accesses the bank A of the memory 200 (the bank that had been accessed by the CPU 102 up to that point) at time t.

このアクセスの期間においてCPU102からのアクセ
スが時刻t6で行なわれた場合、仮りにアドレスバス3
01.302上のアドレスが同一であっても信号a。及
びその反転信号によってCPU102はCPUl0Iと
は異なるバンクBをアクセスすることになり、当該アク
セスは有効となる。
If an access from the CPU 102 is made at time t6 during this access period, if the address bus 3
Even if the addresses on 01.302 are the same, the signal a. And the inverted signal causes the CPU 102 to access a bank B different from CPUl0I, and the access becomes valid.

そして、時刻t7においてCP U 101によるアク
セスが終了すると、CPUl0Iはバンク切替許可信号
すを再び出力し、バンク制御部600は1時刻t0にお
いて前記バンク切替許可信号す及びCPU 102から
のアクセス終了信号Cを確認して再び信号a0の符号を
反転することにより、以後、各CPUl0I、 102
がアクセス可能となるバンクが交互に切り替わるもので
ある。以下、同様にしてCPUl0I、 102による
異バンクへのアクセスが終了するたびにバンクが交互に
切り替わっていく。
Then, when the access by the CPU 101 ends at time t7, the CPU 10I outputs the bank switching permission signal S again, and the bank control unit 600 outputs the bank switching permission signal S and the access completion signal C from the CPU 102 at the time t0. By confirming this and inverting the sign of the signal a0 again, each CPU10I, 102
The banks that can be accessed are alternately switched. Thereafter, banks are alternately switched in the same manner every time access to a different bank by the CPUs 10I and 102 is completed.

このようにこの実施例によれば、信号a0を用いてCP
Ul0I、 102によるメモリ200上でのアドレス
の一致を回避することにより、CPUl0I。
In this way, according to this embodiment, the signal a0 is used to
By avoiding an address match on memory 200 by Ul0I, 102, CPUl0I.

102は並行してメモリアクセスを行なうことができ、
アドレスバス301.302上のアドレスが一致するこ
とによってCP U 101または102の動作が停止
するといった不都合がない。また、バンク制御部600
によりCP Ulol、 102との間でバンク切替許
可信号b、アクセス終了信号C及び割込信号dを入出力
することによってCPUl0I、 102間のハンドシ
ェイクを行なっているため、メモリ200との間で授受
されるデータの連続性が保たれ、データリフレッシュ分
でのCP UIOI、 102間のデータの同期をとる
ことが可能になる。
102 can perform memory access in parallel,
There is no inconvenience that the operation of the CPU 101 or 102 is stopped due to a match between the addresses on the address buses 301 and 302. In addition, the bank control unit 600
Since the handshake between the CPU 102 and the CPU 102 is performed by inputting and outputting the bank switching permission signal b, the access end signal C, and the interrupt signal d with the CPU 102, there is no communication between the CPU 102 and the memory 200. The continuity of data is maintained, and it becomes possible to synchronize data between the CPU IOI and 102 during data refresh.

(発明の効果) 以上述べたように本発明によれば、バンク制御部の作用
により各CPUからのデュアルポートメモリ上のアドレ
スの一致を避けることができるため、一方のCPUの動
作停止による待ち時間の発生を防ぐことができ、CPU
の処理速度の大幅な向上を図ることができる。また、バ
ンク切り替えのタイミングを各CPU間のハンドシェイ
クにより決定するため1デ一タリフレツシユ分の同期を
確保することができる等の効果がある。
(Effects of the Invention) As described above, according to the present invention, it is possible to avoid matching of addresses on the dual port memory from each CPU by the action of the bank control unit. This can prevent the occurrence of
The processing speed can be significantly improved. Furthermore, since the timing of bank switching is determined by handshaking between each CPU, it is possible to ensure synchronization for one digital refresh.

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

第1図及び第2図は本発明の一実施例を示すもので、第
1図はこの実施例が適用されるデュアルポートメモリの
制御回路をCPUと共に示したブロック図、第2図は動
作を示すタイミングチャート、第3図は従来例の欠点を
説明するためのCPU及びデュアルポートメモリの接続
状態を示すブロック図である。 101.102・・・CPU  200・・・デュアル
ポートメモリ301.302・・・アドレスバス 40
1,402・・・データバス600・・・バンク制御部
 701,702,703,704・・・信号線800
・・・符号反転器
1 and 2 show one embodiment of the present invention. FIG. 1 is a block diagram showing a control circuit of a dual port memory to which this embodiment is applied, together with a CPU, and FIG. 2 is a block diagram showing the operation. FIG. 3 is a block diagram showing the connection state of the CPU and dual port memory to explain the drawbacks of the conventional example. 101.102...CPU 200...Dual port memory 301.302...Address bus 40
1,402...Data bus 600...Bank control section 701,702,703,704...Signal line 800
...Sign inverter

Claims (1)

【特許請求の範囲】 2つのCPU間のデータ交換に用いられ、かつこれらの
CPUによりアクセス可能な2つのバンクを有するデュ
アルポートメモリの制御方式において、 前記CPU間にバンク制御部を設け、このバンク制御部
は、一方のCPUにより出力される前記メモリのバンク
切替許可信号と、他方のCPUにより出力される前記メ
モリのアクセス終了信号とが入力されたことを条件とし
て各CPUによるアクセスが可能な前記バンクを交互に
切り替えると共に、各CPUによる前記メモリのアクセ
スを許可することを特徴とするデュアルポートメモリの
制御方式。
[Claims] In a control method for a dual port memory that is used for data exchange between two CPUs and has two banks that can be accessed by these CPUs, a bank control section is provided between the CPUs, and the bank control section is provided between the CPUs. The control unit is configured to control the memory bank switching permission signal outputted from one CPU and the memory access end signal outputted from the other CPU on the condition that the memory bank switching permission signal outputted from one CPU and the memory access end signal outputted from the other CPU are input. A control method for a dual port memory, characterized in that banks are alternately switched and each CPU is allowed to access the memory.
JP63183064A 1988-07-22 1988-07-22 Control system for dual port memory Pending JPH0232432A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP63183064A JPH0232432A (en) 1988-07-22 1988-07-22 Control system for dual port memory

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP63183064A JPH0232432A (en) 1988-07-22 1988-07-22 Control system for dual port memory

Publications (1)

Publication Number Publication Date
JPH0232432A true JPH0232432A (en) 1990-02-02

Family

ID=16129117

Family Applications (1)

Application Number Title Priority Date Filing Date
JP63183064A Pending JPH0232432A (en) 1988-07-22 1988-07-22 Control system for dual port memory

Country Status (1)

Country Link
JP (1) JPH0232432A (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009205445A (en) * 2008-02-28 2009-09-10 Sony Corp Address conversion circuit
JP2014085820A (en) * 2012-10-23 2014-05-12 Toshiba Corp Shared memory access system and shared memory access method

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS603042A (en) * 1983-06-20 1985-01-09 Matsushita Electric Ind Co Ltd Memory device

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS603042A (en) * 1983-06-20 1985-01-09 Matsushita Electric Ind Co Ltd Memory device

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009205445A (en) * 2008-02-28 2009-09-10 Sony Corp Address conversion circuit
JP2014085820A (en) * 2012-10-23 2014-05-12 Toshiba Corp Shared memory access system and shared memory access method

Similar Documents

Publication Publication Date Title
JPH0232432A (en) Control system for dual port memory
KR100362061B1 (en) Device for controlling local bus
JP2565916B2 (en) Memory access controller
JPH0290260A (en) Asynchronous access system for dual port memory
JP3266610B2 (en) DMA transfer method
KR930004903B1 (en) Parallel data communication system and its method between processors by using data bus
JPH06149749A (en) Data transfer system among plural processors
JP2574821B2 (en) Direct memory access controller
JPS63278168A (en) Bus controller
JP2610971B2 (en) Direct memory access method between central processing units
JPS6315953Y2 (en)
JPS6269348A (en) Data transfer device
JPH02211571A (en) Information processor
JPH07121483A (en) Shared memory access control circuit
JPS63201810A (en) Time system for information processing system
JPH0232450A (en) Cache memory control system
JPS5975354A (en) Processor device
JPH02219105A (en) Programmable controller
JPH0215094B2 (en)
JPH0535693A (en) Data transfer device
JPH02171949A (en) Dma transfer system
JPS61121152A (en) Inter-processor communication control system
JPH01191239A (en) Dual port memory system
JPH036762A (en) Direct access method for image memory
JPH03252854A (en) One bus control system by two processors