JP3485231B2 - Data transfer method between buses, bridge device for connecting buses, and data processing system including a plurality of buses - Google Patents

Data transfer method between buses, bridge device for connecting buses, and data processing system including a plurality of buses

Info

Publication number
JP3485231B2
JP3485231B2 JP01577297A JP1577297A JP3485231B2 JP 3485231 B2 JP3485231 B2 JP 3485231B2 JP 01577297 A JP01577297 A JP 01577297A JP 1577297 A JP1577297 A JP 1577297A JP 3485231 B2 JP3485231 B2 JP 3485231B2
Authority
JP
Japan
Prior art keywords
pci
bus
bridge
primary
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.)
Expired - Fee Related
Application number
JP01577297A
Other languages
Japanese (ja)
Other versions
JPH10222457A (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.)
International Business Machines Corp
Original Assignee
International Business Machines 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 International Business Machines Corp filed Critical International Business Machines Corp
Priority to JP01577297A priority Critical patent/JP3485231B2/en
Publication of JPH10222457A publication Critical patent/JPH10222457A/en
Application granted granted Critical
Publication of JP3485231B2 publication Critical patent/JP3485231B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Description

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

【0001】[0001]

【発明の属する技術分野】本発明は、複数のバスを含む
データ処理システムにおいてバス間のデータ転送を制御
するための方法、バス同士を相互接続してバス間のデー
タ転送を可能にするためのブリッジ装置、及び複数のバ
スを含むデータ処理システムに係る。特に、本発明は、
少なくとも第1、第2、及び第3のバスを含み、且つ、
第2のバス上の装置には所定範囲内のアドレスを割り当
てるとともにそれ以外のバス上の装置には所定範囲外の
アドレスを割り当てたデータ処理システムにおける、バ
ス間のデータ転送方法、バス間を接続するためのブリッ
ジ装置、及び複数のバスを含むデータ処理システムに関
する。更に詳しくは、本発明は、第2のバス上の装置か
ら他のへのデータ転送要求を好適に処理するためのバス
間のデータ転送方法、バス間を接続するためのブリッジ
装置、及び複数のバスを含むデータ処理システムに関す
る。
BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to a method for controlling data transfer between buses in a data processing system including a plurality of buses, and for interconnecting the buses to enable data transfer between the buses. The present invention relates to a data processing system including a bridge device and a plurality of buses. In particular, the invention is
Including at least first, second, and third buses, and
Data transfer method between buses and connection between buses in a data processing system in which addresses on a second bus are assigned addresses within a predetermined range and devices on other buses are assigned addresses outside the predetermined range And a data processing system including a plurality of buses. More specifically, the present invention relates to a data transfer method between buses for suitably processing a data transfer request from a device on a second bus to another, a bridge device for connecting the buses, and a plurality of bridge devices. A data processing system including a bus.

【0002】[0002]

【従来の技術】パーソナル・コンピュータのバス環境: 昨今の技術革新
に伴い、デスクトップ型、タワー型、ノートブック型な
ど各種パーソナル・コンピュータ(PC)が開発され市
販されている。
2. Description of the Related Art Bus environment of personal computer: With the recent technological innovation, various personal computers (PC) such as desktop type, tower type and notebook type have been developed and put on the market.

【0003】これらPCの内部では、ホストCPUを含
む各種コントローラ・チップや、メモリや周辺機器など
の他のコンポーネントが、「バス」と呼ばれる共通信号
伝送路によって相互接続された構成となっている。ま
た、バスは、システム・ボード上で拡張スロットという
形態で具体化されていおり、拡張スロットには各種拡張
カードを取り付けることができる。
Inside these PCs, various controller chips including a host CPU and other components such as memories and peripheral devices are interconnected by a common signal transmission path called a "bus". The bus is embodied in the form of an expansion slot on the system board, and various expansion cards can be attached to the expansion slot.

【0004】バスの標準化がコンピュータ業界に与える
影響は大きい。何故なら、システム・ボード・メーカや
拡張カード・メーカ等は標準的なバスの仕様に従って製
品を製造・販売することができ、さらに、周辺環境が拡
充されることによってより多くのユーザにとってPCが
受け入れ易いものとなるからである。
The standardization of buses has a great impact on the computer industry. This is because system board manufacturers, expansion card manufacturers, etc. can manufacture and sell products according to standard bus specifications. In addition, the expansion of the surrounding environment allows PCs to be accepted by more users. This is because it becomes easy.

【0005】バス・アーキテクチャの標準的な規格とし
ては、従来よりISA(Industry Standard Architectu
re)が広く知られ且つ利用されてきた。ISAバスは、
IBM PC/AT("PC/AT"は米IBM社の商
標)に採用されたバスをベースとした、米Intel社
製のCPUチップ80286に合わせて設計されたもの
である。ISAバスの基本性能は、バス幅16ビット、
動作クロック8MHz、最大データ転送速度4MBps
である。ISAバスは、現在に至るまでに最も広汎に受
け入れられたバス・アーキテクチャの1つであり、IS
Aと互換性のある(すなわちISAバスに接続可能で、
且つ正常に動作する)拡張ボード、周辺機器、及びソフ
トウェア(OS、BIOS、アプリケーション)を豊富
に備えている。すなわち、ISAは、過去の資産(Le
gacy)をより多く継承したバス・アーキテクチャと
言えよう。
As a standard for bus architecture, ISA (Industry Standard Architectu) has been conventionally used.
re) has been widely known and used. The ISA bus is
It is designed in accordance with a CPU chip 80286 manufactured by Intel Corp. based on a bus adopted in IBM PC / AT (“PC / AT” is a trademark of IBM Corp. in the US). The basic performance of the ISA bus is 16-bit bus width,
Operation clock 8MHz, maximum data transfer rate 4MBps
Is. The ISA bus is one of the most widely accepted bus architectures to date.
Compatible with A (ie connectable to ISA bus,
It has abundant expansion boards, peripheral devices, and software (OS, BIOS, applications) that operate normally. That is, ISA is
It can be said that it is a bus architecture that inherited more of the "gacy".

【0006】しかしながら、最近では、米Intel社
のi486やPentium、あるいは米IBM社等が
共同開発した"PowerPC 6xx"("Power
PC"は米IBM社の商標)のように、動作クロックが
100MHzを越える強力なCPUが開発され、広汎に
普及してきた。これに伴って、バス幅が狭く且つデータ
転送速度も低いISAバスでは、高速なCPUの能力を
充分引き出すことができなくなってきた。また、グラフ
ィックやフル・モーションのビデオ・サブシステム、S
CSI(Small Computer System Interface)系のスト
レージ・サブシステム、ネットワーク・サブシステムな
ど、高速なデータ転送を要するサブシステム/拡張ボー
ド類が登場してきたが、これらサブシステムにとっても
ISAバスのデータ入出力能力は役不足となってきた。
However, recently, "PowerPC 6xx"("PowerPC6xx"("Power") jointly developed by i486 and Pentium of Intel Corp. of America or IBM Corp.
Like "PC" is a trademark of IBM Corp. in the US, a powerful CPU with an operating clock of more than 100 MHz has been developed and widely spread. Along with this, in an ISA bus with a narrow bus width and a low data transfer rate, , It has become impossible to take full advantage of the high-speed CPU, and a graphics and full-motion video subsystem, S
CSI (Small Computer System Interface) storage subsystems, network subsystems, and other subsystems / expansion boards that require high-speed data transfer have appeared, but these subsystems also have ISA bus data input / output capability. Is running out of roles.

【0007】かかる状況下で、パワー・アップされたC
PUやサブシステムをサポートすべく、幾つかのバス・
アーキテクチャが提案され、開発されてきた。このうち
の1つとして、PCI(Peripheral Component Interco
nnect)が挙げられる。PCIバスは、もともとは19
91年に米Intel社により仕様案が策定され、現在
はSIG(Special Interest Group)のメンバーによっ
て標準化や普及化が行われている。PCIバスの基本性
能は、バス幅32ビット、動作クロック33MHz、最
大データ転送速度132MBpsである。また、PCI
では、アドレスとデータが多重化されており、アドレス
・ラインとデータ・ラインを別々にする必要がない。こ
のため、PCIバスに必要とされる信号の数が他のバス
環境の約半分に低減され、PCIバス接続をサポートす
る装置類の接続ピン数も少なくて済む。また、PCIで
は、CPUがデータ転送を行うPIO(プログラマブル
I/O転送)の他、PCIバス上の装置(マスタ装置)
がバスを制御してデータ転送を行うバスマスタ転送も定
義されている。なお、PCIバス・アーキテクチャの構
造とオペレーションに関する詳細は、"PCI LocalBus Sp
ecification, Revision 2.0"(Copyright 1992,1993)
及び"PCI to PCI Bridge Architecture Specification,
Revision 1.0, 1994"(original issue)などに記述さ
れている。
Under such a situation, the power-up C
To support PUs and subsystems,
An architecture has been proposed and developed. One of these is PCI (Peripheral Component Interco
nnect). The PCI bus was originally 19
A specification draft was formulated by Intel Corporation of the United States in 1991, and is currently being standardized and popularized by members of the SIG (Special Interest Group). The basic performance of the PCI bus is a bus width of 32 bits, an operation clock of 33 MHz, and a maximum data transfer rate of 132 MBps. In addition, PCI
In, the address and data are multiplexed, and there is no need to separate address lines and data lines. Therefore, the number of signals required for the PCI bus is reduced to about half that of other bus environments, and the number of connection pins for devices supporting the PCI bus connection is reduced. In PCI, in addition to PIO (programmable I / O transfer) in which the CPU transfers data, a device on the PCI bus (master device)
A bus master transfer that controls the bus to transfer data is also defined. For details on the structure and operation of the PCI bus architecture, see "PCI LocalBus Sp
ecification, Revision 2.0 "(Copyright 1992,1993)
And "PCI to PCI Bridge Architecture Specification,
Revision 1.0, 1994 "(original issue).

【0008】PCIバスの特徴(1):PCIバスは、
広いバス幅と高速クロックを提供し、CPUのローカル
・バスとして位置付けられている。PCIバスには、例
えば、描画機能を発揮するビデオ・コントローラの他、
PCカードとのインターフェース・プロトコルを実現す
るPCMCIA(Personal Computer Memory Card Inte
rnational Association)コントローラ、SCSIやL
AN(Local Area network)の拡張ボード等が接続され
る。例えばPCIバスにビデオ・コントローラを接続す
ることにより、システムの表示性能を大幅に強化するこ
とができる。
Features of PCI bus (1): The PCI bus is
It provides a wide bus width and high-speed clock, and is positioned as a local bus for the CPU. In the PCI bus, for example, in addition to a video controller that exhibits a drawing function,
PCMCIA (Personal Computer Memory Card Inte) that realizes interface protocol with PC card
rnational Association) controller, SCSI or L
An expansion board or the like of an AN (Local Area network) is connected. For example, connecting a video controller to the PCI bus can significantly enhance the display performance of the system.

【0009】PCIバス及びISAバスに接続される装
置の中には、自らバスの制御権を取得してコマンドを送
付し、他の装置(例えばCPU)にすることなく処理を
実行することができる「マスタ」装置(又は「イニシエ
ータ」装置と言う)がある。また、バス上には、マスタ
からの要求に応答して送付されたコマンドを受け取る装
置があるが、これらは「スレーブ」装置(又は「ターゲ
ット」装置)と呼ばれる。バスに接続された装置の多く
は、直面した状況に応じてマスタ又はスレーブのいずれ
としても働くようになっている。
Some devices connected to the PCI bus and the ISA bus can acquire the control right of the bus and send a command by themselves to execute the processing without using another device (for example, a CPU). There is a "master" device (or called an "initiator" device). There are also devices on the bus that receive commands sent in response to requests from the master, but these are called "slave" devices (or "target" devices). Many of the devices connected to the bus are designed to act as either masters or slaves, depending on the circumstances encountered.

【0010】例えばPCIプロトコルに依れば、PCI
マスタは、「フレーム」信号(FRAME#)をアサー
トすることによって、トランザクションの開始を意思表
示するようになっている。一方のPCIスレーブは、P
CIマスタに対して所定時間内に応答しなければならな
いように規定されている。すなわち、PCIスレーブ
は、PCIバス上に伝送されたアドレス(ここで言う
「アドレス」には、I/Oアドレスとメモリ・アドレス
の両方を含む。以下同様)を解釈して、自身がトランザ
クションのターゲットであると知ると、「デバイス選
択」信号(DEVSEL#)を所定のタイミングでアサ
ートすることによって、バス・サイクルを要求する。す
なわち、PCIマスタがフレーム信号のアサートにより
トランザクションを要求し、PCIスレーブがデバイス
選択信号のアサートにより肯定応答することによって、
PCIバス・サイクルが成立する訳である。また、所定
時間内にPCIスレーブからデバイス選択信号を受信し
損なったときには、PCIマスタはマスタ・アボート
(中止)を実行して、バス・サイクルを強制的に終了さ
せる他ない。
For example, according to the PCI protocol, PCI
The master indicates the start of a transaction by asserting the "frame" signal (FRAME #). One PCI slave is P
It is specified that the CI master must respond within a predetermined time. That is, the PCI slave interprets the address transmitted on the PCI bus (the "address" here includes both the I / O address and the memory address, and so on), and the PCI slave itself targets the transaction. Then, the bus cycle is requested by asserting the "device select" signal (DEVSEL #) at a predetermined timing. That is, the PCI master requests a transaction by asserting the frame signal and the PCI slave acknowledges by asserting the device select signal.
That is, the PCI bus cycle is established. When the device selection signal is not received from the PCI slave within the predetermined time, the PCI master must execute a master abort (abort) to forcibly end the bus cycle.

【0011】PCIバス・プロトコルでは、PCIスレ
ーブがデバイス選択信号をアサートする「所定のタイミ
ング」として、フレーム信号がアサートされてからPC
Iバス・クロックで3クロック目(Fast:高速)、
4クロック目(Medium:中速)、又は5クロック
目(Slow:低速)の3種類のタイミングを規定して
いる(図11参照)。また、スレーブ自身がアドレス・
ライン上のアドレスを解釈して肯定応答する方式を「ポ
ジティブ・デコーディング(Positive Decoding)」と
言う。また、ポジティブ・デコーディング方式を採る装
置のことを「ポジティブ装置」と言うこともある。
In the PCI bus protocol, as a "predetermined timing" at which a PCI slave asserts a device selection signal, the PC signal is asserted after the frame signal is asserted.
3rd clock (Fast: high speed) with I-bus clock,
Three types of timings are defined: the fourth clock (Medium: medium speed) or the fifth clock (Slow: low speed) (see FIG. 11). In addition, the slave itself
The method of interpreting the address on the line and giving a positive response is called "Positive Decoding". An apparatus that adopts the positive decoding method may also be referred to as a "positive apparatus".

【0012】また、PCIバス・プロトコルでは、ポジ
ティブ・デコーディング以外の特別な動作として「サブ
トラクティブ・デコーディング(Subtractive Decodin
g)」というデコーディング方式を定義している。サブ
トラクティブ・デコーディングとは、Fast,Med
ium,Slowのいずれのタイミングでもデバイス選
択信号がアサートされなかった、すなわちPCIバス上
のいずれのポジティブ装置も要求に応答しなかったとき
のみ、自身がスレーブ装置であると認識して、Slow
の次のクロック・タイミングでデバイス選択信号をアサ
ートするアドレス解釈方式である(図11参照)。サブ
トラクティブ・デコーディング方式を採る装置のことを
「サブトラクティブ装置」と言うこともある。PCIバ
ス・アーキテクチャでは、1本のPCIバス上にただ1
つのサブトラクティブ装置しか存在できない。
In addition, in the PCI bus protocol, as a special operation other than positive decoding, "subtractive decoding" is performed.
g) ”is defined. What is subtractive decoding? Fast, Med
Only when the device selection signal is not asserted at any of the ium and Slow timings, that is, when no positive device on the PCI bus responds to the request, the device recognizes itself as a slave device, and the Slow signal is detected.
Is an address interpretation method in which the device selection signal is asserted at the clock timing next to (see FIG. 11). A device that employs a subtractive decoding method is sometimes called a "subtractive device". In the PCI bus architecture, there is only one on one PCI bus
There can only be one subtractive device.

【0013】PCIバスの特徴(2):PCIの他の特
徴は、バス・サイクル変換回路としてのブリッジ・チッ
プを介在させることで、他のバスとの接続が許容される
点である。例えば、PCIバスとISAバスとはPCI
toISAブリッジで、PCIバス同士はPCItoP
CIブリッジで、夫々相互接続することができる。ま
た、CPUとPCIバスの間にブリッジ回路(ホストt
oPCIブリッジ)を設けることにより、特定タイプの
CPUチップ(例えば米Intel社のx86系CP
U)だけでなく、他のタイプのCPU(例えば米IBM
社等が開発した"PowerPC")についても利用可能
となる。
Characteristic (2) of PCI bus: Another characteristic of PCI is that connection with another bus is allowed by interposing a bridge chip as a bus cycle conversion circuit. For example, PCI bus and ISA bus are PCI
PCI to P between PCI buses with a toISA bridge
Each can be interconnected with a CI bridge. In addition, a bridge circuit (host t
By providing an oPCI bridge, a specific type of CPU chip (eg Intel x86 CP
U) as well as other types of CPUs (eg IBM
It is also possible to use "PowerPC" developed by the company.

【0014】現在の多くのPCでは、高い入出力能力を
持つPCIバスをローカル・バスとして用いるととも
に、比較的低速な周辺機器類に合わせて動作するISA
バスを拡張バスとして用いた、マルチプル・バス・アー
キテクチャを採用している。PCIバスとISAバスと
はPCItoISAブリッジにより相互接続され、この
結果、PCIの高速入出力機能を享受しつつ、豊富なI
SAの資産をそのまま引き継ぐことができる、という訳
である。
In many current PCs, the PCI bus having a high input / output capability is used as a local bus, and the ISA operates in accordance with relatively low speed peripheral devices.
It uses a multiple bus architecture that uses the bus as an expansion bus. The PCI bus and the ISA bus are interconnected by a PCI to ISA bridge, and as a result, while enjoying the high-speed input / output function of PCI, a rich I
This means that you can take over SA assets as they are.

【0015】ブリッジ接続された各バスは夫々独立して
(すなわち非同期に)駆動するようになっている。この
ため、1本のPCIバス上に多数の装置を接続した場合
であっても、他のバスに対して負荷を与えないので、P
CIは電気的特性や安定性に優れていると言えよう。ま
た、ブリッジ回路によってバスを延長することによって
接続可能な装置の個数を増やすこともできる。
The bridge-connected buses are driven independently (that is, asynchronously). Therefore, even if a large number of devices are connected to one PCI bus, no load is given to other buses.
It can be said that CI has excellent electrical characteristics and stability. Also, the number of connectable devices can be increased by extending the bus with the bridge circuit.

【0016】一般に、ブリッジ回路のCPU(すなわち
ホスト)に近い接続部分を1次側(primary)と言い、
その反対側(すなわち周辺側)の接続部分を2次側(se
condary)と言う。ブリッジ回路もまたPCIバス上の
装置の1つとみなされ、その主な役割は、1次側バスと
2次側バスの間でバス・サイクルの変換を行うことであ
る。すなわち、ブリッジ回路は、1次側バス上の装置
(以下、「1次側デバイス」とする)から2次側バス上
の装置(以下、「2次側デバイス」とする)に対するバ
ス・トランザクションが発行されたときには、1次側バ
ス上では2次側装置に代行して肯定応答するとともに、
2次側バス上では1次側装置に代わってバス・トランザ
クションを2次側バス上にイニシエートする。逆に2次
側装置からバス・トランザクションが発行されたときに
は、2次側バス上では1次側装置に代行して肯定応答す
るとともに、1次側バス上では2次側装置に代わってバ
ス・トランザクションを1次側バス上にイニシエートす
る。
Generally, the connection portion of the bridge circuit close to the CPU (that is, the host) is called the primary side,
Connect the connection part on the opposite side (that is, the peripheral side) to the secondary side (se
condary). The bridge circuit is also considered as one of the devices on the PCI bus and its main role is to perform bus cycle conversion between the primary and secondary buses. That is, the bridge circuit allows a bus transaction from a device on the primary side bus (hereinafter referred to as “primary side device”) to a device on the secondary side bus (hereinafter referred to as “secondary side device”). When issued, it will respond on behalf of the secondary device on the primary bus with an affirmative response,
On the secondary bus, the bus transaction is initiated on the secondary bus on behalf of the primary device. Conversely, when a bus transaction is issued from the secondary side device, the secondary side device acts on behalf of the primary side device and acknowledges, and on the primary side bus, the secondary side device takes the place of the bus transaction. Initiate the transaction on the primary bus.

【0017】PCItoPCIブリッジは、PCIバス
同士を接続するためのチップである(前述)が、その仕
様は、"PCItoPCI BRIDGE ARCHI
TECTURE SPECIFICATION Rev
ision 1.0"で規定されている。該仕様に依れ
ば、PCItoPCIブリッジは、"Memory/I
O Base/Limit Register"機能を
サポートしている。これは、1次側PCIデバイスと2
次側PCIデバイスとで使用可能なメモリ・アドレス領
域やI/Oアドレス領域を仕切ることによって、各PC
Iバス上のデバイスに対して一義的にアクセス可能とす
るためである。例えば、1次側PCIバス上でアクセス
要求が発行されたときには、指定されたアドレスが2次
側PCIデバイスの使用可能アドレス領域のときしか2
次側PCIバス上にはイニシエートされず、それ以外の
アドレスへのアクセスはPCItoPCIブリッジがブ
ロックする。また、2次側PCIバス上でアクセス要求
が発行されたときには、指定されたアドレスが2次側P
CIデバイスの使用可能アドレス領域以外のときしか1
次側PCIバス上にはイニシエートされず、それ以外の
アクセスはPCItoPCIブリッジがブロックする。
The PCI to PCI bridge is a chip for connecting PCI buses to each other (described above), and its specification is "PCI to PCI BRIDGE ARCHI".
TECTURE SPECIFICATION Rev
Ision 1.0 ". According to the specification, the PCI to PCI bridge is defined as" Memory / I ".
O Base / Limit Register "function is supported. This is the primary PCI device and 2
By partitioning the memory address area and I / O address area that can be used with the secondary PCI device, each PC
This is because the device on the I bus can be uniquely accessed. For example, when an access request is issued on the primary PCI bus, only 2 when the specified address is the usable address area of the secondary PCI device.
The PCI-to-PCI bridge blocks access to other addresses without being initiated on the secondary PCI bus. When an access request is issued on the secondary PCI bus, the designated address is the secondary P
1 only when it is outside the usable address area of the CI device
It is not initiated on the next PCI bus, and other access is blocked by the PCI to PCI bridge.

【0018】図12には、PCItoPCIブリッジ
の"Memory/IO Base/Limit Re
gister"機能(以下、「ブロック機能」という)
を、I/Oアドレス・マップを用いて模式的に示してい
る。同図中で斜線で示した領域、すなわちI/Oベース
番地とI/Oリミット番地で仕切られたI/Oアドレス
領域(以下、「ブロック領域」とする)は、2次側PC
Iデバイスが専用に使用する領域である。1次側PCI
デバイスは、それ以外のI/Oアドレス領域しか使用で
きない。PCItoPCIブリッジは、ブロック領域を
設定するために、これらベース番地やリミット番地を記
憶するレジスタを有している。他方、ISAデバイス
は、PnP非対応(後述)であるが、デバイスの種類に
よっては使用するアドレスが伝統的に決まっている。例
えば、ISAバス・スロット#1及び#2に装着された
拡張アダプタ・カードは夫々'800'h〜'807'h、'300'h
〜'305'hのI/Oアドレス領域を使用し、シリアル・ポ
ート及びパラレル・ポートは夫々'3E8'h〜'3EF'h、'77
8'h〜'77A'hのI/Oアドレス領域を使用するようにな
っている。ブロック領域は、通常、これらISAデバイ
スが使用するアドレスを避けて設定される。
FIG. 12 shows a "Memory / IO Base / Limit Re" of a PCI to PCI bridge.
gister "function (hereinafter referred to as" block function ")
Are schematically shown using an I / O address map. The shaded area in the figure, that is, the I / O address area (hereinafter referred to as "block area") partitioned by the I / O base address and the I / O limit address is the secondary PC.
This area is exclusively used by the I device. Primary PCI
The device can use only the other I / O address area. The PCI to PCI bridge has a register for storing the base address and the limit address in order to set the block area. On the other hand, the ISA device is not PnP compatible (described later), but the address to be used is traditionally determined depending on the type of device. For example, expansion adapter cards installed in ISA bus slots # 1 and # 2 are '800'h to'807'h and '300'h, respectively.
~ '305'h I / O address area is used, serial port and parallel port are'3E8'h ~ '3EF'h, '77 respectively.
The I / O address area of 8'h to '77A'h is used. The block area is usually set avoiding the addresses used by these ISA devices.

【0019】また、PCItoPCIブリッジは、1次
側PCIバス上ではサブトラクティブ・デコーディング
方式(前述)をサポートするのが一般的である。これ
は、ダウンストリーム、すなわち1次側のマスタから2
次側のスレーブ装置へのデータ転送を考慮したためであ
る。サブトラクティブなPCItoPCIブリッジは、
PCIデバイスへのアクセス要求に対してはポジティブ
に応答するとともに、いずれのPCIデバイスも所定時
間内にデバイス選択信号をアサートしなかったときには
サブトラクティブに動作する。
The PCI-to-PCI bridge generally supports the subtractive decoding method (described above) on the primary PCI bus. This is downstream, ie 2 from the master on the primary side.
This is because the data transfer to the slave device on the next side is taken into consideration. The subtractive PCI to PCI bridge is
It responds positively to the access request to the PCI device and operates subtractively when none of the PCI devices asserts the device selection signal within a predetermined time.

【0020】ブロック機能とサブトラクティブ・デコー
ディング動作をサポートするPCItoPCIブリッジ
は、1次側PCIデバイスからブロック領域へのアクセ
ス要求に対してはポジティブに応答して、2次側PCI
デバイスのバス・サイクル取得を可能にしている。ま
た、このタイプのPCItoPCIブリッジは、2次側
PCIデバイスからブロック領域外の1次側PCIデバ
イスへのアクセス要求に対しては、ポジティブに応答し
て、1次側PCIデバイスのバス・サイクル取得を可能
にしている。さらに、このタイプのPCItoPCIブ
リッジは、ブロック領域外のISAデバイスへのアクセ
ス要求に対してはサブトラクティブに応答し、2次側P
CIバスに接続されたISAバス(2次側ISAバス)
への橋渡しを実現している。
The PCI-to-PCI bridge that supports the block function and the subtractive decoding operation responds positively to the access request from the primary PCI device to the block area and responds positively to the secondary PCI.
Enables device bus cycle acquisition. In addition, this type of PCI to PCI bridge responds positively to the access request from the secondary PCI device to the primary PCI device outside the block area and acquires the bus cycle of the primary PCI device. It is possible. Furthermore, this type of PCI to PCI bridge responds subtractively to requests for access to ISA devices outside the block area, and the secondary side P
ISA bus connected to CI bus (secondary ISA bus)
A bridge has been realized.

【0021】なお、ここでは図解しないが、メモリ・ア
ドレスについても同様の形態でPCItoPCIブリッ
ジがブロック機能を実現している。
Although not illustrated here, the PCI to PCI bridge also realizes the block function for memory addresses in the same manner.

【0022】PCIバスの特徴(3): また、PCIの他の特徴は、PnP(ブラグ・アンド・
プレイ)に対応している点である。ここで、PnPと
は、システム側が自身の周辺環境を自動認識する機能の
ことである。PnP対応のシステム上では、拡張スロッ
トに拡張ボードを差し込むなどシステム上の装置類の個
数や種類が変動したときであっても、ディップ・スイッ
チの設定などの煩雑な操作をすることなく、そのまま使
用可能にする機能である。何故ならば、PnP対応シス
テム上では、新たに増設された装置に対して、DMAレ
ベル、IRQレベル、I/Oアドレス、メモリ・アドレ
スなどの「システム・リソース」が自動設定され、ま
た、抜き取られた装置が使用しているシステム・リソー
スは自動的に解放されるからである。言い換えれば、P
nP対応であるPCIデバイスが使用するアドレスを、
システム自身が自動認識することができる訳である。
PCI Bus Feature (3): Another PCI feature is PnP (Plug and
Play) is the point that corresponds. Here, PnP is a function in which the system side automatically recognizes its own surrounding environment. On a PnP-compatible system, even if the number and types of devices on the system change, such as inserting an expansion board into an expansion slot, you can use it as is without performing complicated operations such as DIP switch settings. It is a function that enables it. This is because, on a PnP-compatible system, "system resources" such as DMA level, IRQ level, I / O address, memory address, etc. are automatically set for a newly added device and are also extracted. The system resources used by the device are automatically released. In other words, P
The address used by the PCI device that supports nP is
The system itself can automatically recognize it.

【0023】一方、ISAデバイス(すなわちISAバ
ス上に接続される装置)の殆どはPnP非対応であり、
従ってシステム側はISAデバイスが使用するアドレス
を認識することはできない。例えば、PCIバスとブリ
ッジ接続されたISAバス上のバス・スロットにPnP
非対応の拡張アダプタ・カードが装着された場合には、
PCItoISAブリッジはこの拡張アダプタ・カード
が使用するアドレスを認識できない。したがって、PC
Iバス上でPnP非対応のISAデバイスへのアクセス
要求が発行されても、ISAデバイスの使用アドレスが
不明なため、PCItoISAブリッジはこれにポジテ
ィブに応答することは困難である。このため、PCIt
oISAブリッジをサブトラクティブ装置としてデザイ
ンすることが広く採用されている。サブトラクティブな
PCItoISAブリッジは、PCIバス上でデバイス
選択信号が所定時間内に(すなわちポジティブに)アサ
ートされなかったときのみ、自らデバイス選択信号をア
サートするとともに、アクセス要求をISAバス上に伝
送する。略言すれば、PnP対応のPCIデバイスのい
ずれもがバス・サイクルを要求しないときのみ、システ
ム側が使用アドレスを認識できないISAデバイス(例
えばアド・インされた拡張アダプタ・カード)がバス・
サイクルを獲得できる、という訳である。
On the other hand, most of the ISA devices (that is, devices connected to the ISA bus) are not PnP compatible,
Therefore, the system side cannot recognize the address used by the ISA device. For example, PnP is installed in the bus slot on the ISA bus bridge-connected to the PCI bus.
If an unsupported expansion adapter card is installed,
The PCI to ISA bridge cannot recognize the address used by this expansion adapter card. Therefore, the PC
Even if an access request to an ISA device that does not support PnP is issued on the I bus, it is difficult for the PCI to ISA bridge to respond positively to this because the used address of the ISA device is unknown. Therefore, PCIt
It is widely adopted to design oISA bridges as subtractive devices. The subtractive PCI to ISA bridge asserts the device selection signal by itself and transmits the access request to the ISA bus only when the device selection signal is not asserted on the PCI bus within a predetermined time (that is, positive). In short, an ISA device (for example, an add-in expansion adapter card) whose system side cannot recognize the used address does not operate on the bus only when none of the PnP compatible PCI devices requests the bus cycle.
It means that you can get a cycle.

【0024】PCIバス上のトランザクション:PCI
バス・アーキテクチャはPCIバスがブリッジ・チップ
経由で他のバスとの相互接続を許容する点、及び、現在
市販される多くのPCがPCIバスとISAバスの混在
を認めたマルチプル・バス・アーキテクチャを採用して
いる点は既に述べた。したがって、PCのハードウェア
構成を図13のように模式的に示すこともできよう。
Transactions on the PCI Bus: PCI
The bus architecture is that the PCI bus allows interconnection with other buses via a bridge chip, and that many PCs currently on the market allow a mixed PCI bus and an ISA bus. The points adopted are already mentioned. Therefore, the hardware configuration of the PC may be schematically shown as in FIG.

【0025】同図において、PCのハードウェアとし
て、1次側PCIバス、2次側PCIバス、及びISA
バスという3つの独立したバス環境が提供されている。
2本のPCIバスの「1次」及び「2次」という接頭辞
は、ホストCPUに近い順位という程度の意味しかな
い。PCIバス同士はPCItoPCIブリッジ・チッ
プで接続されている。また、各PCIバスにはPCIプ
ロトコルを備えた各種PCIデバイスが接続されてい
る。
In the figure, as the hardware of the PC, a primary PCI bus, a secondary PCI bus, and an ISA
There are three independent bus environments called buses.
The "primary" and "secondary" prefixes on the two PCI buses are only meant to be close to the host CPU. The PCI buses are connected to each other by a PCI to PCI bridge chip. Further, various PCI devices having a PCI protocol are connected to each PCI bus.

【0026】各PCIバスには、PCItoISAブリ
ッジ・チップ経由でISAバスが接続されている。本明
細書では、1次側PCIバスにブリッジ接続されたIS
Aバスを1次側ISAバス、2次側PCIバスにブリッ
ジ接続されたISAバスを2次側ISAバスと言うこと
にする。各ISAバスにはISAプロトコルを備えた各
種ISAデバイスが接続されている。
An ISA bus is connected to each PCI bus via a PCI to ISA bridge chip. In this specification, an IS bridge-connected to the primary PCI bus is used.
The A bus will be referred to as a secondary ISA bus by referring to the ISA bus bridge-connected to the primary ISA bus and the secondary PCI bus. Various ISA devices having an ISA protocol are connected to each ISA bus.

【0027】なお、2次側PCIバスは、1次側PCI
バスすなわちシステム本体に内蔵される場合もあれば、
ノートブックPCのドッキング・ステーション内に展開
されている場合(例えば本出願人に譲渡されている特願
平8−31699号(当社整理番号:JA99512
8)の出願明細書参照)もある。
The secondary PCI bus is a primary PCI.
In some cases, it may be built into the bus or system itself,
When deployed in a docking station of a notebook PC (for example, Japanese Patent Application No. 8-31699 assigned to the applicant (our reference number: JA99512)
8)).

【0028】図13に示すようなマルチプル・バス環境
下では、8通りのトランザクションが考えられるが、こ
の中でトランザクションとして比較的説明を要すると思
われる5通りに関して下表1に示す。なお下表以外に
は、マスタとスレーブの組み合わせとして、1次側PCIデ
バイスと1次側PCIデバイス、1次側PCIデバイスと1次側
ISAデバイス、2次側PCIデバイスと1次側ISAデバイスが
ある。
In the multiple bus environment as shown in FIG. 13, eight kinds of transactions are considered. Among them, five kinds of transactions which are considered to require relatively explanation are shown in Table 1 below. In addition to the table below, as the combination of master and slave, primary PCI device and primary PCI device, primary PCI device and primary PCI device
There are ISA devices, secondary PCI devices, and primary ISA devices.

【0029】[0029]

【表1】 [Table 1]

【0030】まず、1次側PCIバス上の装置(すなわ
ち「1次側PCIデバイス」)から2次側PCIバス上
の装置(すなわち「2次側PCIデバイス」)へのアク
セス要求時には、PCItoPCIブリッジ回路がポジ
ティブに代行応答するとともに2次側PCIバス上にア
クセス要求をイニシエートし、次いで2次側PCIデバ
イスが応答することによって、バス・サイクルが成立す
る。
First, when an access request is made from a device on the primary side PCI bus (ie, “primary side PCI device”) to a device on the secondary side PCI bus (ie, “secondary side PCI device”), a PCI to PCI bridge is issued. The bus cycle is established by the circuit responding positively, initiating an access request on the secondary PCI bus, and then responding by the secondary PCI device.

【0031】また、1次側PCIデバイスから2次側I
SAバス上の装置(すなわち「2次側ISAデバイ
ス」)へのアクセス要求時には、PCItoPCIブリ
ッジがサブトラクティブに代行応答し、次いで2次側P
CItoISAブリッジがサブトラクティブに代行応答
することによって、ISAバス上にアクセス要求が伝送
され、以て2次側ISAデバイスにアクセス可能とな
る。
From the primary PCI device to the secondary I
When an access request is made to a device on the SA bus (that is, a “secondary ISA device”), the PCI to PCI bridge responds on a subtractive basis, and then the secondary P
By the CItoISA bridge acting as a subtractive proxy response, the access request is transmitted on the ISA bus, and the secondary ISA device can be accessed.

【0032】また、2次側PCIデバイスから1次側P
CIデバイスへのアクセス要求時には、PCItoPC
Iブリッジ回路がポジティブに代行応答するとともに1
次側PCIバス上にアクセス要求をイニシエートし、次
いで1次側PCIデバイスが応答することによって、バ
ス・サイクルが成立する。
From the secondary PCI device to the primary P
When requesting access to a CI device, PCI to PC
When the I bridge circuit responds positively on its behalf, 1
The bus cycle is established by initiating an access request on the secondary PCI bus and then responding by the primary PCI device.

【0033】また、2次側PCIデバイスから2次側P
CIデバイスへのアクセス要求時には、2次側PCIバ
ス上で直接的にバス・サイクルが成立する。このとき、
PCItoPCIブリッジは、ブロックして1次側PC
Iバスにはアクセス要求をイニシエートしない。
From the secondary PCI device to the secondary P
When requesting access to a CI device, a bus cycle is directly established on the secondary PCI bus. At this time,
The PCI to PCI bridge is blocked by the primary PC
No access request is initiated on the I bus.

【0034】以上の4通りのバス・トランザクション
は、PCIのPnP機能、すなわちPCItoPCIブ
リッジが全てのPCIデバイスの使用アドレスを認識し
ていることに依り、比較的容易にサポートされる。
The above four bus transactions are relatively easily supported by the PnP function of PCI, that is, the PCI to PCI bridge recognizes the used addresses of all PCI devices.

【0035】これに対し、[表1]の5番目のバス・ト
ランザクション、すなわち2次側PCIデバイスから2
次側ISAデバイスへのアクセスを実現するのは容易で
はない。何故ならば、ISAデバイスが使用するアドレ
スは2次側PCIデバイスの使用可能アドレス領域外で
あり(図12参照)、PCItoPCIブリッジはIS
Aデバイスへのアクセス要求をブロックしないからであ
る。ブロックしない結果、PCItoPCIブリッジ自
身がポジティブに(すなわち先に)バス・サイクルを要
求してしまい、サブトラクティブな2次側PCItoI
SAデバイスは応答する機会を失ってしまう。
On the other hand, the fifth bus transaction in [Table 1], that is, 2 from the secondary PCI device
Access to the secondary ISA device is not easy to achieve. This is because the address used by the ISA device is outside the usable address area of the secondary PCI device (see FIG. 12), and the PCI to PCI bridge uses the IS
This is because the access request to the A device is not blocked. As a result of not blocking, the PCI to PCI bridge itself requests the bus cycle positively (that is, first) and the subtractive secondary side PCI to I
The SA device loses the opportunity to respond.

【0036】この様子を、図14のタイミング・チャー
/*/を参照しながら説明しておく。但し、同図におい
て、接頭辞"P_"は1次側(すなわち"Primary")PC
Iバス中の信号線であることを示し、且つ、接頭辞"S
_"は2次側(すなわち"Secondary")PCIバス中の信
号線であることを示す(以下同様)。また、接尾辞とし
て上付き文字"*"が付された信号線は、PCItoPC
Iブリッジによってアサートされることを意味する。
This state will be described with reference to the timing chart / * / in FIG. However, in the figure, the prefix "P_" is the primary side (that is, "Primary") PC
It is a signal line in the I bus, and the prefix "S"
_ "Indicates a signal line in the PCI bus on the secondary side (that is," Secondary ") (the same applies hereinafter), and a signal line with a suffix" * "as a suffix indicates PCItoPC.
Means asserted by the I-bridge.

【0037】バス・サイクルは、2次側PCIデバイス
がフレーム信号(S_FRAME#)をアサートしてト
ランザクションを開始することによって始まる。さらに
2次側PCIデバイスは、アドレス/データ信号線(S
_AD[31:1])にアドレスを、コマンド/バイト
・イネーブル信号線(S_C/BE[3:0])にコマ
ンドを、夫々伝送する。また、2次側PCIデバイス
は、データ送受が可能な状態となったことを示すべく、
イニシエータ作動可能信号(S_IRDY#)をアサー
トするとともに、アドレス/データ信号線(S_AD
[31:1])にはデータを、コマンド/バイト・イネ
ーブル信号線(S_C/BE[3:0])にはバイト・
イネーブル値を、夫々伝送する。
The bus cycle begins with the secondary PCI device asserting a frame signal (S_FRAME #) to initiate a transaction. Further, the secondary PCI device is connected to the address / data signal line (S
_AD [31: 1]) and the command / byte enable signal lines (S_C / BE [3: 0]). In addition, the secondary PCI device indicates that it is ready to send and receive data.
In addition to asserting the initiator ready signal (S_IRDY #), the address / data signal line (S_AD
[31: 1]) with data and command / byte enable signal lines (S_C / BE [3: 0]) with byte.
The enable values are transmitted respectively.

【0038】ここで、このときS_AD[31:1]上
に伝送されたアドレスは、PCItoPCIブリッジ中
の"Base/Limit Resister"で定義さ
れた2次側PCIデバイスの使用可能アドレス領域(す
なわちブロック領域)の外である。このため、PCIt
oPCIブリッジは、1次側PCIデバイスへのアクセ
スと錯覚して、2次側PCIバス上ではターゲットとし
てポジティブにデバイス選択信号(S_DEVSEL
#)をアサートしてしまう。この結果、サブトラクティ
ブな2次側PCItoISAブリッジはバス・サイクル
を獲得する機会を失ってしまう。
Here, the address transmitted on S_AD [31: 1] at this time is the usable address area (that is, the block area) of the secondary side PCI device defined by "Base / Limit Register" in the PCI to PCI bridge. ) Outside. Therefore, PCIt
The oPCI bridge illusions access to the primary PCI device, and positively selects a device selection signal (S_DEVSEL) as a target on the secondary PCI bus.
#) Will be asserted. As a result, the subtractive secondary PCI to ISA bridge loses the opportunity to win a bus cycle.

【0039】次いで、PCItoPCIブリッジは、1
次側PCIバス上では、マスタ・デバイスとして、2次
側PCIバスと同様のバス・トランザクションを展開す
べく、所定の遅延時間後に、フレーム選択信号(P_F
RAME#)をアサートするとともに、アドレス/デー
タ信号線(P_AD[31:1])に同一のアドレス
を、コマンド/バイト・イネーブル信号線(P_C/B
E[3:0])に同一のコマンドを、夫々伝送する。さ
らに、PCItoPCIブリッジは、イニシエータ作動
可能信号(P_IRDY#)をアサートするとともに、
アドレス/データ信号線(P_AD[31:1])には
同一のデータを、コマンド/バイト・イネーブル信号線
(P_C/BE[3:0])には同一のバイト・イネー
ブル値を、夫々伝送する。
Next, the PCI to PCI bridge 1
On the secondary PCI bus, as a master device, in order to develop a bus transaction similar to that of the secondary PCI bus, after a predetermined delay time, a frame select signal (P_F
RAME #) and assert the same address on the address / data signal lines (P_AD [31: 1]) on the command / byte enable signal lines (P_C / B).
The same command is transmitted to each of E [3: 0]). In addition, the PCI to PCI bridge asserts the initiator ready signal (P_IRDY #) and
The same data is transmitted to the address / data signal lines (P_AD [31: 1]), and the same byte enable value is transmitted to the command / byte enable signal lines (P_C / BE [3: 0]). .

【0040】しかしながら、1次側PCIバス上には、
指定されたアドレスにヒットするデバイスは実際には存
在しないので、Fast、Mediun、Slow、サ
ブトラクティブのいずれのタイミングでもデバイス選択
信号(P_DEVSEL#)はアサートされない。この
結果、PCItoPCIブリッジは、所定時間だけ待機
した後にイニシエータ作動可能信号(P_IRDY#)
をネゲートすることにより、1次側PCIバス上のバス
・サイクルを「マスタ・アボート」せざるを得ない。ま
た、2次側PCIバス上では、停止信号(S_STOP
#)をアサートして、バス・サイクルを「ターゲット・
アボート」せざるを得ない。
However, on the primary PCI bus,
Since no device actually hits the designated address, the device selection signal (P_DEVSEL #) is not asserted at any timing of Fast, Mediun, Slow, and subtractive. As a result, the PCI to PCI bridge waits for a predetermined time and then the initiator ready signal (P_IRDY #).
Is negated, there is no choice but to "master abort" the bus cycle on the primary PCI bus. On the secondary PCI bus, a stop signal (S_STOP
#) To assert the bus cycle
I have no choice but to abort.

【0041】略言すれば、2次側ISAデバイスはバス
・サイクルを獲得できず、データは永遠に転送されない
ことになる。このように、システム内にアクセス不能な
装置の組み合わせが存在した場合、異常終了すなわちシ
ステム・ハングを引き起こす可能性が非常に高くなる。
このことは、当然、PCItoPCIブリッジの標準プ
ロトコルを設定する上でも非常に問題である。
In short, the secondary ISA device will not get a bus cycle and the data will not be transferred forever. Thus, the presence of inaccessible device combinations in the system is very likely to cause an abend or system hang.
This is of course very problematic in setting the standard protocol of PCI to PCI bridge.

【0042】かかる問題は、2次側PCIデバイスのう
ち2次側PCItoISAブリッジのみがブロック領域
以外へのアクセスに応答しなければならないことに依拠
する。このような問題に対する比較的容易な解決策は、
システム側がISAデバイスが使用するアドレスを全て
認識しておくことであろう。このためには、例えば、2
次側ISAデバイスが使用するアドレスを全て記憶する
ためのレジスタをPCItoPCIブリッジに新たに追
加するか、またはソフトウェア的にISAデバイスのP
nP機能をサポートすればよい。
Such a problem is based on the fact that only the secondary PCI to ISA bridge of the secondary PCI devices has to respond to access to areas other than the block area. A relatively easy solution to such a problem is
The system will be aware of all addresses used by the ISA device. To do this, for example, 2
A register for storing all the addresses used by the secondary ISA device is newly added to the PCI to PCI bridge, or the P of the ISA device is configured by software.
It only has to support the nP function.

【0043】しかしながら、前者によれば、PCIto
PCIブリッジ内に相当数のレジスタを追加しなければ
ならず、必然的にゲート数やチップ面積が増大し、コス
ト・アップを招来してしまう。また、後者の場合、現在
利用可能なソフトウェアの殆どが2次側ISAデバイス
をサポートしておらず、また、ISAデバイス自体もP
nP対応でないとそもそもアドレスを管理できないの
で、技術上実現は不可能に等しい。
However, according to the former, PCIto
It is necessary to add a considerable number of registers in the PCI bridge, which inevitably increases the number of gates and the chip area, resulting in an increase in cost. In the latter case, most of the currently available software does not support the secondary ISA device, and the ISA device itself does not support P.
Addresses cannot be managed in the first place unless they are compatible with nP, which is technically impossible.

【0044】《注釈》 *:PCIバスのプロトコルや各信号線の定義は、当業
者に既に周知である。ここでは、図11及び図14のタ
イミング・チャートが示す内容の理解を容易にするため
に、各信号線の意味等を簡単に説明しておく。 i)FRAME#(フレーム信号)は、マスタ装置(す
なわちイニシエータ)がトランザクションを開始しよう
としていることをスレーブ装置(すなわちターゲット)
に意思表示するための信号であり、マスタ装置によって
アサートされる。 ii)IRDY#(Initiator Ready:イニシエータ作
動可能信号)は、マスタ装置がデータの送受の準備がで
きたことを示すための信号であり、マスタ装置によって
アサートされる。 iii)DEVSEL#(Device Select:デバイス選
択信号)は、あるスレーブ装置が、ターゲットとして選
択された装置であると自ら知ったことをマスタ装置に通
知するための信号であり、アドレスをデコードしたスレ
ーブ装置によってアサートされる。言い換えれば、DE
VSEL#はスレーブ装置がバス・サイクルを要求する
ための信号である。 iv)TRDY#(Target Ready:ターゲット作動可能
信号)は、スレーブ装置がデータの送受の準備ができた
ことを示すための信号であり、スレーブ装置によってア
サートされる。 v)STOP#(停止信号)は、スレーブ装置がトラン
ザクションを処理できないことをマスタ装置に示すため
の信号であり、スレーブ装置によってアサートされる。 vi)マスタ・アボートとは、実行中のトランザクショ
ンをマスタ装置によって中止(異常終了)するために定
義された動作形態であり、バス上のいずれの装置もター
ゲットとしてトランザクションに応答しないとき(すな
わちDEVSEL#がネゲート状態のままのとき)に使
用される。マスタ・アボートは、マスタ装置がIRDY
#をネゲートすることにより実行される。 vii)ターゲット・アボートとは、実行中のトランザ
クションをスレーブ装置によって中止(異常終了)する
ために定義された動作形態であり、スレーブ装置にとっ
て全く処理不能なアクセスが行われたときに使用され
る。ターゲット・アボートは、スレーブ装置がDEVS
EL#とTRDY#をネゲートしている間にSTOP#
をアサートすることによって、マスタ装置に通知され
る。 viii)リトライ(Retry)とは、実行中のトランザ
クションをスレーブ装置によって中止するために定義さ
れた動作形態の1つであり、スレーブ装置が一時的にア
クセスを受け付けられない状態にあるときに使用され
る。ターゲット・アボートがアクセスの完全な中止を意
味することと相違し、リトライは、字義通り、マスタ装
置に対するトランザクションの再試行を意味する。スレ
ーブ装置は、DEVSEL#をアサートしている間にS
TOP#をアサートすることによって、マスタ装置にリ
トライを通知することができる。
<< Note >> *: The protocol of the PCI bus and the definition of each signal line are well known to those skilled in the art. Here, in order to facilitate understanding of the contents shown in the timing charts of FIGS. 11 and 14, the meaning of each signal line will be briefly described. i) FRAME # (frame signal) indicates that the master device (ie, initiator) is about to initiate a transaction on the slave device (ie, target).
Is a signal for indicating intention to the master device and is asserted by the master device. ii) IRDY # (Initiator Ready: created by the initiator
The ready signal) is a signal for indicating that the master device is ready to transmit / receive data, and is asserted by the master device. iii) DEVSEL # (Device Select: Device selection
Selection signal) is a signal for notifying the master device that a certain slave device has learned that it is the device selected as the target, and is asserted by the slave device that has decoded the address. In other words, DE
VSEL # is a signal for the slave device to request a bus cycle. iv) TRDY # (Target Ready: target ready
Signal) is a signal for indicating that the slave device is ready to transmit / receive data, and is asserted by the slave device. v) STOP # (stop signal) is a signal to indicate to the master device that the slave device cannot process the transaction, and is asserted by the slave device. vi) A master abort is a mode of operation defined for a master device to abort (abend) an ongoing transaction, when no device on the bus responds to the transaction as a target (ie DEVSEL #). Remains in the negated state). For master abort, the master device is IRDY
This is done by negating #. vii) Target abort is an operation mode defined for aborting (abnormal termination) of a transaction in progress by a slave device, and is used when an access that cannot be processed by the slave device is performed. For target abort, slave device is DEVS
While negating EL # and TRDY #, STOP #
The master device is notified by asserting. viii) Retry is one of the operation modes defined for the slave device to cancel the transaction being executed, and is used when the slave device is temporarily in a state where access cannot be accepted. It Unlike Target Abort means a complete abort of access, Retry literally means a retry of the transaction to the master device. The slave device is allowed to S while asserting DEVSEL #.
The master device can be notified of the retry by asserting TOP #.

【0045】[0045]

【発明が解決しようとする課題】本発明は、上記のよう
な問題点に着目したものであり、その目的は、複数のバ
スを含むデータ処理システムにおいてバス間のデータ転
送を制御するための優れた方法、バス同士を相互接続し
てバス間のデータ転送を可能にするための優れたブリッ
ジ装置、及び複数のバスを含む優れたデータ処理システ
ムを提供することにある。
SUMMARY OF THE INVENTION The present invention focuses on the problems as described above, and an object of the present invention is to provide an excellent control for data transfer between buses in a data processing system including a plurality of buses. Another object of the present invention is to provide an excellent bridge device for interconnecting buses to enable data transfer between buses, and an excellent data processing system including a plurality of buses.

【0046】本発明の更なる目的は、少なくとも第1、
第2、及び第3のバスを含み、且つ、第2のバス上の装
置には所定範囲内のアドレスを割り当てるとともにそれ
以外のバス上の装置には所定範囲外のアドレスを割り当
てたデータ処理システムにおける、優れたバス間のデー
タ転送方法、バス間を接続するための優れたブリッジ装
置、及び複数のバスを含む優れたデータ処理システムを
提供することにある。
A further object of the invention is at least the first:
A data processing system including second and third buses, wherein devices on the second bus are assigned addresses within a predetermined range, and devices on other buses are assigned addresses outside the predetermined range. In the above, there is provided an excellent data transfer method between buses, an excellent bridge device for connecting between buses, and an excellent data processing system including a plurality of buses.

【0047】本発明の更なる目的は、PCItoPCI
ブリッジを介してアクセスできない装置の組合わせをな
くした、優れたバス間のデータ転送方法、バス間を接続
するためのブリッジ装置、及び複数のバスを含むデータ
処理システムを提供することにある。
A further object of the present invention is PCI to PCI.
An object of the present invention is to provide an excellent data transfer method between buses, a bridge device for connecting between buses, and a data processing system including a plurality of buses, which eliminates a combination of devices that cannot be accessed via a bridge.

【0048】本発明の更なる目的は、PCIバスとIS
Aバスとが混在したバス環境を有するデータ処理システ
ムにおいて、あるバス上のバス・マスタがバス・スレー
ブに対して好適にアクセスすることができる、優れたバ
ス間のデータ転送方法、バス間を接続するためのブリッ
ジ装置、及び複数のバスを含むデータ処理システムを提
供することにある。
A further object of the present invention is the PCI bus and IS.
In a data processing system having a bus environment in which an A bus is mixed, an excellent bus-to-bus data transfer method by which a bus master on a bus can suitably access a bus slave and a connection between buses To provide a data processing system including a bridge device and a plurality of buses.

【0049】本発明の更なる目的は、他のPCIバスと
PCItoPCIブリッジによって相互接続されたPC
Iバスと、ISAバスと、PCIバスとISAバスとを
相互接続するサブトラクティブに動作するPCItoI
SAブリッジとを有するデータ処理システムにおいて、
PCIバス上のマスタ装置がサブトラクティブに動作す
るスレーブ装置に対して好適にアクセスすることができ
る、優れたバス間のデータ転送方法、バス間を接続する
ための優れたブリッジ装置、及び複数のバスを含む優れ
たデータ処理システムを提供することにある。
A further object of the present invention is a PC interconnected with another PCI bus by a PCI to PCI bridge.
PCI to I that operates in a subtractive manner that interconnects the I bus, the ISA bus, and the PCI bus and the ISA bus
In a data processing system having an SA bridge,
A master device on the PCI bus can favorably access a slave device that operates subtractively, an excellent data transfer method between buses, an excellent bridge device for connecting buses, and a plurality of buses It is to provide an excellent data processing system including.

【0050】[0050]

【課題を解決するための手段】本発明は、上記課題を参
酌してなされたものであり、その第1の側面は、第1の
バス、第1のブリッジ装置によって前記第1のバスと相
互接続された第2のバス、及び第2のブリッジ装置によ
って前記第2のバスと相互接続された第3のバスを含
み、前記第2のバス上の装置は所定範囲内のアドレスを
使用するとともにそれ以外のバス上の装置は前記所定範
囲外のアドレスを使用するデータ処理システムにおい
て、バス間のデータ転送を制御するための方法であっ
て、(a)前記第2のバス上の装置が前記第3のバス上
の装置に対してアクセスを要求する段階と、(b)前記
第1のブリッジ装置がアクセス要求に応答するとともに
前記第1のバス上に伝送する段階と、(c)前記第1の
バス上の全ての装置がアクセス要求に反応しなかったこ
とに応答して、前記第1のブリッジ装置がアクセス要求
された装置のアドレスを保持するとともに、該アクセス
要求を終了させる段階と、(d)前記第2のバス上の装
置がアクセス要求を再試行する段階と、(e)アクセス
要求された装置のアドレスが保持中のアドレスと同一で
あるときには、前記第1のブリッジ装置はアクセス要求
に応答しない段階と、(f)前記第2のバス上の他の全
ての装置がアクセス要求に反応しなかったことに応答し
て、前記第2のブリッジ装置が該アクセス要求に反応す
るとともに前記第3のバス上に伝送する段階と、を含む
ことを特徴とするバス間のデータ転送方法である。
SUMMARY OF THE INVENTION The present invention has been made in consideration of the above problems, and a first aspect thereof is that a first bus and a first bridge device are used to interact with the first bus. A second bus connected to the second bus, and a third bus interconnected with the second bus by a second bridge device, the devices on the second bus using addresses within a range; A device on the other bus is a method for controlling data transfer between the buses in a data processing system using an address outside the predetermined range, wherein: (a) the device on the second bus is Requesting access to a device on a third bus; (b) the first bridge device responding to the access request and transmitting on the first bus; and (c) the first bus. All devices on the bus 1 In response to not responding to the access request, the first bridge device holds the address of the device requested to access and terminates the access request; and (d) on the second bus. Device retrying the access request; (e) the first bridge device not responding to the access request if the address of the access requested device is the same as the address held; ) In response to all other devices on the second bus not responding to the access request, the second bridge device responds to the access request and transmits on the third bus. And a step of transferring data between buses.

【0051】本発明の第2の側面は、ホストCPUのロ
ーカル・バスとして働く1次側PCIバス、PCIto
PCIブリッジによって前記1次側PCIバスと相互接
続された2次側PCIバス、及びPCItoISAブリ
ッジによって前記2次側PCIバスと相互接続された2
次側ISAバスを含み、前記2次側PCIバス上の2次
側PCIデバイスは所定範囲内のアドレスを使用すると
ともに、前記1次側PCIバス上の1次側PCIデバイ
ス及び前記2次側ISAバス上の2次側ISAデバイス
は前記所定範囲外のアドレスを使用するデータ処理シス
テムにおいて、バス間のデータ転送を制御するための方
法であって、(a)2次側PCIデバイスが前記2次側
PCIバスのフレーム信号をアサートすることにより2
次側ISAデバイスに対するアクセス要求をイニシエー
トする段階と、(b)前記PCItoPCIブリッジが
前記2次側PCIバスのデバイス選択信号をアサートし
てアクセス要求に応答するとともに前記1次側PCIバ
ス上で該アクセス要求をイニシエートする段階と、
(c)前記1次側PCIバス上の全てのPCIデバイス
が所定時間内に1次側PCIバスのデバイス選択信号を
アサートしなかったことに応答して、前記PCItoP
CIブリッジがアクセス要求先のアドレスを保持すると
ともに、該アクセス要求を終了させる段階と、(d)前
記2次側PCIデバイスがアクセス要求をリトライによ
り終了する段階と、(e)アクセス要求先のアドレスが
保持中のアドレスと同一であるときには、前記PCIt
oPCIブリッジは前記2次側PCIバスのデバイス選
択信号をアサートしない段階と、(f)前記PCIto
ISAブリッジが前記2次側PCIバスのデバイス選択
信号をアサートしてアクセス要求に応答するとともに前
記2次側ISAバス上で該アクセス要求をイニシエート
する段階と、を含むことを特徴とするバス間のデータ転
送方法である。
A second aspect of the present invention is a PCI-side PCI bus, PCIto, which acts as a local bus of the host CPU.
A secondary PCI bus interconnected with the primary PCI bus by a PCI bridge, and a secondary PCI bus interconnected with the secondary PCI bus by a PCI to ISA bridge.
Including a secondary ISA bus, the secondary PCI device on the secondary PCI bus uses an address within a predetermined range, and the primary PCI device on the primary PCI bus and the secondary ISA A secondary ISA device on a bus is a method for controlling data transfer between buses in a data processing system that uses an address outside the predetermined range, including: (a) a secondary PCI device 2 by asserting the frame signal of the side PCI bus
Initiating an access request to the secondary ISA device, and (b) responding to the access request by the PCI to PCI bridge asserting a device selection signal of the secondary PCI bus and accessing the primary PCI bus. Initiating the request,
(C) In response to all the PCI devices on the primary side PCI bus not asserting a device selection signal of the primary side PCI bus within a predetermined time, the PCItoP
The CI bridge holds the address of the access request destination and terminates the access request; (d) the secondary PCI device terminates the access request by retry; and (e) the address of the access request destination. Is the same as the held address, the PCIt
the oPCI bridge does not assert the device selection signal of the secondary PCI bus, and (f) the PCIto
An ISA bridge asserting a device select signal on the secondary PCI bus to respond to the access request and initiate the access request on the secondary ISA bus. This is a data transfer method.

【0052】ここで、前記(b)段階において、前記P
CItoPCIブリッジは前記2次側PCIバスのデバ
イス選択信号をポジティブにアサートすることが、より
好ましい。
Here, in the step (b), the P
More preferably, the CItoPCI bridge positively asserts the device select signal on the secondary PCI bus.

【0053】また、前記(c)段階において、前記PC
ItoPCIブリッジは、前記1次側PCIバス上では
マスタ・アボートによりバス・サイクルを終了するとと
もに、前記2次側PCIバス上ではリトライによりバス
・サイクルを終了することが、より好ましい。
In the step (c), the PC
It is more preferable that the ItoPCI bridge terminates the bus cycle on the primary side PCI bus by a master abort and terminates the bus cycle on the secondary side PCI bus by a retry.

【0054】また、前記(f)段階において、前記PC
ItoISAブリッジは前記2次側PCIバスのデバイ
ス選択信号をサブトラクティブにアサートすることが、
より好ましい。
In the step (f), the PC
The ItoISA bridge subtractively asserts the device selection signal of the secondary PCI bus.
More preferable.

【0055】本発明の第3の側面は、ホストCPUのロ
ーカル・バスとして働く1次側PCIバス、PCIto
PCIブリッジによって前記1次側PCIバスと相互接
続された2次側PCIバスを含み、前記2次側PCIバ
ス上のポジティブな2次側PCIデバイスは所定範囲内
のアドレスを使用するとともに、前記1次側PCIバス
上の1次側PCIデバイス及びサブトラクティブな2次
側PCIデバイスは前記所定範囲外のアドレスを使用す
るデータ処理システムにおいて、バス間のデータ転送を
制御するための方法であって、(a)第1の2次側PC
Iデバイスが前記2次側PCIバスのフレーム信号をア
サートすることによりサブトラクティブな第2の2次側
PCIデバイスに対するアクセス要求をイニシエートす
る段階と、(b)前記PCItoPCIブリッジが前記
2次側PCIバスのデバイス選択信号をポジティブにア
サートするとともに前記1次側PCIバス上で該アクセ
ス要求をイニシエートする段階と、(c)前記1次側P
CIバス上の全てのPCIデバイスが所定時間内に1次
側PCIバスのデバイス選択信号をアサートしなかった
ことに応答して、前記PCItoPCIブリッジがアク
セス要求先のアドレスを保持するとともに、リトライ形
式にて2次側PCIバス上のトランザクションを終了さ
せる段階と、(d)リトライに応答して、前記第1の2
次側PCIデバイスがアクセス要求をリトライする段階
と、(e)アクセス要求先のアドレスが保持中のアドレ
スと同一であるときには、前記PCItoPCIブリッ
ジは前記2次側PCIバスのデバイス選択信号をポジテ
ィブにアサートしない段階と、(f)他の全ての2次側
PCIデバイスがポジティブにデバイス選択信号をアサ
ートしなかった後に、前記第2の2次側PCIデバイス
が前記2次側PCIバスのデバイス選択信号をサブトラ
クティブにアサートする段階と、を含むことを特徴とす
るバス間のデータ転送方法である。
The third aspect of the present invention is PCIto, a primary side PCI bus which acts as a local bus of the host CPU.
A secondary PCI bus interconnected with the primary PCI bus by a PCI bridge, wherein a positive secondary PCI device on the secondary PCI bus uses an address within a range, and A primary PCI device on a secondary PCI bus and a subtractive secondary PCI device are methods for controlling data transfer between buses in a data processing system using an address outside the predetermined range. (A) First secondary PC
An I-device initiates a subtractive access request to the second secondary PCI device by asserting a frame signal on the secondary PCI bus; and (b) the PCI to PCI bridge Positively asserting the device selection signal of the above, and initiating the access request on the primary side PCI bus; and (c) the primary side P bus.
In response to the fact that all the PCI devices on the CI bus do not assert the device selection signal of the primary PCI bus within a predetermined time, the PCI to PCI bridge holds the address of the access request destination and also makes a retry format. Terminating the transaction on the secondary side PCI bus, and (d) in response to the retry, the first 2
When the secondary PCI device retries the access request, and (e) the address of the access request destination is the same as the held address, the PCI to PCI bridge asserts the device selection signal of the secondary PCI bus to be positive. And (f) the second secondary PCI device does not assert the device selection signal on the secondary PCI bus after all other secondary PCI devices have not positively asserted the device selection signal. And a step of subtractively asserting, and a data transfer method between buses.

【0056】本発明の第4の側面は、ホストCPUのロ
ーカル・バスとして働く1次側PCIバスと、2次側P
CIバスとを相互接続させるためのブリッジ装置であっ
て、自らリトライにより終了させたバス・サイクルのア
ドレス情報を記憶するための記憶手段を含むことを特徴
とする、バス間を接続するためのブリッジ装置である。
The fourth aspect of the present invention is to provide a primary PCI bus that serves as a local bus for the host CPU and a secondary P bus.
A bridge device for interconnecting with a CI bus, comprising a storage means for storing address information of a bus cycle ended by a retry by itself, a bridge for connecting between buses It is a device.

【0057】本発明の第5の側面は、ホストCPUのロ
ーカル・バスとして働く1次側PCIバスと、2次側P
CIバスとを相互接続させるためのブリッジ装置であっ
て、自らリトライにより終了させたバス・サイクルのア
ドレス情報を記憶するための記憶手段と、前記記憶手段
に格納されたアドレスを指定するバス・サイクルには応
答しないデコーディング手段とを含むことを特徴とす
る、バス間を接続するためのブリッジ装置である。
The fifth aspect of the present invention is to provide a primary PCI bus that serves as a local bus for the host CPU and a secondary P bus.
A bridge device for interconnecting with a CI bus, a storage means for storing address information of a bus cycle terminated by a retry by itself, and a bus cycle for designating an address stored in the storage means Is a bridge device for connecting between buses, characterized in that it includes a decoding means that does not respond to.

【0058】本発明の第6の側面は、ホストCPUのロ
ーカル・バスとして働く1次側PCIバスと、2次側P
CIバスとを相互接続させるためのブリッジ装置であっ
て、(a)前記2次側PCIバスに接続された2次側P
CIデバイスのみが使用を許されたアドレス領域を記憶
するための第1の記憶手段と、(b)自らリトライによ
り終了させたバス・サイクルのアドレス情報を記憶する
ための第2の記憶手段と、(c)アドレスが前記第1の
記憶手段で定義された2次側PCIデバイスの使用可能
アドレス領域内であるときにアドレス・ヒットと判断す
る1次側デコーディング手段と、(d)前記1次側デコ
ーディング手段によるアドレス・ヒットに応答して、前
記1次側PCIバス上のバス・サイクルを前記2次側P
CIバス上に伝送する第1の伝送手段と、(e)アドレ
スが前記第1の記憶手段で定義された2次側PCIデバ
イスの使用可能アドレス領域外であって且つ前記第2の
記憶手段に存在しないときのみアドレス・ヒットと判断
する2次側デコーディング手段と、(f)前記2次側デ
コーディング手段によるアドレス・ヒットに応答して、
前記2次側PCIバス上のバス・サイクルを前記1次側
PCIバス上に伝送する第1の伝送手段と、を具備する
ことを特徴とする、バス間を接続するためのブリッジ装
置である。
A sixth aspect of the present invention is that the primary side PCI bus that acts as a local bus of the host CPU and the secondary side P bus.
A bridge device for interconnecting with a CI bus, comprising: (a) a secondary side P connected to the secondary side PCI bus.
First storage means for storing an address area in which only the CI device is permitted to use, and (b) second storage means for storing address information of a bus cycle ended by a retry by itself. (C) primary side decoding means for determining an address hit when the address is within the usable address area of the secondary side PCI device defined in the first storage means, and (d) the primary side In response to an address hit by the side decoding means, a bus cycle on the primary side PCI bus is transferred to the secondary side P bus.
A first transmitting means for transmitting on the CI bus; and (e) an address outside the usable address area of the secondary PCI device defined by the first storing means and in the second storing means. A secondary-side decoding means for judging an address hit only when there is no address, and (f) in response to an address hit by the secondary-side decoding means,
A first transmission means for transmitting a bus cycle on the secondary side PCI bus to the primary side PCI bus; and a bridge device for connecting between buses.

【0059】ここで、前記1次側デコーディング手段は
サブトラクティブにデコーディングするとともに前記2
次側デコーディング手段はポジティブにデコーディング
することが、より好ましい。
Here, the primary side decoding means performs subtractive decoding and the above-mentioned 2
It is more preferable that the secondary decoding means performs positive decoding.

【0060】本発明の第7の側面は、マルチプル・バス
構成のデータ処理システムであって、(a)システム全
体の動作を統括するメイン・プロセッサと、(b)メイ
ン・メモリと、(c)前記メイン・プロセッサのローカ
ル・バスとして接続された第1のバスと、(d)前記第
1のバスに接続された少なくとも1つの第1の装置と、
(e)第2のバスと、(f)前記第1及び第2のバスを
相互接続するブリッジであって、自身がバス・サイクル
をリトライで終了したときにはリトライされた再度要求
しないバス・サイクルを要求しないブリッジと、(g)
前記第2のバスに接続された少なくとも1つの第2の装
置と、を具備することを特徴とする、複数のバスを含む
データ処理システムである。
A seventh aspect of the present invention is a data processing system having a multiple bus structure, which comprises (a) a main processor for controlling the overall operation of the system, (b) a main memory, and (c). A first bus connected as a local bus of the main processor, and (d) at least one first device connected to the first bus,
(E) a second bus, and (f) a bridge interconnecting the first and second buses, which, when itself terminates the bus cycle, retries a bus cycle that is not requested again An unrequested bridge, (g)
At least one second device connected to the second bus, and a data processing system including a plurality of buses.

【0061】本発明の第8の側面は、マルチプル・バス
構成のデータ処理システムであって、(a)システム全
体の動作を統括するメイン・プロセッサと、(b)メイ
ン・メモリと、(c)前記メイン・プロセッサのローカ
ル・バスとして接続された1次側PCIバスと、(d)
前記1次側PCIバスに接続された少なくとも1つの1
次側PCIデバイスと、(e)2次側PCIバスと、
(f)前記1次側PCIバスと前記2次側PCIバスを
相互接続するPCItoPCIブリッジであって、前記
2次側PCIバス上ではポジティブにデコードするデコ
ーディング手段と、前記2次側PCIバス上において自
身がリトライで終了したことによりリトライされたバス
・サイクルについてはデコードを抑制するデコーディン
グ抑制手段とを含むPCItoPCIブリッジと、
(g)前記2次側PCIバスに接続された、ポジティブ
にデコーディングするタイプの少なくとも1つの2次側
PCIデバイスと、(h)前記2次側PCIバスに接続
された、サブトラクティブにデコーディングするタイプ
の唯1つの2次側PCIデバイスと、を具備することを
特徴とする、複数のバスを含むデータ処理システムであ
る。
An eighth aspect of the present invention is a data processing system having a multiple bus structure, including (a) a main processor for controlling the overall operation of the system, (b) a main memory, and (c). A primary side PCI bus connected as a local bus of the main processor; and (d)
At least one 1 connected to the primary PCI bus
A secondary PCI device, (e) a secondary PCI bus,
(F) A PCI-to-PCI bridge interconnecting the primary-side PCI bus and the secondary-side PCI bus, the decoding means positively decoding on the secondary-side PCI bus, and the secondary-side PCI bus. And a PCI to PCI bridge including decoding suppressing means for suppressing the decoding of the bus cycle retried due to the fact that the terminal itself has ended with the retry,
(G) at least one secondary-side PCI device of the positive decoding type connected to the secondary-side PCI bus, and (h) subtractively decoding connected to the secondary-side PCI bus. A data processing system including a plurality of buses.

【0062】ここで、前記サブトラクティブにデコーデ
ィングするタイプの2次側PCIデバイス(h)は、2
次側PCIバスにISAバスを接続するためのPCIt
oISAブリッジであってもよい。
Here, the secondary side PCI device (h) of the type for the subtractive decoding is 2
PCIt for connecting the ISA bus to the secondary PCI bus
It may be an oISA bridge.

【0063】[0063]

【作用】本発明を好適に実現するコンピュータ・システ
ムのハードウェアは、ホストCPUのローカル・バスと
して働く1次側PCIバスと、1次側PCIバスとはP
CItoPCIブリッジ経由で接続された2次側PCI
バスと、2次側PCIバスとはPCItoISAブリッ
ジ経由で接続された2次側ISAバスを備えたマルチプ
ル・バス環境下で、各PCIバス及びISAバスには夫
々PCIデバイス及びISAデバイスが接続されたもの
である。さらに、PCItoPCIブリッジは、ブロッ
ク機能(前述)とサブトラクティブ動作をサポートする
タイプであり、また、PCItoISAブリッジはサブ
トラクティブ動作タイプであることがより好ましい。
According to the hardware of the computer system that preferably implements the present invention, the primary PCI bus that serves as the local bus of the host CPU and the primary PCI bus are P
Secondary PCI connected via CItoPCI bridge
The PCI device and the ISA device are connected to the PCI bus and the ISA bus, respectively, in a multiple bus environment in which the bus and the secondary PCI bus are connected via the PCI to ISA bridge. It is a thing. Further, it is more preferable that the PCI to PCI bridge is a type that supports the block function (described above) and the subtractive operation, and that the PCI to ISA bridge is the subtractive operation type.

【0064】本発明を実現するコンピュータ・システム
内において、2次側PCIデバイスをマスタとし、2次
側ISAデバイスをスレーブとするPCIバス・サイク
ルがイニシエートされたとする。このとき、PCIto
PCIブリッジは、アクセス要求先のアドレスがブロッ
ク領域外かどうか判断し、ブロック領域外であれば、次
いで、第2の記憶手段としての「リトライ・レジスタ」
に格納されたアドレスと一致しないかどうか判断する。
In a computer system implementing the present invention, it is assumed that a PCI bus cycle in which a secondary PCI device is a master and a secondary ISA device is a slave is initiated. At this time, PCIto
The PCI bridge determines whether the address of the access request destination is outside the block area, and if it is outside the block area, then the “retry register” as the second storage means.
It is determined whether the address does not match the address stored in.

【0065】リトライ・レジスタ中のアドレスに一致し
ないときには、PCItoPCIブリッジは、アクセス
要求は1次側PCIデバイスへのアクセスであると認識
し、2次側PCIバス上のアクセス要求に対してポジテ
ィブに応答するとともに、1次側PCIバス上にアクセ
ス要求を伝送する。
When the address in the retry register does not match, the PCI to PCI bridge recognizes that the access request is an access to the primary PCI device and responds positively to the access request on the secondary PCI bus. At the same time, the access request is transmitted on the primary PCI bus.

【0066】しかしながら、実際には2次側ISAデバ
イスへのアクセス要求であり、いずれの1次側PCIデ
バイスも応答しないので、PCItoPCIブリッジは
1次側PCIバス上のバス・サイクルをマスタ・アボー
トせざるを得ない。このとき、PCItoPCIブリッ
ジは、アクセス要求先のアドレスを自身のリトライ・レ
ジスタに保管するとともに、ターゲット・アボートでな
くリトライにより2次側PCIバス上のバス・サイクル
を終了させる。
However, since the request is actually an access request to the ISA device on the secondary side, and none of the PCI devices on the primary side responds, the PCI to PCI bridge causes the master cycle to abort the bus cycle on the PCI bus on the primary side. I have no choice. At this time, the PCI-to-PCI bridge saves the address of the access request destination in its own retry register and terminates the bus cycle on the secondary side PCI bus not by target abort but by retry.

【0067】次いで、2次側PCIデバイスは、リトラ
イに応答して、2次側ISAデバイスへのアクセスをリ
トライする。このとき、アクセス要求先のアドレスはリ
トライ・レジスタ中のアドレスと一致するので、PCI
toPCIブリッジはこの2次側PCIバス上のアクセ
ス要求には応答しない。したがって、アクセス要求は1
次側PCIバス上に伝送されない。
Then, the secondary PCI device retries access to the secondary ISA device in response to the retry. At this time, the address of the access request destination matches the address in the retry register.
The toPCI bridge does not respond to access requests on this secondary PCI bus. Therefore, the access request is 1
Not transmitted on the secondary PCI bus.

【0068】一方、2次側PCIバス上のいずれのポジ
ティブ装置もアクセス要求に応答しなかったことによ
り、PCItoISAブリッジはこのアクセス要求にサ
ブトラクティブに応答する。そして、PCItoISA
ブリッジにより2次側ISAバス上にアクセス要求が伝
送され、アクセス要求先の2次側ISAデバイスがこれ
に応答することにより、本来の正常なバス・サイクルが
成立する。
On the other hand, since none of the positive devices on the secondary PCI bus responded to the access request, the PCI to ISA bridge responds to this access request subtractively. And PCI to ISA
The bridge transmits an access request on the secondary ISA bus, and the secondary ISA device to which the access is requested responds to this, thereby establishing the original normal bus cycle.

【0069】以上を略言すれば、本発明によれば、PC
ItoPCIブリッジの2次側にいかなる装置が接続さ
れても、PCIバス・サイクルを確実に正常終了させる
ことができる訳である。かかる作用は、PCIプロトコ
ルの1つであるリトライと、PCItoPCIブリッジ
に実装されたリトライ・レジスタとの協働的作用によつ
て実現される。
In brief, according to the present invention, a PC
Whatever device is connected to the secondary side of the ItoPCI bridge, the PCI bus cycle can be surely completed normally. Such an operation is realized by the cooperative operation of the retry, which is one of the PCI protocols, and the retry register implemented in the PCI to PCI bridge.

【0070】また、本発明によれば、ソフトウェアのデ
ザインに負担をかけることなく、2次側PCIデバイス
から2次側ISAデバイスへの正常なデータ転送を実現
することができる。本発明はサブトラクティブ・デコー
ディング方式のPCItoPCIブリッジを標準化する
上で非常に有力である、ということを充分に理解された
い。
Further, according to the present invention, normal data transfer from the secondary PCI device to the secondary ISA device can be realized without burdening the software design. It should be fully understood that the present invention is very effective in standardizing the PCI to PCI bridge of the subtractive decoding method.

【0071】本発明のさらに他の目的、特徴や利点は、
後述する本発明の実施例や添付する図面に基づくより詳
細な説明によって明らかになるであろう。
Further objects, features and advantages of the present invention are as follows.
It will be clarified by a more detailed description based on embodiments of the present invention described below and the accompanying drawings.

【0072】[0072]

【発明の実施の形態】以下、図面を参照しながら本発明
の実施例を詳解する。
BEST MODE FOR CARRYING OUT THE INVENTION Embodiments of the present invention will be described below in detail with reference to the drawings.

【0073】A.コンピュータ・システムの外観構成 図1には、本発明を実現するのに適した典型的なパーソ
ナル・コンピュータ(PC)100の外観構成を示して
いる。
A. External Configuration of Computer System FIG. 1 shows an external configuration of a typical personal computer (PC) 100 suitable for implementing the present invention.

【0074】PC100は、「ノートブック」と呼ばれ
る小型軽量で携行性に優れたタイプである。この種のP
Cは、システム本体110と、本体110の略後縁端に
て回動可能に軸支された蓋体120とで構成された、い
わゆる「クラム・シェル」構造体である。システム本体
110は、CPUやメモリ・チップ等を実装したシステ
ム・ボードや(図示しない)、HDD(ハード・ディス
ク・ドライブ)、FDD(フロッピー・ディスク・ドラ
イブ)、CD−ROMドライブなどの外部記憶装置類
(図示しない)を内蔵している。また、本体110の上
面にはキーボード・ユニット35を配設されている。一
方の蓋体120には、液晶表示ディスプレイ(LCD)
ユニット23が埋設されている。このクラム・シェルを
開くことにより、キーボード入力とLCD表示画面の眺
望が可能になる。また、クラム・シェルを閉じることに
より、キーボード35のトップ面及びLCDの23表示
画面を内部に被覆することができ、収納や携行に便利と
なっている。
The PC 100 is a type called a "notebook" which is small and lightweight and has excellent portability. This kind of P
C is a so-called "clam shell" structure that is composed of the system main body 110 and a lid 120 that is pivotally supported at a substantially rear edge of the main body 110. The system body 110 is an external storage device such as a system board (not shown) mounted with a CPU and a memory chip, an HDD (hard disk drive), an FDD (floppy disk drive), and a CD-ROM drive. Built-in type (not shown). A keyboard unit 35 is arranged on the upper surface of the main body 110. One lid 120 has a liquid crystal display (LCD).
The unit 23 is buried. Opening this clam shell allows keyboard input and a view of the LCD display screen. Further, by closing the clam shell, the top surface of the keyboard 35 and the 23 display screen of the LCD can be covered inside, which is convenient for storage and carrying.

【0075】この種のノートブックPC100には、一
般に、「ドッキング・ステーション」と呼ばれる機能拡
張ユニット200が用意されている。ドッキング・ステ
ーション200は、略偏平形状をなし、その上面の少な
くとも一部はノートブックPC100を受容するための
搭載面を形成している。搭載されたノートブックPC1
00とドッキング・ステーション200は、夫々に設け
られたコネクタ部100A及び200Aにて電気的に接
合し、両者100,200間の電気信号の交換が実現さ
れる。この種のドッキング・ステーション200は、一
般に、「ポート代行機能」と「バス拡張機能」を提供す
る。ポート代行機能とは、外付けマウス/キーボード、
外付けCRTディスプレイ、外付けFDDのような外付
け向きの周辺機器類をケーブル接続するためのポート類
をPC100に付与する機能のことである。また、バス
拡張機能とは、PC100内のバス(例えばPCIバス
やISAバス)をさらに延長して、バス接続可能な装置
や拡張スロットの個数を増設する機能のことである。
In this type of notebook PC 100, a function expansion unit 200 generally called a "docking station" is prepared. The docking station 200 has a substantially flat shape, and at least a part of its upper surface forms a mounting surface for receiving the notebook PC 100. Notebook PC 1 installed
00 and the docking station 200 are electrically connected to each other by the connector portions 100A and 200A provided therein, respectively, so that electric signals can be exchanged between them. This type of docking station 200 generally provides a "port proxy function" and a "bus expansion function". With port proxy function, external mouse / keyboard,
This is a function of providing the PC 100 with ports for cable connection of externally oriented peripheral devices such as an external CRT display and an external FDD. Further, the bus expansion function is a function of further extending the bus in the PC 100 (for example, PCI bus or ISA bus) to increase the number of devices or expansion slots that can be connected to the bus.

【0076】なお、ドッキング・ステーション200自
体は本発明の要旨に直接関連しない。2次側PCIバス
がドッキング・ステーション200によって用意され
る、という程度に理解されたい。ドッキング・ステーシ
ョンの詳細については、例えば本出願人に譲渡されてい
る特願平8−31699号(当社整理番号:JA995
128)の出願明細書を参照されたい。また、本発明を
実現するためにはノートブック型のPCである必要は全
くなく、他の形態(例えばデスクトップ型、タワー型、
ラップトップ型)であってもよい。
The docking station 200 itself is not directly related to the gist of the present invention. It should be understood to the extent that the secondary PCI bus is provided by docking station 200. For details of the docking station, for example, Japanese Patent Application No. 8-31699 (our reference number: JA995) assigned to the present applicant.
128). Further, in order to realize the present invention, it is not necessary to be a notebook PC, but other forms (for example, desktop type, tower type,
Laptop type).

【0077】B.コンピュータ・システムのハードウェ
ア構成 本発明を好適に実現するコンピュータ・システムのハー
ドウェアは、ホストCPUのローカル・バスとして働く
1次側PCIバスと、1次側PCIバスとはPCIto
PCIブリッジ経由で接続された2次側PCIバスと、
2次側PCIバスとはPCItoISAブリッジ経由で
接続された2次側ISAバスを備えたマルチプル・バス
環境下を備えたタイプである。通常、各PCIバス及び
ISAバスには、夫々一以上のPCIデバイス及びIS
Aデバイスが接続されている。さらに、PCItoPC
Iブリッジは、"Memory/IO Base/Li
mit Resister"機能(「ブロック機能」:
前述)とサブトラクティブ・デコーディング動作(前
述)をサポートするタイプであることがより好ましい。
B. Computer system hardware
(A) Configuration The hardware of the computer system that preferably realizes the present invention is a PCI-side primary bus that acts as a local bus of the host CPU, and a PCI-side primary bus is PCIto.
A secondary PCI bus connected via a PCI bridge,
The secondary PCI bus is a type having a multiple bus environment provided with a secondary ISA bus connected via a PCI to ISA bridge. Usually, each PCI bus and ISA bus has one or more PCI devices and ISs, respectively.
Device A is connected. In addition, PCI to PC
I-bridge is "Memory / IO Base / Li"
mit Register "function (" block function ":
More preferably, it is a type that supports both the above) and subtractive decoding operations (described above).

【0078】図2には、本発明を実現するのに適したパ
ーソナル・コンピュータ(PC)100のハードウェア
構成を模式的に示している。以下、各部について説明す
る。なお、PCIバスと黒塗りの双方向矢印で連結され
たPCIデバイスはPCIバスに対してサブトラクティ
ブにデコーディング動作するようにデザインされてい
る。
FIG. 2 schematically shows the hardware configuration of a personal computer (PC) 100 suitable for implementing the present invention. Hereinafter, each part will be described. The PCI device connected to the PCI bus by a black-colored bidirectional arrow is designed to perform a subtractive decoding operation with respect to the PCI bus.

【0079】システム100のメイン・コントローラで
あるCPU10は、オペレーティング・システム(O
S)の制御下で、各種プログラムを実行するようになっ
ている。CPU10は、例えば米Intel社の"Pe
ntium/1xxMHz"、又は米IBM社等が共同
開発した"PowerPC 6xx"でよい。また、OS
は、例えば米IBM社の"OS/2"("OS/2"は米I
BM社の商標)や米Microsoft社の"Wind
ows95"でよい。
The CPU 10, which is the main controller of the system 100, uses the operating system (O
Various programs are executed under the control of S). The CPU 10 is, for example, "Pe" manufactured by Intel Corp.
ntium / 1xxMHz "or" PowerPC 6xx "co-developed by IBM Corp. in the US. OS
Is, for example, "OS / 2"("OS / 2" is the US I
BM's trademark) and Microsoft's "Wind"
ows95 "is sufficient.

【0080】CPU10の外部ピンは、ホストtoPC
Iブリッジ11により1次側PCIバス20に接続され
ている。1次側PCIバス20は、PCItoPCIブ
リッジ21により2次側PCIバス20に相互接続さ
れ、また、1次側PCItoISAブリッジ31によっ
て1次側ISAバス30に相互接続されている。さら
に、2次側PCIバス40は、2次側PCItoISA
ブリッジ51によって2次側ISAバス50と相互接続
されている。言い換えれば、システム100は、一以上
のPCIバス20,40及びISA30,50バスを含
んだマルチプル・バス構成である。なお、PCIやIS
Aの基本性能や特徴等は、[従来の技術]の項で説明し
た通りである。
The external pins of the CPU 10 are host to PC
The I-bridge 11 connects to the primary PCI bus 20. The primary PCI bus 20 is interconnected to the secondary PCI bus 20 by a PCI to PCI bridge 21, and is also interconnected to the primary ISA bus 30 by a primary PCI to ISA bridge 31. Furthermore, the secondary PCI bus 40 is a secondary PCI to ISA.
The bridge 51 interconnects the secondary ISA bus 50. In other words, system 100 is a multiple bus configuration that includes one or more PCI buses 20,40 and ISA 30,50 buses. In addition, PCI and IS
The basic performance and characteristics of A are as described in the section [Prior Art].

【0081】本実施例のホストtoPCIブリッジ11
は、メイン・メモリ13へのアクセス動作を制御するた
めのメモリ・コントローラと、CPU10とPCIバス
20との速度差を吸収するためのデータ・バッファを含
んだ構成となっている。
Host-to-PCI bridge 11 of this embodiment
Includes a memory controller for controlling an access operation to the main memory 13 and a data buffer for absorbing a speed difference between the CPU 10 and the PCI bus 20.

【0082】メイン・メモリ13は、CPU10が実行
する各プログラム(OSやアプリケーション等)をロー
ドしたり、作業データを一時記憶するために用いられる
書き込み可能な記憶装置であり、一般には複数のDRA
Mチップで構成される。システム100には、この外、
L2(Level2キャッシュ)12やROM37など
の半導体記憶装置が含まれる。L2キャッシュ13は、
頻繁にアクセスされる一部のコードやデータを一時格納
して、CPU10がメイン・メモリ13にアクセスする
時間を吸収するために設けられた高速メモリであり、通
常はSRAMチップが用いられる。また、ROM37
は、電源投入時のテスト・プログラム(POST)やシ
ステム100内の各デバイスをハードウェア操作するた
めのコード群(BIOS)、システム保全に必要なデー
タ等を恒久的に格納するための読出し専用メモリであ
る。
The main memory 13 is a writable storage device used for loading each program (OS, application, etc.) executed by the CPU 10 and temporarily storing work data. Generally, a plurality of DRAs are provided.
It is composed of M chips. In addition to this, the system 100
A semiconductor memory device such as the L2 (Level 2 cache) 12 and the ROM 37 is included. L2 cache 13
It is a high-speed memory provided to temporarily store a part of frequently-used codes and data to absorb the time required for the CPU 10 to access the main memory 13, and normally an SRAM chip is used. Also, the ROM 37
Is a read-only memory for permanently storing a test program (POST) at power-on, a code group (BIOS) for hardware operation of each device in the system 100, and data necessary for system maintenance. Is.

【0083】1次側PCIバス20には、1次側PCI
デバイスとしての、PCItoPCIブリッジ21、ビ
デオ・コントローラ22、PCMCIAコントローラ2
5、1次側PCItoISAブリッジ31等が接続され
ている。
The primary PCI bus 20 has a primary PCI
PCI to PCI bridge 21, video controller 22, PCMCIA controller 2 as devices
5, the primary side PCI to ISA bridge 31 and the like are connected.

【0084】PCItoPCIブリッジ21は、1次側
PCIバス20と2次側PCIバス40とを相互接続す
るためのチップである。PCItoPCIブリッジ21
は、"PCItoPCI BRIDGE ARCHIT
ECTURE SPECIFICATION Revi
sion 1.0"(前述)に従うとともに、本実施例
に固有の構成や動作特性を含んでいるが、その詳細はC
項及びD項で後述する。
The PCI to PCI bridge 21 is a chip for interconnecting the primary PCI bus 20 and the secondary PCI bus 40. PCI to PCI bridge 21
Is "PCI to PCI BRIDGE ARCHIT
ECTURE SPECIFICATION Revi
version 1.0 "(described above) and includes the configuration and operation characteristics peculiar to this embodiment, the details of which are C
It will be described later in the paragraphs and D.

【0085】ビデオ・コントローラ22は、CPU10
からの描画命令を実際に処理するための周辺コントロー
ラ・チップであり、処理した描画情報を画面バッファ
(VRAM)24に一旦書き込むとともに、VRAM2
4から読み出してディスプレイ23に画面出力するよう
になっている。
The video controller 22 includes the CPU 10
Is a peripheral controller chip for actually processing the drawing command from the VRAM 2 and the processed drawing information is once written in the screen buffer (VRAM) 24.
4 is read out and the screen is output to the display 23.

【0086】PCIMCIAコントローラ25は、PC
Iバス20上の信号線をPCカード・スロットに直結さ
せるための専用コントローラ・チップである。カード・
スロットには、PCMCIA(Personal Computer Memo
ry Card International Association)/JEIDA(J
apan Electronic Industry Development Association)
が策定した規格(例えば"PC Card Specification 95")
に準拠したPCカード26を活性的に挿脱可能である。
The PCIMCIA controller 25 is a PC
This is a dedicated controller chip for directly connecting the signal line on the I bus 20 to the PC card slot. card·
PCMCIA (Personal Computer Memo)
ry Card International Association) / JEIDA (J
apan Electronic Industry Development Association)
Standards established by (eg "PC Card Specification 95")
It is possible to actively insert and remove the PC card 26 conforming to the above.

【0087】1次側PCItoISAブリッジ31は、
1次側PCIバス20と1次側ISAバス30とを相互
接続するためのチップであり、一方のバス上のトランザ
クションを適宜他方のバス上に展開するようになってい
る。また、本実施例のPCItoISAブリッジ31
は、DMAコントローラやプログラマブル割込みコント
ローラ(PIC)、プログラマブル・インターバル・タ
イマ(PIT)の各機能を含んだ構成となっている。さ
らに、PCItoISAブリッジ31はIDE(Integr
ated Drive Electronics)に準拠したIDEインターフ
ェースを備えている。IDEインターフェースには、例
えばIDEハード・ディスク・ドライブ(HDD)27
やIDE CD−ROMなどの外部記憶装置類が接続さ
れる。
The primary side PCI to ISA bridge 31 is
It is a chip for interconnecting the primary PCI bus 20 and the primary ISA bus 30, and the transaction on one bus is appropriately expanded on the other bus. The PCI to ISA bridge 31 of this embodiment is also used.
Has a configuration including each function of a DMA controller, a programmable interrupt controller (PIC), and a programmable interval timer (PIT). Furthermore, the PCI to ISA bridge 31 is an IDE (Integr
Equipped with an IDE interface conforming to ated Drive Electronics). The IDE interface includes, for example, an IDE hard disk drive (HDD) 27.
And external storage devices such as an IDE CD-ROM are connected.

【0088】なお、本実施例のPCItoPCIブリッ
ジ21は、本発明をより好適に実現するために、1次側
PCIバス20上ではサブトラクティブにデコーディン
グするようにデザインされている(後述)。このため、
1次側PCItoISAブリッジ31はポジティブ・デ
コーディング方式を採らざるを得ない。しかしながら、
1次側ISAバス30上のISAデバイスは標準装備さ
れており、したがって、ブリッジ30は全ての1次側I
SAデバイスのシステム・リソースを予め知っているの
で、ポジティプな応答が可能である。
The PCI-to-PCI bridge 21 of this embodiment is designed for subtractive decoding on the primary PCI bus 20 in order to realize the present invention more preferably (described later). For this reason,
The primary PCI to ISA bridge 31 is forced to adopt the positive decoding method. However,
The ISA devices on the primary ISA bus 30 are standard equipment, and therefore the bridge 30 has all primary I
Since the system resources of the SA device are known in advance, a positive response is possible.

【0089】1次側ISAバス32には、1次側ISA
デバイスとしてのI/Oコントローラ32やキーボード
(KBD)/マウス・コントローラ(KMC)34等が
接続されている。
The primary ISA bus 32 has a primary ISA.
An I / O controller 32 as a device, a keyboard (KBD) / mouse controller (KMC) 34, etc. are connected.

【0090】I/Oコントローラ32は、シリアル・ポ
ート又はパラレル・ポートを介した外部装置とのシリア
ル的又はパラレル的なデータ交換を実現するための周辺
コントローラ・チップである。一般に、シリアル・ポー
トにはモデム(図示しない)が、パラレル・ポートには
プリンタ(図示しない)が、夫々接続される。なお、本
実施例のI/Oコントローラ32は、フロッピー・ディ
スク・ドライブ(FDD)33の駆動制御も行う。
The I / O controller 32 is a peripheral controller chip for realizing serial or parallel data exchange with an external device via a serial port or a parallel port. Generally, a modem (not shown) is connected to the serial port, and a printer (not shown) is connected to the parallel port. The I / O controller 32 of this embodiment also controls the drive of the floppy disk drive (FDD) 33.

【0091】KMC34は、キーボード35からの入力
コードや、マウス36からの指示座標値をコンピュータ
・データとして取り込み、バス30上に伝送するための
周辺コントローラ・チップである。
The KMC 34 is a peripheral controller chip for taking in the input code from the keyboard 35 and the designated coordinate values from the mouse 36 as computer data and transmitting it on the bus 30.

【0092】上述したCPU10や1次側PCIデバイ
ス、1次側ISAデバイスは、例えばノートブック・コ
ンピュータ本体内のホスト・システムとして標準的に提
供される。これに対し、2次側PCIバス40や2次側
ISAバス50、及びこれらバス40/50に接続され
た2次側PCIデバイス42,43…、2次側ISAデ
バイス52,53…は、例えばドッキング・ステーショ
ン(前述)という形態で提供される。
The CPU 10, the primary PCI device, and the primary ISA device described above are provided as a standard host system in the notebook computer main body, for example. On the other hand, the secondary PCI bus 40, the secondary ISA bus 50, and the secondary PCI devices 42, 43 ... And the secondary ISA devices 52, 53. It is provided in the form of a docking station (described above).

【0093】2次側PCIバス40は、PCItoPC
Iブリッジ21によって1次側PCIバス20と相互接
続されている(前述)。2次側PCIバス40には、P
CItoPCIブリッジ21の他に、PCIデバイス4
2,43…や、2次側PCItoISAブリッジ51
が、2次側PCIデバイスとして接続されている。な
お、本実施例のPCItoPCIブリッジ21は、2次
側PCIバス40上ではポジティブにデコーディングす
るようにデザインされている。
The secondary PCI bus 40 is a PCI to PC.
The I-bridge 21 interconnects the primary PCI bus 20 (described above). P on the secondary PCI bus 40
In addition to the CI to PCI bridge 21, a PCI device 4
2, 43 ... and secondary side PCI to ISA bridge 51
Is connected as a secondary PCI device. The PCI-to-PCI bridge 21 of this embodiment is designed to be positively decoded on the secondary PCI bus 40.

【0094】PCIデバイス42,43…の一例は、P
CMCIAコントローラやLANアダプタ・カード経由
で接続されるネットワーク・サブシステム、SCSIア
ダプタ・カード経由で接続されるストレージ・サブシス
テム等の、高速な入出力動作を必要とする装置類であ
る。なお、PCIデバイス42,43…は、必要に応じ
てPCIマスタ(すなわちイニシエータ)として他の装
置(2次側ISAデバイスを含む)へのアクセスを要求
することもある、という点に留意されたい。
An example of the PCI devices 42, 43 ... Is P
These are devices that require high-speed input / output operations such as a network subsystem connected via a CMCIA controller or a LAN adapter card, and a storage subsystem connected via a SCSI adapter card. It should be noted that the PCI devices 42, 43 ... May request access to other devices (including the secondary ISA device) as a PCI master (that is, an initiator) as needed.

【0095】2次側PCItoISAブリッジ51は、
2次側PCIバス40と2次側ISAバス50とを相互
接続するためのチップであり、一方のバス上のトランザ
クションを適宜他方のバス上に展開するようになってい
る。また、本実施例のPCItoISAブリッジ51
は、DMAコントローラやプログラマブル割込みコント
ローラ(PIC)、プログラマブル・インターバル・タ
イマ(PIT)の各機能を含んだ構成となっている(同
上)。
The secondary side PCI to ISA bridge 51 is
It is a chip for interconnecting the secondary PCI bus 40 and the secondary ISA bus 50, and the transaction on one bus is appropriately expanded on the other bus. The PCI to ISA bridge 51 of this embodiment is also used.
Has a configuration including each function of a DMA controller, a programmable interrupt controller (PIC), and a programmable interval timer (PIT) (same as above).

【0096】2次側ISAバス50には、2次側ISA
デバイスとしてのISAデバイス52,53…が接続さ
れている。ISAデバイス42,43…の一例は、IS
Aバス・スロットに装着されたISA対応の拡張アダプ
タ・カードである。ISAデバイス52,53…は、必
要に応じてPCIマスタに対するスレーブ(すなわちタ
ーゲット)としてアクセス要求されることもある。この
場合、2次側PCItoISAブリッジ51の中継によ
りバス・トランザクションが実現されることになる(後
述)。
The secondary ISA bus 50 has a secondary ISA.
ISA devices 52, 53, ... As devices are connected. An example of the ISA devices 42, 43 ...
It is an ISA compatible expansion adapter card installed in the A bus slot. The ISA devices 52, 53, ... May be requested as slaves (that is, targets) to the PCI master as required. In this case, the bus transaction is realized by relaying the secondary PCI to ISA bridge 51 (described later).

【0097】なお、本実施例の2次側PCItoISA
ブリッジ51は、サブトラクティブ・デコーディング方
式を採用している。これは、PnP対応のPCIデバイ
スのいずれもがポジティブにバス・サイクルを要求しな
いときにみサブトラクティブに応答して、PnP非対応
のISAデバイスにバス・サイクルを与えるためである
(前述)。また、2次側PCItoISAブリッジ51
は、2次側ISAデバイス52,53…が2次側PCI
デバイスの使用可能アドレス領域以外を使用するため
(図12参照)、2次側PCIデバイスの使用可能アド
レス領域以外へのアクセスに対してデコーディングする
唯一の2次側PCIデバイスとなる。
The secondary side PCI to ISA of the present embodiment.
The bridge 51 employs a subtractive decoding method. This is because the PnP-capable ISA device responds to the subtractive operation only when none of the PnP-capable PCI devices positively requests the bus cycle, and the bus cycle is given to the PnP-unsupported ISA device (described above). In addition, the secondary side PCI to ISA bridge 51
Is the secondary side ISA device 52, 53 ... Is the secondary side PCI
Since the area other than the usable address area of the device is used (see FIG. 12), it becomes the only secondary side PCI device that is decoded for access to areas other than the usable address area of the secondary side PCI device.

【0098】パーソナル・コンピュータ100の典型的
なユーザは、キーボード35又はマウス36を介してシ
ステムを操作して、ワープロ、表計算、通信などのよう
な各種アプリケーションを実行し、ディスプレイ・スク
リーン(すなわちデスクトップ)23上で自らの業務遂
行に役立てることができる。
A typical user of personal computer 100 operates the system via keyboard 35 or mouse 36 to execute various applications such as word processing, spreadsheets, communications, etc. and to display screen (ie desktop). ) 23 can be used to carry out one's business.

【0099】現在市販されているいわゆるパーソナル・
コンピュータは、図2に示したコンピュータ・システム
として充分機能を発揮するであろう。なお、コンピュー
タ・システムを構成するためには、図2に示した以外に
も多くの電気回路等が必要である。但し、これらは当業
者には周知であり、また、本発明の要旨を構成するもの
ではないので、本明細書中では省略している。また、図
面の錯綜を回避するため、図中の各ハードウェア・ブロ
ック間の接続も一部しか図示していない点を了承された
い。
The so-called personal computer currently on the market
The computer will function well as the computer system shown in FIG. It should be noted that many electric circuits and the like other than those shown in FIG. 2 are required to configure the computer system. However, since these are well known to those skilled in the art and do not constitute the gist of the present invention, they are omitted in the present specification. In addition, it should be noted that only a part of the connections between the hardware blocks in the drawing are shown in order to avoid complication of the drawing.

【0100】C.PCItoPCIブリッジの内部構成 本発明は、PCItoPCIブリッジ21の構成及び動
作特性を修正・改良することによって好適に実現され
る。この項では、該ブリッジ・チップ21についてより
詳細に説明する。
C. Internal Configuration of PCI to PCI Bridge The present invention is preferably implemented by modifying and improving the configuration and operating characteristics of the PCI to PCI bridge 21. In this section, the bridge chip 21 will be described in more detail.

【0101】図3には、PCItoPCIブリッジ21
の内部構成を模式的に図解している。以下、各部につい
て説明する。
FIG. 3 shows a PCI-to-PCI bridge 21.
Schematically illustrates the internal configuration of the. Hereinafter, each part will be described.

【0102】1次側PCIインターフェース201及び
2次側PCIインターフェース202は、夫々1次側P
CIバス20及び2次側PCIバス40との間でデータ
の授受を実現するための回路である。各インターフェー
ス201,202は、各バス20,40上に伝送されて
いるアドレス情報やデータ情報、コマンド等を一時保持
するためのI/Oバッファ(図示しない)を含んでい
る。
The primary side PCI interface 201 and the secondary side PCI interface 202 are respectively connected to the primary side P
This is a circuit for realizing data exchange between the CI bus 20 and the secondary PCI bus 40. Each of the interfaces 201 and 202 includes an I / O buffer (not shown) for temporarily holding address information, data information, commands and the like transmitted on the buses 20 and 40.

【0103】1次側アドレス・コマンド・デコーダ20
3、1次側ターゲット・ステート・マシン204、及び
2次側マスタ・ステート・マシン205は、1次側PC
Iバス20上のバス・サイクルを2次側PCIバス40
上に展開するためのブロックである。すなわち、デコー
ダ203は、インターフェース201で受け取ったアド
レス情報やコマンド情報を解釈し、1次側PCIバス2
0上の現トランザクションが2次側PCIデバイスへの
アクセスであるかどうか判断する。そして、デコーダ2
03の判断が肯定的であれば、ステート・マシン204
は1次側PCIバス20上でターゲットとして動作し、
次いで、ステート・マシン205は2次側PCIバス4
0上でマスタとして動作する。ターゲット・ステート・
マシン204の動作とは、例えば1次側PCIバス20
上でのデバイス選択信号(P_DEVSEL#)のアサ
ートであり、マスタ・ステート・マシン205の動作と
は、例えば2次側PCIバス40上でのフレーム信号
(S_FRAME#)のアサートである。なお、本実施
例の1次側アドレス・コマンド・デコーダ203はサブ
トラクティブにデコードする(前述)。
Primary side address command decoder 20
3, the primary side target state machine 204 and the secondary side master state machine 205 are the primary side PC
The bus cycle on the I bus 20 is changed to the secondary PCI bus 40.
It is a block to expand above. That is, the decoder 203 interprets the address information and the command information received by the interface 201 and interprets them on the primary PCI bus 2
Determine if the current transaction on 0 is an access to a secondary PCI device. And the decoder 2
If 03 is affirmative, state machine 204
Operates as a target on the primary PCI bus 20,
Next, the state machine 205 uses the secondary PCI bus 4
0 acts as a master. Target state
The operation of the machine 204 is, for example, the primary PCI bus 20.
The assertion of the device selection signal (P_DEVSEL #) above, and the operation of the master state machine 205 is, for example, the assertion of the frame signal (S_FRAME #) on the secondary PCI bus 40. The primary address / command decoder 203 of the present embodiment performs subtractive decoding (described above).

【0104】また、2次側アドレス・コマンド・デコー
ダ208、2次側ターゲット・ステート・マシン20
7、及び1次側マスタ・ステート・マシン206は、2
次側PCIバス40上のバス・サイクルを1次側PCI
バス20上に展開するためのブロックである。すなわ
ち、デコーダ208は、インターフェース202で受け
取ったアドレス情報やコマンド情報を解釈し、2次側P
CIバス40上の現トランザクションが1次側PCIデ
バイスへのアクセスであるかどうか判断する。そして、
デコーダ208の判断が肯定的であれば、ステート・マ
シン207は2次側PCIバス40上でターゲットとし
て動作し、次いで、ステート・マシン206は1次側P
CIバス20上でマスタとして動作する。ターゲット・
ステート・マシン207の動作とは、例えば2次側PC
Iバス40上でのデバイス選択信号(S_DEVSEL
#)のアサートであり、マスタ・ステート・マシン20
6の動作とは、例えば1次側PCIバス20上でのフレ
ーム信号(P_FRAME#)のアサートである。な
お、本実施例の2次側アドレス・コマンド・デコーダ2
08はポジティブにデコードする(前述)。
The secondary side address command decoder 208 and the secondary side target state machine 20
7, and the primary master state machine 206 has 2
The bus cycle on the secondary PCI bus 40 is set to the primary PCI.
This is a block for developing on the bus 20. That is, the decoder 208 interprets the address information and command information received by the interface 202, and analyzes the secondary side P
It is determined whether the current transaction on the CI bus 40 is an access to the primary PCI device. And
If the decoder 208 makes a positive determination, the state machine 207 acts as a target on the secondary PCI bus 40, and then the state machine 206 causes the primary P to pass.
It operates as a master on the CI bus 20. target·
The operation of the state machine 207 is, for example, a secondary PC
Device selection signal (S_DEVSEL on I-bus 40)
#) Is asserted and the master state machine 20
The operation 6 is, for example, assertion of the frame signal (P_FRAME #) on the primary PCI bus 20. The secondary address / command / decoder 2 of the present embodiment
08 decodes positively (described above).

【0105】PCIコンフィギュレーション・レジスタ
211、比較器209、及びリトライFIFO制御回路
210は、1次側デコーダ203及び2次側デコーダ2
08のデコーディング作業に対して協働的に作用するブ
ロックである。
The PCI configuration register 211, the comparator 209, and the retry FIFO control circuit 210 are composed of the primary side decoder 203 and the secondary side decoder 2.
It is a block that cooperates with 08 decoding work.

【0106】PCIコンフィギュレーション・レジスタ
211は、メモリ/IO・ベース/リミット・アドレス
・レジスタ211Aと、リトライFIFO211Bを含
んでいる。このうち、メモリ/IO・ベース/リミット
・アドレス・レジスタ211Aとは、[従来の技術]の
項(例えばパラグラフ[0017]及び[0018])
で図12を用いながら説明したように、2次側PCIデ
バイスにのみ使用を許されたメモリ・アドレス領域及び
I/Oアドレス領域(すなわち「ブロック領域」)を定
義するためのものであり、メモリ及びI/Oの各々のア
ドレス空間についてのベース番地及びリミット番地を記
憶している。1次側デコーダ203は、メモリ/IO・
ベース/リミット・アドレス・レジスタ211Aのみを
参照して、1次側PCIバス20上の現トランザクショ
ンが2次側PCIデバイスへのアクセス要求であるかど
うか判断する。メモリ/IO・ベース/リミット・アド
レス・レジスタ211Aは、例えば[請求項9]の「第
1の記憶手段」を構成すると捉えられたい。
The PCI configuration register 211 includes a memory / IO base / limit address register 211A and a retry FIFO 211B. Of these, the memory / IO base / limit address register 211A is the term “prior art” (eg, paragraphs [0017] and [0018]).
As described with reference to FIG. 12, the memory address area and the I / O address area (that is, “block area”) which are allowed to be used only by the secondary PCI device are defined. And a base address and a limit address for each I / O address space are stored. The primary side decoder 203 is a memory / IO /
Only the base / limit address register 211A is referenced to determine whether the current transaction on the primary PCI bus 20 is an access request to the secondary PCI device. It should be understood that the memory / IO base / limit address register 211A constitutes, for example, the "first storage means" of [claim 9].

【0107】リトライFIFO211Bは、リトライす
べきトランザクションに係るアドレス情報等を1次格納
しておくためのバッファであり、本実施例では、複数段
のバッファを備えた先入れ先出し形式である。図4に
は、リトライFIFO211Bの構成を詳細に図解して
いる。同図では、FIFOバッファ211Bは4段のバ
ッファで構成されるが、増段や減段は設計事項に過ぎな
い。各バッファは、アドレス値を格納するためのアドレ
ス・フィールドの他、現記憶内容が有効か無効かを示す
バリッド・フラグと、格納したアドレスがメモリ・アド
レス又はI/Oアドレスのいずれであるかを示すための
M/IOフラグを含んでいる。アドレス・フィールド
は、PCIバスのアドレス幅に鑑み32ビット長でよ
い。また、バリッド・フラグ及びM/IOフラグは各1
ビットでよい。例えばバリッド・フラグが0であればデ
ータは無効、1であれば有効である。また、M/IOフ
ラグが0であればI/Oアドレスであり、1であればメ
モリ・アドレスである。リトライFIFO211Bは、
例えば[請求項9]の「第2の記憶手段」を構成すると
捉えられたい。
The retry FIFO 211B is a buffer for temporarily storing address information and the like relating to a transaction to be retried, and in the present embodiment, it is a first-in first-out type having a plurality of stages of buffers. FIG. 4 illustrates the configuration of the retry FIFO 211B in detail. In the figure, the FIFO buffer 211B is composed of four stages of buffers, but increasing or decreasing stages is only a design matter. Each buffer has an address field for storing an address value, a valid flag indicating whether the currently stored content is valid or invalid, and whether the stored address is a memory address or an I / O address. It includes an M / IO flag for indicating. The address field may be 32 bits long considering the address width of the PCI bus. Each valid flag and M / IO flag is 1
Just a bit. For example, if the valid flag is 0, the data is invalid, and if the valid flag is 1, the data is valid. If the M / IO flag is 0, it is an I / O address, and if it is 1, it is a memory address. The retry FIFO 211B is
For example, it should be understood that it constitutes the "second storage means" of [claim 9].

【0108】リトライFIFO制御回路210は、リト
ライFIFO211Bの書込み内容を管理するためのブ
ロックである。リトライFIFO制御回路210は、P
CItoPCIブリッジ21自身が2次側PCIバス4
0上のトランザンションをリトライにより終了したと
き、該トランザクションに係るアドレス情報をFIFO
211B中の利用可能なバッファに書き込むようになっ
ている。また、リトライFIFO211Bの全段が満杯
(FULL)状態になったときには、新しい入力のため
古いデータが廃棄される。
The retry FIFO control circuit 210 is a block for managing the write contents of the retry FIFO 211B. The retry FIFO control circuit 210 uses P
The CItoPCI bridge 21 itself is the secondary PCI bus 4
When the transaction on 0 is completed by retry, the address information related to the transaction is stored in the FIFO.
It is adapted to write to an available buffer in 211B. When all the stages of the retry FIFO 211B are full (FULL), old data is discarded because of new input.

【0109】比較器209は、2次側アドレス・コマン
ド・デコーダ208のデコーディング作業の一部を担う
ブロックである。より具体的には、比較器209は、2
次側PCIバス40上で指定されたアドレスをメモリ/
IO・ベース/リミット・アドレス・レジスタ211A
の内容と比較し、2次側PCIデバイスの使用可能アド
レス領域(すなわちブロック領域)の外であるときに、
さらに該アドレスがリトライFIFO211B中に存在
するかどうかを判断する。もし、リトライFIFO21
1Bに存在しなければ、2次側デコーダ208は、1次
側PCIデバイスへのアクセスと判断し、このトランザ
クションに応答する。他方、リトライFIFO211B
に存在すれば、2次側PCIデバイスの使用可能アドレ
ス領域外であっても、2次側デコーダ208は2次側P
CIデバイスへのアクセスと判断して、このトランザク
ションに応答しない。
The comparator 209 is a block which plays a part of the decoding work of the secondary side address command decoder 208. More specifically, the comparator 209 is
Memory / specified address on the next PCI bus 40
IO Base / Limit Address Register 211A
In comparison with the contents of the above, when it is outside the usable address area (that is, the block area) of the secondary PCI device,
Further, it is determined whether or not the address exists in the retry FIFO 211B. If retry FIFO21
If it does not exist in 1B, the secondary side decoder 208 judges that it is an access to the primary side PCI device and responds to this transaction. On the other hand, retry FIFO 211B
If it exists in the secondary side PCI device, the secondary side decoder 208 determines that the secondary side P is in the usable address area of the secondary side PCI device.
Judge that it is an access to the CI device and do not respond to this transaction.

【0110】図5には、PCItoPCIブリッジ21
の動作特性(特に本発明の要旨に関連する部分)を、状
態遷移図の形態で示している。以下、各状態について説
明する。
FIG. 5 shows the PCI to PCI bridge 21.
The operating characteristics (particularly the part related to the gist of the present invention) are shown in the form of a state transition diagram. Hereinafter, each state will be described.

【0111】状態0:この状態は、電源投入時、及び2
次側PCIデバイスからのアクセス要求待ちの状態であ
る。なお、電源投入時のリトライFIFO211Bは全
てブランクである。
State 0: This state is when the power is turned on and when 2
It is in a state of waiting for an access request from the secondary PCI device. The retry FIFOs 211B when the power is turned on are all blank.

【0112】状態1:2次側PCIデバイスからトラン
ザクションが発生すると、この状態に遷移する。状態1
では、まず、2次側PCIデバイスによって指定された
アドレスが、メモリ/IO・ベース/リミット・アドレ
ス・レジスタ211Aで定義された2次側PCIデバイ
スの使用可能アドレス領域かどうかを判断する。次い
で、指定されたアドレスがリトライFIFO211B中
に存在するかどうかを判断する。これら2つのうち少な
くとも一方の条件を満たせば、アドレス・ヒットとみな
し、PCItoPCIブリッジ21は状態6に進む。ま
た、いずれの条件も満たさなければアドレス・ミスとみ
なし、状態2に進む。
State 1: When a transaction occurs from the secondary PCI device, this state is entered. State 1
First, it is determined whether the address specified by the secondary PCI device is the usable address area of the secondary PCI device defined by the memory / IO base / limit address register 211A. Then, it is determined whether or not the designated address exists in the retry FIFO 211B. If at least one of these two conditions is satisfied, it is considered as an address hit, and the PCI to PCI bridge 21 proceeds to state 6. If neither condition is satisfied, it is considered as an address miss, and the process proceeds to state 2.

【0113】状態2:この状態は、アドレス・ミス、す
なわち1次側PCIデバイスへのバス・サイクルである
と判断された状態である。PCItoPCIブリッジ2
1は、マスタ装置として1次側PCIバス20上に同じ
トランザクションを発生させる。いずれかの1次側PC
Iデバイスがトランザクションに応答すれば、バス・サ
イクルが成立する。そして、バス・サイクルが終了した
後は状態0に復帰する。他方、所定時間内にいずれの1
次側PCIデバイスも応答しなければ状態3に進む。
State 2: This state is an address miss, that is, a state determined to be a bus cycle to the primary PCI device. PCI to PCI bridge 2
1 as the master device generates the same transaction on the primary PCI bus 20. Any primary PC
If the I-device responds to the transaction, the bus cycle is established. It then returns to state 0 after the bus cycle is complete. On the other hand, any one within a predetermined time
If the secondary PCI device also does not respond, go to state 3.

【0114】状態3:この状態は、PCItoPCIブ
リッジ21が発生させたトランザクションに応答する1
次側PCIデバイスがない状態である。このとき、PC
ItoPCIブリッジ21は、1次側PCIバス20上
ではバス・サイクルをマスタ・アボートさせるととも
に、状態4に進む。
State 3: This state is in response to a transaction generated by the PCI to PCI bridge 21 1
There is no secondary PCI device. At this time, PC
The ItoPCI bridge 21 causes the bus cycle to be master aborted on the primary PCI bus 20 and proceeds to state 4.

【0115】状態4:この状態では、PCItoPCI
ブリッジ21は、ターゲット・アボートではなくリトラ
イにより2次側PCIバス40上のバス・サイクルを一
時的に終了させ、状態5に進む。
State 4: In this state, PCItoPCI
The bridge 21 temporarily ends the bus cycle on the secondary PCI bus 40 by a retry rather than the target abort, and proceeds to state 5.

【0116】状態5:この状態では、PCItoPCI
ブリッジ21は、リトライすべきバス・サイクルに係る
アドレス情報(すなわちアドレス値とM/IOフラグ)
をリトライFIFO211B中の使用可能バッファに書
き込むとともに、該バッファを有効化する。次いで、状
態0に復帰し、一時終了したバス・サイクルの再試行が
待たれることとなる。
State 5: In this state, PCItoPCI
The bridge 21 has address information (that is, address value and M / IO flag) related to the bus cycle to be retried.
Is written to the available buffer in the retry FIFO 211B and the buffer is validated. It will then return to state 0 and wait for the retry of the bus cycle that was temporarily terminated.

【0117】状態6:この状態は、アドレス・ヒット、
すなわち2次側PCIデバイス同士のバス・サイクル
(より具体的には、2次側PCItoISAブリッジ5
1を経由した2次側ISAデバイスへのアクセス)であ
ると判断された状態である。2次側ISAデバイスに対
しリトライ・アクセスを試みた場合には、2次側PCI
デバイスの使用不能なアドレス領域を使用するがPCI
toPCIブリッジがポジティプに応答しないことによ
り、2次側PCItoISAブリッジ51によるサブト
ラクティブな応答が可能となり、バス・サイクルが成立
する。
State 6: This state is an address hit,
That is, the bus cycle between the secondary PCI devices (more specifically, the secondary PCI to ISA bridge 5
Access to the secondary side ISA device via 1). If a retry access is attempted to the secondary ISA device, the secondary PCI
PCI device uses unusable address space
Since the to PCI bridge does not respond positively, a subtractive response by the secondary PCI to ISA bridge 51 becomes possible and the bus cycle is established.

【0118】D.2次側PCIデバイスから2次側IS
Aデバイスへのアクセス動作 本発明は、言い換えれば[表1](前述)の5番目のバ
ス・トランザクション、すなわち2次側PCIデバイス
から2次側ISAデバイスへのアクセス動作を好適に実
現するためになされたものである。前項までで、本発明
を具現するコンピュータ・システム100のハードウェ
ア環境を詳細に説明してきた。そこで、この項では、該
ハードウエア環境下での2次側PCIデバイスから2次
側ISAデバイスへのアクセス動作について説明するこ
とにする。
D. From the secondary PCI device to the secondary IS
In other words, the present invention preferably realizes the fifth bus transaction in [Table 1] (described above), that is, the access operation from the secondary PCI device to the secondary ISA device. It was made. Up to the previous section, the hardware environment of the computer system 100 embodying the present invention has been described in detail. Therefore, in this section, an access operation from the secondary PCI device to the secondary ISA device under the hardware environment will be described.

【0119】図6乃至図8には、2次側PCIデバイス
(マスタ:仮にPCIデバイス42とする)から2次側
ISAデバイス(スレーブ:仮にISAデバイス52と
する)へのアクセスが行われているときの、PCIto
PCIブリッジ21の動作を示したフローチャートの形
態で示している。以下、各図を参照しながら動作を説明
する。
In FIGS. 6 to 8, access is made from the secondary PCI device (master: tentatively PCI device 42) to the secondary ISA device (slave: tentatively ISA device 52). When, PCIto
It is shown in the form of a flow chart showing the operation of the PCI bridge 21. The operation will be described below with reference to the drawings.

【0120】システム100のメイン電源が投入される
と(ステップS10)、自己診断テストやOSブートな
どの所定のシーケンスを経た後に、システム100は利
用可能な状態となる。この状態では、リトライFIFO
211Bは全て初期化され、すなわちブランク状態とな
っている(ステップS12)。
When the main power of the system 100 is turned on (step S10), the system 100 becomes available after a predetermined sequence of self-diagnosis test and OS boot. In this state, the retry FIFO
211B are all initialized, that is, in a blank state (step S12).

【0121】PCItoPCIブリッジ21は、2次側
PCIデバイスによるトランザクションが開始するまで
の間、待機状態となる(ステップS14)。但し、[表
1]の1番目及び2番目のトランザクションは、周知の
ロジックにより好適に実行されるが、本発明の要旨とは
直接関連しないのでここでは詳解しない。
The PCI-to-PCI bridge 21 is in a standby state until the transaction by the secondary PCI device is started (step S14). However, the 1st and 2nd transactions in [Table 1] are preferably executed by a well-known logic, but they are not directly related to the gist of the present invention and will not be described in detail here.

【0122】2次側PCIデバイスによるトランザクシ
ョンが開始されると、PCItoPCIブリッジ21
は、2次側PCIバス40上に伝送されているアドレス
情報やコマンド情報をI/Oバッファに一時記憶してお
く(ステップS16)。次いで、取得したコマンド情報
により現バス・サイクルがメモリ・サイクルかI/Oサ
イクルかを判断する(ステップS18)。メモリ・サイ
クルであれば、さらに、取得したアドレスがメモリ・ベ
ース・レジスタ値とメモリ・リミット・レジスタ値によ
って定義されたアドレス領域の範囲内かどうかを判断す
る(ステップS20A)。また、I/Oサイクルであれ
ば、さらに、取得したアドレスがI/Oベース・レジス
タ値とI/Oリミット・レジスタ値によって定義された
アドレス領域の範囲内かどうかを判断する(ステップS
20B)。そして、ステップS20A及びS20Bのい
ずれにおいても、ベース/リミット・レジスタ211A
で定義されたアドレス領域の範囲内であれば分岐S22
をBに進み、該範囲の外であれば分岐S22をCに進
む。
When a transaction by the secondary PCI device is started, the PCI to PCI bridge 21
Temporarily stores the address information and command information transmitted on the secondary PCI bus 40 in the I / O buffer (step S16). Then, it is determined whether the current bus cycle is a memory cycle or an I / O cycle based on the acquired command information (step S18). If it is a memory cycle, it is further determined whether or not the acquired address is within the range of the address area defined by the memory base register value and the memory limit register value (step S20A). If it is an I / O cycle, it is further determined whether the acquired address is within the address area defined by the I / O base register value and the I / O limit register value (step S).
20B). Then, in any of steps S20A and S20B, the base / limit register 211A
If it is within the range of the address area defined by, branch S22.
To B, and if it is outside the range, branch S22 to C.

【0123】取得したアドレスがベース/リミット・レ
ジスタ211Aで定義されたアドレス領域の範囲内とい
うことは、アクセス要求先となるスレーブも2次側PC
Iデバイスであることを意味する。したがって、この場
合には、PCItoPCIブリッジ21は2次側PCI
バス40上のトランザクションを1次側PCIバス20
に伝達することはせず、2次側PCIバス40上でトラ
ンザクションが終了するのを待機するだけである(ステ
ップS24)。そして、トランザクションが終了した後
は、ステップS14に復帰し、同様の処理を繰り返す。
Since the acquired address is within the range of the address area defined by the base / limit register 211A, the slave to which the access is requested is also the secondary side PC.
It is an I-device. Therefore, in this case, the PCI to PCI bridge 21 is connected to the secondary PCI.
Transactions on the bus 40 are transferred to the primary PCI bus 20.
To the end of the transaction on the secondary side PCI bus 40 (step S24). Then, after the transaction is completed, the process returns to step S14 and the same processing is repeated.

【0124】一方、取得したアドレスがベース/リミッ
ト・レジスタで定義されたアドレス領域の範囲外であれ
ば、まず、該アドレスが既にリトライFIFO211B
内に存在するかどうかを判断する(ステップS30)。
On the other hand, if the acquired address is outside the range of the address area defined by the base / limit register, first, the address has already been retried FIFO 211B.
It is determined whether or not it exists (step S30).

【0125】もし、取得したアドレスがリトライFIF
O211B内に存在すれば、一度失敗した2次側ISA
デバイスへのアクセスのリトライを意味するので、ステ
ップS24に進み、PCItoPCIブリッジ21はト
ランザクションに対してポジティブには応答せず、2次
側PCIバス40上でトランザクションが終了するのを
待機する。この結果、2次側PCItoISAブリッジ
51は、トランザクションに対してサブトラクティブに
応答して、バス・サイクルを獲得することができる。そ
して、2次側PCIバス40上のトランザクションは2
次側ISAバス50上に展開され、現実のアクセス要求
先である2次側ISAデバイスへのアクセスが遂行され
ることとなる。トランザクションが終了した後は、ステ
ップS14に復帰し、同様の処理を繰り返す。
If the acquired address is the retry FIF
If it exists in O211B, the secondary ISA that failed once
Since this means retry of access to the device, the process proceeds to step S24, where the PCI to PCI bridge 21 does not respond positively to the transaction and waits for the transaction to end on the secondary PCI bus 40. As a result, the secondary PCI to ISA bridge 51 can respond to the transaction subtractively and acquire the bus cycle. The number of transactions on the secondary PCI bus 40 is 2
The secondary ISA device, which is developed on the secondary ISA bus 50, is actually accessed. After the transaction is completed, the process returns to step S14 and the same processing is repeated.

【0126】一方、取得したアドレスがリトライFIF
O211B内に存在しなければ、PCItoPCIブリ
ッジ21は、1次側PCIバス20側へのアクセスと認
識して、トランザクションに対してポジティプに応答す
るとともに、2次側PCIバス40上のバス・サイクル
を1次側PCIバス20上に伝送する(ステップS3
2)。PCItoPCIブリッジ21がポジティプに応
答した帰結として、2次側PCItoISAブリッジ5
1は、サブトラクティブに応答する機会を失ってしま
う。
On the other hand, the acquired address is the retry FIF
If it does not exist in O211B, the PCI to PCI bridge 21 recognizes the access to the primary PCI bus 20 side, responds positively to the transaction, and waits for a bus cycle on the secondary PCI bus 40. The data is transmitted on the primary PCI bus 20 (step S3).
2). As a result of the PCI to PCI bridge 21 responding positively, the secondary side PCI to ISA bridge 5
1 loses the opportunity to respond to subtractive.

【0127】1次側PCIバス20上に伝送されたバス
・サイクルが現実に1次側PCIデバイスへのアクセス
を要求するものであれば、対応するデバイスが1次側P
CIバス20上でポジティブに応答することにより、ト
ランザクションは成功裡に終了するであろう。しかしな
がら、本当は2次側ISAデバイスへのアクセスである
にも拘らず、ベース/リミット・レジスタ211Aで定
義されたアドレス領域の範囲外という理由によりブリッ
ジ21が1次側PCIデバイスへのアクセスと錯覚して
いた場合には、1次側PCIバス21上で応答するデバ
イスがない。この場合、PCItoPCIブリッジ21
は、マスタとして動作する1次側PCIバス20上では
トランザクションをマスタ・アボートにより異常終了せ
ざるを得ない(ステップS34)。このマスタ・アボー
トは、2次側PCIデバイスのうち2次側PCItoI
SAブリッジのみがブロック領域以外へのアクセスに応
答しなければならない、ということに依拠する点に留意
されたい。
If the bus cycle transmitted on the primary PCI bus 20 actually requests access to the primary PCI device, the corresponding device is the primary P
By responding positively on the CI bus 20, the transaction will be successfully completed. However, although the access is actually to the secondary side ISA device, the bridge 21 illusion is an access to the primary side PCI device because it is outside the address area defined by the base / limit register 211A. If there is, no device responds on the primary PCI bus 21. In this case, the PCI to PCI bridge 21
Has no choice but to terminate the transaction abnormally by the master abort on the primary PCI bus 20 operating as the master (step S34). This master abort is the secondary PCI to I of the secondary PCI devices.
Note that only the SA bridge relies on having to respond to accesses outside the block area.

【0128】但し、本実施例に係るPCItoPCIブ
リッジ21は、ターゲットとして動作する2次側PCI
バス40上では、ターゲット・アボートではなく、リト
ライによりトランザクションを一時的に終了させる(ス
テップS36)。さらに、PCItoPCIブリッジ2
1は、現トランザクションのアドレス情報、コマンド情
報(すなわちメモリ・サイクルかI/Oサイクルか)を
リトライFIFO211Bの使用可能バッファの各フィ
ールドに書き込むとともに、該バッファのバリッド・フ
ラグを設定する(ステップS38)。次いで、ステップ
S14に復帰する。
However, the PCI-to-PCI bridge 21 according to this embodiment is a secondary PCI that operates as a target.
On the bus 40, the transaction is temporarily ended by the retry instead of the target abort (step S36). Furthermore, PCI to PCI bridge 2
1 writes the address information and command information of the current transaction (that is, whether it is a memory cycle or an I / O cycle) to each field of the usable buffer of the retry FIFO 211B and sets the valid flag of the buffer (step S38). . Then, the process returns to step S14.

【0129】バス・サイクルがリトライで終了したこと
に応答して、マスタである2次側PCIデバイスは、同
じトランザクションを再試行する。そして、この場合に
は、指定したアドレスがリトライFIFO211B内に
存在するため、判断ブロックS30を分岐"Y"に進み、
トランザクションが成功裡に終了することとなる。
In response to the bus cycle ending with a retry, the master secondary PCI device retries the same transaction. Then, in this case, since the designated address exists in the retry FIFO 211B, the determination block S30 is branched to “Y”,
The transaction will end successfully.

【0130】図9及び図10には、2次側PCIデバイ
ス(仮にPCIデバイス42とする)から2次側ISA
デバイス(仮にISAデバイス52とする)へのアクセ
スが行われているときの、PCIバス20,40上のト
ランザクションをタイム・チャートの形態で図解してい
る。なお、各図において、接頭辞"P_"は1次側(すな
わち"Primary")PCIバス中の信号線であることを示
し、接頭辞"S_"は2次側(すなわち"Secondary")P
CIバス中の信号線であることを示す。また、図9中で
接尾辞として上付き文字"*"が付された信号線はPCI
toPCIブリッジ21によってアサートされることを
意味し、図10中で接尾辞として上付き文字"*"が付さ
れた信号線は2次側PCItoISAブリッジ51によ
ってアサートされることを意味する。以下、各チャート
の示す動作を説明する。
9 and 10, the secondary PCI device (provisionally, the PCI device 42) is changed to the secondary ISA.
A transaction on the PCI buses 20 and 40 when a device (probably an ISA device 52) is being accessed is illustrated in the form of a time chart. In each figure, the prefix "P_" indicates a signal line in the primary side (that is, "Primary") PCI bus, and the prefix "S_" indicates the secondary side (that is, "Secondary") P.
Indicates a signal line in the CI bus. Also, in FIG. 9, signal lines with a superscript "*" as a suffix are PCI.
10 means that the signal line with a superscript "*" as a suffix in FIG. 10 is asserted by the secondary PCI to ISA bridge 51. The operation of each chart will be described below.

【0131】まず、図9を参照されたい。マスタ装置と
しての2次側PCIデバイス42は、S_FRAME#
をアサートすることによって、トランザクションの開始
を意思表示する。このとき、PCIデバイス42は、S
_AD[31:0]にアドレスを、S_C/BE[3:
0]にコマンドを、夫々伝送する。但し、このときのア
ドレスは、レジスタ211Aで定義された2次側PCI
デバイスの使用可能アドレス領域の外である。
First, please refer to FIG. The secondary PCI device 42 as the master device is S_FRAME #
Indication of the start of a transaction by asserting. At this time, the PCI device 42 uses the S
Address to _AD [31: 0] and S_C / BE [3:
0] to each command. However, the address at this time is the secondary PCI defined in the register 211A.
It is outside the usable address area of the device.

【0132】次いで、PCIデバイス42がデータの送
受可能な状態になると、S_IRDY#をアサートする
とともに、S_AD[31:0]にデータを、S_C/
BE[3:0]にバイト・イネーブル値を、夫々伝送す
る。
Next, when the PCI device 42 becomes ready to send and receive data, S_IRDY # is asserted, and data is sent to S_AD [31: 0] and S_C /
The byte enable value is transmitted to BE [3: 0], respectively.

【0133】一方、PCItoPCIブリッジ21は、
指定されたアドレスが2次側PCIデバイスの使用可能
アドレス領域外であることから、該トランザクションが
1次側PCIデバイスへのアクセス要求であると認識し
て、2次側PCIバス40上ではターゲットとしてS_
DEVSEL#をアサートし、取り敢えずバス・サイク
ルを要求する。また、PCItoPCIブリッジ21
は、1次側PCIバス20上ではマスタすなわちイニシ
エータとして同一のバス・サイクルを発生させる。すな
わち、PCItoPCIブリッジ21は、P_FRAM
E#をアサートしてトランザクションを開始するととも
に、データ送受可能になるとP_IRDY#をアサート
し、P_AD[31:0]及びP_C/BE[3:0]
には同一のアドレス/データ及びコマンド/バイト・イ
ネーブル値を伝送する。
On the other hand, the PCI to PCI bridge 21
Since the specified address is outside the usable address area of the secondary PCI device, the transaction is recognized as an access request to the primary PCI device, and as a target on the secondary PCI bus 40, S_
Assert DEVSEL # and request a bus cycle for now. In addition, the PCI to PCI bridge 21
Generates the same bus cycle on the primary PCI bus 20 as a master or initiator. That is, the PCI to PCI bridge 21 has the P_FRAM
A transaction is started by asserting E #, P_IRDY # is asserted when data can be transmitted / received, and P_AD [31: 0] and P_C / BE [3: 0].
The same address / data and command / byte enable value are transmitted to each.

【0134】しかしながら、トランザクションが1次側
PCIデバイスへのアクセス要求であるという認識は錯
覚であり、現実のターゲットはアクセス先の2次側IS
Aデバイス52を中継する2次側PCItoISAブリ
ッジ51である。言い換えれば、1次側PCIバス20
上にはトランザクションに応答するスレーブ装置が存在
しない。このため、PCItoPCIブリッジ20は、
所定時間経過後に、1次側PCIバス20上のバス・サ
イクルをマスタ・アボートにより終了せざるを得ない。
但し、PCItoPCIブリッジ21は、ターゲットと
して動作する2次側PCIバス40上では、ターゲット
・アボートではなくリトライによりバス・サイクルを一
時的に終了させる。さらに、PCItoPCIブリッジ
21は、このリトライしたバス・サイクルに係るアドレ
ス情報をリトライFIFO211Bの使用可能バッファ
の各フィールドに書き込んでおく。
However, the recognition that the transaction is an access request to the primary PCI device is an illusion, and the actual target is the secondary IS of the access destination.
It is a secondary side PCI to ISA bridge 51 that relays the A device 52. In other words, the primary PCI bus 20
There are no slave devices on top to respond to the transaction. Therefore, the PCI to PCI bridge 20
After a lapse of a predetermined time, the bus cycle on the primary PCI bus 20 must be terminated by the master abort.
However, the PCI-to-PCI bridge 21 temporarily ends the bus cycle on the secondary PCI bus 40 operating as a target by retry instead of target abort. Further, the PCI-to-PCI bridge 21 writes the address information relating to this retry bus cycle in each field of the usable buffer of the retry FIFO 211B.

【0135】次いで、図10を参照されたい。リトライ
を受けたマスタすなわち2次側PCIデバイス42は、
トランザクションを再試行すべく、S_FRAME#を
アサートする。また、PCIデバイス42は、前回と同
じアドレス及びコマンドをS_AD[31:0]及びS
_C/BE[3:0]の各々に伝送する。さらに、デー
タの送受可能な状態になると、PCIデバイス42は、
S_IRDY#をアサートするとともに、S_AD[3
1:0]及びS_C/BE[3:0]に夫々データ及び
バイト・イネーブル値を伝送する。
Reference is now made to FIG. The master that has received the retry, that is, the secondary PCI device 42,
Assert S_FRAME # to retry the transaction. Also, the PCI device 42 sends the same address and command as the previous time to S_AD [31: 0] and S_AD [31: 0].
_C / BE [3: 0]. Further, when the data can be transmitted / received, the PCI device 42
While asserting S_IRDY #, S_AD [3
1: 0] and S_C / BE [3: 0], respectively, transmitting data and byte enable values.

【0136】一方、PCItoPCIブリッジ21は、
指定されたアドレスが2次側PCIデバイスの使用可能
アドレス領域の外ではあるが、既にリトライFIFO2
11Bに同一アドレスが存在しているため、1次側PC
Iデバイスへのアクセス要求ではない認識して、該トラ
ンザクションには応答しない。
On the other hand, the PCI to PCI bridge 21
Although the specified address is outside the usable address area of the secondary PCI device, it has already been retried FIFO2.
Since the same address exists in 11B, the primary PC
Recognizing that it is not an access request to the I-device, it does not respond to the transaction.

【0137】他の2次側PCIデバイスのいずれもがポ
ジティブに応答しない結果、2次側PCItoISAブ
リッジ51に対してサブトラクティブにデコードする機
会が与えられる。すなわち、2次側PCItoISAブ
リッジ51は、サブトラクティブのタイミングでS_D
EVSEL#をアサートしてバス・サイクルを要求する
訳である。
As a result of none of the other secondary PCI devices responding positively, the secondary PCI to ISA bridge 51 is given the opportunity to subtractively decode. In other words, the secondary PCI to ISA bridge 51 uses the S_D at the subtractive timing.
That is, EVSEL # is asserted to request a bus cycle.

【0138】バス・サイクルを獲得した2次側PCIt
oISAブリッジ51は、さらにS_TRDY#をアサ
ートするとともに、バス・サイクルを変換し2次側IS
Aバス50上に伝送する。この結果、ターゲットである
2次側ISAデバイス52にトランザクションが伝達さ
れ、マスタである2次側PCIデバイス42とスレーブ
である2次側ISAデバイス52との間でデータ転送が
無事行われる運びとなる。
Secondary-side PCIt that won the bus cycle
The oISA bridge 51 further asserts S_TRDY # and converts the bus cycle to convert the secondary IS.
It is transmitted on the A bus 50. As a result, the transaction is transmitted to the secondary ISA device 52 which is the target, and the data is safely transferred between the secondary PCI device 42 which is the master and the secondary ISA device 52 which is the slave. .

【0139】E.追補 以上、特定の実施例を参照しながら、本発明について詳
解してきた。しかしながら、本発明の要旨を逸脱しない
範囲で当業者が該実施例の修正や代用を成し得ることは
自明である。すなわち、例示という形態で本発明を開示
してきたのであり、限定的に解釈されるべきではない。
本発明の要旨を判断するためには、冒頭に記載した特許
請求の範囲の欄を参酌すべきである。
E. Addendum The present invention has been described in detail above with reference to specific embodiments. However, it is obvious that those skilled in the art can modify or substitute the embodiments without departing from the scope of the present invention. That is, the present invention has been disclosed in the form of exemplification, and should not be limitedly interpreted.
In order to determine the gist of the present invention, the section of the claims described at the beginning should be taken into consideration.

【0140】[0140]

【発明の効果】以上詳記したように、本発明によれば、
複数のバスを含むデータ処理システムにおいてバス間の
データ転送を制御するための優れた方法、バス同士を相
互接続してバス間のデータ転送を可能にするための優れ
たブリッジ装置、及び複数のバスを含む優れたデータ処
理システムを提供することができる。
As described above in detail, according to the present invention,
Excellent method for controlling data transfer between buses in a data processing system including multiple buses, excellent bridging device for interconnecting buses to enable data transfer between buses, and multiple buses It is possible to provide an excellent data processing system including.

【0141】また、本発明によれば、少なくとも第1、
第2、及び第3のバスを含み、且つ、第2のバス上の装
置には所定範囲内のアドレスを割り当てるとともにそれ
以外のバス上の装置には所定範囲外のアドレスを割り当
てたデータ処理システムにおける、優れたバス間のデー
タ転送方法、バス間を接続するための優れたブリッジ装
置、及び複数のバスを含む優れたデータ処理システムを
提供することができる。
Further, according to the present invention, at least the first,
A data processing system including second and third buses, wherein devices on the second bus are assigned addresses within a predetermined range, and devices on other buses are assigned addresses outside the predetermined range. The excellent data transfer method between buses, the excellent bridge device for connecting the buses, and the excellent data processing system including a plurality of buses can be provided.

【0142】また、本発明によれば、PCItoPCI
ブリッジを介してアクセスできない装置の組合わせをな
くした、優れたバス間のデータ転送方法、バス間を接続
するためのブリッジ装置、及び複数のバスを含むデータ
処理システムを提供することができる。
Further, according to the present invention, PCI to PCI
It is possible to provide an excellent method of transferring data between buses, a bridge device for connecting between buses, and a data processing system including a plurality of buses, which eliminates a combination of devices that cannot be accessed via a bridge.

【0143】また、本発明によれば、PCIバスとIS
Aバスとが混在したバス環境を有するデータ処理システ
ムにおいて、あるバス上のバス・マスタがバス・スレー
ブに対して好適にアクセスすることができる、優れたバ
ス間のデータ転送方法、バス間を接続するための優れた
ブリッジ装置、及び複数のバスを含む優れたデータ処理
システムを提供することができる。
Further, according to the present invention, the PCI bus and IS
In a data processing system having a bus environment in which an A bus is mixed, an excellent bus-to-bus data transfer method that enables a bus master on a certain bus to suitably access a bus slave, and a connection between buses It is possible to provide an excellent data processing system including a plurality of buses and an excellent bridge device for doing so.

【0144】また、本発明によれば、他のPCIバスと
PCItoPCIブリッジによって相互接続されたPC
Iバスと、ISAバスと、PCIバスとISAバスとを
相互接続するサブトラクティブ・デコーディング・タイ
プのPCItoISAブリッジとを有するデータ処理シ
ステムにおいて、PCIバス上のマスタ装置がサブトラ
クティブに動作するスレーブ装置に対して好適にアクセ
スすることができる、優れたバス間のデータ転送方法、
バス間を接続するための優れたブリッジ装置、及び複数
のバスを含む優れたデータ処理システムを提供すること
ができる。
Further, according to the present invention, a PC interconnected with another PCI bus by a PCI to PCI bridge.
In a data processing system having an I bus, an ISA bus, and a PCI to ISA bridge of a subtractive decoding type that interconnects a PCI bus and an ISA bus, a slave device in which a master device on the PCI bus operates subtractively An excellent data transfer method between buses that can be suitably accessed to
It is possible to provide an excellent bridge device for connecting between buses and an excellent data processing system including a plurality of buses.

【0145】本発明はサブトラクティブ・デコーディン
グ方式のPCItoPCIブリッジを標準化する上で非
常に有力である、ということを充分に理解されたい。
It should be fully understood that the present invention is very effective in standardizing the PCI to PCI bridge of the subtractive decoding system.

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

【図1】図1は、本発明を実現するのに適した典型的な
パーソナル・コンピュータ(PC)100の外観構成を
示した図である。
FIG. 1 is a diagram showing an external configuration of a typical personal computer (PC) 100 suitable for implementing the present invention.

【図2】図2は、本発明を実現するのに適したパーソナ
ル・コンピュータ(PC)100の内部ハードウェア構
成を模式的に示した図である。
FIG. 2 is a diagram schematically showing an internal hardware configuration of a personal computer (PC) 100 suitable for implementing the present invention.

【図3】図3は、PCItoPCIブリッジ21の内部
構成を模式的に示した図である。
FIG. 3 is a diagram schematically showing an internal configuration of a PCI to PCI bridge 21.

【図4】図4は、PCItoPCIブリッジ21内のリ
トライFIFO211Bの構成を詳細に図解した図であ
る。
FIG. 4 is a diagram illustrating in detail a configuration of a retry FIFO 211B in the PCI to PCI bridge 21.

【図5】図5は、PCItoPCIブリッジ21の動作
特性を記述した状態遷移図である。
5 is a state transition diagram describing operating characteristics of a PCI to PCI bridge 21. FIG.

【図6】図6は、2次側PCIデバイスから2次側IS
Aデバイスへのアクセスが行われているときの、PCI
toPCIブリッジ21の動作を示したフローチャート
(その1)である。
FIG. 6 is a diagram illustrating a secondary side PCI device to a secondary side IS.
PCI when access is being made to the A device
6 is a flowchart (part 1) showing the operation of the toPCI bridge 21.

【図7】図7は、2次側PCIデバイスから2次側IS
Aデバイスへのアクセスが行われているときの、PCI
toPCIブリッジ21の動作を示したフローチャート
(その2)である。
FIG. 7 is a diagram showing a configuration of the secondary PCI device to the secondary IS.
PCI when access is being made to the A device
6 is a flowchart (part 2) showing the operation of the toPCI bridge 21.

【図8】図8は、2次側PCIデバイスから2次側IS
Aデバイスへのアクセスが行われているときの、PCI
toPCIブリッジ21の動作を示したフローチャート
(その3)である。
FIG. 8 is a diagram illustrating a secondary side PCI device to a secondary side IS.
PCI when access is being made to the A device
7 is a flowchart (part 3) showing the operation of the toPCI bridge 21.

【図9】図9は、2次側PCIデバイスから2次側IS
Aデバイスへのアクセスが行われているときの、PCI
バス20,40上のトランザクションをタイム・チャー
トの形態で示した図である。
FIG. 9 is a diagram illustrating a secondary side PCI device to a secondary side IS.
PCI when access is being made to the A device
FIG. 4 is a diagram showing transactions on buses 20 and 40 in the form of a time chart.

【図10】図10は、2次側PCIデバイスから2次側
ISAデバイスへのアクセスが行われているときの、P
CIバス20,40上のトランザクションをタイム・チ
ャートの形態で示した図である。
FIG. 10 is a diagram illustrating P when a secondary PCI device is accessing a secondary ISA device.
FIG. 6 is a diagram showing transactions on the CI buses 20 and 40 in the form of a time chart.

【図11】図11は、サブトラクティブ・デコーディン
グ方式によるPCIバス上のトランザクション(但し、
シングル・ライト動作時)を示したタイミング・チャー
トである。
FIG. 11 is a diagram showing a transaction on the PCI bus according to the subtractive decoding method (however,
7 is a timing chart showing a single write operation).

【図12】図12は、PCItoPCIブリッジの"M
emory/IO Base/Limit Regis
ter"機能を、I/Oアドレス・マップを用いて模式
的に示した図である。
FIG. 12 is a diagram showing a PCI-to-PCI bridge “M”;
memory / IO Base / Limit Regis
It is the figure which showed typically the "ter" function using the I / O address map.

【図13】図13は、PCIバスとISAバスが混在し
たPCのハードウェア構成(従来例)を模式的に示した
図である。
FIG. 13 is a diagram schematically showing a hardware configuration (conventional example) of a PC in which a PCI bus and an ISA bus are mixed.

【図14】図14は、2次側PCIデバイスから2次側
ISAデバイスにアクセス要求が起こったときの1次側
及び2次側PCIバス上のトランザクション(従来例)
を示したタイミング・チャートである。
FIG. 14 is a transaction on the primary and secondary PCI buses when an access request occurs from the secondary PCI device to the secondary ISA device (conventional example).
3 is a timing chart showing the above.

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

10…CPU、11…ホストtoPCIブリッジ、12
…L2キャッシュ、13…メイン・メモリ、20…1次
側PCIバス、21…PCItoPCIブリッジ、22
…ビデオ・コントローラ、23…ディスプレイ、24…
VRAM、25…PCMCIAコントローラ、26…P
Cカード、27…IDE HDD/CD−ROM、30
…1次側ISAバス、31…1次側PCItoISAブ
リッジ、32…I/Oコントローラ、33…FDD、3
4…KMC、35…KBD、36…マウス、37…RO
M、40…2次側PCIバス、42,43…2次側PC
Iデバイス、50…2次側ISAバス、51…2次側P
CItoISAブリッジ、52,53…2次側ISAデ
バイス、100…コンピュータ・システム(PC)。
10 ... CPU, 11 ... Host to PCI bridge, 12
... L2 cache, 13 ... Main memory, 20 ... Primary side PCI bus, 21 ... PCI to PCI bridge, 22
… Video controller, 23… Display, 24…
VRAM, 25 ... PCMCIA controller, 26 ... P
C card, 27 ... IDE HDD / CD-ROM, 30
... Primary ISA bus, 31 ... Primary PCI to ISA bridge, 32 ... I / O controller, 33 ... FDD, 3
4 ... KMC, 35 ... KBD, 36 ... Mouse, 37 ... RO
M, 40 ... Secondary PCI bus, 42, 43 ... Secondary PC
I device, 50 ... Secondary ISA bus, 51 ... Secondary P
CItoISA bridge, 52, 53 ... Secondary ISA device, 100 ... Computer system (PC).

フロントページの続き (72)発明者 庄 郁 雄 神奈川県大和市下鶴間1623番地14 日本 アイ・ビー・エム株式会社 大和事業所 内 (72)発明者 花 見 秀 信 神奈川県大和市下鶴間1623番地14 日本 アイ・ビー・エム株式会社 大和事業所 内 (56)参考文献 特開 平5−12190(JP,A) 特開 平8−339344(JP,A) (58)調査した分野(Int.Cl.7,DB名) G06F 13/36 310 G06F 13/36 510 G06F 13/12 330 G06F 13/14 320 Front page continuation (72) Inventor Ikuo Sho, 1623 Shimotsuruma, Yamato-shi, Kanagawa 14 Yamato Plant, IBM Japan, Ltd. (72) Hidenobu Hanami 1623 Shimotsuruma, Yamato, Kanagawa Prefecture 14 Japan BM Co., Ltd. Yamato Plant (56) References JP-A-5-12190 (JP, A) JP-A 8-339344 (JP, A) (58) Fields investigated (Int.Cl . 7 , DB name) G06F 13/36 310 G06F 13/36 510 G06F 13/12 330 G06F 13/14 320

Claims (8)

(57)【特許請求の範囲】(57) [Claims] 【請求項1】ホストCPUのローカル・バスとして働く
1次側PCIバス、PCIバス同士を接続するためのP
CItoPCIブリッジによって前記1次側PCIバス
と相互接続された2次側PCIバスを含み、前記2次側
PCIバス上のポジティブな2次側PCIデバイスは所
定範囲内のアドレスを使用するとともに、前記1次側P
CIバス上の1次側PCIデバイス及びサブトラクティ
ブな2次側PCIデバイスは前記所定範囲外のアドレス
を使用するデータ処理システムにおいて、バス間のデー
タ転送を制御するための方法であって、 (a)第1の2次側PCIデバイスが前記2次側PCI
バスのフレーム信号をアサートすることによりサブトラ
クティブな第2の2次側PCIデバイスに対するアクセ
ス要求をイニシエートする段階と、 (b)前記PCItoPCIブリッジが前記2次側PC
Iバスのデバイス選択信号をポジティブにアサートする
とともに前記1次側PCIバス上で該アクセス要求をイ
ニシエートする段階と、 (c)前記1次側PCIバス上の全てのPCIデバイス
が所定時間内に1次側PCIバスのデバイス選択信号を
アサートしなかったことに応答して、前記PCItoP
CIブリッジがアクセス要求先のアドレスを保持すると
ともに、リトライ形式にて2次側PCIバス上のトラン
ザクションを終了させる段階と、 (d)リトライに応答して、前記第1の2次側PCIデ
バイスがアクセス要求をリトライする段階と、 (e)アクセス要求先のアドレスが保持中のアドレスと
同一であるときには、前記PCItoPCIブリッジは
前記2次側PCIバスのデバイス選択信号をポジティブ
にアサートしない段階と、 (f)他の全ての2次側PCIデバイスがポジティブに
デバイス選択信号をアサートしなかった後に、前記第2
の2次側PCIデバイスが前記2次側PCIバスのデバ
イス選択信号をサブトラクティブにアサートする段階
と、 を含むことを特徴とするバス間のデータ転送方法。
1. A primary-side PCI bus, which acts as a local bus of a host CPU, and a P for connecting PCI buses to each other.
A secondary PCI bus interconnected with the primary PCI bus by a CItoPCI bridge, wherein a positive secondary PCI device on the secondary PCI bus uses an address within a range, and Next P
A primary PCI device and a subtractive secondary PCI device on a CI bus are methods for controlling data transfer between buses in a data processing system that uses an address outside the predetermined range. ) The first secondary side PCI device is the secondary side PCI device.
Initiating an access request to the subtractive second PCI device by asserting a frame signal on the bus; (b) the PCItoPCI bridge
Positively asserting a device selection signal on the I bus and initiating the access request on the primary PCI bus; and (c) all PCI devices on the primary PCI bus are set to 1 within a predetermined time. In response to not asserting the device selection signal of the secondary PCI bus, the PCI to P
The CI bridge holds the address of the access request destination and terminates the transaction on the secondary PCI bus in a retry format, and (d) in response to the retry, the first secondary PCI device Retrying the access request, and (e) the PCI to PCI bridge does not positively assert the device selection signal of the secondary side PCI bus when the address of the access request destination is the same as the held address, f) After all other secondary PCI devices have not positively asserted the device select signal, the second
And subtractively asserting a device selection signal of the secondary PCI bus of the secondary PCI device, the data transfer method between the buses.
【請求項2】ホストCPUのローカル・バスとして働く
1次側PCIバスと、2次側PCIバスとを相互接続さ
せるためのブリッジ装置であって、 (a)前記2次側PCIバスに接続された2次側PCI
デバイスのみが使用を許されたアドレス領域を記憶する
ための第1の記憶手段と、 (b)自らリトライにより終了させたバス・サイクルの
アドレス情報を記憶するための第2の記憶手段と、 (c)アドレスが前記第1の記憶手段で定義された2次
側PCIデバイスの使用可能アドレス領域内であるとき
にアドレス・ヒットと判断する1次側デコーディング手
段と、 (d)前記1次側デコーディング手段によるアドレス・
ヒットに応答して、前記1次側PCIバス上のバス・サ
イクルを前記2次側PCIバス上に伝送する第1の伝送
手段と、 (e)アドレスが前記第1の記憶手段で定義された2次
側PCIデバイスの使用可能アドレス領域外であって且
つ前記第2の記憶手段に存在しないときのみアドレス・
ヒットと判断する2次側デコーディング手段と、 (f)前記2次側デコーディング手段によるアドレス・
ヒットに応答して、前記2次側PCIバス上のバス・サ
イクルを前記1次側PCIバス上に伝送する第2の伝送
手段と、 を具備することを特徴とする、バス間を接続するための
ブリッジ装置。
2. A bridge device for interconnecting a primary PCI bus, which acts as a local bus of a host CPU, and a secondary PCI bus, comprising: (a) being connected to the secondary PCI bus. Secondary PCI
A first storage means for storing an address area in which only the device is permitted to use; and (b) a second storage means for storing the address information of the bus cycle ended by the retry by itself. c) primary side decoding means for judging an address hit when the address is within the usable address area of the secondary side PCI device defined by the first storage means, and (d) the primary side. Address by decoding means
First transmission means for transmitting a bus cycle on the primary side PCI bus to the secondary side PCI bus in response to a hit; and (e) an address defined by the first storage means. Only when the address is outside the usable address area of the secondary PCI device and does not exist in the second storage means,
Secondary side decoding means for judging a hit; (f) address by the secondary side decoding means
A second transmission means for transmitting a bus cycle on the secondary PCI bus to the primary PCI bus in response to a hit; and for connecting between the buses. Bridge device.
【請求項3】前記1次側デコーディング手段はサブトラ
クティブにデコーディングするとともに前記2次側デコ
ーディング手段はポジティブにデコーディングすること
を特徴とする請求項に記載の、バス間を接続するため
のブリッジ装置。
3. The bus connection according to claim 2 , wherein the primary side decoding means performs subtractive decoding and the secondary side decoding means performs positive decoding. Bridge device for.
【請求項4】ホストCPUのローカル・バスとして働く
1次側PCIバスと2次側PCIバスを含むデータ処理
システムであって、前記1次側PCIバスと前記2次側
PCIバスとが請求項に記載のブリッジ装置によって
接続されたことを特徴とする、複数のバスを含むデータ
処理システム。
4. A data processing system including a primary side PCI bus and a secondary side PCI bus that act as a local bus of a host CPU, wherein the primary side PCI bus and the secondary side PCI bus are claimed. 2. A data processing system including a plurality of buses, which is connected by the bridge device according to 2 .
【請求項5】マルチプル・バス構成のデータ処理システ
ムであって、 (a)システム全体の動作を統括するメイン・プロセッ
サと、 (b)メイン・メモリと、 (c)前記メイン・プロセッサのローカル・バスとして
接続された1次側PCIバスと、 (d)前記1次側PCIバスに接続された少なくとも1
つの1次側PCIデバイスと、 (e)2次側PCIバスと、 (f)前記1次側PCIバスと前記2次側PCIバスを
相互接続し、前記2次側PCIバスに接続された2次側
PCIデバイスのみが使用を許されたアドレス領域を記
憶するための第1の記憶手段と、自らリトライにより終
了させたバス・サイクルのアドレス情報を記憶するため
の第2の記憶手段とを含むPCItoPCIブリッジ装
置であって、前記2次側PCIバス上ではポジティブに
デコードするデコーディング手段と、前記2次側PCI
バス上において自身がリトライで終了したことによりリ
トライされたバス・サイクルについてはデコードを抑制
するデコーディング抑制手段とを含むPCI−toPC
Iブリッジ装置と、 (g)前記2次側PCIバスに接続された少なくとも1
つの2次側PCIデバイスと、 を具備することを特徴とする、複数のバスを含むデータ
処理システム。
5. A data processing system having a multiple bus structure, comprising: (a) a main processor that controls the overall operation of the system; (b) a main memory; and (c) a local processor of the main processor. A primary-side PCI bus connected as a bus, and (d) at least one connected to the primary-side PCI bus
One primary PCI device, (e) a secondary PCI bus, and (f) the primary PCI bus and the secondary PCI bus.
Secondary side interconnected and connected to the secondary PCI bus
Address area where only PCI device is allowed to use
The first storage means for remembering and ending by retrying itself
To store the address information of the completed bus cycle
And a PCI to PCI bridge device including
And is positive on the secondary PCI bus.
Decoding means for decoding, and the secondary PCI
Retried due to the fact that he / she finished the retry on the bus.
Suppress decoding for tried bus cycles
-ToPC including decoding suppressing means
An I-bridge device, and (g) at least one connected to the secondary PCI bus.
A data processing system including a plurality of buses, comprising: one secondary PCI device;
【請求項6】マルチプル・バス構成のデータ処理システ
ムであって、 (a)システム全体の動作を統括するメイン・プロセッ
サと、 (b)メイン・メモリと、 (c)前記メイン・プロセッサのローカル・バスとして
接続された第1のバスと、 (d)前記第1のバスに接続された少なくとも1つの第
1の装置と、 (e)第2のバスと、 (f)前記第1及び第2のバスを相互接続するブリッジ
であって、自身がバス・サイクルをリトライで終了した
ときにはリトライされたバス・サイクルを再度要求しな
い要求しないブリッジと、 (g)前記第2のバスに接続された少なくとも1つの第
2の装置と、を具備し、 前記ブリッジは、前記第2のバスに接続された前記第2
の装置のみが使用を許されたアドレス領域を記憶するた
めの第1の記憶手段と、自らリトライにより終了させた
バス・サイクルのアドレス情報を記憶するための第2の
記憶手段とを含むことを特徴とする、 複数のバスを含むデータ処理システム。
6. A data processing system having a multiple bus structure, comprising: (a) a main processor that controls the operation of the entire system; (b) a main memory; and (c) a local processor of the main processor. A first bus connected as a bus; (d) at least one first device connected to the first bus; (e) a second bus; (f) the first and second A bridge that interconnects the buses of (1), which does not request the retryed bus cycle again when the bus cycle ends with a retry, and (g) at least the second bus connected to the second bus. comprising one of the second device, wherein the bridge is connected to said second bus the second
Only the device in the memory stores the address area that is allowed to use.
The first storage means for me
A second for storing bus cycle address information
A data processing system including a plurality of buses, comprising: a storage means .
【請求項7】マルチプル・バス構成のデータ処理システ
ムであって、 (a)システム全体の動作を統括するメイン・プロセッ
サと、 (b)メイン・メモリと、 (c)前記メイン・プロセッサのローカル・バスとして
接続された1次側PCIバスと、 (d)前記1次側PCIバスに接続された少なくとも1
つの1次側PCIデバイスと、 (e)2次側PCIバスと、 (f)前記1次側PCIバスと前記2次側PCIバスを
相互接続するPCItoPCIブリッジであって、前記
2次側PCIバスに接続された2次側PCIデバイスの
みが使用を許されたアドレス領域を記憶するための第1
の記憶手段と、自らリトライにより終了させたバス・サ
イクルのアドレス情報を記憶するための第2の記憶手段
と、前記2次側PCIバス上ではポジティブにデコード
するデコーディング手段と、前記2次側PCIバス上に
おいて自身がリトライで終了したことによりリトライさ
れたバス・サイクルについてはデコードを抑制するデコ
ーディング抑制手段とを含むPCItoPCIブリッジ
と、 (g)前記2次側PCIバスに接続された、ポジティブ
にデコーディングするタイプの少なくとも1つの2次側
PCIデバイスと、 (h)前記2次側PCIバスに接続された、サブトラク
ティブにデコーディングするタイプの唯1つの2次側P
CIデバイスと、 を具備することを特徴とする、複数のバスを含むデータ
処理システム。
7. A data processing system having a multiple bus structure, comprising: (a) a main processor that controls the operation of the entire system; (b) a main memory; and (c) a local processor of the main processor. A primary-side PCI bus connected as a bus, and (d) at least one connected to the primary-side PCI bus
One of the primary PCI devices, a (e) and the secondary side PCI bus, (f) the primary PCI bus and PCItoPCI bridge interconnecting the secondary PCI bus, the
Of the secondary PCI device connected to the secondary PCI bus
First for storing only the address area that is allowed to use
Storage means and bus service that was terminated by retry
Second storage means for storing address information of icle
And a decoding means for positively decoding on the secondary PCI bus, and a decoding suppression for suppressing decoding for a bus cycle retried due to the fact that the device itself has completed a retry on the secondary PCI bus. A PCI-to-PCI bridge including: (g) at least one positive-decoding type secondary-side PCI device connected to the secondary-side PCI bus; and (h) connected to the secondary-side PCI bus. And only one secondary side P of the type for subtractive decoding
A CI device, and a data processing system including a plurality of buses.
【請求項8】前記サブトラクティブにデコーディングす
るタイプの2次側PCIデバイス(h)は、2次側PC
IバスにISAバスを接続するためのPCItoISA
ブリッジであることを特徴とする、請求項に記載の複
数のバスを含むデータ処理システム。
8. A secondary-side PCI device (h) of the type for subtractive decoding is a secondary-side PC.
PCI to ISA for connecting ISA bus to I bus
A data processing system including a plurality of buses according to claim 7 , wherein the data processing system is a bridge.
JP01577297A 1997-01-29 1997-01-29 Data transfer method between buses, bridge device for connecting buses, and data processing system including a plurality of buses Expired - Fee Related JP3485231B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP01577297A JP3485231B2 (en) 1997-01-29 1997-01-29 Data transfer method between buses, bridge device for connecting buses, and data processing system including a plurality of buses

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP01577297A JP3485231B2 (en) 1997-01-29 1997-01-29 Data transfer method between buses, bridge device for connecting buses, and data processing system including a plurality of buses

Publications (2)

Publication Number Publication Date
JPH10222457A JPH10222457A (en) 1998-08-21
JP3485231B2 true JP3485231B2 (en) 2004-01-13

Family

ID=11898109

Family Applications (1)

Application Number Title Priority Date Filing Date
JP01577297A Expired - Fee Related JP3485231B2 (en) 1997-01-29 1997-01-29 Data transfer method between buses, bridge device for connecting buses, and data processing system including a plurality of buses

Country Status (1)

Country Link
JP (1) JP3485231B2 (en)

Also Published As

Publication number Publication date
JPH10222457A (en) 1998-08-21

Similar Documents

Publication Publication Date Title
JP3403284B2 (en) Information processing system and control method thereof
US6226700B1 (en) Computer system with bridge logic that includes an internal modular expansion bus and a common master interface for internal master devices
US5649128A (en) Multiple bus interface adapter for connection to a plurality of computer bus architectures
US6272584B1 (en) System board with consolidated EEPROM module
US5838932A (en) Transparent PCI to PCI bridge with dynamic memory and I/O map programming
US5835784A (en) System for booting processor from remote memory by preventing host processor from configuring an environment of processor while configuring an interface unit between processor and remote memory
US5557758A (en) Bridge between two buses of a computer system that determines the location of memory or accesses from bus masters on one of the buses
US5802324A (en) Computer system with PCI repeater between primary bus and second bus
US6502156B1 (en) Controlling I/O devices independently of a host processor
US6122677A (en) Method of shortening boot uptime in a computer system
JP3251830B2 (en) PCI / ISA bridge having configuration for responding to PCI parity errors
US7000057B1 (en) Method and apparatus for adding OTG dual role device capability to a USB peripheral
JPH10187594A (en) Method and system for supporting equal access among plural pct host/bridges inside data processing system
US5832241A (en) Data consistency across a bus transactions that impose ordering constraints
US7007126B2 (en) Accessing a primary bus messaging unit from a secondary bus through a PCI bridge
US6047349A (en) System for communicating through a computer system bus bridge
US6076128A (en) Data transfer method between buses, bridge devices for interconnecting buses, and data processing system including multiple buses
US6237057B1 (en) Method and system for PCI slot expansion via electrical isolation
JPH10198629A (en) Method and device for transaction communication between two pct buses
JP2963426B2 (en) Bus bridge device and transaction forward method
US5778242A (en) Software interrupt generator for computer bus interface
US5761461A (en) Method and system for preventing peripheral component interconnect (PCI) peer-to-peer access across multiple PCI host bridges within a data processing system
US6230216B1 (en) Method for eliminating dual address cycles in a peripheral component interconnect environment
JP3485231B2 (en) Data transfer method between buses, bridge device for connecting buses, and data processing system including a plurality of buses
US5794000A (en) Method and apparatus for avoiding erroneous abort occurrences in PCI-bus systems

Legal Events

Date Code Title Description
R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

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

Free format text: PAYMENT UNTIL: 20071024

Year of fee payment: 4

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

Free format text: PAYMENT UNTIL: 20081024

Year of fee payment: 5

LAPS Cancellation because of no payment of annual fees