[go: up one dir, main page]

JP5661365B2 - クオリティ・オブ・サービスを伴ったネットワークオンチップ - Google Patents

クオリティ・オブ・サービスを伴ったネットワークオンチップ Download PDF

Info

Publication number
JP5661365B2
JP5661365B2 JP2010169620A JP2010169620A JP5661365B2 JP 5661365 B2 JP5661365 B2 JP 5661365B2 JP 2010169620 A JP2010169620 A JP 2010169620A JP 2010169620 A JP2010169620 A JP 2010169620A JP 5661365 B2 JP5661365 B2 JP 5661365B2
Authority
JP
Japan
Prior art keywords
throughput
static
current communication
communication
node
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
Application number
JP2010169620A
Other languages
English (en)
Other versions
JP2011035906A (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.)
Kalray SA
Original Assignee
Kalray SA
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 Kalray SA filed Critical Kalray SA
Publication of JP2011035906A publication Critical patent/JP2011035906A/ja
Application granted granted Critical
Publication of JP5661365B2 publication Critical patent/JP5661365B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/70Admission control; Resource allocation
    • H04L47/82Miscellaneous aspects
    • H04L47/822Collecting or measuring resource availability data
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/70Admission control; Resource allocation

Landscapes

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

Description

本願発明は、システムオンチップ(SoC)に関し、より詳細には、ネットワークオンチップ(NoC)におけるデータフロー管理に関する。
図1は、マトリックス(またはメッシュ)トポロジーのネットワークオンチップの一例を示し、それはヨーロッパ特許EP1701274に記述されている。
このネットワークは、行に配置された複数のバス(水平バスBh)と、列に配置された複数のバス(垂直バスBv)を備える。ルータRTRは、水平バスと垂直バスの各交差部に配置され、ルータに到達する各(水平および垂直)バスセグメント間にポイント・ツー・ポイントが作られるのを可能にする。さらに、各ルータRTRは、データ生成部またはデータ消費部であることが可能であるローカルリソースRSCに接続されている。
この種のネットワークは、任意のリソースRSCに、任意の他のリソースと通信させるように設計される。互いに通信するリソースおよびその通信がとるパスは、概して事前に決定され、ネットワーク管理ロジックにプログラムされている。
通信はデータパケットでなされることが多い。パケットは、バスの幅をもつワード組であり、ワード組において、パケットに関連する情報、特に宛先を含むヘッダが先にくる。
通信ネットワーク、たとえばATMにおいて、さまざまな技術が、クオリティ・オブ・サービス(サービスの質)を与えるのに用いられる。これらの技術は一般的に、ネットワーク入力ノードに課せられるスループット制限に基づいている。文献“ネットワーク遅延の計算法、パートI:孤立したネットワーク要素”(Rene L. Cruz著、IEEE情報理論におけるトランザクション、Vol.37, No1、1991年1月)は、これらの技術の一般的な原理を、他のクオリティ・オブ・サービス問題の中で、記述している。
この種のネットワークは、”接続”モードで動作し、すなわち、送信機ノードはパケットを送信することができる前に接続を交渉しなければならない。接続の確立は、さらに固定パスを定義し、その固定パスを介して、パケットは送信元および宛先間を、接続の期間の間、通過する。もし同じ送信元が、接続が遮断された後で同じ宛先に再度パケットを送信しなければならないのなら、異なるパスを割り当てることができる新たな接続が交渉され、このパスはネットワーク混雑条件に応じて動的に計算される。
クオリティ・オブ・サービスを提供するそのようなネットワークにおいて用いられる方法は、大きな利用可能な計算リソースを有するルータによって実行される。それゆえ、ネットワークオンチップでそれらを実施しようとすることは現実的ではなく、ネットワークオンチップではネットワーク実装はシリコン領域の節約のため簡素であるべきである。
ワームホール(worm hole)ルーティングの例に対する簡素なルーティング方法は、それゆえNoCでは好ましい。そのような方法で、パケットヘッダはパケットが取るべき正確なパスを含み、パケットは分割できずすなわちルータはもし以前のパケットが完全に送信されたならばバスセグメントにおける新たなパケットの送信を開始できるのみである。ルータは、セグメントにおける異なるパケットに属するワードを混合することは許されず、“ワーム”は一体(integral)のままである。
図2はこのコンテキストにおいて使用可能なルータを模式的に示している。ルータは5つの方向、すなわち、ノース(N)、サウス(S)、イースト(E)、ウェスト(W)と呼ばれるバスセグメントに対応する4つの方向と、ローカルリソースに対応する方向Lを管理する。
4入力マルチプレクサMXは、各出力方向に割り当てられている。これらの4入力は、マルチプレクサの方向に割り当てられていないルータの入力に対応する。たとえば、ノース出力マルチプレクサMXNはルータの入力L,S,E,Wを受け取る。すなわち、ルータは、1つの方向を介して入ってくるパケットが、同一方向を介して出て行くのを阻止する。
さらに、各マルチプレクサ入力は、出力されるのを待機するパケットのワードを格納するように設計されたFIFOキュー20が、前段に置かれている。
状態マシン(図示されていない)は、マルチプレクサによる発行される選択を制御し、FIFOにおける5つの方向を介して入ってくるワードの書き込みを制御する。
ワームホールルーティングの場合に、到来するパケットヘッダは、どの方向を介してパケットが出力されるべきかをルータに示す。状態マシンは、ヘッダを復号し、パケットの一連のワードを、しかるべきFIFOに書き込む(入力が接続されている4つのFIFOの内)。
マルチプレクサは一度に1つのパケットを処理するように制御される、すなわち1つのFIFOのワードは、それらが同じパケットに属する限り、マルチプレクサによって連続して抽出される。パケットの最後のワードがFIFOから抽出されたとき、マルチプレクサは次のFIFOを固定優先メカニズムに従って処理する。この優先メカニズムは循環であることが多く(ラウンドロビン)、それは、実行するのが簡単であり、各到来する方向へ等しい機会を与えるからである。
このタイプのルーティングの1つの欠点は、送信元と宛先間に、大きな決定できないレイテンシを確実にもたらすことであり、それは、クオリティ・オブ・サービス(QoS)を要求するアプリケーション、特にリアルタイムアプリケーションと当該ルーティングとの適合性を悪くする。
図3Aは、この欠点が起こりうる状況を示す。ネットワークがメッシュおよびノードによって模式的に示され、ノードがルータ、リソースまたはこれらの両方を指定する。ノードはNxyによって指定され、xは行インデックス、yは列インデックスである。
この例では、ノードN10、N01、N02からノードN13への3つの同時の送信通信が存在する。ノードN10、N01からの通信は両方ともノードN11、N12を横断する。ノードN02からの通信はノードN12を横断する。ノードN12、N13間のセグメントが、大いに求められている。
図3Bはこれらの通信によって影響されるルータN11,N12の要素をあらわす。ノードN12のイーストマルチプレクサMXEのウェストFIFO FWは、2つの通信のパケットを受信する、すなわち、ノードN11のイーストマルチプレクサによって送信される、ノードN01、N10からくるものである。このFIFOは急速にいっぱいになり、それは特にノードN02に接続されたFIFOを空にするのに忙しいマルチプレクサMXEによっておそらくまだ空にされていないためである。
FIFO FWがいっぱいになったとき、FIFO FWはノードN11によって送信されるパケットを部分的に含んでいることが起こりえる。ノードN12は、ノードN11へ、オーバーフロー防止メカニズムによって、これ以上データを受信できないことを示し、それは、ノードN11から続くデータは、FIFO FWに書き込まれているパケットに必ず属するためである。ノードN11はもはやデータを送ることができないので、そのマルチプレクサMXEのFIFOは急速にいっぱいになり、ノードN11は同様に、先行するノードに、データを送らないように示す。そのほかもろもろ、FIFOが空になり始めるまでである。
とはいえ、重いトラフィックをもつパスをとらない通信N00−N01−N21は、ある時間の間ストール(stall)しうる。それは、通信N01−N13がセグメントN12−N13の混雑のためにストールするという事実のためである。この通信のストールはそれ自体、通信N00−02を遅延させるかもしれず、その他もろもろありうる。
その状況は、FIFO FWが空になり始めたとき、瞬時には取り除かれない。実際には、ノードN12がノードN11に、データを再度受信できることを示すのは、FIFO FWにおけるロケーションが利用可能になったときのみである。これは、遮断されていたノードのそれぞれによる追加のレイテンシをもたらす。
ネットワークをプログラムする際のルーティング選択においてとられる注意にもかかわらずランダムに起こりうるそのような状況は、パケットのルーティングにおける大きな未知のレイテンシにつながりうる。
FIFOのサイズを増加することは、そのような問題の発生を先送りにするが、合理的なFIFO寸法が用いられても、その問題を完全には克服しない。
その状況を改善するために、このタイプのネットワークに仮想チャネルを導入することが提案された。これは特許EP1701274に開示されている。仮想チャネルを伴ったネットワークにおいて、ルータのマルチプレクサの4つの入力のそれぞれは、仮想チャネルと同数のFIFOを備える。パケットは、ネットワークにおけるのと同じ物理リンクを取り、ルータに到着したとき、しかるべきFIFOに向けられる。FIFOは、パケットヘッダに含まれる仮想チャネル番号によって識別される。
これによって、異なる優先度が仮想チャネルに割り当てられ、たとえばリアルタイム制約をもつ高優先度パケットは、高優先仮想チャネルを介してルーティングされ、各ルータは高優先仮想チャネルを最初に処理する。
この解決は、高優先仮想チャネルが非常に小数の通信によって取られるときは満足のいくものである。高優先仮想チャネルをとる通信の数が増大すると、各仮想チャネルにおいて、上述したのと同じ問題に直面し、低優先チャネルにおけるレイテンシは一層大きくなる。
フィリップス社の“Aetheral” ネットワークのような、時分割多重(TDM: Time Division Multiplex)同期ネットワークはこれらの欠点を提示しないが、それらは著しく複雑であり、パラメータやシリコン技術の変動に非常に敏感であり、不測の事態を許容する困難をともなう。それらはまた、チップのすべての点で同期生を確実にするのに、チップの要素を配置するのに特別な注意を必要とする。
それ故、クオリティ・オブ・サービスを提供する簡単な構造のネットワークに対する必要が依然として存在する。
この必要性を満足させるため、メッシュネットワークにおける通信のスループットを制限する方法であって、固定パスを前記ネットワークで確立されるように通信へ割り当てるステップと、前記通信を、メッシュセグメントを取るように識別するステップと、前記識別された通信にそれぞれのスループット割当量(throughput quota)を割り当てて、これらの割当量の総計が、前記セグメントの公称スループット以下になるようにするステップと、前記ネットワークの入力で各通信のスループットを測定し、その割当量が達せられたとき、前記通信を一時的に停止するステップと、を備えた方法が提供される。
実施形態によれば、前記方法は、さらに、前記メッシュセグメントに基準時間区間に渡るデータユニットのバジェットを割り当てるステップと、前記バジェットの割当量を、前記セグメントを取るように各通信に割り当てるステップと、現在の基準区間の間、各通信によって前記ネットワークへ挿入された前記データユニットを計数するステップと、前記通信によって挿入されたデータユニットの計数値が前記通信に割り当てられた前記割当量に達したとき通信を停止するステップと、前記停止した通信を次の基準区間で再開するステップと、を備える。
前記ネットワークの最大レイテンシを減少させるため、前記通信は、前記通信の送信元および宛先間の中間ノードの段階で、追加のスループット制限を施されてもよい。
他の利点および特徴は、添付図面によって例示される、典型的な実施形態の以下の記述からより明らかにされる。
マトリックス(すなわちメッシュ)トポロジーの従来のネットワークオンチップを模式的に示す。 図1のネットワークのルータの構造を模式的に示す。 図1のネットワークのノード間に確立される典型的な通信を示す。 図3Aの通信に伴われるルータの要素を示す。 スループットリミッタを組み込んだ図1のタイプのネットワークオンチップを模式的に示す。 図4のタイプのネットワークにおけるスループット割り当ての例を示す。 スループットリミッタの関与を示す図4のネットワークのリソースによるパケット送信の例を示す。 ルータのFIFOの最小サイズを可能にするテーブルと、スループットリミッタのパラメータの例に対して決定されるルータごとの最大レイテンシを示す。 スループットリミッタの詳細な実施形態を示す。 ルータの処理能力が一時的に超える結果となり得るパケットバースト状況を示す。 ルータの処理能力が一時的に超える結果となり得るパケットバースト状況を示す。 ルータの処理能力が一時的に超える結果となり得るパケットバースト状況を示す。 パケットグルーピングの制限を可能にする解決を示す。 図10の解決の効率的な実施を可能にする回路の実施形態を示す。
図4は、改善を組み込んだ図1のタイプのネットワークオンチップを示し、この改善によって、ネットワークの最大レイテンシが、限度があり(bounded)かつ決定可能な値で、確立できる。この図は、図1のネットワークの要素を用い、これらの要素を同じ参照符号によって示す。
図示の実施形態に従って、各リソースRSCのネットワーク境界送信リンク(network bound transmission link)は、スループットリミッタ40を備える。このスループットリミッタはたとえば、リソースのネットワークインターフェースに組み込まれる。
各スループットリミッタ40は、テーブルを備え、このテーブルのレコードは、送信スループット割当量を各送信通信に関連づけ、各送信通信は、その対応するリソースによってネットワークの別の要素へ確立されることができる。
最適性能を保証するため、これらの割当量の選択に課せられる制約は、ネットワークセグメントにおける同じ方向に通過するような通信のスループットの総計が、このセグメントの最大送信スループット以下になることである。
割当量を計算するためのこの規則は、すべての通信によって取られるパスが知られていることを前提とする。これは、ネットワークオンチップにおいてどのような困難さも引き起こさず、ネットワークオンチップでは、簡単のため、通信のルーティングは静的であり、事前に定義されている。次に、このルーティング、さらに割当量は、不揮発性メモリに格納され、パワーアップ毎にチップにおいてプログラムされる、設定パラメータの形態を有する。
図5は、図4のタイプのネットワークにおけるスループットの割り当ての例を示す。上述した図3Aと同じノード表記が用いられている。
ノードN00は、送信通信を、ノードN01、N02を横断するノードN13へ確立することができる。
ノードN01は、2つの送信通信、1つはノードN11を横断するノードN10との通信、もう1つはノードN11,N12を横断するノードN13との通信を、確立することができる。
ノードN02は、ノードN12を横断するノードN13との送信通信を確立することができる。
ノードN10は、ノードN11,N12を横断するノードN13との送信通信を確立することができる。
最も求められているセグメントは、セグメントN12-N13であり、このセグメントは同じ方向に3つの通信を見ることができ、セグメントN01-N11およびN11-N12は、両方とも同じ方向における2つの通信を見ることができる。
通信へ割り当てられるスループット割当量の一例は、かっこの中に示されており、最大スループットが、1時間単位あたり、16データユニットであることを前提としている。したがって、通信N00-N03は最大割当量16を有しており、それは、この通信が、使用するセグメントにおける唯一の通信であるからである。すべての他の通信は、他の通信と共有されるセグメントを用い、したがって、最大スループットを分かち合わなければならない。8,4,4の割当量は、それぞれ通信N02-N13、N01-N13、N10-N13へ割り当てられ、これらの通信は最も混んでいるセグメントを通過する。このことは、通信N01-N10に対して12の割当量を残す。
しかしながら、割当量の割り当てに課せられる制約は、多くのケースにおける柔軟性に対する余裕を残しておく。割当量の配分が、次に実行され、それはより大きな割当量を、帯域幅の観点で最も要求している通信に割り当てることによってなされる。
図6は、スループットリミッタ40の特定の実施形態によって実施されるスループット制限の例を示す。この実施形態において、スループットリミッタは、固定された連続の時間区間(インターバル)で動作し、この固定された連続の時間区間は、以降、基準区間と称される。基準区間は、データユニットのバジェットに対応し、このバジェットは、1基準区間の間にセグメントにおける最大スループットで送信できるデータユニットの数である。通信のスループット割当量は、したがって、基準区間ごとのデータユニットにおいて表現されることができる。
ワームホールルーティングネットワークでは、各パケットは、ノードを介して移動する間、分割できず、そのワームホールルーティングネットワークの場合は、データユニットは、好ましくは、パケットで表現される。他のタイプのネットワークでは、データユニットは、異なる、たとえばワードであってもよい。
基準区間の期間は、好ましくはネットワークの各スループットリミッタ40に対して同じである。各リミッタのレベルで、各基準区間が同時に開始する必要はないが、それらは好ましくは、同じ頻度でお互いに追随し、したがって、共通時間ベースの頻度で、同期する。
このタイプのネットワークを組み込むチップは、特に大きいことが可能であるため、チップの隔たった点の間で、技術的上の変動(variation)が存在するかもしれない。非同期であるルータの動作スピードは、したがって、地理的に変化することができる。リミッタは、同じ時間ベースで同期するため、基準区間の期間は、厳密に、チップの全体で一定のままである。より遅いルータに対しては、基準区間の期間は、バジェット未満に対応し、最も速いルータに対しては、バジェット越えに対応することができる。
フルスピードで動作する最も速いルータに対しては、最後のパケットの送信は、体系的に、各基準区間の終わりより前に、完了する。このことは、最後のパケットの終わりと区間の終わりの間で利用可能な帯域幅は、活用されないことを意味するが、これは、システムの満足のいく動作に影響を与えない。
フルスピードで動作する最も遅いルータに対しては、現在の区間の最後のパケットの送信は、体系的に、次の区間へあふれ出る。1つの結果は、ルータのFIFOは基準期間の間に完全には空にはならないということである。これは、従来のシステムよりもかなり低い可能性ではあるが、FIFOオーバーフローの危険をもたらし、それ故ノード間の通信ストールの危険をもたらす。
フェイルセーフアプローチにおいて、基準区間の期間は、それ故、最も遅いルータに応じて選択される。しかしながら、確率を評価して、最も速いルータに対応する期間を考慮して選択されてもよい。
バジェットの値は、通信へ割り当てられることができる割当量の粒度(granulartity)を定義する。バジェットが大きいほど、粒度はより細かく(finer)なるが、ネットワークにおける最大レイテンシはより高くなる。このバジェットの選択は、それ故、所望の粒度/レイテンシのトレードオフにしたがって、なされる。
図6において、3つの連続した時間区間が時間t0,t2,t3開始する。リミッタに関連づけられたリソースは、2つの送信通信1,2を確立できる。2,1の各割当量のパケットが、たとえばこれらの通信に割り当てられる。
時間t1において、最初の時間区間の過程において、リソースは2つの通信を開始する。通信1は、送信する5つのパケットを有し、一方、通信2は、送信する2つのパケットを有する。割当量は2および1であるため、リソースは、最初の時間区間の間、通信1の2つのパケットを送信でき、通信2の1つのパケットを送信できるのみである。リソースは、循環優先(circular priority)でパケットを送信すると仮定すると、通信1,2のパケットは、交互に図示のように送信される。
区間において通信がその割当量に達すると、リミッタはリソースに、この通信のための送信を停止するように信号を発する。そのときリソースはパケットをそのローカルメモリに格納し、次の区間で送信を継続するのを待機する。リソースは、待機時間を別のタスクおよび通信に活用することができる。
新たな時間区間が時間t2で開始する。リソースは、通信2の最後のパケットを送信し、次いで、通信1の2つの新たなパケットを送信する。通信1はまだ終了せず、それは送信する1つのパケットをまだ持っているためである。
新たな時間区間が時間t3で開始し、その時間区間の過程において通信1の最後のパケットが送信される。
図7は、ルータのFIFOの最小(かつ最適)サイズ、およびルータによってもたらされる最大レイテンシが、スループットバジェットが16に等しい場合に決定されることを可能にするテーブルを示す。
このテーブルは、たとえば図2に表されるような、イーストマルチプレクサおよびそのFIFOメモリを参照する。
最初の4つの行は、マルチプレクサの4つの入力(N,L,W,S)のFIFOメモリのそれぞれに到着するパケットを示す。行QEは、マルチプレクサ出力を表す。行FN,FL,FW,FSは、FIFOメモリのそれぞれに格納されているパケットの数を示す。最後の行は、出て行くパケットにより被られる、パケットの数におけるレイテンシを示す。
各列は、パケット送信サイクルに対応する。列の組は、基準時間区間に対応し、基準時間区間では、マルチプレクサは、スループットリミッタのため、最大で、ここでは16であるバジェットに対応するパケットの数を処理する。この区間で受信されたすべてのパケットは、さらに同じ区間の過程で、出力される。
図示された状況は、入力の処理優先が循環される場合における、FIFOレイテンシおよびサイズの最悪ケースの状況である。この状況は、バジェットの16個のパケットが、2,2,3,9個のパケットが4つの異なる入力に到着して、図示のように、配信され、かつ、優先サイクルが、最も少ないパケットをもつFIFOが最初に選択されるような状態にたまたまなったときに、起こる。このテーブルは、入力N,L,W,Sの順の循環優先の場合に対して作成され、入力N,L,W,Sはそれぞれ、2,2,3,9個のパケットを受信する。
サイクル0では、最初の4つのパケットが、4つの各FIFOに到着する。FIFO FNは直ちに処理され、そのパケットN0は、マルチプレクサによって送信される。パケットL0,W0,S0は、FIFO FL,FW,FSに格納される。FIFO FN,FL,FW,FSはしたがって、それぞれ0,1,1,1個のパケットを含む。
サイクル1では、マルチプレクサは、FIFO FLに含まれるパケットL0を送信し、一方、新たなパケットN1,L1,W1,S1が到着し、FIFO FN,FL,FW,FSに書き込まれる。これらのFIFOはそれぞれ、1,1,2,2個のパケットを含む。
サイクル2では、マルチプレクサは、FIFOに含まれるパケットW0を送信し、一方、2つの新たなパケットW2,S2が、FIFO FW,FSに到着する。FIFO FN,FL,FW、FSはそれぞれ、1、1,2,3個のパケットを含む。
サイクル3では、マルチプレクサは、FIFO FSに含まれるパケットS0を送信し、一方、パケットS3が、FIFI FSに到着する。FIFOにおけるパケットの数は、前回のサイクルと比較して、変わらない。
次の5回のサイクルのそれぞれで、新たなパケットSが、FIFI FSに到着し、一方、FIFOは、循環的に、読み出し続けられる。FIFO FN,FL,FWは、最後のパケットS8の到着で、すべて空である。16個のパケットのバジェットがその結果達せられ、次の時間区間間で、マルチプレクサに対し到着するパケットはこれ以上、ない。
7回の残りのサイクルの間、FIFO FSは各サイクルで読み出され、最後のパケットS群を抽出する。
FIFOに格納されるパケットの最大数は7であることが理解されることができ、この7は、達せられた最大レイテンシに対応する。レイテンシは、パケットの出力サイクルのインデックスと、パケットの入力サイクルのインデックスとの間の差異である。
したがって、16のバジェットと、循環優先でスループットリミットを用いることによって、各ルータでもたらされる最大レイテンシは、7パケットである。この値は、あるタイプのルータ(パイプラインルータ)によってもたらされる既知の体系的遅延(systematic delay)によって増加されることができる。ネットワークの最大レイテンシは、その結果、2つのノード間のパス上のルータの最大数に、ルータの最大レイテンシを乗じた値に等しい。
それ故、レイテンシは、限度がありかつ決定可能であり、それによってこの解決は、クオリティ・オブ・サービス(サービスの質)を提供し、リアルタイムアプリケーションに適合性がある。
これ例において最も求められるFIFOメモリは、7個のパケットの深さをもつ。もし異なるメモリが各FIFOに対して用いられるならば、各1つが、7個のパケットの深さをもつ。各マルチプレクサに対して必要な全体メモリサイズは、その結果、28パケットである。
あるルータ構成では、FIFOメモリは、適当な管理状態マシンに関連する単一メモリで実装される。この場合、そのメモリは、すべてのFIFOに一緒に格納されるパケットの数が最大である状況において、すべてのパケットを含むための十分な空間をもっている。この状況は、パケットバジェットがルータ入力、すなわち図7の例をとるFIFOごとの4つのパケット(入力)、全体で等しく分配されるときに生じる。そのとき、マルチプレクサに関連するFIFOはともに最大で12個のパケットを格納することが確認されることができる。
それ故、4つのFIFOの機能を実行するように動作する単一メモリは、12パケットのサイズを有する。このサイズは、すべてのFIFOによって一緒に格納されるパケットの数がこの状況では合計で7に達するのみであるため、図7の最大レイテンシ状況と適合する。
最大レイテンシの決定が、特定のバジェットおよび優先管理ケースに対してこれまでのべられてきた。この計算を他の状況に適用できるであろう。
図1に関連して述べられたタイプの従来のネットワークオンチップでは、FIFOオーバーフロー防止メカニズムが言及され、このメカニズムでは、ルータは、前のルータに対し、そのFIFOのうちの1つが一杯であるときにもはやデータを受信できないことを表示する(ハンドシェイクメカニズム)。これは、FIFOオーバーフローの危険があることを意味する。ここで述べられたスループット制限のおかげで、FIFIは、そのサイズがここで述べたように選択され、かつ割当量が適切に割り当てられるならば、決してオーバーフローするようなことはない。すなわち、ネットワークは、ハンドシェイクメカニズムを無くして簡単化されることができる。
システムが述べられてきたように、割当量は、ルーティングを定義する設計者の責任の下、自由に割り当てることができ、すなわち、設計者は、バジェットがあるセグメントにおいて超えられるように、割当量を割り当てることができる。このバジェット超過はさらに、たとえばもし設計者が同じセグメントをとる2つの通信が決して同時ではないことを知っているならば、故意的であることも可能である。誤りの危険を回避するためには、ハンドシェイクメカニズムが好ましい。しかしながら、設計者が、割当量割り当てに従っていることを検証するコンピュータツールを体系的に使用するならば、ハンドシェイクメカニズムは、不必要である。
図8は、通信に関連するスループットリミッタ40の実施形態を示す。スループットリミッタ40は、通信割当量が記録されるレジスタ80を備える。カウンタCNTは、信号PKTによってクロックされ、信号PKTは、送信される各パケットに対するパルスを表す。カウンタCNTはさらに信号RTCによって周期的に再初期化され、その信号RTCは、システムに共通の時間ベース、たとえばリアルタイムクロックによって確立されるものである。この信号RTCは、一続きの参照時間区間を決定する。
比較器82は、カウンタCNTの内容がレジスタ80に含まれる割当量に等しくなったとき、通信の停止信号STOPを活性化させる。次の時間ベースパルスRTCで、カウンタCNTは再初期化され、信号STOPが非活性化される。
そのようなスループットリミッタは、関連するリソースが確立することができる各送信通信に関連する。リソースによって現在送信される通信は、管理状態マシンによって決定される。管理状態マシンは、送信されるパケットを、関連するルータに方向付け、パケットのカウントを保つ(キープする)。この状態マシンは、パケットPKTのクロックの信号を、現在の通信に対応するリミッタに方向付け、この同じリミッタのSTOP信号を考慮(take account of)するように設計される。状態マシンがSTOP信号を受け取るとすぐ、現在の通信を停止し、もし存在すれば次の通信へ切り替える。パケットが分割不可の場合、もしSTOP信号がパケットの送信の間に受信されると、通信は、そのパケットの最後のワードが送信された後、停止される。
ネットワークの記述が、明確のため、これまでかなり簡単で、最もありそうな状況で、なされてきた。ここで述べられたタイプのネットワークは、実際、ある通信において、局所化されかつ一時的なスループットオーバーシュートへつながるパケットバースト現象に施されることができる。この一時的なスループットオーバーシュートは、この現象に対処するため、伴われるルータのFIFOメモリのサイズを増大する必要につながる。この現象は、スループットバジェットが8(基準区間あたり8パケット)である簡単な場合の枠組み(frame)において、以下に例示される。
図9Aは、5の割当量を有する通信の、ウェストからイーストへのパス上の連続するノードを表す。さらに、各ノードは、他の3つの方向のそれぞれで割当量1の通信を受信し、これらの通信のそれぞれは、そのノードのイースト出力へ方向づけられる。表示されるノード間のセグメントのそれぞれは、それゆえ、8の最大容量にある。明確のため、割当量1の通信のそれぞれの、到着される各2番目のノードでの出力方向は、表示されていない。この方向は、ノース、サウス、ローカルのうち、任意の方向でよい。
図9Bは、図9Aの構成で、たとえば図9Aの1番目のノードのイーストルータの段階で発生することができるパケットバースト現象の始まりを示す。ルータの入力N,L,Sの任意の1つを介して到着するパケットは、“X”と表記される。ウェスト入力(W)を介して到着するパケットは、“w”と表記される。
最初の3つのサイクル0,1,2の間は何も発生しない。サイクル3では、ルータは、その4つの入力のそれぞれでパケットを受信する。続く4つのサイクルのそれぞれでは、入力Wがパケットを受信する。バジェットは、この区間の終わりでちょうど費やされる。
5つの新しいパケットが、次の区間のまさに始まり、サイクル8〜12で、入力Wに到着する。他の入力ではパケットは到着しない。この状況は、3番目の区間で繰り返される(完全には表示されていない)。
入力の循環優先処理が入力Wで終了する場合、ルータの出力QEは、表示されるとおりである。パケットXはサイクル3〜5で出力され、パケットwは、続くサイクルで出力される。サイクル6からのように、出力QEは、15のグループ化されたパケットwを与える。これらのパケットはすべて、次のノードのルータEの入力Wに到着する。このルータは特に8個のパケットwと、できる限り3つの他のパケット、すなわちバジェットを超える3つのパケットを、単一の基準区間の中で、処理しなければならない。
各続くノードで、5つのパケットwの新たなシーケンスが、このように、以前のシーケンスとグループ化されることができる。これは、特に、図9Bに示される状況が、横断する各ノードで繰り返されるときに起こる。
図9Cは、図9Aの2番目および4番目の段階で、起こりうる続くイベントを示す(それぞれテーブルの最初の半分と、2番目の半分)。ルータの入力N,L,S,Wは、ノード番号(2,4)によって索引づけられる。
図9Bのルータの出力QEによって与えられるパケットwは、サイクル6から開始する入力W2に到着する。そのルータの他の入力N2,L2,S2はそれぞれ、サイクル6,8,16,24でパケットXを受信し、それは、まさにパケットwの到着の開始であり、続く基準区間の各開始である。
入力の循環優先処理が入力W2で終わる場合、ルータの出力QEは図示されるとおりである。行FWは、各サイクルでのFIFOWの満たし状態を示す。満たし状態が、処理されるパケットの数が3だけバジェットを超える基準区間の後、サイクル18からのように、最大の9に達することが認められる。
4番目のルータに対応する、テーブルの2番目の部分において、入力W4によって受信されるパケットは、横断する2つのノードの後、図9Bのシーケンスに対応し得るシーケンスで到着する。このシーケンスは、サイクル12で開始する25個のパケットwの連続フローを含む。
さらに、サイクル12で、ルータの他の入力N4、L4、S4はそれぞれパケットXを受信する。次の区間の開始、すなわちサイクル16,24,32で、ルータはさらに入力N4,L4,S4のそれぞれでパケットXを受信する。
出力QEは再度、入力W4が最後に処理されるような優先の場合に対応する。FIFO Wの満たし状態が、パケットの数がバジェットを3だけ超えた2つの連続する基準区間を処理しなければならなくなった少し後、サイクル26で12の最大に達することが理解される。
これらの簡単化された例は、FIFOのサイズが、通信が横断することができるノードの最大数に応じて、選択されなければならないことを示す。
ここで述べられたスループット制限をもったネットワークは、実際、“(σ、ρ)-規則”をもったネットワークの特定の場合に起こり、その一般的な理論は、たとえば、本願の導入部で述べたRene L. Cruzによる文献に述べられている。用語σは通信の最大バーストサイズを指定し、ρは長期間(long-term)スループットを意味する。
ここで述べられたネットワークに適用されるこの理論は、FIFOの最大の満たし状態が、F+3hに等しいことを明らかにし、ここでFはバースト現象を考慮しないでFIFOに対して計算される最大サイズであり(区間あたり16パケットのバジェットを用いたF=7が見られてきた)、hは通信に伴われるノードの最大数である。用語“3”はルータの入力数より1少ないことに対応する。
通信パスが事前に固定されているとすると、通信に伴われる最大ノード数は知られている。さらに、ネットワークによってもたらされる最大レイテンシを決定するFIFOの最小サイズが、それゆえ、計算されることができる。
FIFOのサイズが、伴われる最初のノードからのように、3パケットだけ上昇することがわかる。これは、図9Bに示される事実に起因し、その事実とは、最初の基準区間のバジェットがその区間の終わりでのみ用いられることができ、かつそのバジェットが次の区間の開始で到着するパケットを用いて、最初のノードからのように、グルーピングを起こすことができる、ということである。
最初に伴われるノードへ関連するこのエッジ効果は、スループットリミッタを次のように構成することで避けることができる。それは、次の区間まで、区間の最後の3つのサイクルで到着するパケットを、3より大きなバジェットの通信のために、先送りにすることである。
図10は、FIFOの、それゆえネットワークのレイテンシの、最小サイズにおけるかなりの減少を可能にする解決を示す。
リソース101とリソース103間の通信は、6個のノードを伴う。このネットワークにおいて通信に伴われるノードの最大数を6と仮定すると、バジェットが区間あたり16パケットである場合、FIFOのサイズは、少なくともF+3×6、すなわち25に少なくとも等しく、選択される。したがって最大レイテンシは5×25=125パケットである。
FIFOのサイズを減少させるため、最も長いパスは仮想的により短いパスへ分解(ブレークダウン)される。このため、図10に示されるように、通信が中間ノードで抜け出るようになされ、この中間ノードは、あたかもこのノードへ到来する通信が存在するかのように、すなわち、そのノードのスループットリミッタを通過する通信が存在するかのように、その通信をネットワークへ再注入する。この場合におけるスループットリミッタは、その通信へ割り当てられた割当量を順守しつつ、いくつかの基準区間にパケットバーストが再度広がることを確実にする。
したがってFIFOのサイズは、この分解から生じる最も長いサブパスにしたがって選択される。図10の例では、もっとも長いサブパスは4個のノードを伴い、その結果、FIFOサイズは、7+3×4=19パケットになり、レイテンシは3×19=57パケットになる。
この“分解”技術は、その通信によって被られる遅延を全体的(グローバル)には上昇させない。中間ノードによって受信される最初のパケットは、グルーピング現象に起因して最大の遅延を被ったパケットであり、実際は、直ちに再送信されるものである。最後のパケットは、最小の遅延を被ったものであり、それらのパケットが後の基準区間で再送信される事実は、単にそれらの遅延を、最初のパケットによって被られた遅延と等しくする。さらに、この通信の割当量はすでにこのパスで保存されており、中間ノードは、この同じパスにおける他の通信の割当量によって許容されるより大きく、通信に影響を与えることができない。
この分解技術は、中間ノードを横断するいくつかのサブ通信へ通信を論理的に分解することによって、完全にソフトウェアによって実施されてもよい。各中間ノードは、その通信を別のノードに単に再現することによってその通信を処理するタスクを実行する受信体になる。
しかしながら、そのような実装は、最後の受信体に通信における無視できない遅延をもたらすような処理オーバーヘッドをともなわない。
図11は、この分解技術のハードウェア実装を可能にする非常に簡単な回路を模式的に示す。ノードに接続されたリソースRSCは、ネットワーク上に再送信されるパケットを格納するためのFIFOメモリ110を備える。
ノードのルータLから来る、到来リンクLは、デマルチプレクサ112に着く。このデマルチプレクサの制御ロジックは、ローカルリソースに対して意図されたパケットを認識するように設計され、その場合、パケットは、ラインIN−Lを介してローカルリソースへ送られ、または、ネットワーク上で再送信されるよう意図されたパケットを認識するように設計され、その場合、パケットがFIFOメモリ110に積み重ねられる。
マルチプレクサ114の出力は、スループットリミッタ40を用いて、ノードの入力Lに接続される。マルチプレクサ114は、ラインOUT−Lを介してローカルリソースから来るパケットと、FIFOメモリ110からのパケットとの間での選択を実行する。
分解通信のパケットには、中間ノード(あるいは複数の中間ノード)を識別するヘッダが設けられる。ワームホールルーティングの場合、ヘッダは、通常、横断ノードごとに、2つのビットを含み、これらのビットは、各ノードの段階での次の方向を示す。各中間ノードに対するこの“次の方向”は、ローカル方向であろう。
ノードは次に、パケットをそのルータLへ向かわせ、ルータLでは、デマルチプレクサ112に到着する前から、ルータの対応するFIFO(図10の場合におけるFIFO W)において、その折り返し(turn)を待機する。デマルチプレクサ112は、そのパケットの性質を認識し、それをFIFOメモリ110内に積み重ねる。FIFOメモリ110におけるそのパケットの到着は、マルチプレクサ114に示され、マルチプレクサ114は、スループットリミッタ40によって決定される利用可能なバジェットを考慮して、そのパケットをネットワーク上に再送信する役割を有する。
パケットの性質(“ローカルリソース向けである”あるいは“再送信される”)は、ヘッダ内で運ばれる通信識別子を、ローカルルーティングテーブルと比較することで、認識されることができる。このルーティングテーブルは、ネットワークのすべての通信識別子とそれらの宛先、または、ローカルリソースに対して意図される通信の識別子のみ、を含むことができる。前者の場合、パケットヘッダは、中間ノードへパケットを運ぶパスを含むことのみ必要である。パケットを再送信する際、中間ノードは、パケットの最終宛先へのパスを確立し、そのパスをパケットに挿入することができる。
後者の場合、パケットヘッダは、最終宛先への完全なパスを含み、さらに中間ノードを識別する情報を含む。中間ノードは、そのルーティングテーブルにおいて通信識別子を見つけず、そのパケットは再送信されるべきであると決定する。パケットは再送信され、そのヘッダ内に、最終宛先へ取られるべきパスの残りを含む。
このように再送信されるパケットは次に、ローカルリソース自体を起源とするパケットのように、処理される。
パケットは、各中間ノードにおける2つのルータのFIFO、すなわちルータLのFIFO、次に最終宛先を指し示すルータのFIFO、を介して通過しなければならないことに気づくことができる。さらに、そのようなパケットは、ローカルリソースに入ってくる通常の通信と重ね合わさることが可能である。このことが引き起こしうる問題を避けるためは、中間ノードは、そのローカルリソースの到来通信が存在しない、または少なくとも低スループットからなるように、選択されるべきである。
この問題を避ける別の解決は、ノードが、そのようなパケットを直接、FIFO110に、ルータLを横断することなく、送信することである。このことは、ノードとローカルリソースとの間に設けられる追加のバスを必要とする。デマルチプレクサ112は結果としてもはや必要でない。
各リソースの段階で設けられる図11のような回路によって、通信分解を実施することが特に容易になる。1つ以上の中間ノードはパケットヘッダにおいて簡単に識別され、その残りを扱うのはこれらの中間ノードである。この動作は、ネットワーク設計者によって手作業で実行されることができ、またはパスの長さを最適化するように図られた設計ツールによって自動化された態様で実施されることができる。

Claims (8)

  1. メッシュネットワークにおける通信のスループットを制限する方法であって、
    前記メッシュネットワークにおける複数の送信元ノードと複数の宛先ノード間の可能性ある通信に静的パスを割り当て、複数の静的パスが、隣接するネットワークノード間の同じメッシュセグメントを通過する、ステップと、
    前記静的パスにそれぞれの静的スループット割当量を割り当てて、任意のメッシュセグメントにおいて、前記メッシュセグメントを通過するすべてのパスへそれぞれ割り当てられた静的スループット割当量の総計が、最大で前記メッシュセグメントの公称スループットに等しくなるようにするステップと、
    それぞれの静的パスにおいて、現在の通信のデータユニットを送信するステップと、
    前記通信の送信元ノードで前記現在の通信のスループットを測定し、前記それぞれの静的パスの静的スループット割当量が達せられたとき、前記送信元ノードでの前記現在の通信を一時的に停止するステップと、
    を備えた方法。
  2. メッシュセグメントの公称スループットは、基準時間区間に渡るデータユニットのバジェットによって表され、各静的スループット割当量は、前記データユニットのバジェットのそれぞれの割当量によって表され、
    前記方法は、
    前記現在の通信のデータユニットを、繰り返しの基準時間区間に渡って送信するステップと、
    基準時間区間の間、前記現在の通信のデータユニットを計数することによってスループットを計測するステップと、
    前記現在の通信データユニットの計数値が、前記それぞれの静的パスに割り当てられた前記静的スループット割当量に達したとき、前記現在の通信を停止するステップと、
    前記現在の通信を、次の基準時間区間で再開するステップと、
    を備えた請求項1に記載の方法。
  3. 前記現在の通信の送信元および宛先間の中間ノードの段階で、追加のスループット制限を前記現在の通信に施すステップを備えたことを特徴とする請求項2に記載の方法。
  4. 前記追加のスループット制限は、
    前記中間ノードへ接続されたリソースによって前記現在の通信を受信するステップと、
    前記ネットワーク上で前記リソースによって前記現在の通信を再送信するステップと、
    含むことを特徴とする請求項3に記載の方法。
  5. それぞれの静的に割り当てられた静的パスを介して複数の宛先ノードへ通信を開始することが可能であり、隣接するネットワークノード間で複数の静的パスが同じメッシュセグメントを通過する、複数の送信元ノードと、
    前記静的パスの送信元ノードにおいて、動作中、隣接するネットワークノード間の任意のメッシュセグメントにおいて、前記メッシュセグメントを通るすべての静的パスへそれぞれ割り当てられた静的スループット割当量の総計が、最大で前記メッシュセグメントの公称スループットに等しくなるように静的に決定された、前記静的パスに割り当てられた静的スループット割当量に対応する一定値を記憶する、各静的パスに対するメモリーロケーションと、
    前記送信元ノードで開始する静的パスにおける現在の通信のスループットを測定し、前記静的パスに割り当てられた静的スループット割当量が達せられたとき、前記現在の通信を停止するように構成された、各送信元ノードにおけるスループットリミッタと、
    を備えたメッシュネットワーク。
  6. 前記スループットリミッタは、
    前記現在の通信によって送信されるデータユニットを計数するカウンタと、
    前記カウンタを周期的に再初期化するように構成されたタイムベースであって、前記タイムベースの周期は、スループットバジェットを表すデータユニットの数の前記メッシュセグメントにおける前記公称スループットでの送信時間に対応する、タイムベースと、
    前記カウンタが前記現在の通信の前記静的パスへ割り当てられた前記静的スループット割当量に対応する値に達したとき、前記現在の通信を停止するように構成された回路と、
    を備えた請求項5に記載のメッシュネットワーク。
  7. 宛先ノードは、前記現在の通信の中間受信体としての前記宛先ノードを識別し、前記宛先ノードのスループットリミッタを介して前記メッシュネットワークへ前記現在の通信を再送信するように構成された回路を備えた請求項6に記載のメッシュネットワーク。
  8. 前記回路は、前記現在の通信のヘッダデータユニットによって運ばれるノード識別子で動作する請求項7に記載のメッシュネットワーク。
JP2010169620A 2009-07-29 2010-07-28 クオリティ・オブ・サービスを伴ったネットワークオンチップ Expired - Fee Related JP5661365B2 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
FR0903734A FR2948840B1 (fr) 2009-07-29 2009-07-29 Reseau de communication sur puce avec garantie de service
FR09/03734 2009-07-29

Publications (2)

Publication Number Publication Date
JP2011035906A JP2011035906A (ja) 2011-02-17
JP5661365B2 true JP5661365B2 (ja) 2015-01-28

Family

ID=41820676

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2010169620A Expired - Fee Related JP5661365B2 (ja) 2009-07-29 2010-07-28 クオリティ・オブ・サービスを伴ったネットワークオンチップ

Country Status (5)

Country Link
US (1) US8619622B2 (ja)
EP (1) EP2282456B1 (ja)
JP (1) JP5661365B2 (ja)
CN (1) CN101989950B (ja)
FR (1) FR2948840B1 (ja)

Families Citing this family (40)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FR2948840B1 (fr) * 2009-07-29 2011-09-16 Kalray Reseau de communication sur puce avec garantie de service
CN102148763B (zh) * 2011-04-28 2013-12-25 南京航空航天大学 一种应用于片上网络的动态路径分配方法及系统
FR2984656B1 (fr) 2011-12-19 2014-02-28 Kalray Systeme d'emission de flots de donnees concurrents sur un reseau
FR2984657B1 (fr) 2011-12-19 2014-01-10 Kalray Systeme d'emission de flots de donnees concurrents sur un reseau
EP2688334B1 (en) 2012-07-17 2018-10-03 LG Electronics Inc. Method and apparatus for measuring data burst throughput in a wireless communications system
US20140092740A1 (en) * 2012-09-29 2014-04-03 Ren Wang Adaptive packet deflection to achieve fair, low-cost, and/or energy-efficient quality of service in network on chip devices
US8885510B2 (en) 2012-10-09 2014-11-11 Netspeed Systems Heterogeneous channel capacities in an interconnect
US9571402B2 (en) * 2013-05-03 2017-02-14 Netspeed Systems Congestion control and QoS in NoC by regulating the injection traffic
US9471726B2 (en) 2013-07-25 2016-10-18 Netspeed Systems System level simulation in network on chip architecture
US9473388B2 (en) 2013-08-07 2016-10-18 Netspeed Systems Supporting multicast in NOC interconnect
US9699079B2 (en) 2013-12-30 2017-07-04 Netspeed Systems Streaming bridge design with host interfaces and network on chip (NoC) layers
US9473415B2 (en) 2014-02-20 2016-10-18 Netspeed Systems QoS in a system with end-to-end flow control and QoS aware buffer allocation
FR3024310A1 (fr) * 2014-07-25 2016-01-29 Commissariat Energie Atomique Procede de regulation dynamique de debits de consigne dans un reseau sur puce, programme d'ordinateur et dispositif de traitement de donnees correspondants
US9742630B2 (en) 2014-09-22 2017-08-22 Netspeed Systems Configurable router for a network on chip (NoC)
US9571341B1 (en) 2014-10-01 2017-02-14 Netspeed Systems Clock gating for system-on-chip elements
US9660942B2 (en) 2015-02-03 2017-05-23 Netspeed Systems Automatic buffer sizing for optimal network-on-chip design
US9444702B1 (en) 2015-02-06 2016-09-13 Netspeed Systems System and method for visualization of NoC performance based on simulation output
US9568970B1 (en) 2015-02-12 2017-02-14 Netspeed Systems, Inc. Hardware and software enabled implementation of power profile management instructions in system on chip
US9928204B2 (en) 2015-02-12 2018-03-27 Netspeed Systems, Inc. Transaction expansion for NoC simulation and NoC design
US10050843B2 (en) 2015-02-18 2018-08-14 Netspeed Systems Generation of network-on-chip layout based on user specified topological constraints
US10348563B2 (en) 2015-02-18 2019-07-09 Netspeed Systems, Inc. System-on-chip (SoC) optimization through transformation and generation of a network-on-chip (NoC) topology
CN104794100B (zh) * 2015-05-06 2017-06-16 西安电子科技大学 基于片上网络的异构多核处理系统
US9864728B2 (en) 2015-05-29 2018-01-09 Netspeed Systems, Inc. Automatic generation of physically aware aggregation/distribution networks
US9825809B2 (en) 2015-05-29 2017-11-21 Netspeed Systems Dynamically configuring store-and-forward channels and cut-through channels in a network-on-chip
US10218580B2 (en) 2015-06-18 2019-02-26 Netspeed Systems Generating physically aware network-on-chip design from a physical system-on-chip specification
CN106354673B (zh) * 2016-08-25 2018-06-22 北京网迅科技有限公司杭州分公司 基于多dma队列的数据传输方法和装置
US10452124B2 (en) 2016-09-12 2019-10-22 Netspeed Systems, Inc. Systems and methods for facilitating low power on a network-on-chip
US20180159786A1 (en) 2016-12-02 2018-06-07 Netspeed Systems, Inc. Interface virtualization and fast path for network on chip
US10313269B2 (en) 2016-12-26 2019-06-04 Netspeed Systems, Inc. System and method for network on chip construction through machine learning
US10496578B2 (en) 2017-01-06 2019-12-03 Samsung Electronics Co., Ltd. Central arbitration scheme for a highly efficient interconnection topology in a GPU
US10063496B2 (en) 2017-01-10 2018-08-28 Netspeed Systems Inc. Buffer sizing of a NoC through machine learning
US10084725B2 (en) 2017-01-11 2018-09-25 Netspeed Systems, Inc. Extracting features from a NoC for machine learning construction
US10469337B2 (en) 2017-02-01 2019-11-05 Netspeed Systems, Inc. Cost management against requirements for the generation of a NoC
US10298485B2 (en) 2017-02-06 2019-05-21 Netspeed Systems, Inc. Systems and methods for NoC construction
US10896476B2 (en) 2018-02-22 2021-01-19 Netspeed Systems, Inc. Repository of integration description of hardware intellectual property for NoC construction and SoC integration
US10547514B2 (en) 2018-02-22 2020-01-28 Netspeed Systems, Inc. Automatic crossbar generation and router connections for network-on-chip (NOC) topology generation
US11144457B2 (en) 2018-02-22 2021-10-12 Netspeed Systems, Inc. Enhanced page locality in network-on-chip (NoC) architectures
US10983910B2 (en) 2018-02-22 2021-04-20 Netspeed Systems, Inc. Bandwidth weighting mechanism based network-on-chip (NoC) configuration
US11023377B2 (en) 2018-02-23 2021-06-01 Netspeed Systems, Inc. Application mapping on hardened network-on-chip (NoC) of field-programmable gate array (FPGA)
US11176302B2 (en) 2018-02-23 2021-11-16 Netspeed Systems, Inc. System on chip (SoC) builder

Family Cites Families (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8020163B2 (en) * 2003-06-02 2011-09-13 Interuniversitair Microelektronica Centrum (Imec) Heterogeneous multiprocessor network on chip devices, methods and operating systems for control thereof
US20050071471A1 (en) * 2003-09-30 2005-03-31 International Business Machines Corporation Automatic bandwidth control for file servers with a variable priority client base
JP4686539B2 (ja) * 2004-04-05 2011-05-25 コーニンクレッカ フィリップス エレクトロニクス エヌ ヴィ 集積回路及びタイムスロット割当て方法
JP3860192B2 (ja) * 2005-02-10 2006-12-20 株式会社ネクストマジック 通信装置
FR2883117B1 (fr) 2005-03-08 2007-04-27 Commissariat Energie Atomique Architecture de noeud de communication dans un systeme de reseau sur puce globalement asynchrone.
US7729257B2 (en) * 2006-03-30 2010-06-01 Alcatel-Lucent Usa Inc. Method and apparatus for link transmission scheduling for handling traffic variation in wireless mesh networks
WO2007134186A2 (en) * 2006-05-11 2007-11-22 Qualcomm Incorporated Routing in a mesh network
US8194690B1 (en) * 2006-05-24 2012-06-05 Tilera Corporation Packet processing in a parallel processing environment
US8040799B2 (en) * 2008-05-15 2011-10-18 International Business Machines Corporation Network on chip with minimum guaranteed bandwidth for virtual communications channels
CN101335707B (zh) * 2008-08-05 2011-11-09 清华大学 一种基于预分配的流控方法和装置
CN101420380B (zh) * 2008-11-28 2012-11-14 西安邮电学院 一种双层双环型片上系统
EP2387839B1 (en) * 2009-01-19 2017-10-11 Philips Intellectual Property & Standards GmbH Method of transmitting frames in a mesh network, mesh device and mesh network therefor
CN101478491B (zh) * 2009-02-10 2012-07-04 中兴通讯股份有限公司 一种实现分组业务区分服务的方法及装置
CN101478494B (zh) * 2009-02-16 2011-03-16 中兴通讯股份有限公司 一种基于令牌桶算法的数据包处理方法及装置
FR2948840B1 (fr) * 2009-07-29 2011-09-16 Kalray Reseau de communication sur puce avec garantie de service

Also Published As

Publication number Publication date
EP2282456A1 (fr) 2011-02-09
US8619622B2 (en) 2013-12-31
JP2011035906A (ja) 2011-02-17
CN101989950A (zh) 2011-03-23
CN101989950B (zh) 2015-09-09
FR2948840B1 (fr) 2011-09-16
US20110026400A1 (en) 2011-02-03
FR2948840A1 (fr) 2011-02-04
EP2282456B1 (fr) 2017-02-15

Similar Documents

Publication Publication Date Title
JP5661365B2 (ja) クオリティ・オブ・サービスを伴ったネットワークオンチップ
JP5335892B2 (ja) パケット交換オンチップ相互接続ネットワークの高速仮想チャネル
US7085847B2 (en) Method and system for scheduling network communication
US6744772B1 (en) Converting asynchronous packets into isochronous packets for transmission through a multi-dimensional switched fabric network
JP4791530B2 (ja) 電子デバイス及びフロー制御方法
EP2613479B1 (en) Relay device
JP5895202B2 (ja) 中継器、中継器の制御方法、およびコンピュータプログラム
US9467307B2 (en) Method of tracking arrival order of packets into plural queues
EP3720069B1 (en) Packet sending method and device
EP3817307A1 (en) Message processing method and device
EP1625757B1 (en) Time-division multiplexing circuit-switching router
WO2012120769A1 (ja) 中継装置、中継装置の制御方法、およびプログラム
US8315274B2 (en) System and method for supporting synchronous system communications and operations
EP2573980B1 (en) Parallel traffic generator with priority flow control
JP2008532145A (ja) 共有リソースへのアクセスを制御する方法及びシステム
JP2008541677A (ja) 内部通信ネットワークを備えた集積回路
EP4020900B1 (en) Methods, systems, and apparatuses for priority-based time partitioning in time-triggered ethernet networks
WO2006018751A1 (en) A method for allocating data to at least one packet in an integrated circuit
CN115550237A (zh) 一种数据处理方法以及相关装置
JP5694064B2 (ja) ルータおよび転送方法
JPH04328929A (ja) Lanシステムにおけるシグナリング情報の伝送方法及び装置
CN114500520A (zh) 一种数据传输方法、装置及通信节点
JP4173796B2 (ja) 伝送装置およびトークンフレーム構成方法
CN110679117B (zh) 数据传输方法和自动化通信网络
CN117857466A (zh) 网络流量的确定性编排处理方法、装置、设备及存储介质

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20130719

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20140410

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20140422

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20140722

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20140725

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20140729

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20141203

R150 Certificate of patent or registration of utility model

Ref document number: 5661365

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

LAPS Cancellation because of no payment of annual fees