JP4625549B2 - 調停システム、およびアクセスを調停する方法 - Google Patents
調停システム、およびアクセスを調停する方法 Download PDFInfo
- Publication number
- JP4625549B2 JP4625549B2 JP03565898A JP3565898A JP4625549B2 JP 4625549 B2 JP4625549 B2 JP 4625549B2 JP 03565898 A JP03565898 A JP 03565898A JP 3565898 A JP3565898 A JP 3565898A JP 4625549 B2 JP4625549 B2 JP 4625549B2
- Authority
- JP
- Japan
- Prior art keywords
- bus
- arbiter
- access
- agent
- request
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR 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/36—Handling requests for interconnection or transfer for access to common bus or bus system
- G06F13/362—Handling requests for interconnection or transfer for access to common bus or bus system with centralised access control
- G06F13/364—Handling requests for interconnection or transfer for access to common bus or bus system with centralised access control using independent requests or grants, e.g. using separated request and grant lines
Description
【技術分野】
この発明は、調停に関し、より特定的には、ネットワークインタフェースと、ネットワークインタフェースにデータを送りかつそれからデータを受取るホストコンピュータとの間の、バスの競合問題を避けるためのバス調停に関する。
【0002】
ここに開示する実施例は、ネットワーク接続されたコンピュータおよびネットワーク制御システム内の、インタフェースデバイスおよびバス調停コントローラに適用が可能である。
【0003】
【背景技術】
現代のコンピュータシステムはしばしば、コントローラ、プロセッサ、メモリおよび周辺装置を含む。データはしばしば、これらのコンポーネントを接続するバス上を伝送されねばならない。このようなシステムの一例がローカルエリアネットワークであり、これは多数のネットワークステーションを含む。ネットワークステーションは典型的に、PCI(peripheral cmponent interconnect)インタフェースを介してホストプロセッサとデータを送受信する、媒体アクセス制御(MAC)層ネットワークインタフェースを含む。
【0004】
ネットワークインタフェースには、PCIインタフェースとMAC送信および受信FIFOとの間でデータをバッファするための拡張バスインタフェースを含むものがある。具体的には、このインタフェースは、付加的な送信および受信データを記憶するための共有外部メモリにアクセスするのに使用され得る。しかし、送信データまたは受信データの記憶または検索のために拡張バスインタフェースにアクセスする試みは、独立して発生すると考えられる。したがって、同時に同じ資源にアクセスが試みられることで、バスの競合問題またはバスのデッドロック問題が生じる。なぜなら、それら2つの独立した動作が、同じバスを介して同じ資源へのアクセスを試みるためである。
【0005】
【発明の概要】
同じ資源へのリクエストが同時に起こる際に、共有資源に対するリクエストを調停する構成が必要とされる。
【0006】
リクエストのうちいくつかが2つ以上の資源へのアクセスを要求する際の、共有資源へのリクエストを調停する構成もまた必要とされる。
【0007】
これらおよび他の必要は、本発明によって達成される。すなわち、本発明では、第1および第2のアービタが、クロック信号のそれぞれ排他的な部分の間に、第1のバスまたは第2のバスへのアクセス要求を許可する。
【0008】
この発明の一局面に従えば、バスへのアクセス要求を調停するためのシステムは、第1および第2のアービタを含む。第1のアービタは、クロック信号の第1の部分の間に、第2のバスが利用可能かどうかに基づいて、第1のバスへのアクセスをリクエストを発した第1のエージェントに許可する。リクエストを発した第1のエージェントが、第1および第2のバスへのアクセスを要求する場合、第2のアービタは、クロック信号の第2の部分の間に、第2のバスが利用可能かどうかに基づいて、リクエストを発した第2のエージェントに対して第2のバスへのアクセスを許可する。クロック信号のそれぞれの部分の間に第1および第2のアービタがアクセスを許可するので、それらのアービタが、共有資源へのアクセスを許可しようとする際に、デッドロックまたは競合状態に陥ることはなくなる。さらに、クロック信号の異なる部分を使用するので、最小限の論理で確実な調停が保証される。
【0009】
この発明の別の局面によれば、データコントローラ内において、第1および第2のバスのうち少なくとも一方のバスへのアクセスを調停するための方法が提供される。この方法は、クロック信号を少なくとも2つの排他的部分に分割するステップと、第1のバスが利用可能かどうかと、第1および第2のバスが同時に利用可能かどうかとをそれぞれ示す、第1および第2の信号を生成するステップと、クロック信号の第1の排他的部分の間に第2の信号に基づいて、第1のバスへのアクセスを要求する動作にアクセスを許可するステップとを含む。第2のバスへのアクセスは、クロック信号の第2の排他的部分の間に、第2のバスが利用可能かどうかおよび第1の信号に基づいて、第1および第2のバスへのアクセスを要求する第2の動作に対して許可される。クロック信号の排他的部分を使用することで、データコントローラは、多数のリクエストを同時に受取った場合にも、1または複数のバスへのアクセスを要求することが考えられる特定の動作のために、選択的にアクセスを許可することができるようになる。
【0010】
この発明の他の目的および利点は、以下の詳細な説明から、当業者には容易に明らかとなろう。示されかつ説明される実施例は、この発明を実行するために考えられるベストモードを示すものである。この発明は、種々の明らかな点で修正を加えることが可能であり、それらはすべてこの発明から離れることはない。したがって、図面および説明は、例示のためのものであって、限定的なものではないと見なされるべきである。
【0011】
【図示された実施例の詳細な説明】
図1は、ネットワークステーション内の、この発明の調停方法を使用するシステムの一例を示すブロック図である。しかし、この発明が資源の調停を必要とする他のいかなるシステムにも適用可能であることは明らかであろう。
【0012】
図1は、データコントローラ10を含む。データコントローラ10は、ネットワークステーション内の、ネットワークインタフェースとホストコントローラとの間のデータ転送を制御する。このシステムは、PCI(peripheral component interconnect )インタフェース12を含み、これは、「Aバス」と称される第1のデータバスを介する、PCIバスとデータコントローラ10との間の通信をサポートする。媒体アクセス制御(MAC)ネットワークインタフェース16は、「Mバス」と称される第2のデータバスを介して、データコントローラ10間でデータを転送する。MACネットワークインタフェース16は、イーサネット(IEEE802.3)ネットワーク等のネットワーク上に、データコントローラ10から供給されるデータを搬送するデータパケットを出力する。このシステムはまた、好ましくはスタチックRAM(SRAM)として実現される外部メモリ14を含み、これは、「Sバス」と称されるデータバスを介してデータコントローラ10間でデータを転送する。外部メモリ14は、ホストコントローラと、接続されるワークステーションとの間で、ネットワークを介して転送されるデータを一時的に記憶して、PCIインタフェース12およびMAC16内の内部バッファを補う。
【0013】
図2は、データコントローラ10によって実行される4つのエージェントを示すデータ流れ図である。これらエージェントは、送信直接メモリアクセス(TxDMA)エージェント26、受信直接メモリアクセス(Rx DMA)エージェント28、送信MAC(Tx MAC)エージェント30および受信MAC(Rx MAC)エージェント32を含む。これらエージェントはたとえば、論理状態マシンとして実現され得る。エージェント26および30は、SRAM14を介するPCIインタフェース12からMAC16へのデータの転送(すなわち、データ流れ)を(すなわち、送信データ経路を)制御し、エージェント28および32は、MAC16からPCIインタフェース12へのデータの転送(すなわち、受信経路)を制御する。したがって、送信データ経路と受信データ経路とは、SRAM14を共有する。上述のように、データコントローラ10は、SRAM14にアクセスするよう競合する4つのエージェントのための機構を提供する。
【0014】
送信DMAエージェント26は、PCIインタフェース12からSRAM14にフレームを移動させるための動作のすべてを調整する。これらの動作は、ディスクリプタの読出し、PCIバスからSRAM14へのデータ転送、状態の書込み、および、上記DMAの動作に必要とされるすべての初期化を含む。
【0015】
Tx DMAエージェント26は、AバスおよびSバスを介して、PCIインタフェース入力FIFO18からSRAM14へとフレームを移動させる。SRAM14において完全な送信フレームが受信されると、Tx MACエージェント30がデータをSバスを介してMAC送信FIFO22に移動させる。具体的には、送信MACエージェント30がMAC送信FIFO22の準備が整った状態を検出すると、送信MACエージェント30がSRAM14内の完全な送信フレームをチェックして、アービタに対してリクエスト信号をアサートする。これを下に説明する。これに代えて、送信MACエージェント30は、送信FIFO記憶容量が所定のしきい値に達したかどうかをチェックしてもよい。アービタから許可信号を受取った後に、送信MACエージェント30は低レベルモジュールを呼出して、MAC送信FIFO22への最高8ワードまでのデータ転送を行なう。
【0016】
受信MACエージェント32は、Sバスを介して、MAC受信FIFO24からSRAM14にフレームを移動させる。SRAM14は、受信オーバフローを引き起こすことなく最高64フレームを保持するよう構成された、待ち行列機構を含む。64×32ビット長のキューは、MAC16から受け取られた各ノーマルフレームのためのフレーム長および受信状態情報を保持する。
【0017】
受信MACエージェント32は、最初に、受信フレームの廃棄および受信FIFOのフラッシュを引き起こすおそれのある例外的な条件が存在するかどうかをチェックする。もしそのような状態が存在すれば、受信MACエージェント32はSRAM14をフラッシュする。データが受信FIFO24から入手可能である場合、受信MACエージェント32はアービタにリクエストを送って許可を待つ。受信MACエージェント32はその後、低レベルモジュールを呼出して、MAC受信FIFO24からSRAM14への最高8ワードの転送を行なう。
【0018】
受信DMAエージェント28は、SRAM14からPCIバスにフレームを移動させるためのすべての動作を調整する。これらの動作は、ディスクリプタの読出し、SRAM14からPCIバスへのデータ転送、状態の書込み、および、上記DMA動作に必要なすべての初期化を含む。
【0019】
すべてのDMA動作は、対応するDMAエージェント26または28による、以下のステップの実行を伴う:
− アービタ(図示せず)にリクエスト信号を送り、そのアービタからの許可信号を待つステップ、
− ディスクリプタ読出しの場合には、低レベルモジュールを呼出して、ディスクリプタをPCIバスから内部ディスクリプタ保持レジスタに移動させるステップ、
− データ読出しの場合には、低レベルモジュールを呼出して、PCIバスからSRAM14へと8ワードを移動させるステップ、
− データ書込みの場合には、低レベルモジュールを呼出して、SRAM14からPCIバスへと8ワードを移動させるステップ、
− 状態書込みの場合には、低レベルモジュールを呼出して、内部状態保持レジスタからPCIバスへと状態を移動させるステップ、および、
− アービタへのリクエスト信号をデアサートするステップ、である。
【0020】
ディスクリプタコントローラは、データコントローラ10内に含まれる。ディスクリプタコントローラの動作は、受信状態書込み(Rx Stat Wr)、送信状態書込み(Tx Stat Wr)、受信ディスクリプタ読出し(RxDesc Rd)および送信ディスクリプタ読出し(Tx Desc Rd)を含む。スレーブコントローラもまたデータコントローラ10に含まれる。スレーブコントローラの動作は、スレーブ読出し/書込み(Slv RW)を含む。ディスクリプタコントローラおよびスレーブコントローラのこれらすべての動作は、Aバスへのアクセスを要求する。
【0021】
図3は、この発明の一実施例に従ったデータコントローラ10を示すブロック図である。上述のように、データコントローラ10は、特定の動作を行なうための実行可能エージェントを含む。上述のように、エージェントの第1のグループ(26、28、30および32)はSRAM14へのアクセスを共有し、したがって、Sバスへのアクセスを共有せねばならない。DMAエージェント26および28はまた、PCIインタフェース12とSRAM14との間の転送のために、AバスおよびSバスの双方への並行の(すなわち、同時の)アクセスを要求する。エージェントの第2のグループ(Slv RW34、Rx Stat Wr36、Tx Stat Wr38、Rx Desc Rd40、およびTx Desc Rd42)は、Aバスへのアクセスを共有する。各グループ内のエージェントは順次にスケジュールされているわけではないので、データコントローラ10はバスSおよびバスAへのアクセスをそれぞれ制御する、アービタS44およびアービタA46を含む。アービタ44および46は、リクエスト(REQ)および許可(GNT)ハンドシェイク信号、バスフリー信号、およびクロック信号を使用して、調停を行なう。
【0022】
たとえば、送信MACリクエスト(TX MAC REQ)は、Sバスへのアクセスのために、送信MACエージェント30によってアービタS44に対して生成されるリクエストである。アービタS44はこのリクエストを受取って、送信MAC許可(TX MAC GND)信号を送信MACエージェント30に送ることによって、送信MACエージェント30にアクセスを許可する。同様に、アービタS44およびA46への他のアクセスリクエストはそれぞれ、同じ方法で行なわれる。所与のいかなる時にも、1つのエージェントしか、共有資源(たとえばAバス)へのアクセスを許可されない。
【0023】
上述のように、送信DMA26および受信DMA28は、AバスおよびSバスへのアクセスを同時に要求して、PCIバスとSRAM14との間でデータを転送する。これら2つのエージェントがアクセスを要求する際にAバスおよびSバスの双方が確実に利用可能となるように、アービタA46およびアービタS44は、信号A FREEおよびS FREEで、それらのそれぞれのバスの状態を通信する。
【0024】
Aバスが利用可能なときには、アービタA46が信号A FREEを生成してアービタS44に送信する。同様に、アービタS44はS FREEを生成してアービタA46に送信する。信号S FREEは通常アサートされているが、アービタS44がSバスおよびAバスの双方へのアクセスのための許可を送信DMAエージェント26または受信DMAエージェント28のいずれかに与えようとするときにデアサートされる。したがって、S FREEは、SバスおよびAバスが双方とも利用不可能な場合に限り、デアサートされる。信号A FREEは通常アサートされているが、アービタA46が第2のグループ内のエージェントのうちいずれか1つに許可を与えようとする際にデアサートされる。A FREEがアサートされていない限り、アービタS44によって送信DMAエージェント26または受信DMAエージェント28に対して許可が与えられることはないが、これは、これら2つのエージェントがAバスばかりでなくSバスへもアクセスを要求するためである。同様に、S FREEがアサートされていない限り、アービタA46によって第2のグループ内のエージェントのうち1つに許可が与えられることはない。
【0025】
図4は、この発明の調停構成が使用されない場合に、図3の調停機構において起こり得る問題を図示する。図4において、REQ Sは、SバスおよびAバスへのアクセスを要求する、送信DMAエージェント26または受信DMAエージェント28によって生成されるリクエストを表わし、REQ Aは、Aバスへのアクセスを要求する、第2のグループからのエージェントのうち1つ(たとえば、エージェント34、36、38、40または42)によって生成されるリクエストを表わす。GNT Sは、送信DMAエージェント26または受信DMAエージェント28のいずれかへの1つのみの許可を表わし、GND Aは、第2のグループからのエージェントのうち1つへの1つのみの許可を表わす。
【0026】
事象62でREQ Sがアサートされたことに応答して、アービタS44は事象66においてS FREEをデアサートして、第2のクロック時に、アービタA46に対して、Sバスがもはや利用可能ではないことを知らせる。第3のクロック時には、もしA FREEがアサートされていれば、GNT Sがアサートされる。アービタA46は、REQ Aに対して、同じ時間に同じように動作する。すなわち、アービタA46は事象60におけるREQ Aに応答して事象64でA FREEをデアサートし、第2のクロック時に、アービタS44に対して、SバスおよびAバスがもはや利用可能ではないことを知らせる。第3のクロック時に、S FREEがアサートされている場合には、GNT Aがアサートされる。この例では、第3のクロックサイクル時にデッドロックが生じる。これは、各アービタ44および46が、共有Aバスがビジーであって、事象68および69においていずれの許可信号もアサートされないと考えるためである。したがって、Aバスへのアクセスを要求しているエージェントはアクセスを拒否され、Sバスへのアクセスを要求しているエージェントもまたアクセスを拒否される。
【0027】
図5は、この発明の調停構成が使用されない場合に図3の調停機構に生じ得る別の問題を図示する。図5において、事象82でREQ Sがアサートされたことに応答して、アービタS44は、事象86においてS FREEをデアサートして、事象89においてGNT SをアサートすることでSバスおよびAバスへのアクセスを許可することによって、アービタA46に対して、SバスおよびAバスの双方が第2のクロック時に利用可能ではないことを知らせる。アービタA46は事象80におけるREQ Aに応答して、事象84においてA FREEをデアサートして、事象88においてGNT AをアサートすることでAバスへのアクセスを許可することによって、アービタS44に対して、Aバスが第2のクロック時に利用可能ではないことを知らせる。したがって、事象88および89においてGNT AおよびGNT Sの双方がアサートされるために、第2のクロック時に共有Aバスに関して競合が生じ、それにより、2つのエージェントが同時に同じAバスへのアクセスを要求する結果となる。これは、GNT Sが、第2のグループの1エージェントがAバスにアクセスしているのと同時に、送信DMAエージェント26または受信DMAエージェント28のいずれかがSバスとAバスとにアクセスするという結果をもたらすためである。
【0028】
以上のような競合/デッドロックの問題を解決するために、時分割多重化された調停機構が使用される。
【0029】
図7は、この発明の一実施例に従った、アクセスを調停するための方法を示すフロー図である。開示される方法は、並列で(たとえば、状態マシンとして)実現することが可能である。この方法は、ステップ201において、クロックをN個の部分に分割することによって開始する。ここで、Nは、共有資源、この場合Aバスを求めて競合するアービタの数に対応する。この場合、アービタ44および46を含むので、N=2である。図6を参照して、データコントローラ10はシステムクロックCLKから導出された2分周クロックとしてPHASE信号を生成する。101、103、105、107および109におけるハイの位相(PHA)は、アービタA46のための、システムのクロック信号の第1の排他的部分として予約される。これに対し、100、102、104、106、108および110におけるローの位相(PHS)は、アービタS44のための、第2の排他的部分として予約される。例示のシステム内のシステムクロックCLKは、33MHzの水晶基準クロックであるが、安定したクロック信号を供給する信号であれば、いかなる公知の基準信号を使用することも可能である。また、基準クロックから導出される2分周クロックを生成する際の詳細は、この発明には必要ではない。入力クロック信号を受取って、基準クロックを2分周した形である新しいクロック信号を生成する、当該技術分野で知られているいかなる典型的なデバイスも、この発明で使用するのに適している。
【0030】
この発明の時分割多重化調停機構において、アービタA46は、ステップ202におけるREQ Aに応答して、対応する排他的部分PHA中に限り、A FREEをデアサートしてGNT Aをアサートする。アービタS44は、ステップ203内のREQ Sに応答して、対応する排他的部分PHS中に限り、SFREEをデアサートしてGNT Sをアサートする。しかし、クロックがどちらの位相にあるかにかかわらず、いずれかのリクエストが許可されるには、SFREEとA FREE との双方がアサートされていなければならない(すなわち、Aバスがフリーでなければならない)。アービタA46とアービタS44は、決して同じ位相では決定を下さないため、デッドロックおよび競合状態が回避される。
【0031】
図6を参照して、事象112でREQ Aがアサートされる際には、信号AFREEおよびS FREEの双方がアサートされている。したがって、アービタA46はステップ204においてS FREEとA FREEとの双方がアサートされているかをチェックして、ステップ205および206において、排他的部分PHA中に、事象124においてGNT Aをアサートして、事象118においてA FREEをデアサートする。したがって、Aバスへのアクセスは、Aバスへのアクセスを要求している第2のグループ内のエージェント(たとえば、エージェント34、36、38、40または42)に許可される。この期間中に、アービタSはステップ204においてリクエストを拒否する。事象114でREQ Aがデアサートされると、A FREEが事象120で再びアサートされる。REQ S、S FREEおよびA FREEがサイクル107でアサートされているのに応答して、アービタSはステップ207および208において、事象128でPHSの際にGNT Sをアサートし、事象122においてSFREEをデアサートする。したがって、SバスおよびAバスへのアクセスは、送信DMAエージェント26または受信DMAエージェント28のいずれかに許可される。アービタS44とアービタA46とが同じ位相中にA FREEおよびS FREEをデアサートすることは決してないため、このシステムの資源に対するリクエストは、デッドロックの問題および競合の問題をいずれも回避する。
【0032】
例示の実施例において説明した時分割多重化調停システムは、2つのアービタを使用して、クロック信号を各アービタにつき1位相の、2つの位相に分割するが、この多重化調停システムは、3個以上のアービタを含むシステムにも等しく適用できる。たとえば、システムは3つの別個のバスへのアクセスを調停するために3つのアービタを利用することが可能である。このようなシステムにおいては、もし複数の動作のうちの1つがそれら3つのバスの各々へのアクセスを要求する場合、または、複数の動作のうち2つ以上の動作がバスのうち2つ以上のバスへのアクセスを要求する場合に、クロック信号は、各アービタにつき1位相である、3つの位相に分割される。このようにして、第1の位相は第1の動作にアクセスを許可するのに用いられ、第2の位相は第2の動作のために、また第3の位相は第3の動作のために利用される。同様に、4つのアービタを有する状況においては、クロックは4つの位相に分割される。
【0033】
この時分割多重化調停システムの例示の実施例はまた、クロックの位相が等しい期間を有するものと仮定するが、これに代えて、この発明は、クロックサイクルの異なる部分、すなわちタイムスライスを、異なるアービタに割当てることも可能である。たとえば、第1の動作が第2の動作よりもより頻繁に起こることがわかっている場合には、クロックサイクルの第1の部分がクロックサイクルの第2の部分よりもより長い期間を有してもよい。この方法により、第1の動作からのリクエストは、いかなる所与の時間にも、許可されやすくなる。なぜなら、第1のアービタがリクエストを許可することのできる時間期間が、第2のアービタがリクエストを許可することのできる時間期間よりも長いためである。
【0034】
この発明の例示の実施例はまた、バスがチップの外部に位置する場合を示すが、この発明は、バスがチップ内の内部バスであるようなシステムにおいても使用することが可能である。さらに、開示された構成は、多重バスを共有する多数のアービタを使用するシステムにも適用が可能である。したがって、種々のアービタおよびバスを使用することが可能である。
【0035】
以上のように、デッドロックおよび競合を回避することのできる時分割多重化調停のためのシステムおよび方法を開示したが、この発明の利点は、調停機構によって、システムが、データをどのように転送するかを判定する複雑な調停アルゴリズムを必要とすることなく、データ転送を適時処理することが可能となることである。この発明の別の利点は、使用される調停機構が、資源の競合を解決するためにアービタの階層構造を必要としないことである。これは、処理時間を節約し、さらに、アービタが複雑な論理を排除することによってチップスペースを節約することを可能にする。
【0036】
この開示においては、この発明の好ましい実施例のみを示しかつ説明したが、上に述べたように、この発明がさまざまな他の組合せおよび環境において使用することが可能であって、ここに説明した発明の概念の範囲内で変更または修正が可能であることを理解されたい。
【図面の簡単な説明】
【図1】この発明の一実施例に従った、ネットワークインタフェースとホストプロセッサとの間でデータを転送するための構成を示すブロック図である。
【図2】図1のネットワークインタフェースとPCIインタフェースとの間の、データ流れを示すブロック図である。
【図3】図1のデータコントローラを示すブロック図である。
【図4】この発明の調停構成が使用されない場合のデッドロック状況を示すタイミング図である。
【図5】この発明の調停構成が使用されない場合の、競合状況を示す別のタイミング図である。
【図6】図1のシステムのための、時分割多重化調停機構を示すタイミング図である。
【図7】この発明の一実施例に従った、アクセスを調停するための方法のフロー図である。
【符号の説明】
10 データコントローラ
12 PCIインタフェース
14 SRAM
16 MAC
26 送信DMAエージェント
28 受信DMAエージェント
30 送信MACエージェント
32 受信MACエージェント
44 アービタ
46 アービタ
Claims (5)
- クロック信号の第1の部分中に、第2のバス(A)が利用可能か否かに基づいて、リクエストを発した第1のエージェントに対して第1のバス(S)へのアクセスを許可するよう構成された第1のアービタ(S44)と、
クロック信号の第2の部分中に、第2のバスが利用可能か否かに基づいて、リクエストを発した第2のエージェントに対して第2のバス(A)へのアクセスを許可するよう構成された第2のアービタ(A46)とを含み、リクエストを発する第1のエージェントは、第1および第2のバスへの同時アクセスを要求する、調停システム(10)。 - 第1のアービタは、第1のバスと第2のバスとが同時に利用可能か否かを示す第1のバスフリー信号(S FREE)を、第2のアービタに送信するよう構成される、請求項1に記載の調停システム。
- 第2のアービタは、第2のバスが利用可能か否かを示す第2のバスフリー信号(A FREE)を第1のアービタに送信するよう構成される、請求項2に記載の調停システム。
- 第1のアービタは、第1のバスおよび第2のバスの双方がフリーであるときに限り、リクエストを発した第1のエージェントに対して第1のバスへの前記アクセスを許可するよう構成され、リクエストを発した第1のエージェントは、第1のバスへの前記アクセスが許可されたことに応答して、前記第1のバスおよび前記第2のバス上でデータを転送する、請求項2に記載の調停システム。
- 第2のアービタは、前記第1のバスフリー信号に基づいて、リクエストを発した第2のエージェントに対して第2のバスへの前記アクセスを許可するよう構成され、リクエストを発した第2のエージェントは、第2のバスへの前記アクセスが許可されたことに応答して、前記第2のバス上でデータを転送する、請求項2に記載の調停システム。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US08/879202 | 1997-06-19 | ||
US08/879,202 US6061361A (en) | 1997-06-19 | 1997-06-19 | Time multiplexed scheme for deadlock resolution in distributed arbitration |
Publications (2)
Publication Number | Publication Date |
---|---|
JPH1125036A JPH1125036A (ja) | 1999-01-29 |
JP4625549B2 true JP4625549B2 (ja) | 2011-02-02 |
Family
ID=25373631
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP03565898A Expired - Fee Related JP4625549B2 (ja) | 1997-06-19 | 1998-02-18 | 調停システム、およびアクセスを調停する方法 |
Country Status (4)
Country | Link |
---|---|
US (1) | US6061361A (ja) |
EP (1) | EP0886218B1 (ja) |
JP (1) | JP4625549B2 (ja) |
DE (1) | DE69827879T2 (ja) |
Families Citing this family (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6738845B1 (en) | 1999-11-05 | 2004-05-18 | Analog Devices, Inc. | Bus architecture and shared bus arbitration method for a communication device |
DE19961124A1 (de) * | 1999-12-17 | 2001-06-21 | Infineon Technologies Ag | Schnittstelle |
US6778548B1 (en) * | 2000-06-26 | 2004-08-17 | Intel Corporation | Device to receive, buffer, and transmit packets of data in a packet switching network |
US7035277B1 (en) * | 2000-08-31 | 2006-04-25 | Cisco Technology, Inc. | Priority-based arbitration system for context switching applications |
WO2007095992A1 (en) | 2006-02-20 | 2007-08-30 | Robert Bosch Gmbh | Obstruction detection device |
FR3087982B1 (fr) * | 2018-10-31 | 2020-12-04 | Commissariat Energie Atomique | Procede et circuit de multiplexage temporel d'acces concurrents a une ressource informatique |
TWI739556B (zh) * | 2020-08-19 | 2021-09-11 | 瑞昱半導體股份有限公司 | 時脈死結檢測系統、方法以及非暫態電腦可讀取媒體 |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
IT1229667B (it) * | 1989-04-24 | 1991-09-06 | Bull Hn Information Syst | Sistema di elaborazione dati con arbitratore duale di accesso a bus di sistema. |
ES2210250T3 (es) * | 1993-03-12 | 2004-07-01 | Motorola, Inc. | Metodo para reducir la contencion y los errores de asignacion de recursos. |
US5713025A (en) * | 1993-10-21 | 1998-01-27 | Sun Microsystems, Inc. | Asynchronous arbiter using multiple arbiter elements to enhance speed |
US5787265A (en) * | 1995-09-28 | 1998-07-28 | Emc Corporation | Bus arbitration system having a pair of logic networks to control data transfer between a memory and a pair of buses |
US5745684A (en) * | 1995-11-06 | 1998-04-28 | Sun Microsystems, Inc. | Apparatus and method for providing a generic interface between a host system and an asynchronous transfer mode core functional block |
US5797018A (en) * | 1995-12-07 | 1998-08-18 | Compaq Computer Corporation | Apparatus and method of preventing a deadlock condition in a computer system |
-
1997
- 1997-06-19 US US08/879,202 patent/US6061361A/en not_active Expired - Lifetime
-
1998
- 1998-01-29 DE DE69827879T patent/DE69827879T2/de not_active Expired - Lifetime
- 1998-01-29 EP EP98300659A patent/EP0886218B1/en not_active Expired - Lifetime
- 1998-02-18 JP JP03565898A patent/JP4625549B2/ja not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
JPH1125036A (ja) | 1999-01-29 |
US6061361A (en) | 2000-05-09 |
DE69827879D1 (de) | 2005-01-05 |
DE69827879T2 (de) | 2005-11-03 |
EP0886218B1 (en) | 2004-12-01 |
EP0886218A2 (en) | 1998-12-23 |
EP0886218A3 (en) | 2003-04-09 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP0581335B1 (en) | Data processing system having units competing for access to shared resources and arbitration unit responsive to the status of the shared resources | |
US6151651A (en) | Communication link with isochronous and asynchronous priority modes coupling bridge circuits in a computer system | |
US5546543A (en) | Method for assigning priority to receive and transmit requests in response to occupancy of receive and transmit buffers when transmission and reception are in progress | |
US6519666B1 (en) | Arbitration scheme for optimal performance | |
US5933610A (en) | Predictive arbitration system for PCI bus agents | |
US6134625A (en) | Method and apparatus for providing arbitration between multiple data streams | |
US8190801B2 (en) | Interconnect logic for a data processing apparatus | |
US6148357A (en) | Integrated CPU and memory controller utilizing a communication link having isochronous and asynchronous priority modes | |
US5546547A (en) | Memory bus arbiter for a computer system having a dsp co-processor | |
US5515523A (en) | Method and apparatus for arbitrating conflicts by monitoring number of access requests per unit of time in multiport memory systems | |
US5590299A (en) | Multiprocessor system bus protocol for optimized accessing of interleaved storage modules | |
US6425037B1 (en) | Information processing system, bus arbiter, and bus controlling method | |
JP4313607B2 (ja) | バス接続回路及びバス接続システム | |
KR20160112305A (ko) | 공유 리소스 액세스 중재 방법 및 이를 수행하기 위한 공유 리소스 액세스 중재 장치 및 공유 리소스 액세스 중재 시스템 | |
KR100708096B1 (ko) | 버스 시스템 및 그 실행 순서 조정방법 | |
KR100480605B1 (ko) | 네트워크 제어기의 송신부 버퍼 및 수신부 버퍼를제어하는 방법 및 네트워크 제어기 | |
JP4625549B2 (ja) | 調停システム、およびアクセスを調停する方法 | |
US6199132B1 (en) | Communication link with isochronous and asynchronous priority modes | |
JPH06337843A (ja) | データ転送制御方法 | |
US7904624B2 (en) | High bandwidth split bus | |
US20030140189A1 (en) | Method and apparatus for resource sharing in a multi-processor system | |
JP2626137B2 (ja) | バス制御方式 | |
EP1380960B1 (en) | Memory access from different clock domains | |
JP2000029822A (ja) | ブリッジ装置 | |
JP2632049B2 (ja) | マルチプロセッサシステム |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20050204 |
|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20050204 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20070518 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20070529 |
|
A601 | Written request for extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A601 Effective date: 20070828 |
|
A602 | Written permission of extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A602 Effective date: 20070831 |
|
A601 | Written request for extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A601 Effective date: 20070927 |
|
A602 | Written permission of extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A602 Effective date: 20071002 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20071120 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20100916 |
|
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20101108 |
|
R150 | Certificate of patent or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20131112 Year of fee payment: 3 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20131112 Year of fee payment: 3 |
|
S111 | Request for change of ownership or part of ownership |
Free format text: JAPANESE INTERMEDIATE CODE: R313113 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20131112 Year of fee payment: 3 |
|
R350 | Written notification of registration of transfer |
Free format text: JAPANESE INTERMEDIATE CODE: R350 |
|
LAPS | Cancellation because of no payment of annual fees |