(57)【特許請求の範囲】
【請求項１】
集積回路内における情報システムを動作させる方法において、
集積回路のマルチプロセッサコア回路の第１のプロセッサコアによって第１の情報パケットを生成するパケット生成工程であって、第１の情報パケットはメモリの第１のパーティションに宛てられる、パケット生成工程と、
第１のプロセッサコアから第２のプロセッサコアに第１の情報パケットを伝達するパケット伝達工程であって、第１のプロセッサコアおよび第２のプロセッサコアは第１の一貫性グループに含まれる、パケット伝達工程と、
第１の情報パケットを第２のプロセッサコアからパケットスイッチに伝達する工程と、
第１の情報パケットをパケットスイッチを通じてメモリの第１のパーティションに伝達する工程と、
第１のパーティション、第１のプロセッサコア、および第２のプロセッサコアの間で一貫性を維持する工程と、
集積回路のマルチプロセッサコア回路の第３のプロセッサコアによって第２の情報パケットを生成する工程であって、第２の情報パケットはメモリの第２のパーティションに宛てられる、工程と、
第３のプロセッサコアから第４のプロセッサコアに第２の情報パケットを伝達する工程であって、第３のプロセッサコアおよび第４のプロセッサコアは第２の一貫性グループに含まれる、工程と、
第２の情報パケットを第４のプロセッサコアからパケットスイッチに伝達する工程と、
第２の情報パケットをパケットスイッチを通じてメモリの第２のパーティションに伝達する工程と、
第２のパーティション、第３のプロセッサコア、および第４のプロセッサコアの間で一貫性を維持する工程と、を含む方法。
【請求項２】
第１のパーティション、第１のプロセッサコア、および第２のプロセッサコアの間で一貫性を維持する前記工程は、第１の情報パケットの書込一貫性情報を第２のプロセッサコアに提供する工程であって、第２のプロセッサコアは書込一貫性情報を用いて、第１のパケットが第２のプロセッサコアにキャッシュされている位置でメモリのデータを変更しているか否かを判定する工程をさらに含む、請求項１に記載の方法。
【請求項３】
第２のプロセッサコアによってマルチプロセッサコア回路の第５のプロセッサコアに書込一貫性情報を送信する工程であって、第５のプロセッサコアは、第１の一貫性グループに含まれており、書込一貫性情報を用いて、第１のパケットが第５のプロセッサコアにキャッシュされている位置でメモリのデータを変更しているか否かを判定する工程をさらに含む、請求項２に記載の方法。
【請求項４】
第３のプロセッサコアおよび第４のプロセッサコアは第１のパケットの書込一貫性情報を受信しない、請求項１に記載の方法。
【請求項５】
第１のパーティションおよび第２のパーティションは重複するアドレスを有しない、請求項１に記載の方法。
【請求項６】
メモリの第１のパーティションの１つの位置に第１の情報パケットのデータの書込を行う工程をさらに含み、該位置のアドレスは該第１の情報パケットにおいて示される、請求項１に記載の方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本開示は、一般に処理システムに関し、より詳細には、複数のコアを有する処理システムに関する。
【背景技術】
【０００２】
データを処理するには、複数のコアを利用するとより効率的であることが分かっている。マルチコアシステムでは、異なるタスクを同時に処理することが可能となる。複雑な演算は複数のタスクへと分けることができる傾向があるので、マルチコアシステムは複雑な演算を適切に処理する傾向がある。非常に複雑な演算は多くのタスクを有することがあるので、多くのコアを有することが有利な場合がある。異なるコアの結果が調整されるには、演算も調整される必要がある。これには、用いられているメモリが一貫性を保持できる必要があることも含まれる。すなわち、キャッシュ（各コアと共にある場合がある）が十分ではないので、コアはメインメモリからの情報を使用できる必要がある。メモリ一貫性を維持することは、キャッシュを用いるシステムでは困難な場合があり、コアの数の増加につれ、さらに複雑になる。
【発明の概要】
【発明が解決しようとする課題】
【０００３】
したがって、マルチコアでありながら、マルチコアシステムに関する既存の問題を解決または改善するシステムの必要が存在する。
【課題を解決するための手段】
【０００４】
一態様では、システムは、第１の一貫性グループに第１の複数のコアを有する。各コアはパケットによりデータを転送する。コアは、シリアルパスを形成するように、直接的に、連続的に接続される。データパケットはシリアルパスに沿って転送される。シリアルパスは一端にてパケットスイッチに接続される。パケットスイッチはメモリに接続される。第１の複数のコアおよびパケットスイッチは１つの集積回路上にある。メモリはその集積回路上にあってもよく、なくてもよい。別の態様では、第２の一貫性グループの第２の複数のコアがパケットスイッチに接続される。第１および第２の複数のコアは、第１および第２の一貫性グループとは異なる一貫性グループを形成するまたはその一部になるように、再構成され得る。以下の記載および図面を参照することによって、このことがさらに理解される。
【図面の簡単な説明】
【０００５】
【図１】一実施形態によるシステムのブロック図。
【図２】図１のシステムにおいて用いられるコアのブロック図。
【図３】一代替構成における図１のシステムのブロック図。
【図４】別の実施形態によるシステムのブロック図。
【図５】一代替構成における図４のシステムのブロック図。
【発明を実施するための形態】
【０００６】
添付の図面によって本発明を例として示すが、限定されるものではない。同様の参照符号は同様の要素を示す。図における要素は簡潔明瞭に示されており、必ずしも縮尺に応じてはいない。
【０００７】
図１に示すのはマルチコアシステム１０であり、メモリ１２と、パケットスイッチ１４と、一貫性グループ１８、一貫性グループ２０、一貫性グループ２２、一貫性グループ２４を形成するように接続されたコアのアレイ１６とを含む。一貫性グループ１８は、パケットスイッチ１４に接続されたコア２６、コア２６に接続されたコア２８、コア２８に接続されたコア３０、およびコア３０に接続されたコア３２を含む。一貫性グループ２０は、パケットスイッチ１４に接続されたコア３４、コア３４に接続されたコア３６、コア３６に接続されたコア３８、およびコア３８に接続されたコア４０を含む。一貫性グループ２２は、パケットスイッチ１４に接続されたコア４２、コア４２に接続されたコア４４、コア４４に接続されたコア４６、およびコア４６に接続されたコア４８を含む。一貫性グループ２４は、パケットスイッチ１４に接続されたコア５０、コア５０に接続されたコア５２、コア５２に接続されたコア５４、およびコア５４に接続されたコア５６を含む。一貫性グループ１８がデータのパケットを連続的に転送するように、コア２６、２８、３０、３２は連続的に接続される。同様に、一貫性グループ２０、２２、２４は、シリアルデータパスに沿ってデータを転送するコアに、各々連続的に接続されている。メモリ１２は、一貫性グループ１８、２０、２２、２４にそれぞれ関連した、パーティション５８、６０、６２、６４を有する。データのパケットはデータ自体を含み、またそのパケットに関する追加の情報を含む。追加情報には、誤り訂正、パケット順序、ターゲットＩＤ、ソースＩＤ、優先度、およびサイズが含まれる。パケットを伝達するためのプロトコルの一例は、ＲａｐｉｄＩＯ（商標）（フリースケール・セミコンダクター・インクの商標）プロトコルである。パケットは、制御情報など、データ以外の他の種類の情報を含んでもよい。
【０００８】
図２に示すのはコア２６であり、図１のコアの全てを代表して、より詳細に示す。コア２６は、キャッシュ７４と、少なくとも２つのポート６６，７０とを有する。一貫性グループ１では、コア２６は、パケットスイッチ１４に接続された１つのポートと、コア２８のポートに接続された別のポートとを有する。各一貫性グループは、パケットスイッチ１４に接続された第１の末端を有する。各一貫性グループは第２の末端も有し、第２の末端にあるコアは、他の１つのコアにのみ接続される。したがって、一貫性グループ２０、２２、２４の第１の末端は、それぞれコア３４、４２、５０がパケットスイッチ１４に接続される場所である。一貫性グループ１８、２０、２２、２４の第２の末端は、それぞれコア３２、４０、４８、５６にある。コア２６は、２つの追加のポート７２，６８（計４つのポート）と、再構成線６９上の信号に応答する再構成レジスタ７３とを有するように示されている。追加のポート７２，６８、および再構成レジスタ７３はシステム１０を再構成するために用いられる。
【０００９】
一例の動作では、データのパケットはコア３０からメモリ１２に転送される（伝達される、とも呼ばれる）。この動作に含まれるのは、コア３０に存在するキャッシュの書込である。パケットはコア３０からコア２８に転送される。コア２８はパケットをコア２６に渡す。コア２６はパケットをパケットスイッチ１４に渡す。パケットスイッチ１４は、次いで、メモリ１２のパーティション５８にパケットの書込を行う。コア３０はパケットをコア３２にも渡す。コア間のデータの転送は非常に迅速に生じるので、遅延は最小限である。これは、光学的に、無線周波数で、または低電圧差動信号によって行われてもよい。無線周波数の場合、超広帯域無線通信の活発な開発は、高信頼性の製造の可能性を示している。加えて、各コアは少なくとも、パケットの書込が行われるアドレスの読取を行う必要がある。アドレスがキャッシュヒットである場合、そのキャッシュのエントリには無効であるとのフラグが付けられる。キャッシュは、通例、その位置のデータが有効であるか無効であるかを示すように設定可能な有効ビットを有する。これに代えて、転送を幾らか遅らせることを代償としてデータを読み取ることも可能であり、キャッシュは更新される。いずれの場合にも、各コアのキャッシュは一貫性に保持される。一例としてキャッシュ７６を用いると、コア２６はコア２８からパケットを受信し、少なくとも１つ以上のアドレスを読み取りながらも、そのパケットを迅速にパケットスイッチ１４に転送する。そのアドレスのうちの１つ以上にてキャッシュ７４にデータが記憶されている場合が、キャッシュヒットである。次いで、ヒットの発生した位置の有効ビットが無効を示すように設定されるか、その位置にデータが書き込まれる。この例では、一貫性が維持されることを確実にするために、一貫性グループ１８ではパーティション５８にのみ書込が行われることが許可される。この場合、一貫性グループ１８がパーティション６０、６２、または６４から読取を行う問題はより少ないが、依然として、コア２６、２８、３０、３２のキャッシュは、更新されるときに更新されることが妨げられることになる。コア３２の場合、必要な書込一貫性情報を提供するために、コア３０は必ずしも全パケットを送信する必要はない。コア３２がそのキャッシュにおいて一貫性を維持することが可能であるために必要な書込一貫性情報を提供するには、単に１つ以上のアドレスと、それが読取であるか書込であるかとを送信することで十分な場合もある。
【００１０】
図３に示すのは、グループコントローラ７５を用いて、図１に示したのから再構成されたシステム１０である。グループコントローラ７５はアレイ１６の全てのコアに、連続的に、信号を送信して、コアのポートを再構成し、したがってアレイ１６、したがってシステム１０を再構成する。この線はデバッグにも用いることが可能である。また、グループコントローラ７５は集積回路に対し、ポートを通じて外部的にアクセス可能である。グループコントローラ７５は、パケットスイッチ１４を制御しメモリ１２にアクセスを行うために、パケットスイッチ１４に接続される。メモリ１２も再構成されてよい。メモリ１２の再構成は、パーティション８４、８６、８８、９０を有するように示す。図３によって示唆されるように、パーティション８４、８６、８８、９０は異なるサイズであってもよい。図３の構成では、コア２６、２８、３０、３２、４０、３８は、一貫性グループ７６を形成し、コア３４、３６は一貫性グループ７８を形成し、コア４２、４４、４６は一貫性グループ８０を形成し、コア４８、５０、５２、５４、５６は、一貫性グループ８２を形成する。アレイ１６は、各コアが２つ以上の隣接したコアを有するように行および列に配置されているが、４つの隣接したコアを有してもよい。例えば、コア２６は隣接したコア３４、２８を有し、コア３８は隣接したコア３０、３６、４０、４６を有する。図２のコア２６に示すように、各コアは４つのポートを有する。２つのポートは隣接したコアに接続されるように構成可能である。この例では、コア４０は一貫性グループの第２の末端ではなく、コア３２に接続されるように再構成された。図３の一貫性グループの場合、一貫性グループ７６、７８、８０、８２は、第１の末端としてパケットスイッチ１４に接続された１つのコアと、連続的に接続されたコアにおける最後のコアとしての第２の末端とを有する。この場合、パケットスイッチ１４に接続されたコアは、それぞれ一貫性グループ７６、７８、８０、８２の第１の末端としてのコア２６、３４、４２、５０である。一貫性グループ７６、７８、８０、８２の第２の末端は、それぞれコア３８、３６、４６、４８である。図１のシステム１０について記載したように、パケットは一貫性グループ内の全てのコアを連続的に移動する。やはり一例としてコア３０からメモリ１２へのパケットの転送を用いると、パケットはコア２８に転送され、それがコア２６に転送される。コア２６は、メモリ１２のパーティション８４に書込を宛てるパケットスイッチ１４に接続する。コア３０はコア３２にもパケットを転送する。コア３２はコア４０にパケットを転送する。コア４０はコア３８にパケットを転送する。コア３２、４０、３８に全パケットを転送することは必ずしも必要でない。ヒットがある場合、コア３２、４０、３８のキャッシュの有効ビットを無効状態に設定可能であるので、アドレスのみが必要な場合がある。
【００１１】
図４に示すのはシステム１００であり、メモリ１０２、パケットスイッチ１０４、パケットスイッチ１０６、およびコアのアレイ１０８を含む。アレイ１０８は、一貫性グループ１４２、１４４、１４６、１４８を含む。メモリ１０２は、一貫性グループ１４２、１４４、１４６、１４８にそれぞれ関連した、パーティション１５０、１５２、１５４、１５６を有する。一貫性グループ１４２は、４つを超えるコアを含む、複数のコアを含む。４つのコアを示す。一貫性グループ１４２を含むように示す４つのコアは、パケットスイッチ１０４に接続されたコア１１０、コア１１０に接続されたコア１１２、パケットスイッチ１０６に接続されたコア１１６、およびコア１１６に接続されたコア１１４を含む。一貫性グループ１４４を含むように示す４つのコアは、パケットスイッチ１０４に接続されたコア１１８、コア１１８に接続されたコア１２０、パケットスイッチ１０６に接続されたコア１２４、およびコア１２４に接続されたコア１２２を含む。一貫性グループ１４６を含むように示す４つのコアは、パケットスイッチ１０４に接続されたコア１２６、コア１２６に接続されたコア１２８、パケットスイッチ１０６に接続されたコア１３２、およびコア１３２に接続されたコア１３０を含む。一貫性グループに示すものに対し追加のコアが存在することに加えて、示した以外の一貫性グループが存在してもよい。パケットスイッチ１０４，１０６は、メモリ１０２に接続される。動作は図１のシステム１０のものと同様であり、パケットを提供するコアに最も近いパケットスイッチがメモリの書込を行うという追加の特徴を含む。一例の動作では、コア１１４はメモリ１０２にパケットを転送する。そのような場合、コア１１４はコア１１６にパケットを転送する。コア１１６はパケットスイッチ１０６にパケットを転送する。パケットスイッチ１０６は、メモリ１０２のパーティション１５０にパケットスイッチからのデータを書き込む。これに加えて、コア１１４はパケット（すなわち、少なくともコア１１２および１１０へのパケットの１つ以上のアドレス）を転送する。このとき、一貫性グループにおけるパケットは全て、そのキャッシュ一貫性を保持することが可能である。次いで、システム１００は、パケットスイッチで終端となる一貫性グループの両末端を有することによって、パケットが一貫性グループの端部までの最短距離を取ることを許可する。
【００１２】
図５に示すのは、コアの再構成されたシステム１０である。システム１０は、全てのコアを連ねた出力を有するグループコントローラ１０９をさらに有する。この出力は、図２に示す線６９に類似しており、コアに構成情報を提供する。グループコントローラ１０９は、図３に示すグループコントローラ７５に類似しており、パケットスイッチ１０４，１０６に対する接続および外部ポートに対する接続を有する。この例では、グループコントローラは、一貫性グループ１４６，１４８のコアが一貫性グループ１５５，１５７へと再構成されるようにシステム１００の再構成が行われる、構成情報を提供する。一貫性グループ１５５は、パケットスイッチ１０４に接続されたコア１３４、コア１３４に接続されたコア１２６、コア１３６に接続されたコア１２８、コア１３８に接続されたコア１３６、およびコア１４０に接続されたコア１３８を含む。コア１３６，１３８の間には１つ以上のコアが存在する。一貫性グループ１５７は、パケットスイッチ１０６に接続されたコア１３２と、コア１３２に接続されたコア１３０とを含む。一貫性グループ１５７は、パケットスイッチ１０４ではなく、パケットスイッチ１０６に接続される。
【００１３】
システム１０，１００は、多数のコアが存在する場合、特に有用である。パケットのシリアル接続では、特に、メモリの一定の領域のみに書込が制限される別個の一貫性グループを有することによって、効率的に一貫性が維持される。一貫性は、一貫性グループ内のコアのシリアル接続によって、また、一貫性グループが個別に維持されることによって、容易に維持される。さらに、一貫性グループは様々なサイズへと再構成可能である。故障するコアについては、一貫性グループに含まれるのを妨げることも可能である。コア数が増える場合、高速シリアルパスの利用によって、複数のコアを利用し、それらの一貫性を維持する性能により、さらなる効率が提供される。
【００１４】
多くの用途において、提案の方法および装置から利益が得られる。例えば、コアは、グループコントローラにフィードバックを与えることの可能な故障検出回路を含んでもよく、グループコントローラは該フィードバックを用い、残りのコアを再構成して不完全なコアを克服することが可能である。コアは、例えば、グループコントローラにフィードバックを与えることの可能な温度検出回路を含んでもよく、グループコントローラは該フィードバックを用い、処理システムにおいて熱散逸をよりよく分散させることが可能である。コアは、例えば、グループコントローラにフィードバックを与えることの可能なウェアレベリング回路を含んでもよく、グループコントローラは該フィードバックを用い、コアのウェアレベルをよりよく分散させることが可能である。動作中、様々なコアおよびそれぞれの一貫性グループに対しタスクが動的に割り当てられるので、複数のコアを有する処理システムの利用を改良することが可能となる。
【００１５】
以上、本明細書において、集積回路内の情報システムを動作させる方法が提供されたものと認められる。該方法は、集積回路のマルチプロセッサコア回路の第１のプロセッサコアによって情報の第１のパケットを生成する工程を含み、情報の第１のパケットはメモリに宛てられる。該方法は、第１のプロセッサコアからメモリに情報の第１のパケットを伝達する工程をさらに含み、この伝達する工程は、マルチプロセッサコア回路の第２のプロセッサコアを介して第１のパケットを伝達する工程を含み、第２のプロセッサコアを介して第１のパケットを伝達する工程は、第２のプロセッサコアによって第１のパケットを受信し、第２のプロセッサコアによって第１のパケットを伝達する工程を含む。該方法は、さらに、メモリに伝達する工程がパケットスイッチ回路を介してメモリに伝達する工程を含み、第２のプロセッサコアはパケットスイッチ回路にパケットを伝達することを特徴としてもよい。該方法は、さらに、マルチプロセッサコア回路が第３のプロセッサコアを含み、第３のプロセッサコアは第１のパケットの書込一貫性情報を受信しないことを特徴としてもよい。該方法は、第１のプロセッサコアによってマルチプロセッサコア回路の第４のプロセッサコアに書込一貫性情報を送信する工程をさらに含んでもよく、第４のプロセッサコアは第１のプロセッサコアから書込一貫性情報を受信し、第４のプロセッサコアは書込一貫性情報を用いて、第１のパケットが第４のプロセッサコアにキャッシュされている位置でメモリのデータを変更しているか否かを判定する。該方法は、第４のプロセッサコアによってマルチプロセッサコア回路の第５のプロセッサコアに書込一貫性情報を送信する工程をさらに含んでもよく、第５のプロセッサコアは書込一貫性情報を用いて、第１のパケットが第５のプロセッサコアにキャッシュされている位置でメモリのデータを変更しているか否かを判定する。該方法は、第３のプロセッサコアによって情報の第２のパケットを生成する工程であって、情報の第２のパケットはメモリに宛てられる工程と、メモリに情報の第２のパケットを伝達する工程とをさらに含んでもよく、該伝達する工程は、マルチプロセッサコア回路の第４のプロセッサコアおよびパケットスイッチ回路を介して第２のパケットを伝達する工程を含み、第４のプロセッサコアを介してパケットを伝達する工程は、第４のプロセッサコアによって情報パケットを受信し、第４のプロセッサコアによって該パケットを伝達する工程を含む。該方法は、第１のプロセッサコアおよび第２のプロセッサコアが第２のパケットの書込一貫性情報を受信せず、第４のプロセッサコアは第１のパケットの書込一貫性情報を受信しないことを特徴としてもよい。該方法は、メモリに情報の第１のパケットを伝達する工程が、第１のプロセッサコアおよび第２のプロセッサコアによってアクセス可能であり、第３のプロセッサコアおよび第４のプロセッサコアによってアクセス可能でない、メモリの第１のパーティションに第１のパケットを伝達する工程を含み、メモリに情報の第２のパケットを伝達する工程は、第３のプロセッサコアおよび第４のプロセッサコアによってアクセス可能であり、第１のプロセッサコアおよび第２のプロセッサコアによってアクセス可能でない、メモリの第２のパーティションに第２のパケットを伝達する工程を含むことを特徴としてもよい。該方法は、さらに、第１のパーティションおよび第２のパーティションは重複するアドレスを有しないことを特徴としてもよい。該方法は、さらに、伝達中、マルチプロセッサコア回路は第１の一貫性グループを含み、第１の一貫性グループは、第１のプロセッサコアおよび第２のプロセッサコアを含む、マルチプロセッサコア回路の第１の複数のプロセッサコアを含み、第１の一貫性グループのプロセッサコアは情報パケットを伝達するように通信可能に連続的に接続されており、第１の一貫性グループの各プロセッサコアは第１の一貫性グループのうちの他のプロセッサコアによって生成されたメモリに対する書込パケットからキャッシュ一貫性情報を受信することを特徴としてもよい。該方法は、さらに、伝達中、マルチプロセッサコア回路が第２の一貫性グループを含み、第２の一貫性グループは、マルチプロセッサコア回路の第２の複数のプロセッサコアを含み、第２の一貫性グループのプロセッサコアは情報パケットを伝達するように通信可能に連続的に接続されており、第２の一貫性グループの各プロセッサコアは第２の一貫性グループのうちの他のプロセッサコアによって生成されたメモリに対する書込パケットからキャッシュ一貫性情報を受信し、第１の一貫性グループのプロセッサコアによって生成されたメモリに対する書込パケットのキャッシュ一貫性情報を受信しないことを特徴としてもよい。該方法は、さらに、伝達中、マルチプロセッサコア回路は第３の一貫性グループを含み、第３の一貫性グループは、マルチプロセッサコア回路の第３の複数のプロセッサコアを含み、第３の一貫性グループのプロセッサコアは情報パケットを伝達するように通信可能に連続的に接続されており、第３の一貫性グループの各プロセッサコアは第３の一貫性グループのうちの他のプロセッサコアによって生成されたメモリに対する書込パケットからキャッシュ一貫性情報を受信し、第１の一貫性グループのプロセッサコアによっておよび第２の一貫性グループのプロセッサコアによって生成されたメモリに対する書込パケットのキャッシュ一貫性情報を受信しないことを特徴としてもよい。該方法は、さらに、別の時間において、マルチプロセッサコア回路は、マルチプロセッサコア回路のプロセッサコアの第３の一貫性グループおよびマルチプロセッサコア回路のプロセッサコアの第４の一貫性グループを含み、第３の一貫性グループは、第１の複数のプロセッサコアのうちの１つ以上のプロセッサコアと、第２の複数のプロセッサコアのうちの１つ以上のプロセッサコアとを含み、第３の一貫性グループのプロセッサコアは情報パケットを伝達するように通信可能に連続的に接続されており、第３の一貫性グループの各プロセッサコアは第３の一貫性グループのうちの他のプロセッサコアによって生成されたメモリに対する書込パケットからキャッシュ一貫性情報を受信し、第４の一貫性グループのプロセッサコアによって生成された、第３の一貫性グループではない第１の一貫性グループのプロセッサコアによって生成された、および第３の一貫性グループではない第２の一貫性グループのプロセッサコアによって生成されたメモリに対する書込パケットのキャッシュ一貫性情報を受信せず、第４の一貫性グループは、第１の複数のプロセッサコアのうちの１つ以上のプロセッサコアを含み、第４の一貫性グループのプロセッサコアは情報パケットを伝達するように通信可能に連続的に接続されており、第４の一貫性グループの各プロセッサコアは第４の一貫性グループのうちの他のプロセッサコアによって生成されたメモリに対する書込パケットからキャッシュ一貫性情報を受信し、第３の一貫性グループのプロセッサコアによって生成された、第４の一貫性グループではない第１の一貫性グループのプロセッサコアによって生成された、および第４の一貫性グループではない第２の一貫性グループのプロセッサコアによって生成されたメモリに対する書込パケットのキャッシュ一貫性情報を受信しないことを特徴としてもよい。該方法は、メモリの１つの位置にパケットのデータの書込を行う工程であって、該位置のアドレスは該パケットにおいて示される工程をさらに含んでもよい。該方法は、さらに、情報の第１のパケットを伝達する工程は、順番に並んだパケットであってフロー制御および多優先度設定トランザクションをサポートするパケットを有するパケットベースプロトコルによって第１のパケットを伝達する工程を含むことを特徴としてもよい。
【００１６】
また、マルチプロセッサコア回路を含む集積回路を備えた装置も記載されている。マルチプロセッサコア回路は、第１の一貫性グループを含むように動作可能であり、第１の一貫性グループは、マルチプロセッサコア回路の第１の複数のプロセッサコアを含み、第１の一貫性グループのプロセッサコアは情報パケットを伝達するように通信可能に連続的に接続されており、第１の一貫性グループの各プロセッサコアは第１の一貫性グループのうちの他のプロセッサコアによって生成されたメモリに対する書込パケットからキャッシュ一貫性情報を受信する。マルチプロセッサコア回路は、第２の一貫性グループをさらに含むように動作可能であり、第２の一貫性グループは、マルチプロセッサコア回路の第２の複数のプロセッサコアを含み、第２の一貫性グループのプロセッサコアは情報パケットを伝達するように通信可能に連続的に接続されており、第２の一貫性グループの各プロセッサコアは第２の一貫性グループのうちの他のプロセッサコアによって生成されたメモリに対する書込パケットからキャッシュ一貫性情報を受信し、第１の一貫性グループのプロセッサコアによって生成されたメモリに対する書込パケットのキャッシュ一貫性情報を受信しない。該装置は、さらに、第１の一貫性グループの各プロセッサコアが第２の一貫性グループのプロセッサコアによって生成されたメモリに対する書込パケットのキャッシュ一貫性情報を受信しないことを特徴としてもよい。集積回路はパケットスイッチ回路をさらに備えてもよく、さらに、メモリによって、マルチプロセッサコア回路がパケットスイッチ回路を通じてメモリに対し通信可能に接続されていることを特徴としてもよい。集積回路はマルチプロセッサコア回路のプロセッサコアに接続されたコントローラをさらに備えてもよく、コントローラは、マルチプロセッサコア回路のプロセッサコアを一貫性グループへとグループ化するために一貫性制御情報を提供する。マルチプロセッサコア回路は、マルチプロセッサコア回路のプロセッサコアの第３の一貫性グループおよびマルチプロセッサコア回路のプロセッサコアの第４の一貫性グループを含むように動作可能であり、第３の一貫性グループは、第１の複数のプロセッサコアのうちの１つ以上のプロセッサコアと、第２の複数のプロセッサコアのうちの１つ以上のプロセッサとを含み、第３の一貫性グループのプロセッサコアは情報パケットを伝達するように通信可能に連続的に接続されており、第３の一貫性グループの各プロセッサコアは第３の一貫性グループのうちの他のプロセッサコアによって生成されたメモリに対する書込パケットからキャッシュ一貫性情報を受信し、第４の一貫性グループのプロセッサコアによって生成された、第３の一貫性グループではない第１の一貫性グループのプロセッサコアによって生成された、および第３の一貫性グループではない第２の一貫性グループのプロセッサコアによって生成されたメモリに対する書込パケットのキャッシュ一貫性情報を受信しない。また、該装置は、さらに、第４の一貫性グループは、第１の複数のプロセッサコアのうちの１つ以上のプロセッサコアを含み、第４の一貫性グループのプロセッサコアは情報パケットを伝達するように通信可能に連続的に接続されており、第４の一貫性グループの各プロセッサコアは第４の一貫性グループのうちの他のプロセッサコアによって生成されたメモリに対する書込パケットからキャッシュ一貫性情報を受信し、第３の一貫性グループのプロセッサコアによって生成された、第４の一貫性グループではない第１の一貫性グループのプロセッサコアによって生成された、および第４の一貫性グループではない第２の一貫性グループのプロセッサコアによって生成されたメモリに対する書込パケットのキャッシュ一貫性情報を受信しないことを特徴としてもよい。該一貫性グループは、さらに、第１の一貫性グループのプロセッサコアの間の通信リンクを介して通信可能に直列に接続されており、通信リンクは、光通信リンク、無線周波数通信リンク、および低電圧差動信号通信リンクのうちの１つ以上を含むことを特徴としてもよい。
【００１７】
特定の実施形態に関連して本発明について本明細書に記載したが、添付の特許請求の範囲に述べる本発明の範囲から逸脱することなく様々な修正および変更を行うことが可能である。例えば、グループコントローラからコアを通じて１つの線を連続的に引いたが、これはグループコントローラの複数の線または様々な線によって達成されてもよい。したがって、明細書および図面は限定的な意味ではなく例示として捉えられるものであり、そのような修正は全て、本発明の範囲の内に含まれることが意図される。特定の実施形態に関連して本明細書に記載した利益、利点、または課題の解決手段は、特許請求の範囲の一部または全部の決定的、必須、または不可欠である特徴として解釈されることを意図したものでない。
【００１８】
本明細書において用いられる用語「接続」は、直接的な接続または機械的な接続に限定されることを意図したものでない。
他に記載のない限り、「第１」、「第２」などの用語は専ら、そのような用語によって記載される部材間の区別のために用いられる。したがって、それらの用語は、必ずしもそのような部材間の時間的その他の順序を示すことを意図したものではない。
【図１】
0005419107.tif 000002
【図２】
0005419107.tif 000003
【図３】
0005419107.tif 000004
【図４】
0005419107.tif 000005
【図５】
0005419107.tif 000006