JP2009531771A - Method and apparatus for transferring data between a core in an integrated circuit - Google Patents

Method and apparatus for transferring data between a core in an integrated circuit Download PDF

Info

Publication number
JP2009531771A
JP2009531771A JP2009502750A JP2009502750A JP2009531771A JP 2009531771 A JP2009531771 A JP 2009531771A JP 2009502750 A JP2009502750 A JP 2009502750A JP 2009502750 A JP2009502750 A JP 2009502750A JP 2009531771 A JP2009531771 A JP 2009531771A
Authority
JP
Grant status
Application
Patent type
Prior art keywords
data
hub
integrated circuit
core
unit
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
JP2009502750A
Other languages
Japanese (ja)
Inventor
オギルビー、クラレンス、アール.
クールシェヌ、アダム、ジェー.
グッドナウ、ケネス、ジェー.
シャネリー、ポール、エム.
ノーマン、ジェーソン、エム.
ハーディング、ダブリュー.、ライヨン
ベントロン、セバスチャン、ティー.
ミルトン、デイビッド、ダブリュー.
ロッテラ、ジェーソン、イー.
Original Assignee
インターナショナル・ビジネス・マシーンズ・コーポレーションInternational Business Maschines Corporation
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

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L49/00Packet switching elements
    • H04L49/15Interconnection of switching modules
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L49/00Packet switching elements
    • H04L49/10Switching fabric construction
    • H04L49/109Switching fabric construction integrated on microchip, e.g. switch-on-chip
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L49/00Packet switching elements
    • H04L49/25Routing or path finding through a switch fabric
    • H04L49/252Store and forward routing

Abstract

【課題】集積回路内に位置する種々のコア(1−5)の間に通信を提供する方法及び装置を提供する。 A method for providing and apparatus for communication between the various core positioned in an integrated circuit (1-5).
【解決手段】その方法及び装置は、指定された方法に従ってコア(1−5)からの或いはコア(1−5)間での通信を容易にして管理するためにハブ/ルータ(6−10)を使用する。 A the method and apparatus, a hub / router to manage to facilitate communication between or core (1-5) from the core (1-5) according to the specified method (6-10) to use.
【選択図】図1 .FIELD 1

Description

本発明は、集積回路に関し、特に集積回路内に位置する種々のコア間でのデータ転送を容易にする方法及び装置に関する。 The present invention relates to integrated circuits, a method and apparatus that facilitates data transfer between the various core positioned particularly integrated circuit.

半導体における技術的進歩の結果として、消費者はますます小型のより強力な装置を期待するようになった。 As a result of technological advances in semiconductor, consumers increasingly expect more powerful system for a small. これらの機能をサポートするために代表的な集積回路に存在する回路/機能ユニット(コア)の数は天文学的である。 The number of circuit / functional units present typical integrated circuit to support these functions (core) is astronomical. 装置の数が莫大であるために、半導体産業は電力消費、熱放散、ノイズ、及び通信に関連する新しい問題を解決することを余儀なくされた。 For the number of devices is enormous, the semiconductor industry power consumption, heat dissipation, noise, and was forced to solve the new problems related to communication. 1つの関連する問題は、所望の機能を実行する種々のコアの間の通信を提供するために必要なワイヤの数である。 One related problem is the number of wires necessary to provide communication between the various cores to perform the desired function. 過去においては、1つのコアから他のコアへの通信の配線は、ポイント・ツー・ポイント技術を用いて達成されていた。 In the past, the wiring of the communication from one core to another core has been achieved using a point-to-point technique. あいにく、密度が指数関数的に増大するので、ポイント・ツー・ポイント配線は限界に達しようとしている。 Unfortunately, the density increases exponentially, point-to-point wiring is reaching its limits.

従って、濃密にポイント・ツー・ポイント配線をするときに生じる問題に対処しながら1つのコアから他のコアへデータを転送することのできる方法及び装置を持つことは明らかな利益である。 Therefore, it is obvious benefit to have a method and apparatus capable of transferring the dense data from one core while addressing the problems that occur when a point-to-point interconnect to other cores. 本発明は、その様な方法及び装置を提供する。 The present invention provides such a method and apparatus.

本発明は、集積回路内に位置する種々のコアの間の通信を提供する方法及び装置である。 The present invention is a method and apparatus for providing communication between the various core positioned in an integrated circuit. より具体的には、本発明は、指定された方法に従ってコアからの或いはコア間での通信を容易にして管理するためにハブ/ルータを使用する。 More particularly, the present invention uses a hub / router to manage to facilitate communication between or cores from the core according to the specified method.

添付明細書と関連させて図面を参照することにより、本発明はより良く理解され、その数々の目的及び利点は当業者にとってより明らかになるであろう。 By referring to the drawings in conjunction with the accompanying specification, the present invention will be better understood and its numerous objects and advantages will become more apparent to those skilled in the art.

本発明は、集積回路内に存在する種々のコアの間でデータを転送するためのシステム及び方法である。 The present invention is a system and method for transferring data between the various cores present in the integrated circuit. このシステム/方法は、種々のコアの間に戦略的に置かれているハブ/ルータを使用する。 The system / method uses a hub / router that is strategically placed between the various cores. 通信を提供するためのハブ/ルータの動作は図1と関連して詳しく説明される。 Operation of the hub / router for providing communication is described in more detail in connection with FIG.

図1を参照すると、本発明の教示に従う集積回路20内に存在する種々のコア1−5の間でデータを転送するためのハブ・ネットワーク100の例を説明するブロック図が示されている。 Referring to FIG. 1, a block diagram is shown illustrating an example of a hub network 100 for transferring data between the various cores 1-5 present in the integrated circuit 20 in accordance with the teachings of the present invention. この特定の例では、ハブ・ネットワーク100は、特定のデザインに従ってコア1−5間に通信経路を提供するように互いに接続された4つのハブ6−10を含む。 In this particular example, the hub network 100 includes four hub 6-10 connected to each other to provide a communication path between the core 1-5 in accordance with a particular design. 本発明の好ましい実施態様では、ハブは最初にコアから1クロック・サイクルの距離の中に置かれる(例えば、コア1及び4のためのハブ6−7と、コア3及び5のためのハブ9−10と)。 In a preferred embodiment of the present invention, the hub is placed in the first distance of one clock cycle from the core (e.g., a hub 6-7 for the core 1 and 4, the hub 9 for the core 3 and 5 -10 and). 代わりの好ましい実施態様では、ハブはコア1−5の周波数の倍数で動作する。 In an alternative preferred embodiment, the hub operates at a multiple of the frequency of the core 1-5. ハブ6−7の動作のために周波数がどの様に選択されるかに関わらず、それはコア1−5のタイミング要件を満たすのに充分であるべきである。 Regardless of whether the chosen what kind frequency for the operation of the hub 6-7, it should be sufficient to meet the timing requirements of the core 1-5. 種々のコア間でデータを充分に転送するために必要なハブの数がコア間の距離と、冗長経路の所望の数と、システム全体のデザインとに依存することにも留意するべきである。 The distance between the cores in the number of hubs required to adequately transfer data between the various cores, and the desired number of redundant pathways, it should also be noted that depending on the design of the entire system. 従って、この特定の例は、説明を容易にするために用いられているのであって、特定のシステム・インプリメンテーションにおいてサポートされ得るコアの配置或いは数に関しての限定であると見なされるべきではない。 Therefore, this particular example, there is that used for ease of description and should not be regarded as limiting with respect to placement or number of cores that can be supported in a particular system implementation . 通信の提供に関わるハブ6−10のコンポーネントは、図2と関連して詳しく説明される。 Components of the hub 6-10 involved in providing the communications are described in detail in connection with FIG.

図2を参照すると、本発明の好ましい実施態様の教示に従う図1のハブ6を詳しく説明する略図が示されている。 Referring to Figure 2, a schematic diagram illustrating a preferred according to the teachings of the embodiment in detail the hub 6 in Figure 1 of the present invention is shown. ハブ6はハブ7−10を代表しており、従って、それに関して提供される検討はハブ7−10にも同様に当てはまる。 Hub 6 is representative of the hub 7-10, therefore, considered to be provided for it applies equally to the hub 7-10. ハブ6は、受信/送信ユニット202と制御ユニット204とを含む。 Hub 6 includes a receiving / transmitting unit 202 and control unit 204.

受信/送信ユニット202は、隣接する他のハブ7−10又は隣接するコア1−5とやり取りされるデータの受信、記憶、及び送信を行う。 Receiving / transmitting unit 202, receiving the data exchanged with other hub 7-10 or adjacent cores 1-5 adjacent, storing, and sending performed. 受信/送信ユニット202は、受信通信ライン206でデータを受信し、送信通信ライン208でデータを送信する。 Receiving / transmitting unit 202 receives the data at the receiving communication line 206, and transmits the data in transmission communication line 208. 受信/送信ユニット202は、受信通信ライン206を介して受信されたデータを格納し、送信通信ライン208で送信されるデータを一時的に格納しておくためのFIFO(先入れ先出しメモリ・メカニズム)を含む。 Receiving / transmitting unit 202 stores the data received via the receiving communication line 206 includes a FIFO (first-in first-out memory mechanism) for temporarily storing the data transmitted by the transmission communication line 208 . 明瞭性を得るために、受信通信ライン206と送信通信ライン208とは別々のものとして示されている。 To obtain clarity, shown as separate from the receiving communication line 206 and transmits the communication line 208. しかし、これらの通信ライン206−208がタギング方式と共有バス等を用いて実装され得るということに留意するべきである。 However, it should these communication lines 206-208 is noted that may be implemented using a shared bus such as a tagging scheme. 制御ユニット204は、後述されるように受信/送信ユニット202によるデータの受信及び送信を管理する。 The control unit 204 manages the reception and transmission of data by the receiving / transmitting unit 202 as described below.

制御ユニット204は、他の隣接するハブ(7−8)及びコア1−2と種々の信号をやり取りする。 Control unit 204, other adjacent hub (7-8) and exchanging the core 1-2 and various signals. 制御ユニット204によるそれらの信号の受信及び送信は、該信号の各々のための個別通信ラインを用いても、また所望のバス・タイプ構造と組み合わせてタギング方法を用いても、成し遂げられ得る。 Reception and transmission of those signals by the control unit 204, also using individual communication lines for each of the signal, also be used tagging method in combination with the desired bus type structure can be accomplished. 隣接するハブ(7−8)及び隣接するコア(1−2)の各々のために、制御ユニット204は、ステータス/フラッシュ信号204aとハブ選択信号204cとを受信し、選択信号204bとハブ・ステータス/フラッシュ信号204dとを送信する。 For each adjacent hub (7-8) and adjacent the core (1-2), the control unit 204, status / flash signals 204a and receives the hub selection signal 204c, selection signal 204b and hub status / to send a flash signal 204d. 種々の信号、制御ユニット204、及び受信/送信ユニット202の間の相互作用は図3と関連して説明される。 Various signals, the interaction between the control unit 204, and receives / transmit unit 202 will be described in conjunction with FIG.

図3を参照すると、本発明の教示に従って隣接するハブ6−10及びコア1−5からデータを受信するためにハブ6−10により使用される方法を説明するフローチャートが示されている。 Referring to FIG. 3, there is shown a flow chart illustrating a method from the hub 6-10 and core 1-5 adjacent accordance with the teachings of the present invention is used by the hub 6-10 for receiving data. 説明を容易にし、明瞭性を得るために、ハブ7−10の各々で該方法がどのように実行されるかを示す例としてハブ6(図2)が用いられる。 The description to facilitate, in order to obtain clarity, the hub 6 (FIG. 2) is used as an example to indicate whether the method in each of the hub 7-10 how they are executed. データを受信する前に、ハブ6は制御ユニット204を介して隣接するハブ(7−8)又はコア(1−2)のうちの1つからハブ選択信号204cを受信する(ステップ302)。 Before receiving the data, the hub 6 receives from one hub selection signal 204c of the hub (7-8) or core (1-2) adjacent via the control unit 204 (step 302). ハブ選択信号204cに応答して、制御ユニット204は、リクエストされたデータを受信するのに充分なリソース(例えばメモリ)をFIFOが持っているか否か確かめるために受信/送信ユニット202と通信する(ステップ304)。 In response to the hub selection signal 204c, the control unit 204 communicates with the receiver / transmitter unit 202 to ascertain whether FIFO sufficient resources to receive the requested data (e.g., memory) has ( step 304). リクエストされたデータを受信して処理するのに充分なリソースをFIFOが持っていなければ、制御ユニット204は、ハブ6が現在ビジーであるという表示を、ハブ・ステータス/フラッシュ信号204dを介して、リクエストをしている隣接するハブ7−8(ステップ304)又はコア(1−2)(ステップ304)に送る(ビジー信号の処理は、ハブによるデータの送信と関連して説明される(すなわち、図4))。 Unless the FIFO with sufficient resources to receive and process the requested data, the control unit 204, an indication that the hub 6 is currently busy through a hub status / flush signal 204d, processing hub 7-8 sends (step 304) or core (1-2) (step 304) (the busy signal to adjacent is the request will be described in connection with the transmission of data by the hub (i.e., Figure 4)). しかし、リクエストされたデータを受信して処理するのに充分なリソースをFIFOが持っていれば、制御ユニット204は、リクエストされたデータをハブ6が受信できるという表示をハブ・ステータス/フラッシュ信号204dを介して送る。 However, if the FIFO is with sufficient resources to receive and process the requested data, the control unit 204, hub an indication that the requested data can be received hub 6 is status / flush signal 204d send it via a. すると、隣接するハブ(7−8)又はコア(1−2)は、図4と関連して記述されるプロセスに従ってデータを転送し始める。 Then, adjacent the hub (7-8) or core (1-2) starts to transfer the data according to the process described in connection with FIG.

本発明の好ましい実施態様では、同じデータを同時に送信するために複数のハブが使用され得る(例えば、そのデータの、コア1−5のうちの1つによる受信が重要であるとき)ことに留意するべきである。 In a preferred embodiment of the present invention, the plurality of hubs in order to transmit the same data at the same time can be used (e.g., the data, when received by one of the cores 1-5 are important) particular note It should be to. 一般に、データの送信は、個々に転送されて受信時に再組み立てされ得るコンポーネントにデータを分割するためにパケット又は他の同様のタイプのデータ構造を用いることによって成し遂げられ得る。 Generally, transmission of data can be accomplished by the use of packets or other similar types of data structures in order to divide the data into components that may be reassembled upon receipt is transferred individually. 従って、同じデータの複数の送信があるときには、宛先コア1−5は、同じデータの異なるセットを識別して古くなったデータ(ステール・データ)を何時捨てるか識別できなければならない。 Therefore, when there are multiple transmissions of the same data, the destination core 1-5 shall data outdated identify different sets of the same data (stale data) can be identified what time discard. 本発明は、データの特定のセットを特定するために一意の識別子を使用することによってこの要件を成し遂げ、データの各パケットに(例えばヘッダに)、それが各々の前のハブ6−10により受信された時刻に従ってタイム・スタンプを添付する。 The present invention, accomplished this requirement by using the unique identifier to identify a particular set of data, (for example header) to each packet of data, it receives the hub 6-10 before each attach a time stamp according to the time. データの複数のセットが宛先コア1−5への途上にある場合、宛先コア1−5は、それぞれが受信した最初のパケットを調べ、一意の識別子及びタイム・スタンプを記録する。 If multiple sets of data is in developing to the destination core 1-5, the destination core 1-5, respectively examines the first packet received, records the unique identifier and time stamp. 同じデータのその後に受信された重複セット(最初に受信されたパケットのそれとは異なる一意の識別子を有するパケット)は無視され、送信側ハブ6−10にフラッシュ信号が送られる。 Then the received duplicate the same set of data (packets with different unique identifier to that of the first received packet) is ignored, the flash signal is sent to the sender hub 6-10. フラッシュ信号の処理は以下で説明される。 Processing of the flash signal is described below.

隣接するハブ(6−10)又はコア(1−5)から前にフラッシュ信号が受信されていたならば、制御ユニット204は、受信された第1パケットの中の一意識別子を比較し(ステップ306)、もしそれが該フラッシュ信号中の識別子のそれと一致するならば、データを送信している隣接するハブ7−8にフラッシュ信号が送られ、該フラッシュ識別子を有する新たに受信されたデータは無視される(ステップ308)。 If the flash signal before from the hub (6-10) or core (1-5) adjacent has been received, the control unit 204 compares the unique identifier in the first packet received (step 306 ), if it matches that of the identifier in said flush signal, a flash signal to the hub 7-8 adjacent transmitting data is sent, the newly received data is ignored with the flash identifier is (step 308). フラッシュ信号の受信の処理は、ハブ6−10によるデータの送信に関する図4の記述と関連して説明される。 Processing of the received flash signal is described in connection with the description of FIG. 4 relates to transmission of data by the hub 6-10.

しかし、最初に受信されたパケットの中の識別子がフラッシュ識別子のそれと一致しなければ、そのデータ/パケットはFIFOに格納される(ステップ314)。 However, if the identifier in the first received packet matches with that of flash identifier, the data / packet is stored in FIFO (step 314). もしハブ6がハブ選択信号204cを介してなお選択されているならば(すなわち、まだ他にあるデータが受信されなければならないならば)、処理はステップ302に進んで、そのポイントから該方法を繰り返す(ステップ316)。 If the hub 6 is Incidentally selected via the hub selection signal 204c (i.e., if still must be received data in another), the process proceeds to step 302, the method from the point repeated (step 316). しかし、ハブ6が選択されていなければ、ハブ6が再び選択されるまで処理は終了する(ステップ318)。 However, unless the hub 6 is selected, the processing to the hub 6 is selected again ends (step 318).

図4を参照すると、本発明の教示に従って前に受信されたデータを送信するためにハブ6−10により使用されるステップを説明するフローチャートが示されている。 Referring to FIG. 4, a flowchart illustrating the steps used by the hub 6-10 to transmit data received before in accordance with the teachings of the present invention is shown. もしデータがFIFO中に存在するならば(ステップ402)、制御ユニット204により、該データが優先順位付け方式インジケータを含んでいるか否かを判定するために該データを調べることから処理が開始される。 If data is present in the FIFO (step 402), the control unit 204, the process begins by examining the data to determine whether the data contains a prioritization scheme indicator . 優先順位付け方式インジケータは、例えば、処理に関してのそのデータの優先権を順位付けするパケットのヘッダ内の表示であり得る。 Prioritization scheme indicator can be, for example, display in the header of a packet to rank the priority of the data with respect to processing. より具体的には、優先権は順位付けされ得、その指定された順位に依存して、ハブ6−10はデータが宛先コア1−5に最も有利な態様で到達するように同じデータの複数のコピーを送信する能力を有する。 More specifically, priority obtained are ranked, depending on the designated rank, a plurality of the same data as the hub 6-10 data arrives in the most advantageous manner the destination core 1-5 It has the ability to of transmitting a copy. 本発明の好ましい実施態様では、データが所定のランク/レベルの優先順位付け方式を有するとき、送信側ハブ6−10は、そのデザイン・インプリメンテーションに依存して隣接するハブ6−10の全て又はそのうちの幾つかに複数のコピーを送信する(ステップ404)。 In a preferred embodiment of the present invention, when the data having a prioritization scheme of a given rank / level sender hub 6-10, all hubs 6-10 adjacent depending on its design implementation or send multiple copies some of which (step 404).

制御ユニット204は、選択信号204bを介してデータを受信する1つ又は複数の隣接するハブ6−10を選択する(この信号は各々の隣接するハブ6−10に送信される)(ステップ406−406n)。 The control unit 204 selects the hub 6-10 one or a plurality of adjacent receiving data via a selection signal 204b (this signal is transmitted to the hub 6-10 each adjacent) (step 406- 406n). 1つ又は複数の隣接するハブ6−10の選択は、加重判定に基づくこともできる。 Selection of one or more adjacent hub 6-10 may also be based on the weighted decision. 例えば、データ送信の最初の試みは第1の好ましい隣接するハブ6−10に対して行われる。 For example, the first attempt of the data transmission is performed with respect to the first preferred adjacent hub 6-10. もしその隣接するハブ6−10がビジーであったならば、データを送信する試みは次の好ましい隣接するハブ6−10に対して行われ、以降同様に行われ得る。 If the adjacent hub 6-10 was busy if an attempt to send the data is performed with respect to the hub 6-10 of the following preferred neighbor, it may likewise take place later.

1つ以上の隣接するハブ6−10又はコア1−5からステータス/フラッシュ信号204aを受信すると、制御ユニット204は、選択された隣接ハブ6−10が使用可能であるか否か判定するためにそのステータス・フラッシュ信号を調べる。 Upon receiving the one or more adjacent status / flush signal 204a from the hub 6-10 or core 1-5, the control unit 204, to determine whether the adjacent hub 6-10 selected is available investigate the status flash signal. もしステータス/フラッシュ信号204aが選択された隣接するハブ6−10が現在使用不能であることを示しているならば(ステップ408)、使用される特定の方式に依存して、制御ユニット204は、所定期間待ってから選択信号204bを介して隣接するハブ6−10を再び選択しようと試みるか、或いは選択信号204bを用いて再び次の加重されている隣接ハブ6−10を試みる(ステップ410)。 If If hub 6-10 adjacent to status / flush signal 204a is selected indicates that it is currently unavailable (step 408), depending on the particular method used, the control unit 204, or attempts to reselect the hub 6-10 adjacent via a selection signal 204b waits a predetermined time period, or attempts to adjacent hub 6-10 being weighted again follows using a selection signal 204b (step 410) . 次の加重ハブ6−10を使用する試みは、垂直経路(図示されている)を下って進んで各加重ハブ6−10を次々に試み、或いはステップ406の場合と同様に水平に(平行に)進んで同じデータの複数のセットを発進させることができる(図示されていない)。 Attempts to use the following weighted hub 6-10, willing attempted one after each weighted hub 6-10 down the vertical path (as shown), or horizontally as in step 406 (parallel to ) willing can be started a plurality of sets of the same data (not shown).

もし制御ユニット204が選択された隣接するハブ6−10が使用可能であるという表示を受け取ったならば(ステップ412)、制御ユニット204は送信ライン208を介してデータを(パケット等で)隣接するハブ6−10又はコア1−5に送信する。 If If the control unit 204 receives an indication that the hub 6-10 adjacent selected is available (step 412), the control unit 204 of the data through the transmission line 208 (in packets, etc.) adjacent transmitting to the hub 6-10 or core 1-5. パケットを送信した後、制御ユニット204は、隣接するハブ6−10又はコア1−2に転送されるべき関連データが他にあるか否かを判定する(ステップ414)。 After sending the packet, the control unit 204 determines whether the associated data to be transferred to the adjacent hub 6-10 or core 1-2 is in another (step 414).

このとき、制御ユニット204がステータス/フラッシュ信号204aを介して隣接するハブ6−10又はコア1−5からフラッシュ表示を受け取り得るということがあり得る。 At this time, the control unit 204 may be said that may receive a flash display from the hub 6-10 or core 1-5 adjacent to each other via the status / flush signal 204a. フラッシュ信号は前述されたように送信されるデータの特定のインスタンス/セットを特定するために使われるインジケータと一致するのに充分なインジケータを含むであろう。 Flush signal will contain sufficient indicator to match the indicator is used to identify a particular instance / set of data to be transmitted as described above.

フラッシュ信号が受信されたならば、制御ユニット204は、FIFOにまだペンディングしている該フラッシュ信号で特定されているデータをフラッシュする。 If the flash signal has been received, the control unit 204 flushes data identified in said flush signal that still pending in FIFO. それに加えて、現在特定されているステール・データの追加部分をいずれかの先行するハブ6−10が送信したならばフラッシュ識別子は所定期間保存される(ステップ414)。 In addition, the hub 6-10 preceding any additional portions of the stale data currently identified flash identifier if sent is stored a predetermined time period (step 414). 送信されるべき関連データがもう無いか或いはフラッシュ信号の処理が完了したならば、プロセスはステップ416で終了する。 If relevant data to be transmitted is processed in no more or flush signal has been completed, the process ends at step 416.

本発明の作用及び構成は以上の記述から明らかであると思われる。 Operation and construction of the present invention is believed to be apparent from the foregoing description. 図示され記述された方法及びシステムは好ましいものとして述べられているが、請求項で定義されている本発明の範囲から逸脱せずに種々の変更または改変あるいはその両方をなし得ることは明白であろう。 The methods and systems described is shown has been described as being preferred, obvious der to changes may be made or modified, or both without departing from the scope of the invention as defined in the claims wax.

本発明の教示に従う集積回路に存在する種々のコアの間でデータを転送するためのハブ/ルータ・ネットワークの例を示すブロック図である。 Is a block diagram showing an example of a hub / router network for transferring data between the various cores present in the integrated circuit in accordance with the teachings of the present invention. 本発明の好ましい実施態様の教示に従う図1のハブのうちの1つを詳しく示す略図である。 One of the preferred of Figure 1 in accordance with the teachings of the embodiments hub of the present invention is a schematic diagram illustrating in detail. 本発明の教示に従って隣接するハブ及びコアからデータを受け取るために図1のハブによって使用される方法を示すフローチャートである。 It is a flowchart illustrating a method used by the Figure 1 hub to receive data from adjacent the hub and the core in accordance with the teachings of the present invention. 本発明の教示に従って前に受け取られたデータを送信するためにハブ6−10により使用されるステップを示すフローチャートである。 Is a flow chart illustrating the steps used by the hub 6-10 to transmit data received before in accordance with the teachings of the present invention.

Claims (20)

  1. それぞれが、所望の機能を実行することのできる複数のコアと、 Each includes a plurality of cores that can perform a desired function,
    それぞれが、1つからデータを受信し送信することのできる複数のハブとを含む集積回路であって、前記コアは前記コアのうちの他の一つのコアである宛先へのデータ転送を開始する、集積回路。 Each, an integrated circuit including a plurality of hubs that can receive and transmit data from one, the core starts data transfer to the destination is another one of the cores of said core , integrated circuit.
  2. 前記複数のハブは、 Wherein the plurality of hub,
    それぞれが、前記コアのうちの少なくとも1つと関連付けられているハブの第1セットを含み、前記第1ハブの各々はそれぞれに関連付けられているコアとデータをやり取りすることができる、請求項1の集積回路。 Each comprises at least one first set of its dependent hub of said core, each of said first hub can exchange core and data associated with each of claim 1 integrated circuit.
  3. 前記複数のハブは、 Wherein the plurality of hub,
    それぞれが、前記第1セットのハブのうちの少なくとも1つと関連付けられているハブの第2セットを含み、前記第2ハブの各々はそれぞれに関連付けられている第1ハブとデータをやり取りすることができる、請求項2の集積回路。 That each includes at least one second set of its dependent hub of said first set of hubs, each of the second hub that passes first hub and data associated with each possible, according to claim 2 integrated circuit.
  4. 前記複数のハブは、 Wherein the plurality of hub,
    それぞれが、前記第2ハブのうちの少なくとも1つと関連付けられているハブの第3セットを含み、前記第3ハブの各々はそれぞれに関連付けられている第2ハブとデータをやり取りすることができる、請求項3の集積回路。 Each comprises at least one third set of its dependent hub of said second hub, each of said third hub can exchange second hub and data associated with each, the integrated circuit of claim 3.
  5. 前記第1ハブ、前記第2ハブ及び前記第3ハブの各々は、 Said first hub, each of the second hub and the third hub,
    データを受信し転送することのできる受信/転送ユニットと、 A receiving / transfer unit capable of receiving the data transfer,
    前記受信/転送ユニットを介するデータの受信及び転送を制御し、データ完全性を維持するために種々の信号を受信し送信することのできる制御ユニットと、 Controls the reception and transmission of data via the receiving / transfer unit, and a control unit capable of receiving various signals transmitted in order to maintain data integrity,
    を含む、請求項4の集積回路。 Including, integrated circuit of claim 4.
  6. 前記受信/転送ユニットはデータを格納し送信するためのFIFOを含む、請求項5の集積回路。 The receiving / transfer unit includes a FIFO for storing and transmitting data, the integrated circuit of claim 5.
  7. 前記制御ユニットは、 Wherein the control unit,
    データが転送されるべき前記ハブのうちの1つが使用可能であるか否かを示す信号を含む、請求項6の集積回路。 One of the hub data is to be transferred, including a signal indicating whether or not it is possible to use, integrated circuit of claim 6.
  8. 前記制御ユニットは、 Wherein the control unit,
    データが転送されるべき前記コアのうちの1つがどうかを示す信号を含む、請求項6の集積回路。 Data includes a signal indicating one Tsugado of the core to be transferred, the integrated circuit of claim 6.
  9. 前記制御ユニットは、データが転送されるべき前記ハブのリソースの可用性を示す信号を送信することができる、請求項6の集積回路。 The control unit, the data can be transmitted a signal indicating the availability of resources of said hub to be transferred, the integrated circuit of claim 6.
  10. 前記制御ユニットは、 Wherein the control unit,
    同じデータの複数のコピーを異なるハブに送信するための論理回路を含む、請求項6の集積回路。 It includes logic circuitry for transmitting a plurality of copies of the same data to a different hub, the integrated circuit of claim 6.
  11. 関数論理の2つ以上のコアと、 And two or more cores of functional logic,
    それぞれが、前記コアのうちの少なくとも1つと隣接する2つ以上のローカル受信/送信ユニットとを含む集積回路であって、前記隣接する受信/送信ユニットは、同時に前記コアのうちの1つ以上とデータをやり取りすることができる、集積回路。 Each, an integrated circuit including at least one of two or more adjacent local receiver / transmitter unit of said core, said adjacent receiving / sending unit, one or more of the core at the same time and it is possible to exchange data, the integrated circuit.
  12. それぞれが、前記ローカル受信/送信ユニットのうちの少なくとも1つと隣接する2つ以上の中間受信/送信ユニットを更に含み、前記中間受信/送信ユニットは、同時に前記コアのうちの1つ以上とデータをやり取りすることができる、請求項11の集積回路。 Each said further comprises at least one of two or more adjacent intermediate receiver / transmitter unit of the local receiver / transmitter unit, the intermediate receive / transmit unit, one or more data of said core at the same time You can interact to, integrated circuit of claim 11.
  13. 前記ローカル隣接受信/送信ユニットのうちの1つ以上は、 Wherein one or more of the local adjacent receive / transmit unit,
    同じデータの複数のコピーを異なる隣接中間受信/送信ユニットに送信することのできる論理回路を含む、請求項12の集積回路。 It includes a logic circuit capable of sending multiple copies of the same data to different neighboring intermediate receiver / transmitter unit, the integrated circuit of claim 12.
  14. 前記ローカル隣接受信/送信ユニットのうちの1つ以上は、 Wherein one or more of the local adjacent receive / transmit unit,
    前記コアのうちの1つから、前記コアに送信されるように試みられているデータのコピーが既に受信されたことを示すステール信号を受信することのできる論理回路を含む、請求項13の集積回路。 From one of said core comprises a logic circuit capable of copying the data attempted to be sent to the core is already receiving a stale signal indicating that it has been received, the integration of Claim 13 circuit.
  15. 前記ローカル隣接受信/送信ユニットのうちの1つ以上は、 Wherein one or more of the local adjacent receive / transmit unit,
    前記ステール信号を受信したことに応答して前記コアに転送されるべきデータを削除することのできる論理回路を含む、請求項14の集積回路。 It includes a logic circuit capable of deleting the data to be transferred to the core in response to receiving the stale signal, the integrated circuit of claim 14.
  16. 前記ローカル隣接受信/送信ユニットのうちの1つ以上は、 Wherein one or more of the local adjacent receive / transmit unit,
    前記1つ以上の隣接中間受信/転送ユニットからデータを受信して格納するための論理回路を含む、請求項13の集積回路。 Includes logic for receiving and storing data from said one or more neighboring intermediate receiver / transfer unit, integrated circuit of claim 13.
  17. 前記ローカル隣接受信/送信ユニットのうちの1つ以上は、 Wherein one or more of the local adjacent receive / transmit unit,
    前記ローカル隣接受信/送信ユニットにデータを転送しようと試みている隣接中間受信/転送ユニットに前記データが古くなっていること(ステールであること)を示すための論理回路を含む、請求項16の集積回路。 Said logic circuit, to indicate that the data on the adjacent intermediate receiver / transfer unit that is attempting to transfer data to the local adjacent receive / transmit unit is stale (it is stale), according to claim 16 integrated circuit.
  18. 前記中間隣接受信/送信ユニットのうちの1つ以上は、 One or more of the intermediate adjacent receiving / sending unit,
    前記ステール表示に応答して、関連するステール・データのうちのいずれかを削除することのできる論理回路を含む、請求項17の集積回路。 The stale in response to the display, including a logic circuit capable of deleting any of the associated stale data, integrated circuit of claim 17.
  19. 前記ローカル受信/送信ユニットの各々は、 Wherein each of the local receiver / transmitter units,
    前記1つ以上の隣接するコアからデータを受信して格納することのできる論理回路を含む、請求項18の集積回路。 Includes a logic circuit capable of receiving and storing data from said one or more adjacent core integrated circuit of claim 18.
  20. 前記中間受信/送信ユニットの各々は、 Each of said intermediate receiving / sending unit,
    前記隣接ローカル受信/送信ユニットのうちの1つ以上からデータを受信して格納することのできる論理回路を含む、請求項19の集積回路。 Including a logic circuit that can be from one or more of the receiving and storing data of said adjacent local receiver / transmitter unit, the integrated circuit of claim 19.
JP2009502750A 2006-05-21 2006-05-21 Method and apparatus for transferring data between a core in an integrated circuit Pending JP2009531771A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
PCT/US2006/020462 WO2007139536A3 (en) 2006-05-21 2006-05-21 A method and apparatus for transferring data between cores in an integrated circuit

Publications (1)

Publication Number Publication Date
JP2009531771A true true JP2009531771A (en) 2009-09-03

Family

ID=38779124

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2009502750A Pending JP2009531771A (en) 2006-05-21 2006-05-21 Method and apparatus for transferring data between a core in an integrated circuit

Country Status (2)

Country Link
JP (1) JP2009531771A (en)
WO (1) WO2007139536A3 (en)

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000082011A (en) * 1998-05-13 2000-03-21 Axis Ab Improved memory access method using dma unit and computer system
JP2001167066A (en) * 1999-12-08 2001-06-22 Nec Corp Inter-processor communication method and multiprocessor system
JP2004031898A (en) * 2002-02-13 2004-01-29 Internatl Business Mach Corp <Ibm> Hub/router for communication between cores using cartesian coordinates

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20020191588A1 (en) * 2001-06-13 2002-12-19 Drexel University Integrated circuit and packet switching system
US7543085B2 (en) * 2002-11-20 2009-06-02 Intel Corporation Integrated circuit having multiple modes of operation

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000082011A (en) * 1998-05-13 2000-03-21 Axis Ab Improved memory access method using dma unit and computer system
JP2001167066A (en) * 1999-12-08 2001-06-22 Nec Corp Inter-processor communication method and multiprocessor system
JP2004031898A (en) * 2002-02-13 2004-01-29 Internatl Business Mach Corp <Ibm> Hub/router for communication between cores using cartesian coordinates

Also Published As

Publication number Publication date Type
WO2007139536A3 (en) 2009-05-07 application
WO2007139536A2 (en) 2007-12-06 application

Similar Documents

Publication Publication Date Title
Point-to Autonet: a high-speed, self-configuring local area network using point-to-point links
US5355375A (en) Hub controller for providing deterministic access to CSMA local area network
US6718393B1 (en) System and method for dynamic distribution of data traffic load through multiple channels
US7150021B1 (en) Method and system to allocate resources within an interconnect device according to a resource allocation table
US7471691B2 (en) Fibre channel arbitrated loop bufferless switch circuitry to increase bandwidth without significant increase in cost
US7149833B2 (en) Method and apparatus for extending the range of the universal serial bus protocol
US5940597A (en) Method and apparatus for periodically updating entries in a content addressable memory
US7362769B2 (en) Fibre channel arbitrated loop bufferless switch circuitry to increase bandwidth without significant increase in cost
US5163045A (en) Communications network arranged to transport connection oriented and connectionless messages
US20050021753A1 (en) System and method for implementing RMII Ethernet reset
US5919250A (en) Data transmission system used for plant control and based on local area network
US6061362A (en) Interface for a highly integrated ethernet network element
US20070133415A1 (en) Method and apparatus for flow control initialization
US20040186914A1 (en) Data processing circuit
US20070127521A1 (en) Interface between network data bus application and avionics data bus
US5737535A (en) Flow control circuit for networked communications system including arrangement for reducing overhead at the beginning of a communications session by enabling message transmission before receiving flow control information
US5444692A (en) Token star bridge
US5898691A (en) Method and apparatus for congestion distributed adaptive routing
US6101192A (en) Network router with partitioned memory for optimized data storage and retrieval
US6205147B1 (en) Virtual network architecture
US6751233B1 (en) UTOPIA 2—UTOPIA 3 translator
US20080144670A1 (en) Data Processing System and a Method For Synchronizing Data Traffic
CN101242371A (en) Method, system and device router overlapping based on PCIe exchange architecture
US7996583B2 (en) Multiple context single logic virtual host channel adapter supporting multiple transport protocols
US20080059686A1 (en) Multiple context single logic virtual host channel adapter supporting multiple transport protocols

Legal Events

Date Code Title Description
A977 Report on retrieval

Effective date: 20100903

Free format text: JAPANESE INTERMEDIATE CODE: A971007

A131 Notification of reasons for refusal

Effective date: 20100914

Free format text: JAPANESE INTERMEDIATE CODE: A131

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20110405