JP7455137B2 - プロセッサコア間での改善されたデータ転送のための方法および装置 - Google Patents
プロセッサコア間での改善されたデータ転送のための方法および装置 Download PDFInfo
- Publication number
- JP7455137B2 JP7455137B2 JP2021556205A JP2021556205A JP7455137B2 JP 7455137 B2 JP7455137 B2 JP 7455137B2 JP 2021556205 A JP2021556205 A JP 2021556205A JP 2021556205 A JP2021556205 A JP 2021556205A JP 7455137 B2 JP7455137 B2 JP 7455137B2
- Authority
- JP
- Japan
- Prior art keywords
- data
- node
- processing core
- packet
- core
- 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.)
- Active
Links
- 238000000034 method Methods 0.000 title claims description 27
- 238000012546 transfer Methods 0.000 title description 5
- 238000012545 processing Methods 0.000 claims description 104
- 238000004891 communication Methods 0.000 claims description 10
- 238000003491 array Methods 0.000 claims description 6
- 238000010586 diagram Methods 0.000 description 25
- 230000009471 action Effects 0.000 description 18
- 230000006872 improvement Effects 0.000 description 9
- 230000008878 coupling Effects 0.000 description 8
- 238000010168 coupling process Methods 0.000 description 8
- 238000005859 coupling reaction Methods 0.000 description 8
- 230000003139 buffering effect Effects 0.000 description 7
- 241000238876 Acari Species 0.000 description 6
- 230000008901 benefit Effects 0.000 description 6
- 239000000872 buffer Substances 0.000 description 5
- 238000013461 design Methods 0.000 description 5
- 230000008569 process Effects 0.000 description 5
- XUIMIQQOPSSXEZ-UHFFFAOYSA-N Silicon Chemical compound [Si] XUIMIQQOPSSXEZ-UHFFFAOYSA-N 0.000 description 3
- 230000005540 biological transmission Effects 0.000 description 3
- 238000005516 engineering process Methods 0.000 description 3
- 238000003780 insertion Methods 0.000 description 3
- 230000037431 insertion Effects 0.000 description 3
- 239000000463 material Substances 0.000 description 3
- 229910052710 silicon Inorganic materials 0.000 description 3
- 239000010703 silicon Substances 0.000 description 3
- 239000000758 substrate Substances 0.000 description 3
- 235000014676 Phragmites communis Nutrition 0.000 description 2
- 238000007792 addition Methods 0.000 description 2
- 230000001934 delay Effects 0.000 description 2
- 230000006870 function Effects 0.000 description 2
- 230000010354 integration Effects 0.000 description 2
- 238000004519 manufacturing process Methods 0.000 description 2
- 230000009466 transformation Effects 0.000 description 2
- 239000004386 Erythritol Substances 0.000 description 1
- 235000008694 Humulus lupulus Nutrition 0.000 description 1
- 230000006399 behavior Effects 0.000 description 1
- 230000000903 blocking effect Effects 0.000 description 1
- 238000012937 correction Methods 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000008929 regeneration Effects 0.000 description 1
- 238000011069 regeneration method Methods 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L49/00—Packet switching elements
- H04L49/15—Interconnection of switching modules
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L49/00—Packet switching elements
- H04L49/30—Peripheral units, e.g. input or output ports
- H04L49/3063—Pipelined operation
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L69/00—Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
- H04L69/22—Parsing or analysis of headers
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F15/00—Digital computers in general; Data processing equipment in general
- G06F15/76—Architectures of general purpose stored program computers
- G06F15/78—Architectures of general purpose stored program computers comprising a single central processing unit
- G06F15/7807—System on chip, i.e. computer system on a single chip; System in package, i.e. computer system on one or more chips in a single package
- G06F15/7825—Globally asynchronous, locally synchronous, e.g. network on chip
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/28—Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
- H04L12/42—Loop networks
- H04L12/437—Ring fault isolation or reconfiguration
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/74—Address processing for routing
- H04L45/745—Address table lookup; Address filtering
-
- 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
- H04L2212/00—Encapsulation of packets
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer Security & Cryptography (AREA)
- Computer Hardware Design (AREA)
- General Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computing Systems (AREA)
- Microelectronics & Electronic Packaging (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
- Multi Processors (AREA)
Description
本出願は、「Data Transfer Between The Cores In A Microprocessor」と題された、2018年12月12日に出願された米国仮特許出願第62/778,354号明細書の優先権を主張し、その全体が参照により本明細書に組み込まれている。開示されているシステムおよび動作方法は、以下の特許において開示されている主題にも関連し、以下の特許は、それらの全体が参照により本明細書に組み込まれている:(1)Coke S.Reedを発明者として指定する、「A Multiple Level Minimum Logic Network」と題された米国特許第5,996,020号明細書、(2)John Hesseを発明者として指定する、「A Scalable Low Latency Switch for Usage in an Interconnect Structure」と題された米国特許第6,289,021号明細書、(3)John Hesseを発明者として指定する、「Multiple Path Wormhole Interconnect」と題された米国特許第6,754,207号明細書、Coke S.ReedおよびDavis Murphyを発明者として指定する、「Parallel Data Switch」と題された米国特許第9,954,797号明細書。
1)パケットPKTが、線328を通ってDDのノードUに入り、PKTのターゲットのリーディングアドレスビットが(b0,b1,b2,...,bK-1,1)である場合、a)線330上にビジー信号がないとき、Uのロジックは、パケットPKTを線326に向かわせ、または、b)線330上にビジー信号があるとき、Uのロジックは、線324を通ってネットワーク内の別のダブルダウンスイッチへパケットPKTを向かわせる。いずれの場合にも、Uのロジックは、線326が使用中であることを示すために、ノードLへ線344上でビジー信号を送る。
2)パケットPKTが、線328を通ってDDのノードUに入り、PKTのターゲットのリーディングアドレスビットが、(b0,b1,b2,...,bK-1,0)である場合、a)線344上にビジー信号がないとき、Uのロジックは、線342を通ってパケットPKTをノードLへ向かわせ、その結果、Lのロジックは、PKTを線336へ送ることができ、または、b)線344上にビジー信号があるとき、Uのロジックは、線324を通ってネットワーク内の別のダブルダウンスイッチへパケットPKTを向かわせる。線330上にビジー信号がある場合のみ、線326が使用中であることを示すために、Uのロジックは、線344上でノードLへビジー信号を送る。
1)パケットPKTが、線338を通ってDDのノードLに入り、リードが、PKTのターゲットのリーディングアドレスビットが(b0,b1,b2,...,bK-1,0)である場合、a)線348上にビジー信号がないとき、Lのロジックは、パケットPKTを線336へ向かわせ、または、b)線348上にビジー信号があるとき、Lのロジックは、線334を通ってネットワーク内の別のダブルダウンスイッチへパケットPKTを向かわせる。いずれの場合にも、Lのロジックは、線336が使用中であることを示すために、ノードUへ線344上でビジー信号を送る。
2)パケットPKTが、線338を通ってDDのノードLに入り、PKTのターゲットのリーディングアドレスビットが(b0,b1,b2,...,bK-1,1)である場合、a)線344上にビジー信号がないとき、Lのロジックは、線342を通ってパケットPKTをノードUへ向かわせ、その結果、Uのロジックは、PKTを線326へ送ることができ、または、b)線344上にビジー信号があるとき、Lのロジックは、線334を通ってネットワーク内の別のダブルダウンスイッチへパケットPKTを向かわせる。線348上にビジー信号がある場合のみ、線336が使用中であることを示すために、Lのロジックは、ノードUへ線344上でビジー信号を送る。
1)組み込まれている米国特許第6,289,021号明細書および第6,754,207号明細書において構築されるシステムにおいて可能であったよりも高い帯域幅を可能にする、システムを通じたパラレルデータパスの追加、
2)各ロジックノードにおいてFIFOを有するデータパスの生成を同時に可能にし、FIFOが高いクロックレートを使用する能力を含むという利点を有する、変形されたタイミングシステム、3)異なるレベルのノード間でパケットフリットが移動するために1つのティックのみを採用し、同じレベルのノード間でパケットフリットが移動するために2つのティックを採用するタイミングシステム。有利には、図2AのFIFO線214が除去される。
A.1)F0のビットHWに基づいて、パスがL4からPKTのターゲット出力まで存在するかどうかをL1が決定し、および、2)L1が線412を自由に使用することができることをL3からの制御信号が示す場合、L1は、時間TS+1においてM3を通ってL4に到達するようにPKTの第1のフリットF0を送る。
B.上記条件1)および2)の一方または両方が満たされない場合、L1は、PKTの第1のフリットF0を時間TS+1においてD1に到達し、続いて、時間TS+2(第1のフリットがL4に到達した後の1つの時間のユニット)においてL2に到達するように、D1に送る。
例示的な相互接続装置は、複数の論理ユニットと、論理ユニットLA624、LC724、およびLD710を含む三つ子状に配置されたものと考慮され得る論理ユニットの選択された構成において複数の論理ユニットを結合する複数のバスとを備える。論理ユニットLA624およびLC724は、論理ユニットLD710へデータを送るように配置される。論理ユニットLC724は、論理ユニットLD710へデータを送るための、論理ユニットLA624に対する優先度を有する。サブパケットへ分割されるパケットPKT、論理ユニットLA624におけるパケットPKTのサブパケット、およびターゲットを特定するパケットのいずれかについて、(A)論理ユニットLC724は、論理ユニットLD710へパケットPKTのサブパケットを送り、論理ユニットLA624は、論理ユニットLD710へパケットPKTのサブパケットを送らない。(B)論理ユニットLC724は、論理ユニットLD710へデータのサブパケットを送らず、論理ユニットLA624は、論理ユニットLD710へパケットPKTのサブパケットを送るか、または、(C)論理ユニットLC724は、論理ユニットLD710へデータのサブパケットを送らず、論理ユニットLA624は、論理ユニットLD710へパケットPKTのサブパケットを送らない。
1)第1のフリットF0が、論理ユニットLAに到達しない。
2)ちょうど1つの第1のフリットが、レベルWの論理素子から論理ユニットLAに到達するが、第1のフリットF0は、レベルW+1の論理素子から論理ユニットLAに到達しない。
3)ちょうど1つの第1のフリットが、レベルW+1のノードから論理ユニットLAに到達するが、第1のフリットF0は、レベルWのノードから論理ユニットLAに到達しない。
1)その第1のフリットF0が時間TにDC内にあるパケットは、論理ユニットLDへ進むための優先度1を有し、そのようなパケットは常に、時間TS+1に論理ユニットLDに到達することになる。
2)その第1のフリットF0が時間TSに論理ユニットLA624内にあり、かつ、そのF0ビットHWが1であるパケットは、優先度2を有し、時間TS+1に論理ユニットLDに到達する優先度1のパケットが無ければ、バー状態に設定されたスイッチ602を通って進んで、時間TS+1に論理ユニットLDに到達することになる。および
3)その第1のフリットF0が時間TSに論理ユニットLB614内にあり、かつ、そのF0ビットHWが1であるパケットは、優先度3を有し、優先度1または優先度2のパケットが時間TS+1に論理ユニットLDに到達しなければ、クロス状態に設定されたスイッチ602通って進んで、時間TS+1に論理ユニットLDに到達することになる。
1)その第1のフリットF0が時間TSに遅延DE内にあるパケットは、論理LFへ進むための優先度1を有し、そのようなパケットは常に、時間TS+1に論理LFに到達することになる。
2)その第1のフリットF0が時間TSに論理LB614内にあり、かつ、そのF0ビットHWが0であるパケットは、優先度2を有し、時間TS+1に論理LFに到達する優先度1のパケットが無ければ、バー状態に設定されたスイッチ602を通って進んで、時間TS+1に論理LFに到達することになる。および
3)その第1のフリットFaが時間TSに論理LA624内にあり、かつ、そのF0ビットHWが0であるパケットは、優先度3を有し、時間TS+1にLFに到達する優先度1または2のパケットが無ければ、クロス状態に設定されたスイッチ602を通って進んで、時間TS+1に論理LFに到達することになる。
1)CR=1は、論理素子LOが論理素子LCからのパケットによってブロックされることを示す。
2)CR=2は、論理素子LOがブロックされず、論理素子LAからパケットを受信することができることを示す。
3)CL=1は、論理素子LBが、バー状態にあるクロスバーを通って論理素子LFへパケットを送っていることを示す。
4)CL=2は、論理素子LFがブロックされず、論理素子LAからパケットを受信することができることを示す。および
5)CL=3は、論理素子LFが、論理素子LEからのパケットによってブロックされることを示す。
1)CR=1は、論理素子LFが論理素子LEからのパケットによってブロックされることを示す。
2)CR=2は、論理素子LFがブロックされず、論理素子LBからパケットを受信することができることを示す。
3)CL=1は、論理素子LAが、バー状態にあるクロスバーを通って論理素子LOへパケットを送っていることを示す。
4)CL=2は、論理素子LOがブロックされず、論理素子LBからパケットを受信することができることを示す。および
5)CL=3は、論理素子LOが論理素子LCからのパケットによってブロックされることを示す。
1)ケース1:パケットPKTAの第1のフリットが、線704上で論理素子LAに到達し、PKTAのヘッダビットHWは、論理素子LDがPKTAのターゲット出力へのパス上にあることを示す1に設定され、論理素子LAレジスタCR=2は、論理素子LDが時間TS+1に論理素子LCからパケットを受信しないであろうことを示す。この場合に、論理素子LAは、信号を線608へ送って、クロスバーをバー状態に設定する。次いで、論理素子LAは、パケットPKTAの第1のフリットをクロスバーを通して送って、時間TS+1に論理素子LDに到達させる。次いで、論理素子LAは、信号を線604を通して送って、論理素子LBのCLレジスタを1に設定する。
2)ケース2:ケース1の条件は発生せず、論理素子LAのCRレジスタは、論理素子LCがパケットを時間TS+1に論理素子LOに到達するように送っていないことを示す2に設定される。この場合に、論理素子LAは、信号を線604を通して送り、論理素子LBのCLレジスタを2に設定する。
3)ケース3:ケース1の条件は発生せず、論理素子LAのCRレジスタは、論理素子LCがパケットを時間TS+1に論理素子LOに到達するように送っていることを示す1に設定される。この場合に、論理素子LAは、信号を線604を通して送り、論理素子LBのCLレジスタを3に設定する。
1)ケース1:パケットPKTsの第1のフリットが、線702上で論理素子LBに到達し、PKTsのヘッダビットHWは0に設定され、論理素子LBレジスタCR=2は、論理素子LFが時間TS+1に論理素子LEからパケットを受信しないであろうことを示す。この場合に、論理素子LBは、クロスバーがバー状態に設定された後に、PKT8の第1のフリットをクロスバーへ送って、クロスバーを通って進ませて、時間TS+1に論理素子LFに到達させる。次いで、論理素子LBは、制御信号を線604を通して送って、論理素子LAのCLレジスタを1に設定する。
2)ケース2:ケース1の条件は発生せず、論理素子LB内のCRレジスタは、論理素子LEがパケットを時間TS+1に論理素子LFに到達するように送っていないことを示す2に設定される。この場合に、論理素子LBは、信号を線606を通して送って、論理素子LAのCLレジスタを2に設定する。
3)ケース3:ケース1の条件は発生せず、論理素子LB内のCRレジスタは、論理素子LEがパケットを時間TS+1に論理素子LFに到達するように送っていることを示す3に設定される。この場合に、論理素子LBは、信号を線606を通して送って、論理素子LAのCLレジスタを3に設定する。
1)ケース1:時間TSに論理素子LAにパケットフリットはなく、論理素子LAにさらなるアクションが必要とされないことを示す。
2)ケース2:パケットPKTAの第1のフリットは、時間TSに論理素子LAに到達した。クロスバーはバー状態にあり、パケットPKTAの第1のフリットは、上述されたようにクロスバーを通って送られ、論理素子LAにさらなるアクションが必要とされないことを示す。
3)ケース3:パケットPKTAの第1のフリットは、時間TSに論理素子LAに到達した。クロスバーはバー状態にあり、パケットPKTAの第1のフリットは、上述されたような第2のアクションにおいてクロスバーを通って送られず、パケットPKTAの第1のフリットは遅延ユニットDAへ送られるべきであることを示す。したがって、論理素子LAは、PKTAの第1のフリットを遅延ユニットDAへ送る。
4)ケース4:パケットPKTAの第1のフリットは、時間TSに論理素子LAに到達した。クロスバーはクロス状態にあり、PKTAのヘッダビットHWは0に設定され、論理素子LAのレジスタCLは2に設定され、次いで、PKTAの第1のフリットは、クロスバーを通って送られて、時間TS+1に論理素子LFに到達することになる。
5)ケース5:パケットPKTAの第1のフリットは、時間TSに論理素子LAに到達した。クロスバーはクロス状態にあるが、ケース4の条件は発生しない。次いで、PKTAの第1のフリットは、遅延ユニットDAへ送られることになる。
1)ケース1:時間TSに論理素子LB内にパケットフリットが無く、論理素子LBにさらなるアクションが必要とされないことを示す。
2)ケース2:パケットPKTBの第1のフリットは、時間TSに論理素子LBに到達した。クロスバーはバー状態にあり、パケットPKTBの第1のフリットは、上述されたようにクロスバーを通って送られ、論理素子LBにさらなるアクションが必要とされないことを示す。
3)ケース3:パケットPKTBの第1のフリットは、時間TSに論理素子LBに到達した。クロスバーはバー状態にあり、パケットPKTBの第1のフリットは、上述されたような第2のアクションにおいてクロスバーを通って送られず、パケットPKTBの第1のフリットが遅延ユニットDBへ送られるべきであることを示す。
4)ケース4:パケットPKTBの第1のフリットは、時間TSに論理素子LBに到達した。クロスバーはクロス状態にあり、PKTBのヘッダビットHWは1に設定され、論理素子LBのレジスタCLは2に設定され、次いで、PKTBの第1のフリットは、時間TS+1に論理素子LDに到達するようにクロスバーを通って送られることになる。
5)ケース5:パケットPKTBの第1のフリットは、時間TSに論理素子LBに到達した。クロスバーはクロス状態にあるが、ケース4の条件は発生しない。PKTAの第1のフリットは、遅延ユニットDBへ送られることになる。
1)Aは、レベルt=rにあり、
2)BおよびCは、Aへデータを送り、
3)DおよびEは、Aからデータを受信し、
4)Fは、Aへ制御信号を送り、
5)Gは、Aから制御信号を受信し、
6)BおよびDは、レベルTにあり、
7)Bは、Aの直前にあり、
8)Dは、Aの直後にあり、および
9)C、E、FおよびGは、レベルTにない。
1)Aは、ノードN(r、Θ、z)に配置され、
2)Bは、ノードN(r、Θ-1、HT(z))に配置され、
3)Cは、ノードN(r+1、Θ-1、z)に配置され、または相互接続構造の外部にあり、
4)Dは、ノードN(r、Θ+1、hT(z))に配置され、
5)Eは、ノードN(r-1、Θ+1、z)に配置され、または相互接続構造の外部にあり、デバイスFと同じであり、
6)Fは、ノードN(r-1、Θ、HT-1(z))に配置され、または相互接続構造の外部にあり、デバイスEと同じであり、
7)Gは、ノードN(r+1、Θ、hT(z))に配置され、または相互接続構造の外部にある。
Claims (20)
- ネットワークを通ってデータパケットを通信するように構成された相互接続装置であって、前記データパケットは、データパケットを受信するためにターゲット処理コアを識別するアドレスサブパケットを含む複数のサブパケット内に配置され、前記相互接続装置は、
・チップ上のData Vortexスイッチと、
・前記Data Vortexスイッチと同じチップ上の処理コアのアレイと、を含み、前記Data Vortexスイッチは外部のソースからデータを受け取り、及び前記処理コアのアレイは前記Data Vortexスイッチからデータを受信することを特徴とする、相互接続装置。 - 前記処理コアのアレイは、前記ターゲット処理コア及び送信コアを含み、前記送信コアは、前記ターゲット処理コアのロケーションのアドレスが付されたアドレスヘッダと、前記ターゲット処理コアに送られるデータを伴うペイロードと、を含むデータパケットを形成することにより、前記ターゲット処理コアにデータパケットを送ることができることを特徴とする、請求項1に記載の相互接続装置。
- 前記送信コアからのデータパケットは、前記送信コアから前記Data Vortexスイッチに送られ、前記Data Vortexスイッチは、前記アドレスヘッダに基づいて前記データパケットを前記ターゲット処理コアに向けてルーティングすることを特徴とする請求項2に記載の相互接続装置。
- 前記Data Vortexスイッチに送られた前記データパケットは、前記Data Vortexスイッチ内で再構成されず、ワームホール様式で前記Data Vortexスイッチを通過することを特徴とする、請求項3に記載の相互接続装置。
- 前記アドレスヘッダに含まれるビットはフリット内に含まれ、バス幅のデータパス内の前記Data Vortexスイッチを通過することを特徴とする、請求項4に記載の相互接続装置。
- 前記Data Vortexスイッチは、前記Data Vortexスイッチと同じチップの上の処理コアアレイ上の2つ以上の処理コアのコアとコアとの接続、または前記Data Vortexスイッチと異なるチップの上の処理コアアレイ上の2つまたはそれ以上の処理コアのコアとコアとの接続に使用されることを特徴とする請求項5に記載の相互接続装置。
- 送信側処理コアから前記Data Vortexスイッチに送られたデータパケットは、前記ターゲット処理コアの宛先により1つまたは2つのパスを通過し、
(i)前記Data Vortexスイッチと同じチップのアレイ中の送信側処理コアが同じチップの同じアレイ中のターゲット処理コアにデータパケットを送った場合、前記データパケットは、前記Data Vortexスイッチへのパスで送られ、前記送信側処理コアと同じアレイ中の前記ターゲット処理コアに向けて反転する、
(ii)チップ上の送信側処理コアが異なるチップ上の異なるアレイ中のターゲット処理コアにデータパケットを送った場合、前記データパケットは、前記送信側処理コアから前記ターゲット処理コアを含むチップ上の前記Data Vortexスイッチまでのパスで送られ、前記Data Vortexスイッチは、前記データパケットを前記ターゲット処理コアに送ることを特徴とする、請求項6に記載の相互接続装置。 - 単一の処理チップにおける前記処理コアの数を、K>Nである1からKの処理コアと通信する処理チップ上のアレイ内の1からNの処理コアの範囲とすることができることを特徴とする、請求項7に記載の相互接続装置。
- ネットワークを通ってデータパケットを通信するように構成された相互接続装置であって、前記データパケットは、データパケットを受信するためにターゲット処理コアを特定するアドレスサブパケットを含む複数のサブパケット内に配置され、前記相互接続装置は、
・それぞれがData Vortexスイッチ及び処理コアのアレイを含む複数のチップと、
・各Data Vortexスイッチ及び前記複数のチップの各々の上の処理コアの各アレイと通信するマスタData Vortexスイッチと、を含み、前記マスタData Vortexスイッチは、各Data Vortexスイッチまたは処理コアの各アレイの間でデータパケットを通信することを特徴とする、相互接続装置。 - 前記複数のチップのいずれか1つに含まれる前記処理コアのアレイのいずれか1つの中の送信側処理コアは、前記ターゲット処理コアのロケーションを特定するヘッダと、送られる日付を含むペイロードとを有する前記送信側処理コアのコアパケットを形成することにより、前記複数のチップの他の1つの処理コアのアレイに含まれるターゲット処理コアにデータパケットを送るができることを特徴とする、請求項9に記載の相互接続装置。
- 前記データパケットは、前記送信側処理コアから前記マスタData Vortexスイッチへ、前記マスタData Vortexスイッチからターゲット処理コアを含むチップ上の前記Data Vortexスイッチへ、及び前記ターゲット処理コアを含む前記チップ上の前記Data Vortexスイッチから前記ターゲット処理コアへ送られることを特徴とする、請求項10に記載の相互接続装置。
- 前記データパケットは、前記送信側処理コアから前記マスタData Vortexスイッチへ、及び、前記マスタData Vortexスイッチから前記ターゲット処理コアへ送られることを特徴とする、請求項10に記載の相互接続装置。
- 前記データパケットは、前記送信側処理コアから前記送信側処理コアと同じチップ上の前記Data Vortexスイッチへ送られ、及び、前記送信側処理コアと同じチップ上の前記Data Vortexスイッチから、前記データパケットを前記ターゲット処理コアと同じチップ上の前記Data Vortexスイッチへ送られ、または直接前記ターゲット処理コアへ送ることができる前記マスタData Vortexスイッチへ送られることを特徴とする、請求項10に記載の相互接続装置。
- 前記データパケットは、前記送信側処理コアから前記送信側処理コアと同じ処理コア上の前記Data Vortexスイッチへ、当該Data Vortexスイッチから前記ターゲット処理コアへ直接送られることを特徴とする、請求項10に記載の相互接続装置。
- 各チップ上の前記マスタData Vortexスイッチおよび前記Data Vortexスイッチのいずれもは、パケットの異なるグループが前記スイッチに入るときに、グローバルに設定およびリセットすることを必要としない、ことを特徴とする請求項10に記載の相互接続装置。
- ネットワーク内でデータパケットを通信する方法であって、
データパケットを受信するためのターゲット処理コアを特定するアドレスサブパケットを含む、複数のサブパケット内にデータパケットを配置すること、
Data Vortexスイッチ及び処理コアのアレイを同じチップに置くことと、
外部ソースからのデータを前記Data Vortexスイッチにおいて受信することおよび前記Data Vortexスイッチからのデータを前記処理コアのアレイにおいて受信することと、を含むことを特徴とするデータパケットを通信する方法。 - ターゲットコアのアドレスを含むヘッダと、前記ターゲットコアに送られるデータを含むペイロードとを有する送信コアにおけるデータパケットの形成をさらに含むことを特徴とする、請求項16に記載のデータパケットを通信する方法。
- ネットワーク内でデータパケットを通信する方法であって、
データパケットを受信するためのターゲット処理コアを識別するアドレスサブパケットを含む、複数のサブパケット内に前記データパケットを配置することと、
Data Vortexスイッチ及び処理コアのアレイの両方を複数のチップ上に置くことと、を含み、
・前記複数の各チップ上の前記Data Vortexスイッチおよび処理コアのアレイの両方を、マスタData Vortexスイッチに接続し、前記マスタData Vortexスイッチは、各Data Vortexスイッチまたは処理コアの各アレイとの間でデータパケット通信をすることを特徴とする、データパケットを通信する方法。 - 前記複数のチップのいずれか1つに含まれる前記処理コアのアレイのいずれか1つに含まれる送信側処理コアから、前記複数のチップの他の1つに含まれる処理コアのアレイに含まれるターゲット処理コアにデータパケットを送ることと、前記ターゲット処理コアのロケーションを識別するヘッダと、送られるデータを含むペイロードとを有する前記送信側処理コア用のデータパケットを形成することと、をさらに含むことを特徴とする、請求項18に記載のデータパケットを通信する方法。
- 前記データパケットを、前記送信側処理コアから前記マスタData Vortexスイッチに送り、及び、前記ターゲット処理コアを含むチップ上の前記マスタData Vortexスイッチと、前記ターゲット処理コアを含むチップ上の前記Data Vortexスイッチとから前記ターゲット処理コアへ送ることをさらに含むことを特徴とする、請求項19に記載のデータパケットを通信する方法。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US201862778354P | 2018-12-12 | 2018-12-12 | |
US62/778,354 | 2018-12-12 | ||
PCT/US2019/065967 WO2020123796A1 (en) | 2018-12-12 | 2019-12-12 | Method and apparatus for improved data transfer between processor cores |
Publications (3)
Publication Number | Publication Date |
---|---|
JP2022516204A JP2022516204A (ja) | 2022-02-24 |
JPWO2020123796A5 JPWO2020123796A5 (ja) | 2022-12-12 |
JP7455137B2 true JP7455137B2 (ja) | 2024-03-25 |
Family
ID=71073445
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2021556205A Active JP7455137B2 (ja) | 2018-12-12 | 2019-12-12 | プロセッサコア間での改善されたデータ転送のための方法および装置 |
Country Status (9)
Country | Link |
---|---|
US (1) | US10893003B2 (ja) |
EP (2) | EP4246338A3 (ja) |
JP (1) | JP7455137B2 (ja) |
KR (1) | KR20210096280A (ja) |
CN (1) | CN113383516B (ja) |
CA (1) | CA3123224C (ja) |
IL (1) | IL283870A (ja) |
SG (1) | SG11202106270UA (ja) |
WO (1) | WO2020123796A1 (ja) |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20140341077A1 (en) | 2011-03-25 | 2014-11-20 | Coke S. Reed | Parallel Data Switch |
Family Cites Families (24)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5689677A (en) * | 1995-06-05 | 1997-11-18 | Macmillan; David C. | Circuit for enhancing performance of a computer for personal use |
US5996020A (en) | 1995-07-21 | 1999-11-30 | National Security Agency | Multiple level minimum logic network |
US6289021B1 (en) | 1997-01-24 | 2001-09-11 | Interactic Holdings, Llc | Scaleable low-latency switch for usage in an interconnect structure |
US6754207B1 (en) | 1998-01-20 | 2004-06-22 | Interactic Holdings, Llc | Multiple-path wormhole interconnect |
US6754297B2 (en) | 2002-08-28 | 2004-06-22 | Imaging3, Inc. | Apparatus and method for three-dimensional real-time imaging system |
US7353362B2 (en) * | 2003-07-25 | 2008-04-01 | International Business Machines Corporation | Multiprocessor subsystem in SoC with bridge between processor clusters interconnetion and SoC system bus |
ATE465600T1 (de) | 2004-03-08 | 2010-05-15 | Interactic Holdings Llc | Hochparallele schaltsysteme mit fehlerkorrektur ii |
CN1773957A (zh) * | 2004-09-16 | 2006-05-17 | 因特莱科迪克控股有限公司 | 用于将多个装置互连到同步装置的设备 |
EP1836503A4 (en) * | 2004-12-20 | 2009-09-23 | Interactic Holdings Llc | CONTROLLED CONTROLLED INTERCONNECTION COMPRISING OPTICAL AND WIRELESS APPLICATIONS |
US7805392B1 (en) * | 2005-11-29 | 2010-09-28 | Tilera Corporation | Pattern matching in a multiprocessor environment with finite state automaton transitions based on an order of vectors in a state transition table |
US8531943B2 (en) * | 2008-10-29 | 2013-09-10 | Adapteva Incorporated | Mesh network |
US9479458B2 (en) * | 2010-03-26 | 2016-10-25 | Coke S. Reed | Parallel data switch |
WO2012068171A1 (en) | 2010-11-15 | 2012-05-24 | Reed Coke S | Parallel information system utilizing flow control and virtual channels |
US9432298B1 (en) * | 2011-12-09 | 2016-08-30 | P4tents1, LLC | System, method, and computer program product for improving memory systems |
US8699953B2 (en) * | 2012-03-21 | 2014-04-15 | Texas Instruments Incorporated | Low-latency interface-based networking |
US9424228B2 (en) * | 2012-11-01 | 2016-08-23 | Ezchip Technologies Ltd. | High performance, scalable multi chip interconnect |
CN105378651B (zh) * | 2013-05-24 | 2018-09-18 | 相干逻辑公司 | 具有可编程优化的存储器-网络处理器 |
US9634866B2 (en) * | 2013-09-06 | 2017-04-25 | Intel Corporation | Architecture and method for hybrid circuit-switched and packet-switched router |
CN103746941A (zh) * | 2014-01-18 | 2014-04-23 | 浪潮集团有限公司 | 一种板级互联大数据一体机 |
US10009668B2 (en) * | 2014-12-01 | 2018-06-26 | The Royal Institution For The Advancement Of Learning / Mcgill University | Methods and systems for board level photonic bridges |
EP3400688B1 (en) * | 2016-01-04 | 2020-05-20 | Gray Research LLC | Massively parallel computer, accelerated computing clusters, and two dimensional router and interconnection network for field programmable gate arrays, and applications |
CN108400880B (zh) * | 2017-02-07 | 2020-11-03 | 华为技术有限公司 | 片上网络、数据传输方法和第一交换节点 |
US10587534B2 (en) * | 2017-04-04 | 2020-03-10 | Gray Research LLC | Composing cores and FPGAS at massive scale with directional, two dimensional routers and interconnection networks |
US20200067637A1 (en) * | 2018-08-21 | 2020-02-27 | The George Washington University | Learning-based high-performance, energy-efficient, fault-tolerant on-chip communication design framework |
-
2019
- 2019-12-12 JP JP2021556205A patent/JP7455137B2/ja active Active
- 2019-12-12 KR KR1020217021665A patent/KR20210096280A/ko not_active Application Discontinuation
- 2019-12-12 CN CN201980082986.2A patent/CN113383516B/zh active Active
- 2019-12-12 EP EP23190313.9A patent/EP4246338A3/en active Pending
- 2019-12-12 US US16/712,055 patent/US10893003B2/en active Active
- 2019-12-12 EP EP19897351.3A patent/EP3895381B1/en active Active
- 2019-12-12 SG SG11202106270UA patent/SG11202106270UA/en unknown
- 2019-12-12 WO PCT/US2019/065967 patent/WO2020123796A1/en unknown
- 2019-12-12 CA CA3123224A patent/CA3123224C/en active Active
-
2021
- 2021-06-10 IL IL283870A patent/IL283870A/en unknown
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20140341077A1 (en) | 2011-03-25 | 2014-11-20 | Coke S. Reed | Parallel Data Switch |
US20180241694A1 (en) | 2011-03-25 | 2018-08-23 | Interactic Holdings, Llc | Parallel Data Switch |
Also Published As
Publication number | Publication date |
---|---|
CA3123224A1 (en) | 2020-06-18 |
EP3895381A4 (en) | 2022-09-14 |
IL283870A (en) | 2021-07-29 |
CN113383516B (zh) | 2022-08-02 |
WO2020123796A1 (en) | 2020-06-18 |
CA3123224C (en) | 2023-10-31 |
JP2022516204A (ja) | 2022-02-24 |
CN113383516A (zh) | 2021-09-10 |
KR20210096280A (ko) | 2021-08-04 |
EP3895381A1 (en) | 2021-10-20 |
SG11202106270UA (en) | 2021-07-29 |
US20200195584A1 (en) | 2020-06-18 |
EP4246338A3 (en) | 2023-09-27 |
EP4246338A2 (en) | 2023-09-20 |
EP3895381B1 (en) | 2023-11-29 |
US10893003B2 (en) | 2021-01-12 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US6289021B1 (en) | Scaleable low-latency switch for usage in an interconnect structure | |
US8325715B2 (en) | Internet switch router | |
US7187679B2 (en) | Internet switch router | |
US6754207B1 (en) | Multiple-path wormhole interconnect | |
JP2533223B2 (ja) | 多段通信ネットワ―ク | |
US10630607B2 (en) | Parallel data switch | |
WO2005086912A2 (en) | Scalable network for computing and data storage management | |
CN114185840A (zh) | 一种三维多裸片互连网络结构 | |
JP7455137B2 (ja) | プロセッサコア間での改善されたデータ転送のための方法および装置 | |
US20210112019A1 (en) | Method and apparatus for improved data transfer in big data graph analytics | |
US9479458B2 (en) | Parallel data switch | |
JP2004511992A (ja) | 複数の制御回線を用いた多重最小論理網においてスループットを増大させる拡張可能な装置および方法 | |
JP4613296B2 (ja) | スケーラブルな多重経路ワームホール相互接続網 | |
Jones | The network designer's handbook | |
Kang et al. | Design of an asynchronous switch based on butterfly fat-tree for network-on-chip applications | |
Network | FIG. | |
Sahu | Bidirectional Network-on-Chip Router Implementation Using VHDL | |
WO2006106445A1 (en) | Electronic device and method for input queuing |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20221202 |
|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20221202 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20240111 |
|
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: 20240213 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20240312 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 7455137 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |