JP2007507795A - 低電力共用リンクアービトレーション - Google Patents

低電力共用リンクアービトレーション Download PDF

Info

Publication number
JP2007507795A
JP2007507795A JP2006533908A JP2006533908A JP2007507795A JP 2007507795 A JP2007507795 A JP 2007507795A JP 2006533908 A JP2006533908 A JP 2006533908A JP 2006533908 A JP2006533908 A JP 2006533908A JP 2007507795 A JP2007507795 A JP 2007507795A
Authority
JP
Japan
Prior art keywords
network resource
arbitration
initiator
interconnect
target network
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP2006533908A
Other languages
English (en)
Other versions
JP2007507795A5 (ja
Inventor
ウェバー,ウォルフ−ディートリッヒ
ウィンガード,ドリュー・イー
Original Assignee
ソニックス・インコーポレーテッド
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 ソニックス・インコーポレーテッド filed Critical ソニックス・インコーポレーテッド
Publication of JP2007507795A publication Critical patent/JP2007507795A/ja
Publication of JP2007507795A5 publication Critical patent/JP2007507795A5/ja
Pending legal-status Critical Current

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
    • G06F13/36Handling requests for interconnection or transfer for access to common bus or bus system
    • G06F13/362Handling requests for interconnection or transfer for access to common bus or bus system with centralised access control
    • G06F13/364Handling requests for interconnection or transfer for access to common bus or bus system with centralised access control using independent requests or grants, e.g. using separated request and grant lines
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/14Handling requests for interconnection or transfer
    • G06F13/36Handling requests for interconnection or transfer for access to common bus or bus system
    • 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
    • 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/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/403Bus networks with centralised control, e.g. polling
    • 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/46Interconnection of networks
    • H04L12/4604LAN interconnection over a backbone network, e.g. Internet, Frame Relay
    • H04L12/462LAN interconnection over a bridge based backbone
    • H04L12/4625Single bridge functionality, e.g. connection of two networks over a single bridge
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Bus Control (AREA)

Abstract

相互接続が複数のイニシエータネットワークの資源と複数の目標ネットワークの資源に結合する種々の方法及び装置が記載される。相互接続は、回路の第1ステージ、回路の第2ステージ、アービトレーションコントローラを含む。回路の第1ステージは、複数のイニシエータネットワークの資源からトランザクションを受け取る。回路の第2ステージは、トランザクションを相互接続に接続している複数の目標ネットワークの資源に渡す。アービトレーションコントローラは、目標ネットワークの資源の1つ又はそれ以上に向けられた複数のイニシエータネットワーク資源からトランザクションをアービトレートする。目標ネットワーク資源は、アービトレーションコントローラにトランザクションをサービスするためにその可用性を示す。アービトレーションコントローラは、イニシエータネットワーク資源からの、現在利用できない目標ネットワークの資源向けのトランザクションをアービトレーションプロセスからフィルタアウトする。
【選択図】図2

Description

本発明の実施形態は、一般に、ネットワーク環境での相互接続に関する。更に具体的には、本発明の実施形態の態様は、電力消費を最小にするアービトレーションポリシーを実現するためのアービトレーションコントローラを有する相互接続に関する。
図1は、バス全体のイニシエータネットワークの資源と目標ネットワークの資源との間の接続パスを設定するための従来技術によるバスメカニズムのブロック図を示している。ネットワークは、イニシエータネットワークの資源1〜N(ここでNは任意の数を示す)のような要求を開始できる種々のネットワークの資源からなっている。ネットワークはまた、イニシエータネットワークの資源の要求をサービスすることになる目標ネットワークの資源をも含む。目標ネットワークの資源は、目標ネットワークの資源1〜Nのような目標ネットワークの資源を含む。システムは、イニシエータネットワークの資源と目標ネットワークの資源との間のトランザクションを制御するためのバスコントローラを含む。図1は、共通データバス全体の第1イニシエータネットワークの資源から第2目標ネットワークの資源までの接続パスを点線で示している。
イニシエータネットワークの資源から目標ネットワークの資源へのデジタル信号は、デジタル信号でデータを伝達するために、低電圧から高電圧へ及び逆方向に電圧レベルが遷移するように導電性経路上の電圧レベルを変化させる。導体のセットを遷移させるので、これらの導電性経路が遷移したときに2つの事柄が生じる。最初に、導電性経路は、低電圧状態から高電圧状態までチャージアップさせるため電力を消費する。次に、高電圧状態から低電圧状態に遷移する導電性経路に隣接する導電性経路は、隣接回線間のキャパシタンスによる漏れ電流を生じることがある。少量の漏れ電流が隣接する回線から流出することで、漏れた電荷を回復させるために頻繁にこれらの回線を再チャージアップしなければならなくなる。導電性経路の再チャージアップが頻繁になるほど、電力消費が大きくなり、これは、ハンドヘルドデバイスでのバッテリー寿命が短くなることを意味する。
幾つかの従来の共通バス技術では、第1イニシエータネットワークの資源が共通データバス全体のデータペイロードを第2目標ネットワークの資源に伝達するときには、イニシエータと目標間の直接経路が電圧遷移を有するだけでなく、回線やそのデータバスに関連する経路のほとんどがその電圧レベルを同時に遷移させる可能性がある。共用相互接続やバスによって使用されるこの従来の方法では、一般的に、イニシエータネットワークの資源と目標ネットワークの資源との間のトランザクション転送に直接関与しない導電性経路上の電圧遷移を低減する取り組みはほとんど行われてこなかった。
また、アービトレーションコントローラの2つの一般的なタイプが通常存在する。バスコントローラの第1のタイプは、イニシエータがアービトレーションプロセスを勝った場合に目標ネットワークの資源が遷移を受け入れる準備ができるまで、バスをロックする。このタイプのアービトレーションコントローラでは、他のネットワークの資源の全てが、アービトレーションプロセスを勝ったイニシエータをサービスする準備ができるまで目標資源上で待機した後に、当該共用相互接続全体で処理される別のトランザクションを得る必要があるので、全体的なシステム性能は通常低下する。バスコントローラの第2のタイプは、イニシエータネットワークの資源がアービトレーションプロセスを勝ったと、情報のペイロードを目標ネットワークの資源に送信する。目標ネットワークの資源が、イニシエータから全体に送られた情報をサービスする準備ができていない場合には、目標ネットワークの資源は、イニシエータに再試行応答を送る。このタイプのバス制御メカニズムは電力を浪費する。サイクル毎のイニシエータネットワークの資源は、共用リンク全体に情報を送ることができる。しかしながら、送信される情報は、その情報が目標ネットワークの資源によって実際にサービスされるまでに数回の再送信を必要とする場合がある。
また、単一のイニシエータと単一の目標に結合する幾つかの専用の相互接続では、ある形式の遷移フィルタリングが、単一のイニシエータと単一の目標との間の専用通信用の電線のセットに適用されてきた。しかしながら、一般にこれらの専用相互接続は、専用電線を共用するためにアービトレーションメカニズムの必要性がない。
更に、チップ設計のあるシステムでは、同じサイクルで生じる要求とペイロード送信の完全な組合せのイニシエーションのためにチップ上で移動する物理的な距離に起因して、性能の問題を潜在的に受け始める。単一のサイクルアービトレーションとペイロード転送では、イニシエータは、チップ上のその位置からアービトレーションコントローラに要求を送る。アービトレーションコントローラは、獲得要求を選択するために提供されている要求の全てのアービトレーションを行う。アービトレーションコントローラは、チップ上のその位置から、イニシエータに要求を与える応答を送り返す。イニシエータは、相互接続全体のチップ上のその位置からチップ上のその位置での目標ネットワークの資源に情報のペイロードを送る。これらのステップの全ては、同じサイクルで起こる。信号は、アービトレーションコントローラとの間を複数回、及び相互接続全体のイニシエータネットワークの資源から目標ネットワークの資源へは一回物理的な距離を移動する。その距離全部を電子が移動するのにある測定可能な時間量が発生する。従って、その特定の回路を計時するクロック速度は、チップ全体を電子が移動するのに必要とされる最悪の場合の物理的な距離が単一のサイクル内で生じるように、最大量に制限される。チップ全体を電子が移動するのに必要な最悪の場合の物理的な距離は、特定のチップの動作可能なクロック速度を制限することになる。
相互接続が、複数のイニシエータネットワークの資源と複数の目標ネットワークの資源に結合する種々の方法及び装置が記載される。相互接続は、回路の第1ステージ、回路の第2ステージ、アービトレーションコントローラを含むことができる。回路の第1ステージは、複数のイニシエータネットワークの資源からインカミングトランザクションを受け取る。回路の第2ステージは、アウトゴーイングトランザクションを相互接続に接続している複数の目標ネットワークの資源に渡す。アービトレーションコントローラは、目標ネットワークの資源の1つ又はそれ以上に向けられた複数のイニシエータネットワークの資源からトランザクションをアービトレートする。目標ネットワークの資源は、アービトレーションコントローラにトランザクションをサービスするためにその可用性を供給する。アービトレーションコントローラは、イニシエータネットワークの資源からのトランザクションをアービトレーションプロセスからフィルタアウトするアービトレーションポリシーを実装し、これらのトランザクションは、トランザクションのサービスを利用可能でない目標ネットワークの資源に向けられる。
図面は、本発明の実施形態を示す。
本発明には、種々の修正形態及び代替形態があるが、その特定の実施形態は、説明のため各図面で図示され、本明細書において詳細に説明する。本発明は、開示される特定の形態に限定されるものではないことを理解すべきであり、逆に、本発明の精神及び範囲内にある全ての修正形態、均等物、代替形態をカバーする。
以下の説明では、本発明を完全に理解するために、特定のデータ信号、指定された構成要素、接続、ネットワークの資源のタイプなどの例といった多数の特定の詳細が示されている。しかしながら、本発明はこれらの特定の詳細なしに実現できることは、当業者には明らかであろう。他の場合には、公知の構成要素又は方法は、本発明を不必要に曖昧にしないように、詳細には説明されず、ブロック図で示される。第1のイニシエータネットワークの資源のような更なる特定の数字の参照がなされる場合がある。しかしながら、特定の数字の参照は、文字通りの連続した順序として解釈すべきではなく、第1のイニシエータネットワークの資源が第2のイニシエータネットワークの資源とは異なるものと解釈すべきである。従って、定義された特定の詳細は、単に例に過ぎない。特定の詳細は、本発明の精神及び範囲から変わる場合もあり、依然としてその精神及び範囲内にあることを企図している。
一般に、利用可能な目標ネットワークの資源によってサービスされるべきトランザクションを、1つ又はそれ以上のイニシエータネットワークの資源が与えると共に、イニシエータネットワークの資源と目標ネットワークの資源との間のトランザクション転送に直接関与しないルーティングパスによって消費される電力を最小にする種々の方法及び装置について説明する。1つ又はそれ以上のイニシエータネットワークの資源は、要求、応答などのトランザクションを最初のサイクルでアービトレーションコントローラに与える。アービトレーションコントローラは、各与えられたトランザクションに対して目標ネットワークの資源に関連した宛先を決定する。アービトレーションコントローラは、イニシエータネットワークの資源から与えられたトランザクションを、そのトランザクションのサービスを現在利用可能でない目標ネットワークの資源と相互参照する。アービトレーションコントローラは、トランザクションをサービスすることが現在利用できない目標ネットワークの資源に向かう与えられたトランザクションを、アービトレーションプロセスからフィルタアウトする。アービトレーションコントローラは、イニシエータネットワークの資源からアービトレーションに勝った利用可能な目標ネットワークの資源へ、その与えられたトランザクションを選択するために、与えられたトランザクションの残りの中でアービトレーションプロセスを実行する。アービトレーションコントローラは、制御フリップフロップでアービトレーションプロセスの結果を記憶することによって、次のサイクルで有効になるはずのアクションをこのサイクルで決定することができる。アービトレーションコントローラは、制御フリップフロップがアービトレーションプロセスから生じた制御情報を記憶するように、共用相互接続における経路のセグメンテーションを構成する。次のサイクルでは、アービトレーションコントローラは、イニシエータネットワークの資源とアービトレーションに勝った利用可能な目標ネットワークの資源との間の相互接続において、制御信号の接続を設定する。アービトレーションコントローラは、相互接続パスにおいて経路のセグメントを構成し、勝った与えられたトランザクションをイニシエータネットワークの資源から目標ネットワークの資源に渡すと同時に、イニシエータネットワークの資源と目標ネットワークの資源との間のトランザクション転送の部分でない相互接続の経路の他のセグメントを分離する。アービトレーションコントローラは、複数のイニシエータネットワークの資源からインカミングトランザクションを受け取るための回路の第1ステージと、相互接続に接続している目標ネットワークの資源にアウトゴーイングトランザクションを渡すための回路の第2ステージを有することができる。
図2は、回路の第1ステージ、回路の第2ステージ、アービトレーションコントローラを有する共用相互接続のブロック図を示している。共用相互接続208は、システムオンチップに関するIP(intellectual property)コアのような複数のイニシエータネットワークの資源202−204に結合され、複数の目標ネットワークの資源210−212に結合されている。シムテムオンチップのようなネットワーク化されたシステムは、第1のイニシエータネットワークの資源202からN番目のイニシエータネットワークの資源204までのような、複数のイニシエータネットワークの資源を有する。いずれかの所与のサイクルにおいて、ネットワークの資源202−204の1つ又はそれ以上は、共用相互接続208を使用してイニシエータネットワークの資源と目標ネットワークの資源との間の経路を設定するためのアービトレータ206に対する要求を与えることができる。複数の目標ネットワークの資源210−212は、プロセッサ、メモリ、或いはそのチップの特定の機能を実現するよう設計された回路の何らかの仮想的な全体的統合ブロックなどのIPコアとすることができる。アービトレーションコントローラ206は、目標ネットワークの資源210−212の1つ又はそれ以上に向けられる複数のイニシエータネットワークの資源202−204からのトランザクションをアービトレートする。
相互接続208は、入力端子214−216と出力端子218−220の任意の数を有することができる。イニシエータネットワークの資源202−204は、入力端子214−216を介してマルチビットパラレルバス回線224−226を介して回路のインカミングトランザクションステージ222に信号を送信する。相互接続208はまた、回路のインカミングトランザクションステージ222と、回路のアウトゴーイングトランザクションステージ228を含むことができる。アービトレータ206は、入力端子214−216と出力端子218−220を介してネットワークの資源202−204、210−212に接続することができる。アービトレータ206はまた、回路のインカミングトランザクションステージ222と回路のアウトゴーイングトランザクションステージ228に接続されている。アービトレーションコントローラ206は、シングルビット制御回線230を介してこれらの構成要素に接続できる。イニシエータネットワークの資源202−204と目標ネットワークの資源210−212は、シングルビット制御回線230を介してアービトレーション制御メカニズム206にアービトレーション要求、フロー制御、その他を送ることができる。回路のアウトゴーイングトランザクションステージ228はまた、出力端子218−220を介してマルチビットパラレルバス回線232−234を通り目標ネットワークの資源210−212に接続することができる。これらのマルチビットバス回線224−226、232−234は、例えばチップのアーキテクチャ設計に応じて128ビット幅とすることができる。
回路のインカミングトランザクションステージ222は、複数のイニシエータネットワークの資源202−204の1つ又はそれ以上から情報のペイロードを受け取る。回路のインカミングトランザクションステージ222は、相互接続208にセグメント化経路を生成するために1つ又はそれ以上のフィルタユニットとフリップフロップ制御ユニットを含む。回路のインカミングトランザクションステージ222は、マルチビットバス回線224−226から共通マージポイントにわたるセグメント化経路を通って回路のアウトゴーイングトランザクションステージ228に情報のペイロードを伝達することができる。
回路のアウトゴーイングトランザクションステージ228は、アウトゴーイングトランザクションを相互接続208に接続している目標ネットワークの資源210−212の1つ又はそれ以上に渡す。回路のアウトゴーイングトランザクションステージ228は、相互接続208の出力パスにおいてセグメント化経路を生成するために1つ又はそれ以上のスプリッタユニットと1つ又はそれ以上のフリップフロップ制御ユニットとを含む。
アービトレーションコントローラメカニズム206は、目標ネットワークの資源210−212の1つ又はそれ以上に向けられる複数のイニシエータネットワークの資源202−204からトランザクションをアービトレートする。いずれかの所与のサイクルでの各イニシエータネットワークの資源202−204は、要求を送り、当該要求内で識別目標情報を有する目標を識別することによってアービトレートされることになるトランザクションを提供する。アービトレーションコントローラ206は、アービトレーションポリシーを実行し、トランザクションのサービスを現在利用可能でない目標ネットワークの資源210−212への宛先を有するイニシエータネットワークの資源202−204からのトランザクションを、アービトレーションプロセスからフィルタアウトする。アービトレーションコントローラ206は、制御回線230を介してアービトレーション要求と目標情報を受け取る。各目標ネットワークの資源210−212は、トランザクションをサービスする準備ができているかどうかを識別するそのフロー制御情報を制御回線230を介してアービトレーションコントローラ206に送る。アービトレーションコントローラ206が、どの目標にトランザクションを送るようにされているかを識別した後で、アービトレーション制御メカニズム206は、当該目標ネットワークの資源が現在トランザクションをサービスできるか判定する。目標ネットワークの資源がトランザクションをサービスする準備ができていない場合、当該目標ネットワークの資源に向けられる与えられたトランザクションは、アービトレーションアルゴリズムを行う前に、アービトレートされることになる与えられたトランザクションのプールから除去される。フィルタリングの後で、アービトレータ206は、次に、ラウンドロビン、優先順位ベース、最長未サービス頻度、又は他のタイプのアービトレーションアルゴリズムのようなアービトレーションアルゴリズムを実行する。目標ネットワークの資源210−212は、当該目標ネットワークの資源がトランザクションをサービスできるかどうかをアービトレーションコントローラメカニズム206に知らせるアービトレータ206への信号と共に、連続ベースでこれら資源のフロー制御情報を提供する。或いは、目標ネットワークの資源210−212は、イニシエータネットワークの資源202−204の1つからの要求信号の受信に応答して、アービトレーションコントローラ206にこれら資源のフロー制御情報を中継する。アービトレーションコントローラ206は、アービトレーションポリシーを実行し、当該所与のサイクルでトランザクションを与えている全てのネットワークの資源のうちのどのイニシエータネットワークの資源が、当該特定のサイクルの間にアービトレーションに勝つかを判定する。
アービトレーションコントローラ206は、イニシエータネットワークの資源と目標ネットワークの資源との間に接続を構築する相互接続208内のセグメント化経路を設定すると同時に、回路のインカミングトランザクションステージ222と回路のアウトゴーイングトランザクションステージ224に制御信号を送ることによって転送に関与しない経路を分離する。アービトレーションコントローラ206は、1つ又はそれ以上のフィルタユニットとスプリッタユニットに結合され、アービトレーションに勝ったイニシエータネットワークの資源と、トランザクションが供給されるようになった対応する目標ネットワークの資源との間で相互接続208における接続経路を構成する。アービトレータ206の制御信号によって設定され、構成された接続経路により、イニシエータネットワークの資源と目標ネットワークの資源との間のトランザクションペイロード転送が可能になると共に、イニシエータネットワークの資源と目標ネットワークの資源との間でトランザクションを転送する部分でない相互接続208における経路の他のセグメントを分離する。
アービトレーションプロセスとペイロード転送は、2つ又はそれ以上の別個のサイクルにおいて行うことができる。アービトレーションプロセスは、最初のサイクルで行うことができる。アービトレーション中に、アービトレーションコントローラは、与えているイニシエータネットワークの資源と利用可能な目標ネットワークの資源のペアから勝った与えられたトランザクションを選択するフィルタリングプロセスの後で残っている与えられたトランザクション間をアービトレートする。次のサイクルでは、情報のペイロードは、イニシエータネットワークの資源と目標ネットワークの資源との間のトランザクション転送に直接関与する単に経路にわたって、勝ったイニシエータネットワークの資源から目標ネットワークの資源に転送される。従って、情報のペイロードは、トランザクション転送を達成するのに要求される経路の最小セットを介して勝ったイニシエータネットワークの資源から目標ネットワークの資源に転送される。
アービトレーションユニットは、イニシエータネットワークの資源からの目標情報、及び目標ネットワークの資源からのサービスの可用性などのフロー制御情報信号を含む要求を受け入れる。イニシエータネットワークの資源からの目標情報と目標ネットワークの資源からのフロー制御情報を受け入れることによって、アービトレーションプロセスは、ビジー目標に対する要求がアービトレーションを確実に勝たないようにする。この方法の利点の幾つかは、続行できない要求によってリンクがブロックされないこと、及び続行できない要求を送るのに電力が浪費されないことである。アービトレーションユニットは、入力と、前のアービトレーション結果を保持する内部履歴に応じたアービトレーション決定に基づくことができる。アービトレーションユニットの出力は、認可信号を介してイニシエータネットワークの資源に伝達し、要求信号を介して目標ネットワークの資源に伝達することができる。インカミングデータパスとアウトゴーイングデータパスの制御は、データパスにおけるペイロードの移動が別のサイクルで起こるので、スプリッタユニット、フィルタユニット、データパスのマージユニットに加えられる前に、制御フリップフロップ内に制御信号を記憶することによって登録することができる。最初のサイクルでのアービトレーションプロセスを実行し、別のサイクルで情報転送を行わせるためのトランザクションを受け取る回路を実装する利点は、相互接続内の論理グリッチが最小になることである。次の使用の前に1つのサイクルにおいて制御情報を登録することで、インカミングデータパスとアウトゴーイングデータパスでの論理グリッチが最小になる。更に、当該信号サイクルでの信号の全てが移動するのに必要な全体の物理的距離が短いことに起因して、アービトレーション決定と実際のペイロードの移動を2つの別個のサイクルに分けることによってより速いクロック速度オペレーションが可能になる。
図3は、アービトレーションプロセスと、イニシエータネットワークの資源と利用可能な目標ネットワークの資源との間の情報のペイロード転送の実施形態のフロー図を示している。アービトレータは、利用可能なネットワークの資源によってサービスされることになるトランザクションを1つ又はそれ以上のイニシエータネットワークの資源に提供させるように構成されるとともに、イニシエータネットワークの資源と目標ネットワークの資源との間のトランザクション転送に直接関与しないルーティングパスによって消費される電力を最小にするように構成されている。
ブロック302で、1つ又はそれ以上のイニシエータネットワークの資源は、要求、応答、その他などのトランザクションを最初のサイクルでアービトレーションコントローラに与える、すなわち提供する。
ブロック304で、アービトレーションコントローラは、各与えられたトランザクションについて目標ネットワークの資源に関連した宛先を決定する。アービトレーションコントローラは、イニシエータネットワークの資源から与えられたトランザクションを、そのトランザクションをサービスすることが現在利用できない目標ネットワークの資源と相互参照する。
ブロック306で、アービトレーションコントローラは、トランザクションをサービスすることが目下利用できない目標ネットワーク資源に向けられたトランザクションをアービトレーションプロセスからフィルタアウトする。アービトレーションコントローラは、残っている与えられたトランザクション間でアービトレーションプロセスを実行し、開始ネットワーク資源からアービトレーションに勝った利用可能な目標ネットワークの資源へのトランザクションを選択する。アービトレーションコントローラは、イニシエータネットワークの資源の各々に、そのネットワークの資源がアービトレーションに勝ったかどうかを伝達する。
ブロック308で、アービトレーションコントローラは、制御フリップフロップがアービトレーションプロセスから生じた制御情報を記憶するように、フリップフロップを制御するための制御信号を送り、相互接続において経路のセグメント化を構成する。アービトレーションコントローラは、勝った提供中のイニシエータネットワークの資源と制御信号を有する利用可能な目標ネットワークの資源の間の接続を設定する。アービトレーションコントローラは、相互接続パスでの経路のセグメントを構成し、イニシエータネットワークの資源から利用可能な目標ネットワークの資源に情報を渡すと同時に、イニシエータネットワークの資源と利用可能な目標ネットワークの資源との間の情報転送の部分ではない相互接続の経路の他のセグメントを分離する。制御信号は、制御フリップフロップ内に記憶され、次のサイクルでインカミングデータパス及びアウトゴーイングデータパスに対して該制御信号の影響を及ぼす。
幾つかの実施形態においてステップ302−308の後のサイクルで行うブロック310では、イニシエータネットワークの資源が、共用相互接続を通してマルチビットバス回線の電圧レベルを遷移させ、情報のペイロードを目標ネットワークの資源に伝達する。相互接続は、相互接続のためのアービトレーションが1つのサイクルで行い、次のサイクルで情報のペイロードが移動する簡単なパイプライン構造に従う。新しいアービトレーションを行うと、前のアービトレーションから得られた情報のペイロードの移動が生じる。
図4は、回路のインカミングトランザクションステージの実施形態のブロック図を示している。インカミングトランザクション回路408は、相互接続において経路を設定するためにセグメントに分割することができる。各セグメント化経路436−438は、1つ又はそれ以上のフリップフロップコントローラ、1つ又はそれ以上のフィルタ、1つ又はそれ以上のマージユニットを含む。セグメント化経路436−438の全ては、マージユニット455が存在する共通ポイント454に最終的には向かう。マージユニット455は、イニシエータネットワーク資源からアウトゴーイングトランザクション回路へ情報のトランザクションペイロードを転送するために種々のセグメント化パス436−438を選択する。第1セグメント化経路436は、第1から第4までのフィルタユニット440−443、第1から第3までのマージユニット444−446、第1から第7までの制御フリップフロップ447−453からなる。各フィルタユニット440−443は、入力端子を介して当該フィルタユニットに接続されたイニシエータネットワークの資源からトランザクションを受け取る。各フィルタユニット440−443はまた、アービトレーションコントローラから、当該フィルタユニットに接続された制御フリップフロップ447−450を介して制御信号を受け取る。制御信号は、当該フィルタユニットに接続されたイニシエータネットワークの資源からトランザクションを渡すようにフィルタユニットに命令することができる。各マージユニットは、フィルタユニットの出力と制御信号とを受け取る。
上述のように、アービトレーションプロセスとペイロードの転送は、2つ又はそれ以上の別個のサイクルで行うことができる。アービトレーションプロセスは、最初のサイクルで行う。アービトレーション中に、アービトレーションコントローラは、提供中のイニシエータネットワークの資源と利用可能な目標ネットワークの資源から、勝ったトランザクションを選択するフィルタリングプロセスの後に残ったトランザクション間をアービトレートする。更に、アービトレーションコントローラは、当該サイクルでトランザクションを提供しているイニシエータネットワークの資源の全てに対し、当該特定のネットワークの資源がアービトレーションに勝ったかどうかを伝達する。また、アービトレーションコントローラは、第1制御フリップフロップ447から第7制御フリップフロップ453までのような、これらの制御フリップフロップに制御信号を送る。制御フリップフロップ447−453は、アービトレーションプロセスから得られた制御情報を記憶する。
例えば、第1フィルタユニット440に関連したイニシエータネットワークの資源がアービトレーションプロセスで勝った場合、制御フリップフロップ内に記憶されたアービトレーションコントローラからの制御信号が以下の通りとなる。第1制御フリップフロップ447、第5制御フリップフロップ451、第6制御フリップフロップ452、第7制御フリップフロップ453、第8制御フリップフロップ457は、制御信号を受け取り、装置がこれらのフリップフロップに結合できるようにする制御信号を記憶し、これらの装置の出力に入力信号を渡す。第2から第4制御フリップフロップ448、449、450まで、及び第8制御フリップフロップ458からn番目の制御フリップフロップ459までのような他の制御フリップフロップの全てが信号を受け取り、その制御状態を保持又は維持し、従ってこれらのフリップフロップに関連した導電性経路のいずれの遷移も変更しない。8番目の制御フリップフロップ457は、マルチプレクサのような第4マージユニット455に指示し、セグメント化パス入力を第4マージユニット455の出力に渡す。
次のサイクルでは、第1フィルタ440及び第1マージユニット444、第2マージユニット445、第3マージユニット446、第4マージユニット455が、それぞれの制御フリップフロップ447、451、452、453、457において記憶された起動信号を感知し、これらの入力バス回線で感知された電圧レベルに応じてこれらの出力でのバス回線の電圧レベルを変える。第1フィルタ440に関連したイニシエータネットワークの資源用の回路の入力段において設定された構成接続パスは、以下の通りである。接続パスは、第1フィルタ440から第1マージユニット444を通って、第4マージユニット455を通り、制御フリップフロップに関連した全ての他のセグメント化パス及び構成要素は、これらの現在の出力状態を維持する。従って、これらの他の経路は全て遷移が阻止される。勝ったイニシエータネットワーク資源は、この設定された構成経路にわたる情報のペイロードを相互接続のアウトゴーイングトランザクション回路に送る。
従って、ペイロード情報は、第1フィルタユニット440の入力から転送され、出力を出て第1マージユニット444の入力へ入る。ペイロード情報は、第1マージユニット444の入力から転送され、第1マージユニット444の出力から出て、第2マージユニット445の入力に入る。ペイロード情報は、第2マージユニット445の出力から転送されて出て、第3マージユニット446の入力に入り、第3マージユニット446の出力から出て、第4マージユニット455の入力に入る。ペイロード情報は、第4マージユニット455の出力から出てアウトゴーイングトランザクション回路に転送される。
第2フィルタユニット441からn番目のフィルタユニット460までに関連する電線及び導電性パスは、これらの出力で電圧レベルを遷移しなかった。従って、これらの導電性パスは再チャージアップする必要はなく、またこれらの導電性パスに電圧レベルの遷移が起こらなかったので、これらの導電性パスに隣接する導電性パスにおいてもどのような漏れ電流も生じない。従って、相互接続は単に、イニシエータネットワークの資源から該イニシエータネットワークの資源をサービスする準備ができていた目標ネットワークの資源にペイロード情報を伝達するために、遷移する必要のある導電性パスを電圧レベルで遷移しただけであった。電圧レベルでの回線遷移の低減及び漏れ電流の最小化は、バッテリー給電式デバイスで消費される電力を節約することができる。
他のセグメント化経路437、438用のフィルタユニットと他の構成要素は、第1のセグメント化経路436の例で説明したのと同様に機能する。フィルタユニットは、フィルタリング機能を果たす論理ANDゲート又はラッチ或いは論理構成要素の他の組合せから構成することができる。マージユニットは、選択的スイッチ機能を果たすマルチプレクサやラッチ又は構成要素の他の組合せから構成することができる。フィルタがターンオフされた時にフィルタユニットが全ての信号をゼロに設定する場合には、マージユニットは単にORゲートとすることができる。或いは、各フィルタユニットとマージユニットは、下流側の出力電線の値を前の値に保持するためにラッチを含むことができる。
インカミングデータパスは、各入力においてフィルタリングユニットと、電線でリンクされたマージポイントのファンインネットワークを有することができる。各フィルタリングユニットは、対応するイニシエータネットワークの資源が前のサイクルでアービトレーションに勝ったかどうかに応じて、ターンオンされると情報のペイロードを渡すことができ、或いはターンオフされると一定値に出力電圧を保持することができる。マージユニットは、イニシエータネットワークの資源のペイロード情報がファンインネットワークのルートに遷移できるような方法でターンオンすることができ、ファンインネットワークの他の部分は、定常状態に保持される。ファンインネットワークの電線を定常状態に保持させることで、インカミングデータパスにおける電力消費を最小にすることができる。従って、セグメント化経路の相互接続の使用は、イニシエータネットワークの資源と利用可能な目標ネットワークの資源との間の情報のペイロードの転送の部分でない相互接続の経路の他のセグメントを分離することによって、イニシエータネットワークの資源から利用可能な目標ネットワークの資源に情報のペイロードを渡す場合の電力消費が最小になる。各セグメント化経路は、別々に制御可能である。相互接続は、中央ポイントへのインカミングトランザクションのネットワークと中央ポイントからのアウトゴーイングトランザクションのネットワークを生成する。或いは、相互接続はまた、インカミングトランザクション回路内の複数のパラレルバスパスにルート指定されたインカミングトランザクションのネットワークを生成し、次いでアウトゴーイングトランザクションのネットワークを出るか、或いは別の同様のアーキテクチャを実行することができる。
図5は、アウトゴーイングトランザクション回路の実施形態のブロック図を示している。アウトゴーイングトランザクション回路528は、複数のスプリッタユニット560−565と、スプリッタユニットの各々に関連した制御フリップフロップ568−573とを含む。制御フリップフロップ568−573の各々は、アービトレーションコントローラから制御信号を受け取る。制御フリップフロップ568−573の各々は、最初のサイクルでアービトレーションコントローラからその制御信号を受け取る。スプリッタユニット560−565の各々は、インカミングトランザクション回路の出力からペイロード情報を受け取る最初のスプリッタユニット以外のスプリッタユニットのすぐ前のスプリッタユニットのバス回線から入力信号を受け取る。スプリッタユニット560−565の各々は、2つ又はそれ以上の出力を有する。最初のスプリッタユニット以外のスプリッタユニットの各々は、以下のように2つの出力を接続する。1つの出力は出力端子に接続しており、次に当該出力端子を介して特定の目標ネットワークの資源に接続している。第2の出力は、次の隣接するスプリッタユニットに接続しており、当該スプリッタユニット用の入力として機能する。スプリッタユニットが、2つより多い出力を有することができ、又は種々のトポロジーで配置可能である点に留意されたい。
アウトゴーイングデータパスは、ファンアウトネットワークを形成するために共につなぎ合わされたスプリッタユニット560−565を有する。各スプリッタユニット560−565は、制御フリップフロップ568−573内に記憶されたアービトレーション結果情報から制御されて、情報をその出力ブランチの1つに渡すか、又はどれにも渡さないようにすることができる。スプリッタユニット560−565は、非アクティブブランチをゼロにし、或いはラッチを使用して前の値を保持することができる。どちらの場合も、導電性パスは同様に、アクティブ通信の部分でないネットワークの一部の電圧レベルで一定であり、従って電力が節約される。
例えば、第3スプリッタユニット563に関連する目標ネットワークの資源が、トランザクションペイロード情報の最終的な宛先である場合、アウトゴーイングトランザクション回路528内のセグメント化パスは、以下のように構成される。最初のサイクルで、アービトレーションコントローラは、第1制御フリップフロップ568、第2制御フリップフロップ569、第3制御フリップフロップ570に制御信号を送り、記憶されるべき制御情報をこれらの制御フリップフロップに入れ、これらのフリップフロップをアサートする。第4、第5、第6制御フリップフロップ571−573は、これらが前のサイクルでアクティブであった場合、アービトレーションコントローラから制御信号を受け取り、選択されないようにこれらの現在の状態又は遷移を保持する。
次のサイクルでは、ペイロード情報が、インカミングトランザクション回路の構成セグメント化経路を通って、第1スプリッタユニット560の入力に入る。ペイロード情報は、第1スプリッタユニット560を通って第2スプリッタユニット561に接続されている出力に転送される。第2スプリッタユニット561は、その第2出力574を出てペイロード情報を向けるように第2制御フリップフロップ569によって構成されており、第2出力574は、第3スプリッタユニット563に接続されている。しかしながら、第2スプリッタユニット561は、その第1出力575で電圧レベルを維持し、第1出力575は、現在の目標ネットワークの資源以外の目標ネットワークの資源に進む。
第3スプリッタユニット563は、第3スプリッタユニット563の入力で感知されたペイロード情報に基づいてその出力マルチビットバス回線で電圧レベルを遷移させる。第3制御フリップフロップ570は、第2出力577から出ずに第1出力576から出てペイロードデータを送るように第3スプリッタユニット563を構成させる。第3制御フリップフロップ570からの制御情報は、第2出力577でその遷移状態を維持するように第3スプリッタユニット563を構成させる。第1出力576は、出力端子を介して現在の目標ネットワークの資源にペイロード情報を伝達する。第4、第5、第6制御フリップフロップ571−573は、これらのスプリッタユニット562、564、565にこのサイクルの前に存在したのと同じ遷移状態でこれらの出力の両方を維持させる。
従って、相互接続内のセグメント化経路は、遷移させる必要がある導電性パスと、容量性の漏れの問題に起因した再チャージアップする必要のある導電性パスの数が制限されていることにより、相互接続の電力消費が非常に小さくなる。共用相互接続は、相互接続内で別々に制御可能なセグメント化経路を有する入力トランザクション回路と出力トランザクション回路とを有する。相互接続の導電性経路は、電線、はんだの流れ、メタライゼーションリンク、バイア、又はある他の導電性経路とすることができる。共用相互接続のデータパスの構造により、データが実際に伝達されない場合にはペイロード電線が遷移しないように、インカミングブランチ及びアウトゴーイングブランチの全てに遷移フィルタリングすることが可能になる。ネットワークは、システムオンチップで実施することができる。従って、IPコアのほとんどがそのチップ上に配置される。
情報のペイロードのアービトレーションプロセスと送信を2つ又はそれ以上の異なるサイクルに起こる2つの別個の動作に分けることで、チップが動作する最大クロック速度を上げることができる。情報のペイロードのアービトレーションプロセスと送信が、2つ又はそれ以上の異なるサイクルで起こる2つの別個の動作に分けられる場合、最悪の場合の物理的距離の半分だけがいずれかの所与のサイクルで移動するのに必要である。第1のサイクルで、イニシエータの全ては、イニシエータからアービトレーションコントローラに物理的に移動するこれらのトランザクションを与えることができ、アービトレーションコントローラは、アービトレーションポリシーを実行し、アービトレーションプロセスを勝ったか否かをイニシエータに伝達して戻す。次のサイクルで、勝ったイニシエータネットワークの資源は、相互接続から既に構成されたセグメント化経路を介して目標ネットワークの資源にペイロード情報を送信する。情報ペイロード転送に関連した電子は、当該サイクル中に行うのに必要な他の何らかの動作もなしに相互接続を介してイニシエータと目標ネットワークの資源との間の物理的な距離を単に移動する。
従って、相互接続とアービトレータのアーキテクチャは、ゼロから、アービトレーションプロセスの結果の生成時間とイニシエータネットワークの資源と利用可能な目標ネットワークの資源間にトランザクション転送が起こる時間との間の任意の数のサイクルまでのような、パイプライニングの種々の量に対して構成させることができる。従って、アービトレーションプロセスの結果と、イニシエータネットワークの資源と利用可能な目標ネットワークの資源との間のトランザクション転送の結果は、同じサイクルにおいて生じることになる。
トランザクションを分割するように構築されたアーキテクチャを有する共用相互接続は、電力消費量を極めて低くすることができる。低電力消費は、携帯電話及びPDAなどのバッテリー給電式ハンドヘルドデバイスに特に有利である。電力損失容量又は熱損失容量で電源が制限されている集積回路でも同様に有利である。
1つの実施形態では、機械可読媒体が、本明細書で説明される装置及び/又は方法を表わす情報を記憶しておくことができる。機械可読媒体は、機械(例えばコンピュータ)が読み取り可能な形式の情報を提供(例えば記憶及び/又は送信)する何らかのメカニズムを含む。例えば、機械可読媒体は、読み出し専用メモリ(ROM);ランダムアクセスメモリ(RAM);磁気ディスク記憶媒体;光記憶媒体;フラッシュメモリデバイス;DVD、電子、光、音響又は他の形式の伝播信号(例えば、搬送波、赤外線信号、デジタル信号)、EPROM、EEPROM、FLASH、磁気又は光カード、或いは電子命令を記憶するのに好適な媒体のいずれかのタイプを含む。機械可読媒体に記憶された装置及び/又は方法を表わす情報は、本明細書で説明された装置及び/又は方法を作成するプロセスで使用できる。例えば、装置及び/又は方法を表わす情報は、インスタンス、IP発生器のソフト指示、或いはこの情報を記憶する類似の機械可読媒体に含むことができる。
説明の一部は、アルゴリズム及び例えばコンピュータメモリ内のデータビット上でのオペレーションの記号表示の観点で表わすことができる。これらのアルゴリズムの説明及び表示は、データ処理技術分野の当業者が、自らの仕事の内容を他の当業者に最も効率良く伝えるために使用される手段である。本明細書及び一般的なアルゴリズムは、所望の結果に導く動作の自己矛盾の無いシーケンスであると考えられる。この動作は、物理量の物理的な処理を必要とするものである。これらの量は、必須ではないが通常は、記憶、転送、組み合わせ、比較、及び他の処理が可能な電子信号、磁気信号、又は光信号の形式を取る。これらの信号を、ビット、値、要素、記号、文字、用語、数字、又は同様のもので示すことは、主として共通の使用の理由で場合によっては好都合であることが分かっている。
しかしながら、これら及び類似の用語の全ては、適切な物理量に関連したものであり、これらの量に付与される便宜上のラベルに過ぎないことを留意されたい。上記の説明から明らかなように、特に別途指示がなければ、本明細書全体を通して、「処理する」又は「コンピュータで演算する」又は「計算する」又は「決定する」又は「表示する」又は同様のものなどの用語を用いる検討は、コンピュータシステムのレジスタ及びメモリ内の物理的な(電子)量として表わされるデータをコンピュータシステムメモリ又はレジスタ、或いは他のこのような情報記憶、送信、又は表示デバイス内の物理量として同様に表わされる他のデータに処理及び変換する、コンピュータシステム或いは類似の電子コンピューティングデバイスの動作及びプロセスを意味する。
当業者であれば、本発明が、ハンドヘルドデバイス、マルチプロセッサシステム、マイクロプロセッサベース又はプログラム可能な家庭用電子機器、デジタル信号処理(DSP)デバイス、セットトップボックス、ネットワークPC、ミニコンピュータ、メインフレームコンピュータ、その他の同様のものを含む、説明されたもの以外のコンピュータシステム構成で実施することができることは、だたちに理解するであろう。本発明はまた、タスクが通信ネットワークを介してリンクされた遠隔処理デバイスによって実行される分散コンピューティング環境においても実施することができる。この通信ネットワークは、サイズが限定されることはなく、例えばオンチップ通信からインターネットなどのWANに及ぶことができる。
本発明の幾つかの特定の実施形態を示してきたが、本発明はこれらの実施形態に限定されるものではない。例えば、当業者であれば、複数の種々の回路レイアウト及び電子構成要素を用いてアービトレーション回路を作製できることは理解されるであろう。ネットワ
ークの資源は、電流モード、光モード、又は互いの間を通信するのに電圧以外の他の類似のモードを使用することができる。共用相互接続は、イニシエータからのペイロードを記
憶し、後のサイクルでペイロードを送ることができる。本発明は、本明細書で説明された特定の実施形態によって限定されるものではなく、請求項の範囲によってのみ限定されることを理解されたい。
バス全体のイニシエータネットワークの資源と目標ネットワークの資源との間に接続パスを設定するための従来技術のバスメカニズムを示すブロック図である。 回路の第1ステージ、回路の第2ステージ、及びアービトレーションコントローラを有する共用相互接続の実施形態を示すブロック図である。 イニシエータネットワークの資源と利用可能な目標ネットワークの資源との間のアービトレーションプロセス及び情報のペイロード転送の実施形態を示すフロー図である。 回路のインカミングトランザクションステージの実施形態を示すブロック図である。 アウトゴーイングトランザクション回路の実施形態を示すブロック図である。
符号の説明
202、203、204 イニシエータネットワークの資源、206 アービトレータ
208 共用相互接続、210、211、212 目標ネットワークの資源、222 回路のインカミングトランザクションステージ、228 回路のアウトゴーイングトランザクションステージ

Claims (25)

  1. 第1サイクルでトランザクションを与える1つ又はそれ以上のイニシエータネットワークの資源を識別する段階と、
    トランザクションをサービスすることが現在利用できない目標ネットワークの資源に向けられた与えられたトランザクションをアービトレーションプロセスからフィルタアウトする段階と、
    残っている前記与えられたトランザクションの間でアービトレーションプロセスを実行し、イニシエータネットワークの資源からアービトレーションに勝った利用可能な目標ネットワークの資源への前記与えられたトランザクションを選択する段階と、
    次のサイクルで相互接続における前記経路のセグメントを構成して、イニシエータネットワークの資源と前記アービトレーションに勝った前記利用可能な目標ネットワークの資源との間に接続を設定する段階と、
    を含む方法。
  2. 各与えられたトランザクションに対して目標ネットワークの資源に関連した宛先を決定する段階を更に含む請求項1に記載の方法。
  3. トランザクションをサービスすることが現在利用できない目標ネットワークの資源と、前記1つ又はそれ以上のイニシエータネットワークの資源から前記与えられたトランザクションを相互参照する段階を更に含む請求項1に記載の方法。
  4. 制御フリップフロップに制御信号を送り、前記制御フリップフロップが、前記アービトレーションプロセスから生じた制御情報を記憶するように、前記相互接続において前記経路のセグメントを構成する段階を更に含む請求項1に記載の方法。
  5. 前記相互接続において前記経路のセグメントを構成して、前記イニシエータネットワークの資源から前記利用可能な目標ネットワークの資源に情報のペイロードを渡すと同時に、前記イニシエータネットワークの資源と前記利用可能な目標ネットワークの資源との間の情報のペイロード転送部分でない前記相互接続における経路の他のセグメントを分離する段階を更に含む請求項1に記載の方法。
  6. 前記相互接続において前記経路のセグメントの電圧レベルを遷移させ、前記アービトレーション結果が求められた後のサイクルにおいて、前記利用可能な目標ネットワークの資源に前記情報のペイロードを伝達する段階を更に含む請求項1に記載の方法。
  7. 第1サイクルでトランザクションを与える1つ又はそれ以上のイニシエータネットワークの資源を識別する手段と、
    トランザクションをサービスすることが現在利用できない目標ネットワークの資源に向けられた与えられたトランザクションを前記アービトレーションプロセスからフィルタアウトする手段と、
    残っている前記与えられたトランザクション間でアービトレーションプロセスを実行し、イニシエータネットワークの資源から前記アービトレーションに勝った利用可能な目標ネットワークの資源へ前記与えられたトランザクションを選択する手段と、
    次のサイクルで相互接続における前記経路のセグメントを構成して、イニシエータネットワークの資源と前記アービトレーションに勝った前記利用可能な目標ネットワークの資源との間に接続を設定する手段と、
    を備える装置。
  8. 制御フリップフロップに制御信号を送り、前記制御フリップフロップが、前記アービトレーションプロセスから生じた制御情報を記憶するように、前記相互接続において前記経路のセグメントを構成する手段を更に含む請求項7に記載の装置。
  9. 前記相互接続において前記経路のセグメントを構成して、前記イニシエータネットワークの資源から前記利用可能な目標ネットワークの資源に情報のペイロードを渡すと同時に、前記イニシエータネットワークの資源と前記利用可能な目標ネットワークの資源との間の情報のペイロード転送部分でない前記相互接続における前記経路の他のセグメントを分離す手段を更に含む請求項8に記載の装置。
  10. 前記相互接続において前記経路のセグメントの電圧レベルを遷移させ、前記アービトレーション結果が求められた後のサイクルにおいて、前記利用可能な目標ネットワークの資源に前記情報のペイロードを伝達する手段を更に含む請求項9に記載の装置。
  11. 複数のイニシエータネットワークの資源と複数の目標ネットワークの資源に結合された相互接続であって、
    前記複数のイニシエータネットワークの資源からインカミングトランザクションを受け取るための回路の第1ステージと、
    前記相互接続に接続している前記複数の目標ネットワークの資源にアウトゴーイングトランザクションを渡すための回路の第2ステージと、
    前記目標ネットワークの資源の1つ又はそれ以上に向けられた前記複数のイニシエータネットワークの資源からのトランザクションをアービトレートするためのアービトレーションコントローラと、
    を備え、
    前記目標ネットワークの資源は、前記アービトレーションコントローラにトランザクションをサービスできるという可用性を与え、前記アービトレーションコントローラは、トランザクションをサービスすることが現在利用できない目標ネットワークの資源に向けられたイニシエータネットワークの資源からのトランザクションをアービトレーションプロセスからフィルタアウトするアービトレーションポリシーを実行することを特徴とする相互接続。
  12. 前記アービトレーションコントローラは、第1サイクルで前記アービトレーションポリシーの結果を生成し、前記回路の第1ステージと第2ステージは、第2サイクルで第1イニシエータネットワークの資源と第1利用可能な目標ネットワークの資源との間でトランザクションを渡すように構成されていることを特徴とする請求項11に記載の相互接続。
  13. 前記相互接続内の複数のセグメント化経路を更に備え、
    各セグメント化経路が、前記イニシエータネットワークの資源から前記利用可能な目標ネットワークの資源に情報を渡すために別々に制御可能であると同時に、前記イニシエータネットワークの資源と前記利用可能な目標ネットワークの資源の間の前記情報転送部分でない前記相互接続における前記経路の他のセグメントを分離することを特徴とする請求項11に記載の相互接続。
  14. 前記回路の第1ステージは、中央ポイントに情報のインカミングペイロードを経路指定し、前記回路の第2ステージは、前記中央ポイントから前記情報のペイロードを経路指定することを特徴とする請求項11に記載の相互接続。
  15. 第1イニシエータネットワークの資源は、システムオンチップ上の知的財産コアとすることができることを特徴とする請求項11に記載の相互接続。
  16. 請求項11の装置を実現する情報を記憶した機械可読媒体。
  17. 前記回路の第1ステージ及び前記回路の第2ステージは、前記アービトレーションポリシーの結果を受け取り、同じサイクルで第1イニシエータネットワークと第1の利用可能な目標ネットワークの資源との間にトランザクションを転送するよう構成されていることを特徴とする請求項11に記載の相互接続。
  18. 複数のイニシエータネットワークの資源と複数の目標ネットワークの資源に結合された相互接続であって、
    前記相互接続においてセグメント化経路を構成するための1つ又はそれ以上のフィルタユニットと1つ又はそれ以上のスプリッタユニットを含む、前記複数のイニシエータネットワークの資源からトランザクションを受け取るための回路と、
    前記フィルタユニットと前記スプリッタユニットに対して制御信号を生成し、第1イニシエータネットワークの資源と第1目標ネットワークの資源との間で、前記相互接続において接続経路を構成するアービトレーションコントローラと、
    前記構成された接続経路は、前記イニシエータネットワークの資源と前記目標ネットワークの資源との間の情報転送を可能にすると同時に、前記第1イニシエータネットワークの資源と前記第1目標ネットワークの資源との間の情報転送部分ではない前記相互接続の経路の他のセグメントを分離することを特徴とする相互接続。
  19. トランザクションを受け取るための前記回路が、
    前記相互接続においてセグメント化経路を構成するための前記フィルタユニットの少なくとも1つ又はそれ以上を含む、前記複数のイニシエータネットワークの資源からインカミングトランザクションを受け取る回路の第1ステージと、
    前記相互接続に接続している目標ネットワークの資源にアウトゴーイングトランザクションを渡し、かつ、前記相互接続においてセグメント化経路を構成するための前記スプリッタユニットの少なくとも1つ又はそれ以上を含む回路の第2ステージと、
    を更に備えることを特徴とする請求項18に記載の装置。
  20. 前記アービトレーションコントローラは、最初のサイクルで前記アービトレーションプロセスを実行すると共に、前記回路の第1ステージは、別のサイクルでトランザクションを受け取り、前記情報転送を行うことことを特徴とする請求項18に記載の装置。
  21. トランザクションを受け取るための前記回路は、1つ又はそれ以上のマージユニット、第1スプリッタユニットに結合された第1制御フリップフロップ、第1フィルタユニットに結合された第2制御フリップフロップを更に含むことを特徴とする請求項18に記載の装置。
  22. 前記アービトレーションコントローラが、前記目標ネットワークの資源がトランザクションをサービスする準備ができていない場合に、目標ネットワークの資源によってサービスされる前記アービトレーションプロセスからトランザクションをフィルタアウトするアービトレーションポリシーを実行することを特徴とする請求項18に記載の装置。
  23. 請求項18の装置は、システムオンチップに内に配置されることを特徴とする請求項18に記載の装置。
  24. 請求項18の装置を実現する情報を記憶した機械可読媒体。
  25. 前記アービトレーションコントローラが、最初のサイクルで前記アービトレーションプロセスを実行すると共に、前記回路の第1ステージは、トランザクションを受け取り、前記装置の最大オペレーティングクロック速度を上げるために前記情報転送が別のサイクルで行うことを特徴とする請求項20に記載の装置。
JP2006533908A 2003-10-03 2004-09-09 低電力共用リンクアービトレーション Pending JP2007507795A (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US10/678,380 US7296105B2 (en) 2003-10-03 2003-10-03 Method and apparatus for configuring an interconnect to implement arbitration
PCT/US2004/029727 WO2005038659A1 (en) 2003-10-03 2004-09-09 Low power shared link arbitration

Publications (2)

Publication Number Publication Date
JP2007507795A true JP2007507795A (ja) 2007-03-29
JP2007507795A5 JP2007507795A5 (ja) 2007-10-25

Family

ID=34393912

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2006533908A Pending JP2007507795A (ja) 2003-10-03 2004-09-09 低電力共用リンクアービトレーション

Country Status (5)

Country Link
US (1) US7296105B2 (ja)
EP (1) EP1668522A1 (ja)
JP (1) JP2007507795A (ja)
KR (1) KR20060113695A (ja)
WO (1) WO2005038659A1 (ja)

Families Citing this family (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9087036B1 (en) 2004-08-12 2015-07-21 Sonics, Inc. Methods and apparatuses for time annotated transaction level modeling
US8407433B2 (en) 2007-06-25 2013-03-26 Sonics, Inc. Interconnect implementing internal controls
US8504992B2 (en) 2003-10-31 2013-08-06 Sonics, Inc. Method and apparatus for establishing a quality of service model
US7665069B2 (en) * 2003-10-31 2010-02-16 Sonics, Inc. Method and apparatus for establishing a quality of service model
US8014753B2 (en) * 2004-07-19 2011-09-06 Alcatel Lucent Distributed base station test bus architecture in a wireless network
US20060041705A1 (en) * 2004-08-20 2006-02-23 International Business Machines Corporation System and method for arbitration between shared peripheral core devices in system on chip architectures
US7739436B2 (en) * 2004-11-01 2010-06-15 Sonics, Inc. Method and apparatus for round robin resource arbitration with a fast request to grant response
US8086832B2 (en) 2006-05-19 2011-12-27 International Business Machines Corporation Structure for dynamically adjusting pipelined data paths for improved power management
US20070271449A1 (en) * 2006-05-19 2007-11-22 International Business Machines Corporation System and method for dynamically adjusting pipelined data paths for improved power management
US8868397B2 (en) 2006-11-20 2014-10-21 Sonics, Inc. Transaction co-validation across abstraction layers
JP4873557B2 (ja) * 2007-01-12 2012-02-08 ルネサスエレクトロニクス株式会社 データ処理装置及び半導体集積回路
US8190804B1 (en) 2009-03-12 2012-05-29 Sonics, Inc. Various methods and apparatus for a memory scheduler with an arbiter
GB2484483B (en) * 2010-10-12 2018-07-11 Advanced Risc Mach Ltd Communication using integrated circuit interconnect circuitry
US8438306B2 (en) 2010-11-02 2013-05-07 Sonics, Inc. Apparatus and methods for on layer concurrency in an integrated circuit
CN102761462A (zh) * 2011-04-25 2012-10-31 中兴通讯股份有限公司 个人网的合并方法及装置、个人网的拆分方法及装置
US9288102B2 (en) 2013-02-18 2016-03-15 Microsoft Technology Licensing, Llc Controlling devices using cloud services and device-agnostic pipe mechanisms
US11231769B2 (en) 2017-03-06 2022-01-25 Facebook Technologies, Llc Sequencer-based protocol adapter
WO2018165111A1 (en) 2017-03-06 2018-09-13 Sonics, Inc. An operating point controller for circuit regions in an integrated circuit

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS6366654A (ja) * 1986-09-08 1988-03-25 Matsushita Electric Ind Co Ltd 同期型バス
JPH08153065A (ja) * 1994-11-30 1996-06-11 Nec Corp バス制御回路
WO2003065236A1 (en) * 2002-01-25 2003-08-07 Fulcrum Microsystems, Inc. Asynchronous crossbar with deterministic or arbitrated control

Family Cites Families (42)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4953081A (en) 1988-12-21 1990-08-28 International Business Machines Corporation Least recently used arbiter with programmable high priority mode and performance monitor
US5274783A (en) * 1991-06-28 1993-12-28 Digital Equipment Corporation SCSI interface employing bus extender and auxiliary bus
US5440752A (en) * 1991-07-08 1995-08-08 Seiko Epson Corporation Microprocessor architecture with a switch network for data transfer between cache, memory port, and IOU
US5388245A (en) * 1993-06-01 1995-02-07 Intel Corporation Memory arbitration method and apparatus for multiple-cycle memory coprocessors employing a data cache unit and stack RAM
US5845097A (en) * 1996-06-03 1998-12-01 Samsung Electronics Co., Ltd. Bus recovery apparatus and method of recovery in a multi-master bus system
US5740380A (en) * 1996-07-15 1998-04-14 Micron Electronics, Inc. Method and system for apportioning computer bus bandwidth
US5933610A (en) * 1996-09-17 1999-08-03 Vlsi Technology, Inc. Predictive arbitration system for PCI bus agents
US5949789A (en) * 1996-11-21 1999-09-07 Xerox Corporation Arbitration ring for accessing a limited bandwidth switching network
JPH10171750A (ja) * 1996-12-09 1998-06-26 Fujitsu Ltd メモリ間データ転送システム
US5832278A (en) * 1997-02-26 1998-11-03 Advanced Micro Devices, Inc. Cascaded round robin request selection method and apparatus
US6092158A (en) * 1997-06-13 2000-07-18 Intel Corporation Method and apparatus for arbitrating between command streams
KR100252752B1 (ko) * 1997-06-26 2000-04-15 김영환 다단계 제어 버스 중재장치
JPH1173258A (ja) * 1997-08-28 1999-03-16 Toshiba Corp 低消費電力バス構造及びその制御方法、低消費電力バス構造の合成システム及びその合成方法、携帯情報機器
JP3614281B2 (ja) * 1997-08-29 2005-01-26 富士通株式会社 調停回路
US5948089A (en) * 1997-09-05 1999-09-07 Sonics, Inc. Fully-pipelined fixed-latency communications system with a real time dynamic bandwidth allocation
US6012116A (en) * 1997-12-31 2000-01-04 Sun Microsystems, Inc. Apparatus and method for controlling data, address, and enable buses within a microprocessor
US6286083B1 (en) * 1998-07-08 2001-09-04 Compaq Computer Corporation Computer system with adaptive memory arbitration scheme
AU5877799A (en) * 1998-09-18 2000-04-10 Pixelfusion Limited Apparatus for use in a computer system
US6182183B1 (en) 1998-11-13 2001-01-30 Sonics, Inc. Communications system and method with multilevel connection identification
US6493776B1 (en) * 1999-08-12 2002-12-10 Mips Technologies, Inc. Scalable on-chip system bus
US6826191B1 (en) 1999-10-01 2004-11-30 Stmicroelectronics Ltd. Packets containing transaction attributes
US6532509B1 (en) * 1999-12-22 2003-03-11 Intel Corporation Arbitrating command requests in a parallel multi-threaded processing system
US6330225B1 (en) * 2000-05-26 2001-12-11 Sonics, Inc. Communication system and method for different quality of service guarantees for different data flows
US6848017B2 (en) * 2000-10-26 2005-01-25 Emc Corporation Method and apparatus for determining connections in a crossbar switch
US6782441B1 (en) * 2000-10-26 2004-08-24 Sun Microsystems, Inc. Arbitration method and apparatus
GB0031763D0 (en) * 2000-12-29 2001-02-07 Mitel Semiconductor Ltd Arbiter for a queue management system
US7165094B2 (en) * 2001-03-09 2007-01-16 Sonics, Inc. Communications system and method with non-blocking shared interface
US6662251B2 (en) * 2001-03-26 2003-12-09 International Business Machines Corporation Selective targeting of transactions to devices on a shared bus
US20020169935A1 (en) * 2001-05-10 2002-11-14 Krick Robert F. System of and method for memory arbitration using multiple queues
US6763415B1 (en) * 2001-06-08 2004-07-13 Advanced Micro Devices, Inc. Speculative bus arbitrator and method of operation
US6970454B1 (en) * 2001-08-09 2005-11-29 Pasternak Solutions Llc Sliced crossbar architecture with inter-slice communication
US6578117B2 (en) * 2001-10-12 2003-06-10 Sonics, Inc. Method and apparatus for scheduling requests using ordered stages of scheduling criteria
US6738839B2 (en) * 2001-12-27 2004-05-18 Storage Technology Corporation Method and system for allocating logical paths between a host and a controller in a virtual data storage system
US6823411B2 (en) * 2002-01-30 2004-11-23 International Business Machines Corporation N-way psuedo cross-bar having an arbitration feature using discrete processor local busses
US7352741B2 (en) * 2002-02-21 2008-04-01 Sun Microsystems, Inc. Method and apparatus for speculative arbitration
US6973520B2 (en) * 2002-07-11 2005-12-06 International Business Machines Corporation System and method for providing improved bus utilization via target directed completion
US7236497B2 (en) * 2002-08-28 2007-06-26 Intel Corporation Facilitating arbitration via information associated with groups of requesters
US6976106B2 (en) * 2002-11-01 2005-12-13 Sonics, Inc. Method and apparatus for speculative response arbitration to improve system latency
US6976109B2 (en) * 2003-04-16 2005-12-13 Neomagic Israel Ltd. Multi-level and multi-resolution bus arbitration
US7149829B2 (en) * 2003-04-18 2006-12-12 Sonics, Inc. Various methods and apparatuses for arbitration among blocks of functionality
US20040210696A1 (en) * 2003-04-18 2004-10-21 Meyer Michael J. Method and apparatus for round robin resource arbitration
US7013357B2 (en) * 2003-09-12 2006-03-14 Freescale Semiconductor, Inc. Arbiter having programmable arbitration points for undefined length burst accesses and method

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS6366654A (ja) * 1986-09-08 1988-03-25 Matsushita Electric Ind Co Ltd 同期型バス
JPH08153065A (ja) * 1994-11-30 1996-06-11 Nec Corp バス制御回路
WO2003065236A1 (en) * 2002-01-25 2003-08-07 Fulcrum Microsystems, Inc. Asynchronous crossbar with deterministic or arbitrated control
JP2005516508A (ja) * 2002-01-25 2005-06-02 フルクラム・マイクロシステムズ・インコーポレーテッド 決定的または調停された制御による非同期クロスバー

Also Published As

Publication number Publication date
US20050076125A1 (en) 2005-04-07
KR20060113695A (ko) 2006-11-02
US7296105B2 (en) 2007-11-13
WO2005038659A1 (en) 2005-04-28
EP1668522A1 (en) 2006-06-14

Similar Documents

Publication Publication Date Title
JP2007507795A (ja) 低電力共用リンクアービトレーション
US9742630B2 (en) Configurable router for a network on chip (NoC)
US9829962B2 (en) Hardware and software enabled implementation of power profile management instructions in system on chip
US8250341B2 (en) Pipeline accelerator having multiple pipeline units and related computing machine and method
KR100996917B1 (ko) 다수의 파이프라인 유닛을 가지는 파이프라인 가속기 및관련 컴퓨팅 머신 및 방법
EP1374403B1 (en) Integrated circuit
RU2565781C2 (ru) Предоставление безбуферного способа транспортировки для многомерной ячеистой топологии
US20020143505A1 (en) Implementing a finite state machine using concurrent finite state machines with delayed communications and no shared control signals
US20190266088A1 (en) Backbone network-on-chip (noc) for field-programmable gate array (fpga)
US7254603B2 (en) On-chip inter-network performance optimization using configurable performance parameters
Villiger et al. Self-timed ring for globally-asynchronous locally-synchronous systems
WO2004042562A2 (en) Pipeline accelerator and related system and method
US11023377B2 (en) Application mapping on hardened network-on-chip (NoC) of field-programmable gate array (FPGA)
US7370127B2 (en) High-speed internal bus architecture for an integrated circuit
Chen et al. ArSMART: An improved SMART NoC design supporting arbitrary-turn transmission
US20190258573A1 (en) Bandwidth weighting mechanism based network-on-chip (noc) configuration
US8254187B2 (en) Data transfer apparatus, and method, and semiconductor circuit
KR101061187B1 (ko) 버스 시스템 및 그 제어 장치
US7590788B2 (en) Controlling transmission on an asynchronous bus
US11144457B2 (en) Enhanced page locality in network-on-chip (NoC) architectures
US8677103B1 (en) Asynchronous pipelined data path with data transition
Shermi et al. A novel architecture of bidirectional NoC router using flexible buffer
CN117421268A (zh) 一种互联系统、设备及网络
JPWO2007037384A1 (ja) 自己同期型の処理ユニットを有するシステム
JPH117441A (ja) データ処理装置

Legal Events

Date Code Title Description
A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20070907

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20070907

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20100310

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20100427

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20100727

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20100803

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20101109