(57)【要約】【課題】より高速に光演算ができるようにする。【解決手段】入力信号に対して１つの光信号を出力するＳ個（Ｓは自然数）の演算素子１０２をシリアルに接続して構成され、Ｓ個の入力信号により１つの光信号を演算出力する複数の演算部１０１をカスケード接続する。前段のＳ個の演算部１０１から出力された信号が、後段の１つの演算部１０１に入力される。【選択図】  図１
2019039941.tif 000002
【特許請求の範囲】
【請求項１】
入力信号に対して１つの光信号を出力するＳ個（Ｓは自然数）の演算素子がシリアルに接続されて構成され、Ｓ個の前記入力信号により１つの光信号を演算出力する複数の演算部を備え、
前記複数の演算部は、カスケード接続され、
前段のＳ個の演算部から出力された信号が、後段の１つの演算部に入力される
ことを特徴とする光演算器。
【請求項２】
請求項１記載の光演算器において、
前記入力信号は、電気信号であり、
前記複数の演算部の各々は、シリアル接続されている最終段の前記演算素子から出力された光信号を光電変換する変換素子を備える
ことを特徴とする光演算器。
【請求項３】
請求項１記載の光演算器において、
前記入力信号は、光信号であり、
前記複数の演算部の各々は、Ｓ個の前記演算素子から光信号が出力された場合に値１を出力し、Ｓ個の前記演算素子から光信号が出力された場合以外に値０を出力する変換素子を備える
ことを特徴とする光演算器。
【請求項４】
請求項２または３記載の光演算器において、
前記カスケード接続の段数Ｍおよび前記演算素子の個数Ｓは、前記入力信号の数Ｎと、前記演算素子における演算時間τgateと、前記変換素子における処理時間τOEOとから、（Ａ）式により決定されることを特徴とする光演算器。
【数１】
2019039941.tif 000015
【請求項５】
請求項１記載の光演算器において、
１段目の前記複数の演算部は、前記演算素子がマッハツェンダー干渉計から構成され、
２段目以降の前記複数の演算部における前記演算素子は、電気号である１つの前記入力信号に対して１つの光信号を出力する
ことを特徴とする光演算器。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、光電融合型の演算回路から構成された光演算器に関する。
【背景技術】
【０００２】
現在の電子演算回路は、演算の処理速度を向上させるため、チップサイズや素子サイズを極限まで小さくする工夫がなされている。これは、回路内の抵抗（Ｒ）とキャパシタンス（Ｃ）が、信号の伝搬を大きく律速しているため、演算速度を上げるには、チップサイズや素子サイズを小さくするしかないためである。このため、狭面積の論理ブロックやコアに素子を詰め込み、マルチコア・メニーコア化などの工夫がなされているが、これらをつなぐための配線が新たな「遅延」を生み、演算の高速化に限界が見えつつある。
【０００３】
一方、光通信などで用いられる光配線や光パスゲートは、この配線経路内のＣやＲに無依存で光信号を伝播させることができる。また、ナノフォトニクスの進展により、光ゲートの消費エネルギーは飛躍的に改善され、このエネルギーコスト［Ｊ／ｂｉｔ］は、ＣＭＯＳゲートと光パスゲートとで同程度のレベルになりつつある。このため、チップ内やチップ間の通信を光化する様々な研究がなされている。
【０００４】
ここで、光ゲートの電気制御ポート側から信号入力する接続形態をカスケード接続、スイッチの光伝搬経路が連続的に接続されている形態をシリアル接続と定義する。例えばシリアル接続とカスケード接続が混在した光電融合型の回路を想定した場合、カスケード接続の部分が光と電気の境界となる。この境界において、回路中を伝搬する光信号は一度電気に変換（ＯＥ変換）されることになる。この変換は、電気回路に律速されるため、ＯＥ変換の多用される回路は、光を使うことのメリットが小さい。このため、光と電気の境界、つまりカスケード接続の配置場所と数が、回路構成の重要なポイントとなる。
【０００５】
ここでＮ入力のＡＮＤ回路を例に取り上げる。ＣＭＯＳ回路の場合、シリアルに接続されたパスブロックゲートでＳ入力素子を構成し、これを  段のツリー状にカスケード接続することで、Ｎ入力関数を構成する。この場合、Ｎ入力関数の遅延時間は下記の式となる。
【０００６】
【数１】
2019039941.tif 000003
【０００７】
この場合、シリアル接続部の電気信号伝播遅延は、ゲート数分の抵抗とキャパシタンスの影響を受けるため、シリアル接続の段数Ｓの２乗に比例して大きくなってしまう問題がある。これを解消するために動作電圧を上げると、消費電力も上がってしまうため、ＣＭＯＳ回路のＳはせいぜい２にとどまっている。また小さなＳを用いるには、カスケード段数Ｍを増加させる必要があり、結果的にＮ入力関数の遅延を増加させる問題がある。
【０００８】
光回路の場合、シリアル接続のみで遅延の小さな演算が可能であることが知られている（非特許文献１，２）。これは、シリアル部分の光信号伝播遅延は、ゲートの長さにのみ依存する、つまり、遅延はＳに比例する特徴を持ち、上述した電気信号伝播遅延の問題を緩和することが可能となるためである。
【先行技術文献】
【非特許文献】
【０００９】
【非特許文献１】J. Hardy et al., "Optics inspired logic architecture", Optics Express, vol. 15, no. 1, pp. 150-165, 2007.
【非特許文献２】浅井哲也  他、「二分決定グラフにもとづくフォトニック結晶集積デバイス」、２０００年電子情報通信学会総合大会講演論文集、 ３８６−３８７頁、２０００年。
【非特許文献３】Q. Xu et al., "Reconfigurable optical directed-logic circuits using microresonator-based optical switches", Optics Express, vol. 19, no. 6, pp. 5244-5259, 2011.
【非特許文献４】石原亨  他、「光パスゲート論理に基づく並列加算回路の提案と光電混載回路シミュレータによる動作検証」、信学技報、 vol. 116, no. 94, pp. １０９−１１４頁、２０１６年。
【発明の概要】
【発明が解決しようとする課題】
【００１０】
しかしながら、光強度ロスもＳに比例するため、電気よりも大きなＳを取り扱うことは可能であるが、あまりに大きなＳを取り扱う場合は、信号劣化の対策が必要となる。
【００１１】
本発明は、以上のような問題点を解消するためになされたものであり、より高速に光演算ができるようにすることを目的とする。
【課題を解決するための手段】
【００１２】
本発明に係る光演算器は、入力信号に対して１つの光信号を出力するＳ個（Ｓは自然数）の演算素子がシリアルに接続されて構成され、Ｓ個の入力信号により１つの光信号を演算出力する複数の演算部を備え、複数の演算部は、カスケード接続され、前段のＳ個の演算部から出力された信号が、後段の１つの演算部に入力される。
【００１３】
上記光演算器において、入力信号は、電気信号であり、複数の演算部の各々は、シリアル接続されている最終段の演算素子から出力された光信号を光電変換する変換素子を備える。
【００１４】
上記光演算器において、入力信号は、光信号であり、複数の演算部の各々は、Ｓ個の演算素子から光信号が出力された場合に値１を出力し、Ｓ個の演算素子から光信号が出力された場合以外に値０を出力する変換素子を備える。
【００１５】
上記光演算器において、カスケード接続の段数Ｍおよび演算素子の個数Ｓは、入力信号の数Ｎと、演算素子における演算時間τgateと、変換素子における処理時間τOEOとから、（Ａ）式により決定される。
【００１６】
【数２】
2019039941.tif 000004
【００１７】
上記光演算器において、１段目の複数の演算部は、演算素子がマッハツェンダー干渉計から構成され、２段目以降の複数の演算部における演算素子は、電気信号である１つの入力信号に対して１つの光信号を出力するようにしてもよい。
【発明の効果】
【００１８】
以上説明したことにより、本発明によれば、より高速に光演算ができるという優れた効果が得られる。
【図面の簡単な説明】
【００１９】
【図１】図１は、本発明の実施の形態１における光演算器の構成を示す構成図である。
【図２】図２は、本発明の実施の形態１における光演算器の演算部１０１の構成を示す構成図である。
【図３】図３は、ＡＮＤ演算を実施する演算器（演算回路）の演算遅延を説明するための説明図である。
【図４】図４は、本発明の実施の形態１における光演算器の一部構成を示す構成図である。
【図５】図５は、本発明の実施の形態２における光演算器の演算部１０１の構成を示す構成図である。
【図６】図６は、本発明の実施の形態３における光演算器の構成を示す構成図である。
【図７】図７は、本発明の実施の形態４における光演算器の構成を示す構成図である。
【図８】図８は、本発明における２入力２出力のＸＯＲ、ＸＮＯＲ演算素子と、その組み合わせによるＸＮＯＲ−ＡＮＤ，ＸＯＲ−ＯＲ演算部の構成を示す構成図である。
【発明を実施するための形態】
【００２０】
以下、本発明の実施の形態について説明する。
【００２１】
［実施の形態１］
はじめに、本発明の実施の形態１における光演算器について、図１を参照して説明する。この光演算器は、カスケード接続された複数の演算部１０１を備える。演算部１０１は、入力信号に対して１つの光信号を出力するＳ個（Ｓは自然数）の演算素子１０２がシリアルに接続されて構成されている。演算部１０１は、Ｓ個の入力信号により１つの光信号を演算出力する。また、前段のＳ個の演算部１０１から出力された信号が、後段の１つの演算部１０１に入力される。なお、図１では、Ｓ＝２の場合を例示している。また、図１では、カスケード接続の段数Ｍが３の場合を例示している。
【００２２】
ここで、実施の形態１では、入力信号は、電気信号であり、演算部１０１は、シリアル接続されている最終段の演算素子１０２から出力された光信号を光電変換する変換素子１０３を備える。例えば、図２に示すように、演算部１０１は、光源１１１と、１×１光パスゲート１０２ａと、変換素子１０３とから構成すればよい。２つの１×１光パスゲート１０２ａは、シリアル接続されている。この構成において、前段の１×１光パスゲート１０２ａへの電気制御入力をｘiとし、後段の１×１光パスゲート１０２ａへの電気制御入力をｙiとする。電気制御入力が１の時のみ信号を透過させるように設定すれば、前段の１×１光パスゲート１０２ａおよび後段の１×１光パスゲート１０２ａの両者が透過状態になる電気信号の組み合わせ、つまり、ｘiｙj＝１の場合のみ光が出力されるＡＮＤ演算となる。
【００２３】
本発明では、上述したように、光シリアル接続回路のカスケード接続により、光演算を、より高速化する。実施の形態１では、１×１光パスゲート１０２ａによるシリアル接続回路からの光出力を、１×１光パスゲート１０２ａの電気制御側に入力するため、変換素子１０３を用いている。この構成における演算遅延時間は、下記の式となる。
【００２４】
【数３】
2019039941.tif 000005
【００２５】
ここで計算を簡単にするため、全てのシリアル段数が均一であり、全ての１×１光パスゲート１０２ａ（演算素子１０２）において、演算素子１０２中を伝搬する光の伝播時間はτgateで均一とし、全ての変換素子１０３におけるＯＥ変換時間もτOEOで均一と仮定したときの、演算遅延特性をとり扱うこととする。この条件における演算遅延は、下記の（３）式で表される。
【００２６】
【数４】
2019039941.tif 000006
【００２７】
電気回路においては、カスケード接続部に変換素子１０３を必要としないため、τOEO＝０であり、シリアル段数が大きいと応答が遅くなるため、Ｓの値は２程度までである。一方，実施の形態１における光演算器は、シリアル接続されている演算素子１０２の出力を変換素子１０３に通す必要があり、また、２よりも大きなＳを取り扱うことができる。これらの点において、電気回路と実施の形態１における光演算器の構成は大きく異なる。
【００２８】
【数５】
2019039941.tif 000007
【００２９】
図３に示すように、Ｍ段のカスケードとＭ＋１段のカスケードの遅延量がある入力数Ｎで逆転し、それ以上の入力数において、Ｍ段のカスケードよりも、Ｍ＋１段のカスケードの遅延が小さくなる。
【００３０】
つまり、Ｆ（Ｎ0，Ｍ）＝Ｆ（Ｎ0，Ｍ＋１）を満足するＮ＝Ｎ0を損益分岐点とすると、これを超える入力数においてＭ＋１段、越えない入力数においてＭ段のカスケード段数を採用することにより、遅延を小さく抑えることが可能となる。またＮ＝Ｎ0においては、Ｍ＋１段のカスケード段数を採用することでより小さなＳを採用し、光シリアル回路のロスの問題を解消することができる。
【００３１】
次に、Ｎをある特定の値に固定し、Ｓ，Ｍ＝ｌｏｇS（Ｎ）をパラメータとしたときの遅延特性に着目する。実施の形態１における光演算器では、Ｍ，Ｓを自然数として取り扱う必要があるが、ここでは実数範囲に拡張し、演算遅延を（４）式で表記することとする。
【００３２】
【数６】
2019039941.tif 000008
【００３３】
また、電気回路、光回路の遅延は、それぞれ（６），（７）式で表される。ここで、電気回路においては、カスケード接続部にＯＥ変換素子が不要のためτOEO＝０とし、実施の形態における光演算器と区別するためτgate＝τCMOSとした。
【数７】
2019039941.tif 000009
【００３４】
さて、（８）式右辺の最大値は下記の式で表され、それが１より小さい条件において、実施の形態１における光演算器の遅延が電気回路よりも小さくなる。
【００３５】
【数８】
2019039941.tif 000010
【００３６】
つまり、ＣＭＯＳのスイッチング時間のｅ1-p倍よりも小さな伝播遅延を有する光パスゲート（演算素子１０２）を用い、Ｓ0＝ｅp段のシリアル接続を構成し、シリアル接続回路から出力される光信号を、応答速度がＣＭＯＳのスイッチング時間のｅ（ｐ−１）倍よりも小さな光電変換素子（変換素子１０３）を通し、Ｍ0＝ｌｏｇS0（Ｎ）段のカスケード接続することにより、電気回路よりも遅延の小さな光回路を構成することができる。
【００３７】
言い換えると、カスケード接続の段数Ｍおよび演算素子１０２の個数Ｓは、入力信号の数Ｎと、演算素子１０２における演算時間τgateと、変換素子１０３における処理時間τOEOとから、（４）式により決定することができる。
【００３８】
ここで、変換素子１０３の応答速度は、電気回路程度のもので充分であるが、演算素子１０２の伝播遅延は、ＣＭＯＳの応答速度より小さくなければならない。これについては、光の伝搬速度は半導体中で１００μｍ／ｐｓ程度であることを勘案し、素子長が１０００μｍ以下の光パスゲート（演算素子１０２）をナノフォトニクスで実現することにより、この条件を達成する。
【００３９】
さて、上述のＳ0，Ｍ0は実数値であるが、実際の回路においてはこれらを自然数としてとり扱う必要がある。このためこれらの値として下記の自然数Ｓ、Ｍを採用するものとする。
【００４０】
まずカスケード段数Ｍは、実数値Ｍ0＝ｌｏｇS0（Ｎ）の小数点以下を切り上げた値か切り捨てた値を採用する候補とする。実数値Ｍ0を挟む２つの自然数の間で演算遅延に最低値が現れることは（３）式より明らかである。シリアル接続段数Ｓは採用するＭの候補を（３）式に代入することで得る。２つのＳとＭの候補を（３）式に代入し、Ｆ（Ｎ，Ｍ）がより小さいＳとＭを採用することにより、最小の演算遅延を得ることができる。
【００４１】
【数９】
2019039941.tif 000011
【００４２】
またＦ（Ｎ，Ｍ）の値が同じになる場合は、先に述べた理由により、Ｍ0の小数点以下を切り上げた値をＭとして採用すればよい。このＭの設定方法は損益分岐点Ｎ0を考慮したときの方法と同じである。
【００４３】
さて、損益分岐点Ｎ0の存在や遅延がＳ0で極小値をとる特性は、演算遅延がＳに比例して増加するシリアル接続部と、Ｓの増加とともに減少するカスケード接続部が混在することに起因するため、Ｓ，τgate，τOEOが回路内で均一ではないケースにおいても同様の傾向が現れる。
【００４４】
このようなケースにおいては、（２）式が最小となる自然数ＳをＳ（Ｎ，Ｍ）とし、自然数Ｍの値を１から徐々に増やしたときに、Ｆ（Ｎ，Ｍ）＜Ｆ（Ｎ，Ｍ＋１）となるときのＭとＳ（Ｎ，Ｍ）を採用する。ただし、Ｓの値が許容される最大値Ｓmax（自然数）よりも大きくなる場合は、Ｓ≦ＳmaxとなるまでＭの値を増やすものとする。これにより、最小の遅延を得ることができる。
【００４５】
以上のように、実施の形態１によれば、ＣＭＯＳのスイッチング時間よりも小さな伝播遅延を有する演算素子１０２（例えば光パスゲート）により、電気回路では不可能な多段のシリアル接続回路により演算部１０１を構成し、演算素子１０２のシリアル接続回路から出力される光信号を変換素子１０３で光電変換し、後段の演算素子１０２に接続（入力）することにより、電気回路よりも遅延の小さな光回路を構成することができる。
【００４６】
図３には、上述の多入力ＡＮＤ演算における、ＣＭＯＳ回路と実施の形態１における光演算器との演算遅延の比較が示されている。光回路の遅延は、τgate＝０．２ｐｓ,τOEO＝２５ｐｓとして（３）式を用いて計算され、Ｍ＝１〜３の曲線で示される。また、この場合、Ｓ0＝４４．７であり（４）式で表される特性曲線は、（３）式で表される曲線と、Ｎ＝Ｓ0Mにおいて接する直線となる。またＣＭＯＳ回路の遅延は、τgate＝１０ｐｓ,τOEO＝０ｐｓ，Ｓ＝２として（４）式を用いて計算されている。
【００４７】
この結果は、高々１〜２回段のカスケード接続を採用するだけで、ＣＭＯＳ回路よりも大幅に低遅延な演算を実現できることを示している。例えばＮ＝１０００の場合、（３）式と（５）式よりＭ0＝１．８２となり（３）式よりＦ（１０００，１）S=1000＞Ｆ（１０００，２）S=32となることから、Ｍ＝２とＳ＝３２を採用する。この場合、図４に示すように、３２段×３２段の１×１光パスゲート１０２ａによる正方形状の回路になっており、光が入力されてからシリアル接続された１×１光パスゲート１０２ａ（演算素子１０２）を通過する時間は全て等しくなる。ただし、３２2＝１０２４＞１０００となるため、無駄なゲートが存在する。
【００４８】
【数１０】
2019039941.tif 000012
【００４９】
［実施の形態２］
次に、本発明の実施の形態２における光演算器について、図５を参照して説明する。なお、実施の形態２においても、図１を用いて説明したように、カスケード接続された複数の演算部１０１を備える。演算部１０１は、図５に示すように、入力される光信号に対して１つの光信号を出力するＳ個（Ｓは自然数）の演算素子１０２ｂがシリアルに接続されて構成されている。
【００５０】
実施の形態２において、例えば、シリアル接続される最初の演算素子１０２ｂは、変換素子１０３ｂにつながる導波路に光信号λ1を光学的に結合する。シリアル接続される次の演算素子１０２ｂは、最初の演算素子１０２ｂから出力された光に、光号λ2を合波する。演算素子１０２ｂは、例えば、リング共振器から構成された合波器である。
【００５１】
また、実施の形態２において、演算部１０１は、Ｓ個の演算素子１０２ｂから光信号が出力された場合に値１の光信号を出力し、Ｓ個の演算素子１０２ｂから光信号が出力された場合以外に値０の光信号を出力する変換素子１０３ｂを備える。この構成では、多入力ＯＲ演算回路となる。
【００５２】
実施の形態２において、各演算素子１０２ｂにおける合波のパワー結合効率をαとし、入力数Ｎ，Ｍ＝１つまりＳ＝Ｎとした場合、（ただ一つの入力のみが合波するケース）／（全ての入力が合波しないケース）の強度比は｛α＋（１−α）×（Ｎ−１）｝／｛（１−α）×Ｎ｝となる。この値は、ＯＲの演算出力の”０”と”１”の差が一番小さくなるときのコントラスト比である。
【００５３】
α＝０．９の場合のコントラスト比は、Ｎ＝１００，１０の場合においてそれぞれ、０．３３ｄＢ，２．６ｄＢとなり、Ｎが大きいほどコントラストは劣化する。
【００５４】
ここで、Ｓmax＝１０を、変換素子１０３ｂの光受信側でコントラストが検知できるシリアル接続段数の最大値とし、光演算器の回路特性を実施の形態１と同じとしたときの、Ｎ＝１００のＯＲ演算を考える。
【００５５】
この場合、（３）式と（５）式よりＳ0＝４４．７，Ｍ0＝１．２となり、Ｆ（１００，１）S=100＜Ｆ（１００，２）S=10よりＭ＝１となる。ただしＳ＝１００となりＳmax＝１０を越えてしまうため、Ｍ＝２、Ｓ＝１０を採用することとなる。これにより、コントラスト低下の抑制を担保しながら、最低限の遅延を実現することができる。
【００５６】
［実施の形態３］
次に、本発明の実施の形態３における光演算器について、図６を参照して説明する。実施の形態３では、多段にカスケード接続されたｋ＝１段目の複数の演算部１０１ａを、１入力１出力のマッハツェンダー干渉計から構成された演算素子１０２ｃと変換素子１０３ｃから構成している。マッハツェンダー干渉計の２つのアームに設けられた各々電気制御部に、入力信号Ｘ、入力信号Ｙが入力される。なお、ｋ＝２段目以降の演算部１０１は、前述した実施の形態１と同様の演算素子１０２と変換素子１０３から構成している。実施の形態３では、合成関数ＸＮＯＲ−ＡＮＤの演算を行う。
【００５７】
ここで、変換素子１０３ｃは、実施の形態１の変換素子１０３と同じである。変換素子１０３ｃから出力される電気信号は、シリアル接続されているＮ個の演算素子１０２ｃの、各々の入力信号ｘ（ｘ1〜ｘNのＮ桁のバイナリ信号）と入力信号ｙ（ｙ1〜ｙNのＮ桁のバイナリ信号）において、それぞれの桁でＡＮＤをとった結果となり、全ての桁で合致をしたときに１、そうではないときに０となる。つまり、１段目だけ（Ｍ＝１）でも合成関数ＸＮＯＲ−ＡＮＤの演算を行うことができる。
【００５８】
ただし、ｋ＝１段目だけ（Ｍ＝１）では、各桁の合致の判定出力を、ＡＮＤM（Ａ1，・・・、ＡN），Ａj＝ＸＮＯＲ（Ｘj，Ｙj）、として表現したものとなっており、Ａj＝ＸＮＯＲ（Ｘj，Ｙj）は、マッハツェンダー干渉計型の強度変調器である演算素子１０２ｃの２入力端子に電子信号（Ｘj，Ｙj）を入力することで実行し、ＡＮＤM（Ａ1，・・・，ＡN）は、上記演算を実行する演算素子１０２ｃをシリアルに接続することで実行する。ＡＮＤMは、一般的に、実施の形態１における演算素子１０２ａによるＡＮＤよりも構造が大きいため、ＡＮＤ演算における遅延が大きくなってしまう。
【００５９】
この問題を解決するため、ここでは、ＡＮＤ演算の部分にカスケード接続を採用することを考える。つまり、（２）式において、ｋ＝１段目をτgateの大きなＡＮＤMで構成し、ｋ≧２段目をτgateの小さな実施の形態１における演算部１０１によるＡＮＤで構成する。この場合、（３）式は（１２）式に書き換えられる。ここでＳ1、τgate1はｋ＝１段目のシリアル接続段数と１つの演算素子１０２ｃ伝播遅延、Ｓ2、τgate2はｋ＝２段目以降のシリアル接続段数と１つの演算素子１０２の伝播遅延、Ｌはｋ＝２段目への総入力数、Ｍはｋ＝２段目以降のカスケード段数である。ただし、（１２）式ではＭが自然数の場合に限り成り立ち、Ｍ＝０の場合にはＦ（Ｎ，Ｍ）＝βＳ１τgate2とする。
【００６０】
【数１１】
2019039941.tif 000013
【００６１】
例えば、Ｎ＝１００００，α＝１２５，β＝１００の場合は、下記よりＭ＝３，Ｓ1＝１，Ｓ2＝２２、を採用する。
【００６２】
Ｍ＝０のとき，Ｆ（１００００，０）＝（１０6）τgate2，
Ｍ＝１のとき，Ｓ1＝１０1，Ｓ2＝１０3，Ｆ（１００００，１）＝（２１２５）τgate2，
Ｍ＝２のとき，Ｓ1＝１０0，Ｓ2＝１０2，Ｆ（１００００，２）＝（５５０）τgate2，
Ｍ＝３のとき，Ｓ1＝１０0，Ｓ2＝２２，Ｆ（１００００，３）＝（５４１）τgate2，
Ｍ＝４のとき，Ｓ1＝１０0，Ｓ2＝１０1，Ｆ（１００００，４）＝（６４０）τgate2，
【００６３】
例えば、Ｎ＝１００，α＝１２５，β＝１００の場合は、下記よりＭ＝１，Ｓ1＝１，Ｓ2＝１００、を採用する。
【００６４】
Ｍ＝０のとき，Ｆ（１００００，０）＝（１０4）τgate2，
Ｍ＝１のとき，Ｓ1＝１０0，Ｓ2＝１０2，Ｆ（１００００，１）＝（３２５）τgate2，
Ｍ＝２のとき，Ｓ1＝１０0，Ｓ2＝１０1，Ｆ（１００００，２）＝（３７０）τgate2。
【００６５】
［実施の形態４］
次に、本発明の実施の形態４における光演算器について、図７を参照して説明する。実施の形態４では、多段にカスケード接続されたｋ＝１段目の複数の演算部１０１ａを、２入力２出力のマッハツェンダー干渉計を２段にシリアル接続した演算素子１０２ｄから構成している。この構成において、演算素子１０２ｄの前段のマッハツェンダー干渉計への電気制御入力をＸiとし、後段のマッハツェンダー干渉計への電気制御入力をＹiとする。なお、ｋ＝２段目以降の演算部１０１は、前述した実施の形態２と同様の演算素子１０２ｂと変換素子１０３ｂから構成している。実施の形態４では、合成関数ＸＯＲ−ＯＲの演算を行う。
【００６６】
本構成のｋ＝１段目において、実施の形態３における変換素子１０３ｃに対応する素子は不要であり、演算部１０１ａからの光信号出力は、シリアル接続されているＮ個の演算素子１０２ｄの、各々の入力信号ｘ（ｘ1〜ｘNのＮ桁のバイナリ信号）と入力信号ｙ（ｙ1〜ｙNのＮ桁のバイナリ信号）において、それぞれの桁におけるＸＯＲの演算結果を、全ての桁でＯＲをとった結果となり、全ての桁で合致をしたときに０、そうではないときに１となる。つまり、ｋ＝１段目だけ（Ｍ＝１）でも合成関数ＸＯＲ−ＯＲの演算を行うことができる。
【００６７】
ただしｋ＝１段目だけ（Ｍ＝１）の出力は、ＯＲM（Ａ1，・・・、ＡN），Ａj＝ＸＯＲ（Ｘj，Ｙj）、として表現したものとなっており、２つのマッハツェンダー干渉計をシリアル接続した演算素子１０２ｄの２入力端子に電子信号（Ｘj，Ｙj）を入力し、１０２ｄに接続する光源とはクロス側のポートからの信号を出力とすることでＡj＝ＸＯＲ（Ｘj，Ｙj）を実行し、前段の１０２ｄからの出力信号を光源のつながるポートとは異なる入力ポートに接続することでＯＲM（Ａ1，・・・，ＡN）を実行する。このＯＲMは、マッハツェンダー干渉計をもちいることで実現されているため、一般的に、実施の形態２における演算素子１０２ｂによるＯＲよりも構造が大きく、ＯＲ演算における遅延が大きくなってしまう。
【００６８】
この問題を解決するため、ここではＯＲ演算の部分にカスケード接続を採用することを考える。つまり、（２）式において、ｋ＝１段目をτgateの大きなＯＲMで構成し、ｋ≧２段目をτgateの小さな実施の形態２における演算部１０１によるＯＲで構成する。この場合、（３）式は（１４）式に書き換えられる。ここでＳ1、τgate1はｋ＝１段目のシリアル接続段数と１つの演算素子１０２ｄ伝播遅延、Ｓ2、τgate2はｋ＝２段目以降のシリアル接続段数と１つの演算素子１０２の伝播遅延、Ｌはｋ＝２段目への総入力数、Ｍはｋ＝２段目以降のカスケード段数である。ただし、（１４）式ではＭが自然数の場合に限り成り立ち、Ｍ＝０の場合にはＦ（Ｎ，Ｍ）＝βＳ1τgate2とする。
【００６９】
【数１２】
2019039941.tif 000014
【００７０】
なお、他の構成は、前述した実施の形態３と同様であり、説明は省略する。
【００７１】
実施の形態３のＸＮＯＲ−ＡＮＤの出力の０と１を反転させた結果は、実施の形態４のＸＯＲ−ＯＲの出力結果と同じである。また、実施の形態１における多入力ＡＮＤよりも、実施の形態２における多入力ＯＲの方が高速な回路を実装できる場合がある。例えば、実施の形態２ではシリアルに接続した演算素子１０２ｂを変換素子１０３ｂに接続したが、パラレルに接続した演算素子１０２ｂを変換素子１０３ｂに接続して実施の形態２と同じ効果を得ることができる。
【００７２】
この場合、複数の変換素子１０２ｂからの出力を一括して変換素子１０３ｂに接続するため演算部１０１の構成は大きくなるが、演算子１０２ｂの演算は並列に処理されるため、シリアルに接続したものよりも遅延が小さくなる可能性がある。つまり、実施の形態３のＸＮＯＲ−ＡＮＤではなく、実施の形態４のＸＯＲ−ＯＲを用いた演算が高速になる場合がある。なお、多ビットのパターンマッチングはＸＮＯＲ−ＡＮＤを用いてもＸＯＲ−ＯＲを用いても実装が可能あるためニーズに合った回路構成を選択することができる。
【００７３】
さて、本実施の形態におけるｋ＝１段目の演算部は、図８の（ａ）を図８の（ｃ）の構成にシリアルに接続したものである。ここで図８の（ａ）は２入力２出力の演算素子の構成を示し、電気制御信号Ｘi，Ｙiに対し、ＸiとＹiが合致するときと合致しないときに出力ポートが切り替わる演算素子であればよい。そして図８の（ｃ）の構成は、初段の演算素子の入力ポートの一方に光源を接続し、ＸiとＹiが合致しない（ＸＯＲ）ときの出力ポートを次段の演算素子の入力ポートに接続し、この接続に使用されたポートとは反対側の入力ポートに光源を接続すればよい［説明１］。これにより、ｋ＝１段目のみ（Ｍ＝１）でＸＯＲ−ＯＲの演算を実現することができる。またｋ＝２段目以降を実施例４の構成とすることにより、より遅延の小さなＸＯＲ−ＯＲ演算が得られることは明白である。
【００７４】
また、本実施例のｋ＝１段目の演算部を、図８（ａ）を図８（ｄ）の構成にシリアル接続した構成に変更すると、ＸＮＯＲ−ＡＮＤの演算が可能となる。ここで図８（ｄ）は、初段の演算素子の入力ポートの一方に光源を接続し、ＸiとＹiが合致する（ＸＮＯＲ）ときの出力ポートを次段の演算素子の入力ポートに接続すればよい［説明２］。これにより、ｋ＝１段目のみ（Ｍ＝１）でＸＮＯＲ−ＡＮＤの演算を実現することができる。またｋ＝２段目以降を実施例３の構成とすることにより、より遅延の小さなＸＮＯＲ−ＡＮＤ演算が得られることは明白である。
【００７５】
ここで、図８（ａ）は、２つの２入力２出力のマッハ・ツェンダー干渉計の組み合わせにより構成されており、それぞれのマッハ・ツェンダー干渉計の片方のアームに電気制御信号Ｘi，Ｙiを与える。電気制御信号を与えられた側のアームは、そこを伝播する光の位相をπシフトさせる設定となっており、２本のアームの一方を電気制御する本構成の場合、２入力２出力のマッハ・ツェンダー干渉計は、電気制御入力が有る／無いときに、光源を接続した入力ポートに対しバー側／クロス側の出力ポートから光信号を出力する。これにより、図８（ａ）の演算素子は、光源とはクロス側の出力ポートからＸＯＲ（Ｘi，Ｙi）出力し、その反対のバーポートからＸＮＯＲ（Ｘi，Ｙi）出力する。
【００７６】
そのため、図８（ａ）の演算素子の機能は、図８（ｂ）に示される１つの２入力２出力のマッハ・ツェンダー干渉計１０２ｅの両方のアームのそれぞれに電気制御信号Ｘi，Ｙiを与えることでも実現可能である。つまり、一方のアームに電気制御信号が与えられたときに位相差がπ、両方のアームに電気信号が与えられたまたは両方のアームに与えられなかったときに位相差がゼロとなることを利用する。このとき出力ポートにおけるＸＮＯＲとＸＯＲの位置関係は図８の（ａ）と逆になるが、前述した［説明１］，［説明２］に従い、ＸＯＲ−ＯＲ演算のときはＸＯＲの出力ポートを次段に接続し、ＸＮＯＲ−ＡＮＤ演算のときはＸＮＯＲの出力ポートを次段に接続すればよい。図８の（ｂ）に示す素子の長さ（素子長）は、図８の（ａ）に示す素子長の半分であるため、図８の（ａ）に示す構成を図８の（ｂ）に示す構成に代替することにより、より小さな演算遅延を得ることができる。
【００７７】
また、図８（ａ）で用いた２入力２出力のマッハ・ツェンダー干渉計は、２入力２出力の方向性結合器でも代替可能である。つまり、２入力２出力の方向性結合器の結合状態を電気制御信号で制御し、光信号が入力されたポートに対しクロス側の出力ポートから光信号が出力される完全結合状態と、光信号が入力されたポートに対しバー側の出力ポートから光信号が出力される状態を切り替える。方向性結合器は、マッハ・ツェンダー干渉計よりもサイズを小さくできるため、この代替により、より小さな演算遅延を得ることができる。
【００７８】
更に、図８（ａ）で用いた２入力２出力のマッハ・ツェンダー干渉計は、リング共振器などを用いた２入力２出力のＸＯＲ、ＸＮＯＲ演算素子（非特許文献３）でも代替可能である。つまり、２本の導波路の間をリング共振器を介して結合させた２入力２出力の演算素子において、共振器の共鳴状態を電気制御信号で制御し、光信号が入力されたポートに対しクロス側の出力ポートから光信号が出力される共鳴状態と、光信号が入力されたポートに対しバー側の出力ポートから光信号が出力される非共鳴状態を切り替える。リング共振器は、マッハ・ツェンダー干渉計よりもサイズを小さくできるため、この代替により、より小さな演算遅延を得ることができる。
【００７９】
以上に説明したように、入力信号に対して１つの光信号を出力するＳ個（Ｓは自然数）の演算素子をシリアルに接続してＳ個の入力信号により１つの光信号を演算出力する複数の演算部をカスケード接続したので、より高速に光演算ができるようになる。
【００８０】
なお、本発明は以上に説明した実施の形態に限定されるものではなく、本発明の技術的思想内で、当分野において通常の知識を有する者により、多くの変形および組み合わせが実施可能であることは明白である。
【符号の説明】
【００８１】
１０１…演算部、１０２…演算素子、１０３…変換素子。
【図１】
2019039941.tif 000016
【図２】
2019039941.tif 000017
【図３】
2019039941.tif 000018
【図４】
2019039941.tif 000019
【図５】
2019039941.tif 000020
【図６】
2019039941.tif 000021
【図７】
2019039941.tif 000022
【図８】
2019039941.tif 000023