JP2010501954A - バス上で単純かつ高い信頼度の分散アービトレーションを行うための回路、方法及び装置 - Google Patents

バス上で単純かつ高い信頼度の分散アービトレーションを行うための回路、方法及び装置 Download PDF

Info

Publication number
JP2010501954A
JP2010501954A JP2009526141A JP2009526141A JP2010501954A JP 2010501954 A JP2010501954 A JP 2010501954A JP 2009526141 A JP2009526141 A JP 2009526141A JP 2009526141 A JP2009526141 A JP 2009526141A JP 2010501954 A JP2010501954 A JP 2010501954A
Authority
JP
Japan
Prior art keywords
bus
bus line
circuit
line
fixed potential
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
Application number
JP2009526141A
Other languages
English (en)
Other versions
JP4824111B2 (ja
Inventor
テロ・ヴァッリウス
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.)
Atomia Oy
Original Assignee
Atomia Oy
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 Atomia Oy filed Critical Atomia Oy
Publication of JP2010501954A publication Critical patent/JP2010501954A/ja
Application granted granted Critical
Publication of JP4824111B2 publication Critical patent/JP4824111B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/40Bus networks
    • H04L12/407Bus networks with decentralised control
    • H04L12/413Bus networks with decentralised control with random access, e.g. carrier-sense multiple-access with collision detection [CSMA-CD]
    • H04L12/4135Bus networks with decentralised control with random access, e.g. carrier-sense multiple-access with collision detection [CSMA-CD] using bit-wise arbitration
    • 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/40Bus networks
    • H04L12/40006Architecture of a communication node
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/40Bus networks
    • H04L12/40006Architecture of a communication node
    • H04L12/40032Details regarding a bus interface enhancer
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/40Bus networks
    • H04L12/407Bus networks with decentralised control

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Bus Control (AREA)

Abstract

バスにアクセスするためのアービトレータ回路は、その1つの入力部が第1のバスラインに接続された論理ゲート装置(406)を備える。本回路は、切換装置(404、405、407)を備える。制御信号に対する応答として、切換装置は第1のバスラインの第1の半分(402)を第2の半分(403)から切断し、第2の半分(403)を第1の固定電位に接続する。第2のバスライン(401)は、第2の固定電位を受け取るように接続された論理ゲート装置(406)から非接続される。第2のバスラインは、第1の固定電位に接続される。2つの信号源は、制御信号を切換装置(404、405、407)に提供するために利用可能である。これらのうちの一方は、論理ゲート装置(406)の出力部である。

Description

本発明は、一般に、1つのバスを介する複数の電子回路間の通信を調整する技術に関する。特に、本発明は、集中型のアービトレータのないバスアクセス及びアービトレーション技術に関する。
バスアービトレーションは、複数の競合するノードのうちのどれがバス上への送信を許可されるかを決定し、これらの競合するノードを上記決定に従って動作させる系統的な方法を意味する。バスアービトレーションには、2つの基本的なアプローチが存在する。集中アービトレーションは、バスにアクセスするための順番を必要に応じてノードに付与する集中型の意志決定エンティティを含む。分散アービトレーションは、ノード固有の、競合の状況を検出してそれに応じて反応する能力に依存する。集中アービトレーションの例は、標準化されたPCI(Peripheral Component Interconnect)及びVMEbus(Versa Module Eurocard bus)解決方法から知られる。分散アービトレーションを有する既知のパラレルバス規格はNuBus及びMultiBus IIを含み、分散アービトレーションを含む既知のシリアルバス規格はi2c(又はIIC:Inter−Integrated Circuit)、CAN(Controller Area Network)及びLIN(Local Interconnect Network)を含む。
図1は、バスアービトレーションが必要とされることになる例示的な環境を示す。この例は、非特許文献1からEOC(Embedded Object Concept)として知られ、複数のブロックから組込みシステムをモジュール式かつオブジェクト指向の方法で構築することに特に適する。クラスオブジェクトは、参照符号101及び141で示されているクラスオブジェクトのように、オブジェクトのクラス全体を論理レベルで表す。第1のオブジェクトのクラスにおいて、クラスオブジェクト101及び参照符号111、121及び131で示されるオブジェクトが存在する。第2のオブジェクトのクラスにおいて、クラスオブジェクト141及び参照符号151及び161で示されるオブジェクトが存在する。各クラスオブジェクト及び各オブジェクトはそれぞれ、何らかの機能部分102、112、122、132、142、152及び162を含むことが仮定される。第1のバス171は、複数のクラスオブジェクトを互いにリンクする。この目的のために、クラスオブジェクト101及び141はそれぞれ、第1のバスインタフェース103及び143を有する。各クラス内にはクラス固有のバスが存在し、図1には、そのうちのバス181及び191が示されている。クラスオブジェクト及び当該クラスのオブジェクトは全て、自らを適切なバスに接続するためのバスインタフェースを含む。バスインタフェース104、113、123、133、144、153及び163をそれぞれ参照されたい。バス171、181及び191上では、バス固有のアービトレーションが別々に必要とされる。
集中アービトレーションの主要な特徴は、これが各ノードから意志決定装置への個々のアービトレーション接続を必要とすることに起因して、所定の比較的低い限界値より多いノード数に対してスケーラブルでないという事実にある。図1に示すモジュール式のオブジェクト指向アーキテクチャは、オブジェクトクラスの数及びクラス内のオブジェクトの数の両方に関して自由にスケーラブルであり、これが分散アービトレーションを唯一のもっともらしい代替物にしている。
T. Vallius and J. Roning,"ATOMI II − Framework for easy building of object oriented embedded systems",Proceedings of 9th Euromicro Conference on Digital System Design, Architectures,Methods and Tools,クロアチア共和国ツァブタット,2006年8月30日〜9月1日。
分散アービトレーションに関しては、複数の基本的なアプローチが知られている。「オープンコレクタゲート」という呼称は、バスラインのデジタル状態のうちの一方が所謂弱い状態(weak state)であり、他方が強制された状態(forced state)であるシステムを指す。典型的には、高電圧状態は弱く、低電圧状態は強制された状態である。このようなバスライン上での2つの同時の設定は常に、強制された状態を仮定するバスラインをもたらす。各送信ノードは、バスライン上の送信の結果を監視する。送信ノードがバスラインを弱い状態に設定するように試行したが、逆にそのバスラインが強制された状態にあることを発見すると、この送信ノードは別のノードも送信中であることを認識し、バスを譲り後に再試行することによって対応する。オープンコレクタゲートの欠点は、エネルギー消費がノード数の関数として増大することにある。存在するノードが多くなるほど、他のノードにおけるプルアップ抵抗器による逆の効果に抗してバスラインの電圧を強制された状態に引き寄せるためにより大きい電力が必要とされる。
ディジーチェーニング(Daisy chaining)は、バス上の可能な全てのマスタ装置に共通のアービトレーションラインを引くことを指す。アクセス要求はあらゆるマスタを介して進み、これらのマスタはこの要求を転送又は停止することができる。1つの欠点として、多くのディジーチェーンの解決方法は、各ノードにおいて比較的複雑なアービトレーション論理回路を必要とする。トークンリングのアプローチは、概念的にディジーチェーニングに幾分関連し、ノード間で送信認証トークンを配布する(circulate)ことを含む。
搬送波検知多重アクセス/衝突検出方式(CSMA/CD(carrier sense multi−access/collision detection))では、ノードはバスをリッスンし、そのバスがフリーであるように思われるときにのみ送信を開始する。ときに、2つ以上のノードが送信を同時に開始し、その結果衝突が生じる。各ノードは、衝突からランダムな時間を待機した後に再度試行する。特にバスを巡って競合するマスタが継続的に多く存在すれば、多くのバス容量が容易に失われる。タイムスライスのアービトレーション又は時分割のアービトレーションは、送信の順番に関して所定の割当てを行うことを意味する。これは、ノードが共通のクロックへのアクセスを有することを必要とし、実際の送信アクティビティがノード間で均一に分散されない場合には容量が浪費される。
本発明の目的は、優れたスケーラビリティを有する単純かつ高い信頼度の方法で、分散バスアービトレーションのための回路、方法及び装置を提供することにある。本発明の他の目的は、複数のアービトレーションラインのうちの少なくともいくつかを他の目的のために再利用することを可能にすることにある。本発明の別の目的は、コントローラユニットからバスアービトレーションユニットへの非常に単純な制御接続しか必要としないことにある。本発明のさらに別の目的は、このアービトレーション原理を異なる種類のバスアーキテクチャに容易に適用できるようにすることにある。
本発明のこれらの目的は、1つのアービトレーションラインが予約の試行をノード間に伝達し、別のアービトレーションラインがバスに接続されたノード間の優先順位付けを行うという解決方法によって達成される。ノードは、バスを予約する必要性が生じるまで当該ノードのアービトレーション回路を非アクティブに保つ。起動されると、アービトレーション回路は、予約を試行することによってフリーであるバスに反応する。同時の予約試行を行っている競合しているノードの中のうちの勝者は、優先順位ラインに沿った相対的な位置によって決定される。
本発明に係る回路は、回路に関する独立クレームの特徴部分に記載されている機能によって特徴づけられる。
本発明に係る方法は、方法に関する独立クレームの特徴部分に記載されている機能によって特徴づけられる。
本発明に係る装置は、装置に関する独立クレームの特徴部分に記載されている機能によって特徴づけられる。
本発明の重要な一つの側面は、バスを予約することは動的なプロセスであるという見識にあり、そのプロセスの進行は、予約の試行が実行されるラインと同一のラインからフィードバックを受信することによって監視されることが可能である。ノードにとって、バスがフリーであるか否かという問題は、上記ノードがそのバスを使用する必要が生じたときにのみ現実のものとなる。この問題が生じると、ノード内のコントローラは、その状態がアービトレーションラインの現在の状態に直接的に依存するアービトレーション回路を起動する。バスが現在予約されていることをアレービトレーションラインが示すと、アービトレーション回路は待機するが、コントローラが上記起動を取り消さない限りアクティブ状態に留まる。アービトレーションラインがフリーとなるべきバスを示す状態であると仮定するとすぐに、アービトレーション回路はアービトレーションラインのうちの1つを切断し、その片側を固定電位に接続して他方の側をリッスンする。他方の側も上記固定電位を仮定していれば、より高い優先順位を有するその側の他のノードが同時の予約を実行し、より低い優先順位のノードはその予約試行を中断してバスを譲らなければならない。しかしながら、切断されたアービトレーションラインの上記他方の側が、予約動作中のノードが他のアービトレーションライン上へ予約信号を送信するのに十分な長さに渡って完全なままであれば、(優先順位に関わらず)他の全てのノードによる介在は回避され、その予約試行は達成されている。
バス自体がデジタルである場合でも、予約試行の間のライン電圧の変化は基本的にはアナログの現象であって、所定の特徴的な時定数及び勾配値を含む。バスがフリーになるのを待っている複数のノードが存在していれば、そのうちのどのノードが次にバスを予約することになるかは、優先順位ラインに沿ったこれらの相互の位置のみならず、フリーになりつつあるバスにアービトレーション回路が反応する速度にも依存する。優先順位ラインに沿って所定の順序でノードを配置することは、所謂地理的な優先順位づけを行うが、本発明は、位置に関わらずノードに特有の固有の優先順位づけを行うために、異なるように調整されたアービトレーション回路をノードに装備することを除外するものではない。
アービトレーション回路の特有の内部構造は、制御ユニットが、制御ユニットとアービトレーション回路との間の同一のラインを使用して起動/停止コマンドを伝達し予約試行が成功したか否かに関するフィードバックを受信することを可能にする。これは、コントローラが、必要に応じてピンを入力ピン又は出力ピンとして動的に構成することを可能にする類のものであれば特に有利である。
本特許出願において提示している本発明の例示的な実施形態は、添付の特許請求の範囲の適用の可能性を制限していると解釈されるべきではない。「備える」という動詞は、本特許出願では、記載されていない機能の存在を排除しないオープンな限定として用いられる。従属の請求項に記載されている機能は、別段の明確な記載のない限り、相互に自由に組合せが可能である。
本発明の特徴として考えられる新規の機能は、具体的には添付の特許請求の範囲に記載されている。しかしながら、その構成及びその動作方法の両方に関する本発明自体並びにその追加の目的及び優位点は、特有の実施形態に関する以下の説明を添付の図面に関連して読むことによって最も良く理解されるであろう。
モジュール式かつオブジェクト指向の装置アーキテクチャを示す。 本発明の一実施形態に係るアーキテクチャの原理を示す。 状態図の形式で本発明の一実施形態に係る方法を示す。 本発明の一実施形態に係るアービトレーション回路を示す。 本発明の一実施形態に係る装置の動作に関連するタイミング図を示す。 本発明の一実施形態に係る装置における接続を示す。 本発明の一実施形態に係る制御可能な遅延素子の可能な使用法を示す。 図3の状態図の可能な変更を示す。 切換装置の代替の実装方法を示す。
図1については、従来技術の説明において上述した。
図2は、アーキテクチャのアクセスコントローラ201、アービトレーション回路202及びバスライン203への分割を示す。アクセスコントローラ201の機能の一部は、その少なくとも一部がバスライン203により構成されたバスへのアクセスを獲得するという目的において、アービトレーション回路202にコマンドを送信しアービトレーション回路202から応答を受信することである。アクセスコントローラの機能を実行する回路要素は、他の機能を有する可能性もある。典型的には、モジュール組込みシステムにおいて、アクセスコントローラの機能はMCU(Micro Contrller Unit)により実行される。本発明は、アービトレータ回路として動作する文字通り別々の任意のエンティティが存在することを必要としない。なぜならば、特に、MCU又はアクセスコントローラとして動作する他の何らかのプログラム可能な装置が存在するときは、アービトレーション機能はまさしくそのプログラム可能な装置の機能の一部であり得ることがその理由である。しかしながら、本発明及びその効果的な実施形態の例示的な説明を行うためには、アービトレータ回路は別々のエンティティであると仮定することが役に立つ。
図2に示す原理によれば、アクセスコントローラ201は、起動コマンド又は停止コマンドを選択的にアービトレーション回路202に与えるように構成される。応答として、アービトレーション回路202は、試行されたバスの予約の失敗又は成功の表示信号を与えるように構成される。
アービトレーション回路202とバスライン203との間では、複数の相互作用が生じてもよい。アービトレーション回路202は、バスライン203を予約試行にかけるように構成される。さらに、アービトレーション回路202は、必要であれば進行中の予約試行を中止するようにも構成される。逆方向では、アービトレーション回路202は、バスライン203からバスがビジーであること、及びバスがフリーであることの表示信号を受信するように構成される。さらにアービトレーション回路202は、試行された予約の成功又は失敗についての表示信号をバスライン203から受信するようにも構成される。図2に示されている単なる矢印の数は、実際に必要とされる物理的な接続の数と混同されるべきではない。例えば、アクセスコントローラ201とアービトレータ回路202との間の4つの相互作用が単一の共通の信号線になり得る方法を後に示す。
図3は、本発明の一実施形態に係る、バスアービトレーションを行うための方法を示す状態図である。用語の最も厳密な意味合いにおいては、図3の方法は単なるアービトレーション以上のものをも包含する点に留意しなければならない。即ち、バスがフリーであるタイミングにバスの予約が試行され、かつ他のノードからの同時の予約試行が存在しなければ、実際のアービトレーションの必要はない。しかしながら、一方で単にバスを予約しかつ他方で競合するノードと調停するという概念は本発明の一実施形態に係る実施例において密に織り合わされるので、簡潔さを理由に、予約のコンフリクトを本質的に除外する方法でバスにアクセスすることを意味するときは、単にアービトレーションについて述べることが有利である。図3の状態図において、状態は楕円で表され、アクションは長方形で表され、トリガ状態はプレーンテキストで表されている。
バスを予約する必要性がないときは、本システムは概念上的にはパッシブ状態301にあり、アービトレータ回路はアクション302におけるように停止される。バスを予約する必要性が生じたとき、アービトレータ回路はアクション303に従って起動される。現在のところバスがフリーであれば、アービトレータ回路は、アクション304に従って即座に予約を試行する。しかしながら、一旦起動されたアービトレータ回路が、バスが既にビジーであることに気づけば、アービトレータ回路はバスの予約の試行など行わず、待機状態305への遷移が発生する。システムは、バスがビジーであり続ける限り待機状態305に留まる。アービトレータ回路は、バスがフリーになったことに気づいたときに即座にバスの予約を試行する。
アクション304において試行されたバス予約から生じる結果には、2つの可能性がある。肯定的な(ポジティブな)ケースでは、予約試行が成功して通信状態306への遷移が発生し、この状態において、バスはそのバスを予約したノードにより利用可能となる。もう一つのケースは、より高い優先順位を有するノードからの同時の予約試行が存在するというものである。この場合は、再度待機状態305への遷移が生じる。
システムは、それ以上バスを予約されたままにしておく必要がなければ、通信状態306からパッシブ状態301へ戻る。
図4は、本発明の一実施形態に係るアービトレータ回路を示す。アービトレーションにおいて果たすべき役割を有する2つのバスライン、即ちRESライン401及びPRIラインが存在する。図4のアービトレータ回路が連続するRESラインへの所定の接続しか有さないように、RESライン401はノードからノードへ直接的に続く。PRIラインは左半分402と右半分403とに分割され、これらの間には、右半分403を左半分402又は固定「低」電位の何れかに接続するように構成されたアナログの2:1マルチプレクサ404が存在する。固定「低」電位はここでは接地電位であるが、他の何らかの所定の電位である可能性もある。
図4のアービトレータ回路には、他に2つのアナログの2:1マルチプレクサが存在する。マルチプレクサ405は、RESライン401又は固定「高」電位の何れかから、この実施形態では単一のアンドゲート406から成る論理ゲート装置の1つの入力部への接続を行うように構成される。アンドゲート406の別の入力部へは、PRIラインの左半分402からの接続が存在する。マルチプレクサ407は、空の入力部又はRESライン401の何れかから固定「低」電位への接続を行うように構成される。各マルチプレクサ404、405及び407の制御入力部は、図4において点Aとして示される共通点に接続される。BUS_REQUEST信号線は、アクセスコントローラ(図4には示されていない。)の仮定されるBUS_REQUESTピンを点Aに接続する。アンドゲート406の出力部は、抵抗器R2を介してBUS_REQUEST信号線に接続される。マルチプレクサ404、405及び407の切換機能は、単純なオン/オフスイッチのアレイを使用するといったような他の方法でも実施され得るので、一般化のために、図4におけるマルチプレクサによって実施される機能を切換装置として示してもよい。
バスは、RESライン及びPRIラインの少なくとも一方が固定「低」電位にあるときに予約される。以後、固定「低」電位を略して低電圧と呼ぶ。アービトレータ回路は、RESライン及びPRIラインの両方が固定「高」電位にあるときにのみバス予約の試行を許可される。以後、固定「高」電位を略して高電圧と呼ぶ。
バスを予約する必要性がない場合、アクセスコントローラは、アクセスコントローラのBUS_REQUESTピン及び必然的に点Aを、強制される低電圧に保つ。これは、PRIラインが左半分402から直接的に右半分403へ続き、かつマルチプレクサ404及び407の両方が個々のY0ピンを個々のZ0ピンに接続するので、アービトレータ回路が実質的にRESラインの電位に影響を及ぼさないことを意味する。さらに、マルチプレクサ405もそのY0ピンをそのZ0ピンに接続するので、アンドゲート406はRESライン及びPRIラインの電位を監視するように構成される。RESライン及びPRIラインの両方が高電圧であっても(バスがフリーであることを示す。)、アクセスコントローラはBUS_REQUESTラインを強制的に低くし、よって抵抗器R2上に電位差が生じるので、アンドゲート406の出力部において結果的に生じる高電圧はマルチプレクサ404、405及び407の制御入力部に影響を与えないことに留意されたい。
アクセスコントローラは、アービトレータ回路を起動させる必要があるとき、アクセスコントローラのBUS_REQUESTピンを強制される低電圧から高インピーダンスに切り換える。このときに点Aの電位に何が発生するかは、RESライン及びPRIラインの電圧に依存する。これらのうちの少なくとも一方が低電圧にあって予約されたバスを示しているときは、アンドゲート406の出力部は低いままであり、マルチプレクサ404、405及び407は図4に示される位置に留まる。これは、図3におけるアクション303から状態305への遷移に対応し、システムは、バスの予約を試行することもなく待機状態に入る。待機状態の間、BUS_REQUESTピンは高インピーダンスにあるが、点Aはアンドゲート406により低電圧に保たれるので、アクセスコントローラは点Aの電位に影響を与えない。
他の簡単な代替例は、アクセスコントローラがアービトレータ回路を起動したときにRESライン及びPRIラインの両方が高電圧にあるケースである。アンドゲート406の出力部は高く、BUS_REQUESTラインはもはや点Aを強制的に低くしないので、点Aの電位は高電圧に上昇される。システムが待機状態にあり、かつRESライン及びPRIラインの両方が高電圧を仮定してバスがフリーになりつつあることを示しており、このことが待機状態を終了させるとき、同じことが発生する。マルチプレクサ404、405及び407は、個々の制御入力部における高電圧を検出し、これによりマルチプレクサ404、405及び407の状態は変更され、個々のY1ピンは個々のZ0ピンに接続される。これにより、下記の3つの効果が生じさせる。
1)PRIラインの左半分402が右半分403から切断され、右半分403がマルチプレクサ404において低電圧に接続される。
2)RESライン401がマルチプレクサ407において低電圧に接続される。
3)アンドゲート406の上側の出力部がRESライン401から切断され、代わりにマルチプレクサ405において高電圧に接続される。
結果的に生じる状況において、PRIラインが高電圧にあれば、アンドゲート406の出力部は高い。先に仮定したのは全くこのような場合であるので、点Aはまた高電圧にあり高電圧に留まってバスの予約は成功している。点Aの電位が高電圧で安定した後は、他の全てのノードはRESラインが低電圧にあることを検出し、これが他のノードによる予約の試行を阻むので、他のノードはバスを占有することができない。これで、システムは図3の通信状態306になる。バスの予約がもはや必要とされないとき、アクセスコントローラは再びBUS_REQUESTラインを強制的に低電圧にさせ、この低電圧は、抵抗器R2に起因してアンドゲート406により与えられる高電圧に優先し(オーバーライドし)、システムはパッシブ状態へ戻る。
次に、バスが最初からフリーであり(又は前の予約の後にフリーになり。)、偶然にも2つのノードが同時にバスの予約を試行するときに何が発生するかを分析していく。言い替えれば、両方のノードにおいて、BUS_REQUESTラインは全く同一の瞬間に高インピーダンスになる。競合する両方のアービトレーション回路では、各アンドゲートの出力部が点Aの電位を高電圧まで上昇させるので、マルチプレクサはY0からY1へ切り換わる。これは、(2つの別々の位置においても。)RESラインを低電圧に接続し、両方のアービトレーション回路のアンドゲートを、アンドゲートがPRIラインを検出する点においてPRIラインの電位に従わせる。競合する他方のノードが図4にそのアービトレーション回路が見られるノードより左に存在すれば、図4に見られるアンドゲート406は低電圧に接続されたPRIラインの左半分402を検出する。これにより、アンドゲート406の出力部も低電圧を仮定することになる。その結果、マルチプレクサ404、405及び407はそれぞれY0切換状態へ戻り、予約試行は失敗する。図3において、これは、アクション304から状態「より高い優先順位の同時の予約」を介する状態305への遷移に対応する。
競合する他方のノードが図4にそのアービトレーション回路が見られるものより右に存在すれば、アンドゲート406は今度は、高電圧に留まるPRIラインの左半分402を検出する。その結果、アンドゲート406の出力部及び点Aもまた高電圧に留まり、予約試行は成功する。競合する他方のノードは、マルチプレクサ404において低電圧に接続されたPRIラインを検出するので、その予約試行をアボート(中止)する。競合する2つのノード間のアービトレーションに関するこの説明は、予約を同時に試行する任意の数のノードに容易に一般化され、即ち、バスの予約に成功するノードはPRIラインに関して最も左のノードである。これは、地理的な優先順位づけを意味する。本来、方向を表す「左」及び「右」という用語は、単に、図4における絵画的な表現を指す例示的なものとして用いられる。我々は、プルアップ抵抗器はPRIラインの「最も左の」端部にしか存在しないことを仮定し、よって、地理的な優先順位づけに関するより適切な記述は、勝利するノード(winning node)を、競合する複数のノードのうちでPRIラインに沿ってプルアップ抵抗器に最も近いノードとして特徴づける。
図2と図4とを比較すると、図2におけるアクセスコントローラ201とアービトレータ回路202との間の4つの相互作用は全て図4における単一の信号線を介して発生する。アービトレータ回路の起動は、アクセスコントローラがBUS_REQUESTラインに接続されたピンを高インピーダンスに接続するときに発生し、アービトレータ回路の停止は、アクセスコントローラが上記ピンを強制的に低電圧にするときに発生する。上記ピンが高インピーダンスにある間、アービトレータ回路は失敗した予約試行をBUS_REQUESTライン上の低電圧によって知らせてもよく、成功した予約試行をBUS_REQUESTライン上の高電圧によって知らせてもよい。図2におけるアービトレータ回路202とバスライン203との間の6つの相互作用は、図4におけるアービトレータ回路とRES及びPRIラインとの間の接続を介して生じる。予約の試行は、アービトレータ回路がRESラインを低電圧に接続するのみならずPRIラインを切断してその右半分を低電圧に接続することを意味する。予約試行の中止は、これらの接続が取り消されることを意味する。アービトレータ回路は、RESライン及びPRIラインの少なくとも一方における低電圧を検出することによって「バスビジー」信号を受信し、これらの両方における高電圧を検出することによって「バスフリー」信号を受信する。予約が試行される間、アービトレータ回路は失敗の表示信号をPRIラインの左半分における低電圧として受信し、かつ成功の表示信号を同じくPRIラインの左半分における高電圧として受信する。
図5は、アービトレーションの状況に含まれる所定の遅延時間を示す概略的なタイミング図である。ここでは、2つのノードの両方の右側の第3のノードがバスを解放した後に、これらの2つのノードがバスの予約を同時に試行して競合することを仮定している。本タイミング図の始点では、RESラインは低電圧にあって、上記第3のノードの予約を示している。競合するノードの両方の右側で前の予約が行われたので、当該競合するノードの両方は、高電圧にあるPRIラインを検出する。図5におけるPRIの曲線は、PRIラインにおける競合するノード間に存在する部位の電位を示す。
第3のノードがバスを解放するとき、RESラインの電位は高電圧へ向けて上昇し始める。何らかの時点で、RESラインの電位は、アンドゲートが論理値「1」であるとみなす電圧に到達し、これにより、アンドゲートの出力部は低電圧から高電圧に変化させられる。実際の回路素子は、信号の伝搬に遅延を生じさせる。図5は、アンドゲートのRESが接続された入力部が論理値「1」に達した瞬間からアンドゲートの出力部が論理値「1」に達する瞬間までの遅延時間をD1として示している。アンドゲートは競合する両方のノードに存在するので、図5は、第1のノードにおけるアンドゲートの出力部をAND1として、第2のノードの出力部をAND2として別々に示している。これらのノードは共に同一のアービトレーション回路を有し、これにより、遅延時間D1は両方のノードにおいて同一であることが仮定されている。
アンドゲートの出力部に接続された抵抗器、並びにマルチプレクサの制御に関わるキャパシタンス及びインダクタンスは追加の遅延時間を生じさせ、よって、第1のノードにおけるマルチプレクサの切換位置を決定する電位をA1として(かつ対応的に、第2のノードにおけるマルチプレクサの切換位置を決定する電位をA2として。)示せば、アンドゲートの出力部が論理値「1」へ達する瞬間とマルチプレクサがその切換状態を変更し始める瞬間との間に遅延時間D2が存在することに気づく。キャパシタンス及びインダクタンスは、電位A1を一般にアンドゲートの出力部より遅く変化させることが仮定されており、よって、AND1及びAND2に比べてA1及びA2の曲線の勾配は小さい。
マルチプレクサは、追加の遅延時間を導入する。第1のノードにおけるPRIラインを切断すべきマルチプレクサが信号A1の論理値「1」を受信する瞬間と、そのノードにおいてPRIラインの右半分が論理値「0」に達する瞬間との間には、遅延時間D3が存在する。第1のノードはこれらの2つのノードのうちの最も左のノードであることが仮定されるが、これは、第1のノードにおいてPRIラインを切断しかつその右半分を接地に接続すると、第2のノードは低電圧に変化するPRIラインを検出することを意味する。この信号は、第2のノードにおけるアンドゲートの出力部に遅延時間D4で伝搬し、第2のノードにおけるマルチプレクサを駆動するA2信号は、追加の遅延時間D5の後に論理値「0」に達する。アービトレーションの結果、RESライン及びPRIラインは共に低電圧にあり、これは予約されたバスを示す。AND2及びA2の電位もまた共に低電圧にあり、これは、第2のノードがアービトレーションで敗北し、予約試行をアボートしていることを意味する。AND1及びA1の電位は共に高電圧にあり、これは、第1のノードがアービトレーションに勝利し、バスの予約に成功していることを意味する。
アービトレータ回路を、2つの一般的な低コストの論理ポートを用いて実装することができる。回路74xx4053は3つの2:1アナログマルチプレクサを含み、回路74xx1G08は2入力のアンドゲートを含む。論理ファミリの選択は、アービトレーションプロセスに含まれる遅延時間に影響を与える。74HC4053マルチプレクサ回路及び74HC1G11の3入力アンドゲート(図6及び本明細書本文における後の関連の記述を参照されたい。)及びアンドゲートの出力部における10kの抵抗器を使用する試験装置では、D1+D2+D3=1.79マイクロ秒の合計の遅延時間が観測されている。アクセスコントローラが、同一のパッケージに複数のプログラム可能な論理回路を含むMCUであれば、アービトレーション回路を上記プログラム可能な論理回路を用いて実装できる。
図6は、ラインの使用及び再利用の複数の態様を示す。ここでは、幅がライン数N+2であるバスが存在することを仮定している。但し、Nは非負の整数である。ノードは、アクセスコントローラとして動作するMCU601と、アービトレータ回路602とを備える。MCUのピン603は、必要に応じてMCUが入力部として、又は出力部として使用できるものである。入力モードにおいて、ピン603のインピーダンスは高く、かつピン603が接続された論理回路に実質的に影響を与えないが、ピン603は電圧レベルを読み取ることができる。この特性は、アービトレーションの成功を監視するときに用いられ、即ち、そのノードがバスの予約に成功すれば、MCU601はピン603において持続する高電圧を検出する。予約試行が失敗であれば、MCU601は、高電圧への短い変化の後にピン603において低電圧を検出する。したがって、MCUがバスの予約に成功しているか否かを決定するためにピン603において観測された電圧読取り値を使用する必要がある場合、MCUは、連続する2つの読取り値を、図4における点Aの電圧が失敗するバス予約試行の間に一時的に高くなる継続時間より長い時間間隔で取得した後にのみその決定を下さなければならない。両方の読取り値が高電圧を示していれば、バスの予約は成功している。2つの読取り値の間に必要とされる最短の時間長は、図5における遅延時間の合計、D3+D4+D5に等しく、上述した試験装置では、これは、ちょうどバスの解放から次の予約までの遅延時間と同様の1.79マイクロ秒であることが見出された。
出力モードでは、ピン603は、論理電圧を強制的に必要とされる状態にするのに十分な電流を供給し又は排出する。この特性は、バスを予約する必要性がないときにアービトレータ回路602を停止させるために使用される。特に、この解決方法において、ピン603は、アンドゲートの出力電圧が高いときには、アンドゲートの出力部における抵抗器に流れる電流と少なくとも同量の電流を排出しなければならない。アンドゲートの出力部における抵抗器の役割は2つある。1つは、この抵抗器が、BUS_REQUESTラインを低電圧に保つために、ピン603が排出しなければならない電流を減少させる。もう1つは、制御信号の有効値の決定において必要であれば、アンドゲートの出力部が常にピン603によって優先される得ることを確実にするように、この抵抗器は、マルチプレクサに与えられる制御信号に対するアンドゲートの出力部の影響を弱める。MCU601とアービトレータ回路602との間の相互作用もまた、MCU601がアービトレータ回路602に対して、アンドゲートの出力部をマルチプレクサの制御入力部から(かつピン603から。)アービトレータ回路が必要とされない間にまとめて切断するように命令するように設計される可能性がある。このような代替の解決方法では、マルチプレクサに供給されるべき制御信号に関して2つの明らかに分離されかつ相互に排他的な信号源が存在することになる。
バスはまた、RES及びPRIライン以外にバスの予約に影響する他のラインを含んでもよい。例えば、バスの主マスタは、その処理装置(ディスポーザル)に、それによって他の全てのノードがバスを予約できないようにしかつ現在の予約を取り消す場合もあるリセットラインを有してもよい。このようなラインをアービトレータ回路に接続する容易な方法は、3つ以上の入力部を有するアンドゲートを使用し、かつバスの必要とされる全てのラインからアービトレータ回路におけるアンドゲートまでの接続を行うことである。図6は、このようにして接続されるライン604を示している。ライン604における低電圧はアンドゲートの出力部を低くし、よってアービトレータ回路602がバスを予約できないようにする。ライン604における高電圧は、上述したように、アービトレータ回路602にバスの予約試行を実行させる。
本発明に係るアービトレータ回路の重要な優位点は、一方向の優先順位ラインを必要とする従来技術に係るディジーチェーン型のアービトレーション解決方法とは対照的に、RES及びPRIラインを他の目的で再利用することを可能にすることにある。これがどの程度可能であるかは、部分的に、使用されるバスプロトコルに依存する。RES及びPRIラインは、アービトレーションの間を除く常時、全ノードへのアナログの及び双方向の接続を構成する。したがって、これらを、アービトレーション手順が進行中でないときに通常のデータラインとして使用することができる。これは、図6において、RES及びPRIラインからMCU601への各直接的な接続ライン605及び606で示される。
ノード間の厳密な地理的な優先順位は、優先順位の動的な変更を許可しないので欠点であるとされる可能性もある。同一のRES及びPRIラインに接続された全てのノードは同一の方法で反応するので、PRIラインを接続又は切断するスイッチは競合する全てのノードを同時に切断し、その後、最も左のノードが勝利する。しかしながら、これらのノードがフリーになりつつあるバスに異なる遅延時間で反応すれば、これは優先順位に影響を及ぼす。
図7は、第1のノード及び第2のノードがバスに接続される配置を概略的に示す。単純化のために、バスのRES及びPRIラインのみが示されている。記録のために、図7はまた、上記ラインの各々の最も左の端部に、バスがフリーであるときにRES及びPRIラインを高電圧に保つプルアップ抵抗器701及び702も示している。各ノードは、アクセスコントローラ711、721と、アービトレータ回路712、722とを有する。アービトレータ回路は、制御可能な遅延素子が追加されていることを除いて、図4及び図6に示すトポロジーに従うことが仮定されている。遅延素子の目的は、アービトレータ回路が少なくとも1つのバスラインの電位の変化に反応する経路に遅延を導入することにある。
一例として、遅延素子713は、RESラインと、RESライン又は固定の高電圧の何れかをアンドゲート(独立して図示せず。)の入力部に接続するように構成されたマルチプレクサ(独立して図示せず。)との間に接続されることを仮定してもよい。図4の表記を使用すれば、遅延素子は、RESライン401とマルチプレクサ405のY0入力部との間に存在する。同様に、第2のノードには、RESラインと、RESライン又は固定の高電圧の何れかをアンドゲート(独立して図示せず。)の入力部に接続するように構成されたマルチプレクサ(独立して図示せず。)との間に接続された遅延素子723が存在する。
制御可能な遅延素子を導入する別の可能性は、アンドゲートの出力部における抵抗器(図4における抵抗器R2を参照。)をデジタルの電位差計(ポテンショメータ)又は制御可能な抵抗値を有する他の何らかの回路素子で置き換えることであろう。アンドゲートの出力部における高電圧をマルチプレクサにおける実際のスイッチング機能に変換するためにかかる時間は少なくとも部分的に両者間の抵抗値の機能であるので、抵抗値を変えると遅延時間も変わる。当業者であれば、アービトレータ回路に制御可能な遅延素子を実装するさらなる代替の方法を容易に考え出すことができる。
遅延素子713及び723が等しい遅延を実行することを仮定すれば、遅延素子713及び723に起因して生じる遅延時間がアンドゲートが反応に要する固有の遅延時間D1に加算されるので、高くなっていくRESラインの電圧から、高まっていくアンドゲート出力電圧までの遅延時間が長くなる点を除けば、状況は図5のそれから変わらない。しかしながら、第1のノードにおける遅延素子713により実行される遅延が第2のノードにおける遅延素子723により実行される遅延よりも図5における合計D1+D2+D3以上の量だけ長ければ、第2のノードは、第1のノードにおけるアンドゲートが反応を開始する前にRES及びPRIラインの電圧を引き下げるまでに至る。この時点で、第1のノードにおけるアンドゲートは既にPRIラインから低電圧の入力信号を受信しているので、AND1信号はもはやそれ以上高くなることができない。
遅延素子713及び723が異なる固定値を有しかつ制御可能でなかったとすれば、遅延に支配されるこの種の優先順位は、モジュール装置のノードを、固定されてはいるが必ずしも地理的でないバス上の優先順位方法に従って動作させるためにのみ使用される可能性がある。しかしながら、アクセスコントローラ711及び721の各々が遅延素子713及び723がもたらす遅延量を制御するように構成されることを仮定すると、遙かに高い柔軟性が達成される。ノードの優先順位を、例えばバスに接続されたノードの変化する相対的な重要性に対応すべく動的に変更することができる。1つの可能性は、優先順位をバスがフリーになるのを待機してノードが待機状態にあった時間長に依存させることである。図8は、図3の状態図の一部へのわずかな変更を概略的に示したものであり、システムが待機状態305において時間を費やさなければならない場合、システムはアクション801を介する循環を繰返してRES電圧の検出に適用されるべき遅延時間を徐々に少なくする。この方法では、バスがフリーになるのを長い間待機しているノードは、地理的には低い優先順位を有するものであるとしても、その次の予約試行に成功するより高い確率を有する場合がある。固定の遅延素子及び制御可能な遅延素子は共に、電子的な構成要素の技術分野で広く知られている。
実際のアービトレータ回路を、図4に示すように、遅延素子を追加することなく可能な限り単純に保つことが望ましい実装においては、組込み式のプログラム可能な論理回路又は他のMCU部分を使用して必要とされる遅延を実行することが可能である。このような場合、図4の表記を使用すると、マルチプレクサ405のY0入力部はRESラインから直接的に到来せず、適切な(好ましくは、制御可能な。)遅延が実行されるはずのMCUを介して遠回りをする。
上述した本発明の例示的な実施形態は、代替の実装を排除するものとして解釈されるべきではない。例えば、バスがフリーであるときに高電圧にあるアービトレーションに関連のバスラインについて継続的に言及してきたが、この同一の原理を、バスがフリーであるときに少なくともそのうちの複数は低電圧にあるアービトレーションに関連するバスラインに適用することは完全に可能である。これは、他の信号の定義も単に逆にすること、及びアンドゲートではなくオアゲートを使用すること、かつ/又は適切なポイントにおいてアービトレータ回路内部の必要な信号を反転させるインバータを使用することを必要とする。例示的な実施形態における2:1マルチプレクサによって実装されるスイッチング機能は、より分散された切換装置によっても実装されることが可能である。例えば、PRIラインを切断するマルチプレクサを、1つが実際にPRIラインを切断しかつもう1つが残ったPRIの両半分のうちの一方を固定電位に接続する2つの別々のスイッチで置き換えることも可能である。RESラインからアンドゲートへの接続をアンドゲートへの固定電位の入力で置き換えるために使用されるマルチプレクサと、RESラインを固定電位に接続するために使用されるマルチプレクサとの2つのマルチプレクサを、同一の機能を実行する単一の4ポートの切換装置に接続することもできる。1つの論理(AND)ゲートとして示してきた機能性を形成する比較及び出力信号も、様々な、より分散された方法で実装されることが可能である。
図9は、切換装置の代替の実装方法を示す。この場合、切換装置は、2つのアナログの2:1マルチプレクサ404及び901のみを備える。アンドゲート406の上側の入力部からは、プルアップ抵抗器R3を介する高電圧への固定の接続が存在する。マルチプレクサ901のY0ピンは、プルアップ抵抗器R3とアンドゲート406の上記上側の入力部との間の点に接続され、Y1ピンは接地に接続される。マルチプレクサ901のZ0ピンは、RESライン401に接続される。BUS_REQUESTラインが強制される低電圧にあるときは、RESライン401からマルチプレクサ901を介してアンドゲート406の上側の入力部に接続が存在し、よってRESライン401の電位は抵抗器R3を介する高電圧への接続の効果に優先する(抵抗器R3の抵抗値はこのような優先を可能にするのに十分な大きさでなければならない。)。アービトレータ回路が起動されたとき、アンドゲート406の出力部から取得される点Aにおける高電圧は、RESライン401から接地への接続及び高電圧から抵抗器R3を介してアンドゲート406の上側の入力部への接続が存在するように、代わりにマルチプレクサ901にZ0をY1に接続させる。したがって、マルチプレクサ901及びプルアップ抵抗器R3は、図4における2つのマルチプレクサ405及び407による配置に取って替わる。
図9が示す原理に従えば、アービトレータ回路の多くの位置において、第1又は第2の回路ポイントの何れかへの交互の切換を、「減衰」抵抗器を介する固定の接続が存在する装置で、かつ必要であれば別の信号源から到来する他の何らかの低減衰効果により優先される装置又はこの逆の装置で置き換えることが可能である。例えば、マルチプレクサ404を、PRIラインの2つの半分を接続する抵抗器と、右の半分を直接的に(又は、遙かに小さい抵抗値を介して。)接地へ制御可能に接続するスイッチとで置き換えることも可能である。この意味合いにおいて、「切断」又は「非接続」のような表現は、接続が完全に断たれる、又は、より直接的かつより影響力のある接続で優先される、の何れかであることを意味するものとして理解されるべきである。同様に、「接続」又は「カップリング」は必ずしも全く新しい接続が生成されることを意味するものではなく、所定の接続の影響は増大されて、例えばその抵抗値を著しく低減させる可能性があり、又はより影響力のある何らかの接続の効果が取り除かれ、よって結果的に、より弱い信号源が決定的に重要になり、よって問題の信号ポイントへ「接続」される。

Claims (17)

  1. 第1の入力部と第2の入力部と出力部とを有する論理ゲート装置(406)を備え、かつ第1のバスラインから上記第1の入力部への接続を有するように構成され、バスにアクセスするときにアービトレーションを行うための回路において、
    上記回路は、
    上記第1のバスラインのうち上記論理ゲート装置(406)の上記第1の入力部に接続された第1の半分(402)を上記第1のバスラインの第2の半分(403)から切断し、上記第2の半分(403)を第1の固定電位に接続することと、
    第2のバスライン(401)を上記論理ゲート装置(406)の上記第2の入力部から非接続し、上記第2の入力部の電位が実質的に第2の固定電位に等しくなることを可能にすることと、
    上記第2のバスラインを上記第1の固定電位に接続することとによって、制御信号に応答するように構成された切換装置(404、405、407、901)を備え、
    2つの信号源は、上記制御信号を上記切換装置(404、405、407、901)に供給するために利用可能であり、上記2つの信号源のうちの一方は上記論理ゲート装置(406)の出力部であることを特徴とする回路。
  2. 上記2つの信号源のうちの他方は、上記回路の外部装置から上記切換装置(404、405、407、901)までの信号線であることを特徴とする請求項1記載の回路。
  3. 上記論理ゲート装置(406)の出力部は、上記制御信号の電圧値に対する上記論理ゲート装置(406)の出力部の効果を上記回路の外部装置から上記信号線に接続された電圧の効果より弱くするために、抵抗器(R2)を介して上記信号線に接続されたことを特徴とする請求項2記載の回路。
  4. 上記切換装置(404、405、407)は上記制御信号に応答する3つのアナログの2:1マルチプレクサを備え、これらのマルチプレクサのうち、
    第1のマルチプレクサ(404)は、上記制御信号が第1の値を有するか又は第2の値を有するかのそれぞれに依存して、上記第1のバスラインの第2の半分(403)を上記第1のバスラインの第1の半分(402)又は上記第1の固定電位に選択的に接続するように構成され、
    第2のマルチプレクサ(405)は、上記制御信号が上記第1の値を有するか又は上記第2の値を有するかのそれぞれに依存して、上記論理ゲート装置(406)の第2の入力部を上記第2のバスライン(401)又は上記第2の固定電位に選択的に接続するように構成され、
    第3のマルチプレクサ(407)は、上記制御信号が上記第1の値を有するか又は上記第2の値を有するかのそれぞれに依存して、上記第2のバスライン(401)を何処にも接続しないか又は上記第1の固定電位に選択的に接続することを特徴とする請求項1記載の回路。
  5. 上記論理ゲート装置(406)は、上記第1のバスラインの上記第1の半分(402)及び上記第2のマルチプレクサ(405)の出力部の両方がデジタルのハイレベルを表す電圧にあるときに、その出力部においてデジタルのハイレベルを表す電圧を与えるように構成されたアンドゲートから成ることを特徴とする請求項4記載の回路。
  6. 上記切換装置(404、901)は上記制御信号に応答する2つのアナログの2:1マルチプレクサを備え、これらのマルチプレクサのうち、
    第1のマルチプレクサ(404)は、上記制御信号が第1の値を有するか又は第2の値を有するかのそれぞれに依存して、上記第1のバスラインの第2の半分(403)を上記第1のバスラインの第1の半分(402)又は上記第1の固定電位に選択的に接続するように構成され、
    第2のマルチプレクサ(901)は、上記制御信号が上記第1の値を有するか又は上記第2の値を有するかのそれぞれに依存して、上記第2のバスライン(401)を上記論理ゲート装置(406)の第2の入力部又は上記第1の固定電位に選択的に接続するように構成され、
    上記論理ゲート装置(406)の第2の入力部はプルアップ抵抗器(R3)を介して上記第2の固定電位に接続されたことを特徴とする請求項1記載の回路。
  7. 上記第1のバスラインの第1の半分(402)及び上記第2のバスライン(403)のうちの少なくとも一方の電位の変化が上記論理ゲート装置(406)の出力部から上記切換装置(404、405、407)に供給される信号を変化させるためにかかる時間を延ばすように構成された遅延素子(713、723)を備えたことを特徴とする請求項1記載の回路。
  8. 上記遅延素子(713、723)は、遅延制御信号に応答して当該遅延素子(713、723)がもたらす遅延量を変えるように構成された制御可能な遅延素子であることを特徴とする請求項7記載の回路。
  9. アクセスコントローラ(201、601、711、721)と、アービトレータ回路(202、602、712、722)とを備え、バスにアクセスするときにアービトレーションを行うための装置において、
    上記アービトレータ回路(202、602、712、722)は請求項1記載の回路であることを特徴とする装置。
  10. 上記アクセスコントローラ及び上記アービトレータ回路はマイクロコントローラのパーツであり、上記アービトレータ回路は上記マイクロコントローラに含まれるプログラム可能な論理回路で実装されることを特徴とする請求項9記載の装置。
  11. 上記制御信号を上記切換装置に供給するために利用可能な上記2つの信号源のうちの他方は、上記アービトレータ回路と上記アクセスコントローラとの間の接続部であることを特徴とする請求項9記載の装置。
  12. 上記アクセスコントローラは、出力ピン又は入力ピンとして使用するために動的に構成可能であるピン(603)を有し、
    上記アービトレータ回路と上記アクセスコントローラとの間の接続部は上記ピン(603)を通過し、
    上記アクセスコントローラは、高インピーダンスを有する入力ピンとして使用するために上記ピン(603)を動的に構成することによって、上記アービトレータ回路を選択的に起動するように構成され、
    上記アクセスコントローラは、出力ピンとして使用するために上記ピン(603)を動的に構成し、かつ上記ピン(603)を強制的にデジタルのローレベルを表す電圧にすることによって、上記アービトレータ回路を選択的に停止するように構成されたことを特徴とする請求項11記載の装置。
  13. 上記装置は、上記第1のバスラインの第1の半分(402)及び上記第2のバスライン(403)のうちの少なくとも一方の電位の変化が上記論理ゲート装置(406)の出力部から上記切換装置(404、405、407)に供給される信号を変化させるためにかかる時間を延ばすように構成された制御可能な遅延素子(713、723)を備え、
    上記アクセスコントローラは、上記遅延素子(713、723)に遅延制御信号を供給することによって上記遅延素子(713、723)がもたらす遅延量を変えるように構成されたことを特徴とする請求項9記載の装置。
  14. バスにアクセスするときにアービトレーションを行うための方法において、
    上記バスを予約する必要性を示す起動信号ならびに第1のバスライン及び第2のバスラインの両方が第2の固定電位にあるという観測に対する応答として、
    上記第1のバスラインの第1の半分(402)を上記第1のバスラインの第2の半分(403)から切断することと、
    上記第2の半分(403)を第1の固定電位に接続することと、
    上記第2のバスライン(401)を上記第1の固定電位に接続することと、
    上記第1のバスラインの第1の半分(402)において観測される電位に依存して、
    上記第1の半分(402)の電位が実質的に上記第2の固定電位に等しければ、バス予約の成功を示し、又は、
    上記第1の半分(402)の電位が実質的に上記第1の固定電位に等しければ、バス予約の失敗を示し、上記第1のバスラインの第1の半分(402)を上記第1のバスラインの第2の半分(403)に再接続し、上記第2の半分(403)を上記第1の固定電位から切断し、上記第2のバスライン(401)を上記第1の固定電位から切断することを含むことを特徴とする方法。
  15. 上記バスを予約する必要性を示す起動信号ならびに上記第1のバスライン及び上記第2のバスラインのうちの少なくとも一方が上記第1の固定電位にあるという観測に対する応答として、上記第1のバスライン及び上記第2のバスラインの両方が上記第2の固定電位になるまで待機することと、その後請求項13記載の各ステップを実行することを含むことを特徴とする請求項14記載の方法。
  16. 上記待機するステップの後に、上記第2の固定電位を共に有する上記第1のバスライン及び上記第2のバスラインに対する応答として、上記請求項14記載の各ステップを実行する前に追加の遅延時間の期間の間待機することを含むことを特徴とする請求項15記載の方法。
  17. 上記第1のバスライン及び上記第2のバスラインの両方が上記第2の固定電位を有するまで待機するために費やされる時間の長さの関数としての上記追加の遅延時間のデフォルト値を減少させることを含むことを特徴とする請求項16記載の方法。
JP2009526141A 2006-08-25 2007-08-24 バス上で単純かつ高い信頼度の分散アービトレーションを行うための回路、方法及び装置 Expired - Fee Related JP4824111B2 (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
FI20060767 2006-08-25
FI20060767A FI122301B (fi) 2006-08-25 2006-08-25 Piiri, menetelmä ja järjestely yksinkertaisen ja luotettavan hajautetun väyläarbitroinnin toteuttamiseksi
PCT/FI2007/000210 WO2008023091A1 (en) 2006-08-25 2007-08-24 Circuit, method and arrangement for implementing simple and reliable distributed arbitration on a bus

Publications (2)

Publication Number Publication Date
JP2010501954A true JP2010501954A (ja) 2010-01-21
JP4824111B2 JP4824111B2 (ja) 2011-11-30

Family

ID=36950668

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2009526141A Expired - Fee Related JP4824111B2 (ja) 2006-08-25 2007-08-24 バス上で単純かつ高い信頼度の分散アービトレーションを行うための回路、方法及び装置

Country Status (5)

Country Link
US (1) US8190802B2 (ja)
EP (1) EP2054809B1 (ja)
JP (1) JP4824111B2 (ja)
FI (1) FI122301B (ja)
WO (1) WO2008023091A1 (ja)

Families Citing this family (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7865629B1 (en) * 2009-11-24 2011-01-04 Microsoft Corporation Configurable connector for system-level communication
US8719112B2 (en) 2009-11-24 2014-05-06 Microsoft Corporation Invocation of accessory-specific user experience
DE102011007437A1 (de) * 2010-11-15 2012-05-16 Continental Teves Ag & Co. Ohg Verfahren und Schaltungsanrodnung zur Datenübertragung zwischen Prozessorbausteinen
US8984194B2 (en) * 2011-01-21 2015-03-17 Numia Medical Technology Llc Multi-master bus arbitration and resource control
US8856415B2 (en) 2012-02-01 2014-10-07 National Instruments Corporation Bus arbitration for a real-time computer system
US8793697B2 (en) * 2012-02-23 2014-07-29 Qualcomm Incorporated Method and system for scheduling requests in a portable computing device
US9430421B2 (en) * 2014-03-12 2016-08-30 Arm Limited Interrupt signal arbitration
EP3729739B1 (en) * 2017-12-24 2023-08-23 Technion Research & Development Foundation Limited Message authentication based on a physical location on a bus
CN111400239A (zh) * 2020-04-15 2020-07-10 联合华芯电子有限公司 片内分布式互联总线系统及多核处理器

Family Cites Families (25)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE3170828D1 (en) * 1980-07-08 1985-07-11 Thomson Csf Mat Tel Method and apparatus for arbitrating between a plurality of sub-systems
US5111424A (en) * 1987-05-01 1992-05-05 Digital Equipment Corporation Lookahead bus arbitration system with override of conditional access grants by bus cycle extensions for multicycle data transfer
US5160922A (en) * 1990-06-29 1992-11-03 Digital Equipment Corporation System and method for dynamic avoidance of a simultaneous switching output limitation of a integrated circuit chip
EP0597013B1 (en) * 1991-07-26 1998-12-23 Tandem Computers Incorporated Apparatus and method for frame switching
JPH05242048A (ja) * 1992-03-02 1993-09-21 Meidensha Corp マルチ・プロセッサ・システムの直列調停方法およびその装置
JPH0660018A (ja) * 1992-08-11 1994-03-04 Fujitsu Ltd バスアービトレーション方法、アービタ回路及びアービタ
US5430848A (en) * 1992-08-14 1995-07-04 Loral Fairchild Corporation Distributed arbitration with programmable priorities
US5437042A (en) * 1992-10-02 1995-07-25 Compaq Computer Corporation Arrangement of DMA, interrupt and timer functions to implement symmetrical processing in a multiprocessor computer system
US5404538A (en) * 1992-10-28 1995-04-04 International Business Machines Corporation Method and apparatus for multilevel bus arbitration
JPH0793316B2 (ja) 1992-12-28 1995-10-09 日本電気株式会社 半導体装置の製造方法
US5579486A (en) * 1993-01-14 1996-11-26 Apple Computer, Inc. Communication node with a first bus configuration for arbitration and a second bus configuration for data transfer
US5455912A (en) * 1993-06-18 1995-10-03 Vtech Industries, Inc. High speed/low overhead bus arbitration apparatus and method for arbitrating a system bus
US5710891A (en) * 1995-03-31 1998-01-20 Sun Microsystems, Inc. Pipelined distributed bus arbitration system
US5933648A (en) * 1996-12-20 1999-08-03 Intel Corporation Configurable arbitration device for controlling the access of components to an arbiter or the like based on a control input
US5931924A (en) * 1997-04-14 1999-08-03 International Business Machines Corporation Method and system for controlling access to a shared resource that each requestor is concurrently assigned at least two pseudo-random priority weights
KR100252752B1 (ko) * 1997-06-26 2000-04-15 김영환 다단계 제어 버스 중재장치
US6327696B1 (en) * 1998-05-05 2001-12-04 Lsi Logic Corporation Method and apparatus for zero skew routing from a fixed H trunk
US6167478A (en) * 1998-10-05 2000-12-26 Infineon Technologies North America Corp. Pipelined arbitration system and method
US6587905B1 (en) * 2000-06-29 2003-07-01 International Business Machines Corporation Dynamic data bus allocation
US6993612B2 (en) * 2000-12-07 2006-01-31 Micron Technology, Inc. Arbitration method for a source strobed bus
US6948019B2 (en) * 2002-04-30 2005-09-20 Lsi Logic Corporation Apparatus for arbitrating non-queued split master devices on a data bus
JP4182801B2 (ja) * 2003-04-24 2008-11-19 日本電気株式会社 マルチプロセサシステム
US7493511B1 (en) * 2004-08-27 2009-02-17 Xilinx, Inc. Network media access controller embedded in a programmable logic device—transmit-side client interface
CN101427535A (zh) * 2006-04-24 2009-05-06 皇家飞利浦电子股份有限公司 具有消息的端到端流控制的电子设备
EP2227749B1 (en) * 2007-12-06 2014-08-27 Technion Research & Development Foundation Ltd. Bus enhanced network on chip

Also Published As

Publication number Publication date
FI122301B (fi) 2011-11-30
FI20060767A (fi) 2008-02-26
FI20060767A0 (fi) 2006-08-25
EP2054809A4 (en) 2012-07-18
JP4824111B2 (ja) 2011-11-30
US8190802B2 (en) 2012-05-29
EP2054809B1 (en) 2013-05-22
WO2008023091A1 (en) 2008-02-28
EP2054809A1 (en) 2009-05-06
US20090319709A1 (en) 2009-12-24

Similar Documents

Publication Publication Date Title
JP4824111B2 (ja) バス上で単純かつ高い信頼度の分散アービトレーションを行うための回路、方法及び装置
JP4831473B2 (ja) ネットワーク管理方法、プログラム及びシステム
US7113488B2 (en) Reconfigurable circular bus
US7840734B2 (en) Simple bus buffer
CN104331031B (zh) 功率供应系统和方法
CN105573948B (zh) 由主从式电路进行的芯片同步
JPH0512193A (ja) 自動信号構成システム
US9213660B2 (en) Receiver based communication permission token allocation
CN104834246A (zh) 汽车控制器和应用于汽车控制器的状态同步方法
CN103577379B (zh) 一种检测片上网络中死锁的方法
US5831805A (en) Local power failure detection and clock disabling circuit
US6922790B2 (en) Three wire communication protocol
CN207896980U (zh) 通信结构及通信系统
WO2019048816A1 (en) ISOLATION BRIDGE OF RESET
WO2012171582A1 (en) Resolving address conflicts in a bus system
KR0137020B1 (ko) 멀티버스 멀티프로세서 시스템의 언블럭킹 방법
CN114780462B (zh) 一种通信链路切换控制电路、通信链路和服务器
CN113746553B (zh) 一种基于多区域的智能组网系统
CN107729273B (zh) 一种总线逻辑仲裁装置及方法
US20090313323A1 (en) Method and System for Controlling Bus Access
CN102594641A (zh) Can分支器
CN109408151B (zh) 一种现场可编程门阵列配置模式自动切换装置和切换方法
JP3366266B2 (ja) プログラマブルコントローラ
JP5272741B2 (ja) 通信システム
JP6337783B2 (ja) 車載ネットワークシステム

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20100730

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20110722

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: 20110809

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: 20110907

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: 20140916

Year of fee payment: 3

LAPS Cancellation because of no payment of annual fees