JP2003337741A - Data transfer system, its method, and access monitoring device - Google Patents

Data transfer system, its method, and access monitoring device

Info

Publication number
JP2003337741A
JP2003337741A JP2002145648A JP2002145648A JP2003337741A JP 2003337741 A JP2003337741 A JP 2003337741A JP 2002145648 A JP2002145648 A JP 2002145648A JP 2002145648 A JP2002145648 A JP 2002145648A JP 2003337741 A JP2003337741 A JP 2003337741A
Authority
JP
Japan
Prior art keywords
memory
request
data
access
value
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
JP2002145648A
Other languages
Japanese (ja)
Other versions
JP4126959B2 (en
Inventor
Katsuhiko Yamanaka
克彦 山中
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.)
Sony Corp
Original Assignee
Sony Corp
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 Sony Corp filed Critical Sony Corp
Priority to JP2002145648A priority Critical patent/JP4126959B2/en
Publication of JP2003337741A publication Critical patent/JP2003337741A/en
Application granted granted Critical
Publication of JP4126959B2 publication Critical patent/JP4126959B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Abstract

<P>PROBLEM TO BE SOLVED: To monitor a FIFO memory arranged between a memory bus and a memory controller for securing latency within a predetermined time. <P>SOLUTION: When a header is inputted, a byte count of the header is read to be added to a summation counter 54. When reading of the FIFO memory 23 is detected by means of a FIFO reading determination part 58, the byte count of the header is read from a packet data retaining register 55 if a word is a header, and the read value is subtracted from a byte count summation counter 54. In the byte count summation counter 54, a total of the access counter number of requests accumulated in the FIFO memory 23 is monitored. Memory access is restricted so that the value does not exceed a predetermined threshold value. <P>COPYRIGHT: (C)2004,JPO

Description

【発明の詳細な説明】Detailed Description of the Invention

【0001】[0001]

【発明の属する技術分野】この発明は、複数のクライア
ントデバイスと、これら複数のクライアントデバイスで
共用されるメモリと、メモリの制御を行うメモリコント
ローラとからなり、複数のクライアントとメモリコント
ローラとをバスを介して接続するようなデータ転送シス
テム及び方法、並びに、このようなシステムに用いて好
適なアクセスモニタ装置に関するもので、特に、メモリ
バスとメモリコントローラとの間に設けられるFIFO
メモリをモニタして、リードの場合もライトの場合も、
所定時間以内のレイテンシを保証できるようにしたもの
に係わる。
BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention comprises a plurality of client devices, a memory shared by the plurality of client devices, and a memory controller for controlling the memory. TECHNICAL FIELD The present invention relates to a data transfer system and method for connecting via a memory, and an access monitor device suitable for use in such a system, and more particularly to a FIFO provided between a memory bus and a memory controller.
Monitor memory and read or write
It relates to the one that can guarantee the latency within a predetermined time.

【0002】[0002]

【従来の技術】例えば、MPEG(Moving Picture Cod
ing Experts Group )2のトランスポートストリームを
入力し、このトランスポートストリームからビデオパケ
ットやオーディオパケットを分離し、デコードされたビ
デオデータに対して、画像処理を行ったり、OSD(On
Screen Display)画像を重畳したりするような画像処
理チップの開発が進められている。このような画像処理
チップには、任意のソース矩形領域の画像をデスティネ
ーション領域にコピーするためのBitBLT(Bit Blo
ck Transfer)エンジンや、背景となるような静止画の処
理を行うJPEG(Joint Photographic Experts Group)
エンジン等が配される。これらのクライアントデバイス
の処理には、大容量のメモリが必要であり、各クライア
ントデバイスでメモリが共用される。このような画像処
理チップのためのメモリとしては、SDRAM(Synchr
onous Dynamic Random Access Memory)が用いられてい
る。
2. Description of the Related Art For example, MPEG (Moving Picture Cod)
ing Experts Group) 2 transport stream is input, video packets and audio packets are separated from this transport stream, image processing is performed on the decoded video data, and OSD (On
Screen Display) Development of image processing chips for superimposing images is in progress. Such an image processing chip has a BitBLT (Bit Blo) for copying an image of an arbitrary source rectangular area to a destination area.
ck Transfer) engine and JPEG (Joint Photographic Experts Group) that processes background images.
Engines etc. are arranged. A large amount of memory is required for processing by these client devices, and the memory is shared by each client device. As a memory for such an image processing chip, an SDRAM (Synchr
onous Dynamic Random Access Memory) is used.

【0003】図13は、このような画像処理クライアン
トデバイスで使用可能なメモリ制御システムの構成を示
すブロック図である。
FIG. 13 is a block diagram showing the configuration of a memory control system usable in such an image processing client device.

【0004】図13において、クライアントデバイス1
11、112、113は、共用のリソースであるメモリ
115をアクセスするデバイスである。例えば、画像処
理チップを構成するシステムにおいては、クライアント
デバイス111、112、113は、BitBLTエン
ジン、JPEGエンジン等のプロセッサである。これら
のクライアントデバイス111、112、113は、F
IFO(First-In First-Out)メモリ121A、121
B、121C及びFIFOメモリ122A、122B、
122Cをそれぞれ介して、メモリバス110に接続さ
れる。また、メモリバス110には、FIFOメモリ1
23及び124を介して、メモリコントローラ114が
接続される。メモリコントローラ114は、メモリ11
5のリード/ライトを制御するリソース制御回路であ
る。
In FIG. 13, the client device 1
Reference numerals 11, 112, and 113 are devices that access the memory 115, which is a shared resource. For example, in the system that constitutes the image processing chip, the client devices 111, 112, and 113 are processors such as BitBLT engine and JPEG engine. These client devices 111, 112, 113 are
IFO (First-In First-Out) memory 121A, 121
B, 121C and FIFO memories 122A, 122B,
It is connected to the memory bus 110 via 122C, respectively. The memory bus 110 also includes a FIFO memory 1
The memory controller 114 is connected via 23 and 124. The memory controller 114 uses the memory 11
5 is a resource control circuit for controlling read / write of No. 5.

【0005】メモリ115は、複数のクライアントデバ
イス111、112、113で共通に利用可能なリソー
スである。メモリ115としては、例えば、SDRAM
が用いられる。SDRAMは、クロックに同期した連続
的なデータ転送が可能であり、バースト転送を指定する
と、指定したデータ数のデータ転送を1クロック単位で
連続して行うことができる。ここでは、SDRAMの構
成とされたメモリ115は、1クロックで64ビットの
データを転送することができる。
The memory 115 is a resource that can be commonly used by a plurality of client devices 111, 112, 113. As the memory 115, for example, SDRAM
Is used. The SDRAM is capable of continuous data transfer in synchronization with a clock, and when burst transfer is designated, data transfer of a designated number of data can be continuously performed in units of one clock. Here, the memory 115 configured as an SDRAM can transfer 64-bit data in one clock.

【0006】メモリバス110は、クライアントデバイ
ス111、112、113と、メモリコントローラ11
4との間で、データの転送を行うバスである。メモリバ
ス110は、クライアントデバイス111、112、1
13側からメモリコントローラ114側にデータを送る
送信バス110Aと、メモリコントローラ114側から
のデータをクライアントデバイス111、112、11
3側で受信する受信バス110Bとからなる。
The memory bus 110 includes a client device 111, 112, 113 and a memory controller 11.
4 is a bus for transferring data to and from the bus. The memory bus 110 includes client devices 111, 112, 1
A transmission bus 110A for sending data from the 13 side to the memory controller 114 side and client devices 111, 112, 11 for transmitting the data from the memory controller 114 side.
It is composed of a reception bus 110B which receives data on the third side.

【0007】各クライアントデバイス111、112、
113とメモリバス110との間には、FIFOメモリ
121A、121B、121C及びFIFOメモリ12
2A、122B、122Cが設けられる。これらのFI
FOメモリ121A、121B、121C、FIFOメ
モリ122A、122B、122Cは、バッファとして
設けられる。各クライアントデバイス111、112、
113とメモリバス110との間には、FIFOメモリ
121A、121B、121C及びFIFOメモリ12
2A、122B、122Cが設けられているため、各ク
ライアントデバイス111、112、113は、メモリ
バス110の転送クロックとは非同期で、リクエストの
送信やデータの受信が行える。
Each client device 111, 112,
Between the 113 and the memory bus 110, the FIFO memories 121A, 121B, 121C and the FIFO memory 12 are provided.
2A, 122B, 122C are provided. These FI
The FO memories 121A, 121B, 121C and the FIFO memories 122A, 122B, 122C are provided as buffers. Each client device 111, 112,
Between the 113 and the memory bus 110, the FIFO memories 121A, 121B, 121C and the FIFO memory 12 are provided.
Since 2A, 122B, 122C are provided, each client device 111, 112, 113 can transmit a request and receive data asynchronously with the transfer clock of the memory bus 110.

【0008】また、メモリコントローラ114とメモリ
バス110との間には、FIFOメモリ123及びFI
FOメモリ124が設けられる。メモリコントローラ1
14とメモリバス110との間には、FIFOメモリ1
23及びFIFOメモリ124が設けられているため、
メモリコントローラ114は、メモリバス110の転送
クロックとは非同期で、リクエストの受信やデータの送
信が行える。
Further, a FIFO memory 123 and a FI are provided between the memory controller 114 and the memory bus 110.
An FO memory 124 is provided. Memory controller 1
14 and the memory bus 110 between the FIFO memory 1
23 and the FIFO memory 124 are provided,
The memory controller 114 can receive requests and send data asynchronously with the transfer clock of the memory bus 110.

【0009】各クライアントデバイス111、112、
113には、固有のデバイスIDが割り振られている。
各クライアントデバイス111、112、113は、メ
モリ115をアクセスする場合には、メモリバス110
の送信バス110Aを介して、リクエストを送信する。
このリクエストは、パケット構造となっている。
Each client device 111, 112,
A unique device ID is assigned to 113.
Each client device 111, 112, 113 accesses the memory 115 when accessing the memory 115.
The request is transmitted via the transmission bus 110A.
This request has a packet structure.

【0010】クライアントデバイス111、112、1
13は、全て、共通のメモリ115にアクセスすること
が可能である。このため、複数のクライアントデバイス
111、112、113で、メモリ115へのリクエス
トが同時に起こることがあり得る。そこで、クライアン
トデバイス111、112、113からのリクエストの
競合を防ぐために、アービタ116が設けられる。
Client devices 111, 112, 1
All 13 can access the common memory 115. Therefore, a plurality of client devices 111, 112, 113 may simultaneously make requests to the memory 115. Therefore, an arbiter 116 is provided to prevent contention of requests from the client devices 111, 112, 113.

【0011】クライアントデバイス111、112、1
13がメモリ115をアクセスする場合には、まず、ア
ービタ116にバスの使用権を得るためのリクエストが
送られる。アービタ116は、複数のクライアントデバ
イスからのリクエストがあった場合には、そのリクエス
トを調停し、メモリバス110の使用を許可する1つの
クライアントデバイスにのみ、グラントを返す。複数の
クライアントデバイス111、112、113のうち、
グラントが返されてきたクライアントデバイスのみがメ
モリ15をアクセスすることができる。
Client devices 111, 112, 1
When the memory 13 accesses the memory 115, first, a request for obtaining the right to use the bus is sent to the arbiter 116. When there are requests from a plurality of client devices, the arbiter 116 arbitrates the requests and returns the grant only to one client device that permits the use of the memory bus 110. Of the plurality of client devices 111, 112, 113,
Only the client device for which the grant has been returned can access the memory 15.

【0012】メモリのライトのリクエストの場合には、
クライアントデバイス111、112、113から、ラ
イトのリクエストが送信される。このライトのリクエス
トが送信バス110Aを介して、メモリコントローラ1
14に送られる。メモリコントローラ114により、ラ
イトのリクエストに応じて、クライアントデバイス11
1、112、113から送られたライトデータがメモリ
115の所望のアドレスに書き込まれる。
In the case of a memory write request,
A write request is transmitted from the client device 111, 112, 113. This write request is sent to the memory controller 1 via the transmission bus 110A.
Sent to 14. The memory controller 114 causes the client device 11 to respond to the write request.
The write data sent from 1, 112, 113 is written in a desired address of the memory 115.

【0013】メモリのリードのリクエストの場合には、
クライアントデバイス111、112、113から、リ
ードのリクエストが送信される。このリードのリクエス
トが送信バス110Aを介して、メモリコントローラ1
14に送られる。メモリコントローラ114で、リード
のリクエストに応じて、メモリ115の所望のアドレス
からデータが読み出される。このリードデータがメモリ
コントローラ114から、受信バス110Bを介して転
送され、リードのリクエストを送信したクライアントデ
バイス111、112、113で受信される。
In the case of a memory read request,
Read requests are transmitted from the client devices 111, 112, and 113. This read request is sent to the memory controller 1 via the transmission bus 110A.
Sent to 14. The memory controller 114 reads data from a desired address of the memory 115 in response to a read request. This read data is transferred from the memory controller 114 via the reception bus 110B, and is received by the client device 111, 112, 113 that transmitted the read request.

【0014】このように、このシステムでは、送信バス
110Aを介して、クライアントデバイス111、11
2、113からリクエストが送信され、このリクエスト
のワードがメモリバス110を介して、FIFOメモリ
123に蓄積されていく。
As described above, in this system, the client devices 111 and 11 are transmitted via the transmission bus 110A.
Requests are transmitted from 2, 113, and the words of this request are accumulated in the FIFO memory 123 via the memory bus 110.

【0015】ここで、メモリバス110に転送されるワ
ードのクロックと、メモリコントローラ114によりメ
モリ115がアクセスされるワードのクロックとは非同
期になっており、FOFO122及びFIFOメモリ1
23がメモリバス110に転送されるワードのクロック
と、メモリコントローラ114によりメモリ115がア
クセスされるワードのクロックとのバッファとなってい
る。
Here, the clock of the word transferred to the memory bus 110 and the clock of the word to which the memory 115 is accessed by the memory controller 114 are asynchronous, and the FOFO 122 and the FIFO memory 1 are connected.
Reference numeral 23 is a buffer for a word clock transferred to the memory bus 110 and a word clock for accessing the memory 115 by the memory controller 114.

【0016】しかしながら、仮に、メモリバス110に
転送されるワードのクロックの周波数の方が、メモリコ
ントローラ114によりメモリ115がアクセスされる
ワードのクロックの周波数より高いとすると、クライア
ントデバイス110、111、112からメモリバス1
10のバス110Aを介して送られてくるワードがFI
FOメモリ123に貯まり、FIFOメモリ123がオ
ーバーフローを起こすことになる。
However, if the clock frequency of the word transferred to the memory bus 110 is higher than the clock frequency of the word accessed by the memory controller 114 to the memory 115, the client devices 110, 111, 112. To memory bus 1
Words sent via 10 buses 110A are FI
It is stored in the FO memory 123, and the FIFO memory 123 overflows.

【0017】そこで、図14に示すように、FIFOメ
モリ残量モニタ回路125が設けられる。このFIFO
メモリ残量モニタ回路125により、FIFOメモリ1
23の残量が監視される。そして、FIFOメモリ12
3がオーバーフローを起こしそうになったら、FIFO
メモリ残量モニタ回路125からアービタ116にスト
ップ信号が送られ、バスの調停が停止される。これによ
り、クライアントデバイス111、112、113から
メモリ115をアクセスするためののリクエストの送信
が止められ、FIFOメモリ123のオーバーフローが
防止される。
Therefore, as shown in FIG. 14, a FIFO memory remaining amount monitor circuit 125 is provided. This FIFO
The memory remaining monitor circuit 125 allows the FIFO memory 1
The remaining amount of 23 is monitored. Then, the FIFO memory 12
If 3 is about to overflow, FIFO
A stop signal is sent from the memory remaining amount monitor circuit 125 to the arbiter 116 to stop the bus arbitration. As a result, the transmission of the request for accessing the memory 115 from the client devices 111, 112, 113 is stopped, and overflow of the FIFO memory 123 is prevented.

【0018】また、このFIFOメモリ残量モニタ回路
125により、バスのレイテンシを保証できる。
The FIFO memory remaining amount monitor circuit 125 can guarantee the latency of the bus.

【0019】すなわち、クライアントデバイス111、
112、113がリクエストをバスに送ったら、その処
理が所定のレイテンシ以内に終了することが保証されて
いないと、クライアントデバイス111、112、11
3は、次の処理に移れない。このため、クライアントデ
バイス111、112、113がリクエストをメモリバ
ス110に送ったら、その処理が所定のレイテンシ時間
以内に終了することを保証している。
That is, the client device 111,
When the requests 112, 113 send the request to the bus and the processing is not guaranteed to be completed within a predetermined latency, the client devices 111, 112, 11
No. 3 cannot move to the next process. Therefore, when the client device 111, 112, 113 sends a request to the memory bus 110, the processing is guaranteed to be completed within a predetermined latency time.

【0020】ライトのリクエストの場合には、ライトの
ヘッダのワードに続いて、ライトデータのワードが続
き、書き込みにかかる時間は、ライトのヘッダのワード
に続くライトデータのワードに対応する。したがって、
FIFOメモリ123の空き容量が大きいときには、そ
の前にFIFOメモリ123に蓄積されているリクエス
トに対する処理は直ぐに終わるので、リクエストに対す
るメモリアクセスが直ちに行われる。FIFOメモリ1
23の空き容量が小さいと、その前にFIFOメモリ2
3に蓄積されているリクエストに対する処理を終了して
からでないと次の処理に入れないので、送られたリクエ
ストに対するアクセスは時間がかかる。
In the case of a write request, a write header word is followed by a write data word, and the write time corresponds to the write data word following the write header word. Therefore,
When the free capacity of the FIFO memory 123 is large, the processing for the request stored in the FIFO memory 123 before that immediately ends, so that the memory access for the request is immediately performed. FIFO memory 1
If the free space of 23 is small, the FIFO memory 2
Since the next process cannot be started until the process for the request stored in 3 is completed, it takes time to access the sent request.

【0021】例えば、5ワード分のデータの書き込みを
行う場合には、送信バス110Aを介してクライアント
デバイス111、112、113から、ヘッダのワード
に続いて5ワード分のデータが送られ、FIFOメモリ
123に蓄積される。メモリ115のアクセスは例えば
1クロックで1ワード(64ビット)がアクセスされ
る。したがって、このリクエストを処理するためには、
メモリコントローラ114とメモリ115との間のクロ
ックで、5クロック分の時間が必要になる。
For example, when writing data of 5 words, the client device 111, 112, 113 sends data of 5 words following the word of the header via the transmission bus 110A, and the FIFO memory. It is stored in 123. For accessing the memory 115, one word (64 bits) is accessed in one clock, for example. So to handle this request,
The clock between the memory controller 114 and the memory 115 requires time for 5 clocks.

【0022】これに対して、10ワード分のデータの書
き込みを行う場合には、送信バス110Aを介してクラ
イアントデバイス111、112、113から、ヘッダ
のワードに続いて10ワード分のデータが送られ、FI
FOメモリ123に蓄積される。このリクエストを処理
するためには、メモリコントローラ114とメモリ11
5との間のクロックで、10クロック分の時間が必要に
なる。
On the other hand, when writing data of 10 words, the client devices 111, 112, 113 send 10 words of data following the header word via the transmission bus 110A. , FI
It is stored in the FO memory 123. In order to process this request, the memory controller 114 and the memory 11
A clock between 5 and 5 requires 10 clocks.

【0023】このように、ライトの場合には、FIFO
メモリ123の蓄積量と処理時間とは、対応する関係と
なる。したがって、FIFOメモリ123の残量から、
処理時間が推定でき、FIFOメモリ123の残量を監
視し、FIFOメモリ123がオーバーフローを起こし
そうになったら、アービタ116にストップ信号が送る
ことで、所定時間以内のレイテンシを保証できる。
Thus, in the case of writing, the FIFO
The storage amount of the memory 123 and the processing time have a corresponding relationship. Therefore, from the remaining amount of the FIFO memory 123,
The processing time can be estimated, the remaining amount of the FIFO memory 123 is monitored, and when the FIFO memory 123 is about to overflow, a stop signal is sent to the arbiter 116 to guarantee the latency within a predetermined time.

【0024】[0024]

【発明が解決しようとする課題】しかしながら、このよ
うに、FIFOメモリ123の残量を常に監視し、FI
FOメモリ123の残量が所定値以下になったら、アー
ビタ116にストップ信号を送るような処理だけでは、
メモリバス110のレイテンシを必ずしも保証できな
い。これは、ライトリクエストについてはワード数が処
理時間に対応するが、リードリクエストについては、ワ
ード数が処理時間に係わらず一定であるからである。
However, as described above, the remaining amount of the FIFO memory 123 is constantly monitored, and the FI
When the remaining amount of the FO memory 123 becomes less than or equal to a predetermined value, it is sufficient to simply send a stop signal to the arbiter 116.
The latency of the memory bus 110 cannot always be guaranteed. This is because the number of words in the write request corresponds to the processing time, but the number of words in the read request is constant regardless of the processing time.

【0025】つまり、クライアントデバイス111、1
12、113からメモリコントローラ114側に送るラ
イトのリクエストの場合には、ライトを示すヘッダのワ
ードに続いて、メモリ115に書き込むライトデータの
ワードが送られる。FIFOメモリ123には、ライト
のヘッダのワードと、ライトデータのワードとが蓄積さ
れる。したがって、メモリに書き込むデータ量が大きく
なれば、ヘッダのワードに続いて送られるデータのワー
ド数も多くなり、FIFOメモリ123に貯まるデータ
量も大きくなり、FIFOメモリ123の蓄積量が処理
時間に対応する。
That is, the client devices 111, 1
In the case of a write request sent from 12, 113 to the memory controller 114 side, a word of write data to be written in the memory 115 is sent after the word of the header indicating the write. The FIFO memory 123 stores a write header word and a write data word. Therefore, as the amount of data written to the memory increases, the number of words of data sent after the word of the header also increases, the amount of data stored in the FIFO memory 123 also increases, and the storage amount of the FIFO memory 123 corresponds to the processing time. To do.

【0026】これに対して、リードのときには、リード
を示すヘッダのワードのみが送られる。このため、FI
FOメモリ123の蓄積量からでは、処理時間は分から
ない。
On the other hand, at the time of reading, only the word of the header indicating the reading is sent. Therefore, FI
The processing time cannot be known from the accumulated amount in the FO memory 123.

【0027】例えば、5ワード分のデータの読み出し行
う場合にも、10ワード分のデータの読み出しを行う場
合にも、送られてくるのは、ヘッダの1ワードだけであ
る。これに対して、処理時間は、読み出しを行うデータ
のワード数により変わってくる。5ワードのデータの読
み出しを行うのであれば、メモリコントローラ114と
メモリ115との間のクロックで5クロック分の時間が
必要になり、10ワードのデータの読み出しを行うので
あれば、メモリコントローラ114とメモリ115との
間のクロックで10クロック分の時間が必要になる。
For example, when reading data of 5 words and reading data of 10 words, only one word of the header is sent. On the other hand, the processing time depends on the number of words of data to be read. If the data of 5 words is read, the clock for the clock between the memory controller 114 and the memory 115 requires time of 5 clocks, and if the data of 10 words is read, the memory controller 114 and The clock for the memory 115 requires 10 clocks.

【0028】したがって、例えば、FIFOメモリ12
3に3ワードのリードリクエストがあったとしても、こ
のFIFOメモリ123にある3ワードのリクエストが
全て5ワードの読み出しを行うものであるなら、その処
理に(3×5=15)クロックの時間がかかるのに対し
て、この3ワードが全て10ワードの読み出しを行うも
のであるなら、その処理に(3×10=30)クロック
の時間がかかる。このように、リードのリクエストの場
合には、FIFOメモリ123に蓄積されているリクエ
ストのワード数が同じであっても、処理時間は大きく異
なる。
Therefore, for example, the FIFO memory 12
Even if there is a read request for 3 words in 3, if all the requests for 3 words in the FIFO memory 123 are for reading out 5 words, the processing time is (3 × 5 = 15) clocks. On the other hand, if all of these 3 words are for reading out 10 words, the processing takes (3 × 10 = 30) clocks. As described above, in the case of a read request, the processing time is significantly different even if the number of words in the request stored in the FIFO memory 123 is the same.

【0029】このように、ライトのリクエストの場合に
は、FIFOメモリ123の蓄積量と処理時間とが対応
する関係となるが、リードのリクエストの場合には、F
IFOメモリ123の蓄積量と処理時間との間に関連性
がない。したがって、FIFOメモリ123の残量を常
に監視し、FIFOメモリ123がオーバーフローを起
こしそうになったら、アービタ116にストップ信号を
送るような処理だけでは、メモリバス110のレイテン
シを必ずしも保証できないということになる。
As described above, in the case of a write request, the storage amount of the FIFO memory 123 and the processing time have a corresponding relationship, but in the case of a read request, F
There is no relationship between the storage amount of the IFO memory 123 and the processing time. Therefore, the latency of the memory bus 110 cannot always be guaranteed only by constantly monitoring the remaining amount of the FIFO memory 123 and sending a stop signal to the arbiter 116 when the FIFO memory 123 is about to overflow. Become.

【0030】そこで、FIFOメモリ123内に存在す
るパケットの処理にかかるクロック数を管理する方法と
して、リクエストのパケット中のアクセスカウント数を
FIFOメモリ123の入力側及び出力側で常に監視
し、リクエストのパケットが入力されたらそのアクセス
カウント数を加算し、リクエストのパケットがFIFO
メモリ123からメモリコントローラ114に読み出さ
れたら、そのアクセスカウント数を減算して、FIFO
メモリ123内にあるリクエストのパケット中のアクセ
スカウントの総数を求めることが考えられる。
Therefore, as a method for managing the number of clocks required to process the packet existing in the FIFO memory 123, the access count number in the request packet is constantly monitored on the input side and the output side of the FIFO memory 123, and When a packet is input, the access count is added and the request packet is FIFO
When it is read from the memory 123 to the memory controller 114, the access count number is subtracted and the FIFO
It is conceivable to determine the total number of access counts in the request packet in the memory 123.

【0031】アクセスカウントの総数は、リードリクエ
ストであっても、ライトリクエストであっても、FIF
Oメモリ123内のすべてのリクエストのパケットの処
理時間の総和に対応する。したがって、このカウント値
があるしきい値を越えたらストップ信号を生成すること
により、メモリバスのレイテンシを保証することができ
る。
Whether the read request or the write request is the total number of access counts,
It corresponds to the total processing time of all request packets in the O memory 123. Therefore, the latency of the memory bus can be guaranteed by generating a stop signal when this count value exceeds a certain threshold value.

【0032】ところが、このようなアクセスカウントの
総和を求めるようなカウンタを実現するためには、FI
FOメモリ123の入力側と出力側にそれぞれモニタ回
路を持ち、これらの回路の出力に応じて、カウンタを増
減させる必要がある。FIFOメモリ123の入力側と
出力側とが同一のクロックなら、そのような回路は実現
できるが、この回路では、入力側と出力側とで、周波数
が異なっているため、このような回路の実現は容易では
ない。
However, in order to realize such a counter that obtains the sum of the access counts, the FI
It is necessary to have monitor circuits on the input side and the output side of the FO memory 123, and to increase or decrease the counter according to the outputs of these circuits. If the input side and the output side of the FIFO memory 123 have the same clock, such a circuit can be realized. However, in this circuit, the frequency is different between the input side and the output side, and therefore such a circuit is realized. Is not easy.

【0033】すなわち、このようなカウンタをFIFO
メモリ123の入力側に持つとすると、その出力側でパ
ケットがFIFOメモリ123から出力されたことを示
す信号及びそのアクセスワード数を、クロック乗り換え
を行って入力側に伝える必要がある。ここで、メモリバ
ス110のクロックとメモリコントローラ114側のク
ロックは、どちらが高速であるとは言えない。このよう
に、双方のクロックの大小関係が分からないクロックの
載せ変えは、困難である。
That is, such a counter is set to FIFO.
If it is provided on the input side of the memory 123, it is necessary to transfer the signal indicating that the packet is output from the FIFO memory 123 and the number of access words thereof on the output side to the input side by changing the clock. Here, it cannot be said that which of the clock of the memory bus 110 and the clock of the memory controller 114 is faster. As described above, it is difficult to transfer the clocks whose size relationship between the two clocks is unknown.

【0034】したがって、この発明の目的は、メモリバ
スとメモリコントローラとの間に設けられるFIFOメ
モリをモニタして、リードの場合もライトの場合も、所
定時間以内のレイテンシを保証できるようにしたデータ
転送システム及び方法、並びに、アクセスモニタ装置を
提供することにある。
Therefore, an object of the present invention is to monitor a FIFO memory provided between a memory bus and a memory controller so as to guarantee a latency within a predetermined time in both reading and writing. A transfer system and method, and an access monitor device.

【0035】[0035]

【課題を解決するための手段】この発明は、複数のクラ
イアントデバイスと、複数のクライアントデバイスで共
用されるリソースと、リソースを制御するリソース制御
手段と、複数のクライアントデバイスとリソースとの間
でデータを送受信するバスと、各クライアントデバイス
からバスを介して転送されてきたリクエストを一旦蓄積
し、リソース制御手段に読み出すバッファ手段と、バッ
ファ手段に蓄積されているリクエストに含まれるアクセ
スカウント情報を抽出し、バッファ手段に蓄積されてい
るリクエストに含まれるアクセスカウント情報の総和を
求めるアクセスカウント数総和算出手段と、バッファ手
段に蓄積されているリクエストに含まれるアクセスカウ
ント情報の総和が所定のしきい値を越えたら、クライエ
ントデバイスのアクセスを制限するようにする手段とを
備えるようにしたデータ転送システムである。
SUMMARY OF THE INVENTION The present invention is directed to a plurality of client devices, resources shared by the plurality of client devices, resource control means for controlling the resources, and data between the plurality of client devices and the resources. A bus for transmitting and receiving, and a buffer means for temporarily accumulating requests transferred from each client device via the bus and reading them to the resource control means, and extracting access count information included in the requests accumulated in the buffer means. , A total of access count number calculating means for obtaining the sum of access count information contained in the requests accumulated in the buffer means, and a sum of access count information contained in the requests accumulated in the buffer means have a predetermined threshold value. If you exceed it, the client device A data transfer system which is adapted and means so as to limit the process.

【0036】この発明は、複数のクライアントデバイス
と、複数のクライアントデバイスで共用されるリソース
と、リソースを制御するリソース制御手段と、複数のク
ライアントデバイスとリソースとの間でデータを送受信
するバスとからなるシステムのデータ転送方法であっ
て、各クライアントデバイスからバスを介して転送され
てきたリクエストをバッファ手段に一旦蓄積してリソー
ス制御手段に読み出し、バッファ手段に蓄積されている
リクエストに含まれるアクセスカウント情報を抽出し、
バッファ手段に蓄積されているリクエストに含まれるア
クセスカウント情報の総和を求め、バッファ手段に蓄積
されているリクエストに含まれるアクセスカウント情報
の総和が所定のしきい値を越えたら、クライエントデバ
イスのアクセスを制限するようにするようにしたデータ
転送方法である。
The present invention comprises a plurality of client devices, resources shared by the plurality of client devices, resource control means for controlling the resources, and a bus for transmitting and receiving data between the plurality of client devices and the resources. The data transfer method of the system, wherein the request transferred from each client device via the bus is temporarily accumulated in the buffer means and read out by the resource control means, and the access count included in the request accumulated in the buffer means is provided. Extract the information,
When the sum of the access count information contained in the requests accumulated in the buffer means is obtained and the sum of the access count information contained in the requests accumulated in the buffer means exceeds a predetermined threshold value, the client device is accessed. Is a data transfer method that is designed to limit the above.

【0037】この発明は、複数のクライアントデバイス
と、複数のクライアントデバイスで共用されるリソース
と、リソースを制御するリソース制御手段と、複数のク
ライアントデバイスとリソースとの間でデータを送受信
するバスとからなるシステムで、リソースのアクセス数
の総和をモニタするアクセスモニタ装置であって、リソ
ース制御手段とバスとの間のバッファ手段に蓄積されて
いるリクエストのアクセスカウント情報の総和をカウン
トする総和カウンタと、バスからバッファ手段にリクエ
ストが入力されたら、リクエストからアクセスカウント
の値を検出し、アクセスカウントの値をそれまでの総和
カウンタの値に加算する手段と、バスからリクエストが
入力されたら、リクエストのワードからアクセスカウン
トの値を検出し、アクセスカウントの値を保持するデー
タ保持手段と、バスから入力されるデータ量のカウント
値から推定されるバッファの残量の推定値とバッファ手
段の実際の残量とを比較して、バッファ手段からのデー
タの読み出しがあったとことを判断するバッファ読み出
し判断手段と、バッファ手段からリクエストのワードが
読み出されたと判断されたら、バッファ手段から読み出
されたリクエストのワードのアクセスカウントの値に対
応する値をデータ保持手段から読み出し、データ保持手
段から読み出された値を総和カウンタの値から減算する
手段と総和カウンタによりカウントされるアクセスカウ
ントの総和の値と所定のしきい値とを比較し、総和カウ
ンタアクセスの総和の値が所定のしきい値を越えたら、
ストップ信号を出力する手段とを備えるようにしたアク
セスモニタ装置である。
The present invention comprises a plurality of client devices, resources shared by the plurality of client devices, resource control means for controlling the resources, and a bus for transmitting and receiving data between the plurality of client devices and the resources. In the system, an access monitor device for monitoring the sum total of the number of access of resources, the sum counter for counting the sum total of access count information of requests accumulated in the buffer means between the resource control means and the bus, When a request is input from the bus to the buffer means, a means for detecting the access count value from the request and adding the access count value to the value of the total counter so far, and a request word when the request is input from the bus Detect the access count value from Data holding means for holding the value of the access count, and the estimated value of the remaining amount of the buffer estimated from the count value of the amount of data input from the bus and the actual remaining amount of the buffer means are compared. Buffer read determination means for determining that the data has been read, and when it is determined that the request word has been read from the buffer means, it corresponds to the access count value of the request word read from the buffer means. A value is read from the data holding means, means for subtracting the value read from the data holding means from the value of the total sum counter is compared with the total value of the access counts counted by the total sum counter and a predetermined threshold value, When the sum total value of the sum counter access exceeds the specified threshold,
An access monitor device is provided with means for outputting a stop signal.

【0038】この発明では、リソース制御手段とバスと
の間のバッファ手段に蓄積されているリクエストのアク
セスカウント数の総和をモニタするアクセス総和カウン
トモニタ回路が設けられる。
In the present invention, there is provided an access sum total count monitor circuit for monitoring the sum total of the access count numbers of the requests accumulated in the buffer means between the resource control means and the bus.

【0039】すなわち、ヘッダのワードには、バイトカ
ウント(Byte Count)が含められている。このバイトカ
ウント(Byte Count)の値が、各クライアントで共用さ
れるリソースであるメモリへのアクセス数を反映してい
る。アクセス総和カウントモニタ回路で、ヘッダのバイ
トカウントの総和が求められる。そして、このヘッダの
バイトカウントの総和が所定のしきい値以上になると、
アクセス総和カウントモニタ回路からストップ信号が出
力される。このストップ信号がアクセス総和カウントモ
ニタ回路からアービタに供給される。アービタは、FI
FOメモリ残量モニタからストップ信号が送られてきた
ら、リクエストの調停を中止する。これにより、クライ
アントデバイスのメモリへのアクセスが制限される。
That is, the word of the header includes a byte count. The value of this byte count reflects the number of accesses to the memory, which is a resource shared by each client. The total access count monitor circuit determines the total byte count of the header. Then, when the sum of byte counts of this header exceeds a predetermined threshold value,
A stop signal is output from the access sum count monitor circuit. This stop signal is supplied from the access sum count monitor circuit to the arbiter. Arbiter is FI
When a stop signal is sent from the FO memory remaining amount monitor, arbitration of the request is stopped. This limits access to the memory of the client device.

【0040】このように、FIFOメモリに蓄積されて
いるリクエストのアクセスカウント数の総和をモニタす
るアクセス総和カウントモニタ回路が設けられ、アクセ
スカウントの総和が所定のしきい値以上になると、アク
セス総和カウントモニタ回路からストップ信号がアービ
タに送られ、リクエストの調停が中止されるため、メモ
リバスのレイテンシを保証できる。
As described above, the access sum total count monitor circuit for monitoring the sum total of the access count numbers of the requests accumulated in the FIFO memory is provided, and when the sum total of the access count becomes equal to or more than a predetermined threshold value, the access sum total count is Since the monitor circuit sends a stop signal to the arbiter to stop the arbitration of the request, the latency of the memory bus can be guaranteed.

【0041】また、この発明では、入力されるワードの
カウント値から推定されるFIFOメモリの残量と、F
IFOメモリの実際の残量とを比較し、この比較値から
FIFOメモリに読み出しがあったことを検出してい
る。このような構成では、メモリバスからFIFOメモ
リに送られてくるワードのクロックと、メモリコントロ
ーラからメモリをアクセスするときのワードのクロック
との周波数関係に依存しない構成とすることができる。
Further, according to the present invention, the remaining amount of the FIFO memory estimated from the count value of the input word and F
The actual remaining amount of the IFO memory is compared, and it is detected from this comparison value that the FIFO memory has been read. With such a configuration, it is possible to adopt a configuration that does not depend on the frequency relationship between the word clock sent from the memory bus to the FIFO memory and the word clock used when the memory is accessed from the memory controller.

【0042】[0042]

【発明の実施の形態】以下、この発明の実施の形態につ
いて図面を参照しながら説明する。図1は、この発明が
適用されたシステムの全体構成を説明するものである。
BEST MODE FOR CARRYING OUT THE INVENTION Embodiments of the present invention will be described below with reference to the drawings. FIG. 1 illustrates the overall configuration of a system to which the present invention is applied.

【0043】図1において、クライアントデバイス1
1、12、13は、共用のリソースであるメモリ15を
アクセスするデバイスである。例えば、信号処理チップ
を構成するシステムにおいては、クライアントデバイス
11、12、13は、BitBLT(Bit Block Transfe
r)エンジン、JPEG(Joint Photographic Experts Gr
oup)エンジン等のプロセッサである。これらのクライア
ントデバイス11、12、13は、FIFOメモリ(Fir
st-In First-Out)21A、21B、21C及びFIFO
メモリ22A、22B、22Cをそれぞれ介して、メモ
リバス10に接続される。また、メモリバス10には、
FIFOメモリ23及び24を介して、メモリコントロ
ーラ14が接続される。メモリコントローラ14は、メ
モリ15のリード/ライトを制御するリソース制御回路
である。
In FIG. 1, the client device 1
Reference numerals 1, 12, and 13 are devices that access the memory 15, which is a shared resource. For example, in a system that constitutes a signal processing chip, the client devices 11, 12, and 13 are BitBLT (Bit Block Transfe
r) engine, JPEG (Joint Photographic Experts Gr
oup) A processor such as an engine. These client devices 11, 12, 13 have a FIFO memory (Fir memory).
st-In First-Out) 21A, 21B, 21C and FIFO
It is connected to the memory bus 10 via the memories 22A, 22B and 22C, respectively. In addition, the memory bus 10
The memory controller 14 is connected via the FIFO memories 23 and 24. The memory controller 14 is a resource control circuit that controls reading / writing of the memory 15.

【0044】メモリ15は、複数のクライアントデバイ
ス11、12、13で共通に利用可能なリソースであ
る。メモリ15としては、例えば、SDRAM(Synchro
nous Dynamic Random Access Memory)が用いられる。S
DRAMは、クロックに同期した連続的なデータ転送が
可能であり、バースト転送を指定すると、指定したデー
タ数のデータ転送を1クロック単位で連続して行うこと
ができる。ここでは、SDRAMの構成とされたメモリ
15は、1クロックで64ビットのデータを転送するこ
とができる。SDRAMは、SDR(Dingle Data Rate)
でも、DDR(Double Data Rate)でも良い。
The memory 15 is a resource that can be commonly used by a plurality of client devices 11, 12, 13. As the memory 15, for example, SDRAM (Synchro
nous Dynamic Random Access Memory) is used. S
The DRAM is capable of continuous data transfer in synchronization with a clock, and when burst transfer is designated, data transfer of a designated number of data can be continuously performed in units of one clock. Here, the memory 15 having the SDRAM configuration can transfer 64-bit data in one clock. SDRAM is SDR (Dingle Data Rate)
However, DDR (Double Data Rate) may be used.

【0045】メモリバス10は、クライアントデバイス
11、12、13と、メモリコントローラ14との間
で、データの転送を行うバスである。メモリバス10
は、クライアントデバイス11、12、13側からメモ
リコントローラ14側にデータを送る送信バス10A
と、メモリコントローラ14側からのデータをクライア
ントデバイス11、12、13側で受信する受信バス1
0Bとからなる。
The memory bus 10 is a bus for transferring data between the client devices 11, 12, 13 and the memory controller 14. Memory bus 10
Is a transmission bus 10A that sends data from the client device 11, 12, 13 side to the memory controller 14 side.
And a receiving bus 1 for receiving data from the memory controller 14 side on the client device 11, 12, 13 side.
It consists of 0B.

【0046】各クライアントデバイス11、12、13
とメモリバス10との間には、FIFOメモリ21A、
21B、21C及びFIFOメモリ22A、22B、2
2Cが設けられる。これらのFIFOメモリ21A、2
1B、21C、FIFOメモリ22A、22B、22C
は、バッファとして設けられる。各クライアントデバイ
ス11、12、13とメモリバス10との間には、FI
FOメモリ21A、21B、21C及びFIFOメモリ
22A、22B、22Cが設けられているため、各クラ
イアントデバイス11、12、13は、メモリバス10
の転送クロックとは非同期で、リクエストの送信やデー
タの受信が行える。
Each client device 11, 12, 13
And a memory bus 10 between the FIFO memory 21A,
21B, 21C and FIFO memories 22A, 22B, 2
2C is provided. These FIFO memories 21A, 2
1B, 21C, FIFO memory 22A, 22B, 22C
Is provided as a buffer. Between each client device 11, 12, 13 and the memory bus 10, a FI
Since the FO memories 21A, 21B and 21C and the FIFO memories 22A, 22B and 22C are provided, the client devices 11, 12 and 13 are connected to the memory bus 10 respectively.
It is possible to send requests and receive data asynchronously with the transfer clock.

【0047】また、メモリコントローラ14とメモリバ
ス10との間には、FIFOメモリ23及びFIFOメ
モリ24が設けられる。メモリコントローラ14とメモ
リバス10との間には、FIFOメモリ23及びFIF
Oメモリ24が設けられているため、メモリコントロー
ラ14は、メモリバス10の転送クロックとは非同期
で、リクエストの受信やデータの送信が行える。
A FIFO memory 23 and a FIFO memory 24 are provided between the memory controller 14 and the memory bus 10. A FIFO memory 23 and a FIFO are provided between the memory controller 14 and the memory bus 10.
Since the O memory 24 is provided, the memory controller 14 can receive requests and send data asynchronously with the transfer clock of the memory bus 10.

【0048】各クライアントデバイス11、12、13
には、固有のデバイスIDが割り振られている。各クラ
イアントデバイス11、12、13は、メモリ15をア
クセスする場合には、メモリバス10の送信バス10A
を介して、リクエストを送信する。このリクエストは、
パケット構造となっている。
Each client device 11, 12, 13
Is assigned a unique device ID. When accessing the memory 15, each of the client devices 11, 12, 13 has a transmission bus 10A of the memory bus 10.
Send the request via. This request is
It has a packet structure.

【0049】クライアントデバイス11、12、13
は、全て、共通のメモリ15にアクセスすることが可能
である。このため、複数のクライアントデバイス11、
12、13で、メモリ15へのリクエストが同時に起こ
るようなことがあり得る。そこで、クライアントデバイ
ス11、12、13からのリクエストの競合を防ぐため
に、アービタ16が設けられる。
Client device 11, 12, 13
Can access the common memory 15. Therefore, a plurality of client devices 11,
At 12, 13, it is possible that requests to memory 15 will occur simultaneously. Therefore, an arbiter 16 is provided to prevent contention of requests from the client devices 11, 12, and 13.

【0050】クライアントデバイス11、12、13が
メモリ15をアクセスする場合には、まず、アービタ1
6にバスの使用権を得るためのリクエストが送られる。
アービタ16は、複数のクライアントデバイスからのリ
クエストがあった場合には、そのリクエストを調停し、
メモリバス10の使用を許可する1つのクライアントデ
バイスにのみ、グラントを返す。複数のクライアントデ
バイス11、12、13のうち、グラントが返されてき
たクライアントデバイスのみがメモリ15をアクセスす
ることができる。
When the client devices 11, 12, 13 access the memory 15, first, the arbiter 1
A request is sent to 6 for the right to use the bus.
When there are requests from a plurality of client devices, the arbiter 16 arbitrates the requests,
The grant is returned to only one client device that permits the use of the memory bus 10. Of the plurality of client devices 11, 12 and 13, only the client device for which the grant has been returned can access the memory 15.

【0051】メモリのライトのリクエストの場合には、
クライアントデバイス11、12、13から、ライトの
リクエストが送信される。このライトのリクエストが送
信バス10Aを介して、メモリコントローラ14に送ら
れる。メモリコントローラ14により、ライトのリクエ
ストに応じて、クライアントデバイス11、12、13
から送られたライトデータがメモリ15の所望のアドレ
スに書き込まれる。
In the case of a memory write request,
Write requests are transmitted from the client devices 11, 12, and 13. This write request is sent to the memory controller 14 via the transmission bus 10A. The memory controller 14 causes the client devices 11, 12, 13 to respond to the write request.
The write data sent from is written in a desired address of the memory 15.

【0052】メモリのリードのリクエストの場合には、
クライアントデバイス11、12、13から、リードの
リクエストが送信される。このリードのリクエストが送
信バス10Aを介して、メモリコントローラ14に送ら
れる。メモリコントローラ14で、リードのリクエスト
に応じて、メモリ15の所望のアドレスからデータが読
み出される。このリードデータがメモリコントローラ1
4から、受信バス10Bを介して転送され、リードのリ
クエストを送信したクライアントデバイス11、12、
13で受信される。
In the case of a memory read request,
Read requests are transmitted from the client devices 11, 12, and 13. This read request is sent to the memory controller 14 via the transmission bus 10A. The memory controller 14 reads data from a desired address of the memory 15 in response to a read request. This read data is the memory controller 1
4, the client device 11, 12, which has been transferred via the reception bus 10B and transmitted the read request,
It is received at 13.

【0053】図2は、メモリバス10に転送されるパケ
ットの構成を示すものである。図2に示すように、メモ
リバス10に転送されるデータは、ヘッダワードと、デ
ータワードと、エンドオブパケットワードとからなるパ
ケット構成とされる。これら、ヘッダと、データと、エ
ンドオブパケットのワードは、64ビットのデータにフ
ラグ等の制御信号を加えた72ビットとなっている。
FIG. 2 shows the structure of a packet transferred to the memory bus 10. As shown in FIG. 2, the data transferred to the memory bus 10 has a packet structure including a header word, a data word, and an end of packet word. These header, data, and end-of-packet word are 72 bits in which 64-bit data and a control signal such as a flag are added.

【0054】図2A、図2B、及び図2Cは、それぞ
れ、ヘッダと、データと、エンドオブパケットの各ワー
ドのビットアサインを示すものである。
2A, 2B, and 2C show the bit assignments of the header, data, and words of the end of packet, respectively.

【0055】図2A〜図2Cに示すように、各ワードの
先頭には、2ビットのフラグが設けられる。フラグは、
そのワードが、ヘッダか、データか、エンドオブパケッ
トかを識別するものである。このフラグが例えば、「0
1」ならヘッダであり、「10」ならデータであり、
「11」ならエンドオブパケットである。
As shown in FIGS. 2A to 2C, a 2-bit flag is provided at the beginning of each word. The flag is
The word identifies the header, data, or end of packet. This flag is, for example, "0
"1" is a header, "10" is data,
If it is “11”, it is an end of packet.

【0056】図2Aのヘッダのワードにおいて、フラグ
の2ビットの次の6ビットは、クライアント側で定義可
能とされている。
In the header word of FIG. 2A, the 6 bits following the 2 bits of the flag are definable on the client side.

【0057】次の6ビットは、デバイスIDである。各
クライアントデバイス毎に固有のデバイス番号が割り振
られており、このデバイスIDは、ターゲットクライア
ントデバイスのIDを示している。
The next 6 bits are the device ID. A unique device number is assigned to each client device, and this device ID indicates the ID of the target client device.

【0058】次の6ビットはモードとなっている。モー
ドは、アドレシングフォーマットと共に、アドレスモー
ドを示している。アドレスモードとしては、リニアモー
ド、2Dモード、サーキュラモード等が用意されてい
る。
The next 6 bits are the mode. The mode indicates the address mode together with the addressing format. As the address mode, a linear mode, a 2D mode, a circular mode, etc. are prepared.

【0059】モードの次の1ビットは、リードかライト
かを示している。このビットが例えば「1」ならライト
であり、「0」ならリードである。
The next 1 bit of the mode indicates read or write. If this bit is, for example, "1", it is a write, and if it is "0", it is a read.

【0060】アドレシングフォーマットの次の2ビット
は、将来の拡張のためにリザーブされている。
The next 2 bits of the addressing format are reserved for future expansion.

【0061】その次の30ビットは、スタートアドレス
となっている。スタートアドレスは、リード又はライト
するメモリの開始アドレスであり、このアドレスはバイ
ト単位に設定される。
The next 30 bits are the start address. The start address is the start address of the memory to read or write, and this address is set in byte units.

【0062】図2B及び図2Cに示すように、データワ
ード及びエンドオブパケットワードでは、2ビットのフ
ラグの次に、8ビットのバイトイネーブルが配置され、
次に、64ビットのデータが配置される。バイトイネー
ブルは、対応するデータが有効か無効かを示している。
As shown in FIGS. 2B and 2C, in the data word and the end of packet word, the 2-bit flag is followed by the 8-bit byte enable.
Next, 64-bit data is arranged. The byte enable indicates whether the corresponding data is valid or invalid.

【0063】すなわち、1ワードの転送データが64ビ
ットに満たない場合がある。1ワードの転送データが6
4ビットに満たない場合には、1ワードのデータが64
ビットとなるように、図3に示すように、スタッフィン
グバイトが挿入される。
That is, the transfer data of one word may be less than 64 bits. Transfer data of 1 word is 6
If it is less than 4 bits, 1 word of data is 64
As shown in FIG. 3, a stuffing byte is inserted so that it becomes a bit.

【0064】図3Aは、64ビット(8バイト)のうち
の下位3バイトがデータで、上位5バイトがスタッフィ
ングバイトの場合を示している。この場合には、図3A
に示すように、バイトイネーブルの8ビットのうち、下
位3ビットは有効であることを示す「1」となり、上位
5ビットは、無効データであることを示す「0」とな
る。
FIG. 3A shows a case where the lower 3 bytes of 64 bits (8 bytes) are data and the upper 5 bytes are stuffing bytes. In this case, FIG.
As shown in, the lower 3 bits of the 8 bytes of the byte enable are "1" indicating that they are valid, and the upper 5 bits thereof are "0" indicating that they are invalid data.

【0065】図3Bは、64ビット(8バイト)のうち
の上位2バイトがデータで、下位6バイトがスタッフィ
ングバイトの場合を示している。この場合には、図3B
に示すように、バイトイネーブルの8ビットのうち、上
位2ビットは有効であることを示す「1」となり、下位
6ビットは、無効データであることを示す「0」とな
る。
FIG. 3B shows a case where the upper 2 bytes of 64 bits (8 bytes) are data and the lower 6 bytes are stuffing bytes. In this case, FIG.
As shown in (4), among the 8 bits of the byte enable, the upper 2 bits are “1” indicating that they are valid and the lower 6 bits are “0” indicating that they are invalid data.

【0066】図4Aに示すように、ヘッダワード(図2
A)には、モードと、アドレシングフォーマットとが設
けられ、モードとアドレシングフォーマットは、アドレ
スモードを示している。アドレスモードとしては、リニ
アモード、2Dモード、サーキュラモード等が用意され
ている。
As shown in FIG. 4A, the header word (FIG.
In A), a mode and an addressing format are provided, and the mode and the addressing format indicate the address mode. As the address mode, a linear mode, a 2D mode, a circular mode, etc. are prepared.

【0067】図4Bから図4Dは、各アドレスモードを
示すものである。リニアモードでは、図4Bに示すよう
に、モードの4ビットが「0000」となる。リニアモ
ードでは、パラメータとして、ジャンプ(Jump)とバイ
トカウント(Byte Count)が指定される。リニアモード
は、バイトカウント(Byte Count)で指定されるアクセ
ス数のデータを、スタートアドレスで指定された位置か
ら順にアクセスするもので、最も標準的なアドレッシン
グモードである。
4B to 4D show each address mode. In the linear mode, as shown in FIG. 4B, the 4 bits of the mode are “0000”. In the linear mode, jump (Jump) and byte count (Byte Count) are specified as parameters. The linear mode is the most standard addressing mode, in which the data of the number of accesses specified by the byte count is accessed sequentially from the position specified by the start address.

【0068】ジャンプ(Jump)は、2の補数の数値でジ
ャンプするワード(64ビット)を指定するものであ
る。ジャンプは、ワードの境界で行われる。例えば、ジ
ャンプ(Jump=2ワード)にセットすると、ワードの境界
で、2ワードジャンプしてアドレスが進められる。負の
値を指定することで、逆方法のアドレシングも可能であ
る。
The jump (Jump) specifies a word (64 bits) to be jumped by a numerical value of 2's complement. Jumps are made at word boundaries. For example, if jump (Jump = 2 words) is set, the address is advanced by jumping two words at the word boundary. Reverse addressing is also possible by specifying a negative value.

【0069】バイトカウント(Byte Count)は、必要な
バイト数をセットするものである。なお、実際には、バ
イトカウント(Byte Count-1)が使われており、必要な
バイト数から1を引いた数とされる。つまり、1バイト
のデータが必要なときには、バイトカウント(Byte Cou
nt)の値は0にセットされる。ここでは、説明を簡単と
するため、バイトカウント(Byte Count)は、必要なア
クセスセバイト数をセットするものとする。
Byte Count sets the required number of bytes. In addition, the byte count (Byte Count-1) is actually used, and is the number obtained by subtracting 1 from the required number of bytes. In other words, when 1 byte of data is needed, the byte count (Byte Cou
nt) is set to 0. Here, in order to simplify the explanation, it is assumed that the byte count (Byte Count) sets the required number of access sebytes.

【0070】2Dモードでは、図4Cに示すように、モ
ードの4ビットが「0001」となる。2Dモードで
は、パラメータとして、ジャンプ(Jump)と、高さ(Hig
ht)と、カラム(Col)と、ロウ(Row)とが指定できる。2
Dモードは、二次元ブロックベースのアクセスを可能と
したもので、ロウとカラムとでアドレスを指定できる。
In the 2D mode, as shown in FIG. 4C, the 4 bits of the mode are "0001". In 2D mode, as parameters, Jump (Jump) and Height (Hig
ht), column (Col), and row (Row) can be specified. Two
The D mode enables two-dimensional block-based access, and addresses can be specified by rows and columns.

【0071】サーキュラモードでは、図4Dに示すよう
に、モードの4ビットが「0010」となる。サーキュ
ラモードでは、パラメータとして、バイトカウント(By
te Count)が指定される。サーキュラモードは、バイト
カウント(Byte Count)で指定されるアクセス数のデー
タを、巡回的にアクセスするものである。すなわち、サ
ーキュラモードでは、バイトカウント(Byte Count)が
指定される範囲内で、エンドアドレスがスタートアドレ
スに戻ってくるような巡回的なアドレシングが行われ
る。
In the circular mode, as shown in FIG. 4D, 4 bits of the mode are "0010". In circular mode, the byte count (By
te Count) is specified. The circular mode cyclically accesses the data of the access number designated by the byte count. That is, in the circular mode, cyclic addressing is performed so that the end address returns to the start address within the range where the byte count is specified.

【0072】図5は、リニアモードで、スタートアドレ
スが「05h(hは16進数)」、ジャンプが「2ワー
ド」、バイトカウントが「31」が指定されたときのア
クセスを示すものである。これは、メモリ上のアドレス
「5h」から31バイト分をアクセスし、ワードとワー
ドの境界で、2ワード分ジャンプするようなアクセスを
示している。
FIG. 5 shows access in the linear mode when the start address is "05h (h is a hexadecimal number)", the jump is "2 words", and the byte count is "31". This shows an access such that 31 bytes are accessed from the address "5h" on the memory and two words are jumped at the boundary between words.

【0073】図5に示すように、最初に、「05h」か
ら「07h」の3バイトのデータが順にアクセスされ
る。ワードとワードの境界となる「07h」からは、2
ワードジャンプされ、「10h」から「17h」の1ワ
ードがアクセスされ、ワードの境界で2ワードジャンプ
され、「20h」から「27h」の1ワードがアクセス
され、ワードの境界で2ワードジャンプされ、「30
h」から「37h」の1ワードがアクセスされ、ワード
の境界で2ワードジャンプされ、「40h」から「43
h」の4バイトのデータがアクセスされる。これによ
り、アドレス「5h」から順に、31バイト分のデータ
がアクセスされたことになる。
As shown in FIG. 5, first, 3-byte data "05h" to "07h" is sequentially accessed. From "07h", which is the boundary between words, 2
Word jump, 1 word from “10h” to “17h” is accessed, 2 words are jumped at a word boundary, 1 word from “20h” to “27h” is accessed, 2 words are jumped at a word boundary, "30
One word from "h" to "37h" is accessed, two words are jumped at the word boundary, and "40h" to "43" are accessed.
The 4-byte data of "h" is accessed. As a result, 31 bytes of data are accessed in order from the address "5h".

【0074】このようにしてアクセスされたデータを読
み出すと、図6に示すように、ヘッダのワードH1と、
データのワードD1からD4と、エンドオブパケットの
ワードD5とからなるパケットとなる。
When the data thus accessed is read, as shown in FIG. 6, the word H1 of the header,
The packet is composed of the words D1 to D4 of the data and the word D5 of the end of packet.

【0075】図7Aに示すように、ヘッダのワードH1
には、ヘッダのワードであることを示すフラグ「01」
が付加される。ヘッダには、図2Aに示したような各種
の情報が記述される。
As shown in FIG. 7A, word H1 in the header
Is a flag "01" indicating that it is a word in the header.
Is added. Various information as shown in FIG. 2A is described in the header.

【0076】図7Bから図7Eに示すように、ワードD
1からD4には、データのワードであることを示すフラ
グ「10」が付加される。ワードD1には、アドレス
「05h」から「07h」の3バイトのデータが配置さ
れる。なお、3バイトのデータは64ビットに満たない
ので、ここには、スタッフィングバイトが挿入される。
ワードD2には、アドレス「10h」から「17h」の
64ビットのデータが配置される。ワードD3には、ア
ドレス「20h」から「27h」の64ビットのデータ
が配置される。ワードD4には、アドレス「30h」か
ら「37h」の64ビットのデータが配置される。ワー
ドD5には、エンドオブパケットのワードであることを
示すフラグ「11」が付加される。ワードD5には、ア
ドレス「40h」から「47h」の4バイトのデータが
配置される。なお、4バイトのデータは64ビットに満
たないので、ここには、スタッフィングバイトが挿入さ
れる。
As shown in FIGS. 7B-7E, word D
A flag "10" indicating that it is a word of data is added to 1 to D4. In the word D1, 3-byte data of addresses "05h" to "07h" are arranged. Since the 3-byte data is less than 64 bits, a stuffing byte is inserted here.
64-bit data of addresses "10h" to "17h" are arranged in the word D2. 64-bit data of addresses "20h" to "27h" are arranged in the word D3. 64-bit data of addresses "30h" to "37h" are arranged in the word D4. A flag “11” indicating that it is an end-of-packet word is added to the word D5. In the word D5, 4-byte data of addresses "40h" to "47h" is arranged. Since 4-byte data is less than 64 bits, stuffing bytes are inserted here.

【0077】このように、図1におけるシステムにおい
て、メモリバス10に転送されるデータは、パケット構
造となっている。クライアントデバイス11、12、1
3からメモリコントローラ14側に送るパケットの種類
は、図8に示すように、ライトリクエストのパケット
(図8A)と、リードリクエストのパケット(図8B)
との2つに分けられる。
As described above, in the system shown in FIG. 1, the data transferred to the memory bus 10 has a packet structure. Client device 11, 12, 1
As shown in FIG. 8, the types of packets sent from the memory controller 3 to the memory controller 14 are write request packets (FIG. 8A) and read request packets (FIG. 8B)
It is divided into two.

【0078】ライトリクエストのパケットは、図8Aに
示すように、ヘッダのワードと、数ワードの書き込みデ
ータとからなり、最後に、エンドオブパケットのワード
が来る。
As shown in FIG. 8A, the write request packet consists of a header word and several words of write data, and the end of packet word comes at the end.

【0079】リードリクエストのパケットは、図8Bに
示すように、リードヘッダの1ワードであり、データワ
ードやエンドオブパケットのワードは存在しない。
As shown in FIG. 8B, the read request packet is one word of the read header, and there is no data word or end of packet word.

【0080】リードリクエストかライトリクエストか
は、パケットの先頭に付加されたヘッダのワードのR/
Wビットにより識別できる(図2A参照)。
Whether the request is a read request or a write request is R / of the word of the header added to the beginning of the packet.
It can be identified by the W bit (see FIG. 2A).

【0081】メモリコントローラ14からクライアント
デバイス11、12、13側に送られてくるパケット
は、クライアントデバイス11、12、13からのリー
ドリクエストに対応してメモリ15から読み出されてき
たリードデータのパケットである。このリードデータの
パケットは、図9に示すように、ヘッダのワードと、数
ワードの書き込みデータとからなり、最後に、エンドオ
ブパケットのワードが来ることになる。
The packet sent from the memory controller 14 to the client device 11, 12, 13 is a read data packet read from the memory 15 in response to the read request from the client device 11, 12, 13. Is. As shown in FIG. 9, this read data packet is composed of a header word and several words of write data, and the end of packet word comes at the end.

【0082】図10に示すように、各クライアントデバ
イス11、12、13には、ユニークなデバイスIDが
割り振られる。例えば、図10に示すように、クライア
ントデバイス11には、デバイスIDとして(ID=0
1h)が割り当てられ、クライアントデバイス12に
は、デバイスIDとして(ID=02h)が割り当てら
れ、クライアントデバイス13には、デバイスIDとし
て(ID=03h)で(Byte Count=16)が割り当てら
れる。
As shown in FIG. 10, a unique device ID is assigned to each client device 11, 12, 13. For example, as shown in FIG. 10, the client device 11 has a device ID (ID = 0).
1h) is assigned, the client device 12 is assigned a device ID (ID = 02h), and the client device 13 is assigned a device ID (ID = 03h) (Byte Count = 16).

【0083】図11Aは送信バス10Aに転送されるワ
ードを示し、図11Bは受信バス10Bに転送されるワ
ードを示す。図11Aに示すように、例えば、クライア
ントデバイス11が16バイトのデータをメモリ15か
ら読み出す要求をしたとすると、クライアントデバイス
11から送信バス10Aを介して、リードリクエストの
パケットP1が送られる。このリードリクエストのパケ
ットP1はヘッダのみであり、このヘッダには、デバイ
スID(ID=01h)で、バイトカウント(Byte Cou
nt=16)が記述される。
FIG. 11A shows words transferred to the transmission bus 10A, and FIG. 11B shows words transferred to the reception bus 10B. As shown in FIG. 11A, for example, if the client device 11 makes a request to read 16-byte data from the memory 15, the client device 11 sends a read request packet P1 via the transmission bus 10A. The packet P1 of this read request has only a header, and this header has a device ID (ID = 01h) and a byte count (Byte Cou
nt = 16) is described.

【0084】次に、クライアントデバイス12が8バイ
トのデータをメモリ15から読み出す要求をしたとする
と、クライアントデバイス12から送信バス10Aを介
して、リードリクエストのパケットP2が送られる。こ
のリードリクエストのパケットはヘッダのみであり、こ
のヘッダには、デバイスID(ID=02h)で、バイ
トカウント(Byte Count=8)が記述される。
Next, if the client device 12 makes a request to read 8-byte data from the memory 15, the client device 12 sends a read request packet P2 via the transmission bus 10A. The packet of this read request has only the header, and the device ID (ID = 02h) and the byte count (Byte Count = 8) are described in this header.

【0085】次に、クライアントデバイス13が24バ
イトのデータをメモリ15に書き込む要求をしたとする
と、クライアントデバイス13から送信バス10Aを介
して、ライトリクエストのパケットP3が送られる。こ
のライトリクエストのパケットP3は、ヘッダのワード
と、これに続く2バイト分のデータのワードと、1ワー
ドのエンドオブパケットのワードからなる。このヘッダ
には、デバイスID(ID=03h)で、バイトカウン
トが(Byte Count=24)が記述される。
Next, if the client device 13 makes a request to write 24 bytes of data to the memory 15, the client device 13 sends a write request packet P3 via the transmission bus 10A. This write request packet P3 is composed of a word of the header, a word of data of 2 bytes following this, and a word of the end of packet of 1 word. In this header, the device ID (ID = 03h) and the byte count (Byte Count = 24) are described.

【0086】このように、メモリバス10の送信バス1
0Aには、クライアントデバイス11、12、13か
ら、リード又はライトのリクエストのパケットP1、P
2、P3,P3…が次々に送られてくる。このリード又
はライトのリクエストの各ワードは、送信バス10Aか
ら、FIFOメモリ23に一旦読み込まれる。
As described above, the transmission bus 1 of the memory bus 10
0A includes packets P1 and P for requesting read or write from the client devices 11, 12 and 13.
2, P3, P3 ... Are sent one after another. Each word of the read or write request is once read into the FIFO memory 23 from the transmission bus 10A.

【0087】FIFOメモリ23に読み込まれたワード
は、順に、メモリコントローラ14に送られる。メモリ
コントローラ14で、各リクエストに応じて、メモリ1
5がアクセスされる。
The words read into the FIFO memory 23 are sequentially sent to the memory controller 14. In the memory controller 14, in response to each request, the memory 1
5 is accessed.

【0088】すなわち、図11において、クライアント
デバイス11からのリードリクエストのパケットP1に
応答して、メモリ15から所望のアドレスのデータが1
6バイト分読み出される。このリードデータは、ヘッダ
と、それに続く1ワードののデータワードと、1ワード
のエンドオブパケットからなるパケットP11にパケッ
ト化される。このリードデータのパケットP11は、図
11Bに示すように、メモリコントローラ14から、受
信バス10Bを介して送られる。このリードデータのパ
ケットのヘッダには、デバイスIDとして(ID=01
h)が記述される。クライアントデバイス11では、デ
バイスIDが(ID=01h)であることから、自分宛
のリードデータであることがわかり、このリードデータ
のパケットP11がクライアントデバイス11で受信さ
れる。
That is, in FIG. 11, in response to the read request packet P1 from the client device 11, the data of the desired address is 1 from the memory 15.
6 bytes are read. This read data is packetized into a packet P11 consisting of a header, a data word of 1 word following the header, and an end of packet of 1 word. This read data packet P11 is sent from the memory controller 14 via the reception bus 10B, as shown in FIG. 11B. In the header of this read data packet, the device ID (ID = 01
h) is described. Since the device ID of the client device 11 is (ID = 01h), it is known that the read data is addressed to itself, and the client device 11 receives this read data packet P11.

【0089】クライアントデバイス12からのリードリ
クエストのパケットP2に応答して、メモリ15から所
望のアドレスのデータが8バイト分読み出される。この
リードデータは、ヘッダと、それに続く1ワードのエン
ドオブパケットからなるパケットP12にパケット化さ
れる。このリードデータのパケットP12は、図11B
に示すように、メモリコントローラ14から、受信バス
10Bを介して、送られる。このリードデータのパケッ
トのヘッダには、デバイスIDとして(ID=02h)
が記述される。クライアントデバイス12では、デバイ
スIDが(ID=02h)であることから、自分宛のリ
ードデータであることがわかり、このリードデータのパ
ケットP12がクライアントデバイス12で受信され
る。
In response to the read request packet P2 from the client device 12, eight bytes of data at a desired address are read from the memory 15. This read data is packetized into a packet P12 consisting of a header and the end of packet of one word following the header. This read data packet P12 is shown in FIG. 11B.
As shown in (4), it is sent from the memory controller 14 via the reception bus 10B. In the header of this read data packet, the device ID (ID = 02h) is set.
Is described. Since the device ID of the client device 12 is (ID = 02h), it is known that the read data is addressed to itself, and the client device 12 receives this read data packet P12.

【0090】クライアントデバイス13からのリードリ
クエストのパケットP3に応答して、メモリ15の所望
のアドレスに、ライトデータとしてクライアントデバイ
ス13から転送されてきた24バイト分のデータが書き
込まれる。
In response to the read request packet P3 from the client device 13, the 24-byte data transferred from the client device 13 as write data is written in a desired address of the memory 15.

【0091】このように、図1に示すシステムでは、ク
ライアントデバイス11、12、13からは、メモリバ
ス10の送信バス10Aを介して、リード又はライトの
リクエストがパケット構造で送られてくる。このリクエ
ストのワードは、FIFOメモリ23に書き込まれてい
く。
As described above, in the system shown in FIG. 1, a read or write request is sent in a packet structure from the client devices 11, 12, 13 via the transmission bus 10A of the memory bus 10. The word of this request is written in the FIFO memory 23.

【0092】FIFOメモリ23に蓄積されたワード
は、メモリコントローラ14により読み出される。そし
て、メモリコントローラ14によりメモリ15がアクセ
スされる。
The words stored in the FIFO memory 23 are read by the memory controller 14. Then, the memory 15 is accessed by the memory controller 14.

【0093】メモリコントローラ14に送られてきたリ
クエストがライトなら、アドレシングモードに従って、
スタートアドレスで指定されたアドレスからバイトカウ
ントで指定されるデータ分のデータがメモリ15に書き
込まれる。
If the request sent to the memory controller 14 is a write, according to the addressing mode,
Data corresponding to the data designated by the byte count is written in the memory 15 from the address designated by the start address.

【0094】メモリコントローラ14に送られてきたリ
クエストがリードなら、アドレシングモードに従って、
スタートアドレスで指定されたアドレスからバイトカウ
ントで指定されるデータ分のデータがメモリ15から読
み出される。
If the request sent to the memory controller 14 is a read, according to the addressing mode,
Data corresponding to the data specified by the byte count is read from the memory 15 from the address specified by the start address.

【0095】メモリ15から読み出されたデータは、メ
モリコントローラ14に送られる。そして、このデータ
は、メモリコントローラ14で、ヘッダのワードと、数
ワードの書き込みデータと、エンドオブパケットとから
なるパケットにパケット化され、FIFOメモリ24に
蓄積される。FIFOメモリ24の出力がメモリバス1
0のバス10Bを介して、クライアントデバイス11、
12、13に送られる。
The data read from the memory 15 is sent to the memory controller 14. Then, this data is packetized by the memory controller 14 into a packet including a word of the header, write data of several words, and an end of packet, and is stored in the FIFO memory 24. The output of the FIFO memory 24 is the memory bus 1
0 through the bus 10B, the client device 11,
It is sent to 12, 13.

【0096】ここで、メモリバス10に転送されるワー
ドのクロックと、メモリコントローラ14によりメモリ
15がアクセスされるワードのクロックとは非同期にな
っている。FIFOメモリ23及びFIFOメモリ24
がメモリバス10に転送されるワードのクロックと、メ
モリコントローラ14によりメモリ15がアクセスされ
るワードのクロックとの周波数の違いを吸収するバッフ
ァとなっている。
The word clock transferred to the memory bus 10 and the word clock accessed by the memory controller 14 to the memory 15 are asynchronous with each other. FIFO memory 23 and FIFO memory 24
Is a buffer that absorbs the difference in frequency between the word clock transferred to the memory bus 10 and the word clock accessed by the memory controller 14 to the memory 15.

【0097】しかしながら、仮に、メモリバス10に転
送されるワードのクロックの周波数の方が、メモリコン
トローラ14によりメモリ15がアクセスされるワード
のクロックの周波数より高いとすると、クライアントデ
バイス11、12、13からメモリバス10の送信バス
10Aを介して送られてくるワードがFIFOメモリ2
3に貯まり、FIFOメモリ23がオーバーフローを起
こすことになる。
However, if the frequency of the clock of the word transferred to the memory bus 10 is higher than the frequency of the clock of the word accessed by the memory controller 14 to the memory 15, the client devices 11, 12, 13 are assumed. The word sent from the memory bus 10 via the transmission bus 10A is the FIFO memory 2
3, and the FIFO memory 23 overflows.

【0098】このため、FIFOメモリ23の残量を常
に監視し、FIFOメモリ23がオーバーフローを起こ
しそうになったら、アービタ16にストップ信号を送
り、バスの調停を停止させ、クライアントデバイス1
1、12、13からのリクエストが送信されないように
することが必要である。
Therefore, the remaining amount of the FIFO memory 23 is constantly monitored, and when the FIFO memory 23 is about to overflow, a stop signal is sent to the arbiter 16 to stop bus arbitration, and the client device 1
It is necessary to prevent requests from 1, 12, and 13 from being sent.

【0099】そこで、FIFOメモリ残量モニタ25が
設けられる。FIFOメモリ残量モニタ25により、F
IFOメモリ23の残量と所定のしきい値とが比較され
る。FIFOメモリ残量モニタ25で、FIFOメモリ
23の残量が所定のしきい値以下になったことが検出さ
れると、FIFOメモリ残量モニタ25からストップ信
号が出力される。このストップ信号がアービタ16に送
られる。アービタ16は、FIFOメモリ残量モニタ2
5からストップ信号が送られてきたら、リクエストの調
停を中止する。これにより、クライアントデバイス1
1、12、13のメモリ15へのアクセス要求が止めら
れる。
Therefore, a FIFO memory remaining amount monitor 25 is provided. With the FIFO memory remaining amount monitor 25, F
The remaining amount of the IFO memory 23 is compared with a predetermined threshold value. When the FIFO memory remaining amount monitor 25 detects that the remaining amount of the FIFO memory 23 becomes less than or equal to a predetermined threshold value, the FIFO memory remaining amount monitor 25 outputs a stop signal. This stop signal is sent to the arbiter 16. The arbiter 16 is a FIFO memory remaining amount monitor 2
When a stop signal is sent from 5, the request arbitration is stopped. Thereby, the client device 1
The access request to the memory 15 of 1, 12, 13 is stopped.

【0100】しかしながら、このように、FIFOメモ
リ23の残量を常に監視し、FIFOメモリ23がオー
バーフローを起こしそうになったら、アービタ16にス
トップ信号を送るような処理だけでは、メモリバスのレ
イテンシを保証できない。
However, as described above, the remaining amount of the FIFO memory 23 is constantly monitored, and when the FIFO memory 23 is about to overflow, the latency of the memory bus is reduced only by sending a stop signal to the arbiter 16. I cannot guarantee.

【0101】つまり、クライアントデバイス11、1
2、13がメモリバス10にリードリクエストを送信す
ると、このリードリクエストに対応するリードデータが
メモリ15から読み出され、クライアントデバイス1
1、12、13に返されてくる。図11では、クライア
ントデバイス11がリードリクエストのパケットP1を
送信すると、それから少し遅れて、このリードリクエス
トのパケットP1に応じたリードデータのパケットP1
1が返されてくる。また、クライアントデバイス12が
リードリクエストのパケットP2を送信すると、それか
ら少し遅れて、このリードリクエストのパケットP2に
応じたリードデータのパケットP12が返されてくる。
このときの処理が所定のレイテンシ以内に終了すること
を保証する必要がある。
That is, the client devices 11, 1
When 2 and 13 send a read request to the memory bus 10, the read data corresponding to this read request is read from the memory 15, and the client device 1
It will be returned to 1, 12, and 13. In FIG. 11, when the client device 11 transmits the read request packet P1, the read data packet P1 corresponding to the read request packet P1 is slightly delayed.
1 is returned. Further, when the client device 12 transmits the read request packet P2, a read data packet P12 corresponding to the read request packet P2 is returned after a slight delay.
It is necessary to guarantee that the processing at this time is completed within a predetermined latency.

【0102】ライトのリクエストの場合には、ライトの
ヘッダのワードに続いて、ライトデータのワードが続き
(図8A参照)、書き込みにかかる時間は、ライトのヘ
ッダのワードに続くライトデータのワードに対応する。
In the case of a write request, the write header word is followed by the write data word (see FIG. 8A), and the write time is the write data word following the write header word. Correspond.

【0103】ところが、ライトのリクエストの場合に
は、ヘッダのワードのみが送られ(図8B参照)、この
ヘッダのワードがFIFOメモリ23に書き込まれる。
大きなデータを読み出す場合も小さなデータを読み出す
場合も、送られるリクエストはヘッダのワードのみであ
るため、リードのリクエストの場合には、FIFOメモ
リ123の蓄積量と処理時間との間に関連性がなくな
る。したがって、FIFOメモリ123の残量だけで
は、バスのレイテンシを必ずしも保証できない。
However, in the case of a write request, only the header word is sent (see FIG. 8B), and this header word is written in the FIFO memory 23.
Whether reading large data or small data, the request sent is only the word in the header. Therefore, in the case of a read request, there is no relation between the storage amount of the FIFO memory 123 and the processing time. . Therefore, the latency of the bus cannot always be guaranteed only by the remaining amount of the FIFO memory 123.

【0104】そこで、この発明の実施の形態では、FI
FOメモリ23に蓄積されているリクエストのアクセス
カウント数の総和をモニタするアクセス数総和カウント
モニタ回路26が設けられる。
Therefore, in the embodiment of the present invention, FI
An access count sum count monitor circuit 26 for monitoring the sum of the access count counts of the requests stored in the FO memory 23 is provided.

【0105】すなわち、図4に示したように、ヘッダの
ワードには、バイトカウント(ByteCount)が含められ
ている。このバイトカウント(Byte Count)の値がメモ
リ15へのアクセス数を反映している。
That is, as shown in FIG. 4, the word of the header includes a byte count (ByteCount). The value of this byte count reflects the number of accesses to the memory 15.

【0106】アクセス数総和カウントモニタ回路26
で、FIFOメモリ23に蓄積されているヘッダのバイ
トカウントの総和が求められる。そして、このヘッダの
バイトカウントの総和が所定のしきい値以上になると、
アクセス数総和カウントモニタ回路26からストップ信
号が出力される。
Access count total count monitor circuit 26
Then, the sum of the byte counts of the headers stored in the FIFO memory 23 is obtained. Then, when the sum of byte counts of this header exceeds a predetermined threshold value,
A stop signal is output from the total access count monitor circuit 26.

【0107】このストップ信号がアクセス数総和カウン
トモニタ回路26からアービタ16に供給される。アー
ビタ16は、FIFOメモリ残量モニタ25からストッ
プ信号が送られてきたら、リクエストの調停を中止す
る。これにより、クライアントデバイス11、12、1
3のメモリ15へのアクセスが制限される。
This stop signal is supplied from the total access count monitor circuit 26 to the arbiter 16. When the stop signal is sent from the FIFO memory remaining amount monitor 25, the arbiter 16 stops the arbitration of the request. As a result, the client devices 11, 12, 1
Access to the memory 15 of No. 3 is restricted.

【0108】このように、この発明の実施の形態では、
FIFOメモリ23に蓄積されているリクエストのアク
セスカウント数の総和をモニタするアクセス数総和カウ
ントモニタ回路26が設けられ、アクセスカウントの総
和が所定のしきい値以上になると、アクセス数総和カウ
ントモニタ回路26からストップ信号がアービタ16に
送られ、リクエストの調停が中止されるため、メモリバ
ス10のレイテンシを保証できる。
As described above, in the embodiment of the present invention,
An access count sum count monitor circuit 26 for monitoring the sum of access count counts of requests accumulated in the FIFO memory 23 is provided. When the access count sum exceeds a predetermined threshold value, the access count sum count monitor circuit 26 is provided. Since the stop signal is sent from the arbiter 16 to the arbiter 16 and the arbitration of the request is stopped, the latency of the memory bus 10 can be guaranteed.

【0109】なお、ここでは、アクセス数の総和をヘッ
ダのバイトカウントの総和としているが、バイトカウン
トの総和に限るものではない。アクセス数をワードカウ
ントで指定するシステムでは、ワードカウントの総和を
求めることになる。
Although the sum of the number of accesses is the sum of the byte counts of the header here, it is not limited to the sum of the byte counts. In a system in which the number of accesses is designated by word count, the sum of word counts is obtained.

【0110】図12は、アクセス数総和カウントモニタ
回路26の構成を示すものである。図12において、送
信バス10Aを介して送られてきたリクエストのワード
は、FIFOメモリ23に書き込まれると共に、アクセ
ス数総和カウントモニタ回路26のバイトカウント検出
部51、フラグ検出部52、FIFOメモリ残量カウン
タ53に供給される。
FIG. 12 shows the configuration of the total access count monitor circuit 26. In FIG. 12, the word of the request sent via the transmission bus 10A is written in the FIFO memory 23, and at the same time, the byte count detection unit 51, the flag detection unit 52, and the FIFO memory remaining amount of the access count total count monitor circuit 26. It is supplied to the counter 53.

【0111】バイトカウント検出部51は、リクエスト
のワードがヘッダであったときに、このヘッダのバイト
カウントの値(図4参照)を検出するものである。この
バイトカウントの値は、バイトカウント総和カウンタ5
4に供給されると共に、パケットデータ保持レジスタ5
5に供給される。
The byte count detector 51 detects the byte count value of this header (see FIG. 4) when the word of the request is a header. This byte count value is the byte count sum counter 5
4 and packet data holding register 5
5 is supplied.

【0112】パケットデータ保持レジスタ55は、シフ
トレジスタの構成となっている。バイトカウント検出部
51でリクエストのワードがヘッダのバイトカウントの
値C0、C1、…が検出されると、この検出された各ヘ
ッダのバイトカウントの値C0、C1、…がパケットデ
ータ保持レジスタ55に順に蓄積される。
The packet data holding register 55 has a shift register configuration. When the byte count detection unit 51 detects the byte count values C0, C1, ... Of the header in the request word, the detected byte count values C0, C1, ... Of each header are stored in the packet data holding register 55. It is accumulated in order.

【0113】バイトカウント総和カウンタ54は、リク
エストのワードのヘッダのバイトカウントの値の総和を
求めるものである。このバイトカウント総和カウンタ5
4で、バイトカウント検出部51でリクエストのワード
がヘッダのバイトカウントの値が検出されると、それま
での値に、検出されたヘッダのバイトカウントの値が加
算される。
The byte count sum counter 54 calculates the sum of the byte count values of the header of the request word. This byte count sum counter 5
In step 4, when the byte count detection unit 51 detects the byte count value of the header of the request word, the detected byte count value of the header is added to the values up to that point.

【0114】また、後に説明するように、FIFOメモ
リ23からヘッダのワードが読み出されると、シフトレ
ジスタの構成とされたパケットデータ保持レジスタ55
が右にシフトされ、パケットデータ保持レジスタ55か
ら、各ヘッダのバイトカウントの値のうち最も先に蓄積
されていた値C0が読み出される。パケットデータ保持
レジスタ55からバイトカウントの値が読み出される
と、パケットデータ保持レジスタ55から読み出された
バイトカウントの値C0だけ、バイトカウント総和カウ
ンタ54値が減算される。
Further, as will be described later, when the word of the header is read from the FIFO memory 23, the packet data holding register 55 configured as a shift register.
Is shifted to the right, and the value C0, which has been stored first among the byte count values of each header, is read from the packet data holding register 55. When the byte count value is read from the packet data holding register 55, the byte count sum counter 54 value is subtracted by the byte count value C0 read from the packet data holding register 55.

【0115】フラグ検出部52は、各ワードの先頭の2
ビットのフラグ(図2参照)を検出し、入力されたワー
ドがヘッダか、データ又はエンドオブパケットかを判断
している。フラグ検出部52の出力がFIFOメモリイ
メージレジスタ56に供給される。
The flag detecting section 52 uses the leading two bits of each word.
The bit flag (see FIG. 2) is detected to determine whether the input word is a header, data or end of packet. The output of the flag detector 52 is supplied to the FIFO memory image register 56.

【0116】FIFOメモリイメージレジスタ56は、
FIFOメモリ23の容量に対応する段数のシフトレジ
スタの構成とされている。FIFOメモリイメージレジ
スタ56には、入力されたワードがヘッダの場合には
「1」が書き込まれ、データ又はエンドオブパケットの
場合には「0」が書き込まれる。
The FIFO memory image register 56 is
The shift register has the number of stages corresponding to the capacity of the FIFO memory 23. In the FIFO memory image register 56, "1" is written when the input word is a header, and "0" is written when the input word is data or end of packet.

【0117】FIFOメモリ残量カウンタ53は、入力
されたワード数から、FIFOメモリ23の残量を推定
するものである。
The FIFO memory remaining capacity counter 53 estimates the remaining capacity of the FIFO memory 23 from the number of input words.

【0118】すなわち、FIFOメモリ残量カウンタ5
3は、送信バス10Aを介して入力されたワード数をカ
ウントしており、FIFOメモリ23の総容量から、カ
ウントされたワード数を減算することで、FIFOメモ
リ23の残量を推定している。また、FIFOメモリ読
み出し判定部58の出力から、FIFOメモリ23の1
ワードの読み出しが判定されると、FIFOメモリの残
量の推定値が1ワード分増加される。
That is, the FIFO memory remaining amount counter 5
Reference numeral 3 counts the number of words input via the transmission bus 10A, and estimates the remaining amount of the FIFO memory 23 by subtracting the counted number of words from the total capacity of the FIFO memory 23. . In addition, from the output of the FIFO memory read determination unit 58, 1 of the FIFO memory 23
When the word read is determined, the estimated value of the remaining capacity of the FIFO memory is increased by one word.

【0119】FIFOメモリ残量カウンタ53の出力が
FIFOメモリ残量比較部57に供給される。また、F
IFOメモリ残量比較部57には、FIFOメモリ23
から、実際のFIFOメモリ23の残量が供給される。
The output of the FIFO memory remaining amount counter 53 is supplied to the FIFO memory remaining amount comparing unit 57. Also, F
The IFO memory remaining amount comparison unit 57 includes the FIFO memory 23.
From, the actual remaining amount of the FIFO memory 23 is supplied.

【0120】FIFOメモリ残量比較部57で、FIF
Oメモリ残量カウンタ53で検出されたFIFOメモリ
23の残量の推定値と、FIFOメモリ23から出力さ
れたFIFOメモリ23の実際の残量とが比較される。
FIFOメモリ残量比較部57の出力がFIFOメモリ
読み出し判定部58に供給される。FIFOメモリ読み
出し判定部58で、FIFOメモリ残量比較部57の出
力から、FIFOメモリ23の読み出しがあったか否か
が判定される。
In the FIFO memory remaining amount comparison unit 57, the FIFO
The estimated value of the remaining amount of the FIFO memory 23 detected by the O memory remaining amount counter 53 is compared with the actual remaining amount of the FIFO memory 23 output from the FIFO memory 23.
The output of the FIFO memory remaining amount comparison unit 57 is supplied to the FIFO memory read determination unit 58. The FIFO memory read determination unit 58 determines from the output of the FIFO memory remaining amount comparison unit 57 whether the FIFO memory 23 has been read.

【0121】すなわち、FIFOメモリ23には、送信
バス10Aを介して、クライアントデバイス11、1
2、13から送られてきたリクエストのワードが蓄積さ
れる。また、FIFOメモリ残量カウンタ53は、送信
バス10Aを介して入力されたリクエストのワード数を
カウントし、FIFOメモリ23の総容量から減算して
いる。したがって、FIFOメモリ23の読み出しが発
生していなければ、FIFOメモリ残量カウンタ53で
検出されるFIFOメモリ23の残量の推定値と、FI
FOメモリ23から出力されるFIFOメモリ23の実
際の残量とは一致するはずである。
That is, the client devices 11, 1 are stored in the FIFO memory 23 via the transmission bus 10A.
The words of the request sent from 2 and 13 are accumulated. The FIFO memory remaining amount counter 53 counts the number of words of the request input via the transmission bus 10A and subtracts it from the total capacity of the FIFO memory 23. Therefore, if the reading of the FIFO memory 23 has not occurred, the estimated value of the remaining amount of the FIFO memory 23 detected by the FIFO memory remaining amount counter 53 and the FI
It should match the actual remaining amount of the FIFO memory 23 output from the FO memory 23.

【0122】これに対して、FIFOメモリ23の読み
出しが発生し、FIFOメモリ23の出力がメモリコン
トローラ14に送られると、データが読み出された分だ
け、FIFOメモリ23の実際の残量は多くなるが、F
IFOメモリ残量カウンタ53で検出されるFIFOメ
モリ23の残量の推定値はそのままである。
On the other hand, when the reading of the FIFO memory 23 occurs and the output of the FIFO memory 23 is sent to the memory controller 14, the actual remaining amount of the FIFO memory 23 is large as much as the data is read. But F
The estimated value of the remaining amount of the FIFO memory 23 detected by the IFO memory remaining amount counter 53 remains unchanged.

【0123】このことから、FIFOメモリ残量カウン
タ53で検出されたFIFOメモリ23の残量の推定値
と、FIFOメモリ23から出力されたFIFOメモリ
23の実際の残量とを比較し、FIFOメモリ23から
出力されたFIFOメモリ23の実際の残量の方が、F
IFOメモリ残量カウンタ53で検出されたFIFOメ
モリ23の残量の推定値よりも大きい場合には、FIF
Oメモリ23の読み出しが発生したと判断できる。FI
FOメモリ読み出し判定部58は、FIFOメモリ残量
カウンタ53で検出されたFIFOメモリ23の残量の
推定値と、FIFOメモリ23から出力されたFIFO
メモリ23の実際の残量との比較結果から、FIFOメ
モリ23の読み出しが発生したことを判断している。
From this, the estimated value of the remaining amount of the FIFO memory 23 detected by the FIFO memory remaining amount counter 53 and the actual remaining amount of the FIFO memory 23 output from the FIFO memory 23 are compared, and the FIFO memory The actual remaining amount of the FIFO memory 23 output from the
If it is larger than the estimated value of the remaining amount of the FIFO memory 23 detected by the IFO memory remaining amount counter 53, the FIFO
It can be determined that the reading of the O memory 23 has occurred. FI
The FO memory read determination unit 58 uses the estimated value of the remaining amount of the FIFO memory 23 detected by the FIFO memory remaining amount counter 53 and the FIFO output from the FIFO memory 23.
From the comparison result with the actual remaining amount of the memory 23, it is determined that the reading of the FIFO memory 23 has occurred.

【0124】FIFOメモリ読み出し判定部58の出力
は、FIFOメモリ残量カウンタ53に供給されると共
に、FIFOメモリイメージレジスタ56に供給され
る。
The output of the FIFO memory read determination unit 58 is supplied to the FIFO memory remaining amount counter 53 and the FIFO memory image register 56.

【0125】FIFOメモリ読み出し判定部58の出力
から、FIFOメモリ23から1ワードの読み出しが発
生したと判断されたら、FIFOメモリ残量カウンタ5
3のカウント値が1ワード分減少され、FIFOメモリ
23残量の推定値が1ワード増加され、FIFOメモリ
残量カウンタ53で求められるFIFOメモリ23の推
定値と、FIFOメモリ23から出力されるFIFOメ
モリ23の実際の残量とが一致される。
If it is determined from the output of the FIFO memory read determination unit 58 that one word has been read from the FIFO memory 23, the FIFO memory remaining amount counter 5
The count value of 3 is decreased by 1 word, the estimated value of the remaining amount of the FIFO memory 23 is increased by 1 word, the estimated value of the FIFO memory 23 obtained by the FIFO memory remaining amount counter 53, and the FIFO output from the FIFO memory 23. The actual remaining amount in the memory 23 is matched.

【0126】また、FIFOメモリ読み出し判定部58
の出力から、FIFOメモリ23から1ワードの読み出
しが発生したと判断されると、シフトレジスタの構成と
されているFIFOメモリイメージレジスタ56が1ビ
ット右にシフトされる。そして、FIFOメモリイメー
ジレジスタ56から、最も先に蓄積されていた値が読み
出される。このFIFOメモリイメージレジスタ56の
出力がヘッダ/データ判定部59に供給される。
Further, the FIFO memory read determination unit 58
If it is determined from the output of 1 that one word has been read from the FIFO memory 23, the FIFO memory image register 56 configured as a shift register is shifted to the right by 1 bit. Then, the earliest stored value is read from the FIFO memory image register 56. The output of the FIFO memory image register 56 is supplied to the header / data determination unit 59.

【0127】前述したように、FIFOメモリイメージ
レジスタ56には、入力されたワードがヘッダの場合に
は「1」が書き込まれ、データ又はエンドオブパケット
の場合には「0」が書き込まれている。FIFOメモリ
読み出し判定部58の出力から、FIFOメモリ23か
ら1ワードの読み出しが発生したことが検出されると、
FIFOメモリイメージレジスタ56から、最も先に蓄
積されていた値が読み出される。この値は、FIFOメ
モリ23から読み出されたワードが、ヘッダか、データ
又はエンドオブパケットかを示している。
As described above, "1" is written in the FIFO memory image register 56 when the input word is the header, and "0" is written when it is the data or the end of packet. When it is detected from the output of the FIFO memory read determination unit 58 that one word has been read from the FIFO memory 23,
The earliest stored value is read from the FIFO memory image register 56. This value indicates whether the word read from the FIFO memory 23 is a header, data, or end of packet.

【0128】ヘッダ/データ判定部59は、FIFOメ
モリイメージレジスタ56からの出力が「0」か「1」
かにより、FIFOメモリ23から読み出されたワード
が、ヘッダか、データ又はエンドオブパケットかを判断
している。このヘッダ/データ判定部59の出力がパケ
ットデータ保持レジスタ55に供給される。
The header / data determination unit 59 outputs the output from the FIFO memory image register 56 to "0" or "1".
Depending on whether or not the word read from the FIFO memory 23 is a header, data or end of packet. The output of the header / data determination unit 59 is supplied to the packet data holding register 55.

【0129】FIFOメモリイメージレジスタ56の出
力が「1」で、FIFOメモリ23から読み出されたワ
ードがヘッダであると判断された場合には、パケットデ
ータ保持レジスタ55が1ビット右にシフトされ、パケ
ットデータ保持レジスタ55から、各ヘッダのバイトカ
ウントの値のうち最も先に蓄積されていた値C0が読み
出される。この値C0は、FIFOメモリ23から読み
出されたワードがヘッダである場合に、そのヘッダのバ
イトカウントの値を示している。パケットデータ保持レ
ジスタ55からバイトカウントの値C0が読み出される
と、バイトカウント総和カウンタ54のそれまでの値か
ら、パケットデータ保持レジスタ55から読み出された
バイトカウントの値C0が減算される。
When the output of the FIFO memory image register 56 is "1" and it is determined that the word read from the FIFO memory 23 is the header, the packet data holding register 55 is shifted to the right by 1 bit, From the packet data holding register 55, the value C0 stored first among the byte count values of each header is read. This value C0 indicates the value of the byte count of the header when the word read from the FIFO memory 23 is the header. When the byte count value C0 is read from the packet data holding register 55, the byte count value C0 read from the packet data holding register 55 is subtracted from the previous values of the byte count sum counter 54.

【0130】このように、バイトカウント総和カウンタ
54の値は、メモリバス10の送信バス10Aを介して
ヘッダのワードが入力されると、そのヘッダのバイトカ
ウントの値だけ加算され、FIFOメモリ23からヘッ
ダのワードがメモリコントローラ14に読み出される
と、その読み出されたヘッダのバイトカウントの値だけ
減算される。したがって、バイトカウント総和カウンタ
54の値は、FIFOメモリ23に蓄積されているデー
タのうちのヘッダにあるバイトカウントの値の総和と等
しくなる。
Thus, when the word of the header is input via the transmission bus 10A of the memory bus 10, the value of the byte count sum counter 54 is added by the value of the byte count of the header, and the value is read from the FIFO memory 23. When the word of the header is read by the memory controller 14, the value of the byte count of the read header is subtracted. Therefore, the value of the byte count sum counter 54 becomes equal to the sum of the byte count values in the header of the data stored in the FIFO memory 23.

【0131】バイトカウント総和カウンタ54の出力が
ストップ信号発生部60に供給される。ストップ信号発
生部60には、所定のしきい値が与えられる。ストップ
信号発生部60で、バイトカウント総和カウンタ54の
出力と所定のしきい値とが比較され、バイトカウント総
和カウンタ54の出力が所定のしきい値を越えると、ス
トップ信号発生部60からストップ信号が出力される。
The output of the byte count sum counter 54 is supplied to the stop signal generator 60. A predetermined threshold value is given to the stop signal generator 60. The stop signal generator 60 compares the output of the byte count sum counter 54 with a predetermined threshold value, and when the output of the byte count sum counter 54 exceeds the predetermined threshold, the stop signal generator 60 outputs a stop signal. Is output.

【0132】以上説明したように、この発明の実施の形
態では、FIFOメモリ23に蓄積されているリクエス
トのアクセスカウント数(バイトカウント)の総和をモ
ニタするアクセス数総和カウントモニタ回路26が設け
られる。そして、FIFOメモリ23に蓄積されている
ヘッダのワードに含まれているアクセス数の総和がしき
い値以上になったら、アービタ16にストップ信号が送
られ、クライアントデバイス11、12、13からのメ
モリ15へのアクセスが制限される。これにより、リー
ドの場合でもライトの場合でも、デバイスがリクエスト
を送ってから処理が行われるまでのレイテンシを保証す
ることができる。
As described above, in the embodiment of the present invention, the total access count counter monitor circuit 26 for monitoring the total access count (byte count) of the requests stored in the FIFO memory 23 is provided. Then, when the total number of accesses included in the words of the header stored in the FIFO memory 23 becomes equal to or more than the threshold value, a stop signal is sent to the arbiter 16 and the memory from the client devices 11, 12, 13 is sent. Access to 15 is restricted. As a result, it is possible to guarantee the latency from when the device sends the request to when the processing is performed, regardless of whether it is a read or a write.

【0133】また、この発明の実施の形態では、入力さ
れるワードのカウント値から推定されるFIFOメモリ
23の残量と、FIFOメモリ23の実際の残量とを比
較部57で比較し、この比較値からFIFOメモリ23
に読み出しがあったことを検出している。このような構
成では、メモリバス10からFIFOメモリ23に送ら
れてくるワードのクロック(FIFOメモリ23の入力
クロック)と、メモリコントローラ14からメモリ15
をアクセスするときのワードのクロック(FIFOメモ
リ23の出力クロック)との周波数関係に依存しない構
成とすることができる。
Further, in the embodiment of the present invention, the comparison unit 57 compares the remaining amount of the FIFO memory 23 estimated from the count value of the input word with the actual remaining amount of the FIFO memory 23. From the comparison value to the FIFO memory 23
It has detected that there was a read. In such a configuration, the word clock (input clock of the FIFO memory 23) sent from the memory bus 10 to the FIFO memory 23 and the memory controller 14 to the memory 15 are used.
Can be configured to be independent of the frequency relationship with the word clock (the output clock of the FIFO memory 23) when accessing.

【0134】つまり、FIFOメモリ23内に存在する
パケットの処理にかかるクロック数を管理する方法とし
ては、FIFOメモリ12の入力側及び出力側で、ヘッ
ダのワードに含まれているアクセス数を常に監視し、ヘ
ッダが入力されたらそのアクセス数を加算し、ヘッダが
出力されたらそのアクセス数を減算するようにして、ア
クセス数の総和を求めるようにすることが考えられる。
そのためには、FIFOメモリ23の入力側と出力側に
それぞれモニタ回路を持ち、これらの回路の出力に応じ
て、カウンタを増減させるようにする必要がある。FI
FOメモリ23の入力側と出力側とが同一のクロックな
ら、そのような回路は実現できる。
That is, as a method of managing the number of clocks required to process the packets existing in the FIFO memory 23, the number of accesses included in the word of the header is constantly monitored on the input side and the output side of the FIFO memory 12. Then, when the header is input, the access count is added, and when the header is output, the access count is subtracted so as to obtain the total access count.
For that purpose, it is necessary to have a monitor circuit on each of the input side and the output side of the FIFO memory 23 and increase or decrease the counter according to the output of these circuits. FI
If the input side and the output side of the FO memory 23 have the same clock, such a circuit can be realized.

【0135】ところが、FIFOメモリ23の入力側と
出力側とで周波数が異なっていると、アクセス数の総和
を求めるカウンタを入力側に持つと、出力側でワードが
FIFOメモリ23から出力されたことを示す信号及び
そのアクセス数の値をクロック乗り換えを行って入力側
に伝える必要がある。ここで、FIFOメモリ23の入
力クロックと、FIFOメモリ23の出力クロックとの
周波数関係は、どちらが高速であるとは言えない。この
ように、双方のクロックの大小関係が分からないクロッ
クの乗せ換えは困難である。
However, if the input side and the output side of the FIFO memory 23 have different frequencies, if the input side has a counter for calculating the total number of accesses, the word is output from the FIFO memory 23 at the output side. It is necessary to change the clock signal and the value of the number of accesses thereof to the input side. Here, the frequency relationship between the input clock of the FIFO memory 23 and the output clock of the FIFO memory 23 cannot be said to be higher. As described above, it is difficult to replace clocks whose size relationship between the two clocks is unknown.

【0136】この実施の形態では、このようなクロック
の乗せ換えが不要なので、FIFOメモリ23の入力ク
ロックと、FIFOメモリ23の出力クロックとの周波
数関係に依存しない構成とすることができる。
In the present embodiment, since such clock replacement is unnecessary, it is possible to adopt a configuration that does not depend on the frequency relationship between the input clock of the FIFO memory 23 and the output clock of the FIFO memory 23.

【0137】なお、上述の例では、画像処理チップのシ
ステムを構成する場合について説明したが、この発明
は、複数のクライアントで1つのリソースを共用するよ
うなシステムでは、同様に適用することが可能である。
In the above example, the case of configuring the image processing chip system has been described, but the present invention can be similarly applied to a system in which a plurality of clients share one resource. Is.

【0138】また、上述の実施の形態では、FIFOメ
モリ23に蓄積されているリクエストのアクセスカウン
ト数の総和をモニタするアクセス数総和カウントモニタ
回路26と、FIFOメモリ23の残量をモニタするF
IFOメモリ残量モニタ25とを設ける構成としている
が、アクセス数総和カウントモニタ回路26では、FI
FOメモリ23の残量がモニタされているので、FIF
Oメモリ残量モニタ25を特に設ける必要はない。アク
セス数総和カウントモニタ回路26で、FIFOメモリ
23に蓄積されているリクエストのアクセスカウント数
の総和と、FIFOメモリ23の残量とに応じて、スト
ップ信号が出力されるように構成しても良い。
Further, in the above-described embodiment, the access number total count monitor circuit 26 for monitoring the total access count number of the requests accumulated in the FIFO memory 23 and the F number for monitoring the remaining amount of the FIFO memory 23.
Although the IFO memory remaining amount monitor 25 is provided, in the access count total count monitor circuit 26, the FI
Since the remaining amount of the FO memory 23 is monitored,
It is not necessary to specifically provide the O memory remaining amount monitor 25. The access count sum count monitor circuit 26 may be configured to output a stop signal in accordance with the sum of the access count counts of the requests accumulated in the FIFO memory 23 and the remaining capacity of the FIFO memory 23. .

【0139】[0139]

【発明の効果】この発明によれば、アクセス総和カウン
トモニタ回路で、ヘッダのバイトカウントの総和が求め
られる。そして、このヘッダのバイトカウントの総和が
所定のしきい値以上になると、アクセス総和カウントモ
ニタ回路からストップ信号が出力される。このストップ
信号がアクセス総和カウントモニタ回路からアービタに
供給される。アービタは、FIFOメモリ残量モニタか
らストップ信号が送られてきたら、リクエストの調停を
中止する。これにより、クライアントデバイスのメモリ
へのアクセスが制限される。
According to the present invention, the sum of the byte counts of the header is obtained by the access sum total count monitor circuit. Then, when the sum of the byte counts of this header exceeds a predetermined threshold value, a stop signal is output from the access sum total count monitor circuit. This stop signal is supplied from the access sum count monitor circuit to the arbiter. The arbiter stops the arbitration of the request when the stop signal is sent from the FIFO memory remaining amount monitor. This limits access to the memory of the client device.

【0140】このように、FIFOメモリに蓄積されて
いるリクエストのアクセスカウント数の総和をモニタす
るアクセス総和カウントモニタ回路が設けられ、アクセ
スカウントの総和が所定のしきい値以上になると、アク
セス総和カウントモニタ回路からストップ信号がアービ
タに送られ、リクエストの調停が中止されるため、メモ
リバスのレイテンシを保証できる。
As described above, the access sum total count monitor circuit for monitoring the sum total of the access count numbers of the requests stored in the FIFO memory is provided, and when the sum total of the access counts becomes equal to or more than a predetermined threshold value, the access sum total count is counted. Since the monitor circuit sends a stop signal to the arbiter to stop the arbitration of the request, the latency of the memory bus can be guaranteed.

【0141】また、この発明では、入力されるワードの
カウント値から推定されるFIFOメモリの残量と、F
IFOメモリの実際の残量とを比較し、この比較値から
FIFOメモリに読み出しがあったことを検出してい
る。このような構成では、メモリバスからFIFOメモ
リに送られてくるワードのクロックと、メモリコントロ
ーラからメモリをアクセスするときのワードのクロック
との周波数関係に依存しない構成とすることができる。
Further, according to the present invention, the remaining amount of the FIFO memory estimated from the count value of the input word and the F
The actual remaining amount of the IFO memory is compared, and it is detected from this comparison value that the FIFO memory has been read. With such a configuration, it is possible to adopt a configuration that does not depend on the frequency relationship between the word clock sent from the memory bus to the FIFO memory and the word clock used when the memory is accessed from the memory controller.

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

【図1】この発明が適用された複数のクライアントデバ
イスとリソースとからなるシステムの一例のブロック図
である。
FIG. 1 is a block diagram of an example of a system including a plurality of client devices and resources to which the present invention is applied.

【図2】バスに転送されるパケットの各ワードの説明に
用いる略線図である。
FIG. 2 is a schematic diagram used for explaining each word of a packet transferred to a bus.

【図3】バスに転送されるパケットのデータの説明に用
いる略線図である。
FIG. 3 is a schematic diagram used to describe packet data transferred to a bus.

【図4】バスに転送されるパケットのヘッダの説明に用
いる略線図である。
FIG. 4 is a schematic diagram used to describe a header of a packet transferred to a bus.

【図5】アドレシングモードの一例の説明に用いる略線
図である。
FIG. 5 is a schematic diagram used to describe an example of an addressing mode.

【図6】アドレシングモードの一例の説明に用いるタイ
ミング図である。
FIG. 6 is a timing diagram used to describe an example of an addressing mode.

【図7】アドレシングモードの一例の説明に用いる略線
図である。
FIG. 7 is a schematic diagram used to describe an example of an addressing mode.

【図8】送信バスに送られるパケットの説明に用いる略
線図である。
FIG. 8 is a schematic diagram used to describe a packet sent to a transmission bus.

【図9】受信バスに送られるパケットの説明に用いる略
線図である。
FIG. 9 is a schematic diagram used to describe a packet sent to a reception bus.

【図10】この発明が適用された複数のクライアントデ
バイスとリソースとからなるシステムの一例の説明に用
いるブロック図である。
FIG. 10 is a block diagram used for explaining an example of a system including a plurality of client devices and resources to which the present invention is applied.

【図11】この発明が適用された複数のクライアントデ
バイスとリソースとからなるシステムの一例の説明に用
いるタイミング図である。
FIG. 11 is a timing diagram used for explaining an example of a system including a plurality of client devices and resources to which the present invention is applied.

【図12】アクセス数総和カウントモニタ回路の一例の
ブロック図である。
FIG. 12 is a block diagram of an example of an access count sum count monitor circuit.

【図13】従来の複数のクライアントデバイスとリソー
スとからなるシステムの一例のブロック図である。
FIG. 13 is a block diagram of an example of a conventional system including a plurality of client devices and resources.

【図14】従来の複数のクライアントデバイスとリソー
スとからなるシステムの他の例のブロック図である。
FIG. 14 is a block diagram of another example of a conventional system including a plurality of client devices and resources.

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

10・・・メモリバス、10A・・・送信バス、10B
・・・受信バス、 11、12、13・・・クライアン
トデバイス、14・・・メモリコントローラ、15・・
・メモリ、16・・・アービタ、21A〜21C、22
A〜22C、23、24・・・FIFOメモリ、25・
・・FIFOメモリ残量モニタ、26・・・アクセス数
総和カウントモニタ回路、51・・・バイトカウント検
出部、52・・・フラグ検出部、53・・・FIFOメ
モリ残量カウンタ、54・・・バイトカウント総和カウ
ンタ、55・・・パケットデータ保持レジスタ、56・
・・FIFOメモリイメージレジスタ、57・・・残量
比較部、60・・・ストップ信号発生部
10 ... Memory bus, 10A ... Transmission bus, 10B
... Reception bus, 11, 12, 13 ... Client device, 14 ... Memory controller, 15 ...
・ Memory, 16 ... Arbiter, 21A-21C, 22
A to 22C, 23, 24 ... FIFO memory, 25 ...
..FIFO memory remaining amount monitor, 26 ... Total number of access count monitor circuit, 51 ... Byte count detecting unit, 52 ... Flag detecting unit, 53 ... FIFO memory remaining amount counter, 54 ... Byte count sum counter, 55 ... Packet data holding register, 56.
..FIFO memory image register, 57 ... Remaining amount comparing section, 60 ... Stop signal generating section

Claims (10)

【特許請求の範囲】[Claims] 【請求項1】 複数のクライアントデバイスと、 上記複数のクライアントデバイスで共用されるリソース
と、 上記リソースを制御するリソース制御手段と、 上記複数のクライアントデバイスと上記リソースとの間
でデータを送受信するバスと、 上記各クライアントデバイスから上記バスを介して転送
されてきたリクエストを一旦蓄積し、上記リソース制御
手段に読み出すバッファ手段と、 上記バッファ手段に蓄積されている上記リクエストに含
まれるアクセスカウント情報を抽出し、上記バッファ手
段に蓄積されている上記リクエストに含まれるアクセス
カウント情報の総和を求めるアクセスカウント数総和算
出手段と、 上記バッファ手段に蓄積されている上記リクエストに含
まれるアクセスカウント情報の総和が所定のしきい値を
越えたら、上記クライエントデバイスのアクセスを制限
するようにする手段とを備えるようにしたデータ転送シ
ステム。
1. A plurality of client devices, resources shared by the plurality of client devices, resource control means for controlling the resources, and a bus for transmitting and receiving data between the plurality of client devices and the resources. And buffer means for temporarily storing the request transferred from each of the client devices via the bus and reading it to the resource control means, and extracting access count information included in the request stored in the buffer means Then, the sum of the access count number total calculation means for obtaining the sum of the access count information contained in the request stored in the buffer means and the sum of the access count information contained in the request stored in the buffer means is predetermined. Exceeded the threshold of And a means for restricting access to the client device.
【請求項2】 アクセスカウント数総和算出手段は、 上記バッファ手段に蓄積されているリクエストのアクセ
スカウント情報の総和をカウントする総和カウンタと、 上記バスから上記バッファ手段にリクエストが入力され
たら、上記リクエストからアクセスカウントの値を検出
し、上記アクセスカウントの値をそれまでの上記総和カ
ウンタの値に加算する手段と、 上記バスからリクエストが入力されたら、上記リクエス
トのワードからアクセスカウントの値を検出し、上記ア
クセスカウントの値を保持するデータ保持手段と、 上記バスから入力されるデータ量のカウント値から推定
される上記バッファの残量の推定値と上記バッファ手段
の実際の残量とを比較して、上記バッファ手段からのデ
ータの読み出しがあったとことを判断するバッファ読み
出し判断手段と、 上記バッファ手段からリクエストのワードが読み出され
たと判断されたら、上記バッファ手段から読み出された
リクエストのワードのアクセスカウントの値に対応する
値を上記データ保持手段から読み出し、上記データ保持
手段から読み出された値を上記総和カウンタの値から減
算する手段とからなる請求項1に記載のデータ転送シス
テム。
2. The access count number total sum calculating means counts the total sum of access count information of requests accumulated in the buffer means, and the request when the request is input from the bus to the buffer means. Means for detecting the access count value from the access count value and adding the access count value to the sum counter value up to that time, and when a request is input from the bus, the access count value is detected from the word of the request. Comparing the estimated value of the remaining amount of the buffer estimated from the count value of the amount of data input from the bus with the actual remaining amount of the buffer unit. To determine that the data has been read from the buffer means. A read determination means, and when it is determined that the request word has been read from the buffer means, a value corresponding to the access count value of the request word read from the buffer means is read from the data holding means, The data transfer system according to claim 1, comprising means for subtracting the value read from the data holding means from the value of the sum counter.
【請求項3】 上記複数のクライアントデバイスと上記
リソースとの間では、パケット構造でデータが転送され
る請求項1に記載のデータ転送システム。
3. The data transfer system according to claim 1, wherein data is transferred between the plurality of client devices and the resource in a packet structure.
【請求項4】 上記アクセスカウント情報は、リクエス
トに付加されているバイトカウントである請求項1に記
載のデータ転送システム。
4. The data transfer system according to claim 1, wherein the access count information is a byte count added to the request.
【請求項5】 上記アクセスカウント情報は、リクエス
トに付加されているワードカウントである請求項1に記
載のデータ転送システム。
5. The data transfer system according to claim 1, wherein the access count information is a word count added to the request.
【請求項6】 複数のクライアントデバイスと、上記複
数のクライアントデバイスで共用されるリソースと、上
記リソースを制御するリソース制御手段と、上記複数の
クライアントデバイスと上記リソースとの間でデータを
送受信するバスとからなるシステムのデータ転送方法で
あって、 上記各クライアントデバイスから上記バスを介して転送
されてきたリクエストをバッファ手段に一旦蓄積して上
記リソース制御手段に読み出し、 上記バッファ手段に蓄積されている上記リクエストに含
まれるアクセスカウント情報を抽出し、上記バッファ手
段に蓄積されている上記リクエストに含まれるアクセス
カウント情報の総和を求め、 上記バッファ手段に蓄積されている上記リクエストに含
まれるアクセスカウント情報の総和が所定のしきい値を
越えたら、上記クライエントデバイスのアクセスを制限
するようにするようにしたデータ転送方法。
6. A plurality of client devices, resources shared by the plurality of client devices, resource control means for controlling the resources, and a bus for transmitting and receiving data between the plurality of client devices and the resources. And a request transferred from each client device via the bus is temporarily stored in a buffer means, read out by the resource control means, and stored in the buffer means. The access count information contained in the request is extracted, the sum of the access count information contained in the request stored in the buffer means is obtained, and the access count information contained in the request stored in the buffer means is calculated. Sum exceeds a certain threshold Then, the data transfer method that is designed to restrict the access of the client device.
【請求項7】 上記複数のクライアントデバイスと上記
リソースとの間では、パケット構造でデータが転送され
る請求項6に記載のデータ転送方法。
7. The data transfer method according to claim 6, wherein data is transferred in a packet structure between the plurality of client devices and the resource.
【請求項8】 上記アクセスカウント情報は、リクエス
トに付加されているバイトカウントである請求項6に記
載のデータ転送方法。
8. The data transfer method according to claim 6, wherein the access count information is a byte count added to the request.
【請求項9】 上記アクセスカウント情報は、リクエス
トに付加されているワードカウントである請求項6に記
載のデータ転送方法。
9. The data transfer method according to claim 6, wherein the access count information is a word count added to the request.
【請求項10】 複数のクライアントデバイスと、上記
複数のクライアントデバイスで共用されるリソースと、
上記リソースを制御するリソース制御手段と、上記複数
のクライアントデバイスと上記リソースとの間でデータ
を送受信するバスとからなるシステムで、上記リソース
のアクセス数の総和をモニタするアクセスモニタ装置で
あって、 上記リソース制御手段と上記バスとの間のバッファ手段
に蓄積されているリクエストのアクセスカウント情報の
総和をカウントする総和カウンタと、 上記バスから上記バッファ手段にリクエストが入力され
たら、上記リクエストからアクセスカウントの値を検出
し、上記アクセスカウントの値をそれまでの上記総和カ
ウンタの値に加算する手段と、 上記バスからリクエストが入力されたら、上記リクエス
トのワードからアクセスカウントの値を検出し、上記ア
クセスカウントの値を保持するデータ保持手段と、 上記バスから入力されるデータ量のカウント値から推定
される上記バッファの残量の推定値と上記バッファ手段
の実際の残量とを比較して、上記バッファ手段からのデ
ータの読み出しがあったとことを判断するバッファ読み
出し判断手段と、 上記バッファ手段からリクエストのワードが読み出され
たと判断されたら、上記バッファ手段から読み出された
リクエストのワードのアクセスカウントの値に対応する
値を上記データ保持手段から読み出し、上記データ保持
手段から読み出された値を上記総和カウンタの値から減
算する手段と上記総和カウンタによりカウントされるア
クセスカウントの総和の値と所定のしきい値とを比較
し、上記総和カウンタアクセスの総和の値が所定のしき
い値を越えたら、ストップ信号を出力する手段とを備え
るようにしたアクセスモニタ装置。
10. A plurality of client devices and resources shared by the plurality of client devices,
A resource control means for controlling the resource, a system consisting of a bus for transmitting and receiving data between the plurality of client devices and the resource, an access monitor device for monitoring the total number of access of the resource, A sum counter for counting the sum of access count information of requests accumulated in the buffer means between the resource control means and the bus, and an access count from the request when the request is input from the bus to the buffer means Means for detecting the value of the access count and adding the value of the access count to the value of the sum counter up to that time, and when a request is input from the bus, the access count value is detected from the word of the request and the access Data holding means for holding the count value It is determined that data is read from the buffer means by comparing the estimated value of the remaining capacity of the buffer estimated from the count value of the amount of data input from the bus with the actual remaining capacity of the buffer means. And a data reading means for determining the access count value of the request word read from the buffer means when it is determined that the request word is read from the buffer means. Means for subtracting the value read from the data holding means from the value of the sum total counter and the sum value of the access counts counted by the sum counter and a predetermined threshold value for comparison, And means for outputting a stop signal when the total value of counter access exceeds a predetermined threshold value. Access monitor device.
JP2002145648A 2002-05-21 2002-05-21 Data transfer system and access monitor device Expired - Fee Related JP4126959B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2002145648A JP4126959B2 (en) 2002-05-21 2002-05-21 Data transfer system and access monitor device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2002145648A JP4126959B2 (en) 2002-05-21 2002-05-21 Data transfer system and access monitor device

Publications (2)

Publication Number Publication Date
JP2003337741A true JP2003337741A (en) 2003-11-28
JP4126959B2 JP4126959B2 (en) 2008-07-30

Family

ID=29704872

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2002145648A Expired - Fee Related JP4126959B2 (en) 2002-05-21 2002-05-21 Data transfer system and access monitor device

Country Status (1)

Country Link
JP (1) JP4126959B2 (en)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007108996A (en) * 2005-10-13 2007-04-26 Sharp Corp Memory device and memory control method
US7631144B1 (en) * 2004-09-13 2009-12-08 Datadomain, Inc. Write latency efficient storage system
JP2011215734A (en) * 2010-03-31 2011-10-27 Mitsubishi Electric Corp Cyclic communication synchronization system
JP2015069326A (en) * 2013-09-27 2015-04-13 富士通株式会社 Arithmetic processing unit and method of controlling the same
WO2021111583A1 (en) * 2019-12-05 2021-06-10 オリンパス株式会社 Data transfer device and data transfer method

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH10307747A (en) * 1997-05-07 1998-11-17 Kofu Nippon Denki Kk Data transfer controller

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH10307747A (en) * 1997-05-07 1998-11-17 Kofu Nippon Denki Kk Data transfer controller

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7631144B1 (en) * 2004-09-13 2009-12-08 Datadomain, Inc. Write latency efficient storage system
JP2007108996A (en) * 2005-10-13 2007-04-26 Sharp Corp Memory device and memory control method
JP4699858B2 (en) * 2005-10-13 2011-06-15 シャープ株式会社 Memory device and memory control method
JP2011215734A (en) * 2010-03-31 2011-10-27 Mitsubishi Electric Corp Cyclic communication synchronization system
JP2015069326A (en) * 2013-09-27 2015-04-13 富士通株式会社 Arithmetic processing unit and method of controlling the same
WO2021111583A1 (en) * 2019-12-05 2021-06-10 オリンパス株式会社 Data transfer device and data transfer method
JPWO2021111583A1 (en) * 2019-12-05 2021-06-10
JP7381603B2 (en) 2019-12-05 2023-11-15 オリンパス株式会社 Data transfer device and data transfer method
US11842071B2 (en) 2019-12-05 2023-12-12 Olympus Corporation Data transfer device and data transfer method

Also Published As

Publication number Publication date
JP4126959B2 (en) 2008-07-30

Similar Documents

Publication Publication Date Title
KR950006565B1 (en) Communication control unit with lower layer protocol and higher layer protocol control
JP4210303B2 (en) Memory access bandwidth allocation and latency control in digital cameras
WO2014156282A1 (en) Bus master, bus system, and bus control method
US8601192B2 (en) Arbitration device, arbitration system, arbitration method, semiconductor integrated circuit, and image processing device
US20080133798A1 (en) Packet receiving hardware apparatus for tcp offload engine and receiving system and method using the same
US20130046933A1 (en) Storing data in any of a plurality of buffers in a memory controller
US6633926B1 (en) DMA transfer device capable of high-speed consecutive access to pages in a memory
KR102106541B1 (en) Method for arbitrating shared resource access and shared resource access arbitration apparatus and shared resource apparatus access arbitration system for performing the same
US6720968B1 (en) Video acquisition system including a virtual dual ported memory with adaptive bandwidth allocation
US7107367B1 (en) Method for efficient buffer tag allocation
JP2003337741A (en) Data transfer system, its method, and access monitoring device
JP2001188748A (en) Data transferring device
KR101022472B1 (en) Method for using bus efficiently
JPH1040215A (en) Pci bus system
US6715021B1 (en) Out-of-band look-ahead arbitration method and/or architecture
US7516258B2 (en) Electronic apparatus and control method
US7159084B1 (en) Memory controller
US20070198730A1 (en) Embedded system with a bus and arbitration method for same
JP2006039672A (en) Bus request control circuit
US7899957B1 (en) Memory controller having a buffer for providing beginning and end data
KR100950356B1 (en) Data transfer unit with support for multiple coherency granules
JPH10307787A (en) Buffer memory device
JP2004013389A (en) System and method for data transfer
JP2006189919A (en) Electronic equipment, control method and computer program
JP4514411B2 (en) Inter-bus communication interface device

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20050407

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20080123

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20080129

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20080331

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20080422

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20080505

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20110523

Year of fee payment: 3

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20110523

Year of fee payment: 3

LAPS Cancellation because of no payment of annual fees