JPH0981504A - コンピュータシステム - Google Patents

コンピュータシステム

Info

Publication number
JPH0981504A
JPH0981504A JP7231616A JP23161695A JPH0981504A JP H0981504 A JPH0981504 A JP H0981504A JP 7231616 A JP7231616 A JP 7231616A JP 23161695 A JP23161695 A JP 23161695A JP H0981504 A JPH0981504 A JP H0981504A
Authority
JP
Japan
Prior art keywords
bus
pci
dma
master
transaction
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
JP7231616A
Other languages
English (en)
Inventor
Shinichi Furuta
眞一 古田
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
Toshiba Computer Engineering Corp
Original Assignee
Toshiba Corp
Toshiba Computer Engineering 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, Toshiba Computer Engineering Corp filed Critical Toshiba Corp
Priority to JP7231616A priority Critical patent/JPH0981504A/ja
Priority to US08/706,351 priority patent/US5857081A/en
Publication of JPH0981504A publication Critical patent/JPH0981504A/ja
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/14Handling requests for interconnection or transfer
    • G06F13/36Handling requests for interconnection or transfer for access to common bus or bus system
    • G06F13/362Handling requests for interconnection or transfer for access to common bus or bus system with centralised access control
    • G06F13/364Handling requests for interconnection or transfer for access to common bus or bus system with centralised access control using independent requests or grants, e.g. using separated request and grant lines
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/38Information transfer, e.g. on bus
    • G06F13/40Bus structure
    • G06F13/4004Coupling between buses
    • G06F13/4027Coupling between buses using bus bridges
    • G06F13/4031Coupling between buses using bus bridges with arbitration

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • Bus Control (AREA)

Abstract

(57)【要約】 【課題】DMAシリアルチャネルプロトコルを改良し
て、マスタアボートの誤発生を防止する。 【解決手段】PCIマスタ41がトランザクションを実
行している期間中に、そのPCIマスタ41よりも優先
度の高い内部PCIバス2上のPCIデバイスのバスア
クセス要求信号REQ#がアクティブにされると、シリ
アルGNT#によってPCIマスタ41に対してGNT
#が切れたことが通知されるが、この通知には時間が掛
かる。このため、外部PCIバス4上のトランザクショ
ンが終了される前に内部PCIバス2上の新たなバスマ
スタによって、外部PCIバス4上のデバイスをターゲ
ットとするトランザクションが実行される場合がある
が、この場合には、EPBB201によってターゲット
リトライか通知され、これによってマスタアボートの誤
発生が防止される。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】この発明はコンピュータシス
テムに関し、特にPCIバスと拡張バスとを接続するブ
リッジ装置を有するコンピュータシステムに関する。
【0002】
【従来の技術】従来、パーソナルコンピュータに使用さ
れるシステムバスとしては、ISA(Industry
Standard Architecture)バス
やEISA(Extended ISA)バスが主流で
あったが、最近では、データ転送速度の高速化や、プロ
セッサに依存しないシステムアーキテクチャの構築のた
めに、デスクトップ型のパーソナルコンピュータを中心
に、PCI(Peripheral Componen
t Interconnect)バスが採用され始めて
いる。
【0003】PCIバスにおいては、ほとんど全てのデ
ータ転送はブロック転送を基本としており、これら各ブ
ロック転送はバースト転送を用いて実現されている。こ
れにより、例えばPCIバスでは最大133Mバイト/
秒(データバスが32ビット幅の時)のデータ転送速度
を実現できる。
【0004】したがって、PCIバスを採用すると、I
/Oデバイス間、およびシステムメモリとI/Oデバイ
スとの間のデータ転送などを高速に行うことが可能とな
り、システム性能を高めることができる。
【0005】
【発明が解決しようとする課題】最近では、デスクトッ
プ型のパーソナルコンピュータだけでく、ノートブック
タイプまたはデスクトップタイプなどのポータブルパー
ソナルコンピュータにおいても、PCIバスの採用が検
討され始めている。
【0006】デスクトップ型のパーソナルコンピュータ
においては、PCI拡張カードやISA拡張カードとい
った機能拡張のためのオプションカードは、システムボ
ード上の拡張スロットに直接装着して使用される。
【0007】この場合、ISA拡張カードが接続される
各ISA拡張スロットについては、複数種のDMAチャ
ネルに対応するDMA要求信号(DREQ)線およびD
MAアクノリッジ(DACK#)線からそれぞれ構成さ
れる複数のDMA制御線ペアが定義されている。このた
め、各ISA拡張カードは、そのカードに対応する特定
のDMAチャネル(1組のDREQ,DACK#)を利
用することにより、システムボード上のDMAC(直接
メモリアクセスコントローラ)コアのDMA転送機能を
使用することができる。
【0008】また、PCI拡張カードが接続される各P
CI拡張スロットについては、バスアクセス要求信号
(REQ#)線およびバスアクセス許可信号(GNT
#)線から構成されるアービトレーション制御線のペア
が定義されている。このため、システムボード上のPC
Iバスアービタは、PCI拡張カードについても、シス
テムボード上のPCIデバイスと同様にバス使用権の調
停を行う事ができる。
【0009】したがって、デスクトップ型のパーソナル
コンピュータにおいては、PCI拡張カードおよびIS
A拡張カードを装着して利用することは比較的容易であ
る。しかし、ポータブルパーソナルコンピュータにおい
ては、PCI拡張カードやISA拡張カードなどのオプ
ションカードは、ドッキングステーションと称される拡
張ユニットを介して装着する必要がある。この場合、ポ
ータブルパーソナルコンピュータからドッキングステー
ションに導出される信号線数はできるだけ少なくするこ
とが要求されている。なぜなら、ドッキングステーショ
ンに導出される信号線数が増えると、システムボード上
に搭載されたドッキングステーションとのインタフェー
スのためのLSIのピン数の増加や、ポータブルパーソ
ナルコンピュータとドッキングステーションとを接続す
るためのコネクタのピン数の増加などが引き起こされ、
ポータブルパーソナルコンピュータのコストアップ、シ
ステム実装効率の低下といった不具合が生じるからであ
る。
【0010】このため、DMA要求信号(DREQ)線
およびDMAアクノリッジ(DACK#)線の複数のペ
ア、およびバスアクセス要求信号(REQ#)線および
バスアクセス許可信号(GNT#)線の複数ペアをドッ
キングステーションに導出することは望ましくない。し
かし、これらDMA転送のための制御線およびアービト
レーションのための制御線をドッキングステーションに
導出しないと、ISA拡張カードがDMA転送を利用す
ること、およびPCI拡張カードがバスマスタとして動
作することはできない。
【0011】そこで、最近では、DMA要求信号(DR
EQ)線およびDMAアクノリッジ(DACK#)線の
複数のペア、およびバスアクセス要求信号(REQ#)
線およびバスアクセス許可信号(GNT#)線の複数ペ
アを利用せずに、ISA拡張カードとDMACコアとの
間のDREQおよびDACK#の送受信、およびPCI
拡張カードとPCIバスアービタとの間のREQ#およ
びGNT#の送受信を行うためのプロトコルが検討され
ている。
【0012】このプロトコルは、PCIバス上の1対の
バスアクセス要求信号(REQ#)およびバスアクセス
許可信号(GNT#)を利用して、ISA拡張カードの
ための複数チャネル分のDREQおよびDACK#の転
送と、PCI拡張カードのための複数のREQ#および
GNT#ペアの転送を実現する方式である。このプロト
コル下においては、複数チャネル分のDMA要求(DR
EQ)とPCIバスマスタ要求(REQ#)とがサポー
トされる。
【0013】以下、これらDMA要求とPCIバスマス
タ要求をシリアル転送する目的で使用されるREQ#お
よびGNT#については、シリアルREQ#およびシリ
アルGNT#と称することにする。
【0014】このように複数のDMA要求およびPCI
バスマスタ要求をシリアル化して転送するというDMA
シリアルチャネルプロトコルを利用した場合には、ドッ
キングステーションにはPCIバスに相当する信号線だ
けを導出し、それをドッキングステーション内に設けら
れたブリッジ装置によって外部PCIバスおよび外部I
SAバスそれぞれと接続するだけで、PCI拡張カード
とISA拡張カードの双方を使用することが可能とな
る。
【0015】しかし、このような構成を採用すると、D
MA要求およびPCIバスマスタ要求の通知について
は、ドッキングステーション内のブリッジ側では複数チ
ャネル分のDMA要求信号(DREQ)とPCIバスマ
スタ要求(REQ#)を一緒にシリアル化するためのパ
ラレル/シリアル変換処理が必要とされ、またシステム
側ではシリアル転送された情報を複数のDREQおよび
REQ#に分解してDMACコアおよびPCIバスアー
ビタに入力するシリアル/パラレル変換処理が必要とな
る。このため、DMA要求およびPCIバスマスタ要求
が発生されてから、それらがDMACコアおよびPCI
バスアービタで受け付けられるまでには、比較的多くの
時間を要する。
【0016】同様に、DMAアクノリッジ(DACK
#)およびバスアスセス許可信号(GNT#)の通知に
ついても、システム側では複数チャネル分のDACK#
と一緒にGNT#をシリアル化するためのパラレル/シ
リアル処理、ブリッジ側ではシリアル転送された情報を
複数のDACK#およびGNT#に分解してそれぞれ対
応するISA拡張カードおよびPCI拡張カードに渡す
シリアル/パラレル変換処理が必要となるので、その通
知には多くの時間が掛かる。
【0017】このようなシリアル転送に起因するタイム
ラグは、種々の問題を引き起こす原因となる。特に、バ
スアスセス許可信号(GNT#)の伝搬遅延は、2つの
バスマスタからのトランザクションの衝突というシステ
ムエラーを引き起こす危険がある。
【0018】以下、バスアスセス許可信号(GNT#)
の伝搬遅延が原因で2つのバスマスタからのトランザク
ションの衝突するメカニズムについて説明する。 (1)外部PCIバス上のPCI拡張カードは、該当す
るバスアクセス要求信号(REQ#)をアクティブにし
て、バス使用権を要求する。 (2)ブリッジはそのREQ#を受け取り、それをシス
テムボード上のPCIバスアービタにシリアル転送す
る。 (3)PCIバスアービタは、バス調停の結果、シリア
ル転送されたバスアクセス要求信号(REQ#)に対応
するバスアクセス許可信号(GNT#)を、ブリッジに
シリアル転送する。 (4)ブリッジは、シリアル転送された情報からGNT
#を取り出し、それをPCI拡張カードに与える。 (5)PCI拡張カードは、バスマスタとして動作する
ことが許可され、トランザクションを開始する。 (6)PCI拡張カードがトランザクションを実行して
いる期間中に、PCI拡張カードよりも優先度の高い他
のPCIデバイスのバスアクセス要求信号(REQ#)
がアクティブにされた時、PCIバスアービタは、PC
I拡張カードに対するバスアクセス許可信号(GNT
#)をインアクティブにし、それをブリッジにシリアル
転送すると共に、優先度の高いPCIデバイスに対する
バスアクセス許可信号(GNT#)をアクティブにす
る。 (7)ブリッジは、シリアル転送された情報からGNT
#がインアクティブにされたことを示す情報を取り出
し、それをPCI拡張カードに与える。GNT#がイン
アクティブにされたとき、PCI拡張カードは現在のサ
イクルを最終サイクルとして処理しようとする。 (8)一方、GNT#がアクティブにされたPCIデバ
イスは、バスマスタとして動作を開始する。この時のア
クセス対象のターゲットが外部PCIバス上に存在して
いると、PCIデバイスよって実行されるトランザクシ
ョンがブリッジ経由で外部PCIバスに送られる。 (9)前述したように、GNT#のシリアル転送は、パ
ラレル/シリアル変換、シリアル/パラレル変換処理な
どによるディレーのために多くの時間を要する。このた
め、PCI拡張カードがバスマスタとしての動作を終了
する前に、トランザクションがブリッジ経由で外部PC
Iバスに送られてしまう場合がある。 (10)この場合、PCI拡張カードからのトランザク
ションと新たにGNT#がアクティブにされたPCIデ
バイスからのトランザクションとが衝突する。ブリッジ
は、PCI拡張カードのトランザクションが終了するま
で、新たにGNT#がアクティブにされたPCIデバイ
スからのトランザクションに応答できない。このため、
トランザクションを開始したPCIデバイスは該当する
ターゲットが存在しないと誤って判断してしまい、これ
によってマスタアボートとなる。マスタアボートが発生
されると、PCIデバイスによる同一のトランザクショ
ンは2度と実行されない。
【0019】このように、DMAシリアルチャネルプロ
トコルを採用したシステムでは、PCI拡張カードへの
GNT#送信に時間が掛り、これが原因でトランザクシ
ョンが衝突するという事態が引き起こされる危険があっ
た。
【0020】この発明はこのような点に鑑みてなされた
もので、ブリッジ装置を改良することによってトランザ
クション衝突に伴い誤動作を防止できるようにし、信頼
性の高いDMAシリアルチャネルプロトコルを実現し得
るコンピュータシステムを提供することを目的とする。
【0021】
【課題を解決するための手段】この発明によるコンピュ
ータシステムは、第1のPCIバスと、この第1のPC
Iバス上に定義され、その第1のPCIバスに接続され
たバスマスタ毎に1組ずつ割り当てられているバスアク
セス要求信号(REQ#)線およびバスアクセス許可信
号(GNT#)線を利用してバスアクセスを調停するバ
スアービタであって、バスマスタ毎にアービトレーショ
ンの優先度がプログラム可能に構成されているバスアー
ビタと、前記第1のPCIバスに接続され、直接メモリ
アクセス(DMA)を実行するDMAコントローラと、
前記第1のPCIバスと第2のPCIバスとの間に接続
され、前記第1のPCIバスのバスマスタとして機能す
るブリッジ装置であって、前記第2のPCIバスに接続
されたPCI拡張デバイスそれぞれからのバスアクセス
要求信号(REQ#)を、前記ブリッジ装置に割り当て
られたバスアクセス要求信号(REQ#)線を利用して
前記DMAコントローラにシリアル送信するブリッジ装
置と、前記PCIバスに接続され、前記ブリッジ装置か
らシリアル送信された情報を前記バスアービタ(PB
A)に入力するためのバスアクセス要求信号(REQ
#)に変換する手段と、前記PCIバスに接続され、前
記バスアービタ(PBA)からのバスアクセス許可信号
の状態を、前記ブリッジ装置に割り当てられたバスアク
セス許可信号(GNT#)線を利用したシリアル転送サ
イクルによって前記ブリッジ装置にシリアル送信する手
段とを具備し、前記ブリッジ装置は、前記第2の拡張バ
ス上のPCI拡張デバイスによって実行されているトラ
ンザクションが終了される前に前記第2の拡張バス上の
デバイスをターゲットとするトランザクションが前記P
CIバス上のデバイスによって開始されたとき、そのト
ランザクションを開始した前記PCIバス上のデバイス
に対してターゲットリトライを通知する手段を具備する
ことを特徴とする。
【0022】このコンピュータシステムにおいては、P
CI拡張デバイスとバスアービタとの間のバスアクセス
要求信号(REQ#)およびバスアクセス許可信号(G
NT#)の授受はシリアルチャネルプロトコルを利用し
て行われる。PCI拡張デバイスにGNT#が与えられ
ている状態でそのPCI拡張デバイスよりもアービトレ
ションの優先度が高いバスマスタからREQ#が発生さ
れると、シリアル転送によってGNT#がインアクティ
ブにされたことがPCI拡張デバイスに通知されるが、
この通知には比較的多くの時間が必要とされる。
【0023】このため、PCI拡張デバイスがバスマス
タとしてのサイクルを終了する前に、新たにバス使用権
が与えられたバスマスタによってそのPCI拡張デバイ
スをターゲットとするトランザクションが実行される場
合がある。この場合、通常はブリッジ装置およびPCI
拡張デバイスはそのトランザクションに応答できないた
め、トランザクションを開始したバスマスタによってタ
ーゲットが存在しないと認識されてマスタアボートとな
るが、これを防止するため、このシステムでは、ブリッ
ジ装置は、バスマスタに対してターゲットリトライを通
知する。これにより、マスタアボートの誤発生を防止で
きるようになり、信頼性の高いシリアルチャネルプロト
コルを実現することができる。
【0024】
【発明の実施の形態】以下、図面を参照して、この発明
の実施の形態を説明する。図1には、この発明の一実施
形態に係わるコンピュータシステムの構成が示されてい
る。このコンピュータシステムは、ノートブックタイプ
またはラップトップタイプのポータブルパーソナルコン
ピュータであり、そのシステムボード上には3種類のバ
ス、つまりプロセッサバス1、内部PCIバス2、およ
び内部ISAバス3が配設されており、またこのポータ
ブルパーソナルコンピュータ本体のDSコネクタに取り
外し自在に接続されるドッキングステーション(拡張ユ
ニット)内には、外部PCIバス4と外部ISAバス5
が配設されている。
【0025】システムボード上には、CPU11、ホス
ト/PCIブリッジ装置12、システムメモリ13、各
種PCIマスターデバイス14、内部PCI−ISAブ
リッジ装置15、PCI−DS(DS:ドッキングステ
ーション)ブリッジ装置16、PCカードコントローラ
17、PCI DMAデバイス18などが設けられてい
る。また、ドッキングステーション内には、DS−PC
I/ISAブリッジ装置20が設けられている。
【0026】CPU11は、例えば、米インテル社によ
って製造販売されているマイクロプロセッサ“Pent
ium”などによって実現されている。このCPU11
の入出力ピンに直結されているプロセッサバス1は、6
4ビット幅のデータバスを有している。
【0027】システムメモリ13は、オペレーティング
システム、デバイスドライバ、実行対象のアプリケーシ
ョンプログラム、および処理データなどを格納するメモ
リデバイスであり、複数のDRAMによって構成されて
いる。このシステムメモリ13は、32ビット幅または
64ビット幅のデータバスを有する専用のメモリバスを
介してホスト−PCIブリッジ装置12に接続されてい
る。メモリバスのデータバスとしてはプロセッサバス1
のデータバスを利用することもできる。この場合、メモ
リバスは、アドレスバスと各種メモリ制御信号線とから
構成される。
【0028】ホスト/PCIブリッジ装置12は、プロ
セッサバス1と内部PCIバス2との間を繋ぐブリッジ
LSIであり、PCIバス2のバスマスタの1つとして
機能する。このホスト/PCIブリッジ装置12は、プ
ロセッサバス1と内部PCIバス2との間で、データお
よびアドレスを含むバスサイクルを双方向で変換する機
能、およびメモリバスを介してシステムメモリ13のア
クセス制御する機能などを有している。
【0029】内部PCIバス2はクロック同期型の入出
力バスであり、内部PCIバス2上の全てのサイクルは
PCIバスクロックに同期して行なわれる。PCIバス
クロックの周波数は最大33MHzである。PCIバス
2は、時分割的に使用されるアドレス/データバスを有
している。このアドレス/データバスは、32ビット幅
である。
【0030】PCIバス2上のデータ転送サイクルは、
アドレスフェーズとそれに後続する1以上のデータフェ
ーズとから構成される。アドレスフェーズにおいてはア
ドレスおよび転送タイプが出力され、データフェーズで
は8ビット、16ビット、24ビットまたは32ビット
のデータが出力される。
【0031】PCIマスターデバイス14は、ホスト/
PCIブリッジ装置12と同様にPCIバス2のバスマ
スタの1つであり、イニシエータまたはターゲットとし
て動作する。
【0032】内部PCI−ISAブリッジ装置15は、
内部PCIバス2と内部ISAバス3との間を繋ぐブリ
ッジLSIである。内部ISAバス3には、メモリ、複
数のISA I/Oデバイス31,32,…が接続され
ている。これらI/Oデバイス31,32は、内部PC
I−ISAブリッジ装置15内蔵のDMACにDMA転
送を要求するデバイス、つまりDMAスレーブである。
【0033】この内部PCI−ISAブリッジ装置15
には、PCIバスアービタ(PBA)151、DMAC
コア(MPPDMA)152、および内部ISAバスブ
リッジ(IIBB)153が内蔵されている。
【0034】PCIバスアービタ(PBA)151は、
内部PCIバス2に結合される全てのバスマスタデバイ
ス間でバス使用権の調停を行う。この調停には、バスマ
スタデバイス毎に1ペアずつ割り当てられる内部PCI
バス2上の信号線(バスリクエスト信号REQ#線、グ
ラント信号GNT#線)が用いられる。
【0035】バスリクエスト信号REQ#は、それに対
応するデバイスが内部PCIバス2の使用を要求してい
ることをPCIバスアービタ(PBA)151に通知す
るための信号である。グラント信号GNT#は、バスリ
クエスト信号REQ#を発行したデバイスに、バス使用
を許可することを通知する信号である。
【0036】また、このシステムでは、内部PCIバス
2上に定義された複数組のREQ#,GNT#線のう
ち、DS−PCI/ISAブリッジ107に割り当てら
れた1組のREQ#,GNT#線はDMAシリアルチャ
ネルプロトコル、すなわち、外部PCIバス4に接続さ
れたPCI拡張カードとの間のREQ#,GNT#の授
受、および外部ISAバス5に接続されたISA拡張カ
ードとの間のDREQ,DACK#の授受のために使用
される。
【0037】PCIバスアービタ(PBA)151に
は、内部PCIバス2上のほとんど全てのバスリクエス
ト信号REQ#線およびグラント信号GNT#線が接続
されており、バス使用権の調停はそのPCIバスアービ
タ(PBA)151によって集中的に制御される。PC
Iバスアービタ(PBA)151は、REQ#入力毎に
アービトレーションの優先度がプログラムできるように
構成されており、GNT#を与えたバスマスタからのR
EQ#がアクティブ状態のままであっても、それよりも
優先度の高いバスマスタからのREQ#がアクティブに
なると、GNT#が与えられるデバイスは優先度の高い
バスマスタに切り替えられる。
【0038】DMACコア(MPPDMA)152は、
ISA DMAC1521、バスリクエストおよびグラ
ントマネージャ(RGM;REQ#,GNT# Man
ager)1522、および内部ISA DMAルータ
(IIDR;Internal ISA DMA Ro
uter)1523の3つのブロックから構成されてい
る。このDMACコア(MPPDMA)152は内部P
CI−ISAブリッジ装置15内の独立した機能ブロッ
クであり、DMA以外の機能については、DMACコア
(MPPDMA)152は使用されず、他のブロックだ
けが動作する。
【0039】ISA DMAC1521、バスリクエス
トおよびグラントマネージャ(RGM)1522、およ
び内部ISA DMAルータ(IIDR)1523の具
体的な接続関係を図2に示す。
【0040】ISA DMAC1521は、内部PCI
バス2に接続されたバスマスタの1であり、DMA転送
を必要とするデバイス(DMAスレーブなど)からの要
求に応じてDMA転送を実行する。
【0041】DMAスレーブは、論理的には内部PCI
バス2に接続されている(実際には、ブリッジ15また
は20経由で内部ISAバス3または外部ISAバス5
に接続されている場合がほとんどである)。
【0042】ISA DMAC1521は、内部DRE
Q0〜7が入力されるDREQ入力ポートと、内部DA
CK#0〜7を出力するDACK#出力ポートを有して
おり、それらDREQ入力ポートおよびDACK#出力
ポートの双方はRGM1522およびIIDR1523
にそれぞれ接続されている。内部ISAバス3上のDM
Aスレーブ31,32…とISA DMAC1521と
の間のDREQおよびDACK#の授受は、IIDR1
523を介して実行される。また、外部ISAバス5上
のISA拡張カードであるISAマスタ51、DMAス
レーブ52,53…とISA DMAC1521との間
のDREQおよびDACK#の授受は、RGM1522
を介してDMAシリアルチャネルプロトコルによって行
われる。
【0043】ISA DMAC1521は内部PCIバ
ス2に接続され、またDMA転送を要求するデバイスは
内部ISAバス3または外部ISAバス5に接続されて
いるため、ISA DMAC1521によるDMA転送
では、リードサイクル(I/Oリードまたはメモリリー
ド)とライトサイクル(メモリライトまたはI/Oライ
ト)とは、時間的に同時には発生しない。すなわち、ま
ずリードサイクルが行われ、そのときのリードデータが
ISA DMAC1521内のバッファにラッチされ
る。つぎに、ライトサイクルが実行され、さきほどラッ
チしておいたデータがライトデータとして出力される。
【0044】リードサイクル、ライトサイクルとも、メ
モリ、I/Oを問わず、内部PCIバス2上で発生さ
れ、必要な場合はその内部PCIバス2上のバスサイク
ルがブリッジ装置15、または20によってISAバス
サイクルに変換される。すなわち、ISA DMAC1
521は、メモリサイクルとDMA専用I/Oサイクル
のどちらもPCIバス2上に発生し、ISAバスサイク
ルについては関知しない。
【0045】ISA DMAC1521は、ISAバス
システムアーキテクチャで標準となっている82C37
互換の機能を有しており、内部DREQ0〜7と内部D
ACK#0〜7とによってDMAチャンネルCH0〜C
H7をサポートしている。このうち、DMAチャンネル
CH4は2つのDMACコントローラをカスケード接続
するために使用されるため、DMA転送には使用されな
い。このため、内部DREQ0〜7および内部DACK
#0〜7のうち、DREQ4およびDACK#4は、実
際には、RGM1522とIIDR1523のどちらに
も接続されない。
【0046】ISA DMAC1521は、DMAチャ
ンネル毎に1ペアずつ用意された内部DREQ0〜7お
よびDACK#0〜7を用いて、DMAチャネルの調停
を行う。内部DREQは、DMAスレーブが、ISA
DMAC1521にDMA転送の実行を要求しているこ
とを通知するために使用されるDMAリクエスト信号で
ある。DACK#は、ISA DMAC1521がDM
A転送を要求したDMAスレーブに対してDMAサイク
ルの実行開始を通知するためのDMAアクノリッジ信号
であり、このDACK#によってDMA転送対象のDM
Aスレーブが選択される。
【0047】DMAチャネルの割り当ては、内部ISA
バス3上のデバイスと外部ISAバス5上のデバイスと
の間で排他的に行われる。各デバイスは、それに割り当
てられたDMAチャネルに対応するDREQ、DACK
#を用いてISA DMAC1521と送受信する。
【0048】この場合、外部ISAバス5上のデバイス
とISA DMAC1521との間のDREQおよびD
ACK#の送受信は、前述したように、1組のシリアル
REQ#,シリアルGNT#信号線を使用したDMAシ
リアルチャネルプロトコルに従って実行される。
【0049】このDMAシリアルチャネルプロトコルで
は、シリアルREQ#によってDS−PCI/ISAブ
リッジ装置20から最新のDREQの状態が送信され、
それがRGM1522に送られる。RGM1522で
は、シリアルREQ#が分解されてISA DMAC1
521への内部DREQ0〜7に変換される。
【0050】また、ISA DMAC1521から出力
される内部DACK#0〜7によって指定されるDMA
転送対象のチャネル情報は、RGM1522が実行する
シリアルGNT#信号線を利用したシリアル転送によっ
て、DS−PCI/ISAブリッジ装置20に送られ
る。
【0051】ISA DMAC1521は、RGM15
22およびIIDR1523から提供される最新のDR
EQチャンネル情報に基づき、DREQチャンネルマス
クの設定および調停方式の設定に従って、82C37互
換の、DREQチャンネル間調停を行う。有効なDMA
要求(DREQ)があれば、ISA DMAC1521
は、まず、自身に割り当てられているREQ#をアクテ
ィブにしてPCIバスアービタ(PBA)151に対し
てバス使用権を要求し、PBA151からGNT#が与
えられるのを待つ。
【0052】PBA151からGNT#が与えられる
と、ISA DMAC1521は、調停の結果選択した
DMAチャンネル番号に対応する内部DACK#をアク
ティブにして、DMA転送を実行するDMAチャンネル
番号をRGM1522とIIDR1523へ返す。そし
て、ISA DMAC1521は、選択されたDMAチ
ャンネルのセットアップ情報によって規定されるDMA
転送モード(シングル転送モード、ブロック転送モー
ド、デマンド転送モード、カスケードモード)に対応す
るDMAサイクルを実行する。この場合、ISA DM
AC1521は、前述したようにメモリ、I/Oサイク
ルとも、PCIバスのバスサイクルのみをサポートし、
ISAバスのバスサイクルについてはブリッジ装置15
または20によってエミュレートされる。
【0053】RGM1522は、複数のDMA要求およ
びPCIバスマスタ要求をシリアル化して転送するとい
うDMAシリアルチャネルプロトコルに関する処理を行
うためにシリアルREQ#およびシリアルGNT#の状
態を管理する。このRGM1522は、ISA DMA
C1521に対するISAスタイルのDREQ/DAC
K#プロトコルとDMAシリアルチャネルプロトコルと
の間の変換を行う。
【0054】RGM1522には、複数のREQ#信号
を入力することができる。また、各REQ#信号毎に、
そのREQ#信号のプロトコルをプログラムすることが
できる。したがって、シリアルREQ#およびシリアル
GNT#として使用されるREQ#およびGNT#信号
線のペアを複数用意すれば、DS−PCI/ISAブリ
ッジ装置20経由で行われるDMAシリアルチャネルプ
ロトコルだけでなく、例えばPCカードコントローラ1
7によって制御されるPCMCIA/Cardバス仕様
のPCカード61,62とISA DMAC1521と
の間のDREQ,DACK#の授受などについても同様
のDMAシリアルチャネルプロトコルによって行うこと
ができる。
【0055】また、RGM1522は、DMAシリアル
チャネルプロトコルと、PBA151がサポートする標
準PCIスタイルのアービトレーションのためのREG
#/GNT#プロトコル(これは、文献“PCI Lo
cal Bus Specification”199
4 10月21 P47〜P52 PCI Speci
al interest Group著 に記載されて
いる)との間の変換も行う。
【0056】すなわち、外部ISAバス5上のデバイス
との間のDREQ,DACK#の授受だけでなく、外部
PCIバス4上のPCI拡張カードであるPCIマスタ
41との間のREQ#,GNT#の授受もDMAシリア
ルチャネルプロトコルを使用して行われる。この場合の
REQ#,GNT#の処理は、RGM1522によって
次のように行われる。
【0057】外部PCIバス4上のPCIマスタ41
(LANボード、SCSIボードなど)は、REQ#を
アクティブにすることによって、バス使用要求をDS−
PCI/ISAブリッジ装置20に知らせる。DS−P
CI/ISAブリッジ装置20は、シリアルREQ#を
利用したシルアルデータ転送によって、バス使用要求を
DMA要求と一緒にRGM1522へ知らせる。この場
合、そのバス使用要求の通知には、ISAデバイスによ
って使用されていないDMAチャネルであるDREQ4
が用いられる。
【0058】RGM1522は、シリアルREQ#信号
を分解し、シリアルREQ#によってDREQ4が通知
されたことを検出すると、REQ#をアクティブにして
PBA151に対してPCIバス2の使用を要求する。
PBA151は、標準PCIのアービトレーションルー
ルによって調停を行い、GNT#によってRGM152
2に対してバス使用を許可する。
【0059】RGM1522は、PBA151からのG
NT#を受け取ると、シリアルGNT#を使用したシリ
アルデータ転送によって、バス使用が許可されたことを
DACKと一緒にDS−PCI/ISAブリッジ装置2
0に通知する。この通知には、DACK4が使用され
る。DS−PCI/ISAブリッジ装置20は、RGM
1522が送信したシリアルGNT#信号を分解し、P
CIマスタ41にGNT#を与える。PCIマスタ41
は、GNT#を受け取るとバスマスタとして動作するこ
とが可能となり、トランザクションを開始する。
【0060】次に、内部ISA DMAルータ(IID
R)1523について説明する。内部ISA DMAル
ータ(IIDR)1523は、プログラムされたマッピ
ング情報にしたがって、内部ISAバス3上のDMAス
レーブ31,32,…にマッピングされるDMAチャネ
ルを変更する。IIDR1523は、DMAスレーブ3
1,32,…からのDREQ信号の状態を、マッピング
情報に従って、それらデバイスのDMAチャネル番号に
対応する内部DREQに変換して、ISADMAC15
21に伝える。また、IIDR1523は、ISA D
MAC1521からの内部DACK#を、マッピング情
報に従って、DMAスレーブ31,32が実際に使用し
ているDACK#に変換して、内部ISAバス3上に出
力する。
【0061】内部ISAバスブリッジ(IIBB)15
3は、内部PCIバス2と内部ISAバス3とを繋ぐブ
リッジであり、メモリおよびI/Oなどの内部ISAバ
ス3上の全てのデバイスを制御する。このIIBB15
3は、ISA DMAC1521がDMA転送のために
PCIバス2上に発生するメモリまたはI/Oサイクル
をプロトコル変換して、内部ISAバス3上へ伝える。
【0062】PCI−DSブリッジ装置16は、内部P
CIバス2と、ドッキングステーションに導出されるP
CIバス相当のドッキングバスとを繋ぐブリッジLSI
であり、PCIバス2上のエージェントとして機能す
る。このPCI−DSブリッジ装置16には、DMAシ
リアルチャンネルプロトコルによるシリアルREQ#/
GNT#の転送の同期化のためのバッファが設けられて
いる。
【0063】PCカードコントローラ17は、PCIバ
スマスタの1つであり、DMAシリアルチャネルプロト
コルをサポートしている。このPCカードコントローラ
17によって制御されるPCカード61,62がDMA
転送を要求した時、そのDMA要求すなわちDREQ
は、PCカードコントローラ17に割り当てられたRE
Q#信号線を利用したシリアル転送によってRGM15
22に送信される。また、RGM1522からのDAC
K#については、PCカードコントローラ17に割り当
てられたGNT#信号線を利用したシリアル転送によっ
てPCカードコントローラ17に送られる。このシリア
ルGNT#は、PCカードコントローラ17によってD
ACK#に分解されて、PCカード61または62に渡
される。
【0064】PCIDMA18は、PCカードコントロ
ーラ17と同様、内部PCIバス2上のエージェントで
あり、且つDMAシリアルチャネルプロトコルをサポー
トしている。このPCIDMA18によって制御される
DMAスレーブ19がDMA転送を要求した時、そのD
MA要求、すなわちDREQはシリアルREQ#よって
RGM1522に送信される。また、RGM1522か
らのシリアルGNT#はPCIDMA18によってDA
CK#に分解されてDMAスレーブ19に通知される。
【0065】DS−PCI/ISAブリッジ装置20
は、DSコネクタを介してコンピュータ本体からドッキ
ングステーションに導出されるドッキングバス(PCI
バス相当)と外部PCIバス4および外部ISAバス5
とを繋ぐブリッジLSIである。このDS−PCI/I
SAブリッジ装置20は、コンピュータ本体に取り外し
自在に装着されるドッキングステーション内に設けられ
ており、PCIバスマスタの1つとして機能し、且つD
MAシリアルチャネルプロトコルをサポートしている。
【0066】DS−PCI/ISAブリッジ装置20に
は、外部PCIバスブリッジ(EPBB;Extern
al PCI Bus Bridge)201、外部I
SAバスブリッジ(EIBB;External IS
A Bus Bridge)202、ローカルバスアー
ビタ(LBA;Local Bus Arbiter)
203、および外部ISA DMAルータ(EIDR;
External ISA DMA Router)2
04が設けられている。
【0067】以下、図3を参照して、EPBB201、
EIBB202、LBA203、およびEIDR204
の機能およびそれらの接続関係を説明する。EPBB2
01は、内部PCIバス2上にISA DMAC152
1が発生するメモリサイクルおよびI/OサイクルをP
CI−DSブリッジ16を経由して受け取り、それを外
部PCIバス4上へ伝える。また、外部PCIバス4上
のPCIマスタデバイス41にバス使用権が与えられた
場合は、EPBB201は、外部PCIバス4上のバス
トランザクションをドッキングバス上に発生させる。
【0068】また、このEPBB201は、PCIマス
タ41がバスマスタとしてトランザクションを実行して
いる期間に外部PCIバス4上のデバイスをターゲット
とするトランザクションが内部PCIバス2上のデバイ
スによって開始された時、マスタアボートの発生を防止
するために、ターゲットリトライを通知する機能を有し
ている。
【0069】すなわち、図1のシステムでは、前述した
ように、PCIマスタ41とPBA151との間のバス
アクセス要求信号REQ#およびバスアクセス許可信号
GNT#の授受はシリアルチャネルプロトコルを利用し
て行われる。PCIマスタ41にGNT#が与えられて
いる状態でそのPCIマスタ41よりもアービトレーシ
ョンの優先度が高い他のバスマスタ(例えば、内部PC
Iバス2上のホストーPCIブリッジ12)からREQ
#が発生されると、PCIマスタ41に対応するGNT
#がPBA151によってインアクティブにされ、それ
がシリアル転送によってPCIマスタ41に通知され
る。この通知には比較的多くの時間が必要とされる。
【0070】このため、PCIマスタ41がバスマスタ
としてのサイクルを終了する前に、新たにバス使用権が
与えられた他のバスマスタによって外部PCIバス4上
のデバイスをターゲットとするトランザクションが開始
される場合がある。
【0071】この場合、通常のブリッジ装置は、その一
方のバス上のデバイスがバスマスタとして動作している
時には他方のバス上のデバイスからのトランザクション
については何等応答せず、そのトランザクションを受け
付けることは無い。しかし、もしこのように無応答とし
てしまうと、ターゲットが存在するにもかかわらずマス
タアボートが誤って発生されてしまう。
【0072】そこで、EPBB201は、このような状
況下では、外部PCIバス4上のサイクルが終了するま
では内部PCIバス2からのトランザクションは受け付
けないが、マスタアボートの発生を防止するために、内
部PCIバス2上にターゲットリトライサイクルを発生
する。トランザクションを開始した内部PCIバス2上
のデバイスは、ターゲットリトライが通知されると実行
中のトランザクションを終結し、所定期間経過後に同一
のドランザクションを開始する。
【0073】ターゲットリトライは、EPBB201が
ドッキングバス経由で内部PCIバス2上の信号TRD
Y#,STOP#,DEVSEL#を、それぞれTRD
Y#=インアクティブ、STOP#=アクティブ,DE
VSEL#=アクティブに設定する事によって、内部P
CIバス2上の現在のバスマスタに通知される。
【0074】ここで、TRDY#は、ターゲットが現在
のデータフェーズを完了してレディー状態になったこと
を通知するための信号である。STOP#は、ターゲッ
トがイニシエータに対して現在のトランザクションの停
止を要求するために使用される信号である。DEVSE
L#は、アドレス指定されたターゲットから出力される
信号であり、ターゲットが選択されたことを示す。
【0075】EIBB202は、内部PCIバス2上に
ISA DMAC1521が発生するメモリサイクルお
よびI/OサイクルをPCI−DSブリッジ16を経由
して受け取り、それをプロトコル変換して外部ISAバ
ス5上へ伝える。また、外部ISAバス5上のISAマ
スタデバイス41にバス使用権が与えられた場合は、E
IBB202は、外部ISAバス5上のバストランザク
ションをドッキングバス上に発生させる。
【0076】LBA203およびEIDR204は、D
MAシリアルチャネルプロトコルをサポートするために
設けられたものである。LBA203は、外部PCIバ
ス4上のPCIバスマスタ41からのバス使用要求RE
Q#と、外部ISAバス5上のISAマスタ51および
DMAスレーブ52,53からのDREQ信号(基本的
にISAのDMAチャンネル数分ある)の状態の変化を
監視しており、最新の状態をシリアルREQ#を利用し
たビット列のシリアル転送によって、PCI−DSブリ
ッジ16経由でRGM1522へ伝える。
【0077】シリアルREQ#で送信されるビット列の
フォーマットは次の通りである。 LBA203は、アクティブにされたREQ#の前縁を
スタートbit(S)とし、以後、DMAチャンネルの
0から7までを1クロックフレームづつ使用して、シリ
アルに伝える。チャンネル4のフレームは、PCIマス
タ41のPCIバスマスタ要求(REQ#)状態の変化
を伝えるために使用され、それ以外は、ISAマスタ5
1,DMAスレーブ52,53のDMA要求の状態変化
を伝えるために使用される。
【0078】各フレームは、“L”で要求なしを意味
し、“H”で要求ありを意味する。上述の例では、DR
EQ0、2、7がアクティブであり、且つPCIマスタ
41がバス使用を要求している状態(DREQ4がアク
ティブ)に対応している。
【0079】外部PCIバス4には、複数のPCIバス
マスタを接続することができる。この場合、複数のPC
Iバスマスタ41から同時にREQ#が出力されること
があるが、その場合のアービトレーションはLBA20
3によって実行され、いずれか1つのPCIバスマスタ
41からのREQ#がシリアル転送対象として受け付け
られる。
【0080】RGM1522からのシルアルGNT#を
受け取ると、LBA203は、そのシルアルGNT#に
含まれるビット列をデコードし、DACK#をEIDR
204へ返すか、あるいは外部PCIバス4にGNT#
を返す。
【0081】シリアルGNT#でRGM1522から送
信されるビット列のフォーマットは次の通りである。 RGM1522は、アクティブにされたGNT#の前縁
をスタートbit(S)とし、以後、DMAチャンネル
のDACK#0から7までのどれかひとつを3bitで
コード化した情報を、LSBから順番に、各bitに1
クロックフレームづつ割り当てて、シリアルに伝える。
チャンネル4のコードは、PCIマスタ41のバス要求
状態に応答するGNT#を伝えるために使用され、それ
以外は、ISAマスタ51,DMAスレーブ52,53
のDMA要求に対するDACK#を伝えるために使用さ
れる。
【0082】上述の例では、3ビット情報=“100”
であるので、チャンネルコード=4であり、DMAチャ
ンネル4が選択された(PCIバスマスタ要求に対する
GNT#が与えられた)ことを意味する。この場合、L
BA203は、受け付けたREQ#に対応する外部PC
Iバス4上のGNT#をアクティブにする。
【0083】EIDR204は、プログラムされたマッ
ピング情報にしたがって、外部ISAバス5上のISA
マスタ51およびDMAスレーブ52,53それぞれに
マッピングされるDMAチャネルを変更する。このEI
DR204と前述のIIDR1523との共同作用によ
り、内部ISAバス3上のデバイスと外部ISAバス5
上のデバイスとにDMAチャネルを排他的に割り当てる
ことができる。
【0084】EIDR204は、ISAマスタ51およ
びDMAスレーブ52,53それぞれからのDREQ信
号の状態を、マッピング情報に従って、それらデバイス
のDMAチャネル番号に対応するDREQ信号に変換し
てLBA203に伝える。また、EIDR204は、L
BA203からのDACK#を、マッピング情報に従っ
て、ISAマスタ51およびDMAスレーブ52,53
が実際に使用しているDACK#に変換して、外部IS
Aバス5上に出力する。
【0085】次に、図4のタイミングチャートを参照し
て、前述したマスタアボートの誤発生を防止するための
EPBB201の動作について説明する。 (1)外部PCIバス4上のPCIマスタ41は、その
PCIマスタ41に割り当てられているバスアクセス要
求信号(外部REQ#)をアクティブにして、バス使用
権を要求する。 (2)LBA203は、その外部REQ#を受け取り、
それをシリアルREQ#を利用したシリアル転送によっ
てシステムボード上のRGM1522に送信する。この
場合、外部REQ#のPCIバスマスタ要求はDMAチ
ャネル4のDMA要求として送られる。LBA203と
内部PCIバス2との間にはドッキングバスおよびPC
I−DSブリッジ16が存在しているので、外部REQ
#は、まず、ドッキングバスのクロック(20〜25M
Hz)に同期化させてそのドッキングバス上に出力され
る(DSシリアルREQ)。そして、そのDSシリアル
REQは、PCI−DSブリッジ16によって内部PC
Iバス2のクロック(30〜33MHz)に同期化され
て内部PCIバス2上のRGM1522に送られる(内
部シリアルREQ)。 (3)RGM1522は、内部シリアルREQから外部
REQ#を取り出してPBA151に入力し、PBA1
51から外部REQ#に対応するGNT#が与えられる
のを待つ。PBA151からGNT#が与えられると、
RGM1522は、そのGNT#を内部シリアルGNT
#を利用したシリアル転送によってドッキングステーシ
ョン内のLBA203に送信する。この場合、内部シリ
アルGNT#は、PCI−DSブリッジ16によってド
ッキングバスのクロック(20〜25MHz)に同期化
されてドッキングバス上に送られる(外部シリアルGN
T#)。 (4)LBA203は、外部シリアルGNT#によって
転送されたシリアル情報から外部REQに対応するGN
T#がアクティブにされたことを検出すると、外部PC
Iバス4に定義されているPCIマスタ41の外部GN
T#をアクティブにする。
【0086】これら(1)〜(4)の処理により、PC
Iマスタ41がPCIバスマスタとして動作することが
可能になる。これにより、PCIマスタ41にPCIバ
スマスタとして動作することが許可され、PCIマスタ
41はトランザクションを開始する。
【0087】PCIマスタ41がトランザクションを実
行している期間中に、そのPCIマスタ41よりも優先
度の高い内部PCIバス2上のPCIデバイスのバスア
クセス要求信号REQ#(内部REQ#)がアクティブ
にされた時、PBA151は、PCIマスタ41に対す
るバスアクセス許可信号GNT#をインアクティブする
と共に、優先度の高いPCIデバイスに対するバスアク
セス許可信号GNT#(内部GNT#)をアクティブに
する。
【0088】PCIマスタ41に対するバスアクセス許
可信号GNT#がインアクティブにされると、RGM1
522は、シリアルGNT#によってそれをLBA20
3に通知する。この場合、まず、RGM1522によっ
て内部PCIバス2上に内部シリアルGNT#が出力さ
れ、次いで、その内部シリアルGNT#がPCI−DS
ブリッジ16によってドッキングバスのクロックに同期
化されてドッキングバス上に外部シリアルGNT#とし
て出力される。
【0089】LBA203は、外部シリアルGNT#に
よって転送されたシリアル情報をデコードして外部RE
Q#に対応するGNT#がインアクティブにされたこと
を検出すると、外部PCIバス4に定義されているPC
Iマスタ41の外部GNT#をインアクティブにする。
PCIマスタ41は、外部GNT#がインアクティブに
されると、現在のサイクルを最終サイクルとして、実行
中のトランザクションを終結しようとする。
【0090】一方、内部GNT#がアクティブにされた
内部PCIバス2上のPCIデバイスは、FRAME#
をアクティブにしてトランザクションを開始する。外部
GNT#がインアクティブになるまでにはシリアル情報
の生成およびデコード、および同期化のために時間が掛
るため、内部GNT#がアクティブにされた時点から、
外部GNT#がインアクティブにされてPCIマスタ4
1のトランザクションが終結されるまでの期間は、2つ
のトランザクションが衝突する危険がある。
【0091】すなわち、もし内部PCIバス2上のPC
Iデバイスによって開始されるトランザクションが外部
PCIバス4上のデバイスをターゲットとするものであ
ると、図5に示されているように、内部PCIバス2上
のPCIデバイスからのトランザクションと外部PCI
バス4上のPCIデバイスからのトランザクションとが
DS−PCI/ISAブリッジ20にて衝突される。
【0092】EPBB201は、外部PCIバス4上の
デバイスがバスマスタとしてトランザクションを実行し
ている時に、内部PCIバス2上のデバイスによってト
ランザクションが開始されると、その内部PCIバス2
からのトランザクションを外部PCIバス4には伝達し
ないが、その内部PCIバス2上のアドレスをデコード
して、内部PCIバス2上の現在のトランザクションが
外部PCIバス4上のデバイスをターゲットとするトラ
ンザクションであるか否かを調べる。
【0093】もし外部PCIバス4上のデバイスをター
ゲットとするトランザクションであれば、EPBB20
1は、図6に示されているように、ドッキングバス経由
で内部PCIバス2上の信号TRDY#,STOP#,
DEVSEL#を、それぞれTRDY#=インアクティ
ブ、STOP#=アクティブ,DEVSEL#=アクテ
ィブに設定して、ターゲットリトライを通知する。
【0094】ターゲットリトライが通知された内部PC
Iバス2上のデバイスは、現在のトランザクションを終
了し、所定期間経過後に同一のトランザクションをリト
ライする。この時、外部PCIバス4上のデバイスがバ
スマスタとしてのトランザクションを終了していれば、
外部PCIバス4上のターゲットを正常にアクセスする
ことができる。
【0095】以上のように、DMAシリアルチャネルプ
ロトコルによってPCIマスタ要求を通知する図1のシ
ステム構成においては、PCI拡張デバイスであるPC
Iマスタ41がバスマスタとしてのサイクルを終了する
前に、新たにバス使用権が与えられた内部PCIバス2
上のバスマスタによって外部PCIバス4上のデバイス
をターゲットとするトランザクションが実行されても、
EPBB201によってターゲットリトライが通知され
るので、マスタアボートの誤発生を防止できるようにな
り、信頼性の高いDMAシリアルチャネルプロトコルを
実現することができる。
【0096】
【発明の効果】以上説明したように、この発明によれ
ば、PCIバスと拡張バスとを繋ぐブリッジ装置を改良
する事により、拡張バス上のデバイスによって実行され
ているトランザクションが終了される前に前記第2の拡
張バス上のデバイスをターゲットとするトランザクショ
ンがPCIバス上のデバイスによって開始されたとき
は、そのトランザクションを開始したPCIバス上のデ
バイスにターゲットリトライが通知される。これによ
り、トランザクションの衝突による誤動作を防止できる
ようになり、信頼性の高いDMAシリアルチャネルプロ
トコルを実現できる。
【図面の簡単な説明】
【図1】この発明の一実施形態に係る改良されたDMA
シリアルチャネルプロトコルを採用したポータブルコン
ピュータのシステム構成を示すブロック図。
【図2】同実施形態のシステムに設けられたDMACコ
アの構成を示すブロック図。
【図3】同実施形態のシステムに設けられたDS−PC
I/ISAブリッジ装置の構成を示すブロック図。
【図4】同実施形態のシステムにおけるバス使用権の切
り替え動作を説明するタイミングチャート。
【図5】同実施形態のシステムにおけるトランザクショ
ンの衝突の様子を示す図。
【図6】図3のDS−PCI/ISAブリッジ装置によ
って実行されるターゲットリトライの通知動作を説明す
るタイミングチャート。
【符号の説明】
1…プロセッサバス、2…内部PCIバス、3…内部I
SAバス、4…外部PCIバス、5…外部ISAバス、
11…CPU、12…ホスト/PCIブリッジ装置、1
3…システムメモリ、15…内部PCI−ISAブリッ
ジ装置、16…PCI−DSブリッジ装置、20…DS
−PCI/ISAブリッジ装置、41…外部PCIバス
上のI/O(PCIマスタ)、51,52,53…外部
ISAバス上のI/O(ISAマスタ、DMAスレー
ブ)、151…PCIバスアービタ(PBA)、152
…DMACコア(MPPDMA)、201…外部PCI
バスブリッジ(EPBB)、203…ローカルバスアー
ビタ(LBA)、1521…ISA DMAC、152
2…バスリクエストおよびグラントマネージャ(RG
M)。

Claims (4)

    【特許請求の範囲】
  1. 【請求項1】 第1のPCIバスと、 この第1のPCIバス上に定義され、その第1のPCI
    バスに接続されたバスマスタ毎に1組ずつ割り当てられ
    ているバスアクセス要求信号(REQ#)線およびバス
    アクセス許可信号(GNT#)線を利用してバスアクセ
    スを調停するバスアービタであって、バスマスタ毎にア
    ービトレーションの優先度がプログラム可能に構成され
    ているバスアービタと、 前記第1のPCIバスに接続され、直接メモリアクセス
    (DMA)を実行するDMAコントローラと、 前記第1のPCIバスと第2のPCIバスとの間に接続
    され、前記第1のPCIバスのバスマスタとして機能す
    るブリッジ装置であって、前記第2のPCIバスに接続
    されたPCI拡張デバイスそれぞれからのバスアクセス
    要求信号(REQ#)を、前記ブリッジ装置に割り当て
    られたバスアクセス要求信号(REQ#)線を利用して
    前記DMAコントローラにシリアル送信するブリッジ装
    置と、 前記PCIバスに接続され、前記ブリッジ装置からシリ
    アル送信された情報を前記バスアービタ(PBA)に入
    力するためのバスアクセス要求信号(REQ#)に変換
    する手段と、 前記PCIバスに接続され、前記バスアービタ(PB
    A)からのバスアクセス許可信号の状態を、前記ブリッ
    ジ装置に割り当てられたバスアクセス許可信号(GNT
    #)線を利用したシリアル転送サイクルによって前記ブ
    リッジ装置にシリアル送信する手段とを具備し、 前記ブリッジ装置は、 前記第2の拡張バス上のPCI拡張デバイスによって実
    行されているトランザクションが終了される前に前記第
    2の拡張バス上のデバイスをターゲットとするトランザ
    クションが前記PCIバス上のデバイスによって開始さ
    れたとき、そのトランザクションを開始した前記PCI
    バス上のデバイスに対してターゲットリトライを通知す
    る手段を具備することを特徴とするコンピュータシステ
    ム。
  2. 【請求項2】 前記ブリッジ装置は、 前記PCIバス上に定義されたターゲットレディー信号
    (TRDY#)、ストップ信号(STOP#)、および
    デバイスセレクト信号(DEVSEL#)を利用してタ
    ーゲットリトライを前記バスマスタに通知し、 前記トランザクションを開始した前記PCIバス上のデ
    バイスは、そのターゲットリトライに応答して現在のト
    ランザクションを終了し、所定期間経過後に同一のトラ
    ンザクションをリトライすることを特徴とする請求項1
    記載のコンピュータシステム。
  3. 【請求項3】 PCIバスと、 このPCIバス上に定義され、そのPCIバスに接続さ
    れたバスマスタ毎に1組ずつ割り当てられているバスア
    クセス要求信号(REQ#)線およびバスアクセス許可
    信号(GNT#)線を利用してバスアクセスを調停する
    バスアービタであって、バスマスタ毎にアービトレーシ
    ョンの優先度がプログラム可能に構成されているバスア
    ービタと、 前記PCIバスに接続され、直接メモリアクセス(DM
    A)を実行するDMAコントローラと、 前記PCIバスと第1および第2の拡張バスとの間に接
    続され、前記PCIバスのバスマスタとして機能するブ
    リッジ装置であって、前記第1の拡張バスに接続された
    DMAスレーブまたはDMAマスタデバイスそれぞれか
    ら出力される複数のDMA要求信号(DREQ)の状態
    および前記第2の拡張バスに接続されたPCI拡張デバ
    イスからのバスアクセス要求信号(REQ#)をシリア
    ル情報に変換し、そのシリアル情報を、前記ブリッジ装
    置に割り当てられたバスアクセス要求信号(REQ#)
    線を利用したシリアル転送サイクルによって前記DMA
    コントローラに送信するブリッジ装置と、 前記PCIバスに接続され、前記ブリッジ装置から送信
    されたシリアル情報を前記DMAコントローラに入力す
    るための複数のDMA要求信号(DREQ)、および前
    記バスアービタ(PBA)に入力するためのバスアクセ
    ス要求信号(REQ#)に分解するシリアル/パラレル
    変換手段と、 前記PCIバスに接続され、前記DMAコントローラか
    ら出力される複数のDMAアクノリッジ信号(DACK
    #)それぞれの状態、および前記バスアービタ(PB
    A)からのバスアクセス許可信号の状態をシリアル情報
    に変換し、そのシリアル情報を前記ブリッジ装置に割り
    当てられたバスアクセス許可信号(GNT#)線を利用
    したシリアル転送サイクルによって前記ブリッジ装置に
    送信する手段とを具備し、 前記ブリッジ装置は、 前記第2の拡張バス上のPCI拡張デバイスによって実
    行されているトランザクションが終了される前に前記第
    2の拡張バス上のデバイスをターゲットとするトランザ
    クションが前記PCIバス上のデバイスによって開始さ
    れたとき、そのトランザクションを開始した前記PCI
    バス上のデバイスに対してターゲットリトライを通知す
    る手段を具備することを特徴とするコンピュータシステ
    ム。
  4. 【請求項4】 前記ブリッジ装置は、 前記PCIバス上に定義されたターゲットレディー信号
    (TRDY#)、ストップ信号(STOP#)、および
    デバイスセレクト信号(DEVSEL#)を利用してタ
    ーゲットリトライを前記バスマスタに通知し、 前記トランザクションを開始した前記PCIバス上のデ
    バイスは、そのターゲットリトライに応答して現在のト
    ランザクションを終了し、所定期間経過後に同一のトラ
    ンザクションをリトライすることを特徴とする請求項3
    記載のコンピュータシステム。
JP7231616A 1995-09-08 1995-09-08 コンピュータシステム Pending JPH0981504A (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP7231616A JPH0981504A (ja) 1995-09-08 1995-09-08 コンピュータシステム
US08/706,351 US5857081A (en) 1995-09-08 1996-08-30 Method and apparatus for controlling a master abort in a computer system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP7231616A JPH0981504A (ja) 1995-09-08 1995-09-08 コンピュータシステム

Publications (1)

Publication Number Publication Date
JPH0981504A true JPH0981504A (ja) 1997-03-28

Family

ID=16926308

Family Applications (1)

Application Number Title Priority Date Filing Date
JP7231616A Pending JPH0981504A (ja) 1995-09-08 1995-09-08 コンピュータシステム

Country Status (2)

Country Link
US (1) US5857081A (ja)
JP (1) JPH0981504A (ja)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006323869A (ja) * 2006-07-26 2006-11-30 Mobility Electronics Inc 結合システムおよび方法
JP2007004815A (ja) * 2006-07-26 2007-01-11 Mobility Electronics Inc リンクブリッジ
JP2007226796A (ja) * 2006-02-23 2007-09-06 Samsung Electronics Co Ltd 複数個のインターフェースを支援するスマートカード及びこれを含むスマートカードシステム

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6081863A (en) * 1998-03-13 2000-06-27 International Business Machines Corporation Method and system for supporting multiple peripheral component interconnect PCI buses by a single PCI host bridge within a computer system
US6275887B1 (en) * 1999-03-17 2001-08-14 Intel Corporation Method and apparatus for terminating a bus transaction if the target is not ready
US6769035B1 (en) 2000-04-07 2004-07-27 Infineon Technologies North America Corp. Same single board computer system operable as a system master and a bus target
US6976108B2 (en) * 2001-01-31 2005-12-13 Samsung Electronics Co., Ltd. System on a chip having a system bus, an external bus, and a bus arbiter with programmable priorities for both buses, software, and method for assigning programmable priorities

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5559968A (en) * 1995-03-03 1996-09-24 Compaq Computer Corporation Non-conforming PCI bus master timing compensation circuit
US5632021A (en) * 1995-10-25 1997-05-20 Cisco Systems Inc. Computer system with cascaded peripheral component interconnect (PCI) buses

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007226796A (ja) * 2006-02-23 2007-09-06 Samsung Electronics Co Ltd 複数個のインターフェースを支援するスマートカード及びこれを含むスマートカードシステム
JP2006323869A (ja) * 2006-07-26 2006-11-30 Mobility Electronics Inc 結合システムおよび方法
JP2007004815A (ja) * 2006-07-26 2007-01-11 Mobility Electronics Inc リンクブリッジ

Also Published As

Publication number Publication date
US5857081A (en) 1999-01-05

Similar Documents

Publication Publication Date Title
US5396602A (en) Arbitration logic for multiple bus computer system
US5450551A (en) System direct memory access (DMA) support logic for PCI based computer system
US5805842A (en) Apparatus, system and method for supporting DMA transfers on a multiplexed bus
US5774681A (en) Method and apparatus for controlling a response timing of a target ready signal on a PCI bridge
US6397279B1 (en) Smart retry system that reduces wasted bus transactions associated with master retries
US5796968A (en) Bus arbiter used in a computer system
JPH10293744A (ja) Pciバス・システム
US5752043A (en) Interrupt control system provided in a computer
US6567881B1 (en) Method and apparatus for bridging a digital signal processor to a PCI bus
US5968144A (en) System for supporting DMA I/O device using PCI bus and PCI-PCI bridge comprising programmable DMA controller for request arbitration and storing data transfer information
US5937206A (en) System for converting states of DMA requests into first serial information and transmitting information to first bus whenever a state change of a request
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
JPH0981504A (ja) コンピュータシステム
JPH09198341A (ja) データ処理システム
US6625683B1 (en) Automatic early PCI transaction retry
US5850529A (en) Method and apparatus for detecting a resource lock on a PCI bus
US5794000A (en) Method and apparatus for avoiding erroneous abort occurrences in PCI-bus systems
US5838930A (en) Method and apparatus for controlling a command cycle on a bus
US6370593B1 (en) Apparatus for multiplexing bus interfaces on a computer expansion
US5892977A (en) Apparatus and method for read-accessing write-only registers in a DMAC
JPH0981502A (ja) コンピュータシステム
JPH0954750A (ja) コンピュータシステム
JP5146796B2 (ja) ホストコントローラ
CA2282166C (en) Method and apparatus for bridging a digital signal processor to a pci bus
US5968151A (en) System and method of positively determining ISA cycle claiming