JPH1069457A - 多数のアービタを有するコンピュータ・システムにおいて分散仲裁を処理するための回路 - Google Patents

多数のアービタを有するコンピュータ・システムにおいて分散仲裁を処理するための回路

Info

Publication number
JPH1069457A
JPH1069457A JP9196143A JP19614397A JPH1069457A JP H1069457 A JPH1069457 A JP H1069457A JP 9196143 A JP9196143 A JP 9196143A JP 19614397 A JP19614397 A JP 19614397A JP H1069457 A JPH1069457 A JP H1069457A
Authority
JP
Japan
Prior art keywords
bus
arbiter
signal
pci
computer system
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.)
Withdrawn
Application number
JP9196143A
Other languages
English (en)
Inventor
Dwight D Riley
ドワイト・ディー・リリー
James R Edwards
ジェームズ・アール・エドワーズ
David J Maguire
デーヴィッド・ジェイ・マグイリ
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.)
Compaq Computer Corp
Original Assignee
Compaq Computer 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 Compaq Computer Corp filed Critical Compaq Computer Corp
Publication of JPH1069457A publication Critical patent/JPH1069457A/ja
Withdrawn 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/368Handling requests for interconnection or transfer for access to common bus or bus system with decentralised access 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

(57)【要約】 【課題】 複数アビータにより複数バスへのアクセスを
仲裁する。 【解決手段】 コンピュータ・システムは、PCIバス
112aを介して結合される着脱自在のラップトップ部
分と拡張ベースとを含む。これら各々は、PCIバス・
マスタ及びISAバス・マスタからのPCIバスに対す
る要求を仲裁するため、別のPCIアービタ回路204
を含む。ラップトップ部分は、トップ・レベル・アービ
タを含み、ラップトップまたは拡張ベース内のPCIア
ービタがPCIバスへのアクセスを有するか否かについ
て判定を行う。サイクルを実行する前に、いずれかのP
CIアービタがトップ・レベル・アービタからの許可を
受けるが、ラップトップ部分がドッキングされている
間、トップ・レベル・アービタは、時分割多重でPCI
アービタ間で選択を行う。拡張ベース及びラップトップ
部分がドッキングされてないと、トップ・レベル・アー
ビタはラップトップのPCIアービタにバス・アクセス
を許可する。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、コンピュータ・シ
ステムにおけるバス・アービトレーション(仲裁)に関
し、更に特定すれば、多数の周辺アービタを有するコン
ピュータ・システムにおける分散アーブトレーション方
式(distributed arbitration scheme)に関するものであ
る。
【0002】
【従来の技術】マイクロプロセッサおよびメモリ・シス
テムにおける性能改善の結果、コンピュータは非常に強
力となり、従来では大型のメインフレーム・コンピュー
タでなければ不可能であったようなタスクであっても、
今日ではパーソナル・コンピュータによって実行可能と
なっている。技術的な変化は、携帯用コンピュータの分
野においてに特に素早く、この分野では、電力消費効率
の、構造、コスト、サイズ、重量および性能との均衡化
が図られる。多くのコンピュータ・ユーザは、携帯用コ
ンピュータに、デスクトップ機が提供するもの以上を提
供することを望むので、このような均衡化は特に意欲的
である。尚、本明細書では、「携帯用コンピュータ」と
いう用語は広い意味で用い、電池または太陽による電力
による給電を受ける種類のコンピュータを指すものとす
る。携帯用コンピュータに精通するものは、携帯用、引
き出し可能(luggable)、ラップトップ、ノートブックお
よびハンドへルドというような他の名称も認識するであ
ろう。これらの分類は、増々大きくなる携帯用コンピュ
ータ・マーケットの中のあるマーケティング区分を表わ
すために用いられている。
【0003】コンピュータ・システムの設計者には、多
くの選択肢が利用可能である。単に入手可能な最高の性
能のプロセッサを中心に設計しているだけでも、高性能
の製品提供にかなりの効果があるが、競争が激しい今日
の市場では十分ではない。プロセッサは、高性能入出力
(I/O)バスを含む、高性能の構成要素による支援が
なければならない。システム設計者に利用可能な標準化
されたI/Oバスにはいくつかあり、それらは、ISA
(Industry Standard Architecture:業界標準アーキテ
クチャ)バス、EISA(Extended Industry Standard A
rchitecture:拡張業界標準アーキテクチャ)バス、及び
PCI(Peripheral Component Interface:周辺要素イ
ンターフェース)バスが含まれる。今日のコンピュータ
は、典型的に、これら3種類のバスのいずれかの組み合
わせを用いて設計し、PCIの性能およびISAに対す
る下位互換性(backward compatibility)をユーザに提供
する。これら3種類のバスについて、当業者は熟知して
いるであろう。
【0004】また設計の選択には、一製造業者のコンピ
ュータを競合のコンピュータから差別化するために、あ
る種の特殊なコンピュータの構造も必要である。携帯用
コンピュータ市場では、付加的な構造は大型化および重
量化の原因となるので、これは特別な課題である。例え
ば、ソフトウエアは大量の記憶領域を必要とするので、
多くの場合大容量ハード・ディスク・ドライブが望まし
い。しかしながら、大容量ディスク・ドライブは通常、
携帯用コンピュータに望ましいものよりも、はるかに大
きく重い。また携帯用コンピュータに機能性を追加する
能力を有することも望ましい。しかしながら、典型的な
拡張ベイは、システムのサイズの利点を損なう可能性が
ある。サイズおよび重量に負の影響を与えることなく特
別な特徴を備える既知の方法の1つに、拡張ベース・ユ
ニット(expansion base unit)(ドッキング・ステーシ
ョンとも呼ばれている)の使用によるものがある。拡張
ユニットは、携帯用ユニットではなく、典型的に交流電
力で動作し、ユーザのデスクトップ上に常駐する。ユー
ザが机に向かって作業をしているとき、携帯用コンピュ
ータは拡張ユニットに挿入され、付加機能が提供され
る。例えば、拡張ユニットは、ローカル・エリア・ネッ
トワーク、大容量ディスク・ドライブ、フロッピ・ドラ
イブおよびその他の周辺機器に接続するためのネットワ
ーク・インターフェース・ユニットを有することができ
る。
【0005】携帯用コンピュータおよび拡張ベース・ユ
ニット間の接続に関しては、規格がまだ発展していない
ので、通常、所有権を主張できる(proprietry)。携帯用
コンピュータを拡張ベース・ユニットに結合する既知の
方法の1つに、既存のI/Oバスによるものがある。P
CIバスおよびISAバスを有する携帯用コンピュータ
では、いずれかのバスを用いて、拡張ベース・ユニット
に接続すればよい。最高の性能のためには、PCIバス
が好ましい。PCIバスは、高いスループットを有し、
数が増加しつつあるI/O機能を支援するローカル・プ
ロセッサを利用するように設計されたものである。例え
ば、殆どのディスク・コントローラ、特に、小型コンピ
ュータ・システム・インターフェース(SCSI)コン
トローラ、およびネットワーク・インターフェース・カ
ード(NIC)は、ホスト・プロセッサに対する要求を
軽減するためにローカル・プロセッサを含む。同様に、
ビデオ・グラフィック・ボードはインテリジェント・ア
クセレレータを含むことが多く、より高いレベルの機能
移転を可能にしている。典型的に、これらの装置は、バ
ス・マスタとして機能する能力を内蔵しており、可能な
限り高い速度でのデータ転送を可能にしている。他の潜
在的なバス・マスタには、CPU/主メモリ・サブシス
テムおよびPCI−ISAブリッジが含まれる。PCI
−ISAブリッジは、拡張直接メモリアクセス(EDM
A)コントローラおよびISAバス・マスタがPCIバ
スへのアクセスを獲得できるようにする手段である。
【0006】潜在的にバス・マスタになるために競合す
る多数の装置のために、仲裁方式が必要となる。PCI
の仕様は、仲裁に対するモデル・アルゴリズムを制定し
ておらず、単に、PCIバス・マスタはREQ*信号をアク
ティブにしてPCIバスに対する要求を示し、仲裁ロジ
ックはGNT*信号をアクティブにすることにより、要求元
のマスタがバスの制御を得ることができるようにするこ
とを要求するのみである。多くの仲裁方式が典型的なス
タンドアロン型デスクトップ・コンピュータ・システム
において用いられており、提案されている。
【0007】かかる仲裁方式の1つが、本願と共に譲渡
された、"Bus Master ArbitrationCircuitry Having Im
proved Prioritization"と題する米国特許第5,47
1,590号に記載されている。この内容は、ここで言
及することにより、本願にも含まれるものとする。この
特許は、ターゲット装置が発生するリトライ(再試行)
による、バス上のスラッシング(thrashing)を最少に抑
えるPCIバス用アービタについて開示する。PCI規
格によると、応答したターゲット装置は、バス・マスタ
にリトライを発生することによって、サイクルを中断す
ることができる。処理を中断することによって、他のバ
ス・マスタがバスへのアクセスを得ることを許され、一
方リトライを発生したターゲット装置には、当該装置に
リトライを発行させた条件をクリアする機会が与えられ
る。この特許に記載されているアービタは、リトライさ
れたマスタからのそれ以上の要求を遮蔽することによ
り、バスのスラッシングを防止する。しかしながら、遮
蔽された要求の内優先度の高いものは、後続のサイクル
において保持される。他のリソースのために仲裁を行う
他のアービタも開示されている。多数のアービタを一緒
に作用して、PCIバス、ならびにEISAバスおよび
DMAコントローラへのアクセスを仲裁する。
【0008】多数のバスを内蔵するシステムのための改
良された他の仲裁方式が、1995年3月3日に出願さ
れた、"Bus Master Arbitration Circuitry Having Mul
tiple Arbiters"と題する、本願と共に譲渡された米国
特許出願第08/398,366号に記載されている。
この引例は、CPU/マスタ・メモリ・サブシステムお
よびPCI−ISAブリッジを含む、複数のバス・マス
タを有するPCIバスについて記載している。開示され
たPCI−ISAブリッジは、拡張DMA(EDMA)
コントローラおよびISAバス・マスタに、PCIバス
へのアクセスを獲得させる。EDMAコントローラは、
IDEまたは同様の装置による、主メモリのアクセスを
制御する。好ましくは、コマンド・サイクルをPCIバ
ス上に発生し、ディスク・ライト(読出)またはディス
ク・リード(書込)のどちらが望まれているかをEDM
Aに通知する。EDMAコントローラは、これに応答し
て、選択されたIDE装置に対する適正なコマンド・ス
トローブをアサートする。選択されたIDE装置とPC
Iバスとの間のデータ転送は、ISAバスのデータ部分
によって行われる。ISAバス・マスタは、リフレッシ
ュ・コントローラ、DMAコントローラ、およびISA
バス・マスタ・カードを含む。
【0009】このように、米国特許出願第08/39
8,366号は、潜在的バス・マスタからのPCIバス
に対する要求を仲裁するためのPCIアービタを開示す
る。PCIアービタは、改良したリースト・リーセント
使用頻度(LRU)仲裁方式を利用する。更に、ISA
バスのデータ部分は、EDMAコントローラ、リフレッ
シュ・コントローラ、DMAコントローラ、PCI−I
SAサイクルにおけるPCIマスタの1つ、およびIS
Aバス・マスタの1つからの要求を処理するためのアー
ビタを有する。ISAバス・マスタの優先度は、DMA
コントローラ内の複数のチャネルによって仲裁される。
DMAコントローラ内のアービタは、ISAバスに対す
る要求元のタイプに基づいて、別の優先度方式を実施す
るロジックも含む。前記文献は、2つの要求元タイプ、
即ち、DMAコントローラおよびISAバス・マスタを
含む第1のタイプ、ならびにその他の装置、即ちEDM
Aコントローラ、リフレッシュ・コントローラ、及びP
CIバス・マスタを含む第2のタイプを開示している。
一旦第1の要求元タイプ(DMAコントローラまたはI
SAバス・マスタ)がISAバスの制御を獲得したな
ら、次の仲裁サイクルではISAバスへのアクセスを失
う。これは、DMAコントローラまたはISAバス・マ
スタに、次の仲裁サイクルにおいてISAバスを強制的
に放棄させる。
【0010】
【発明が解決しようとする課題】上述の仲裁方式は、ス
タンドアロン・コンピュータ・システムにおいては、効
果的な仲裁を提供する。しかしながら、アビータ回路を
内蔵する携帯用コンピュータを、I/Oバスを通じて、
同様に多数のバス・アーキテクチャを採用し別個の仲裁
能力を要求する拡張ベース(またはその他の携帯用コン
ピュータ)に接続する場合、困難が生じる。
【0011】
【課題を解決するための手段】本発明によるコンピュー
タ・システムは、複数のバスへのアクセスを仲裁するた
めの多数のアービタを含む。好適実施例では、コンピュ
ータ・システムは、着脱自在のラップトップ部分と、拡
張ベース・ユニットとに分割される。ドッキング(取り
付け)されたとき、ラップトップ・コンピュータおよび
拡張ベースは、共有PCIバスを通じて結合される。P
CIバスに加えて、コンピュータ・システムの2つの部
分の各々は、ISAまたはEISAに準拠したI/Oバ
ス、ならびに潜在的なPCIおよびISAバス・マスタ
からのPCIバスに対する要求を仲裁するための、別個
で異なるPCIアビータ回路も含む。
【0012】トップ・レベル(最高位)・アービタは、
コンピュータ・システムのラップトップ部分に含まれ、
ラップトップにおけるPCIアービタまたは拡張ベース
におけるPCIアービタがPCIバスへのアクセスを有
するか否かを制御する。いずれのPCIアービタも、サ
イクルを実行する前に、最高位アービタからの許可を受
けなければならない。ラップトップ・コンピュータがド
ッキングされている間、最高位アービタは、時間多重化
に基づいて、ラップトップのPCIアービタおよび拡張
ベースのPCIアービタ間で選択を行う。
【0013】ラップトップのPCIアービタは、最高位
アービタへのラップトップ要求信号を用いて、バス・ア
クセスを要求し、最高位アービタがラップトップ許可信
号を用いることによって、バス・アクセスが許可され
る。拡張ベースのPCIアービタも同様に、拡張要求信
号を送出し許可信号を受け取る。これらの信号は、ラッ
プトップ・コンピュータと拡張ベースとの間で伝達され
る。最高位アービタが拡張ベースのアービタと通信する
ために用いるのは、これら2つの信号のみである。この
ように、最高位アービタを用いて、ラップトップのPC
Iアービタまたは拡張ベースのPCIアービタが共有P
CIバスへのアクセスを有するか否かについて判定する
ことにより、ラップトップ・ユニットおよび拡張ユニッ
ト間の接続に使用するピンを少なくすることができる。
【0014】
【発明の実施の形態】以下の出願は、ここで言及するこ
とにより本願にも含まれているものとする。本願と同時
に出願された、Dwight D. RileyおよびDavid J. Maguir
eによる、"BUS SYSTEM FOR SHADOWING REGISTERS"と題
する米国特許出願第08/684,486号◎ 本願と同時に出願された、David J. MaguireおよびJame
sR. Edwardsによる、"LONG LATENCY INTERRUPT HANDLIN
G AND INPUT/OUTPUT WRITE POSTING"と題する米国特許
出願第08/684,485号◎ 本願と同時に出願された、David J. MaguireおよびHung
Q. Leによる、"SERIAL BUS SYSTEM FOR SHADOWING REG
ISTERS"と題する米国特許出願第08/684,710
号◎ 本願と同時に出願された、Gregory N. Santos、David
J. Maguire、Dwight D.Riley、およびJames R. Edwards
による、"APPARATUS AND METHOD FOR POSITIVELY AND S
UBTRACTIVELY DECODING ADDRESSES ON A BUS"と題する
米国特許出願第08/684,584号◎ 本願と同時に出願された、Gregory N. Santos、David
J. Maguire、Dwight D.Riley、およびJames R. Edwards
による、"TWO ISA BUS CONCEPT"と題する米国特許出願
第08/671,316号◎ 本願と同時に出願された、Gregory N. Santos、David
J. Maguire、William C. Hallowell、およびJames R. E
dwardsによる、"RECONFIGURABLE DUAL MASTER IDE INTE
RFACE"と題する米国特許出願第08/684,490号
◎ 本願と同時に出願された、Richard S. Lin、David J. M
aguire、James R. EdwardsおよびDavid J. Delisleによ
る、"COMPUTER SYSTEM INCORPORATING HOT DOCKING AND
UNDOCING CAPABILITIES WITHOUT REQUIRING A STANDBY
OR SUSPEND MODE"と題する米国特許出願第08/68
4,255号◎ これらは全て本発明の譲受人に譲渡されたものである。
【0015】図1を参照する。本発明を利用したコンピ
ュータ・システムのブロック図が示されている。図示の
コンピュータ・システムは、ラップトップ部分L(以
後、ラップトップ・コンピュータLと呼ぶ)と、拡張ベ
ース・ユニット部分E(以後、拡張ベースEと呼ぶ)と
に分割されている。ラップトップ・コンピュータLは、
動作的に自律装置であり、遠隔計算処理のために、拡張
ベースEから着脱自在となっている。ラップトップ・コ
ンピュータLを拡張ベースEにドッキングしている間、
ラップトップ・コンピュータLは交流(AC)電力で動
作し、ラップトップ・コンピュータLが拡張ベースEか
らアンドッキングされ(取り外され)ている間、ラップ
トップ・コンピュータLは電池電力によって動作する。
また、拡張ベースEから取り外されている間AC電力で
ラップトップ・コンピュータを動作させるための機構も
設けられている。拡張ベースEは、空間および電力の問
題により、ラップトップ部分Lには含まれていない機能
の拡張性を得るためのものである。
【0016】中央処理装置(CPU)100がラップト
ップ・コンピュータLに設けられている。CPU100
は、Intel CorporationからのPentiumTMのような従来の
マイクロプロセッサ、または同様のプロセッサである。
CPU100は、キャッシュ・メモリ102、移動周辺
要素相互接続バス・キャッシュ・コントローラ(MP
C)108および1対のモービル(移動)・データ・バ
ッファ(MDB)104のようなシステム・ロジックと
通信するために、ホスト・バス110に結合されてい
る。キャッシュ・メモリ102は、CPU100のため
の従来のキャッシュ・メモリであり、好ましくは、高速
同期バースト・ランダム・アクセス・メモリ(RAM)
から成る。MPC108は、キャッシュ・メモリ102
へのインターフェースを備え、タグRAMおよびその他
のロジックを含み、キャッシュ・メモリ102の様々な
キャッシュ方法、サイズ、及び速度の環境設定(コンフ
ィギュレーション)をする。
【0017】MPC108およびMDB104は、シス
テム・メモリ106および周辺要素相互接続(PCI)
バス112にも結合されている。当業者は、PCIバス
またはPCIの仕様について精通しているものとする。
MPC108は、システム・メモリ106にアドレスお
よびコントロールを与える。システム・メモリ106
は、256Mバイトまでの従来のダイナミック・ランダ
ム・アクセス・メモリ(DRAM)から成る。MDB1
04は、ホスト・バス110およびシステム・メモリ1
06間に64ビット・データ経路を与えると共に、PC
Iバス112への32ビット・データ経路を与える。M
PC108およびMDB104は、プロセッサ/キャッ
シュ・インターフェース、システム・メモリ・インター
フェース、およびPCIバス・インターフェースという
3種類の主要機能インターフェースを有する。MDB1
04はこれら3種類のインターフェース間のデータをバ
ッファする役目を担い、一方MPC108はアドレッシ
ング、コマンドおよびコントロールを処理する。これら
のインターフェースの各々は互いに独立して動作し、3
種類のインターフェースのいずれか2つの間のリードお
よびライト・ポスティング(posting)のためのキューを
含む。プロセッサ/キャッシュ・インターフェースは、
CPU100に、リード・サイクルにサイクルをパイプ
ライン化させ、更に、パイプライン・サイクルを実行し
ている間に、タグRAMへのスヌープ・アクセス(snoop
access)を発生させることができる。メモリ・インター
フェースは、システム・メモリ106を制御し、制御信
号をMDB104に発生する。また、このインターフェ
ースは、これらのPCIマスタがリード多重コマンド(r
ead multiple command)を発行するために、リード先行
処理(read ahead operation)を可能にする。PCIイン
ターフェースは、CPU100がPCIバス112にア
クセスしているときMPC108にPCIマスタとして
機能させ、PCI装置がシステム・メモリ106にアク
セスするときPCIスレーブとして機能させる。
【0018】PCIバス112は、ラップトップ・コン
ピュータLおよび拡張ベースE間に通信手段を提供す
る。PCIバス112の部分112aは、ラップトップ
・コンピュータL内にあり、PCIバス112の各信号
に対するクイックスイッチ113を含む。クイックスイ
ッチ113は、低損失シリアル(直列)・インラインM
OSFET素子であり、そのゲートはドッキング検出手
段に接続され、ホット・プラグ能力(hot plug capabili
ties)を与える。ラップトップ・コンピュータLが拡張
ベースEにドッキングされクイックスイッチ113がオ
ンになると、拡張ベースE内のPCIバス112の部分
112bは部分112aに結合され、拡張PCIバス1
12が形成される。
【0019】ラップトップ・コンピュータLにおいて、
PCIバス112aは更に、ビデオ・グラフィック・コ
ントローラ114、カードバス・インターフェース11
6(即ち、116a)およびモービル・インテグレーテ
ィド・システム・コントローラ・ラップトップ118
(即ち、MISC−L118b)に結合されている。拡
張ベースEにおいては、PCIバス112bは更に、第
2のMISC118(即ち、118b)、2つのPCI
スロット148、及び第2のカードバス・インターフェ
ース116(即ち、116b)に結合されている。ビデ
オ・グラフィック・コントローラ114は更に、低電力
液晶表示装置(LCD)120、または陰極線管(CR
T)モニタ、あるいは他のいずれかの様式のモニタに結
合されている。カードバス・インターフェース116
は、ネットワーク用カード、モデム・カード、固体記憶
カード、及び好ましくはパーソナル・コンピュータ・メ
モリ・カード国際協会(PCMCIA:personal memor
y card international association)型の回転記憶カー
ド(rotating storage card)のような、追加型カード(ad
d-on card)120と通信するために設けられている。M
ISC118は、業界標準アーキテクチャ(ISA)バ
ス138または140、およびハード・ドライブ122
と通信するための、一体化ドライブ電子回路(IDE)
ハード・ドライブ・インターフェースを与える。MIS
C118は、ラップトップ・コンピュータLにおいては
MISC−L118aとして、および拡張ベースEにお
いてはMISC−E118bとして、双方で使用するた
めに、入力ピン(LAP_EXT_ )に基づいてコンフィギュレ
ーションの変更が可能である。このように、2つのMI
SC装置118a,118bがPCIバス112に結合
され、MISC−L118aがPCIバス部分112a
に結合され、MISC−E118bがPCIバス部分1
12Bに結合される。更に、MISC−Lは内部ISA
バス138に結合され、MISC−Eは外部ISAバス
140に結合されている。読者はISAバスに精通して
いるものとする。
【0020】MISC−L118aおよびMISC−E
118bの一般的な機能は非常に似ているので、ここで
は簡略化のためにこれらを一緒に論ずることにする。M
ISC118はPCIバス112をISAバス138/
140にブリッジし、PCIバス112上のマスタおよ
びスレーブ双方として、並びにISAバス138または
140上のバス・コントローラとして機能する。更にM
ISC118は、8237と互換性のある直接メモリ・
アクセス(DMA)コントローラ、高速IDEハード・
ドライブ用拡張DMAコントローラ、8254と互換性
のあるタイマ、8259と互換性のある割込コントロー
ラ、ホット・ドッキング支援ロジック、システム・パワ
ー(電力)管理ロジック、およびプラグ・アンド・プレ
イ支援部だけでなく、PCIバス・アービタ及びISA
バス・アービタも含む(全てが図1に示されている訳で
はない)。いくつかの構成要素は初期化時にソフトウエ
アによってディゼーブルされ、衝突即ち重複を防止す
る。また、MISC118には、MISC−E118b
からMISC−L118aに割り込みを直列的に渡す、
シリアル割込インターフェース114も含む。シリアル
割込インターフェース144は、PCIを基本とするシ
ステムにおいて、標準的ISA割り込みに対応するため
の割込アーキテクチャを備えている。注意すべき事は、
拡張ベースPCI要求信号EXP_REQおよび拡張ベースP
CI許可信号EXP_GNTも、MISC−E118b及びM
ISC−L118a間で渡されることである。MISC
−E118bは、EXP_REQおよびEXP_GNT信号を用いて、
PCIバス112の制御を要求し受け取る。これらの信
号については、図4に関連付けて更に詳細に論ずること
にする。これら2つの信号は、簡略化のために、シリア
ル割込インターフェース144の一部として示されてい
るが、物理的には別個のラインを通じて通信する。
【0021】MISC118及びISAバス138、1
40は、モービル・スーパー入出力(MSIO)124
周辺装置において組み合わせられているもののような、
標準的ISA周辺装置に対応することができる。MSI
O124周辺装置は、146818と互換性のあるリア
ル・タイム・クロック(RTC)、標準的フロッピ・ド
ライブ130にインターフェースするためのフロッピ・
コントローラ、8051と互換性があり、標準的キーボ
ード132およびポインティング・デバイス150と通
信し、キーボード132上でスキャニングおよびキー・
コードの変換を行い、更に電力管理機能を実行するため
の8051と互換性のあるマイクロコントローラ、標準
的シリアル・ポート136を与える非同期受信/送信機
(UART)、ならびにパラレル(並列)・ポート13
4のための並列ポート・ロジックのような、標準的IS
A周辺装置の組み合わせを有する。リード・オンリ・メ
モリ(ROM)126はMSIO124と結合され、8
051マイクロコントローラにコードを供給する。加え
て、ROM126は基本入出力サービス(BIOS)コ
ードをCPU100に供給する。このコードは、ROM
126からコピーされ、システムの初期化時にシステム
・メモリ106内にシャドウ(shadow)されるので、その
後、8051マイクロコントローラはROM126にア
クセスすることができる。シリアル・バス152は、電
力管理およびホット・ドッキングに関する情報を含むレ
ジスタをシャドウするために設けられている。
【0022】ラップトップ・コンピュータLでは、モデ
ムおよびオーディオ周辺装置128も設けられており、
ISAバス138に結合されている。モデムおよびオー
ディオ周辺装置128は、電話機Tに結合するための標
準的電話通信ポート、および1対のステレオ・スピーカ
Sに結合するためのインターフェースを含む。拡張ベー
スEでは、3つのISA拡張スロット142が、標準的
ISAカードのために設けられている。以上のコンピュ
ータ・システムL、Eは一例であり、他の変形も当業者
には容易に作り出すことができよう。また、追加の下位
アービタを共有バスに結合し、トップ・レベル(最高
位)・アービタが2つ以上の下位アービタ間の仲裁を行
うようにすることも考えられる。例えば、追加のラップ
トップ・コンピュータLの拡張ベースへの付加、または
PCIバス・ブリッジの付加は、この仲裁レベルの追加
を必要とする。
【0023】PCIの仕様は、仲裁のための2つの制御
信号REQ*およびGNT*を含む。各潜在的バスマスタは、そ
れ自体の固有の要求および許可信号を有し、これらは中
央仲裁ロジック(central arbitration logic)によって
傍受され使用される。PCIの仕様が要求するのは、P
CIバスマスタはREQ*信号をアクティブにしてPCIバ
スに対する要求を示さなければならないこと、及び仲裁
ロジックは、要求元マスタがバスの制御を獲得すること
ができるように、GNT*信号をアクティブにしなければな
らないことのみである。単一のGNT*信号のみをいずれか
のクロック上でアサートすればよい。次いでバスマスタ
は、アイドル状態のPCIバスの16CLKサイクルの
間に、バス転送を開始しなければならない。
【0024】PCIバス仲裁は、バスへの各アクセス毎
に別個に行われる。バスマスタは、2回のアクセスの間
PCIバスを保持することは許されていない(これは、
EISAの場合に起こり得る)。このため、PCIバー
ストは、バス仲裁の意味では単一のアクセスを表わす
が、あらゆる数の転送サイクルにも延長可能である。し
かしながら、この単一の仲裁は、PCIバスの転送帯域
を分与しない。なぜなら、仲裁は実際のバスの後ろに
「隠される」からである。これが意味するのは、実際の
バス・アクセスが既に実行されている場合、仲裁は既に
行われているということである。このように、バスがア
イドル状態の場合を除いて、仲裁のためにはPCIバス
・サイクルは必要でない。PCIバスおよび基本的な仲
裁通信プロトコルの構造および動作に関する更に詳細な
説明は、"Peripheral Component Interconnect (PCI)
Local Bus Specification, Revision 2.1 Production V
ersion,"(1995年6月1日発行)、および"Prelimi
nary PCI System Designs Guide" Revision 1.0 (19
93年9月8日発行)に開示されている。これらは双方
とも、PCI Special Interest Groupによるものであり、
その内容は、この言及により本願にも含まれているもの
とする。
【0025】次に図2を参照すると、本発明による仲裁
ロジックのブロック図が示されている。上述のように、
仲裁ロジックは、図1のコンピュータ・システムのMI
SC118(PCI−ISAブリッジ)に内蔵されてい
る。MISC118aおよびMISC118b双方にお
けるアビータ回路は、2つの論理ブロック、PCI分散
アービタ(PDARB)200および下位アビータ回路
202間で分割されている。更に、下位アビータ回路
は、3つの論理ブロック、ローカルPCIアービタ(P
CIARB)204、SDバス・アービタ(SDAR
B)206、およびISAバス・アービタ208に分割
されている。
【0026】PCIのためのトップレベル・アービタは
PDARB200である。PDARB200は、MIS
C−L(118a)またはMISC−E(118b)の
PDARB204がPCIバス112へのアクセスを有
するか否かを制御する。MISC−L118a及びMI
SC−E118bは双方共PDARB200回路を含む
が、PDARB200はMISC−L118aにおいて
のみアクティブである。MISC−E118b内のPD
ARB200は、決してアクティブにならない。しかし
ながら、これはワイヤード入力によって行われるので、
好適実施例では、ラップトップ・コンピュータLおよび
拡張ベースEに異なるバージョンのチップは必要でな
い。
【0027】好ましくは、PCIARB204は、合計
7つのマスタ間で、PCIバス112の仲裁を担う。M
ISC−L118a内のPCIARB204は、3つの
汎用マスタ、CPU100、分散DMAマスタおよびE
DMAマスタ、ならびに1つのISAマスタ間の仲裁を
行う。MISC−E188b内のPCIARB204
は、5つの汎用マスタ、1つのEDMAマスタおよび1
つのISAマスタ間の仲裁を行う。汎用マスタは、ビデ
オ・コントローラ114、カードバス・インターフェー
ス116、およびMPC108を含む。MPC108
は、CPU100がPCIバス112にアクセスしてい
るときはPCIマスタとして機能し、PCI装置がシス
テム・メモリ106にアクセスするときはPCIスレー
ブとして機能する。上述のように、PCIARB204
は、リースト・リーセント使用頻度(LRU)優先度方
式を実施する。全ての許可(ISAを除く)は、それら
に対応する最小許可タイマを有する。最小許可タイマ
は、PCIコンフィギュレーション・プログラミングを
通じて環境設定される。
【0028】SDARB206は、どの装置がSD/I
SAデータ・バス138または140を制御するのかを
判定する。SDARB206は、ISAバス・アービタ
208と共に動作し、どのマスタがISAデータ・バス
138または140の制御を得るのかを判定する。SD
バスを任意に制御可能な装置には、PCIマスタ(PC
I−ISAサイクル用)、リフレッシュ・コントローラ
(図示せず)、EDMAコントローラ、8237DMA
コントローラおよび16ビットISAバス・マスタが含
まれる。ISAバス・マスタは、カスケード状DMAチ
ャネルの使用によって、ISAバス138または140
へのアクセスを獲得する。
【0029】ISAデータ・バスが要求されていない場
合、SDアービタは、バス上でPCIを「停留(park)」
させる。これによって、PCI−ISAサイクルのレイ
テンシを最少に抑える。「停留」という用語は、現在バ
スを使用しているエージェントまたは要求しているエー
ジェントがない場合、アービタは選択したエージェント
に対するGNT*信号をアサートする許可を有することを意
味する。このように、デフォルトのバスマスタがバスの
使用を要求する場合(他に優先度が高い未処理の要求は
ないものとする)、直ちにバスがこのデフォルトのバス
マスタに使用可能となる。バスが停留されているマスタ
が後にPCIバスへのアクセスを要求する場合、そのRE
Q*信号をアサートする必要はない。典型的に、アービタ
は、それが欲するいずれかの方法で、デフォルトの所有
者を選択でき、あるは全く停留させないように選択する
ことができる(事実上、それ自体をデフォルト所有者に
指定する)。下位アビータ回路202についての更なる
詳細は、"Bus Master Arbitration Circuitry Having M
ultiple Arbiters"と題する、前述の米国特許出願番号
第08/398,366号に開示されている。
【0030】好適実施例による仲裁階層を図示した簡略
フローチャートを図3に示す。ラップトップ・コンピュ
ータLをドッキングさせている間、トップレベル・アー
ビタPDARB200は、基本的に時間多重化に基づい
て、MISC−L PCIARB204a及びMISC
−E PCIARB20b間で選択を行う。許可のタイ
ミングについては、以下でより詳しく論ずる。下位仲裁
は通常リースト・リースト使用頻度(LRU)に基づい
て処理されるが、成功した下位仲裁は最初にPDARB
200によって許可されなければならない。
【0031】拡張ベースE及びラップトップ・コンピュ
ータLがドッキングされていない間、PDARB200
は常にMISC−L118aにアクセスを許可する。M
ISC−L PCIARB204aまたはMISC−E
PCIARB204bのいずれかが、サイクルを実行
する前に、PDARB200からの許可を受けなければ
ならない。MISC−L118aは、ラップトップ要求
信号およびラップトップ許可信号LAP_REQ,LAP_GNTを使
用する。これらは、MISC−L118a内部の信号で
ある。MISC−E118bは、2つのMISC間を走
るEXP_REQ信号およびEXP_GNT信号を用いる。これらの信
号については、図4に関連付けてより詳細に論ずること
にする。好適実施例では、アービタが通信に使用するの
は、これら2つのピンのみである。
【0032】MISC118は、以下のように機能する
3つのアービタ・モードに対応する。マスタ・モード
− MISC118はPCI REQ*信号に応答し、マスタ・
アービタとなる。マスタ・モードは、MISC−L11
8aの通常のコンフィギュレーションである。内部LAP_
REQ信号およびLAP_GNT信号は、このモードのとき、PD
ARB200にこれによって供給される。MISC−E
118bをマスタ・モードでプログラムし、将来の製品
においてスタンドアロン拡張ベースに対応可能とするこ
とも考えられる。
【0033】スレーブ・モード − MISC118は
PIC REQ*信号に応答し、マスタ・アービタに要求を渡
す。スレーブ・モードは、MISC−E118bの通常
のコンフィギュレーションである。内部LAP_REQ信号お
よびLAP_GNT信号は、MISC118がスレーブ・モー
ドにあるとき、EXP_REQピンおよびEXP_GNTピンに接続さ
れる。PDARB200モジュールはアクティブでな
い。
【0034】アイドル・モード − MISC118は
PCI REQ*信号に応答しない。PCI技術では、アイドル
状態は、FRAME*およびIRDY*の双方がディアサート(deas
sert)されている間のクロック・サイクルとして定義さ
れる。PCIバス112がアイドル状態にあるとき、P
DARB200はMISC−L PCIARB204a
をアクティブとすることにより、通常動作の間これがP
CU100を停留させることができるようにする。MI
SC−L118aおよびMISC−E118b双方は、
ホット・ドッキング・シーケンスの間、アイドル・モー
ドにすることができる(ホット・ドッキングとは、ラッ
プドック・コンピュータLを拡張ベースEに挿入し、双
方をオンにした状態のことである)。ホット・ドッキン
グおよびリセットの間、アイドル・モードは、全てのバ
スのアクティビティを強制的に中止させ、MISC−L
118aにおいてバスを停留させる。アイドル・モード
は、スレーブ・モードまたはマスタ・モードのいずれか
らも入ることができる。また、アイドル・モードはスレ
ーブ・モードまたはマスタ・モードのいずれにも移行す
ることができる。
【0035】アービタ・アイドル要求ビット(図示せ
ず)がMSIO124によってセットされた場合、以下
のシーケンスが開始される。 1.PDARB200はその許可タイマを無視し、マス
タおよびスレーブPCIARBアービタ204双方への
あらゆるアクティブな要求の保持を直ちに進める。
【0036】2.PCIARBアービタ204は通常に
機能し、あらゆる最少許可時間を終了することを許され
る。
【0037】3.PCIARBアービタ204は全ての
要求を遮蔽し、それ自体をPCIバス112上に停留さ
せる。
【0038】4.PCIARBアービタ204は、MS
IO124へのそれらの各アービタ・アイドル状態ビッ
トをアサートし、バスがアイドル状態にあり、ホット・
ドッキングの用意ができていることを示す。アービタ・
アイドル要求ビットがクリアされると、PDARB20
0はアービタ・アイドル状態ビットをネゲートし、単に
バス制御をMISC−L118aに許可し、通常のPC
Iバス112のアクティビティを再開する。モードの組
み合わせによって、ホット・ドッキングに対する対応が
可能となり、MISC118をラップトップ・コンピュ
ータLおよび拡張ベースE双方において使用可能とな
る。
【0039】次に図4を参照すると、PDARB200
がより詳細に示されている。PDARB200はPDA
RB状態機械400、MISC−LおよびMISC−E
許可タイマ404、許可タイマ・クロックを発生する8
分周回路402、パワー(電源)管理タイマおよびロジ
ック406、ならびにアービタ・アイドル・ロジック4
08を含む。PDARB200への入力および出力は、
以下の表にしたがって機能する。
【0040】
【表1】
【0041】PDARB状態マシン400は、2つのP
CIARBアービタ204aまたは204bのどちら
が、アービタ204aまたは204bのいずれかからの
要求に続いて、PCIバス112の制御を有するのかを
判定する。また、PDARB状態マシン400は、いつ
PCIバスがアイドル状態になり許可を発行すべきでな
いかを判定する。PDARB状態マシン400への制御
信号入力は、LAP_REQ、I_EXP_REQ、EXIT_PARK、RST、AR
B_MASTER、PCI_IDEL、及びARB_IDEL_REQ信号を含む。ラ
ップトップ・コンピュータLの要求信号LAP_REQは、ロ
ーカルPCIARB204aによってアサートされ、ラ
ップトップ装置がPCIバス112の制御を求めている
ことを示す。同様に、拡張ベースEの要求信号I_EXP_RE
Qは、拡張ベースEのPCIARB204bがPCIバ
スの制御を要求したときにアサートされる。EXIT_PARK
信号は、バスの停留が解かれたときに、タイマに再度ロ
ードするために用いられる。先の表1に示したように、
RST信号は、システム・レベル・リセットとして用いら
れる。
【0042】PDARB状態マシン400は、ARB_MAST
ER信号によってイネーブルされる。またこの信号は、ロ
ーカルPCIARB204aをマスタ・モードにセット
し、通常MISC−L118aにおいてのみアサートさ
れる。PCI_IDLE信号は、PCIバスがアイドル状態にあ
ることを示すために用いられる。PCIバスがアイドル
状態にあるのは、通常のコンピュータ動作の大部分の時
間である。ARB_IDLE_REQ信号は、MSIO124がアー
ビタをアイドル・モードに移行させたいときにアサート
される。PDARB状態マシン400に関する更なる詳
細は、以下の図5および図6に示す。
【0043】8分周回路402は、PCIクロックの周
波数を1/8に分周した信号を発生する。このクロック
PCICLK_DIV8は、MISC−L/E許可タイマ404に
よって用いられる。8分周回路402は、PDARB状
態マシン400から受け取った状態信号に基づいてリセ
ットされ、JGI_MISCL信号およびJGI_MISCLE信号をPD
ARB状態マシン400に供給する。8分周回路402
のこれ以上の詳細については、図7に関連付けて示すこ
とにする。
【0044】MISC−L/E許可タイマ・ブロック4
04は、MISC−L PCIARB204に対して8
ビットの許可タイマMISCL_TMR[7:0]を、MISC−E
PCIARB204bに対して8ビット許可タイマMISC
E_TMR[7:0]を発生するために用いられる。タイマ・ブロ
ック404は、PDARB状態マシン400からの許可
信号EXP_GNT、LAP_GNTによって制御される。MISC−
L118aまたはMISC−E118bのいずれかにP
CIバス112の制御が許可されると、その要求がアサ
ートされている限り、プログラムされた期間中、各々が
許可を有することが保証される。MISC_TO信号は、許可
タイマ・ブロック404からPDARB状態マシン40
0に供給され、再ロードの後に許可タイマが減数され、
終了したことを示す。許可タイマ・ブロック404の詳
細を図8に示す。
【0045】また、PDARB200のトップ・レベル
(最高位)・アービタには、パワー管理タイマおよびロ
ジック・ブロック406も含まれている。この回路は、
EXIT_PARK信号が所定の状態の下でアサートされたとき
に、新たな許可が発行されるのを阻止する。信号S_EXP_
REQ、CLR_BLOCK_NEW_GNTS、SET)BLOCK_NEW_GNTS、およ
びBLOCK_NEW_GNTSが、パワー管理タイマおよびロジック
・ブロック406からPDARB状態マシン400に渡
される。パワー管理タイマロジック406への入力に
は、信号EXP_REQ、EXIT_PARK、PARK_CPU、SLEEP_REQ_、
I_IDLE_ACKが含まれる。これらの信号は、PDARB状
態マシン400に送られる許可阻止信号を発生するため
に用いられる。パワー管理タイマおよびロジック・ブロ
ック406の詳細については、図9に示し、以下で論ず
ることにする。
【0046】アービタ・アイドル・ロジック・ブロック
408は、PDARB200にも含まれている。このブ
ロック408は、信号ARB_IDLE_STATUSを発生する。信
号ARB_IDLE_STATUSは、真のとき、アービタPDARB
200が現在アイドル状態にある(MISCが「停留」
されている)ことをMSIO124に示す。図10に詳
細を示すように、このブロックは、PDARB状態マシ
ン400からの状態信号を利用する。信号ARB_MASTER、
PCI_IDLE、ARB_IDLE、REQ、およびPDARB_GNTも、ARB_ID
ELE_STATUSを発生するために利用される。
【0047】PDARB状態マシン400の動作を図5
に示す。PDARB状態マシン400は、MISC11
8aまたは118bがPCIバスの制御を許可されてい
るか否かについて判定を行う。この説明の目的のため
に、「状態」とはPDARB状態マシン400の現在状
態を意味し、信号の前にある記号「!」は論理負を示す
ので、信号がローのとき表現はハイとなる。制御は、状
態IDELにおいて、リセット信号RSTの受信時に開始す
る。IDLE状態は、PCIバス112上に現在何もアクテ
ィビティがないことを示す。真の!ARB_IDLE_REQによっ
て示されるように、アイドル要求信号がMSIO124
によって虚に駆動されると、制御は状態MISC_Lに移行
し、以下の図6において論ずるように、信号LAP_GNTが
アサートされる。これによって、PCIバス112の制
御は、PCIARB204aに許可される(MISC−
L118aに含まれているため)。信号ARB_IDLE_REQが
アサートされると、制御は状態IDLEに留まる。信号ARB_
IDEL_REQおよびPCI_IDELがアサートされると、制御は状
態MISC_Lから状態IDLEに移行し、一方信号LAP_REQはア
サートされない。PCI_IDLE信号は、PCIバス112が
アイドル状態にあることを示す。ラップトップ・コンピ
ュータL要求信号LAP_REQがアサートされない場合、拡
張ベースE要求信号EXP_REQまたは要求保持信号EXP_REQ
_HOLDのいずれかがアサートされ、制御は状態MISC_Lか
ら状態MISC_Eに移行する。EXP_REQ_HOLD信号は、J−K
型フリップ・フロップ600(図6)の出力によって供
給される。
【0048】図6を参照すると、フリップ・フロップ6
00へのJ入力は、2入力ANDゲート602の出力に
よって供給される。ANDゲート602への入力は、EX
P_REQ信号およびLAP_REQ信号を受け取る。フリップ・フ
ロップ600へのK入力は、LAP_REQ信号を反転させた
信号である。これによって、EXP_REQ_HOLD信号は、EXP_
REQ信号およびLAP_REQ信号双方のアサートの後、最初の
PCICLK信号の立ち上がりエッジにおいてアサートされ
る。このように、EXP_REQ信号がアサートされているがL
AP_REQ信号がアサートされていない場合、またはEXP_RE
Q信号およびLAP_REQ信号がPCICLK信号の直前の立ち上が
りエッジでアサートされ、続いてLAP_REQ信号がディア
サートされた場合、MISC_E118bにバスが許可
される。言い換えれば、MISC-L状態からMISC-E状態への
遷移が発生するのは、LAP_REQ信号がPCIARB20
4Aによってローとなり、EXP_REQ信号のアサートに続
いてPCIバス112の制御を除去可能であることが確
認されたときである。
【0049】NO_GRANT状態では、PCIバス112上で
実行が許されるサイクルはない。制御は、2つの条件の
下で、MISC_L状態からNO_GRANT状態に移行する。第1の
条件が起こるのは、信号BLOCK_NEW_GNTSまたはSET_BLOC
K_NEW_GNTSがアサートされ、かつPCI_IDLEがアサートさ
れて、MPC108が休止中(asleep)であることが示さ
れた場合である。SLEEP_REQ信号がアサートされてから
最初のクロック上での許可を阻止するために、SET_BLOC
K_NEW_GNTS信号が含まれている。この信号およびBLOCK_
NEW_GNTS信号は、図9に詳細を示すように、パワー管理
タイマおよびロジック・ブロック406によって発生さ
れる。また、LAP_GNT信号およびEXP_REQ信号またはEXP_
REQ_HOLD信号がアサートされ、一方LAP_REQ信号がディ
アサートされた場合も、制御はMISC_L状態からNO_GRANT
状態に移行する。この第2の条件が必要なのは、LAP_GN
T信号およびEXP_GNT信号が同時に変化するのは望ましく
ないからである。何故なら、これによって、PCI_IDLE信
号がアサートされている間に、許可を変化させ得るから
である。拡張ベースEの要求信号EXP_REQがディアサー
トされたときはいつでも、制御は状態MISC_Eから状態MI
SC_Lに戻る。したがって、拡張ベースEがバスを要求し
ておらず、システムがアイドル・モードにない場合、MI
SC_Lはデフォルト状態となる。ARB_IDLE_REQおよびPCI_
IDLEがアサートされ、EXP_REQがデアサートされた場
合、制御は状態MISC_Eから状態IDLEに移行する。
【0050】拡張ベースEの許可信号EXP_GNTおよびラ
ップトップ・コンピュータL要求信号LAP_REQ信号がア
サートされ、拡張ベースE要求信号EXP_REQがデアサー
トされたとき、制御は状態MISC_Eから状態NO_GRANTに移
行する。S_EXP_REQ信号がアサートされ、LAP_GNT信号が
デアサートされた場合、制御はNO-GRANT状態からMISC_E
状態に戻る。S_EXP_REQ信号は、D型フリップ・フロッ
プ900(図9)の出力において供給されるEXP_REQ信
号の同期化された信号であり、フリップ・フロップ90
0のD入力は、EXP_REQ信号である。フリップ・フロッ
プ900はPCICLK信号によって駆動される。SET_BLOCK_
NEW_GRANTS信号がアサートされたか、またはCLR_BLOCK_
NEW_GNTS信号がデアサートされた場合に、BLOCK_NEW_GN
TS信号がアサートされると、制御はNO_GRANT状態に留ま
る。CLR_BLOCK_NEW_GNTS信号を含ませることによって、
1クロック速く許可が可能となる。これら3つの信号は
全て、図9の回路で発生され、以下でより詳細に論ず
る。一旦NO_GRANT状態となると、この状態に留まるため
の条件またはMISC_E状態に移行するための条件を満足し
ない場合、制御は自動的にMISC_L状態に移る。
【0051】再び図6を参照すると、PDARB状態マ
シン400に関係する回路が更に詳細に示されている。
図5に関して上述したように、信号EXP_REQ_HOLDは、所
定の状況下において、MISC_L状態からMISC_E状態への遷
移に影響を与える。より具体的には、許可される前にEX
P_REQ信号がデアサートされた場合(例えば、PCIマ
スタによって誤ってアサートされた場合)、この条件
は、状態マシンがMISC_E状態に切り変わることを保証す
る。要求が再度アサートされなかったなら、制御は再び
MISC_L状態に切り替わり、ラップトップ・コンピュータ
Lの許可信号LAP_GNTが再びアサートされる。信号EXP_R
EQ_HOLDが必要とされるのは、許可タイマ(図8)によ
るタイムアウトに続いて、アサートされた要求信号EXP_
REQがラップトップ許可信号LAP_GNTをクリアするからで
あるが、EXP_REQがもはやアサートされていないのであ
れば、制御はMISC_E状態に移行することはない。
【0052】ラップトップ許可信号は、J−K型フリッ
プ・フロップ604の出力において供給される。J−K
型フリップ・フロップ604は、PCICLK信号の立ち上が
りエッジで駆動される。フリップ・フロップ604のJ
入力は、ANDゲート606の出力に接続されている。
ANDゲート606の一方の入力は、信号LAP_GNTの反
転された信号に接続され、他方の入力は信号JGI_MISCL
に接続されている。信号JGI_MISCL(図7)がアサート
されると、状態マシンが丁度MISC_L状態に移行したこと
を示す。フリップ・フロップ604のK入力は、AND
ゲート610の出力に接続されている。このANDゲー
ト610の一方の入力は、ANDゲート606の出力を
反転した信号に接続され、他方の入力は2入力ORゲー
ト614の出力に接続されている。OR614の一方の
入力は、3入力ANDゲート616の出力に接続されて
おり、ANDゲート616の入力は、許可タイマ・タイ
ムアウト信号MISC_TO、拡張ベースEの要求信号EXP_RE
Q、およびEXIT_PARK信号を反転した信号を含む。ORゲ
ート614の他方の入力には、2入力ANDゲート62
6の出力によって、信号JGO_MISCLが供給される。この
ANDゲート626の出力は、状態マシン400が現在
MISC_L状態にあり、次の状態がMISC_L状態以外の状態で
ある場合、論理ハイとなる。したがって、LAP_GNT信号
がデアサートされている間に状態マシンが最初にMISC_L
状態に入ったとき、フリップ・フロップ604は1クロ
ック・サイクルの間LAP_GNT信号をアサートする。ま
た、信号LAP_GNTは、リセット信号RSTのアサートに続い
てデアサートされる。
【0053】拡張ベースE許可信号EXP_GNTは、J−K
型フリップ・フロップ612の非反転出力によって供給
される。フリップ・フロップ612のJ入力は、AND
ゲート608の出力を受け取る。このANDゲート60
8の一方の入力は、拡張ベースE許可信号EXP_GNTを反
転した信号に接続されており、他方の入力は信号JGI_MI
SCE(図7)に接続されている。信号JGI_MISCEは、アサ
ートされると、状態マシンが丁度MISC_E状態に遷移した
ことを示す。フリップ・フロップ612へのK入力は、
ANDゲート618の出力によって供給される。AND
ゲート618の入力は、ANDゲート608の出力を反
転した信号、およびORゲート620の出力を含む。O
Rゲート620への一方の入力は、2入力ANDゲート
624の出力によって供給される。この入力がアサート
されるのは、状態マシン400の現状態がMISC_Eであ
り、次の状態が他のいずれかの状態である場合である。
ORゲート620への第2の入力は、ANDゲート62
2の出力に接続されている。ANDゲート622の入力
は、許可タイマ・タイムアウト信号MISC_TOおよびラッ
プトップ・コンピュータL要求信号LAP_REQを含む。し
たがって、EXP_GNT信号がデアサートされているときに
制御がMISC_E状態に移行した場合、拡張ベースEの許可
信号EXP_GNTはアサートされる。
【0054】拡張ベースE要求信号EXP_REQは、2入力
ANDゲート628の出力によって供給される。このA
NDゲート628の一方の入力は信号I_EXP_REQに接続
されている。信号I_EXP_REQは、アサートされると、M
ISC−E118bにおけるPCIARB204bから
の要求であることを示す。ANDゲート628の他方の
入力は信号ARB_MASTERに接続され、これがローカルPC
IARBをマスタ・モードにセットし、PDARB状態
マシン400をイネーブルするので、EXP_REQ信号は拡
張ベースE要求信号として認識される。PDARB_GNT信号
は、アクティブのとき、ローカルPCIARB204a
への許可を示し、2:1マルチプレクサ630の出力に
よって供給される。マルチプレクサ630の1入力は信
号LAP_GNTを受け取り、一方0入力は信号I_EXP_GNTを受
け取る。マルチプレクサ630への選択入力はARB_MAST
ER信号によって駆動されるので、この信号がアサートさ
れると、PDARBのトップ・レベル・アービタ200
がマスタ・モードにあり、LAP_GNT信号がPDARB_GNT信号
を駆動することを示す。ARB_MASTER信号がデアサートさ
れると、対象のPDARB200がスレーブ・モードに
あり、PDARB_GNT信号およびI_EXP_GNT信号は等しいこと
を示す。
【0055】図7に移ると、8分周回路402が示され
ている。この回路はカウンタ708の出力において、3
入力ANDゲート710を用い、許可タイマ404によ
って用いられるクロック信号PCICLK_DIV8を供給する。
カウンタ708の出力CNTR[2:0]は、ORゲート704
の3つの入力のいずれかがアサートされると、ゼロにリ
セットされる。これらの入力の内、第1の入力はAND
ゲート703の出力によって供給される。ANDゲート
703の第1の入力は、PDARB状態マシン400の
直前の状態がMISC_L状態であったときにアサートされた
信号を反転した信号によって駆動される。ANDゲート
703の第2の入力は信号JGI_MISCLによって駆動され
る。信号JGI_MISCLはANDゲート700の出力によっ
て供給される。これは、PDARB状態マシン400が
MISC_L状態に遷移しようとするときに、ハイに遷移する
(即ち、次の状態がMISC_Lであり、現状態がMISC_Lでな
い場合)。
【0056】ORゲート704の第2の入力は、AND
ゲート705の出力によって供給される。ANDゲート
705の第1の入力は、PDARB状態マシン400の
直前の状態がMISC_Eであったときにアサートされた信号
を反転した信号によって駆動される。ANDゲート70
5の第2の入力は、信号JGI_MISCEによって駆動され
る。信号JGI_MISCEは、ANDゲート702の出力によ
って供給され、状態マシンPDARB400がMISC_E状
態に遷移する準備ができたときに、アサートされる。O
Rゲート704の第3の入力は、信号EXT_PARKによって
駆動される。この信号は、CPU100が停留状態から
出つつあることを示す。
【0057】ORゲート704の出力は、PCICLK信号の
立ち上がりエッジにおいて、D型フリップ・フロップ7
06によってラッチされる。このフリップ・フロップ7
06の非反転出力Qは、カウンタ708の非同期CLR
入力を駆動する。また、このカウンタはPCICLK信号によ
って駆動される。したがって、カウンタ708は、新し
いラップトップ・コンピュータLまたは拡張ベースEの
許可時に、即ち、CPU100が停留状態から出るとき
はいつでも、リセットされる。カウンタ・ビットCNTR
[2:0]は、3入力ANDゲート710の入力を駆動す
る。許可タイマ404のクロック信号PCICLK_DIV8は、
このANDゲート710の出力によって供給される。3
つのカウンタ出力ビットCNTR[2:0]が全て論理レベル
「1」に等しいとき、PCICLK_DIV8信号は、これによっ
てハイに駆動される。この状態が発生するのは、システ
ム・クロックPCICLKの8周期の後である。
【0058】許可タイマ回路404の詳細構成図を図8
に示す。PDARBは2つの許可タイマを用いて、MI
SC−L118aおよびMISC−E118b間で仲裁
すなわちアービトレーションを行う(正確には、2つの
値をロードされた1つのタイマ)。MISC−L118
aまたはMISC−E118bは、適切な要求信号がア
サートされている限り、プログラムされた時間の間それ
ぞれの許可を有することを保証される。一例として、以
下のシーケンスを検討する。 1.MISC−E118bにPCIバスが許可される。
その許可タイマがカウントを開始する。 2.MISC−E118bがサイクルを実行している
間、MISC−L118aはPDARB200へのLAP_
REQ信号をアサートする。 3.MISC−E118bは、そのタイマが終了し、EX
P_REQ信号をネゲートする前に終了する。 4.PDARB200は、次のクロック時に、EXP_GNT
をニゲートし、バスをMISC−L118aに与える。
MISC−Eの許可タイマをクリアする。
【0059】公平な仲裁を行うためには、タイマは、M
ISC−L118aまたはMISC−E118bにおけ
る各マスタが、それぞれ、PCIARB204aまたは
204bに対する許可の間に1回、バスへのアクセスを
獲得できるようにプログラムすることが理想的である。
このタイミングは、◎ MISC許可タイマ=(ローカル・マスタの#)×(マ
スタ当たり平均許可時間) によって近似することができる。いずれかの値を用い
て、一方のマスタ群を他方よりも優遇できるようにする
ことも考えられる。例えば、MISC−E118bは、
ISAマスタおよび/またはDMAに供する可能性があ
るので、大きな許可値を必要とする場合もある。このタ
イマをプログラムするときは、注意しなければならな
い。最も長いPCIサイクルの長さ未満の値を選択する
と、中断状態(hang condition)を発生する原因となり得
る。値を余りに大きくし過ぎると、装置によってはレイ
テンシが過度に大きくなる可能性がある。現在、約3μ
sが適切な値であると考えられている。明確化のため
に、レジスタおよびロジックのプログラミングについて
は省略するが、タイマは、PCIコンフィギュレーショ
ン・サイクルを用いて、システムの初期化時にセットす
ることが好ましい。
【0060】MISC−L118aまたはMISC−E
118bのいずれかの許可タイマが終了即ちタイムアウ
トした場合、MISC_TO信号がPDARB状態マシン40
0に対してアサートされる。タイムアウト時に、PDA
RBは適切な許可信号をネゲートする。次いで、MIS
C−L118aまたはMISC−E118bは、少なく
とも1クロック周期の間その要求をネゲートし、状態が
変化し、適切なMISC118に新しい許可を発行した
ことをPDARB状態マシン400に知らせる。PDA
RB状態マシン400に戻す要求ハンドシェークは、ア
クティブな最小許可タイマを有するマスタがそれらの許
可時間を終了するため、またはDMA/ISAバス・マ
スタを終了させるために必要である。
【0061】減数カウンタ800の出力MISC_GNT_TMR
[7:0]は、8入力NORゲート802の入力に接続され
ている。このNORゲート802の出力は、PDARB
状態マシン400に許可タイマ・タイムアウト信号MISC
_TOを供給する。全カウンタ出力ビットMISC_GNT_TMR[7:
0]が論理レベル「0」に等しいとき、これによって許可
タイマ・タイムアウト信号MISC_TOがアサートされる。
開示する実施例では、減数カウンタ800の入力DIN[7:
0]におけるデータは、マルチプレクサ804の出力に連
結されている。マルチプレクサ804は、選択ビット
a、bによって決定される3つの別個の値の内1つを減
数カウンタ800にロードすることができる。
【0062】選択ビットa、b双方が論理ローレベルで
あるとき、マルチプレクサ804の「0」入力が選択さ
れ、減数カウンタ800のDIN[7:0]入力に供給される。
尚、マルチプレクサへの0、1、および2入力は8ビッ
ト信号ラインであることを注記しておく。開示する実施
例では、マルチプレクサ804の0入力の全ビットは正
電源レールに結合されており、0入力が選択され、減数
カウンタ804のLOAD入力がアサートされたとき
に、減数カウンタ800には全て「1」がロードされる
ようになっている。マルチプレクサ804の1入力は、
MISC−E118bに対する許可のために、8ビット
許可タイマ値MISCE_TMRによって駆動され、一方、マル
チプレクサ804の2入力は、MISC−L118aに
対する許可のために、8ビット許可タイマ値MISCL_TMR
によって駆動される。選択ビットaが論理ハイ・レベル
にあり、選択ビットbが論理ロー・レベルにあるとき、
MISCE_TMRは減数カウンタ800のDIN[7:0]入力に供給
される。同様に、選択ビットaが論理ロー・レベルにあ
り、選択ビットbが論理ハイ・レベルにあるとき、MISC
L_TMRが減数カウンタ800のDIN[7:0]入力に供給され
る。
【0063】マルチプレクサ804の選択ビットaはA
NDゲート806の出力を受け取る。このANDゲート
806への入力は、許可タイマ・イネーブル信号MISC_G
NT_TMR_ENおよび信号JGI_MISCEを含む。信号JGI_MISCE
は、PDARB状態マシン400が丁度MISC_E状態に入
ったことを示す。したがって、PDARB状態マシン4
00がMISC_E状態に入り、許可タイマ404がイネーブ
ルされたとき、減数カウンタ800にはタイマ値MISCE_
TMRがロードされる。マルチプレクサ804の選択ビッ
トbは、三入力ANDゲート808の出力を受け取る。
ANDゲート808への入力は、信号MISC_GNT_TMR_E
N、JGI_MISCLおよびEXIT_PARKによって駆動される。し
たがって、PDARB状態マシン400がMISC_L状態に
入り、許可タイマ404がイネーブルされると、減数カ
ウンタ800にはタイマ値MISCL_TMRがロードされる。
タイマ値MISCL_TMRは、許可タイマ404がイネーブル
されている間にCPU100が停留状態から出るとき
(およびデフォルトによってMISC_L118aに許
可するとき)にも用いられる。
【0064】減数カウンタ800のLOAD入力は、3入力
ORゲート810の出力に連結されている。ORゲート
810への入力は、EXIT_PARK信号、JGI_MISCE信号およ
びJGI_MISCL信号によって駆動される。これらの信号の
いずれかがアサートされたとき、減数カウンタ800に
は、そのDIN[7:0]入力にあるタイマ値がロードされる。
3入力ANDゲート812の出力は、減数カウンタ80
0のCOUNT ENABLE入力に接続されている。この入力がア
サートされると、許可タイマの減数がイネーブルされ
る。ANDゲート812の第1の入力は、ORゲート8
14の出力によって駆動される。ORゲート814の入
力は、PCICLK_DIV8信号ラインおよびARBTEST_EN信号ラ
インに接続されている。ANDゲート812の第2の入
力は、もう1つのORゲート816の出力によって駆動
される。一方、ORゲート816の入力は、信号EXP_GN
TおよびLAP_GNTによって駆動される。ANDゲート81
2の第3の入力は、MISC_TO信号を反転した信号によっ
て駆動される。したがって、減数カウンタ800のクロ
ックキングをイネーブルするために、3つの条件が必要
となる。第1に、拡張ベースEの許可信号EXP_GNTまた
はラップトップ・コンピュータLの許可信号LAP_GNTの
いずれかをアサートしなければならない。第2に、PCIC
LK_DIV8(理想的には、図7の回路によってPCICLK信号
8つ毎にアサートされる)又はARB_TEST_EN信号のいず
れかをアサートしなければならない。上述のように、AR
B_TEST_EN信号は、各PCICLK毎に許可タイマ800を増
分させ、検査の目的のために用いられる。最後に、タイ
ムアウト信号MISC_TOをデアサートしなければならな
い。3つの条件全てが満足された場合、減数カウンタ8
00はイネーブルされる。
【0065】次に図9を参照すると、パワー管理タイマ
およびロジック・ブロック406の詳細が示されてい
る。このロジックは、以下の3つ状態の下で停留が解か
れたときに、新しい許可が発行されるのを阻止する。
(1)IDLE_ACK信号がアサートされている。(2)SLEE
P_REQ_信号がアサートされているが、IDLE_ACK信号は未
だアサートされていない。または(3)SLEEP_REQ_信号
がアサートおよびネゲートされ、IDLE_ACK信号はアサー
トされていない。状態(2)および(3)では、MPC
108のクロックが停止され、これがバス(停留中)を
駆動しており、その内部クロックを起動しそれ自体を停
留から開放するために7クロック必要であるので、PCIC
LKの7クロック期間にわたって許可を阻止しなければな
らない。上述の状態(1)については、MPC108は
そのクロックが動作していなければ、IDLE_ACK信号をネ
ゲートしないので、許可を阻止する必要はない。
【0066】このため、減数カウンタ901へのLOAD入
力がハイにアサートされると、2進値101がDIN入力
にロードされる。カウンタ901のLOAD入力を駆動する
信号START_BLOCK_TMRが、ANDゲート902の出力に
よって供給される。MPC108によって送出されるア
イドル承認信号である、信号I_IDLE_ACKを反転した信号
が、ANDゲート902の一方の入力を駆動する。アン
ドゲート902の他方の入力はORゲート904の出力
によって駆動され、ORゲート904の入力は3入力A
NDゲート906および2入力ANDゲート908によ
って駆動される。ANDゲート906の第1の入力はO
Rゲート910の出力によって駆動され、ORゲート9
10の2つの入力は、EXIT_PARKおよびPARK_CPUによっ
て駆動される。ANDゲート906の他の2つの入力
は、信号SLEEP_REQ_およびS_SLEEP_REQ_によって駆動さ
れる。SLEEP_REQ_信号は、MSIO124の電力管理ロ
ジックからのスリープ要求入力である。S_SLEEP_REQ_信
号は、D型フリップ・フロップ912の出力によって供
給されるSLEEP_REQ_信号を同期化したものであり、D型
フリップ・フロップ912の入力はSPEEP_REQ_信号であ
る。このフリップ・フロップ912はPCICLK信号によっ
て動作する。
【0067】ANDゲート908の入力は、EXIT_PARK
信号およびSLEEP_REQ_信号を反転した信号によって駆動
される。ロジック・ゲート902、904、906、9
08、910は、上述の状態(2)および(3)を得る
ためのものである。したがって、状態(2)および
(3)が検出されると、START_BLOCK_TMR信号がアサー
トされ、カウンタ901には二進値101がロードされ
る。減数カウンタ901はPCICLK信号によって動作し、
一方信号BLOCK_TMR_T0を反転した信号はこのカウンタを
イネーブルするために用いられる。後者の信号は、三入
力NORゲート914の出力によって駆動される。この
NORゲート914の3つの入力は、カウンタ901の
Q0、Q1およびQ2出力である。一旦901が信号ST
ART_BLOCK_TMRによってアクティブ化されると、Q0な
いしQ2は、7周期のPCICLKクロック信号に続いて、二
進値000に減数される。すると、NORゲート914
の出力がアサートされ、カウンタ901へのクロックは
非アクティブ化される。
【0068】信号CLR_BLOCK_NEW_GNTS、SET_BLOCK_NEW_
GNTS、およびBLOCK_NEW_GNTSは、パワー管理タイマおよ
びロジック・ブロック406からPDARB状態マシン
400(図5)に伝達される。信号BLOCK_NEW_GNTSは、
J−K型フリップ・フロップ920の非反転入力によっ
て供給される。このフリップ・フロップはPCICLK信号に
よって動作する。フリップ・フロップ920のJ入力
は、ANDゲート922の出力によって駆動され、AN
Dゲート922の入力は、BLOCK_NEW_GNT信号を反転し
た信号および信号SET_BLOCK_NEW_GNTSである。信号SET_
BLOCK_NEW_GNTSは、2入力ORゲート924の出力によ
って供給される。このORゲート924の入力は、上述
の信号START_BLOCK_TMRおよび3入力ANDゲート92
6の出力を受け取る。ANDゲート926の入力は、信
号I_IDEL_ACK、EXIT_PARK、およびBLOCK_TMR_T0によっ
て駆動される。PCIバスがアイドル状態にある間にBL
OCK_NET_GNTSまたはSET_BLOCK_NEW_GNTSのいずれかをア
サートすることによって、状態マシン400は、MISC_L
状態からNO_GRANT状態に遷移する。SET_BLOCK_NEW_GNTS
信号は、カウンタ901がロードされたとき、または信
号I_IDLE_ACK、EXIT_PARK、およびBLOCK_TMR_Tが同時に
アサートされたときはいつでもアサートされる。
【0069】信号CLR_BLOCK_NEW_GNTSは、ANDゲート
918の出力によって駆動される。ANDゲート918
の入力は、信号I_IDLE_ACKを反転した信号およびBLOCK_
TMR_T0信号を含む。したがって、クリア・ブロック新許
可信号CLR_BLOCK_NEW_GNTSは、I_IDLE_ACK信号がデアサ
ートされている間に、ブロック・タイマのタイムアウト
に続いてアサートされる。CLR_BLOCK_NEW_GNTS信号は、
フリップ・フロップ920の出力をクリアする(BLOCK_
NEW_GNTS信号をネゲートする)ために用いられ、AND
ゲート928の1つの入力に接続されている。このAN
Dゲート928の他の入力は、ANDゲート922の出
力を反転した信号および信号BLOCK_NEW_GNTSを含む。し
たがって、フリップ・フロップ920のK入力は、J入
力が論理ロー・レベルにあり、出力BLOCK_NEW_GNTS信号
がアサートされたときにのみ、ハイ論理レベルとなる。
【0070】アービタ・アイドル・ロジック・ブロック
408の詳細を図10に示す。この回路は信号ARB_IDLE
_STATUSを生成する。この信号はアサートされると、ア
ービタがアイドル状態にある(MISC−L118aが
バス上で停留されている)ことをMSIO124に知ら
せる。ARB_IDLE_STATUS信号は、D型フリップ・フロッ
プ950によって、PCICLK信号と同期を取られる。この
フリップ・フロップ950のD入力は、2入力マルチプ
レクサ950の出力に接続されている。このマルチプレ
クサ952の1入力はANDゲート954の出力に接続
されており、一方、0入力は3入力ANDゲート956
の出力に接続されている。信号S_IDLE_STATEおよびN_ST
ATE_IDLEは、ANDゲート954の入力を駆動する。A
NDゲート956の入力は、信号ARB_IDLE_REQ、PCI_ID
LE、およびPDARB_GNT信号を反転した信号によって駆動
される。マルチプレクサ952の選択入力は、信号ARB_
MSTERによって駆動される。上述のように、ARB_MASTER
信号は、ラップトップMISC−L118aにおいての
みアサートされる。したがって、ARB_IDLE_STATUS信号
は、信号EXP_GNTがネゲートされているときに、MIS
C−L118bにおいてのみアサートすることができ
る。MISC−L118aにおいては、ARB_IDLE_STATU
S信号は、2クロックだけ遅延され、CPU100が、
その許可が排除された後に、駆動を停止できるようにし
ている。
【0071】以上のように、ラップトップPCIアービ
タまたは拡張ベースPCIアービタがPCIバスへのア
クセスを有するか否かについて判定を行うトップ・レベ
ル・アービタについて説明した。各PCIアービタは、
サイクルを実行する前に、トップ・レベル・アービタか
ら許可を受けなければならない。ラップトップ・コンピ
ュータがドッキングされている間、トップ・レベル・ア
ービタは、本質的に時間多重化に基づいて、PCIアー
ビタ間で選択を行う。拡張ベースおよびラップトップ・
コンピュータがドッキングされていない場合、トップ・
レベル・アービタは常にバス・アクセスをラップトップ
PCIアービタに許可する。トップ・レベル・アービタ
と拡張ベース・ユニットのPCIアービタとの間には、
要求信号および許可信号のみが伝達されればよい。本発
明の分散的アービトレーション(仲裁)方式は、こうす
ることにより、全体としてのアービトレーションを簡略
化し、ラップトップ・コンピュータおよび拡張ベース間
のインターフェースにおける複雑性を低下させる。
【0072】これまでの本発明の開示および記載は本発
明の例示および説明であり、本発明の精神から逸脱する
ことなく、サイズ、形状、物質、構成要素、回路要素、
配線接続および接点における様々な変更、ならびに図示
した回路および構造ならびに処理方法の詳細における変
更が可能である。
【図面の簡単な説明】
【図1】本発明によるアービトレーション・ロジックを
含む、コンピュータ・システムの一例を示すブロック
図。
【図2】図1のコンピュータ・システムのPCI−IS
Aブリッジ内に内蔵されているロジック、即ち、本発明
によるアービトレーション・ロジックのブロック図。
【図3】好適実施例によるアービトレーション階層を示
すフローチャート。
【図4】図2および図3のトップレベルの分散アービタ
PDARBの詳細を示すブロック図。
【図5】どのPCI−ISAブリッジにPCIバスの制
御を許可するかを判定するための状態マシンの状態遷移
図。
【図6】図5の状態マシンに関連するロジック回路図。
【図7】図4の8分周回路の回路図。
【図8】図4の許可タイマ回路の回路図。
【図9】図4のパワー管理タイマおよびロジック・ブロ
ックの回路図。
【図10】図4のアービタ・アイドル・ロジック・ブロ
ックの回路図。
───────────────────────────────────────────────────── フロントページの続き (71)出願人 591030868 20555 State Highway 249,Houston,Texas 77070,United States o f America (72)発明者 ジェームズ・アール・エドワーズ アメリカ合衆国コロラド州80501,ロング モント,チェリー・ウッド・ドライブ 536 (72)発明者 デーヴィッド・ジェイ・マグイリ アメリカ合衆国テキサス州77379,スプリ ング,サニー・ポイント・ドライブ 8806

Claims (18)

    【特許請求の範囲】
  1. 【請求項1】 コンピュータ・システムに用いるための
    最高位(トップレベル)アービタであって、前記コンピ
    ュータ・システムは、第1のバスと、該第1のバスに結
    合されている装置からのバス制御要求を仲裁する第1の
    アービタとを有する第1の部分と、第2のバスと、該第
    2のバスに結合されている装置からのバス制御要求を仲
    裁する第2のアービタとを有する第2の部分とを含み、
    前記コンピュータ・システムの前記第1および第の2部
    分は更に前記第1のバスおよび第2のバスの共有バスを
    形成するためのインターフェースを含み、前記最高位ア
    ービタは、 前記第1の部分の第1のアービタからのバスコントロー
    ル要求を受ける第1の電気的インターフェースと、 前記第2の部分の第2のアービタからのバスコントロー
    ル要求を受ける第2の電気的インターフェースと、 前記第1および第2の電気的インターフェースに応答し
    て、前記第1の部分の前記第1のアービタおよび前記第
    2の部分の前記第2のアービタによる共有バスへのアク
    セスに優先度を与える優先度決定回路と、 前記優先度決定回路に応答し、前記共有バスへのアクセ
    スを前記第1の部分内の前記第1のアービタに選択的に
    許可する第3の電気的インターフェースと、 前記優先度決定回路に応答し、前記共有バスへのアクセ
    スを前記第2の部分内の前記第2のアービタに選択的に
    許可する第4の電気的インターフェースとから成ること
    を特徴とする最高位アービタ。
  2. 【請求項2】 請求項1記載の最高位アービタにおい
    て、前記優先度決定回路は、時間多重化に基づいて制御
    を許可する許可タイマを含むことを特徴とする最高位ア
    ービタ。
  3. 【請求項3】 請求項1記載の最高位アービタにおい
    て、前記第1のアービタからのバスコントロール要求を
    受け取る前記第1の電気的インターフェース、及び前記
    第2のアービタからのバスコントロール要求を受け取る
    前記第2の電気的インターフェースの各々は、要求ライ
    ンから成り、前記第1のアービタに前記共有バスへのア
    クセスを選択的に許可する前記第3の電気的インターフ
    ェース、及び前記第2のアービタに前記共有バスへのア
    クセスを選択的に許可する前記第4の電気的インターフ
    ェースの各々は、許可ラインから成ることを特徴とする
    最高位アービタ。
  4. 【請求項4】 請求項1記載の最高位アービタにおい
    て、前記コンピュータ・システムの前記第1の部分はラ
    ップトップ・コンピュータであり、前記コンピュータの
    前記第2の部分は拡張ベースであることを特徴とする最
    高位アービタ。
  5. 【請求項5】 請求項4記載の最高位アービタにおい
    て、前記ラップトップ・コンピュータが前記拡張ベース
    から取り外されているとき、前記最高位アービタは、前
    記ラップトップ・コンピュータの前記第1のアービタに
    バス・アクセスを常に許可することを特徴とする最高位
    アービタ。
  6. 【請求項6】 請求項1記載の最高位アービタにおい
    て、前記コンピュータ・システムの共有バスは周辺要素
    インターフェース(PCI)バスであることを特徴とす
    る最高位アービタ。
  7. 【請求項7】 請求項1記載の最高位アービタにおい
    て、前記コンピュータ・システムの前記第1および第2
    の部分の各々は、周辺要素インターフェース(PCI)
    バスと、業界標準アーキテクチャ(ISA)バスまたは
    拡張業界標準アーキテクチャ(EISA)バスのいずれ
    かとを含むことを特徴とする最高位アービタ。
  8. 【請求項8】 第1のバスと、該第1のバスに結合され
    た装置からのバス制御要求を仲裁する第1のアービタと
    を有する第1の部分と、第2のバスと、該第2のバスに
    接続された装置からのバス制御要求を仲裁する第2のア
    ービタとを有する第2の部分とを少なくとも有するコン
    ピュータ・システムにおいて、アービタの優先度を判定
    する方法であって、前記コンピュータ・システムの前記
    第1および第2の部分は更に、前記第1のバスおよび第
    2のバスの共有バスを形成するインターフェースを含ん
    でおり、優先度判定方法は、 前記第1の部分の前記第1のアービタにおいて要求を監
    視し、潜在的なバス・マスタの前記共有バスへのアクセ
    スを許可するステップと、 前記第2の部分の前記第2のアービタにおいて要求を監
    視し、潜在的なバス・マスタの前記共有バスへのアクセ
    スを許可するステップと、 時間多重化に基づいて、前記共有バスへのアクセスの検
    出された要求に、選択的に優先度を与えると共に、該検
    出された要求を許可するステップとから成ることを特徴
    とする方法。
  9. 【請求項9】 請求項8記載の方法において、前記要求
    に選択的に優先度を与えると共に、該検出された要求を
    許可するステップは、 前記第1の部分の前記第1のアービタおよび前記第2の
    部分の前記第2のアービタの各々に対して、所定の許可
    時間を確立するステップと、 前記共有バスへのアクセスに対する要求の検出に続い
    て、前記所定の許可時間の間前記共有バスへのアクセス
    を許可するために、カウンタを起動するステップと、 他のアービタに前記共有バスへのアクセスを許可した期
    間、またはその少し後に受け取られた要求の検出に対し
    て、前記カウンタを起動するステップを繰り返すステッ
    プとから成ることを特徴とする方法。
  10. 【請求項10】 請求項9記載の方法であって、該方法
    は更に、前記コンピュータ・システムがアイドル状態に
    あるとき、前記第1のアービタまたは第2のアービタの
    いずれかに、それ自体またはコンピュータ・システムの
    構成要素のいずれかを前記共有バス上に停留させるステ
    ップを含むことを特徴とする方法。
  11. 【請求項11】 コンピュータ・システムにおいて、 第1のバスと、 該第1のバスに電気的に結合され、前記第1のバスに結
    合された装置からのバスコントロール要求を仲裁する第
    1のアービタとから成る第1の部分と、 第2のバスと、 該第2のバスに電気的に結合され、前記第2のバスに結
    合された装置からのバスコントロール要求を仲裁する第
    2のアービタとから成る第2の部分と、 前記第1の部分の前記第1のバスを、前記第2の部分の
    前記第2のバスに接続し、共有バスを形成するインター
    フェースと、 最高位アービタであって、 前記第1部分の前記第1のアービタからのバスコントロ
    ール要求を受け取る第1の電気的インターフェースと、 前記第2の部分の前記第2のアービタからのバスコント
    ロール要求を受け取る第2の電気的インターフェース
    と、 前記第1及び第2の電気的インターフェースに応答し
    て、前記第1の部分の前記第1のアービタ及び前記第2
    の部分の前記第2のアービタによる前記共有バスへのア
    クセスに優先度を与える優先度決定回路と、 前記優先度決定回路に応答し、前記共有バスへのアクセ
    スを、前記第1の部分内の前記第1のアービタに選択的
    に許可する第3の電気的インターフェースと、 前記優先度決定回路に応答し、前記共有バスへのアクセ
    スを、前記第2の部分内の前記第2のアービタに選択的
    に許可する第4の電気的インターフェースとから成る前
    記最高位アービタとから成ることを特徴とするコンピュ
    ータ・システム。
  12. 【請求項12】 請求項11記載のコンピュータ・シス
    テムにおいて、前記優先度決定回路は、時間多重化に基
    づいて制御を許可する許可タイマを含むことを特徴とす
    るコンピュータ・システム。
  13. 【請求項13】 請求項11記載コンピュータ・システ
    ムにおいて、前記第1のアービタからのバスコントロー
    ル要求を受け取る前記第1の電気的インターフェース、
    および前記第2のアービタからのバスコントロール要求
    を受け取る前記第2の電気的インターフェースの各々
    は、本質的に要求ラインから成り、前記第1のアービタ
    に前記共有バスへのアクセスを選択的に許可する前記第
    3の電気的インターフェース、及び前記第2のアービタ
    に前記共有バスへのアクセスを選択的に許可する前記第
    4の電気的インターフェースの各々は、本質的に許可ラ
    インから成ることを特徴とするコンピュータ・システ
    ム。
  14. 【請求項14】 請求項11記載のコンピュータ・シス
    テムにおいて、前記コンピュータ・システムの前記第1
    の部分はラップトップ・コンピュータであり、前記コン
    ピュータの前記第2の部分は拡張ベースであることを特
    徴とするコンピュータ・システム。
  15. 【請求項15】 請求項14記載のコンピュータ・シス
    テムにおいて、前記コンピュータ・システムの共有バス
    は周辺要素インターフェース(PCI)バスであること
    を特徴とするコンピュータ・システム。
  16. 【請求項16】 請求項14記載のコンピュータ・シス
    テムにおいて、前記第1の部分は、周辺要素インターフ
    ェース(PCI)バスと、業界標準アーキテクチャ(I
    SA)バスまたは拡張業界標準アーキテクチャ(EIS
    A)バスのいずれかとを含み、前記第2の部分はPCI
    バスとISAまたはEISAバスのいずれかとを含むこ
    とを特徴とするコンピュータ・システム。
  17. 【請求項17】 請求項11記載のコンピュータ・シス
    テムにおいて、前記第1のアービタ及び前記第2のアー
    ビタは、リースト・リーセント使用頻度アービトレーシ
    ョン方式を利用することを特徴とするコンピュータ・シ
    ステム。
  18. 【請求項18】 請求項11記載のコンピュータ・シス
    テムにおいて、前記第1及び第2の部分の各々は、前記
    最高位仲裁回路を含み、前記最高位仲裁回路は、前記第
    1及び第2の部分が前記共有バスによって接続されてい
    る間、前記第1の部分又は前記第2の部分の一方のみに
    おいてアクティブ状態となることを特徴とするコンピュ
    ータ・システム。
JP9196143A 1996-07-19 1997-07-22 多数のアービタを有するコンピュータ・システムにおいて分散仲裁を処理するための回路 Withdrawn JPH1069457A (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US684412 1996-07-19
US08/684,412 US5954809A (en) 1996-07-19 1996-07-19 Circuit for handling distributed arbitration in a computer system having multiple arbiters

Publications (1)

Publication Number Publication Date
JPH1069457A true JPH1069457A (ja) 1998-03-10

Family

ID=24747943

Family Applications (1)

Application Number Title Priority Date Filing Date
JP9196143A Withdrawn JPH1069457A (ja) 1996-07-19 1997-07-22 多数のアービタを有するコンピュータ・システムにおいて分散仲裁を処理するための回路

Country Status (5)

Country Link
US (1) US5954809A (ja)
EP (1) EP0820018A3 (ja)
JP (1) JPH1069457A (ja)
SG (1) SG65663A1 (ja)
TW (1) TW336296B (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001202327A (ja) * 2000-01-20 2001-07-27 Fujitsu Ltd バス使用効率を高めた集積回路装置のバス制御方式

Families Citing this family (23)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6212590B1 (en) * 1997-12-22 2001-04-03 Compaq Computer Corporation Computer system having integrated bus bridge design with delayed transaction arbitration mechanism employed within laptop computer docked to expansion base
US6397279B1 (en) * 1998-01-07 2002-05-28 Vlsi Technology, Inc. Smart retry system that reduces wasted bus transactions associated with master retries
US6185520B1 (en) * 1998-05-22 2001-02-06 3Com Corporation Method and system for bus switching data transfers
US6563922B1 (en) * 1998-08-28 2003-05-13 Teltronics, Inc. Arbitration mechanism
US6209053B1 (en) * 1998-08-28 2001-03-27 Intel Corporation Method and apparatus for operating an adaptive multiplexed address and data bus within a computer system
US6523076B1 (en) * 1999-11-08 2003-02-18 International Business Machines Corporation Method and apparatus for synchronizing multiple bus arbiters on separate chips to give simultaneous grants for the purpose of breaking livelocks
US6460109B1 (en) 1999-12-16 2002-10-01 International Business Machines Corporation Integral portable computer input and output switching
US6571306B1 (en) * 2000-02-09 2003-05-27 Sun Microsystems, Inc. Bus request mechanism for bus master which is parked on a shared bus
US6874039B2 (en) * 2000-09-08 2005-03-29 Intel Corporation Method and apparatus for distributed direct memory access for systems on chip
US6735654B2 (en) * 2001-03-19 2004-05-11 Sun Microsystems, Inc. Method and apparatus for efficiently broadcasting transactions between an address repeater and a client
US6889343B2 (en) 2001-03-19 2005-05-03 Sun Microsystems, Inc. Method and apparatus for verifying consistency between a first address repeater and a second address repeater
US6826643B2 (en) 2001-03-19 2004-11-30 Sun Microsystems, Inc. Method of synchronizing arbiters within a hierarchical computer system
US6877055B2 (en) 2001-03-19 2005-04-05 Sun Microsystems, Inc. Method and apparatus for efficiently broadcasting transactions between a first address repeater and a second address repeater
US20020133652A1 (en) * 2001-03-19 2002-09-19 Tai Quan Apparatus for avoiding starvation in hierarchical computer systems that prioritize transactions
US6950893B2 (en) * 2001-03-22 2005-09-27 I-Bus Corporation Hybrid switching architecture
US6970986B1 (en) * 2002-05-21 2005-11-29 Adaptec, Inc. Software based system and method for I/O chip hiding of processor based controllers from operating system
US20040059862A1 (en) * 2002-09-24 2004-03-25 I-Bus Corporation Method and apparatus for providing redundant bus control
US7533195B2 (en) * 2004-02-25 2009-05-12 Analog Devices, Inc. DMA controller for digital signal processors
US8291145B2 (en) 2004-08-10 2012-10-16 Hewlett-Packard Development Company, L.P. Method and apparatus for setting a primary port on a PCI bridge
US20090037635A1 (en) * 2006-03-17 2009-02-05 Shanghai Magima Digital Information Co., Ltd. Bus arbitration device
US8095700B2 (en) * 2009-05-15 2012-01-10 Lsi Corporation Controller and method for statistical allocation of multichannel direct memory access bandwidth
US11157200B2 (en) * 2014-10-29 2021-10-26 Hewlett-Packard Development Company, L.P. Communicating over portions of a communication medium
FR3093830B1 (fr) * 2019-03-11 2021-03-12 St Microelectronics Rousset Procédé de gestion d’accès à un bus partagé, et dispositif électronique correspondant

Family Cites Families (39)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4314335A (en) * 1980-02-06 1982-02-02 The Perkin-Elmer Corporation Multilevel priority arbiter
FR2482331B1 (fr) * 1980-05-06 1986-03-21 Thomson Csf Mat Tel Procede d'arbitration centralisee, et arbitreur centralise pour systeme multiprocesseur
US4473880A (en) * 1982-01-26 1984-09-25 Intel Corporation Arbitration means for controlling access to a bus shared by a number of modules
US4470114A (en) * 1982-03-01 1984-09-04 Burroughs Corporation High speed interconnection network for a cluster of processors
JPS58222361A (ja) * 1982-06-18 1983-12-24 Fujitsu Ltd デ−タ処理システムにおけるアクセス要求の優先順位決定制御方式
US4602327A (en) * 1983-07-28 1986-07-22 Motorola, Inc. Bus master capable of relinquishing bus on request and retrying bus cycle
US5067071A (en) * 1985-02-27 1991-11-19 Encore Computer Corporation Multiprocessor computer system employing a plurality of tightly coupled processors with interrupt vector bus
US4663756A (en) * 1985-08-29 1987-05-05 Sperry Corporation Multiple-use priority network
US4760515A (en) * 1985-10-28 1988-07-26 International Business Machines Corporation Arbitration apparatus for determining priority of access to a shared bus on a rotating priority basis
US4785394A (en) * 1986-09-19 1988-11-15 Datapoint Corporation Fair arbitration technique for a split transaction bus in a multiprocessor computer system
US4980854A (en) * 1987-05-01 1990-12-25 Digital Equipment Corporation Lookahead bus arbitration system with override of conditional access grants by bus cycle extensions for multicycle data transfers
US5388228A (en) * 1987-09-30 1995-02-07 International Business Machines Corp. Computer system having dynamically programmable linear/fairness priority arbitration scheme
JPH0786853B2 (ja) * 1988-02-29 1995-09-20 株式会社ピーエフユー バス転送制御方式
US4987529A (en) * 1988-08-11 1991-01-22 Ast Research, Inc. Shared memory bus system for arbitrating access control among contending memory refresh circuits, peripheral controllers, and bus masters
US5127089A (en) * 1989-07-03 1992-06-30 Motorola, Inc. Synchronous bus lock mechanism permitting bus arbiter to change bus master during a plurality of successive locked operand transfer sequences after completion of current sequence
US5151994A (en) * 1989-11-13 1992-09-29 Hewlett Packard Company Distributed fair arbitration system using separate grant and request lines for providing access to data communication bus
KR940002905B1 (en) * 1989-12-15 1994-04-07 Ibm Apparatus for conditioning priority arbitration in buffered direct memory addressing
EP0464237A1 (en) * 1990-07-03 1992-01-08 International Business Machines Corporation Bus arbitration scheme
JPH04192056A (ja) * 1990-11-27 1992-07-10 Fujitsu Ltd アービトレーション方式
US5265223A (en) * 1991-08-07 1993-11-23 Hewlett-Packard Company Preservation of priority in computer bus arbitration
US5369748A (en) * 1991-08-23 1994-11-29 Nexgen Microsystems Bus arbitration in a dual-bus architecture where one bus has relatively high latency
US5191656A (en) * 1991-08-29 1993-03-02 Digital Equipment Corporation Method and apparatus for shared use of a multiplexed address/data signal bus by multiple bus masters
DE69230428T2 (de) * 1991-09-27 2000-08-03 Sun Microsystems, Inc. Verklemmungserkennung und Maskierung enthaltende Busarbitrierungsarchitektur
US5239631A (en) * 1991-10-15 1993-08-24 International Business Machines Corporation Cpu bus allocation control
US5301282A (en) * 1991-10-15 1994-04-05 International Business Machines Corp. Controlling bus allocation using arbitration hold
US5708784A (en) * 1991-11-27 1998-01-13 Emc Corporation Dual bus computer architecture utilizing distributed arbitrators and method of using same
EP0559409B1 (en) * 1992-03-04 1998-07-22 Motorola, Inc. A method and apparatus for performing a bus arbitration protocol in a data processing system
US5418920A (en) * 1992-04-30 1995-05-23 Alcatel Network Systems, Inc. Refresh control method and system including request and refresh counters and priority arbitration circuitry
JP2531903B2 (ja) * 1992-06-22 1996-09-04 インターナショナル・ビジネス・マシーンズ・コーポレイション コンピュ―タ・システムおよびシステム拡張装置
JPH0690695B2 (ja) * 1992-06-24 1994-11-14 インターナショナル・ビジネス・マシーンズ・コーポレイション コンピュータ・システムおよびシステム拡張装置
US5396602A (en) * 1993-05-28 1995-03-07 International Business Machines Corp. Arbitration logic for multiple bus computer system
EP0654743A1 (en) * 1993-11-19 1995-05-24 International Business Machines Corporation Computer system having a DSP local bus
US5471590A (en) * 1994-01-28 1995-11-28 Compaq Computer Corp. Bus master arbitration circuitry having improved prioritization
US5528766A (en) * 1994-03-24 1996-06-18 Hewlett-Packard Company Multiple arbitration scheme
US5632020A (en) * 1994-03-25 1997-05-20 Advanced Micro Devices, Inc. System for docking a portable computer to a host computer without suspending processor operation by a docking agent driving the bus inactive during docking
US5524235A (en) * 1994-10-14 1996-06-04 Compaq Computer Corporation System for arbitrating access to memory with dynamic priority assignment
US5596729A (en) * 1995-03-03 1997-01-21 Compaq Computer Corporation First arbiter coupled to a first bus receiving requests from devices coupled to a second bus and controlled by a second arbiter on said second bus
US5734850A (en) * 1995-07-05 1998-03-31 National Semiconductor Corporation Transparent bridge between of a computer system and a method of interfacing the buses to operate as a single logical bus
US5724529A (en) * 1995-11-22 1998-03-03 Cirrus Logic, Inc. Computer system with multiple PC card controllers and a method of controlling I/O transfers in the system

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001202327A (ja) * 2000-01-20 2001-07-27 Fujitsu Ltd バス使用効率を高めた集積回路装置のバス制御方式

Also Published As

Publication number Publication date
SG65663A1 (en) 1999-06-22
EP0820018A2 (en) 1998-01-21
US5954809A (en) 1999-09-21
TW336296B (en) 1998-07-11
EP0820018A3 (en) 1999-03-10

Similar Documents

Publication Publication Date Title
JPH1069457A (ja) 多数のアービタを有するコンピュータ・システムにおいて分散仲裁を処理するための回路
US6070215A (en) Computer system with improved transition to low power operation
US6356963B1 (en) Long latency interrupt handling and input/output write posting
EP0730234B1 (en) Bus master arbitration circuitry having multiple arbiters
US6154798A (en) Computer system implementing hot docking and undocking capabilities by employing a local bus arbiter idle stats in which the arbiter is parked on a first input/output bus portion
US5692216A (en) Direct memory access controller having programmable timing
US5805842A (en) Apparatus, system and method for supporting DMA transfers on a multiplexed bus
US6108729A (en) Serial bus system for shadowing registers
US5517650A (en) Bridge for a power managed computer system with multiple buses and system arbitration
US6199134B1 (en) Computer system with bridge logic that asserts a system management interrupt signal when an address is made to a trapped address and which also completes the cycle to the target address
JPH08235103A (ja) コンピュータ・システムの2つのバス間のブリッジ回路
US5625824A (en) Circuit for selectively preventing a microprocessor from posting write cycles
US5796968A (en) Bus arbiter used in a computer system
EP0820021B1 (en) Apparatus and method for positively and subtractively decoding addresses on a bus
US6272580B1 (en) Apparatus and method for dynamically elevating a lower level bus master to an upper level bus master within a multi-level arbitration system
US5781748A (en) Computer system utilizing two ISA busses coupled to a mezzanine bus
US6598104B1 (en) Smart retry system that reduces wasted bus transactions associated with master retries
US20050256994A1 (en) System and method for providing an arbitrated memory bus in a hybrid computing system
US6247087B1 (en) Bus system for shadowing registers
US5951667A (en) Method and apparatus for connecting expansion buses to a peripheral component interconnect bus
US6240522B1 (en) Clock run controller
US6496895B1 (en) Method and apparatus for intializing a hub interface
US6480965B1 (en) Power management method for a computer system having a hub interface architecture
US20040010644A1 (en) System and method for providing improved bus utilization via target directed completion
US6199123B1 (en) Computer system for supporting increased PCI master devices without the requiring additional bridge chips

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20040602

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20040602

A761 Written withdrawal of application

Free format text: JAPANESE INTERMEDIATE CODE: A761

Effective date: 20061117