JPH058462B2 - - Google Patents
Info
- Publication number
- JPH058462B2 JPH058462B2 JP18576686A JP18576686A JPH058462B2 JP H058462 B2 JPH058462 B2 JP H058462B2 JP 18576686 A JP18576686 A JP 18576686A JP 18576686 A JP18576686 A JP 18576686A JP H058462 B2 JPH058462 B2 JP H058462B2
- Authority
- JP
- Japan
- Prior art keywords
- port
- read
- access
- memory
- module
- 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.)
- Expired - Fee Related
Links
- 238000001514 detection method Methods 0.000 claims description 4
- 238000012544 monitoring process Methods 0.000 claims 1
- 238000010586 diagram Methods 0.000 description 11
- 238000000034 method Methods 0.000 description 3
- 230000006870 function Effects 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 1
- 230000002265 prevention Effects 0.000 description 1
- 238000003672 processing method Methods 0.000 description 1
Landscapes
- Information Transfer Systems (AREA)
Description
【発明の詳細な説明】
〔概要〕
マルチポートによりシエアアクセス可能なメモ
リアクセスシステムのバツフアオーバラン検出方
式であつて、ライトポートのアドレスを超えてリ
ードポートがメモリをアクセスすることを防止す
る為、ライトポートに書かれたメモリへのアクセ
スアドレスと、リードポートにより読出されたメ
モリへのアクセスアドレスとの比較を行い、デー
タを書き終えた後のデータ後の正常に読出されて
いることをチエツクするように構成することによ
り、読取り処理時のオーバランアクセスを確実に
防止し、読取りデータのより正常性の保証が可能
となる。[Detailed Description of the Invention] [Summary] This is a buffer overrun detection method for a memory access system that allows shared access using multi-ports, in order to prevent a read port from accessing memory beyond the address of a write port. Compare the memory access address written to the write port and the memory access address read by the read port to check that the data is being read normally after data has been written. With this configuration, overrun access during read processing can be reliably prevented and the normality of read data can be guaranteed.
本発明は、電子計算機システムにおける入出力
装置と中央処理装置間のデータ転送処理方式に係
り、特に入出力装置と中央処理装置間の非同期デ
ータ転送時のバツフアオーバラン検出方式に関す
る。
The present invention relates to a data transfer processing method between an input/output device and a central processing unit in a computer system, and more particularly to a buffer overrun detection method during asynchronous data transfer between an input/output device and a central processing unit.
例えば、入出力装置(以下I/Oと称する)と
中央処理装置(以下CPUと称する)間で、非同
期にデータ転送を行う場合は、通常下記方法でデ
ータ転送を行う。 For example, when data is transferred asynchronously between an input/output device (hereinafter referred to as I/O) and a central processing unit (hereinafter referred to as CPU), the data is generally transferred in the following manner.
即ち、例えばI/Oからの読取りデータを一旦
I/O内、又はI/OとCPU間に置かれる制御
装置内のバツフアメモリに蓄えて置き、CPUが
転送可能となつた時点でバツフアメモリ内のデー
タをCPUに転送する。 That is, for example, data read from I/O is temporarily stored in a buffer memory in the I/O or in a control device placed between the I/O and the CPU, and when the CPU is ready to transfer the data, the data in the buffer memory is stored. is transferred to the CPU.
又は上記の逆の場合で、CPUから送出された
データを一旦バツフアメモリに蓄えて置き、I/
Oが書込み可能となつた時点でバツフアメモリ内
のデータをI/Oに送出する。 Or in the opposite case, the data sent from the CPU is temporarily stored in the buffer memory and then
When O becomes writable, the data in the buffer memory is sent to I/O.
このような方式の場合、バツフアメモリに対す
るアクセスポートが多数(3つ以上)あり、多数
のアクセスモジユールよりシエアされて使用され
る傾向にある。 In such a system, there are a large number (three or more) of access ports to the buffer memory, and these ports tend to be shared among a large number of access modules.
このようなマルチポートよりタイムシエアによ
りアクセス可能なメモリアクセスシステムに関し
て、書込まれたデータが正しく読取られているか
を確実にしかも効率的にチエツクすることが望ま
れる。 Regarding such a memory access system that can be accessed by time sharing using a multi-port, it is desired to reliably and efficiently check whether written data is being read correctly.
第4図は従来例を説明するブロツク図、第5図
はマルチポートによりアクセスするメモリアクセ
スシステム概要を説明する図をそれぞれ示す。
FIG. 4 is a block diagram illustrating a conventional example, and FIG. 5 is a diagram illustrating an outline of a memory access system accessed by multi-ports.
本例の動作は、バツフアオーバラン状態をチエ
ツクする場合の動作であり、第4図は1つのリー
ドモジユール1と1つのライトモジユール2で構
成された場合を示す。 The operation of this example is for checking the buffer overrun state, and FIG. 4 shows a case where one read module 1 and one write module 2 are used.
即ち、ライトモジユール2より所定転送速度を
持つてライトポート4を介してバツフアメモリ
(以下BMと称する)6へデータを転送し、ライ
トポートアドレスポインタ(以下AP.Wと略称す
る)4aで指定するBM6の領域へ書込む。 That is, data is transferred from the write module 2 to the buffer memory (hereinafter referred to as BM) 6 at a predetermined transfer rate via the write port 4, and specified by the write port address pointer (hereinafter referred to as AP.W) 4a. Write to the BM6 area.
一方、リードモジユール1はリードポートアド
レスポインタ(以下AP.Rと略称する)3aで指
定するBM6の領域からデータの読取りを行うこ
とにより、ライトモジユール2からリードモジユ
ール1へのデータ転送が実行される。 On the other hand, read module 1 reads data from the area of BM6 specified by read port address pointer (hereinafter abbreviated as AP.R) 3a, thereby transferring data from write module 2 to read module 1. executed.
この場合、リードモジユール1はライドモジユ
ール2により既に書込まれたデータのみを読出す
必要がある。 In this case, the read module 1 needs to read only the data already written by the ride module 2.
従つて、比較回路5において“AP.W4aの
値”と“AP.R3aの値”の大小比較、即ち
“AP.W4aの値”>“AP.R3aの値”を条件が設
立している否かをチエツクして、読取りデータの
正常性(即ち、バツフアオーバラン状態でないこ
と)をチエツクしている。 Therefore, the comparison circuit 5 compares the "value of AP.W4a" and "value of AP.R3a", that is, whether or not the condition is established that "value of AP.W4a">"value of AP.R3a". The normality of the read data (ie, that there is no buffer overrun condition) is checked.
一方、最近電子計算機システムが大規模にな
り、マルチポートメモリアクセスシステムを構成
する場合、第5図に示すようにシステムを構成す
ることが多い。 On the other hand, recently, computer systems have become large-scale, and when configuring a multi-port memory access system, the system is often configured as shown in FIG.
第5図に示すマルチポートメモリアクセスシス
テムの場合、BM6はアクセスモジユール1
(0)〜1(n)から複数アクセスポート3(0)〜
3(m)の内の任意のアクセスポート3(i)の捕捉経由
してアクセスされる。 In the case of the multiport memory access system shown in Figure 5, BM6 is access module 1.
(0)~1(n) to multiple access port 3(0)~
3(m) via the capture of any access port 3(i).
即ち、アクセスモジユール1(0)〜1(n)は、
任意のアクセスポート3(0)〜3(m)を使用し
て、BM6に対する読出し/書込みが可能とな
る。尚、各アクセスポート3(0)〜3(m)はバツ
フアメモリアクセス用のアドレスポインタを備え
ている。 That is, access modules 1(0) to 1(n) are
It is possible to read/write to/from BM6 using any of the access ports 3(0) to 3(m). Note that each access port 3(0) to 3(m) is provided with an address pointer for buffer memory access.
このようなマルチポートメモリアクセスシステ
ムにおいて、例えばBM6に対するデータ書込み
をアクセスモジユール1(0)で行い(以下これ
をライトモジユール1(0)と略称する)、アク
セスポート3(1)(以下ライトポート3(1)
と略称する)を介してBM6にデータを書込み、
リードモジユール1(2)がリードモード3(m)を
介してライトモジユール1(0)で書かれたデー
タを読出す場合、ライトポート3(1)内のライ
トアドレスポインタとリードポート3(m)内のリー
ドアドレスポインタと大小比較を行う必要があ
る。 In such a multi-port memory access system, for example, data writing to BM6 is performed using access module 1 (0) (hereinafter referred to as write module 1 (0)), and access port 3 (1) (hereinafter referred to as write module 1 (0)) is used to write data to BM6. Port 3 (1)
Write data to BM6 via
When read module 1 (2) reads data written by write module 1 (0) via read mode 3 (m), the write address pointer in write port 3 (1) and read port 3 ( It is necessary to compare the size with the read address pointer in m).
即ち、リードアドレスポインタ値<ライトアド
レスポインタ値となつていなければ、リードモジ
ユール1(2)からBM6に書かれたデータを正
常に読取つたことにはならない。 That is, unless the read address pointer value<the write address pointer value, it does not mean that the data written to the BM6 from the read module 1 (2) has been read normally.
これは、ライトポート3(1)からの書込みデ
ータの転送速度よりも、リードポート3(m)での読
取りデータの転送速度が、一般的に速い時に起こ
り得るバツフアオーバラン状態である。 This is a buffer overrun state that can occur when the transfer rate of read data at read port 3(m) is generally faster than the transfer rate of write data from write port 3(1).
しかし、従来は第4図で示すようにアクセスポ
ートが2つ(リードポートとライトポート)の場
合には、1つのアドレスポインタの大小比較手段
を設けてバツフアオーバラン状態を検出する方式
は具体化されているが、マルチポートメモリアク
セスシステムにおけるバツフアオーバラン状態を
具体的なシステムオペレーシヨン状態でチエツク
する機能は実施されていない。
However, conventionally, when there are two access ports (a read port and a write port) as shown in Figure 4, a method for detecting a buffer overrun state by providing a means for comparing the size of one address pointer has not been implemented. However, no function has been implemented to check the buffer overrun state in a multiport memory access system based on a specific system operation state.
例えば、アクセスポートが2つの場合のバツフ
オーバラン状態の検出方式のマルチポートメモリ
アクセスシステムに適用した場合、そのハードウ
エア構成が膨大となり、しかもその制御も複雑化
する等の問題点がある。 For example, when applied to a multi-port memory access system using a buffer overrun state detection method when there are two access ports, there are problems such as the hardware configuration becomes enormous and the control thereof becomes complicated.
第1図は本発明の原理を説明するブロツク図を
示す。
FIG. 1 shows a block diagram illustrating the principle of the invention.
第1図に示す原理ブロツク図はマルチポートメ
モリアクセスシステムの構成を示し、この構成は
第5図で説明したアクセスモジユール1(0)〜
1(n)、BM6と、
下記の手段で構成されるアクセスポート4
(0)〜4(m)と、
アクセスポート4(0)〜4(m)のアロケーシヨ
ンを管理するタスクモジユール(以下TMと称す
る)7と、
アクセスポート4(0)〜4(m)からBM用共通
バス(BM−BUS)(2)使用要求信号RQ0〜
RQmを受取り、それに対する使用許可信号GR0
〜GRmの内の1つを各サイクル毎に各アクセス
ポート4(0)〜4(m)に与えるARB8とから構
成されている。 The principle block diagram shown in FIG. 1 shows the configuration of a multiport memory access system, and this configuration consists of access modules 1(0) to
1(n), BM6, and access port 4 consisting of the following means:
(0) to 4(m), a task module (hereinafter referred to as TM) 7 that manages the allocation of access ports 4(0) to 4(m), and access ports 4(0) to 4(m). BM common bus (BM-BUS) (2) Use request signal RQ0~
Receive RQm and use permission signal GR0 for it
-GRm to each access port 4(0) to 4(m) every cycle.
尚、各アクセスポート4(0)〜4(m)は、
メモリアクセス用アドレスポインタ手段と、
比較対象となるアクセスポート4(0)〜4(m)
のアクセスアドレスを保持する比較対象アドレス
ポインタ手段と、
BM6をアクセスするアクセスモジユール1
(0)〜1(n)の識別子番号(以下ID番号と称す
る)をセツトするIDレジスタ手段と、
ID番号の比較を行う比較手段と、
アドレスポインタ手段と比較対象アドレスポン
インタ手段との大小比較を行う大小比較手段と、
大小比較手段の比較結果をセツトするステータ
スレジスタ手段と、
BM−BUSを介して遣り取りされる信号をセツ
トするセツト機能を有するドライバ手段及びレシ
ーバ手段とを具備して構成されている。 In addition, each access port 4(0) to 4(m) has an address pointer means for memory access and an access port 4(0) to 4(m) to be compared.
a comparison target address pointer means that holds the access address of BM6, and an access module 1 that accesses BM6.
ID register means for setting the identifier numbers (0) to 1(n) (hereinafter referred to as ID numbers), comparison means for comparing the ID numbers, and size comparison between the address pointer means and the address pointer means to be compared. A status register means sets a comparison result of the magnitude comparison means, and a driver means and a receiver means each having a set function for setting a signal exchanged via the BM-BUS. ing.
マルチポートメモリアクセスシステムの場合の
バツフアオーバラン状態の防止を保障するため、
各アクセスポート4(0)〜4(m)内に、自アドレ
スポインタ値をセツトするアドレスポインタ手段
と、比較するアドレスを処理オペレーシヨンに対
応して設定する比較対象アドレスポインタ手段
と、アドレスポインタ手段と比較対象アドレスポ
インタ手段との大小比較を行う大小比較手段とを
設け構成することにより、マルチポートメモリア
クセスシステムにおける読取り処理時のオーバラ
ンクアクセスを確実に防止し、読取りデータの正
常性の保障が可能となる。
To ensure the prevention of buffer overrun conditions in the case of multi-port memory access systems,
Each access port 4(0) to 4(m) includes an address pointer means for setting its own address pointer value, a comparison target address pointer means for setting an address to be compared in accordance with a processing operation, and an address pointer means. By providing and configuring a size comparison means for comparing the size of the address pointer and the comparison target address pointer means, overrank access during read processing in a multi-port memory access system is reliably prevented and the normality of read data is guaranteed. It becomes possible.
以下本発明の要旨を第1図〜第3図に示す実施
例により具体的に説明する。
The gist of the present invention will be specifically explained below with reference to embodiments shown in FIGS. 1 to 3.
第2図は本発明の実施例を説明するブロツク
図、第3図はマルチポートにおけるメモリアクセ
ス状況を説明する図をそれぞれ示す。尚、全図を
通じて同一符号は同一対象物を示す。 FIG. 2 is a block diagram illustrating an embodiment of the present invention, and FIG. 3 is a diagram illustrating a memory access situation in a multi-port. Note that the same reference numerals indicate the same objects throughout the figures.
本実施例におけるアクセスポート4(0)〜4
(m)は、第2図に示す如く下記の機能ブロツクで構
成されている。即ち、
自アクセスポート4(0)〜4(m)のメモリアク
セスアドレスを保持するメモリアクセス用アドレ
スポインタAPO〜APmと、
比較対象となるアクセスポート4(0)〜4(m)
のアクセスアドレスを保持する比較対象アドレス
ポインタIPLO〜APLmと、
BM6をアクセスする時のアクセスモジユール
1(0)〜1(n)の固有ID番号をセツトするIDレ
ジスタIO〜Imと、
ID番号の比較を行う比較部41と、
アドレスポインタAPO〜APmと比較対象アド
レスポインタAPLO〜APLmとの大小比較を行う
大小比較部42と、
大小比較部42の比較結果をセツトするステー
タスレジスタST0〜STmと、
BM−BUS(2)内ID−BUSとの信号の入出力
をアクセスするドライバDID0〜DRIDm及びレ
シーバRVI0〜RVIDmと、
BM−BUS(2)内アクセスポート(以下APと
称する)−BUSとの信号の入出力をアクセスする
ドライバDRAP0〜DRAPm及びレシーバRVAP
0〜RVAPmとを具備して構成されている。 Access ports 4(0) to 4 in this embodiment
(m) is composed of the following functional blocks as shown in FIG. That is, memory access address pointers APO to APm that hold the memory access addresses of own access ports 4(0) to 4(m) and access ports 4(0) to 4(m) to be compared.
Comparison target address pointers IPLO to APLm that hold the access address of A comparison section 41 that performs a comparison, a magnitude comparison section 42 that performs a magnitude comparison between the address pointers APO to APm and comparison target address pointers APLO to APLm, and a status register ST0 to STm that sets the comparison result of the magnitude comparison section 42. Drivers DID0 to DRIDm and receivers RVI0 to RVIDm access signal input/output with ID-BUS in BM-BUS (2), and signals between access port (hereinafter referred to as AP)-BUS in BM-BUS (2) Drivers DRAP0 to DRAPm and receiver RVAP access input/output of
0 to RVAPm.
例えば、アクセスモジユール1(0)が共通バ
ス(1)を通じてTM7に問い合わせをし、アク
セスポート4(0)が使用可能であることを知る
と、アクセスモジユール1(0)はアクセスポー
ト4(0)内のIDレジスタIOに“0”をセツト
する。 For example, if access module 1(0) queries TM7 via common bus (1) and learns that access port 4(0) is available, access module 1(0) queries access port 4(0). 0) in the ID register IO.
又、アクセスモジユール1(0)は、これから
書込みすべきBM6の先頭アドレスをアドレスポ
インタAPOにセツトした後、BM6へのデータ
書込み動作を開始する。 アドレスポインタ
APOはBM6へのデータ書込みが1ワード
(WORD)行われる毎にプラス1される。尚、ア
クセスモジユール1(0)、アクセスポート4
(0)を以下ライトモジユール1(0)、ライトポ
ート4(0)と称する。 Furthermore, the access module 1 (0) sets the start address of the BM6 to which data is to be written in the address pointer APO, and then starts the data writing operation to the BM6. address pointer
APO is incremented by 1 every time one word of data is written to BM6. In addition, access module 1 (0), access port 4
(0) will be hereinafter referred to as light module 1(0) and light port 4(0).
その後、例えばアクセスモジユール1(n)(以下
リードモジユール1(n)と称する)がライトモジユ
ール1(A.O)で書込んだデータを読出すため
に、TM7に問い合わせて、例えばアクセスポー
ト4(m)(以下リードポート4(m)と称する)の使用
許可と、ライトモジユール1(0)が受け取り格
納しているIDレジスタIOの内容(セツト値
“0”)をTM7を介して受け取る。 After that, in order to read the data written by the access module 1(n) (hereinafter referred to as read module 1(n)) in the write module 1 (AO), for example, the access module 1(n) (hereinafter referred to as read module 1(n)) queries the TM7, (m) (hereinafter referred to as read port 4(m)) and receives the contents of the ID register IO (set value “0”) received and stored by write module 1 (0) via TM7. .
次に、リードモジユール1(n)はリードポート4
(m)内IDレジスタImに、受け取つたセツト値(セ
ツト値“0”)をセツトし、BM6から読出すべ
きデータの先頭アドレスをアドレスポインタ
APmにセツトし、その後読出し動作を開始する。 Next, lead module 1(n) connects lead port 4
(m) Set the received set value (set value "0") in the ID register Im, and point the start address of the data to be read from BM6 to the address pointer.
Set to APm and then start the read operation.
この時、アドレスポインタAPmは、BM6か
らのデータ読出しが、1ワード(WORD)行わ
れる毎にプラス1される。 At this time, address pointer APm is incremented by 1 each time data is read from BM6 by 1 word.
尚、この間に他のアクセスモジユール1(1)
〜1(n−1)は、既に他アクセスポートポート
を介して書込み/読出しを行つているものとす
る。 During this time, other access module 1 (1)
1(n-1) is already writing/reading through another access port.
この時のBM6のアクセスは、第3図に示すよう
に時分割されて行われており、BM6へのBM−
BUS(2)は1サイクルa,b,c,…毎に各ポ
ート4(0)〜4(m)(第3図にはP0,P1,P
2,P3,…,Pmで表示している)が使用する
パイプライン方式になつている。At this time, access to BM6 is performed in a time-divided manner as shown in Figure 3, and BM-6 to BM6 is
BUS (2) connects each port 4(0) to 4(m) every cycle a, b, c, ... (P0, P1, P
2, P3, ..., Pm) is the pipeline method used.
ARB8は各ポート4(0)〜4(m)からのBM
−BUS2使用要求信号RQ0,RQ1,…,RQm
を受取り、それに対する使用許可信号GR0,
GR1,…GRmの内の1つを各サイクルa,b,
c、…毎に各ポート4(0)〜4(m)に与える。 ARB8 is BM from each port 4(0) to 4(m)
-BUS2 use request signal RQ0, RQ1,..., RQm
is received and the use permission signal GR0,
One of GR1,...GRm for each cycle a, b,
c, ... to each port 4(0) to 4(m).
各ポート4(0)〜4(m)はこの使用許可信号
GR0,GR1,…GRmを受け取ると、BM−
BUS(2)へのドライバDRID0〜DRIDm、
DRAP0〜DAPmをオンにして、BM6へのデー
タ書込み/読出しを行う方法を取つている。 Each port 4(0) to 4(m) uses this permission signal.
When GR0, GR1,...GRm are received, BM-
Driver DRID0 to DRIDm to BUS (2),
A method is being used to write/read data to/from BM6 by turning on DRAP0 to DAPm.
従つて、リードポート4(m)はBM6のアクセス
に対する使用許可権を得た時、即ち使用許可信号
GRmがオンの時は、ドライバDRIDm、DRAPm
がオンとなる。尚、使用許可信号GRmがオフの
時はレシーバRVIDm、RVAPmがオンとなる。 Therefore, when read port 4(m) obtains permission to access BM6, that is, when read port 4(m) receives the permission signal,
When GRm is on, drivers DRIDm and DRAPm
turns on. Note that when the use permission signal GRm is off, the receivers RVIDm and RVAPm are on.
ライトポート4(0)が使用許可権を得て、使
用許可信号GR0がオンの時には、BM−BUS(2)
内ID−BUS上にはIDレジスタI0の内容が、AP
−BUS上にはアドレスポインタAP0の内容が乗
ることになる。 When light port 4 (0) obtains usage permission and usage permission signal GR0 is on, BM-BUS (2)
On the internal ID-BUS, the contents of ID register I0 are
-The contents of address pointer AP0 will be placed on the BUS.
一方、リードポート4(m)はこの時使用許可信号
GR0がオフであるため、レシーバRVIDm、
RVAPmがオンとなり、ライトポート4(0)の
IDレジスタI0の内容及びアドレスポインタAP
0の内容をレシーブする。 On the other hand, read port 4(m) has a use permission signal at this time.
Since GR0 is off, receiver RVIDm,
RVAPm is turned on and light port 4(0)
Contents of ID register I0 and address pointer AP
Receive the contents of 0.
この時、比較部41でレシーブしたIDレジス
タI0の内容とリードポート4(m)のIDレジスタ
Imの内容とを比較し、一致していればアドレス
ポインタAP0の内容を比較対象アドレスポイン
タAPLmにラツチする。 At this time, the contents of the ID register I0 received by the comparator 41 and the ID register of the read port 4(m)
The contents of Im are compared, and if they match, the contents of address pointer AP0 are latched to comparison target address pointer APLm.
リードポート4(m)は比較対象アドレスポインタ
APLmにラツチする動作を、ライトポート4
(0)がBM6にデータを書込む、(BM−BUS
(2)の使用権を得る)毎に行い更新し、その都
度自アドレスポインタAPmと大小比較を大小比
較部42にて行う。 Read port 4(m) is the comparison target address pointer
Light port 4 is configured to latch to APLm.
(0) writes data to BM6, (BM-BUS
It is updated each time (2) the right to use is obtained), and the size comparison unit 42 compares the size with the own address pointer APm each time.
書込まれたデータが正常に読出されている場合
は、自アドレスポインタAPm≦比較対象アドレ
スポインタAPLm(即ち、ライトポート4(0)
のアドレスポインタAP0)とならなければなら
ない。 If the written data is being read normally, own address pointer APm≦comparison target address pointer APLm (i.e., write port 4(0)
address pointer AP0).
もし、自アドレスポインタAPm>比較対象ア
ドレスポインタAPLmとなると、その時点でバ
ツフアオーバランをステータスレジスタSTmに
セツトし、TM7に通知することによりバツフア
オーバランを検出する。 If own address pointer APm>comparison target address pointer APLm, at that point the buffer overrun is set in the status register STm and notified to TM7, thereby detecting the buffer overrun.
以上のような本発明によれば、マルチポートメ
モリアクセスシステムにおける読取り処理時のオ
ーバランアクセスを、少ないハードウエアで確実
に防止し、読取りデータの正常性が保証出来ると
言う効果がある。
According to the present invention as described above, overrun access during read processing in a multiport memory access system can be reliably prevented with a small amount of hardware, and the normality of read data can be guaranteed.
第1図は本発明の原理を説明するブロツク図、
第2図は本発明の実施例を説明するブロツク図、
第3図はマルチポートにおけるメモリアクセス状
況を説明する図、第4図は従来例を説明するブロ
ツク図、第5図はマルチポートによりアクセスす
るメモリアクセスシステム概要を説明する図、を
それぞれ示す。
図において、1はリードモジユール、1(0)
〜1(n)はアクセスモジユール、2はライトモジユ
ール、3はリードポート、3(0)〜3(m),4
(0)〜4(m)はアクセスポート、3aはAP.R、
4aはAP.W、4はライトポート、5は比較回
路、6はBM、7はTM、8はARB、41は比較
部、42は大小比較部をそれぞれ示す。
FIG. 1 is a block diagram explaining the principle of the present invention.
FIG. 2 is a block diagram explaining an embodiment of the present invention;
FIG. 3 is a diagram illustrating a memory access situation in a multi-port, FIG. 4 is a block diagram illustrating a conventional example, and FIG. 5 is a diagram illustrating an outline of a memory access system accessed by a multi-port. In the figure, 1 is the lead module, 1 (0)
~1(n) is the access module, 2 is the write module, 3 is the read port, 3(0) ~3(m), 4
(0) to 4(m) are access ports, 3a is AP.R,
4a is AP.W, 4 is a write port, 5 is a comparison circuit, 6 is BM, 7 is TM, 8 is ARB, 41 is a comparison section, and 42 is a magnitude comparison section.
Claims (1)
つメモリ6をアクセスすることが出来る少なくと
も3つ以上のアクセスモジユール1(0)〜1(n)
と、 前記メモリ6をアクセスするための少なくとも
3つ以上のポート4(0)〜4(n)を有し、前記ア
クセスモジユール1(0)〜1(N)がタイムシエア
にそれぞれ任意の1つの当該ポート4(0)〜4
(m)を介して前記メモリ6へのアクセスが出来、且
つ前記アクセスモジユール1(0)〜1(n)の内、
任意の2つの該アクセスモジユール1(0)〜1
(n)が、一方(ライトモジユール)は1つのポート
(ライトポート)を介して前記メモリ6へのデー
タ書込み処理を行い、他方(リードモジユール)
は他の1つのポート(リードポート)を介して前
記メモリ6に書込まれたデータの読取り処理を行
うことが出来るシエア可能なメモリアクセスシス
テムにおいて、 各ポート4(0)〜4(m)内に当該アクセスモジ
ユール1(0)〜1(n)によりセツトされる識別子
ID番号を保持するIDレジスタと、 該メモリ6をアクセスするためのアドレスポイ
ンタを保持し、 該リードポートにおける前記IDレジスタは、
該ライトモジユールが該ライトポートにある前記
IDレジスタにセツトした値と等価値が該リード
モジユールによりセツトされるセツト手段を有
し、 更に、該リードポートは自リードポート以外の
ポートが該メモリアクセスのタイミングを得た時
点で自リードポート以外の当該ポートの該IDレ
ジスタをモニタし、自ポート内IDレジスタの内
容と一致していた場合に、自リードポート以外の
当該ポートの前記アドレスポインタを自リードポ
ート内にラツチ更新するラツチ手段と、 前記ラツチ手段にラツチされた該アドレスポイ
ンタ自リードポート内の当該アドレスポインタと
大小比較を行い、自リードポート内の当該アドレ
スポインタの方が常に小となつていなければなら
ないことをチエツクするチエツク手段とを具備
し、 前記チエツク手段にて該メモリ6に対する該リ
ードモジユールの読取り動作のバツフアオーバラ
ンをチエツクすることを特徴とするバツフアオー
バラン検出方式。[Claims] 1. At least three access modules 1(0) to 1(n) connected via a common bus (1) and capable of accessing the memory 6.
and at least three or more ports 4(0) to 4(n) for accessing the memory 6, and each of the access modules 1(0) to 1(N) has an arbitrary one port in the timeshare. Applicable port 4(0)~4
(m) allows access to the memory 6, and among the access modules 1(0) to 1(n),
Any two access modules 1(0) to 1
(n), one (write module) performs data writing processing to the memory 6 through one port (write port), and the other (read module)
In a shareable memory access system that can read data written in the memory 6 through one other port (read port), each port 4(0) to 4(m) Identifier set by the access module 1(0) to 1(n) in
An ID register that holds an ID number and an address pointer for accessing the memory 6, the ID register at the read port is
the light module is in the light port;
The read port has a setting means by which a value equivalent to the value set in the ID register is set by the read module, and furthermore, the read port is set to the own read port when a port other than the own read port obtains the timing for accessing the memory. a latch means for monitoring the ID register of the port other than the own read port, and latches and updates the address pointer of the port other than the own read port in the own read port when the content matches the ID register in the own port; , checking means for comparing the address pointer latched by the latch means with the address pointer in the own read port and checking that the address pointer in the own read port must always be smaller; A buffer overrun detection method, characterized in that the checking means checks a buffer overrun in a read operation of the read module for the memory 6.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP18576686A JPS6341968A (en) | 1986-08-07 | 1986-08-07 | Buffer overrun detecting system |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP18576686A JPS6341968A (en) | 1986-08-07 | 1986-08-07 | Buffer overrun detecting system |
Publications (2)
Publication Number | Publication Date |
---|---|
JPS6341968A JPS6341968A (en) | 1988-02-23 |
JPH058462B2 true JPH058462B2 (en) | 1993-02-02 |
Family
ID=16176503
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP18576686A Granted JPS6341968A (en) | 1986-08-07 | 1986-08-07 | Buffer overrun detecting system |
Country Status (1)
Country | Link |
---|---|
JP (1) | JPS6341968A (en) |
-
1986
- 1986-08-07 JP JP18576686A patent/JPS6341968A/en active Granted
Also Published As
Publication number | Publication date |
---|---|
JPS6341968A (en) | 1988-02-23 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US8209445B2 (en) | Apparatus and method for direct memory access in a hub-based memory system | |
US7949863B2 (en) | Inter-port communication in a multi-port memory device | |
US5313627A (en) | Parity error detection and recovery | |
US5265211A (en) | Arbitration control logic for computer system having dual bus architecture | |
US5659696A (en) | Method and apparatus for determining address location and taking one of two actions depending on the type of read/write data transfer required | |
JPH04306748A (en) | Information processor | |
US5640531A (en) | Enhanced computer operational system using auxiliary mini-cache for enhancement to general cache | |
US5537609A (en) | Mini cache operational module for enhancement to general cache | |
EP0789303B1 (en) | Memory system and a data communication system | |
EP0418030A2 (en) | Improvements in and relating to stable memory circuits | |
US7240144B2 (en) | Arbitration of data transfer requests | |
JPH058462B2 (en) | ||
JP3371978B2 (en) | Information processing device | |
JP2882202B2 (en) | Multi-port access control circuit | |
JPS6326745A (en) | Overrun control system for shared memory | |
JPH0528090A (en) | Memory controller | |
JPH08137738A (en) | Cpu arbitration circuit | |
JPH054711B2 (en) | ||
JPH0289154A (en) | Information processing system | |
JPS62229457A (en) | Data transfer controller | |
JPH0287253A (en) | Equipment address setting system | |
JPH0215353A (en) | Abnormality setting system at specific address | |
JPH04313132A (en) | Dual port memory | |
JPH05324533A (en) | Dual port memory device | |
JPS62184564A (en) | Electronic computer control system |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
LAPS | Cancellation because of no payment of annual fees |