JPH11149441A - Bus bridge circuit - Google Patents

Bus bridge circuit

Info

Publication number
JPH11149441A
JPH11149441A JP9332374A JP33237497A JPH11149441A JP H11149441 A JPH11149441 A JP H11149441A JP 9332374 A JP9332374 A JP 9332374A JP 33237497 A JP33237497 A JP 33237497A JP H11149441 A JPH11149441 A JP H11149441A
Authority
JP
Japan
Prior art keywords
address
read
data
bus
bridge circuit
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
JP9332374A
Other languages
Japanese (ja)
Other versions
JP3206528B2 (en
Inventor
Moriharu Seki
守治 関
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)

Abstract

PROBLEM TO BE SOLVED: To provide a bus bridge circuit with which the efficiency of a system can be improved by decreasing the number of times for loading wait to a CPU in the case of reading data from various kinds of extension equipment on a general-purpose bus. SOLUTION: When a write address coincidence signal (WM) is made active, an address cache controller 11 applies a latched read address to an address/data multiplexer 14. Further, the address cache controller 11 controls a bus controller 13 and starts burst read from the address applied to the address/data multiplexer 14, and data are fetched by a read FIFO 17. When the data required for a CPU 2 are already fetched into the read FIFO 17, without loading wait to the CPU, the address cache controller 1 transfers data to the CPU.

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]

【課題を解決するための手段】本発明によるバスブリッ
ジ回路は、コンピュータのローカルバスと汎用バスとの
間に設置されるものであって、汎用バスに接続された拡
張機器に対するリードサイクルが開始される前に、その
リードサイクルにおけるリードアドレスを予測して拡張
機器からデータを読み出してリードデータ保持手段にデ
ータを保持させる予測読み出し手段を備えたものであ
る。予測読み出し手段は、ローカルバスに出力されたリ
ードアドレスとそのリードアドレスを出力したリードサ
イクルの直前に発生したライトアドレスとをそれぞれ記
憶する複数のアドレス記憶手段を含む構成であってもよ
い。予測読み出し手段は、ローカルバスに出力されたラ
イトアドレスがアドレス記憶手段に記憶されているライ
トアドレスと一致した場合にライトアドレス一致信号を
出力する第1の比較手段と、ライトアドレス一致信号が
出力されるとアドレス記憶手段に記憶されているリード
アドレスからデータを読み出してリードデータ保持手段
にデータを保持させる汎用バス読み出し制御手段とをさ
らに含む構成であってもよい。予測読み出し手段は、リ
ードデータ保持手段に保持されているデータが読み出さ
れたリードアドレスとローカルバスに出力されたリード
アドレスとが一致した場合にリードアドレス一致信号を
出力する第2の比較手段と、リードアドレス一致信号が
出力されるとリードデータ保持手段に保持されているデ
ータをローカルバス側に転送する転送手段とをさらに含
む構成であってもよい。そして、予測読み出し手段は、
アドレス記憶手段に記憶されているリードアドレスとロ
ーカルバスに出力されたライトアドレスが一致した場合
にアドレス一致信号を出力する第3の比較手段と、アド
レス一致信号が出力されるとリードデータ保持手段に保
持されているデータを無効とする保持データ管理手段と
をさらに含む構成であってもよい。また、拡張機器は、
例えば、ビデオメモリを有するビデオコントローラであ
る。
A bus bridge circuit according to the present invention is provided between a local bus of a computer and a general-purpose bus, and a read cycle for an extension device connected to the general-purpose bus is started. Before reading the data from the extension device by predicting the read address in the read cycle and causing the read data holding means to hold the data. The prediction reading means may include a plurality of address storage means for storing the read address output to the local bus and the write address generated immediately before the read cycle in which the read address was output. Predictive reading means for outputting a write address match signal when the write address output to the local bus matches a write address stored in the address storage means; Then, the configuration may further include general-purpose bus read control means for reading data from the read address stored in the address storage means and causing the read data holding means to hold the data. The predictive reading means includes a second comparing means for outputting a read address match signal when the read address from which the data held in the read data holding means has been read matches the read address output to the local bus; And a transfer unit for transferring the data held in the read data holding unit to the local bus side when the read address match signal is output. And the prediction reading means includes:
A third comparing means for outputting an address match signal when the read address stored in the address storage means matches the write address output to the local bus; and a read data holding means when the address match signal is output. The configuration may further include a retained data management unit that invalidates retained data. In addition, expansion equipment
For example, a video controller having a video memory.

【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に戻る。ステップS14の処理によって、今回
のデータライト処理におけるライトアドレスと、データ
ライト処理に続くデータリード処理におけるリードアド
レスとが記憶される。
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. By the process of step S14, the write address in the current data write process and the read address in the data read process following the data write process are stored.

【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]

【発明の効果】以上のように、本発明によれば、バスブ
リッジ回路を、汎用バスに接続された拡張機器に対する
リードサイクルが開始される前に、そのリードサイクル
におけるリードアドレスを予測して拡張機器からデータ
を読み出してリードデータ保持手段にデータを保持させ
る予測読み出し手段を備えた構成としたので、汎用バス
上のビデオコントローラ等の拡張機器からデータを読み
出す際にCPUにウェイトをかける回数を減らすことが
でき、システム効率を向上させることができる効果があ
る。予測読み出し手段が、ローカルバスに出力されたリ
ードアドレスとそのリードアドレスを出力したリードサ
イクルの直前に発生したライトアドレスとをそれぞれ記
憶する複数のアドレス記憶手段を含むように構成されて
いる場合には、リード動作直前のライト動作にもとづい
てリードアドレスを予測可能になる効果がある。予測読
み出し手段が、ローカルバスに出力されたライトアドレ
スがアドレス記憶手段に記憶されているライトアドレス
と一致した場合にライトアドレス一致信号を出力する第
1の比較手段と、ライトアドレス一致信号が出力される
とアドレス記憶手段に記憶されているリードアドレスか
らデータを読み出してリードデータ保持手段にデータを
保持させる汎用バス読み出し制御手段とを含むように構
成されている場合には、CPUが読み出す可能性の高い
データを事前にリードデータ保持手段に用意できる効果
がある。予測読み出し手段が、リードデータ保持手段に
保持されているデータが読み出されたリードアドレスと
ローカルバスに出力されたリードアドレスとが一致した
場合にリードアドレス一致信号を出力する第2の比較手
段と、リードアドレス一致信号が出力されるとリードデ
ータ保持手段に保持されているデータをローカルバス側
に転送する転送手段とを含むように構成されている場合
には、リード動作直前のライト動作にもとづくリードア
ドレスの予測によってCPUは直ちにデータを読み出せ
る効果がある。そして、予測読み出し手段が、アドレス
記憶手段に記憶されているリードアドレスとローカルバ
スに出力されたライトアドレスが一致した場合にアドレ
ス一致信号を出力する第3の比較手段と、アドレス一致
信号が出力されるとリードデータ保持手段に保持されて
いるデータを無効とする保持データ管理手段とを含むよ
うに構成されている場合には、古いデータがCPUに渡
ることがないようにできる。また、拡張機器が、ビデオ
メモリを有するビデオコントローラである場合には、リ
ード動作とリード動作直前のライト動作との相関の学習
効果が大きくなり、システム効率をより向上させること
ができる。
As described above, according to the present invention, before a read cycle for an extension device connected to a general-purpose bus is started, a bus bridge circuit is extended by predicting a read address in the read cycle. The configuration is provided with a predictive reading unit that reads data from the device and causes the read data holding unit to hold the data, so that the number of times the CPU waits when reading data from an extended device such as a video controller on a general-purpose bus is reduced. This has the effect of improving system efficiency. In the case where the predictive read means is configured to include a plurality of address storage means for storing the read address output to the local bus and the write address generated immediately before the read cycle in which the read address was output, This has the effect that the read address can be predicted based on the write operation immediately before the read operation. A first comparing unit that outputs a write address match signal when the write address output to the local bus matches the write address stored in the address storage unit; and a write address match signal is output. And a general-purpose bus read control means for reading data from the read address stored in the address storage means and holding the data in the read data holding means. There is an effect that high data can be prepared in the read data holding unit in advance. Predictive reading means for outputting a read address match signal when the read address read from the data held in the read data holding means matches the read address output to the local bus; Transfer means for transferring the data held in the read data holding means to the local bus side when the read address match signal is output, when the write operation is performed immediately before the read operation. The prediction of the read address has the effect that the CPU can immediately read the data. And a third comparing means for outputting an address match signal when the read address stored in the address storage means matches the write address output to the local bus; and outputting the address match signal. Then, in the case where a configuration is provided that includes a held data management unit that invalidates data held in the read data holding unit, old data can be prevented from passing 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 (6)

【特許請求の範囲】[Claims] 【請求項1】 コンピュータのローカルバスと汎用バス
との間に設置され、汎用バスからのデータを保持するリ
ードデータ保持手段を有するバスブリッジ回路におい
て、 前記汎用バスに接続された拡張機器に対するリードサイ
クルが開始される前に、そのリードサイクルにおけるリ
ードアドレスを予測して前記拡張機器からデータを読み
出して前記リードデータ保持手段にデータを保持させる
予測読み出し手段を備えたことを特徴とするバスブリッ
ジ回路。
1. A bus bridge circuit provided between a local bus of a computer and a general-purpose bus and having read data holding means for holding data from the general-purpose bus, wherein a read cycle for an extension device connected to the general-purpose bus is provided. A bus bridge circuit comprising: a predictive read unit that predicts a read address in the read cycle before the start of the read operation, reads data from the extension device, and causes the read data holding unit to hold the data.
【請求項2】 予測読み出し手段は、ローカルバスに出
力されたリードアドレスとそのリードアドレスを出力し
たリードサイクルの直前に発生したライトアドレスとを
それぞれ記憶する複数のアドレス記憶手段を含む請求項
1記載のバスブリッジ回路。
2. The predictive read means includes a plurality of address storage means for respectively storing a read address output to a local bus and a write address generated immediately before a read cycle in which the read address was output. Bus bridge circuit.
【請求項3】 予測読み出し手段は、ローカルバスに出
力されたライトアドレスがアドレス記憶手段に記憶され
ているライトアドレスと一致した場合にライトアドレス
一致信号を出力する第1の比較手段と、前記ライトアド
レス一致信号が出力されるとアドレス記憶手段に記憶さ
れているリードアドレスからデータを読み出してリード
データ保持手段にデータを保持させる汎用バス読み出し
制御手段とを含む請求項2記載のバスブリッジ回路。
3. The predictive reading unit includes: a first comparing unit that outputs a write address match signal when a write address output to a local bus matches a write address stored in an address storage unit; 3. The bus bridge circuit according to claim 2, further comprising: general-purpose bus read control means for reading data from the read address stored in the address storage means when the address match signal is output, and causing the read data holding means to hold the data.
【請求項4】 予測読み出し手段は、リードデータ保持
手段に保持されているデータが読み出されたリードアド
レスとローカルバスに出力されたリードアドレスとが一
致した場合にリードアドレス一致信号を出力する第2の
比較手段と、前記リードアドレス一致信号が出力される
とリードデータ保持手段に保持されているデータをロー
カルバス側に転送する転送手段とを含む請求項3記載の
バスブリッジ回路。
4. The predictive reading means outputs a read address match signal when the read address read from the data held in the read data holding means matches the read address output to the local bus. 4. The bus bridge circuit according to claim 3, further comprising: a comparing unit, and a transfer unit that transfers the data held in the read data holding unit to the local bus when the read address match signal is output.
【請求項5】 予測読み出し手段は、アドレス記憶手段
に記憶されているリードアドレスとローカルバスに出力
されたライトアドレスが一致した場合にアドレス一致信
号を出力する第3の比較手段と、前記アドレス一致信号
が出力されるとリードデータ保持手段に保持されている
データを無効とする保持データ管理手段とを含む請求項
4記載のバスブリッジ回路。
5. A prediction reading means comprising: third comparison means for outputting an address match signal when a read address stored in an address storage means and a write address output to a local bus match; 5. The bus bridge circuit according to claim 4, further comprising: held data management means for invalidating data held in the read data holding means when a signal is output.
【請求項6】 拡張機器は、ビデオメモリを有するビデ
オコントローラである請求項1ないし請求項5記載のバ
スブリッジ回路。
6. The bus bridge circuit according to claim 1, wherein the extension device is a video controller having a video memory.
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 true JPH11149441A (en) 1999-06-02
JP3206528B2 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)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2010244580A (en) * 2005-06-15 2010-10-28 Panasonic Corp External device access apparatus

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2010244580A (en) * 2005-06-15 2010-10-28 Panasonic Corp External device access apparatus

Also Published As

Publication number Publication date
JP3206528B2 (en) 2001-09-10

Similar Documents

Publication Publication Date Title
JP3778573B2 (en) Data processor and data processing system
US5454093A (en) Buffer bypass for quick data access
US5148533A (en) Apparatus and method for data group coherency in a tightly coupled data processing system with plural execution and data cache units
US5265236A (en) Method and apparatus for increasing the speed of memory access in a virtual memory system having fast page mode
JPH04306748A (en) Information processor
US5353416A (en) CPU lock logic for corrected operation with a posted write array
JPS6126702B2 (en)
JP3206528B2 (en) Bus bridge circuit
KR960007833B1 (en) Method and apparatus for fast page mode selection
JP3808525B2 (en) Write and / or read access priority management device
JPH0353657B2 (en)
JP2002342162A (en) Method for controlling memory access and host bridge
JP3105819B2 (en) Buffer control unit
JP3039391B2 (en) Memory system
JP3437224B2 (en) Delay invalidation method
JP2946942B2 (en) Vector data processing device
JP2534321B2 (en) Data transfer control method and apparatus
JPH0744460A (en) Snoop processing system
JP2580078B2 (en) Instruction prefetch device
JP2621793B2 (en) Multiplex method of bus cycle
JP2001344152A (en) Cash memory device
JPS61237145A (en) Controlling system for store buffer
JPH02156351A (en) Cache memory device
JPH02307123A (en) Computer
JPH0769863B2 (en) Data processing device

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