JP2001331363A - Request order controller - Google Patents

Request order controller

Info

Publication number
JP2001331363A
JP2001331363A JP2000147013A JP2000147013A JP2001331363A JP 2001331363 A JP2001331363 A JP 2001331363A JP 2000147013 A JP2000147013 A JP 2000147013A JP 2000147013 A JP2000147013 A JP 2000147013A JP 2001331363 A JP2001331363 A JP 2001331363A
Authority
JP
Japan
Prior art keywords
request
read
write
stored
read request
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.)
Granted
Application number
JP2000147013A
Other languages
Japanese (ja)
Other versions
JP3501727B2 (en
Inventor
Noboru Tanigawa
昇 谷川
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.)
NEC Computertechno Ltd
Original Assignee
NEC Computertechno 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 NEC Computertechno Ltd filed Critical NEC Computertechno Ltd
Priority to JP2000147013A priority Critical patent/JP3501727B2/en
Publication of JP2001331363A publication Critical patent/JP2001331363A/en
Application granted granted Critical
Publication of JP3501727B2 publication Critical patent/JP3501727B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Landscapes

  • Memory System (AREA)

Abstract

PROBLEM TO BE SOLVED: To provide a request order controller to quickly perform a processing. SOLUTION: A read request buffer 21 stores inputted read requests. A write request buffer 22 stores inputted write requests. A first address match detecting part 23 detects whether an address specified by the inputted read request matches with an address specified by the stored write request. A read/write issuing order control part 24 reads the read which is request stored earliest in the read request storage means or the write request stored in the write request storage means earliest according to results by the first address match detecting means and outputs it to a main memory 3. The processing is quickened by such a structure.

Description

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

【0001】[0001]

【発明の属する技術分野】入力されたリードリクエス
ト,ライトリクエストをメモリに出力するリクエスト順
序制御装置に関する。
BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to a request order control device for outputting input read requests and write requests to a memory.

【0002】[0002]

【従来の技術】メモリに対して行う指令(以下、リクエ
スト)には、指定したアドレスからデータを読み出す指
令(以下、リードリクエスト)と、指定したアドレスに
データを記憶する指令(以下、ライトリクエスト)があ
る。このリクエストをメモリに処理させるために、メモ
リとプロセッサやI/O装置のようなリクエスタとを直
接接続し、メモリにリクエスタから入力されたリクエス
トを、入力された順番で処理させることは、非常に効率
が悪い。
2. Description of the Related Art A command to be performed on a memory (hereinafter, a request) includes a command to read data from a specified address (hereinafter, a read request) and a command to store data at a specified address (hereinafter, a write request). There is. In order to process this request in the memory, it is very difficult to directly connect the memory to a requester such as a processor or an I / O device, and to process the requests input from the requester in the memory in the order of input. ineffective.

【0003】そこで、メモリとリクエスタとの間に、リ
ードリクエストまたはライトリクエストのいずれかが優
先的に出力させる装置を接続する方法が考えられる。た
だし、この場合、メモリとリクエスタとの間に接続する
装置は、入力されたリクエストの指定したアドレスが、
先に入力されたリクエストの指定するアドレスと同一の
場合、それらのリクエストを入力された順番で出力する
様に構成しなくてはならない。従来技術として、上述し
たようなリクエストの順番を制御する発明が、特開平0
2−047739号公報(発明の名称:主記憶装置の制
御方式)に開示されている。
[0005] Therefore, a method of connecting a device that preferentially outputs either a read request or a write request between the memory and the requester can be considered. However, in this case, the device connected between the memory and the requester makes the address specified in the input request
If the addresses are the same as those specified in the previously input requests, the requests must be output in the order of input. As a prior art, an invention for controlling the order of requests as described above is disclosed in
2-047739 (Title of Invention: Control method of main storage device).

【0004】この「主記憶装置の制御方式」は、まず、
入力されたリクエストを、入力された順番でリクエスト
バッファに記憶する。次に、リクエストバッファからリ
クエストを読み出し、ライトリクエストであれば、スト
アバッファに記憶する。また、読み出したリクエストが
リードリクエストであれば、そのリードリクエストが指
定するアドレスと、ストアバッファに記憶されたライト
リクエストが指定するアドレスとが同一であるか否かを
判定する。
[0004] This "main storage device control method"
The input requests are stored in the request buffer in the input order. Next, the request is read from the request buffer, and if it is a write request, it is stored in the store buffer. If the read request is a read request, it is determined whether the address specified by the read request is the same as the address specified by the write request stored in the store buffer.

【0005】この判定の結果、同一であれば、そのライ
トリクエストをストアバッファから読み出してメモリに
出力し、同一でなければ、読み出したリードリクエスト
をメモリに出力する。これにより、同一アドレスを指定
したリードリクエストとライトリクエストの順序を保証
しつつ、メモリの効率を上げることができる。
If the result of this determination is that they are the same, the write request is read from the store buffer and output to the memory; otherwise, the read request is output to the memory. Thereby, the efficiency of the memory can be improved while guaranteeing the order of the read request and the write request specifying the same address.

【0006】[0006]

【発明が解決しようとする課題】上述の「主記憶装置の
制御方式」において、ライトリクエストは、一時記憶さ
れたリクエストバッファから読み出された後、ストアバ
ッファに一時記憶され、その後、再び読み出される。つ
まり、「主記憶装置の制御方式」では、ライトリクエス
トの記憶と読み出しがそれぞれ2度行われるので、全体
の処理が遅れる。
In the above-mentioned "main storage device control method", a write request is read from a temporarily stored request buffer, temporarily stored in a store buffer, and then read again. . In other words, in the "main storage device control method", the write request is stored and read twice, so that the entire process is delayed.

【0007】本発明は、以上のことに鑑みてなされたも
のであり、その目的は、処理の早いリクエスト順序制御
装置を提供することにある。
[0007] The present invention has been made in view of the above, and an object of the present invention is to provide a request order control device which performs processing quickly.

【0008】[0008]

【課題を解決するための手段】上記目的を達成するため
に、本発明は、入力されたリードリクエスト,ライトリ
クエストをメモリに出力するリクエスト順序制御装置に
おいて、入力された前記リードリクエストを記憶するリ
ードリクエスト記憶手段と、入力された前記ライトリク
エストを記憶するライトリクエスト記憶手段と、入力さ
れた前記リードリクエストが指定するアドレスと、記憶
された前記ライトリクエストが指定するアドレスとが一
致しているか否かを検出する第一アドレス一致検出手段
と、前記第一アドレス一致検出手段の結果に応じて、前
記リードリクエスト記憶手段に最も早く記憶された前記
リードリクエスト、または、前記ライトリクエスト記憶
手段に最も早く記憶された前記ライトリクエストを読み
出し、前記メモリに出力するリード/ライト発行順序制
御手段とを有することを特徴とするリクエスト順序制御
装置である。
To achieve the above object, the present invention provides a request order control device for outputting an input read request and a write request to a memory. Request storage means; write request storage means for storing the input write request; and whether an address specified by the input read request matches an address specified by the stored write request. Address match detecting means for detecting the read request stored in the read request storing means or the write request storing means in accordance with the result of the first address match detecting means. Read out the written write request, and A request order control apparatus characterized by having a read / write issue order control means for outputting.

【0009】上記の構成とすることにより、リクエスト
順序制御装置内にリードリクエスト、ライトリクエスト
をそれぞれ記憶する手段を設けたので、リードリクエス
トまたはライトリクエストを2度読み出すことが無くな
るので、従来よりも処理が早くなる。また、第一アドレ
ス一致検出手段により、同一のアドレスを指定している
リードアドレスとライトアドレスの入力された順番を検
出することができるので、リードリクエストとライトリ
クエストの順序を保証してメモリへ出力を行うことが出
来る。
With the above arrangement, the means for storing the read request and the write request are provided in the request order control device, so that the read request or the write request is not read out twice. Is faster. In addition, the first address match detecting means can detect the input order of the read address and the write address designating the same address, so that the order of the read request and the write request is guaranteed and output to the memory. Can be performed.

【0010】本発明は、上記リクエスト順序制御装置に
おいて、前記リード/ライト発行順序制御手段が、前記
第一アドレス一致検出部の結果に基づいて、記憶された
前記リードリクエスト毎に、該リードリクエストよりも
前に記憶された前記ライトリクエストであって、該リー
ドリクエストが指定したアドレスと同一のアドレスを指
定している前記ライトリクエストを記憶する順序保証記
憶手段と、前記順序保証記憶手段の記憶内容に応じた出
力をするリードリクエストメモリチェック手段と、前記
リードリクエストメモリチェック手段からの入力に応じ
て、前記リードリクエスト記憶手段に最も早く記憶され
た前記リードリクエスト、または、前記ライトリクエス
ト記憶手段に最も早く記憶された前記ライトリクエスト
を読み出し、前記メモリに出力する選択手段とを有する
ことを特徴とする。
According to the present invention, in the request order control device, the read / write issuance order control means, for each of the stored read requests based on a result of the first address match detection unit, The order guarantee storage means for storing the write request which is the write request previously stored and which specifies the same address as the address specified by the read request, and the storage contents of the order guarantee storage means. Read request memory check means for outputting the read request in response to the read request memory check means, and the read request stored in the read request storage means or earliest in the write request storage means in response to the input from the read request memory check means. Reading the stored write request, It characterized by having a selection means for outputting the memory.

【0011】本発明は、入力されたリードリクエスト,
ライトリクエストをメモリに出力するリクエスト順序制
御装置において、入力された前記リードリクエストを記
憶するリードリクエスト記憶手段と、入力された前記ラ
イトリクエストを記憶するライトリクエスト記憶手段
と、入力された前記リードリクエストが指定するアドレ
スと、記憶された前記ライトリクエストが指定するアド
レスとが一致しているか否かを検出する第一アドレス一
致検出手段と、前記ライトリクエスト記憶手段に最も早
く記憶された前記ライトリクエストとを読み込み、該ラ
イトリクエストが指定したアドレスと同一のアドレスを
指定している前記リードリクエストを検出する第二アド
レス一致検出手段と、環境に応じた出力をするライト優
先条件検出手段と、前記第一アドレス一致検出手段の検
出結果および前記第二アドレス一致検出手段の検出結果
および前記ライト優先条件検出手段の出力に応じて、前
記リードリクエスト記憶手段に最も早く記憶された前記
リードリクエスト、または、前記ライトリクエスト記憶
手段に最も早く記憶された前記ライトリクエストを読み
出し、前記メモリに出力するリード/ライト発行順序制
御手段とを有することを特徴とするリクエスト順序制御
装置である。
According to the present invention, an input read request,
In a request order control device that outputs a write request to a memory, a read request storage unit that stores the input read request, a write request storage unit that stores the input write request, and the input read request The first address match detecting means for detecting whether the specified address matches the address specified by the stored write request, and the write request stored first in the write request storage means. A second address match detecting means for reading and detecting the read request specifying the same address as the address specified by the write request; a write priority condition detecting means for performing output in accordance with an environment; The detection result of the coincidence detecting means and the The read request stored first in the read request storage unit or the write request stored first in the write request storage unit according to the detection result of the address match detection unit and the output of the write priority condition detection unit. A request / order issuing control unit for reading a request and outputting the request to the memory.

【0012】上記の構成とすることにより、リクエスト
順序制御装置内にリードリクエスト、ライトリクエスト
をそれぞれ記憶する手段を設けたので、リードリクエス
トまたはライトリクエストを2度読み出すことが無くな
るので、従来よりも処理が早くなる。また、第一アドレ
ス一致検出手段により、同一のアドレスを指定している
リードアドレスとライトアドレスの入力された順番を検
出することができるので、リードリクエストとライトリ
クエストの順序を保証してメモリへ出力を行うことが出
来る。また、第二アドレス一致検出手段により、同一の
アドレスを指定しているリードアドレスとライトアドレ
スの入力された順番を検出し、リードリクエストとライ
トリクエストの順序を保証することができるので、ライ
ト優先条件検出手段の出力を制御することによって、任
意のライトリクエストを優先して出力することができ
る。
With the above arrangement, the request order control device is provided with means for storing the read request and the write request, respectively, so that the read request or the write request is not read out twice, so that the processing can be performed as compared with the prior art. Is faster. In addition, the first address match detecting means can detect the input order of the read address and the write address designating the same address, so that the order of the read request and the write request is guaranteed and output to the memory. Can be performed. Also, the order of input of the read address and the write address designating the same address can be detected by the second address match detecting means, and the order of the read request and the write request can be guaranteed. By controlling the output of the detection means, an arbitrary write request can be preferentially output.

【0013】本発明は、上記リクエスト順序制御装置に
おいて、前記リード/ライト発行順序制御手段が、前記
第一アドレス一致検出部の結果に基づいて、記憶された
前記リードリクエスト毎に、該リードリクエストよりも
前に記憶された前記ライトリクエストであって、該リー
ドリクエストが指定したアドレスと同一のアドレスを指
定している前記ライトリクエストを記憶する順序保証記
憶手段と、前記順序保証記憶手段の記憶内容に応じた出
力をするリードリクエストメモリチェック手段と、前記
順序保証記憶手段の記憶内容および前記第二アドレス検
出手段の結果に応じた出力をするライトリクエストメモ
リチェック手段と、前記リードリクエストメモリチェッ
ク手段,前記ライトリクエストメモリチェック手段,前
記ライト優先条件検出手段からの入力に応じた出力を行
うセレクト条件生成手段と、前記セレクト条件生成手段
からの入力に応じて、前記リードリクエスト記憶手段に
最も早く記憶された前記リードリクエスト、または、前
記ライトリクエスト記憶手段に最も早く記憶された前記
ライトリクエストを読み出し、前記メモりに出力する選
択手段とを有することを特徴とする。
According to the present invention, in the above request order control device, the read / write issue order control means performs, based on a result of the first address match detecting section, for each of the stored read requests, The order guarantee storage means for storing the write request which is the write request previously stored and which specifies the same address as the address specified by the read request, and the storage contents of the order guarantee storage means. A read request memory check unit that outputs according to the output, a write request memory check unit that outputs according to the contents stored in the order assurance storage unit and the result of the second address detection unit, the read request memory check unit, Write request memory check means, the write priority condition Select condition generating means for performing an output in accordance with an input from the output means; and the read request or the write request storing the earliest stored in the read request storing means in response to an input from the select condition generating means. Selecting means for reading out the write request stored in the memory at the earliest and outputting the read request to the memory.

【0014】[0014]

【発明の実施の形態】図1は、本発明の一実施形態のよ
るリクエスト順序制御装置の構成を示すブロック図であ
る。この図において、符号1は、リードリクエストまた
はライトリクエストを出力するリクエスタである。な
お、このリードリクエスト,ライトリクエストは、指定
するアドレス(以下、リードアドレス,ライトアドレ
ス)も含んだデータである。また、リクエスタ1は、例
えば、プロセッサやI/O装置である。符号2は、本発
明の一実施形態であるリクエスト順序制御部である。こ
のリクエスト順序制御部2についての詳細は、後述す
る。符号3は、メインメモリである。
FIG. 1 is a block diagram showing a configuration of a request order control device according to an embodiment of the present invention. In this figure, reference numeral 1 denotes a requester that outputs a read request or a write request. The read request and the write request are data including an address to be specified (hereinafter, a read address and a write address). The requester 1 is, for example, a processor or an I / O device. Reference numeral 2 denotes a request order control unit according to an embodiment of the present invention. Details of the request order control unit 2 will be described later. Reference numeral 3 is a main memory.

【0015】次に、リクエスト順序制御部2について説
明する。符号21は、リクエスタ1から入力されたリー
ドリクエストをエントリ0〜nに記憶するリードリクエ
ストバッファである。なお、リードリクエストバッファ
21は、入力としてリードリクエストのみを受け付ける
ように構成されている。符号211は、リードリクエス
トバッファ21に、データを読み出すエントリを指示す
るとともに、順序保証メモリ241の行セレクタ(図示
なし)に、出力するビット線を指示するリードポインタ
である。符号212は、リードリクエストバッファ21
に、データを記憶するエントリを指示するとともに、順
序保証メモリ241の行セレクタ(図示なし)に、出力
するビット線を指示するライトポインタである。
Next, the request order control unit 2 will be described. A read request buffer 21 stores a read request input from the requester 1 in entries 0 to n. The read request buffer 21 is configured to receive only a read request as an input. Reference numeral 211 denotes a read pointer that instructs the read request buffer 21 on an entry from which data is to be read and also instructs a row selector (not shown) of the order assurance memory 241 on a bit line to be output. Reference numeral 212 denotes the read request buffer 21
Is a write pointer that indicates an entry for storing data and also indicates a bit line to be output to a row selector (not shown) of the order assurance memory 241.

【0016】符号22は、リクエスタ1から入力された
ライトリクエストをエントリ0〜mに記憶するライトリ
クエストバッファである。なお、ライトリクエストバッ
ファ22は、入力としてライトリクエストのみを受け付
けるように構成されている。符号221は、ライトリク
エストバッファ22に、データを読み出すエントリを指
示するリードポインタである。符号222は、ライトリ
クエストバッファ22に、データ記憶するエントリを指
示するライトポインタである。
Reference numeral 22 denotes a write request buffer for storing a write request input from the requester 1 in entries 0 to m. The write request buffer 22 is configured to receive only a write request as an input. Reference numeral 221 denotes a read pointer for pointing the write request buffer 22 to an entry from which data is read. Reference numeral 222 denotes a write pointer that indicates an entry for storing data in the write request buffer 22.

【0017】符号223は、ライトリクエストバッファ
22のエントリ1〜mに記憶されているデータが有効か
否かを記憶している有効エントリ記憶部である。この有
効エントリ記憶部223は、ライトリクエストバッファ
22のエントリ1〜mに対応したエントリ1〜mを有し
ており、ライトリクエストバッファ22のエントリα
(1≦α≦m)に記憶されているデータが有効である場
合には、エントリαに”1”を記憶し、ライトリクエス
トバッファ22のエントリβ(1≦β≦m)に記憶され
ているデータが無効である場合には、エントリβに”
0”を記憶する。
Reference numeral 223 denotes a valid entry storage unit that stores whether the data stored in the entries 1 to m of the write request buffer 22 is valid. The valid entry storage unit 223 has entries 1 to m corresponding to the entries 1 to m of the write request buffer 22, and the entry α of the write request buffer 22.
If the data stored in (1 ≦ α ≦ m) is valid, “1” is stored in the entry α, and the data is stored in the entry β (1 ≦ β ≦ m) of the write request buffer 22. If the data is invalid, the entry β
0 "is stored.

【0018】符号23は、ゲート231−1〜231−
m,ゲート232−1〜232−mから構成される第一
アドレス一致検出部である。なお、第一アドレス一致検
出部23は、入力としてリードリクエストのみを受け付
けるように構成されている。ゲート231−1〜231
−mは、それぞれ、ライトリクエストバッファ22のエ
ントリ0〜mに記憶されているライトリクエストのライ
トアドレスが、入力されたリードリクエストのリードア
ドレスと同一であるか否かを判断し、同一である場合に
は”1”を、異なる場合には”0”を出力する。ゲート
232−1〜232−mは、それぞれ、ゲート231−
1〜231−mと、有効エントリ記憶部223のエント
リ1〜mとから入力を取り、これらが同一であった場合
には”1”を、異なる場合には”0”を出力する。
Reference numeral 23 denotes gates 231-1 to 231-
m, and a first address match detection unit composed of gates 232-1 to 232-m. Note that the first address match detection unit 23 is configured to accept only a read request as an input. Gates 231-1 to 231
-M determines whether or not the write address of the write request stored in the entries 0 to m of the write request buffer 22 is the same as the read address of the input read request. Output "1", and if different, output "0". The gates 232-1 to 232-m are respectively
Inputs are taken from 1 to 231-m and entries 1 to m in the valid entry storage unit 223, and if they are the same, "1" is output, and if they are different, "0" is output.

【0019】符号24は、順序保証メモリ241,リー
ドリクエストメモリチェック部242,セレクタ243
から構成されるリード/ライト発行順序制御部である。
順序保証メモリ241は、m行×n列のメモリセルを有
し、各ワード線が、ゲート232−1〜232−mの出
力と接続され、ビット線が、図示しない行セレクタに接
続されている。この行セレクタは、リードポインタ21
1,ライトポインタ212と接続され、リードポインタ
211またはライトポインタ212が指示するビット線
に出力をする。
Reference numeral 24 denotes an order guarantee memory 241, a read request memory check unit 242, and a selector 243.
Is a read / write issue order control unit.
The order assurance memory 241 has m rows × n columns of memory cells, each word line is connected to the output of the gate 232-1 to 232-m, and the bit line is connected to a row selector (not shown). . This row selector has a read pointer 21
1, connected to the write pointer 212, and outputs to the bit line indicated by the read pointer 211 or the write pointer 212.

【0020】リードリクエストメモリチェック部242
は、順序保証メモリ241の記憶内容に基づいて、セレ
クタを制御する。セレクタ243は、リードリクエスト
メモリチェック部242の指示に基づいて、リードリク
エストバッファ21またはライトリクエストバッファ2
2からデータを読み出し、メインメモリ3に出力する。
Read request memory check unit 242
Controls the selector based on the contents stored in the order assurance memory 241. The selector 243, based on the instruction of the read request memory check unit 242,
2 is read out and output to the main memory 3.

【0021】次に以上のように構成されたリクエスト順
序制御装置2の動作について説明する。リクエスト順序
制御装置2にリクエスタ1からライトリクエストが入力
された場合、ライトリクエストバッファ22は、そのリ
クエストを受け付け、ライトポインタ222が指示する
エントリwxに、受け付けたライトリクエストを記憶す
る。また、有効エントリ記憶部223は、エントリwx
に”1”を記憶する。これらのことが終わったら、ライ
トポインタ222は、ライトリクエストバッファ22に
指示するエントリをwx+1に更新する。ただし、wx
+1>mの場合、ライトポインタ222は、指示するエ
ントリをエントリ1に更新する。
Next, the operation of the request order control device 2 configured as described above will be described. When a write request is input from the requester 1 to the request order control device 2, the write request buffer 22 receives the request, and stores the received write request in an entry wx indicated by the write pointer 222. The valid entry storage unit 223 stores the entry wx
Is stored as "1". When these operations are completed, the write pointer 222 updates the entry pointed to by the write request buffer 22 to wx + 1. Where wx
If +1> m, the write pointer 222 updates the designated entry to entry 1.

【0022】リクエスト順序制御装置2にリクエスタ1
からリードリクエストが入力された場合、リードリクエ
ストバッファ21は、そのリクエストを受け付け、ライ
トポインタ212が示すエントリwyに、受け付けたリ
ードリクエストを記憶する。また、第一アドレス一致検
出部23も、そのリクエストを受け付け、ライトリクエ
ストバッファ22のエントリ0〜mに記憶されているラ
イトリクエストの各ライトアドレスが、受け付けたリー
ドリクエストのリードアドレスと同一であり、かつ、そ
のライトリクエストが有効であるか否かを判断し、その
結果を順序保証メモリ241の各ワード線に出力する。
Requester 1 is transmitted to request order control device 2.
, The read request buffer 21 receives the request, and stores the received read request in the entry wy indicated by the write pointer 212. The first address match detection unit 23 also receives the request, and each write address of the write request stored in the entries 0 to m of the write request buffer 22 is the same as the read address of the received read request. Further, it determines whether or not the write request is valid, and outputs the result to each word line of the order assurance memory 241.

【0023】また、順序保証メモリ241の行セレクタ
(図示なし)は、ライトポインタ212が指示するビッ
ト線を選択し、そこに出力する。これにより、順序保証
メモリの第wy行のメモリには、”1”または”0”が
記憶される。
A row selector (not shown) of the order assurance memory 241 selects a bit line indicated by the write pointer 212 and outputs the selected bit line. As a result, "1" or "0" is stored in the memory on the wy-th row of the order assurance memory.

【0024】例えば、wyが3であり、ゲート232−
1,232−2,232−6,232−9が”1”を出
力した場合、順序保証メモリの第3行は、図2の状態a
から状態bに遷移する。これらのことが終わったら、ラ
イトポインタ212は、リードリクエストバッファ21
に指示するエントリをwy+1に更新する。ただし、w
y+1>nの場合、ライトポインタ212は、指示する
エントリをエントリ1に更新する。
For example, if wy is 3, the gate 232-
When 1, 232-2, 232-6, and 232-9 output "1", the third row of the order assurance memory stores the state a in FIG.
To state b. When these operations have been completed, the write pointer 212 returns to the read request buffer 21.
Is updated to wy + 1. Where w
If y + 1> n, the write pointer 212 updates the designated entry to entry 1.

【0025】以上のようにしてリクエスタ1が出力した
リクエストを全て記憶したら、記憶したリクエストをメ
インメモリ3に出力する処理へ移る。まず、リードリク
エストバッファ21は、リードポインタ211の指示す
るエントリrxに記憶されたリードリクエストをセレク
タ243に出力し、ライトリクエストバッファ22は、
リードポインタ221の指示するエントリrxに記憶さ
れたライトリクエストをセレクタ243に出力する。ま
た、順序保証メモリ241は、リードポインタ211の
指示によって、第ry行目に記憶されているデータをリ
ードリクエストメモリチェック部242に出力する。
When all the requests output by the requester 1 are stored as described above, the process proceeds to a process of outputting the stored requests to the main memory 3. First, the read request buffer 21 outputs the read request stored in the entry rx indicated by the read pointer 211 to the selector 243, and the write request buffer 22
The write request stored in the entry rx indicated by the read pointer 221 is output to the selector 243. In addition, the order assurance memory 241 outputs the data stored in the ryth row to the read request memory check unit 242 according to the instruction of the read pointer 211.

【0026】リードリクエストメモリチェック部242
は、入力されたデータに1つも”1”がなければ、セレ
クタ243にリードリクエストバッファ21の出力を読
むように指示する。すなわち、リードリクエストメモリ
チェック部242は、リードリクエストバッファ21の
エントリryに記憶されたリードリクエストよりも先に
入力されたライトリクエストであって、ライトアドレス
がリードリクエストバッファ21のエントリryに記憶
されたリードリクエストのリードアドレスと等しいライ
トリクエストが存在しない場合、セレクタ243に、リ
ードリクエストバッファ21からの入力を読むように指
示する。
Read request memory check unit 242
Instructs the selector 243 to read the output of the read request buffer 21 if there is no "1" in the input data. That is, the read request memory check unit 242 is a write request input earlier than the read request stored in the entry ry of the read request buffer 21, and the write address is stored in the entry ry of the read request buffer 21. If there is no write request equal to the read address of the read request, the selector 243 is instructed to read the input from the read request buffer 21.

【0027】セレクタ243は、リードリクエストメモ
リチェック部242の指示に従ってリードリクエストを
読み込み、メインメモリ3に出力する。つまり、リード
/ライト発行順序制御部24は、リードリクエストバッ
ファ21のエントリryに記憶されたリードリクエスト
よりも先に入力されたライトリクエストであって、ライ
トアドレスがリードリクエストバッファ21のエントリ
ryに記憶されたリードリクエストのリードアドレスと
等しいライトリクエストが存在しない場合、メインメモ
リ3にリードリクエストを出力する。
The selector 243 reads the read request according to the instruction of the read request memory check unit 242 and outputs the read request to the main memory 3. That is, the read / write issue order control unit 24 stores the write address in the entry ry of the read request buffer 21 as the write request is input before the read request stored in the entry ry of the read request buffer 21. If there is no write request equal to the read address of the read request, the read request is output to the main memory 3.

【0028】さらに、リードポインタ211の指示する
エントリをry+1に更新する。これにより、リードリ
クエストバッファ21は、再びリードポインタ211の
指示によって、エントリrx+1に記憶されたリードリ
クエストをセレクタ243に出力する。また、順序保証
メモリ241は、リードポインタ211の指示によっ
て、第(ry+1)行目に記憶されているデータをリー
ドリクエストメモリチェック部242に出力する。
Further, the entry pointed to by the read pointer 211 is updated to ry + 1. Accordingly, the read request buffer 21 outputs the read request stored in the entry rx + 1 to the selector 243 again according to the instruction of the read pointer 211. Further, the order assurance memory 241 outputs the data stored in the (ry + 1) th row to the read request memory check unit 242 according to the instruction of the read pointer 211.

【0029】リードリクエストメモリチェック部242
は、入力されたデータに1つ以上”1”があった場合、
セレクタ243にライトリクエストバッファ22の出力
を読むように指示する。すなわち、リードリクエストメ
モリチェック部242は、リードリクエストバッファ2
1のエントリryに記憶されたリードリクエストよりも
先に入力されたライトリクエストであって、ライトアド
レスがリードリクエストバッファ21のエントリryに
記憶されたリードリクエストのリードアドレスと等しい
ライトリクエストが存在する場合、セレクタ243に、
ライトリクエストバッファ22からの入力を読むように
指示する。
Read request memory check unit 242
Means that if there is one or more "1" in the input data,
The selector 243 is instructed to read the output of the write request buffer 22. That is, the read request memory check unit 242 reads the read request buffer 2
When there is a write request that is input earlier than the read request stored in one entry ry and whose write address is equal to the read address of the read request stored in the entry ry of the read request buffer 21 , Selector 243,
It instructs to read the input from the write request buffer 22.

【0030】また、リードリクエストバッファ21にリ
ードリクエストが無くなった場合も、リードリクエスト
メモリチェック部242は、セレクタ243にライトリ
クエストバッファ22の出力を読むように指示する。
Also, when there is no more read request in the read request buffer 21, the read request memory check unit 242 instructs the selector 243 to read the output of the write request buffer 22.

【0031】セレクタ243は、リードリクエストメモ
リチェック部242の指示に従ってライトリクエストを
読み込み、メインメモリ3に出力する。つまり、リード
/ライト発行順序制御部24は、リードリクエストバッ
ファ21のエントリryに記憶されたリードリクエスト
よりも先に入力されたライトリクエストであって、ライ
トアドレスがリードリクエストバッファ21のエントリ
ryに記憶されたリードリクエストのリードアドレスと
等しいライトリクエストが存在する場合、メインメモリ
3にライトリクエストを出力する。
The selector 243 reads a write request in accordance with an instruction from the read request memory check unit 242 and outputs the write request to the main memory 3. That is, the read / write issue order control unit 24 stores the write address in the entry ry of the read request buffer 21 as the write request is input before the read request stored in the entry ry of the read request buffer 21. If there is a write request equal to the read address of the read request, the write request is output to the main memory 3.

【0032】さらに、順序保証メモリ241が第rx列
の全てのメモリセルに、”0”を記憶した後、リードポ
インタ221の指示するエントリをrx+1に更新す
る。これにより、ライトリクエストバッファ22は、再
びリードポインタ221の指示によって、エントリ(r
x+1)に記憶されたライトリクエストをセレクタ24
3に出力する。これにより、リードリクエストよりも前
にリクエスタ1から出力されたライトリクエストであっ
て、ライトアドレスがリードアドレスと同一のライトリ
クエストは、優先して出力することができる。
Further, after the order assurance memory 241 stores “0” in all the memory cells in the rx-th column, the entry pointed to by the read pointer 221 is updated to rx + 1. As a result, the write request buffer 22 returns the entry (r) according to the instruction of the read pointer 221 again.
x + 1) stored in the selector 24
Output to 3. Thus, a write request output from the requester 1 before the read request and having the same write address as the read address can be output with priority.

【0033】例えば、rxが1、ryが3であり、順序
保証メモリ241の第3行目が図2の状態bである場
合、リードリクエストメモリチェック部242は、セレ
クタ243にライトリクエストを読み込むように指示す
る。これにより、セレクタはライトリクエストを出力す
る。
For example, if rx is 1, ry is 3, and the third row of the order assurance memory 241 is in the state b in FIG. 2, the read request memory check unit 242 causes the selector 243 to read the write request. To instruct. As a result, the selector outputs a write request.

【0034】セレクタがライトリクエストを出力した
ら、順序保証メモリ241は、第1列の全てのメモリセ
ルに、”0”を記憶する(図2の状態Aから状態B)。
これにより、順序保証メモリ241の第3行目は、図2
の状態bから状態cになる。また、リードポインタ22
1は、指示するエントリを2に更新し、ライトリクエス
トバッファ22は、リードポインタ221の指示によっ
て、エントリ2に記憶されたライトリクエストをセレク
タ243に出力する。
When the selector outputs the write request, the order assurance memory 241 stores "0" in all the memory cells in the first column (from state A to state B in FIG. 2).
As a result, the third line of the order assurance memory 241 is as shown in FIG.
From state b to state c. Also, the read pointer 22
1 updates the designated entry to 2, and the write request buffer 22 outputs the write request stored in the entry 2 to the selector 243 according to the instruction of the read pointer 221.

【0035】上記の処理を順序保証メモリ241の第3
行目が全て”0”になるまで、すなわち、リードポイン
タの指示するエントリがエントリ10になるまで繰り返
す。この時、順序保証メモリ241の第3行目の状態
は、状態cから状態d,eを経て状態fになる。これに
より、順序保証メモリ241の第3行目には”1”が無
くなるので、リードリクエストメモリチェック部242
は、セレクタ243にリードリクエストバッファ21の
出力を読むように指示する。セレクタ243は、リード
リクエストメモリチェック部242の指示に従ってリー
ドリクエストを読み出し、メインメモリ3に出力する。
The above processing is performed by the third assurance memory 241
This is repeated until all the rows become “0”, that is, until the entry pointed to by the read pointer becomes the entry 10. At this time, the state of the third row of the order assurance memory 241 changes from state c to state f via states d and e. As a result, since “1” disappears in the third row of the order assurance memory 241, the read request memory check unit 242
Instructs the selector 243 to read the output of the read request buffer 21. The selector 243 reads the read request according to the instruction of the read request memory check unit 242, and outputs the read request to the main memory 3.

【0036】さらに、リードポインタ211の指示する
エントリを4に更新する。これにより、リードリクエス
トバッファ21は、再びリードポインタ211の指示に
よって、エントリ4に記憶されたリードリクエストをセ
レクタ243に出力する。また、順序保証メモリ241
は、リードポインタ211の指示によって、第4行目に
記憶されているデータをリードリクエストメモリチェッ
ク部242に出力する。
Further, the entry pointed to by the read pointer 211 is updated to 4. Accordingly, the read request buffer 21 outputs the read request stored in the entry 4 to the selector 243 again according to the instruction of the read pointer 211. Also, the order assurance memory 241
Outputs the data stored in the fourth row to the read request memory check unit 242 according to the instruction of the read pointer 211.

【0037】以上の処理を繰り返してリードリクエスト
バッファ21,ライトリクエストバッファ22に記憶さ
れている全てのリードリクエスト,ライトリクエストを
メインメモリ3に出力する。
The above processing is repeated to output all read requests and write requests stored in the read request buffer 21 and the write request buffer 22 to the main memory 3.

【0038】図3は、他の実施形態によるリクエスト順
序制御装置の構成を示すブロック図である。この図にお
いて、図1における装置と同一のものは、図1における
符号と同一の符号が付してある。
FIG. 3 is a block diagram showing a configuration of a request order control device according to another embodiment. In this figure, the same components as those in FIG. 1 are denoted by the same reference numerals as those in FIG.

【0039】符号213は、リードリクエストバッファ
21のエントリ1〜nに記憶されているデータが有効か
否かを記憶している有効エントリ記憶部である。この有
効エントリ記憶部213は、リードリクエストバッファ
21のエントリ1〜nに対応したエントリ1〜nを有し
ており、リードリクエストバッファ21のエントリα
(1≦α≦n)に記憶されているデータが有効である場
合には、エントリαに”1”を記憶し、ライトリクエス
トバッファ22のエントリβ(1≦β≦n)に記憶され
ているデータが無効である場合には、エントリβに”
0”を記憶する。
Reference numeral 213 denotes a valid entry storage unit that stores whether the data stored in the entries 1 to n of the read request buffer 21 is valid. The valid entry storage unit 213 has entries 1 to n corresponding to the entries 1 to n of the read request buffer 21, and the entry α of the read request buffer 21.
If the data stored in (1 ≦ α ≦ n) is valid, “1” is stored in the entry α, and the data is stored in the entry β (1 ≦ β ≦ n) of the write request buffer 22. If the data is invalid, the entry β
0 "is stored.

【0040】符号25は、ゲート251−1〜251−
n,ゲート252−1〜252−nから構成される第二
アドレス一致検出部である。ゲート251−1〜251
−nは、それぞれ、リードリクエストバッファ21のエ
ントリ0〜nに記憶されているリードリクエストのリー
ドアドレスが、ライトリクエストバッファ22から入力
されたライトリクエストのライトアドレスと同一である
か否かを判断し、同一である場合には”1”を、異なる
場合には”0”を出力する。ゲート252−1〜252
−nは、それぞれ、ゲート251−1〜251−nと、
有効エントリ記憶部223のエントリ1〜nとから入力
を取り、これらが同一であった場合には”1”を、異な
る場合には”0”を出力する。
Reference numeral 25 denotes gates 251-1 to 251-
n, a second address coincidence detecting unit composed of gates 252-1 to 252-n. Gates 251-1 to 251
-N determines whether the read address of the read request stored in the entries 0 to n of the read request buffer 21 is the same as the write address of the write request input from the write request buffer 22. If they are the same, "1" is output, and if they are different, "0" is output. Gates 252-1 to 252
-N are gates 251-1 to 251-n, respectively.
Inputs are taken from the entries 1 to n of the valid entry storage unit 223, and if they are the same, "1" is output, and if they are different, "0" is output.

【0041】符号244は、順序保証メモリ241の記
憶内容に基づいて、”1”または”0”を出力するリー
ドリクエストメモリチェック部であり、入力されたデー
タに1つも”1”がなければ、セレクト条件生成部24
6に”1”を出力する。符号245は、順序保証メモリ
241の記憶内容および第二アドレス一致検出部25の
出力結果に基づいて、”1”または”0”を出力するラ
イトリクエストメモリチェック部である。
Reference numeral 244 denotes a read request memory check unit for outputting "1" or "0" based on the storage contents of the order assurance memory 241, and if there is no "1" in the input data, Select condition generator 24
6 is output as "1". Reference numeral 245 denotes a write request memory check unit that outputs “1” or “0” based on the storage content of the order assurance memory 241 and the output result of the second address match detection unit 25.

【0042】さらに詳細に説明すると、このライトリク
エストメモリチェック部245は、ゲート252−1〜
252−nから入力された信号が全て”0”であれば、
セレクト条件生成部246に”1”を出力する。また、
ライトリクエストメモリチェック部245は、ゲート2
52−1〜252−nから入力された信号の内いずれか
に”1”があった場合、”1”を出力したゲートに対応
する順序保証メモリ241の列を調べ、その結果、その
列が全て”1”であった場合、ライトリクエストメモリ
チェック部245は、セレクト条件生成部246に”
1”を出力し、その列のいずれかが”0”であった場
合、ライトリクエストメモリチェック部245は、セレ
クト条件生成部246に”0”を出力する。
More specifically, the write request memory check unit 245 includes gates 252-1 to 252-1.
If all the signals input from 252-n are “0”,
“1” is output to the selection condition generation unit 246. Also,
The write request memory check unit 245 includes the gate 2
If "1" is present in any of the signals input from 52-1 to 252-n, the column of the order assurance memory 241 corresponding to the gate that has output "1" is checked. If all are “1”, the write request memory check unit 245 sends a “
If "1" is output and any of the columns is "0", the write request memory check unit 245 outputs "0" to the select condition generation unit 246.

【0043】符号246は、リードリクエストメモリチ
ェック部244,ライトリクエストメモリチェック部2
45,ライト優先条件検出部26の入力に基づいて、セ
レクタ247を制御するセレクト条件生成部である。な
お、図4は、セレクト条件生成部246の制御を示すテ
ーブルである。すなわち、リードリクエストメモリチェ
ック部が”1”を出力した場合は、リードリクエストを
読み込み、ライトリクエストメモリチェック部が”1”
を出力した場合は、ライトリクエストを読み込む。ま
た、リードリクエストメモリチェック部とライトリクエ
ストメモリチェック部とが共に”1”を出力した場合
は、ライト優先条件検出部の出力が”0”であれば、リ
ードリクエストを読み込み、ライト優先条件検出部の出
力が”1”であれば、ライトリクエストを読み込む。
Reference numeral 246 denotes a read request memory check unit 244 and a write request memory check unit 2
45, a selection condition generation unit that controls the selector 247 based on the input of the write priority condition detection unit 26. FIG. 4 is a table showing the control of the select condition generation unit 246. That is, when the read request memory check unit outputs “1”, the read request is read, and the write request memory check unit outputs “1”.
Is output, read the write request. When both the read request memory check unit and the write request memory check unit output “1”, if the output of the write priority condition detection unit is “0”, the read request is read and the write priority condition detection unit is read. Is "1", the write request is read.

【0044】セレクタ247は、セレクト条件生成部2
46の指示に基づいて、リードリクエストバッファ21
またはライトリクエストバッファ22からデータを読み
出し、メインメモリ3に出力する。ライト優先条件検出
部26は、ライトリクエストバッファ22のエントリ数
がフルになった場合など、ライトリクエストを出力しな
ければならない状況である場合等に”1”を出力し、そ
れ以外の場合は”0”を出力する。
The selector 247 is connected to the select condition generator 2
46, the read request buffer 21
Alternatively, data is read from the write request buffer 22 and output to the main memory 3. The write priority condition detection unit 26 outputs “1” in a situation such as when the number of entries in the write request buffer 22 becomes full, such as when a write request has to be output, and in other cases, “1” is output. 0 "is output.

【0045】次に以上のように構成されたリクエスト順
序制御装置2の動作について説明する。なお、リクエス
ト順序制御装置2にリクエスタ1からライトリクエスト
が入力された場合は、図1に示す実施形態と同一なので
省略する。
Next, the operation of the request order control device 2 configured as described above will be described. The case where a write request is input from the requester 1 to the request order control device 2 is the same as that of the embodiment shown in FIG.

【0046】リクエスト順序制御装置2にリクエスタ1
からリードリクエストが入力された場合、リードリクエ
ストバッファ21は、そのリクエストを受け付け、ライ
トポインタ212が示すエントリwyに、受け付けたリ
ードリクエストを記憶する。また、有効エントリ記憶部
213は、エントリwyに”1”を記憶する。
Requester 1 is transmitted to request order control device 2.
, The read request buffer 21 receives the request, and stores the received read request in the entry wy indicated by the write pointer 212. Further, the valid entry storage unit 213 stores “1” in the entry wy.

【0047】また、第一アドレス一致検出部23も、そ
のリクエストを受け付け、ライトリクエストバッファ2
2のエントリ0〜mに記憶されているライトリクエスト
の各ライトアドレスが、受け付けたリードリクエストの
リードアドレスと同一であり、かつ、そのライトリクエ
ストが有効であるか否かを判断し、その結果を順序保証
メモリ241の各ワード線に出力する。また、順序保証
メモリ241の行セレクタ(図示なし)は、ライトポイ
ンタ212が指示するビット線を選択し、そこに出力す
る。これにより、順序保証メモリの第wy行のメモリに
は、”1”または”0”が記憶される。
The first address match detecting section 23 also receives the request and sends the request to the write request buffer 2.
It is determined whether each write address of the write request stored in the entries 0 to m is the same as the read address of the received read request, and whether the write request is valid. The data is output to each word line of the order assurance memory 241. A row selector (not shown) of the order assurance memory 241 selects a bit line indicated by the write pointer 212 and outputs the selected bit line. As a result, "1" or "0" is stored in the memory on the wy-th row of the order assurance memory.

【0048】以上のようにしてリクエスタ1が出力した
リクエストを全て記憶したら、記憶したリクエストをメ
インメモリ3に出力する処理へ移る。まず、リードリク
エストバッファ21は、リードポインタ211の指示す
るエントリrxに記憶されたリードリクエストをセレク
タ247に出力し、ライトリクエストバッファ22は、
リードポインタ221の指示するエントリrxに記憶さ
れたライトリクエストをセレクタ247に出力する。
After all the requests output by the requester 1 are stored as described above, the process proceeds to a process of outputting the stored requests to the main memory 3. First, the read request buffer 21 outputs the read request stored in the entry rx indicated by the read pointer 211 to the selector 247, and the write request buffer 22
The write request stored in the entry rx indicated by the read pointer 221 is output to the selector 247.

【0049】また、順序保証メモリ241は、リードポ
インタ211の指示によって、第ry行目に記憶されて
いるデータをリードリクエストメモリチェック部244
に出力し、リードポインタ221の指示によって、第r
x列目に記憶されているデータをライトリクエストメモ
リチェック部245に出力する。
In addition, the order assurance memory 241 checks the data stored in the ry-th row according to the instruction of the read pointer 211 to the read request memory check unit 244.
To the r-th address in response to the instruction of the read pointer 221.
The data stored in the x-th column is output to the write request memory check unit 245.

【0050】リードリクエストメモリチェック部244
は、入力されたデータに1つも”1”がなければ、セレ
クト条件生成部246に”1”を出力し、入力されたデ
ータに1つ以上”1”があった場合、セレクト条件生成
部246に”0”を出力する。また、リードリクエスト
バッファ21にリードリクエストが無くなった場合も、
リードリクエストメモリチェック部244は、セレクト
条件生成部246に”0”を出力する。
Read request memory check unit 244
Outputs “1” to the selection condition generation unit 246 if there is no “1” in the input data, and outputs “1” to the selection condition generation unit 246 if there is one or more “1” in the input data. Is output as "0". Also, when there is no read request in the read request buffer 21,
The read request memory check unit 244 outputs “0” to the select condition generation unit 246.

【0051】ライトリクエストメモリチェック部245
は、ゲート252−1〜252−nから入力された信号
が全て”0”であれば、セレクト条件生成部246に”
1”を出力する。また、ライトリクエストメモリチェッ
ク部245は、ゲート252−1〜252−nから入力
された信号の内いずれかに”1”があった場合、”1”
を出力したゲートに対応する順序保証メモリ241の列
を調べる。その結果、その列が全て”1”であった場
合、ライトリクエストメモリチェック部245は、セレ
クト条件生成部246に”1”を出力し、その列のいず
れかが”0”であった場合、ライトリクエストメモリチ
ェック部245は、セレクト条件生成部246に”0”
を出力する。
Write request memory check unit 245
If the signals input from the gates 252-1 to 252-n are all "0", the selection condition generation unit 246 outputs "
In addition, the write request memory check unit 245 outputs “1” when any of the signals input from the gates 252-1 to 252-n has “1”.
Is checked in the column of the order assurance memory 241 corresponding to the gate that has output. As a result, if all the columns are “1”, the write request memory check unit 245 outputs “1” to the select condition generation unit 246, and if any of the columns is “0”, The write request memory check unit 245 sends “0” to the select condition generation unit 246.
Is output.

【0052】セレクト条件生成部246は、上述したよ
うに、入力に応じて、図4に示すような制御を行う。つ
まり、セレクト条件生成部246がセレクタ247を制
御することにより、リード/ライト発行順序制御部24
の出力は、リードリクエストバッファ21のエントリr
yに記憶されたリードリクエストよりも先に入力された
ライトリクエストであって、ライトアドレスがリードリ
クエストバッファ21のエントリryに記憶されたリー
ドリクエストのリードアドレスと等しいライトリクエス
トが存在しない場合、リードリクエストとなり、リード
リクエストバッファ21のエントリryに記憶されたリ
ードリクエストよりも先に入力されたライトリクエスト
であって、ライトアドレスがリードリクエストバッファ
21のエントリryに記憶されたリードリクエストのリ
ードアドレスと等しいイトリクエストが存在する場合、
ライトリクエストとなる。
As described above, the select condition generator 246 performs control as shown in FIG. 4 according to the input. In other words, the select condition generation unit 246 controls the selector 247 so that the read / write issue order control unit 24
Is the entry r of the read request buffer 21.
If there is no write request that is input earlier than the read request stored in y and whose write address is equal to the read address of the read request stored in the entry ry of the read request buffer 21, the read request And a write request input before the read request stored in the entry ry of the read request buffer 21 and having a write address equal to the read address of the read request stored in the entry ry of the read request buffer 21. If the request exists,
Write request.

【0053】これにより、リードリクエストよりも前に
リクエスタ1から出力されたライトリクエストであっ
て、ライトアドレスがリードアドレスと同一のライトリ
クエストは、優先して出力することができる。また、上
記のようなライトリクエストでなくても、ライト優先条
件生成部26の出力に応じて、リードリクエストよりも
優先して出力することができる。
Thus, a write request output from the requester 1 prior to the read request and having the same write address as the read address can be output with priority. In addition, even if it is not the above-described write request, it can be output in priority to the read request in accordance with the output of the write priority condition generation unit 26.

【0054】また、セレクタ247がリードリクエスト
を読み出し、メインメモリ3に出力した場合、リードポ
インタ211は、指示するエントリをry+1に更新す
る。これにより、リードリクエストバッファ21は、再
びリードポインタ211の指示によって、エントリrx
+1に記憶されたリードリクエストをセレクタ247に
出力する。また、順序保証メモリ241は、リードポイ
ンタ211の指示によって、第(ry+1)行目に記憶
されているデータをリードリクエストメモリチェック部
244に出力する。
When the selector 247 reads the read request and outputs the read request to the main memory 3, the read pointer 211 updates the designated entry to ry + 1. As a result, the read request buffer 21 returns the entry rx according to the instruction of the read pointer 211 again.
The read request stored at +1 is output to the selector 247. Further, the order assurance memory 241 outputs the data stored in the (ry + 1) th row to the read request memory check unit 244 according to the instruction of the read pointer 211.

【0055】また、セレクタ247がライトリクエスト
を読み出し、メインメモリ3に出力した場合、順序保証
メモリ241の第rx列の全てのメモリセルに、”0”
を記憶した後、リードポインタ221の指示するエント
リをrx+1に更新する。これにより、ライトリクエス
トバッファ22は、再びリードポインタ221の指示に
よって、エントリ(rx+1)に記憶されたライトリク
エストをセレクタ247に出力する。
When the selector 247 reads the write request and outputs it to the main memory 3, "0" is set in all the memory cells in the rx-th column of the order assurance memory 241.
Is stored, the entry pointed to by the read pointer 221 is updated to rx + 1. As a result, the write request buffer 22 outputs the write request stored in the entry (rx + 1) to the selector 247 according to the instruction of the read pointer 221 again.

【0056】以上の処理を繰り返してリードリクエスト
バッファ21,ライトリクエストバッファ22に記憶さ
れている全てのリードリクエスト,ライトリクエストを
メインメモリ3に出力する。
The above processing is repeated to output all read requests and write requests stored in the read request buffer 21 and the write request buffer 22 to the main memory 3.

【0057】以上、この発明の実施形態を図面を参照し
て詳述してきたが、この発明には、上述した実施形態の
みならず、この発明の要旨を逸脱しない範囲の設計,変
更等も勿論含まれる。例えば、本実施形態においてリク
エスト順序制御装置2は、リクエスタ1が出力した全て
のリクエストをリードリクエストバッファ21またはラ
イトリクエストバッファ22に記憶した後、リードリク
エストまたはライトリクエストをメインメモリ3に出力
したが、リクエスト順序制御装置2は、リクエスタ1が
出力したリクエストをリードリクエストバッファ21ま
たはライトリクエストバッファ22に記憶しながら、リ
ードリクエストまたはライトリクエストをメインメモリ
3に出力するように構成しても良い。
The embodiments of the present invention have been described in detail with reference to the drawings. However, the present invention includes not only the above-described embodiments but also designs and modifications that do not depart from the gist of the present invention. included. For example, in the present embodiment, the request order control device 2 stores all the requests output by the requester 1 in the read request buffer 21 or the write request buffer 22, and then outputs the read request or the write request to the main memory 3. The request order control device 2 may be configured to output a read request or a write request to the main memory 3 while storing the request output by the requester 1 in the read request buffer 21 or the write request buffer 22.

【0058】[0058]

【発明の効果】以上説明したように、本発明によれば、
入力されたリードリクエスト,ライトリクエストをメモ
リに出力するリクエスト順序制御装置において、入力さ
れたリードリクエストを記憶するリードリクエスト記憶
手段と、入力されたライトリクエストを記憶するライト
リクエスト記憶手段と、入力されたリードリクエストが
指定するアドレスと、記憶されたライトリクエストが指
定するアドレスとが一致しているか否かを検出する第一
アドレス一致検出手段と、第一アドレス一致検出手段の
結果に応じて、リードリクエスト記憶手段に最も早く記
憶されたリードリクエスト、または、ライトリクエスト
記憶手段に最も早く記憶されたライトリクエストを読み
出し、メモリに出力するリード/ライト発行順序制御手
段とを設けたので、処理が早くなる効果、リードリクエ
ストとライトリクエストの順序を保証してメモリへ出力
できる効果が得られる。
As described above, according to the present invention,
In a request order control device that outputs an input read request and a write request to a memory, a read request storage unit that stores an input read request, a write request storage unit that stores an input write request, First address match detecting means for detecting whether or not the address specified by the read request matches the address specified by the stored write request; and a read request corresponding to the result of the first address match detecting means. The read / write issue order control means for reading the read request stored in the storage means or the write request stored in the write request storage means and outputting the read request to the memory is provided. , Read requests and write requests Guarantee the order strike effect can be output to the memory is obtained.

【0059】また、本発明によれば、入力されたリード
リクエスト,ライトリクエストをメモリに出力するリク
エスト順序制御装置において、入力されたリードリクエ
ストを記憶するリードリクエスト記憶手段と、入力され
たライトリクエストを記憶するライトリクエスト記憶手
段と、入力されたリードリクエストが指定するアドレス
と、記憶されたライトリクエストが指定するアドレスと
が一致しているか否かを検出する第一アドレス一致検出
手段と、ライトリクエスト記憶手段に最も早く記憶され
たライトリクエストとを読み込み、該ライトリクエスト
が指定したアドレスと同一のアドレスを指定しているリ
ードリクエストを検出する第二アドレス一致検出手段
と、環境に応じた出力をするライト優先条件検出手段
と、前記第一アドレス一致検出手段の検出結果および第
二アドレス一致検出手段の検出結果および前記ライト優
先条件検出手段の出力に応じて、リードリクエスト記憶
手段に最も早く記憶されたリードリクエスト、または、
ライトリクエスト記憶手段に最も早く記憶されたライト
リクエストを読み出し、メモリに出力するリード/ライ
ト発行順序制御手段とを設けたので、処理が早くなる効
果、リードリクエストとライトリクエストの順序を保証
してメモリへ出力できる効果、任意のライトリクエスト
を優先して出力できる効果が得られる。
According to the present invention, in a request order control device for outputting an input read request and write request to a memory, a read request storage means for storing the input read request, Write request storage means for storing, first address match detection means for detecting whether an address specified by the input read request matches an address specified by the stored write request, and write request storage A second address match detecting means for reading the write request stored first in the means and detecting a read request specifying the same address as the address specified by the write request; and a write for outputting in accordance with the environment Priority condition detecting means, and the first address Detection result of the detection result and the second address coincidence detection means match detect unit and in accordance with the output of the write preferences detecting means, the earliest stored read request to the read request storage means or,
Since the read / write issue order control means for reading the write request stored in the write request storage means and outputting the read request to the memory is provided, the effect of speeding up the processing and the order of the read request and the write request are guaranteed. And the effect that an arbitrary write request can be preferentially output.

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

【図1】 本発明の一実施形態によるリクエスト順序
制御装置の構成を示すブロック図である。
FIG. 1 is a block diagram showing a configuration of a request order control device according to an embodiment of the present invention.

【図2】 順序保証メモリ241の動作を説明するた
めの説明図である。
FIG. 2 is an explanatory diagram for explaining an operation of an order assurance memory 241.

【図3】 本発明の他の実施形態によるリクエスト順
序制御装置の構成を示すブロック図である。
FIG. 3 is a block diagram illustrating a configuration of a request order control device according to another embodiment of the present invention.

【図4】 セレクト条件生成部246の制御を示すテ
ーブルである。
FIG. 4 is a table showing control of a selection condition generation unit 246.

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

2 リクエスト順序制御装置 21 リードリクエストバッファ 22 ライトリクエストバッファ 23 第一アドレス一致検出部 24 リード/ライト発行順序制御部 241 順序保証メモリ 242 リードリクエストメモリチェック部 243 セレクタ 244 リードリクエストメモリチェック部 245 ライトリクエストメモリチェック部 246 セレクト条件生成部 247 セレクタ 25 第二アドレス一致検出部 26 ライト優先条件検出部 2 Request Order Control Device 21 Read Request Buffer 22 Write Request Buffer 23 First Address Match Detection Unit 24 Read / Write Issue Order Control Unit 241 Order Assurance Memory 242 Read Request Memory Check Unit 243 Selector 244 Read Request Memory Check Unit 245 Write Request Memory Check unit 246 Select condition generation unit 247 Selector 25 Second address match detection unit 26 Write priority condition detection unit

Claims (4)

【特許請求の範囲】[Claims] 【請求項1】 入力されたリードリクエスト,ライトリ
クエストをメモリに出力するリクエスト順序制御装置に
おいて、 入力された前記リードリクエストを記憶するリードリク
エスト記憶手段と、 入力された前記ライトリクエストを記憶するライトリク
エスト記憶手段と、 入力された前記リードリクエストが指定するアドレス
と、記憶された前記ライトリクエストが指定するアドレ
スとが一致しているか否かを検出する第一アドレス一致
検出手段と、 前記第一アドレス一致検出手段の結果に応じて、前記リ
ードリクエスト記憶手段に最も早く記憶された前記リー
ドリクエスト、または、前記ライトリクエスト記憶手段
に最も早く記憶された前記ライトリクエストを読み出
し、前記メモリに出力するリード/ライト発行順序制御
手段と、 を有することを特徴とするリクエスト順序制御装置。
1. A request order control device for outputting an input read request and a write request to a memory, comprising: a read request storage unit for storing the input read request; and a write request for storing the input write request. Storage means; first address match detection means for detecting whether or not an address specified by the input read request matches an address specified by the stored write request; and A read / write unit that reads the read request stored in the read request storage unit or the write request stored in the write request storage unit earliest according to the result of the detection unit and outputs the read request to the memory Issue order control means and Request order control apparatus according to claim Rukoto.
【請求項2】 前記リード/ライト発行順序制御手段
は、 前記第一アドレス一致検出部の結果に基づいて、記憶さ
れた前記リードリクエスト毎に、該リードリクエストよ
りも前に記憶された前記ライトリクエストであって、該
リードリクエストが指定したアドレスと同一のアドレス
を指定している前記ライトリクエストを記憶する順序保
証記憶手段と、 前記順序保証記憶手段の記憶内容に応じた出力をするリ
ードリクエストメモリチェック手段と、 前記リードリクエストメモリチェック手段からの入力に
応じて、前記リードリクエスト記憶手段に最も早く記憶
された前記リードリクエスト、または、前記ライトリク
エスト記憶手段に最も早く記憶された前記ライトリクエ
ストを読み出し、前記メモリに出力する選択手段と、 を有することを特徴とする請求項1に記載のリクエスト
順序制御装置。
2. The read / write issuance order control means, for each of the stored read requests, based on a result of the first address match detection unit, wherein the write request stored before the read request is stored. And an order assurance storage means for storing the write request specifying the same address as the address specified by the read request; and a read request memory check for outputting according to the storage content of the order assurance storage means. Means, in response to the input from the read request memory check means, read the read request stored in the read request storage means earliest, or read the write request stored in the write request storage means earliest, Selecting means for outputting to the memory; Request order control device of claim 1, symptoms.
【請求項3】 入力されたリードリクエスト,ライトリ
クエストをメモリに出力するリクエスト順序制御装置に
おいて、 入力された前記リードリクエストを記憶するリードリク
エスト記憶手段と、 入力された前記ライトリクエストを記憶するライトリク
エスト記憶手段と、 入力された前記リードリクエストが指定するアドレス
と、記憶された前記ライトリクエストが指定するアドレ
スとが一致しているか否かを検出する第一アドレス一致
検出手段と、 前記ライトリクエスト記憶手段に最も早く記憶された前
記ライトリクエストとを読み込み、該ライトリクエスト
が指定したアドレスと同一のアドレスを指定している前
記リードリクエストを検出する第二アドレス一致検出手
段と、 環境に応じた出力をするライト優先条件検出手段と、 前記第一アドレス一致検出手段の検出結果および前記第
二アドレス一致検出手段の検出結果および前記ライト優
先条件検出手段の出力に応じて、前記リードリクエスト
記憶手段に最も早く記憶された前記リードリクエスト、
または、前記ライトリクエスト記憶手段に最も早く記憶
された前記ライトリクエストを読み出し、前記メモリに
出力するリード/ライト発行順序制御手段と、 を有することを特徴とするリクエスト順序制御装置。
3. A request order control device for outputting an input read request and a write request to a memory, comprising: a read request storage unit for storing the input read request; and a write request for storing the input write request. Storage means; first address match detection means for detecting whether or not the address specified by the input read request matches the stored address specified by the write request; and the write request storage means. A second address match detecting means for reading the write request stored at the earliest time and detecting the read request specifying the same address as the address specified by the write request; and outputting an output according to the environment. Write priority condition detecting means; The read request stored first in the read request storage means according to the detection result of one address match detection means and the detection result of the second address match detection means and the output of the write priority condition detection means;
Or a read / write issue order control means for reading out the write request stored in the write request storage means at the earliest and outputting the read request to the memory.
【請求項4】 前記リード/ライト発行順序制御手段
は、 前記第一アドレス一致検出部の結果に基づいて、記憶さ
れた前記リードリクエスト毎に、該リードリクエストよ
りも前に記憶された前記ライトリクエストであって、該
リードリクエストが指定したアドレスと同一のアドレス
を指定している前記ライトリクエストを記憶する順序保
証記憶手段と、 前記順序保証記憶手段の記憶内容に応じた出力をするリ
ードリクエストメモリチェック手段と、 前記順序保証記憶手段の記憶内容および前記第二アドレ
ス検出手段の結果に応じた出力をするライトリクエスト
メモリチェック手段と、 前記リードリクエストメモリチェック手段,前記ライト
リクエストメモリチェック手段,前記ライト優先条件検
出手段からの入力に応じた出力を行うセレクト条件生成
手段と、 前記セレクト条件生成手段からの入力に応じて、前記リ
ードリクエスト記憶手段に最も早く記憶された前記リー
ドリクエスト、または、前記ライトリクエスト記憶手段
に最も早く記憶された前記ライトリクエストを読み出
し、前記メモりに出力する選択手段と、 を有することを特徴とする請求項3に記載のリクエスト
順序制御装置。
4. The read / write issue order control means, for each of the stored read requests, based on a result of the first address match detection unit, wherein the write request stored before the read request is stored. And an order assurance storage means for storing the write request specifying the same address as the address specified by the read request; and a read request memory check for outputting according to the storage content of the order assurance storage means. Means, a write request memory check means for outputting in accordance with the contents of the order assurance storage means and a result of the second address detection means, the read request memory check means, the write request memory check means, the write priority Select that outputs according to the input from the condition detection means Reading the read request stored in the read request storage means or the write request stored in the write request storage means in response to an input from the condition generation means and the select condition generation means; The request order control device according to claim 3, further comprising: a selection unit that outputs the data to the memory.
JP2000147013A 2000-05-18 2000-05-18 Request order control device Expired - Fee Related JP3501727B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2000147013A JP3501727B2 (en) 2000-05-18 2000-05-18 Request order control device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2000147013A JP3501727B2 (en) 2000-05-18 2000-05-18 Request order control device

Publications (2)

Publication Number Publication Date
JP2001331363A true JP2001331363A (en) 2001-11-30
JP3501727B2 JP3501727B2 (en) 2004-03-02

Family

ID=18653259

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2000147013A Expired - Fee Related JP3501727B2 (en) 2000-05-18 2000-05-18 Request order control device

Country Status (1)

Country Link
JP (1) JP3501727B2 (en)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2012093798A (en) * 2010-10-22 2012-05-17 Fujitsu Ltd Transfer device, transfer method and transfer program
WO2014068620A1 (en) 2012-10-31 2014-05-08 Hitachi, Ltd. Storage system and access arbitration method
US9037783B2 (en) 2012-04-09 2015-05-19 Samsung Electronics Co., Ltd. Non-volatile memory device having parallel queues with respect to concurrently addressable units, system including the same, and method of operating the same

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS55147744A (en) * 1979-05-07 1980-11-17 Hitachi Ltd Memory controlling unit
JPS59154548A (en) * 1983-02-22 1984-09-03 Hitachi Ltd Storage control system

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS55147744A (en) * 1979-05-07 1980-11-17 Hitachi Ltd Memory controlling unit
JPS59154548A (en) * 1983-02-22 1984-09-03 Hitachi Ltd Storage control system

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2012093798A (en) * 2010-10-22 2012-05-17 Fujitsu Ltd Transfer device, transfer method and transfer program
US9037783B2 (en) 2012-04-09 2015-05-19 Samsung Electronics Co., Ltd. Non-volatile memory device having parallel queues with respect to concurrently addressable units, system including the same, and method of operating the same
WO2014068620A1 (en) 2012-10-31 2014-05-08 Hitachi, Ltd. Storage system and access arbitration method
US9195410B2 (en) 2012-10-31 2015-11-24 Hitachi, Ltd. Storage system and access arbitration method

Also Published As

Publication number Publication date
JP3501727B2 (en) 2004-03-02

Similar Documents

Publication Publication Date Title
JP2001331363A (en) Request order controller
JP2002116950A (en) Memory control circuit and memory control method
US20220246187A1 (en) Memory controller and method of controlling the memory controller
US6335903B2 (en) Memory system
JPH05120135A (en) Cache control system
JP2000172552A (en) Memory access device and its method
JPH05290589A (en) Semiconductor integrated circuit
JPH06103026A (en) Memory system
JP3317819B2 (en) Control method for two-port access of single-port RAM
JPS62274349A (en) Data processing system
JP3078594B2 (en) Image storage device
JP2000330866A (en) Method and system for controlling memory
JPH01263850A (en) Memory space extending system
JPH0528414B2 (en)
JPH11194969A (en) Memory control circuit and memory device
JPH07141174A (en) Register
JPH0855065A (en) Memory access controller
JPH0553908A (en) High-speed access storage device
JPH05282870A (en) Dual port type random access memory
JPH01255943A (en) Buffer storage control device
JPH0935471A (en) Memory element
JPH05100955A (en) Control system for cache memory
JPH05189963A (en) Memory access control circuit for dynamic memory
JP2003228546A (en) Control device for direct memory access
KR20060133397A (en) System on chip bus system and the control method

Legal Events

Date Code Title Description
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20031125

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20031202

LAPS Cancellation because of no payment of annual fees