JP5488589B2 - ルータ装置、半導体集積回路装置、ルーティング方法及びプログラム - Google Patents
ルータ装置、半導体集積回路装置、ルーティング方法及びプログラム Download PDFInfo
- Publication number
- JP5488589B2 JP5488589B2 JP2011506070A JP2011506070A JP5488589B2 JP 5488589 B2 JP5488589 B2 JP 5488589B2 JP 2011506070 A JP2011506070 A JP 2011506070A JP 2011506070 A JP2011506070 A JP 2011506070A JP 5488589 B2 JP5488589 B2 JP 5488589B2
- Authority
- JP
- Japan
- Prior art keywords
- packet
- arbitration
- router
- routing
- cycles
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L49/00—Packet switching elements
- H04L49/10—Packet switching elements characterised by the switching fabric construction
- H04L49/109—Integrated on microchip, e.g. switch-on-chip
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L49/00—Packet switching elements
- H04L49/10—Packet switching elements characterised by the switching fabric construction
- H04L49/112—Switch control, e.g. arbitration
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Description
本発明は、日本国特許出願:特願2009−072507号(2009年 3月24日出願)の優先権主張に基づくものであり、同出願の全記載内容は引用をもって本書に組み込み記載されているものとする。
本発明は、ルータ装置、半導体集積回路装置、ルーティング方法及びプログラムに関し、特に、半導体集積回路装置に設けられたIPコア間の通信のためのルータ装置、そのルータ装置を有する半導体集積回路装置、ルーティング方法及びプログラムに関する。
以下の分析は、本発明者によってなされたものである。上記のNRCによると、パケットとともにルーティング計算の結果を次のルータ装置へ送信する必要が生じるため、配線量が増加する。また、各ルータ装置は自身に接続された複数のルータ装置のルーティングを行う必要があり、ルーティングが複雑化する。
本発明の第1の実施形態に係るルータ装置について、図面を参照して説明する。図1を参照すると、ルータ装置30は、受信部31、ルーティング部32、アービタ部33、及び転送部34を有する。
本発明の第2の実施形態について図面を参照して詳細に説明する。図2は、本実施形態に係るルータ装置20の構成を示すブロック図である。図2の各構成要素は、N方向、S方向、E方向、W方向、及びIPコアの入力チャネル1から入力されたパケットに対して同様の動作を行うことから、これらの各構成要素の符号には、それぞれ添字(サフィックス)n、e、s、w、及びiを付した。以下の説明においては、便宜のため、添え字を省略する。
0b000 無効状態
0b001 予約要求パケット
0b010 予約取り消しパケット
0b011 未定義
0b100 通常パケット制御情報先頭
0b101 通常パケットアドレス
0b110 通常パケットデータ末尾
0b111 通常パケットデータ中間
本発明の第3の実施形態に係る半導体集積回路装置について、図面を参照して説明する。
なお、上記の特許文献の各開示を、本書に引用をもって繰り込むものとする。本発明の全開示(請求の範囲を含む)の枠内において、さらにその基本的技術思想に基づいて、実施形態ないし実施例の変更・調整が可能である。また、本発明の請求の範囲の枠内において種々の開示要素の多様な組み合わせないし選択が可能である。すなわち、本発明は、請求の範囲を含む全開示、技術的思想にしたがって当業者であればなし得るであろう各種変形、修正を含むことは勿論である。
前記第2のパケットに含まれる前記第1のパケットの宛先アドレスを参照して前記第1のパケットのルーティングを行うルーティング部と、
前記第2のパケットに含まれる前記第1のパケットの宛先アドレス及び到着タイミングを参照して前記第1のパケットに対するアービトレーションを行うアービタ部と、
前記ルーティング部によるルーティング及び前記アービタ部によるアービトレーションにしたがって前記第1のパケットを転送する転送部と、を備えていることを特徴とするルータ装置。
前記アービタ部は、前記先行サイクル数及び前記フリット長に基づいて前記アービトレーションを行うことを特徴とする、付記1に記載のルータ装置。
前記アービタ部は、前記優先度に応じてアービトレーションを行うことを特徴とする、付記1乃至3のいずれか一に記載のルータ装置。
前記複数のIPコア間のパケットを転送する付記1乃至5のいずれか一に記載のルータ装置と、を備えていることを特徴とする半導体集積回路装置。
前記複数のIPコア間を接続するとともに第2のパケットを転送する第2の通信チャネルと、をさらに備えていることを特徴とする、付記6に記載の半導体集積回路装置。
前記第2のパケットに含まれる前記第1のパケットの宛先アドレスを参照して前記第1のパケットのルーティングを行う工程と、
前記第2のパケットに含まれる前記第1のパケットの宛先アドレス及び到着タイミングを参照して前記第1のパケットに対するアービトレーションを行う工程と、
前記ルーティング及び前記アービトレーションにしたがって前記第1のパケットを転送する工程と、を含むことを特徴とするルーティング方法。
前記ルータ装置は、前記先行サイクル数及び前記フリット長に基づいて、前記アービトレーションを行うことを特徴とする、付記8に記載のルーティング方法。
前記ルータ装置は、前記優先度に応じて前記アービトレーションを行うことを特徴とする、付記8又は9に記載のルーティング方法。
前記第2のパケットに含まれる前記第1のパケットの宛先アドレスを参照して前記第1のパケットのルーティングを行う処理と、
前記第2のパケットに含まれる前記第1のパケットの宛先アドレス及び到着タイミングを参照して前記第1のパケットに対するアービトレーションを行う処理と、
前記ルーティング及び前記アービトレーションにしたがって前記第1のパケットを転送する処理と、をコンピュータに実行させることを特徴とするプログラム。
前記先行サイクル数及び前記フリット長に基づいて、前記アービトレーションを行う処理をコンピュータに実行させることを特徴とする、付記11に記載のプログラム。
前記優先度に応じて前記アービトレーションを行う処理をコンピュータに実行させることを特徴とする、付記11又は12に記載のプログラム。
2、2n、2e、2s、2w、2i 入力FIFOバッファ
3、3n、3e、3s、3w、3i スルーライン
4、4n、4e、4s、4w、4i 入力FIFOバッファ出力チャネル
5 クロスバー
6、6n、6e、6s、6w、6i、12、12n、12e、12s、12w、12i、14 セレクタ
7、7n、7e、7s、7w、7i 出力ラッチ
8、8n、8e、8s、8w、8i 出力チャネル
9、9n、9e、9s、9w、9i、33、50 アービタ部
10、10n、10e、10s、10w、10i 入力ラッチ
11、11n、11e、11s、11w、11i、32 ルーティング部
13、13n、13e、13s、13w、13i 予約要求パケット生成部
20、30、R0〜R15 ルータ装置
21、121 半導体集積回路装置
25、202 通信チャネル
31 受信部
34 転送部
51 セレクタアービタ
52 予約アービタ
53 予約テーブル
54、101 属性エントリ
55、59、102 入力チャネルエントリ
56 残カウンタ
57 属性生成部
58 残数レジスタ
60 減算ユニット
61 入力FIFOバッファからの調停要求
62 予約情報
63 調停結果信号
64 予約要求
65 調停結果通知信号
66 予約結果通知信号
81、91 パケットボディ信号
82、92 サイドバンド信号
83、93 宛先アドレス
84、94 フリット長
85 制御情報
86 アクセスアドレス
87 アクセス属性
88 データ
89 ライトバッファ
95 先行サイクル数
125 メイン通信チャネル
127 制御通信チャネル
204 EVC(Express Virtual Channel)
CR0〜CR15 制御ルータ装置
IP0〜IP15 IP(Intellectual Property)コア
MR0〜MR15 メインルータ装置
NIF ネットワークインタフェース
Claims (13)
- 宛先アドレスを有するヘッダ部とデータ部を含む第1のパケットを受信するとともに、前記第1のパケットの宛先アドレス、フリット長、及び、前記第1のパケットが到着するまでのサイクル数である先行サイクル数を含む第2のパケットを前記第1のパケットに先行して受信する受信部と、
前記第2のパケットに含まれる前記第1のパケットの宛先アドレスを参照して前記第1のパケットのルーティングを行うルーティング部と、
前記第2のパケットに含まれる前記第1のパケットの宛先アドレス、フリット長、及び、先行サイクル数を参照して前記第1のパケットに対するアービトレーションを行い、前記第1のパケットが到着するタイミングにおいて、前記第1のパケットのフリット長に対応するサイクル数の出力チャネルを予約するアービタ部と、
前記ルーティング部によるルーティング及び前記アービタ部によるアービトレーションにしたがって前記第1のパケットをバッファに格納することなく転送する転送部と、を備え、
前記転送部は、前記第2のパケットに含まれる先行サイクル数と前記アービトレーションに要するサイクル数との大小関係に応じて、前記第2のパケットを後段のルータに転送するか否かを判定する、ルータ装置。 - 前記転送部は、受信時の前記第2のパケットに含まれる先行サイクル数を、前記アービトレーションに要するサイクル数だけ減算した後、前記第2のパケットを後段のルータに転送する、請求項1に記載のルータ装置。
- 前記転送部は、受信時の前記第2のパケットに含まれる先行サイクル数が1である場合、前記第2のパケットを後段のルータに転送しない、請求項2に記載のルータ装置。
- 前記第2のパケットは、前記第1のパケットの優先度を含み、
前記アービタ部は、前記優先度に応じてアービトレーションを行い、優先度の低い前記第1のパケットの予約を取り消し、
予約を取り消された前記第1のパケットが到着した場合、前記ルーティング部は、前記第1のパケットのヘッダ部に含まれる宛先アドレスに基づいてルーティングを行い、前記アービタ部は、バッファに格納された前記第1のパケットを出力すべき出力チャネルが空いているか否かを判定し、空いているときに該出力チャネルを前記第1のパケットに割り当てる、請求項1乃至3のいずれか1項に記載のルータ装置。 - 前記アービタ部は、前記優先度に応じてアービトレーションを行った場合において、先行するアービトレーションを取り消したときには、前記第2のパケットが転送された後段のルータへその旨を通知する、請求項4に記載のルータ装置。
- 複数のIPコアと、
前記複数のIPコア間のパケットを転送する請求項1乃至5のいずれか1項に記載のルータ装置と、を備える、半導体集積回路装置。 - 前記複数のIPコア間を接続するとともに前記第1のパケットを転送する第1の通信チャネルと、
前記複数のIPコア間を接続するとともに第2のパケットを転送する第2の通信チャネルと、をさらに備える、請求項6に記載の半導体集積回路装置。 - ルータ装置が、宛先アドレスを有するヘッダ部とデータ部を含む第1のパケットを受信する前に、前記第1のパケットの宛先アドレス、フリット長、及び、前記第1のパケットが到着するまでのサイクル数である先行サイクル数を含む第2のパケットを受信する工程と、
前記第2のパケットに含まれる前記第1のパケットの宛先アドレスを参照して前記第1のパケットのルーティングを行う工程と、
前記第2のパケットに含まれる前記第1のパケットの宛先アドレス、フリット長、及び、先行サイクル数を参照して前記第1のパケットに対するアービトレーションを行い、前記第1のパケットが到着するタイミングにおいて、前記第1のパケットのフリット長に対応するサイクル数の出力チャネルを予約する工程と、
前記ルーティング及び前記アービトレーションにしたがって前記第1のパケットをバッファに格納することなく転送する工程と、
前記第2のパケットに含まれる先行サイクル数と前記アービトレーションに要するサイクル数との大小関係に応じて、前記第2のパケットを後段のルータに転送するか否かを判定する工程と、を含む、ルーティング方法。 - 前記ルータ装置が、受信時の前記第2のパケットに含まれる先行サイクル数を、前記アービトレーションに要するサイクル数だけ減算した後、前記第2のパケットを後段のルータに転送する工程を含む、請求項8に記載のルーティング方法。
- 前記第2のパケットは、前記第1のパケットの優先度を含み、
前記ルータ装置が、前記優先度に応じて前記アービトレーションを行い、優先度の低い前記第1のパケットの予約を取り消す工程と、
予約を取り消された前記第1のパケットが到着した場合、前記第1のパケットのヘッダ部に含まれる宛先アドレスに基づいてルーティングを行い、バッファに格納された前記第1のパケットを出力すべき出力チャネルが空いているか否かを判定し、空いているときに該出力チャネルを前記第1のパケットに割り当てる工程と、を含む、請求項8又は9に記載のルーティング方法。 - 宛先アドレスを有するヘッダ部とデータ部を含む第1のパケットを受信する前に、前記第1のパケットの宛先アドレス、フリット長、及び、前記第1のパケットが到着するまでのサイクル数である先行サイクル数を含む第2のパケットを受信する処理と、
前記第2のパケットに含まれる前記第1のパケットの宛先アドレスを参照して前記第1のパケットのルーティングを行う処理と、
前記第2のパケットに含まれる前記第1のパケットの宛先アドレス、フリット長、及び、先行サイクル数を参照して前記第1のパケットに対するアービトレーションを行い、前記第1のパケットが到着するタイミングにおいて、前記第1のパケットのフリット長に対応するサイクル数の出力チャネルを予約する処理と、
前記ルーティング及び前記アービトレーションにしたがって前記第1のパケットをバッファに格納することなく転送する処理と、
前記第2のパケットに含まれる先行サイクル数と前記アービトレーションに要するサイクル数との大小関係に応じて、前記第2のパケットを後段のルータに転送するか否かを判定する処理と、をコンピュータに実行させる、プログラム。 - 受信時の前記第2のパケットに含まれる先行サイクル数を、前記アービトレーションに要するサイクル数だけ減算した後、前記第2のパケットを後段のルータに転送する処理を前記コンピュータに実行させる、請求項11に記載のプログラム。
- 前記第2のパケットは、前記第1のパケットの優先度を含み、
前記優先度に応じて前記アービトレーションを行い、優先度の低い前記第1のパケットの予約を取り消す処理と、
予約を取り消された前記第1のパケットが到着した場合、前記第1のパケットのヘッダ部に含まれる宛先アドレスに基づいてルーティングを行い、バッファに格納された前記第1のパケットを出力すべき出力チャネルが空いているか否かを判定し、空いているときに該出力チャネルを前記第1のパケットに割り当てる処理とを、前記コンピュータに実行させる、請求項11又は12に記載のプログラム。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2011506070A JP5488589B2 (ja) | 2009-03-24 | 2010-03-24 | ルータ装置、半導体集積回路装置、ルーティング方法及びプログラム |
Applications Claiming Priority (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2009072507 | 2009-03-24 | ||
JP2009072507 | 2009-03-24 | ||
PCT/JP2010/055032 WO2010110289A1 (ja) | 2009-03-24 | 2010-03-24 | ルータ装置、半導体集積回路装置、ルーティング方法及びプログラム |
JP2011506070A JP5488589B2 (ja) | 2009-03-24 | 2010-03-24 | ルータ装置、半導体集積回路装置、ルーティング方法及びプログラム |
Publications (2)
Publication Number | Publication Date |
---|---|
JPWO2010110289A1 JPWO2010110289A1 (ja) | 2012-09-27 |
JP5488589B2 true JP5488589B2 (ja) | 2014-05-14 |
Family
ID=42780983
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2011506070A Expired - Fee Related JP5488589B2 (ja) | 2009-03-24 | 2010-03-24 | ルータ装置、半導体集積回路装置、ルーティング方法及びプログラム |
Country Status (2)
Country | Link |
---|---|
JP (1) | JP5488589B2 (ja) |
WO (1) | WO2010110289A1 (ja) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP5943115B1 (ja) * | 2015-03-27 | 2016-06-29 | 日本電気株式会社 | 集積回路、半導体装置、カード及びデータ転送方法 |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP5741224B2 (ja) * | 2011-05-31 | 2015-07-01 | 富士通株式会社 | 通信制御方法及び中継装置 |
US8885510B2 (en) * | 2012-10-09 | 2014-11-11 | Netspeed Systems | Heterogeneous channel capacities in an interconnect |
US10673745B2 (en) * | 2018-02-01 | 2020-06-02 | Xilinx, Inc. | End-to-end quality-of-service in a network-on-chip |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2003152774A (ja) * | 2001-11-19 | 2003-05-23 | Matsushita Electric Ind Co Ltd | 可変長パケット交換機 |
JP2005032225A (ja) * | 2003-05-07 | 2005-02-03 | Agilent Technol Inc | 複数の相互接続デバイス間のデータ通信を制御する方法及びシステム |
JP2007013412A (ja) * | 2005-06-29 | 2007-01-18 | Mitsubishi Electric Corp | パケット読み出し制御装置 |
JP2007110706A (ja) * | 2005-10-12 | 2007-04-26 | Samsung Electronics Co Ltd | AXIプロトコルを適用したNoCシステム |
-
2010
- 2010-03-24 JP JP2011506070A patent/JP5488589B2/ja not_active Expired - Fee Related
- 2010-03-24 WO PCT/JP2010/055032 patent/WO2010110289A1/ja active Application Filing
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2003152774A (ja) * | 2001-11-19 | 2003-05-23 | Matsushita Electric Ind Co Ltd | 可変長パケット交換機 |
JP2005032225A (ja) * | 2003-05-07 | 2005-02-03 | Agilent Technol Inc | 複数の相互接続デバイス間のデータ通信を制御する方法及びシステム |
JP2007013412A (ja) * | 2005-06-29 | 2007-01-18 | Mitsubishi Electric Corp | パケット読み出し制御装置 |
JP2007110706A (ja) * | 2005-10-12 | 2007-04-26 | Samsung Electronics Co Ltd | AXIプロトコルを適用したNoCシステム |
Non-Patent Citations (1)
Title |
---|
JPN6010027893; Li-Shiuan Peh, Willaim J.Dally: 'Flit-Reservation Flow Control' Proceedings,Sixth International Symposium on High-Performance Computer Architecture , 20000112, pp.73-84 * |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP5943115B1 (ja) * | 2015-03-27 | 2016-06-29 | 日本電気株式会社 | 集積回路、半導体装置、カード及びデータ転送方法 |
US10027579B2 (en) | 2015-03-27 | 2018-07-17 | Nec Corporation | Integrated circuit, semiconductor device, card and data transfer method |
Also Published As
Publication number | Publication date |
---|---|
WO2010110289A1 (ja) | 2010-09-30 |
JPWO2010110289A1 (ja) | 2012-09-27 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP2280513B1 (en) | Router, information processing device having said router, and packet routing method | |
JP4808513B2 (ja) | システムオンチップの大域的非同期通信アーキテクチャ | |
JP5320512B2 (ja) | 中継器、中継器の制御方法、およびプログラム | |
CN104158738A (zh) | 一种低缓冲区片上网络路由器及路由方法 | |
US20070180310A1 (en) | Multi-core architecture with hardware messaging | |
US20140314076A1 (en) | Credit flow control scheme in a router with flexible link widths utilizing minimal storage | |
JP5793690B2 (ja) | インタフェース装置、およびメモリバスシステム | |
JP5552196B2 (ja) | 中継装置、中継装置の制御方法、およびコンピュータプログラム | |
US20150071282A1 (en) | Architecture and method for hybrid circuit-switched and packet-switched router | |
JP5488589B2 (ja) | ルータ装置、半導体集積回路装置、ルーティング方法及びプログラム | |
EP1728359A1 (en) | Integrated circuit and method for packet switching control | |
CN114679415A (zh) | 一种满足AXI5-Lite协议标准的无阻塞banyan网络 | |
Nambinina et al. | Extension of the lisnoc (network-on-chip) with an axi-based network interface | |
KR100901691B1 (ko) | 메쉬-스타 혼합 온칩 네트워크 통신 시스템 및 그의 통신방법 | |
JP2009194510A (ja) | 優先調停システム及び優先調停方法 | |
Choudhary | Bursty Communication Performance Analysis of Network-on-Chip with Diverse Traffic Permutations | |
Salcic et al. | A time predictable heterogeneous multicore processor for hard real-time GALS programs | |
Lee et al. | Design of a feasible on-chip interconnection network for a chip multiprocessor (cmp) | |
Salah et al. | Design of a 2d mesh-torus router for network on chip | |
WO2006048826A1 (en) | Integrated circuit and method for data transfer in a network on chip environment | |
WO2020087248A1 (zh) | 多核芯片数据总线布线结构和数据发送的方法 | |
Berejuck et al. | Adding mechanisms for QoS to a network-on-chip | |
Rekha et al. | Analysis and Design of Novel Secured NoC for High Speed Communications | |
Sahu | Bidirectional Network-on-Chip Router Implementation Using VHDL | |
Prasad et al. | Efasbran: error free adaptive shared buffer router architecture for network on chip |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20130206 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20131029 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20140106 |
|
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: 20140128 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20140210 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 5488589 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
LAPS | Cancellation because of no payment of annual fees |