JPH096713A - Method for optimization of transfer of data between system memory and pci master device and system for optimization of memory access time in computer - Google Patents

Method for optimization of transfer of data between system memory and pci master device and system for optimization of memory access time in computer

Info

Publication number
JPH096713A
JPH096713A JP15016595A JP15016595A JPH096713A JP H096713 A JPH096713 A JP H096713A JP 15016595 A JP15016595 A JP 15016595A JP 15016595 A JP15016595 A JP 15016595A JP H096713 A JPH096713 A JP H096713A
Authority
JP
Japan
Prior art keywords
memory
pci
signal
bus
address
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
JP15016595A
Other languages
Japanese (ja)
Other versions
JP3720872B2 (en
Inventor
Victor F Andrade
ビクター・エフ・アンドレード
M Horton Kerry
ケリー・エム・ホートン
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.)
Advanced Micro Devices Inc
Original Assignee
Advanced Micro Devices Inc
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 Advanced Micro Devices Inc filed Critical Advanced Micro Devices Inc
Priority to JP15016595A priority Critical patent/JP3720872B2/en
Publication of JPH096713A publication Critical patent/JPH096713A/en
Application granted granted Critical
Publication of JP3720872B2 publication Critical patent/JP3720872B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Landscapes

  • Bus Control (AREA)

Abstract

PURPOSE: To provide a system for optimizing data transfer time between an external master device and a main memory. CONSTITUTION: The system includes an integrated processor provided with a PCT bridge 80 for adjusting data transfer to/from a PCT master 75 and a memory controller 90 for controlling an access to the main memory. When the PCI master 75 can not timely respond, the bridge 80 asserts a MEMWAIT signal to the controller 90 to indicate the necessity of deceleration of data transfer, applies a succeeding memory address to open a proper page in the memory and asserts a suitable row address strobe line to accelerate succeeding data transfer. When the MEMWAIT signal is deasserted, the controller 90 immediately asserts a column address strobe line to drive data. Since the page in the memory is quickly opened, RAS access time and RAS precharging time can be saved.

Description

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

【0001】[0001]

【発明の背景】本発明は一般にメモリユニットとコンピ
ュータシステム内の周辺構成要素との間のデータの転送
に関する。より特定的には、本発明は、中央処理装置
(CPU)の外部にある構成要素と主メモリとの間のト
ランザクションを速めるためのシステムに関する。さら
に特定的には、本発明は主メモリと周辺マスタコントロ
ーラとの間のデータの転送を最適化するためのシステム
に関する。
BACKGROUND OF THE INVENTION The present invention relates generally to transferring data between a memory unit and peripheral components within a computer system. More specifically, the present invention relates to a system for accelerating transactions between components external to a central processing unit (CPU) and main memory. More specifically, the present invention relates to a system for optimizing the transfer of data between main memory and peripheral master controllers.

【0002】[0002]

【関連技術の説明】データは一般に2つのステップでメ
モリとコンピュータシステム内の他の構成要素との間で
転送される。まずアクセスする構成要素が、所望のメモ
リ位置のアドレスを表わす信号をアドレスバスを介して
発生する。次のまたは後続のクロックサイクルで、その
構成要素がデータバスを介して実際にデータをアドレス
指定したメモリ位置に、またはそこから転送する。ほと
んどのコンピュータシステムでは、メモリへのデータア
クセスに要するクロックサイクル数は、メモリにアクセ
スする構成要素とメモリユニットの速度とに依存する。
2. Description of the Related Art Data is generally transferred between a memory and other components in a computer system in two steps. First, the accessing component generates a signal on the address bus that represents the address of the desired memory location. On the next or subsequent clock cycle, the component actually transfers data to or from the addressed memory location via the data bus. In most computer systems, the number of clock cycles required to access data in the memory depends on the components accessing the memory and the speed of the memory unit.

【0003】メモリ回路の速度は2つのタイミングパラ
メータに基づく。第1のパラメータはメモリアクセス時
間であり、これは、メモリアドレスを設定し、データバ
スを介して、またはそれからデータを生成する、または
捕捉するのにメモリ回路が必要とする最小の時間であ
る。第2のパラメータはメモリサイクル時間であり、こ
れはメモリ回路への2つの連続するアクセス間に必要な
最小の時間である。典型的にコンピュータシステムの主
ワーキングメモリを構成するのに用いられるダイナミッ
クランダムアクセスメモリ(DRAM)回路では、サイ
クル時間は典型的にはアクセス時間の約2倍である。D
RAM回路は一般に、約60−100ナノ秒の範囲のア
クセス時間を有し、サイクル時間は120−200ナノ
秒である。DRAM回路内の連続メモリアクセスに要す
る余分な時間が必要なのは、内部メモリ回路がデータ信
号を正確に生成するためにリチャージ(またはプリチャ
ージ)するためのさらなる時間を必要とするためであ
る。したがって、10Mhzで動作するマイクロプロセ
ッサは、このようなマイクロプロセッサにおけるクロッ
クパルスが100ナノ秒ごとに発生されるにもかかわら
ず、同じ100ナノ秒チップに対して連続して(すなわ
ち隣接するクロックパルスで)2つのメモリアクセスを
行なうことはできない。DRAMチップはそのチップ内
の次のアドレスにアクセスし得る前に安定するための時
間を必要とする。結果として、このような状態ではマイ
クロプロセッサはDRAM回路内のデータへのアクセス
を得るまでに1つ以上のループサイクルを行なわなくて
はならない。典型的には、メモリコントローラユニット
(MCU)がコンピュータシステムの一部として設けら
れて、DRAM主メモリへのアクセスを調整する。
The speed of memory circuits is based on two timing parameters. The first parameter is the memory access time, which is the minimum time required by the memory circuit to set the memory address and to generate or capture data via or from the data bus. The second parameter is the memory cycle time, which is the minimum time required between two consecutive accesses to the memory circuit. In dynamic random access memory (DRAM) circuits, which are typically used to form the main working memory of computer systems, the cycle time is typically about twice the access time. D
RAM circuits typically have access times in the range of about 60-100 nanoseconds and cycle times of 120-200 nanoseconds. The extra time required for successive memory accesses in the DRAM circuit is necessary because the internal memory circuit requires additional time to recharge (or precharge) to accurately generate the data signal. Therefore, a microprocessor operating at 10 Mhz will continue to see the same 100 nanosecond chip (ie, with adjacent clock pulses), even though clock pulses in such microprocessors are generated every 100 nanoseconds. ) Two memory accesses cannot be performed. DRAM chips need time to stabilize before the next address in the chip can be accessed. As a result, in such a situation, the microprocessor must go through one or more loop cycles before gaining access to the data in the DRAM circuit. A memory controller unit (MCU) is typically provided as part of the computer system to coordinate access to DRAM main memory.

【0004】サイクルおよびアクセス時間によって起こ
る遅延に加えて、DRAM回路はまた、記憶データの整
合性を守るために周期的なリフレッシュサイクルを必要
とする。これらのサイクルはメモリアクセスに利用可能
な時間の約5〜10%を消費し、典型的には4ミリ秒ご
とに256のリフレッシュサイクルを必要とする。DR
AM回路が周期的にリフレッシュされなければ、DRA
M回路内に記憶されたデータは失われてしまう。
In addition to the delay caused by cycles and access times, DRAM circuits also require periodic refresh cycles to preserve the integrity of stored data. These cycles consume about 5-10% of the time available for memory access and typically require 256 refresh cycles every 4 milliseconds. DR
If the AM circuit is not refreshed periodically, DRA
The data stored in the M circuit is lost.

【0005】これらの制約のために、DRAM回路で構
成されるメモリは、常に中央処理装置(CPU)または
周辺マスタコントローラによって割当てられた時間間隔
内でメモリアクセスに応答できるわけではない。この場
合、データバスを介してデータの準備ができるまで、ま
たはデータバスからのデータがメモリ回路によって記憶
されるまでに補足プロセッササイクルまたは待ち状態が
必要であることを外部回路がCPU(または周辺マスタ
コントローラ)に伝えなくてはならない。CPUの処理
を遅くするだけでなく、待ち状態は一般にCPUローカ
ルバスの使用を必要とし、それによって他のシステム回
路によるバスへのアクセスを制限してしまう。
Because of these constraints, a memory comprised of DRAM circuits cannot always respond to memory access within a time interval allocated by a central processing unit (CPU) or peripheral master controller. In this case, the external circuit indicates that a supplemental processor cycle or wait state is required until the data is ready via the data bus or until the data from the data bus is stored by the memory circuit. I have to tell the controller). In addition to slowing the CPU's processing, wait states generally require the use of the CPU local bus, thereby limiting access to the bus by other system circuits.

【0006】プロセッサの動作速度が上昇し、新世代の
プロセッサが開発されるにつれて、これらの新しいプロ
セッサの能力をフルに利用するには待ち状態を最小にす
ることが有利である。しかしながら、パーソナルコンピ
ュータにおいてこれらの新世代の高速プロセッサの最大
の利点を得るのは、DRAM主メモリ等のシステム内の
他の構成要素のサイズおよび電力の制約のために、特に
難しい。技術的または科学的計算や計算機援用設計のプ
ログラム等を伴うメモリ集約型のアプリケーションで
は、メモリアクセス時間がシステムの動作を大きく遅延
させるおそれがある。
As processor operating speeds increase and new generations of processors are developed, it is advantageous to minimize wait states in order to fully utilize the capabilities of these new processors. However, it is especially difficult to get the maximum benefit of these new generation high speed processors in personal computers due to size and power constraints of other components in the system such as DRAM main memory. In a memory-intensive application involving technical or scientific calculation or a computer-aided design program, the memory access time may significantly delay the operation of the system.

【0007】図1は先行技術のコンピュータシステム1
0のブロック図であり、マイクロプロセッサまたは中央
処理装置(CPU)12と、CPU12に結合されるC
PUローカルバス14と、双方ともCPUローカルバス
14に結合されるメモリコントローラ16およびローカ
ルバス周辺装置18とを含む。メモリバス15を介して
メモリコントローラ16に結合されるシステムメモリ1
7も示される。さらに、PCI標準バス20がPCIバ
スブリッジ22を介してCPUローカルバス14に結合
する。PCIバス20に結合されるPCI周辺装置28
が示される。PCI周辺装置28は、PCIマスタサイ
クルの間にPCIバスの所有権を主張できるPCIマス
タコントローラを含んでもよい。
FIG. 1 illustrates a prior art computer system 1.
0 is a block diagram of a microprocessor or central processing unit (CPU) 12 and a C coupled to the CPU 12.
It includes a PU local bus 14, a memory controller 16 and a local bus peripheral 18, both of which are coupled to the CPU local bus 14. System memory 1 coupled to a memory controller 16 via a memory bus 15.
7 is also shown. In addition, PCI standard bus 20 couples to CPU local bus 14 via PCI bus bridge 22. PCI peripheral device 28 coupled to PCI bus 20
Is shown. The PCI peripheral device 28 may include a PCI master controller that can claim ownership of the PCI bus during a PCI master cycle.

【0008】図1に示されるマイクロプロセッサ12は
モデル80486マイクロプロセッサを含んでもよく、
CPUローカルバス14は80486スタイルローカル
バスを含んでもよい。CPUローカルバス14は、デー
タラインの組D[31:0]、アドレスラインの組A
[31:0]、および制御ラインの組(特定的には図示
せず)を含む。80486CPUローカルバス14のプ
ロトコルおよび種々のバスサイクルに関する詳細は当該
分野では周知であり、多くの刊行物に見られるのでここ
では詳細には議論しない。CPU12、メモリコントロ
ーラ16およびPCIバスブリッジ22は従来は別個の
集積回路チップ上に製造されていた。しかしながら、コ
ンピュータシステムにおける最近の傾向としては、CP
Uコアが単一の集積プロセッサチップ上に種々の周辺装
置と組合されている。例示的な集積プロセッサチップ
は、内部CPUローカルバスと外部PCIバスとの間の
高性能インタフェースを与えるバスブリッジを含む。外
部PCIバスに高性能インタフェースを与えることによ
って、外部データ転送に関して比較的高性能の特性を達
成することができる。
The microprocessor 12 shown in FIG. 1 may include a model 80486 microprocessor,
CPU local bus 14 may include an 80486 style local bus. The CPU local bus 14 has a data line set D [31: 0] and an address line set A.
[31: 0], and a set of control lines (not specifically shown). Details regarding the 80486 CPU local bus 14 protocol and various bus cycles are well known in the art and can be found in many publications and will not be discussed in detail here. CPU 12, memory controller 16 and PCI bus bridge 22 were conventionally manufactured on separate integrated circuit chips. However, recent trends in computer systems include CP
The U core is combined with various peripherals on a single integrated processor chip. An exemplary integrated processor chip includes a bus bridge that provides a high performance interface between an internal CPU local bus and an external PCI bus. By providing a high performance interface to the external PCI bus, relatively high performance characteristics can be achieved for external data transfers.

【0009】PCIバスブリッジ22は、CPUローカ
ルバス14とPCIバス20との間の標準的なインタフ
ェースを与える。このように、PCIバスブリッジ22
は2つのバス間のデータ、アドレスおよび制御信号の転
送を調整する。PCIバス20は典型的には、マルチプ
レクスされるデータ/アドレスラインを含む高性能周辺
バスを含み、これはバーストモードデータ転送をサポー
トする。
The PCI bus bridge 22 provides a standard interface between the CPU local bus 14 and the PCI bus 20. In this way, the PCI bus bridge 22
Coordinates the transfer of data, address and control signals between the two buses. PCI bus 20 typically includes a high performance peripheral bus that includes multiplexed data / address lines, which supports burst mode data transfers.

【0010】バーストモードの特徴は、PCIバス上の
バーストサイクルを介して高速で連続する記憶場所への
読出または書込を可能にする。メモリからの読出または
書込のための通常の手順では、第1のクロックサイクル
でCPUがアドレスバスを介してアドレス信号を発生
し、後続のクロックサイクルでデータがシステムメモリ
17へ、またはそれから転送される。データバスは32
ビット幅なので、合計4つの8ビットバイトのデータが
2クロックサイクルごとにCPUによって読出される
か、または書込まれることが可能である。データバスを
介して転送される4つの8ビットバイトの各組は、「倍
長語」と称する。バーストモードでは、アドレス段階に
干渉することなく後続のクロックサイクルの間にさらな
るシーケンシャルな倍長語を転送できる。たとえば、開
始アドレスのみがアドレスバスを介して送られるので、
合計4つの倍長語が5クロックサイクルだけを用いてC
PUに読出され、次に第1の倍長語データが第2のサイ
クルの間に読出され、第3のサイクルの間に次の倍長語
データが読出されるといった具合である。これによって
バーストモード動作は比較的速いデータ転送速度を与え
る。
The burst mode feature allows for fast read or write to consecutive memory locations over a burst cycle on the PCI bus. In the normal procedure for reading or writing from memory, the CPU generates an address signal on the address bus on the first clock cycle and data is transferred to and from system memory 17 on subsequent clock cycles. It 32 data buses
Because of the bit width, a total of 4 8-bit bytes of data can be read or written by the CPU every 2 clock cycles. Each set of four 8-bit bytes transferred over the data bus is referred to as a "doubleword". In burst mode, additional sequential doublewords can be transferred during subsequent clock cycles without interfering with the address stage. For example, since only the start address is sent over the address bus,
A total of 4 doublewords is C using only 5 clock cycles.
It is read into the PU, then the first doubleword data is read during the second cycle, the next doubleword data is read during the third cycle, and so on. This allows burst mode operation to provide a relatively high data rate.

【0011】認められるように、PCI周辺装置28は
PCIマスタコントローラを含んでもよい。従来の技術
に従えば、PCIマスタはPCIバスの「所有権」をリ
クエストしてPCIバス20を介したトランザクション
を制御することができる。当業者には理解されるよう
に、コンピュータシステム内に複数のPCIマスタが含
まれてもよく、このいずれもPCIバス20の所有権を
リクエストできる。PCIマスタはPCIバス20内の
制御ラインを介してPCIブリッジ22にPCIバス2
0の所有権に対するリクエストを出す。PCIバスブリ
ッジ22は典型的には、種々のPCIマスタ間、および
CPU12等の内部マスタと他の内部マスタ間の所有権
のリクエストを調停する。典型的には、種々のマスタの
各々に優先権のランクが割当てられてその優先権を決定
する際にバスブリッジ22を補助する。
As will be appreciated, PCI peripheral device 28 may include a PCI master controller. According to conventional techniques, a PCI master can request "ownership" of a PCI bus to control transactions over the PCI bus 20. As will be appreciated by those skilled in the art, multiple PCI masters may be included in a computer system, any of which may request ownership of PCI bus 20. The PCI master is connected to the PCI bridge 22 via the control line in the PCI bus 20 and the PCI bus 2
Make a request for ownership of 0. PCI bus bridge 22 typically arbitrates ownership requests between various PCI masters and between internal masters such as CPU 12 and other internal masters. Each of the various masters is typically assigned a priority rank to assist the bus bridge 22 in determining its priority.

【0012】PCIブリッジ22はPCIマスタとして
も、ローカルバスマスタとしても動作し得る。CPU1
2が集積プロセッサ外部のPCI「スレーブ」にアクセ
スすると、PCIブリッジ22はPCIマスタとして動
作する。典型的には、PCIブリッジ22のこれらのP
CIマスタサイクルの間に、CPU12または別のロー
カルバスマスタ(たとえばDMAコントローラ)がCP
Uローカルバス14を所有し、PCIブリッジ22がP
CIバス20を所有する。逆に、CPUローカルバス1
4上にある装置に対するPCI外部マスタアクセスに関
しては、PCIブリッジ22は外部マスタに関してター
ゲットまたはスレーブとして機能し、CPUローカルバ
ス14のマスタとして機能する。
The PCI bridge 22 can operate as both a PCI master and a local bus master. CPU1
When 2 accesses a PCI "slave" external to the integrated processor, PCI bridge 22 operates as a PCI master. Typically, these P's of PCI bridge 22
During the CI master cycle, the CPU 12 or another local bus master (eg DMA controller)
Owns U local bus 14 and PCI bridge 22 is P
Owns the CI bus 20. Conversely, CPU local bus 1
For PCI external master access to devices residing on device 4, PCI bridge 22 acts as a target or slave to the external master and acts as a master of CPU local bus 14.

【0013】結果として、PCIマスタ(すなわち周辺
装置28等)がPCIバス20の所有権を得て、メモリ
コントローラ16等のCPUローカルバス上にある装置
に対応するサイクルを始めると、PCIブリッジ22は
ローカルバス14の所有権を得る。この期間中に、CP
U12および他の内部マスタはローカルバス14を用い
ることはできない。これによって、上述のように主メモ
リ17内のデータへのアクセスは少なくとも数クロック
サイクルを要するので、システムの動作にかなりの遅延
が生じる恐れがあり、CPU12等の他のシステム資源
は、外部マスタから/にデータがアクセスされている
間、待たなくてはならない。PCIマスタは非常に遅い
速度でデータを転送し得るし、かつバーストデータ転送
の実行中に複数の倍長語を転送し得ることがこの問題を
さらに大きくしている。結果として、PCIマスタが低
速でシステムメモリ17にアクセスすると、システムメ
モリバスおよびCPUローカルバスのバンド幅が制限さ
れる。
As a result, when the PCI master (ie, peripheral device 28, etc.) takes ownership of PCI bus 20 and initiates a cycle corresponding to a device on the CPU local bus such as memory controller 16, PCI bridge 22 will Take ownership of the local bus 14. During this period, CP
U12 and other internal masters cannot use local bus 14. As a result, since access to the data in the main memory 17 requires at least several clock cycles as described above, a considerable delay may occur in the operation of the system. You must wait while the data is being accessed in /. This problem is compounded by the fact that PCI masters can transfer data at very slow rates and can transfer multiple doublewords during burst data transfers. As a result, the slow access of the PCI master to the system memory 17 limits the bandwidth of the system memory bus and the CPU local bus.

【0014】[0014]

【発明の概要】上で概略的に述べた問題は、周辺PCI
マスタ装置から主メモリへのデータアクセスを調整する
PCIブリッジを含むコンピュータシステムを提供する
ことによって、大部分解決される。PCIバスブリッジ
は、PCIマスタによって実行されるバーストメモリサ
イクルをCPUローカルバス上の単一のメモリサイクル
に変換する。PCIマスタが書込サイクルの間にデータ
を送信する、または読出サイクルの間にデータを受信す
る準備ができていない場合にCPUローカルバスを介し
て次のデータトランザクションのメモリアドレスを駆動
することによってデータトランザクションを最適化する
ようにPCIブリッジが機能する。メモリコントローラ
ユニット(MCU)はCPUローカルバスからメモリア
ドレスを受取り、これが有効メモリ領域内にあることを
判断し、アドレス信号を行アドレス信号および列アドレ
ス信号にデコードする。行アドレス信号は直ちにDRA
Mメモリに適切な行アドレスストローブ信号(RAS)
とともに入力され、アクセスされるメモリのページおよ
びバンクを示す。DRAMメモリは、メモリの適切なペ
ージを開くことによって応答し、PCIマスタがデータ
を与えるまたは受取る準備ができるまでMCUが待たな
くてはならなければDRAMページを開くのに必要であ
ろうプリチャージ時間およびアクセス時間を節約する。
SUMMARY OF THE INVENTION The problems outlined above are related to peripheral PCI.
It is largely solved by providing a computer system that includes a PCI bridge that coordinates data access from the master device to main memory. The PCI bus bridge translates burst memory cycles performed by the PCI master into a single memory cycle on the CPU local bus. Data by driving the memory address of the next data transaction via the CPU local bus when the PCI master is not ready to send data during a write cycle or receive data during a read cycle The PCI bridge works to optimize transactions. The memory controller unit (MCU) receives the memory address from the CPU local bus, determines that it is in the valid memory area, and decodes the address signal into a row address signal and a column address signal. The row address signal is immediately DRA
Row address strobe signal (RAS) appropriate for M memory
With pages and banks of memory that are input and accessed with. The DRAM memory responds by opening the appropriate page of memory and the precharge time that would be required to open the DRAM page if the MCU had to wait until the PCI master was ready to give or receive data. And save access time.

【0015】PCIマスタが書込データを与えるのをP
CIブリッジが待つ、またはPCIマスタが読出データ
を受取る準備ができたことを示す(バースト書込および
読出に関する第1のデータトランザクションの後)のを
待つ間、PCIブリッジはMEMWAIT信号をMCU
に対してアサートして、データがまだ書込まれるかまた
は読出される準備ができていないことを示す。しかしな
がら、このMEMWAIT期間の間であり、かつPCI
がローカルバスの所有権を有している間、MCUは次の
アドレス信号を用いてメモリの適切なページを開き、後
続のデータ転送を速める。マスタからデータがPCIブ
リッジによって受取られると(またはマスタがデータを
読出す準備ができたことを示すと)、PCIブリッジは
MEMWAIT信号をデアサートし、MCUが列アドレ
スストローブ(CAS)信号をアサートして、データ転
送を行なう。
When the PCI master gives write data,
While waiting for the CI bridge or the PCI master to indicate that it is ready to receive read data (after the first data transaction for burst write and read), the PCI bridge sends the MEMWAIT signal to the MCU.
To indicate that the data is not yet ready to be written or read. However, during this MEMWAIT period, and PCI
While it has ownership of the local bus, the MCU uses the next address signal to open the appropriate page of memory to speed up subsequent data transfers. When data is received from the master by the PCI bridge (or indicating that the master is ready to read the data), the PCI bridge deasserts the MEMWAIT signal and the MCU asserts the column address strobe (CAS) signal. , Transfer data.

【0016】PCIマスタが次の書込データを送る、ま
たは現在PCIブリッジによってラッチされているデー
タを読出す準備ができたことを示すのをPCIブリッジ
が待つ間、MEMWAIT信号をアサートするのと実質
的に同時に、PCIブリッジはローカルバスアドレスス
トローブADS#を駆動して、次のデータトランザクシ
ョンをはじめ、次のトランザクションのメモリアドレス
を駆動する。アドレスおよび制御信号を与えることによ
ってより早く次のデータトランザクションを始めること
によって、MCUはアドレス信号をデコードし、かつD
RAMページを開くことができ、一方で同時にマスタ装
置はデータを受取るまたは駆動する準備をする。DRA
Mページが開かれ、MEMWAIT信号がアクティブで
ある間、PCIブリッジがMEMWAITラインをデア
サートしてPCIマスタがデータ転送を完了する準備が
できたことを示すまで、MCUは「減速する」または待
ち状態サイクルを介してループする。
Effectively asserting the MEMWAIT signal while the PCI bridge waits for the PCI master to send the next write data or to indicate that it is ready to read the data currently latched by the PCI bridge. At the same time, the PCI bridge drives the local bus address strobe ADS # to drive the memory address of the next transaction, including the next data transaction. By initiating the next data transaction by applying the address and control signals, the MCU decodes the address signals and D
The RAM page can be opened, while at the same time the master device is ready to receive or drive data. DRA
While the M page is open and the MEMWAIT signal is active, the MCU "slows down" or waits until the PCI bridge deasserts the MEMWAIT line to indicate that the PCI master is ready to complete the data transfer. Loop through.

【0017】MEMWAITラインがPCIブリッジに
よってデアサートされると、MCUはメモリアクセスを
「加速」し、DRAMページを開いたままでBRDY#
ラインをアサートすることによってサイクルを完了す
る。BRDY#がアサートされると、PCIブリッジ
は、ADS#をアサートして新しいアドレスをCPUロ
ーカルバスへと駆動することによって次のサイクルを始
める。PCIブリッジがMEMWAITをアサートして
メモリバスを減速し、その間にMCUがアドレスをデコ
ードして次のアクセスが同じDRAMページまたはDR
AMバンク内にあるかどうかを判断する。MEMWAI
Tがアサートされるている間に、適切なDRAMページ
を開くことによって次のアクセスが行なわれる。
When the MEMWAIT line is deasserted by the PCI bridge, the MCU "accelerates" the memory access, leaving the DRAM page open and BRDY #.
Complete the cycle by asserting the line. When BRDY # is asserted, the PCI bridge begins the next cycle by asserting ADS # and driving the new address onto the CPU local bus. The PCI bridge asserts MEMWAIT to slow down the memory bus while the MCU decodes the address and the next access will be the same DRAM page or DR
Determine if it is in the AM bank. MEMWAI
The next access is made by opening the appropriate DRAM page while T is asserted.

【0018】MEMWAITがアサートされる期間中、
システムメモリのバンクのうちの何らかのものに対して
システムタイマによってリフレッシュサイクルが始めら
れて、そのバンク内のDRAM回路をリフレッシュでき
る。MCUはリフレッシュサイクルがサービスされる前
にまずアドレスされたメモリ位置をラッチしなくてはな
らない。リフレッシュが完了した後、その間に別のペー
ジへのアドレスが受取られるのでない限り、メモリ内の
前のページが再び開かれる。
During the period when MEMWAIT is asserted,
A refresh cycle may be initiated by the system timer on any of the banks of system memory to refresh the DRAM circuitry within that bank. The MCU must first latch the addressed memory location before the refresh cycle is serviced. After the refresh is complete, the previous page in memory is reopened unless an address to another page is received in the meantime.

【0019】本発明の他の目的および利点は、添付の図
面を参照して、以下の説明を読むことにより明らかにな
るであろう。
Other objects and advantages of the present invention will become apparent upon reading the following description with reference to the accompanying drawings.

【0020】本発明には種々の変形および代替的な形態
が可能だが、その具体的な実施例を例として図面に示
し、ここに詳細に説明する。しかしながら、図面および
その詳細な説明は本発明を開示する特定の形に制限する
ものではなく、本発明は前掲の特許請求の範囲によって
規定されるその範囲および精神に含まれるすべての変
形、均等物および代替物を包含するものである。
While the invention is susceptible to various modifications and alternative forms, specific embodiments thereof have been shown by way of example in the drawings and will herein be described in detail. However, the drawings and their detailed description are not intended to limit the invention to the particular forms disclosed, as the invention is intended to include all modifications and equivalents within the scope and spirit of the invention as defined by the appended claims. And alternatives.

【0021】[0021]

【詳細な説明】ここで図2を参照して、好ましい実施例
に従って構成されるコンピュータシステムは一般に、集
積プロセッサ(IP)50と、PCIバス100を介し
て集積プロセッサ50に接続される外部PCIマスタ7
5と、好ましくはメモリバス150によって集積プロセ
ッサ50に接続されるDRAM回路からなる主メモリユ
ニット125とを含む。集積プロセッサ50は好ましく
は、CPUコア60と、CPUコア60に結合されるC
PUローカルバス65と、ローカルバス65と外部PC
Iバス100との間でデータ、アドレス、および制御信
号をインタフェースさせることができるPCIバスブリ
ッジ80と、メモリコントローラユニット(MCU)9
0と、タイマ85と、オンチップ周辺装置70とを含
む。集積プロセッサ50の図示される構成要素の各々
は、好ましくは単一の集積回路上に製造され、共通の集
積回路パッケージ内に収容される。
DETAILED DESCRIPTION Referring now to FIG. 2, a computer system configured in accordance with the preferred embodiment generally includes an integrated processor (IP) 50 and an external PCI master connected to integrated processor 50 via PCI bus 100. 7
5 and a main memory unit 125, which preferably comprises DRAM circuitry connected to the integrated processor 50 by a memory bus 150. The integrated processor 50 is preferably a CPU core 60 and a C coupled to the CPU core 60.
PU local bus 65, local bus 65 and external PC
A memory controller unit (MCU) 9 and a PCI bus bridge 80 capable of interfacing data, address and control signals with the I-bus 100.
0, a timer 85, and an on-chip peripheral device 70. Each of the illustrated components of integrated processor 50 are preferably manufactured on a single integrated circuit and housed in a common integrated circuit package.

【0022】好ましい実施例では、CPUコア60はモ
デル80486マイクロプロセッサ命令セットを実現
し、CPUバス65はモデル80486スタイルローカ
ルバスを含む。したがって、好ましい実施例において、
CPUローカルバス65は32ビット組のデータライン
D[31:0]と、32ビット組のアドレスラインA
[31:0]と、1組の制御ライン(具体的には図示せ
ず)とを含む。しかしながら、CPUコアは、本発明の
原理から逸脱することなく、他のマイクロプロセッサタ
イプの命令セットを実現するように構成されてもよいこ
とを理解されたい。
In the preferred embodiment, CPU core 60 implements a model 80486 microprocessor instruction set and CPU bus 65 comprises a model 80486 style local bus. Therefore, in the preferred embodiment,
The CPU local bus 65 has a 32-bit data line D [31: 0] and a 32-bit address line A.
[31: 0] and a set of control lines (not specifically shown). However, it should be understood that the CPU core may be configured to implement other microprocessor type instruction sets without departing from the principles of the present invention.

【0023】当業者には理解されるように、PCIバス
ブリッジ80は好ましくはバスインタフェースユニット
(BIU)(具体的には図示せず)の一部を形成し、C
PUローカルバス65とPCIバス100との間の標準
的なインタフェースを与える。このように、PCIバス
ブリッジ80は、CPUローカルバス65とPCIバス
100との間のデータ、アドレス、および制御信号の転
送を調整する。認められるように、CPUローカルバス
65は好ましくは80486スタイルローカルバスを含
み、これは当業者には周知であるように別個のアドレス
およびデータラインを含み、一方PCIバス100は複
数のマルチプレクスされるアドレス/データラインを含
む。したがって、当業者には理解されるように、PCI
バスブリッジ80は、好ましくはローカルバス65の3
2ビットアドレスラインA[31:0]をPCIバス1
00上のマルチプレクスされるアドレス/データライン
AD[31:0]に適切なマルチプレクスユニット(図
示せず)を介して接続するように機能する。同様に、P
CIブリッジ80は、ローカルバス65の32ビットデ
ータラインD[31:0]をPCIバス100のマルチ
プレクスされるアドレス/データラインAD[31:
0]に直接接続する。
As will be appreciated by those skilled in the art, PCI bus bridge 80 preferably forms part of a bus interface unit (BIU) (not specifically shown), and C
It provides a standard interface between the PU local bus 65 and the PCI bus 100. As such, the PCI bus bridge 80 coordinates the transfer of data, addresses, and control signals between the CPU local bus 65 and the PCI bus 100. As will be appreciated, CPU local bus 65 preferably includes an 80486 style local bus, which includes separate address and data lines, as is well known to those skilled in the art, while PCI bus 100 is multiple multiplexed. Includes address / data lines. Therefore, as will be appreciated by those skilled in the art, PCI
The bus bridge 80 is preferably 3 of the local buses 65.
2-bit address lines A [31: 0] are connected to PCI bus 1
Function to connect to the multiplexed address / data lines AD [31: 0] on 00 through an appropriate multiplex unit (not shown). Similarly, P
The CI bridge 80 connects the 32-bit data lines D [31: 0] of the local bus 65 to the multiplexed address / data lines AD [31: of the PCI bus 100.
0] directly.

【0024】PCIブリッジ80はまた、CPUローカ
ルバス65の制御ラインを介して駆動されるいくつかの
制御信号、ADS#、R/W、M/IO、バイトイネー
ブル(C/BE#)、D/CおよびBLAST#を発生
する。通常の規定に従って、ADS#はCPUローカル
バス65を介して読出または書込サイクルを始めるよう
に機能するアドレスストローブ制御信号である。PCI
ブリッジ80は、ローカルバス65上にターゲットを有
するバスサイクルのためにADS#信号を発生する。A
DS#信号は、好ましくはアクティブ・ロー・ストロー
ブ信号である。PCIブリッジ80はまた、PCIバス
上のC/BE#(0)ラインの状態に応答してR/W信
号を発生して、トランザクションが読出または書込サイ
クルを含むかどうかを示す。M/IOは、メモリまたは
I/O装置にサイクル状態を示す。最後に、BLAST
#信号は、データがローカルバス上の単一のアクセスに
おいて転送されているのか、またはバーストモードにお
いて転送されているのかを示す。好ましい実施例に従え
ば、PCIブリッジ80はまた、メモリコントローラユ
ニット(MCU)90にMEMWAIT信号を送り、こ
れからMEMHIT信号を受取る。これらの信号は、図
2に示されるようにPCIブリッジ80とMCU90と
の間の直接の電気的接続を介して伝送されてもよく、ま
たはCPUローカルバス65内の制御線を介して与えら
れてもよい。
The PCI bridge 80 also has several control signals, ADS #, R / W, M / IO, byte enable (C / BE #), D /, which are driven through the control lines of the CPU local bus 65. Generate C and BLAST #. In accordance with normal convention, ADS # is an address strobe control signal which functions to initiate a read or write cycle via CPU local bus 65. PCI
Bridge 80 generates the ADS # signal for bus cycles with the target on local bus 65. A
The DS # signal is preferably an active low strobe signal. PCI bridge 80 also generates an R / W signal in response to the state of the C / BE # (0) line on the PCI bus to indicate whether the transaction involves a read or write cycle. M / IO indicates the cycle status to the memory or I / O device. Finally, BLAST
The # signal indicates whether data is being transferred in a single access on the local bus or in burst mode. According to the preferred embodiment, the PCI bridge 80 also sends a MEMWAIT signal to and receives a MEMWAIT signal from the memory controller unit (MCU) 90. These signals may be transmitted via a direct electrical connection between the PCI bridge 80 and the MCU 90 as shown in FIG. 2 or provided via control lines within the CPU local bus 65. Good.

【0025】PCIブリッジ80はまた、CPUローカ
ルバス上の構成要素からRDY#/BRDY#制御信号
を受取って、その構成要素によるサイクルの完了を示
す。たとえば、メモリコントローラ90がBRDY#を
アサートすると、データラインD[31:0]を介して
データを与えていること、またはデータを受取ったこと
を示す。PCIバス100の側で、PCIブリッジ80
は、図2に示されるように好ましくはPCIマスタ75
に制御ラインを介して接続するTRDY#出力信号を発
生する。同様に、PCIブリッジ80は、好ましくはP
CIマスタ75と集積プロセッサ50との間の制御ライ
ンを介してPCIマスタ75からIRDY#を受取る。
IRDY#およびTRDY#の双方ともがアサートされ
るとデータが転送される。
PCI bridge 80 also receives the RDY # / BRDY # control signals from a component on the CPU local bus to indicate the completion of a cycle by that component. For example, memory controller 90 asserting BRDY # indicates that it is providing data or has received data over data lines D [31: 0]. On the side of the PCI bus 100, the PCI bridge 80
Is preferably a PCI master 75, as shown in FIG.
To the TRDY # output signal which is connected to the control line via the control line. Similarly, the PCI bridge 80 is preferably P
Receive IRDY # from PCI master 75 via a control line between CI master 75 and integrated processor 50.
Data is transferred when both IRDY # and TRDY # are asserted.

【0026】CPU内部ローカルバス65は、好ましく
は複数のバスマスタをサポートすることができるマルチ
マスタバスである。CPU60、PCIブリッジ80、
および周辺装置70(たとえば直接メモリアクセスコン
トローラを含み得る)は各々、CPUローカルバス65
の所有権を主張することができる。これらの内部マスタ
による内部ローカルバス65の所有権は、典型的にはバ
スインタフェースユニット(BIU)または他のバスア
ービタ(具体的には図示せず)によって調停される。
The CPU internal local bus 65 is preferably a multi-master bus capable of supporting multiple bus masters. CPU60, PCI bridge 80,
And peripherals 70 (which may include, for example, a direct memory access controller) each include a CPU local bus 65.
Can claim ownership. Ownership of internal local bus 65 by these internal masters is typically arbitrated by a bus interface unit (BIU) or other bus arbiter (not specifically shown).

【0027】本発明の動作の説明において以下により詳
細に説明するように、PCIブリッジ80はPCIマス
タとして機能し得る。集積プロセッサ50が外部PCI
「スレーブ」にアクセスすると、PCIブリッジ80
は、PCIバス100の所有権を得ることによって他の
外部PCIマスタと同様に動作する。したがって、CP
Uコア60、または周辺装置70がCPUローカルバス
65の所有権を主張すると、PCIブリッジ80は、好
ましくは、サイクルがPCIバス100上にある装置に
向けられていれば、PCIバス100の所有権を主張す
る。
PCI bridge 80 may function as a PCI master, as described in more detail below in the description of the operation of the present invention. The integrated processor 50 is an external PCI
When you access the "slave", the PCI bridge 80
Acts like any other external PCI master by taking ownership of the PCI bus 100. Therefore, CP
When the U-core 60 or peripheral device 70 claims ownership of the CPU local bus 65, the PCI bridge 80 preferably takes ownership of the PCI bus 100 if the cycle is directed to a device on the PCI bus 100. Insist.

【0028】逆に、PCI外部マスタがCPUローカル
バス65上にある装置に対してアクセスを求める場合に
は、PCIブリッジ80は外部PCIマスタに関するタ
ーゲットまたはスレーブとして動作する。PCIブリッ
ジはこれに応答してCPUローカルバス65上で対応す
るサイクルを実行し、それによって外部PCIマスタが
たとえばシステムメモリ125内に割当てられたデータ
を読出し、かつ書込むことを可能にする。したがって、
これらのPCIマスタサイクルの間に、外部PCIマス
タはPCIバス100を所有し、PCIブリッジ80は
ローカルバス65を所有する。PCIブリッジ80がC
PUローカルバス65の所有権をリクエストすると、H
OLDリクエストをCPU60に発生し、マスタシップ
が付与されるとCPU60はPCIブリッジ80に肯定
応答信号HLDAを戻す。
Conversely, when a PCI external master seeks access to a device on CPU local bus 65, PCI bridge 80 acts as a target or slave to the external PCI master. The PCI bridge in response executes a corresponding cycle on the CPU local bus 65, thereby allowing the external PCI master to read and write data allocated in, for example, system memory 125. Therefore,
During these PCI master cycles, the external PCI master owns the PCI bus 100 and the PCI bridge 80 owns the local bus 65. PCI bridge 80 is C
When requesting ownership of the PU local bus 65, H
When an OLD request is issued to the CPU 60 and mastership is given, the CPU 60 returns an acknowledge signal HLDA to the PCI bridge 80.

【0029】メモリコントローラ90は好ましくは、主
メモリ125への高性能32ビットデータ経路をサポー
トする統合制御ユニットを含む。好ましい実施例におい
ては、メモリコントローラ90は工業規格モジュールを
用いて256MBまでのDRAMをサポートする4つの
32ビットバンクの直接の接続を与える。MCU90は
主メモリ125へのアクセスを制御し、CPUローカル
バス65に接続して、CPU60、PCIブリッジ80
および他の周辺装置(包括的に70として示される)の
ためのメモリへの経路を与える。上述のように、MCU
90は好ましくは、本発明の原理に従ってPCIブリッ
ジ80にMEMHIT信号を与え、PCIブリッジから
MEMWAIT信号を受取る。MCU90はシステムタ
イマ85からタイミング信号を受取る。
Memory controller 90 preferably includes an integrated control unit that supports a high performance 32-bit data path to main memory 125. In the preferred embodiment, the memory controller 90 uses industry standard modules to provide a direct connection of four 32-bit banks supporting up to 256 MB of DRAM. The MCU 90 controls access to the main memory 125, connects to the CPU local bus 65, and connects the CPU 60 and the PCI bridge 80.
And a path to memory for other peripherals (generally shown as 70). As mentioned above, MCU
90 preferably provides a MEMHIT signal to and receives a MEMWAIT signal from PCI bridge 80 in accordance with the principles of the present invention. The MCU 90 receives the timing signal from the system timer 85.

【0030】引続き図2を参照して、MCU90は好ま
しくは主メモリ125に、アドレスラインMA[11:
0]、メモリデータラインMD[31:0]、行アドレ
スストローブ(RAS)ラインRAS#(3:0)、列
アドレスストローブ(CAS)ラインCAS#(3:
0)および書込イネーブルラインWE#を含むメモリバ
ス150を介して接続する。アドレス信号はメモリアド
レスラインMA[11:0]を介して伝送され、マルチ
プレクスされる、およびマルチプレクスされないメモリ
装置のためにアクセスされるメモリ内の位置を選択す
る。データライン(MD31─MD0)は、従来の技術
に従って、DRAM回路および集積プロセッサ50、ま
たは他の外部装置に、およびこれらからデータを転送す
るためのメモリデータバスラインである。書込イネーブ
ル信号WE#は、メモリアクセスが書込サイクルである
かどうかを示し、典型的にはCPUローカルバス上のW
/R制御信号から捕捉される。
Continuing to refer to FIG. 2, the MCU 90 preferably connects to the main memory 125, address lines MA [11:
0], memory data lines MD [31: 0], row address strobe (RAS) lines RAS # (3: 0), column address strobe (CAS) lines CAS # (3:
0) and the write enable line WE #. Address signals are transmitted over the memory address lines MA [11: 0] to select the location in memory to be accessed for the multiplexed and non-multiplexed memory devices. The data lines (MD31-MD0) are memory data bus lines for transferring data to and from the DRAM circuit and integrated processor 50, or other external device, according to conventional techniques. The write enable signal WE # indicates whether the memory access is a write cycle, typically W on the CPU local bus.
/ R control signal.

【0031】慣用の技術に従って、行アドレスストロー
ブ(RAS)ライン(RAS3#−RAS0#)は、好
ましくは、各DRAMバンクに関してメモリアドレスバ
スMA[11:0]から行アドレスデータをクロックイ
ンするためにDRAM回路が用いるアクティブロー出力
を含む。好ましい実施例では、1つのRASラインが各
バンク専用となる。4つのDRAMバンクが用いられる
好ましい実施例では4つのRASラインが設けられる。
同様に、4つの列アドレスストローブ(CAS)ライン
(CAS3#−CAS0#)は、1バイトにつき1CA
Sで、DRAMバイトの各バンクに対してメモリアドレ
スバスMA[11:0]から列アドレスデータをクロッ
クインするのにDRAM回路が用いるアクティブロー出
力として設けられる。したがって、たとえばCAS3#
は各DARMバンク内のバイト3に関するDRAM列ア
ドレスストローブである。
In accordance with conventional techniques, the row address strobe (RAS) lines (RAS3 # -RAS0 #) are preferably for clocking in row address data from the memory address bus MA [11: 0] for each DRAM bank. It includes an active low output used by the DRAM circuit. In the preferred embodiment, one RAS line is dedicated to each bank. In the preferred embodiment, where four DRAM banks are used, four RAS lines are provided.
Similarly, four column address strobe (CAS) lines (CAS3 # -CAS0 #) have 1 CA per byte.
At S, it is provided as an active low output used by the DRAM circuit to clock in column address data from memory address bus MA [11: 0] to each bank of DRAM bytes. So, for example, CAS3 #
Is the DRAM column address strobe for byte 3 in each DARM bank.

【0032】引続き図2を参照して、主メモリ125は
好ましくは、各バンクが32ビット(すなわち4バイ
ト)幅である複数のバンクに構成されるDRAM回路を
含む。当業者には理解されるように、DRAMバンクの
各々は典型的には「ページ」にさらに分割される。ペー
ジサイズは、使用されるそれぞれのDRAMチップのサ
イズに依存する。システムボード上に配置され得るチッ
プの数を減らすようにより少ないコネクタピンでDRA
Mチップが動作することを可能にするために、DRAM
チップはマルチプレクスされた態様でアドレスされる。
すなわち、各メモリセルのアドレスが2つの部分に分け
て伝送される。アドレスの前半は行アドレスを規定し、
後半は列アドレスを規定する。好ましい実施例では、メ
モリアドレスバスMA(11:0)の最初の12のライ
ンはマルチプレクスされる出力であり、RAS信号の間
に行アドレス位置を、CAS信号の間に列アドレス位置
を伝える。したがって、個々のメモリセルが列アドレス
および行アドレスによって選択される。行アドレスおよ
び列アドレス信号がDRAMメモリに入力される従来の
態様は、図3および4の従来のタイミング図に示され
る。図3(読出サイクル)および図4(書込サイクル)
に一般的に示されるように、RAS(行アドレスストロ
ーブ)制御ラインがアサートされると(すなわちRAS
がローに駆動されると)、行アドレスがDRAMメモリ
のアドレス入力に駆動される。これは行アドレスを内部
行アドレスラッチにクロックする。行アドレスは、RA
Sがアサートされる前の期間(tASR )と、RASがア
サートされた後の期間(tRAH )との間、安定していな
くてはならない。アドレス入力は次に列アドレスに変え
られ、CAS(列アドレスストローブ)がアサートされ
る(CASがローに駆動される)。CASはまた出力イ
ネーブルとして機能して、CASがアサートされると必
ずデータピンアウト上の3状態ドライバが可能化される
ようにする。CASがアサートされ得る時間は、最小の
RAS対CAS遅延期間(tRCD )によって決定され
る。RASからのアクセス時間(tRAC )およびCAS
からのアクセス時間(tCAC )の両方が出会ってから、
データが利用可能となる。性能の制限はRASからのア
クセス時間(tRAC )によって決定される。メモリアク
セスにとって決定的となる別のタイミングパラメータは
RASプリチャージ時間(tRP)である。プリチャージ
時間(tRP)とは、DRAM回路が前のアクセスから回
復するのに必要な時間のことである。データが利用可能
となった瞬間に同じDRAM装置への別のサイクルが始
められるわけではない。したがって、ダイナミックメモ
リに対するサイクル時間はアクセス時間を上回る。アク
セス時間とサイクル時間との差がプリチャージ時間であ
る。DRAM回路のこれらのタイミング特性は、メモリ
トランザクションを迅速にしようとすると決定的なもの
となる。
Continuing to refer to FIG. 2, main memory 125 preferably includes DRAM circuitry arranged in banks, each bank being 32 bits (ie, 4 bytes) wide. As will be appreciated by those skilled in the art, each DRAM bank is typically subdivided into "pages". The page size depends on the size of each DRAM chip used. DRA with fewer connector pins to reduce the number of chips that can be placed on the system board
DRAM to enable M chips to operate
The chips are addressed in a multiplexed fashion.
That is, the address of each memory cell is transmitted in two parts. The first half of the address defines the row address,
The second half defines the column address. In the preferred embodiment, the first twelve lines of the memory address bus MA (11: 0) are multiplexed outputs, carrying row address locations during the RAS signal and column address locations during the CAS signal. Therefore, individual memory cells are selected by column and row addresses. The conventional manner in which row address and column address signals are input to DRAM memory is shown in the conventional timing diagrams of FIGS. FIG. 3 (read cycle) and FIG. 4 (write cycle)
When the RAS (row address strobe) control line is asserted (ie, RAS
Is driven low), the row address is driven to the address input of the DRAM memory. This clocks the row address into the internal row address latch. The row address is RA
It must be stable between the period before S is asserted (t ASR ) and the period after RAS is asserted (t RAH ). The address input is then converted to the column address and CAS (column address strobe) is asserted (CAS is driven low). CAS also functions as an output enable to ensure that the tristate driver on the data pinout is enabled whenever CAS is asserted. The time that CAS can be asserted is determined by the minimum RAS to CAS delay period (t RCD ). Access time from RAS (t RAC ) and CAS
After both access time (t CAC ) from
The data will be available. The performance limit is determined by the access time from RAS (t RAC ). Another timing parameter that is crucial for memory access is the RAS precharge time (t RP ). Precharge time (t RP ) is the time required for the DRAM circuit to recover from a previous access. Another cycle to the same DRAM device is not started at the moment the data becomes available. Therefore, the cycle time for the dynamic memory exceeds the access time. The difference between the access time and the cycle time is the precharge time. These timing characteristics of DRAM circuits are crucial when trying to expedite memory transactions.

【0033】引続き図2を参照して、DRAM主メモリ
125の動作に関する別の重要なファクタは、DRAM
回路の周期的リフレッシュの必要性に関する。当業者に
は理解されるように、データビットをストアするのに個
々のDRAM回路において用いられるトランジスタは典
型的には1つだけである。トランジスタは、単に、キャ
パシタにわずかな電荷をストアするスイッチとして機能
する。電荷の量は「0」がストアされるか、「1」がス
トアされるかを決定する。どのキャパシタにも漏れがあ
るので、DRAMチップ内のキャパシタの電荷は、絶縁
体の損失の結果、ゆっくりと放散する。最終的にキャパ
シタの電荷は完全に放散し、メモリ内容が失われてしま
う恐れがある。この問題に対する解決法は、データが失
われる前にDRAM回路を読出し、同じデータをDRA
Mチップに再度書込むことである。この手順は、DRA
Mを「リフレッシュする」と称する。
Continuing to refer to FIG. 2, another important factor regarding the operation of the DRAM main memory 125 is the DRAM.
It relates to the need for periodic refreshing of the circuit. As will be appreciated by those skilled in the art, there is typically only one transistor used in each DRAM circuit to store a data bit. The transistor simply acts as a switch that stores a small charge on the capacitor. The amount of charge determines whether a "0" or a "1" is stored. Since there is leakage in any capacitor, the charge on the capacitors in the DRAM chip will slowly dissipate as a result of the loss of the insulator. Eventually the charge on the capacitor will be completely dissipated and the memory contents may be lost. A solution to this problem is to read the DRAM circuit before the data is lost and DRA the same data.
To rewrite to the M chip. This procedure is
M is called "refresh".

【0034】DRAMリフレッシュ速度は、好ましくは
システムタイマ85から導出される。好ましい実施例で
は、ほとんどのDRAMリフレッシュサイクルがシステ
ムの性能に影響を与えないように、「隠れた」RAS前
CASの時間をずらしたリフレッシュ機構が用いられ
る。リフレッシュサイクルに必要な期間をさらに最小に
するために、MCU90は好ましくは空のバンクに対し
てはリフレッシュサイクルを行なわない(すなわちDR
AMメモリの特定のバンクにDRAM回路が設けられて
いない場合)。リフレッシュの時間をずらすと、各DR
AMバンクを個々にリフレッシュすることによって瞬時
の電流の需要を低減する。この態様で、バンク0がリフ
レッシュされ、次にバンク1がリフレッシュされるとい
う具合である。リフレッシュサイクルが起こる周期はシ
ステムタイマ85によって決定される。タイマによって
与えられるクロックは、好ましくは標準の周波数(25
6KHz)の4倍であって、リフレッシュサイクルは4
μ秒ごとに始まり、事実上のリフレッシュ周期は1ミリ
秒につき256サイクルとなる。結果として、各DRA
Mバンクを別個に、かつ256のリフレッシュサイクル
を行なうのに標準のリフレッシュ周期である4ミリ秒以
内で連続して、駆動するために、タイマ出力を用いるこ
とができる。この態様で、各バンクはいかなるバンクも
同時にリフレッシュされることなく、約15.625μ
秒の標準速度でリフレッシュサイクルを受取る。従来の
技術に従えば、リフレッシュサイクルはRASの前縁の
前にCASをアサートすることによって始められ、これ
は通常のDRAMアクセス中には起こらない。
The DRAM refresh rate is preferably derived from the system timer 85. In the preferred embodiment, a "hidden" pre-RAS CAS staggered refresh mechanism is used so that most DRAM refresh cycles do not impact system performance. To further minimize the period required for a refresh cycle, MCU 90 preferably does not perform a refresh cycle on empty banks (ie DR
If no DRAM circuit is provided in a specific bank of AM memory). If you shift the refresh time, each DR
Instantaneous current demand is reduced by individually refreshing the AM banks. In this manner, bank 0 is refreshed, then bank 1 is refreshed, and so on. The period in which the refresh cycle occurs is determined by the system timer 85. The clock provided by the timer is preferably a standard frequency (25
6 KHz) and the refresh cycle is 4
Starting every microsecond, the effective refresh period is 256 cycles per millisecond. As a result, each DRA
The timer output can be used to drive the M banks separately and continuously within the standard refresh period of 4 milliseconds for 256 refresh cycles. In this manner, each bank is approximately 15.625μ without any banks being refreshed at the same time.
Receive refresh cycles at a standard rate of seconds. According to the prior art, the refresh cycle is initiated by asserting CAS before the leading edge of RAS, which does not occur during normal DRAM access.

【0035】オンチップ周辺装置ブロック70は、好ま
しくは集積プロセッサ50内に実現され得る種々の周辺
装置を表わす。たとえば、直接メモリアクセスコントロ
ーラ(DMA)または割込コントローラ等の構成要素が
集積プロセッサパッケージの一体化した部分として含ま
れてもよい。当業者には理解されるように、種々の周辺
装置が集積プロセッサ50の一部として設けられる。
On-chip peripheral block 70 represents various peripherals that may preferably be implemented within integrated processor 50. For example, components such as a direct memory access controller (DMA) or interrupt controller may be included as an integral part of the integrated processor package. Various peripherals are provided as part of the integrated processor 50, as will be appreciated by those skilled in the art.

【0036】引続き図2を参照して、PCIバス100
およびPCIマスタ装置75を以下に詳細に説明する。
PCIバス100は、いくつかのPCIマスタをサポー
トすることができるマルチマスタ能力を備えた高性能3
2ビットマルチプレクスアドレス/データバスである。
好ましいコンピュータシステムの実施例では、どのPC
IマスタもPCIバスの制御をリクエストすることがで
き、バスの所有権を付与されると、どのPCIターゲッ
ト装置に対してもサイクルを発生することができる。
Continuing to refer to FIG. 2, PCI bus 100
The PCI master device 75 will be described in detail below.
The PCI bus 100 is a high performance 3 with multi-master capability that can support several PCI masters.
2-bit multiplex address / data bus.
In a preferred computer system embodiment, which PC
The I-master can also request control of the PCI bus, and once granted ownership of the bus, can issue cycles to any PCI target device.

【0037】PCIバス100の制御ラインおよびマル
チプレクスされるアドレス/データラインAD[31:
0]は、好ましくは、PCIマスタ75等のPCI周辺
構成要素とPCIブリッジ80とに接続する。制御ライ
ンは好ましくは、コマンド/バイトイネーブル、サイク
ルフレーム信号、ターゲットレディ信号、およびイニシ
エータレディ信号を含む。コマンド/バイトイネーブル
(C/BE3#−C/BE0#)は、同じラインを介し
てマルチプレクスされた転送コマンドおよびバイトイネ
ーブルデータを伝送する。コマンド/バイトイネーブル
ラインC/BE[3−0]#は、アドレス段階における
バスコマンドを規定する。データ段階の間に、C/BE
[3−0]#は、どのバイトレーンが意味のあるデータ
を有しているかを決定するバイトイネーブルとして用い
られる。
Control lines of the PCI bus 100 and multiplexed address / data lines AD [31:
0] preferably connects to PCI peripheral components such as PCI master 75 and PCI bridge 80. The control lines preferably include command / byte enable, cycle frame signals, target ready signals, and initiator ready signals. Command / Byte Enable (C / BE3 # -C / BE0 #) carries the multiplexed transfer command and byte enable data over the same line. The command / byte enable line C / BE [3-0] # defines the bus command in the address stage. C / BE during the data phase
[3-0] # is used as a byte enable that determines which byte lane has meaningful data.

【0038】サイクルフレーム信号(FRAME#)は
維持入力/出力信号であり、好ましくは、PCIマスタ
によって駆動されてトランザクションの開始および継続
を示すアクティブロー信号を含む。したがって、FRA
ME#はアサートされるとバストランザクションの開始
を伝える。FRAME#がデアサートされると、トラン
ザクションは最終データ段階にある。IRDY#は、最
終データ段階をマークするFRAME#のデアサートと
同じクロック端縁でアサートされなくてはならないこと
に注目されたい。
The cycle frame signal (FRAME #) is a sustain input / output signal and preferably includes an active low signal driven by the PCI master to indicate the start and continuation of a transaction. Therefore, FRA
ME # signals the start of a bus transaction when asserted. When FRAME # is deasserted, the transaction is in the final data stage. Note that IRDY # must be asserted on the same clock edge as FRAME # deasserts, which marks the final data stage.

【0039】ターゲット/ローカルバスレディ(TRD
Y#/LRDY#)は、PCIおよびCPUローカルバ
スターゲットによって駆動されて、ターゲットの現在の
データ段階を完了する能力を示すアクティブロー入力信
号を含む。TRDY#と関連して用いられるイニシエー
タレディ信号(IRDY#)は、PCIマスタの現在の
データ段階を完了する能力を示すアクティブロー信号を
含む。書込サイクルの間、たとえば、IRDY#は有効
書込データがAD[31−0]にあることを示す。
Target / Local Bus Ready (TRD
Y # / LRDY #) contains an active low input signal that is driven by the PCI and CPU local bus targets to indicate the target's ability to complete the current data phase. The initiator ready signal (IRDY #) used in conjunction with TRDY # includes an active low signal that indicates the PCI master's ability to complete the current data phase. During a write cycle, for example, IRDY # indicates that valid write data is at AD [31-0].

【0040】PCIバスに関するさらなる特徴は、オレ
ゴン州、ヒルスボロ(Hillsboro )のPCI特殊権益グ
ループ(PCI Special Interest Group)の刊行物「PC
Iローカルバス仕様」(PCI Local Bus Specification
)に説明され、ここに引用によって援用する。
A further feature of the PCI bus is the publication "PC," published by the PCI Special Interest Group of Hillsboro, Oregon.
I Local Bus Specification "(PCI Local Bus Specification
) And incorporated herein by reference.

【0041】引続き図2を参照して、本発明の動作を好
ましい実施例に従って説明する。PCIマスタ75は、
PCIバスを介してリクエストを駆動することによって
PCIバス100の所有権をリクエストする。PCIブ
リッジ80はこれに応答してHOLD信号をCPU60
に送り、CPUローカルバス65の所有権をリクエスト
する。CPU60は、HLDA信号をアサートすること
によってローカルバス65の所有権を付与し、これがP
CIブリッジ80によって受取られる。PCIブリッジ
80は、適切なバス付与信号をマスタ装置75に送るこ
とによってPCIマスタ装置75がPCIバス100を
所有することを認める。
Continuing to refer to FIG. 2, the operation of the present invention will be described in accordance with the preferred embodiment. The PCI master 75 is
Request ownership of the PCI bus 100 by driving the request through the PCI bus. In response to this, the PCI bridge 80 sends a HOLD signal to the CPU 60.
To request ownership of the CPU local bus 65. The CPU 60 grants ownership of the local bus 65 by asserting the HLDA signal, which is the P
Received by the CI bridge 80. PCI bridge 80 acknowledges that PCI master device 75 owns PCI bus 100 by sending the appropriate bus grant signal to master device 75.

【0042】PCIマスタ75によってFRAME#信
号がアサートされると、PCIバス100のマルチプレ
クスされるアドレスデータラインAD[31:0]が、
PCIマスタ75によって有効アドレスで駆動される。
PCIブリッジ80はアドレスを捕捉し、これをCPU
ローカルバス65を介して与える。アドレスがメモリ内
の位置に対応する場合には、MCU90はPCIブリッ
ジ80にMEMHIT信号を発行し、次にこれが装置選
択(デバイスセレクト)(DEVSEL#)をPCIマ
スタに発行して、トランザクションをクレームする。P
CIバス100のサイクル定義/バイトイネーブルライ
ンC/BE[3:0]が次にサイクル状態オペコードで
駆動され、現在のサイクルが書込(または読出)動作で
あることを示す。好ましい実施例に従えば、PCIブリ
ッジのM/IO信号は、PCIバスのC/BE[2]ラ
インから捕捉され、PCIブリッジの読出/書込信号R
/Wは、PCIバスのC/BE[0]ラインから捕捉さ
れる。次に(書込サイクルにおいて)、PCIマスタ7
5はPCIバス100のADラインを介して書込みたい
データを送り、IRDY#信号をアサートして有効デー
タがPCIバス上にあることを示す。
When the FRAME # signal is asserted by the PCI master 75, the multiplexed address data lines AD [31: 0] of the PCI bus 100 become
It is driven by the PCI master 75 at an effective address.
The PCI bridge 80 captures the address and sends it to the CPU
It is given via the local bus 65. If the address corresponds to a location in memory, the MCU 90 issues a MEMHIT signal to the PCI bridge 80, which then issues a device select (DEVSEL #) to the PCI master to claim the transaction. . P
The cycle definition / byte enable lines C / BE [3: 0] on CI bus 100 are then driven with a cycle state opcode, indicating that the current cycle is a write (or read) operation. According to the preferred embodiment, the PCI bridge M / IO signal is captured from the C / BE [2] line of the PCI bus and the PCI bridge read / write signal R is read.
/ W is captured from the C / BE [0] line of the PCI bus. Next (in the write cycle), the PCI master 7
5 sends the data to be written via the AD line of the PCI bus 100 and asserts the IRDY # signal to indicate that valid data is on the PCI bus.

【0043】PCIマスタ75によって始められたサイ
クルがバーストモード動作であれば、PCIマスタ75
は初期メモリアドレスを送り、次にPCIバス100を
介してデータ信号を駆動する。後続のサイクルで、PC
Iマスタ75は、連続するデータ伝送の各々についてメ
モリアドレスが4バイト増分されるべきであることを理
解して、バス100を介してデータ信号を駆動するのみ
である。
If the cycle initiated by PCI master 75 is burst mode operation, PCI master 75
Sends the initial memory address and then drives the data signal through PCI bus 100. PC in the subsequent cycle
The I-master 75 only drives the data signal over the bus 100, knowing that the memory address should be incremented by 4 bytes for each successive data transmission.

【0044】PCIマスタ75からのバースト伝送に応
答して、PCIブリッジ80は連続した(back-to-bac
k)メモリサイクルのシーケンスを発生する。CPUが
PCIブリッジ80によってホールドにされると、PC
Iマスタ75からのバーストサイクルは、従来の技術に
従ってBLAST#信号をアサートした状態に保つこと
によってCPUローカルバス65上の単一サイクルデー
タ転送のシーケンスに変形する。本発明の原理に従え
ば、PCIブリッジ80による主メモリへの単一のアク
セスの各々は、マスタ装置が最高速度で動作していると
きさえも、性能の点で妥協することなくPCIマスタの
速度に加減速することができる。
In response to the burst transmission from the PCI master 75, the PCI bridge 80 is back-to-bac
k) Generate a sequence of memory cycles. When the CPU is put on hold by the PCI bridge 80, the PC
The burst cycle from the I master 75 is transformed into a sequence of single cycle data transfers on the CPU local bus 65 by holding the BLAST # signal asserted in accordance with conventional techniques. In accordance with the principles of the present invention, each single access to main memory by PCI bridge 80 allows the speed of a PCI master to be compromised without compromising performance, even when the master device is operating at full speed. You can accelerate and decelerate.

【0045】本発明の動作は、PCIブリッジがメモリ
への書込サイクルを行なっているか、メモリへの読出サ
イクルを行なっているかによって異なる。これらの各サ
イクルを次に具体的に述べる。書込トランザクションの
間、PCIマスタ75からのバーストサイクルは、PC
Iブリッジ80によってCPUローカルバス65上の単
一サイクル書込アクセスのシーケンスに変えられる。P
CIマスタはまず、PCIバスのADラインAD[3
1:0]を介してアクセスしたいメモリ内の位置のアド
レスを駆動する。PCIブリッジ80はこれに応答して
CPUローカルバス65を介してアドレスを駆動し、M
EMHITがMCU90によって(ヒットがもし起これ
ば)発行される。デバイスセレクトがPCIブリッジ8
0によってアサートされ、PCIマスタに戻される。P
CIマスタによってPCIバスを介してデータが駆動さ
れ(IRDY#として示される)、PCIブリッジ80
へとデータがラッチされる(TRDY#によって示され
る)。PCIブリッジ80がPCIマスタ75から第1
のデータ情報およびアドレスを受取ると、PCIブリッ
ジ80はADS#信号をアサートし、アドレスおよびデ
ータ信号をCPUローカルバスへと送ることによってC
PUローカルバス65を介してそのサイクルを始める。
MCU90はメモリ内の特定されたアドレスへのデータ
の書込を進め、CPUローカルバス65を介してPCI
ブリッジ80にBRDY#制御信号をアサートして、デ
ータ書込サイクルの第1の倍長語を受取ったことを示
す。
The operation of the present invention differs depending on whether the PCI bridge is performing a memory write cycle or a memory read cycle. Each of these cycles will be described in detail below. During a write transaction, the burst cycle from PCI master 75
The I-bridge 80 converts the sequence of single-cycle write access on the CPU local bus 65. P
First, the CI master first detects the AD line AD [3 of the PCI bus.
1: 0] to drive the address of the location in memory that you want to access. In response, the PCI bridge 80 drives the address via the CPU local bus 65,
EMHIT is issued by the MCU 90 (if a hit occurs). Device select is PCI bridge 8
Asserted by 0 and returned to PCI master. P
Data is driven by the CI master through the PCI bus (shown as IRDY #) and the PCI bridge 80
Data is latched in (indicated by TRDY #). The PCI bridge 80 is the first from the PCI master 75.
When the PCI bridge 80 receives the data information and address of C, the PCI bridge 80 asserts the ADS # signal and sends the address and data signals to the CPU local bus.
Start the cycle via PU local bus 65.
The MCU 90 advances the writing of data to the specified address in the memory, and the PCI is transferred via the CPU local bus 65.
The BRDY # control signal is asserted to the bridge 80 to indicate that the first doubleword of the data write cycle has been received.

【0046】メモリへの後続のデータ書込(PCIバス
を介したバーストサイクルの間)に関しては、本発明
は、MEMWAITを発行することによって、およびM
CU90に次の倍長語データのメモリアドレスを、対応
する倍長語がPCIマスタ75から受取られる前に与え
ることによって、メモリを「加減速」する。これによっ
て、MCU90は、前もってデータが書込まれるメモリ
内のページを開く。その結果、MCU90は本質的に
「先を見て」次のデータ書込がどこで起こるかを判断す
ることができ、データが実際にPCIマスタ75によっ
て伝送される前にメモリのそのページへのアクセスを始
めることができる。
For subsequent data writes to the memory (during a burst cycle over the PCI bus), the present invention is by issuing MEMWAIT and M
The memory is "accelerated" by providing the CU 90 with the memory address of the next doubleword data before the corresponding doubleword is received from the PCI master 75. This causes the MCU 90 to open the page in memory to which the data has been previously written. As a result, the MCU 90 can essentially determine "look ahead" where the next data write will occur and access that page of memory before the data is actually transmitted by the PCI master 75. Can start.

【0047】この先を見る能力は、MCU90がBDR
Y#信号を戻した直後のバーストサイクルの間に第2の
およびすべての後続のデータ転送を開始することによっ
て達成される。MCU90からBRDY#信号を受取っ
た後、PCIブリッジ80はTRDY#信号をアサート
して、PCIマスタ装置75にターゲット(すなわちM
CU)がデータ書込トランザクションを完了したか、ま
たは準備ができていることを示す。次のクロック信号
で、PCIマスタはもし準備ができていれば書込むべき
次のデータを駆動して、IRDY#をアサートして有効
データがADラインを介して駆動されていることを示し
てもよい。しかしながら、PCIマスタ75が遅く、デ
ータがまだ運ばれる準備ができていなければ、IRDY
#がPCIマスタによってデアサートされて、準備がで
きている有効データを持たないことを示す。IRDY#
がTRDY#のアサートに続くクロックサイクルでデア
サートされれば、PCIブリッジ80はMEMWAIT
信号をMCU90に対してアサートし続け、MCUが無
効データを書込むことを防ぐ。MEMWAIT信号は少
なくとも1クロックサイクルの間、無条件にアサートさ
れることに注目されたい。MEMWAIT信号を与える
のに加えて、PCIブリッジ80はCPUローカルバス
65を介して次の書込位置のメモリアドレスを駆動し、
同時にADS#信号をアサートし、これによってMCU
90はアドレス信号をラッチすることとなる。MCUは
次に適切な行アドレスストローブ(RAS)ラインをア
サートし、それによって次のアドレスが位置されるペー
ジをDRAMメモリ内の適切なバンクにおいて開くのを
可能にする。
As for the ability to look ahead, the MCU 90 has a BDR.
This is accomplished by initiating the second and all subsequent data transfers during the burst cycle immediately after returning the Y # signal. After receiving the BRDY # signal from the MCU 90, the PCI bridge 80 asserts the TRDY # signal to target the PCI master device 75 (ie, M
CU) has completed or is ready for the data write transaction. On the next clock signal, the PCI master also drives the next data to be written if it is ready and asserts IRDY # to indicate that valid data is being driven through the AD line. Good. However, if the PCI master 75 is slow and the data is not yet ready to be carried, IRDY
# Is deasserted by the PCI master to indicate that it has no valid data ready. IRDY #
Is deasserted in the clock cycle following the assertion of TRDY #, the PCI bridge 80
The signal continues to be asserted to the MCU 90, preventing the MCU from writing invalid data. Note that the MEMWAIT signal is unconditionally asserted for at least one clock cycle. In addition to providing the MEMWAIT signal, the PCI bridge 80 drives the memory address of the next write location via the CPU local bus 65,
At the same time, assert the ADS # signal, which causes the MCU
90 is to latch the address signal. The MCU then asserts the appropriate row address strobe (RAS) line, thereby allowing the page at which the next address is located to open in the appropriate bank in DRAM memory.

【0048】PCIマスタ装置75が、IRDY#のマ
スタによるアサートで示されるようにデータを駆動する
準備ができると、データがPCIバス100からPCI
ブリッジ80を介してCPUローカルバス65に転送さ
れ、MEMWAIT信号がPCIブリッジ80によって
デアサートされる。MUC90はこれに応答してデータ
をラッチして、列アドレスストローブ(CAS)をアサ
ートして転送を完了する。この手順の結果、アドレスが
異なるDRAMバンク内にあった場合にはRASアクセ
ス時間(tRAC )を節約することができ、アドレスが同
じDRAMバンク内の異なるページにあった場合にはR
ASアクセス時間(tRAC )とRASプリチャージ時間
(tRP)の両方を節約することができる。
When the PCI master device 75 is ready to drive data as indicated by the assertion by the master of IRDY #, the data is transferred from the PCI bus 100 to the PCI bus 100.
It is transferred to the CPU local bus 65 via the bridge 80, and the MEMWAIT signal is deasserted by the PCI bridge 80. In response, MUC 90 latches the data and asserts the column address strobe (CAS) to complete the transfer. As a result of this procedure, RAS access time (t RAC ) can be saved if the addresses are in different DRAM banks, and R if the addresses are in different pages in the same DRAM bank.
Both AS access time (t RAC ) and RAS precharge time (t RP ) can be saved.

【0049】逆に、PCIマスタ75によるバースト読
出トランザクションの第1のサイクルにおいては、シス
テムメモリ125に対するサイクルが、PCIバス10
0およびCPUローカルバス65の両方のマスタシップ
が達成された後に開始される。PCIマスタ75は、F
RAME#信号をアサートしてPCIバス100のアド
レスラインをリクエストされたデータのアドレスで駆動
することによってサイクルを示す。PCIブリッジ80
は、読出すべきメモリ内のアドレスを実質的に同時に駆
動する。MCU90は読出アドレスを受取り、アドレス
が主メモリ125内のアドレスに対応する場合にはME
MHIT信号を発行し、これに応答してPCIブリッジ
はマスタ75にDEVSEL#信号を発行する。PCI
マスタ75はトランザクションを続け、PCIブリッジ
80はローカルバスアドレスストローブ信号ADS#を
アサートして、MCU90にアドレス信号をラッチさせ
る。MCU90は次にメモリの行および列に対するアク
セスを進め、有効データを戻し、これはローカルバス6
5上のBRDY#のアサートによって示される。これに
応答して、PCIブリッジ80はPCIバス100上で
TRDY#信号を発行し、メモリに対する次の読出サイ
クルをすぐに開始する。
On the contrary, in the first cycle of the burst read transaction by the PCI master 75, the cycle for the system memory 125 is the PCI bus 10.
Started after mastership of both 0 and CPU local bus 65 has been achieved. The PCI master 75 is F
A cycle is indicated by asserting the RAME # signal to drive the address line of PCI bus 100 with the address of the requested data. PCI bridge 80
Drive addresses in memory to be read at substantially the same time. The MCU 90 receives the read address, and if the address corresponds to the address in the main memory 125, the ME 90
The MHIT signal is issued, and in response, the PCI bridge issues the DEVSEL # signal to the master 75. PCI
The master 75 continues the transaction and the PCI bridge 80 asserts the local bus address strobe signal ADS # to cause the MCU 90 to latch the address signal. The MCU 90 then proceeds to access rows and columns of memory and returns valid data, which is the local bus 6
5 asserted by BRDY #. In response, PCI bridge 80 issues a TRDY # signal on PCI bus 100 to immediately begin the next read cycle to memory.

【0050】PCIマスタ75がTRDY#信号に応答
して(またはその前に)IRDY#信号をアサートしな
ければ、PCIブリッジ80がMCU90にMEMWA
ITをアサートして読出サイクルが加減速される。ME
MWAITがアサートされている間、MCU90はPC
Iブリッジ80から次の読出アドレスを受取り、アドレ
ス信号を行および列アドレスにデコードする。MCU9
0は次に、適切なRASラインのアサートによって可能
化される行アドレスを用いて、読出アドレスが位置され
るメモリ内のページを開く。好ましい実施例において
は、MCU90はまた、適切なCASラインによって可
能化される列アドレスを与えることによってメモリバス
150へとデータを駆動する。結果として、MEMWA
ITがまだアサートされている間に、読出すべきデータ
がローカルバスに駆動される。
Unless the PCI master 75 asserts the IRDY # signal in response to (or before) the TRDY # signal, the PCI bridge 80 causes the MCU 90 to MEMWA.
The read cycle is accelerated or decelerated by asserting IT. ME
While MWAIT is asserted, MCU 90
It receives the next read address from I-bridge 80 and decodes the address signal into row and column addresses. MCU9
The 0 then opens the page in memory where the read address is located with the row address enabled by assertion of the appropriate RAS line. In the preferred embodiment, MCU 90 also drives data into memory bus 150 by providing the column address enabled by the appropriate CAS line. As a result, MEMWA
The data to be read is driven onto the local bus while IT is still asserted.

【0051】PCIマスタ装置75がIRDY#をアサ
ートし、かつ第1のデータ段階を受取ると、次の読出サ
イクルはPCIブリッジ80によるMEMWAITのデ
アサートで進められる。好ましい実施例に従って次のデ
ータがローカルバスにロードされると、MCU90はB
RDY#信号をもって直ちに応答し、PCIブリッジ8
0はTRDY#信号を発行して、PCIマスタに次のデ
ータ段階の読出の準備ができていることを示す。TRD
Y#信号の発行後、PCIマスタは、ADS#をアサー
トしてローカルバスを介して次の読出アドレスを駆動
し、MEMWAITをアサートすることによって、次の
読出サイクルを直ちに始める。
When PCI master device 75 asserts IRDY # and receives the first data stage, the next read cycle proceeds with PCI bridge 80 deasserting MEMWAIT. When the next data is loaded onto the local bus according to the preferred embodiment, the MCU 90 will
The PCI bridge 8 responds immediately with an RDY # signal.
0 issues the TRDY # signal to indicate to the PCI master that it is ready to read the next data stage. TRD
After issuing the Y # signal, the PCI master immediately begins the next read cycle by asserting ADS # to drive the next read address via the local bus and asserting MEMWAIT.

【0052】本発明の原理はまた、MEMWAITがア
サートされている間にリフレッシュサイクルを行なうこ
とを可能にするように、リフレッシュサイクルの間にも
実現することができる。MEMWAITがアサートされ
ている間に、ページが開かれている同じDRAMバンク
にリフレッシュリクエストが発行されると、MCU90
は好ましくは、CASラインをアクティブな状態に保
ち、かつRASラインをデアサートしてプリチャージサ
イクルを始めることによって、RAS前CASリフレッ
シュサイクルを始める。プリチャージサイクルが完了す
ると、MCU90はRASラインをアサートしてリフレ
ッシュサイクルを開始し、tRAS 時間に出会うまで行な
い、このときにRASラインはデアサートされてプリチ
ャージサイクルを再び始める。プリチャージサイクルが
完了すると、MCU90は前のDRAMページを再び開
き、MEMWAITがまだアサートされていればメモリ
バスを減速し続ける。
The principles of the present invention can also be implemented during refresh cycles to allow refresh cycles to be performed while MEMWAIT is asserted. If a refresh request is issued to the same DRAM bank in which the page is opened while MEMWAIT is asserted, MCU90
Preferably, the pre-RAS CAS refresh cycle is initiated by keeping the CAS line active and deasserting the RAS line to initiate the precharge cycle. When the precharge cycle is complete, the MCU 90 asserts the RAS line to initiate the refresh cycle until the t RAS time is encountered, at which time the RAS line is deasserted and the precharge cycle begins again. When the precharge cycle is complete, the MCU 90 reopens the previous DRAM page and continues to slow down the memory bus if MEMWAIT is still asserted.

【0053】MEMWAITがリフレッシュサイクルの
間にデアサートされると、MCU90は好ましくはt
RAS に出会うまで待ち、RASラインをデアサートして
プリチャージサイクルを始める。プリチャージサイクル
が完了すると、MCU90は前のDRAMページを開
き、BRDY#をPCIブリッジ80にアサートした後
メモリアクセスを完了する。リフレッシュリクエストが
起こるまで、または別のマスタによって異なるDRAM
ページに後続のデータアクセスが行なわれるまで、DR
AMページは開かれたままである。リフレッシュが完了
した後にDRAMページを先に開くことによってこのシ
ーケンスで節約される時間はtRAC 期間である。
When MEMWAIT is deasserted during the refresh cycle, MCU 90 preferably t.
Wait until it encounters the RAS, begin a precharge cycle to deassert RAS line. When the precharge cycle is complete, the MCU 90 opens the previous DRAM page and asserts BRDY # to the PCI bridge 80 before completing the memory access. Different DRAM until a refresh request occurs or by another master
DR until subsequent data access to page
The AM page remains open. The time saved in this sequence by opening the DRAM page first after the refresh is complete is the t RAC period.

【0054】MEMWAITがアサートされている間
に、リフレッシュリクエストが異なるDRAMバンクに
発行されれば、MCU90は好ましくは、CASライン
をアクティブに保ったままで現在のアクティブRASラ
インをデアサートして現在のページを閉じ、新しいバン
クのRASラインを直ちにアサートしてリフレッシュサ
イクルを始める。tRAS に出会うまで新しいRASライ
ンはアクティブなままであり、出会うとRASラインは
デアサートされてプリチャージを始める。プリチャージ
サイクルが完了すると、MCU90は前のDRAMペー
ジを開き、MEMWAITがまだアサートされていれば
メモリバスを減速し続ける。
If a refresh request is issued to a different DRAM bank while MEMWAIT is asserted, then the MCU 90 preferably deasserts the current active RAS line while keeping the CAS line active to assert the current page. Close and immediately assert the RAS line of the new bank to start the refresh cycle. The new RAS line remains active until t RAS is encountered, at which point the RAS line is deasserted and begins precharging. When the precharge cycle is complete, the MCU 90 opens the previous DRAM page and continues to slow down the memory bus if MEMWAIT is still asserted.

【0055】逆に、リフレッシュサイクルの間にMEM
WAITがデアサートされれば、MCUは好ましくはt
RAS に出会うまで待ち、RASラインをデアサートして
プリチャージサイクルを始める。プリチャージサイクル
の完了時に、MCUは前のDRAMページを開き、BR
DY#をアサートした後メモリアクセスを完了する。リ
フレッシュリクエストまたは別のPCIマスタが異なる
ページにメモリリクエストを発行するまで、DRAMペ
ージは開いたままである。やはり、リフレッシュが完了
した後に前もってDRAMページを開くことによって節
約される時間はtRAC 期間である。
Conversely, during the refresh cycle, the MEM
If WAIT is deasserted, the MCU preferably t
Wait until it encounters the RAS, begin a precharge cycle to deassert RAS line. At the completion of the precharge cycle, the MCU opens the previous DRAM page and BR
After asserting DY #, the memory access is completed. The DRAM page remains open until a refresh request or another PCI master issues a memory request for a different page. Again, the time saved by opening the DRAM page in advance after the refresh is complete is the t RAC period.

【0056】本発明のプロトコルが実現される態様をさ
らに理解するために、例示的なタイミング図を説明す
る。図5ないし9は、主メモリ内の様々な位置への読出
および書込サイクルと関連するデータ、アドレスおよび
制御信号を示すタイミング図である。DRAMメモリの
状態は、これらの図の理解を深めるために、タイミング
図の下の行に示される。
To further understand how the protocol of the present invention is implemented, an exemplary timing diagram is described. 5-9 are timing diagrams showing data, address and control signals associated with read and write cycles to various locations in main memory. The state of the DRAM memory is shown in the bottom row of the timing diagrams for a better understanding of these figures.

【0057】まず図5を参照して、主メモリ内のDRA
Mバンクの同じページに対してメモリへの2つの連続す
るアクセスが行なわれる場合について、加減速されるメ
モリ読出サイクルが示される。初期状態において、メモ
リ内のページは、同じページへの前のメモリアクセスを
示すDRAMSTATE表示で示されるように、開かれ
ている。この初期期間において、RAS(1)ラインは
アサートされて、DRAMメモリのバンク1がアクセス
され、そのバンクのページが開かれていることを示す。
次に、PCIブリッジによって(1)ADS#制御信号
をローに駆動し、(2)W/R信号をハイにアサートし
て書込サイクルを示し、(3)アドレスおよびデータ情
報をローカルバスを介して与えることによって、書込サ
イクルが始められる。従来の技術に従って、MCUは、
メモリ書込が実際にそのサイクルを完了するまでに、第
1のT2サイクルにおいて早くBRDY#をアサートす
る。その後少し経ってから、MCUはCAS(2)ライ
ンをアサートし、データ書込を完了する。
First, referring to FIG. 5, the DRA in the main memory
Accelerated memory read cycles are shown for two consecutive accesses to memory for the same page of M banks. Initially, a page in memory is open, as shown in the DRAMSTATE display, which shows a previous memory access to the same page. During this initial period, the RAS (1) line is asserted to indicate that bank 1 of the DRAM memory has been accessed and that bank's page is open.
The PCI bridge then drives (1) the ADS # control signal low, (2) asserts the W / R signal high to indicate a write cycle, and (3) sends the address and data information over the local bus. The write cycle is initiated by applying According to conventional technology, the MCU
BRDY # is asserted early in the first T2 cycle until the memory write actually completes that cycle. Shortly thereafter, the MCU asserts the CAS (2) line and completes the data write.

【0058】PCIブリッジはBRDY#信号をMCU
から受取ると直ちに、ADS#信号をアサートして読出
サイクルである次のサイクルを開始し、これはW/Rラ
インがローに駆動されることによって表わされる。同時
に、PCIブリッジはMEMWAIT信号をアサート
し、メモリバスを減速する。好ましい実施例に従えば、
MEMWAITがアサートされている間にアドレス信号
がMCUに与えられる。DRAMページが既に開かれて
いるので、MCUは、図5に示される状態においてRA
Sラインの状態を変えることによってページを開く必要
はない。しかしながら、好ましい実施例では、MCUは
CASライン(この場合CAS(2))をアサートし
て、読出すべきデータをメモリバスへと駆動し、したが
ってローカルバスへと駆動する。MEMWAITがデア
サートされると、MCUはBRDY#をアサートして、
データが利用可能であり、DRAMページが次のサイク
ルのために開いたままであることを示す。
The PCI bridge sends the BRDY # signal to the MCU.
As soon as it is received from the device, it asserts the ADS # signal to start the next cycle, which is a read cycle, as indicated by the W / R line being driven low. At the same time, the PCI bridge asserts the MEMWAIT signal to slow down the memory bus. According to a preferred embodiment,
Address signals are provided to the MCU while MEMWAIT is asserted. Since the DRAM page has already been opened, the MCU is in the state shown in FIG.
It is not necessary to open the page by changing the state of the S line. However, in the preferred embodiment, the MCU asserts the CAS line (in this case CAS (2)) to drive the data to be read onto the memory bus and thus onto the local bus. When MEMWAIT is deasserted, the MCU asserts BRDY # and
Indicates that data is available and the DRAM page remains open for the next cycle.

【0059】したがって、アドレスが同じDRAMペー
ジにあれば、PCIブリッジ80によってMEMWAI
Tがデアサートされるまで、またはリフレッシュサイク
ルリクエストが発行されるまで待ち状態サイクルを介し
てループすることによってMCU90はメモリバス15
0を減速する。MEMWAITがデアサートされると、
MCU90はBRDY#をアサートし、メモリアクセス
を完了する。別のマスタ装置が異なるページに対してメ
モリリクエストを発行するまで、またはリフレッシュリ
クエストが起こるまで、DRAMページは開いたままで
ある。
Therefore, if the address is in the same DRAM page, the PCI bridge 80 causes the MEMWAI
The MCU 90 may loop through the wait state cycle until the T is deasserted or a refresh cycle request is issued by the MCU 90.
Decelerate 0. When MEMWAIT is deasserted,
The MCU 90 asserts BRDY # to complete the memory access. The DRAM page remains open until another master device issues a memory request for a different page or a refresh request occurs.

【0060】ここで図6を参照して、同じDRAMペー
ジに対する加減速メモリ書込サイクルが示される。やは
り、初期状態においてDRAMページは開かれており、
そのページへの前のアクセスを示す。次に、PCIブリ
ッジはADS#制御信号をアサートし、W/R信号をア
サートして書込サイクルを示し、MEMWAITライン
をアサートしてPCIマスタがまだデータを送信する準
備ができていないことを示す。MEMWAITラインが
アサートされている間、好ましい実施例に従えば、PC
IブリッジはMCUに書込サイクルのアドレスを駆動す
る。しかしながら、適切なページが既に開かれているの
で、RASラインの状態は変わらない。MEMWAIT
信号がPCIブリッジによってデアサートされると、M
CUはBRDY#をアサートして、適切なCASライン
(CAS(2))をアサートすることによって書込サイ
クルを完了する。MEMWAIT信号のない後続の読出
サイクルが図6に示される。
Referring now to FIG. 6, an accelerated memory write cycle for the same DRAM page is shown. After all, the DRAM page is opened in the initial state,
Indicates the previous visit to the page. The PCI bridge then asserts the ADS # control signal, asserts the W / R signal to indicate a write cycle, and asserts the MEMWAIT line to indicate that the PCI master is not yet ready to send data. . According to the preferred embodiment, while the MEMWAIT line is asserted, the PC
The I-bridge drives the address of the write cycle into the MCU. However, the state of the RAS line does not change because the appropriate page is already open. MEMWAIT
When the signal is deasserted by the PCI bridge, M
The CU completes the write cycle by asserting BRDY # and asserting the appropriate CAS line (CAS (2)). A subsequent read cycle without the MEMWAIT signal is shown in FIG.

【0061】ここで図7を参照して、異なるDRAMバ
ンクに対する加減速メモリ読出サイクルが示される。初
期状態において、バンク3のDRAMページが、RAS
(3)のアサートによって示されるように前のメモリア
クセスから開かれている。次に、PCIブリッジは読出
サイクルを示すようにR/Wラインをローに保ったまま
でADS#制御信号をアサートする。実質的に同時にP
CIブリッジはMEMWAIT信号をアサートして、P
CIマスタ装置がデータを受取る準備がまだできていな
いことを示す。好ましい実施例に従えば、PCIブリッ
ジはローカルバスを介してアドレスを駆動し、そこでM
CUによって受取られる。MCUはアドレスをデコード
し、DRAMバンク3からDRAMバンク2に変え、R
AS(3)をハイに駆動しながら行アドレスストローブ
ラインRAS(2)をローに駆動して、デコードされた
行アドレスをバンク2に駆動する。MCUは次にバンク
2内の適切なDRAMページを開き、4つのCASライ
ンをアサートすることによって所望のデータをメモリバ
スを介して送り、次にローカルバスに駆動する。MEM
WAIT信号がデアサートされてPCIマスタがデータ
を受取る準備ができたことを示すと、MCUはBRDY
#信号をアサートし、読出サイクルが行なわれたことを
示す。
Referring now to FIG. 7, an accelerated / decelerated memory read cycle for different DRAM banks is shown. In the initial state, the DRAM page of bank 3 is RAS
It has been opened from the previous memory access as indicated by the assertion of (3). The PCI bridge then asserts the ADS # control signal while holding the R / W line low to indicate a read cycle. P at substantially the same time
The CI bridge asserts the MEMWAIT signal to
Indicates that the CI master device is not yet ready to receive data. According to the preferred embodiment, the PCI bridge drives the address through the local bus, where M
Received by CU. The MCU decodes the address and changes from DRAM bank 3 to DRAM bank 2 and R
The row address strobe line RAS (2) is driven low while driving AS (3) high to drive the decoded row address to bank 2. The MCU then opens the appropriate DRAM page in bank 2 and sends the desired data through the memory bus by asserting the four CAS lines and then drives it to the local bus. MEM
The MCU waits for BRDY when the WAIT signal is deasserted to indicate that the PCI master is ready to receive data.
Asserts the # signal to indicate that a read cycle has been performed.

【0062】したがって、アドレスが異なるDRAMバ
ンクに対するものであれば、MCUは、MEMWAIT
がアサートされている間に現在のバンクの現在のDRA
Mページを閉じ、新しいバンクのDRAMページを直ち
に開く(異なるDRAMバンクがアクセスされるのでR
ASプリチャージサイクル時間が存在しないため)。M
EMWAITがデアサートされるまで、またはリフレッ
シュリクエストが発行されるまで、待ち状態サイクルを
介してループすることによってMCUはメモリバスを減
速する。MEMWAITがデアサートされた後、MCU
はBRDY#をアサートし、メモリアクセスを完了す
る。マスタによる別のページへの後続のメモリアクセス
まで、またはリフレッシュリクエストが受取られるま
で、DRAMページは開いたままである。このシーケン
スにおいて、DRAMページにアクセスする時間(t
RAC )が、データアクセスに先立ってページを開くこと
によって節約される。
Therefore, if the address is for a DRAM bank having a different address, the MCU uses MEMWAIT.
Current DRA of the current bank while is asserted
Close M page and open DRAM page in new bank immediately (R because different DRAM banks are accessed
Because there is no AS precharge cycle time). M
The MCU slows down the memory bus by looping through a wait cycle until EMWAIT is deasserted or a refresh request is issued. After MEMWAIT is deasserted, MCU
Asserts BRDY # to complete the memory access. The DRAM page remains open until a subsequent memory access to another page by the master, or until a refresh request is received. In this sequence, the time (t
RAC ) is saved by opening the page prior to accessing the data.

【0063】図8はメモリ内の別のページへの加減速メ
モリ読出サイクルを示す。最初の2つの状態は、MEM
WAITのない読出サイクル前の書込サイクルを示す。
次にPCIブリッジは、読出サイクルを示すようにW/
Rラインがローに保たれたままで、ADS#制御信号を
アサートし、MEMWAITを同時にアサートする。M
EMWAITがアサートされている間、PCIブリッジ
はアドレスをローカルバスを介してMCUに駆動する。
MCUはアドレスをデコードし、メモリ内の適切なペー
ジを開く。ページが開かれると、MCUはCASライン
をアサートして、データをメモリバスへ、次にローカル
バスへと駆動する。MEMWAITがデアサートされる
と、MCUはBRDY#をアサートして、読出サイクル
が完了することを示す。
FIG. 8 shows an accelerated / decelerated memory read cycle to another page in memory. The first two states are MEM
A write cycle before a read cycle without WAIT is shown.
The PCI bridge then uses W /
With the R line held low, assert the ADS # control signal and MEMWAIT at the same time. M
While EMWAIT is asserted, the PCI bridge drives the address onto the MCU via the local bus.
The MCU decodes the address and opens the appropriate page in memory. When the page is opened, the MCU asserts the CAS line to drive the data to the memory bus and then to the local bus. When MEMWAIT is deasserted, the MCU asserts BRDY # to indicate that the read cycle is complete.

【0064】したがって、アドレスが別のDRAMペー
ジにあれば、MCUはMEMWAITがアサートされた
状態で現在のDRAMページを閉じ、プリチャージ状態
に進む。RASプリチャージが完了すると、MCU90
はDRAMページを開き、MEMWAITがデアサート
されるまで、またはリフレッシュリクエストが発行され
るまで待ち状態サイクルを介してループすることによっ
てメモリバス150を減速する。MEMWAITがデア
サートされた後、MCUはBRDY#をアサートし、C
ASをアサートすることによってメモリアクセスを完了
し、DRAMページの特定のバイトがアクセスされるこ
とを可能にする。データ転送が完了した後、DRAMペ
ージは、リフレッシュリクエストが受取られるまで、ま
たは別のマスタ装置がメモリリクエストを別のページに
発行するまで、開いたままである。このシーケンスで
は、RASプリチャージサイクル時間(tRP)が節約さ
れ、DRAMページにアクセスするのに必要な時間(t
RAC )が節約される。
Therefore, if the address is in another DRAM page, the MCU closes the current DRAM page with MEMWAIT asserted and proceeds to the precharge state. When RAS precharge is completed, MCU90
Opens the DRAM page and slows down memory bus 150 by looping through a wait cycle until MEMWAIT is deasserted or a refresh request is issued. After MEMWAIT is deasserted, the MCU asserts BRDY # and C
The memory access is completed by asserting AS, allowing the particular byte of the DRAM page to be accessed. After the data transfer is complete, the DRAM page remains open until a refresh request is received or another master device issues a memory request to another page. This sequence saves the RAS precharge cycle time (t RP ) and the time required to access the DRAM page (t
RAC ) is saved.

【0065】最後に図9はリフレッシュサイクルが介在
する加減速メモリ読出サイクルを示す。図9の初期状態
は書込サイクルである。次にPCIブリッジはADS#
制御信号をアサートし、W/R信号をローに駆動し、同
時にMEMWAITをアサートし、PCIマスタがデー
タを受取る準備がまだできていないことを示す。PCI
ブリッジはローカルバス上でアドレスを駆動し、ここで
これがMCUによって受取られ、メモリ内の所望のペー
ジにアクセスするのに用いられる、。MCUは次に適切
な列アドレスストローブラインCAS(2)をアサート
し、データをメモリバスへと駆動する。しかしながら、
MEMWAITがまだアサートされている間に、リフレ
ッシュリクエストがMCUによって受取られる。MEM
WAITがまだアサートされた状態で、MCUは、バン
ク0のためのリフレッシュサイクルをそのバンクについ
てRAS前にCASをアサートすることによって行な
う。リフレッシュが完了した後、MCUは、再びRAS
(1)をアサートすることによってメモリ内の適切なペ
ージを再び開き、CAS(2)をアサートすることによ
ってデータを駆動する。
Finally, FIG. 9 shows an acceleration / deceleration memory read cycle in which a refresh cycle is interposed. The initial state of FIG. 9 is a write cycle. Then the PCI bridge is ADS #
Assert the control signal, drive the W / R signal low, and at the same time assert MEMWAIT to indicate that the PCI master is not yet ready to receive data. PCI
The bridge drives an address on the local bus, where it is received by the MCU and used to access the desired page in memory. The MCU then asserts the appropriate column address strobe line CAS (2) to drive the data onto the memory bus. However,
A refresh request is received by the MCU while MEMWAIT is still asserted. MEM
With WAIT still asserted, the MCU performs a refresh cycle for bank 0 by asserting CAS before RAS for that bank. After the refresh is completed, the MCU returns to RAS
Reopen the appropriate page in memory by asserting (1) and drive the data by asserting CAS (2).

【0066】上の開示が十分に理解されれば、種々の変
形および変更が当業者には明らかになるであろう。前掲
の特許請求の範囲はこれらの変形および変更のすべてを
包含すると解釈されたい。
Various variations and modifications will become apparent to those skilled in the art once the above disclosure is fully appreciated. The appended claims should be construed to cover all such variations and modifications.

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

【図1】PCIマスタ装置をサポートする先行技術のコ
ンピュータシステムの機能ブロック図である。
FIG. 1 is a functional block diagram of a prior art computer system supporting a PCI master device.

【図2】好ましい実施例に従って構成されるコンピュー
タシステムの機能ブロック図である。
FIG. 2 is a functional block diagram of a computer system configured according to the preferred embodiment.

【図3】典型的な読出サイクルのタイミング図である。FIG. 3 is a timing diagram of a typical read cycle.

【図4】典型的な書込サイクルのタイミング図である。FIG. 4 is a timing diagram of a typical write cycle.

【図5】図2に示されるシステムの動作を示すタイミン
グ図である。
5 is a timing diagram illustrating operation of the system shown in FIG.

【図6】図2に示されるシステムの動作を示すタイミン
グ図である。
FIG. 6 is a timing diagram illustrating operation of the system shown in FIG.

【図7】図2に示されるシステムの動作を示すタイミン
グ図である。
FIG. 7 is a timing diagram illustrating operation of the system shown in FIG.

【図8】図2に示されるシステムの動作を示すタイミン
グ図である。
FIG. 8 is a timing diagram illustrating operation of the system shown in FIG.

【図9】図2に示されるシステムの動作を示すタイミン
グ図である。
FIG. 9 is a timing diagram illustrating operation of the system shown in FIG.

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

50 集積プロセッサ 60 CPU 65 CPUローカルバス 70 オンチップ周辺装置 80 PCIブリッジ 100 PCIバス 50 integrated processor 60 CPU 65 CPU local bus 70 on-chip peripheral device 80 PCI bridge 100 PCI bus

───────────────────────────────────────────────────── フロントページの続き (72)発明者 ビクター・エフ・アンドレード アメリカ合衆国、78732 テキサス州、オ ースティン、バン・ヘルフ・コート、 12400 (72)発明者 ケリー・エム・ホートン アメリカ合衆国、78749 テキサス州、オ ースティン、サリダ・ドライブ、10317 ─────────────────────────────────────────────────── ─── Continuation of the front page (72) Inventor Victor F. Andrade United States, 78732 Texas, Austin, Van Helf Court, 12400 (72) Inventor Kelly M. Houghton United States, 78749 Texas, Austin, Salida Drive, 10317

Claims (31)

【特許請求の範囲】[Claims] 【請求項1】 システムメモリとPCIマスタ装置との
間のデータの転送を最適化するための方法であって、前
記PCIマスタはPCIバスを介してPCIブリッジに
接続し、PCIブリッジはCPUローカルバス上にあ
り、システムメモリはメモリバスを介してメモリコント
ローラに接続し、前記メモリコントローラもまたローカ
ルバス上にあり、前記方法は (a) PCIマスタによってPCIバスの所有権を主
張するステップと、 (b) PCIマスタによってPCIバス上のアドレス
信号を駆動するステップと、 (c) PCIブリッジによってローカルバス上のアド
レスストローブ信号を発生し、前記アドレス信号をロー
カルバスを介して駆動するステップと、 (d) PCIブリッジによって待ち信号を発生して、
PCIマスタがトランザクションのデータ段階を直ちに
完了することができないことを示すステップと、 (e) メモリコントローラによってアドレス信号をデ
コードするステップと、 (f) 前記メモリコントローラによってシステムメモ
リ内の適切なページを開くステップと、 (g) PCIマスタがデータ段階を完了する準備がで
きたという指示に応答して待ち信号をデアサートするス
テップと、(h) メモリコントローラによってデータ
トランザクションを完了するステ ップとを含む、方法。
1. A method for optimizing the transfer of data between a system memory and a PCI master device, wherein the PCI master is connected to a PCI bridge via a PCI bus, the PCI bridge being a CPU local bus. Above, the system memory connects to a memory controller via a memory bus, said memory controller also on a local bus, said method comprising: (a) claiming ownership of the PCI bus by a PCI master; (b) driving an address signal on a PCI bus by a PCI master; (c) generating an address strobe signal on a local bus by a PCI bridge and driving the address signal via the local bus; ) A wait signal is generated by the PCI bridge,
Indicating that the PCI master cannot immediately complete the data phase of the transaction, (e) decoding the address signal by the memory controller, and (f) opening the appropriate page in system memory by the memory controller. The steps of: (g) deasserting a wait signal in response to an indication that the PCI master is ready to complete the data phase; and (h) completing the data transaction by the memory controller. Method.
【請求項2】 適切なメモリページを開く前記ステップ
(ステップ(f))が、 (f)(1) 行アドレス信号をシステムメモリに与え
るステップと、 (f)(2) 適切な行アドレスストローブ(RAS)
ラインをアサートして行アドレス信号を可能化するステ
ップとを含む、請求項1に記載の方法。
2. The step of opening the appropriate memory page (step (f)) comprises: (f) (1) applying a row address signal to system memory; and (f) (2) an appropriate row address strobe ( RAS)
Asserting the line to enable the row address signal.
【請求項3】 ステップ(f)(1)および(f)
(2)が、待ち信号がアサートされている間に完了され
る、請求項2に記載の方法。
3. Steps (f) (1) and (f)
The method of claim 2, wherein (2) is completed while the wait signal is asserted.
【請求項4】 メモリコントローラがまた列アドレスを
与え、適切な列アドレスストローブ信号をアサートし
て、待ち信号がまだアサートされている一方で読出サイ
クル中に前記メモリからデータを駆動する、請求項3に
記載の方法。
4. The memory controller also provides a column address and asserts the appropriate column address strobe signal to drive data from the memory during a read cycle while the wait signal is still asserted. The method described in.
【請求項5】 待ち信号がアサートされている間にリフ
レッシュサイクルが行なわれる、請求項1に記載の方
法。
5. The method of claim 1, wherein the refresh cycle is performed while the wait signal is asserted.
【請求項6】 データトランザクションを完了する前記
ステップ(ステップ(h))が、 (h)(1) 適切な列アドレスストローブ(CAS)
信号をアサートしている間に前記メモリに列アドレス信
号を与えるステップと、 (h)(2) PCIブリッジにBRDY#をアサート
するステップとを含む、請求項1に記載の方法。
6. The step of completing a data transaction (step (h)) includes: (h) (1) the appropriate column address strobe (CAS).
The method of claim 1, comprising providing a column address signal to the memory while asserting a signal; and (h) (2) asserting BRDY # to the PCI bridge.
【請求項7】 前記PCIブリッジが、前記メモリコン
トローラからのBRDY#に応答してPCIマスタにT
RDY#をアサートする、請求項6に記載の方法。
7. The PCI bridge responds to a BRDY # from the memory controller to a PCI master by issuing a T
7. The method of claim 6, wherein RDY # is asserted.
【請求項8】 TRDY#信号に応答して前記PCIマ
スタがIRDY#をアサートしなければ、前記PCIブ
リッジがMEMWAIT信号をアサートする、請求項7
に記載の方法。
8. The PCI bridge asserts a MEMWAIT signal if the PCI master does not assert IRDY # in response to a TRDY # signal.
The method described in.
【請求項9】 書込サイクル中にPCIマスタ装置とシ
ステムメモリとの間のデータの転送を最適化する方法で
あって、前記PCIマスタはPCIバスを介してPCI
ブリッジに接続し、PCIブリッジはCPUローカルバ
ス上にあり、システムメモリはメモリバスを介してメモ
リコントローラに接続し、前記メモリコントローラもま
たローカルバス上にあり、前記方法は (a) PCIバスの所有権をPCIマスタが得るステ
ップと、 (b) PCIマスタがPCIバスを介してバーストサ
イクルを送るステップと、 (c) 前記PCIブリッジが第1のアドレス信号およ
び第1のデータ信号を前記バーストサイクルから受取
り、前記ローカルバスの所有権を得るステップと、 (d) 前記PCIブリッジが前記第1のアドレス信号
および前記第1のデータ信号を前記ローカルバスを介し
て送るステップと、 (e) 前記メモリコントローラが前記第1のデータ信
号を第1のアドレス信号に対応する前記メモリ内のアド
レスに書込み、前記PCIブリッジにメモリレディ信号
を発行するステップと、 (f) 前記メモリコントローラからの前記レディ信号
に応答して、前記PCIブリッジが前記PCIマスタに
ターゲットレディ信号を発行するステップと、 (g) 前記PCIマスタからのイニシエータレディ信
号がない状態で、前記PCIブリッジが待ち信号をメモ
リコントローラに発生し、第2のアドレス信号を前記メ
モリコントローラに与えるステップとを含む、方法。
9. A method for optimizing transfer of data between a PCI master device and system memory during a write cycle, wherein the PCI master is a PCI bus over a PCI bus.
Connecting to the bridge, the PCI bridge is on the CPU local bus, the system memory is connected to the memory controller via the memory bus, the memory controller is also on the local bus, the method is: (a) owning the PCI bus (B) the PCI master sends a burst cycle over the PCI bus, and (c) the PCI bridge sends a first address signal and a first data signal from the burst cycle. Receiving and taking ownership of the local bus; (d) the PCI bridge sending the first address signal and the first data signal over the local bus; and (e) the memory controller. Is a memory in which the first data signal corresponds to a first address signal And writing a memory ready signal to the PCI bridge, and (f) the PCI bridge issuing a target ready signal to the PCI master in response to the ready signal from the memory controller. And (g) the PCI bridge issuing a wait signal to the memory controller and providing a second address signal to the memory controller in the absence of an initiator ready signal from the PCI master.
【請求項10】 第1のアドレス信号がシステムメモリ
内にある場合に、前記メモリコントローラがステップ
(d)に応答してMEMHIT信号を発生する、請求項
9に記載の方法。
10. The method of claim 9, wherein the memory controller generates a MEMHIT signal in response to step (d) when the first address signal is in system memory.
【請求項11】 (h) 前記メモリコントローラが第
2のアドレス信号をデコードして、行アドレスおよび列
アドレスを発生するステップと、 (i) 前記メモリコントローラが前記第2のアドレス
信号の行アドレスを前記メモリに送り、前記メモリに行
アドレスストローブ(RAS)信号をアサートして、メ
モリ内の適切なページを開くステップとをさらに含む、
請求項9に記載の方法。
11. (h) The memory controller decodes the second address signal to generate a row address and a column address, and (i) the memory controller outputs the row address of the second address signal. Sending to the memory and asserting a row address strobe (RAS) signal to the memory to open the appropriate page in the memory.
The method according to claim 9.
【請求項12】 PCIマスタが第2のデータ信号を前
記PCIバスを介して駆動したことを示す前記PCIマ
スタからのイニシエータレディ信号に応答して待ち信号
をデアサートするステップと、 (k) 前記メモリコントローラが前記第2のアドレス
信号の列アドレスを前記メモリに駆動し、適切な列アド
レスストローブ(CAS)信号を前記メモリにアサート
して、前記第2のデータ信号が前記メモリに書込まれる
ことを可能にするステップとをさらに含む、請求項11
に記載の方法。
12. Deasserting a wait signal in response to an initiator ready signal from the PCI master indicating that the PCI master has driven a second data signal over the PCI bus; and (k) the memory. A controller drives the column address of the second address signal into the memory and asserts an appropriate column address strobe (CAS) signal into the memory to cause the second data signal to be written into the memory. The step of enabling further comprising:
The method described in.
【請求項13】 待ち信号がアサートされている間に、
前記メモリのバンクに対してリフレッシュサイクルが行
なわれる、請求項9に記載の方法。
13. While the wait signal is asserted,
The method of claim 9, wherein a refresh cycle is performed on the bank of memory.
【請求項14】 前記リフレッシュサイクルが、ページ
が開かれているメモリの同じバンクに対して行なわれ
る、請求項13に記載の方法。
14. The method of claim 13, wherein the refresh cycle is performed on the same bank of memory in which the page is open.
【請求項15】 ページが開かれているのとは異なる、
メモリのバンクに対して前記リフレッシュサイクルが行
なわれる、請求項13に記載の方法。
15. The page is different than open,
14. The method of claim 13, wherein the refresh cycle is performed on a bank of memory.
【請求項16】 リフレッシュサイクルがRAS前CA
Sシーケンスを含む、請求項13に記載の方法。
16. The refresh cycle is pre-RAS CA.
14. The method of claim 13, comprising an S sequence.
【請求項17】 メモリの各バンクが独立してリフレッ
シュされる、請求項13に記載の方法。
17. The method of claim 13, wherein each bank of memory is refreshed independently.
【請求項18】 読出サイクル中にPCIマスタ装置と
システムメモリとの間のデータの転送を最適化する方法
であって、前記PCIマスタはPCIバスを介してPC
Iブリッジに接続し、PCIブリッジはCPUローカル
バス上にあり、システムメモリはメモリバスを介してメ
モリコントローラに接続し、前記メモリコントローラも
またローカルバス上にあり、前記方法は (a) PCIマスタがPCIバスの所有権を得るステ
ップと、 (b) PCIマスタがPCIバスを介して読出される
べきメモリ内の第1のアドレスを送るステップと、 (c) 前記PCIブリッジが前記第1のアドレス信号
を受取り、前記ローカルバスの所有権を得るステップ
と、 (d) 前記PCIブリッジが前記ローカルバスを介し
て前記第1のアドレス信号を送るステップと、 (e) 前記メモリコントローラが前記第1のアドレス
信号を受取り、第1のアドレス信号に対応する前記メモ
リ内の第1のデータ信号を読出し、前記第1のデータ信
号を前記ローカルバスを介して送り、メモリレディ信号
を前記PCIブリッジに発行するステップと、 (f) 前記PCIブリッジが、前記メモリコントロー
ラからの前記レディ信号に応答して、前記PCIマスタ
にターゲットレディ信号を発行するステップと、 (g) 前記PCIマスタからのイニシエータレディ信
号がない状態で、前記PCIブリッジが待ち信号をメモ
リコントローラに発生し、第2のアドレス信号を前記メ
モリコントローラに与えるステップとを含む、方法。
18. A method for optimizing the transfer of data between a PCI master device and system memory during a read cycle, wherein the PCI master is a PCI bus via a PCI bus.
Connected to an I-bridge, the PCI bridge is on the CPU local bus, the system memory is connected to the memory controller via the memory bus, the memory controller is also on the local bus, and the method comprises: (a) a PCI master Taking ownership of the PCI bus; (b) sending a first address in memory by the PCI master to be read over the PCI bus; (c) the PCI bridge sending the first address signal. Receiving the local bus and taking ownership of the local bus; (d) the PCI bridge sending the first address signal over the local bus; (e) the memory controller having the first address. Receiving a signal and reading a first data signal in the memory corresponding to a first address signal; Sending a first data signal via the local bus and issuing a memory ready signal to the PCI bridge; (f) the PCI bridge in response to the ready signal from the memory controller, Issuing a target ready signal to the master, and (g) in the absence of an initiator ready signal from the PCI master, the PCI bridge issues a wait signal to the memory controller and a second address signal to the memory controller. A step of providing.
【請求項19】 第1のアドレス信号がシステムメモリ
内に位置するとき、前記メモリコントローラがステップ
(d)に応答してMEMHIT信号を発生する、請求項
18に記載の方法。
19. The method of claim 18, wherein the memory controller generates a MEMHIT signal in response to step (d) when the first address signal is located in system memory.
【請求項20】 (h) 前記メモリコントローラが第
2のアドレス信号をデコードして行アドレスおよび列ア
ドレスを発生するステップと、 (i) 前記メモリコントローラが前記第2のアドレス
信号の行アドレスを前記メモリに駆動し、行アドレスス
トローブ(RAS)信号を前記メモリにアサートして、
メモリ内の適切なページを開くステップとをさらに含
む、請求項18に記載の方法。
20. (h) The memory controller decodes a second address signal to generate a row address and a column address, and (i) the memory controller outputs the row address of the second address signal. Drive to a memory and assert a row address strobe (RAS) signal to the memory,
19. The method of claim 18, further comprising opening the appropriate page in memory.
【請求項21】 (j) 前記メモリコントローラが前
記第2のアドレス信号の列アドレスを前記メモリに駆動
し、列アドレスストローブ(CAS)を前記メモリにア
サートして、前記第2のアドレスに対応する第2のデー
タ信号を前記ローカルバスへと駆動するステップをさら
に含む、請求項20に記載の方法。
21. (j) The memory controller drives a column address of the second address signal to the memory and asserts a column address strobe (CAS) to the memory to correspond to the second address. 21. The method of claim 20, further comprising driving a second data signal onto the local bus.
【請求項22】 (k) PCIマスタが前記第1のデ
ータ信号を受取る準備ができたことを示す前記PCIマ
スタからのイニシエータレディ信号に応答して、待ち信
号をデアサートするステップと、 (l) 前記メモリコントローラがメモリレディ信号を
発行するステップと、 (m) 前記PCIブリッジが前記PCIマスタにター
ゲットレディ信号をアサートし、別の読出サイクルを始
めるステップとをさらに含む、請求項21に記載の方
法。
22. (k) Deasserting a wait signal in response to an initiator ready signal from the PCI master indicating that the PCI master is ready to receive the first data signal; (l) 22. The method of claim 21, further comprising: the memory controller issuing a memory ready signal; and (m) the PCI bridge asserting a target ready signal to the PCI master and initiating another read cycle. .
【請求項23】 待ち信号がアサートされている間に前
記メモリのバンクに対してリフレッシュサイクルが行な
われる、請求項18に記載の方法。
23. The method of claim 18, wherein a refresh cycle is performed on the bank of memory while a wait signal is asserted.
【請求項24】 コンピュータ内のメモリアクセス時間
を最適化するためのシステムであって、 データを記憶し、アクセスするためのシステムメモリ
と、 前記システムメモリに接続されて前記メモリへのアクセ
スを制御するメモリコントローラユニットと、 ローカルバスを介して前記メモリコントローラユニット
に接続されるPCIブリッジと、 前記PCIブリッジにPCIバスを介して接続される周
辺PCIマスタ装置とを含み、前記PCIマスタ装置
は、システムメモリへのデータトランザクションを完了
するようにPCIバスの所有権を主張することができ、
前記PCIブリッジは、PCIマスタがPCIバスの所
有権を主張するときにローカルバスの所有権を主張し、
さらに前記ローカルバスに接続されるCPUコアを含
み、 前記PCIブリッジはメモリコントローラに対して待ち
信号をアサートし、実質的に同時に、PCIマスタ装置
がデータ転送を完了するのが遅れる場合に、メモリコン
トローラにローカルバスを介して次のデータトランザク
ションのメモリ内のアドレスを駆動する、システム。
24. A system for optimizing memory access time in a computer, the system memory for storing and accessing data, and controlling access to the memory connected to the system memory. A memory controller unit, a PCI bridge connected to the memory controller unit via a local bus, and a peripheral PCI master device connected to the PCI bridge via a PCI bus, wherein the PCI master device is a system memory. Can claim ownership of the PCI bus to complete a data transaction to
The PCI bridge claims ownership of the local bus when the PCI master claims ownership of the PCI bus,
The memory controller further includes a CPU core connected to the local bus, wherein the PCI bridge asserts a wait signal to the memory controller, substantially simultaneously with delaying the completion of the data transfer by the PCI master device. The system drives the address in memory for the next data transaction over the local bus.
【請求項25】 待ち信号がアサートされている間に、
前記メモリコントローラがメモリ内の適切なページを開
く、請求項24に記載のシステム。
25. While the wait signal is asserted,
25. The system of claim 24, wherein the memory controller opens the appropriate page in memory.
【請求項26】 前記システムメモリがDRAMチップ
の4つまでの別個のバンクを含む、請求項25に記載の
システム。
26. The system of claim 25, wherein the system memory comprises up to four distinct banks of DRAM chips.
【請求項27】 約15.625/4μ秒ごとにリフレ
ッシュリクエストを発生するシステムタイマをさらに含
む、請求項25に記載のシステム。
27. The system of claim 25, further comprising a system timer that issues a refresh request about every 15.625 / 4 microseconds.
【請求項28】 リフレッシュサイクルが約15.62
5μ秒ごとに各バンクにおいて発生される、請求項27
に記載のシステム。
28. The refresh cycle is about 15.62.
28. Generated in each bank every 5 microseconds.
The system described in.
【請求項29】 リフレッシュサイクルが4つのバンク
で時間をずらして行なわれる、請求項28に記載のシス
テム。
29. The system of claim 28, wherein the refresh cycle is staggered in four banks.
【請求項30】 データがPCIバスを介して送られる
ときに前記PCIマスタがレディ信号を発行しなけれ
ば、前記PCIブリッジが読出サイクルにおいて前記待
ち信号をアサートする、請求項24に記載のシステム。
30. The system of claim 24, wherein the PCI bridge asserts the wait signal in a read cycle if the PCI master does not issue a ready signal when data is sent over the PCI bus.
【請求項31】 PCIブリッジがレディ信号を発行し
た後、フレームサイクル信号がアサートされたままの状
態で前記PCIマスタがレディ信号を発行しなければ、
前記PCIブリッジが前記待ち信号をアサートする、請
求項24に記載のシステム。
31. After the PCI bridge issues a ready signal, if the PCI master does not issue a ready signal with a frame cycle signal still asserted,
25. The system of claim 24, wherein the PCI bridge asserts the wait signal.
JP15016595A 1995-06-16 1995-06-16 Method for optimizing data transfer between system memory and PCI master device, and system for optimizing memory access time in a computer Expired - Fee Related JP3720872B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP15016595A JP3720872B2 (en) 1995-06-16 1995-06-16 Method for optimizing data transfer between system memory and PCI master device, and system for optimizing memory access time in a computer

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP15016595A JP3720872B2 (en) 1995-06-16 1995-06-16 Method for optimizing data transfer between system memory and PCI master device, and system for optimizing memory access time in a computer

Publications (2)

Publication Number Publication Date
JPH096713A true JPH096713A (en) 1997-01-10
JP3720872B2 JP3720872B2 (en) 2005-11-30

Family

ID=15490934

Family Applications (1)

Application Number Title Priority Date Filing Date
JP15016595A Expired - Fee Related JP3720872B2 (en) 1995-06-16 1995-06-16 Method for optimizing data transfer between system memory and PCI master device, and system for optimizing memory access time in a computer

Country Status (1)

Country Link
JP (1) JP3720872B2 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008159075A (en) * 1999-02-23 2008-07-10 Renesas Technology Corp Integrated circuit and information processing device using it

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008172727A (en) 2007-01-15 2008-07-24 Ricoh Co Ltd Control apparatus and image processing system

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008159075A (en) * 1999-02-23 2008-07-10 Renesas Technology Corp Integrated circuit and information processing device using it

Also Published As

Publication number Publication date
JP3720872B2 (en) 2005-11-30

Similar Documents

Publication Publication Date Title
EP0692764B1 (en) Memory throttle for PCI master
US6269433B1 (en) Memory controller using queue look-ahead to reduce memory latency
US5303364A (en) Paged memory controller
JP4500373B2 (en) Computer system with integrated system memory and improved bus concurrency
US5463753A (en) Method and apparatus for reducing non-snoop window of a cache controller by delaying host bus grant signal to the cache controller
EP0426329B1 (en) Combined synchronous and asynchronous memory controller
US5353415A (en) Method and apparatus for concurrency of bus operations
US5873114A (en) Integrated processor and memory control unit including refresh queue logic for refreshing DRAM during idle cycles
EP0392657B1 (en) System providing cache coherent direct memory access between dissimilar bus systems
US6275885B1 (en) System and method for maintaining ownership of a processor bus while sending a programmed number of snoop cycles to the processor cache
US6405271B1 (en) Data flow control mechanism for a bus supporting two-and three-agent transactions
US6026464A (en) Memory control system and method utilizing distributed memory controllers for multibank memory
US5179667A (en) Synchronized DRAM control apparatus using two different clock rates
JP2571673B2 (en) Method and apparatus for providing back-to-back data transfer in an information processing system having a multiplexed bus
JP3302357B2 (en) CPU bus controller
US5991833A (en) Computer system with bridge logic that reduces interference to CPU cycles during secondary bus transactions
US5301281A (en) Method and apparatus for expanding a backplane interconnecting bus in a multiprocessor computer system without additional byte select signals
JPH04230544A (en) Data processing apparatus for dynamically setting timing of dynamic memory system
WO1994008297A9 (en) Method and apparatus for concurrency of bus operations
US5949981A (en) Deadlock avoidance in a bridge between a split transaction bus and a single envelope bus
US5485592A (en) Write back cache controller method and apparatus for use in a system having a CPU with internal cache memory
US5768550A (en) Bus interface logic system
US5721882A (en) Method and apparatus for interfacing memory devices operating at different speeds to a computer system bus
JPH0271344A (en) Micro-computer-system
US6249847B1 (en) Computer system with synchronous memory arbiter that permits asynchronous memory requests

Legal Events

Date Code Title Description
A977 Report on retrieval

Effective date: 20050804

Free format text: JAPANESE INTERMEDIATE CODE: A971007

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

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20050823

A61 First payment of annual fees (during grant procedure)

Effective date: 20050909

Free format text: JAPANESE INTERMEDIATE CODE: A61

R150 Certificate of patent (=grant) or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

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

Free format text: PAYMENT UNTIL: 20080916

Year of fee payment: 3

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

Free format text: PAYMENT UNTIL: 20090916

Year of fee payment: 4

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

Year of fee payment: 4

Free format text: PAYMENT UNTIL: 20090916

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

Free format text: PAYMENT UNTIL: 20100916

Year of fee payment: 5

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

Year of fee payment: 6

Free format text: PAYMENT UNTIL: 20110916

LAPS Cancellation because of no payment of annual fees
S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313113

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350