TOP > 国内特許検索 > 光演算器 > 明細書

明細書 :光演算器

発行国 日本国特許庁(JP)
公報種別 公開特許公報(A)
公開番号 特開2019-039941 (P2019-039941A)
公開日 平成31年3月14日(2019.3.14)
発明の名称または考案の名称 光演算器
国際特許分類 G02F   3/00        (2006.01)
G06E   1/00        (2006.01)
FI G02F 3/00 501
G06E 1/00
請求項の数または発明の数 5
出願形態 OL
全頁数 16
出願番号 特願2017-159096 (P2017-159096)
出願日 平成29年8月22日(2017.8.22)
発明者または考案者 【氏名】新家 昭彦
【氏名】納富 雅也
【氏名】野崎 謙悟
【氏名】北 翔太
【氏名】高田 健太
【氏名】石原 亨
【氏名】小野寺 秀俊
【氏名】江川 巧
出願人 【識別番号】000004226
【氏名又は名称】日本電信電話株式会社
【識別番号】504132272
【氏名又は名称】国立大学法人京都大学
個別代理人の代理人 【識別番号】100098394、【弁理士】、【氏名又は名称】山川 茂樹
【識別番号】100153006、【弁理士】、【氏名又は名称】小池 勇三
【識別番号】100064621、【弁理士】、【氏名又は名称】山川 政樹
審査請求 未請求
テーマコード 2K102
Fターム 2K102AA21
2K102BA08
2K102BA31
2K102BB01
2K102BB04
2K102BC01
2K102BC04
2K102BD01
2K102CA18
2K102DA04
2K102DB02
2K102DB04
2K102DC07
2K102DC08
2K102EB20
2K102EB22
要約 【課題】より高速に光演算ができるようにする。
【解決手段】入力信号に対して1つの光信号を出力するS個(Sは自然数)の演算素子102をシリアルに接続して構成され、S個の入力信号により1つの光信号を演算出力する複数の演算部101をカスケード接続する。前段のS個の演算部101から出力された信号が、後段の1つの演算部101に入力される。
【選択図】 図1
特許請求の範囲 【請求項1】
入力信号に対して1つの光信号を出力するS個(Sは自然数)の演算素子がシリアルに接続されて構成され、S個の前記入力信号により1つの光信号を演算出力する複数の演算部を備え、
前記複数の演算部は、カスケード接続され、
前段のS個の演算部から出力された信号が、後段の1つの演算部に入力される
ことを特徴とする光演算器。
【請求項2】
請求項1記載の光演算器において、
前記入力信号は、電気信号であり、
前記複数の演算部の各々は、シリアル接続されている最終段の前記演算素子から出力された光信号を光電変換する変換素子を備える
ことを特徴とする光演算器。
【請求項3】
請求項1記載の光演算器において、
前記入力信号は、光信号であり、
前記複数の演算部の各々は、S個の前記演算素子から光信号が出力された場合に値1を出力し、S個の前記演算素子から光信号が出力された場合以外に値0を出力する変換素子を備える
ことを特徴とする光演算器。
【請求項4】
請求項2または3記載の光演算器において、
前記カスケード接続の段数Mおよび前記演算素子の個数Sは、前記入力信号の数Nと、前記演算素子における演算時間τgateと、前記変換素子における処理時間τOEOとから、(A)式により決定されることを特徴とする光演算器。
【数1】
JP2019039941A_000015t.gif

【請求項5】
請求項1記載の光演算器において、
1段目の前記複数の演算部は、前記演算素子がマッハツェンダー干渉計から構成され、
2段目以降の前記複数の演算部における前記演算素子は、電気号である1つの前記入力信号に対して1つの光信号を出力する
ことを特徴とする光演算器。
発明の詳細な説明 【技術分野】
【0001】
本発明は、光電融合型の演算回路から構成された光演算器に関する。
【背景技術】
【0002】
現在の電子演算回路は、演算の処理速度を向上させるため、チップサイズや素子サイズを極限まで小さくする工夫がなされている。これは、回路内の抵抗(R)とキャパシタンス(C)が、信号の伝搬を大きく律速しているため、演算速度を上げるには、チップサイズや素子サイズを小さくするしかないためである。このため、狭面積の論理ブロックやコアに素子を詰め込み、マルチコア・メニーコア化などの工夫がなされているが、これらをつなぐための配線が新たな「遅延」を生み、演算の高速化に限界が見えつつある。
【0003】
一方、光通信などで用いられる光配線や光パスゲートは、この配線経路内のCやRに無依存で光信号を伝播させることができる。また、ナノフォトニクスの進展により、光ゲートの消費エネルギーは飛躍的に改善され、このエネルギーコスト[J/bit]は、CMOSゲートと光パスゲートとで同程度のレベルになりつつある。このため、チップ内やチップ間の通信を光化する様々な研究がなされている。
【0004】
ここで、光ゲートの電気制御ポート側から信号入力する接続形態をカスケード接続、スイッチの光伝搬経路が連続的に接続されている形態をシリアル接続と定義する。例えばシリアル接続とカスケード接続が混在した光電融合型の回路を想定した場合、カスケード接続の部分が光と電気の境界となる。この境界において、回路中を伝搬する光信号は一度電気に変換(OE変換)されることになる。この変換は、電気回路に律速されるため、OE変換の多用される回路は、光を使うことのメリットが小さい。このため、光と電気の境界、つまりカスケード接続の配置場所と数が、回路構成の重要なポイントとなる。
【0005】
ここでN入力のAND回路を例に取り上げる。CMOS回路の場合、シリアルに接続されたパスブロックゲートでS入力素子を構成し、これを 段のツリー状にカスケード接続することで、N入力関数を構成する。この場合、N入力関数の遅延時間は下記の式となる。
【0006】
【数1】
JP2019039941A_000003t.gif

【0007】
この場合、シリアル接続部の電気信号伝播遅延は、ゲート数分の抵抗とキャパシタンスの影響を受けるため、シリアル接続の段数Sの2乗に比例して大きくなってしまう問題がある。これを解消するために動作電圧を上げると、消費電力も上がってしまうため、CMOS回路のSはせいぜい2にとどまっている。また小さなSを用いるには、カスケード段数Mを増加させる必要があり、結果的にN入力関数の遅延を増加させる問題がある。
【0008】
光回路の場合、シリアル接続のみで遅延の小さな演算が可能であることが知られている(非特許文献1,2)。これは、シリアル部分の光信号伝播遅延は、ゲートの長さにのみ依存する、つまり、遅延はSに比例する特徴を持ち、上述した電気信号伝播遅延の問題を緩和することが可能となるためである。
【先行技術文献】
【0009】

【非特許文献1】J. Hardy et al., "Optics inspired logic architecture", Optics Express, vol. 15, no. 1, pp. 150-165, 2007.
【非特許文献2】浅井哲也 他、「二分決定グラフにもとづくフォトニック結晶集積デバイス」、2000年電子情報通信学会総合大会講演論文集、 386-387頁、2000年。
【非特許文献3】Q. Xu et al., "Reconfigurable optical directed-logic circuits using microresonator-based optical switches", Optics Express, vol. 19, no. 6, pp. 5244-5259, 2011.
【非特許文献4】石原亨 他、「光パスゲート論理に基づく並列加算回路の提案と光電混載回路シミュレータによる動作検証」、信学技報、 vol. 116, no. 94, pp. 109-114頁、2016年。
【発明の概要】
【発明が解決しようとする課題】
【0010】
しかしながら、光強度ロスもSに比例するため、電気よりも大きなSを取り扱うことは可能であるが、あまりに大きなSを取り扱う場合は、信号劣化の対策が必要となる。
【0011】
本発明は、以上のような問題点を解消するためになされたものであり、より高速に光演算ができるようにすることを目的とする。
【課題を解決するための手段】
【0012】
本発明に係る光演算器は、入力信号に対して1つの光信号を出力するS個(Sは自然数)の演算素子がシリアルに接続されて構成され、S個の入力信号により1つの光信号を演算出力する複数の演算部を備え、複数の演算部は、カスケード接続され、前段のS個の演算部から出力された信号が、後段の1つの演算部に入力される。
【0013】
上記光演算器において、入力信号は、電気信号であり、複数の演算部の各々は、シリアル接続されている最終段の演算素子から出力された光信号を光電変換する変換素子を備える。
【0014】
上記光演算器において、入力信号は、光信号であり、複数の演算部の各々は、S個の演算素子から光信号が出力された場合に値1を出力し、S個の演算素子から光信号が出力された場合以外に値0を出力する変換素子を備える。
【0015】
上記光演算器において、カスケード接続の段数Mおよび演算素子の個数Sは、入力信号の数Nと、演算素子における演算時間τgateと、変換素子における処理時間τOEOとから、(A)式により決定される。
【0016】
【数2】
JP2019039941A_000004t.gif

【0017】
上記光演算器において、1段目の複数の演算部は、演算素子がマッハツェンダー干渉計から構成され、2段目以降の複数の演算部における演算素子は、電気信号である1つの入力信号に対して1つの光信号を出力するようにしてもよい。
【発明の効果】
【0018】
以上説明したことにより、本発明によれば、より高速に光演算ができるという優れた効果が得られる。
【図面の簡単な説明】
【0019】
【図1】図1は、本発明の実施の形態1における光演算器の構成を示す構成図である。
【図2】図2は、本発明の実施の形態1における光演算器の演算部101の構成を示す構成図である。
【図3】図3は、AND演算を実施する演算器(演算回路)の演算遅延を説明するための説明図である。
【図4】図4は、本発明の実施の形態1における光演算器の一部構成を示す構成図である。
【図5】図5は、本発明の実施の形態2における光演算器の演算部101の構成を示す構成図である。
【図6】図6は、本発明の実施の形態3における光演算器の構成を示す構成図である。
【図7】図7は、本発明の実施の形態4における光演算器の構成を示す構成図である。
【図8】図8は、本発明における2入力2出力のXOR、XNOR演算素子と、その組み合わせによるXNOR-AND,XOR-OR演算部の構成を示す構成図である。
【発明を実施するための形態】
【0020】
以下、本発明の実施の形態について説明する。

【0021】
[実施の形態1]
はじめに、本発明の実施の形態1における光演算器について、図1を参照して説明する。この光演算器は、カスケード接続された複数の演算部101を備える。演算部101は、入力信号に対して1つの光信号を出力するS個(Sは自然数)の演算素子102がシリアルに接続されて構成されている。演算部101は、S個の入力信号により1つの光信号を演算出力する。また、前段のS個の演算部101から出力された信号が、後段の1つの演算部101に入力される。なお、図1では、S=2の場合を例示している。また、図1では、カスケード接続の段数Mが3の場合を例示している。

【0022】
ここで、実施の形態1では、入力信号は、電気信号であり、演算部101は、シリアル接続されている最終段の演算素子102から出力された光信号を光電変換する変換素子103を備える。例えば、図2に示すように、演算部101は、光源111と、1×1光パスゲート102aと、変換素子103とから構成すればよい。2つの1×1光パスゲート102aは、シリアル接続されている。この構成において、前段の1×1光パスゲート102aへの電気制御入力をxiとし、後段の1×1光パスゲート102aへの電気制御入力をyiとする。電気制御入力が1の時のみ信号を透過させるように設定すれば、前段の1×1光パスゲート102aおよび後段の1×1光パスゲート102aの両者が透過状態になる電気信号の組み合わせ、つまり、xij=1の場合のみ光が出力されるAND演算となる。

【0023】
本発明では、上述したように、光シリアル接続回路のカスケード接続により、光演算を、より高速化する。実施の形態1では、1×1光パスゲート102aによるシリアル接続回路からの光出力を、1×1光パスゲート102aの電気制御側に入力するため、変換素子103を用いている。この構成における演算遅延時間は、下記の式となる。

【0024】
【数3】
JP2019039941A_000005t.gif

【0025】
ここで計算を簡単にするため、全てのシリアル段数が均一であり、全ての1×1光パスゲート102a(演算素子102)において、演算素子102中を伝搬する光の伝播時間はτgateで均一とし、全ての変換素子103におけるOE変換時間もτOEOで均一と仮定したときの、演算遅延特性をとり扱うこととする。この条件における演算遅延は、下記の(3)式で表される。

【0026】
【数4】
JP2019039941A_000006t.gif

【0027】
電気回路においては、カスケード接続部に変換素子103を必要としないため、τOEO=0であり、シリアル段数が大きいと応答が遅くなるため、Sの値は2程度までである。一方,実施の形態1における光演算器は、シリアル接続されている演算素子102の出力を変換素子103に通す必要があり、また、2よりも大きなSを取り扱うことができる。これらの点において、電気回路と実施の形態1における光演算器の構成は大きく異なる。

【0028】
【数5】
JP2019039941A_000007t.gif

【0029】
図3に示すように、M段のカスケードとM+1段のカスケードの遅延量がある入力数Nで逆転し、それ以上の入力数において、M段のカスケードよりも、M+1段のカスケードの遅延が小さくなる。

【0030】
つまり、F(N0,M)=F(N0,M+1)を満足するN=N0を損益分岐点とすると、これを超える入力数においてM+1段、越えない入力数においてM段のカスケード段数を採用することにより、遅延を小さく抑えることが可能となる。またN=N0においては、M+1段のカスケード段数を採用することでより小さなSを採用し、光シリアル回路のロスの問題を解消することができる。

【0031】
次に、Nをある特定の値に固定し、S,M=logS(N)をパラメータとしたときの遅延特性に着目する。実施の形態1における光演算器では、M,Sを自然数として取り扱う必要があるが、ここでは実数範囲に拡張し、演算遅延を(4)式で表記することとする。

【0032】
【数6】
JP2019039941A_000008t.gif

【0033】
また、電気回路、光回路の遅延は、それぞれ(6),(7)式で表される。ここで、電気回路においては、カスケード接続部にOE変換素子が不要のためτOEO=0とし、実施の形態における光演算器と区別するためτgate=τCMOSとした。
【数7】
JP2019039941A_000009t.gif

【0034】
さて、(8)式右辺の最大値は下記の式で表され、それが1より小さい条件において、実施の形態1における光演算器の遅延が電気回路よりも小さくなる。

【0035】
【数8】
JP2019039941A_000010t.gif

【0036】
つまり、CMOSのスイッチング時間のe1-p倍よりも小さな伝播遅延を有する光パスゲート(演算素子102)を用い、S0=ep段のシリアル接続を構成し、シリアル接続回路から出力される光信号を、応答速度がCMOSのスイッチング時間のe(p-1)倍よりも小さな光電変換素子(変換素子103)を通し、M0=logS0(N)段のカスケード接続することにより、電気回路よりも遅延の小さな光回路を構成することができる。

【0037】
言い換えると、カスケード接続の段数Mおよび演算素子102の個数Sは、入力信号の数Nと、演算素子102における演算時間τgateと、変換素子103における処理時間τOEOとから、(4)式により決定することができる。

【0038】
ここで、変換素子103の応答速度は、電気回路程度のもので充分であるが、演算素子102の伝播遅延は、CMOSの応答速度より小さくなければならない。これについては、光の伝搬速度は半導体中で100μm/ps程度であることを勘案し、素子長が1000μm以下の光パスゲート(演算素子102)をナノフォトニクスで実現することにより、この条件を達成する。

【0039】
さて、上述のS0,M0は実数値であるが、実際の回路においてはこれらを自然数としてとり扱う必要がある。このためこれらの値として下記の自然数S、Mを採用するものとする。

【0040】
まずカスケード段数Mは、実数値M0=logS0(N)の小数点以下を切り上げた値か切り捨てた値を採用する候補とする。実数値M0を挟む2つの自然数の間で演算遅延に最低値が現れることは(3)式より明らかである。シリアル接続段数Sは採用するMの候補を(3)式に代入することで得る。2つのSとMの候補を(3)式に代入し、F(N,M)がより小さいSとMを採用することにより、最小の演算遅延を得ることができる。

【0041】
【数9】
JP2019039941A_000011t.gif

【0042】
またF(N,M)の値が同じになる場合は、先に述べた理由により、M0の小数点以下を切り上げた値をMとして採用すればよい。このMの設定方法は損益分岐点N0を考慮したときの方法と同じである。

【0043】
さて、損益分岐点N0の存在や遅延がS0で極小値をとる特性は、演算遅延がSに比例して増加するシリアル接続部と、Sの増加とともに減少するカスケード接続部が混在することに起因するため、S,τgate,τOEOが回路内で均一ではないケースにおいても同様の傾向が現れる。

【0044】
このようなケースにおいては、(2)式が最小となる自然数SをS(N,M)とし、自然数Mの値を1から徐々に増やしたときに、F(N,M)<F(N,M+1)となるときのMとS(N,M)を採用する。ただし、Sの値が許容される最大値Smax(自然数)よりも大きくなる場合は、S≦SmaxとなるまでMの値を増やすものとする。これにより、最小の遅延を得ることができる。

【0045】
以上のように、実施の形態1によれば、CMOSのスイッチング時間よりも小さな伝播遅延を有する演算素子102(例えば光パスゲート)により、電気回路では不可能な多段のシリアル接続回路により演算部101を構成し、演算素子102のシリアル接続回路から出力される光信号を変換素子103で光電変換し、後段の演算素子102に接続(入力)することにより、電気回路よりも遅延の小さな光回路を構成することができる。

【0046】
図3には、上述の多入力AND演算における、CMOS回路と実施の形態1における光演算器との演算遅延の比較が示されている。光回路の遅延は、τgate=0.2ps,τOEO=25psとして(3)式を用いて計算され、M=1~3の曲線で示される。また、この場合、S0=44.7であり(4)式で表される特性曲線は、(3)式で表される曲線と、N=S0Mにおいて接する直線となる。またCMOS回路の遅延は、τgate=10ps,τOEO=0ps,S=2として(4)式を用いて計算されている。

【0047】
この結果は、高々1~2回段のカスケード接続を採用するだけで、CMOS回路よりも大幅に低遅延な演算を実現できることを示している。例えばN=1000の場合、(3)式と(5)式よりM0=1.82となり(3)式よりF(1000,1)S=1000>F(1000,2)S=32となることから、M=2とS=32を採用する。この場合、図4に示すように、32段×32段の1×1光パスゲート102aによる正方形状の回路になっており、光が入力されてからシリアル接続された1×1光パスゲート102a(演算素子102)を通過する時間は全て等しくなる。ただし、322=1024>1000となるため、無駄なゲートが存在する。

【0048】
【数10】
JP2019039941A_000012t.gif

【0049】
[実施の形態2]
次に、本発明の実施の形態2における光演算器について、図5を参照して説明する。なお、実施の形態2においても、図1を用いて説明したように、カスケード接続された複数の演算部101を備える。演算部101は、図5に示すように、入力される光信号に対して1つの光信号を出力するS個(Sは自然数)の演算素子102bがシリアルに接続されて構成されている。

【0050】
実施の形態2において、例えば、シリアル接続される最初の演算素子102bは、変換素子103bにつながる導波路に光信号λ1を光学的に結合する。シリアル接続される次の演算素子102bは、最初の演算素子102bから出力された光に、光号λ2を合波する。演算素子102bは、例えば、リング共振器から構成された合波器である。

【0051】
また、実施の形態2において、演算部101は、S個の演算素子102bから光信号が出力された場合に値1の光信号を出力し、S個の演算素子102bから光信号が出力された場合以外に値0の光信号を出力する変換素子103bを備える。この構成では、多入力OR演算回路となる。

【0052】
実施の形態2において、各演算素子102bにおける合波のパワー結合効率をαとし、入力数N,M=1つまりS=Nとした場合、(ただ一つの入力のみが合波するケース)/(全ての入力が合波しないケース)の強度比は{α+(1-α)×(N-1)}/{(1-α)×N}となる。この値は、ORの演算出力の”0”と”1”の差が一番小さくなるときのコントラスト比である。

【0053】
α=0.9の場合のコントラスト比は、N=100,10の場合においてそれぞれ、0.33dB,2.6dBとなり、Nが大きいほどコントラストは劣化する。

【0054】
ここで、Smax=10を、変換素子103bの光受信側でコントラストが検知できるシリアル接続段数の最大値とし、光演算器の回路特性を実施の形態1と同じとしたときの、N=100のOR演算を考える。

【0055】
この場合、(3)式と(5)式よりS0=44.7,M0=1.2となり、F(100,1)S=100<F(100,2)S=10よりM=1となる。ただしS=100となりSmax=10を越えてしまうため、M=2、S=10を採用することとなる。これにより、コントラスト低下の抑制を担保しながら、最低限の遅延を実現することができる。

【0056】
[実施の形態3]
次に、本発明の実施の形態3における光演算器について、図6を参照して説明する。実施の形態3では、多段にカスケード接続されたk=1段目の複数の演算部101aを、1入力1出力のマッハツェンダー干渉計から構成された演算素子102cと変換素子103cから構成している。マッハツェンダー干渉計の2つのアームに設けられた各々電気制御部に、入力信号X、入力信号Yが入力される。なお、k=2段目以降の演算部101は、前述した実施の形態1と同様の演算素子102と変換素子103から構成している。実施の形態3では、合成関数XNOR-ANDの演算を行う。

【0057】
ここで、変換素子103cは、実施の形態1の変換素子103と同じである。変換素子103cから出力される電気信号は、シリアル接続されているN個の演算素子102cの、各々の入力信号x(x1~xNのN桁のバイナリ信号)と入力信号y(y1~yNのN桁のバイナリ信号)において、それぞれの桁でANDをとった結果となり、全ての桁で合致をしたときに1、そうではないときに0となる。つまり、1段目だけ(M=1)でも合成関数XNOR-ANDの演算を行うことができる。

【0058】
ただし、k=1段目だけ(M=1)では、各桁の合致の判定出力を、ANDM(A1,・・・、AN),Aj=XNOR(Xj,Yj)、として表現したものとなっており、Aj=XNOR(Xj,Yj)は、マッハツェンダー干渉計型の強度変調器である演算素子102cの2入力端子に電子信号(Xj,Yj)を入力することで実行し、ANDM(A1,・・・,AN)は、上記演算を実行する演算素子102cをシリアルに接続することで実行する。ANDMは、一般的に、実施の形態1における演算素子102aによるANDよりも構造が大きいため、AND演算における遅延が大きくなってしまう。

【0059】
この問題を解決するため、ここでは、AND演算の部分にカスケード接続を採用することを考える。つまり、(2)式において、k=1段目をτgateの大きなANDMで構成し、k≧2段目をτgateの小さな実施の形態1における演算部101によるANDで構成する。この場合、(3)式は(12)式に書き換えられる。ここでS1、τgate1はk=1段目のシリアル接続段数と1つの演算素子102c伝播遅延、S2、τgate2はk=2段目以降のシリアル接続段数と1つの演算素子102の伝播遅延、Lはk=2段目への総入力数、Mはk=2段目以降のカスケード段数である。ただし、(12)式ではMが自然数の場合に限り成り立ち、M=0の場合にはF(N,M)=βS1τgate2とする。

【0060】
【数11】
JP2019039941A_000013t.gif

【0061】
例えば、N=10000,α=125,β=100の場合は、下記よりM=3,S1=1,S2=22、を採用する。

【0062】
M=0のとき,F(10000,0)=(106)τgate2
M=1のとき,S1=101,S2=103,F(10000,1)=(2125)τgate2
M=2のとき,S1=100,S2=102,F(10000,2)=(550)τgate2
M=3のとき,S1=100,S2=22,F(10000,3)=(541)τgate2
M=4のとき,S1=100,S2=101,F(10000,4)=(640)τgate2

【0063】
例えば、N=100,α=125,β=100の場合は、下記よりM=1,S1=1,S2=100、を採用する。

【0064】
M=0のとき,F(10000,0)=(104)τgate2
M=1のとき,S1=100,S2=102,F(10000,1)=(325)τgate2
M=2のとき,S1=100,S2=101,F(10000,2)=(370)τgate2

【0065】
[実施の形態4]
次に、本発明の実施の形態4における光演算器について、図7を参照して説明する。実施の形態4では、多段にカスケード接続されたk=1段目の複数の演算部101aを、2入力2出力のマッハツェンダー干渉計を2段にシリアル接続した演算素子102dから構成している。この構成において、演算素子102dの前段のマッハツェンダー干渉計への電気制御入力をXiとし、後段のマッハツェンダー干渉計への電気制御入力をYiとする。なお、k=2段目以降の演算部101は、前述した実施の形態2と同様の演算素子102bと変換素子103bから構成している。実施の形態4では、合成関数XOR-ORの演算を行う。

【0066】
本構成のk=1段目において、実施の形態3における変換素子103cに対応する素子は不要であり、演算部101aからの光信号出力は、シリアル接続されているN個の演算素子102dの、各々の入力信号x(x1~xNのN桁のバイナリ信号)と入力信号y(y1~yNのN桁のバイナリ信号)において、それぞれの桁におけるXORの演算結果を、全ての桁でORをとった結果となり、全ての桁で合致をしたときに0、そうではないときに1となる。つまり、k=1段目だけ(M=1)でも合成関数XOR-ORの演算を行うことができる。

【0067】
ただしk=1段目だけ(M=1)の出力は、ORM(A1,・・・、AN),Aj=XOR(Xj,Yj)、として表現したものとなっており、2つのマッハツェンダー干渉計をシリアル接続した演算素子102dの2入力端子に電子信号(Xj,Yj)を入力し、102dに接続する光源とはクロス側のポートからの信号を出力とすることでAj=XOR(Xj,Yj)を実行し、前段の102dからの出力信号を光源のつながるポートとは異なる入力ポートに接続することでORM(A1,・・・,AN)を実行する。このORMは、マッハツェンダー干渉計をもちいることで実現されているため、一般的に、実施の形態2における演算素子102bによるORよりも構造が大きく、OR演算における遅延が大きくなってしまう。

【0068】
この問題を解決するため、ここではOR演算の部分にカスケード接続を採用することを考える。つまり、(2)式において、k=1段目をτgateの大きなORMで構成し、k≧2段目をτgateの小さな実施の形態2における演算部101によるORで構成する。この場合、(3)式は(14)式に書き換えられる。ここでS1、τgate1はk=1段目のシリアル接続段数と1つの演算素子102d伝播遅延、S2、τgate2はk=2段目以降のシリアル接続段数と1つの演算素子102の伝播遅延、Lはk=2段目への総入力数、Mはk=2段目以降のカスケード段数である。ただし、(14)式ではMが自然数の場合に限り成り立ち、M=0の場合にはF(N,M)=βS1τgate2とする。

【0069】
【数12】
JP2019039941A_000014t.gif

【0070】
なお、他の構成は、前述した実施の形態3と同様であり、説明は省略する。

【0071】
実施の形態3のXNOR-ANDの出力の0と1を反転させた結果は、実施の形態4のXOR-ORの出力結果と同じである。また、実施の形態1における多入力ANDよりも、実施の形態2における多入力ORの方が高速な回路を実装できる場合がある。例えば、実施の形態2ではシリアルに接続した演算素子102bを変換素子103bに接続したが、パラレルに接続した演算素子102bを変換素子103bに接続して実施の形態2と同じ効果を得ることができる。

【0072】
この場合、複数の変換素子102bからの出力を一括して変換素子103bに接続するため演算部101の構成は大きくなるが、演算子102bの演算は並列に処理されるため、シリアルに接続したものよりも遅延が小さくなる可能性がある。つまり、実施の形態3のXNOR-ANDではなく、実施の形態4のXOR-ORを用いた演算が高速になる場合がある。なお、多ビットのパターンマッチングはXNOR-ANDを用いてもXOR-ORを用いても実装が可能あるためニーズに合った回路構成を選択することができる。

【0073】
さて、本実施の形態におけるk=1段目の演算部は、図8の(a)を図8の(c)の構成にシリアルに接続したものである。ここで図8の(a)は2入力2出力の演算素子の構成を示し、電気制御信号Xi,Yiに対し、XiとYiが合致するときと合致しないときに出力ポートが切り替わる演算素子であればよい。そして図8の(c)の構成は、初段の演算素子の入力ポートの一方に光源を接続し、XiとYiが合致しない(XOR)ときの出力ポートを次段の演算素子の入力ポートに接続し、この接続に使用されたポートとは反対側の入力ポートに光源を接続すればよい[説明1]。これにより、k=1段目のみ(M=1)でXOR-ORの演算を実現することができる。またk=2段目以降を実施例4の構成とすることにより、より遅延の小さなXOR-OR演算が得られることは明白である。

【0074】
また、本実施例のk=1段目の演算部を、図8(a)を図8(d)の構成にシリアル接続した構成に変更すると、XNOR-ANDの演算が可能となる。ここで図8(d)は、初段の演算素子の入力ポートの一方に光源を接続し、XiとYiが合致する(XNOR)ときの出力ポートを次段の演算素子の入力ポートに接続すればよい[説明2]。これにより、k=1段目のみ(M=1)でXNOR-ANDの演算を実現することができる。またk=2段目以降を実施例3の構成とすることにより、より遅延の小さなXNOR-AND演算が得られることは明白である。

【0075】
ここで、図8(a)は、2つの2入力2出力のマッハ・ツェンダー干渉計の組み合わせにより構成されており、それぞれのマッハ・ツェンダー干渉計の片方のアームに電気制御信号Xi,Yiを与える。電気制御信号を与えられた側のアームは、そこを伝播する光の位相をπシフトさせる設定となっており、2本のアームの一方を電気制御する本構成の場合、2入力2出力のマッハ・ツェンダー干渉計は、電気制御入力が有る/無いときに、光源を接続した入力ポートに対しバー側/クロス側の出力ポートから光信号を出力する。これにより、図8(a)の演算素子は、光源とはクロス側の出力ポートからXOR(Xi,Yi)出力し、その反対のバーポートからXNOR(Xi,Yi)出力する。

【0076】
そのため、図8(a)の演算素子の機能は、図8(b)に示される1つの2入力2出力のマッハ・ツェンダー干渉計102eの両方のアームのそれぞれに電気制御信号Xi,Yiを与えることでも実現可能である。つまり、一方のアームに電気制御信号が与えられたときに位相差がπ、両方のアームに電気信号が与えられたまたは両方のアームに与えられなかったときに位相差がゼロとなることを利用する。このとき出力ポートにおけるXNORとXORの位置関係は図8の(a)と逆になるが、前述した[説明1],[説明2]に従い、XOR-OR演算のときはXORの出力ポートを次段に接続し、XNOR-AND演算のときはXNORの出力ポートを次段に接続すればよい。図8の(b)に示す素子の長さ(素子長)は、図8の(a)に示す素子長の半分であるため、図8の(a)に示す構成を図8の(b)に示す構成に代替することにより、より小さな演算遅延を得ることができる。

【0077】
また、図8(a)で用いた2入力2出力のマッハ・ツェンダー干渉計は、2入力2出力の方向性結合器でも代替可能である。つまり、2入力2出力の方向性結合器の結合状態を電気制御信号で制御し、光信号が入力されたポートに対しクロス側の出力ポートから光信号が出力される完全結合状態と、光信号が入力されたポートに対しバー側の出力ポートから光信号が出力される状態を切り替える。方向性結合器は、マッハ・ツェンダー干渉計よりもサイズを小さくできるため、この代替により、より小さな演算遅延を得ることができる。

【0078】
更に、図8(a)で用いた2入力2出力のマッハ・ツェンダー干渉計は、リング共振器などを用いた2入力2出力のXOR、XNOR演算素子(非特許文献3)でも代替可能である。つまり、2本の導波路の間をリング共振器を介して結合させた2入力2出力の演算素子において、共振器の共鳴状態を電気制御信号で制御し、光信号が入力されたポートに対しクロス側の出力ポートから光信号が出力される共鳴状態と、光信号が入力されたポートに対しバー側の出力ポートから光信号が出力される非共鳴状態を切り替える。リング共振器は、マッハ・ツェンダー干渉計よりもサイズを小さくできるため、この代替により、より小さな演算遅延を得ることができる。

【0079】
以上に説明したように、入力信号に対して1つの光信号を出力するS個(Sは自然数)の演算素子をシリアルに接続してS個の入力信号により1つの光信号を演算出力する複数の演算部をカスケード接続したので、より高速に光演算ができるようになる。

【0080】
なお、本発明は以上に説明した実施の形態に限定されるものではなく、本発明の技術的思想内で、当分野において通常の知識を有する者により、多くの変形および組み合わせが実施可能であることは明白である。
【符号の説明】
【0081】
101…演算部、102…演算素子、103…変換素子。
図面
【図1】
0
【図2】
1
【図3】
2
【図4】
3
【図5】
4
【図6】
5
【図7】
6
【図8】
7