JP3206528B2 - Bus bridge circuit - Google Patents

Bus bridge circuit

Info

Publication number
JP3206528B2
JP3206528B2 JP33237497A JP33237497A JP3206528B2 JP 3206528 B2 JP3206528 B2 JP 3206528B2 JP 33237497 A JP33237497 A JP 33237497A JP 33237497 A JP33237497 A JP 33237497A JP 3206528 B2 JP3206528 B2 JP 3206528B2
Authority
JP
Japan
Prior art keywords
address
read
data
bus
write
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.)
Expired - Fee Related
Application number
JP33237497A
Other languages
Japanese (ja)
Other versions
JPH11149441A (en
Inventor
守治 関
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
NEC Corp
Original Assignee
NEC Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by NEC Corp filed Critical NEC Corp
Priority to JP33237497A priority Critical patent/JP3206528B2/en
Publication of JPH11149441A publication Critical patent/JPH11149441A/en
Application granted granted Critical
Publication of JP3206528B2 publication Critical patent/JP3206528B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Landscapes

  • Bus Control (AREA)
  • Memory System Of A Hierarchy Structure (AREA)

Description

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

【0001】[0001]

【発明の属する技術分野】本発明は、コンピュータのロ
ーカルバスと汎用バスとの間に設置され、両バスの調停
を行うバスブリッジ回路に関する。
BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to a bus bridge circuit installed between a local bus and a general-purpose bus of a computer and arbitrating both buses.

【0002】[0002]

【従来の技術】図6に示すように、コンピュータ装置に
おけるCPU2側のローカルバス300を各種拡張機器
200が接続されるPCIバスのような汎用バス400
に変換するために、バスブリッジ回路100が設けられ
る。バスブリッジ回路100には、高速動作が可能なロ
ーカルバス300をローカルバス300より低速な汎用
バス400に接続するために、その速度差を緩衝する機
能が要求される。その際、高速なローカルバス300の
効率を極力低下させないことが重要である。
2. Description of the Related Art As shown in FIG. 6, a local bus 300 on the CPU 2 side of a computer device is replaced with a general-purpose bus 400 such as a PCI bus to which various extension devices 200 are connected.
A bus bridge circuit 100 is provided in order to convert the data into. The bus bridge circuit 100 is required to have a function of buffering the speed difference in order to connect the local bus 300 that can operate at high speed to the general-purpose bus 400 that is slower than the local bus 300. At this time, it is important that the efficiency of the high-speed local bus 300 is not reduced as much as possible.

【0003】従来、バスブリッジ回路において、FIF
Oなどの一時的にデータを蓄える回路が用いられてき
た。図7は、従来のバスブリッジ回路の一例を示すブロ
ック図である。図に示すように、バスコントローラ13
には、ローカルバス300および汎用バス400双方の
制御信号が入力される。バスコントローラ13は、両バ
ス300,400のサイクルの調停を行い、コマンド信
号やレディ信号等を出力する。さらに、アドレス/デー
タマルチプレクサ14やFIFOコントローラ15の制
御も行う。
Conventionally, in a bus bridge circuit, an FIF
Circuits for temporarily storing data such as O have been used. FIG. 7 is a block diagram showing an example of a conventional bus bridge circuit. As shown in FIG.
, Control signals for both the local bus 300 and the general-purpose bus 400 are input. The bus controller 13 arbitrates the cycles of the buses 300 and 400 and outputs a command signal, a ready signal, and the like. Further, it controls the address / data multiplexer 14 and the FIFO controller 15.

【0004】アドレス/データマルチプレクサ14は、
アドレスとデータが同じバスを使用している汎用バス4
00に対して、主にアドレスとデータを切り替える働き
をする。FIFOコントローラ15は、ライトFIFO
16およびリードFIFO17を制御し、データの取り
込みと出力を制御する。ライトFIFO16には、CP
U2が汎用バス400上のターゲット(各種拡張機器2
00)に対してライトするデータが保持される。また、
リードFIFO17には、CPU2がターゲットからリ
ードするデータが保持される。
[0004] The address / data multiplexer 14 comprises:
General-purpose bus 4 using the same bus for address and data
For 00, it mainly works to switch between address and data. The FIFO controller 15 has a write FIFO
16 and the read FIFO 17 to control data capture and output. The write FIFO 16 has a CP
U2 is a target on the general-purpose bus 400 (various extension devices 2
00) is held. Also,
The read FIFO 17 holds data that the CPU 2 reads from the target.

【0005】CPU2からのデータライト動作におい
て、ライトFIFO16に空きがある限り、CPU2に
はウェイトはかからずにライトFIFO16に順次デー
タが取り込まれる。ライトFIFO16から汎用バス4
00に接続されたターゲットへのデータライトは、ター
ゲットの速度に合わせて順次行われる。一方、CPU2
へのデータリード動作において、最初にアクセスされる
アドレスから連続したアドレスのデータが、ターゲット
から先読みしてリードFIFO17に取り込まれる。C
PU2は、一旦リードFIFO17に取り込まれたデー
タをノーウェイトで取り出すことができる。
In the data write operation from the CPU 2, as long as the write FIFO 16 has a free space, the CPU 2 does not wait and the data is sequentially taken into the write FIFO 16. General purpose bus 4 from write FIFO 16
Data writing to the target connected to 00 is performed sequentially according to the speed of the target. On the other hand, CPU2
In the data read operation, the data of an address continuous from the first accessed address is read ahead from the target and taken into the read FIFO 17. C
The PU 2 can take out the data once taken into the read FIFO 17 with no wait.

【0006】[0006]

【発明が解決しようとする課題】しかし、従来のバスブ
リッジ回路には、CPU2がターゲットに対するリード
アクセスを開始してから回路が動作を開始するので、ロ
ーカルバス300のサイクルが起動してから汎用バス4
00において実際のデータ転送サイクルが起動するまで
に時間がかかる。例えば、両バスを同期させるためにバ
スブリッジ回路において遅延が生ずる。また、PCIバ
スのようなアドレスとデータとが共用されるバスでは、
まずアドレスフェーズが実行され、その後に実際のデー
タ転送サイクルが開始する。そのために、一番最初のア
クセスでは必ずバスコントローラ13はCPUにウェイ
トをかけなければならないという問題がある。さらに、
リードFIFO17にデータが蓄えられるまでにも時間
がかかるため、CPU2の読み出し動作がリードFIF
O17へのデータ転送動作に追いついてしまった場合
は、やはりウェイトをかけなければならない。すなわ
ち、従来のバスブリッジ回路には、ローカルバス300
の効率が低下してしまい、ひいてはシステムの効率が低
下してしまうという課題がある。
However, in the conventional bus bridge circuit, since the circuit starts operating after the CPU 2 starts read access to the target, the general-purpose bus is started after the cycle of the local bus 300 is started. 4
At 00, it takes time until the actual data transfer cycle starts. For example, a delay occurs in the bus bridge circuit to synchronize both buses. In a bus where addresses and data are shared, such as a PCI bus,
First, the address phase is executed, and then the actual data transfer cycle starts. For this reason, there is a problem that the bus controller 13 must always wait for the CPU in the first access. further,
Since it takes time until data is stored in the read FIFO 17, the read operation of the CPU 2
If the data transfer operation to O17 has caught up, the wait must also be applied. That is, the conventional bus bridge circuit includes the local bus 300
However, there is a problem that the efficiency of the system is reduced and the efficiency of the system is reduced.

【0007】本発明はそのような課題を解決するために
なされたものであって、汎用バス上の各種拡張機器から
データリードする際に、CPUにウェイトをかける回数
を減らすことができ、システムの効率を向上させること
ができるバスブリッジ回路を提供することを目的とす
る。
The present invention has been made to solve such a problem, and can reduce the number of times the CPU is waited when reading data from various extension devices on a general-purpose bus. An object of the present invention is to provide a bus bridge circuit capable of improving efficiency.

【0008】[0008]

【課題を解決するための手段】本発明によるバスブリッ
ジ回路は、コンピュータのローカルバスと汎用バスとの
間に設置されるものであって、ローカルバスに出力され
たリードアドレスとそのリードアドレスを出力したリー
ドサイクルの直前に発生したライトアドレスとをそれぞ
れ記憶する複数のアドレス記憶手段(12b,121,
122)を備え、複数のアドレス記憶手段(12b,1
21,122)は、それぞれ、ローカルバスに出力され
たライトアドレスが、記憶されているライトアドレスと
一致した場合にライトアドレス一致信号を出力する第1
の比較手段(123)と、リードデータ保持手段(1
7)に保持されているデータが読み出されたリードアド
レスとローカルバスに出力されたリードアドレスとが一
致した場合にリードアドレス一致信号を出力する第2の
比較手段(124)とを含み、第1の比較手段(12
3)からライトアドレス一致信号が出力されると、ライ
トアドレス一致信号を出力した第1の比較手段(12
3)を含むアドレス記憶手段(12b,122)に記憶
されているリードアドレスからデータを読み出してリー
ドデータ保持手段(17)にデータを保持させる汎用バ
ス読み出し制御手段(11,13)と、第2の比較手段
(124)からリードアドレス一致信号が出力される
と、リードデータ保持手段(17)に保持されているデ
ータをローカルバス側に転送する転送手段(11,1
5)とを備えたことを特徴とする。
A bus bridge circuit according to the present invention is provided between a local bus of a computer and a general-purpose bus, and is output to a local bus.
Read address and the lead that output the read address
The write address that occurred just before the write cycle.
A plurality of address storage means (12b, 121,
122) and a plurality of address storage means (12b, 1).
21 and 122) are output to the local bus, respectively.
The write address is the same as the stored write address.
The first that outputs a write address match signal when they match
Comparison means (123) and read data holding means (1
Read address from which the data held in 7) is read
Address does not match the read address output to the local bus.
Output a read address match signal when the
And a first comparing means (12).
When the write address match signal is output from 3), the write
The first comparing means (12
Stored in address storage means (12b, 122) including 3)
Reads data from the read address
A general-purpose buffer for storing data in the data storage means (17).
Reading control means (11, 13) and second comparing means
A read address match signal is output from (124)
And the data held in the read data holding means (17).
Transfer means (11, 1) for transferring data to the local bus side.
5).

【0009】[0009]

【発明の実施の形態】以下、本発明の実施の形態を図面
を参照して説明する。図1は、本発明によるバスブリッ
ジ回路を含むコンピュータ装置の概略構成を示すブロッ
ク図である。図に示すように、バスブリッジ回路1は、
CPU2から出力されるローカルバス300と、ビデオ
コントローラ(ビデオメモリ)3および各種メモリ・I
/O4が接続された汎用バス400との間に位置する。
バスブリッジ回路1は、それぞれ非同期で動いているバ
スの調停を行い、双方向のデータ転送を制御する。
Embodiments of the present invention will be described below with reference to the drawings. FIG. 1 is a block diagram showing a schematic configuration of a computer device including a bus bridge circuit according to the present invention. As shown in the figure, the bus bridge circuit 1
A local bus 300 output from the CPU 2, a video controller (video memory) 3, and various memories I
/ O4 is connected to the connected general-purpose bus 400.
The bus bridge circuit 1 arbitrates buses operating asynchronously, and controls bidirectional data transfer.

【0010】図2は、バスブリッジ回路1の一構成例を
示すブロック図である。アドレスキャッシュコントロー
ラ11は、ローカルバス制御信号を受け、アドレスキャ
ッシュ12にアドレスラッチ信号(AL)、ライトアド
レスラッチ信号(WA)およびリードアドレスラッチ信
号(RA)を出力する。また、アドレスキャッシュ12
からライトアドレス一致信号(WM)およびリードアド
レス一致信号(RM)を入力し、バスコントローラ13
を通して、汎用バス400の制御とFIFOコントロー
ラ15およびリードFIFO17の制御とを行う。さら
に、リードFIFO17に有効なデータが保持されてい
るかどうかの管理も行う。アドレスキャッシュ12に
は、ライトアドレスとリードアドレスが記憶される。ア
ドレスキャッシュ12は、記憶されたアドレスと現在の
サイクルのアドレスとを比較し、比較結果をアドレスキ
ャッシュコントローラ11に出力するとともに、選択し
たひとつのアドレスをアドレス/データマルチプレクサ
14に出力する。
FIG. 2 is a block diagram showing one configuration example of the bus bridge circuit 1. As shown in FIG. The address cache controller 11 receives the local bus control signal and outputs an address latch signal (AL), a write address latch signal (WA) and a read address latch signal (RA) to the address cache 12. The address cache 12
, A write address match signal (WM) and a read address match signal (RM) are input from the
Control of the general-purpose bus 400 and control of the FIFO controller 15 and the read FIFO 17. Further, it manages whether or not valid data is held in the read FIFO 17. The address cache 12 stores a write address and a read address. The address cache 12 compares the stored address with the address in the current cycle, outputs the comparison result to the address cache controller 11, and outputs one selected address to the address / data multiplexer 14.

【0011】バスコントローラ13には、ローカルバス
300および汎用バス400双方からの制御信号および
アドレスキャッシュコントローラ11からの信号が入力
される。バスコントローラ13は、両バスのサイクルの
調停を行い、コマンド信号やレディ信号等を出力する。
バスコントローラ13は、さらに、アドレス/データマ
ルチプレクサ14やFIFOコントローラ15の制御も
行う。アドレス/データマルチプレクサ14は、アドレ
スとデータが同じバスを使用している汎用バス400に
対して、アドレスとデータを切り替える。さらに、ロー
カルバス300のアドレスとアドレスキャッシュ12の
アドレスを選択する。FIFOコントローラ15は、ラ
イトFIFO16およびリードFIFO17を制御し、
データの取り込みと出力を制御する。ライトFIFO1
6には、CPU2が汎用バス400上のターゲット(ビ
デオコントローラ3や各種メモリ・I/O4)に対して
ライトしたデータが保持される。リードFIFO17に
は、CPU2がターゲットからリードしたデータが保持
される。
The bus controller 13 receives control signals from both the local bus 300 and the general-purpose bus 400 and signals from the address cache controller 11. The bus controller 13 arbitrates the cycles of both buses and outputs a command signal, a ready signal, and the like.
The bus controller 13 further controls the address / data multiplexer 14 and the FIFO controller 15. The address / data multiplexer 14 switches the address and the data to the general-purpose bus 400 using the same bus as the address and the data. Further, the address of the local bus 300 and the address of the address cache 12 are selected. The FIFO controller 15 controls a write FIFO 16 and a read FIFO 17,
Control data capture and output. Write FIFO1
6 holds data written by the CPU 2 to a target (video controller 3 or various memories / I / Os 4) on the general-purpose bus 400. The read FIFO 17 holds data read from the target by the CPU 2.

【0012】図3は、アドレスキャッシュ12の内部構
成を示すブロック図である。アドレスラッチ12aは、
ローカルバスのアドレスを一時的に保持する。アドレス
記憶/比較回路12bには、アドレスラッチ12aから
のラッチドアドレスとローカルバス300からのローカ
ルバスアドレスが入力され、さらに、アドレスキャッシ
ュコントローラ11からのアドレスラッチ信号が入力さ
れる。また、アドレス記憶/比較回路12bは、内部に
記憶されたアドレスを出力するとともに、比較結果の信
号を出力する。なお、アドレス記憶/比較回路12b
は、複数組搭載される。アドレスセレクタ12cは、全
てのアドレス記憶/比較回路12bからラッチドリード
アドレスとライトアドレス一致信号を入力し、ライトア
ドレス一致信号がアクティブとなっているアドレス記憶
/比較回路12bから出力されているラッチドリードア
ドレスを選択し、ラッチドリードアドレスとして出力す
る。
FIG. 3 is a block diagram showing the internal configuration of the address cache 12. The address latch 12a
Temporarily holds the local bus address. The address storage / comparison circuit 12b receives the latched address from the address latch 12a and the local bus address from the local bus 300, and further receives an address latch signal from the address cache controller 11. The address storage / comparison circuit 12b outputs an address stored therein and outputs a signal of a comparison result. The address storage / comparison circuit 12b
Are mounted in plural sets. The address selector 12c receives the latched read address and the write address coincidence signal from all the address storage / comparison circuits 12b, and outputs the latched output from the address storage / comparison circuit 12b where the write address coincidence signal is active. A read address is selected and output as a latched read address.

【0013】図4は、各アドレス記憶/比較回路12b
の内部構成を示すブロック図である。ライトアドレスラ
ッチ121は、アドレスラッチ12aからのラッチドア
ドレスとアドレスキャッシュコントローラ11からのラ
イトアドレスラッチ信号とを入力し、リード動作の直前
に発生したライトアドレスをラッチする。リードアドレ
スラッチ122は、ローカルバス300からのローカル
バスアドレスとアドレスキャッシュコントローラ11か
らのリードアドレスラッチ信号を入力し、リードアドレ
スをラッチする。ライトアドレス比較回路123は、ラ
イトアドレスラッチ121からのアドレスとローカルバ
スアドレスとを入力し、ライトアドレス一致信号を出力
する。また、リードアドレス比較回路124は、リード
アドレスラッチ122からのラッチドリードアドレスと
ローカルバスアドレス(CPU2からのライトアドレス
とリードアドレス)とを入力し、リードアドレス一致信
号を出力する。
FIG. 4 shows each address storage / comparison circuit 12b.
FIG. 2 is a block diagram showing an internal configuration of the device. The write address latch 121 receives the latched address from the address latch 12a and the write address latch signal from the address cache controller 11, and latches the write address generated immediately before the read operation. The read address latch 122 inputs a local bus address from the local bus 300 and a read address latch signal from the address cache controller 11, and latches the read address. The write address comparison circuit 123 receives the address from the write address latch 121 and the local bus address and outputs a write address match signal. Further, the read address comparison circuit 124 receives the latched read address from the read address latch 122 and the local bus address (write address and read address from the CPU 2) and outputs a read address match signal.

【0014】なお、この実施の形態では、リードデータ
保持手段はリードFIFO17で実現され、アドレス記
憶手段はアドレス記憶/比較回路12bにおけるライト
アドレスラッチ121およびリードアドレスラッチ12
2で実現されている。また、第1の比較手段はアドレス
記憶/比較回路12bにおけるライトアドレス比較回路
123で実現され、第2の比較手段および第3の比較手
段はリードアドレス比較回路124で実現されている。
そして、汎用バス読み出し制御手段はアドレスキャッシ
ュコントローラ11およびバスコントローラ13で実現
され、転送手段および保持データ管理手段はアドレスキ
ャッシュコントローラ11とFIFOコントローラ15
とで実現されている。
In this embodiment, the read data holding means is realized by the read FIFO 17, and the address storage means is the write address latch 121 and the read address latch 12 in the address storage / comparison circuit 12b.
2 is realized. The first comparing means is realized by the write address comparing circuit 123 in the address storage / comparing circuit 12b, and the second comparing means and the third comparing means are realized by the read address comparing circuit 124.
The general-purpose bus read control means is realized by the address cache controller 11 and the bus controller 13, and the transfer means and the held data management means comprise the address cache controller 11 and the FIFO controller 15.
And is realized in.

【0015】次に、図5のフローチャートを参照して動
作を説明する。なお、ライトFIFO16の動作は従来
のバスブリッジ回路におけるものの動作と同じであるか
ら説明を省略し、本発明の特徴であるアドレスキャッシ
ュ周辺の動作を中心に説明する。
Next, the operation will be described with reference to the flowchart of FIG. Since the operation of the write FIFO 16 is the same as that of the conventional bus bridge circuit, the description thereof will be omitted, and the description will focus on the operation around the address cache, which is a feature of the present invention.

【0016】まず、アドレスキャッシュコントローラ1
1は、ローカルバス制御信号によって、CPU2がリー
ド動作をするのかライト動作をするのか判断する(ステ
ップS1)。ライト動作と判断した場合には、アドレス
キャッシュコントローラ11は、アドレスラッチ信号を
出力し、アドレスラッチ12aにライトアドレスをラッ
チさせる(ステップS2)。
First, the address cache controller 1
1 determines whether the CPU 2 performs a read operation or a write operation based on a local bus control signal (step S1). If it is determined that the write operation is performed, the address cache controller 11 outputs an address latch signal and causes the address latch 12a to latch the write address (Step S2).

【0017】続いて、各アドレス記憶/比較回路12b
におけるリードアドレス比較回路124が、ラッチドリ
ードアドレス(後述のステップS14参照)とライトア
ドレスを比較する。一致したならば、リードアドレス比
較回路124は、リードアドレス一致信号をアクティブ
にする。アドレスキャッシュコントローラ11は、リー
ドアドレス一致信号がアクティブになったときに、以前
にそのラッチドリードアドレスからリードしたデータが
既にリードFIFO17に取り込まれている場合には、
リードFIFO17の内容を無効とする(ステップS
3)。後述するように、ラッチドリードアドレスが存在
する場合には、そのラッチドリードアドレスからのデー
タがリードFIFO17に格納されている場合がある。
ラッチドリードアドレスとライトアドレスとが一致した
ということは、リードFIFO17に格納されているデ
ータが、汎用バス400につながる書き込み先において
書き換えられることを意味する。すなわち、リードFI
FO17に格納されているデータが古いデータとなるこ
とを意味する。従って、そのようなデータは無効とされ
る。
Subsequently, each address storage / comparison circuit 12b
The read address comparison circuit 124 compares the latched read address (see step S14 described later) with the write address. If they match, the read address comparison circuit 124 activates the read address match signal. When the read address match signal becomes active, if the data previously read from the latched read address has already been taken into the read FIFO 17,
Invalidates the contents of the read FIFO 17 (step S
3). As described later, when a latched read address exists, data from the latched read address may be stored in the read FIFO 17.
The fact that the latched read address matches the write address means that the data stored in the read FIFO 17 is rewritten at the write destination connected to the general-purpose bus 400. That is, the read FI
This means that the data stored in the FO 17 becomes old data. Therefore, such data is invalidated.

【0018】次いで、各アドレス記憶/比較回路12b
におけるライトアドレス比較回路123は、ライトアド
レスラッチ121にラッチされているアドレスとライト
アドレスを比較する(ステップS4)。一致したなら
ば、ライトアドレス比較回路123は、ライトアドレス
一致信号をアクティブにする。ライトアドレス一致信号
が非アクティブのときはステップS1に戻り、アクティ
ブのときはステップS5に進む。ステップS5では、ア
ドレスキャッシュコントローラ11は、引き続きCPU
2が汎用バス400へのアクセスを起こすかどうかロー
カルバス300を監視する。起こした場合にはステップ
S2に戻り、起こさない場合にはステップS6に進む。
Next, each address storage / comparison circuit 12b
The write address comparison circuit 123 compares the address latched in the write address latch 121 with the write address (step S4). If they match, the write address comparison circuit 123 activates the write address match signal. When the write address match signal is inactive, the process returns to step S1, and when active, the process proceeds to step S5. In step S5, the address cache controller 11 continues to
2 monitors the local bus 300 for access to the general-purpose bus 400. If so, the process returns to step S2. If not, the process proceeds to step S6.

【0019】ステップS6では、ライトアドレス一致信
号がアクティブになったアドレス記憶/比較回路12b
から出力されるラッチドリードアドレスが、アドレスセ
レクタ12cによって選択される。そして、選択された
ラッチドリードアドレスは、アドレス/データマルチプ
レクサ14に与えられる。さらに、アドレスキャッシュ
コントローラ11は、バスコントローラ13を制御し
て、アドレス/データマルチプレクサ14に与えられた
アドレスからバーストリードを起動させ、リードFIF
O17にデータを取り込ませる。また、リードFIFO
17にラッチドリードアドレスから読み出された有効な
データが保持されているという情報と、どのアドレス記
憶/比較回路12bから出力されたラッチドリードアド
レスが使用されたかという情報を記憶する。なお、デー
タライト動作そのものは、従来の場合と同様に、ライト
FIFO16を介して行われる。
In step S6, the address storage / comparison circuit 12b for which the write address coincidence signal has become active
Is selected by the address selector 12c. Then, the selected latched read address is provided to the address / data multiplexer 14. Further, the address cache controller 11 controls the bus controller 13 to start a burst read from the address given to the address / data multiplexer 14 and to read the read FIFO.
Data is taken into O17. Also, read FIFO
17 stores information indicating that valid data read from the latched read address is held and information indicating which address storage / comparison circuit 12b has used the latched read address. The data write operation itself is performed via the write FIFO 16 as in the conventional case.

【0020】以上のようにして、CPU2が汎用バス4
00に接続されたターゲットからのデータライト動作を
開始すると、過去のデータライト動作に伴って行われた
データリード動作におけるリードアドレスからのデータ
がリードFIFO17に取り込まれて保持される。ま
た、そのリードアドレスがラッチドリードアドレスとし
て保持される。
As described above, the CPU 2 is connected to the general-purpose bus 4
When a data write operation from a target connected to 00 is started, data from a read address in a data read operation performed in association with a past data write operation is captured and held in the read FIFO 17. Further, the read address is held as a latched read address.

【0021】ステップS1においてリード動作と判断さ
れると、アドレスキャッシュコントローラ11は、上述
したデータリードに使用されたラッチドリードアドレス
を出力したアドレス記憶/比較回路12bからのリード
アドレス一致信号がアクティブで、かつ、リードFIF
O17内のデータが有効かどうか判断する(ステップS
11)。ここでは、アドレス記憶/比較回路12bにお
けるリードアドレス比較回路124は、リードアドレス
ラッチ122からのラッチドリードアドレスとローカル
バス300におけるリードアドレスとを比較する。リー
ドアドレス一致信号がアクティブで、かつ、リードFI
FO17内のデータが有効である場合には、CPU2が
必要としているデータは既にリードFIFO17に取り
込まれていることになる。一方、リードアドレス一致信
号が非アクティブ、または、リードFIFO17内のデ
ータが無効の場合には、CPU2が必要としているデー
タはリードFIFO17に存在しないことになる。
When the read operation is determined in step S1, the address cache controller 11 activates the read address match signal from the address storage / comparison circuit 12b that outputs the latched read address used for the data read. And lead FIF
It is determined whether the data in O17 is valid (step S
11). Here, the read address comparison circuit 124 in the address storage / comparison circuit 12b compares the latched read address from the read address latch 122 with the read address on the local bus 300. The read address match signal is active and the read FI
If the data in the FO 17 is valid, the data required by the CPU 2 has already been taken into the read FIFO 17. On the other hand, when the read address match signal is inactive or the data in the read FIFO 17 is invalid, the data required by the CPU 2 does not exist in the read FIFO 17.

【0022】CPU2が必要としているデータは既にリ
ードFIFO17に取り込まれている場合にはステップ
S12の処理が行われる。ステップS12では、アドレ
スキャッシュコントローラ11は、ローカルバス制御信
号を出力し、CPUにウェイトをかけることなくCPU
にデータを転送する。その後、ステップS1に戻る。
If the data required by the CPU 2 has already been taken into the read FIFO 17, the process of step S12 is performed. In step S12, the address cache controller 11 outputs a local bus control signal, and
Transfer data to Then, the process returns to step S1.

【0023】リードFIFO17に有効なデータが取り
込まれていない場合にはステップS13の処理が行われ
る。ステップS13では、通常のリード動作と同様の処
理が行われる。すなわち、アドレスキャッシュコントロ
ーラ11は、ローカルバス制御信号を出力し、CPU2
にウェイトをかけリードFIFO17にデータを取り込
んだ後、または取り込みと平行してCPU2にデータを
転送する。
If valid data has not been taken into the read FIFO 17, the process of step S13 is performed. In step S13, a process similar to the normal read operation is performed. That is, the address cache controller 11 outputs a local bus control signal and
After the data is loaded into the read FIFO 17 or in parallel with the loading, the data is transferred to the CPU 2.

【0024】続いて、ステップS14において、アドレ
スキャッシュコントローラ11は、まだアドレスがラッ
チされていないアドレス記憶/比較回路12bに対し
て、ライトアドレスラッチ信号とリードアドレスラッチ
信号を出力する。信号を受けたライトアドレスラッチ1
21およびリードアドレスラッチ122は、それぞれア
ドレスラッチ12aからのラッチドアドレスおよびロー
カルバスアドレス(CPU2からのリードアドレス)を
ラッチする。アドレスがラッチされていないアドレス記
憶/比較回路12bがないときは、過去一番古い時期に
アドレスをラッチしたアドレス記憶/比較回路12bに
対して、アドレスラッチ信号を出力する。そして、ステ
ップS1に戻る。
Subsequently, in step S14, the address cache controller 11 outputs a write address latch signal and a read address latch signal to the address storage / comparison circuit 12b whose address has not been latched yet. Write address latch 1 which received signal
21 and the read address latch 122 latch the latched address and the local bus address (read address from the CPU 2) from the address latch 12a, respectively. When there is no address storage / comparison circuit 12b whose address is not latched, an address latch signal is output to the address storage / comparison circuit 12b that has latched the address at the oldest time in the past. Then, the process returns to step S1.

【0025】以上のように、本発明によるバスブリッジ
回路1は、汎用バス400に接続されたターゲットに対
するライト動作があるときに、過去の同一アドレスに対
するライト動作に伴って行われたリード動作の際に用い
られたリードアドレスからデータを読み出してリードF
IFO17に設定しておく。そして、今回CPU2が読
み出したいデータがリードFIFO17に既に設定され
ているならば、そのまま、リードFIFO17からロー
カルバス300にデータが転送される。換言すれば、本
発明によるバスブリッジ回路1が、ローカルバスの動作
を記憶学習し、あらかじめリードデータを予測して先読
みしておくことで、CPU2の汎用バス400からのデ
ータ読み出し効率が向上する。特に、データライトとそ
れに続くデータリードとの相関が大きいビデオメモリを
有するビデオコントローラ等のターゲットを対象とする
場合には、このような予測処理は効果が大きい。
As described above, when the bus bridge circuit 1 according to the present invention performs a write operation on a target connected to the general-purpose bus 400, the bus bridge circuit 1 performs a read operation performed along with a past write operation on the same address. Read data from the read address used for
It is set in the IFO 17. If the data that the CPU 2 wants to read this time has already been set in the read FIFO 17, the data is transferred from the read FIFO 17 to the local bus 300 as it is. In other words, the bus bridge circuit 1 according to the present invention memorizes and learns the operation of the local bus, predicts the read data in advance, and pre-reads the data, thereby improving the data reading efficiency of the CPU 2 from the general-purpose bus 400. In particular, when a target such as a video controller having a video memory having a large correlation between a data write and a subsequent data read is targeted, such a prediction process is highly effective.

【0026】なお、この実施の形態では、リード動作の
直前のライト動作でリードアドレスを予測していた。し
かしライト動作に限らず、その他の特定のローカルバス
サイクルを監視し、その結果によって次のリードサイク
ルを予測するように構成してもよい。
In this embodiment, the read address is predicted in the write operation immediately before the read operation. However, the present invention is not limited to the write operation, but may be configured to monitor another specific local bus cycle and predict the next read cycle based on the result.

【0027】[0027]

【発明の効果】以上のように、本発明によれば、バスブ
リッジ回路を、ローカルバスに出力されたリードアドレ
スとそのリードアドレスを出力したリードサイクルの直
前に発生したライトアドレスとをそれぞれ記憶する複数
のアドレス記憶手段を備え、複数のアドレス記憶手段
は、それぞれ、ローカルバスに出力されたライトアドレ
スが、記憶されているライトアドレスと一致した場合に
ライトアドレス一致信号を出力する第1の比較手段と、
リードデータ保持手段に保持されているデータが読み出
されたリードアドレスとローカルバスに出力されたリー
ドアドレスとが一致した場合にリードアドレス一致信号
を出力する第2の比較手段とを含み、第1の比較手段か
らライトアドレス一致信号が出力されると、ライトアド
レス一致信号を出力した第1の比較手段を含むアドレス
記憶手段に記憶されているリードアドレスからデータを
読み出してリードデータ保持手段にデータを保持させる
汎用バス読み出し制御手段と、第2の比較手段からリー
ドアドレス一致信号が出力されると、リードデータ保持
手段に保持されているデータをローカルバス側に転送す
る転送手段とを備えた構成としたので、汎用バス上のビ
デオコントローラ等の拡張機器からデータを読み出す際
にCPUにウェイトをかける回数を減らすことができ、
システム効率を向上させることができる効果がある。そ
して、第3の比較手段からアドレス一致信号が出力され
るとリードデータ保持手段に保持されているデータを無
効とする保持データ管理手段を備えている場合には、古
いデータがCPUに渡ることがないようにすることが
きる。また、拡張機器が、ビデオメモリを有するビデオ
コントローラである場合には、リード動作とリード動作
直前のライト動作との相関の学習効果が大きくなり、シ
ステム効率をより向上させることができる。
As described above, according to the present invention, the bus bridge circuit is connected to the read address output to the local bus.
Of the read cycle that output the
A plurality of memories each storing a previously generated write address
Address storage means, and a plurality of address storage means
Are the write addresses output to the local bus.
If the address matches the stored write address
First comparing means for outputting a write address match signal;
The data held in the read data holding means is read.
Read address and the read address output to the local bus.
Read address match signal when address matches
And second comparing means for outputting the first comparison means.
When a write address match signal is output from the
Address including the first comparing means that has output the address match signal.
Data from the read address stored in the storage means
Read and let the read data holding means hold the data
The general-purpose bus read control means and the second comparison means
When the address match signal is output, the read data is held.
Transfer the data held in the means to the local bus side
And a transfer means for transferring data from an extended device such as a video controller on a general-purpose bus.
There is an effect that the system efficiency can be improved. Then, an address match signal is output from the third comparing means.
The data held in the read data holding means
If you are a holding data management means to effect the old data off <br/> in be so as not to pass to the CPU. When the extension device is a video controller having a video memory, the effect of learning the correlation between the read operation and the write operation immediately before the read operation is increased, and the system efficiency can be further improved.

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

【図1】 本発明によるバスブリッジ回路を含むコンピ
ュータ装置の概略構成を示すブロック図である。
FIG. 1 is a block diagram showing a schematic configuration of a computer device including a bus bridge circuit according to the present invention.

【図2】 バスブリッジ回路の一構成例を示すブロック
図である。
FIG. 2 is a block diagram illustrating a configuration example of a bus bridge circuit.

【図3】 アドレスキャッシュの内部構成を示すブロッ
ク図である。
FIG. 3 is a block diagram showing an internal configuration of an address cache.

【図4】 アドレス記憶/比較回路の内部構成を示すブ
ロック図である。
FIG. 4 is a block diagram showing an internal configuration of an address storage / comparison circuit.

【図5】 バスブリッジ回路の動作を示すフローチャー
トである。
FIG. 5 is a flowchart showing the operation of the bus bridge circuit.

【図6】 従来のバスブリッジ回路を含むコンピュータ
装置の概略構成を示すブロック図である。
FIG. 6 is a block diagram showing a schematic configuration of a computer device including a conventional bus bridge circuit.

【図7】 従来のバスブリッジ回路の一例を示すブロッ
ク図である。
FIG. 7 is a block diagram illustrating an example of a conventional bus bridge circuit.

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

1 バスブリッジ回路 2 CPU 3 ビデオコントローラ 4 各種メモリ・I/O 11 アドレスキャッシュコントローラ 12 アドレスキャッシュ 13 バスコントローラ 15 FIFOコントローラ 16 ライトFIFO 17 リードFIFO 12a アドレスラッチ 12b アドレス記憶/比較回路 12c アドレスセレクタ 121 ライトアドレスラッチ 122 リードアドレスラッチ 123 ライトアドレス比較回路 124 リードアドレス比較回路 300 ローカルバス 400 汎用バス Reference Signs List 1 bus bridge circuit 2 CPU 3 video controller 4 various memories / I / Os 11 address cache controller 12 address cache 13 bus controller 15 FIFO controller 16 write FIFO 17 read FIFO 12a address latch 12b address storage / comparison circuit 12c address selector 121 write address Latch 122 Read address latch 123 Write address comparison circuit 124 Read address comparison circuit 300 Local bus 400 General-purpose bus

Claims (3)

(57)【特許請求の範囲】(57) [Claims] 【請求項1】 コンピュータのローカルバスと汎用バス
との間に設置され、複数データを一時に格納しうるFI
FOで構成され汎用バスからのデータを保持するリード
データ保持手段(17)を有するバスブリッジ回路にお
いて、ローカルバスに出力されたリードアドレスとその
リードアドレスを出力したリードサイクルの直前に発生
したライトアドレスとをそれぞれ記憶する複数のアドレ
ス記憶手段(12b,121,122)を備え、前記複
数のアドレス記憶手段(12b,121,122)は、
それぞれ、ローカルバスに出力されたライトアドレス
が、記憶されているライトアドレスと一致した場合にラ
イトアドレス一致信号を出力する第1の比較手段(12
3)と、前記リードデータ保持手段(17)に保持され
ているデータが読み出されたリードアドレスとローカル
バスに出力されたリードアドレスとが一致した場合にリ
ードアドレス一致信号を出力する第2の比較手段(12
4)とを含み、 前記第1の比較手段(123)からライトアドレス一致
信号が出力されると、ライトアドレス一致信号を出力し
た第1の比較手段(123)を含むアドレス記憶手段
(12b,122)に記憶されているリードアドレスか
らデータを読み出して前記リードデータ保持手段(1
7)にデータを保持させる汎用バス読み出し制御手段
(11,13)と、 前記第2の比較手段(124)からリードアドレス一致
信号が出力されると、前記リードデータ保持手段(1
7)に保持されているデータをローカルバス側に転送す
る転送手段(11,15)と を備えたことを特徴とする
バスブリッジ回路。
A local bus and a general-purpose bus for a computer
Installed betweenFI that can store multiple data at one time
Composed of FORead that holds data from the general-purpose bus
Data holding means(17)Bus bridge circuit with
AndRead address output to local bus and its
Occurs immediately before the read cycle that outputs the read address
Addresses that respectively store the
Storage means (12b, 121, 122).
Address storage means (12b, 121, 122)
Write address output to local bus
Is matched with the stored write address.
The first comparison means (12
3) and held in the read data holding means (17).
Address and local address where the data
If the read address output to the bus matches,
A second comparing means (12
4) and Write address match from the first comparing means (123)
When a signal is output, a write address match signal is output.
Address storage means including first comparison means (123)
Read address stored in (12b, 122)
Data from the read data holding means (1).
7) General-purpose bus read control means for holding data
(11,13), Read address match from the second comparing means (124)
When the signal is output, the read data holding means (1
Transfer the data held in 7) to the local bus side
Transfer means (11, 15) Characterized by having
Bus bridge circuit.
【請求項2】 アドレス記憶手段(12b)は、ライト
アドレスをラッチするライトアドレスラッチ(121)
とリードアドレスをラッチするリードアドレスラッチ
(122)とを含み、 第2の比較手段(123)からアドレス一致信号が出力
されなかった場合には、汎用バス読み出し制御手段(1
1,13)は、汎用バスからのデータをリードデータ保
持手段(17)に取り込む制御を行い、 前記アドレス記憶手段(12b)は、リードアドレスを
前記リードアドレスラ ッチ(122)にラッチするとと
もに、ローカルバス側からのリード動作の直前に発生し
たライトアドレスを前記ライトアドレスラッチ(12
1)にラッチする 請求項1記載のバスブリッジ回路。
(2)The address storage means (12b)
Write address latch for latching address (121)
Address latch that latches the read address
(122) and An address match signal is output from the second comparing means (123)
If not, the general-purpose bus read control means (1
1, 13) stores data from the general-purpose bus as read data.
Control to be taken into the holding means (17), The address storage means (12b) stores a read address.
The read address line Latch (122)
This occurs immediately before a read operation from the local bus side.
The write address that has been written is stored in the write address latch (12
Latch to 1) The bus bridge circuit according to claim 1.
【請求項3】 アドレス記憶手段(12b)は、記憶し
ているリードアドレスとローカルバスに出力されたライ
トアドレスとが一致した場合にアドレス一致信号を出力
する第3の比較手段(124)を含み、 前記第3の比較手段(124)からアドレス一致信号が
出力されるとリードデータ保持手段(17)に保持され
ているデータを無効とする保持データ管理手段(11,
15)を備えた 請求項2記載のバスブリッジ回路。
(3)The address storage means (12b) stores
Read address and the line output to the local bus.
Outputs an address match signal when the address matches
A third comparing means (124) for performing An address match signal is output from the third comparing means (124).
When it is output, it is held in the read data holding means (17).
Holding data management means (11,
15) with The bus bridge circuit according to claim 2.
JP33237497A 1997-11-17 1997-11-17 Bus bridge circuit Expired - Fee Related JP3206528B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP33237497A JP3206528B2 (en) 1997-11-17 1997-11-17 Bus bridge circuit

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP33237497A JP3206528B2 (en) 1997-11-17 1997-11-17 Bus bridge circuit

Publications (2)

Publication Number Publication Date
JPH11149441A JPH11149441A (en) 1999-06-02
JP3206528B2 true JP3206528B2 (en) 2001-09-10

Family

ID=18254259

Family Applications (1)

Application Number Title Priority Date Filing Date
JP33237497A Expired - Fee Related JP3206528B2 (en) 1997-11-17 1997-11-17 Bus bridge circuit

Country Status (1)

Country Link
JP (1) JP3206528B2 (en)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN100587678C (en) * 2005-06-15 2010-02-03 松下电器产业株式会社 External device access device and system large-scale integrated circuit

Also Published As

Publication number Publication date
JPH11149441A (en) 1999-06-02

Similar Documents

Publication Publication Date Title
JP3778573B2 (en) Data processor and data processing system
US5454093A (en) Buffer bypass for quick data access
JPH04306748A (en) Information processor
US5353416A (en) CPU lock logic for corrected operation with a posted write array
US6507899B1 (en) Interface for a memory unit
JP3206528B2 (en) Bus bridge circuit
JP3808525B2 (en) Write and / or read access priority management device
KR960007833B1 (en) Method and apparatus for fast page mode selection
JPH04279945A (en) Memory circuit
JP2950856B2 (en) First-in first-out memory configuration method
EP0700005B1 (en) Vector data bypass mechanism for vector computer
US6671781B1 (en) Data cache store buffer
JP3105819B2 (en) Buffer control unit
JP3425421B2 (en) Multiprocessor system
JP3039391B2 (en) Memory system
JP2946942B2 (en) Vector data processing device
JP3437224B2 (en) Delay invalidation method
JPS61237145A (en) Controlling system for store buffer
JPH0744460A (en) Snoop processing system
JP2580078B2 (en) Instruction prefetch device
JP2001344152A (en) Cash memory device
JPH02156351A (en) Cache memory device
JP2004240520A (en) In-non cache area high speed memory access method
JPH0769863B2 (en) Data processing device
JPH09212419A (en) Cache memory

Legal Events

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

Free format text: PAYMENT UNTIL: 20070706

Year of fee payment: 6

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

Free format text: PAYMENT UNTIL: 20080706

Year of fee payment: 7

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

Free format text: PAYMENT UNTIL: 20090706

Year of fee payment: 8

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

Free format text: PAYMENT UNTIL: 20100706

Year of fee payment: 9

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

Free format text: PAYMENT UNTIL: 20100706

Year of fee payment: 9

S533 Written request for registration of change of name

Free format text: JAPANESE INTERMEDIATE CODE: R313533

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

Free format text: PAYMENT UNTIL: 20100706

Year of fee payment: 9

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

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

Free format text: PAYMENT UNTIL: 20110706

Year of fee payment: 10

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

Free format text: PAYMENT UNTIL: 20120706

Year of fee payment: 11

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

Free format text: PAYMENT UNTIL: 20120706

Year of fee payment: 11

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

Free format text: PAYMENT UNTIL: 20130706

Year of fee payment: 12

LAPS Cancellation because of no payment of annual fees