Movatterモバイル変換


[0]ホーム

URL:


JPH10228413A - Memory access controlling method device therefor and memory system - Google Patents

Memory access controlling method device therefor and memory system

Info

Publication number
JPH10228413A
JPH10228413AJP3157197AJP3157197AJPH10228413AJP H10228413 AJPH10228413 AJP H10228413AJP 3157197 AJP3157197 AJP 3157197AJP 3157197 AJP3157197 AJP 3157197AJP H10228413 AJPH10228413 AJP H10228413A
Authority
JP
Japan
Prior art keywords
memory
master
bank
access
buffer
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
JP3157197A
Other languages
Japanese (ja)
Inventor
Fumihiro Yoshizawa
史浩 吉澤
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.)
GE Healthcare Japan Corp
Original Assignee
GE Yokogawa Medical System 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 GE Yokogawa Medical System LtdfiledCriticalGE Yokogawa Medical System Ltd
Priority to JP3157197ApriorityCriticalpatent/JPH10228413A/en
Publication of JPH10228413ApublicationCriticalpatent/JPH10228413A/en
Pendinglegal-statusCriticalCurrent

Links

Abstract

PROBLEM TO BE SOLVED: To obtain memory access controlling method and device and a memory system capable of accelerating memory access. SOLUTION: The memory access control device for controlling accesses from plural masters 10A to 10D to a memory 20 having plural memory banks 200 to 203, data to be read out/written from/in the memory 20 by respective masters 10A to 10D are transmitted through buffers 30A to 33D connected to respective memory banks 200 to 203 correspondingly to respective masters 10A to 10D and the competition of accesses to the buffers 30A to 33D in the memory banks 200 to 203 are arbitrated by respective arbitration means 300 to 303.

Description

Translated fromJapanese
【発明の詳細な説明】DETAILED DESCRIPTION OF THE INVENTION

【0001】[0001]

【発明の属する技術分野】本発明は、メモリアクセス(m
emory access) 制御方法および装置並びにメモリシステ
ムに関し、特に、記憶装置(メモリ)を複数のマスタ(m
aster)で共有する場合のメモリアクセス制御方法および
装置の改良、並びにそのようなメモリアクセス制御装置
を備えたメモリシステムに関する。
The present invention relates to a memory access (m
The present invention relates to a control method and apparatus and a memory system, and in particular, relates to a method in which a storage device (memory) is assigned to a plurality of masters (m
The present invention relates to an improvement in a memory access control method and device in the case of sharing by aster) and a memory system including such a memory access control device.

【0002】[0002]

【従来の技術】複数のマスタでメモリを共有する場合、
並行アクセス可能な複数のメモリバンク(memory bank)
を持つメモリを用い、異なるメモリバンクには別々なマ
スタが同時にアクセスができるようにしている。これに
よって、メモリバンクが重複しない限り複数のマスタに
よるメモリの同時使用が可能になり、実効的なメモリア
クセスが高速化される。
2. Description of the Related Art When a plurality of masters share a memory,
Multiple memory banks that can be accessed in parallel
, And different memory banks can be simultaneously accessed by different masters. As a result, as long as the memory banks do not overlap, the memory can be used simultaneously by a plurality of masters, and the effective memory access is speeded up.

【0003】[0003]

【発明が解決しようとする課題】メモリバンクが重複す
る場合、すなわち同一メモリバンクが複数のマスタから
同時にアクセスされた場合は、予め定められた優先順位
に基づいて競合が調停される。その結果、その時点で相
対的に最高順位のものに先ずアクセスが許可され他は待
たされる。したがって、競合の機会が多いと実効的なア
クセス速度が低下する。
When memory banks overlap, that is, when the same memory bank is accessed simultaneously by a plurality of masters, contention is arbitrated based on a predetermined priority. As a result, access is first granted to the one with the highest rank at that time, and the others are waited for. Therefore, if there are many competition opportunities, the effective access speed decreases.

【0004】本発明は上記の問題点を解決するためにな
されたもので、その目的は、メモリアクセスを高速化す
るメモリアクセス制御方法および装置並びに高速アクセ
スのメモリシステムを実現することである。
SUMMARY OF THE INVENTION The present invention has been made to solve the above problems, and an object of the present invention is to realize a memory access control method and device for speeding up memory access and a memory system for high speed access.

【0005】[0005]

【課題を解決するための手段】[Means for Solving the Problems]

〔1〕上記の課題を解決する第1の発明は、並行アクセ
ス可能な複数のメモリバンクを持つメモリについての複
数のマスタからのアクセスを制御するメモリアクセス制
御方法であって、前記マスタが前記メモリにリード/ラ
イトするデータを前記複数のメモリバンクのおのおのに
設けた前記マスタ毎のバッファを経由させ、前記メモリ
バンクに関する前記マスタ毎のバッファのアクセスの競
合を優先順位に基づいて調停することを特徴とする。
[1] A first invention for solving the above-mentioned problem is a memory access control method for controlling access from a plurality of masters to a memory having a plurality of memory banks which can be accessed in parallel, wherein the master has the memory Data to be read / written from / to the plurality of memory banks is passed through the buffer for each master provided in each of the plurality of memory banks, and arbitration of access conflicts of the buffers for each master with respect to the memory banks is performed based on priority. And

【0006】第1の発明では、複数のマスタによるメモ
リへのデータのリード/ライト(read/write)をマスタ毎
のバッファ(buffer)に対して行い、マスタ毎のバッファ
とメモリバンク間のデータ転送は優先順位に応じたアク
セス調停を経て行う。これによって、複数のマスタによ
るメモリアクセスがメモリバンクの重複の有無に関わら
ず同時並行的に行える。すなわち、メモリアクセスを高
速化するメモリアクセス制御方法を実現することができ
る。
In the first invention, a plurality of masters read / write data from / to a memory with respect to a buffer for each master, and transfer data between a buffer for each master and a memory bank. Is performed through access arbitration according to the priority. As a result, memory accesses by a plurality of masters can be performed simultaneously and in parallel regardless of the presence or absence of overlapping memory banks. That is, a memory access control method that speeds up memory access can be realized.

【0007】第1の発明において、前記調停が、リフレ
ッシュ(refresh) のためのマスタによる前記メモリバン
クへのアクセスをも含む競合を調停するものであること
が、高速メモリアクセスに適合したリフレッシュを行う
点で好ましい。
In the first invention, the arbitration arbitrates a conflict including an access to the memory bank by a master for refreshing. It is preferred in that respect.

【0008】〔2〕上記の課題を解決する第2の発明
は、並行アクセス可能な複数のメモリバンクを持つメモ
リについての複数のマスタからのアクセスを制御するメ
モリアクセス制御装置であって、前記複数のメモリバン
クのおのおのについて前記マスタ毎に設けられ、前記マ
スタが前記メモリにリード/ライトするデータを経由さ
せるバッファ手段と、前記メモリバンクに関する前記マ
スタ毎のバッファ手段のアクセスの競合を優先順位に基
づいて調停する調停手段とを具備することを特徴とす
る。
[2] A second invention for solving the above-mentioned problem is a memory access control device for controlling access from a plurality of masters to a memory having a plurality of memory banks which can be accessed in parallel. Buffer means provided for each master for each of the memory banks for passing data read / written by the master from / to the memory; and contention of access of the buffer means for each master with respect to the memory bank based on priority. Arbitration means for arbitration.

【0009】第2の発明では、複数のマスタによるメモ
リへのデータのリード/ライトをマスタ毎のバッファ手
段に対して行い、マスタ毎のバッファ手段とメモリバン
ク間のデータ転送を調停手段によるアクセス調停を経て
行う。これによって、複数のマスタによるメモリアクセ
スがメモリバンクの重複の有無に関わらず同時並行的に
行える。すなわち、メモリアクセスを高速化するメモリ
アクセス制御装置を実現することができる。
In the second invention, a plurality of masters read / write data from / to a memory to a buffer means for each master, and transfer data between the buffer means for each master and a memory bank by access arbitration by arbitration means. Through. As a result, memory accesses by a plurality of masters can be performed simultaneously and in parallel regardless of the presence or absence of overlapping memory banks. That is, it is possible to realize a memory access control device that speeds up memory access.

【0010】第2の発明において、前記調停手段が、リ
フレッシュのためのマスタによる前記メモリバンクへの
アクセスをも含む競合を調停するものであることが、高
速メモリアクセスに適合したリフレッシュを行う点で好
ましい。
In the second invention, the arbitration means arbitrates contention including access to the memory bank by a master for refreshing, in that refreshing adapted to high-speed memory access is performed. preferable.

【0011】〔3〕上記の課題を解決する第3の発明
は、連続するアドレスがインターリーブしている並行ア
クセス可能な複数のメモリバンクを持つメモリについて
の複数のマスタからのアクセスを制御するメモリアクセ
ス制御装置であって、前記複数のメモリバンクのおのお
のについて前記マスタ毎に設けられ、前記マスタが前記
メモリにリード/ライトするデータを経由させるバッフ
ァ手段と、前記メモリバンクに関する前記マスタ毎のバ
ッファ手段のアクセスの競合を優先順位に基づいて調停
する調停手段と、前記マスタ毎に設けられ、前記マスタ
が前記メモリの連続するアドレスにアクセスした場合に
前記調停手段に対し前記複数のバンクについてのアクセ
ス要求を一斉に出す要求手段ととを具備することを特徴
とする。
[3] According to a third aspect of the present invention, there is provided a memory access for controlling access from a plurality of masters to a memory having a plurality of memory banks which can be accessed in parallel and in which consecutive addresses are interleaved. A control device, comprising: a buffer provided for each of the masters for each of the plurality of memory banks, for passing data read / written by the master from / to the memory; and a buffer for each master related to the memory banks. Arbitration means for arbitrating access conflicts based on priorities; and arbitration means provided for each of the masters, wherein when the master accesses successive addresses in the memory, the arbitration means issues an access request for the plurality of banks to the arbitration means. Request means for issuing all at once.

【0012】第3の発明では、複数のマスタによるメモ
リへのデータのリード/ライトをマスタ毎のバッファ手
段に対して行い、マスタ毎のバッファ手段とメモリバン
ク間のデータ転送を調停手段によるアクセス調停を経て
行い、また、要求手段により、マスタがメモリの連続す
るアドレスにアクセスした場合は調停手段に対し複数の
バンクに関するアクセス要求を一斉に出して複数のメモ
リバンクの先取りを行う。これによって、メモリについ
てのブロックアクセス(block access)が高速化される。
すなわち、メモリアクセスを高速化するメモリアクセス
制御装置を実現することができる。
In the third aspect of the invention, a plurality of masters read / write data from / to a memory to buffer means for each master, and transfer data between the buffer means for each master and a memory bank by access arbitration by arbitration means. When the master accesses consecutive addresses in the memory by the requesting means, access requests for a plurality of banks are simultaneously issued to the arbitration means to prefetch a plurality of memory banks. This speeds up block access for the memory.
That is, it is possible to realize a memory access control device that speeds up memory access.

【0013】〔4〕上記の課題を解決する第4の発明
は、複数のマスタによる並行アクセス可能な複数のメモ
リバンクを持つメモリシステムであって、前記複数のメ
モリバンクのおのおのについて前記マスタ毎に設けら
れ、前記マスタが前記メモリにリード/ライトするデー
タを経由させるバッファ手段と、前記メモリバンクに関
する前記マスタ毎のバッファ手段のアクセスの競合を優
先順位に基づいて調停する調停手段とを具備することを
特徴とする。
[4] A fourth invention for solving the above problem is a memory system having a plurality of memory banks that can be accessed in parallel by a plurality of masters, wherein each of the plurality of memory banks is provided for each of the masters. Buffer means for passing data read / written by the master to / from the memory; and arbitration means for arbitrating access conflicts of the buffer means for each master with respect to the memory bank based on priority. It is characterized by.

【0014】第4の発明では、複数のマスタによるメモ
リへのデータのリード/ライトをマスタ毎のバッファ手
段に対して行い、マスタ毎のバッファ手段とメモリバン
ク間のデータ転送を調停手段によるアクセス調停を経て
行う。これによって、複数のマスタによるメモリアクセ
スが、メモリバンクの重複の有無に関わらず同時並行的
に行える。すなわち、高速アクセスのメモリシステムを
実現することができる。
According to a fourth aspect of the present invention, a plurality of masters read / write data from / to a memory to a buffer means for each master, and transfer data between the buffer means for each master and a memory bank by an access arbitration means. Through. As a result, memory access by a plurality of masters can be performed simultaneously and in parallel regardless of whether or not memory banks overlap. That is, a high-speed access memory system can be realized.

【0015】[0015]

【発明の実施の形態】以下、図面を参照して本発明の実
施の形態を詳細に説明する。なお、本発明は実施の形態
に限定されるものではない。
Embodiments of the present invention will be described below in detail with reference to the drawings. Note that the present invention is not limited to the embodiment.

【0016】(構成)図1に、データ処理装置のブロッ
ク(block) 図を示す。このデータ処理装置は、マスタ部
(10)とメモリ部(20)とメモリアクセス制御装置
(30)とを備えている。マスタ部(10)は例えば4
つのマスタすなわちマスタA(10A)〜マスタD(1
0D)を備えている。マスタA(10A)〜マスタD
(10D)は本発明におけるマスタの実施の形態の一例
である。これらマスタA(10A)〜マスタD(10
D)は、互いに独立にメモリ部(20)にアクセス可能
なものである。そのようなマスタの具体例としては、例
えばCPU(central processing unit) やDMA(direc
t memory access)装置等がある。また、メモリ部(2
0)をDRAM(dynamic random access memory)で構成
した場合は、リフレッシュ装置もマスタの一種とされ
る。
(Configuration) FIG. 1 shows a block diagram of a data processing device. This data processing device includes a master unit (10), a memory unit (20), and a memory access control device (30). The master unit (10) is, for example, 4
Master A, Master A (10A) to Master D (1
OD). Master A (10A) to Master D
(10D) is an example of an embodiment of a master according to the present invention. These master A (10A) to master D (10
D) can access the memory section (20) independently of each other. Specific examples of such a master include, for example, a CPU (central processing unit) and a DMA (direc
t memory access) devices. In addition, the memory unit (2
When (0) is constituted by a DRAM (dynamic random access memory), the refresh device is also a kind of master.

【0017】メモリ部20は、並行的にアクセス可能な
例えば4つのメモリバンクすなわちメモリバンク0(2
00)〜メモリバンク3(203)からなる。メモリ部
20は本発明におけるメモリの実施の形態の一例であ
る。メモリバンク0(200)〜メモリバンク3(20
3)は本発明におけるメモリバンクの実施の形態の一例
である。メモリバンク0(200)〜メモリバンク3
(203)のアドレスは、アドレス空間においてインタ
ーリーブ(interleave)するようになっている。
The memory unit 20 includes, for example, four memory banks that can be accessed in parallel, that is, memory bank 0 (2).
00) to memory bank 3 (203). The memory unit 20 is an example of an embodiment of a memory according to the present invention. Memory bank 0 (200) to memory bank 3 (20
3) is an example of an embodiment of a memory bank according to the present invention. Memory bank 0 (200) to memory bank 3
The address (203) is interleaved in the address space.

【0018】すなわち、例えばメモリバンク0(20
0)にはアドレス0,4,8,…が割り付けられ、メモ
リバンク1(201)にはアドレス1,5,9,…が割
り付けられ、メモリバンク2(202)にはアドレス
2,6,10,…が割り付けられ、メモリバンク3(2
03)にはアドレス3,7,11,…が割り付けられて
いる。これによって、アドレス空間では各メモリバンク
のアドレスが順番に入り組んだ(インターリーブした)
ものとなる。
That is, for example, the memory bank 0 (20
0) are assigned addresses 0, 4, 8,..., Addresses 1, 5, 9,... Are assigned to memory bank 1 (201), and addresses 2, 6, 10 are assigned to memory bank 2 (202). ,... Are assigned, and memory bank 3 (2
03) are assigned addresses 3, 7, 11,.... As a result, in the address space, the addresses of the respective memory banks are interleaved (interleaved).
It will be.

【0019】メモリアクセス制御装置(30)は、マス
タ部(10)とメモリ部(20)との間に介在し、マス
タA(10A)〜マスタD(10D)によるメモリバン
ク0(200)〜メモリバンク3(203)へのアクセ
スを制御するものである。
The memory access control device (30) is interposed between the master unit (10) and the memory unit (20), and includes a memory bank 0 (200) to a memory A (10A) to a master D (10D). The access to the bank 3 (203) is controlled.

【0020】メモリアクセス制御装置(30)は本発明
のメモリアクセス制御装置の実施の形態の一例である。
本装置の構成によって本発明のメモリアクセス制御装置
に関する実施の形態の一例が示される。また、本装置の
動作によって本発明のメモリアクセス制御方法に関する
実施の形態の一例が示される。メモリ部(20)とメモ
リアクセス制御装置(30)は、本発明のメモリシステ
ムの実施の形態の一例である。
The memory access control device (30) is an example of an embodiment of the memory access control device of the present invention.
An example of an embodiment relating to the memory access control device of the present invention is shown by the configuration of the present device. Further, an example of an embodiment relating to the memory access control method of the present invention is shown by the operation of the present apparatus. The memory section (20) and the memory access control device (30) are an example of an embodiment of the memory system of the present invention.

【0021】本装置の構成を説明する。図1に示すよう
に、本装置はバンク0コントローラ(controller)(30
0)〜バンク3コントローラ(303)を有する。これ
らバンク0コントローラ(300)〜バンク3コントロ
ーラ(303)は、それぞれメモリバンク0(200)
〜メモリバンク3(203)毎にマスタA(10A)〜
マスタD(10D)によるアクセスの競合を調停するも
のである。調停は予め定められた優先順位に基づいて行
われる。優先順位は例えばマスタA(10A)を最高順
位とし、以下、マスタB(10B)、マスタC(10
C)、マスタD(10D)の順に序列付けがなされてい
る。バンク0コントローラ(300)〜バンク3コント
ローラ(303)は本発明における調停手段の実施の形
態の一例である。
The configuration of the present apparatus will be described. As shown in FIG. 1, the device is a bank 0 controller (30).
0) to 3 banks (303). These bank 0 controller (300) to bank 3 controller (303) correspond to memory bank 0 (200), respectively.
-Master A (10A) for each memory bank 3 (203)-
It arbitrates access conflicts by the master D (10D). The arbitration is performed based on a predetermined priority. For example, the master A (10A) has the highest priority, and the master B (10B) and the master C (10
The order is assigned in the order of C) and master D (10D). The bank 0 controller (300) to the bank 3 controller (303) are an example of an embodiment of the arbitration means in the present invention.

【0022】メモリバンク0(200)〜メモリバンク
3(203)のおのおのについて、マスタA(10A)
〜マスタD(10D)に対応したバッファがそれぞれ設
けられている。すなわち、メモリバンク0(200)に
ついては、マスタA(10A)〜マスタD(10D)に
対応したバッファ(30A)〜(30D)が設けられ、
同様に、メモリバンク1(201)についてはバッファ
(31A)〜(31D)、メモリバンク2(202)に
ついてはバッファ(32A)〜(32D)、メモリバン
ク3(203)についてはバッファ(33A)〜(33
D)がそれぞれ設けられている。これらバッファ(30
A)〜(33D)は本発明におけるバッファ手段の実施
の形態の一例である。
For each of memory banks 0 (200) to 3 (203), master A (10A)
To master D (10D). That is, buffers (30A) to (30D) corresponding to master A (10A) to master D (10D) are provided for memory bank 0 (200),
Similarly, buffers (31A) to (31D) for memory bank 1 (201), buffers (32A) to (32D) for memory bank 2 (202), and buffers (33A) to (32A) for memory bank 3 (203). (33
D) are provided. These buffers (30
(A) to (33D) are examples of embodiments of the buffer means in the present invention.

【0023】マスタA(10A)〜マスタD(10D)
は、それぞれバッファ(30A)〜(30D)を介して
メモリバンク0(200)に接続されている。同様に、
バッファ(31A)〜(31D)を介してメモリバンク
1(201)に、バッファ(32A)〜(32D)を介
してメモリバンク2(202)に、バッファ(33A)
〜(33D)を介してメモリバンク3(203)に、そ
れぞれ接続されている。
Master A (10A) to Master D (10D)
Are connected to the memory bank 0 (200) via buffers (30A) to (30D), respectively. Similarly,
The buffer (33A) is connected to the memory bank 1 (201) via the buffers (31A) to (31D) and to the memory bank 2 (202) via the buffers (32A) to (32D).
To (33D) to the memory bank 3 (203).

【0024】マスタA(10A)〜マスタD(10D)
がメモリバンク0(200)〜メモリバンク3(20
3)にリード/ライトするデータ、すなわち、メモリバ
ンク0(200)〜メモリバンク3(203)から読み
出す(リード)データおよびメモリバンク0(200)
〜メモリバンク3(203)に書き込む(ライト)デー
タは、これらそれぞれ対応するバッファを介して授受さ
れるようになっている。
Master A (10A) to Master D (10D)
Are memory banks 0 (200) to 3 (20
3) Data to be read / written, that is, (read) data read from memory bank 0 (200) to memory bank 3 (203) and memory bank 0 (200)
(Write) data to be written to the memory bank 3 (203) is transmitted / received via these corresponding buffers.

【0025】バッファは双方向性のものを読み出しと書
込みに共用するのが、装置の構成を簡素化する点で好ま
しい。勿論、一方向性のものを読み出し用と書込み用に
それぞれ設けるようにしても良い。こちらは制御が簡単
になる点で好ましい。
It is preferable to use a bidirectional buffer for both reading and writing in terms of simplifying the structure of the apparatus. Of course, a unidirectional device may be provided for reading and writing. This is preferable because control becomes simple.

【0026】これらバッファは例えばデータレジスタ(d
ata register) 等によって構成される。データレジスタ
の長さすなわちバッファ容量は例えば1データ長とする
のが、制御が簡単になる点で好ましい。勿論、必要に応
じてそれより大きいバッファ容量にしても差し支えな
い。なお、リフレッシュを行うマスタはデータのリード
/ライトをしないので、それについてはバッファは不要
となる。
These buffers are, for example, data registers (d
ata register). It is preferable that the length of the data register, that is, the buffer capacity is, for example, one data length, since control is simplified. Of course, a larger buffer capacity may be used if necessary. Note that the refreshing master does not read / write data, so that no buffer is required for that.

【0027】バンク0コントローラ(300)〜バンク
3コントローラ(303)には、リクエスタ(requeste
r) A(35A)〜リクエスタD(35D)が接続され
ている。リクエスタA(35A)〜リクエスタD(35
D)はそれぞれマスタA(10A)〜マスタD(10
D)に対応して設けられている。リクエスタA(35
A)〜リクエスタD(35D)は本発明における要求手
段の実施の形態の一例である。
The bank 0 controller (300) to the bank 3 controller (303) have a requester (request
r) A (35A) to requester D (35D) are connected. Requester A (35A)-Requester D (35
D) are masters A (10A) to master D (10
D). Requester A (35
A) to Requester D (35D) are an example of an embodiment of the request means in the present invention.

【0028】リクエスタA(35A)〜リクエスタD
(35D)はそれぞれ対応するマスタに接続され、アド
レスを含むメモリアクセス用の情報が入力されるように
なっている。リクエスタA(35A)〜リクエスタD
(35D)は、入力情報を解読して該当するメモリバン
クへのアクセスを要求するリクエスト信号を発生する。
このリクエスト信号がバンク0コントローラ(300)
〜バンク3コントローラ(303)に入力される。リク
エスト信号にはメモリアクセス用のアドレスが含まれ
る。
Requester A (35A) to Requester D
(35D) are connected to the corresponding masters, and input information for memory access including addresses. Requester A (35A)-Requester D
(35D) decodes the input information and generates a request signal for requesting access to the corresponding memory bank.
This request signal is sent to the bank 0 controller (300).
To the bank 3 controller (303). The request signal includes a memory access address.

【0029】バンク0コントローラ(300)〜バンク
3コントローラ(303)はこれらリクエスト信号に基
づいて各マスタのバンクアクセス要求を認識する。そし
て、同一バンクに対して複数のマスタからのバンクアク
セス要求が競合するときは、優先順位に基づく調停を行
い、その時点の最高順位のものにアクセスを許可し、ア
クセスを許可したマスタに対応するバッファとメモリバ
ンクとの間でデータ転送を行わせる。データ転送はメモ
リ読み出し時はメモリバンクからバッファに対して行わ
れ、メモリ書込み時はバッファからメモリバンクに対し
て行われる。
The bank 0 controller (300) to the bank 3 controller (303) recognize the bank access request of each master based on these request signals. When bank access requests from a plurality of masters compete for the same bank, arbitration based on priority is performed, access is permitted to the highest-ranked one at that time, and the master corresponding to the access-permitted master is accessed. Data transfer is performed between the buffer and the memory bank. Data transfer is performed from the memory bank to the buffer at the time of memory read, and is performed from the buffer to the memory bank at the time of memory write.

【0030】バッファとメモリバンク間のデータ転送速
度は、メモリ部20の仕様上許容し得る最大速度をなる
ように設定する。これは例えばバッファとメモリバンク
を同一のボード(board) に搭載すること等により容易に
可能である。通常、別々なボードに搭載されることが多
いマスタとメモリバンクとの間でデータを転送するとき
は、タイミング(timing)にマージン(margin)が必要にな
るのでそのような最大速度は実現が困難であるが、同一
ボードに搭載したバッファとの間では容易に実現可能で
ある。これによって、バッファがメモリバンクを占有す
る時間を最小限にすることができる。なお、バッファの
動作速度はメモリバンクの動作速度より十分速いので、
その動作速度が問題になることはない。
The data transfer speed between the buffer and the memory bank is set so as to be the maximum speed allowable in the specification of the memory unit 20. This can be easily achieved, for example, by mounting the buffer and the memory bank on the same board. Normally, when transferring data between the master and the memory bank, which are often mounted on separate boards, a margin is required for timing, so such a maximum speed is difficult to achieve However, it can be easily realized with a buffer mounted on the same board. This minimizes the time that the buffer occupies the memory bank. Since the operation speed of the buffer is sufficiently faster than the operation speed of the memory bank,
Its operating speed does not matter.

【0031】(動作)本装置の動作を説明する。図2に
バンクNコントローラ(30N)(N:0〜3)の動作
のフロー図を示す。このフロー図によって、先ずバンク
Nコントローラ(30N)によるメモリアクセスの調停
動作を説明する。この動作はバンク0コントローラ(3
00)〜バンク3コントローラ(300)によってそれ
ぞれ独立に行われる。
(Operation) The operation of the present apparatus will be described. FIG. 2 shows a flowchart of the operation of the bank N controller (30N) (N: 0 to 3). First, the arbitration operation of memory access by the bank N controller (30N) will be described with reference to this flowchart. This operation is performed by the bank 0 controller (3
00) to bank 3 controller (300).

【0032】ステップST20からバンクNコントロー
ラ(30N)の動作が開始する。次にステップST21
においてメモリバンク(バンク)Nへのアクセス要求が
識別される。バンクNへのアクセス要求はリクエスタA
(35A)〜リクエスタD(35D)からのリクエスト
信号に基づいて判定される。
The operation of the bank N controller (30N) starts from step ST20. Next, step ST21
, An access request to the memory bank (bank) N is identified. Requester for access to bank N is requester A
The determination is made based on a request signal from (35A) to requester D (35D).

【0033】次にステップST22においてリクエスト
の競合が調停される。複数のマスタのリクエストが重複
しているときは、その時点の最高順位のものにアクセス
権が与えられる。
Next, in step ST22, contention of requests is arbitrated. When the requests of a plurality of masters are duplicated, the access right is given to the highest priority request at that time.

【0034】これによって、マスタA(10A)がアク
セス権を取得したときは、ステップST23からステッ
プSTA24に分岐して、マスタA(10A)にバンク
アクセスを行わせる。実際にはマスタA(10A)用の
バッファ(3NA)とバンクN(20N)との間のデー
タ転送を行わせる。データ転送の方向は、読み出し時は
バンクN(20N)からバッファ(3NA)へ、書込み
時はバッファ(3NA)からバンクN(20N)へとな
る。
Thus, when the master A (10A) acquires the access right, the process branches from step ST23 to step STA24 to make the master A (10A) perform the bank access. Actually, data transfer between the buffer (3NA) for the master A (10A) and the bank N (20N) is performed. The direction of data transfer is from the bank N (20N) to the buffer (3NA) at the time of reading, and from the buffer (3NA) to the bank N (20N) at the time of writing.

【0035】マスタB(10B)がアクセス権を取得し
たときは、ステップST25からステップSTA26に
分岐してマスタB(10B)にバンクアクセスを行わせ
る。実際にはマスタB(10B)用のバッファ(3N
B)とバンクN(20N)との間のデータ転送を行わせ
る。
When the master B (10B) has acquired the access right, the process branches from step ST25 to step STA26 to cause the master B (10B) to perform a bank access. Actually, the buffer (3N) for the master B (10B)
B) and data transfer between the bank N (20N).

【0036】マスタC(10C)がアクセス権を取得し
たときは、ステップST27からステップSTA28に
分岐してマスタC(10C)にバンクアクセスを行わせ
る。実際にはマスタC(10C)用のバッファ(3N
C)とバンクN(20N)との間のデータ転送を行わせ
る。
When the master C (10C) has acquired the access right, the process branches from step ST27 to step STA28, where the master C (10C) performs bank access. Actually, the buffer (3N) for the master C (10C)
C) and data transfer between the bank N (20N).

【0037】マスタD(10D)がアクセス権を取得し
たときはステップST27からステップSTA29に分
岐してマスタD(10D)にバンクアクセスを行わせ
る。実際にはマスタD(10D)用のバッファ(3N
D)とバンクN(20N)との間のデータ転送を行わせ
る。
When the master D (10D) has acquired the access right, the process branches from step ST27 to step STA29 to cause the master D (10D) to perform bank access. Actually, the buffer for master D (10D) (3N
D) and the data transfer between the bank N (20N).

【0038】なお、いずれかのマスタがリフレッシュ装
置であるときは、アクセスはバッファとバンク間のデー
タ転送としてではなく、メモリのリフレッシュとして行
われる。
When one of the masters is a refresh device, the access is performed not as a data transfer between the buffer and the bank but as a memory refresh.

【0039】次に、このようなバンクNコントローラ3
0Nの調停動作を利用して行われるマスタA(10A)
〜マスタD(10D)のメモリアクセス動作について説
明する。図3にメモリアクセス時のリクエスタX(35
X)(X:A〜D)の動作のフロー図を示す。この動作
は、マスタA(10A)〜マスタD(10D)によるメ
モリアクセスに伴って、リクエスタA(35A)〜リク
エスタD(35D)によりそれぞれ行われる。それらリ
クエスト間には同一のバンクに関する競合が発生する。
Next, such a bank N controller 3
Master A (10A) performed using arbitration operation of 0N
The memory access operation of the master D (10D) will be described. FIG. 3 shows the requester X (35
X) shows a flowchart of the operation of (X: A to D). This operation is performed by the requesters A (35A) to D (35D) with the memory access by the masters A (10A) to D (10D). Contention regarding the same bank occurs between those requests.

【0040】メモリアクセスのモード(mode)にはバース
トモード(burst mode)、ランダムモードおよびリフレッ
シュモードがある。バーストモードとは連続する複数の
アドレスにアクセスし、複数のデータを連続的に読み出
しあるいは書込みを行うモードである。これはデータの
ブロック転送に利用され、ブロックアクセスとも呼ばれ
る。ランダムモードは連続性がない(ランダムな)アド
レスに散発的にアクセスしてデータのリード/ライトを
行うモードである。リフレッシュモードはメモリのリフ
レッシュを行うモードである。
The memory access mode includes a burst mode, a random mode, and a refresh mode. The burst mode is a mode in which a plurality of continuous addresses are accessed and a plurality of data are continuously read or written. This is used for block transfer of data, and is also called block access. The random mode is a mode in which data is read / written by sporadic access to non-continuous (random) addresses. The refresh mode is a mode for refreshing the memory.

【0041】先ず、バーストモードでのデータ読み出し
について説明する。このとき、マスタX(10X)から
リクエスタ(35X)に、バースト読み出し信号と先頭
アドレスおよびデータ数等のアドレス情報が与えられ
る。それらの情報に基づいて、図3に示す動作が実行さ
れる。
First, data reading in the burst mode will be described. At this time, the master X (10X) supplies the requester (35X) with a burst read signal and address information such as a head address and the number of data. The operation shown in FIG. 3 is performed based on the information.

【0042】ステップST31からリクエスタ(35
X)の動作が開始し、次のステップST32においてマ
スタX(10X)によるバーストモードのアクセス要求
が識別される。そして、ステップST33からステップ
ST34に分岐し、バンク0(200)〜バンク3(2
03)の全てを要求するリクエスト信号を発生する。ア
ドレスがインターリーブしていることにより、バースト
モードでは当然全バンクの順次アクセスが必要になるの
で、最初から全バンクに対するリクエストが出される。
From step ST31, the requester (35)
The operation of X) starts, and in the next step ST32, a burst mode access request by the master X (10X) is identified. Then, the process branches from step ST33 to step ST34, and proceeds from bank 0 (200) to bank 3 (2
03) is generated. Since the addresses are interleaved, the sequential access of all the banks is naturally required in the burst mode. Therefore, a request for all the banks is issued from the beginning.

【0043】このリクエスト信号がバンク0コントロー
ラ(300)〜バンク3コントローラ(303)に入力
され、それに基づいてバンク0コントローラ(300)
〜バンク3コントローラ(303)により、バンク0
(200)〜バンク3(203)へのアクセスが前述の
ようにしてそれぞれ調停される。
The request signal is input to the bank 0 controller (300) to the bank 3 controller (303), and based on the request signal, the bank 0 controller (300)
~ Bank 3 by the bank 3 controller (303)
Access from (200) to bank 3 (203) is arbitrated as described above.

【0044】調停によるアクセス権の取得次第に、バン
クN(20N)からバッファ(3NX)にデータ転送が
行われる。すなわち、ステップST35においてバンク
0(200)からバッファ(30X)にデータ転送が行
われ、ステップST36においてバンク1(201)か
らバッファ(31X)にデータ転送が行われ、ステップ
ST37においてバンク2(202)からバッファ(3
2X)にデータ転送が行われ、ステップST38におい
てバンク3(203)からバッファ(33X)にデータ
転送が行われる。各バンクから各バッファへのデータ転
送(読み出し)はメモリが許容する最大の速度で行われ
る。
As soon as the access right is acquired by the arbitration, the data is transferred from the bank N (20N) to the buffer (3NX). That is, in step ST35, data is transferred from the bank 0 (200) to the buffer (30X), in step ST36, data is transferred from the bank 1 (201) to the buffer (31X), and in step ST37, the bank 2 (202) is transferred. From the buffer (3
2X), and the data is transferred from the bank 3 (203) to the buffer (33X) in step ST38. Data transfer (read) from each bank to each buffer is performed at the maximum speed allowed by the memory.

【0045】マスタX(10X)はバッファ(30X)
からバッファ(33X)まで順番にデータの読み取りを
行う。このデータの読取はマスタX(10X)について
規定された所定の読取速度によって行われる。この速度
は一般的にメモリの最大読出速度よりも遅いものとな
る。
The master X (10X) is a buffer (30X)
To the buffer (33X) in order. The reading of this data is performed at a predetermined reading speed specified for the master X (10X). This speed is generally lower than the maximum read speed of the memory.

【0046】このため、マスタX(10X)がバッファ
(30X)の読み出しを始めた時点で、他との競合のた
め例えばバッファ(33X)がまだアクセス権を得てい
なかったとしても、バッファ(33X)にマスタXの読
み出しの順番がめぐって来る頃には、概ねアクセス権を
得てデータ転送が済んでいる。
Therefore, at the time when the master X (10X) starts reading the buffer (30X), even if the buffer (33X) has not yet obtained the access right due to contention with another, the buffer (33X) has not been obtained. By the time when the reading order of the master X comes over in ()), the access right has been generally obtained and the data transfer has been completed.

【0047】すなわち、バッファ(30X)〜(33
X)には一連のデータの先読みが行われ、これら先読み
したデータをマスタX(10X)が読み取って行くこと
になる。このような動作が所要のデータ数を読み出す間
繰返される。このようにして、マスタX(10X)から
見れば、実質的に他のマスタとの競合に影響されずにデ
ータの連続読出を行うことができる。また、通常、DR
AM等で構成されるメモリ部20よりもレジスタ等で構
成されるバッファ(3NX)はアクセス時間が短いの
で、バンクが競合しない時でも、バーストモードの読み
出しは高速化される。
That is, the buffers (30X) to (33)
In X), a series of prefetching of data is performed, and the prefetched data is read by the master X (10X). Such an operation is repeated while reading the required number of data. In this way, from the viewpoint of the master X (10X), continuous reading of data can be performed substantially without being affected by competition with another master. Also, usually, DR
Since the access time of the buffer (3NX) composed of registers and the like is shorter than that of the memory unit 20 composed of AM and the like, the reading in the burst mode can be sped up even when the banks do not compete.

【0048】次に、バーストモードでのデータ書き込み
について説明する。このとき、マスタX(10X)はバ
ッファ(30X)〜(33X)に4個のデータをそれぞ
れ書き込むとともに、リクエスタ(35X)にバースト
書き込み信号と先頭アドレスおよびデータ数等のアドレ
ス情報を与える。それらの情報に基づいて、図3に示し
たリクエスタ(35X)の動作が実行される。
Next, data writing in the burst mode will be described. At this time, the master X (10X) writes four pieces of data to the buffers (30X) to (33X), and gives the requester (35X) a burst write signal and address information such as a head address and the number of data. The operation of the requester (35X) shown in FIG. 3 is executed based on the information.

【0049】バースト読み出しの場合と同様に、ステッ
プST31からステップST34までの動作によりバン
ク0(200)〜バンク3(203)の全てを要求する
リクエスト信号を発生する。このリクエスト信号がバン
ク0コントローラ(300)〜バンク3コントローラ
(303)に入力され、それに基づいてバンク0コント
ローラ(300)〜バンク3コントローラ(303)に
より、バンク0(200)〜バンク3(203)へのア
クセスがそれぞれ調停される。
As in the case of the burst read, a request signal for requesting all of the banks 0 (200) to 3 (203) is generated by the operations from step ST31 to step ST34. This request signal is input to the bank 0 controller (300) to the bank 3 controller (303), and based on the request signal, the bank 0 controller (300) to the bank 3 controller (303) causes the bank 0 (200) to the bank 3 (203). Access to each is arbitrated.

【0050】調停によるアクセス権の取得次第に、バッ
ファ(3NX)からバンクN(20N)にデータ転送が
行われる。すなわち、ステップST35においてバッフ
ァ(30X)からバンク0(200)にデータ転送が行
われ、ステップST36においてバッファ(31X)か
らバンク1(201)にデータ転送が行われ、ステップ
ST37においてバッファ(32X)からバンク2(2
02)にデータ転送が行われ、ステップST38におい
てバッファ(33X)からバンク3(203)にデータ
転送が行われる。各バッファから各バンクへのデータ転
送(書き込み)はメモリが許容する最大の書き込み速度
で行われる。このように、バッファ(30X)〜(33
X)からバンク0(200)〜バンク3(203)には
一連のデータの後書きが行われる。
As soon as the access right is acquired by the arbitration, the data is transferred from the buffer (3NX) to the bank N (20N). That is, in step ST35, data is transferred from the buffer (30X) to the bank 0 (200), in step ST36, data is transferred from the buffer (31X) to the bank 1 (201), and in step ST37, the data is transferred from the buffer (32X). Bank 2 (2
02), data is transferred from the buffer (33X) to the bank 3 (203) in step ST38. Data transfer (writing) from each buffer to each bank is performed at the maximum writing speed allowed by the memory. Thus, the buffers (30X) to (33)
From X), a series of data is post-written to the banks 0 (200) to 3 (203).

【0051】マスタX(10X)は次の4個のデータを
バッファ(30X)〜(33X)に順番に書き込む。こ
のデータの書き込みはマスタX(10X)について規定
された所定の書込速度によって行われる。この速度は一
般的にメモリの最大書き込み速度よりも遅いものとな
る。
The master X (10X) writes the next four data in the buffers (30X) to (33X) in order. This data writing is performed at a predetermined writing speed defined for the master X (10X). This speed is generally lower than the maximum writing speed of the memory.

【0052】このため、マスタX(10X)がバッファ
(30X)の書き込みを始めた時点で、他との競合のた
め例えばバッファ(33X)がまだアクセス権を得てい
なかったとしても、バッファ(33X)にマスタX(1
0X)の書き込みの順番がめぐって来る頃には、概ねア
クセス権を得てデータ転送が済んでいる。このようにし
て、マスタX(10X)から見れば、実質的に他のマス
タとの競合に影響されずにデータの連続書き込みを行う
ことができる。このような動作がマスタX(10X)が
必要とするデータ数分だけ行われる。通常、DRAM等
で構成されるメモリ部20よりもレジスタ等で構成され
るバッファ(3NX)はアクセス時間が短いので、バン
クが競合しない時でもバーストモードの書き込みは高速
化される。
For this reason, at the time when the master X (10X) starts writing to the buffer (30X), even if the buffer (33X) has not yet obtained the access right due to contention with another buffer, the buffer (33X) has not been obtained. ) To Master X (1
By the time the write order of (0X) comes over, the access right has been generally obtained and the data transfer has been completed. In this way, from the point of view of the master X (10X), continuous writing of data can be performed substantially without being affected by contention with another master. Such an operation is performed for the number of data required by the master X (10X). Normally, the access time of the buffer (3NX) composed of registers and the like is shorter than that of the memory unit 20 composed of DRAM and the like, so that writing in the burst mode is sped up even when there is no conflict between banks.

【0053】次に、ランダムアクセスによるデータ読み
出しについて説明する。このとき、マスタX(10X)
はリクエスタ(35X)にランダム読み出し信号とアド
レス情報を与える。それらの情報に基づいて、図3に示
したリクエスタ(35X)の動作が実行される。
Next, data reading by random access will be described. At this time, the master X (10X)
Supplies a random read signal and address information to the requester (35X). The operation of the requester (35X) shown in FIG. 3 is executed based on the information.

【0054】ステップST31からステップST33ま
での動作によりランダムアクセス要求であること判定さ
れる。次いでステップST39〜ST41によってバン
ク0(200)〜バンク3(203)のいずれに対する
アクセスであるかがアドレスに基づいて判定される。
The operation from step ST31 to step ST33 determines that the request is a random access request. Next, in steps ST39 to ST41, it is determined which of the banks 0 (200) to 3 (203) is to be accessed based on the address.

【0055】バンク0(200)へのアクセスである場
合は、ステップST42においてリクエスト信号がバン
ク0コントローラ(300)に入力される。それに基づ
いてバンク0コントローラ(300)により、バンク0
(200)へのアクセスが調停される。調停によるアク
セス権の取得次第に、ステップST43においてバンク
0(200)からバッファ(30X)にデータ転送が行
われる。このバッファ(30X)のデータがマスタX
(10X)によって読み取られる。
If the access is to bank 0 (200), a request signal is input to bank 0 controller (300) in step ST42. Based on this, the bank 0 controller (300) operates the bank 0
Access to (200) is arbitrated. As soon as the access right is acquired by the arbitration, the data is transferred from the bank 0 (200) to the buffer (30X) in step ST43. The data in this buffer (30X) is the master X
(10X).

【0056】バンク1(201)へのアクセスである場
合は、ステップST44においてリクエスト信号がバン
ク1コントローラ(301)に入力される。それに基づ
いてバンク1コントローラ(301)により、バンク1
(201)へのアクセスが調停される。調停によるアク
セス権の取得次第に、ステップST45においてバンク
1(201)からバッファ(31X)にデータ転送が行
われる。このデータがマスタX(10X)によって読み
取られる。
If the access is to the bank 1 (201), a request signal is input to the bank 1 controller (301) in step ST44. Based on this, the bank 1 controller (301) operates the bank 1
Access to (201) is arbitrated. As soon as the access right is acquired by the arbitration, data transfer is performed from the bank 1 (201) to the buffer (31X) in step ST45. This data is read by the master X (10X).

【0057】バンク2(202)へのアクセスである場
合は、ステップST46においてリクエスト信号がバン
ク2コントローラ(302)に入力される。それに基づ
いてバンク2コントローラ(302)により、バンク2
(202)へのアクセスが調停される。調停によるアク
セス権の取得次第に、ステップST47においてバンク
2(202)からバッファ(32X)にデータ転送が行
われる。このデータがマスタX(10X)によって読み
取られる。
If the access is to the bank 2 (202), a request signal is input to the bank 2 controller (302) in step ST46. Based on this, the bank 2 controller (302) operates the bank 2
Access to (202) is arbitrated. As soon as the access right is acquired by the arbitration, the data is transferred from the bank 2 (202) to the buffer (32X) in step ST47. This data is read by the master X (10X).

【0058】バンク3(203)へのアクセスである場
合は、ステップST48においてリクエスト信号がバン
ク3コントローラ(303)に入力される。それに基づ
いてバンク3コントローラ(303)により、バンク3
(203)へのアクセスが調停される。調停によるアク
セス権の取得次第に、ステップST49においてバンク
3(203)からバッファ(33X)にデータ転送が行
われる。このデータがマスタX(10X)によって読み
取られる。
If the access is to the bank 3 (203), a request signal is input to the bank 3 controller (303) in step ST48. Based on this, the bank 3 controller (303) operates the bank 3
Access to (203) is arbitrated. As soon as the access right is acquired by the arbitration, the data is transferred from the bank 3 (203) to the buffer (33X) in step ST49. This data is read by the master X (10X).

【0059】以上のランダムアクセスによるデータ読み
出しにおいて、調停によりマスタX(10X)のアクセ
スが待たされることがあっても、バッファ(3NX)に
よるバンクN(20N)の占有時間が短いので待ち時間
は短い。
In the above-described data read by random access, even if the access of the master X (10X) is waited due to arbitration, the waiting time is short because the occupancy time of the bank N (20N) by the buffer (3NX) is short. .

【0060】次に、ランダムアクセスによるデータ書き
込みについて説明する。このとき、マスタX(10X)
はバッファ(3NX)にデータを書き込むとともにリク
エスタ(35X)にランダム書き込み信号とアドレス情
報を与える。それらの情報に基づいて、図3に示したリ
クエスタ(35X)の動作が実行される。
Next, data writing by random access will be described. At this time, the master X (10X)
Writes data to the buffer (3NX) and gives a random write signal and address information to the requester (35X). The operation of the requester (35X) shown in FIG. 3 is executed based on the information.

【0061】以下、上述のランダムアクセスの読み出し
と同様なバンクアクセスが行われる。ただし、データの
転送方向はバッファ(3NX)からバンクN(20N)
へとなる。ランダムアクセスによるデータ書き込みにお
いては、マスタX(10X)はバッファ(3NX)にデ
ータを書き込むだけなので、競合のいかんに関わらずア
クセスが待たされることがない。
Thereafter, bank access similar to the above-described random access read is performed. However, the data transfer direction is from buffer (3NX) to bank N (20N).
To. In data writing by random access, the master X (10X) only writes data to the buffer (3NX), so that access is not waited regardless of contention.

【0062】次に、メモリのリフレッシュについて説明
する。このとき、リフレッシュ装置であるマスタXがリ
クエスタ(35X)にリフレッシュ信号とリフレッシュ
部位に関するロケーション(location) 情報を与える。
リフレッシュもランダムアクセスの一形態となってい
る。それらの情報に基づいて、図3に示したリクエスタ
(35X)の動作が実行される。以下、上述のランダム
アクセスと同様な動作が行われる。ただし、アクセスに
より、データ転送ではなくリフレッシュが行われる。こ
れによって、メモリのリフレッシュが高速メモリアクセ
スの一環として効果的に行われる。
Next, the refresh of the memory will be described. At this time, the master X, which is a refresh device, gives the requester (35X) a refresh signal and location information relating to the refresh portion.
Refreshing is also a form of random access. The operation of the requester (35X) shown in FIG. 3 is executed based on the information. Hereinafter, the same operation as the above-described random access is performed. However, the refresh is performed by the access, not the data transfer. This effectively refreshes the memory as part of high-speed memory access.

【0063】[0063]

【発明の効果】以上詳細に説明したように、第1の発明
では、複数のマスタによるメモリへのデータのリード/
ライトをマスタ毎のバッファに対して行い、マスタ毎の
バッファとメモリバンク間のデータ転送は優先順位に応
じたアクセス調停を経て行うようにしたので、複数のマ
スタによるメモリアクセスがメモリバンクの重複の有無
に関わらず同時並行的に行える。すなわち、メモリアク
セスを高速化するメモリアクセス制御方法を実現するこ
とができる。
As described in detail above, in the first invention, a plurality of masters read / read data from / to a memory.
Write is performed for each master's buffer, and data transfer between each master's buffer and memory bank is performed through access arbitration according to priority. Simultaneous and parallel with or without presence. That is, a memory access control method that speeds up memory access can be realized.

【0064】また、第2の発明では、複数のマスタによ
るメモリへのデータのリード/ライトをマスタ毎のバッ
ファ手段に対して行い、マスタ毎のバッファ手段とメモ
リバンク間のデータ転送を調停手段によるアクセス調停
を経て行うようにしたので、複数のマスタによるメモリ
アクセスがメモリバンクの重複の有無に関わらず同時並
行的に行える。すなわち、メモリアクセスを高速化する
メモリアクセス制御装置を実現することができる。
In the second invention, a plurality of masters read / write data to / from the memory with respect to the buffer means for each master, and transfer data between the buffer means for each master and the memory bank by the arbitration means. Since access arbitration is performed, memory access by a plurality of masters can be performed simultaneously and in parallel regardless of the presence or absence of overlapping memory banks. That is, it is possible to realize a memory access control device that speeds up memory access.

【0065】また、第3の発明では、複数のマスタによ
るメモリへのデータのリード/ライトをマスタ毎のバッ
ファ手段に対して行い、マスタ毎のバッファ手段とメモ
リバンク間のデータ転送を調停手段によるアクセス調停
を経て行い、また、要求手段により、マスタがメモリの
連続するアドレスにアクセスした場合は調停手段に対し
複数のバンクに関するアクセス要求を一斉に出して複数
のメモリバンクを先取りするようにしたので、メモリに
ついてのブロックアクセスが高速化される。すなわち、
メモリアクセスを高速化するメモリアクセス制御装置を
実現することができる。
In the third invention, a plurality of masters read / write data from / to the memory to the buffer means for each master, and transfer data between the buffer means for each master and the memory bank by the arbitration means. The access arbitration is performed, and when the master accesses consecutive addresses in the memory by the request means, access requests for a plurality of banks are simultaneously issued to the arbitration means so that the plurality of memory banks are prefetched. In addition, the speed of the block access to the memory is increased. That is,
A memory access control device that speeds up memory access can be realized.

【0066】また、第4の発明では、複数のマスタによ
るメモリへのデータのリード/ライトをマスタ毎のバッ
ファ手段に対して行い、マスタ毎のバッファ手段とメモ
リバンク間のデータ転送を調停手段によるアクセス調停
を経て行うようにしたので、複数のマスタによるメモリ
アクセスがメモリバンクの重複の有無に関わらず同時並
行的に行える。すなわち、高速アクセスのメモリシステ
ムを実現することができる。
According to the fourth aspect of the present invention, a plurality of masters read / write data to / from the memory with respect to the buffer means for each master, and transfer data between the buffer means for each master and the memory bank by the arbitration means. Since access arbitration is performed, memory access by a plurality of masters can be performed simultaneously and in parallel regardless of the presence or absence of overlapping memory banks. That is, a high-speed access memory system can be realized.

【図面の簡単な説明】[Brief description of the drawings]

【図1】本発明の実施の形態の一例の装置を備えたデー
タ処理装置のブロック図である。
FIG. 1 is a block diagram of a data processing apparatus including an apparatus according to an embodiment of the present invention.

【図2】本発明の実施の形態の一例の装置におけるアク
セス調停の動作を示すフロー図である。
FIG. 2 is a flowchart showing an operation of access arbitration in the device according to an embodiment of the present invention;

【図3】本発明の実施の形態の一例の装置におけるバン
クアクセスの動作を示すフロー図である。
FIG. 3 is a flowchart showing an operation of a bank access in the device according to the embodiment of the present invention;

【符号の説明】[Explanation of symbols]

10 マスタ部 10A マスタA 10B マスタB 10C マスタC 10D マスタD 20 メモリ部 200 メモリバンク0 201 メモリバンク1 202 メモリバンク2 203 メモリバンク3 30 メモリアクセス制御装置 300 バンク0コントローラ 301 バンク1コントローラ 302 バンク2コントローラ 303 バンク3コントローラ 30A〜33D バッファ 35A リクエスタA 35B リクエスタB 35C リクエスタC 35D リクエスタD Reference Signs List 10 master section 10A master A 10B master B 10C master C 10D master D 20 memory section 200 memory bank 0 201 memory bank 1 202 memory bank 2 203 memory bank 3 30 memory access control device 300 bank 0 controller 301 bank 1 controller 302 bank 2 Controller 303 Bank 3 controller 30A to 33D Buffer 35A Requester A 35B Requester B 35C Requester C 35D Requester D

Claims (4)

Translated fromJapanese
【特許請求の範囲】[Claims]【請求項1】 並行アクセス可能な複数のメモリバンク
を持つメモリについての複数のマスタからのアクセスを
制御するメモリアクセス制御方法であって、 前記マスタが前記メモリにリード/ライトするデータを
前記複数のメモリバンクのおのおのに設けた前記マスタ
毎のバッファを経由させ、 前記メモリバンクに関する前記マスタ毎のバッファのア
クセスの競合を優先順位に基づいて調停する、ことを特
徴とするメモリアクセス制御方法。
1. A memory access control method for controlling access from a plurality of masters to a memory having a plurality of memory banks which can be accessed in parallel, wherein the master reads data from / writes to the memory. A memory access control method, comprising: arbitrating, via a buffer for each master provided in each memory bank, access conflicts of the buffer for each master with respect to the memory bank based on a priority order.
【請求項2】 並行アクセス可能な複数のメモリバンク
を持つメモリについての複数のマスタからのアクセスを
制御するメモリアクセス制御装置であって、 前記複数のメモリバンクのおのおのについて前記マスタ
毎に設けられ、前記マスタが前記メモリにリード/ライ
トするデータを経由させるバッファ手段と、 前記メモリバンクに関する前記マスタ毎のバッファ手段
のアクセスの競合を優先順位に基づいて調停する調停手
段と、を具備することを特徴とするメモリアクセス制御
装置。
2. A memory access control device for controlling access from a plurality of masters to a memory having a plurality of memory banks which can be accessed in parallel, wherein the memory access control device is provided for each of the plurality of memory banks. Buffer means for passing data which the master reads / writes to / from the memory; and arbitration means for arbitrating access conflicts of the buffer means for each master with respect to the memory bank based on priority. Memory access control device.
【請求項3】 連続するアドレスがインターリーブして
いる並行アクセス可能な複数のメモリバンクを持つメモ
リについての複数のマスタからのアクセスを制御するメ
モリアクセス制御装置であって、 前記複数のメモリバンクのおのおのについて前記マスタ
毎に設けられ、前記マスタが前記メモリにリード/ライ
トするデータを経由させるバッファ手段と、 前記メモリバンクに関する前記マスタ毎のバッファ手段
のアクセスの競合を優先順位に基づいて調停する調停手
段と、 前記マスタ毎に設けられ、前記マスタが前記メモリの連
続するアドレスにアクセスした場合に前記調停手段に対
し前記複数のバンクについてのアクセス要求を一斉に出
す要求手段と、を具備することを特徴とするメモリアク
セス制御装置。
3. A memory access control device for controlling access from a plurality of masters to a memory having a plurality of memory banks which can be accessed in parallel and whose consecutive addresses are interleaved, wherein each of said plurality of memory banks is controlled. Buffer means provided for each master for passing data read / written by the master to / from the memory; and arbitration means for arbitrating access competition of the buffer means for each master with respect to the memory bank based on priority. Request means provided for each of the masters, and requesting the arbitration means to simultaneously issue access requests for the plurality of banks when the master accesses successive addresses in the memory. Memory access control device.
【請求項4】 複数のマスタによる並行アクセス可能な
複数のメモリバンクを持つメモリシステムであって、 前記複数のメモリバンクのおのおのについて前記マスタ
毎に設けられ、前記マスタが前記メモリにリード/ライ
トするデータを経由させるバッファ手段と、 前記メモリバンクに関する前記マスタ毎のバッファ手段
のアクセスの競合を優先順位に基づいて調停する調停手
段と、を具備することを特徴とするメモリシステム。
4. A memory system having a plurality of memory banks that can be accessed in parallel by a plurality of masters, wherein each of the plurality of memory banks is provided for each of the masters, and the master reads / writes the memory. A memory system comprising: buffer means for passing data; and arbitration means for arbitrating access competition of the buffer means for each master with respect to the memory bank based on priority.
JP3157197A1997-02-171997-02-17Memory access controlling method device therefor and memory systemPendingJPH10228413A (en)

Priority Applications (1)

Application NumberPriority DateFiling DateTitle
JP3157197AJPH10228413A (en)1997-02-171997-02-17Memory access controlling method device therefor and memory system

Applications Claiming Priority (1)

Application NumberPriority DateFiling DateTitle
JP3157197AJPH10228413A (en)1997-02-171997-02-17Memory access controlling method device therefor and memory system

Publications (1)

Publication NumberPublication Date
JPH10228413Atrue JPH10228413A (en)1998-08-25

Family

ID=12334871

Family Applications (1)

Application NumberTitlePriority DateFiling Date
JP3157197APendingJPH10228413A (en)1997-02-171997-02-17Memory access controlling method device therefor and memory system

Country Status (1)

CountryLink
JP (1)JPH10228413A (en)

Cited By (14)

* Cited by examiner, † Cited by third party
Publication numberPriority datePublication dateAssigneeTitle
JP2005529407A (en)*2002-06-072005-09-29マイクロン テクノロジー,インコーポレイティド Memory hub with internal cache and / or memory access prediction
JP2006509284A (en)*2002-12-052006-03-16イマジネイション テクノロジーズ リミテッド SIMD processor with multi-port memory unit
US7519788B2 (en)2004-06-042009-04-14Micron Technology, Inc.System and method for an asynchronous data buffer having buffer write and read pointers
US7529896B2 (en)2003-06-202009-05-05Micron Technology, Inc.Memory modules having a memory hub containing a posted write buffer, a memory device interface and a link interface, and method of posting write requests in memory modules
US7562178B2 (en)2004-05-142009-07-14Micron Technology, Inc.Memory hub and method for memory sequencing
JP2010009580A (en)*2008-03-312010-01-14Intel CorpPartition-free multisocket memory system architecture
JP2010191845A (en)*2009-02-202010-09-02Yokogawa Electric CorpMemory access device
US7908452B2 (en)2002-08-292011-03-15Round Rock Research, LlcMethod and system for controlling memory accesses to memory modules having a memory hub architecture
JP2011513823A (en)*2008-02-282011-04-28ノキア コーポレイション Extended usage range for memory devices
US8874824B2 (en)2009-06-042014-10-28Memory Technologies, LLCApparatus and method to share host system RAM with mass storage memory RAM
US8880833B2 (en)2003-12-292014-11-04Micron Technology, Inc.System and method for read synchronization of memory modules
US8954687B2 (en)2002-08-052015-02-10Micron Technology, Inc.Memory hub and access method having a sequencer and internal row caching
US9311226B2 (en)2012-04-202016-04-12Memory Technologies LlcManaging operational state data of a memory module using host memory in association with state change
EP3460671A1 (en)2017-09-202019-03-27Renesas Electronics CorporationSemiconductor device and program used in the semiconductor device

Cited By (42)

* Cited by examiner, † Cited by third party
Publication numberPriority datePublication dateAssigneeTitle
US7644253B2 (en)2002-06-072010-01-05Micron Technology, Inc.Memory hub with internal cache and/or memory access prediction
US8195918B2 (en)2002-06-072012-06-05Round Rock Research, LlcMemory hub with internal cache and/or memory access prediction
JP2005529407A (en)*2002-06-072005-09-29マイクロン テクノロジー,インコーポレイティド Memory hub with internal cache and / or memory access prediction
US8954687B2 (en)2002-08-052015-02-10Micron Technology, Inc.Memory hub and access method having a sequencer and internal row caching
US7908452B2 (en)2002-08-292011-03-15Round Rock Research, LlcMethod and system for controlling memory accesses to memory modules having a memory hub architecture
US8234479B2 (en)2002-08-292012-07-31Round Rock Research, LlcSystem for controlling memory accesses to memory modules having a memory hub architecture
US8086815B2 (en)2002-08-292011-12-27Round Rock Research, LlcSystem for controlling memory accesses to memory modules having a memory hub architecture
JP2006509284A (en)*2002-12-052006-03-16イマジネイション テクノロジーズ リミテッド SIMD processor with multi-port memory unit
US7529896B2 (en)2003-06-202009-05-05Micron Technology, Inc.Memory modules having a memory hub containing a posted write buffer, a memory device interface and a link interface, and method of posting write requests in memory modules
US8880833B2 (en)2003-12-292014-11-04Micron Technology, Inc.System and method for read synchronization of memory modules
US7562178B2 (en)2004-05-142009-07-14Micron Technology, Inc.Memory hub and method for memory sequencing
US7594088B2 (en)2004-06-042009-09-22Micron Technology, Inc.System and method for an asynchronous data buffer having buffer write and read pointers
US7519788B2 (en)2004-06-042009-04-14Micron Technology, Inc.System and method for an asynchronous data buffer having buffer write and read pointers
JP2011513823A (en)*2008-02-282011-04-28ノキア コーポレイション Extended usage range for memory devices
US8307180B2 (en)2008-02-282012-11-06Nokia CorporationExtended utilization area for a memory device
US10540094B2 (en)2008-02-282020-01-21Memory Technologies LlcExtended utilization area for a memory device
US8601228B2 (en)2008-02-282013-12-03Memory Technologies, LLCExtended utilization area for a memory device
US11494080B2 (en)2008-02-282022-11-08Memory Technologies LlcExtended utilization area for a memory device
US12417022B2 (en)2008-02-282025-09-16Memory Technologies LlcExtended utilization area for a memory device
US11550476B2 (en)2008-02-282023-01-10Memory Technologies LlcExtended utilization area for a memory device
US11182079B2 (en)2008-02-282021-11-23Memory Technologies LlcExtended utilization area for a memory device
US9063850B2 (en)2008-02-282015-06-23Memory Technologies LlcExtended utilization area for a memory device
US11829601B2 (en)2008-02-282023-11-28Memory Technologies LlcExtended utilization area for a memory device
US11907538B2 (en)2008-02-282024-02-20Memory Technologies LlcExtended utilization area for a memory device
US9367486B2 (en)2008-02-282016-06-14Memory Technologies LlcExtended utilization area for a memory device
US9292900B2 (en)2008-03-312016-03-22Intel CorporationPartition-free multi-socket memory system architecture
JP2010009580A (en)*2008-03-312010-01-14Intel CorpPartition-free multisocket memory system architecture
US8754899B2 (en)2008-03-312014-06-17Intel CorporationPartition-free multi-socket memory system architecture
JP2013178823A (en)*2008-03-312013-09-09Intel CorpPartition-free multi-socket memory system architecture
JP2010191845A (en)*2009-02-202010-09-02Yokogawa Electric CorpMemory access device
US11733869B2 (en)2009-06-042023-08-22Memory Technologies LlcApparatus and method to share host system RAM with mass storage memory RAM
US10983697B2 (en)2009-06-042021-04-20Memory Technologies LlcApparatus and method to share host system RAM with mass storage memory RAM
US11775173B2 (en)2009-06-042023-10-03Memory Technologies LlcApparatus and method to share host system RAM with mass storage memory RAM
US9983800B2 (en)2009-06-042018-05-29Memory Technologies LlcApparatus and method to share host system RAM with mass storage memory RAM
US12360670B2 (en)2009-06-042025-07-15Memory Technologies LlcApparatus and method to share host system RAM with mass storage memory RAM
US8874824B2 (en)2009-06-042014-10-28Memory Technologies, LLCApparatus and method to share host system RAM with mass storage memory RAM
US11226771B2 (en)2012-04-202022-01-18Memory Technologies LlcManaging operational state data in memory module
US10042586B2 (en)2012-04-202018-08-07Memory Technologies LlcManaging operational state data in memory module
US11782647B2 (en)2012-04-202023-10-10Memory Technologies LlcManaging operational state data in memory module
US9311226B2 (en)2012-04-202016-04-12Memory Technologies LlcManaging operational state data of a memory module using host memory in association with state change
US10534707B2 (en)2017-09-202020-01-14Renesas Electronics CorporationSemiconductor device including plurality of bus masters and control device and program used in the semiconductor device
EP3460671A1 (en)2017-09-202019-03-27Renesas Electronics CorporationSemiconductor device and program used in the semiconductor device

Similar Documents

PublicationPublication DateTitle
JP3918145B2 (en) Memory controller
JP3057934B2 (en) Shared bus arbitration mechanism
JP4656862B2 (en) Semiconductor device
JP2002530731A (en) Method and apparatus for detecting data collision on a data bus during abnormal memory access or performing memory access at different times
JPH10228413A (en)Memory access controlling method device therefor and memory system
KR19980042453A (en) Reordering a plurality of memory access request signals in a data processing system
JP2002530743A (en) Use the page tag register to track the state of a physical page in a memory device
JPH06231075A (en)Method and apparatus for zero-hiding loop arbitration
JP4408263B2 (en) Data transfer system and data transfer method
US5748203A (en)Computer system architecture that incorporates display memory into system memory
US5802581A (en)SDRAM memory controller with multiple arbitration points during a memory cycle
US5802597A (en)SDRAM memory controller while in burst four mode supporting single data accesses
JP4054598B2 (en) Memory control circuit, DMA request block, and memory access system
JPH0793274A (en) Data transfer method and data transfer device
KR101022473B1 (en) Method and apparatus for memory bank interleaving in multilayer bus system
JPH08129881A (en) SDRAM control device
KR100441996B1 (en)Direct Memory Access(DMA) Controller and control method
JP2002063130A (en)Bus arbitration system
JP2848082B2 (en) DMA bus arbitration
JP2007323113A (en)Memory control circuit
JP3720872B2 (en) Method for optimizing data transfer between system memory and PCI master device, and system for optimizing memory access time in a computer
JP2629648B2 (en) Data transfer system
JP2000250852A (en)Bus arbitrating device, bus system and bus arbitrating method
JP2001188749A (en) Bus controller
JPH06325570A (en)Dynamic memory refresh circuit

Legal Events

DateCodeTitleDescription
A977Report on retrieval

Free format text:JAPANESE INTERMEDIATE CODE: A971007

Effective date:20051207

A131Notification of reasons for refusal

Effective date:20051220

Free format text:JAPANESE INTERMEDIATE CODE: A131

A02Decision of refusal

Free format text:JAPANESE INTERMEDIATE CODE: A02

Effective date:20060418


[8]ページ先頭

©2009-2025 Movatter.jp