JPH10269169A - コンピュータシステムおよびバストランザクション制御方法 - Google Patents

コンピュータシステムおよびバストランザクション制御方法

Info

Publication number
JPH10269169A
JPH10269169A JP7518397A JP7518397A JPH10269169A JP H10269169 A JPH10269169 A JP H10269169A JP 7518397 A JP7518397 A JP 7518397A JP 7518397 A JP7518397 A JP 7518397A JP H10269169 A JPH10269169 A JP H10269169A
Authority
JP
Japan
Prior art keywords
bus
transaction
access
time
pci
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.)
Pending
Application number
JP7518397A
Other languages
English (en)
Inventor
Shinji Kunishige
伸治 国重
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.)
Toshiba Corp
Original Assignee
Toshiba 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 Toshiba Corp filed Critical Toshiba Corp
Priority to JP7518397A priority Critical patent/JPH10269169A/ja
Publication of JPH10269169A publication Critical patent/JPH10269169A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Bus Control (AREA)

Abstract

(57)【要約】 【課題】ディレイドトランザクションにおいて、リトラ
イによる無駄なバスアクセスの発生を低減する。 【解決手段】PCIバス2とISAバス3を繋ぐPCI
−ISAブリッジ15には、PCIバス2上のトランザ
クションで指定された低速ISAデバイスのアクセスに
要する時間を予測し、その予測時間をリトライまでのデ
ィレイドタイム値として生成するディレイドタイム生成
回路160が設けられている。ディレイドタイム生成回
路160で生成されたディレイドタイム値は、リトライ
応答時にPCIバスマスタに通知される。ディレイドタ
イム値だけ経過した後、再びそのPCIバスマスタによ
ってトランザクションがリトライされる。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】この発明はコンピュータシス
テムおよびバストランザクション制御方法に関し、特に
2つのバス間を繋ぐブリッジ装置を有するコンピュータ
システムおよびそのコンピュータシステムで使用される
バストランザクション制御方法に関する。
【0002】
【従来の技術】従来、パーソナルコンピュータに使用さ
れるシステムバスとしては、ISA(Industry
Standard Architecture)バス
やEISA(Extended ISA)バスが主流で
あった。最近では、データ転送速度の高速化や、プロセ
ッサに依存しないシステムアーキテクチャの構築のため
に、PCI(Peripheral Componen
t Interconnect)バスが採用され始めて
いる。
【0003】PCIバスにおいては、全てのデータ転送
はブロック転送を基本としており、これら各ブロック転
送はバースト転送を用いて実現されている。これによ
り、PCIバスでは、最大133Mバイト/秒(データ
バスが32ビット幅の時)のデータ転送レートを実現で
きる。したがって、PCIバスを採用すると、I/Oデ
バイス間、およびシステムメモリとI/Oデバイスとの
間のデータ転送などを高速に行うことが可能となり、シ
ステム性能を高めることができる。
【0004】また、PCIバスを採用したシステムで
は、バス間を接続するブリッジ装置が設けられている。
ブリッジ装置としては、CPUのプロセッサバスとPC
Iバス間を接続するホスト−PCIブリッジ、2つのP
CIバス間を接続するPCI−PCIブリッジ、PCI
バスとISAバス間を接続するPCI−ISAブリッジ
などがある。
【0005】これらブリッジ装置によって隔てられた2
つのバスが同時に別々のデータ転送を行うというコンカ
レント処理を行うための仕組みを実現することにより、
より高いシステムスループットを得ることが可能とな
る。特に、PCIバスとそれよりも低速のISAバス間
をブリッジ装置で接続した場合には、それら2つのバス
間のコンカレント処理を行うことは重要である。そこ
で、PCIバス仕様においては、ディレイドトランザク
ションと称するメカニズムが提供されている。以下、図
8を参照してそのディレイドトランザクションの仕組み
について説明する。
【0006】図8(a)は、ディレイドトランザクショ
ンを使用しない通常のトランザクションの一例であり、
PCIバス上のバスマスタAがPCI−ISAブリッジ
を介してISAバス上の低速デバイスにアクセスする場
合の様子を示している。ここで、図中、AはPCIバス
上のトランザクションの開始を示し、TはPCIバス上
のトランザクションの正常終了を示している。
【0007】PCIバス上のバスマスタAは、ISAバ
ス上の低速デバイスに対するアクセスが終了するまでP
CIバスを専有し続ける。ISAバス上の低速デバイス
に対するアクセスが終了するまでの比較的長い期間、P
CIバス上の他のマスタBはPCIバスを使用すること
ができない。これは、システムの性能低下を引き起こす
原因となる。
【0008】図8(b)は、ディレイドトランザクショ
ンを利用してPCIバスとISAバス上で同時に異なる
データ転送が行われる様子を示している。図中、RはP
CIバス上のトランザクションのリトライ終了を示して
いる。
【0009】すなわち、PCIバス上のバスマスタAが
ISAバス上の低速デバイスをアクセスするためのトラ
ンザクションを発行すると、PCI−ISAブリッジ
は、フロントエンド(PCIバス)側の処理としてPC
Iバス上のトランザクションに対してリトライ応答し、
同時に、バックエンド(ISAバス)側ではPCIバス
からのトランザクションをISAバス上に展開する。P
CIバス上のバスマスタAは、PCI−ISAブリッジ
からリトライ応答を受け取ると、現在のバストランザク
ションを終結してPCIバスを一旦開放し、そして、あ
る時間(ディレイドタイム)経過後、リトライ終了され
たトランザクションを再度発行する。この間、PCIバ
スマスタBはPCIバスを使用することができる。
【0010】したがって、PCIバスマスタBによるP
CIバスアクセスとPCIバスマスタAによるISAバ
ス上のアクセスがコンカレント動作されることになる。
このようなディレイドトランザクションを行うことによ
り、通常のトランザクションよりもPCIバスの使用効
率を向上させることができる。
【0011】しかし、従来では、トランザクションをリ
トライするまでの待ち時間であるディレイドタイムの値
はシステムで固定的に決められているため、ISAバス
上のアクセスが終了する前にバスマスタAによってトラ
ンザクションがリトライされる場合がある。この場合、
そのトランザクションに対しても再びリトライ応答が返
され、そのトランザクションは無駄なPCIバスアクセ
スとなる。特に、PCIバス上の32ビットアクセスを
ISAバス上の連続した4回の8ビットアクセスに展開
する場合には、ISAバス上のアクセスが完了するまで
に多くの時間を要するため、リトライによる無駄なPC
Iバスアクセスが多発されることになる。
【0012】
【発明が解決しようとする課題】上述したように、従来
では、トランザクションをリトライするまでの待ち時間
であるディレイドタイムの値がシステムで固定的に決め
られており、これが原因で、リトライによる無駄なPC
Iバスアクセスが発生されるという問題がある。
【0013】この発明はこのような点に鑑みてなされた
ものであり、トランザクションをリトライするまでの待
ち時間であるディレイドタイムの値をデバイスアクセス
に要する時間に応じて動的に設定できるようにし、リト
ライによる無駄なバスアクセスの発生を低減することが
可能なコンピュータシステムおよびバストランザクショ
ン制御方法を提供することを目的とする。
【0014】
【課題を解決するための手段】この発明は、第1および
第2のバスと、これら第1および第2のバス間に接続さ
れ、前記第1および第2のバス間でトランザクションを
相互に伝達するブリッジ装置とを含むコンピュータシス
テムにおいて、前記ブリッジ装置は、前記第1バス上の
バスマスタデバイスから発行される前記第2バス上のデ
バイスをターゲットとする第1トランザクションに応答
して、その第1トランザクションを所定の待ち時間経過
後にリトライさせるためのリトライ要求を前記バスマス
タデバイスに返送して前記第1バストランザクションを
終結させるリトライ応答手段と、前記第1トランザクシ
ョンに応答して、前記第2のバス上のデバイスをアクセ
スするための第2トランザクションを前記第2のバス上
に発行して前記第2のバス上のデバイスに対するアクセ
スを開始するデバイスアクセス手段と、このデバイスア
クセス手段による前記第2のバス上のデバイスに対する
アクセスが完了するまでに要する時間を予測する予測手
段とを具備し、前記リトライ応答手段は、前記予測手段
によって予測された時間経過後に前記第1トランザクシ
ョンがリトライされるように、前記リトライ要求を返送
する時、前記リトライまでの待ち時間として前記予測時
間を前記バスマスタデバイスに指示する待ち時間指示手
段を含むことを特徴とする。
【0015】このコンピュータシステムにおいては、第
1バス上のバスマスタデバイスから第2バス上のデバイ
スをターゲットとする第1トランザクションが発行され
ると、ブリッジ装置は、その第1トランザクションに対
してリトライ応答を返すと共に、第2バス上のデバイス
をアクセスするための第2トランザクションを開始す
る。リトライ応答時には、ブリッジ装置は、第2トラン
ザクションの完了までに要する時間を予測手段によって
予測し、その予測時間を、リトライまでの待ち時間とし
てバスマスタデバイスに指示する。これにより、予測時
間経過後に第1トランザクションがリトライされるよう
になり、リトライによる無駄なバスアクセスの発生を低
減することが可能となる。
【0016】また、好ましくは、待ち時間指示手段は、
第1バスに定義されたコマンド/バイトイネーブル信号
線を介して、前記予測時間をバスマスタデバイスに通知
することを特徴とする。コマンド/バイトイネーブル信
号線は、本来、トランザクションを開始したバスマスタ
によってのみ駆動されるものであるが、その駆動は、通
常、ターゲットデバイスによるリトライ応答がなされる
前に終了される。したがって、ブリッジ装置がリトライ
応答する時にはそのコマンド/バイトイネーブル信号線
は既に未使用状態であるので、このコマンド/バイトイ
ネーブル信号線を用いることにより、専用の信号線を使
用することなく予測時間をバスマスタデバイスに通知す
ることができる。
【0017】また、好ましくは、待ち時間指示手段は、
第1バス上のバスマスタデバイスとブリッジ装置間に設
けられたサイドバンド信号線を介して、予測時間をバス
マスタデバイスに通知することを特徴とする。このよう
なサイドバンド信号線を利用することにより、第1バス
上のトランザクションプロトコルを何等変更することな
く、予測時間をバスマスタデバイスに通知することがで
きる。
【0018】また、予測手段には、第2のバス上のデバ
イスそれぞれについてそのデバイスの単位データ転送幅
とその単位データ転送に要するアクセス時間とを示すテ
ーブルを設け、前記テーブルを参照して第1トランザク
ションによって指定されたデバイスに対応する単位デー
タ転送幅とその単位データ転送に要するアクセス時間を
検出し、その検出結果と前記トランザクションで指定さ
れたデータ転送幅とに基づいて、前記トランザクション
で指定されたデバイスに対するアクセス開始からその完
了までに要する総時間を前記予測時間として決定するこ
とが好ましい。これにより、例えば、第1トランザクシ
ョンで指定されたデータ転送幅が32ビットで、アクセ
ス対象のデバイスが8ビットデバイスである場合には、
その8ビット転送に有する時間の4倍が予測時間として
決定される。したがって、バスマスタからのトランザク
ションの種類とターゲットデバイスの種類との関係に従
って正確なアクセス時間を予測することができる。
【0019】また、より好ましくは、前記予測手段は、
前記デバイスアクセス手段によって実行されるアクセス
動作の進行状況に基づいて前記総時間の値を減少するカ
ウンタ手段をさらに備えることを特徴とする。これによ
り、第1トランザクションによって指定されたデバイス
に対応するアクセス動作中に前記第1トランザクション
がリトライされたとき、前記待ち時間指示手段は、その
時の前記カウンタ手段のカウント値を前記アクセスに要
する時間として前記バスマスタに指示することができ
る。よって、アクセス動作の進行状況に基づいてリトラ
イまでの待ち時間を動的に変更することが可能となる。
【0020】
【発明の実施の形態】以下、図面を参照してこの発明の
実施形態を説明する。図1には、この発明の一実施形態
に係わるコンピュータシステムの構成が示されている。
このコンピュータシステムは、ノートブックタイプまた
はラップトップタイプのポータブルパーソナルコンピュ
ータであり、そのシステムボード上には3種類のバス、
つまりプロセッサバス1、内部PCIバス2、および内
部ISAバス3が配設されており、またこのポータブル
パーソナルコンピュータ本体のDSコネクタに接続可能
なドッキングステーション(拡張ユニット)内には、外
部PCIバス4と外部ISAバス5が配設されている。
【0021】システムボード上には、CPU11、ホス
ト/PCIブリッジ装置12、システムメモリ13、各
種PCIマスターデバイス14、内部PCI−ISAブ
リッジ装置15、PCI−DS(DS:ドッキングステ
ーション)ブリッジ装置16、PCカードコントローラ
17、拡張I/Oデコーダ18などが設けられている。
また、ドッキングステーション内には、DS−PCI/
ISAブリッジ装置20、PCI拡張カードを装着でき
るPCI拡張スロット41,42、ISA拡張カードを
装着できるISA拡張スロット51,52が設けられて
いる。
【0022】CPU11は、例えば、米インテル社によ
って製造販売されているマイクロプロセッサ“Pent
ium”などによって実現されている。このCPU11
の入出力ピンに直結されているプロセッサバス1は、6
4ビット幅のデータバスを有している。
【0023】メインメモリ13は、オペレーティングシ
ステム、デバイスドライバ、実行対象のアプリケーショ
ンプログラム、および処理データなどを格納するメモリ
デバイスであり、複数のDRAMによって構成されてい
る。このメインメモリ13は、32ビット幅または64
ビット幅のデータバスを有する専用のメモリバスを介し
てホスト−PCIブリッジ装置12に接続されている。
メモリバスのデータバスとしてはプロセッサバス1のデ
ータバスを利用することもできる。この場合、メモリバ
スは、アドレスバスと各種メモリ制御信号線とから構成
される。
【0024】ホスト/PCIブリッジ装置12は、プロ
セッサバス1と内部PCIバス2との間を繋ぐブリッジ
LSIであり、内部PCIバス2のバスマスタの1つと
して機能する。このホスト/PCIブリッジ装置12
は、プロセッサバス1と内部PCIバス2との間で、デ
ータおよびアドレスを含むバスサイクルを双方向で変換
する機能、およびメモリバスを介してシステムメモリ1
3をアクセス制御する機能などを有している。このホス
ト/PCIブリッジ装置12内には、プロセッサバス1
と内部PCIバス2のバスサイクルの同期化のためのバ
ッファが設けられている。
【0025】内部PCIバス2はクロック同期型の入出
力バスであり、内部PCIバス2上の全てのサイクルは
PCIバスクロックに同期して行なわれる。PCIバス
クロックの周波数は最大33MHzである。内部PCI
バス2は、時分割的に使用されるアドレス/データバス
を有している。このアドレス/データバスは、32ビッ
ト幅である。
【0026】PCIバス2上のデータ転送サイクルは、
アドレスフェーズとそれに後続する1以上のデータフェ
ーズとから構成される。アドレスフェーズにおいてはア
ドレス、および転送タイプが指定され、データフェーズ
では8ビット、16ビット、24ビットまたは32ビッ
トのデータが出力される。
【0027】PCIマスターデバイス14は、ホスト/
PCIブリッジ装置12と同様にPCIバス2のバスマ
スタの1つであり、イニシエータまたはターゲットとし
て動作する。このPCIマスターデバイス14として実
現されるデバイスは、例えばグラフィクスコントローラ
などである。
【0028】内部PCI−ISAブリッジ装置15は、
内部PCIバス2と内部ISAバス3との間を繋ぐブリ
ッジLSIである。内部ISAバス3には、BIOS
ROM31、リアルタイムクロック(RTC)32、キ
ーボードコントローラ(KBC)33、HDD34、I
/Oポートコントローラ35などが接続されている。
【0029】内部PCI−ISAブリッジ装置15に
は、PCIバスアービタ(PBA)151、PCIイン
タフェース(PCI I/F)152、内部デコーダ1
53、ISAインターフェース(ISA I/F)15
4、割り込みコントローラ(PIC)155、DMAコ
ントローラ(DMAC)156、システムタイマ(PI
T)157、SMI発生ロジック158、コンフィグレ
ーションレジスタ群(CONFIG.REG)159、
およびディレイドタイム生成回路160などが内蔵され
ている。
【0030】PCIバスアービタ(PBA)151は、
内部PCIバス2に結合される全てのバスマスタ間でP
CIバス2の使用権の調停を行う。この調停には、バス
マスタデバイス毎に1ペアずつ割り当てられる内部PC
Iバス2上の信号線(バスリクエスト信号REQ#線、
グラント信号GNT#線)が用いられる。
【0031】バスリクエスト信号REQ#は、それに対
応するデバイスが内部PCIバス2の使用を要求してい
ることをPCIバスアービタ(PBA)151に通知す
るための信号である。グラント信号GNT#は、バスリ
クエスト信号REQ#を発行したデバイスに、バス使用
を許可することを通知する信号である。
【0032】PCIバスアービタ(PBA)151に
は、内部PCIバス2上の全てのバスリクエスト信号R
EQ#線およびグラント信号GNT#線が接続されてお
り、バス使用権の調停はそのPCIバスアービタ(PB
A)151によって集中的に制御される。
【0033】PCIインタフェース152は、内部PC
Iバス152との間でアドレス、データ、コマンド、お
よび各種ステータス信号の授受を行なう。ステータス信
号にはデバイスセレクト信号(DEVSEL#)も含ま
れており、PCIインタフェース152は、内部デコー
ダ153によってISAデバイスに対するアクセスが検
出された時、DEVSEL#をアクティブにして、PC
Iバストランザクションに応答する。DEVSEL#
は、PCI−ISAブリッジ15がPCIバス2上で実
行されたトランザクションのターゲットとして選択され
たことを、そのトランザクションを開始したイニシエー
タに通知するための信号である。
【0034】また、PCIインタフェース152は、前
述のディレイドトランザクションのためのリトライ応答
をPCIバスマスタに返送する機能を有している。この
リトライ応答は、PCIバス2上に定義されたターゲッ
トレディー信号(TRDY#)およびストップ信号(S
TOP#)を用いて行われる。すなわち、リトライ応答
時は、TRDY#がデアサートされ、STOP#がアサ
ートされる。これにより、PCIバスマスタによる現在
のトランザクションが一旦終結され、所定の時間経過後
に再び同一トランザクションがリトライされる。また、
PCIインタフェース152は、リトライ応答時に、リ
トライまでの待ち時間を示すディレイドタイム値をPC
Iバスマスタに通知する機能を有する。この通知には、
PCIバス2上に定義されたコマンド/バイトイネーブ
ル信号(C/BE#[3:0])が利用される。
【0035】すなわち、コマンド/バイトイネーブル信
号は、アドレスフェーズにおいてはトランザクションタ
イプ(リード、ライト、I/Oアクセスサイクル、メモ
リアクセスサイクルなど)を示し、データフェーズにお
いてはデータ転送に使用する有効バイト位置を示すため
に使用されるものであり、本来、マスタデバイスによっ
てのみ駆動されるものである。このコマンド/バイトイ
ネーブル信号はターゲットがトランザクションタイプと
有効バイト位置を認識した後は未使用となる。このた
め、本実施形態では、リトライ応答時にはコマンド/バ
イトイネーブル信号が未使用であることに着眼し、その
未使用となったコマンド/バイトイネーブル信号を、P
CI−ISAブリッジ装置15からPCIバスマスタへ
のディレイタイム値の通知に利用している。
【0036】内部デコーダ153は、PCI−ISAブ
リッジ15内蔵のデバイス(割り込みコントローラ15
5、DMAコントローラ156、システムタイマ15
7、SMI発生ロジック158、コンフィグレーション
レジスタ群159)、および内部ISAバス3上のテバ
イス(BIOS ROM31、リアルタイムクロック3
2、キーボードコントローラ33、HDD34、I/O
ポートコントローラ35など)それぞれを選択するため
のアドレスデコードを行なう。内部デコーダ153によ
ってデコードされるのは、PCIバス2上に出力される
I/Oアドレス、メモリアドレス、コンフィグレーショ
ンアドレスである。
【0037】ISAインターフェース154は、内部I
SAバス3上のメモリおよびI/Oをアクセスするため
のISAバスサイクルを実行する。コンフィグレーショ
ンレジスタ群159は、コンフィグレーションサイクル
でリード/ライト可能なレジスタ群であり、ここには内
部デコーダ153などを制御するための制御情報が例え
ばシステムパワーオン時にセットされる。
【0038】ディレイドタイム生成回路160は、リト
ライ終了されたPCIバス2上のトランザクションが再
度実行されるまでの待ち時間(ディレイドタイム)を動
的に設定するために使用されるものであり、PCIバス
2上のトランザクションで指定されたISAデバイスに
対するアクセスが完了するまでに要する時間を予測し、
その予測時間をディレイドタイム値として生成する。こ
のディレイドタイム生成回路160によって生成された
ディレイドタイム値は、リトライ応答時にPCIバス2
上のバスマスタに通知される。
【0039】PCI−DSブリッジ装置16は、内部P
CIバス2と、DSコネクタを介してコンピュータ本体
からドッキングステーションに導出されるドッキングバ
ス6とを繋ぐブリッジLSIであり、バスサイクルを双
方向で伝達する。ドッキングバス6はPCIバス相当の
信号線群を含む一種のPCIバスである。
【0040】ドッキングバス6はPCI−DSブリッジ
装置16のセカンダリーPCIバスであり、内部PCI
バス2はPCI−DSブリッジ装置16のプライマリー
PCIバスである。このPCI−DSブリッジ装置16
内には、内部PCIバス2とドッキングバスとのバスサ
イクルの同期化のためのバッファなどが内蔵されてい
る。また、PCI−DSブリッジ装置16は、ドッキン
グステーションとコンピュータ本体とのホットドッキン
グ/ホットアンドッキング時に内部PCIバス2とドッ
キングバス6との間を分離するための機構としても利用
されており、このPCI−DSブリッジ装置16によっ
て活線挿抜による不具合の発生を防止する事ができる。
【0041】PCカードコントローラ17は、PCIバ
スマスタの1つであり、PCMCIA/Cardバス仕
様のカードスロット61,62に装着されるPCカード
を制御する。
【0042】DS−PCI/ISAブリッジ装置20
は、DSコネクタを介してコンピュータ本体からドッキ
ングステーションに導出されるドッキングバス6と外部
PCIバス4および外部ISAバス5とを繋ぐブリッジ
LSIである。このDS−PCI/ISAブリッジ装置
20は、PCカードコントローラ17などと同じくPC
Iバスマスタの1つである。
【0043】DS−PCI/ISAブリッジ装置20に
は、外部PCIバスブリッジ(EPBB;Extern
al PCI Bus Bridge)201、外部I
SAバスブリッジ(EIBB;External IS
A Bus Bridge)202、およびローカルバ
スアービタ(LBA;Local Bus Arbit
er)203が設けられている。LBA203は、外部
PCIバス4上のPCI拡張カードからのバス使用要求
と、外部ISAバス5上のISA拡張カードからのバス
使用要求とを調停する。
【0044】次に、図2乃至図4を参照して、ディレイ
ドタイム生成回路160を使用して行われる本実施形態
のディレイドトランザクションについて説明する。図2
は、図1のシステムの中からディレイドトランザクショ
ンに使用される要素だけを抽出して示したものであり、
PCIバスマスタとして動作するホスト−PCIブリッ
ジ12およびPCIマスタ14にはそれぞれリトライウ
エイトカウンタ121,141が設けられている。これ
ら各リトライウエイトカウンタ121,141はリトラ
イまでの経過時間を計数するためのダウンカウンタであ
り、ここには、PCI−ISAブリッジ15から通知さ
れるディレイドタイムの値が初期設定される。そして、
その初期設定されたカウンタ値はPCIクロック毎にデ
クリメントされ、カウンタ値がゼロになった時に、トラ
ンザクションリトライのためのシーケンスが開始され
る。
【0045】図3は、ホスト−PCIブリッジ12(マ
スタA)がISAバス3上のデバイスをターゲットとす
るトランザクションを開始した場合におけるディレイド
トランザクション全体のタイミングチャートであり、ま
た図4はそのときのPCIバスサイクルを示している。
【0046】なお、図3において、AはPCIバス上の
トランザクションの開始を示し、TはPCIバス上のト
ランザクションの正常終了を示している。また、RはP
CIバス上のトランザクションのリトライ終了を示して
いる。
【0047】以下、これら図3および図4を参照して、
本実施形態のディレイドトランザクションの動作につい
て具体的に説明する。ホスト−PCIブリッジ12つま
りバスマスタAは、図4に示されているように、PCI
バス2上のフレーム信号(FRAME#)、アドレス
(AD[31:0])、コマンド/バイトイネーブル信
号(C/BE[3:0]#)をドライブすることによ
り、ISAバス3上の低速デバイスをアクセスするため
のトランザクション(アクセス1)を開始する。PCI
−ISAブリッジ15は、そのトランザクションで指定
されたターゲットが自身の下のISAバス3上のデバイ
スであることを認識すると、DEVSEL#をアサート
する。ホスト−PCIブリッジ12は、DEVSEL#
をサンプリングすると同時に、C/BE[3:0]#の
ドライブを止める。
【0048】PCI−ISAブリッジ15は、PCIバ
ス2上のトランザクションで指定されたデバイスに対す
るアクセスが完了するまでに要する時間をターゲットデ
バイスの種類とトランザクションの種類とに基づいてデ
ィレイドタイム生成回路160によって予測する。そし
て、フロントエンド(PCIバス)側の処理としてPC
Iバス2上のトランザクションに対してリトライ応答す
る時に、コマンド/バイトイネーブル信号C/BE
[3:0]#をドライブして、予測によって得られた時
間をリトライまでのディレイドタイム(ディレイドタイ
ム1)としてホスト−PCIブリッジ12に通知する。
このリトライ応答と同時に、PCI−ISAブリッジ1
5は、バックエンド(ISAバス)側の処理としてPC
Iバス2からのトランザクションをISAバス2上に展
開して、ISAデバイスのアクセスを開始する。
【0049】ホスト−PCIブリッジ12は、PCI−
ISAブリッジ15からリトライ応答を受け取ると、デ
ィレイタイムをリトライウエイトカウンタ124にセッ
トした後、現在のバストランザクションを終結してPC
Iバス2を一旦開放する。そして、リトライウエイトカ
ウンタ124のカウンタ値がゼロになると、PCIバス
2の使用権を獲得した後に、リトライ終了されたトラン
ザクションを再度発行する。この間、PCIバスマスタ
B(PCIマスタ14)は図3に示されているようにP
CIバス2を使用することができる。また、ホスト−P
CIブリッジ12からトランザクションが再発行された
ときには、既にISAバス3上のデバイスに対するアク
セスは完了しているので、図3に示されているようにそ
のトランザクションはリトライされずに正常終了され
る。
【0050】次に、図5を参照して、PCI−ISAブ
リッジ15に設けられているディレイドタイム生成回路
160周辺のハードウェア構成について説明する。図5
に示されているように、PCI−ISAブリッジ15に
は、前述のPCIインターフェース152、デコーダ1
53、ISAインターフェース154、ディレイドタイ
ム生成回路160に加え、ISAバスシーケンサ30
1、およびディレイドタイムテーブル302が設けられ
ている。
【0051】ISAバスシーケンサ301は、デコーダ
153からのデコード結果で与えられるアクセス対象デ
バイスのアドレス、データ転送タイプ(リード/ライ
ト)、データ転送幅に基づいて、ISAインターフェー
スによって実行されるバスサイクルを制御するものであ
り、そのバスサイクルの進行状況を管理している。
【0052】ディレイドタイムテーブル302には、I
SAバス3上のデバイスそれぞれについてのそのデバイ
スの種類(8ビットデバイス、16ビットデバイス)お
よびそのデバイスに対する1回のバスサイクルに要する
アクセス時間が登録されている。このディレイドタイム
テーブル302は、デコーダ153からのデコード結果
で与えられるアクセス対象デバイスのアドレスをインデ
ックスとして検索され、アクセス対象のデバイスの種類
とそのアクセス時間がディレイドタイム生成回路160
に入力される。また、ディレイドタイム生成回路160
には、デコーダ153からデータ転送幅も入力され。デ
ィレイドタイム生成回路160は、これら入力値に基づ
いて、PCIバスマスタによって指定されたトランザク
ションに対応するISAサイクルの実行に要する総時間
を予測する。例えば、PCIバスマスタからのトランザ
クションで指定されたデータ転送幅が32ビットで、ア
クセス対象のデバイスが8ビットデバイスである場合に
は、その8ビット転送に有する時間の4倍が予測時間と
して決定される。したがって、バスマスタからのトラン
ザクションの種類とターゲットデバイスの種類との関係
に従って正確なアクセス時間を予測することができる。
【0053】また、ディレイドタイム生成回路160に
は、予測によって得られたアクセス時間を、ISAバス
シーケンサ301から与えられる現在のISAサイクル
の進行状況に基づいてデクリメントするカウンタが設け
られており、そのカウンタ値がディレイドタイムとして
PCIバスマスタに通知される。この構成により、例え
ば、ISAバスサイクルが完了する前にトランザクショ
ンがリトライされたときは、その時のカウント値、つま
りISAバスサイクルが完了するまでの残り時間をディ
レイドタイムとしてPCIバスマスタに指示することが
できる。よって、アクセス動作の進行状況に基づいてリ
トライまでの待ち時間を動的に変更することが可能とな
る。
【0054】図6には、同一トランザクションに対する
リトライ応答でディレイドタイムが動的に変更されてい
く様子が示されている。すなわち、PCIバスマスタA
が低速ISAデバイスをアクセスするためのトランザク
ションを発行すると、リトライ応答時にディレイドタイ
ム値“0020h”が通知される。PCIバスマスタA
のリトライウエイトカウンタの値が“0000h”にな
ると、PCIバスマスタAはPCIバス2の使用権を得
た後に再度トランザクションを発行する。このとき、I
SAデバイスに対するアクセスは進行しているため、そ
のトランザクションに対するリトライ応答では、ディレ
イドタイム値“0008h”が通知される。この後、P
CIバスマスタAのリトライウエイトカウンタの値が
“0000h”になると、PCIバスマスタAはPCI
バス2の使用権を得た後に再度トランザクションを発行
し、今度は、そのトランザクションが正常終了される。
ここでは、運悪く無駄なリトライサイクルが1回発生し
たトランザクション状況を示しているが、この場合で
も、2度目のリトライまでの待ち時間の値を小さくする
ことができる。
【0055】図7には、コマンド/バイトイネーブル信
号線ではなく、サイドバンド信号線を用いてディレイド
タイムを通知する場合の構成例が示されている。図7に
示されているように、ホスト−PCIブリッジ12およ
びPCIマスタ14とPCI−ISAブリッジ15間に
はサイドバンド信号線100が設けられている。このサ
イドバンド信号線100は、PCI仕様において定めら
れたバス以外の他の専用の信号線であり、PCI仕様に
おいてはこのサイドバインド信号を独自のバス制御の実
現のために用いることが許されている。リトライ応答時
に、このサイドバンド信号線100を介してディレイド
タイム値をリトライ応答対象のバスマスタに通知するこ
とにより、PCI仕様で定義されたコマンド/バイトイ
ネーブル信号のプロトコルを何等変えることなく、本実
施形態のダイナミックディレイドトランザクションを実
現できる。
【0056】なお、以上の説明では、PCIバスマスタ
がPCI−ISAブリッジ15を経由してISAデバイ
スをアクセスする場合を例にとって説明したが、リトラ
イ応答時にアクセス時間を予測してそれをディレイドタ
イムとして通知するという本実施形態のダイナミックデ
ィレイドトランザクションのための仕組みは、PCI−
PCIブリッジや、各種I/Oデバイスを制御するため
にPCIバスに接続されたI/Oコントローラなどに適
用することもできる。
【0057】
【発明の効果】以上説明したように、この発明によれ
ば、トランザクションをリトライするまでの待ち時間で
あるディレイドタイムの値をデバイスアクセスに要する
時間に応じて動的に設定できるようになり、リトライに
よる無駄なバスアクセスの発生を低減することが可能と
なる。
【図面の簡単な説明】
【図1】この発明の一実施形態に係るコンピュータシス
テム全体の構成を示すブロック図。
【図2】同実施形態のコンピュータシステムに適用され
るダイナミックディレイドトランザクションの仕組みを
説明するための図。
【図3】同実施形態のコンピュータシステムに適用され
るダイナミックディレイドトランザクションの動作を示
すタイミングチャート。
【図4】同実施形態のコンピュータシステムに適用され
るダイナミックディレイドトランザクションで使用され
るPCIバスサイクルを示すタイミングチャート。
【図5】同実施形態のコンピュータシステムに設けられ
たPCI−ISAブリッジの構成を示すブロック図。
【図6】図5のPCI−ISAブリッジを使用した場合
におけるダイナミックディレイドトランザクションの動
作を示すタイミングチャート。
【図7】同実施形態のコンピュータシステムにおいてサ
イドバンド信号線を用いてディレイドタイムを通知する
場合の構成例を示すブロック図。
【図8】従来の典型的なディレイドトランザクションを
説明するための図。
【符号の説明】
1…プロセッサバス、2…内部PCIバス、4…外部P
CIバス、6…ドッキングバス、11…CPU、15…
PCI−ISAブリッジ、16…PCI−DSブリッジ
16、20…DS−PCI/ISAブリッジ、201…
外部PCIバスブリッジ(EPBB)、121,141
…リトライウエイトカウンタ、160…ディレイドタイ
ム生成回路、301…ISAバスシーケンサ、302…
ディレイドタイムテーブル。

Claims (9)

    【特許請求の範囲】
  1. 【請求項1】 第1および第2のバスと、これら第1お
    よび第2のバス間に接続され、前記第1および第2のバ
    ス間でトランザクションを相互に伝達するブリッジ装置
    とを含むコンピュータシステムにおいて、 前記ブリッジ装置は、 前記第1バス上のバスマスタデバイスから発行される前
    記第2バス上のデバイスをターゲットとする第1トラン
    ザクションに応答して、その第1トランザクションを所
    定の待ち時間経過後にリトライさせるためのリトライ要
    求を前記バスマスタデバイスに返送して前記第1バスト
    ランザクションを終結させるリトライ応答手段と、 前記第1トランザクションに応答して、前記第2のバス
    上のデバイスをアクセスするための第2トランザクショ
    ンを前記第2のバス上に発行して前記第2のバス上のデ
    バイスに対するアクセスを開始するデバイスアクセス手
    段と、 このデバイスアクセス手段による前記第2のバス上のデ
    バイスに対するアクセスが完了するまでに要する時間を
    予測する予測手段とを具備し、 前記リトライ応答手段は、 前記予測手段によって予測された時間経過後に前記第1
    トランザクションがリトライされるように、前記リトラ
    イ要求を返送する時、前記リトライまでの待ち時間とし
    て前記予測時間を前記バスマスタデバイスに指示する待
    ち時間指示手段を含むことを特徴とするコンピュータシ
    ステム。
  2. 【請求項2】 前記第1バスには、トランザクションの
    種類を示すコマンドおよび有効データが転送されるバイ
    ト位置を示すバイトレーン信号の転送に使用されるコマ
    ンド/バイトイネーブル信号線が定義されており、 前記待ち時間指示手段は、コマンド/バイトイネーブル
    信号線を介して、前記予測時間を前記バスマスタデバイ
    スに通知することを特徴とする請求項1記載のコンピュ
    ータシステム。
  3. 【請求項3】 前記待ち時間指示手段は、前記第1バス
    上のバスマスタデバイスと前記ブリッジ装置間に設けら
    れたサイドバンド信号線を介して、前記予測時間を前記
    バスマスタデバイスに通知することを特徴とする請求項
    1記載のコンピュータシステム。
  4. 【請求項4】 前記予測手段は、 前記第2のバス上のデバイスそれぞれについてそのデバ
    イスの単位データ転送幅およびその単位データ転送に要
    するアクセス時間を示すテーブルと、 このテーブルを参照して前記第1トランザクションによ
    って指定されたデバイスに対応する単位データ転送幅と
    その単位データ転送に要するアクセス時間を検出し、そ
    の検出結果と前記第1トランザクションで指定されたデ
    ータ転送幅とに基づいて、前記第1トランザクションで
    指定されたデバイスに対するアクセス開始からその完了
    までに要する総時間を前記予測時間として決定する手段
    とを含むことを特徴とする請求項1記載のコンピュータ
    システム。
  5. 【請求項5】 前記予測手段は、 前記デバイスアクセス手段によって実行されるアクセス
    動作の進行状況に基づいて前記総時間の値を減少するカ
    ウンタ手段をさらに具備し、 前記第1トランザクションによって指定されたデバイス
    に対応するアクセス動作中に前記第1トランザクション
    がリトライされたとき、前記待ち時間指示手段は、その
    時の前記カウンタ手段のカウント値を前記アクセスに要
    する時間として前記バスマスタに指示することを特徴と
    する請求項4記載のコンピュータシステム。
  6. 【請求項6】 前記第1バスは、前記第2バスよりも高
    速のデータ転送レートを有する高速バスであることを特
    徴とする請求項1記載のコンピュータシステム。
  7. 【請求項7】 第1および第2のバスを有するコンピュ
    ータシステムにおいて使用され、前記第1および第2の
    バス間でトランザクションを相互に伝達するブリッジ装
    置において、 前記第1バス上のバスマスタデバイスから発行される前
    記第2バス上のデバイスをターゲットとする第1トラン
    ザクションに応答して、その第1トランザクションを所
    定の待ち時間経過後にリトライさせるためのリトライ要
    求を前記バスマスタデバイスに返送して前記第1バスト
    ランザクションを終結させるリトライ応答手段と、 前記第1トランザクションに応答して、前記第2のバス
    上のデバイスをアクセスするための第2トランザクショ
    ンを前記第2のバス上に発行して前記第2のバス上のデ
    バイスに対するアクセスを開始するデバイスアクセス手
    段と、 このデバイスアクセス手段による前記第2のバス上のデ
    バイスに対するアクセスが完了するまでに要する時間を
    予測する予測手段とを具備し、 前記リトライ応答手段は、 前記予測手段によって予測された時間経過後に前記第1
    トランザクションがリトライされるように、前記リトラ
    イ要求を返送する時、前記リトライまでの待ち時間とし
    て前記予測時間を前記バスマスタデバイスに指示する待
    ち時間指示手段を含むことを特徴とするブリッジ装置。
  8. 【請求項8】 第1バスに接続され、その第1バス上の
    トランザクションに応答してI/Oデバイスを制御する
    I/O制御装置において、 前記第1バス上のバスマスタデバイスから発行される前
    記I/Oデバイスをターゲットとするトランザクション
    に応答して、そのトランザクションを所定の待ち時間経
    過後にリトライさせるためのリトライ要求を前記バスマ
    スタデバイスに返送して前記バストランザクションを終
    結させるリトライ応答手段と、 前記トランザクションに応答して、前記I/Oデバイス
    に対するアクセスを開始するデバイスアクセス手段と、 このデバイスアクセス手段による前記I/Oデバイスに
    対するアクセスが完了するまでに要する時間を予測する
    予測手段とを具備し、 前記リトライ応答手段は、 前記予測手段によって予測された時間経過後に前記トラ
    ンザクションがリトライされるように、前記リトライ要
    求を返送する時、前記リトライまでの待ち時間として前
    記予測時間を前記バスマスタデバイスに指示する待ち時
    間指示手段を含むことを特徴とするI/O制御装置。
  9. 【請求項9】 第1および第2のバスと、これら第1お
    よび第2のバス間に接続され、前記第1および第2のバ
    ス間でトランザクションを相互に伝達するブリッジ装置
    とを有し、前記第1バス上のバスマスタデバイスから発
    行される前記第2バス上のデバイスをターゲットとする
    第1トランザクションに応答して、前記前記第2バス上
    のデバイスをアクセスするための第2トランザクション
    が前記第2バス上で実行されるコンピュータシステムに
    おいて使用されるバストランザクション制御方法であっ
    て、 前記第1バス上のバスマスタデバイスから発行される前
    記第2バス上のデバイスをターゲットとする第1トラン
    ザクションに応答して、その第1トランザクションで指
    定されたデバイスに対するアクセスに要する時間を予測
    し、 その予測時間を前記第1トランザクションをリトライす
    るまでの待ち時間として前記バスマスタに通知して、前
    記第1バストランザクションを終結させ、 前記予測時間経過後に前記第1トランザクションをリト
    ライさせることを特徴とするバストランザクション制御
    方法。
JP7518397A 1997-03-27 1997-03-27 コンピュータシステムおよびバストランザクション制御方法 Pending JPH10269169A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP7518397A JPH10269169A (ja) 1997-03-27 1997-03-27 コンピュータシステムおよびバストランザクション制御方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP7518397A JPH10269169A (ja) 1997-03-27 1997-03-27 コンピュータシステムおよびバストランザクション制御方法

Publications (1)

Publication Number Publication Date
JPH10269169A true JPH10269169A (ja) 1998-10-09

Family

ID=13568844

Family Applications (1)

Application Number Title Priority Date Filing Date
JP7518397A Pending JPH10269169A (ja) 1997-03-27 1997-03-27 コンピュータシステムおよびバストランザクション制御方法

Country Status (1)

Country Link
JP (1) JPH10269169A (ja)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006525587A (ja) * 2003-05-07 2006-11-09 コーニンクレッカ フィリップス エレクトロニクス エヌ ヴィ データを伝送する処理システム及び方法
JP2010009628A (ja) * 2004-12-09 2010-01-14 Hitachi Ltd サーバ装置
US8700779B2 (en) 2004-12-09 2014-04-15 Hitachi, Ltd. Multi node server system with plane interconnects the individual nodes equidistantly

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006525587A (ja) * 2003-05-07 2006-11-09 コーニンクレッカ フィリップス エレクトロニクス エヌ ヴィ データを伝送する処理システム及び方法
US7961604B2 (en) 2003-05-07 2011-06-14 Koninklijke Philips Electronics, N.V. Processing system and method for transmitting data
JP2010009628A (ja) * 2004-12-09 2010-01-14 Hitachi Ltd サーバ装置
US8700779B2 (en) 2004-12-09 2014-04-15 Hitachi, Ltd. Multi node server system with plane interconnects the individual nodes equidistantly

Similar Documents

Publication Publication Date Title
JP3302357B2 (ja) Cpuバス制御器
US6029223A (en) Advanced programmable interrupt controller
US5805842A (en) Apparatus, system and method for supporting DMA transfers on a multiplexed bus
US6571308B1 (en) Bridging a host bus to an external bus using a host-bus-to-processor protocol translator
US5774681A (en) Method and apparatus for controlling a response timing of a target ready signal on a PCI bridge
US5974495A (en) Using a back-off signal to bridge a first bus to a second bus
US5796968A (en) Bus arbiter used in a computer system
KR100742718B1 (ko) 컴퓨터 시스템의 제1 및 제2버스사이에 연결된 투명브리지, 이를 포함하는 시스템 및 컴퓨터 시스템의 제1 및 제2 버스의 브리징 방법
US6070215A (en) Computer system with improved transition to low power operation
US5943500A (en) Long latency interrupt handling and input/output write posting
WO1994008300A1 (en) Apparatus for strictly ordered input/output operations for interrupt system integrity
US6085279A (en) Interrupt control system provided in a computer
US5864688A (en) Apparatus and method for positively and subtractively decoding addresses on a bus
EP0820018A2 (en) Circuit for handling distributed arbitration in a computer system having multiple arbiters
US5781748A (en) Computer system utilizing two ISA busses coupled to a mezzanine bus
US5949981A (en) Deadlock avoidance in a bridge between a split transaction bus and a single envelope bus
US6658508B1 (en) Expansion module with external bus for personal digital assistant and design method therefor
US5559968A (en) Non-conforming PCI bus master timing compensation circuit
US6247087B1 (en) Bus system for shadowing registers
JP4077060B2 (ja) Pci−pci間のトランザクション通信方法及び装置
US6496938B1 (en) Enhanced PCI clock control architecture
US5890002A (en) System and method for bus master emulation
US6163826A (en) Method and apparatus for non-concurrent arbitration of multiple busses
US5878239A (en) Method and apparatus for processing a target retry from a PCI target device to an ISA master devise using a PCI/ISA bridge
US5794000A (en) Method and apparatus for avoiding erroneous abort occurrences in PCI-bus systems