JPH09237219A - High speed memory controller - Google Patents

High speed memory controller

Info

Publication number
JPH09237219A
JPH09237219A JP4598996A JP4598996A JPH09237219A JP H09237219 A JPH09237219 A JP H09237219A JP 4598996 A JP4598996 A JP 4598996A JP 4598996 A JP4598996 A JP 4598996A JP H09237219 A JPH09237219 A JP H09237219A
Authority
JP
Japan
Prior art keywords
speed memory
request
read
write
data
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
JP4598996A
Other languages
Japanese (ja)
Other versions
JP2885166B2 (en
Inventor
Ko Matsushima
鋼 松島
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
NEC Corp
Original Assignee
NEC 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 NEC Corp filed Critical NEC Corp
Priority to JP4598996A priority Critical patent/JP2885166B2/en
Publication of JPH09237219A publication Critical patent/JPH09237219A/en
Application granted granted Critical
Publication of JP2885166B2 publication Critical patent/JP2885166B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Abstract

PROBLEM TO BE SOLVED: To provide a high speed memory controller which efficiently reads/ writes data into/from a high speed memory. SOLUTION: When a read start signal is received, a state shift is sequentially performed from an idle 66 and a read request packet is transmitted to the high speed memory in a read request 63. When a negative response is received from the high speed memory in a read acknowledgment judgment 65 and a write start signal is generated, the state shifts to a write transaction (bus enable write 72) without waiting for the lapse of prescribed time in a misdelay read 68. The state similarly shifts to the other transaction even if the negative response is received while the write transaction is executed and the read start signal is previously generated at that time. Since the other transaction is executed during waiting time, access efficiency improves.

Description

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

【0001】[0001]

【発明の属する技術分野】本発明は、先頭アドレスとカ
ウント数を指定することによって複数のワードを連続し
て読み書きすることのできる高速メモリへの読み書きを
制御する高速メモリ制御回路に係わり、特に高速メモリ
内のセンスアンプキャッシュメモリにアクセスすべきデ
ータが存在しないとき、所定の待ち時間が経過してから
再度アクセスする必要のある高速メモリへの読み書きを
制御する高速メモリ制御回路に関する。
BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to a high speed memory control circuit for controlling reading and writing to a high speed memory capable of continuously reading and writing a plurality of words by designating a start address and a count number, and particularly to a high speed memory control circuit. The present invention relates to a high-speed memory control circuit that controls reading and writing to a high-speed memory that needs to be accessed again after a predetermined waiting time has elapsed when there is no data to access the sense amplifier cache memory in the memory.

【0002】[0002]

【従来の技術】メモリへのデータの書き込み動作あるい
はデータの読み出し動作の高速化を図る技術の1つとし
て、データのアクセスをブロック単位に行うものがあ
る。このようなメモリでは、アクセスすべきデータの先
頭アドレスと、連続してアクセスするワード数とを指定
して、データの読み書きが行われる。ブロック単位に読
み書きを行う高速メモリでは、1つのビットの情報を格
納するメモリセルをアレイ状に配置したメモリセルアレ
イと、メモリセルアレイの一列分の記憶容量を備えたセ
ンスアンプキャシュメモリを備えている。そしてメモリ
セルアレイへのアクセスは1列単位にセンスアンプキャ
ッシュ経由で行われる。
2. Description of the Related Art As one of the techniques for increasing the speed of a data write operation or a data read operation to a memory, there is a method of accessing data in block units. In such a memory, reading / writing of data is performed by designating the start address of the data to be accessed and the number of words to be continuously accessed. A high-speed memory that performs reading and writing in block units includes a memory cell array in which memory cells that store one bit of information are arranged in an array, and a sense amplifier cache memory that has a storage capacity for one column of the memory cell array. Then, the access to the memory cell array is performed for each column via the sense amplifier cache.

【0003】たとえば、ブロック単位の読み出し要求を
受けたとき、該当するデータがセンスアンプキャッシュ
に存在するときは、センスアンプキャッシュからすぐに
データの送出を行う。一方、要求を受けたデータがセン
スアンプキャッシュに存在しないときは、要求のあった
データをメモリセルアレイからセンスアンプキャッシュ
に一旦読み出してから要求元にブロック転送するように
なっている。したがって、要求されたデータがセンスア
ンプキャッシュに無い場合には、これをメモリセルアレ
イか読み出すまでの間、要求元の装置が待たされること
になる。
For example, when a block-unit read request is received and the corresponding data exists in the sense amplifier cache, the data is immediately sent from the sense amplifier cache. On the other hand, when the requested data does not exist in the sense amplifier cache, the requested data is once read from the memory cell array to the sense amplifier cache and then block-transferred to the request source. Therefore, when the requested data does not exist in the sense amplifier cache, the requesting device is kept waiting until it is read from the memory cell array.

【0004】読出要求を行った装置がこのような待ち時
間の間に他の処理を実行することができるようにするた
めに、すぐに読出要求に応じることができるか否かを表
わした応答を返すようにした高速メモリがある。このよ
うな高速メモリでは、メモリをアクセスするためのプロ
トコルを定め、これに従い、読み書きの要求やこれに対
する応答、さらには読み書きするデータを各種のパケッ
トによって転送することが行われている。転送プロトコ
ルを定め、データをパケットによりブロック転送する高
速メモリとしては、たとえば、ラムバス(RAMBU
S)インターフェイスを用いたラムバス・ダイナミック
メモリ(RDRAMと表わす。)がある。
In order to allow the device that has issued the read request to execute other processing during such a waiting time, a response indicating whether or not the read request can be immediately met is sent. There is a high speed memory that is supposed to be returned. In such a high-speed memory, a protocol for accessing the memory is defined, and according to this, a read / write request, a response thereto, and further, data to be read / written is transferred by various packets. As a high-speed memory that defines a transfer protocol and block-transfers data in packets, for example, RAMBUS (RAMBU
There is a Rambus dynamic memory (referred to as RDRAM) using an S) interface.

【0005】ラムバスインタフェースでは、読み書きの
要求はリクエストパケットにより、読み書きするデータ
はデータパケットにより転送される。またリクエストパ
ケットに対する応答は応答パケットにより通知される。
これら3種類のパケットが組み合わされることにより、
高速メモリにアクセスする1つのトラザクションが形成
される。トランザクションには、メモリセルアレイ内の
データを読み出すメモリ空間読み込みトランザクショ
ン、メモリセルアレイ内にデータを書き込むメモリ空間
書き込みトランザクションがある。また、動作モードレ
ジスタなど高速メモリ内部のレジスタを読み出すレジス
タ空間読み込みトランザクション、内部レジスタに書き
込むレジスタ空間書き込みトランザクションおよびレジ
スタ空間同報書き込みトランザクションがある。
In the Rambus interface, a read / write request is transferred by a request packet, and read / write data is transferred by a data packet. The response to the request packet is notified by the response packet.
By combining these three types of packets,
One transaction is formed that accesses the fast memory. The transaction includes a memory space read transaction for reading data in the memory cell array and a memory space write transaction for writing data in the memory cell array. Further, there are a register space read transaction for reading a register inside the high-speed memory such as an operation mode register, a register space write transaction for writing to an internal register, and a register space broadcast write transaction.

【0006】図5は、リクエストパケットのビット構成
の一例を表わしたものである。リクエストパケット20
1は、10ビット×6行の構成になっている。各行の1
0ビット分のデータは高速メモリとバスマスタとの間で
並列に転送される。各行を転送する周期はインターバル
と呼ばれており、1つのリクエストパケットは6つのイ
ンターバルで転送される。図中、各行の先頭ビット20
2は、バスコントロールと呼ばれる信号ラインにより転
送される。残りの9ビット203は、バスデータと呼ば
れる信号ラインにより転送される。
FIG. 5 shows an example of the bit structure of the request packet. Request packet 20
1 has a structure of 10 bits × 6 rows. 1 in each row
Data of 0 bits is transferred in parallel between the high speed memory and the bus master. The cycle of transferring each row is called an interval, and one request packet is transferred at six intervals. In the figure, the first bit 20 of each line
2 is transferred by a signal line called bus control. The remaining 9 bits 203 are transferred by a signal line called bus data.

【0007】スタートビット203は、リクエストパケ
ットの先頭を表わす情報である。オプション“0”から
オプション“3”までの4ビットは、要求するデータ転
送の種類を指定するための操作コードである。アドレス
は、転送される先頭バイトのアドレスを指定するもので
あり、36ビット分用意されている。カウントは、1回
のトランザクションで転送するデータのバイト数を表わ
している。カウントは8ビット分用意されており、最大
256バイトまで指定することができる。リザーブは未
使用のビットである。このようなリクエストパケットを
受け取った高速メモリは、その要求に直ちに応じること
が可能か否かを表わした応答パケットをバスマスタに返
送する。
The start bit 203 is information indicating the beginning of the request packet. The 4 bits from option "0" to option "3" are operation codes for designating the type of requested data transfer. The address specifies the address of the first byte to be transferred, and 36 bits are prepared. The count represents the number of bytes of data transferred in one transaction. The count is prepared for 8 bits, and up to 256 bytes can be specified. Reserves are unused bits. Upon receiving such a request packet, the high speed memory returns a response packet indicating whether or not the request can be immediately met to the bus master.

【0008】図6は、応答パケットのビット構成の一例
を表わしたものである。応答パケット211は、10ビ
ット幅の信号のうちバスコントロール信号ラインを通じ
て転送される各先頭ビット部分であり、2インターバル
で転送される2つのビットから構成される。10ビット
幅の信号のうちバスデータ信号ラインを通じて転送され
る残りの9ビット212を用いて、応答パケットと同時
にデータパケットを転送することもできる。
FIG. 6 shows an example of the bit structure of the response packet. The response packet 211 is each head bit portion transferred through the bus control signal line in the 10-bit width signal, and is composed of two bits transferred in two intervals. It is also possible to transfer the data packet at the same time as the response packet by using the remaining 9 bits 212 of the 10-bit width signal transferred through the bus data signal line.

【0009】図7は、応答パケットの2つのビットの値
とそれらによって示される応答パケットの通知内容を表
わしたものである。応答パケットの2つのビットの値が
“00”のときは、リクエストパケットの送信先に対応
するスレーブ(高速メモリ)が存在しないことを示して
いる。“01”のときは、リクエストパケットの要求に
すぐに応じられることを示した許可応答である。“1
0”のときは、リクエストに応答出来ないことを示した
否定応答である。否定応答を受けた場合には、一定時間
の経過後にバスマスタはリクエストパケットを再度送出
してリトライすることになる。“11”は、未定義であ
る。
FIG. 7 shows the values of the two bits of the response packet and the notification contents of the response packet indicated by them. When the value of two bits of the response packet is "00", it indicates that there is no slave (high speed memory) corresponding to the destination of the request packet. When it is "01", it is a permission response indicating that the request of the request packet can be immediately met. “1
When it is "0", it is a negative response indicating that the request cannot be responded. When the negative response is received, the bus master again sends the request packet after a certain period of time and retries. 11 ″ is undefined.

【0010】図8は、データパケットの構成の一例を表
わしたものである。データパケッ221はバスデータ信
号ラインを通じて9ビット幅で転送される。1つのデー
タパケットには、9ビット幅のデータバイトを1から2
56の間の任意の個数含むことができる。データパケッ
トの転送と並行して応答パケットをバスコントロール信
号ライン222をにより送ることができる。
FIG. 8 shows an example of the structure of a data packet. The data packet 221 is transferred with a 9-bit width through the bus data signal line. One data packet contains one to two 9-bit wide data bytes.
Any number between 56 can be included. A response packet can be sent by bus control signal line 222 in parallel with the transfer of the data packet.

【0011】図9は、読込トランザクションにおける各
パケットの転送手順を表わしたものである。この図は、
バスコントロール信号ラインによって転送されるデータ
231と、バスデータ信号ラインによって転送されるデ
ータ232とを転送手順に従って示してある。図中、斜
線を施した箇所では、データの転送は行われない。ま
ず、バスコントロール信号ラインとバスデータ信号ライ
ンの双方を用いて読込要求パケット233がバスマスタ
から高速メモリに向けて出力される。読込リクエストが
出力されてからACK(アクノリッジ)遅延234だけ
経過した後に、高速メモリからバスマスタに向けて応答
パケット235が返送される。
FIG. 9 shows a transfer procedure of each packet in a read transaction. This figure is
Data 231 transferred by the bus control signal line and data 232 transferred by the bus data signal line are shown according to the transfer procedure. In the figure, data is not transferred at the shaded areas. First, the read request packet 233 is output from the bus master to the high speed memory by using both the bus control signal line and the bus data signal line. After the ACK (acknowledge) delay 234 has elapsed since the read request was output, the response packet 235 is returned from the high speed memory to the bus master.

【0012】応答パケット235がリクエスト許可を表
わしている場合には、読込要求パケット233を送出
後、読込遅延236の経過した後に高速メモリは要求さ
れたリードデータ237をバスマスタに転送する。AC
K遅延234および読込遅延236の長さは、予めシス
テムの初期化時に全デバイスの内部レジスタに設定され
る。1つのトランザクション238と次のトランザクシ
ョン239との間には、データの転送の行われない読込
パイプ遅延241が設けられる。
When the response packet 235 indicates request permission, the high speed memory transfers the requested read data 237 to the bus master after the read delay packet 233 is transmitted after the read request packet 233 is transmitted. AC
The lengths of the K delay 234 and the read delay 236 are set in the internal registers of all devices in advance during system initialization. A read pipe delay 241 in which data is not transferred is provided between one transaction 238 and the next transaction 239.

【0013】読込パイプ遅延241は、高速メモリなど
のラムバス・デバイスが、次のトランザクションの処理
を始める前に、前回のトランザクションに対応する処理
を完了させるための時間を確保するものである。読込パ
イプ遅延241の経過後に、バスマスタは次のトランザ
クションについての読込要求パケット242を送出する
ことができる。
The read pipe delay 241 ensures that the Rambus device, such as a high speed memory, has time to complete the process corresponding to the previous transaction before starting to process the next transaction. After the read pipe delay 241 has elapsed, the bus master can send a read request packet 242 for the next transaction.

【0014】図10は、書込トランザクションにおける
各パケットの転送手順を表わしたものである。図9と同
様にバスコントロール信号ラインにより転送されるデー
タ251およびバスデータ信号ラインにより転送される
データとを書込トランザクションにおける転送手順に従
って示してある。また、斜線部分は、データの転送の行
われない箇所である。バスマスタは、バスコントロール
信号ラインとバスデータ信号ラインの双方を用いて高速
メモリに対し書込要求パケット253を送出する。その
後、ACK遅延254の経過後に高速メモリから応答パ
ケット255が戻される。
FIG. 10 shows the transfer procedure of each packet in the write transaction. Similar to FIG. 9, the data 251 transferred by the bus control signal line and the data transferred by the bus data signal line are shown according to the transfer procedure in the write transaction. Further, the shaded area is a portion where data is not transferred. The bus master sends the write request packet 253 to the high speed memory using both the bus control signal line and the bus data signal line. Then, after the ACK delay 254 has passed, the response packet 255 is returned from the high speed memory.

【0015】書込トランザクションの場合には、書込要
求パケット253を送出してから書込遅延256の経過
後であれば、応答パケットの戻される前であってもバス
マスタはライトデータ257の送出を開始することがで
きる。高速メモリからの応答パケットが許可応答を表わ
しているときは、ライトデータ257の転送を続ける。
高速メモリからの応答が否定応答の場合には、応答パケ
ットを受ける前に先行して送出したライトデータ257
は、高速メモリ側で破棄される。ACK遅延254およ
び書込遅延256の長さは、読込トランザクションの場
合と同様に予めシステムの初期化時に全デバイスの内部
レジスタに設定される。
In the case of a write transaction, if the write delay 256 elapses after the write request packet 253 is sent, the bus master sends the write data 257 even before the response packet is returned. You can start. When the response packet from the high-speed memory indicates the permission response, the transfer of the write data 257 is continued.
If the response from the high-speed memory is a negative response, the write data 257 that was sent before the response packet was received.
Is discarded on the high-speed memory side. The lengths of the ACK delay 254 and the write delay 256 are set in the internal registers of all devices in advance during system initialization, as in the case of the read transaction.

【0016】1つのトランザクション258と次のトラ
ンザクション259との間には、データの転送の行われ
ない書込パイプ遅延2461設けられる。書込パイプ遅
延261は、読込パイプ遅延と同様にラムバス・デバイ
スが、次のトランザクションの処理を始める前に、前回
のトランザクションに対応する処理を完了させるための
時間を確保するものである。バスマスタは、読込パイプ
遅延261の経過後に、次の書込要求パケット262を
送出することができる。
A write pipe delay 2461 in which data is not transferred is provided between one transaction 258 and the next transaction 259. The write pipe delay 261 as well as the read pipe delay 261 ensures that the Rambus device has time to complete the process corresponding to the previous transaction before starting to process the next transaction. The bus master can send the next write request packet 262 after the read pipe delay 261 has elapsed.

【0017】次に、このようなプロトコルに従ってデー
タの読み書きを行う高速メモリの構成について説明す
る。
Next, the structure of a high speed memory for reading and writing data according to such a protocol will be described.

【0018】図11は、高速メモリの構成の概要を表わ
したものである。高速メモリ271は、データを記憶す
るアプリケーション層272と、高速メモリ内での読み
書きを制御する論理層273と、バスマスタとの間で信
号の送受を行う物理層274を備えている。アプリケー
ション層272には、第0のDRAM(ダイナミックメ
モリ)アレイ275と、第1のDRAMアレイ276が
設けられている。DRAMアレイ275、276は、そ
れぞれ9メガビットの記憶容量を備えたメモリセルアレ
イである。
FIG. 11 shows an outline of the structure of the high speed memory. The high-speed memory 271 includes an application layer 272 that stores data, a logical layer 273 that controls reading and writing in the high-speed memory, and a physical layer 274 that sends and receives signals to and from the bus master. The application layer 272 is provided with a 0th DRAM (dynamic memory) array 275 and a first DRAM array 276. The DRAM arrays 275 and 276 are memory cell arrays each having a storage capacity of 9 megabits.

【0019】第0のDRAMアレイ275には、9ビッ
ト幅のデータを2キロワード分記憶することのできる第
0のセンスアンプキャッシュ277が接続されている。
また、第1のDRAMアレイ276には、同様の記憶容
量を備えた第1のセンスアンプキャッシュ278が接続
されている。これらセンスアンプキャッシュ277、2
78は、DRAMアレイ275、276の一列分のデー
タを記憶することができる。
The 0th DRAM array 275 is connected to a 0th sense amplifier cache 277 capable of storing 9-bit wide data for 2 kilowords.
Further, a first sense amplifier cache 278 having a similar storage capacity is connected to the first DRAM array 276. These sense amplifier caches 277, 2
78 can store data for one column of DRAM arrays 275, 276.

【0020】論理層273は、高速メモリ271の動作
モードを設定するためのモードレジスタ281と、制御
情報を格納するための制御レジスタ群282と、動作モ
ードに従って高速メモリ271の動作を制御する制御回
路283を備えている。物理層273は、ラムバス28
4を通じてバスマスタから送られてくるバスイネーブル
信号、バスコントロール信号、バスデータ信号を受信す
るレシーバ285と、ラムバス285を通じてバスコン
トロール信号、バスデータ信号をバスマスタに送出する
トランスミッタ286を備えている。トランスミッタ2
86からは、バスコントロール信号とバスデータ信号を
合わせた10ビット幅のデータが出力される。また、レ
シーバ285には、これにバスエネーブル信号を加えた
11ビット幅のデータが入力される。
The logic layer 273 includes a mode register 281 for setting the operation mode of the high speed memory 271, a control register group 282 for storing control information, and a control circuit for controlling the operation of the high speed memory 271 according to the operation mode. 283 is provided. The physical layer 273 is the Rambus 28.
4 includes a receiver 285 that receives a bus enable signal, a bus control signal, and a bus data signal sent from the bus master through No. 4, and a transmitter 286 that sends the bus control signal and the bus data signal to the bus master through the Rambus 285. Transmitter 2
From the 86, 10-bit width data including the bus control signal and the bus data signal is output. Further, the receiver 285 receives 11-bit width data obtained by adding a bus enable signal thereto.

【0021】物理層274は、バスマスタからデータを
受信する際に用いるクロック信号287がバスマスタ側
から入力される。またバスマスタにデータを送信する際
のクロック信号288を生成するクロック発生回路28
9を備えている。クロック信号287、288はそれぞ
れ1ビット幅で転送される。
A clock signal 287 used for receiving data from the bus master is input to the physical layer 274 from the bus master side. Further, a clock generation circuit 28 that generates a clock signal 288 when transmitting data to the bus master
9 is provided. The clock signals 287 and 288 are transferred with a 1-bit width, respectively.

【0022】次に、高速メモリに対するデータの読み書
きを制御する高速メモリ制御回路について説明する。
Next, a high speed memory control circuit for controlling the reading / writing of data from / to the high speed memory will be described.

【0023】図12は、従来から使用されている高速メ
モリ制御回路の構成の概要を表わしたものである。高速
メモリ制御回路291は、高速メモリ292と、データ
の読み書きを行うCPU(中央処理装置)293との間
に配置される。高速メモリ制御回路291は、CPU2
93から読み書き指示を受けて、高速メモリ292との
間で先に説明したプロトコルによりパケットの送受を行
うインタフェース回路である。
FIG. 12 shows an outline of the structure of a conventional high speed memory control circuit. The high speed memory control circuit 291 is arranged between the high speed memory 292 and a CPU (central processing unit) 293 that reads and writes data. The high-speed memory control circuit 291 is the CPU 2
The interface circuit receives a read / write instruction from 93 and transmits / receives a packet to / from the high-speed memory 292 according to the protocol described above.

【0024】CPU293から高速メモリ制御回路29
1には、アクセスするデータのアドレスを表わしたアド
レス信号294と、各信号の有効なタイミングや動作モ
ードなどの各種制御情報を表わしたCPU制御信号29
5が入力される。また、高速メモリ292に読み書きす
るデータを表わしたデータ信号296が高速メモリ制御
回路291とCPU293との間で送受される。
From CPU 293 to high speed memory control circuit 29
Reference numeral 1 denotes an address signal 294 representing an address of data to be accessed and a CPU control signal 29 representing various control information such as effective timing of each signal and an operation mode.
5 is input. A data signal 296 representing data to be read from and written to the high speed memory 292 is transmitted and received between the high speed memory control circuit 291 and the CPU 293.

【0025】CPU293には、高速メモリへの読み書
き動作の終了を表わすレディ信号297と、同期クロッ
ク298が高速メモリ制御回路291から入力される。
高速メモリ292と高速メモリ制御回路291との間に
は、バスコントロール信号やバスデータ信号を伝送する
バスとしてのラムバス299が設けられ、これを通じて
各種パケットの転送が行われる。
The ready signal 297 indicating the end of the read / write operation to the high speed memory and the synchronous clock 298 are input to the CPU 293 from the high speed memory control circuit 291.
A Rambus 299 as a bus for transmitting a bus control signal and a bus data signal is provided between the high speed memory 292 and the high speed memory control circuit 291, and various packets are transferred through the Rambus 299.

【0026】高速メモリ制御回路291は、リクエスト
パケットを生成するリクエストパケット発生器301
と、ミスディレイ遅延の長さなど初期設定される各種動
作条件を記憶する内部レジスタ302と、レディ信号2
96を出力するCPU制御器303を備えている。リク
エストパケット発生器301には、CPU293からア
ドレス信号294およびCPU制御信号295が入力さ
れる。これらの信号を基にリクエストパケット発生器3
01は、高速メモリ292に転送するリクエストパケッ
ト305を生成する。
The high speed memory control circuit 291 includes a request packet generator 301 for generating a request packet.
And an internal register 302 for storing various operating conditions that are initially set such as the length of miss delay and a ready signal 2
A CPU controller 303 that outputs 96 is provided. An address signal 294 and a CPU control signal 295 are input from the CPU 293 to the request packet generator 301. Request packet generator 3 based on these signals
01 generates a request packet 305 to be transferred to the high speed memory 292.

【0027】送信セレクタ304には、リクエストパケ
ット発生器301の出力するリクエストパケット305
と、データ信号296と、無信号としてのレベル信号3
06が入力される。送信セレクタ305はこれら入力信
号のうちのいずれか1つを高速メモリへ送出する送信デ
ータ(TData)および送信制御信号(TCtrl)
307として選択する回路である。インタフェース回路
308は、高速メモリ制御回路291内のTTLレベル
と、ラムバス299で用いられるラムバス信号レベルと
の間で、信号レベルの変換を行う物理的インタフェース
回路である。
The transmission selector 304 has a request packet 305 output from the request packet generator 301.
, The data signal 296, and the level signal 3 as no signal
06 is input. The transmission selector 305 transmits the transmission data (TData) and the transmission control signal (TCtrl) for transmitting any one of these input signals to the high-speed memory.
This is a circuit selected as 307. The interface circuit 308 is a physical interface circuit that converts the signal level between the TTL level in the high speed memory control circuit 291 and the Rambus signal level used in the Rambus 299.

【0028】ステート制御回路311は、高速メモリ制
御回路291の動作の状態遷移を管理する回路である。
アック判定器312は、高速メモリ292からの応答パ
ケットの内容を解析し、許可応答あるいは否定応答を表
わしたアック信号313を出力する。受信ゲート314
は、高速メモリ292から読み込んだデータをCPU2
93に転送する際にバッファリングする回路である。
The state control circuit 311 is a circuit for managing the state transition of the operation of the high speed memory control circuit 291.
The ACK deciding unit 312 analyzes the content of the response packet from the high speed memory 292 and outputs an ACK signal 313 representing a permission response or a negative response. Reception gate 314
Is the data read from the high speed memory 292 to the CPU 2
This is a circuit for buffering when transferring to 93.

【0029】図13は、図12に示したステート制御器
で管理される状態遷移を表わしたものである。システム
の初期化後、何らトランザクションの行われていないと
きはアイドル331のステートにある。この状態でCP
U293から読み込みまたは書き込みのトランザクショ
ンの要求を受けると、CPU制御器303からスタート
信号315がステート制御器311に入力される。スタ
ート信号315を受けると、バスイネーブル信号をロウ
レベルにするバスイネーブル332のステートに移行す
る。これにより、ラムバス299を通じて各種パケット
の転送が可能になる。
FIG. 13 shows state transitions managed by the state controller shown in FIG. After the system is initialized, it is in the idle 331 state when no transaction is performed. CP in this state
When a read or write transaction request is received from U293, the start signal 315 is input from the CPU controller 303 to the state controller 311. When the start signal 315 is received, the state of the bus enable signal 332 is changed to the low level. As a result, various packets can be transferred through the Rambus 299.

【0030】次に、リクエストパケット発生器301で
生成されたリクエストパケットを送出するリクエスト3
33のステートに遷移する。その後、高速メモリ292
から応答パケットの到来するのを待つアック待ち334
のステートに移行する。アック待ち334では、ラムバ
ス299を通じてパケットの送受は行われない。ACK
遅延時間の経過後アック判定335のステートに遷移
し、高速メモリ292から送られてきた応答パケットの
内容を解析する。書込トランザクションの場合には、ア
ック判定335において高速メモリ292へ書込データ
の転送が行われる。
Next, a request 3 for sending out the request packet generated by the request packet generator 301.
The state transits to 33. After that, high speed memory 292
ACK waiting 334 for the arrival of a response packet from
Transition to the state of. In the Acknowledge 334, packets are not transmitted / received through the Rambus 299. ACK
After the delay time elapses, the state transitions to the ACK determination 335, and the content of the response packet sent from the high speed memory 292 is analyzed. In the case of a write transaction, the write data is transferred to the high speed memory 292 in the ACK determination 335.

【0031】応答パケットの内容がリクエストを許可す
る許可応答であるときアック判定器312からその旨を
表わすアック信号313が出力され、これがステート制
御器311に入力される。高速メモリ292から許可応
答を受けたときは、フィニッシュデータ336のステー
トに移行する。フィニッシュデータ336では、データ
パケットにより書き込みデータあるいは読み込みデータ
の転送が行われる。フィニッシデータ336のステート
では、転送データ数をチェックし、残データ転送数が
“0”になるとアックCPU337のステートに遷移す
る。
When the content of the response packet is a permission response for permitting the request, the ACK determination unit 312 outputs an ACK signal 313 indicating that, and this is input to the state controller 311. When the permission response is received from the high speed memory 292, the state of the finish data 336 is entered. In the finish data 336, write data or read data is transferred by a data packet. In the state of the finish data 336, the number of transferred data is checked, and when the remaining number of transferred data becomes “0”, the state transits to the state of the AC CPU 337.

【0032】アックCPU337において、ステート制
御器311は、完了(Done)信号316をアクティ
ブにする。これを受けたCPU制御器303は、レディ
信号297をCPU293に送出する。これにより1つ
のトランザクションの動作が終了し、ステート制御器3
11は、そのステートを再びアイドル331に戻す。
In the AC CPU 337, the state controller 311 activates the Done signal 316. Upon receiving this, the CPU controller 303 sends a ready signal 297 to the CPU 293. This completes the operation of one transaction, and the state controller 3
11 returns the state to the idle 331 again.

【0033】一方、アック判定335のステートにて否
定応答を受けた場合には、ミスディレイ338のステー
トに移行する。ミスディレイ338では、否定応答時の
待ち時間に応じて初期化時に設定されたミスディレイカ
ウントの値をクロック297に従って減算し、その値が
“0”になったときバスイネーブル332のステートに
移行し、再びバスイネーブル332から順にリクエスト
パケットの送出等が行われる。このように否定応答を受
けたときは、ミスディレイ338にて一定時間待ってか
ら否定されたものと同一内容のリクエストパケットの送
出が再度行われる。
On the other hand, when a negative response is received in the ACK determination 335 state, the state shifts to the miss delay 338 state. In the miss delay 338, the value of the miss delay count set at the initialization is subtracted according to the clock 297 according to the waiting time at the time of the negative response, and when the value becomes “0”, the state of the bus enable 332 is entered. Then, the request packets are transmitted again in order from the bus enable 332. When a negative response is thus received, the miss delay 338 waits for a certain period of time, and then the request packet having the same content as the denied one is transmitted again.

【0034】高速メモリ292から否定応答が戻される
ときは、リクエストパケットでアドレス指定したデータ
が高速メモリ292のセンスアンプキャッシュに存在し
ないときである。このとき高速メモリ292は応答パケ
ットを送出した後、リクエストパケットで要求されたデ
ータをDRAMアレイからセンスアンプキャッシュに読
み出すことを行う。ミスディレイ338のステートは、
センスアンプキャッシュに必要なデータが読み出される
のを待つためのものである。
When the negative response is returned from the high speed memory 292, the data addressed by the request packet does not exist in the sense amplifier cache of the high speed memory 292. At this time, the high speed memory 292 sends a response packet and then reads the data requested by the request packet from the DRAM array to the sense amplifier cache. The state of Miss Delay 338 is
This is for waiting for the data necessary for the sense amplifier cache to be read.

【0035】図14は、トランザクションが行われる際
にCPUと高速メモリ制御回路の間で送受される各種信
号の一例を表わしたものである。この図では、読込トラ
ンザクションを1回行った後に書込トランザクションを
1回行っている。CPU293は、時刻T11においてア
クセスするデータの高速メモリ上でのアドレスを示すア
ドレス信号(同図c)としてリードアドレス341を出
力する。これと同時にアドレス信号が有効であることを
示すアドレスストローブ信号(同図a)と、読出動作と
書込動作の区別を示すリードライト信号(同図b)をハ
イレベルにして読出トランザクションであることを示
す。
FIG. 14 shows an example of various signals transmitted and received between the CPU and the high speed memory control circuit when a transaction is performed. In this figure, a write transaction is performed once after a read transaction is performed once. The CPU 293 outputs the read address 341 as an address signal (c in the same figure) indicating the address on the high-speed memory of the data to be accessed at time T 11 . At the same time, the address strobe signal (a in the same figure) indicating that the address signal is valid and the read / write signal (b in the same figure) indicating the distinction between the read operation and the write operation are set to the high level to be the read transaction. Indicates.

【0036】アドレスストローブ信号が入力されると、
高速メモリ制御回路のCPU制御器303は、スタート
信号(同図f)315をロウレベルのアクティブ状態に
する。スタート信号315が入力されるとステート制御
器311は、そのステートをアイドル331から順に遷
移させ、読出シーケンスを行う。時刻T12に高速メモリ
からリードデータパケットの受信が終了すると、アック
CPU337に移行してステート制御器311は完了信
号(同図g)316をロウレベルのアクティブ状態にす
る。
When the address strobe signal is input,
The CPU controller 303 of the high-speed memory control circuit sets the start signal (f in the figure) 315 to a low-level active state. When the start signal 315 is input, the state controller 311 sequentially transits the states from the idle 331 and performs a read sequence. When received from the high-speed memory read data packet to the time T 12 is completed, the state controller 311 proceeds to ACK CPU337 to a completion signal (FIG g) 316 to a low level in the active state.

【0037】CPU制御器303は完了信号316がア
クティブになったことを受けてCPU293に向けてロ
ウレベルのレディ信号(同図e)を時刻T13から時刻T
14にかけて出力する。また、高速メモリ292から受信
したリードデータ342をデータ信号(同図d)297
によりCPU293に向けて送出する。時刻T14には完
了信号およびレディ信号がロウレベルからハイレベルに
戻る。これにより、CPU293は読込トランザクショ
ンの終了を認識する。
In response to the completion signal 316 being activated, the CPU controller 303 sends a low level ready signal (e in the figure) to the CPU 293 from the time T 13 to the time T.
Output over 14 . Also, the read data 342 received from the high speed memory 292 is converted into a data signal (d in the figure) 297
Is sent to the CPU 293. At time T 14 , the completion signal and the ready signal return from low level to high level. As a result, the CPU 293 recognizes the end of the read transaction.

【0038】読込トランザクションの終了した後の時刻
15にCPU293は、アドレス信号としてライトアド
レス343を出力する。またこれと同時にアドレススト
ローブ信号を出力しさらにリードライト信号をローレベ
ルにして書込動作であることを示す。アドレスストロー
ブ信号を出力すると同時に、CPU293は、ライトデ
ータ344の送出を開始する。アドレスストローブ信号
が入力されると、高速メモリ制御回路291のCPU制
御器303は、トランザクションの開始を示すスタート
信号(同図f)315をアクティブ状態にする。
At time T 15 after the end of the read transaction, the CPU 293 outputs the write address 343 as an address signal. At the same time, the address strobe signal is output and the read / write signal is set to the low level to indicate that the writing operation is performed. At the same time that the address strobe signal is output, the CPU 293 starts sending the write data 344. When the address strobe signal is input, the CPU controller 303 of the high-speed memory control circuit 291 activates the start signal (f in the figure) 315 indicating the start of the transaction.

【0039】これを受けてステート制御器311は、そ
のステートをアイドル331から順に遷移させ、書込シ
ーケンスを行う。時刻T16にライトデータパケットの送
信が終了すると、ステート制御器311は完了信号(同
図g)316をアクティブ状態にする。CPU制御器3
03は完了信号316がアクティブになったことを受け
てCPU293に向けてロウレベルのレディ信号(同図
e)を時刻T17に出力する。その後完了信号およびレデ
ィ信号がローレベルからハイレベルに戻り、書込トラン
ザクションが終了する。
In response to this, the state controller 311 sequentially transits the states from the idle 331 and performs the write sequence. When the transmission of the write data packet ends at time T 16 , the state controller 311 sets the completion signal (g in the figure) 316 to the active state. CPU controller 3
In response to the activation of the completion signal 316, 03 outputs a low-level ready signal (e in the figure) to the CPU 293 at time T 17 . After that, the completion signal and the ready signal return from the low level to the high level, and the write transaction ends.

【0040】図15は、図14に示したシーケンスによ
ってトランザクションの行われる際の高速メモリ制御回
路と高速メモリとの間で送受信される各種信号の波形の
一例を表わしたものである。また、図14で示したトラ
ンザクションの行われる際の高速メモリ制御回路291
と高速メモリ291との間で送受される信号波形ととも
に、ステート制御器311における状態遷移の様子を表
わしている。図中に示した時刻T11、T12、T14、T15
およびT16はそれぞれ図14に示したこれらの符号によ
って示される時刻と対応している。また、図14に示し
た波形との対応付けを容易にするために、図14fのス
タート信号を図15aに、図14gの完了信号を図15
bにそれぞれ示してある。
FIG. 15 shows an example of waveforms of various signals transmitted and received between the high-speed memory control circuit and the high-speed memory when a transaction is performed according to the sequence shown in FIG. Further, the high speed memory control circuit 291 when the transaction shown in FIG. 14 is performed.
The state of state transition in the state controller 311 is shown together with signal waveforms transmitted and received between the high speed memory 291 and the high speed memory 291. Times T 11 , T 12 , T 14 , T 15 shown in the figure.
And T 16 respectively correspond to the times indicated by these symbols shown in FIG. Further, in order to facilitate the correspondence with the waveforms shown in FIG. 14, the start signal of FIG. 14f is shown in FIG. 15a and the completion signal of FIG. 14g is shown in FIG.
b respectively.

【0041】ここでは、1回のトランザクションにより
アクセスするデータの数を示すデータカウント値を
“1”、ミスディレイカウントを“4”に設定してい
る。また、1回目のトランザクションが否定応答で2回
目のトランザクションにてリクエスト許可となる場合を
示してある。読込トランザクションにおいてCPU制御
器303からのスタート信号(図15a)が時刻T11
アクティブとなると、ステート制御器311のステート
(同図e)は、アイドル351から、バスイネーブル3
52、リクエスト353、アック待ち354、アック判
定355へと順次移行する。図では、アイドルを
“I”、バスイネーブルを“B”、リクエストを
“R”、アック待ちを“W”、アック判定を“E”、ミ
スディレイを“D”、フィニッシュデータを“F”、ア
ックCPUを“C”として示してある。
Here, the data count value indicating the number of data to be accessed by one transaction is set to "1" and the miss delay count is set to "4". Also, a case is shown in which the first transaction is a negative response and the request is permitted in the second transaction. When the start signal (FIG. 15a) from the CPU controller 303 becomes active at time T 11 in the read transaction, the state of the state controller 311 (e in the figure) changes from the idle 351 to the bus enable 3 state.
52, request 353, waiting for ACK 354, and ACK determination 355. In the figure, idle is "I", bus enable is "B", request is "R", ACK wait is "W", ACK judgment is "E", miss delay is "D", finish data is "F", The AC CPU is shown as "C".

【0042】ラムバス上でのデータの転送レートはバス
クロック(同図c)に同期して行われる。また、ステー
トの遷移は、同期クロック(同図d)に同期して行われ
る。バスイネーブル352のステートでは、バスイネー
ブル信号(同図f)がロウレベルに変化しアクティブに
なる。リクエスト353のステートでは、バスコントロ
ール信号(同図g)およびバスデータ信号(同図h)を
通じて高速メモリ制御回路291から高速メモリ292
に向けて第1回目のリクエストパケット356が送出さ
れる。アック待ち353のステートでは何もせず、バス
コントロール信号およびバスデータ信号は変化しない。
The data transfer rate on the Rambus is performed in synchronization with the bus clock (c in the same figure). Further, the state transition is performed in synchronization with the synchronous clock (d in the figure). In the state of the bus enable 352, the bus enable signal (f in the figure) changes to low level and becomes active. In the request 353 state, the high-speed memory control circuit 291 sends the high-speed memory 292 through the bus control signal (g in the figure) and the bus data signal (h in the figure).
The first request packet 356 is sent to the. In the state of ACK wait 353, nothing is done and the bus control signal and the bus data signal do not change.

【0043】アック判定355のステートでは、バスコ
ントロール信号を通じて応答パケット357が高速メモ
リ292から高速メモリ制御回路に転送され、その内容
の解析が行われる。この例では、第1回目の応答パケッ
ト357は否定応答を表わしているので、ミスディレイ
358へ移行する。ミスディレイカウント値が“4”で
あるのでその値が“0”になるまでの5ステート分、ミ
スディレイの状態が繰り返される。その後、再びバスイ
ネーブル359のステートに戻り、第2回目のリクエス
トパケット361が送出されるこれに対応する応答パケ
ット362は許可応答であるので、アック判定363の
ステートの次にフィニッシュデータ364のステートに
移行する。
In the state of ACK determination 355, the response packet 357 is transferred from the high speed memory 292 to the high speed memory control circuit through the bus control signal, and the content thereof is analyzed. In this example, the first-time response packet 357 represents a negative response, and therefore the process proceeds to the miss delay 358. Since the miss delay count value is "4", the miss delay state is repeated for 5 states until the value becomes "0". After that, the state returns to the bus enable 359 state again, and the response packet 362 corresponding to which the second request packet 361 is transmitted is the permission response, so the state of the finish data 364 is changed to the state of the finish data 364 after the state of the ACK determination 363. Transition.

【0044】フィニッシュデータ364のステートで
は、リードデータパケット365を受信するまで4回、
同一のステートを繰り返す。その後アックCPU366
のステートにおいて、完了信号(同図b)を出力する。
これにを受けてCPU制御器303は、図14に示した
ように時刻T13にレディ信号をCPU293に送出す
る。アックCPU366のステートを終えた後、アイド
ル367に戻る。
In the state of the finish data 364, four times until the read data packet 365 is received,
Repeat the same state. Then AC CPU 366
In this state, the completion signal (b in the figure) is output.
In response to this, the CPU controller 303 sends a ready signal to the CPU 293 at time T 13 as shown in FIG. After finishing the state of the ac CPU 366, the process returns to the idle 367.

【0045】レディ信号を受けたCPU293は、時刻
15において書込トランザクションを開始し、CPU制
御器303は、スタート信号をアクティブにする。読込
トランザクションの場合と同様に、ステートは、アイド
ル(I)、バスイネーブル(B)、リクエスト(R)、
アック待ち(W)、アック判定(E)へと順に移行す
る。リクエスト368のステートにおいて、リクエスト
パケット369が出力される。アック判定371のステ
ートにおいて、書き込みデータをライトデータパケット
372によって高速メモリ292に転送する。これと同
時に高速メモリ292からバスコントロール信号を通じ
て応答パケット373が返送される。
Upon receiving the ready signal, the CPU 293 starts the write transaction at time T 15 , and the CPU controller 303 activates the start signal. As in the read transaction, the states are Idle (I), Bus Enable (B), Request (R),
The process sequentially shifts to ACK waiting (W) and ACK determination (E). In the request 368 state, the request packet 369 is output. In the state of the ACK determination 371, the write data is transferred to the high speed memory 292 by the write data packet 372. At the same time, the response packet 373 is returned from the high speed memory 292 through the bus control signal.

【0046】ここでは、応答パケット373が許可応答
を表わしているので、フィニッシュデータ374のステ
ートに移行する。ライトデータが1バイトであり、かつ
これは既にアック判定372のステートで転送済である
ので、フニッシュデータのステートではデータカウント
が既に“0”になっている。その結果、ステートはすぐ
にアックCPU375、アイドル376へと遷移する。
アックCPU375のステートでは、完了信号がアクテ
ィブにされる。これを受けてCPU制御器303からレ
ディ信号がCPU291に送出され、書込トランザクシ
ョンが終了する。
Here, since the response packet 373 represents the permission response, the state shifts to the state of the finish data 374. Since the write data is 1 byte and has already been transferred in the state of the ACK determination 372, the data count is already "0" in the finish data state. As a result, the state immediately transits to the AC CPU 375 and the idle 376.
In the state of the AC CPU 375, the completion signal is activated. In response to this, the CPU controller 303 sends a ready signal to the CPU 291 to complete the write transaction.

【0047】[0047]

【発明が解決しようとする課題】このように高速メモリ
のセンスアンプキュッシュに読み書きすべきデータが存
在せず、否定応答を受けた場合には、ミスディレイのス
テートにおいて一定時間待ってから、再度リクエストパ
ケットを送出している。このため、ミスディレイのステ
ートの間、高速メモリへのアクセスが行われず、その分
だけデータの転送効率が低下するという問題がある。
When there is no data to be read / written in the sense amplifier cache of the high speed memory and a negative response is received, the request is made again after waiting for a certain time in the miss delay state. Sending a packet. Therefore, there is a problem that the high-speed memory is not accessed during the miss delay state, and the data transfer efficiency is reduced accordingly.

【0048】そこで本発明の目的は、高速メモリへのデ
ータの読み書きを効率良く行うことのできる高速メモリ
制御装置を提供することにある。
Therefore, an object of the present invention is to provide a high speed memory control device capable of efficiently reading and writing data to and from a high speed memory.

【0049】[0049]

【課題を解決するための手段】請求項1記載の発明で
は、データの読出要求と書込要求のうちのいずれか一方
を表わしたアクセス要求を受けたとき所定の待ち時間の
経過するまでその要求に応じられない場合には否定応答
を返送し、直ちに応じられる場合には許可応答を返送す
る高速メモリに対してアクセス要求を送出する要求送出
手段と、送出したアクセス要求に対して高速メモリから
否定応答を受けたとき高速メモリに送出すべき他のアク
セス要求が存在するか否かを判別する判別手段と、この
判別手段により他のアクセス要求が存在すると判別され
たときそのアクセス要求を高速メモリに送出する他要求
送出手段と、判定手段により他のアクセス要求が存在し
ないと判別されたとき否定応答を受けたアクセス要求を
所定の待ち時間の経過後に高速メモリに再送する再送手
段と、送出したアクセス要求に対して高速メモリから許
可応答を受けたときそのアクセス要求に応じたデータの
読み書きを高速メモリとの間で行うデータ読み書き手段
とを高速メモリ制御装置に具備させている。
According to another aspect of the invention, when an access request representing one of a data read request and a data write request is received, the request is waited until a predetermined waiting time elapses. If it cannot respond to the request, it returns a negative response, and if it responds immediately, it returns a permission response.Request sending means for sending an access request to the high speed memory, and a negative response from the high speed memory to the sent access request. When a response is received, it is determined whether or not there is another access request to be sent to the high speed memory, and when this determination means determines that another access request exists, the access request is sent to the high speed memory. The other request sending means for sending and the access request for which a negative response is received when it is judged by the judging means that there is no other access request, after a predetermined waiting time. The high-speed memory includes a resending means for later resending to the high-speed memory and a data reading / writing means for reading / writing data according to the access request from the high-speed memory when a permission response is received from the high-speed memory. It is equipped in the control device.

【0050】すなわち請求項1記載の発明では、送出し
たアクセス要求に対して高速メモリから否定応答を受け
たとき、高速メモリに送るべき他のアクセス要求が存在
する場合には、待ち状態に入らず当該他のアクセス要求
を高速メモリに送出する。これにより、否定応答を受け
たアクセス要求を再送するまでの待ち時間の間に、他の
アクセス要求に対応する読み書き動作を進めることがで
き、アクセス効率を向上させることができる。
That is, according to the first aspect of the invention, when a negative response is received from the high-speed memory in response to the sent access request, if there is another access request to be sent to the high-speed memory, the waiting state is not entered. The other access request is sent to the high speed memory. As a result, the read / write operation corresponding to another access request can be advanced during the waiting time until the access request receiving the negative response is retransmitted, and the access efficiency can be improved.

【0051】請求項2記載の発明では、データの読出要
求と書込要求のうちのいずれか一方を表わしたアクセス
要求を受けたとき所定の待ち時間の経過するまでその要
求に応じられない場合には否定応答を返送し、直ちに応
じられる場合には許可応答を返送する高速メモリに対し
てアクセス要求を送出する要求送出手段と、送出したア
クセス要求に対して高速メモリから否定応答を受けたと
き高速メモリに送出すべき他のアクセス要求が存在する
か否かを判別する判別手段と、この判別手段により他の
アクセス要求が存在すると判別されたときそのアクセス
要求を高速メモリに送出する第1の他要求送出手段と、
判別手段によって他のアクセス要求が存在しないと判別
されかつ否定応答を受けてから所定の待ち時間よりも短
い一定時間の経過前に高速メモリに送出すべき他のアク
セス要求が発生したときこれを高速メモリに送出する第
2の他要求送出手段と、判別手段によって他のアクセス
要求が存在しないと判別されかつ否定応答を受けてから
一定時間の経過前に他のアクセス要求が発生しないとき
否定応答を受けたアクセス要求を否定応答を受けてから
所定の待ち時間の経過後に高速メモリへ再送する再送手
段と、送出したアクセス要求に対して高速メモリから許
可応答を受けたときそのアクセス要求に応じたデータの
読み書きを高速メモリとの間で行うデータ読み書き手段
とを高速メモリ制御装置に具備させている。
According to the second aspect of the present invention, when an access request representing one of a data read request and a data write request is received, the request cannot be met until a predetermined waiting time elapses. Returns a negative response, and returns a permission response if it can be responded immediately. A request sending unit that sends an access request to the high-speed memory, and a high-speed operation when a negative response is received from the high-speed memory in response to the access request sent. A discriminating means for discriminating whether or not there is another access request to be sent to the memory, and a first other means for transmitting the access request to the high speed memory when the discriminating means judges that there is another access request. Request sending means,
When the discriminating means discriminates that there is no other access request and when a negative response is received and another access request to be sent to the high-speed memory occurs before the elapse of a fixed time shorter than a predetermined waiting time, this is speeded up. When the other access request is not sent by the second other request sending means for sending to the memory and the judging means determines that the other access request does not exist and before the lapse of a certain time after receiving the negative reply, the negative answer is given. Retransmitting means for retransmitting the received access request to the high-speed memory after a lapse of a predetermined waiting time after receiving a negative response, and data according to the access request when the permission response is received from the high-speed memory for the transmitted access request. The high-speed memory controller is provided with a data read / write means for reading and writing data from and to the high-speed memory.

【0052】すなわち請求項2記載の発明では、送出し
たアクセス要求に対して高速メモリから否定応答を受け
たとき、高速メモリに送るべき他のアクセス要求が存在
する場合には、待ち状態に入らずにこのアクセス要求を
高速メモリに送出する。また、否定応答を受けた時点で
他のアクセス要求が存在しなくても、待ち状態の間の一
定時間内に新たなアクセス要求が発生したときには、そ
れを高速メモリに送出する。これにより、待ち時間の間
に発生した新たなアクセス要求についてもすぐに処理を
開始できるので、高速メモリへのアクセス効率をさらに
向上させることができる。
That is, according to the second aspect of the present invention, when a negative response is received from the high speed memory in response to the sent access request, if there is another access request to be sent to the high speed memory, the waiting state is not entered. This access request is sent to the high speed memory. Further, even if there is no other access request at the time of receiving the negative response, when a new access request is generated within a certain time during the waiting state, it is sent to the high speed memory. As a result, the processing can be started immediately even for a new access request generated during the waiting time, so that the access efficiency to the high speed memory can be further improved.

【0053】請求項3記載の発明では、要求送出手段
は、高速メモリに書き込むべきデータを一時的に保持す
るバッファメモリを具備している。
According to the third aspect of the invention, the request sending means is provided with a buffer memory for temporarily holding the data to be written in the high speed memory.

【0054】すなわち請求項3記載の発明では、高速メ
モリに書き込むべきデータをバッファメモリに一時的に
格納している。これにより、読出トランザクションの実
行中に生じた書込トランザクションに対応するライトデ
ータを保持しておくことができる。
That is, according to the third aspect of the present invention, the data to be written in the high speed memory is temporarily stored in the buffer memory. As a result, the write data corresponding to the write transaction that occurred during the execution of the read transaction can be held.

【0055】請求項4記載の発明では、他のアクセス要
求は、データの読出要求と書込要求のうちの前回送出さ
れたアクセス要求と異なる種類のアクセス要求である。
In the invention according to claim 4, the other access request is an access request of a kind different from the previously sent access request among the data read request and the data write request.

【0056】すなわち請求項4記載の発明では、書き込
みのアクセス要求に対して否定応答を受けた場合には、
読み出しのアクセス要求が存在するか否かを調べる。一
方、読み出しのアクセス要求に対して否定応答を受けた
場合には、書き込みのアクセス要求の有無を調べてい
る。
That is, in the invention described in claim 4, when a negative response is received in response to the write access request,
It is checked whether or not there is a read access request. On the other hand, when a negative response is received in response to the read access request, the presence or absence of the write access request is checked.

【0057】[0057]

【発明の実施の形態】BEST MODE FOR CARRYING OUT THE INVENTION

【0058】[0058]

【実施例】図1は、本発明の一実施例における高速メモ
リ制御回路の構成の概要を表わしたものである。高速メ
モリ制御回路11は、高速メモリ12と、データの読み
書きを行うCPU13との間に配置されている。高速メ
モリ制御回路11は、CPU13から送られてくる読み
書き指示を受けて、高速メモリ12との間で各種パケッ
トの送受を行う。各パケットの構成は、従来技術の項で
示したものと同一でありそれらの説明を省略する。
DESCRIPTION OF THE PREFERRED EMBODIMENTS FIG. 1 shows an outline of the structure of a high speed memory control circuit according to an embodiment of the present invention. The high-speed memory control circuit 11 is arranged between the high-speed memory 12 and the CPU 13 that reads and writes data. The high-speed memory control circuit 11 receives a read / write instruction sent from the CPU 13 and sends / receives various packets to / from the high-speed memory 12. The structure of each packet is the same as that shown in the section of the prior art, and the description thereof will be omitted.

【0059】高速メモリ制御回路11は、バスマスタと
してのCPU13から読込トランザクションと書込トラ
ンザクションの指示を並行して受け付けることが可能に
なっている。読み込みあるいは書き込みのうち、一方の
トランザクションに対して高速メモリ12から否定応答
が返送されてきたときで、かつ他方のトランザクション
の要求がバスマスタ13から到来しているときは、待ち
状態に入らずその他方のトランザクションを実行するよ
うになっている。
The high-speed memory control circuit 11 is capable of accepting read transaction and write transaction instructions in parallel from the CPU 13 as a bus master. When a negative response is returned from the high-speed memory 12 for one of the read or write transactions, and when a request for the other transaction arrives from the bus master 13, the other does not enter the wait state. It is supposed to execute the transaction.

【0060】CPU13は、書込トランザクションある
いは読込トランザクションの指示を出力してからその完
了通知を高速メモリ制御回路11から受け取るまでの間
であっても、他方のトランザクションの指示を高速メモ
リ制御回路11に送出することができるものである。こ
のような機能を単一のCPUに備えさせることもできる
が、たとえば、高速メモリ制御回路11がマルチCPU
システムやマルチバスシステムのように2以上のCPU
(バスマスタ)からトランザクションの指示を受ける場
合であってもよい。
The CPU 13 outputs the instruction of the other transaction to the high speed memory control circuit 11 even after the completion notification is output from the high speed memory control circuit 11 after the instruction of the write transaction or the read transaction is output. It can be sent out. Although such a function may be provided in a single CPU, for example, the high-speed memory control circuit 11 is a multi-CPU.
2 or more CPUs like systems and multi-bus systems
It may be the case where a transaction instruction is received from the (bus master).

【0061】図1に示した高速メモリ12の構成は、図
11に示したものと同様に、第0バンクおよび第1バン
クのDRAMアレイを備え、またそれぞれに個別にセン
スアンプキャッシュが設けられている。これらは独立し
て動作することができる。このため、たとえば、一方の
センスアンプキャッシュメモリと高速メモリ制御回路1
1との間でデータパケットの授受が行われている間にこ
れと並行して他方のセンスアンプキャッシュとそれに対
応するDRAMアレイとの間で読み書きを行うことがで
きるようになっている。
The configuration of the high speed memory 12 shown in FIG. 1 includes DRAM arrays of the 0th bank and the 1st bank similarly to the structure shown in FIG. 11, and a sense amplifier cache is provided for each of them. There is. These can operate independently. Therefore, for example, one sense amplifier cache memory and the high-speed memory control circuit 1
While the data packet is being sent to and received from 1, the read / write operation can be performed in parallel with the other sense amplifier cache and the corresponding DRAM array.

【0062】高速メモリ回路11と高速メモリ12との
間に設けられたバスは1つだけであるので、同時に書込
トランザクションと読込トランザクションのパケットを
転送することはできない。しかしながら、高速メモリ1
2内部でDRAMアレイからセンスアンプキャッシュに
必要なデータを読み出している間に、他方のセンスアン
プキャッッシュに格納されているデータを高速メモリ制
御回路11がアクセスすることができる。このため、高
速メモリ12が否定応答を返送した後該当するデータを
DRAMアレイからセンスアンプキャッシュに読み出し
ている待ち時間の間に、高速メモリ制御回路11は他方
のセンスアンプキャッシュに対して読込あるいは書込ト
ランザクションを実行することができる。
Since only one bus is provided between the high-speed memory circuit 11 and the high-speed memory 12, it is not possible to transfer packets of write transaction and read transaction at the same time. However, high speed memory 1
While the data necessary for the sense amplifier cache is being read inside the DRAM array 2 inside, the high speed memory control circuit 11 can access the data stored in the other sense amplifier cache. Therefore, the high speed memory control circuit 11 reads or writes data to the other sense amplifier cache during the waiting time for reading the corresponding data from the DRAM array to the sense amplifier cache after the high speed memory 12 returns a negative response. You can perform embedded transactions.

【0063】CPU13から高速メモリ制御回路11に
は、アクセスするデータのアドレスを表わしたアドレス
信号14と、信号の有効なタイミングや動作モードなど
を表わしたCPU制御信号15が入力される。また、高
速メモリ12に読み書きすべきデータがデータ信号16
を通じて高速メモリ制御回路11とCPU13との間で
送受信される。高速メモリ制御回路11からCPU13
には、高速メモリ12からのデータの読込動作の終了を
表わす読込レディ信号17と、書込動作の終了を表わす
書込レディ信号18と、同期クロック19が入力され
る。
The CPU 13 inputs to the high-speed memory control circuit 11 an address signal 14 representing the address of the data to be accessed and a CPU control signal 15 representing the effective timing of the signal and the operation mode. Further, the data to be read from and written to the high speed memory 12 is the data signal 16
Is transmitted and received between the high-speed memory control circuit 11 and the CPU 13 through. High-speed memory control circuit 11 to CPU 13
A read ready signal 17 indicating the end of the operation of reading data from the high-speed memory 12, a write ready signal 18 indicating the end of the write operation, and a synchronous clock 19 are input to the.

【0064】高速メモリ12と高速メモリ制御回路11
との間には、バスコントロール信号やバスデータ信号を
伝送するバスとしてのラムバス21が設けられ、これを
通じて各種パケットの転送が行われる。
High-speed memory 12 and high-speed memory control circuit 11
A RAM bus 21, which is a bus for transmitting a bus control signal and a bus data signal, is provided between and, and various packets are transferred through the RAM bus 21.

【0065】高速メモリ制御回路11は、書込リクエス
トパケットを生成する書込リクエストパケット発生器3
1と、読込リクエストパケットを生成する読込リクエス
トパケット発生器32と、書込トランザクションの際に
CPU13から送られてくるライトデータを一時的にバ
ッファリングする送信ラッチ33を備えている。読込ト
ランザクションの実行中にCPU13から書込トランザ
クションの指示を受けた場合であっても、CPU13か
らのライトデータは送信ラッチに格納される。これによ
り、高速メモリ制御回路11は、書込トランザクション
と読込トランザクションの指示をCPU13から並行し
て受け付けることができる。
The high speed memory control circuit 11 includes a write request packet generator 3 for generating a write request packet.
1, a read request packet generator 32 for generating a read request packet, and a transmission latch 33 for temporarily buffering write data sent from the CPU 13 during a write transaction. Even when a write transaction instruction is received from the CPU 13 during execution of a read transaction, the write data from the CPU 13 is stored in the transmission latch. As a result, the high speed memory control circuit 11 can accept instructions for a write transaction and a read transaction from the CPU 13 in parallel.

【0066】また高速メモリ制御回路11は、初期設定
されるミスディレイ遅延の長さなど各種動作条件を記憶
する内部レジスタ34と、CPU13への制御信号の出
力およびCPU13からの指示に応じて高速メモリへの
アクセス動作を起動するCPU制御器35を備えてい
る。書込リクエスト発生器31および読込リクエストパ
ケット発生器32には、CPU13からアドレス信号1
4およびCPU制御信号15が入力される。これらの信
号が入力されることにより書込リクエストパケット発生
器31は書込リクエストパケット36を、読込リクエス
トパケット発生器32は読込リクエストパケット37を
それぞれ生成する。
The high-speed memory control circuit 11 further includes an internal register 34 for storing various operating conditions such as the length of the miss delay delay that is initially set, a high-speed memory according to the output of a control signal to the CPU 13 and an instruction from the CPU 13. The CPU controller 35 for activating the access operation to the. The write request generator 31 and the read request packet generator 32 send the address signal 1 from the CPU 13.
4 and the CPU control signal 15 are input. By inputting these signals, the write request packet generator 31 generates the write request packet 36 and the read request packet generator 32 generates the read request packet 37.

【0067】送信セレクタ38には、書込リクエストパ
ケット36、読込リクエストパケット37、送信ラッチ
33から読み出されるライトデータ39および無信号と
してのレベル信号41が入力されている。送信セレクタ
38はこれら入力信号のうちのいずれか1つを高速メモ
リ12へ送出する送信データ(TData)および送信
制御信号(TCtrl)42として選択する回路であ
る。
A write request packet 36, a read request packet 37, write data 39 read from the transmission latch 33, and a level signal 41 as no signal are input to the transmission selector 38. The transmission selector 38 is a circuit that selects any one of these input signals as transmission data (TData) and transmission control signal (TCtrl) 42 to be sent to the high-speed memory 12.

【0068】インタフェース回路43は、高速メモリ制
御回路11内のTTLレベルの信号をラムバス21で用
いられるラムバス信号レベルとの間で相互に信号レベル
の変換を行う物理的インタフェース回路である。ステー
ト制御回路44は、高速メモリ制御回路11におけるス
テートを管理する回路である。アック判定器45は、高
速メモリ12からの応答パケットの内容を解析して許可
応答あるいは否定応答を表わしたアック信号46を出力
する。受信ゲート47は、高速メモリ12から読み出し
たデータをCPU13に転送する際にバッファリングす
る回路である。
The interface circuit 43 is a physical interface circuit for mutually converting the signal level of the TTL level signal in the high speed memory control circuit 11 and the Rambus signal level used in the Rambus 21. The state control circuit 44 is a circuit that manages the states in the high speed memory control circuit 11. The ACK determination unit 45 analyzes the content of the response packet from the high speed memory 12 and outputs an ACK signal 46 representing a permission response or a negative response. The reception gate 47 is a circuit that buffers the data read from the high-speed memory 12 when transferring the data to the CPU 13.

【0069】CPU制御器35は、CPU13から書込
トランザクションの指令を受けたとき、書込シーケンス
の開始を指示する書込スタート信号51を、また読込ト
ランザクションの指令を受けたとき、読込シーケンスの
開始を指示する読込スタート信号52を出力する。これ
らの信号51、52は、ステート制御器44に入力され
る。ステート制御器44は、高速メモリ12への書込動
作が終了したときその旨を表わした書込完了信号53
を、高速メモリからの読込動作が終了したときその旨を
表わした読込完了信号54をそれぞれ出力する。これら
完了信号53、54は、CPU制御器35に入力され
る。
When the CPU controller 35 receives a write transaction command from the CPU 13, it receives a write start signal 51 for instructing the start of a write sequence, and when it receives a read transaction command, it starts a read sequence. A read start signal 52 for instructing is output. These signals 51 and 52 are input to the state controller 44. When the write operation to the high speed memory 12 is completed, the state controller 44 indicates that the write completion signal 53.
When a read operation from the high-speed memory is completed, a read completion signal 54 indicating that is output. These completion signals 53 and 54 are input to the CPU controller 35.

【0070】CPU制御器35は、書込完了信号53が
入力されたとき、書込レディ信号18を送出し、CPU
13に書込トランザクションの終了を通知する。また、
CPU制御器35は、読込完了信号54が入力されたと
き、読込レディ信号17を送出し、CPU13に読込ト
ランザクションの終了を通知する。CPU制御器35
は、書込トランザクションの指示を受けてCPU13か
らデータ信号16を通じてライトデータが送られてくる
ときそのデータを保持することを表わしたロード信号5
5を出力する。送信ラッチ33は、ロード信号55が入
力されているときCPU13からのライトデータを内部
に格納する。
When the write completion signal 53 is input, the CPU controller 35 sends out the write ready signal 18 and the CPU
13 is notified of the end of the write transaction. Also,
When the read completion signal 54 is input, the CPU controller 35 sends the read ready signal 17 to notify the CPU 13 of the end of the read transaction. CPU controller 35
Is a load signal 5 indicating that the write data is held when the write data is sent from the CPU 13 through the data signal 16 in response to the instruction of the write transaction.
5 is output. The transmission latch 33 internally stores the write data from the CPU 13 when the load signal 55 is input.

【0071】図2は、図1に示したステート制御器の管
理するステートの遷移を表わしたものである。アイドル
61のステートを起点として読込トランザクションを行
う遷移経路と、書込トランザクションを行う遷移経路が
ある。そして、高速メモリからの応答パケットが否定応
答でかつ、他方のトランザクションの実行要求が有る場
合には、ミスディレイのステートでの待ち動作を行う代
わりに他方のトランザクションの遷移経路に移動するよ
うになっている。
FIG. 2 shows transitions of states managed by the state controller shown in FIG. There are a transition path for performing a read transaction and a transition path for performing a write transaction starting from the state of the idle 61. If the response packet from the high-speed memory is a negative response and there is a request to execute the other transaction, it moves to the transition path of the other transaction instead of performing the waiting operation in the miss delay state. ing.

【0072】読込トランザクションの遷移経路は、アイ
ドル61から、バスイネーブルリード62、リードリク
エスト63、リードアック待ち64、リードアック判定
65、フィニッシュデータリード66、アックCPUリ
ード67を経由してアイドル61に戻るものである。書
込トランザクションの遷移経路は、アイドル61から、
バスイネーブルライト72、リードリクエスト73、リ
ードアック待ち74、リードアック判定75、フィニッ
シュデータライト76、アックCPUライト77を経由
して再びアイドル61に戻るものである。
The transition path of the read transaction returns from the idle 61 to the idle 61 via the bus enable read 62, the read request 63, the read ACK wait 64, the read ACK determination 65, the finish data read 66, and the ACK CPU read 67. It is a thing. The transition path of the write transaction is from the idle 61,
It returns to the idle 61 again via the bus enable write 72, read request 73, read ACK wait 74, read ACK determination 75, finish data write 76, and ACK CPU write 77.

【0073】リードアック判定65およびライトアック
判定75のステートで、高速メモリ12からの応答パケ
ットが否定応答を示している場合には、リードフィニッ
シュデータ66あるいはライトフィニッシュデータ76
のステートに移行しない。否定応答のときであって、他
方のトランザクションのスタート要求が有るときは、他
方のトランザクションの遷移経路のバスイネーブルのス
テートに移行する。
When the response packet from the high-speed memory 12 indicates a negative response in the states of the read-ac determination 65 and the write-ac determination 75, the read finish data 66 or the write finish data 76.
Does not shift to the state. When the response is negative and there is a request to start the other transaction, the state transits to the bus enable state of the transition path of the other transaction.

【0074】すなわち、リードアック判定65のステー
トで、否定応答を受けかつ書込スタート信号51がCP
U制御器35か入力されているときは、バスイネーブル
ライト72のステートに遷移する。同様に、ライトアッ
ク判定75のステートで、否定応答を受けかつ読込スタ
ート信号52が到来しているときは、バスイネーブルリ
ード62のステートに移行する。
That is, in the state of the read-ac determination 65, a negative response is received and the write start signal 51 is CP.
When the U controller 35 is input, the bus enable light 72 transits to the state. Similarly, in the state of the write-ac determination 75, when the negative response is received and the read start signal 52 arrives, the state of the bus enable read 62 is entered.

【0075】否定応答を受けても、他方のトランザクシ
ョンのスタート要求が無いときは、ミスディレイリード
68、あるいはミスディレイライト78のステートに移
行して、ミスディレイカウント値が“0”になるまで待
ち状態に入る。その後、元の遷移経路上のバスイネーブ
ルのステートに戻り、再度同一のトランザクションを試
みる。
Even if a negative response is received, if there is no start request for the other transaction, the state shifts to the state of miss delay read 68 or miss delay write 78 and waits until the miss delay count value becomes "0". Enter the state. After that, the state returns to the bus enable state on the original transition path, and the same transaction is tried again.

【0076】システムの初期化後は、ステート制御器4
4のステートはアイドル61になる。CPU13から書
込トランザクションあるいは読込トランザクションの指
示が到来すると、CPU制御器35は、書込スタート信
号51あるいは読込スタート信号52を出力する。これ
を受けてステート制御器44は、図2に示した状態遷移
にしたがって、順次トランザクションを実行する。
After the system is initialized, the state controller 4
The state of 4 becomes idle 61. When a write transaction or read transaction instruction is received from the CPU 13, the CPU controller 35 outputs a write start signal 51 or a read start signal 52. In response to this, the state controller 44 sequentially executes transactions according to the state transitions shown in FIG.

【0077】たとえば、読込スタート信号52がアクテ
ィブになった場合には、アイドル61からバスイネーブ
ルリード62のステートに移行する。バスイネーブル6
2のステートにおいて、ステート制御器44は送信許可
信号(TEnable)をアクティブにする。これによ
りインタフェース回路43は、ラムバス21上のバスイ
ネーブル信号をローレベルにする。こうしてラムバス2
1を通じてパケットを転送を行うことのできる状態にな
る。
For example, when the read start signal 52 becomes active, the state shifts from the idle 61 to the state of the bus enable lead 62. Bus enable 6
In the 2 state, the state controller 44 activates the transmission permission signal (TEenable). As a result, the interface circuit 43 sets the bus enable signal on the Rambus 21 to the low level. Rambus 2
1, the packet can be transferred.

【0078】バスイネーブル信号をロウレベルのアクテ
ィブとした後、ステート制御器44は、そのステートを
リクエストリード63に遷移させる。リクエストリード
63のステートでは、読込リクエストパケット発生器3
2によって生成されたリードリクエストパケットをラム
バス21を通じて高速メモリ12に送出する。リードア
ック待ち64のステートでは、何もせず、アック遅延時
間の経過を待つ。アック遅延時間の経過後、ステートは
リードアック判定65に移行する。リードアック判定6
5のステートでは、高速メモリ12から返送されてくる
応答パケットを受信し、その内容を解析する。
After making the bus enable signal active at a low level, the state controller 44 transits the state to the request lead 63. In the state of the request read 63, the read request packet generator 3
The read request packet generated by 2 is sent to the high speed memory 12 through the Rambus 21. In the read ACK wait state 64, nothing is done and the ACK delay time elapses. After the ACK delay time has elapsed, the state shifts to the read ACK determination 65. Readac judgment 6
In state 5, the response packet returned from the high speed memory 12 is received and the content thereof is analyzed.

【0079】応答パケットが許可応答を表わしていると
きは、フィニッシュデータリード66のステートに移行
する。フィニッシュデータリードのステートでは、転送
データ数をチェックしながら高速メモリ12から送られ
てくるデータパケットを受信する。残データ転送数が
“0”になるとアックCPUリード67のステートに移
行する。アックCPUリード67のステートにおいてス
テート制御器44は、読込完了信号54を出力する。こ
れを受けたCPU制御器35は、CPU13に向けて読
込レディ信号17を出力する。
When the response packet indicates a permission response, the state of the finish data read 66 is entered. In the finish data read state, the data packet sent from the high speed memory 12 is received while checking the number of transfer data. When the number of remaining data transfers becomes "0", the state of the AC CPU read 67 is entered. In the state of the AC CPU lead 67, the state controller 44 outputs the read completion signal 54. Receiving this, the CPU controller 35 outputs the read ready signal 17 to the CPU 13.

【0080】ステート制御器44は、リードアック判定
65のステートにおいて否定応答の応答パケットを受け
ると、書込スタート信号51がCPU制御器35から入
力されているか否かを判別する。書込スタート信号51
が入力されていない場合には、ミスディレイリード68
のステートに移行する。ミスディレイリード68のステ
ートでは、初期化時に予め設定されているミスディレイ
カウントの値を同期クロック19を基に順次減算し、そ
の値が“0”になるまで、ミスディレイリードのステー
トに留まる。ミスディレイカウント値が“0”になる
と、バスイネーブルリード62のステートに移行して、
再度読込トランザクションを行う。
When the state controller 44 receives a negative response packet in the state of the read-ac determination 65, the state controller 44 determines whether or not the write start signal 51 is input from the CPU controller 35. Write start signal 51
If is not input, miss delay lead 68
Transition to the state of. In the state of the miss delay read 68, the value of the miss delay count preset at the time of initialization is sequentially subtracted based on the synchronous clock 19, and the state of the miss delay read remains until the value becomes “0”. When the miss delay count value becomes “0”, it shifts to the state of the bus enable read 62,
Perform a read transaction again.

【0081】リードアック判定65のステートにおいて
否定応答を受けるとともに、書込スタート信号51が入
力されているときは、リードアック判定65からバスイ
ネーブルライト72のステートに移行し、書込トランザ
クションを行う。このようにミスディレイのステートで
の待ち時間を利用して、書込トランザクションを実行す
るので、高速メモリのアクセス効率を向上させることが
できる。
When a negative response is received in the read-ac determination 65 state and the write start signal 51 is input, the read-ac determination 65 shifts to the bus enable write 72 state and a write transaction is performed. Since the write transaction is executed by using the waiting time in the miss delay state as described above, the access efficiency of the high speed memory can be improved.

【0082】これと同様にアイドル61のステートにあ
る状態で、書込スタート信号51がアクティブになる
と、バスイネーブルライト72のステートに移行して送
信許可信号(TEnable)をアクティブにする。そ
の後、リクエストライト73のステートに移行し、書込
リクエストパケット発生器31で生成されたライトリク
エストパケットを高速メモリ12に送出する。ライトア
ック待ち74のステートでアック遅延時間の経過を待っ
た後、ライトアック判定75に移行して高速メモリから
返送されてくる応答パケットの内容を解析する。
Similarly, when the write start signal 51 becomes active in the idle 61 state, the state shifts to the bus enable write 72 state and the transmission enable signal (TEenable) becomes active. After that, the state shifts to the state of the request write 73, and the write request packet generated by the write request packet generator 31 is sent to the high speed memory 12. After waiting the ACK delay time in the state of waiting for write ACK 74, the process moves to the write ACK determination 75 and analyzes the contents of the response packet returned from the high speed memory.

【0083】応答パケットがリクエストの許可を表わし
ているときは、フィニッシュデータライト76のステー
トに移行する。書込トランザクションの場合には、ライ
トアック判定75のステートにおいてバスデータ信号ラ
インを通じてライトデータパケットを高速メモリに転送
することができる。リクエスト許可の応答パケットを受
けたとき高速メモリ12に転送すべきライトデータがま
だ存在するときはフィニッシュデータライト76のステ
ートで残りのデータの転送を行う。残データ転送数が
“0”になるとアックCPUライト77のステートに移
行し、書込完了信号53を出力する。これを受けたCP
U制御器35は、CPU13に向けて書込レディ信号1
8を出力する。
When the response packet indicates permission of the request, the state of the finish data write 76 is entered. In the case of a write transaction, the write data packet can be transferred to the high speed memory through the bus data signal line in the state of the write ACK determination 75. If write data to be transferred still exists in the high speed memory 12 when the request permission response packet is received, the remaining data is transferred in the state of the finish data write 76. When the number of remaining data transfers becomes "0", the state shifts to the state of the ACK CPU write 77, and the write completion signal 53 is output. CP that received this
The U controller 35 sends a write ready signal 1 to the CPU 13.
8 is output.

【0084】ライトアック判定75のステートで否定応
答を受け、かつ読込スタート信号52が非アクティブの
ときは、ミスディレイライト78のステートに移行す
る。そしてミスディレイカウントの値が“0”になるま
で待ってからバスイネーブルライト72のステートに遷
移し、再度書込トランザクションを行う。ライトアック
判定75のステートで否定応答を受けかつ読込スタート
信号52が入力されているときは、ライトアック判定7
5からバスイネーブルリード62のステートに移行し、
読込トランザクションを行う。
When a negative response is received in the state of write-ac determination 75 and the read start signal 52 is inactive, the state of the miss delay write 78 is entered. Then, after waiting until the value of the miss delay count becomes "0", the state transits to the state of the bus enable write 72 and the write transaction is performed again. When a negative response is received in the state of the write-ac determination 75 and the read start signal 52 is input, the write-ac determination 7
Transition from 5 to the state of bus enable lead 62,
Perform a read transaction.

【0085】図3は、CPUと高速メモリ制御回路の間
で送受信される各種信号の波形の一例を表わしたもので
ある。この図では、CPU13から読込トランザクショ
ンの指示を受けた後、続けて書込トランザクションの指
示を受ける場合を示してある。CPU13は、時刻T21
にアドレス信号(同図c)にリードアドレス81を出力
するとともに、リードライト信号(同図b)をハイレベ
ルにし、アドレスストローブ信号(同図a)をアクティ
ブにする。これにより読込トランザクションの指示が高
速メモリ制御回路11に送られる。
FIG. 3 shows an example of waveforms of various signals transmitted and received between the CPU and the high speed memory control circuit. This figure shows a case where after receiving a read transaction instruction from the CPU 13, a write transaction instruction is subsequently received. The CPU 13 sets the time T 21.
The read address 81 is output to the address signal (c in the figure), the read / write signal (b in the figure) is set to the high level, and the address strobe signal (a in the figure) is activated. As a result, a read transaction instruction is sent to the high-speed memory control circuit 11.

【0086】これらの信号を受信した高速メモリ回路1
1のCPU制御器35は、読込スタート信号(同図g)
を時刻T21にロウレベルのアクティブ状態にする。ま
た、読込リクエストパケット発生器32は、CPU13
からの指示に応じた内容の読込リクエストパケット37
を生成する。ステート制御器44は、図2に示した状態
遷移に従い、CPU13から指示されたアドレスのデー
タを指定されたバイト数分だけ高速メモリ12から読み
出す処理を行う。
High-speed memory circuit 1 receiving these signals
The CPU controller 35 of No. 1 reads the start signal (g in the figure).
Is set to a low level active state at time T 21 . Further, the read request packet generator 32 has the CPU 13
Read request packet 37 with contents according to the instruction from
Generate According to the state transition shown in FIG. 2, the state controller 44 performs a process of reading the data at the address designated by the CPU 13 from the high speed memory 12 by the designated number of bytes.

【0087】このような動作の行われている間に、CP
U13は、時刻T22に書込トランザクションの指示を高
速メモリ制御回路11に送出する。すなわち、時刻T22
にCPU13は、リードライト信号(同図b)をロウレ
ベルとしかつライトアドレス82と、データ信号(同図
d)としてライトデータ83を出力する。さらにこれら
と同時にアドレスストローブ信号をアクティブにする。
CPU制御器35は、CPU13から書込トランザクシ
ョンの指示を受けた時刻T22にステート制御器44に向
けて書込スタート信号(同図i)を出力する。また、書
込リクエストパケット発生器31は、時刻T22に書込リ
クエストパケット36を生成する。さらに、CPU13
から送られてくるライトデータ83は送信ラッチ33に
一時的に格納される。
While such an operation is being performed, the CP
U13 sends an indication of the write transaction to the high-speed memory control circuit 11 at time T 22. That is, time T 22
In addition, the CPU 13 sets the read / write signal (b in the figure) to the low level and outputs the write address 82 and the write data 83 as a data signal (d in the figure). At the same time, the address strobe signal is activated.
The CPU controller 35 outputs a write start signal (i in the figure) to the state controller 44 at time T 22 when the instruction of the write transaction is received from the CPU 13. The writing request packet generator 31 generates a write request packet 36 at time T 22. Further, the CPU 13
The write data 83 sent from is temporarily stored in the transmission latch 33.

【0088】ここで、先にCPU13から指示を受けた
読込トランザクションの実行過程において、高速メモリ
制御回路11の送出したリクエストパケットに対して高
速メモリ12から否定応答の応答パケットが返送された
ものとする。ステート制御器44は、リードアック判定
のステート65(図2)にて、否定応答を受けかつ書込
スタート信号51がCPU制御器35から入力済である
ので、バスイネーブルライト72のステートに移行す
る。
Here, it is assumed that a negative response packet is returned from the high speed memory 12 in response to the request packet sent by the high speed memory control circuit 11 in the process of executing the read transaction instructed by the CPU 13. . Since the state controller 44 has received a negative response and the write start signal 51 has been input from the CPU controller 35 in the read-ac determination state 65 (FIG. 2), the state controller 44 shifts to the state of the bus enable write 72. .

【0089】これにより、書込トランザクションのリク
エストパケットが送出される。また、送信ラッチ33に
格納されているライトデータが読み出され高速メモリ1
2にライトデータパケットとして送出される。ライトリ
クエストパケットに対する高速メモリ12からの応答パ
ケットがリクエストの許可を示すものであるとする。こ
の場合には、図2に示した状態遷移に従い、ライトアッ
ク判定75からフィニッシュデータライト76、アック
CPUライト77へとステートが遷移する。
As a result, the write transaction request packet is transmitted. In addition, the write data stored in the transmission latch 33 is read and the high speed memory 1
2 is transmitted as a write data packet. It is assumed that the response packet from the high speed memory 12 for the write request packet indicates the permission of the request. In this case, according to the state transition shown in FIG. 2, the state transitions from the write-ac determination 75 to the finish data write 76 and the ac CPU write 77.

【0090】アックCPUライト77のステートを実行
した時刻T23においてステート制御器44は、書込完了
信号(図3j)53を出力し、これを受けて時刻T24
CPU制御器35は、書込レディ信号(同図f)18を
CPU13に向けて出力する。このようにして、先に指
示した読込トランザクションに対して高速メモリから否
定応答が返送された場合には、そのミスディレイ待ちの
間に、後から指示を受けた書込トランザクションが行わ
れる。
At the time T 23 when the state of the ACK CPU write 77 is executed, the state controller 44 outputs the write completion signal (FIG. 3j) 53, and at the time T 24 , the CPU controller 35 writes the signal. A ready signal (f in the figure) 18 is output to the CPU 13. In this way, when a negative response is returned from the high-speed memory to the read transaction instructed earlier, the write transaction instructed later is performed while waiting for the miss delay.

【0091】ステート制御器44は、先に受けた読込ト
ランザクションの指示によりCPU制御器35から読込
スタート信号が出力済であることを記憶している。これ
により書込トランザクションを終えてアイドル61の状
態に戻った後、ステート制御器44は、バスイネーブル
リード62、リードリクエスト63の順に読込トランザ
クションを実行する。2回目のリードリクエストパケッ
トに対する応答パケットがリクエストの許可を示してい
る場合には、リードアック判定65のステートからフィ
ニッシュデータリード66に移行して、高速メモリ12
からリードデータパケットの受信が行われる。データカ
ウントが“0”になるまでデータの受信を終えた時刻T
25に、アックCPUリード67のステートに遷移し、ス
テート制御器44から読込完了信号(図3h)が出力さ
れる。
The state controller 44 stores that the read start signal has been output from the CPU controller 35 in response to the instruction of the read transaction previously received. As a result, after the write transaction is completed and the state returns to the idle state 61, the state controller 44 executes the read transaction in the order of the bus enable read 62 and the read request 63. If the response packet to the second read request packet indicates permission of the request, the state of the read ack determination 65 is shifted to the finish data read 66, and the high speed memory 12
The read data packet is received from. Time T at which data reception ends until the data count reaches "0"
At 25 , the state transitions to the state of the AC CPU lead 67, and the read completion signal (FIG. 3h) is output from the state controller 44.

【0092】これを受けてCPU制御器35は、時刻T
26に読込レディ信号(同図e)をロウレベルのアクティ
ブ状態にし、高速メモリ12から読み込んだデータ84
を受信ゲート47を介してCPU13に転送する。この
よにして1回目のアクセスにより否定応答を受けかつ、
他のトランザクションの要求があるときはそれを先に処
理してから2回目のトランザクションが実行される。
In response to this, the CPU controller 35 makes the time T
The read ready signal (FIG e) to a low level in the active state 26, data 84 read from the fast memory 12
Is transferred to the CPU 13 via the reception gate 47. In this way, a negative response is received by the first access, and
When another transaction is requested, it is processed first and then the second transaction is executed.

【0093】図4は、高速メモリ制御回路と高速メモリ
との間で送受信される各種信号の波形の一例を表わした
ものである。この図は、図3に示したトランザクション
の行われる際の高速メモリ制御回路11と高速メモリ1
2との間で送受される信号およびステート制御器33に
おける状態遷移の様子を表わしている。図中に示した時
刻T21、T22、T23およびT25はそれぞれ図3に示した
これらの符号によって示される時刻と対応している。ま
た、図3に示した波形との対応付けを容易にするため
に、図3g〜jに示した信号を図4a〜dにそれぞれ示
してある。
FIG. 4 shows an example of waveforms of various signals transmitted and received between the high speed memory control circuit and the high speed memory. This figure shows the high-speed memory control circuit 11 and the high-speed memory 1 when the transaction shown in FIG. 3 is performed.
2 shows a state of a signal transmitted to and received from the device 2 and a state transition in the state controller 33. Time T 21 shown in FIG, T 22, T 23 and T 25 correspond to the time indicated by these codes shown in FIG. 3, respectively. Also, the signals shown in FIGS. 3g-j are shown in FIGS. 4a-d, respectively, for ease of association with the waveforms shown in FIG.

【0094】ここでは、1回のトランザクションにより
アクセスするデータの数、すなわちデータカウント値を
“1”としている。1回目の読込トランザクションは否
定応答であり、2回目の読込トランザクションにてリク
エストが許可となる。また、書込トランザクションは1
回目でリクエストの許可を得る場合を示してある。読込
トランザクションにおいてCPU制御器35からの読込
スタート信号(同図a)が時刻T21にアクティブになる
と、ステート制御器44のステート(同図j)は、アイ
ドル61のステートから、バスイネーブルリード62、
リードリクエスト63、リードアック待ち64、リード
アック判定65へと順次移行する。
Here, the number of data accessed by one transaction, that is, the data count value is "1". The first read transaction is a negative response, and the request is permitted in the second read transaction. Also, write transaction is 1
It shows the case of obtaining the request permission at the second time. When the read start signal (a in the figure) from the CPU controller 35 becomes active at the time T 21 in the read transaction, the state of the state controller 44 (j in the figure) changes from the state of the idle 61 to the bus enable lead 62,
The process sequentially shifts to the read request 63, the read-ac wait 64, and the read-ac determination 65.

【0095】図4jでは、アイドルを“I”、リードバ
スイネーブルを“B”、リードリクエストを“R”、リ
ードアック待ちを“W”、リードアック判定を“E”、
フィニッシュデータリードを“F”、アックCPUリー
ド状態を“C”と表わしている。またライトバスイネー
ブルを“b”、ライトリクエストを“r”、ライトアッ
ク待ちを“w”、ライトアック判定を“e”、フィニッ
シュデータライトを“f”、アックCPUライト状態を
“c”と表わしている。
In FIG. 4j, idle is "I", read bus enable is "B", read request is "R", read ack wait is "W", read ack determination is "E",
The finish data read is represented by "F" and the ACK CPU read state is represented by "C". The write bus enable is represented by “b”, the write request is represented by “r”, the write acknowledgment wait is represented by “w”, the write acknowledgment is represented by “e”, the finish data write is represented by “f”, and the ac CPU write state is represented by “c”. ing.

【0096】ラムバス21上でのデータの転送レートは
バスクロック(同図e)に同期して行われる。また、ス
テートの遷移は、同期クロック(同図f)に同期して行
われる。リードバスイネーブル91のステートでは、バ
スイネーブル信号(同図h)がロウレベルに変化しアク
ティブになる。リードリクエスト92のステートでは、
バスコントロール信号(同図i)およびバスデータ信号
(同図j)を通じて高速メモリ制御回路11から高速メ
モリ12に向けて第1回目のリクエストパケット93が
送出される。リードアック待ち94のステートでは何も
しない。
The data transfer rate on the Rambus 21 is synchronized with the bus clock (e in the figure). Further, the state transition is performed in synchronization with the synchronous clock (f in the figure). In the state of the read bus enable 91, the bus enable signal (h in the figure) changes to low level and becomes active. In the read request 92 state,
The first request packet 93 is sent from the high-speed memory control circuit 11 to the high-speed memory 12 via the bus control signal (i in the figure) and the bus data signal (j in the figure). Nothing is done in the state of the read-ac wait 94.

【0097】この例では、第1回目のリクエストに対し
ては否定応答が返されるので、リードアック判定95に
おいて否定応答の応答パケット96を受け取る。このと
き、CPU13からは既に書込トランザクションの指示
が出され、時刻T22においてCPU制御器35から書込
スタート信号(同図c)が出力されている。したがっ
て、ミスディレイリード68ではなく、バスイネーブル
ライト97のステートに移行し、バスイネーブル信号が
再びアクティブになり、その後ライトリクエスト98の
ステートにおいてライトリクエストパケット99が送出
される。
In this example, since a negative response is returned to the first request, the negative acknowledgment response packet 96 is received in the read-ac determination 95. At this time, the CPU 13 has already issued a write transaction instruction, and at time T 22 , the CPU controller 35 has output a write start signal (c in the figure). Therefore, instead of the miss delay read 68, the state of the bus enable write 97 is entered, the bus enable signal becomes active again, and then the write request packet 99 is sent in the state of the write request 98.

【0098】ステート制御器44は、アック判定ライト
101のステートで高速メモリ12からリクエストの許
可を示す応答パケット102を受け取る。また、アック
判定ライト101のステートにおいて高速メモリ制御回
路11は、バスデータ信号を通じてライトデータパケッ
ト103を送出する。許可の応答を受けたので、ステー
ト制御器44は、フィニッシュデータライト104以降
のステートを順次実行する。ここでは、データカウント
値が“1”であり、全てのライトデータがアック判定ラ
イト101のステートで転送済なので、フィニッシュデ
ータライト104のステートではライトデータパケット
の転送は行われない。
The state controller 44 receives the response packet 102 indicating permission of the request from the high speed memory 12 in the state of the ACK determination write 101. Further, in the state of the ACK determination write 101, the high speed memory control circuit 11 sends the write data packet 103 through the bus data signal. Having received the permission response, the state controller 44 sequentially executes the states after the finish data write 104. Here, since the data count value is “1” and all the write data has been transferred in the state of the ACK determination write 101, the write data packet is not transferred in the state of the finish data write 104.

【0099】その後、アックCPUライト105のステ
ートに移行した時刻T23において書込完了信号(同図
d)が出力される。アイドルステート106に一旦戻っ
た後、読込トランザクションがリトライされる。2回目
の読込トランザクションにおけるリードアック判定10
6では、高速メモリ12から許可応答の応答パケット1
07を受信する。
After that, at time T 23 when the state of the AC CPU write 105 shifts, the write completion signal (d in the figure) is output. After returning to the idle state 106 once, the read transaction is retried. Read ack judgment 10 in the second read transaction
6, the response packet 1 of the permission response from the high speed memory 12
07 is received.

【0100】このため、フィニッシュデータリード10
8に移行して、リードデータパケット109を受け取る
までこのステートが繰り返される。リードデータパケッ
ト109の受信が終了するとアックCPUリードのステ
ート111に移行し、時刻T 25に読込完了信号(同図
b)が出力される。その後は、図3に示したようにCP
U制御器35から読込レディ信号が出力されCPU13
へのリードデータの転送を終えると読込トランザクショ
ンが終了する。
Therefore, the finish data read 10
8 and receives the read data packet 109
This state is repeated until. Read data packet
When the reception of the packet 109 is completed, the AC CPU lead
Start at time 111 twenty fiveRead completion signal
b) is output. After that, as shown in Figure 3, CP
A read ready signal is output from the U controller 35 and the CPU 13
When the transfer of read data to the
End.

【0101】たとえば、読込トランザクションと書込ト
ランザクションが同時に発生し、いずれかのトランザク
ションで否定応答を受け、ミスディレイ時間分だけ単に
待ち処理を行う場合には、2つのトランザクションを終
えるまでに26クロックを要していた。これを否定応答
を受けた後の待ち時間の間に他方のトランザクションを
行うことで、20クロックで実行することが可能になっ
た。
For example, when a read transaction and a write transaction occur at the same time, a negative response is received by either transaction, and waiting processing is simply performed for the miss delay time, 26 clocks are required to complete the two transactions. I needed it. By executing the other transaction during the waiting time after receiving the negative response, it becomes possible to execute this in 20 clocks.

【0102】以上説明した実施例では、リードアック判
定、ライトアック判定のステートからのみ他方のトラン
ザクションのバスイネーブルに遷移するようにしたが、
ミスディレイリード、ミスディレイライトのステートか
らも移行可能にしてもよい。
In the embodiment described above, the transition to the bus enable of the other transaction is made only from the read ACK determination state and the write ACK determination state.
The state may be changed from the miss delay read or miss delay write state.

【0103】たとえば、リードアック判定のステートに
おいて否定応答を受け取った際に、書込スタートの指示
が無い場合には、一旦、ミスディレイリードのステート
に移行する。ミスディレイリードのステートを実行して
いる間に、書込スタート信号が発生したときは、ただち
に、バスイネーブルライトのステートに移行して書込ト
ランザクションを行う。このようにミスディレイのステ
ートで他方のトランザクションのスタート信号が到来し
たときに、要求のあったトランザクションに移行してス
テートを進めるようにすれば、より効率良く高速メモリ
をアクセスすることができる。
For example, when a negative response is received in the read ACK determination state and there is no instruction to start writing, the state transits to the miss delay read state once. When a write start signal is generated while the miss delay read state is being executed, the state immediately shifts to the bus enable write state and a write transaction is performed. In this way, when the start signal of the other transaction arrives in the miss delay state, the high-speed memory can be accessed more efficiently by shifting to the requested transaction and advancing the state.

【0104】さらに、ミスディレイのステートを抜ける
までの残り時間が一定値以下の場合には、たとえ他方の
スタート信号が到来してもそのトランザクションへの移
行を禁止するようにしてもよい。たとえば、ミスディレ
イカウントの初期値が“4”であってその値が“2”以
下のには、他方のトランザクションに移行しないように
する。このようにすると、先に否定応答を受けたトラン
ザクションの実行が他方のトランザクションの実行時間
に2クロック分の長さを加えた以上に待たされることが
なくなる。制限しない場合には他方のトランザクション
の実行時間に加えて4クロック分待たされることにな
る。
Further, when the remaining time until exiting the miss delay state is a fixed value or less, the transition to the transaction may be prohibited even if the other start signal arrives. For example, when the initial value of the miss delay count is "4" and the value is "2" or less, the transaction is prevented from proceeding to the other transaction. In this way, the execution of the transaction that has received the negative response is not kept waiting longer than the execution time of the other transaction plus the length of two clocks. If there is no limitation, the execution time of the other transaction is delayed by 4 clocks.

【0105】また、実施例では書込トランザクションと
読込トランザクションのうち否定応答を受けたトランザ
クションと異なる種類のトランザクションの有無を調べ
るようにしたが、同一の種類のトランザクションの有無
を調べるものであってもよい。たとえば、リードリクエ
ストパケットに対して否定応答を受けた場合に、他の読
込要求が有る場合には、それに対応するリードリクエス
トパケットを送出するようにしてもよい。この場合に
は、書き込み用の遷移経路と読み込み用の遷移経路のよ
うに動作の種類によって状態遷移を区別するのではな
く、第1のトランザクション、第2のトランザクション
のようにトランザクション別にステートの遷移を管理す
ることになる。
In the embodiment, the presence / absence of a transaction of a different type from the transaction for which a negative response is received among the write transaction and the read transaction is checked, but the presence / absence of the same type of transaction may be checked. Good. For example, when a negative response is received for the read request packet and there is another read request, the corresponding read request packet may be transmitted. In this case, the state transition is not distinguished according to the type of operation like the transition path for writing and the transition path for reading, but the state transition is performed for each transaction like the first transaction and the second transaction. It will be managed.

【0106】そして、各トランザクションが書き込みで
あるか読み込みであるかを所定のレジスタに記憶して管
理する。また、同一種類のリクエストパケットが2つ生
成されるが、生成されたリクエストパケットをバッファ
メモリに蓄積すればよい。
Then, whether each transaction is a write or a read is stored in a predetermined register and managed. Also, although two request packets of the same type are generated, the generated request packets may be stored in the buffer memory.

【0107】[0107]

【発明の効果】このように請求項1記載の発明によれ
ば、高速メモリから否定応答を受けたときに他のアクセ
ス要求が存在する場合には、待ち状態に入らず当該他の
アクセス要求を高速メモリに送出した。これにより、否
定応答を受けたアクセス要求を再度送出するまでの待ち
時間の間に、他のアクセス要求に対応する読み書き動作
を進めることができ、データのアクセス効率を向上させ
ることができる。
As described above, according to the first aspect of the present invention, if another access request exists when a negative response is received from the high-speed memory, the other access request is not entered in the waiting state. Sent to high speed memory. As a result, the read / write operation corresponding to another access request can be advanced during the waiting time until the access request that receives the negative response is sent again, and the data access efficiency can be improved.

【0108】また請求項2記載の発明によれば、否定応
答を受けた時点で他のアクセス要求が存在しなくても、
一定時間内に新たなアクセス要求が発生したときにはそ
れを高速メモリに送出している。これにより、高速メモ
リへのアクセス効率をより一層向上させることができ
る。また、新たなアクセス要求の発生を待つ時間を否定
応答を受けてからの待ち時間よりも短い一定時間にすれ
ば、他のトランザクションの実行により否定応答を受け
たトランザクションの終了までにかかる時間が長くなり
過ぎることを防止することができる。
According to the invention described in claim 2, even if there is no other access request at the time of receiving the negative response,
When a new access request is generated within a fixed time, it is sent to the high speed memory. Thereby, the access efficiency to the high speed memory can be further improved. Also, if the waiting time for the generation of a new access request is set to a fixed time shorter than the waiting time after receiving a negative response, it takes a long time to finish the transaction that receives a negative response due to the execution of another transaction. It can be prevented from becoming too much.

【0109】さらに請求項3記載の発明によれば、ライ
トデータを一時的に記憶するバッファメモリを設けたの
で、たとえば、バスマスタ装置からの書き込み指示と読
み出し指示の双方を並行して受け付けることができる。
Further, according to the invention described in claim 3, since the buffer memory for temporarily storing the write data is provided, for example, both the write instruction and the read instruction from the bus master device can be accepted in parallel. .

【0110】また請求項4記載の発明によれば、書き込
み動作と読み込み動作だけを並行して処理可能としたの
で、ステートの管理が容易になるとともに、回路構成の
複雑化を防ぐことができる。
According to the fourth aspect of the invention, since only the write operation and the read operation can be processed in parallel, state management is facilitated and the circuit configuration can be prevented from becoming complicated.

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

【図1】本発明の一実施例における高速メモリ制御回路
の構成の概要を表わしたブロック図である。
FIG. 1 is a block diagram showing an outline of a configuration of a high speed memory control circuit according to an embodiment of the present invention.

【図2】図1に示したステート制御器の管理するステー
トの遷移を表わした状態遷移図である。
FIG. 2 is a state transition diagram showing transitions of states managed by the state controller shown in FIG.

【図3】CPUと高速メモリ制御回路の間で送受信され
る各種信号の波形の一例を表わした波形図である。
FIG. 3 is a waveform diagram showing an example of waveforms of various signals transmitted and received between a CPU and a high-speed memory control circuit.

【図4】高速メモリ制御回路と高速メモリとの間で送受
信される各種信号の波形の一例を表わした波形図であ
る。
FIG. 4 is a waveform diagram showing an example of waveforms of various signals transmitted and received between the high speed memory control circuit and the high speed memory.

【図5】リクエストパケットのビット構成の一例を表わ
した説明図である。
FIG. 5 is an explanatory diagram showing an example of a bit configuration of a request packet.

【図6】応答パケットのビット構成の一例を表わした説
明図である。
FIG. 6 is an explanatory diagram showing an example of a bit configuration of a response packet.

【図7】応答パケットの2つのビットの値とそれらによ
って示される応答パケットの通知内容を表わした真理値
表である。
FIG. 7 is a truth table showing the values of two bits of a response packet and the notification content of the response packet indicated by them.

【図8】データパケットの構成の一例を表わした説明図
である。
FIG. 8 is an explanatory diagram showing an example of the configuration of a data packet.

【図9】読込トランザクションにおける各パケットの転
送手順を表わした説明図である。
FIG. 9 is an explanatory diagram showing a transfer procedure of each packet in a read transaction.

【図10】書込トランザクションにおける各パケットの
転送手順を表わした説明図である。
FIG. 10 is an explanatory diagram showing a transfer procedure of each packet in a write transaction.

【図11】高速メモリの構成の概要を表わしたブロック
図である。
FIG. 11 is a block diagram showing an outline of a configuration of a high speed memory.

【図12】従来から使用されている高速メモリ制御回路
の構成の概要を表わしたブロック図である。
FIG. 12 is a block diagram showing an outline of a configuration of a conventional high-speed memory control circuit.

【図13】図12に示したステート制御回路で管理され
る状態遷移を表わした状態遷移図である。
13 is a state transition diagram showing state transitions managed by the state control circuit shown in FIG.

【図14】トランザクションが行われる際にCPUと高
速メモリ制御回路に間で送受される各種信号の波形の一
例を表わした波形図である。
FIG. 14 is a waveform chart showing an example of waveforms of various signals transmitted and received between the CPU and the high-speed memory control circuit when a transaction is performed.

【図15】図14に示したシーケンスによってトランザ
クションの行われる際の高速メモリ制御回路と高速メモ
リとの間で送受信される各種信号の波形の一例を表わし
た波形図である。
15 is a waveform diagram showing an example of waveforms of various signals transmitted and received between the high-speed memory control circuit and the high-speed memory when a transaction is performed according to the sequence shown in FIG.

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

11 高速メモリ制御回路 12 高速メモリ 13 CPU 14 アドレス信号 15 CPU制御信号 16 データ信号 17 読込レディ信号 18 書込レディ信号 19 クロック信号 21 ラムバス 31 書込リクエストパケット発生器 32 読込リクエストパケット発生器 33 送信ラッチ 34 内部レジスタ 35 CPU制御器 38 送信セレクタ 43 インタフェース回路 44 ステート制御器 45 アック判定器 47 受信ゲート 11 high-speed memory control circuit 12 high-speed memory 13 CPU 14 address signal 15 CPU control signal 16 data signal 17 read ready signal 18 write ready signal 19 clock signal 21 Rambus 31 write request packet generator 32 read request packet generator 33 transmission latch 34 Internal Register 35 CPU Controller 38 Transmission Selector 43 Interface Circuit 44 State Controller 45 Ac Judgment Device 47 Reception Gate

Claims (4)

【特許請求の範囲】[Claims] 【請求項1】 データの読出要求と書込要求のうちのい
ずれか一方を表わしたアクセス要求を受けたとき所定の
待ち時間の経過するまでその要求に応じられない場合に
は否定応答を返送し、直ちに応じられる場合には許可応
答を返送する高速メモリに対して前記アクセス要求を送
出する要求送出手段と、 送出したアクセス要求に対して前記高速メモリから前記
否定応答を受けたとき高速メモリに送出すべき他のアク
セス要求が存在するか否かを判別する判別手段と、 この判別手段により他のアクセス要求が存在すると判別
されたときそのアクセス要求を前記高速メモリに送出す
る他要求送出手段と、 前記判定手段により他のアクセス要求が存在しないと判
別されたとき前記否定応答を受けたアクセス要求を前記
所定の待ち時間の経過後に前記高速メモリに再送する再
送手段と、 送出したアクセス要求に対して前記高速メモリから前記
許可応答を受けたときそのアクセス要求に応じたデータ
の読み書きを高速メモリとの間で行うデータ読み書き手
段とを具備することを特徴とする高速メモリ制御装置。
1. A negative response is returned when an access request representing one of a data read request and a data write request is received and the request cannot be satisfied until a predetermined waiting time elapses. , Request sending means for sending the access request to the high speed memory, which returns an authorization response when immediately responding, and sending to the high speed memory when the negative response is received from the high speed memory for the sent access request Determination means for determining whether or not there is another access request to be issued, and another request transmission means for transmitting the access request to the high-speed memory when this determination means determines that there is another access request, When the determination unit determines that there is no other access request, the access request that has received the negative response is returned after the predetermined waiting time. And a data read / write unit for reading / writing data according to the access request from the high speed memory when receiving the permission response from the high speed memory. A high-speed memory control device characterized by:
【請求項2】 データの読出要求と書込要求のうちのい
ずれか一方を表わしたアクセス要求を受けたとき所定の
待ち時間の経過するまでその要求に応じられない場合に
は否定応答を返送し、直ちに応じられる場合には許可応
答を返送する高速メモリに対して前記アクセス要求を送
出する要求送出手段と、 送出したアクセス要求に対して前記高速メモリから前記
否定応答を受けたとき前記高速メモリに送出すべき他の
アクセス要求が存在するか否かを判別する判別手段と、 この判別手段により他のアクセス要求が存在すると判別
されたときそのアクセス要求を前記高速メモリに送出す
る第1の他要求送出手段と、 前記判別手段によって他のアクセス要求が存在しないと
判別されかつ前記否定応答を受けてから前記所定の待ち
時間よりも短い一定時間の経過前に前記高速メモリに送
出すべき他のアクセス要求が発生したときこれを前記高
速メモリに送出する第2の他要求送出手段と、 前記判別手段によって他のアクセス要求が存在しないと
判別されかつ前記否定応答を受けてから前記一定時間の
経過前に他のアクセス要求が発生しないとき前記否定応
答を受けたアクセス要求を否定応答を受けてから前記所
定の待ち時間の経過後に前記高速メモリへ再送する再送
手段と、 送出したアクセス要求に対して前記高速メモリから前記
許可応答を受けたときそのアクセス要求に応じたデータ
の読み書きを高速メモリとの間で行うデータ読み書き手
段とを具備することを特徴とする高速メモリ制御装置。
2. A negative response is returned when an access request representing one of a data read request and a data write request is received and the request cannot be satisfied until a predetermined waiting time elapses. , Request sending means for sending the access request to the high-speed memory that returns an authorization response when immediately responding, and the high-speed memory when the negative response is received from the high-speed memory for the sent access request Discriminating means for discriminating whether or not there is another access request to be transmitted, and when the discriminating means judges that there is another access request, the first other request for transmitting the access request to the high-speed memory. The sending means and the determining means determine that there is no other access request, and a fixed time shorter than the predetermined waiting time after receiving the negative response. When another access request to be sent to the high-speed memory occurs before the lapse of time, a second other request sending means for sending this to the high-speed memory, and the determining means determines that there is no other access request. And when no other access request occurs before the lapse of the certain time after receiving the negative response, the high-speed memory after the lapse of the predetermined waiting time after receiving the negative response of the access request receiving the negative response And a data read / write unit for reading / writing data according to the access request from the high speed memory when the permission response is received from the high speed memory. High-speed memory controller.
【請求項3】 前記要求送出手段は、前記高速メモリに
書き込むべきデータを一時的に保持するバッファメモリ
を具備することを特徴とする請求項1または請求項2記
載の高速メモリ制御装置。
3. The high speed memory control device according to claim 1, wherein the request sending means comprises a buffer memory for temporarily holding data to be written in the high speed memory.
【請求項4】 前記他のアクセス要求は、データの読出
要求と書込要求のうちの前回送出されたアクセス要求と
異なる種類のアクセス要求であることを特徴とする請求
項1または請求項2記載の高速メモリ制御装置。
4. The another access request is an access request of a type different from the previously sent access request of the data read request and the data write request. High speed memory controller.
JP4598996A 1996-03-04 1996-03-04 High-speed memory controller Expired - Fee Related JP2885166B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP4598996A JP2885166B2 (en) 1996-03-04 1996-03-04 High-speed memory controller

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP4598996A JP2885166B2 (en) 1996-03-04 1996-03-04 High-speed memory controller

Publications (2)

Publication Number Publication Date
JPH09237219A true JPH09237219A (en) 1997-09-09
JP2885166B2 JP2885166B2 (en) 1999-04-19

Family

ID=12734562

Family Applications (1)

Application Number Title Priority Date Filing Date
JP4598996A Expired - Fee Related JP2885166B2 (en) 1996-03-04 1996-03-04 High-speed memory controller

Country Status (1)

Country Link
JP (1) JP2885166B2 (en)

Also Published As

Publication number Publication date
JP2885166B2 (en) 1999-04-19

Similar Documents

Publication Publication Date Title
CA2050129C (en) Dynamic bus arbitration with grant sharing each cycle
US5045997A (en) Data processor
WO2023160192A1 (en) Interconnection apparatus for bus
US6085261A (en) Method and apparatus for burst protocol in a data processing system
JP3601872B2 (en) Data processing apparatus and operation method thereof
JPH09306162A (en) Control system for dram
JP2885166B2 (en) High-speed memory controller
US5185879A (en) Cache system and control method therefor
CN117648270A (en) Memory operation method, memory and electronic device
CN112463668B (en) Multichannel high-speed data access structure based on STT-MRAM
JP3808525B2 (en) Write and / or read access priority management device
KR100266963B1 (en) Method and apparatus for reducing latency rime on an interface by overlapping transmitted packets
JPH11282749A (en) High speed memory controller
JPH10307787A (en) Buffer memory device
JPH07271654A (en) Controller
JP2510261B2 (en) Asynchronous data transmission device
JP2000112912A (en) Processing system for test and copy against remote memory in distributed memory-type parallel computer
JPH11328102A (en) Bus control system and bus control method
JP2000285087A (en) Method for data communication between nodes
JP2002055937A (en) Usb device
JP2000305878A (en) Function extension system and data transfer method used for the same
JPH0245208B2 (en) BASUKETSUGOSHISUTEMUNODEETATENSOSEIGYOHOSHIKI
JPH10340249A (en) Synchronous bus frequency conversion device
JPH11175312A (en) Data transfer control unit
KR20050046094A (en) Bus system for reducing data write latency of slave device and method of processing data in the bus system

Legal Events

Date Code Title Description
FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20080212

Year of fee payment: 9

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

Free format text: PAYMENT UNTIL: 20090212

Year of fee payment: 10

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

Free format text: PAYMENT UNTIL: 20100212

Year of fee payment: 11

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

Free format text: PAYMENT UNTIL: 20100212

Year of fee payment: 11

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

Free format text: PAYMENT UNTIL: 20110212

Year of fee payment: 12

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

Free format text: PAYMENT UNTIL: 20110212

Year of fee payment: 12

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

Free format text: PAYMENT UNTIL: 20120212

Year of fee payment: 13

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

Free format text: PAYMENT UNTIL: 20120212

Year of fee payment: 13

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313113

R371 Transfer withdrawn

Free format text: JAPANESE INTERMEDIATE CODE: R371

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

Free format text: PAYMENT UNTIL: 20120212

Year of fee payment: 13

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313113

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

Free format text: PAYMENT UNTIL: 20120212

Year of fee payment: 13

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

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

Free format text: PAYMENT UNTIL: 20130212

Year of fee payment: 14

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

Free format text: PAYMENT UNTIL: 20130212

Year of fee payment: 14

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

Free format text: PAYMENT UNTIL: 20130212

Year of fee payment: 14

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

LAPS Cancellation because of no payment of annual fees