(57)【要約】  【課題】  基板上に複数の演算コアを配置し、可動ミラーによる光通信にて複数の演算コア間通信を動的再構成して同時（多重）に行う方法を提供すること。  【解決手段】  複数の演算コアと、演算コアの処理に関係するデータをローカルキャシュするための（ベース）メモリコアとの、各々のコアにおいて、あるコアからの電気信号を光信号に変換し、共通のキャッシュコヒーレンシグループ内におけるあるコアから他のコアへ向かって、自由空間を利用した選択的な光学的通信経路を確立するために、可動ミラーが反射面の方向を変えて光信号の向きを変える。各々のキャッシュコヒーレンシグループにおける演算コアとメモリコアとの間での、管理ツールからデータとして得られる通信量予測もしくは通信量状況に適応して、可動ミラーを作動させて光学的通信経路を動的に再構成することが可能となる。【選択図】  図２
2014197284.tif 000002
【特許請求の範囲】
【請求項１】
情報処理システムであって、
複数の演算コアが共通のチップ内にもしくは複数のチップの配列にわたっての所定の形状に沿って配置されていて、演算コアの処理に関係するデータをローカルキャシュするための（ベース）メモリコアが、演算コア内部または専用に準備して配置されたメモリとは別に、複数の演算コア外部に複数用意されている、コア・アセンブリと
各々のコアにおいて、あるコアからの電気信号を光信号に変換し、共通のキャッシュコヒーレンシグループ内におけるあるコアから他のコアへ向かって、自由空間を利用した選択的な光学的通信経路を確立するために、反射面の方向を変えて光信号の向きを変える、可動ミラーとを有していて、
各々のキャッシュコヒーレンシグループにおける演算コアとメモリコアとの間での、管理ツールからデータとして得られる通信量予測もしくは通信量状況に適応して、可動ミラーを作動させて光学的通信経路を動的に再構成することが可能な、
情報処理システム。
【請求項２】
外部接続された（IO・メモリ等の）拡張リソースへの光学的通信経路を確立することを可能にするために、可動ミラーにおいて、自由空間を超えた外部へ向かって光信号を透過させる状態にするか、又は、光信号を反射させて自由空間の内部にとどめておく状態にするかという２つの状態を選択的にスイッチングする、透過可変 (transparent variable) ミラー素子とを有している、
請求項１に記載の情報処理システム。
【請求項３】
複数の演算コアがCMOSチップ上にわたって形成されていて、
（ベース）メモリコアが、キャリアを挟んでCMOSチップが面する光学的通信経路の自由空間とは反対側の面において、CMOSオンチップキャシュ (on chip cache) として用意されている、
請求項１に記載の情報処理システム。
【請求項４】
情報処理システムを製造する方法であって、
複数の演算コアが共通のチップ内にもしくは複数のチップの配列にわたっての所定の形状に沿って配置されていて、演算コアの処理に関係するデータをローカルキャシュするための（ベース）メモリコアが、演算コア内部または専用に準備して配置されたメモリとは別に、複数の演算コア外部に複数用意されている、コア・アセンブリを準備するステップと、
各々のコアにおいて、あるコアからの電気信号を光信号に変換し、共通のキャッシュコヒーレンシグループ内におけるあるコアから他のコアへ向かって、自由空間を利用した選択的な光学的通信経路を確立するために、反射面の方向を変えて光信号の向きを変える、可動ミラーを準備するステップと、
各々のキャッシュコヒーレンシグループにおける演算コアとメモリコアとの間での、管理ツールからデータとして得られる通信量予測もしくは通信量状況に適応して、可動ミラーを作動させて光学的通信経路を動的に再構成することが可能なように調整するステップとを有する、
情報処理システムの製造方法。
【請求項５】
外部接続された（IO・メモリ等の）拡張リソースへの光学的通信経路を確立することを可能にするために、可動ミラーにおいて、自由空間を超えた外部へ向かって光信号を透過させる状態にするか、又は、光信号を反射させて自由空間の内部にとどめておく状態にするかという２つの状態を選択的にスイッチングする、透過可変 (transparent variable) ミラー素子を準備するステップをさらに有する、
請求項４に記載の情報処理システムの製造方法。
【請求項６】
複数の演算コアがCMOSチップ上にわたって形成するステップと、
（ベース）メモリコアを、キャリアを挟んでCMOSチップが面する光学的通信経路の自由空間とは反対側の面において、CMOSオンチップキャシュ (on chip cache) として準備するステップとをさらに有する、
請求項４に記載の情報処理システムの製造方法。
【請求項７】
複数の演算コアが共通のチップ内にもしくは複数のチップの配列にわたっての所定の形状に沿って配置されていて、演算コアの処理に関係するデータをローカルキャシュするための（ベース）メモリコアが、演算コア内部または専用に準備して配置されたメモリとは別に、複数の演算コア外部に複数用意されている、コア・アセンブリと
各々のコアにおいて、あるコアからの電気信号を光信号に変換し、共通のキャッシュコヒーレンシグループ内におけるあるコアから他のコアへ向かって、自由空間を利用した選択的な光学的通信経路を確立するために、反射面の方向を変えて光信号の向きを変える、可動ミラーとを有していて、
各々のキャッシュコヒーレンシグループにおける演算コアとメモリコアとの間での、管理ツールからデータとして得られる通信量予測もしくは通信量状況に適応して、可動ミラーを作動させて光学的通信経路を動的に再構成することが可能にされている、
コア・アセンブリと可動ミラーとの組合せ。
【請求項８】
外部接続された（IO・メモリ等の）拡張リソースへの光学的通信経路を確立することを可能にするために、可動ミラーにおいて、自由空間を超えた外部へ向かって光信号を透過させる状態にするか、又は、光信号を反射させて自由空間の内部にとどめておく状態にするかという２つの状態を選択的にスイッチングする、透過可変 (transparent variable) ミラー素子とを有している、
請求項７に記載のコア・アセンブリと可動ミラーとの組合せ。
【請求項９】
複数の演算コアがCMOSチップ上にわたって形成されていて、
（ベース）メモリコアが、キャリアを挟んでCMOSチップが面する光学的通信経路の自由空間とは反対側の面において、CMOSオンチップキャシュ (on chip cache) として用意されている、
請求項７に記載のコア・アセンブリと可動ミラーとの組合せ。
【請求項１０】
複数の演算コアが共通のチップ内にもしくは複数のチップの配列にわたっての所定の形状に沿って配置されていて、演算コアの処理に関係するデータをローカルキャシュするための（ベース）メモリコアが、演算コア内部または専用に準備して配置されたメモリとは別に、複数の演算コア外部に複数用意されている、コア・アセンブリを準備するステップと、
各々のコアにおいて、あるコアからの電気信号を光信号に変換し、共通のキャッシュコヒーレンシグループ内におけるあるコアから他のコアへ向かって、自由空間を利用した選択的な光学的通信経路を確立するために、反射面の方向を変えて光信号の向きを変える、可動ミラーを準備するステップと、
各々のキャッシュコヒーレンシグループにおける演算コアとメモリコアとの間での、管理ツールからデータとして得られる通信量予測もしくは通信量状況に適応して、可動ミラーを作動させて光学的通信経路を動的に再構成することが可能なように調整するステップとを有する、
コア・アセンブリに対しての可動ミラーの空間位置と作動とを調整する方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、光インターコネクトの技術であって、光学的通信経路を再構成する技術に関する。
【０００２】
より具体的には、演算コアとメモリコアとの間での、通信量(traffic)予測もしくは通信量状況に適応して、光学的通信経路を動的に再構成する技術に関する。
【背景技術】
【０００３】
CPUチップに搭載または配置されるコア数の増加に伴って、コア間のインターコネクト(interconnect)が重要になってきている。
【０００４】
典型的なコアの種別としては、演算コアとメモリコアとがある。
【０００５】
演算コアは、データに基づいて実際に演算の処理を行うコアである。
【０００６】
メモリコアは、演算コアの処理に関係するデータをローカルキャシュするためのコアであり、演算コア内部または演算コア専用に準備して配置された、（ベース）メモリである。
【０００７】
演算コア内部または専用に準備して配置されたメモリとは別に、コア・アセンブリとしての（ベース）メモリコアが、外部に（複数）用意されている場合もある。
【０００８】
（ベース）メモリコアは、複数の演算コアによって、シェアされる(Shared)関係において利用されるものである。
【０００９】
コア数が複数または多数に及ぶものは、総じて、マルチコアと呼ばれる。
【００１０】
図１は、マルチコアのインターコネクト構成の従来例を示す図である。
【００１１】
複数のコア間のインターコネクトにおいては、ワークロードの要求に従って、柔軟に演算コア(Core)・キャッシュ(Cache)として使用されるメモリコア間の接続トポロジー、バンド幅(BW: Band Width)等を変更できることが望まれる。
【００１２】
これまでの電子回路による実装では、複数のコア間をメッシュ状、または、リング状に固定配線で結合することが多く用いられてきている。
【００１３】
図１（ａ）は複数のコア間をメッシュ状の固定配線で結合した例、図１（ｂ）は複数のコア間をリング状の固定配線で結合した例を示すものである。
【００１４】
図１（ａ）に示す例では、演算コアのあるプロセッサ層(Processor layer)、メモリコアのあるメモリ層(Memorylayer)、光導波路などのある光学ネットワーク層(Photonicnetwork layer)という、３層から成る構造となっている。
【００１５】
光学ネットワーク層(Photonicnetwork layer)において、オンチップ(on-chip)の光ルーティング(optical routing)が可能となる。
【００１６】
しかし、ネットワーク構造があらかじめ固定化される上に、ワイヤリングの制限から１つのコアから出せるリンク数（ファンアウト(Fanout)数）に限りがある。
【００１７】
図１（ｂ）に示す例では、（ベース）メモリコア(L3Cache)は、複数の演算コア(Core #1、 Core #2、・・・ Core #8)によって、シェアされる(Shared)関係で利用されている。
【００１８】
メモリ・エージェント(Mem agent)が、シェアの状況を制御することもある。
【００１９】
いずれの態様においても、コア数の増加に伴って、直接結合されていないコア間の通信は他のコアを経由することになってしまう。
【００２０】
その結果として、回路全体で輻輳(Congestion)が生じ、バンド幅・レイテンシ(Latency)を悪化させる大きな要因となる場合が生じる。
【００２１】
光(Optical)インターコネクトによる接続では、バンド幅の増大は期待できるのであるが、光導波路もしくはファイバーを配線するという実装になると、電気回路と同じように配線が固定化されてしまう。
【００２２】
オフチップ(off-chip)の光通信量(optical traffic)または光トラフィックも同様に固定化されてしまう。
【００２３】
また、電気スイッチの実装して接続を変更するには、その都度、光電気変換が必要となってくる。
【００２４】
OCS(Optical Circuit Switch)等を使った、光インターコネクトでの再構成(Reconfiguration)技術が知られているが、おもにラック間の接続に使われているものであって、CPUチップ内外の演算ならびにメモリコア間の接続の実用的で効果的な方式は検討されていない。
【００２５】
また、近距離・長距離両方の接続要求に適切に対応する必要がある。 
【００２６】
そこで、基板上に複数の演算コアを配置し、可動ミラーによる光通信にて複数の演算コア間通信を動的再構成して同時（多重）に行う実用的な制御方法が望まれる。
【００２７】
特許文献１では、反射ミラーを制御して基板上のＩＣ間通信を行う方法が技術要素として開示されているが、再構成に関する言及が無い。
【００２８】
特許文献２では、ミラーを使用せずにＣＰＵあるいはコア間を直接光信号で通信している技術が記載されている。
【００２９】
特許文献３では、ＩＣ間を多層透明媒体で偏光させ、面反射の固定反射面を用いる技術が開示されている。
【００３０】
しかし、何れの先行技術文献においても、自由空間を超えた外部へ向かって光信号を透過させる状態にするか、又は、光信号を反射させて自由空間の内部にとどめておく状態にするかという２つの状態を選択的にスイッチングするための、透過可変 (transparent variable) ミラー素子、については開示が見られない。
【００３１】
また、特許文献１、特許文献３では、自由空間が実装チップの裏面に設けられているものが開示されているにとどまり、コアの構成（メモリが自由空間と反対側）に関しては、キャリア（基板）を挟んでいる訳ではない。
【００３２】
特許文献４は、光学データの転送に関する参考事例である。
【００３３】
特許文献５は、可動ミラーの制御による情報処理に関する記載がある、参考事例である。
【００３４】
非特許文献１においては、コア間の自由空間を経由した光信号のパスを動的に変更する手法が開示されているが、演算コアとメモリコアをどのように結合し制御するかについての具体的な記述はない。
【先行技術文献】
【特許文献】
【００３５】
【特許文献１】日本国特許公開  特開２００３−４９６３
【特許文献２】日本国特許公開  特開平３−１６４８１６
【特許文献３】日本国特許公開  特開平５−１７２６３３
【特許文献４】日本国特許公開  特開平１１−２３２２３０
【特許文献５】国際公開  ＷＯ２００２／０６１４８８
【非特許文献】
【００３６】
【非特許文献１】Jing Xue, Alok Garg,Berkehan Ciftcio?lu, Jianyun Hu, Shang Wang, Ioannis Savidis, Manish Jain,Rebecca Berman, Peng Liu, Michael Huang, Hui Wu, Eby Friedman, Gary Wicks,Duncan Moore、“An Intra-ChipFree-Space Optical Interconnect”2010 IEEE ISCA
【発明の概要】
【発明が解決しようとする課題】
【００３７】
本発明の目的は、基板上に複数の演算コアとメモリコアを配置し、可動ミラーによる光通信にて複数の演算コア間通信を複数のワークロードの要求に応じて動的再構成して同時（多重）に実行するより効率的な方法を提供することにある。
【課題を解決するための手段】
【００３８】
本発明では、CPUチップ上の大規模なマルチコア間を柔軟に効率的に接続する構成を開示する。
【００３９】
さらに具体的には、自由空間光配線の柔軟性を反射素子・透過素子と組み合わせることで、大規模で高性能のコア間ネットワークを構成し、以下の特長を実現する。
【発明の効果】
【００４０】
本発明に従うと、以下に列挙する特長が実現する。
【００４１】
on-chipキャッシュ等を含めたチップ内のコア間の複雑な接続トポロジーにも対応することができる。
【００４２】
チップ間にまたがる複数のコアネットワーク（例：複数のリング）も、互いに干渉せずに構成することができる。
【００４３】
反射素子を透過素子に変えることで外部との接続を実現することができる。
【００４４】
これらの接続を、ワークロードに従って動的に変更可能なリコンフィギュアラブルなコアネットワークを構成することができる。
【図面の簡単な説明】
【００４５】
【図１】図１は、マルチコアのインターコネクト構成の従来例を示す図である。
【図２】図２は、本発明に従ったマルチコアのインターコネクト構成をもった情報処理システムの動作概念を説明する図である。
【図３】図３は、本発明に従ったマルチコアのインターコネクト構成が積層されて配置される関係を説明する図である。
【図４】図４は、電気的なワイヤード（Electrical wired）、光学的なワイヤード（Optical wired）、光学的な自由空間の利用（Optical freespace）、とについて、ピッチ（Pitch）の目安となる数値とルーティング（Routing）の次元とを比較した図である。
【図５】図５は、複数コア間のメッシュネットワークとして構成される固定配線による電気的な通信を行う電子回路実装のデメリットと、自由空間中の選択された光学的通信経路を経由して光学的な通信を行う光学系による実装上・性能上のメリットとを説明する図である。
【図６】図６は、ソフトウエアから、本発明の構成をどのように制御するかの一例を示した図である。
【発明を実施するための形態】
【００４６】
図２は、本発明に従ったマルチコアのインターコネクト構成をもった情報処理システムの動作概念を説明する図である。
【００４７】
この情報処理システムでは、複数の演算コアが共通のチップ内にもしくは複数のチップの配列にわたっての所定の形状に沿って配置されている。
【００４８】
コア・アセンブリとして、演算コアの処理に関係するデータをローカルキャシュするための（ベース）メモリコアが、演算コア内部または専用に準備して配置されたメモリとは別に、複数の演算コア外部に複数用意されている。
【００４９】
各々のコアにおいて、あるコアからの電気信号を光信号に変換する。
【００５０】
反射素子としての可動ミラーが、共通のキャッシュコヒーレンシグループ内におけるあるコアから他のコアへ向かって、自由空間を利用した選択的な光学的通信経路を確立するために、反射面の方向を変えて光信号の向きを変える。
【００５１】
各々のキャッシュコヒーレンシグループにおける演算コアとメモリコアとの間での、管理ツールからデータとして得られる通信量予測もしくは通信量状況に適応して、可動ミラーを作動させて光学的通信経路を動的に再構成することが可能になっている。
【００５２】
管理ツールは、ハイパバイザ・VM等であってよいし、（後述の）図６のようにさらに上位レベルの専用の管理機構を持つものであってもよい。
【００５３】
また、外部接続された（IO・メモリ等の）拡張リソースへの光学的通信経路を確立することを可能にするために、可動ミラーにおいて、自由空間を超えた外部へ向かって光信号を透過させる状態にするか、又は、光信号を反射させて自由空間の内部にとどめておく状態にするかという２つの状態を選択的にスイッチングするようになっている。
【００５４】
このような機能は、透過可変(transparent variable) ミラー素子を利用して実現することができる。
【００５５】
下側の平面図（上面図）が示すように、チップ間にまたがる複数のコアネットワーク（例：複数のリング）も、互いに干渉せずに形成することができる。
【００５６】
図３は、本発明に従ったマルチコアのインターコネクト構成が積層されて配置される関係を説明する図である。
【００５７】
複数の演算コアがCMOSチップ上にわたって形成されていて、（ベース）メモリコアが、キャリアを挟んでCMOSチップが面する光学的通信経路の自由空間とは反対側の面において、CMOSオンチップキャシュ (on chip cache) として用意されていてもよい。
【００５８】
このように積層されて配置される関係に従えば、両面に（反対側の面にまで）広がる自由空間を有効に利用することができる。
【００５９】
上面に広がる自由空間と、下面に広がる自由空間との間において、連絡経路を設けることができるという点で、発展的な自由度も得られる。
【００６０】
このような構成に従えば、自由空間を活用してスケールメリットを生かすことができ、大規模で高性能のコア間ネットワークを構成して、近距離・長距離両方の接続要求に拡張的に対応していくことができる。
【００６１】
図４は、電気的なワイヤード（Electrical wired）、光学的なワイヤード（Optical wired）、光学的な自由空間の利用（Optical freespace）、とについて、ピッチ（Pitch）の目安となる数値とルーティング（Routing）の次元とを比較した図である。
【００６２】
ハイブリッド相互接続を実現しようとすると、電気回路による実装と光学系による実装とを一体に作り込む組合せを実現する必要性から、これらの数値やその範囲が重要な意義を持ってくる。
【００６３】
ＷＤＭとは、波長分割多重（Wavelength Division Multiplexing）の略であり、光学系の場合、電気回路による実装と比較して、空間的なピッチの制限を、波長空間に自由度で越えることを可能にする。
【００６４】
たとえば、電気回路と光学系の空間的なピッチが同じ時に、波長数ＮλのWDMを使うことにより、コア間の結合ＢＷ：Band Width（バンド幅）が全体性能のボトルネックになりつつある背景から、ＢＷo〜（Ｎλ＋１）×ＢＷｅという関係があるので、波長数にほぼ比例する形で、バンド幅を向上させることが可能となる。
【００６５】
図５は、複数コア間のメッシュネットワークとして構成される固定配線による電気的な通信を行う電子回路実装のデメリットと、自由空間中の選択された光学的通信経路を経由して光学的な通信を行う光学系による実装上・性能上のメリットとを説明する図である。
【００６６】
自由空間中に配置されている複数のコアの所定の形状は、２次元アレイを形成するものを図示してあって、電気的に通信する固定配線を、複数チップ間のメッシュ（Mesh）ネットワークとして構成してもよい。これは、本発明を単純化して実施化しようとする例に相当している。
【００６７】
具体的な動作としては、あるコアにおける特定の電気的な通信の信号トラフィックが所定の閾値を超えているかどうか、もしくは超えることが予想されるかどうかを判断する。
【００６８】
これは、実際に信号トラフィックをモニターすることで行うことも可能であるが、特定の処理に伴って明らかにそのような事態が予測される場合は、必ずしも、信号トラフィックをモニタする必要性はない。
【００６９】
図のように、通信ルーティングには複数の信号トラフィックが衝突(Collision)することにより輻輳（Congestion）が生じることなどが原因となって、あるチップにおける電気的な通信の信号トラフィックが所定の閾値を超えている場合がある。
【００７０】
このことが、演算ならびにメモリコア間の結合ＢＷ：Band Width（バンド幅）が全体性能のボトルネックになり得る大きな原因である。ただし、どの部分がボトルネックになるかは、システムの製造時には決定されず、実際の処理が行われるまでわからないこともある。
【００７１】
もし、ボトルネックとなる部分の信号トラフィックが閾値を超えている場合、もしくは超えることが予想される場合において、その超えた信号トラフィックの通信ルーティングに関与している複数のチップを特定し、それら特定された複数のチップを横切っている関連する信号トラフィックの一部を電気信号から光信号に変換する。
【００７２】
その超えた信号トラフィックの通信ルーティングに関与している複数のコアは、ルーティングの長い経路に関与している場合も多く、２つのチップだけでなく、多数のチップにわたって広範囲に関与している場合も予想される。
【００７３】
その超えた信号トラフィックをバイパスさせる目的で、複数のコア間の固定配線経由の経路から、単数または複数の光学素子を通じての自由空間中の光学的通信経由の経路に、信号トラフィックの経路を動的にリコンフィギュアラブルに適合させる。
【００７４】
この場合、その超えた信号トラフィックの通信ルーティングに関与している複数のコア間におけるルーティング距離（Distance）の大小（チップ間のホップ数（number of hops））を考慮に入れることが好ましい。
【００７５】
なぜならば、グラフの傾きが示すように、ルーティング距離が大きい場合（チップ間のホップ数が多い）の信号トラフィックをバイパスさせる場合ほど、効果的なＢＷ（Effective BW）の改善を実現できることになり、光学的通信経路を経由することが有利になる。
【００７６】
このようにして、特定されたコアと、光学的な通信が増加された通信量との関係とを学習して、ファンアウトの増加（または減少）に柔軟に対応して、コア間のネットワークを再構成することができる。
【００７７】
本発明の大きな特徴のひとつは、このような再構成を、コア間のキャッシュコヒーレンシグループごとに行うことにより、レイテンシに対する要求の強いキャッシュコヒーレンシグループ内の信号トラフィックに最適にされた構成をとるところにある。
【００７８】
通信のバンド幅（ＢＷ）と通信のレイテンシとの両方が最適化された値になるように、再構成することができる。光学的な自由通信経路は、光信号が交差しても互いに影響なく独立した信号トラフィックを通信させることが可能である。このような性質は、non-blockingと呼ばれており、相互接続スイッチにおいては、理想的な特性である。
【００７９】
図６は、ソフトウエアから、本発明の構成をどのように制御するかの一例を示した図である。
【００８０】
この例のように、管理ツールとして、ハイパバイザ・VM等の上位レベルの専用の管理機構を持つものであってもよい。
【００８１】
このような構成をとることにより、複数のSMP計算機からなるSMPクラスタをワークロードの要求に応じて柔軟に構成しながら実行することが可能になる。
【００８２】
また、このようなSMPクラスタの再構成からくるネットワークトポロジーの変更には、パケットスイッチ回路は必要ではなく、OCSを使った本発明方式で十分である。
【００８３】
積層間に必要となってくる接続ルートや接続を実現する技術的要素を考慮しても、無駄の無い効果的な構成を実現することができる。
【００８４】
本発明は、情報処理システムだけでなく、情報処理システムを製造する方法として、コア・アセンブリと可動ミラーとの組合せとして、さらには、コア・アセンブリに対しての可動ミラーの空間位置と作動とを調整する方法としても、その技術的特徴を表現することができる。
【図１】
2014197284.tif 000003
【図２】
2014197284.tif 000004
【図３】
2014197284.tif 000005
【図４】
2014197284.tif 000006
【図５】
2014197284.tif 000007
【図６】
2014197284.tif 000008