JPH0954745A - コンピュータシステム - Google Patents
コンピュータシステムInfo
- Publication number
- JPH0954745A JPH0954745A JP7205682A JP20568295A JPH0954745A JP H0954745 A JPH0954745 A JP H0954745A JP 7205682 A JP7205682 A JP 7205682A JP 20568295 A JP20568295 A JP 20568295A JP H0954745 A JPH0954745 A JP H0954745A
- Authority
- JP
- Japan
- Prior art keywords
- bus
- dma
- pci
- serial
- isa
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/14—Handling requests for interconnection or transfer
- G06F13/20—Handling requests for interconnection or transfer for access to input/output bus
- G06F13/28—Handling requests for interconnection or transfer for access to input/output bus using burst mode transfer, e.g. direct memory access DMA, cycle steal
- G06F13/30—Handling requests for interconnection or transfer for access to input/output bus using burst mode transfer, e.g. direct memory access DMA, cycle steal with priority control
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Bus Control (AREA)
Abstract
DMA転送の信頼性の向上を図る。 【解決手段】外部PCIバス4上のデバイスおよび外部
ISAバス5上のデバイスを制御するDS−PCI/I
SAブリッジ20は、プロシードとフリーズの2つの動
作状態を有している。DMACコア152からDACK
#を受信したとき、その動作状態はプロシードからフリ
ーズに切り替えられる。フリーズ状態では、DACK#
が通知されたI/OのDMA要求の状態に変化が生じた
時のみシリアルREQ#サイクルが実行される。よっ
て、他のI/Oに関するDMA要求の状態変化を通知す
るためのシリアルREQ#サイクルの実行は凍結され、
シリアルREQがDMAサイクル実行中にインアクティ
ブにされるといった不具合がなくなり、DMA転送を正
常に行うことが可能となる。
Description
テムに関し、特にDMAコントローラを必要とするデバ
イスと必要としないデバイスとが混在するコンピュータ
システムに関する。
れるシステムバスとしては、ISA(Industry
Standard Architecture)バス
やEISA(Extended ISA)バスが主流で
あったが、最近では、データ転送速度の高速化や、プロ
セッサに依存しないシステムアーキテクチャの構築のた
めに、デスクトップ型のパーソナルコンピュータを中心
に、PCI(Peripheral Componen
t Interconnect)バスが採用され始めて
いる。
ータ転送はブロック転送を基本としており、これら各ブ
ロック転送はバースト転送を用いて実現されている。こ
れにより、例えばPCIバスでは最大133Mバイト/
秒(データバスが32ビット幅の時)のデータ転送速度
を実現できる。
/Oデバイス間、およびシステムメモリとI/Oデバイ
スとの間のデータ転送などを高速に行うことが可能とな
り、システム性能を高めることができる。
プ型のパーソナルコンピュータだけでく、ノートブック
タイプまたはデスクトップタイプなどのポータブルパー
ソナルコンピュータにおいても、PCIバスの採用が検
討され始めている。
においては、PCI拡張カードやISA拡張カードとい
った機能拡張のためのオプションカードはシステムボー
ド上の拡張スロットに直接装着して使用される。この場
合、ISA拡張カードが接続される各ISA拡張スロッ
トについては、複数種のDMAチャネルに対応するDM
A要求信号(DREQ)線およびDMAアクノリッジ
(DACK#)線の複数のペアが定義されている。この
ため、各ISA拡張カードは、そのカードに対応する特
定のDMAチャネル(1組のDREQ,DACK#)を
利用することにより、システムボード上のDMAC(直
接メモリアクセスコントローラ)コアのDMA転送機能
を使用することができる。したがって、デスクトップ型
のパーソナルコンピュータにおいては、PCIバスマス
タなどのDMACを必要としないデバイスと、ISAデ
バイスなどのDMACを必要とするデバイスとを比較的
容易に混在させることができる。
タにおいては、PCI拡張カードやISA拡張カードな
どのオプションカードは、ドッキングステーションと称
される拡張ユニットを介して装着する必要がある。この
場合、ポータブルパーソナルコンピュータからドッキン
グステーションに導出される信号線数はできるだけ少な
くすることが要求されている。なぜなら、ドッキングス
テーションに導出される信号線数が増えると、システム
ボード上に搭載されたドッキングステーションとのイン
タフェースのためのLSIのピン数の増加や、ポータブ
ルパーソナルコンピュータとドッキングステーションと
を接続するコネクタのピン数の増加などが引き起こさ
れ、ポータブルパーソナルコンピュータのコストアッ
プ、システム実装効率の低下といった不具合が生じるか
らである。
およびDMAアクノリッジ(DACK#)線の複数のペ
アをドッキングステーションに導出することは望ましく
ない。しかし、これらDMA転送のための制御線をドッ
キングステーションに導出しないと、ISA拡張カード
などのオプションカードがDMA転送を利用することは
できない。
EQ)線およびDMAアクノリッジ(DACK#)線の
複数のペアを利用せずに、ドッキングステーションに装
着されるISA拡張カードとシステムボード上のDMA
Cコアとの間でDMA要求信号(DREQ)およびDM
Aアクノリッジ(DACK#)を送受信するためのプロ
トコルが検討されている。
バスアクセス要求信号(REQ#)およびバスアクセス
許可信号(GNT#)を利用して、複数チャネル分のD
REQおよびDACK#の転送を実現する方式である。
このプロトコル下においては、複数チャネル分のDMA
要求(DREQ)はバスアクセス要求信号(REQ#)
を利用したシリアル転送によって、PCIバスに接続さ
れているDMACコアに送信される。また、DACK#
についても、バスアクセス許可信号(GNT#)を利用
したシリアル転送によって、DMACコアからドッキン
グステーションのISA拡張カードに送信される。以下
では、これらDREQおよびDACK#のシリアル転送
の目的で使用されるREQ#およびGNT#について
は、シリアルREQ#およびシリアルGNT#と称する
ことにする。
ル化して転送するというDMAシリアルチャネルプロト
コルを利用した場合には、ドッキングステーションには
PCIバスに相当する信号線だけを導出し、そのドッキ
ングステーション内にPCI−ISAブリッジを設ける
だけで、PCI拡張カードとISA拡張カードの双方を
使用することが可能となる。
MA要求信号(DREQ)の通知については、ドッキン
グステーション内のPCI−ISAブリッジ側では複数
チャネル分のDMA要求信号(DREQ)をシリアル化
するための処理、DMACコア側ではシリアル転送で通
知されたDREQのチャネル情報をパラレルに分解して
DMACコア内のDMACに与える処理が必要となる。
このため、ISA拡張カードからDMA要求信号(DR
EQ)が発生されてからそのDMA要求信号がDMAC
で受け付けられるまでには、比較的多くの時間を要す
る。
コア側では複数チャネル分のDACK#をシリアル化す
るための処理、PCI−ISAブリッジ側ではシリアル
転送で通知されたDACK#のチャネル情報をパラレル
に分解して元のDACK#に戻す処理が必要となるの
で、その通知には時間が掛かる。
DMAシリアルチャネルプロトコルを利用してDREQ
とDACK#の送受信に矛盾が生じると、次のような誤
動作が引き起こされる危険がある。以下、この誤動作発
生のメカニズムを図9および図10を参照して説明す
る。
を採用する場合に必要となると想定されるポータプルコ
ンピュータのシステム構成を示し、図10はそのポータ
ブルコンピュータにおけるDMAシリアルチャネルプロ
トコルの手順を示している。
と内部PCIバス104との間にはホスト−PCIブリ
ッジ装置102が設けられており、これによってCPU
101のプロセッサバスと内部PCIバス104が繋が
れる。システムメモリ103はホスト−PCIブリッジ
装置102によって制御される。また、内部PCIバス
104には、DMACコア105が接続されている。内
部PCIバス104とドッキングステーションDSとの
間はPCI−DSブリッジ装置106によって繋がれ
る。ドッキングステーションDS内部には、DS−PC
I/ISAブリッジ装置107が設けられており、この
DS−PCI/ISAブリッジ装置107には外部PC
Iバスおよび外部ISAバスが接続されている。
SA拡張カードA,Bと内部PCIバス104上のDM
ACコア105との間のDREQ,DACK#の送受信
は、DMAシリアルチャネルプロトコルに従って図10
の様に行われる。 (1)ISA拡張カードAがDREQ Aをアクティブ
にする。 (2)DS−PCI/ISAブリッジ107がREQ#
を利用したシルアル転送を行い、DREQ AをDMA
Cコア105に送信する。この場合、シリアルREQ#
のスタートビットSに後続するいくつかのシリアルビッ
ト列は、DMAチャネルAがアクティブにされているこ
とを示す。 (3)DMACコア105がシリアルREQ#を受信
し、前述のシリアルビット列によって指定されたDMA
チャネル(チャネルA)に対応する内部DREQA(I
nt.DREQ A)を発生する。このInt.DRE
Q Aは、DMACコア内部のDMACが有する複数チ
ャネル分のDREQ入力ポートの1つに供給される。 (4)DMACコア105がGNT#を利用したシルア
ル転送を行い、DREQAに対応するDACK A#を
送信する。この場合、シリアルGNT#のスタートビッ
トSに後続するビット列によって、DMA転送が実行さ
れるDMAチャネル(チャネルA)が選択される。 (5)DS−PCI/ISAブリッジ107がシリアル
GNT#を受信し、前述のビット列によって指定された
DMAチャネルに対応するDACK A#を発生する。
このDACK A#によって、DMAチャネルAを利用
したDMA転送の開始がISA拡張カードAに通知され
る。
(4)の間の期間においては、DS−PCI/ISAブ
リッジ107は、シリアルREQ#の再送信を行う可能
性がある。再送信のトリガとなるのは、例えば、ISA
拡張カードBからのDREQBがアクティブ状態に変化
した場合である。
それぞれからDREQ A,DREQ Bが発生してい
ることを通知するためのシリアルREQ#の再送信のた
めに、発生中のREQ#は一旦インアクティブにされ
る。この時、DMACコア105は、それをISA拡張
カードAがDREQ Aをインアクティブにしたものと
誤って判断してしまい、DMACへの内部DREQ A
をインアクティブにする危険がある。この結果、DMA
CはISA拡張カードAに対応するDMA転送が終了さ
れたと判断し、これによって図示のようにDACK A
#が出かかって消えるというタイミングが発生してしま
う。この場合、ISA拡張カードAのDMA転送はイリ
ーガルな状態で終了されてしまう。
(5)の期間中においても、もしISA拡張カードBか
らのDREQ Bの発生に起因してシリアルREQ#の
再送信が行われると、同様にして、ISA拡張カードA
に対するDMA転送が途中で終了されてしまうという不
具合が生じる。
コルを採用すると、1つのREQ#線によって複数のI
/Oデバイスそれぞれの最新のDREQの状態を通知す
る必要があるため、前述のDREQおよびDACK#の
転送プロトコルに矛盾が発生する危険があり、これによ
ってDMA転送の誤動作が引き起こされるという欠点が
あった。
7は、実行されるDMA転送に対応したバスマスタが存
在している場所に応じてバス方向(アドレス、および制
御系バスの方向)を切り換えることが必要であるが、シ
リアルチャネルプロトコルを採用したシステムにおいて
は、そのバス方向を切り替えるタイミングが遅れ、結果
としてDMA転送が実行されるまでに時間が掛かるとい
う問題がある。
転送によってDMA転送の実行が指示されるI/Oデバ
イスが、ISAバスマスタの場合とバスマスタで無い場
合とでは、以降、発生されるバスサイクルが大きく異な
る。すなわち、外部ISAバスに接続されているISA
バスマスタにDACK#が返送された場合にはそのバス
マスタ自体によって以降のバスサイクルが実行される
が、ISAバスマスタで無い場合には、バスサイクルは
全てDMACコア105によって実行される。このた
め、ISAバスマスタの場合とバスマスタで無い場合と
では、必要なバス方向は基本的に逆方向となる。
07は、外部ISAバス上のマスター信号MASTER
#が変化される時点まではDMA転送の実行が指示され
るI/OデバイスがISAバスマスタか否かを決定でき
ないため、バス方向の切り替えタイミングが遅れ、結果
としてDMA転送が実行されるまでに多くの時間が掛か
かってしまう。
もので、DMAシリアルチャネルプロトコルを改良する
ことによって前述の矛盾による誤動作やバス方向制御の
遅れを解消できるようにし、DMA転送処理の信頼性の
向上および効率化を図ることができるコンピュータシス
テムを提供することを目的とする。
ータシステムは、PCIバスと、このPCIバス上に定
義され、バスマスタ毎に1組ずつ割り当てられているバ
スアクセス要求信号(REQ#)線およびバスアクセス
許可信号(GNT#)線を利用してバスアクセスを調停
するバスアービタ(PBA)と、前記PCIバスに接続
され、直接メモリアクセス(DMA)を実行するDMA
コントローラと、前記DMAコントローラのDMA機能
を必要とする複数のI/Oデバイスと、これら複数のI
/Oデバイスと前記PCIバス間に接続された第1のバ
スマスタであって、前記複数のI/Oデバイスそれぞれ
から出力される複数のDMA要求信号(DREQ)の状
態をシリアル情報に変換し、そのシリアル情報を、前記
第1のバスマスタに割り当てられたバスアクセス要求信
号(REQ#)線を利用したシリアル転送サイクルによ
って前記DMAコントローラに送信する第1のバスマス
タと、前記PCIバスおよび前記DMAコントローラに
接続され、前記第1のバスマスタに割り当てられたバス
アクセス要求信号(REQ#)線およびバスアクセス許
可信号(GNT#)線を管理する管理手段であって、前
記第1のバスアクセス要求信号(REQ#)線を利用し
たシリアル転送サイクルによって送信されたシリアル情
報を、前記DMAコントローラに入力するための複数の
DMA要求信号(DREQ)に変換する手段、および前
記DMAコントローラから出力される複数のDMAアク
ノリッジ信号(DACK#)それぞの状態をシリアル情
報に変換し、そのシリアル情報を前記第1のバスマスタ
に割り当てられたバスアクセス許可信号(GNT#)線
を利用したシリアル転送サイクルによって前記第1のバ
スマスタに送信する手段、を含む管理手段とを具備し、
前記第1のバスマスタは、前記複数のI/Oデバイスそ
れぞれからのDMA要求信号(DREQ#)の状態変化
が発生する度に前記バスアクセス要求信号(REQ#)
線を利用したシリアル転送サイクルを実行して最新のD
MA要求信号(DREQ#)の状態を前記DMAコント
ローラに通知するプロシードモードと、DMAサイクル
実行中のI/Oデバイスから出力されるDMA要求信号
(DREQ#)の状態変化だけを前記シリアル転送サイ
クルによって前記DMAコントローラに通知するフリー
ズモードを有し、前記プロシードモードおよびフリーズ
モードのいずれか一方のモードで動作するDMA要求通
知手段と、前記バスアクセス許可信号(GNT#)を利
用したシリアル転送サイクルによって所定のI/Oデバ
イスに対するDMAアクノリッジ(DACK#)を前記
管理手段から受信したとき、前記DMA要求通知手段の
動作モードを前記プロシードモードから前記フリーズモ
ードに切り替える手段とを具備することを特徴とする。
/Oデバイスを制御する第1のバスマスタは、プロシー
ドモードとフリーズモードの2つの動作モードを有して
おり、バスアクセス許可信号(GNT#)を利用したシ
リアル転送によって所定のI/Oデバイスに対するDM
Aアクノリッジ(DACK#)を受信したとき、その動
作モードはプロシードモードからフリーズモードに切り
替えられる。
(DACK#)が通知されたI/Oデバイス、すなわち
DMAサイクル実行中のI/OデバイスのDREQの状
態に変化が生じた時のみ上述のバスアクセス要求信号
(REQ#)を利用したシリアル転送サイクルが実行さ
れ、他のI/Oデバイスに関するDREQの状態変化を
通知するためのシリアル転送サイクルの実行は凍結され
る。
#)を利用したシリアル転送によってDMAアクノリッ
ジ(DACK#)が通知された後は、DMAサイクル実
行中のI/OデバイスのDREQがインアクティブにな
らない限り、たとえ他のI/Oデバイスに関するDRE
Qの状態に変化が生じてもバスアクセス要求信号(RE
Q#)を利用した再送信は行われない。したがって、そ
の再送信のためにバスアクセス要求信号(REQ#)が
DMAサイクル実行中にインアクティブにされるといっ
た不具合がなくなり、DMA転送を正常に行うことが可
能となる。
についてそのI/OデバイスからのDMA要求信号(D
REQ#)がアクティブにされていることを示すシリア
ル情報を再送する場合と、前記バスアクセス許可信号
(GNT#)を利用したシリアル転送サイクルによって
送信されたDMAアクノリッジ(DACK#)によって
選択されたI/OデバイスからのDMA要求信号(DR
EQ#)がインアクティブにされたことを示すシリアル
情報を送信する場合とで、前記バスアクセス要求信号
(REQ#)を利用したシリアル転送サイクルにおける
前記バスアクセス要求信号(REQ#)のインアクティ
ブ期間を異ならせ、これによって開始されたシリアル転
送サイクルが、選択された、つまりDMAサイクルの実
行が指示されたI/OデバイスからのDMA要求が終了
したことを通知するためのサイクルであるか否かをDM
Aコントローラに通知するDMA要求通知手段を第1の
バスマスタに具備したことを特徴とする。
のインアクティブ期間の長さによって、開始されるシリ
アル転送サイクルが、DMAサイクルの実行が通知され
たI/OデバイスからのDMA要求がインアクティブに
されたことを通知するためのサイクルであるか否かがD
MAコントローラに通知される。このため、DMA要求
を再送する目的でバスアクセス要求信号がインアクティ
ブされても、それが、DMAサイクル実行中のI/Oデ
バイスがDMA要求をインアクティブした、またはバス
が解放されたと誤判断されることは無くなる。よって、
DMA要求を発行したI/Oデバイスに対するDMAア
クノリッジが出かかって消えるという不具合を防止でき
る。
ムは、PCIバスと、このPCIバス上に定義され、バ
スマスタ毎に1組ずつ割り当てられているバスアクセス
要求信号(REQ#)線およびバスアクセス許可信号
(GNT#)線を利用してバスアクセスを調停するバス
アービタ(PBA)と、前記PCIバスに接続され、直
接メモリアクセス(DMA)を実行するDMAコントロ
ーラと、前記PCIバスとISAバスとを接続するPC
I−ISA/ブリッジ装置であって、前記ISAバスに
接続された複数のI/Oデバイスそれぞれから出力され
る複数のDMA要求信号(DREQ)の状態をシリアル
情報に変換し、そのシリアル情報を、前記PCI−IS
A/ブリッジ装置に割り当てられたバスアクセス要求信
号(REQ#)線を利用したシリアル転送サイクルによ
って前記DMAコントローラに送信するPCI−ISA
/ブリッジ装置と、前記PCIバスおよび前記DMAコ
ントローラに接続され、前記第1のバスマスタに割り当
てられたバスアクセス要求信号(REQ#)線およびバ
スアクセス許可信号(GNT#)線を管理する管理手段
であって、前記第1のバスアクセス要求信号(REQ
#)線を利用したシリアル転送サイクルによって送信さ
れたシリアル情報を、前記DMAコントローラに入力す
るための複数のDMA要求信号(DREQ)に変換する
手段、および前記DMAコントローラから出力される複
数のDMAアクノリッジ信号(DACK#)それぞの状
態をシリアル情報に変換し、そのシリアル情報と、その
シリアル情報によってDMA転送の実行が指定されるD
MAチャネルがカスケードモードにセットアップされて
いるか否かを示すモード情報とを、前記PCI−ISA
ブリッジ装置に割り当てられたバスアクセス許可信号
(GNT#)線を利用したシリアル転送サイクルによっ
て前記PCI−ISAブリッジ装置に送信する手段、を
含む管理手段とを具備し、前記PCI−ISAブリッジ
装置は、前記モード情報に従って前記DMA転送の実行
が指定されるDMAチャネルがカスケードモードか否か
を検出し、その検出結果に従って、前記DMAコントロ
ーラによるDMAサイクル、またはISAバスマスタと
して機能するI/Oデバイスによるバスサイクルにそれ
ぞれ対応したバス方向制御を実行することを特徴とす
る。
を利用したシリアル転送サイクルによって、DMAサイ
クルが実行されるDMAチャネルを特定するためのシリ
アル情報だけでなく、そのDMAチャネルがカスケード
モードにセットアップされているか否かを示すモード情
報も送信される。DMAサイクルが実行されるDMAチ
ャネルがカスケードモードであれば、以降のバスサイク
ルはバスマスタによって実行される。よって、そのモー
ド情報を利用することにより、ブリッジは即座にバス方
向を決定できるようになる。
実施形態を説明する。図1には、この発明の一実施形態
に係わるコンピュータシステムの構成が示されている。
このコンピュータシステムは、ノートブックタイプまた
はラップトップタイプのポータブルパーソナルコンピュ
ータであり、そのシステムボード上には3種類のバス、
つまりプロセッサバス1、内部PCIバス2、および内
部ISAバス3が配設されており、またこのポータブル
パーソナルコンピュータ本体のDSコネクタに接続可能
なドッキングステーション内には、外部PCIバス4と
外部ISAバス5が配設されている。
ト/PCIブリッジ装置12、システムメモリ13、各
種PCIマスターデバイス14、内部PCI−ISAブ
リッジ装置15、PCI−DS(DS:ドッキングステ
ーション)ブリッジ装置16、PCカードコントローラ
17、PCI DMAデバイス18などが設けられてい
る。また、ドッキングステーション内には、DS−PC
I/ISAブリッジ装置20が設けられている。
って製造販売されているマイクロプロセッサ“Pent
ium”などによって実現されている。このCPU11
の入出力ピンに直結されているプロセッサバス1は、6
4ビット幅のデータバスを有している。
システム、デバイスドライバ、実行対象のアプリケーシ
ョンプログラム、および処理データなどを格納するメモ
リデバイスであり、複数のDRAMによって構成されて
いる。このシステムメモリ13は、32ビット幅または
64ビット幅のデータバスを有する専用のメモリバスを
介してホスト−PCIブリッジ装置12に接続されてい
る。メモリバスのデータバスとしてはプロセッサバス1
のデータバスを利用することもできる。この場合、メモ
リバスは、アドレスバスと各種メモリ制御信号線とから
構成される。
セッサバス1と内部PCIバス2との間を繋ぐブリッジ
LSIであり、PCIバス2のバスマスタの1つとして
機能する。このホスト/PCIブリッジ装置12は、プ
ロセッサバス1と内部PCIバス2との間で、データお
よびアドレスを含むバスサイクルを双方向で変換する機
能、およびメモリバスを介してシステムメモリ13のア
クセス制御する機能などを有している。
力バスであり、内部PCIバス2上の全てのサイクルは
PCIバスクロックに同期して行なわれる。PCIバス
クロックの周波数は最大33MHzである。PCIバス
2は、時分割的に使用されるアドレス/データバスを有
している。このアドレス/データバスは、32ビット幅
である。
アドレスフェーズとそれに後続する1以上のデータフェ
ーズとから構成される。アドレスフェーズにおいてはア
ドレスおよび転送タイプが出力され、データフェーズで
は8ビット、16ビット、24ビットまたは32ビット
のデータが出力される。
PCIブリッジ装置12と同様にPCIバス2のバスマ
スタの1つであり、イニシエータまたはターゲットとし
て動作する。
内部PCIバス2と内部ISAバス3との間を繋ぐブリ
ッジLSIである。内部ISAバス3には、メモリ、複
数のISA I/Oデバイス31,32,…が接続され
ている。これらI/Oデバイス31,32は、内部PC
I−ISAブリッジ装置15内蔵のDMACにDMA転
送を要求するデバイス、つまりDMAスレーブである。
には、PCIバスアービタ(PBA)151、DMAC
コア(MPPDMA)152、および内部ISAバスブ
リッジ(IIBB)153が内蔵されている。
内部PCIバス2に結合される全てのバスマスタデバイ
ス間でバス使用権の調停を行う。この調停には、バスマ
スタデバイス毎に1ペアずつ割り当てられる内部PCI
バス2上の信号線(バスリクエスト信号REQ#線、グ
ラント信号GNT#線)が用いられる。
応するデバイスが内部PCIバス2の使用を要求してい
ることをPCIバスアービタ(PBA)151に通知す
るための信号である。グラント信号GNT#は、バスリ
クエスト信号REQ#を発行したデバイスに、バス使用
を許可することを通知する信号である。
2上に定義された複数組のREQ#,GNT#線のう
ち、DS−PCI/ISAブリッジ107に割り当てら
れた1組のREQ#,GNT#線は、外部ISAバス5
に接続されたDMAスレーブ等との間でDREQ,DA
CK#を授受するというDMAシリアルチャネルプロト
コルの実現のために使用される。
は、内部PCIバス2上のほとんど全てのバスリクエス
ト信号REQ#線およびグラント信号GNT#線が接続
されており、バス使用権の調停はそのPCIバスアービ
タ(PBA)151によって集中的に制御される。
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は使用されず、他のブロックだ
けが動作する。
トおよびグラントマネージャ(RGM)1522、およ
び内部ISA DMAルータ(IIDR)1523の具
体的な接続関係を図2に示す。
バス2に接続されたバスマスタの1であり、DMA転送
を必要とするデバイス(DMAスレーブなど)からの要
求に応じてDMA転送を実行する。
バス2に接続されている(実際には、ブリッジ15また
は20経由で内部ISAバス3または外部ISAバス5
に接続されている場合がほとんどである)。
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マスタ51、DMAスレーブ52,53…とI
SA DMAC1521との間のDREQおよびDAC
K#の授受は、RGM1522を介してDMAシリアル
チャネルプロトコルによって行われる。
ス2に接続され、またDMA転送を要求するデバイスは
内部ISAバス3または外部ISAバス5に接続されて
いるため、ISA DMAC1521によるDMA転送
では、リードサイクル(I/Oリードまたはメモリリー
ド)とライトサイクル(メモリライトまたはI/Oライ
ト)とは、時間的に同時には発生しない。すなわち、ま
ずリードサイクルが行われ、そのときのリードデータが
ISA DMAC1521内のバッファにラッチされ
る。つぎに、ライトサイクルが実行され、さきほどラッ
チしておいたデータがライトデータとして出力される。
モリ、I/Oを問わず、内部PCIバス2上で発生さ
れ、必要な場合はその内部PCIバス2上のバスサイク
ルがブリッジ装置15、または20によってISAバス
サイクルに変換される。すなわち、ISA DMAC1
521は、メモリサイクルとDMA専用I/Oサイクル
のどちらもPCIバス2上に発生し、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のどちらに
も接続されない。
ンネル毎に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スレーブが選択される。
バス3上のデバイスと外部ISAバス5上のデバイスと
の間で排他的に行われる。各デバイスは、それに割り当
てられたDMAチャネルに対応するDREQ、DACK
#を用いてISA DMAC1521と送受信する。
とISA DMAC1521との間のDREQおよびD
ACK#の送受信は、前述したように、1組のシリアル
REQ#,シリアルGNT#信号線を使用したDMAシ
リアルチャネルプロトコルに従って実行される。
は、シリアルREQ#によってDS−PCI/ISAブ
リッジ装置20から最新のDREQの状態が送信され、
それがRGM1522に送られる。RGM1522で
は、シリアルREQ#が分解されてISA DMAC1
521への内部DREQ0〜7に変換される。
される内部DACK#0〜7によって指定されるDMA
転送対象のチャネル情報は、RGM1522が実行する
シリアルGNT#信号線を利用したシリアル転送によっ
て、DS−PCI/ISAブリッジ装置20に送られ
る。
22およびIIDR1523から提供される最新のDR
EQチャンネル情報に基づき、DREQチャンネルマス
クの設定および調停方式の設定に従って、82C37互
換の、DREQチャンネル間調停を行う。有効なDMA
要求(DREQ)があれば、ISA DMAC1521
は、まず、自身に割り当てられているREQ#をアクテ
ィブにしてPCIバスアービタ(PBA)151に対し
てバス使用権を要求し、PBA151からGNT#が与
えられるのを待つ。
と、ISA DMAC1521は、調停の結果選択した
DMAチャンネル番号に対応する内部DACK#をアク
ティブにして、DMA転送を実行するDMAチャンネル
番号をRGM1522とIIDR1523へ返す。そし
て、ISA DMAC1521は、選択されたDMAチ
ャンネルのセットアップ情報によって規定されるDMA
転送モード(シングル転送モード、ブロック転送モー
ド、デマンド転送モード、カスケードモード)に対応す
るDMAサイクルを実行する。この場合、ISA DM
AC1521は、前述したようにメモリ、I/Oサイク
ルとも、PCIバスのバスサイクルのみをサポートし、
ISAバスのバスサイクルについてはブリッジ装置15
または20によってエミュレートされる。
をシリアル化して転送するというDMAシリアルチャネ
ルプロトコルに関する処理を行うためにシリアルREQ
#およびシリアルGNT#の状態を管理する。このRG
M1522は、DMAシリアルチャネルプロトコルと、
ISA DMAC1521に対するISAスタイルのD
REQ/DACK#プロトコルとの間の変換を行う。
を入力することができる。また、各REQ#信号毎に、
そのREQ#信号のプロトコルをプログラムすることが
できる。したがって、シリアルREQ#およびシリアル
GNT#として使用されるREQ#およびGNT#信号
線のペアを複数用意すれば、DS−PCI/ISAブリ
ッジ装置20経由で行われる外部ISAバス5上のデバ
イスとの間のDREQ,DACK#の授受だけでなく、
例えばPCカードコントローラ17のPCカード61,
62とISA DMAC1521との間のDREQ,D
ACK#の授受についてもDMAシリアルチャネルプロ
トコルによって行うことができる。
チャネルプロトコルと、PBA151がサポートする標
準PCIスタイルのアービトレーションのためのREG
#/GNT#プロトコル(これは、文献“PCI LO
CAL BUS”,Revision2.01、199
4年10月20日、PCI Special inte
rest Group P47〜P52に記載されてい
る)。
との間のDREQ,DACK#の授受だけでなく、外部
PCIバス4上のPCIマスタ41との間のREQ#,
GNT#の授受もDMAシリアルチャネルプロトコルを
使用して行われる。この場合のREQ#,GNT#の処
理は、RGM1522によって次のように行われる。
(LANボード、SCSIボードなど)は、REQ#を
アクティブにすることによって、バス使用要求をDS−
PCI/ISAブリッジ装置20に知らせる。DS−P
CI/ISAブリッジ装置20は、シリアルREQ#を
利用したシルアルデータ転送によって、バス使用要求を
RGM1522へ知らせる。この場合、そのバス使用要
求の通知には、ISAデバイスによって使用されていな
いDMAチャネルであるDREQ4が用いられる。
を分解し、シリアルREQ#によってDREQ4が通知
されたことを検出すると、REQ#をアクティブにして
PBA151に対してバス使用を要求する。PBA15
1は、標準PCIのルールによって調停を行い、GNT
#によってRGM1522に対してバス使用を許可す
る。
NT#を受け取ると、シリアルGNT#を使用したシリ
アルデータ転送によって、バス使用が許可されたことを
DS−PCI/ISAブリッジ装置20に通知する。こ
の通知には、DACK4が使用される。DS−PCI/
ISAブリッジ装置20は、RGM1522が送信した
シリアルGNT#信号を分解し、PCIマスタ41にG
NT#を与える。PCIマスタ41は、GNT#を受け
取るとバスサイクルを開始する。
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上に出
力する。
3は、内部PCIバス2と内部ISAバス3とを繋ぐブ
リッジであり、メモリおよびI/Oなどの内部ISAバ
ス3上の全てのデバイスを制御する。このIIBB15
3は、ISA DMAC1521がDMA転送のために
PCIバス2上に発生するメモリまたはI/Oサイクル
をプロトコル変換して、内部ISAバス3上へ伝える。
CIバス2と、ドッキングステーションに導出されるP
CIバス相当のドッキングバスとを繋ぐブリッジLSI
であり、PCIバス2上のエージェントとして機能す
る。このPCI−DSブリッジ装置16には、DMAシ
リアルチャンネルプロトコルによるシリアルREQ#/
GNT#の転送の同期化のためのバッファが設けられて
いる。
スマスタの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に渡
される。
ーラ17と同様、内部PCIバス2上のエージェントで
あり、且つDMAシリアルチャネルプロトコルをサポー
トしている。このPCIDMA18によって制御される
DMAスレーブ19がDMA転送を要求した時、そのD
MA要求、すなわちDREQはシリアルREQ#よって
RGM1522に送信される。また、RGM1522か
らのシリアルGNT#はPCIDMA18によってDA
CK#に分解されてDMAスレーブ19に通知される。
は、DSコネクタを介してコンピュータ本体からドッキ
ングステーションに導出されるドッキングバス(PCI
バス相当)と外部PCIバス4および外部ISAバス5
とを繋ぐブリッジLSIである。このDS−PCI/I
SAブリッジ装置20は、PCカードコントローラ17
と同じくPCIバスマスタの1つであり、且つDMAシ
リアルチャネルプロトコルをサポートしている。
は、外部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が設けられている。
ISA DMAC1521が発生するメモリサイクルお
よびI/OサイクルをPCI−DSブリッジ16を経由
して受け取り、それを外部PCIバス4上へ伝える。ま
た、外部PCIバス4上のPCIマスタデバイス41に
バス使用権が与えられた場合は、EPBB201は、外
部PCIバス4上のバストランザクションをドッキング
バス上に発生させる。
ISA DMAC1521が発生するメモリサイクルお
よびI/OサイクルをPCI−DSブリッジ16を経由
して受け取り、それをプロトコル変換して外部ISAバ
ス5上へ伝える。また、外部ISAバス5上のISAマ
スタデバイス41にバス使用権が与えられた場合は、E
IBB202は、外部ISAバス5上のバストランザク
ションをドッキングバス上に発生させる。
MAシリアルチャネルプロトコルをサポートするために
設けられたものであり、それらの接続関係を図3に示
す。LBA203は、外部PCIバス4上のPCIバス
マスタ41からのバス使用要求REQ#と、外部ISA
バス5上のISAマスタ51およびDMAスレーブ5
2,53からのDREQ信号(基本的にISAのDMA
チャンネル分ある)の状態の変化を監視しており、最新
の状態をシリアルREQ#を利用したビット列のシリア
ル転送によって、PCI−DSブリッジ16経由でRG
M1522へ伝える。
フォーマットは次の通りである。 LBA203は、アクティブにされたREQ#の前縁を
スタートbit(S)とし、以後、DMAチャンネルの
0から7までを1クロックフレームづつ使用して、シリ
アルに伝える。チャンネル4のフレームは、PCIマス
タ41のバス要求状態の変化を伝えるために使用され、
それ以外は、ISAマスタ51,DMAスレーブ52,
53のDMA要求の状態変化を伝えるために使用され
る。
し、“H”で要求ありを意味する。上述の例では、DR
EQ0、2、7がアクティブであり、且つPCIマスタ
41がバス使用を要求している状態(DREQ4がアク
ティブ)に対応している。
ード、フリーズ)を有する。RGM1522からのシリ
アルGNT#を受け取るまでは、LBA203は、プロ
シード状態であり、常に最新の状態をRGM1522へ
伝えるように努力する。すなわち、プロシード状態で
は、PCIバスマスタ41のREQ#、またはISAマ
スタ51、およびDMAスレーブ52,53のDREQ
状態の変化が発生する度に、それをDMAシリアルチャ
ンネルプロトコルによってRGM1522に通知する。
受け取ると、LBA203は、そのシルアルGNT#に
含まれるビット列をデコードし、DACK#をEIDR
204へ返すか、あるいは外部PCIバス4にGNT#
を返す。
信されるビット列のフォーマットは次の通りである。 RGM1522は、アクティブにされたGNT#の前縁
をスタートbit(S)とし、以後、DMAチャンネル
のDACK#0から7までのどれかひとつを3bitで
コード化した情報を、LSBから順番に、各bitに1
クロックフレームづつ割り当てて、シリアルに伝える。
チャンネル4のコードは、PCIマスタ41のバス要求
状態に応答するGNT#を伝えるために使用され、それ
以外は、ISAマスタ51,DMAスレーブ52,53
のDMA要求に対するDACK#を伝えるために使用さ
れる。
り、DMAチャンネル1が選択された(DACK1#が
与えられた)ことを意味する。一旦、GNT#を受け取
ると、LBA203の動作状態はプロシード状態からフ
リーズ状態に切り換えられる。フリーズ状態は、そのG
NT#に対応するデバイス(PCIマスター、ISAマ
スター、DMAスレーブ)がバスの使用要求を取り下げ
るまで維持され、その期間では、たとえ他のデバイスに
状態変化が生じても、それを通知するためのシリアルR
EQ#サイクルの実行は凍結され、REQ#はアクティ
ブ状態に維持され続ける。
Aサイクル実行中にインアクティブにされるといった不
具合を防止するために用意されたこの発明の特徴とする
動作ステートであり、その詳細は、図4および図5を参
照して後述する。
プロトコルでは、PCIマスタ用に割り当てられたフレ
ームはチャネル4だけである。このため、外部PCIバ
ス4上に複数のPCIマスタが存在する場合には、それ
ら複数のPCIマスタからのREQ#間の調停もLBA
203によって行われる。
ピング情報にしたがって、外部ISAバス5上のISA
マスタ51およびDMAスレーブ52,53それぞれに
マッピングされるDMAチャネルを変更する。このEI
DR204と前述のIIDR1523との共同作用によ
り、内部ISAバス3上のデバイスと外部ISAバス5
上のデバイスとにDMAチャネルを排他的に割り当てる
ことができる。
びDMAスレーブ52,53それぞれからのDREQ信
号の状態を、マッピング情報に従って、それらデバイス
のDMAチャネル番号に対応するDREQ信号に変換し
てLBA203に伝える。また、EIDR204は、L
BA203からのDACK#を、マッピング情報に従っ
て、ISAマスタ51およびDMAスレーブ52,53
が実際に使用しているDACK#に変換して、外部IS
Aバス5上に出力する。
実行されるDMA転送処理の全体の流れを説明する。 (1)ISA互換のDRQ調停 ISA DMAC1521は、ISA互換のDREQ信
号を、IIDR1523とRGM1522とから受け取
る。これをもとに、調停を行い、有効な(マスクされて
いない)DMA要求があるか、どのDMAチャンネルへ
DACK#を返すか、を決定する。 (2)内部PCIバスの使用要求の発生 有効なDMA要求があると、ISA DMAC1521
は、REQ#をPBA151に対して発生する。ただ
し、この時点では、DACK#を与えるDMAチャンネ
ルは決定しない。また、内部PCIバス2がロック状態
のときは、REQ#の発生は抑制される。 (3)内部PCIバス使用権の獲得 ISA DMAC1521は、PBA151からのGN
T#を獲得すると、必要なDMA転送(一般的に、複数
回のPCIバスサイクルが発生)がすべて終了するまで
は、バス使用要求REQ#を出し続ける。途中で、ター
ゲットリトライによるバスサイクル終了があっても、バ
スを解放しない。
ック状態をチェックし、ロックされていれば、REQ#
をインアクティブにし、GNT#を無効化する。 (4)DACK#アサート ISA DMACは、GNT#を獲得した時点で、DA
CK#を与えるDMAチャンネルを決定する。DACK
#を、RGM1522とIIDR1523へ送る。DA
CK#をアクティブにした時点で、DMAチャンネルが
固定される。 (5)バスサイクルの発生とその繰り返し ISA DMAC1521は、DACK#をアサートし
てから、内部PCIバス2にバスサイクルを発生する。
ただし、選択されたDMAチャンネルが、カスケードモ
ードにプログラムされている場合は、バスサイクルは発
生しない。
チャンネルのモードレジスタの内容(転送タイプ)によ
り、ライト転送、リード転送、ベリファイ転送の3種類
に分類される。
モリライト)について具体的に説明する。ライト転送
は、次の2つのバスサイクルを1組とし、それを必要回
数繰り返すことによって実行される。
バスのI/Oリードサイクルと全く同じである。ただ
し、I/Oアドレスが特別の意味を持つ。
AC)に割り当てられており、ISA DMAC152
1以外のターゲットが応答することはない。TCは転送
カウント値が尽きた事、つまり転送終了を示す信号であ
る。
DACK#をもらっている経路にあるすべてのブリッジ
である。例えば、シリアルGNT#によって外部ISA
バス5上のDMAスレーブにDACK#が与えられた場
合には、PCI−DSブリッジ16、およびDS−PC
I/ISAブリッジ20のEIBB202が応答する。
ド(IOR#)を出力する。アドレスがTCを指定して
いるとき(00000004h)は、ISAバス5上へ
TCを出力する。このとき、DACK#は、EIDR2
04によりすでに出力されている。従って、ISAバス
5上には、DACK#で選択されたDMAスレーブから
リードデータが出力される。ブリッジ20は、このデー
タをISAバス5から内部PCIバス2へ伝える。
1521にラッチされる。このデータは、ISA DM
AC1521が直後に発生するメモリライトサイクル
で、ライトデータとして使用される。
スのメモリライトサイクルと全く同じである。メモリア
ドレスは、ISA DMAC1521に内蔵されたカレ
ントアドレスレジスタとページレジスタとから作られ
る。ライトデータは、ISA DMAC1521が直前
に発生したDMA専用I/Oサイクル(リード)でラッ
チされたものが使用される。1回の転送で、1バイト
(8bitDMA)または2バイト(16bitDM
A)を発生する。
12は、通常のPCIマスターからのメモリライトと全
く同じように応答し、システムメモリ13をライトアク
セスする。リトライで終了した場合でも、ISA DM
AC1521は多少の待ち時間をおいてから、再度同じ
メモリサイクルを発生してくる。この間、ISA DM
AC1521はバス2を解放しない。
したプロシードおよびフリーズについて具体的に説明す
る。図4には、DS−PCI/ISAブリッジ20とR
GM1522の動作状態の関係が示されている。
SAマスタ51およびDMAスレーブ52,53が出力
するDREQの状態は、DS−PCI/ISAブリッジ
20内部のLBA203によって実行されるパラレル→
シリアル変換のディレー、RGM1522によって実行
されるシリアル→パラレル変換のディレー、および多少
の同期化のディレーを経て、ISA DMAC1521
へ内部DREQ入力として伝えられる。その途中で、シ
リアル転送のために、一時的に、REQ#という信号名
に置き換わる。
CK#の状態は、RGM1522によって実行されるパ
ラレル→シリアル変換のディレー、DS−PCI/IS
Aブリッジ20内部のLBA203によって実行される
シリアル→パラレル変換のディレー、および多少の同期
化のディレーを経て、ISAマスタ51およびDMAス
レーブ52,53にDACK#として伝えられる。その
途中で、シリアル転送のために、一時的に、GNT#と
いう信号名に置き換わる。
場合も同様であり、上記の説明の、DMAスレーブ・I
SAマスターをPCIマスタに置き換え、ISA DM
AC1521をPBA151に置き換えて考えればよ
い。
LBA203は、RGM1522からのシリアルGNT
#により、DMAスレーブ・ISAマスターのDACK
#またはPCIマスタのGNT#が与えられる以前は、
自分の分担する全てのDREQ信号とREQ#信号の最
新状態をRGM1522へ伝えるように努力する。この
状態を、プロシード状態(QP)と呼ぶ。プロシード状
態にあるとき、LBA203は、アクティブにされてい
るシリアルREQ#信号を一旦インアクティブにし、再
度、シリアルREQ#をスタートビットから送信し直す
ことができる。
リアルGNT#により、DMAスレーブおよびISAマ
スタのDACK#またはPCIマスタのGNT#が与え
られると、それ以降は、シリアルGNT#で指定された
チャンネルに対応するDREQ信号あるいはREQ#信
号がインアクティブにされるまでは、シリアルREQ#
信号をアクティブにし続ける。この状態を、フリーズ状
態(QF)と呼ぶ。
アクティブ状態のシリアルREQ#信号をインアクティ
ブにできるのは、シリアルGNT#で指定されたDRE
Q信号あるいはREQ#信号がインアクティブにされた
ときだけである(厳密に言えばリセット時もある)。フ
リーズ状態においては、DREQ信号とREQ#信号の
状態を更新する目的で、REQ#デアサートし、再度、
シリアルREQ#をスタートビットから送信し直す、と
いうことはできない。
れているように、シリアルGNT#によってDACK#
を受信したとき、LBA203の動作状態はプロシード
からフリーズに切り替えられる。フリーズ状態では、D
ACK#が通知されたI/Oデバイス、すなわちDMA
サイクル実行中のI/OデバイスのDMA要求の状態に
変化が生じた時のみシリアルREQ#サイクルの実行が
許可され、他の目的でのシリアルREQ#サイクルの実
行は全て凍結される。
K#が通知された後は、DMAサイクル実行中のI/O
デバイスのDMA要求がインアクティブにならない限
り、たとえ他のI/Oデバイスに関するDMA要求の状
態に変化が生じてもシリアルREQ#を利用した再送信
は行われない。したがって、その再送信のためにシリア
ルREQ#がDMAサイクル実行中にインアクティブに
されるといった不具合がなくなり、DMA転送を正常に
行うことが可能となる。
20側のプロシードとフリーズの2つの状態に対応し、
RGM1522側にも、アンロック(SU)とロック
(SL)という2つの状態を用意することが好ましい。
ってDMAスレーブ・ISAマスタにDACK#、また
はPCIマスタにGNT#を伝える以前は、ISA D
MAC1521へ伝えるDREQ、あるいはPBA15
1へ伝えるREQ#を、保持する。この場合、シリアル
REQ#がインアクティブされても、ISA DMAC
1521へ伝えるDREQ、あるいはPBA151へ伝
えるREQ#がインアクティブにされることはない。L
BA203からのシリアルREQ#によって、DREQ
とREQ#の最新状態が更新されたときは、シリアル→
パラレル変換後に、その結果を反映する。このようにシ
リアルREQ#のインアクティブが特定のDREQのイ
ンアクティブあるいはREQ#のインアクティブを意味
しない、という意味で、この状態を、アンロック状態
(SU)と呼ぶ。
ってDMAスレーブ・ISAマスタにDACK#、また
はPCIマスタにGNT#を伝えると、それ以降は、シ
リアルGNT#によって指定したチャンネルに対応する
DREQあるいはREQ#に対して“ロック”される。
ロックというのは、従って、チャンネルロック、という
意味である。LBA203から出力されるシリアルRE
Q#がインアクティブにされた時、ISA DMAC1
521へ伝えるDREQあるいはPBA151へ伝える
REQ#のうち、ロックされているもののみがインアク
ティブにされる。シリアルREQ#のインアクティブが
特定のDREQのインアクティブあるいはREQ#のイ
ンアクティブを意味する、という意味で、この状態を、
ロック状態(SL)と呼ぶ。
とRGM1522側のアンロック状態が対応し、LBA
203側のフリーズ状態とRGM1522側のロック状
態が対応する(QPとSU、QFとSL)。
MAシリアルチャネルを利用することによって生じる不
具合を解消するために、LBA203とRGM1522
との間で規定したシリアルREQ#送信ルール(1Tル
ール)について説明する。
ルール)はこの発明の第2の特徴とする部分であり、そ
の送信ルールの原理は次の通りである。 (1)再送信の目的でシリアルREQ#をインアクティ
ブするときは、シリアルREQ#のインアクティブ期間
(シリアルREQ#=“H”)を1T幅にする。
QインアクティブまたはREQ#インアクティブを伝え
るとき(つまり、DACK#を受け取ったISAマスタ
またはDMAスレーブによるDREQインアクティブ、
あるいはGNT#を受け取ったPCIマスタによるRE
Q#インアクティブを伝えるとき)は、シリアルREQ
#のインアクティブ期間(シリアルREQ#=“H”)
を2T以上にする。
り、シリアルREQ#を受け取るRGM1522側で、
(1)のケースか、(2)のケースかを判定することが
可能となる。すなわち、REQ#=LからHへの変化の
直後(1TのみH)に、再度REQ#=Lとなれば、こ
れは再送信のためのスタートと判断できる。
デバイスからのDREQまたはPCIマスタからのRE
Q#を再送する目的でシルアルREQ#がインアクティ
ブにされても、それが、DMAサイクル実行中のI/O
デバイスがDREQをインアクティブした、またはバス
が解放されたと誤判断されることは無くなる。よって、
図9で説明した問題、つまりDREQを発行したI/O
デバイスに対するDACK#が出かかって消えるという
不具合を防止することができる。
−PCI/ISAブリッジ20側のQP,QFとRGM
1522側のSU,SLとの対応関係がくずれても、そ
れによる不具合を防止できるようになる。具体的には、
QPなのにSLという状態が発生した時、誤動作が生じ
る。QPなのにSLという状態は、次のようなケースで
発生する。
クティブにした場合、これがDS−PCI/ISAブリ
ッジ20側でシリアル/パラレル変換されてDACK#
またはGNT#になるまでには時間がかかる。この時間
内に、DS−PCI/ISAブリッジ20が、再送信目
的でシリアルREQ#をインアクティブする可能性があ
る。これは、DS−PCI/ISAブリッジ20のLB
A203がまだフリーズ状態になっておらず、プロシー
ド状態だからである。
ック状態からロック状態へと遷移しており、上記のシリ
アルREQ#のインアクティブは、ロックされたチャン
ネルのDREQインアクティブまたはREQ#インアク
ティブとして処理されてしまう。つまり、ISA DM
AC1521に対する内部DREQ、またはPBA15
1に対するREQ#のどちらかがインアクティブにされ
る。
種のイリーガルな状態の組み合わせが発生したためにお
きたものである。この組み合わせが発生したのは、シリ
アルGNT#をRGM1522からDS−PCI/IS
Aブリッジ20へ伝えるのに時間遅れがあったからであ
る。この時間遅れは、RGM1522とLBA203と
が別チップ上に存在している限り、宿命的に発生する。
送信されたシリアルGNT#はLBA203へ到着し、
LBA203の動作状態はQFとなる。LBA203
は、シリアルGNT#を、DACK#あるいはGNT#
として、要求もとのDMAスレーブ・ISAマスターあ
るいはPCIマスターへ伝える。
ターあるいはPCIマスターは、いま、まさに動作を開
始しようとしている状態になっている。一方、RGM1
522は、既にISA DMAC1521に対するDR
EQをインアクティブあるいはPBA151に対するる
REQ#をインアクティブにしてしまっているので、シ
ステム全体としては動作できない状態に陥る。
消できる。以下、図6のタイミングチャートを参照し
て、上述の1Tルールを採用した場合のDS−PCI/
ISAブリッジ20側の動作(図6(A))とRGM1
522側の動作(図6(B))について具体的に説明す
る。
は、それぞれDS−PCI/ISAブリッジ20側の動
作とRGM1522側の動作をタイムディレイを考慮し
た状態で示している。
ブ52がDREQをアクティブにする。このDREQの
状態は、図6(A)に示されているようにDREQ A
のアクティブとして、EIDR204経由でLBA20
3に通知される。LBA203は、シリアルREQ#を
利用したビット列のシルアル転送を行い、DREQAを
RGM1522に送信する。この場合、シリアルREQ
#のスタートビットSに後続するビット列は、DMAチ
ャネルA(DMAチャネル0〜7の内で、チャネル4を
除く所定の1チャネル)がアクティブにされていること
を示す。
(B)に示されているように、RGM1522はそのシ
リアルREQ#を分解し、ISA DMAC1521に
対して内部DREQ A信号(Int,DREQ A)
を発生する。
Q A信号が有効なDMAリクエストであれば、PBA
151に対してREQ#をアクティブにして、バス使用
を要求する。PBA151は、標準PCIのアービトレ
ーションプロトコルに従って調停を行い、GNT#をア
クティブにすることによって、ISA DMAC152
1に対してバス使用権を許可する。以後は、REQ#が
インアクティブにされるまでは、GNT#はアクティブ
にされ続ける。
1からのGNT#を受け取ると、内部DACK A#を
アクティブにする。RGM1522は、ISA DMA
C1521からのDACK A#が、自分が出したDR
EQ Aに該当するかどうかチェックする。該当してい
た場合、図6(B)に示されているようにシリアルGN
T#信号を利用したビット列の転送を実行し、DACK
A#をLBA203へ伝える。また、この時、RGM
1522はロック(SL)状態に入る。
バス5上のDMAスレーブ53がDREQをアクティブ
にすると、このDREQの状態は、図6(A)に示され
ているように、DREQ BのアクティブとしてEID
R204経由でLBA203に通知される。この場合、
LBA203はまだプロシード(QP)の状態であるの
で、図6(A)に示されているように、シリアルREQ
#を利用したビット列のシルアル転送を行い、DREQ
AおよびDREQ BをRGM1522に際送信す
る。この場合、ここで実行されるシルアル転送はDRE
Q Aの再送信を目的としたシリアルREQ#であるの
で、そのシリアルREQ#のインアクティブ期間は図6
(A)のように1Tに設定される。また、シリアルRE
Q#のスタートビットSに後続するビット列は、DMA
チャネルAおよびBの双方がアクティブにされているこ
とを示す。
されているように、ロック中のRGM1522に届く。
RGM1522は、受信したシリアルREQ#のインア
クティブ期間が1Tであることから、そのシリアルRE
Q#が再送信目的で送られてきたものであることを認識
できる。したがって、アクティブ状態の内部DREQA
が誤ってインアクティブに設定されることは無く、図6
(B)のように内部DREQ Bだけがアクティブ状態
に変化される。
たシリアルGNT#を受け取ると、それを分解して、E
IDR204経由でDMAスレーブ52にDACK A
#を返す。そして、LBA203は、図6(A)のよう
にフリーズ状態に入る。
にDMAスレーブ52からのDREQ Aが図6(A)
のようにインアクティブに変化すると、LBA203
は、シリアルREQ#を利用したビット列のシルアル転
送を行う。この場合、ここで実行されるシルアル転送は
DREQ Aがインアクティブに変化したことを通知す
ることを目的としたシリアルREQ#であるので、その
シリアルREQ#のインアクティブ期間は2T以上に設
定される。また、シリアルREQ#のスタートビットS
に後続するビット列は、現在アクティブにされているの
はDMAチャネルBだけであることを示す。
M1522に届く。RGM1522は、受信したシリア
ルREQ#のインアクティブ期間が2T以上であること
から、ロック中のDREQ Aがインアクティブにされ
たと認識し、内部DREQAを図6(B)のようにイン
アクティブにする。
バス方向の切り替えを高速実行するために、このシステ
ムで採用したシリアルGNT#の4ビット化技術につい
て説明する。
522からLBA203へシリアルGNT#を返す場
合、DACK#の最終到着点にあるものが、DMAスレ
ーブ52,53である場合とISAマスタ51である場
合とで、以後、発生するバスサイクルが大きく異なる。
#が与えられるケースでは、ISADMAC1521
が、内部PCIバス2上にバスサイクルを発生し、これ
が、システム全体のバスへ伝わってゆく。その末端に、
DMAスレーブ52,53がいる。
えられるケースでは、ISAマスタ51が外部ISAバ
ス5上でバスサイクルを発生し、これが内部PCIバス
2へ伝えられ、以後、必要なバスへも伝えられる。IS
Aマスタ51が動作するときのバス方向は、PCIマス
タ41が動作するときのバ方向と似ている。
ッジ16,20は、シリアルGNT#でコード化された
チャンネル番号を知ることができる。このチャンネル番
号が4であれば、PCIマスタ41が動きだす、という
ことを知ることができるので、それに合わせたバス方向
制御が可能である。
2,53か、またはISAマスタ51へのDACK#と
いうことになる。このとき、シリアルGNT#のコード
情報だけでは、DACK#が与えられるデバイスが、D
MAスレーブなのかISAマスターなのかを判定できな
い。従って、バス方向制御ができない。
21が内部PCIバス2上でバスサイクルを発生する
か、またはISAマスタ51が外部ISAバス5上のM
ASTER#信号をアクティブにするので、その時点で
判定はできる。
られず、フローティング状態が続く、ということであ
る。このフローティング状態を回避するために、このシ
ステムでは、シリアルGNT#を3bitから4bit
へ増やす方式を採用している。
シリアルGNT#の4bit目に、そのときのDACK
#で指定されたDMAチャンネルが、カスケードモード
にプログラムされているかどうか、という情報を載せる
というものである。シリアルGNT#で送信されるビッ
ト列の4ビット目、つまりbit C=“H”のときは
カスケードモード、bit C=“L”のときその他の
モード(シングル、ブロック、デマンドモード)とす
る。
21からの内部DACK#をシリアルGNT#によって
LBA203に送るとき、ISA DMAC1521か
らそのチャンネルがカスケードモードにプログラムされ
ているかどうかの情報も、あわせてもらう。この情報に
もとづいて、RGM1521は、シリアルGNT#の4
bit目を制御する。
ッジ16、20は、4bit目の情報にもとづいて、バ
ス方向をすばやく決定することができる。bit C=
“H”の場合と“L”の場合のバス方向を図8に示す。
ここで、バス方向とは、アドレスバスおよび制御信号系
のバスのことを意味している。
(すなわち、DMAスレーブのDACK#)、あるい
は、PCIマスタに対するGNT#については、4bi
t目は常に“L”である。従って、シリアルGNT#が
3bitだった場合と、互換性がある。
テムでは、RGM1522とLBA203の構成によっ
て、DMAシリアルチャネルプロトコルに(1)プロシ
ードとフリーズの2つの動作状態の設定、(2)1Tル
ールの採用、(3)シリアルGNT#の4ビット化、と
いう3つの対策が施されている。なお、(1)のプロシ
ードとフリーズの2つの動作状態の設定、(2)の1T
ルールの採用については、PCカードコントローラ17
とRGM1522との間のDMAシリアルチャネルプロ
トコルにおいても、同様にして適用することができる。
ば、プロシードとフリーズの2つの動作状態を設定した
ことにより、バスアクセス許可信号を利用したシリアル
データ転送によってDMAアクノリッジが通知された後
は、DMAサイクル実行中のI/OデバイスのDMA要
求がインアクティブにならない限り、たとえ他のI/O
デバイスに関するDMA要求の状態に変化が生じてもバ
スアクセス要求信号を利用した再送信は行われない。し
たがって、その再送信のためにバスアクセス要求信号が
DMAサイクル実行中にインアクティブにされるといっ
た不具合がなくなり、DMA転送を正常に行うことが可
能となる。
セス要求信号のインアクティブ期間の長さによって、開
始されるシリアルデータ転送サイクルが、DMA要求を
再送するためのサイクルであるか否かがDMAコントロ
ーラに通知される。このため、DMA要求を再送する目
的でバスアクセス要求信号がインアクティブされても、
それが、DMAサイクル実行中のI/OデバイスがDM
A要求をインアクティブした、またはバスが解放された
と誤判断されることは無くなる。よって、DMA要求を
発行したI/Oデバイスに対するDMAアクノリッジが
出かかって消えるなどの不具合を防止できる。
より、バスアクセス許可信号を利用したシリアルデータ
転送サイクルによってDMAサイクルが実行されるDM
Aチャネルを特定するための第1のシリアルビット情報
だけでなく、そのDMAチャネルがカスケードモードに
セットアップされているか否かを示す第2のシリアルビ
ット情報も送信される。DMAサイクルが実行されるD
MAチャネルがカスケードモードであれば、以降のバス
サイクルはバスマスタによって実行される。よって、そ
の第2のシリアルビット情報を利用することにより、ブ
リッジは即座にバス方向を決定できるようになる。
シリアルチャネルプロトコルを採用したポータブルコン
ピュータのシステム構成を示すブロック図。
アの構成を示すブロック図。
I/ISAブリッジ装置の構成を示すブロック図。
SAブリッジ装置と動作状態の関係を示す図。
けられた2つの動作状態を説明するためのタイミングチ
ャート。
SAブリッジ装置との間に規定された1Tルールを説明
するためのタイミングチャート。
ISAブリッジ装置に送られるシリアルGNT#を4ビ
ット化した様子を示す図。
利用して行われるバス方向切り替え動作を説明するため
の図。
ために必要となると予想されるポータブルコンピュータ
のシステム構成例を示すブロック図。
た場合に発生すると予想される問題点を説明するための
タイミングチャート。
SAバス、4…外部PCIバス、5…外部ISAバス、
11…CPU、12…ホスト/PCIブリッジ装置、1
3…システムメモリ、14…内部PCIバス上のPCI
マスタデバイス、15…内部PCI−ISAブリッジ装
置、16…PCI−DSブリッジ装置、17…PCカー
ドコントローラ、20…DS−PCI/ISAブリッジ
装置、31,32…内部ISAバス上のI/O(DMA
スレーブ)、41…外部PCIバス上のI/O(PCI
マスタ)、51,52,53…外部ISAバス上のI/
O(ISAマスタ、DMAスレーブ)、151…PCI
バスアービタ(PBA)、152…DMACコア(MP
PDMA)、153…内部ISAバスブリッジ(IIB
B)、201…外部PCIバスブリッジ(EPBB)、
202…外部ISAバスブリッジ(EIBB)、203
…ローカルバスアービタ(LBA)、204…外部IS
A DMAルータ(EIDR)、1521…ISA D
MAC、1522…バスリクエストおよびグラントマネ
ージャ(RGM)、1523…内部ISA DMAルー
タ(IIDR)、DREQ…DMA要求信号、DACK
#…DMAアクノリッジ信号、REQ#…バスリクエス
ト信号、GNT#…バス使用許可信号。
Claims (12)
- 【請求項1】 PCIバスと、 このPCIバス上に定義され、バスマスタ毎に1組ずつ
割り当てられているバスアクセス要求信号(REQ#)
線およびバスアクセス許可信号(GNT#)線を利用し
てバスアクセスを調停するバスアービタ(PBA)と、 前記PCIバスに接続され、直接メモリアクセス(DM
A)を実行するDMAコントローラと、 前記DMAコントローラのDMA機能を必要とする複数
のI/Oデバイスと、 これら複数のI/Oデバイスと前記PCIバス間に接続
された第1のバスマスタであって、前記複数のI/Oデ
バイスそれぞれから出力される複数のDMA要求信号
(DREQ)の状態をシリアル情報に変換し、そのシリ
アル情報を、前記第1のバスマスタに割り当てられたバ
スアクセス要求信号(REQ#)線を利用したシリアル
転送サイクルによって前記DMAコントローラに送信す
る第1のバスマスタと、 前記PCIバスおよび前記DMAコントローラに接続さ
れ、前記第1のバスマスタに割り当てられたバスアクセ
ス要求信号(REQ#)線およびバスアクセス許可信号
(GNT#)線を管理する管理手段であって、前記第1
のバスアクセス要求信号(REQ#)線を利用したシリ
アル転送サイクルによって送信されたシリアル情報を、
前記DMAコントローラに入力するための複数のDMA
要求信号(DREQ)に変換する手段、および前記DM
Aコントローラから出力される複数のDMAアクノリッ
ジ信号(DACK#)それぞの状態をシリアル情報に変
換し、そのシリアル情報を前記第1のバスマスタに割り
当てられたバスアクセス許可信号(GNT#)線を利用
したシリアル転送サイクルによって前記第1のバスマス
タに送信する手段、を含む管理手段とを具備し、 前記第1のバスマスタは、 前記複数のI/OデバイスそれぞれからのDMA要求信
号(DREQ#)の状態変化が発生する度に前記バスア
クセス要求信号(REQ#)線を利用したシリアル転送
サイクルを実行して最新のDMA要求信号(DREQ
#)の状態を前記DMAコントローラに通知するプロシ
ードモードと、DMAサイクル実行中のI/Oデバイス
から出力されるDMA要求信号(DREQ#)の状態変
化だけを前記シリアル転送サイクルによって前記DMA
コントローラに通知するフリーズモードを有し、前記プ
ロシードモードおよびフリーズモードのいずれか一方の
モードで動作するDMA要求通知手段と、 前記バスアクセス許可信号(GNT#)を利用したシリ
アル転送サイクルによって所定のI/Oデバイスに対す
るDMAアクノリッジ(DACK#)を前記管理手段か
ら受信したとき、前記DMA要求通知手段の動作モード
を前記プロシードモードから前記フリーズモードに切り
替える手段とを具備することを特徴とするコンピュータ
システム。 - 【請求項2】 前記第1のバスマスタは、前記PCIバ
スと、前記複数のI/Oデバイスが接続されたISAバ
スとを繋ぐPCI/ISAブリッジであることを特徴と
する請求項1記載のコンピュータシステム。 - 【請求項3】 前記複数のI/OデバイスそれぞれはP
Cカードであり、前記第1のバスマスタは、それらPC
カードを制御するカードコントローラであることを特徴
とする請求項1記載のコンピュータシステム。 - 【請求項4】 前記PCI/ISAブリッジは、 前記PCIバス上のバスサイクルをプロトコル変換し
て、前記PCIバス上のバスサイクルに対応する前記I
SAバス上のバスサイクルを発生する手段を含むことを
特徴とする請求項2記載のコンピュータシステム。 - 【請求項5】 前記PCI/ISAブリッジは、 前記複数のI/Oデバイスそれぞれに割り当てるべきD
MAチャネル番号を示すマッピング情報に従って、前記
複数のI/Oデバイスそれぞれに割り当てるDMA要求
信号(DREQ#)およびDMAアクノリッジ信号(D
ACK#)の設定/変更を行う手段を含むことを特徴と
する請求項2記載のコンピュータシステム。 - 【請求項6】 PCIバスと、 このPCIバス上に定義され、バスマスタ毎に1組ずつ
割り当てられているバスアクセス要求信号(REQ#)
線およびバスアクセス許可信号(GNT#)線を利用し
てバスアクセスを調停するバスアービタ(PBA)と、 前記PCIバスに接続され、直接メモリアクセス(DM
A)を実行するDMAコントローラと、 前記DMAコントローラのDMA機能を必要とする複数
のI/Oデバイスと、 これら複数のI/Oデバイスと前記PCIバス間に接続
された第1のバスマスタであって、前記複数のI/Oデ
バイスそれぞれから出力される複数のDMA要求信号
(DREQ)の状態をシリアル情報に変換し、そのシリ
アル情報を、前記第1のバスマスタに割り当てられたバ
スアクセス要求信号(REQ#)線を利用したシリアル
転送サイクルによって前記DMAコントローラに送信す
る第1のバスマスタと、 前記PCIバスおよび前記DMAコントローラに接続さ
れ、前記第1のバスマスタに割り当てられたバスアクセ
ス要求信号(REQ#)線およびバスアクセス許可信号
(GNT#)線を管理する管理手段であって、前記第1
のバスアクセス要求信号(REQ#)線を利用したシリ
アル転送サイクルによって送信されたシリアル情報を、
前記DMAコントローラに入力するための複数のDMA
要求信号(DREQ)に変換する手段、および前記DM
Aコントローラから出力される複数のDMAアクノリッ
ジ信号(DACK#)それぞの状態をシリアル情報に変
換し、そのシリアル情報を前記第1のバスマスタに割り
当てられたバスアクセス許可信号(GNT#)線を利用
したシリアル転送サイクルによって前記第1のバスマス
タに送信する手段、を含む管理手段とを具備し、 前記第1のバスマスタは、 前記I/OデバイスそれぞれからのDMA要求信号(D
REQ#)の状態変化を監視し、DMA要求信号(DR
EQ#)の状態変化が発生する度に前記バスアクセス要
求信号(REQ#)を利用したシリアル転送サイクルを
実行して、最新のDMA要求信号(DREQ#)の状態
を前記DMAコントローラに通知するDMA要求通知手
段であって、 同一のI/OデバイスについてそのI/Oデバイスから
のDMA要求信号(DREQ#)がアクティブにされて
いることを示すシリアル情報を再送する場合と、前記バ
スアクセス許可信号(GNT#)を利用したシリアル転
送サイクルによって送信されたDMAアクノリッジ(D
ACK#)によって選択されたI/OデバイスからのD
MA要求信号(DREQ#)がインアクティブにされた
ことを示すシリアル情報を送信する場合とで、前記バス
アクセス要求信号(REQ#)を利用したシリアル転送
サイクルにおける前記バスアクセス要求信号(REQ
#)のインアクティブ期間を異ならせる手段を含むDM
A要求通知手段を具備したことを特徴とするコンピュー
タシステム。 - 【請求項7】 前記DMA要求通知手段は、 既にDMA要求信号(DREQ#)がアクティブにされ
たことを示すシリアル情報を送信した第1のI/Oデバ
イスのDMA要求信号(DREQ#)の状態が変化しな
い状態で第2のI/OデバイスからのDMA要求信号
(DREQ#)がアクティブに変化されたとき、前記バ
スアクセス要求信号(REQ#)を第1の期間だけイン
アクティブに変化させた後に、それら第1および第2の
I/OデバイスそれぞれのDMA要求信号(DREQ
#)がアクティブ状態であることを示すシリアル情報
を、前記バスアクセス要求信号(REQ#)を利用した
シリアル転送サイクルによって送信し、 前記バスアクセス許可信号(GNT#)を利用したシリ
アル転送サイクルによって送信されたDMAアクノリッ
ジ(DACK#)によって選択されたI/Oデバイスか
らのDMA要求信号(DREQ#)がインアクティブに
変化されたとき、前記バスアクセス要求信号(REQ
#)を前記第1の期間よりも長い第2の期間だけインア
クティブに変化させた後に、前記DMA要求信号(DR
EQ#)がインアクティブにされたことを示すシリアル
情報を、前記バスアクセス要求信号(REQ#)を利用
したシリアル転送サイクルによって送信することを特徴
とする請求項6記載のコンピュータシステム。 - 【請求項8】 前記第1のバスマスタは、前記PCIバ
スと、前記複数のI/Oデバイスが接続されたISAバ
スとを繋ぐPCI−ISAブリッジであることを特徴と
する請求項6記載のコンピュータシステム。 - 【請求項9】 前記複数のI/OデバイスそれぞれはP
Cカードであり、前記第1のバスマスタは、それらPC
カードを制御するカードコントローラであることを特徴
とする請求項6記載のコンピュータシステム。 - 【請求項10】 前記PCI−ISAブリッジは、 前記PCIバス上のバスサイクルをプロトコル変換し
て、前記PCIバス上のバスサイクルに対応する前記I
SAバス上のバスサイクルを発生する手段を含むことを
特徴とする請求項6記載のコンピュータシステム。 - 【請求項11】 PCIバスと、 このPCIバス上に定義され、バスマスタ毎に1組ずつ
割り当てられているバスアクセス要求信号(REQ#)
線およびバスアクセス許可信号(GNT#)線を利用し
てバスアクセスを調停するバスアービタ(PBA)と、 前記PCIバスに接続され、直接メモリアクセス(DM
A)を実行するDMAコントローラと、 前記PCIバスとISAバスとを接続するPCI−IS
A/ブリッジ装置であって、前記ISAバスに接続され
た複数のI/Oデバイスそれぞれから出力される複数の
DMA要求信号(DREQ)の状態をシリアル情報に変
換し、そのシリアル情報を、前記PCI−ISA/ブリ
ッジ装置に割り当てられたバスアクセス要求信号(RE
Q#)線を利用したシリアル転送サイクルによって前記
DMAコントローラに送信するPCI−ISA/ブリッ
ジ装置と、 前記PCIバスおよび前記DMAコントローラに接続さ
れ、前記第1のバスマスタに割り当てられたバスアクセ
ス要求信号(REQ#)線およびバスアクセス許可信号
(GNT#)線を管理する管理手段であって、前記第1
のバスアクセス要求信号(REQ#)線を利用したシリ
アル転送サイクルによって送信されたシリアル情報を、
前記DMAコントローラに入力するための複数のDMA
要求信号(DREQ)に変換する手段、および前記DM
Aコントローラから出力される複数のDMAアクノリッ
ジ信号(DACK#)それぞの状態をシリアル情報に変
換し、そのシリアル情報と、そのシリアル情報によって
DMA転送の実行が指定されるDMAチャネルがカスケ
ードモードにセットアップされているか否かを示すモー
ド情報とを、前記PCI−ISAブリッジ装置に割り当
てられたバスアクセス許可信号(GNT#)線を利用し
たシリアル転送サイクルによって前記PCI−ISAブ
リッジ装置に送信する手段、を含む管理手段とを具備
し、 前記PCI−ISAブリッジ装置は、 前記モード情報に従って前記DMA転送の実行が指定さ
れるDMAチャネルがカスケードモードか否かを検出
し、その検出結果に従って、前記DMAコントローラに
よるDMAサイクル、またはISAバスマスタとして機
能するI/Oデバイスによるバスサイクルにそれぞれ対
応したバス方向制御を実行することを特徴とするコンピ
ュータシステム。 - 【請求項12】 前記PCI−ISAブリッジ装置は、 前記モード情報がカスケードモードを示すとき、アドレ
スおよび各種各制御信号の伝送方向を前記ISAバス側
から前記PCIバス側に設定し、前記モード情報がカス
ケードモード以外の他のモードを示すとき、前記アドレ
スおよび各種各制御信号の伝送方向を前記PCIバス側
から前記ISAバス側に設定することを特徴とする請求
項11記載のコンピュータシステム。
Priority Applications (3)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP20568295A JP3576647B2 (ja) | 1995-08-11 | 1995-08-11 | コンピュータシステム |
| US08/694,749 US5937206A (en) | 1995-08-11 | 1996-08-09 | System for converting states of DMA requests into first serial information and transmitting information to first bus whenever a state change of a request |
| US08/702,430 US5850529A (en) | 1995-08-11 | 1996-08-09 | Method and apparatus for detecting a resource lock on a PCI bus |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP20568295A JP3576647B2 (ja) | 1995-08-11 | 1995-08-11 | コンピュータシステム |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| JPH0954745A true JPH0954745A (ja) | 1997-02-25 |
| JP3576647B2 JP3576647B2 (ja) | 2004-10-13 |
Family
ID=16510956
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP20568295A Expired - Fee Related JP3576647B2 (ja) | 1995-08-11 | 1995-08-11 | コンピュータシステム |
Country Status (2)
| Country | Link |
|---|---|
| US (1) | US5937206A (ja) |
| JP (1) | JP3576647B2 (ja) |
Families Citing this family (10)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JPH1153301A (ja) * | 1997-08-06 | 1999-02-26 | Kobe Nippon Denki Software Kk | バス・アービトレーション・インタフェース |
| US6163818A (en) * | 1998-08-27 | 2000-12-19 | Xerox Corporation | Streaming memory controller for a PCI bus |
| US6757762B1 (en) * | 1999-10-29 | 2004-06-29 | Unisys Corporation | Multi-mode processor bus bridge |
| US6735620B1 (en) * | 2000-07-18 | 2004-05-11 | International Business Machines Corporation | Efficient protocol for retransmit logic in reliable zero copy message transport |
| US8134852B2 (en) * | 2008-10-14 | 2012-03-13 | Mosaid Technologies Incorporated | Bridge device architecture for connecting discrete memory devices to a system |
| US7957173B2 (en) * | 2008-10-14 | 2011-06-07 | Mosaid Technologies Incorporated | Composite memory having a bridging device for connecting discrete memory devices to a system |
| US20100115172A1 (en) * | 2008-11-04 | 2010-05-06 | Mosaid Technologies Incorporated | Bridge device having a virtual page buffer |
| US8549209B2 (en) * | 2008-11-04 | 2013-10-01 | Mosaid Technologies Incorporated | Bridging device having a configurable virtual page size |
| JP5790043B2 (ja) * | 2011-03-14 | 2015-10-07 | 株式会社リコー | データ転送システム及びデータ転送方法 |
| TW201344445A (zh) * | 2012-04-27 | 2013-11-01 | Sunix Co Ltd | 可分配低階輸入輸出埠其介面位址的pci介面裝置 |
Family Cites Families (13)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US4897786A (en) * | 1987-09-04 | 1990-01-30 | Digital Equipment Corporation | Bus window interlock |
| US5123092A (en) * | 1988-10-21 | 1992-06-16 | Zenith Data Systems Corporation | External expansion bus interface |
| JPH0581173A (ja) * | 1991-03-01 | 1993-04-02 | Yokogawa Electric Corp | システムバス間ステータス情報転送装置 |
| US5546587A (en) * | 1991-05-30 | 1996-08-13 | Tandem Computers Incorporated | Decentralized bus arbitration system which continues to assert bus request signal to preclude other from asserting bus request signal until information transfer on the bus has been completed |
| FR2677473B1 (fr) * | 1991-06-05 | 1995-04-07 | Telemecanique | Procede et bus d'arbitrage pour transmission de donnees serie. |
| JP3466212B2 (ja) * | 1991-09-17 | 2003-11-10 | インテル・コーポレーション | コンピュータシステム |
| US5574869A (en) * | 1992-03-30 | 1996-11-12 | Intel Corporation | Bus bridge circuit having configuration space enable register for controlling transition between various modes by writing the bridge identifier into CSE register |
| US5396602A (en) * | 1993-05-28 | 1995-03-07 | International Business Machines Corp. | Arbitration logic for multiple bus computer system |
| US5450551A (en) * | 1993-05-28 | 1995-09-12 | International Business Machines Corporation | System direct memory access (DMA) support logic for PCI based computer system |
| TW400483B (en) * | 1994-03-01 | 2000-08-01 | Intel Corp | High performance symmetric arbitration protocol with support for I/O requirements |
| US5729762A (en) * | 1995-04-21 | 1998-03-17 | Intel Corporation | Input output controller having interface logic coupled to DMA controller and plurality of address lines for carrying control information to DMA agent |
| US5640520A (en) * | 1995-05-01 | 1997-06-17 | Intel Corporation | Mechanism for supporting out-of-order service of bus requests with in-order only requesters devices |
| US5619661A (en) * | 1995-06-05 | 1997-04-08 | Vlsi Technology, Inc. | Dynamic arbitration system and method |
-
1995
- 1995-08-11 JP JP20568295A patent/JP3576647B2/ja not_active Expired - Fee Related
-
1996
- 1996-08-09 US US08/694,749 patent/US5937206A/en not_active Expired - Fee Related
Also Published As
| Publication number | Publication date |
|---|---|
| JP3576647B2 (ja) | 2004-10-13 |
| US5937206A (en) | 1999-08-10 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US4807109A (en) | High speed synchronous/asynchronous local bus and data transfer method | |
| JP2886173B2 (ja) | アダプタ | |
| JPH0954746A (ja) | コンピュータシステム | |
| US5396602A (en) | Arbitration logic for multiple bus computer system | |
| CN1069426C (zh) | 信息处理系统 | |
| KR100417839B1 (ko) | 컴퓨터 구성요소들 간의 개선된 인터페이스 방법 및 장치 | |
| JP3385091B2 (ja) | 計算機間の排他制御装置 | |
| JPH01205366A (ja) | データを転送するための方法およびそのためのデータ転送制御器 | |
| JPH01231159A (ja) | データを転送するための方法およびそのための直接メモリアクセス手段 | |
| US6397279B1 (en) | Smart retry system that reduces wasted bus transactions associated with master retries | |
| JPH02289017A (ja) | コンピユータシステム内でデータ転送方法 | |
| JPH10293744A (ja) | Pciバス・システム | |
| US6567881B1 (en) | Method and apparatus for bridging a digital signal processor to a PCI bus | |
| JP3576647B2 (ja) | コンピュータシステム | |
| JP3609051B2 (ja) | Usb−hubデバイスおよびその制御方法 | |
| US6829670B1 (en) | Using consecutive block IDs to keep track of data transferred across a serially linked bridge | |
| US6425071B1 (en) | Subsystem bridge of AMBA's ASB bus to peripheral component interconnect (PCI) bus | |
| CN117194309A (zh) | 用于芯片间互连的控制器、芯片、处理系统及电子设备 | |
| US6622191B1 (en) | Computer system | |
| JPH0981507A (ja) | コンピュータシステム | |
| US5850529A (en) | Method and apparatus for detecting a resource lock on a PCI bus | |
| US5857081A (en) | Method and apparatus for controlling a master abort in a computer system | |
| US5539666A (en) | Data communications method and system coupling device | |
| US5838930A (en) | Method and apparatus for controlling a command cycle on a bus | |
| JP2001209610A (ja) | 制御チップセット間におけるデータトランザクション方法 |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20040414 |
|
| A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20040420 |
|
| A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20040609 |
|
| TRDD | Decision of grant or rejection written | ||
| A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20040706 |
|
| A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20040708 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20080716 Year of fee payment: 4 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20090716 Year of fee payment: 5 |
|
| LAPS | Cancellation because of no payment of annual fees |