JP2021523508A - フォトニック処理システム及び方法 - Google Patents

フォトニック処理システム及び方法 Download PDF

Info

Publication number
JP2021523508A
JP2021523508A JP2021514294A JP2021514294A JP2021523508A JP 2021523508 A JP2021523508 A JP 2021523508A JP 2021514294 A JP2021514294 A JP 2021514294A JP 2021514294 A JP2021514294 A JP 2021514294A JP 2021523508 A JP2021523508 A JP 2021523508A
Authority
JP
Japan
Prior art keywords
matrix
optical
photonic
phase
vector
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.)
Granted
Application number
JP2021514294A
Other languages
English (en)
Other versions
JP7362727B2 (ja
JPWO2019222185A5 (ja
Inventor
シー. ハリス、ニコラス
シー. ハリス、ニコラス
ブナンダー、ダリアス
レイミー、カール
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Lightmatter Inc
Original Assignee
Lightmatter Inc
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
Application filed by Lightmatter Inc filed Critical Lightmatter Inc
Publication of JP2021523508A publication Critical patent/JP2021523508A/ja
Publication of JPWO2019222185A5 publication Critical patent/JPWO2019222185A5/ja
Priority to JP2023172693A priority Critical patent/JP2024001148A/ja
Application granted granted Critical
Publication of JP7362727B2 publication Critical patent/JP7362727B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/06Physical realisation, i.e. hardware implementation of neural networks, neurons or parts of neurons
    • G06N3/067Physical realisation, i.e. hardware implementation of neural networks, neurons or parts of neurons using optical means
    • G06N3/0675Physical realisation, i.e. hardware implementation of neural networks, neurons or parts of neurons using optical means using electro-optical, acousto-optical or opto-electronic means
    • GPHYSICS
    • G02OPTICS
    • G02FOPTICAL DEVICES OR ARRANGEMENTS FOR THE CONTROL OF LIGHT BY MODIFICATION OF THE OPTICAL PROPERTIES OF THE MEDIA OF THE ELEMENTS INVOLVED THEREIN; NON-LINEAR OPTICS; FREQUENCY-CHANGING OF LIGHT; OPTICAL LOGIC ELEMENTS; OPTICAL ANALOGUE/DIGITAL CONVERTERS
    • G02F1/00Devices or arrangements for the control of the intensity, colour, phase, polarisation or direction of light arriving from an independent light source, e.g. switching, gating or modulating; Non-linear optics
    • G02F1/01Devices or arrangements for the control of the intensity, colour, phase, polarisation or direction of light arriving from an independent light source, e.g. switching, gating or modulating; Non-linear optics for the control of the intensity, phase, polarisation or colour 
    • G02F1/21Devices or arrangements for the control of the intensity, colour, phase, polarisation or direction of light arriving from an independent light source, e.g. switching, gating or modulating; Non-linear optics for the control of the intensity, phase, polarisation or colour  by interference
    • GPHYSICS
    • G02OPTICS
    • G02FOPTICAL DEVICES OR ARRANGEMENTS FOR THE CONTROL OF LIGHT BY MODIFICATION OF THE OPTICAL PROPERTIES OF THE MEDIA OF THE ELEMENTS INVOLVED THEREIN; NON-LINEAR OPTICS; FREQUENCY-CHANGING OF LIGHT; OPTICAL LOGIC ELEMENTS; OPTICAL ANALOGUE/DIGITAL CONVERTERS
    • G02F1/00Devices or arrangements for the control of the intensity, colour, phase, polarisation or direction of light arriving from an independent light source, e.g. switching, gating or modulating; Non-linear optics
    • G02F1/01Devices or arrangements for the control of the intensity, colour, phase, polarisation or direction of light arriving from an independent light source, e.g. switching, gating or modulating; Non-linear optics for the control of the intensity, phase, polarisation or colour 
    • G02F1/21Devices or arrangements for the control of the intensity, colour, phase, polarisation or direction of light arriving from an independent light source, e.g. switching, gating or modulating; Non-linear optics for the control of the intensity, phase, polarisation or colour  by interference
    • G02F1/212Mach-Zehnder type
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F17/00Digital computing or data processing equipment or methods, specially adapted for specific functions
    • G06F17/10Complex mathematical operations
    • G06F17/16Matrix or vector computation, e.g. matrix-matrix or matrix-vector multiplication, matrix factorization
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • G06N3/084Backpropagation, e.g. using gradient descent
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T1/00General purpose image data processing
    • G06T1/20Processor architectures; Processor configuration, e.g. pipelining
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04BTRANSMISSION
    • H04B10/00Transmission systems employing electromagnetic waves other than radio-waves, e.g. infrared, visible or ultraviolet light, or employing corpuscular radiation, e.g. quantum communication
    • H04B10/50Transmitters
    • H04B10/516Details of coding or modulation
    • H04B10/548Phase or frequency modulation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04BTRANSMISSION
    • H04B10/00Transmission systems employing electromagnetic waves other than radio-waves, e.g. infrared, visible or ultraviolet light, or employing corpuscular radiation, e.g. quantum communication
    • H04B10/60Receivers
    • H04B10/61Coherent receivers
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04BTRANSMISSION
    • H04B10/00Transmission systems employing electromagnetic waves other than radio-waves, e.g. infrared, visible or ultraviolet light, or employing corpuscular radiation, e.g. quantum communication
    • H04B10/70Photonic quantum communication
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04BTRANSMISSION
    • H04B10/00Transmission systems employing electromagnetic waves other than radio-waves, e.g. infrared, visible or ultraviolet light, or employing corpuscular radiation, e.g. quantum communication
    • H04B10/80Optical aspects relating to the use of optical transmission for specific applications, not provided for in groups H04B10/03 - H04B10/70, e.g. optical power feeding or optical transmission through water
    • H04B10/801Optical aspects relating to the use of optical transmission for specific applications, not provided for in groups H04B10/03 - H04B10/70, e.g. optical power feeding or optical transmission through water using optical interconnects, e.g. light coupled isolators, circuit board interconnections
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04JMULTIPLEX COMMUNICATION
    • H04J14/00Optical multiplex systems
    • H04J14/02Wavelength-division multiplex systems
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04JMULTIPLEX COMMUNICATION
    • H04J14/00Optical multiplex systems
    • H04J14/02Wavelength-division multiplex systems
    • H04J14/0278WDM optical network architectures
    • H04J14/0279WDM point-to-point architectures
    • GPHYSICS
    • G02OPTICS
    • G02FOPTICAL DEVICES OR ARRANGEMENTS FOR THE CONTROL OF LIGHT BY MODIFICATION OF THE OPTICAL PROPERTIES OF THE MEDIA OF THE ELEMENTS INVOLVED THEREIN; NON-LINEAR OPTICS; FREQUENCY-CHANGING OF LIGHT; OPTICAL LOGIC ELEMENTS; OPTICAL ANALOGUE/DIGITAL CONVERTERS
    • G02F2203/00Function characteristic
    • G02F2203/48Variable attenuator
    • GPHYSICS
    • G02OPTICS
    • G02FOPTICAL DEVICES OR ARRANGEMENTS FOR THE CONTROL OF LIGHT BY MODIFICATION OF THE OPTICAL PROPERTIES OF THE MEDIA OF THE ELEMENTS INVOLVED THEREIN; NON-LINEAR OPTICS; FREQUENCY-CHANGING OF LIGHT; OPTICAL LOGIC ELEMENTS; OPTICAL ANALOGUE/DIGITAL CONVERTERS
    • G02F2203/00Function characteristic
    • G02F2203/50Phase-only modulation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/047Probabilistic or stochastic networks

Landscapes

  • Physics & Mathematics (AREA)
  • Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Mathematical Physics (AREA)
  • Electromagnetism (AREA)
  • Nonlinear Science (AREA)
  • Data Mining & Analysis (AREA)
  • Health & Medical Sciences (AREA)
  • Biophysics (AREA)
  • Biomedical Technology (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • General Engineering & Computer Science (AREA)
  • Computing Systems (AREA)
  • Software Systems (AREA)
  • Optics & Photonics (AREA)
  • Molecular Biology (AREA)
  • Evolutionary Computation (AREA)
  • Computational Linguistics (AREA)
  • Artificial Intelligence (AREA)
  • General Health & Medical Sciences (AREA)
  • Mathematical Analysis (AREA)
  • Computational Mathematics (AREA)
  • Mathematical Optimization (AREA)
  • Pure & Applied Mathematics (AREA)
  • Neurology (AREA)
  • Algebra (AREA)
  • Databases & Information Systems (AREA)
  • Optical Modulation, Optical Deflection, Nonlinear Optics, Optical Demodulation, Optical Logic Elements (AREA)
  • Optical Communication System (AREA)
  • Optical Integrated Circuits (AREA)
  • Optical Couplings Of Light Guides (AREA)
  • Manufacture, Treatment Of Glass Fibers (AREA)
  • Image Analysis (AREA)

Abstract

一態様は、フォトニック処理システム、フォトニックプロセッサ及び行列−ベクトル乗算を実行する方法に関する。光学エンコーダは、入力ベクトルを第1の複数の光学信号に符号化し得る。フォトニックプロセッサは、第1の複数の光学信号を受信すること、第1の複数の光学信号に対して複数の演算を実行することであって、複数の演算は、行列による入力ベクトルの行列乗算を実施する、実行すること、及び出力ベクトルを表す第2の複数の光学信号を出力することを行い得る。光学受信機は、第2の複数の光学信号を検出し、且つ出力ベクトルの電気デジタル表現を出力し得る。

Description

従来の計算は、数百万個のトランジスタの回路を含み、電気信号により表された情報のビットに対して論理ゲートを実施するプロセッサを使用する。従来の中央演算処理装置(CPU:central processing unit)のアーキテクチャは、汎用計算用に設計されるが、特定のタイプのアルゴリズムに向けて最適化されない。グラフィックス処理、人工知能、ニューラルネットワーク及びディープラーニングは、計算集約的であり、CPUを使用して効率的に実行されないタイプのアルゴリズムの少数の例である。
その結果、特定のアルゴリズムによりよく適したアーキテクチャを有する専用プロセッサが開発された。グラフィカル処理ユニット(GPU:Graphical processing unit)は、例えば、画像処理及びグラフィカル操作の実行に関してCPUよりも効率的にする高度並列アーキテクチャを有する。グラフィックス処理に向けたGPUの開発後、GPUは、ニューラルネットワーク及びディープラーニング等の他のメモリ集約的アルゴリズムに関してもGPUより効率的であることが分かった。この実現並びに人工知能及びディープラーニングの普及の増大は、これらのアルゴリズムの速度を更に強化することができる新しい電気回路アーキテクチャへの更なる研究に繋がる。
幾つかの実施形態では、フォトニックプロセッサが提供される。本フォトニックプロセッサは、第1の複数の光学入力及び第1の複数の光学出力を含む相互接続可変ビームスプリッタ(VBS:variable beam splitter)の第1のアレイと、第2の複数の光学入力及び第2の複数の光学出力を含む相互接続VBSの第2のアレイと、複数の制御可能な光学要素であって、複数のこれらの制御可能な光学要素の各々は、第1のアレイの第1の複数の光学出力の単一の1つを第2のアレイの第2の複数の光学入力のそれぞれの単一の1つに結合する、複数の制御可能な光学要素とを含み得る。
幾つかの実施形態では、フォトニック処理システムが提供される。本フォトニック処理システムは、入力ベクトルを第1の複数の光学信号に符号化するように構成された光学エンコーダを含み得る。本フォトニック処理システムは、フォトニックプロセッサであって、第1の複数の光学信号を受信することであって、第1の複数の信号の各々は、フォトニックプロセッサの複数の入力空間モードのそれぞれの入力空間モードによって受信される、受信すること、第1の複数の光学信号に対して複数の演算を実行することであって、複数の演算は、行列による入力ベクトルの行列乗算を実施する、実行すること、及び出力ベクトルを表す第2の複数の光学信号を出力することであって、第2の複数の信号の各々は、フォトニックプロセッサの複数の出力空間モードのそれぞれの出力空間モードによって送信される、出力することを行うように構成されたフォトニックプロセッサを含むこともできる。本フォトニック処理システムは、第2の複数の光学信号を検出し、且つ出力ベクトルの電気デジタル表現を出力するように構成された光学受信機を含むこともできる。
幾つかの実施形態では、行列−ベクトル乗算を光学的に実行する方法が提供される。本方法は、入力ベクトルのデジタル表現を受信することと、光学エンコーダを使用して、入力ベクトルを第1の複数の光学信号に符号化することと、プロセッサを使用して、行列の特異値分解(SVD:singular value decomposition)を実行して、第1のSVD行列、第2のSVD行列及び第3のSVD行列を特定することと、複数の可変ビームスプリッタ(VBS)を含むフォトニックプロセッサを、第1のSVD行列、第2のSVD行列及び第3のSVD行列を光学的に実施するように制御することと、フォトニックプロセッサを通して第1の複数の光学信号を伝播させることと、フォトニックプロセッサから受信された第2の複数の光学信号を検出することと、検出された第2の複数の光学信号に基づいて出力ベクトルを特定することであって、出力ベクトルは、行列−ベクトル乗算の結果を表す、特定することとを含み得る。
上記装置実施形態及び方法実施形態は、上述又は更に後述される態様、特徴及び動作の任意の適した組合せで実施され得る。本教示のこれら及び他の態様、実施形態及び特徴は、添付図面と併せて以下の説明からより詳細に理解することができる。
本願の種々の態様及び実施形態は、以下の図を参照して説明される。図が必ずしも一定の縮尺で描かれているわけではないことを理解されたい。複数の図に現れるアイテムは、出現する全ての図において同じ参照番号で示される。
幾つかの非限定的な実施形態によるフォトニック処理システムの概略図である。 幾つかの非限定的な実施形態による光学エンコーダの概略図である。 幾つかの非限定的な実施形態によるフォトニックプロセッサの概略図である。 幾つかの非限定的な実施形態による相互接続可変ビームスプリッタアレイの概略図である。 幾つかの非限定的な実施形態による可変ビームスプリッタの概略図である。 幾つかの非限定的な実施形態による対角減衰及び位相シフト実装形態の概略図である。 幾つかの非限定的な実施形態による減衰器の概略図である。 幾つかの非限定的な実施形態による電力ツリーの概略図である。 幾つかの非限定的な実施形態による光学受信機の概略図である。 幾つかの非限定的な実施形態によるホモダイン検出器の概略図である。 幾つかの非限定的な実施形態による折り返しフォトニック処理システムの概略図である。 幾つかの非限定的な実施形態による波長分割多重化(WDM:wavelength−division−multiplexed)フォトニック処理システムの概略図である。 幾つかの非限定的な実施形態による、図1−12Aの波長分割多重化(WDM)フォトニック処理システムのフロントエンドの概略図である。 幾つかの非限定的な実施形態による、図1−12Aの波長分割多重化(WDM)フォトニック処理システムのバックエンドの概略図である。 幾つかの非限定的な実施形態による、光学信号のアナログ合算を実行する回路の概略図である。 幾つかの非限定的な実施形態による、列−グローバル位相が示されたフォトニック処理システムの概略図である。 幾つかの非限定的な実施形態による、ホモダイン検出器に対する非補正グローバル位相シフトの影響を示すプロットである。 幾つかの非限定的な実施形態による、コヒーレント状態の光の直角位相不確実性を示すプロットである。 幾つかの非限定的な実施形態による行列乗算の図である。 幾つかの非限定的な実施形態による、行列をサブ行列に分割することによる行列乗算の実行の図である。 幾つかの非限定的な実施形態によるフォトニック処理システムを製造する方法のフローチャートである。 幾つかの非限定的な実施形態によるフォトニックプロセッサを製造する方法のフローチャートである。 幾つかの非限定的な実施形態による、光学計算を実行する方法のフローチャートである。 幾つかの非限定的な実施形態による、潜在変数モデルをトレーニングするプロセスのフローチャートである。 幾つかの非限定的な実施形態による、ユニタリ伝達行列を実施するようにフォトニック処理システムを構成するプロセスのフローチャートである。 幾つかの非限定的な実施形態によるフォトニック処理システムを使用して誤差ベクトルを計算するプロセスのフローチャートである。 幾つかの非限定的な実施形態による、ユニタリ伝達行列の更新されたパラメータを特定するプロセスのフローチャートである。 幾つかの非限定的な実施形態による、ユニタリ伝達行列のパラメータを更新するプロセスのフローチャートである。 幾つかの非限定的な実施形態による、畳み込み層を通るフォワードパスを計算する方法のフローチャートである。 幾つかの非限定的な実施形態による、畳み込み層を通るフォワードパスを計算する方法のフローチャートである。 幾つかの非限定的な実施形態による、二次元畳み込みを計算するのに適した方法のフローチャートである。 幾つかの非限定的な実施形態による、巡回行列を構築するのに適した方法のフローチャートである。 幾つかの非限定的な実施形態による、複数の出力チャネルを含む入力フィルタ行列からフィルタ行列を構築する処理前ステップを示す。 幾つかの非限定的な実施形態による、複数の入力チャネルを含む入力行列からの巡回行列の構築を示す。 幾つかの非限定的な実施形態による二次元行列乗算演算を示す。 幾つかの非限定的な実施形態による、ベクトル行を回転する処理後ステップを示す。 幾つかの非限定的な実施形態によるベクトル行加算の処理後ステップを示す。 幾つかの非限定的な実施形態による、出力行列の複数の出力チャネルへの再整形を示す。 幾つかの非限定的な実施形態による、一次元フーリエ変換を実行する方法のフローチャートである。 幾つかの非限定的な実施形態による、二次元フーリエ変換を実行する方法のフローチャートである。 幾つかの非限定的な実施形態による、二次元フーリエ変換を実行する方法のフローチャートである。 幾つかの非限定的な実施形態による、フーリエ変換を使用して畳み込みを実行する方法のフローチャートである。 幾つかの非限定的な実施形態による光学変調器を示すブロック図である。 幾つかの非限定的な実施形態によるフォトニックシステムの一例を示すブロック図である。 幾つかの非限定的な実施形態による、光学ドメインにおいて符号付き実数を処理する方法の一例を示すフローチャートである。 幾つかの非限定的な実施形態による、図4−2Aのフォトニックシステムに関連して使用され得る変調器の一例を示す概略図である。 幾つかの非限定的な実施形態による、電圧が印加されない場合の図4−3Aの変調器の強度及び位相スペクトル応答を示すプロットである。 幾つかの非限定的な実施形態による、特定の電圧で駆動される場合の図4−3Aの変調器の強度及び位相スペクトル応答を示すプロットである。 幾つかの非限定的な実施形態による、図4−3Aの変調器に関連付けられた符号化表の一例である。 幾つかの非限定的な実施形態による、図4−3Aの変調器のスペクトル応答の複素平面における視覚的表現である。 幾つかの非限定的な実施形態による、光学変換ユニットの出力における異なるスペクトル応答の複素平面における視覚的表現である。 幾つかの非限定的な実施形態による、光学変換ユニットの出力における異なるスペクトル応答の複素平面における視覚的表現である。 幾つかの非限定的な実施形態による、光学変換ユニットの出力における異なるスペクトル応答の複素平面における視覚的表現である。 幾つかの非限定的な実施形態による、光学信号の検出がどのように実行され得るかの複素平面における視覚的表現である。 幾つかの非限定的な実施形態による復号化表の一例である。 幾つかの非限定的な実施形態による光学通信システムのブロック図である。 幾つかの非限定的な実施形態による、図4−7の変調器により出力された電力スペクトル密度の一例を示すプロットである。 幾つかの非限定的な実施形態による、フォトニックシステムを組み立てる方法の一例を示すフローチャートである。 幾つかの非限定的な実施形態による差分光学受信機の一例を示す回路図である。 幾つかの非限定的な実施形態による、図5−1の差分光学受信機と結合され得るフォトニック回路を示す概略図である。 幾つかの非限定的な実施形態による、フォトニック回路、光検出器及び差分オペアンプを含む基板を示す概略図である。 幾つかの非限定的な実施形態による、フォトニック回路及び光検出器を含む第1の基板と、差分オペアンプを含む第2の基板とを示す概略図であり、第1及び第2の基板は、互いにフリップチップ接合される。 幾つかの非限定的な実施形態による、フォトニック回路及び光検出器を含む第1の基板と、差分オペアンプを含む第2の基板とを示す概略図であり、第1及び第2の基板は、互いにワイヤ接合される。 幾つかの非限定的な実施形態による、光学受信機を組み立てる方法の一例を示すフローチャートである。 幾つかの非限定的な実施形態による光学受信機の組み立てシーケンスの一例を示す。 幾つかの非限定的な実施形態による光学受信機の組み立てシーケンスの一例を示す。 幾つかの非限定的な実施形態による光学受信機の組み立てシーケンスの一例を示す。 幾つかの非限定的な実施形態による光学受信機の組み立てシーケンスの一例を示す。 幾つかの非限定的な実施形態による光学受信機の組み立てシーケンスの一例を示す。 幾つかの非限定的な実施形態による光学受信機の組み立てシーケンスの一例を示す。 幾つかの非限定的な実施形態による、光学信号を受信する方法の一例を示すフローチャートである。 幾つかの非限定的な実施形態によるナノオプトエレクトロメカニカルシステム(NOEMS:Nano−Opto−Electromechanical System)位相変調器を概略的に示す上面図である。 幾つかの非限定的な実施形態による、図6−1AのNOEMS位相変調器の懸架マルチスロット光学構造を概略的に示す上面図である。 幾つかの非限定的な実施形態による、図6−1Bの懸架マルチスロット光学構造において生じる光学モードの一例を示すプロットである。 幾つかの非限定的な実施形態による、図6−1AのNOEMS位相変調器の機械構造を概略的に示す上面図である。 幾つかの非限定的な実施形態による、図6−1AのNOEMS位相変調器の遷移領域を概略的に示す上面図である。 幾つかの非限定的な実施形態による、yz平面における、懸架された導波路を示す図6−1AのNOEMS位相変調器の断面図である。 幾つかの非限定的な実施形態による、xy平面において懸架マルチスロット光学構造の一部を示す、図6−1AのNOEMS位相変調器の断面図である。 幾つかの非限定的な実施形態による、懸架マルチスロット光学構造がどのように機械的に駆動されて、導波路間でスロットの幅を変えることができるかを示す断面図である。 幾つかの非限定的な実施形態による、懸架マルチスロット光学構造がどのように機械的に駆動されて、導波路間でスロットの幅を変えることができるかを示す断面図である。 幾つかの非限定的な実施形態による、懸架マルチスロット光学構造がどのように機械的に駆動されて、導波路間でスロットの幅を変えることができるかを示す断面図である。 幾つかの非限定的な実施形態による、スロットの幅の関数として、懸架マルチスロット光学構造の有効屈折率がどのように変更され得るかを示すプロットである。 幾つかの非限定的な実施形態による、NOEMS位相変調器を組み立てる方法の一例を示すフローチャートである。
I.フォトコア
A.フォトニクスベースの処理の概説
本発明者らは、電気回路に基づく従来のプロセッサの速度及び効率に制限があることを認識及び理解した。電気プロセッサの回路のあらゆるワイヤ及びトランジスタは、任意の電気信号において伝播遅延及び電力散逸を生じさせる抵抗、インダクタンス及びキャパシタンスを有する。例えば、複数のプロセッサコアの接続及び/又はプロセッサコアのメモリへの接続は、非ゼロインピーダンスを有する導電性トレースを使用する。大きい値のインピーダンスは、無視できるビットエラーレートでデータがトレースを通して転送され得る最大レートを制限する。高頻度株式取引等の時間遅延が極めて重要な用途では、数百分の一秒の遅延でも、アルゴリズムを使用に適さないものにし得る。数十億のトランジスタによる数十億の演算を必要とする処理では、これらの遅延は、最終的に大きい時間の損失になる。速度における電気回路の非効率性に加えて、回路のインピーダンスによって生じるエネルギー散逸により生じる熱も電気プロセッサの開発における障壁である。本発明者らは、電気信号の代わりに光信号を使用することが、電気計算に伴う上記の問題の多くを解消することを更に認識及び理解した。光信号は、光が移動する媒体中を光速で移動し、したがって、フォトニック信号の待ち時間は、電気伝播遅延よりもはるかに小さい制限である。更に、光信号が移動する距離を増大させることにより、電力は、散逸されず、電気信号を使用して実現可能でないであろう新しいトポロジ及びプロセッサレイアウトを開拓する。したがって、フォトニクスベースのプロセッサ等の光ベースのプロセッサは、従来の電気プロセッサよりも良好な速度及び効率性能を有し得る。
更に、本発明者らは、フォトニクスベースのプロセッサ等の光ベースのプロセッサが特定のタイプのアルゴリズムに適し得ることを認識及び理解した。例えば、多くの機械学習アルゴリズム、例えばサポートベクターマシン、人工ニューラルネットワーク、確率グラフィカルモデル学習は、多次元アレイ/テンソルでの線形変換に大きく依拠している。最も単純な例は、行列によるベクトルの乗算であり、これは、従来のアルゴリズムを使用する場合、O(n)ほどの複雑性を有し、ここで、nは、乗算されている正方行列の次元である。本発明者らは、フォトニックベースのプロセッサが幾つかの実施形態では高度並列線形プロセッサであり得、ビームスプリッタの構成可能なアレイを通して特定の組の入力光信号を伝播させることにより、高度に並列化された様式で行列乗算等の線形変換を実行できることを認識及び理解した。そのような実装形態を使用する場合、次元n=512を有する行列の行列乗算は、従来の処理を使用した数十乃至数百ナノ秒とは対照的に、数百ピコ秒で完了することができる。幾つかの実施形態を使用して、行列乗算は、従来の技法と比べて2桁加速すると推定される。例えば、技術的現状のグラフィックス処理ユニット(GPU)により実行され得、約10nsで実行され得る乗算は、幾つかの実施形態によるフォトニック処理システムによって約200psで実行され得る。
フォトニクスベースのプロセッサを実施するために、本発明者らは、行列による入力ベクトルの乗算が、相互接続可変ビームスプリッタ(VBS)の第1のアレイ、相互接続可変ビームスプリッタの第2のアレイ及び第1のアレイの1つの出力を第2のアレイの1つの入力に接続する、2つのアレイ間の複数の制御可能な光学要素(例えば、電子光学又は光学機械要素)を通してコヒーレント光信号、例えばレーザパルスを伝播させることにより達成され得ることを認識及び理解した。フォトニックプロセッサを含むフォトニック処理システムの詳細について以下に説明する。
B.フォトニック処理システム概説
図1−1を参照すると、幾つかの実施形態によるフォトニック処理システム1−100は、光学エンコーダ1−101、フォトニックプロセッサ1−103、光学受信機1−105及びコントローラ1−107を含む。フォトニック処理システム1−100は、入力として外部プロセッサ(例えば、CPU)から、入力ビット列の群により表される入力ベクトルを受信し、出力ビット列の群により表される出力ベクトルを生成する。例えば、入力ベクトルがn次元ベクトルである場合、入力ベクトルは、n個の別個のビット列によって表され得、各ビット列は、ベクトルの各成分を表す。入力ビット列は、電気信号又は光学信号として外部プロセッサから受信され得、出力ビット列は、電気信号又は光学信号として外部プロセッサに送信され得る。幾つかの実施形態では、コントローラ1−107は、必ずしもあらゆるプロセス反復後に出力ビットを出力する必要はない。代わりに、コントローラ1−107は、1つ又は複数の出力ビット列を使用して、フォトニック処理システム1−100の構成要素を通して供給する新しい入力ビットストリームを決定し得る。幾つかの実施形態では、出力ビット列自体は、フォトニック処理システム1−100により実施されるプロセスの後続反復で入力ビット列として使用され得る。他の実施形態では、複数の出力ビットストリームは、種々の方法で結合されて、後続入力ビット列を決定する。例えば、1つ又は複数の出力ビット列は、後続入力ビット列の決定の一環として一緒に合算され得る。
光学エンコーダ1−101は、入力ビット列を、フォトニックプロセッサ1−103により処理される光学符号化された情報に変換するように構成される。幾つかの実施形態では、各入力ビット列は、電気信号の形態でコントローラ1−107により光学エンコーダ1−101に送信される。光学エンコーダ1−101は、入力ベクトルの各成分をデジタルビット列から光学信号に変換する。幾つかの実施形態では、光学信号は、関連付けられたビット列の値及び符号を光学パルスの振幅及び位相として表す。幾つかの実施形態では、位相は、それぞれ正の値及び負の値を表すゼロ位相シフト又はπ位相シフトのいずれかの2値選択に制限され得る。実施形態は、実数入力ベクトル値に限定されない。複素ベクトル成分は、例えば、光学信号を符号化する場合、3以上の位相値を使用することにより表され得る。幾つかの実施形態では、ビット列は、光学信号(例えば、デジタル光学信号)としてコントローラ1−107から光学エンコーダ1−101により受信される。これらの実施形態では、光学エンコーダ1−101は、デジタル光学信号を、上述したタイプのアナログ光学信号に変換する。
光学エンコーダ1−101は、フォトニックプロセッサ1−103に送信されるn個の別個の光学パルスを出力する。光学エンコーダ1−101の各出力は、1対1でフォトニックプロセッサ1−103の1つの入力に結合される。幾つかの実施形態では、光学エンコーダ1−101は、フォトニックプロセッサ1−103と同じ基板に配置され得る(例えば、光学エンコーダ1−101及びフォトニックプロセッサ1−103は、同じチップにある)。そのような実施形態では、光学信号は、シリコンフォトニック導波路等の導波路において光学エンコーダ1−101からフォトニックプロセッサ1−103に送信され得る。他の実施形態では、光学エンコーダ1−101は、フォトニックプロセッサ1−103と別個の基板に配置され得る。そのような実施形態では、光学信号は、光学エンコーダ1−101からフォトニックプロセッサ103に光ファイバで送信され得る。
フォトニックプロセッサ1−103は、行列Mによる入力ベクトルの乗算を実行する。詳細に後述するように、行列Mは、特異値分解(SVD)とユニタリ行列分解との組合せを使用して3つの行列に分解される。幾つかの実施形態では、ユニタリ行列分解は、QR分解におけるギヴンス回転と同様の演算を用いて実行される。例えば、ハウスホルダ分解と組み合わせたSVDが使用され得る。3つの構成部への行列Mの分解は、コントローラ1−107により実行され得、各構成部は、フォトニックプロセッサ1−103の一部により実施され得る。幾つかの実施形態では、フォトニックプロセッサ1−103は、3つの部分を含む:入力光学パルスのアレイに対して、第1の行列乗算に等しい変換を実行するように構成された可変ビームスプリッタ(VBS)の第1のアレイ(例えば、図1−3の第1の行列実装1−301を参照されたい)、第1のアレイから受信された各光学パルスの強度及び/又は位相を調整するように構成された制御可能な光学要素の群であって、調整は、対角行列による第2の行列乗算に等しい、制御可能な光学要素の群(例えば、図1−3の第2の行列実装1−303を参照されたい)及び制御可能な電子光学要素の群から受信された光学パルスに対して、第3の行列乗算に等しい変換を実施するように構成されたVBSの第2のアレイ(例えば、図3の第3の行列実装1−305を参照されたい)。
フォトニックプロセッサ1−103は、光学受信機1−105に送信されるn個の別個の光学パルスを出力する。フォトニックプロセッサ1−103の各出力は、1対1で光学受信機1−105の1つの入力に結合される。幾つかの実施形態では、フォトニックプロセッサ1−103は、光学受信機1−105と同じ基板に配置され得る(例えば、フォトニックプロセッサ1−103及び光学受信機1−105は、同じチップにある)。そのような実施形態では、光学信号は、シリコンフォトニック導波路においてフォトニックプロセッサ1−103から光学受信機1−105に送信され得る。他の実施形態では、フォトニックプロセッサ1−103は、光学受信機1−105と別個の基板に配置され得る。そのような実施形態では、光学信号は、フォトニックプロセッサ103から光学受信機1−105に光ファイバで送信され得る。
光学受信機1−105は、フォトニックプロセッサ1−103からn個の光学パルスを受信する。各光学パルスは、次に、電気信号に変換される。幾つかの実施形態では、各光学パルスの強度及び位相は、光学受信機内の光学検出器により測定される。次に、測定された値を表す電気信号は、コントローラ1−107に出力される。
コントローラ1−107は、メモリ1−109と、光学エンコーダ1−101、フォトニックプロセッサ1−103及び光学受信機1−105を制御するプロセッサ1−111とを含む。メモリ1−109は、入力ビット列及び出力ビット列並びに光学受信機1−105からの測定結果を記憶するために使用され得る。メモリ1−109は、プロセッサ1−111により実行されると、光学エンコーダ1−101を制御し、行列分解アルゴリズムを実行し、フォトニックプロセッサ1−103のVBSを制御し、光学受信機1−105を制御する実行可能命令も記憶する。メモリ1−109は、プロセッサ1−111に、光学受信機1−105により実行された測定により決定された1つ又は複数の出力ベクトルの集合に基づいて、光学エンコーダに送信する新しい入力ベクトルを決定させる実行可能命令を含むこともできる。このようにして、コントローラ1−107は、フォトニックプロセッサ1−103の設定を調整し、検出情報を光学受信機1−105から光学エンコーダ1−101に供給して戻すことにより、入力ベクトルが複数の行列により乗算される反復プロセスを制御することができる。したがって、フォトニック処理システム1−100により外部プロセッサに送信される出力ベクトルは、単に1つの行列乗算の結果ではなく、複数の行列乗算の結果であり得る。
幾つかの実施形態では、行列は、シングルパスを使用してフォトニックプロセッサで符号化するには大きすぎることがある。そのような状況では、大きい行列の一部分は、フォトニックプロセッサにおいて符号化され得、乗算プロセスは、大きい行列のその1つの部分に対して実行され得る。その第1の演算の結果は、メモリ1−109に記憶され得る。続けて、大きい行列の第2の部分は、フォトニックプロセッサにおいて符号化され得、第2の乗算プロセスを実行し得る。大きい行列のこの「チャンキング」は、乗算プロセスが大きい行列の全ての部分に対して実行されるまで続けられ得る。複数の乗算プロセスの結果は、メモリ1−109に記憶され得、次に結合されて、大きい行列による入力ベクトルの乗算の最終結果を形成する。
他の実施形態では、出力ベクトルの集合的挙動のみが外部プロセッサにより使用される。そのような実施形態では、複数の出力ベクトルの平均又は最大/最小等の集合的結果のみが外部プロセッサに送信される。
C.光学エンコーダ
図1−2を参照すると、幾つかの実施形態によれば、光学エンコーダは、少なくとも1つの光源1−201、電力ツリー1−203、振幅変調器1−205、位相変調器1−207、振幅変調器1−205に関連付けられたデジタル−アナログ変換器(DAC:digital to analog converter)1−209及び位相変調器1−207に関連付けられた1−DAC211を含む。振幅変調器1−205及び位相変調器1−207は、n個の入力及びn個の出力(入力及び出力の各々は、例えば、導波路である)を有する1つのブロックとして図1−2に示されているが、幾つかの実施形態では、各導波路は、光学エンコーダがn個の振幅変調器及びn個の位相変調器を含むように、各振幅変調器及び各位相変調器を含み得る。更に、各振幅及び位相変調器に個々のDACがあり得る。幾つかの実施形態では、各導波路に関連付けられた振幅変調器及び別個の位相変調器を有するのではなく、振幅情報及び位相情報の両方の符号化に1つの変調器が使用され得る。1つの変調器を使用してそのような符号化を実行することは、各光学パルスの振幅及び位相の両方を精密に調整する能力を制限するが、光学パルスの振幅及び位相の両方の精密な調整を必要としない幾つかの符号化方式がある。そのような方式について、本明細書において後に説明する。
光源1−201は、コヒーレント光の任意の適した源であり得る。幾つかの実施形態では、光源1−201は、ダイオードレーザ又は垂直キャビティ面発光レーザ(VCSEL:vertical−cavity surface emitting laser)であり得る。幾つかの実施形態では、光源1−201は、10mW超、25mW超、50mW超又は75mW超の出力電力を有するように構成される。幾つかの実施形態では、光源1−201は、100mW未満の出力電力を有するように構成される。光源1−201は、1つ又は複数の波長(例えば、C帯又はO帯)において光の連続波又は光のパルス(「光学パルス」)を発するように構成され得る。光学パルスの持続時間は、例えば、約100psであり得る。
光源1−201は、光学エンコーダの他の構成要素と同じ半導体基板上にあるものとして図1−2に示されているが、実施形態は、そのように限定されない。例えば、光源1−201は、光学エンコーダチップにエッジ接合又は表面接合された別個のレーザパッケージであり得る。代替的に、光源1−201は、完全にチップ外であり得、光学パルスは、光ファイバ及び/又は格子結合器を介して光学エンコーダ1−101の導波路1−202に結合され得る。
光源1−201は、2つの光源1−201a及び1−201bとして示されているが、実施形態は、そのように限定されない。幾つかの実施形態は、1つの光源を含み得る。3つ以上の光源を含み得る複数の光源201a乃至bを含むことは、光源の1つが故障した場合、冗長性を提供することができる。複数の光源を含むことは、フォトニック処理システム1−100の有用寿命を延ばし得る。複数の光源1−201a乃至bは、それぞれ光学エンコーダ1−101の導波路に結合され、次に各光源から電力ツリー1−203に光学パルスを向けるように構成された導波路結合器において結合され得る。そのような実施形態では、随時、1つのみの光源が使用される。
幾つかの実施形態は、同時に同じ波長の2つ以上の位相ロック光源を使用して、光学エンコーダシステムに入る光学電力を増大させることができる。2つ以上の光源の各々からの光の小さい部分(例えば、導波路タップを介して取得される)は、ホモダイン検出器に向けられ得、ホモダイン検出器においてビートエラー信号が測定され得る。ビートエラー信号は、2つの光源間で生じ得る位相ドリフトを特定するために使用され得る。ビートエラー信号は、例えば、一方の光源の出力を他方の光源の位相に位相ロックする位相変調器を制御するフィードバック回路に供給され得る。位相ロックは、マスタ−スレーブ方式で一般化することができ、N≧1個のスレーブ光源が1つのマスタ光源に位相ロックされる。その結果、光学エンコーダシステムは、合計でN+1個の位相ロックされた光源を利用可能である。
他の実施形態では、別個の各光源は、異なる波長の光に関連付けられ得る。複数の波長の光を使用することにより、複数の計算が同じ光学ハードウェアを使用して同時に実行され得るように幾つかの実施形態を多重化できるようになる。
電力ツリー1−203は、光源1−201からの1つの光学パルスを、空間的に隔てられた光学パルスのアレイに分割するように構成される。したがって、電力ツリー1−203は、1つの光学入力及びn個の光学出力を有する。幾つかの実施形態では、光源1−201からの光学電力は、n個の導波路に関連付けられたn個の光学モードにわたり均等に分割される。幾つかの実施形態では、電力ツリー1−203は、図1−8に示されるように50:50ビームスプリッタのアレイ1−801である。電力ツリー1−203の数の「深度」は、出力における導波路の数に依存する。n個の出力モードを有する電力ツリーでは、電力ツリー1−203の深度は、ceil(log(n))である。図1−8の電力ツリー1−203は、ツリー深度3(ツリーの各層は、電力ツリー1−203の最下部にわたり記されている)のみを示している。各層は、2m−1個のビームスプリッタを含み、ここで、mは、層数である。その結果、最初の層は、1つのビームスプリッタ1−801aを有し、2番目の層は、2つのビームスプリッタ1−801b乃至1−801cを有し、3番目の層は、4つのビームスプリッタ1−801d乃至1−801gを有する。
電力ツリー1−203は、エバネッセント導波路結合器として実施され得る、カスケード接続されたビームスプリッタのアレイとして示されているが、実施形態は、そのように限定されず、1つの光学パルスを複数の空間的に隔てられた光学パルスに変換する任意の光学デバイスが使用され得る。例えば、電力ツリー1−203は、1つ又は複数マルチモード干渉計(MMI:multimode interferometer)を使用して実施され得、この場合、層の幅及び深度を支配する方程式は、適宜変更される。
使用される電力ツリー1−203のタイプを問わず、分割比率がn個の出力モード間で厳密に均等であるような電力ツリー1−203の製造は、不可能でないにしても困難である可能性が高い。したがって、振幅変調の設定に調整を行い、電力ツリーにより出力されるn個の光学パルスの不均等強度を補正することができる。例えば、最も低い光学電力を有する導波路は、フォトニックプロセッサ1−103に送信される任意の所与のパルスの最大電力として設定することができる。したがって、最大電力よりも高い電力を有するあらゆる光学パルスは、情報を光学パルスに符号化するために行われる振幅への変調に加えて、振幅変調器1−205により、より低い電力を有するように変調され得る。位相変調器もn個の出力モードの各々に配置され得、全ての出力信号が同じ位相を有するように、電力ツリー1−203の各出力モードの位相を調整するために使用され得る。
代替又は追加として、電力ツリー1−203は、電力ツリーにおける各ビームスプリッタの分割比率が、電力ツリー1−203の出力において略等しい強度のパルスを生成するように調整され得る1つ又は複数のマッハツェンダー干渉計(MZI:Mach−Zehnder Interferometer)を使用して実施され得る。
振幅変調器1−205は、各入力ビット列に基づいて、電力ツリー1−203から受信された各光学パルスの振幅を変更するように構成される。振幅変調器1−205は、DAC1−209により制御される可変減衰器又は任意の他の適した振幅変調器であり得、DAC1−209は、コントローラ1−107により更に制御され得る。電気通信用途での幾つかの振幅変調器が既知であり、幾つかの実施形態において使用され得る。幾つかの実施形態では、可変ビームスプリッタは、振幅変調器1−205として使用され得、ここで、可変ビームスプリッタの1つのみの出力が保持され、他の出力が破棄又は無視される。幾つかの実施形態において使用され得る振幅変調器の他の例としては、進行波変調器、キャビティベース変調器、フランツ−ケルディッシュ変調器、プラズモンベース変調器、2D材料ベース変調器及びナノオプトエレクトロメカニカルスイッチ(NOEMS)がある。
位相変調器1−207は、各入力ビット列に基づいて、電力ツリー1−203から受信された各光学パルスの位相を変更するように構成される。位相変調器は、1−211により電気的に制御され得る熱光学位相シフタ又は任意の他の適した位相シフタであり得、1−211は、コントローラ1−107により更に制御され得る。
図1−2は、2つの別個の構成要素として振幅変調器1−205及び位相変調器1−207を示すが、これらは、光学パルスの振幅及び位相の両方を制御する1つの要素に結合され得る。しかしながら、光学パルスの振幅及び位相を別個に制御する利点がある。すなわち、クラマース−クローニッヒの関係式を介した振幅シフトと位相シフトとの間の結び付きに起因して、任意の振幅シフトに関連付けられた位相シフトがある。光学パルスの位相を精密に制御するために、振幅変調器1−205により生成された位相シフトは、位相変調器1−207の使用のために補償されるべきである。例として、光学エンコーダ1−101を出る光学パルスの合計振幅は、A=αααであり、光学エンコーダを出る光学パルスの合計位相は、θ=Δθ+Δψ+ψであり、ここで、αは、入力光学パルスの入力強度であり(変調器の入力においてゼロ位相であると仮定して)、αは、振幅変調器1−205の振幅減衰であり、Δθは、振幅を変調している間に振幅変調器1−205により付与される位相シフトであり、Δψは、位相変調器1−207により付与される位相シフトであり、αは、位相変調器1−209を通過する光学パルスに関連付けられた減衰であり、ψは、光信号の伝播に起因した光学信号に付与される位相である。したがって、光学パルスの振幅及び位相の設定は、2つの独立した特定ではない。むしろ、特定の振幅及び位相を、光学エンコーダ1−101から出力される光学パルスに正確に符号化するには、振幅変調器1−205及び位相変調器1−207の両方の設定を両方の設定時に考慮に入れるべきである。
幾つかの実施形態では、光学パルスの振幅は、ビット列値に直接関連する。例えば、高振幅パルスは、高ビット列値に対応し、低振幅パルスは、低ビット列値に対応する。光学パルスの位相は、ビット列値が正であるか又は負であるかを符号化する。幾つかの実施形態では、光学エンコーダ1−101により出力される光学パルスの位相は、180度(πラジアン)離れた2つの位相から選択され得る。例えば、正のビット列値は、ゼロ度位相シフトを用いて符号化され得、負のビット列値は、180度(πラジアン)位相シフトを用いて符号化され得る。幾つかの実施形態では、ベクトルは、複素値であることが意図され、したがって、光学パルスの位相は、単に0π及び2πという2つのみの値から選択されるものではない。
幾つかの実施形態では、コントローラ1−107は、入力ビット列と、出力振幅及び出力位相を、振幅変調器1−204及び位相変調器1−207により付与される振幅及び位相にリンクする上記式とに基づいて、振幅変調器1−205及び位相変調器1−207の両方により適用すべき振幅及び位相を決定する。幾つかの実施形態では、コントローラ1−107は、振幅変調器1−205及び位相変調器1−207を駆動するデジタル値の表をメモリ1−109に記憶し得る。幾つかの実施形態では、メモリは、変調器の近傍に配置されて、通信の待ち時間及び消費電力を低減し得る。
振幅変調器1−205に関連付けられ、振幅変調器1−205に通信可能に結合されたデジタル−アナログ変換器(DAC)1−209は、コントローラ1−107からデジタル駆動値を受信し、振幅変調器1−205を駆動するアナログ電圧にデジタル駆動値を変換する。同様に、位相変調器1−207に関連付けられ、位相変調器1−207に通信可能に結合されたDAC1−211も、コントローラ1−107からデジタル駆動値を受信し、位相変調器1−207を駆動するアナログ電圧にデジタル駆動値を変換する。幾つかの実施形態では、DACは、振幅変調器内で所望の消光比(例えば、特定の位相変調器を使用して実施することが物理的に可能な最高の消光比)及び位相変調器内で所望の位相シフト範囲(例えば、0乃至2πの全範囲を網羅する位相シフト範囲)を達成するのに十分に高いレベルまでアナログ電圧を増幅する増幅器を含み得る。DAC1−209及びDAC1−211は、光学エンコーダ1−101のチップ内及び/又はチップ上に配置されるものとして図1−2に示されているが、幾つかの実施形態では、DAC1−209及び1−211は、それでもなお導電性トレース及び/又はワイヤを用いてそれぞれ振幅変調器1−205及び位相変調器1−207に通信可能に結合されながら、チップ外に配置され得る。
振幅変調器1−205及び位相変調器1−207による変調後、n個の光学パルスは、光学エンコーダ1−101からフォトニックプロセッサ1−103に送信される。
D.フォトニックプロセッサ
図1−3を参照すると、フォトニックプロセッサ1−103は、n個の光学入力パルスにより表される入力ベクトルに対して行列乗算を実施し、3つの主要構成要素を含む:第1の行列実装1−301、第2の行列実装1−303及び第3の行列実装1−305。幾つかの実施形態では、より詳細に後述するように、第1の行列実装1−301及び第3の行列実装1−305は、入力ベクトルから出力ベクトルにn個の入力光学パルスを変換するように構成されたプログラム可能、再構成可能な可変ビームスプリッタ(VBS)の相互接続アレイを含み、ベクトルの成分は、各光学パルスの振幅及び位相によって表される。幾つかの実施形態では、第2の行列実装1−303は、電子光学要素の群を含む。
入力ベクトルが、入力光学パルスをフォトニックプロセッサ1−103に通すことにより乗算される行列は、Mと呼ばれる。行列Mは、フォトニックプロセッサ1−103により実施されるべきである行列としてコントローラ1−107に既知の一般m×nである。したがって、コントローラ1−107は、行列Mが3つの構成行列:M=VΣUにより表されるように、特異値分解(SVD)を使用して行列Mを分解し、式中、U及びVは、それぞれ実数対角n×n及びm×m行列であり(UU=UU=1及びVV=VV=1)、Σは、実数エントリを有するm×n対角行列である。全ての式中の上付き文字「T」は、関連付けられた行列の転置を表す。行列のSVDの特定は、既知であり、コントローラ1−107は、任意の適した技法を使用して、行列MのSVDを特定し得る。幾つかの実施形態では、行列Mは、複素行列であり、その場合、行列Mは、M=VΣUに分解することができ、式中、V及びUは、複素ユニタリn×n及びm×m行列であり、それぞれUU=UU=1及びVV=VV=1)、Σは、実数エントリ又は複素数エントリを有するm×n対角行列である。対角特異値の値は、特異値の最大絶対値が1であるように更に正規化することもできる。
コントローラ1−107が行列Mの行列U、Σ及びVを特定すると、行列U及びVが対角実数行列である場合、コントローラは、2つの対角行列U及びVを一連の実数値ギヴンス回転行列に更に分解し得る。ギヴンス回転行列G(i,j,θ)は、以下の式:
k≠i,jの場合、gkk=1、
k=i,jの場合、gkk=cos(θ)、
ij=−gji=−sin(θ)、
他の場合、gkl=0
により成分ごとに定義され、式中、gijは、行列Gのi行目及びj列目における要素を表し、θは、行列に関連付けられた回転の角度である。一般に、行列Gは、行列式1(SU(2)群)を有する任意の2×2ユニタリ行列であり、2つのパラメータによりパラメータ化される。幾つかの実施形態では、それらの2つのパラメータは、回転角θ及び別の位相値φである。それにもかかわらず、行列Gは、角度又は位相以外の他の値により、例えば反射率/透過率又は分離距離(NOEMSの場合)によりパラメータ化することもできる。
複素空間において、ギヴンス回転の組の積に関して任意の実数対角行列を表すアルゴリズムは、M.レック(M.Reck)ら著、「任意の離散ユニタリ演算子の実験的実現(Experimental realization of any discrete unitary operator)」、フィジカルレビューレター(Physical Review Letters)、第73巻、第58号(1994年)(「レック(Reck)」)及びW.R.クレメンツ(W.R.Clements)ら著、「ユニバーサルマルチポート干渉計の最適設計(Optimal design for universal multiport interferometers)」、オプティカ(Optica)、第3巻、第12号(2016年)(「クレメンツ(Clements)」)において提供されており、これらの両方は、全体的に及び少なくともギヴンス回転に関して実数対角行列を分解する技法の考察について、参照により本明細書に援用される。(本明細書において使用される任意の用語がレック(Reck)及び/又はクレメンツ(Clements)におけるその用語の使用と競合する場合、用語には、当業者が本明細書においてその使用をどのように理解するかに最も一貫する意味が与えられるべきである)。生成される分解は、以下の式:
Figure 2021523508
により与えられ、式中、Uは、n×n直交行列であり、Sは、適用されるギヴンス回転のk番目の集合に関連するインデックスの集合であり(分解アルゴリズムにより定義される)、θij (k)は、ギヴンス回転のk番目の集合における成分i及びj間のギヴンス回転に適用される角度を表し、Dは、各成分のグローバル符号を表す+1又は−1エントリのいずれかの対角行列である。インデックスの集合Sは、nが偶数であるか又は奇数であるかに依存する。例えば、nが偶数である場合、
奇数kの場合、S={(1,2),(3,4),...,(n−1,n)}、
偶数kの場合、S={(2,3),(4,5),...,(n−2,n−1)}
である。nが奇数である場合、
奇数kの場合、S={(1,2),(3,4),...,(n−2,n−1)}、
偶数kの場合、S={(2,3),(4,5),...,(n−1,n)}
である。
限定ではなく例として、4×4直交行列の分解は、
Figure 2021523508
として表すことができる。
コントローラ1−107を使用して実施され得る、n個の集合の実数値ギヴンス回転に関してn×n行列Uを分解するアルゴリズムの一実施形態の概説は、以下である。
Figure 2021523508
上記アルゴリズムの結果として生成される行列U’は、下三角であり、式:
Figure 2021523508
により元の行列Uに関連する。式中、ラベルSは、U’の左側のVBSにより接続された2つのモードの集合を記し、ラベルSは、U’の右側のVBSにより接続された2つのモードの集合を記す。Uは、直交行列であるため、U’は、対角線に沿って{−1,1}エントリを有する対角行列である。この行列U’=Dは、「位相スクリーン」と呼ばれる。
アルゴリズムの次のステップは、コントローラ1−107を使用して実施され得る以下のアルゴリズム:
Figure 2021523508
を使用して、いずれのG jk(θ)D=Djk(θ)が達成されるかを繰り返し見つけることである。
上記アルゴリズムは、V及び/又はVを分解して、VBS値のm個の層及び関連付けられた位相スクリーンを特定するために使用することもできる。
直交行列を実数値ギヴンス回転行列に分解する上記概念は、直交行列ではなく、むしろ複素行列、例えばユニタリ行列に拡張することができる。幾つかの実施形態では、これは、ギヴンス回転行列のパラメータ化に追加の位相を含めることにより達成され得る。したがって、更なる位相項が追加されたギヴンス行列の一般形態は、T(i,j,θ,φ)であり、ここで、
k≠i,jの場合、tkk=1、
ii=eiφcos(θ)、
jj=cos(θ)、
ij=−sin(θ)、
ji=eiφsin(θ)、
他の場合、tkl=0
であり、式中、tijは、行列Tのi行目及びj列目を表し、θは、行列に関連付けられた回転角であり、φは、追加の位相である。任意のユニタリ行列は、タイプT(i,j,θ,φ)の行列に分解することができる。位相φ=0に設定することを選択することにより、上述した従来の実数値ギヴンス回転行列が取得される。代わりに、位相φ=πの場合、ハウスホルダ行列として既知の行列の組が取得される。ハウスホルダ行列Hは、形態
Figure 2021523508
を有し、式中、Iは、n×n恒等行列であり、νは、単位ベクトルであり、
Figure 2021523508
は、外積である。ハウスホルダ行列は、単位ベクトルνに直交する超平面についての反射を表す。このパラメータ化では、超平面は、QR分解についてハウスホルダ行列を定義する際に一般的であるようなn−1次元サブ空間ではなく、むしろ二次元サブ空間である。したがって、ギヴンス回転への行列の分解は、ハウスホルダ行列への行列の分解に等しい。
ギヴンス回転の制限された集合への任意のユニタリ行列の上記分解に基づいて、任意のユニタリ行列は、特定のシーケンスの回転及び位相シフトにより実施することができる。また、フォトニクスでは、回転は、可変ビームスプリッタ(VBS)により表され得、位相シフトは、位相変調器を使用して容易に実施される。したがって、フォトニックプロセッサ1−103のn個の光学入力の場合、行列MのSVDのユニタリ行列を表す第1の行列実装1−301及び第3の行列実装1−305は、VBSの相互接続アレイ及び位相シフタにより実施され得る。光学パルスをVBSアレイに通すことの並列性により、行列乗算は、O(1)時間において実行することができる。第2の行列実装1−303は、SVDの各直交行列に関連付けられた対角行列Dと組み合わされた行列MのSVDの対角行列である。上述したように、各行列Dは、「位相スクリーン」と呼ばれ、下付き文字を用いて記されて、行列Uに関連付けられた位相スクリーンであるか、又は行列Vに関連付けられた位相スクリーンであるかを示すことができる。したがって、第2の行列実装303は、行列Σ’=DΣDである。
幾つかの実施形態では、第1の行列実装1−301及び第3の行列実装1−305に関連付けられたフォトニックプロセッサ1−103のVBS単位セルは、内部位相シフタを有するマッハツェンダー干渉計(MZI)であり得る。他の実施形態では、VBS単位セルは微小電子機械システム(MEMS:microelectromechanical system)アクチュエータであり得る。幾つかの実施形態では、外部位相シフタが使用されて、ギヴンス回転に必要な追加の位相を実施し得る。
対角行列DΣDを表す第2の行列実装1−303は、振幅変調器及び位相シフタを使用して実施され得る。幾つかの実施形態では、VBSは、光学パルスを可変減衰するようにダンプすることができる光の一部を分割するために使用され得る。追加又は代替として、制御可能な利得媒体は、光学信号の増幅に使用され得る。例えば、GaAs、InGaAs、GaN又はInPは、光学信号を増幅する能動利得媒体として使用され得る。結晶反転対称性を有する材料、例えば、KTP及びニオブ酸リチウムにおける二次高調波生成等の他の能動利得プロセス並びに反転対称性のない材料、例えばシリコンにおける四波混合プロセスも使用され得る。各光学モードにおける位相シフタは、実施されている位相スクリーンに応じて0位相シフト又はπ位相シフトのいずれかを適用するために使用され得る。幾つかの実施形態では、各位相スクリーンに1つの位相シフタではなく、各光学モードに1つのみの位相シフタが使用される。これは、各行列D、Σ及びDが対角であり、したがって可換であるために可能である。したがって、フォトニックプロセッサ1−103の第2の行列実装1−303の各位相シフタの値は、2つの位相スクリーンの積の結果である:D
図1−4を参照すると、第1の行列実装1−301及び第3の行列実装1−305は、幾つかの実施形態によれば、VBS1−401のアレイとして実施される。簡潔にするために、n=6個のみの光学パルス(行数)が示されており、その結果、入力光学パルスの数(例えば、6)に等しい「回路深度」(例えば、列数)が生成される。明確にするために、1つのみのVBS1−401が参照符号で記される。しかしながら、VBSは、特定のVBSによっていずれの光学モードが混合されているかを識別する下付き文字及び関連付けられた列を記す上付き文字を用いて記される。各VBS1−401は、上述したように複素ギヴンス回転T(i,j,θ,φ)を実施し、ここで、i及びjは、VBS1−401の下付文字ラベルに等しく、θは、ギヴンス回転の回転角であり、φは、一般化された回転に関連付けられた追加の位相である。
図1−5を参照すると、各VBS1−401は、MZI1−510及び少なくとも1つの外部位相シフタ1−507を使用して実施され得る。幾つかの実施形態では、第2の外部位相シフタ1−509も含まれ得る。MZI1−510は、MZI1−510の2つの入力モードを混合するために第1のエバネッセント結合器1−501及び第2のエバネッセント結合器1−503を含む。内部位相シフタ1−505は、MZI1−510の一方のアームにおいて位相θを変調して、2つのアーム間に位相差をもたらす。位相θを調整すると、VBS1−401により出力される光の強度は、MZI1−510の一方の出力モードから他方の出力モードに変更され、それにより制御可能且つ可変のビームスプリッタが作られる。幾つかの実施形態では、第2の内部位相シフタは、第2のアームにおいて適用することができる。この場合、出力光強度を変えさせるのは、2つの内部位相シフタ間の差である。2つの内部位相間の平均は、モードi及びモードjに入る光にグローバル位相を付与する。したがって、2つのパラメータθ及びφは、それぞれ位相シフタにより制御され得る。幾つかの実施形態では、第2の外部位相シフタ1−509は、静的位相乱れに起因したVBSの出力モードにわたる不要な差分位相を補正するために使用され得る。
幾つかの実施形態では、位相シフタ1−505、1−507及び1−509は、熱光学、電子光学又は光学機械位相変調器を含み得る。他の実施形態では、内部位相変調器505をMZI510内に含むのではなく、NOEMS変調器が使用され得る。
幾つかの実施形態では、VBSの数は、行列のサイズに伴って増大する。本発明者らは、多数のVBSの制御が難しいことがあり、複数のVBS間で1つの制御回路を共有することに利点があることを認識及び理解した。複数のVBSの制御に使用され得る並列制御回路の一例は、デジタル−アナログ変換器であり、特定のVBSに付与するアナログ信号を符号化するデジタル列を入力として受信する。幾つかの実施形態では、回路は、制御するVBSのアドレスも第2の入力として受信する。回路は、次に、アドレス指定されたVBSにアナログ信号を付与し得る。他の実施形態では、制御回路は、幾つかのVBSを通して自動的にスキャンし、能動的にアドレスが与えられずに複数のVBSにアナログ信号を付与し得る。この場合、アドレッシングシーケンスは、VBSアレイが既知の順序でトラバースされるように予め定義される。
図1−6を参照すると、第2の行列実装1−303は、対角行列Σ’=DΣDによる乗算を実施する。これは、2つの位相シフタ1−601及び1−605を使用して、2つの位相スクリーンを実施し、振幅変調器1−603を使用して、関連付けられた光学パルスの強度を量ηだけ調整して達成され得る。上述したように、幾つかの実施形態では、1つのみの位相変調器1−601が使用され得、これは、Σ’を形成する3つの成分行列が対角であり、したがって可換であるため、2つの位相スクリーンが一緒に結合可能であるためである。
幾つかの実施形態では、振幅変調器1−603は、減衰器及び/又は増幅器を使用して実施され得る。振幅変調ηの値が1超である場合、光学パルスは、増幅される。振幅変調ηの値が1未満である場合、光学パルスは、減衰される。幾つかの実施形態では、減衰のみが使用される。幾つかの実施形態では、減衰は、集積減衰器の列により実施され得る。他の実施形態では、図1−7に示されるように、減衰1−603は、2つのエバネッセント結合器1−701及び1−703並びに制御可能な内部位相シフタ1−705を含むMZIを使用して実施されて、MZIの入力からMZIの第1の出力ポート1−709に送信される入力光の量を調整し得る。MZIの第2の出力ポート1−707は、無視、ブロック又はダンプされ得る。
幾つかの実施形態では、コントローラ1−107は、フォトニックプロセッサ1−103における各位相シフタの値を制御する。上述した各位相シフタは、光学エンコーダ1−101の位相変調器1−207に関連して考察したDACと同様のDACを含み得る。
フォトニックプロセッサ1−103は、任意の数の入力ノードを含むことができるが、相互接続VBSアレイ1−301及び1−305のサイズ及び複雑性は、入力モードの数が増えるにつれて増大する。例えば、n個の入力光学モードがある場合、フォトニックプロセッサ1−103は、回路深度2n+1を有し、ここで、第1の行列実装1−301及び第2の行列実装1−305は、それぞれ回路深度nを有し、第2の行列実装1−303は、回路深度1を有する。重要なことに、1つの行列乗算を実行する時間における複雑性は、入力光学パルスの数に伴って線形でさえもない(常にO(1)である)。幾つかの実施形態では、並列化により提供されるこの低次複雑性は、従来の電気プロセッサを使用して得ることができないエネルギー及び時間の効率をもたらす。
なお、本明細書に記載される実施形態は、n個の入力及びn個の出力を有するものとしてフォトニックプロセッサ1−103を示しているが、幾つかの実施形態では、フォトニックプロセッサ1−103により実施される行列Mは、正方行列でないことがある。そのような実施形態では、フォトニックプロセッサ1−103は、異なる数の出力及び入力を有し得る。
なおまた、第1及び第2の行列実装1−301及び1−305内のVBSの相互接続のトポロジに起因して、2つ以上の行列乗算が同時に実行され得るように、フォトニックプロセッサ1−103を行の非相互作用サブセットに分割することが可能である。例えば、図1−4に示されるVBSアレイでは、光学モード3及び4を結合する各VBS1−401が、光学モード3及び4が全く結合されないように(例えば、下付文字「34」を有するVBS1−401があたかも図1−4に存在しないかのように)設定される場合、上の3つの光学モードは、下の3つの光学モードから完全に独立して動作する。そのような分割は、多数の入力光学モードを有するフォトニックプロセッサでは、はるかに大きい規模で行われ得る。例えば、n=64のフォトニックプロセッサは、各8×8行列により8つの8成分入力ベクトルを同時に乗算し得る(8×8行列の各々は、別個にプログラム可能且つ制御可能である)。更に、フォトニックプロセッサ1−103は、均等に分割される必要はない。例えば、n=64のフォトニックプロセッサは、それぞれ20、13、11、8、6、4及び2つの成分を有する7つの異なる入力ベクトルに分割され得、それぞれ各行列により同時に乗算される。上記数値例は、単に例示を目的とし、任意の数の分割が可能であることを理解されたい。
更に、フォトニックプロセッサ1−103は、ベクトル−行列乗算を実行し、ここで、光学信号をVBSアレイに通すことにより、ベクトルは、行列により乗算されるが、フォトニックプロセッサ1−103は、行列−行列乗算の実行に使用することもできる。例えば、複数の入力ベクトルがフォトニックプロセッサ1−103を、順次、一度に1つの入力ベクトルずつ通過し得、ここで、各入力ベクトルは、入力行列の列を表す。個々のベクトル−行列乗算の各々を光学的に計算した後(各乗算は、結果として生成される行列の出力列の列に対応する出力ベクトルを生成する)、結果は、デジタル的に結合されて、行列−行列乗算から生じた出力行列を形成し得る。
E.光学受信機
フォトニックプロセッサ1−103は、光学受信機1−105に送信されるn個の光学パルスを出力する。光学受信機1−105は、光学パルスを受信し、受信した光学信号に基づいて電気信号を生成する。幾つかの実施形態では、各光学パルスの振幅及び位相が特定される。幾つかの実施形態では、これは受信したホモダイン又はヘテロダイン検出方式を使用して達成される。他の実施形態では、単純な位相非敏感光検出が従来のフォトダイオードを使用して実行され得る。
図1−9を参照すると、光学受信機1−105は、幾つかの実施形態によれば、ホモダイン検出器1−901、トランスインピーダンス増幅器1−903及びアナログ−デジタル変換器(ADC:analog−to−digital converter)1−905を含む。構成要素は、図1−9では全ての光学モードで1つの要素として示されているが、これは、簡潔さのためである。各光学モードは、専用ホモダイン検出器1−901、専用トランスインピーダンス増幅器1−903及び専用ADC1−905を有し得る。幾つかの実施形態では、トランスインピーダンス増幅器1−903は、使用されないこともある。代わりに、電流を電圧に変換する任意の他の適した電子回路が使用され得る。
図1−10を参照すると、ホモダイン検出器1−903は、幾つかの実施形態によれば、局部発振器(LO:local oscillator)1−1001、直角位相コントローラ1−1003、ビームスプリッタ1−1005並びに2つの検出器1−1007及び1−1009を含む。ホモダイン検出器1−903は、第1の検出器1−1007により出力された電流と、第2の検出器1−1009により出力された電流との間の差分に基づく電流を出力する。
局部発振器1−1001は、ビームスプリッタ1−1005において入力光学パルスと結合される。幾つかの実施形態では、光源1−201の一部は、光学導波路及び/又は光ファイバを介してホモダイン検出器1−901に透過する。光源1−201からの光は、それ自体、局部発振器1−1001として使用され得るか、又は他の実施形態では、局部発振器1−1001は、光源1−201からの光を使用して、位相整合光学パルスを生成する別個の光源であり得る。幾つかの実施形態では、MZIは、信号と局部発振器との間で調整を行うことができるようにビームスプリッタ1−1005を置換し得る。
直角位相コントローラ1−1003は、測定が行われる位相空間において断面角度を制御する。幾つかの実施形態では、直角位相コントローラ1−1003は、入力光学パルスと局部発振器との間の相対位相を制御する位相シフタであり得る。直角位相コントローラ1−1003は、入力光学モードの位相シフタとして示されている。しかし、幾つかの実施形態では、直角位相コントローラ1−1003は、局部発振器モードであり得る。
第1の検出器1−1007は、ビームスプリッタ1−1005の第1の出力により出力された光を検出し、第2の検出器1−1009は、ビームスプリッタ1−1005の第2の出力により出力される光を検出する。検出器1−1007及び1−1009は、0バイアスで動作するフォトダイオードであり得る。
減算回路1−1011は、第1の検出器1−1007からの電流を第2の検出器1−1009からの電流から減算する。したがって、その結果生成された電流は、振幅及び符号(プラス又はマイナス)を有する。トランスインピーダンス増幅器1−903は、電流のこの差を電圧に変換し、電圧は正又は負であり得る。最後に、ADC1−905は、アナログ信号をデジタルビット列に変換する。この出力ビット列は、行列乗算の出力ベクトル結果を表し、フォトニックプロセッサ1−103により出力される出力ベクトルの光学出力表現の電気デジタル版である。幾つかの実施形態では、出力ビット列は、更なる処理に向けてコントローラ1−107に送信され得、更なる処理は、1つ又は複数の出力ビット列に基づいて次の入力ビット列を決定すること及び/又は上述したように出力ビット列を外部プロセッサに送信することを含み得る。
本発明者らは、上述したフォトニック処理システム1−100の構成要素が、第1の行列実装1−301が第2の行列実装1−303に接続され、第2の行列実装1−303が第3の行列実装1−305に接続されるように連続して一緒に連結する必要がないことを更に認識及び理解した。幾つかの実施形態では、フォトニック処理システム1−103は、1つ又は複数の乗算を実行する1つのみのユニタリ回路を含み得る。1つのユニタリ回路の出力は、光学受信機1−105に直接接続され得、ここで、乗算の結果は、出力光学信号を検出することにより特定される。そのような実施形態では、1つのユニタリ回路は、例えば、第1の行列実装1−301を実施し得る。光学受信機1−105により検出された結果は、次に、従来のプロセッサ(例えば、プロセッサ1−111)にデジタルで送信され得、第2の対角行列実装1−303が従来のプロセッサ(例えば、1−111)を使用してデジタルドメインで実行される。次に、コントローラ1−107は、第3の行列実装1−305を実行し、第2の行列実装のデジタル実施の結果に基づいて入力ビット列を特定し、再プログラムされた設定を有する1つのユニタリ回路を通して、新しい入力ビット列に基づいて符号化された光学信号を送信するように光学エンコーダを制御するように1つのユニタリ回路を再プログラムし得る。結果として生成された出力光学信号は、光学受信機105により検出され、次に行列乗算の結果の特定に使用される。
本発明者らは、複数のフォトニックプロセッサ1−103を順次連続して連結することが有利であり得ることも認識及び理解した。例えば、行列乗算M=Mを実施することであって、式中、M及びMは、任意の行列であるが、Mは、変化する入力作業負荷に基づいてMよりも頻繁に変化する、実施することのために、第1のフォトニックプロセッサは、Mを実施するように制御され得、第1のフォトニックプロセッサに光学的に結合された第2のフォトニックプロセッサは、一定に保たれるMを実施することができる。このようにして、変化する入力作業負荷に基づいて頻繁に更新する必要があるのは、第1のフォトニック処理システムのみでよい。そのような構成は、計算を加速させるのみならず、コントローラ1−107とフォトニックプロセッサとの間を移動するデータビット数を低減もする。
F.折り返しフォトニック処理システム
図1−1において、そのような構成では、光学エンコーダ1−101及び光学受信機1−105は、フォトニック処理システム1−100の対向する側に位置する。光学受信機1−105からのフィードバックが、プロセスの将来の反復に向けて光学エンコーダ1−101への入力を決定するために使用される用途では、データは、光学受信機1−105からコントローラ1−107及び光学エンコーダ1−101に電子的に転送される。本発明者らは、これらの電気信号が移動する必要がある距離を低減すること(例えば、電気トレース及び/又はワイヤの長さを低減することにより)が節電及び低待ち時間をもたらすことを認識及び理解した。更に、光学エンコーダ1−101及び光学受信機1−105がフォトニック処理システムの対向する端部に配置される必要はない。
したがって、幾つかの実施形態では、光学エンコーダ1−101及び光学受信機1−105は、電気信号が光学エンコーダ1−101と光学受信機1−105との間で移動する必要がある距離がフォトニクスプロセッサ1−103の幅未満であるように互いの近くに(例えば、フォトニクスプロセッサ1−103の同じ側に)位置する。これは、チップの同じ部分に物理的にあるように第1の行列実装1−301及び第3の行列実装1−305の構成要素を物理的にインタリーブすることにより達成され得る。この構成は、「折り返し」フォトニック処理システムと呼ばれ、その理由は、光が、まず、光学エンコーダ1−101及び光学受信機1−105から遠いチップの物理的部分に達するまで、第1の行列実装1−301を通して第1の方向に伝搬し、次に第3の行列実装1−305を実施する場合、光を第1の方向とは逆の方向に伝播するように導波路が光をターンさせるように折り返すためである。幾つかの実施形態では、第2の行列実装1−303は、導波路内の折り返しに隣接して物理的に配置される。そのような構成は、光学エンコーダ1−101、光学受信機1−105及びコントローラ1−107を接続する電気トレースの複雑性を低減し、フォトニック処理システム1−100の実施に使用される合計チップ面積を低減する。例えば、折り返し構成を使用する幾つかの実施形態は、図1−1の連続フォトニック構成が使用される場合に必要な合計チップ面積の65%のみを使用する。これは、フォトニック処理システムのコスト及び複雑性を下げ得る。
本発明者らは、折り返し構成に電気的利点があるのみならず、光学的利点もあることを認識及び理解した。例えば、ホモダイン検出での局部発振器として使用されるために、光信号が光源から移動する必要がある距離を低減することにより、光学信号の時間依存位相変動が低減され得、その結果、検出結果の品質が高くなる。特に、光源及びホモダインをフォトニクスプロセッサの同じ側に配置することにより、胸部発振器に使用される光信号が移動する距離は、もはや行列のサイズに依存しない。例えば、図1−1の連続構成では、局部発振器に向けて光信号が移動する距離は、行列のサイズと共に線形に増減する一方、折り返し構成での移動距離は、行列サイズに関係なく一定である。
図1−11は、幾つかの実施形態による折り返しフォトニック処理システム1−1100の概略図である。折り返しフォトニック処理システム1−1100は、電力ツリー1−1101、複数の光学エンコーダ1−1103a乃至1−1103d、複数のホモダイン検出器1−1105a乃至1−1105d、複数のセレクタスイッチ1−1107a乃至1−1107d、複数のU行列成分1−1109a乃至1−1109j、複数の対角行列成分1−1111a乃至1−1111d及び複数のV行列成分1−1113a乃至1−1113jを含む。明確にするために、折り返しフォトニック処理システムの構成要素の全てが図に示されているわけではない。折り返しフォトニック処理システム1−1100が連続フォトニック処理システム1−100と同様の構成要素を含み得ることを理解されたい。
電力ツリー1−1101は、図2の電力ツリー1−203と同様であり、光を光源(図示せず)から光学エンコーダ1−1103に送るように構成される。しかしながら、電力ツリー1−1101と電力ツリー1−203との違いは、電力ツリーが光学信号をホモダイン検出器1−1105aに直接送ることである。図2では、光源201は、光源からの光学信号の一部を取り出し、導波路を使用して光学信号をガイドすることにより、フォトニックプロセッサの逆側にあるホモダイン検出器に局部発振器信号を送る。図1−11では、電力ツリー1−1101は、空間モードの数の2倍に等しい数の出力を含む。例えば、図1−11は、フォトニックプロセッサの4つのみの空間モードを示し、電力ツリー1−1101から8つの出力モードが生成される。1つの出力は、光を各光学エンコーダ1−1103に向け、1つの出力は、光を各ホモダイン検出器1−1105に向ける。電力ツリーは、例えば、カスケード接続されたビームスプリッタ又はマルチモード干渉計(MMI)を使用して実施され得る。
光学エンコーダ1−1103は、図1の電力ツリー光学エンコーダ1−101と同様であり、電力ツリー1−1101から受信された光学信号の振幅及び/又は位相に情報を符号化するように構成される。これは、例えば、図2の光学エンコーダ1−101に関連して説明したように達成され得る。
ホモダイン検出器1−1105は、電力ツリー1−1101とU行列成分1−1109との間に配置される。幾つかの実施形態では、ホモダイン検出器1−1105は、光学エンコーダ1−1103を有する列に物理的に位置決めされる。幾つかの実施形態では、光学エンコーダ1−1103及びホモダイン検出器1−1105は、1列においてインタリーブされ得る。このようにして、光学エンコーダ1−1103及びホモダイン検出器1−1105は、互いの近傍にあり、光学エンコーダ1−1103及びホモダイン検出器1−1105並びに光学エンコーダ1−1103及びホモダイン検出器1−1105の列に隣接して物理的に配置され得るコントローラ(図示せず)の接続に使用される電気トレース(図示せず)の距離を低減する。
各光学エンコーダ1−1103は、各ホモダイン検出器1−1105に関連付けられる。光学エンコーダ1−1103及びホモダイン検出器1−1105は、両方とも光学信号を電力ツリー1−1101から受信する。光学エンコーダ1−1103は、上述したように光学信号を使用して、入力ベクトルを符号化する。ホモダイン検出器1−1105は、上述したように、電力ツリーから受信された受信光学信号を局部発振器として使用する。
光学エンコーダ1−1103及びホモダイン検出器1−1105の各対は、セレクタスイッチ1−1107に関連付けられ、導波路によりセレクタスイッチ1−1107に接続される。セレクタスイッチ1−1107a乃至1−1107dは、例えば、従来の2×2光学スイッチを使用して実施され得る。幾つかの実施形態では、2×2光学スイッチは、バーへのクロスからMZIの挙動を制御する内部位相シフタを有するMZIである。スイッチ1−1107は、コントローラ(図示せず)に接続されて、光学エンコーダ1−1103から受信された光学信号がU行列成分1−1109に向けてガイドされるか、又はV行列成分1−1113に向けてガイドされるかを制御する。光学スイッチは、U行列成分1−1109及び/又はV行列成分1−1113から受信された光を検出に向けてホモダイン検出器1−1105に向けてガイドするようにも制御される。
行列乗算を実施する技法は、図1−3において説明したように、連続システムに関連して上述したようなフォトニック折り返しフォトニック処理システム1−1100におけるものと同様である。2つのシステムの違いは、行列成分の物理的配置及び折り返し1−1120の実施であり、光学信号は、図1−11における概ね左から右への伝播から、概ね右から左への伝播に変更される。図1−11では、構成要素間の接続は、導波路を表し得る。実線接続は、幾つかの実施形態では、光学信号が左から右に伝播している導波路の部分を表し、破線接続は、幾つかの実施形態では、光学信号が右から左に伝播している導波路の部分を表す。特に、この表記を所与として、図1−11に示される実施形態は、セレクタスイッチ1−1107が光学信号をまずU行列成分1−1109にガイドする実施形態である。他の実施形態では、セレクタスイッチ1−1107は、光学信号をまずV行列成分1−1113にガイドし得、この場合、破線は、光学信号が左から右に伝播している導波路の部分を表し、実線接続は、光学信号が右から左に伝播している導波路の部分を表す。
行列MのSVDのU行列は、V行列成分1−1113とインタリーブされたU行列成分1−1109を使用してフォトニック処理システム1−1100において実施される。したがって、図1−3に示される連続構成の実施形態と異なり、U行列成分1−1109及びV行列成分1−1113の全ては、1つの物理的なエリア内の各自己完結型アレイに物理的に配置されない。したがって、幾つかの実施形態では、フォトニック処理システム1−1100は、行列成分の複数の列を含み、列の少なくとも1つは、U行列成分1−1109及びV行列成分1−1113の両方を含む。幾つかの実施形態では、図1−11に示されるように、1列目は、U行列成分1−1109のみを有し得る。U行列成分1−1109は、図3の第1の行列実装1−301と同様に実施される。
U行列成分1−1109及びV行列成分1−1113のインタリーブ構造に起因して、折り返しフォトニック処理システム1−1100は、行列要素の列間の種々の場所に導波路クロスオーバ1−1110を含む。幾つかの実施形態では、導波路クロスオーバは、集積フォトニクスチップにおける2つ以上の層間に断熱エバネッセントエレベータを使用して構築することができる。他の実施形態では、U行列及びV行列は、同じチップの異なる層に位置し得、導波路クロスオーバは、使用されない。
光学信号は、U行列成分1−1109の全てを通して伝播した後、対角行列成分1−1111に伝播し、対角行列成分1−1111は、図1−3の第2の行列実装1−303と同様に実施される。
光学信号は、対角行列成分1−1111の全てを通して伝播した後、V行列成分1−1113に伝搬し、V行列成分1−1113は、図1−3の第3の行列実装1−305と同様に実施される。行列MのSVDのV行列は、U行列成分1−1109とインタリーブされたV行列成分1−1113を使用してフォトニック処理システム1−1100において実施される。したがって、V行列成分1−1113の全ては、1つの自己完結型アレイに物理的に配置されない。
光学信号は、V行列成分1−1113の全てを通して伝播した後、セレクタスイッチ1−1107に戻り、セレクタスイッチ1−1107は、光学信号を検出に向けてホモダイン検出器1−1105にガイドする。
本発明者らは、光学エンコーダ後且つ行列成分前にセレクタスイッチを含めることにより、折り返しフォトニック処理システム1−1100が回路の効率的な双方向性を可能にすることを更に認識及び理解した。したがって、幾つかの実施形態では、図1−1に関連して説明したコントローラ1−107等のコントローラは、光学信号がまずU行列により乗算されるか、又はまずV行列により乗算されるかを制御し得る。光学信号が左から右に伝播する場合、ユニタリ行列Uを実施するように設定されたVBSのアレイの場合、光学信号を右から左に伝播させることは、ユニタリ行列Uによる乗算を実施する。したがって、VBSのアレイの同じ設定は、光学信号がアレイを通していずれの方向に伝播するかに応じてU及びUの両方を実施することができ、光学信号がアレイを通していずれの方向に伝播するかは、1−1107におけるセレクタスイッチを使用して制御され得る。機械学習アルゴリズムのトレーニングに使用されるバックプロパゲーション等の幾つかの用途では、光学信号を1つ又は複数の行列に逆方向に通すことが望ましいことがある。他の用途では、入力ベクトルに対する反転行列の演算の計算に双方向性を使用することができる。例えば、可逆n×n行列Mの場合、SVDによりM=VΣUが生成される。この行列の反転は、M−1=UΣ−1Vであり、式中、Σ−1は、各対角要素を反転することにより効率的に計算することができる対角行列の反転である。行列Mによりベクトルを乗算するために、スイッチは、光学信号を行列U、次にΣ、次にVに第1の方向で向けるように構成される。反転M−1によりベクトルを乗算するには、特異値は、まず、Σ−1行列の実施をプログラムするように設定される。これは、図1−3に示されるもの等の単方向フォトニック処理システムの場合に該当するフォトニックプロセッサの2n+1個の全ての列の代わりに、VBSの1列のみの設定の変更を構成する。次に、入力ベクトルを表す光学信号は、行列V、次にΣ−1、次にUに、第1の方向とは逆の第2の方向で伝播する。セレクタスイッチ1−1107を使用して、折り返しフォトニック処理システム1−1100は、U行列(又はその転置)を先に実施することから、V行列(又はその転置)をまず実施することに容易に変更され得る。
G.波長分割多重化
本発明者らは、同じ行列により異なるベクトルを多重化し得る用途があることを更に認識及び理解した。例えば、機械学習アルゴリズムをトレーニング又は使用する場合、データセットは、同じ行列乗算を用いて処理され得る。本発明者らは、フォトニックプロセッサ前後の構成要素が波長分割多重化(WDM)される場合、これが1つのフォトニックプロセッサを用いて達成され得ることを認識及び理解した。したがって、幾つかの実施形態は、1つのみのフォトニックプロセッサを使用して行列乗算を実施しながら、それぞれに異なる波長が関連付けられた複数のフロントエンド及びバックエンドを含む。
図1−12Aは、幾つかの実施形態によるWDMフォトニック処理システム1−1200を示す。WDMフォトニック処理システム1−1200は、N個のフロントエンド1−1203、N個の空間モードを有する1つのフォトニックプロセッサ1−1201及びN個のバックエンド1−1205を含む。
フォトニックプロセッサ1−1201は、フォトニックプロセッサ1−103と同様であり得、N個の入力モード及びN個の出力モードを有する。N個のフロントエンド1−1203の各々は、フォトニックプロセッサ1−1201の各入力モードに接続される。同様に、N個のバックエンド1−1205の各々は、フォトニックプロセッサ1−1201の各出力モードに接続される。
図1−12Bは、フロントエンド1−1203の少なくとも1つの細部を示す。他の実施形態のフォトニック処理システムと同様に、フォトニック処理システム1−1200は、光学エンコーダ1−1211を含む。しかし、この実施形態では、M個の異なる光学エンコーダがあり、ここで、Mは、WDMフォトニック処理システム1−1200により多重化される波長数である。M個の光学エンコーダ1−1211の各々は、各々が異なる波長のM個の光学信号を生成する光源(図示せず)から光を受け取る。光源は、例えば、レーザのアレイ、周波数コーム生成器又は異なる波長のコヒーレント光を生成する任意の他の光源であり得る。M個の光学エンコーダ1−1211の各々は、適切な振幅及び位相の変調を実施して、データを光学信号に符号化するようにコントローラ(図示せず)により制御される。次に、M個の符号化光学信号は、M:1のWDM1−1213を使用して1つの導波路に結合される。次に、1つの導波路は、フォトニックプロセッサ1−1201のN個の導波路の1つに接続する。
図1−12Cは、バックエンド1−1205の少なくとも1つの細部を示す。他の実施形態のフォトニック処理システムと同様に、フォトニック処理システム1−1200は、検出器1−1223を含み、検出器1−1223は、位相敏感又は位相非敏感検出器であり得る。しかし、この実施形態では、M個の異なる検出器1−1223があり、ここで、Mは、WDMフォトニック処理システム1−1200により多重化される波長の数である。M個の検出器1−1223の各々は、1:MのWDM1−1221から光を受け取り、1:MのWDM1−1221は、フォトニックプロセッサ1−1201からの1つの出力導波路をM個の異なる波長に分割し、M個の異なる波長は、それぞれ各波長の光学信号を搬送する。M個の検出器1−1223の各々は、測定結果を記録するようにコントローラ(図示せず)により制御され得る。例えば、M個の検出器1223の各々は、ホモダイン検出器又は位相非敏感光検出器であり得る。
幾つかの実施形態では、フォトニックプロセッサ1−1201におけるVBSは、関心のあるM個の波長内で非分散であるように選択され得る。したがって、全ての入力ベクトルは、同じ行列により乗算される。例えば、方向結合器の代わりにMMIが使用可能である。他の実施形態では、VBSは、関心のあるM個の波長内で分散するように選択され得る。ニューラルネットワークモデルのパラメータの確率的最適化に関連する幾つかの用途では、これは、パラメータの勾配を計算する際にノイズを追加することに等しく、勾配ノイズの増大は、より高速の最適化収束に有利であり得、ニューラルネットワークのロバスト性を改善し得る。
図1−12Aは、連続フォトニック処理システムを示すが、同様のWDM技法は、折り返しフォトニックプロセッサ1−1100に関連して説明した技法を使用してWDM折り返しフォトニックプロセッサを形成するために使用され得る。
H.出力のアナログ合算
本発明者らは、経時にわたるフォトニックプロセッサ1−103からの出力の平均の和を計算することが有用な用途があることを認識及び理解した。例えば、フォトニック処理システム1−100が1つのデータ点のより厳密な行列−ベクトル乗算の計算に使用される場合、1つのデータ点をフォトニックプロセッサに複数回通して、計算の統計結果を改善することが望まれる場合がある。追加又は代替として、バックプロパゲーション機械学習アルゴリズムにおいて勾配を計算する場合、勾配を決定する1つのデータ点を望まないことがあり、したがって複数のトレーニングデータ点がフォトニック処理システム1−100を通り得、勾配の計算に平均結果が使用され得る。フォトニック処理システムを使用して、バッチ勾配に基づく最適化アルゴリズムを実行する場合、この平均化は、勾配推定の品質を高め、それにより高品質解の達成に必要な最適化ステップの数を低減し得る。
本発明者らは、出力をデジタル電気信号に変換する前に出力信号がアナログドメインで合算され得ることを更に認識及び理解した。したがって、幾つかの実施形態では、ローパスフィルタが使用されて、ホモダイン検出器からの出力を合算する。アナログドメインで合算を実行することにより、ホモダイン電子回路は、デジタルドメインで合算を実行するのに必要な高価な高速ADC(例えば、高消費電力要件を有するADC)ではなく、低速ADCを使用し得る。
図1−13は、幾つかの実施形態による光学受信機1−1300の一部及びローパスフィルタ1−1305がホモダイン検出器1−1301とどのように併用され得るかを示す。ホモダイン検出器1−1301は、入力光学パルスの場及び位相の測定を実行する。kが経時にわたる異なる入力パルスのラベルであり、合計でK個の入力がある場合、kにわたる合算は、ローパスフィルタ1−1305を使用してアナログドメインで自動的に実行することができる。この光学受信機1−1300と、図1−9に示された光学受信機1−105との主な違いは、ローパスフィルタがホモダイン検出器の出力後のトランスインピーダンス増幅器1−1303後であることである。合計でK個の信号(成分y (k)を有する)が1つの低速サンプリング期間T (slow)内でホモダイン検出器に到達する場合、ローパスフィルタは、y (k)の符号及び値に従ってキャパシタCにおける電荷を蓄積/除去する。ローパスフィルタの最終出力は、
Figure 2021523508
に比例し、これは、サンプリング周波数f (slow)=1/T (slow)=f/Kでより低速のADC(図示せず)を用いて1回読み取ることができ、ここで、fは、当初必要とされていたサンプリング周波数である。理想的なシステムでは、ローパスフィルタは、3dB帯域幅を有するべきである:f3dB=f (slow)/2。図1−13の実施形態に示されるようにRC回路を使用するローパスフィルタの場合、f3dB=1/(2πRC)であり、R及びCの値は、所望のサンプリング周波数:f (slow)を得るように選択することができる。
幾つかの実施形態では、高速ADC及び低速ADCの両方が存在し得る。これに関連して、高速ADCは、個々の各アナログ信号を受信し、デジタル信号に変換するように構成されたADC(例えば、アナログ信号がADCに到着する周波数以上のサンプリング周波数を有するADC)であり、低速ADCは、複数のアナログ信号を受信し、受信した複数のアナログ信号の和又は平均を1つのデジタル信号に変換するように構成されたADC(例えば、アナログ信号がADCに到着する周波数未満のサンプリング周波数を有するADC)である。電気スイッチは、ホモダイン検出器及び場合によりトランスインピーダンス増幅器から低速ADCを有するローパスフィルタ又は高速ADCに切り替えるために使用され得る。このようにして、幾つかの実施形態のフォトニック処理システムは、低速ADCを使用してアナログ合算を実行することと、高速ADCを使用してあらゆる光学信号を測定することとを切り替え得る。
I.位相の安定化
本発明者らは、正確な結果を保証するために、位相敏感測定(例えば、ホモダイン検出)の実行に使用される局部発振器の位相を安定化することが望ましいことを認識及び理解した。本明細書に記載される実施形態のフォトニックプロセッサは、N個の別個の空間モード間で光を干渉させることにより行列演算を実行する。幾つかの実施形態では、結果は、ホモダイン又はヘテロダイン検出器等の位相敏感検出器を用いて測定される。したがって、行列演算が正確に実行されることを保証するために、フォトニックプロセッサの種々の部分に付与された位相は、可能な限り正確であるべきであり、位相敏感検出の実行に使用される局部発振器の位相は、精密に既知であるべきである。
本発明者らは、フォトニックプロセッサのVBSの1列内で実行される等の並列干渉演算が、VBSのMZI内の相対位相及びMZIの出力の位相及び相対位相を制御する位相変調器を使用して正確な位相を付与するはずであるのみならず、列内の各VBSがフォトニックプロセッサの全ての空間モードにわたり同じグローバル位相シフトを付与すべきであることを認識及び理解した。この用途では、フォトニックプロセッサにおけるVBSの列のグローバル位相シフトは、「列−グローバル位相」と呼ばれる。列グローバル位相は、温度シフトに起因した導波路又は位相を通る伝播に起因して付与される位相等のVBSに関連付けられた、プログラムされた位相に関連しない影響に起因して付与される。これらの位相は、VBS上の列内で厳密に同時に付与される必要はなく、対象の列をトラバースした結果として付与されるのみでよい。列−グローバル位相が列の異なる空間モード間で均一であることを保証することは、ある列からの出力光学信号が、続く列における1つ又は複数のVBSにおいて干渉される可能性が高いため、重要である。前の列における列−グローバル位相が均一ではない場合、続く干渉(したがって計算自体の精度)は、不正確である。
図1−14は、フォトニック処理システム1−1400の列−グローバル位相及び合計グローバル位相を示す。フォトニック処理システムの上記実施形態と同様に、フォトニック処理システム1−1400は、U行列実装1−1401、対角行列実装1−1403、V行列実装1−1405及び複数の検出器1−1407a乃至1−1407dを含む。これらの実装は、上述した第1、第2及び第3の行列実装と同様である。簡潔にするために、フォトニック処理システム1−1400の4つのみのモードが示されるが、任意のより多数のモードが使用可能であることを理解されたい。また、簡潔さのために、U行列実装1−1401に関連付けられたVBSのみが示されている。対角行列実装1−1403及びV行列実装1−1405の構成要素の配置は、上述した第3及び第4の行列実装と同様である。
U行列実装1−1401は、複数のVBS1−1402を含むが、明確さのために1つのみのVBS1−1402が記されている。しかしながら、VBSは、特定のVBSにより、いずれの光学モードが混合されているかを識別する下付文字及び関連付けられた列を記す上付き文字を用いて記される。
図1−14に示されるように、各列は、理想的には列のあらゆる要素で均一な列−グローバル位相に関連付けられる。例えば、U行列実装1−1401の列1は、列−グローバル位相ΦU1に関連付けられ、U行列実装1−1401の列2は、列−グローバル位相ΦU2に関連付けられ、U行列実装1−1401の列3は、列−グローバル位相ΦU3に関連付けられ、U行列実装1−1401の列4は、列−グローバル位相Φに関連付けられる。
幾つかの実施形態では、列−グローバル位相は、少なくとも部分的に各VBS1−1402をプッシュ−プル構成でMZIとして実施することにより均一にすることができる。代替又は追加として、外部位相シフタは、各MZIの出力に追加されて、MZIの内部位相要素(例えば、位相シフタ)から付与された任意の位相誤差を補正することができる。
本発明者らは、フォトニック処理システム1−1400の各列が均一な列−グローバル位相を提供するという条件であっても、信号が最初の列から最後の列に伝播するにつれて位相が生じ得ることを更に認識及び理解した。U行列実装1−1401全体に関連付けられたグローバルU行列位相φがあり、個々の列−グローバル位相の和に等しい。同様に、対角行列実装1−1403は、グローバル対角行列位相ΦΣに関連付けられ、V行列実装1−1405は、グローバル対角行列位相ΦV†に関連付けられる。したがって、フォトニック処理システム1−1400全体の合計グローバル位相Φは、3つの個々のグローバル行列位相の和により与えられる。この合計グローバル位相は、全ての出力モード間で均一であるように設定され得るが、位相敏感検出に使用される局部発振器は、フォトニックプロセッサを伝播せず、この合計グローバル位相を受けなかった。合計グローバル位相Φは、説明されない場合、ホモダイン検出器1−1407a乃至1−1407dにより読み出される値の誤差に繋がり得る。
本発明者らは、乗算演算における誤差が、導波路の有効屈折率neffを変える温度変化から生じ得ることを更に認識した。したがって、幾つかの実施形態では、各列の温度が均一に設定されるか、又は1列の全てのモードに付与される位相が均一であるように能動的に調整されるように安定化回路を各回路に配置することができる。更に、局部発振器の光信号がシステムの異なる部分を通して伝播するにつれて、システムの異なる部分間の温度差は、位相の影響を受けやすい測定に誤差を生じさせる恐れがある。信号と局部発振器との間の位相差の量は、
Figure 2021523508
であり、式中、T及びTLOは、それぞれフォトニックプロセッサにおける信号導波路及び局部発振器導波路の温度であり、neff(T)は、温度の関数としての有効屈折率であり、λは、光の平均波長であり、L及びLLOは、それぞれフォトニックプロセッサにおける信号導波路及び局部発振器導波路を通る伝播長である。温度差ΔT=TLO−Tが小さいと仮定すると、有効屈折率は、
Figure 2021523508
として書き換えることができる。したがって、信号とLOとの間の位相差は、
Figure 2021523508
により良好に近似することができ、これは、伝播長Lが長くなるにつれて線形に増大する。したがって、十分に長い伝播距離の場合、小さい温度変化は、大きい位相シフトを生じさせ得る(約1ラジアン)。重要なことに、Lの値は、LLOの値と同じである必要はなく、2つの間の最大差は、光源のコヒーレント長Lcohによって決まる。帯域幅Δνを有する光源の場合、コヒーレント長は、
Figure 2021523508
により良好に近似することができ、式中、ceffは、伝送媒体における光の速度である。LとLLOとの間の長さの差がLcohよりもはるかに短い限り、信号と局部発振器との間の干渉は、フォトニック処理システムの正確な演算に可能である。
上記に基づいて、本発明者らは、幾つかの実施形態におけるフォトニックプロセッサの出力信号と、ホモダイン検出に使用される局部発振器との間で生じ得る位相誤差の少なくとも2つの原因を識別した。したがって、理想的なホモダイン検出器は、2つの光検出器の出力を減算することにより信号出力の大きさ及び位相を測定し、位相敏感強度出力測定Iout∝│E││ELO│cos(θ−θLO+Φ+Φ)が生じ、ここで、Eは、フォトニックプロセッサの出力からの光学信号の電場大きさであり、ELOは、局部発振器の電場大きさであり、θは、測定が望まれるフォトニックプロセッサにより付与される位相シフトであり、φは、合計グローバル位相であり、φは、局部発振器と光学信号との間の温度差により生じる位相シフトである。したがって、合計グローバル位相及び温度差に起因した位相シフトが説明されない場合、ホモダイン検出の結果は、誤りであり得る。したがって、幾つかの実施形態では、合計系統的位相誤差Δφ=φ+φが測定され、システムは、その測定に基づいて較正される。幾つかの実施形態では、合計系統的位相誤差は、必ずしも既知でないか又は識別されない誤差の他の原因からの寄与を含む。
幾つかの実施形態によれば、ホモダイン検出器は、予め計算されたテスト信号を検出器に送信し、予め計算されたテスト信号と測定されたテスト信号との間の差を使用して、システムにおける合計系統的位相誤差を補正することにより較正され得る。
幾つかの実施形態では、フォトニックプロセッサを通して伝播する光学信号に関連するものとして、合計グローバル位相φ及び温度差によって生じる位相シフトφを考慮するのではなく、いかなる位相シフトも生じさせず、合計系統的位相誤差 − Δφを有するLOを生じさせる信号として説明することができる。図1−15は、そのような状況におけるホモダイン測定の結果への影響を示す。信号[x,p]の直角位相値の元の(正確な)ベクトルは、不正確な直角位相値[x’,p’]を生成するΔφによりパラメータ化される回転行列により回転する。
合計系統的誤差に起因した直角位相回転に基づいて、幾つかの実施形態では、Δφの値は、以下のように得られる。まず、ベクトル
Figure 2021523508
は、例えば、コントローラ1−107を使用して選択される(例えば、ランダムベクトル)。ベクトルは、フォトニック処理システムの光学エンコーダにより準備することができるタイプのものである。第2に、
Figure 2021523508
の出力値は、例えば、コントローラ1−107又は何らかの他の計算デバイスを使用して計算され、式中、Mは、Δφが生じた不明な位相がないと仮定した理想的な場合にフォトニックプロセッサにより実施される行列である。その結果、
Figure 2021523508
の各要素は、x+ipに対応し、ここで、kは、フォトニックプロセッサの各出力モードを記す。
幾つかの実施形態では、フォトニックプロセッサを通してランダムベクトルが伝播することにおける損失は、理論的予測x+ipを計算する際に考慮され得る。例えば、伝送効率ηを有するフォトニックプロセッサの場合、x+ipの場信号は、
Figure 2021523508
になる。
次に、ランダムベクトル
Figure 2021523508
は、実際のシステムの光学エンコーダにより準備され、フォトニックプロセッサを通して伝播し、出力ベクトルの各要素は、両方の直角位相で測定されて、x’+ip’を得る。局部発振器と出力モードkの信号との間の位相差Δφは、
Figure 2021523508
により与えられる(一般に、モードkでの検出器に対するLOの路長は、モードlの場合ものと異なり得るため、k≠lの場合、Δφ≠Δφである)。
最後に、ホモダイン検出器の測定直角位相の選択に使用される局部発振器位相シフタは、θLO,k=Δφを付与するように制御される。その結果、図1−15に示されるように、軸(x,p)は、軸(x’,p’)と位置合わせされる。この段階で較正をチェックして、ベクトル
Figure 2021523508
を伝播させて、両方の直角位相が測定される場合、取得された測定結果が、予測された
Figure 2021523508
に等しいことをもう一度調べることにより、正確であることを保証し得る。
一般に、Δφの値は、場の振幅
Figure 2021523508
が可能な限り大きい場合、より精密に特定することができる。例えば、場ES,kが例えばレーザ源からのコヒーレント信号であると見なされる場合、光学信号は、理論的にコヒーレント状態としてモデリングされ得る。直観的な図は、図1−16に与えられ、ここで、信号は、振幅|ES,k|であり、ノイズは、ガウスコヒーレント状態の標準偏差により与えられる。モードkにおけるコヒーレント状態|α>は、消滅演算子αの固有状態であり、すなわちα|α>=α|α>である。1つの周波数ωを有するモードkの電場は、
Figure 2021523508
により記述され、これは、コヒーレント状態の固有状態でもある。
Figure 2021523508
同じ周波数ωの局部発振器を有するホモダイン検出器は、θLO=0の場合、直角位相測定
Figure 2021523508
を実行し、θLO=π/2の場合、
Figure 2021523508
を実行する。理想的なホモダイン検出器は、これらの測定が、
Figure 2021523508
の固有量子ノイズを有することを見つける。このノイズは、量子不確実性に関連し、直角位相のスクイーズにより低減することができる。角度Δφを特定することができる精度は、これらの測定の信号対雑音比(SNR:signal−to−noise ratio)に直接関連する。合計でNph個の光子を有するコヒーレント状態信号ES,k(すなわち、
Figure 2021523508
の場合、x及びpの両方のSNRは、
Figure 2021523508
により上限を区切られる。(SNRの限度は、θ=0又はπの場合、飽和し、SNRへの限度は、θ=π/2又は3π/2の場合、飽和する)。したがって、SNRを増大させ、Δφの値をより正確に特定するために、幾つかの実施形態は、ベクトル
Figure 2021523508
の少数の異なる選択(例えば、複数の異なるランダムベクトル)を伝播させ得る。幾つかの実施形態では、
Figure 2021523508
の選択は、一度にkの1つの値で振幅|ES,k|=Nphを最大にするように選択される。
例えば、経時にわたる温度変動に起因したフォトニック処理システムの動作中、位相ドリフトがあり得る。したがって、幾つかの実施形態では、システムの動作中、上記較正手順が繰り返し実行され得る。例えば、幾つかの実施形態では、較正手順は、位相ドリフトの自然な時間尺度よりも短い時間尺度で定期的に実行される。
本発明者らは、位相敏感測定を全く必要とせずに符号付き行列演算を実行することが可能であることを更に認識及び理解した。したがって、用途では、各出力モードでの各ホモダイン検出器は、その出力モードにおいて光の強度を測定する直接光検出器で置換され得る。そのようなシステムでは、局部発振器がないため、系統的位相誤差Δφは、存在せず、意味がない。したがって、幾つかの実施形態によれば、ホモダイン検出等の位相敏感測定は、系統的位相誤差がわずかであるように回避され得る。例えば、符号付き行列及びベクトルの行列演算を計算する場合、複素行列及びベクトル並びに符号なし行列を使用した多元(四元、八元及び他の同形(例えば、単位的代数の要素))行列及びベクトルは、位相敏感測定を必要としない。
位相敏感測定がどのように必要ないかを示すために、符号付き行列Mと、符号付きベクトル
Figure 2021523508
との間で行列乗算を実行する場合を考える。符号付き出力
Figure 2021523508
の値を計算するために、例えば、コントローラ1−107により以下の手順が実行され得る。まず、行列Mは、M及びMに分割され、ここで、M(M)は、Mの全ての正(負)のエントリを含む行列である。この場合、M=M−Mである。第2に、ベクトルは、ベクトル
Figure 2021523508
であるように同様に分割され、ここで、
Figure 2021523508
は、
Figure 2021523508
の全ての正(負)のエントリを含むベクトルである。分割の結果として、
Figure 2021523508
である。この最終式の各項は、フォトニック処理システムにより個々に実行され得る別個の演算
Figure 2021523508
に対応する。各演算の出力は、1つの(正)符号のベクトルであり、したがってホモダイン検出の必要なしで直接検出方式を使用して測定することができる。光検出器方式は、強度を測定するが、強度の平方根が特定され得、電場振幅が生成される。幾つかの実施形態では、各演算は、別個に実行され、結果は、全ての別個の演算が実行され、結果がデジタル的に結合されて、乗算の最終結果
Figure 2021523508
を得るまでメモリ(例えば、コントローラ1−107のメモリ1−109)に記憶される。
及びMが両方とも全ての正のエントリの行列であるため、上記方式が機能する。同様に、
Figure 2021523508
は、両方とも全て正のエントリのベクトルである。したがって、乗算の結果は、全て正のエントリのベクトルになる − 結合に関わりなく。
本発明者らは、上記分割技法が複素値ベクトル/行列、四元値ベクトル/行列、八元値ベクトル/行列及び他の多元表現に拡張され得ることを更に認識及び理解した。複素数は、2つの異なる基本単位{1,i}を利用し、四元数は、4つの異なる基本単位{1,i,j,k}を利用し、八元数は、8つの基本単位{e≡1,e,e,...,e}を利用する。
幾つかの実施形態では、複素ベクトルは、符号付き行列及びベクトルについて上述した手順と同様に乗算を別個の複数の演算に分割することにより、位相敏感検出を必要とせずに複素行列により乗算され得る。複素数の場合、乗算は、全て正の行列及び全て正のベクトルの16個の別個の乗算に分割される。次に、16個の別個の乗算の結果は、デジタル的に結合されて、出力ベクトル結果を特定し得る。
幾つかの実施形態では、四元値ベクトルは、符号付き行列及びベクトルについて上述した手順と同様に乗算を別個の複数の演算に分割することにより、位相敏感検出を必要とせずに四元値行列により乗算され得る。四元値数の場合、乗算は、全て正の行列及び全て正のベクトルの64個の別個の乗算に分割される。次に、64個の別個の乗算の結果は、デジタル的に結合されて、出力ベクトル結果を特定し得る。
幾つかの実施形態では、八元値ベクトルは、符号付き行列及びベクトルについて上述した手順と同様に乗算を別個の複数の演算に分割することにより、位相敏感検出を必要とせずに八元値行列により乗算され得る。八元値数の場合、乗算は、全て正の行列及び全て正のベクトルの256個の別個の乗算に分割される。次に、256個の別個の乗算の結果は、デジタル的に結合されて、出力ベクトル結果を特定し得る。
本発明者らは、温度依存位相φが、フォトニックプロセッサの各MZIの隣に温度センサを配置することにより補正できることを更に認識及び理解した。次に、温度測定の結果は、各MZIの外部位相を制御するフィードバック回路への入力として使用され得る。MZIの外部位相は、あらゆるMZIにおいて生じる温度依存位相を相殺するように設定される。同様の温度フィードバックループは、局部発振器伝播路に使用することができる。この場合、温度測定結果は、検出された温度の影響に起因して局部発振器により生じた位相を相殺するように、ホモダイン検出器直角位相選択位相シフタの設定を通知するために使用される。
幾つかの実施形態では、温度センサは、半導体デバイス、例えばp−n接合若しくはバイポーラ接合トランジスタで従来使用されるものであり得るか、又は例えば共振が温度に伴って変化する共振器を使用するフォトニック温度センサであり得る。幾つかの実施形態では、熱電対又はサーミスタ等の外部温度センサも使用可能である。
幾つかの実施形態では、生じた位相は、例えば、あらゆる列で幾らかの光をタップし、同じグローバル局部発振器を用いてホモダイン検出を実行することにより直接測定され得る。この位相測定は、任意の位相誤差を補正するために各MZIで使用する外部位相の値を直接通知することができる。直接測定された位相誤差の場合、誤差は、補正されるために、列グローバルである必要はない。
J.大きいデータ中間計算
本発明者らは、フォトニックプロセッサ1−103及び/又は本開示に記載される他の実施形態による任意の他のフォトニックプロセッサにより実行される行列ベクトル積がテンソル(多次元アレイ)演算に一般化できることを認識及び理解した。例えば、Mが行列であり、
Figure 2021523508
がベクトルである
Figure 2021523508
のコア演算は、行列−行列積:MXに一般化することができ、ここで、M及びXの両方は、行列である。この特定の例では、n×m行列Xをそれぞれn個の要素からなるm列ベクトルの集合と考える。すなわち、
Figure 2021523508
である。フォトニックプロセッサは、一度に1つの列ベクトルずつ行列−行列積MXを完了させることができ、合計でm個の行列−ベクトル積になる。計算は、好ましくは、並列化可能な線形演算であるため、複数のフォトニックプロセッサに分散することができ、例えば、任意の1つの行列−ベクトル積出力は、他の行列−ベクトル積の結果に依存しない。代替的に、計算は、例えば、各行列−ベクトル積を一度に1つずつ実行し、個々の全ての行列−ベクトル乗算を実行した後、結果をデジタル的に結合して(例えば、結果を適切なメモリ構成に記憶することにより)、行列−行列積の結果を特定することにより、時間の経過に伴って1つのフォトニックプロセッサにより順次実行することができる。
上記概念は、2つの多次元テンソルの積(例えば、ドット積)の計算に一般化することができる。一般アルゴリズムは、以下の通りであり、少なくとも部分的にプロセッサ1−111等のプロセッサにより実行され得る:(1)第1のテンソルの行列スライスをとる、(2)第2のテンソルのベクトルスライスをとる、(3)フォトニックプロセッサを使用して、ステップ1における行列スライスとステップ2におけるベクトルスライスとの行列−ベクトル積を実行し、出力ベクトルを生成する、(4)行列スライス(ステップ1から)が得られたテンソルインデックス及びベクトルスライス(ステップ2から)が得られたテンソルインデックスにわたり繰り返す。行列スライス及びベクトルスライスをとる際(ステップ1及び2)、複数のインデックスが結合されて1つになり得ることに留意されたい。例えば、行列は、全ての列を1つの列ベクトルに積み重ねることによりベクトル化することができ、一般に、テンソルは、全ての行列を1つの行列に積み重ねることにより行列化することができる。全ての演算は、完全に線形であるため、ここでも高度に並列化することができ、複数のフォトニックプロセッサの各々は、他のフォトニックプロセッサがジョブを完了したか否かを知る必要がない。
非限定的な例として、2つの三次元テンソル間の乗算Cijlm=Σijkklmを考える。上記手順に基づく疑似コードは、以下の通りである。
(1)行列スライスをとる。A←A[i,:,:]、
(2)ベクトルスライスをとる。
Figure 2021523508
Figure 2021523508
(4)インデックスi、l及びmにわたり繰り返して、四次元テンソルCijlmを再構築し、式中、jが索引付けられた全ての要素の値は、1つの行列−ベクトル乗算を用いて完全に特定される。
本発明者らは、乗算する行列/ベクトルのサイズが、フォトニックプロセッサによりサポートされるモード数よりも大きくてよいことを更に認識及び理解した。例えば、畳み込みニューラルネットワークアーキテクチャにおける畳み込み演算は、フィルタの定義に少数のみのパラメータを使用し得るが、フィルタと、データの異なるパッチとの間の幾つかの行列−行列乗算からなり得る。異なる行列−行列乗算を結合すると、元のフィルタ行列又はデータ行列のサイズよりも大きい2つの入力行列が生成される。
本発明者らは、乗算する行列が、計算の実行に使用されているフォトニックプロセッサのサイズ/計算の実行に使用されているフォトニックプロセッサが有するモード数よりも大きい場合、フォトニックプロセッサを使用して行列演算を実行する方法を考案した。幾つかの実施形態では、方法は、計算中、メモリを使用して中間情報を記憶することを含む。最終計算結果は、中間情報を処理することにより計算される。例えば、図1−17に示されるように、n≦I,J,Kであるn×nフォトニック処理システムを使用して、I×K要素を有する新しい行列C=ABを与えるI×J行列AとJ×K行列Bとの乗算1−1700を考える。図1−17では、陰影付き要素は、単に、行列Cの要素1−1701が行列Aの行1−1703及び行列Bの列1−1705の要素を使用して計算されることを示す。図1−17及び図1−18に示される方法は、以下の通りである。
行列A及びB内のn×nサブ行列ブロックを構築する。括弧付き上付き文字A(ij)及びB(jk)によりブロックを記し、ここで、i∈{1,...,ceil(I/n)}、j∈{1,...,ceil(J/n)}、k∈{1,...,ceil(K/n)}である。I、j又はKの値がnで除算可能でない場合、行列は、新しい行列が、n(したがってi、j及びkのインデックスにおけるceil関数)で除算可能な次元を有するようにゼロでパディングされ得る。図1−18に示される一例の乗算1−1800では、行列Aは、6つのn×nサブ行列ブロック1−1803に分割され、行列Bは、3つのn×nサブ行列ブロック1−1805に分割され、2つのn×nサブ行列ブロック1−1801から構成される結果行列Cを生成する。
行列C内でn×nサブ行列ブロックC(ik)を計算するために、例えば、
(1)サブ行列A(ij)(例えば、サブ行列1−1803の1つ)を実施するようにフォトニックプロセッサを制御し、
(2)サブ行列B(jk)の1つ(例えば、サブ行列1−1805の1つ)の列ベクトルを用いて光学信号を符号化し、フォトニックプロセッサを通して信号を伝播させ、
(3)各行列−ベクトル乗算の中間結果をメモリに記憶し、
(4)jの値にわたり繰り返し、ステップ(a)乃至(c)を繰り返し、
(5)デジタル電子回路、例えばプロセッサを用いて中間結果を結合することにより最終サブ行列C(ik)(例えば、サブ行列1−1801の1つ)を計算する
ことにより、フォトニックプロセッサにおいて乗算
Figure 2021523508
を実行する。
上述し、図1−17及び図1−18に示されたように、方法は、括弧付きインデックス表記を使用して行列乗算を表現することと、本開示において行列要素を記述するために使用される下付き文字インデックスの代わりに、括弧付き上付き文字インデックスを使用して行列−行列乗算の演算を実行することとを含み得る。これらの括弧付き上付き文字インデックスは、サブ行列のn×nブロックに対応する。幾つかの実施形態では、方法は、例えば、この方法を、上述したテンソル−テンソル乗算と組み合わせることによって多次元アレイをn×nサブ行列ブロックスライスに分割することにより、テンソル−テンソル乗算に一般化することができる。
幾つかの実施形態では、より少数のモードを用いるフォトニックプロセッサを使用してサブ行列のブロックを処理することの利点は、乗算されている行列の形状に関して多様性を提供することである。例えば、I>>Jである場合、特異値分解の実行は、サイズIの第1のユニタリ行列、サイズJの第2のユニタリ行列及びJ個のパラメータを有する対角行列を生成する。元の行列の要素数よりもはるかに大きいI個の行列要素を記憶又は処理するハードウェア要件は、フォトニックプロセッサの幾つかの実施形態に含まれる光学モード数にとって大きすぎることがある。行列全体を一度に全てではなくサブ行列を処理することにより、フォトニックプロセッサのモード数に基づく制限を課すことなく、任意のサイズの行列を乗算することができる。
幾つかの実施形態では、Bのサブ行列は、更にベクトル化される。例えば、行列Aは、まず、
Figure 2021523508
行列にパディングされ得、次にサブ行列の
Figure 2021523508
グリッド(それぞれサイズ[n×n])に分割され、A(ij)は、このグリッドのi行目及びj列目における[n×n]サブ行列であり、Bは、まず、
Figure 2021523508
行列にパディングされ、次にサブ行列の
Figure 2021523508
グリッド(それぞれサイズ[n×K])に分割され、B(j)は、このグリッドのj行目における[n×K]サブ行列であり、Cは、まず、
Figure 2021523508
行列にパディングされ、次にサブ行列の
Figure 2021523508
グリッド(それぞれサイズ[n×K])に分割され、C(i)は、このグリッドのi行目における[n×K]サブ行列である。このベクトル化形態では、計算は、
Figure 2021523508
により示される。
上記ベクトル化プロセスを使用して、フォトニックプロセッサは、
Figure 2021523508
個の異なる行列をフォトニックアレイにロードし、ロードされた各行列について、フォトニックアレイを通してK個の異なるベクトルを伝播させることにより任意のGEMMを計算することができる。これは、
Figure 2021523508
個の出力ベクトル(それぞれn個の要素で構成される)を生成し、上記式により定義されるように、そのサブセットは、一緒に合算されて、所望の[I×K]出力行列を生成し得る。
K.計算の精度
本発明者らは、フォトニックプロセッサ1−103及び/又は本開示に記載される他の実施形態による任意の他のフォトニックプロセッサがアナログコンピュータの一例であり、この情報時代における大半のデータがデジタル表現で記憶されるため、フォトニックプロセッサにより実行される計算のデジタル精度を定量化することが重要であることを認識及び理解した。幾つかの実施形態では、幾つかの実施形態によるフォトニックプロセッサは、行列−ベクトル積:
Figure 2021523508
を実行し、式中、
Figure 2021523508
は、入力ベクトルであり、Mは、n×n行列であり、
Figure 2021523508
は、出力ベクトルである。インデックス表記において、この乗算は、Mij(jにわたり反復)のn個の要素と、x(jにわたり反復)のn個の要素との間の乗算であり、次に結果を一緒に合算する
Figure 2021523508
として記述される。フォトニックプロセッサは、物理的なアナログシステムであるため、幾つかの実施形態では、要素Mij及びxは、固定小数点数表現を用いて表現される。この表現内において、Mij∈{0,1}m1がmビット数であり、X∈{0,1}m2がmビット数である場合、合計でm+m+log(n)ビットが、結果的に生成されるベクトル要素yを完全に表すために使用される。一般に、行列−ベクトル積の結果を表すために使用されるビット数は、演算の入力を表すのに必要なビット数よりも大きい。使用されるアナログ−デジタル変換器(ADC)が最高精度で出力ベクトルを読み出すことができない場合、出力ベクトル要素は、ADCの精度に丸められ得る。
本発明者らは、光学信号の形態の入力ベクトルがフォトニック処理システムを通して送信されるレートに対応する帯域幅において高ビット精度を有するADCの構築の達成が困難であり得ることを認識及び理解した。したがって、幾つかの実施形態では、ADCのビット精度は、行列要素Mij及びベクトル要素xが表されるビット精度を制限し得る(最高精度計算が望まれる場合)。したがって、本発明者らは、部分積及び和を計算することにより、任意に高いことができる最高精度で出力ベクトルを取得する方法を考案した。明確にするために、Mij又はxのいずれかを表すのに必要なビット数は、同じである、すなわちm=m=mであると仮定される。しかし、この仮定は、それにもかかわらず、一般に不要であり得、本開示の実施形態の範囲を限定しない。
幾つかの実施形態による方法は、第1の動作として、行列要素Mij及びベクトル要素xのビット列表現を、各区分がk=m/dビットを有するd個の区分に分割することを含む。(kが整数ではない場合、mがdで除算可能になるまでゼロを添付し得る)。その結果、行列要素は、Mij=Mij [0]k(d−1)+Mij [1]k(d−2)+...+Mij [d−1]であり、式中、Mij [a]は、Mijのa番目の最上位kビット列のkビット値である。ビット列に関して、Mij=Mij [0]ij [1]...Mij [d−1]と記述される。同様に、x=x [0]k(d−1)+x [1]k(d−2)+...+x [d−1]を取得することもでき、式中、ビット列に関してベクトル要素x=x [0] [1]...x [d−1]である。乗算y=Σijは、
Figure 2021523508
としてこれらの区分に関して分割することができ、式中、集合Sは、a及びbの全て整数値の集合であり、ここで、a+b=pである。
方法は、第2の動作として、行列Mij [a]を実施するようにフォトニックプロセッサを制御することと、各々がわずかkビット精度である入力ベクトルx [b]を、符号化光学信号の形態においてフォトニックプロセッサを通して伝播させることとを含む。この行列−ベクトル積演算は、y [a,b]=Σij [a] [b]を実行する。方法は、最高で2k+log(n)ビットである出力ベクトルy [a,b]を記憶することを含む。
方法は、集合S内のa、bの異なる値にわたり繰り返すことと、a、bの異なる値の各々について第2の動作を繰り返すことと、中間結果y [a,b]を記憶することとを更に含む。
第3の動作として、方法は、プロセッサ等のデジタル電子回路を用いてa及びbの異なる反復にわたり合算することにより最終結果
Figure 2021523508
を計算することを含む。
この方法の幾つかの実施形態による最高精度計算を捕捉するために使用されるADCの精度は、わずか2k+log(n)ビットであり、シングルパスのみを使用して計算が行われる場合に必要とされる2m+log(n)ビットの精度よりも少ない。
本発明者らは、上記方法の実施形態がテンソルに対して動作するように一般化できることを更に認識及び理解した。先に述べたように、フォトニック処理システムは、2つのテンソルの行列スライス及びベクトルスライスを使用することによりテンソル−テンソル乗算を実行することができる。上述した方法は、行列スライス及びベクトルスライスに適用されて、最高精度で出力テンソルの出力ベクトルスライスを取得することができる。
上記方法の幾つかの実施形態は、行列の基本表現の線形性を使用する。上記説明では、行列は、ユークリッド行列空間に関して表現され、行列−ベクトル乗算は、このユークリッド空間において線形である。幾つかの実施形態では、行列は、VBSの位相に関して表現され、したがって、除算は、行列要素に対して直接ではなく、位相を表すビット列に対して実行され得る。幾つかの実施形態では、位相と行列要素との間のマップが線形マップである場合、入力パラメータ − この場合、VBSの位相及び入力ベクトル要素 − と出力ベクトルとの間の関係は、線形である。この関係が線形である場合、上記方法は、なおも適用可能である。しかしながら、一般に、幾つかの実施形態によれば、行列の基本表現からフォトニック表現への非線形マップが考慮され得る。例えば、最上位kビット列から最下位kビット列へのユークリッド空間行列要素のビット列除算は、位相表現に分解され、フォトニックプロセッサを使用して実施する一連の異なる行列を生成するために使用され得る。
除算は、行列要素及び入力ベクトル要素の両方に対して同時に実行される必要はない。幾つかの実施形態では、フォトニックプロセッサは、同じ行列の多くの入力ベクトルを伝播させ得る。ベクトル準備のためのデジタル−アナログ変換器(DAC)は、広帯域幅で動作し得る一方、VBSのためのDACは、複数のベクトルに対して準静的であり得るため、入力ベクトルに対してのみ除算を実行し、VBS制御を設定精度(例えば、最高精度)に保つことが効率的であり得る。一般に、高帯域幅で高ビット精度を有するDACを含むことは、低帯域幅におけるものを設計するよりも困難である。したがって、幾つかの実施形態では、出力ベクトル要素は、ADCにより可能なものよりも精密であり得るが、ADCは、ADCにより可能なビット精度までの出力ベクトル値の何らかの丸めを自動的に実行する。
L.製造方法
フォトニック処理システムの実施形態は、従来の半導体製造技法を使用して製造され得る。例えば、導波路及び位相シフタは、従来の堆積、マスキング、エッチング及びドーピング技法を使用して基板に形成され得る。
図1−19は、幾つかの実施形態によるフォトニック処理システムを製造する一例の方法1−1900を示す。動作1−1901において、方法1−1900は、例えば、従来の技法を使用して光学エンコーダを形成することを含む。例えば、複数の導波路及び変調器が半導体基板に形成され得る。光学エンコーダは、本願の他の箇所に記載されるように、1つ又は複数の位相及び/又は振幅変調器を含み得る。
動作1−1903において、方法1−1900は、フォトニックプロセッサを形成し、フォトニックプロセッサを光学エンコーダに光学的に接続することを含む。幾つかの実施形態では、フォトニックプロセッサは、光学エンコーダと同じ基板に形成され、光学接続は、基板に形成される導波路を使用して行われる。他の実施形態では、フォトニックプロセッサは、光学エンコーダの基板とは別個の基板に形成され、光学接続は、光ファイバを使用して行われる。
動作1−1905において、方法1−1900は、光学受信機を形成し、光学受信機をフォトニックプロセッサに光学的に接続することを含む。幾つかの実施形態では、光学受信機は、フォトニックプロセッサと同じ基板に形成され、光学接続は、基板に形成された導波路を使用して行われる。他の実施形態では、光学受信機は、フォトニックプロセッサの基板とは別個の基板に形成され、光学接続は、光ファイバを使用して行われる。
図1−20は、図1−19の動作1−1903に示されるようにフォトニックプロセッサを形成する一例の方法1−2000を示す。動作1−2001において、方法1−2000は、例えば、半導体基板に第1の光学行列実装を形成することを含む。第1の光学行列実装は、種々の上記実施形態に説明されたように、相互接続VBSのアレイを含み得る。
動作1−2003において、方法1−2000は、第2の光学行列実装を形成し、第2の光学行列実装を第1の光学行列実装に接続することを含む。第2の光学行列実装は、種々の上記実施形態に説明されたように、第1の光学行列実装から受信された各光学信号の強度及び位相を制御することが可能な1つ又は複数の光学構成要素を含み得る。第1の光学行列実装と第2の光学行列実装との間の接続は、基板に形成された導波路を含み得る。
動作1−2005において、方法1−2000は、第3の光学行列実装を形成し、第3の光学行列実装を第2の光学行列実装に接続することを含む。第3の光学行列実装は、種々の上記実施形態に説明されるように、相互接続VBSのアレイを含み得る。第2の光学行列実装と第3の光学行列実装との間の接続は、基板に形成される導波路を含み得る。
任意の上記動作において、フォトニックプロセッサの構成要素は、半導体基板の同じ層又は半導体基板の異なる層に形成され得る。
M.使用方法
図1−21は、幾つかの実施形態による光学処理を実行する方法1−2100を示す。動作1−2101において、方法1−2100は、ビット列を光学信号に符号化することを含む。幾つかの実施形態では、これは、本願の種々の実施形態に関連して説明されたように、コントローラ及び光学エンコーダを使用して実行され得る。例えば、複素数は、光学信号の強度及び位相に符号化され得る。
動作1−2103において、方法1−2100は、第1の行列を実施するようにフォトニックプロセッサを制御することを含む。上述したように、これは、コントローラに、SVDを行列に対して実行させ、フォトニックプロセッサの別個の部分を使用して実施される3つの別個の行列構成要素に行列を分割させることにより達成され得る。フォトニックプロセッサは、フォトニックプロセッサを通して伝播する際、フォトニックプロセッサの種々のモードがどのように一緒に混合されて、光学信号をコヒーレントに干渉するかを制御する複数の相互接続VBSを含み得る。
動作1−2105において、方法1−2100は、上述したように、所望の行列を実施するよう光学信号が互いとコヒーレントに干渉するように、光学プロセッサを通して光学信号を伝播させることを含む。
動作1−2107において、方法1−2100は、光学受信機を使用してフォトニックプロセッサからの出力光学信号を検出することを含む。上述したように、検出は、位相敏感又は位相非敏感検出器を使用し得る。幾つかの実施形態では、検出結果は、符号化され、システムを通して伝播する新しい入力ビット列の決定に使用される。このようにして、複数の計算は、順次実行され得、その場合、少なくとも1つの計算は、前の計算結果の結果に基づく。
II.トレーニングアルゴリズム
本発明者らは、多くの行列ベースの微分可能なプログラム(例えば、ニューラルネットワーク又は潜在変数グラフィカルモデル)技法では、計算複雑性の大部分が、モデルの層がトラバースされる際に計算される行列−行列積にあることを認識及び理解した。行列−行列積の複雑性は、2つの行列が次元I×J及びJ×Kを有するO(IJK)である。更に、これらの行列−行列積は、モデルのトレーニング段階及び評価段階の両方で実行される。
ディープニューラルネットワーク(すなわち2つ以上の隠れ層を有するニューラルネットワーク)は、本明細書に記載された技法の幾つかを利用し得る行列ベースの微分可能プログラムのタイプの一例である。しかしながら、並列処理を実行する、本明細書に記載される技法は、限定ではなく、ベイズネットワーク、トレリスデコーダ、トピックモデル及び隠れマルコフモデル(HMM:Hidden Markov Model)を含む他のタイプの行列ベースの微分可能プログラムと併用され得ることを理解されたい。
ディープラーニングの成功は、大部分、ニューラルネットワークの重み行列のトレーニングを可能にするバックプロパゲーション技法の開発に起因する。従来のバックプロパゲーション技法では、損失関数からの誤差は、微積分学の連鎖律を使用して個々の重み行列成分を通して後方に伝播される。バックプロパゲーション技法は、重み行列内の要素の勾配を計算し、勾配は、次に、確率的勾配降下(SGD:stochastic gradient descent)、AdaGrad、RMSProp、Adam又は任意の他の勾配ベースの最適化アルゴリズム等の最適化アルゴリズムを使用して重み行列への更新を決定する。この手順の連用は、損失関数を最小化する最終重み行列の決定に使用される。
本発明者らは、本明細書に記載されるタイプの光学プロセッサが、重み行列を、本明細書では「位相空間」又は「角度表現」と呼ばれる代替のパラメータ空間に作り変えることにより、勾配計算の実行を可能にすることを認識及び理解した。特に、幾つかの実施形態では、重み行列は、ギヴンス回転行列等のユニタリ伝達行列の複合物として再パラメータ化される。そのような再パラメータ化では、ニューラルネットワークのトレーニングは、ユニタリ伝達行列の角度パラメータを調整することを含む。この再パラメータ化では、単一の回転角の勾配は、他の回転から分離され、勾配の並列計算を可能にする。この並列化は、必要とされる計算ステップ数に関して、従来の直列勾配決定技法と比べて計算加速を生じさせる。
本明細書に記載されるバックプロパゲーション技法の実施に使用され得る一例のフォトニック処理システムは、上記に提供されている。再パラメータ化された重み行列の位相空間パラメータは、フォトニック処理システムの位相シフタ又は可変ビームスプリッタに符号化されて、重み行列を実施し得る。位相シフタ又は可変ビームスプリッタへの重み行列の符号化は、ニューラルネットワークのトレーニング段階及び評価段階の両方に使用され得る。バックプロパゲーション手順は、後述する特定のシステムに関連して説明されるが、実施形態は、本開示に記載されるフォトニック処理システムの特定の詳細に限定されないことを理解されたい。
上述したように、幾つかの実施形態では、フォトニック処理システム100は、ニューラルネットワーク又はバックプロパゲーション技法を使用してトレーニングされ得る他の行列ベースの微分可能プログラムの態様を実施するために使用され得る。
微分可能プログラム(例えば、ニューラルネットワーク又は潜在変数グラフィカルモデル)のユークリッドベクトル空間における値の行列(例えば、ニューラルネットワークの層の重み行列)を更新する一例のバックプロパゲーション技法2−100は、図2−1に示される。
動作2−101において、ユークリッドベクトル空間における値の行列(例えば、ニューラルネットワークの層の重み行列)は、例えば、値の行列を表すようにフォトニクス処理システム100の構成要素を構成することにより、角度表現として表され得る。行列が角度表現で表された後、プロセス2−100は、動作2−102に進み、トレーニングデータ(例えば、入力トレーニングベクトル及び関連付けられた記された出力の組)は、処理されて、モデルの性能尺度を評価することにより誤差ベクトルを計算する。次に、プロセス2−100は、動作2−103に進み、バックプロパゲーションに必要な角度表現のパラメータの少なくとも幾つかの勾配は、並列に特定される。例えば、より詳細に後述するように、本明細書に記載された技法は、パラメータの列全体の勾配を同時に特定できるようにし、各角度回転に対する勾配を個々に評価することと比較して、バックプロパゲーションの実行に必要な時間量を大幅に加速させる。次に、プロセス2−100は、動作2−104に進み、ユークリッドベクトル空間における値の行列(例えば、ニューラルネットワークの層の重み行列値)は、特定された勾配を使用して角度表現を更新することにより更新される。図2−1のプロセス2−100に示される各動作の更なる説明を以下に提供する。
図2−2は、図2−1に示される動作2−101が幾つかの実施形態によりどのように実行され得るかのフローチャートを示す。動作2−201において、コントローラ(例えば、コントローラ107)は、ニューラルネットワークの層の重み行列を受信し得る。動作2−202において、重み行列は、重み行列Wが、
W=VΣU
として定義されるように、第1のユニタリ行列V、第2のユニタリ行列U及び符号付き特異値の対角行列Σに分解され得、式中、Uは、m×mユニタリ行列であり、Vは、n×nユニタリ行列であり、Σは、符号付き特異値を有するn×m対角行列である。上付き文字「T」は、行列の転置を示す。幾つかの実施形態では、重み行列Wは、まずタイルに分割され、各タイルは、そのような行列の三重積に分解される。重み行列Wは、ニューラルネットワークの分野において既知のように従来の重み行列であり得る。
幾つかの実施形態では、位相空間に分解された重み行列は、ランダム初期化手順又は部分的にトレーニングされた重み行列を利用することによる等の予め指定された重み行列である。バックプロパゲーションルーチンの初期化に使用する部分的に指定された重み行列がない場合、動作2−202における分解は、スキップされ得、代わりに、角度表現のパラメータ(例えば、特異値及びユニタリ又は直交分解のパラメータ)は、例えば、特定の分布からの位相空間パラメータのランダムサンプリングにより初期化され得る。他の実施形態では、特異値及び角度パラメータの所定の初期集合が使用され得る。
動作2−203において、2つのユニタリ行列U及びVは、それぞれ第1及び第2の組のユニタリ伝達行列の複合物として表され得る。例えば、行列U及びVが直交行列である場合、動作2−203において一連の実数値ギヴンス回転行列又はハウスホルダリフレクタに変換され得、その一例についてセクションVにおいて上述している。
動作2−204において、フォトニクスベースのプロセッサは、分解された重み行列に基づいてユニタリ伝達行列を実施するように構成され得る。例えば、上述したように、フォトニクスベースのプロセッサの第1の組の構成要素は、第1の組のユニタリ伝達行列に基づいて構成され得、フォトニクスベースのプロセッサの第2の組の構成要素は、符号付き特異値の対角行列に基づいて構成され得、フォトニクスベースのプロセッサの第3の組の構成要素は、第2の組のユニタリ伝達行列に基づいて構成され得る。本明細書に記載されるプロセスは、フォトニクスベースのプロセッサを使用してバックプロパゲーション技法を実施することに関するが、バックプロパゲーション技法は、並列処理機能を提供する他の計算アーキテクチャを使用して実施され得、実施形態は、これに関して限定されないことを理解されたい。
図2−1におけるプロセス2−100に戻ると、動作2−102は、例えば、上述したようにフォトニクスベースのプロセッサを使用して重み行列が角度表現として表された後、トレーニングデータを処理して、誤差ベクトルを計算することに関する。図2−3は、幾つかの実施形態による動作2−102を実行する実施詳細のフローチャートを示す。本明細書に記載される技法を使用してトレーニングデータを処理する前、トレーニングデータは、バッチに分割され得る。トレーニングデータは、任意の形態をとり得る。幾つかの実施形態では、データは、幾つかの従来のミニバッチ確率的勾配降下(SGD)技法で行われるのと同じようにバッチに分割され得る。この手順を用いて計算された勾配は、限定ではなく、SGD、AdaGrad、Adam、RMSProp又は任意の他の勾配ベースの最適化アルゴリズムを含め、任意の最適化アルゴリズムに使用することができる。
図2−3に示されるプロセスでは、トレーニングデータの特定のバッチ内の各ベクトルは、フォトニクスプロセッサを通して渡すことができ、そのベクトルの損失関数の値が計算され得る。動作2−301において、トレーニングデータの特定のバッチからの入力トレーニングベクトルが受信される。動作2−302において、入力トレーニングベクトルは、例えば、上述したように入力トレーニングベクトル値に対応する振幅及び位相を有する光学パルスを使用してベクトルを符号化することにより、フォトニック信号に変換される。動作2−303において、入力トレーニングベクトルに対応するフォトニック信号は、入力としてフォトニクスプロセッサ(例えば、フォトニクスプロセッサ103)に提供され、これは、上述したように重み行列を実施して(例えば、構成可能な位相シフタ及びビームスプリッタのアレイを使用して)、パルスの出力ベクトルを生成するように構成される。フォトニクスプロセッサから出力されたパルスの光学強度は、例えば、図9及び図10に関連して上述したようにホモダイン検出を使用して検出されて、復号化された出力ベクトルを生成し得る。動作2−304において、入力トレーニングベクトルの損失関数(費用関数又は誤差メトリックとしても知られる)の値が計算される。次に、動作2−301から2−304のプロセスは、特定のバッチにおける全ての入力トレーニングベクトルが処理され、損失関数の対応する値が特定されるまで繰り返される。動作2−305において、各入力トレーニングベクトルからのこれらの損失を集計することにより、合計損失が計算され、例えば、この集計は、平均の形態をとり得る。
図2−1のプロセス2−100に戻ると、動作2−103は、角度表現のパラメータの勾配(例えば、ギヴンス回転としてフォトニクスプロセッサの構成要素を使用して実施された重みの値)を並列で計算することに関する。勾配は、計算された誤差ベクトル、入力データベクトル(例えば、トレーニングデータのバッチから)及びフォトニクスプロセッサを使用して実施された重み行列に基づいて計算され得る。図2−4は、幾つかの実施形態による動作2−103を実行するプロセスのフローチャートを示す。動作2−401において、分解におけるギヴンス回転のk番目の集合G(k)について(例えば、分解された行列の列−本明細書では「導関数列k」と呼ばれる)、k番目の集合内の各角度に関して導関数を含むブロック対角導関数行列が計算される。動作2−402において、導関数列kと出力との間の全てのユニタリ伝達行列と、動作2−102において特定された誤差ベクトルとの積が計算される(これにより「部分後方パス」と呼ばれる)。動作2−403において、入力から始まって、導関数列kを含めて導関数列kまでの全てのユニタリ伝達行列と入力データベクトルとの積が計算される(これにより「部分前方パス」と呼ばれる)。動作2−404において、動作2−402及び2−403から出力された要素の連続対間の内積が計算されて、導関数列kの勾配を特定する。要素の連続対間の内積は、
Figure 2021523508
として計算され得、式中、上付き文字(k)は、フォトニック要素のk番目の列を表し、i、jは、ユニタリ伝達行列によりパラメータθij (k)と結合されているi番目及びj番目のフォトニックモードを表し、xは、部分前方パスの出力であり、δは、部分後方パスの出力である。幾つかの実施形態では、オフセットは、出力の連続対前に適用される(例えば、出力対は、(0,1)、(2,3)ではなく、(1,2)、(3,4)等であり得る)。次に、特定された勾配は、トレーニングに使用されている特定の選択された最適化アルゴリズム(例えば、SGD)に適切なものとして使用され得る。
幾つかの実施形態による、図1−4に示される左から右へのトポロジを有するフォトニックプロセッサでバックプロパゲーション技法を実施する擬似コード例を以下に提供する。
・中間伝播結果の2つのリストx’、δ’を初期化する。
・MZIの各列について、最後の列から始まり、1列目に向かって進む。
・導関数行列に対応するように列において角度を回転させる。
・フォトニクスプロセッサを通して入力データベクトルを伝播させる。
・結果をx’に記憶する。
・現在の列を透明にする。
・列毎に転置行列を漸次的に構築する。新しい各列について、
・フォトニクスプロセッサを通して誤差ベクトルを伝播させる。
・結果をδ’に記憶する。
・各x’[i]、δ’[i]について、
・連続対間の内積を計算し、結果は、MZIのi番目の列における角度の勾配である。
幾つかの実施形態によれば、幾つかの従来のバックプロパゲーション技法において行われるように勾配降下を介して重み行列の重みを調整するのではなく、角度表現のパラメータ(例えば、行列Σの特異値並びに分解された直交行列U及びVのギヴンス回転角)が調整される。再パラメータ化された空間におけるバックプロパゲーションが幾つかの実施形態によりどのように機能するかを更に示すために、以下は、従来の技法対本開示の幾つかの実施形態による方法を使用したニューラルネットワークの単層内のバックプロパゲーションの比較である。
損失関数Eは、特定のタスクでのモデルの性能を測定する。幾つかの従来の確率的勾配降下アルゴリズムでは、重み行列は、時間t+1における重み行列が時間tにおける重み行列の関数として定義されるように繰り返し調整され、重み行列の重みに関する損失関数の導関数は、
Figure 2021523508
であり、式中、ηは、学習率であり、(a,b)は、重み行列Wのa行目及びb列目の各々のエントリを表す。この反復プロセスが分解された重み行列を使用して作り変えられる場合、重みwabは、行列Σの特異値σ並びに直行行列U及びVの回転角θijの関数である。したがって、バックプロパゲーションアルゴリズムの反復調整は、
Figure 2021523508
になる。
特異値及び回転角に反復調整を実行するには、損失関数の導関数を取得しなければならない。これがフォトニック処理システム100等のシステムでどのように達成することができるかを説明する前に、まず、重み行列の重みの反復調整に基づくバックプロパゲーションについての説明を提供する。これに関連して、ニューラルネットワークの単層についてシステムにより測定される出力結果は、出力ベクトルy=f((Wx)+b)として表現され、式中、Wは、重み行列であり、xは、層に入力されるデータベクトルであり、bは、バイアスのベクトルであり、fは、非線形関数である。微積分学の連鎖律が適用されて、重み行列内の任意のパラメータに関する損失関数の勾配が計算される(ここで、表現の便宜上、定義z=(Wx)+bが使用される)。
Figure 2021523508
abに関するzの導関数を計算すると、
Figure 2021523508
が生成される。これを使用して、損失関数の勾配を表す和は、
Figure 2021523508
として書き換えることができる。第1の和は、誤差ベクトルeとして定義され、xは、入力ベクトルであり、以下の式
Figure 2021523508
が生成される。従来のバックプロパゲーション技法からの上記式を使用して、式は、重み行列が特異値行列及びユニタリ伝達行列に分解される場合に拡張することができる。重み行列が回転角の関数であることを使用すると、連鎖律は、
Figure 2021523508
と記述することができる。
したがって、位相空間におけるバックプロパゲーションは、従来のバックプロパゲーションと同じ構成要素を含み(誤差ベクトル及び入力データ)、ユニタリ伝達行列の回転角に関する重み行列の導関数である項が追加される。
ユニタリ伝達行列の回転角に関する重み行列の導関数を特定するために、1つのギヴンス回転行列の導関数が以下の形態:
Figure 2021523508
を有することが留意される。
見て分かるように、i番目の行及びj番目の列にないギヴンス回転行列の任意のエントリの導関数は、ゼロである。したがって、G(k)内部の角度の全ての導関数は、1つの行列に群化され得る。ユニタリ伝達行列の列内部の全てのfloor(n/2)角に関する導関数を計算することは、幾つかの実施形態では、上述したように2ステッププロセスを使用して達成され得る。第1に、誤差ベクトルは、分解された行列を右(出力)から微分中の現在の集合の回転まで伝播する(部分後方パス)。第2に、入力ベクトルは、左(入力)から現在の集合の回転まで伝播し(部分前方パス)、次に導関数行列が適用される。
幾つかの実施形態では、特異値の導関数は、同様のプロセスを使用して達成される。特異値σに関する導関数は、要素Σ’iiを1に、他の全てのΣ’jjを0にする。したがって、特異値の全ての導関数は、一緒に計算され得る。幾つかの実施形態では、これは、誤差ベクトルを左から伝播させ(部分前方パス)、入力ベクトルを右から伝播させ(部分後方パス)、次に前方パス及び後方パスの出力からアダマール積を計算することにより行われ得る。
図2−4において説明された動作2−103の実装形態では、列k内の全ての角度は、その列の勾配項を計算するためにπ/2だけ回転される。幾つかの実施形態では、この回転は、実行されない。1つのMZIの行列を考える。
Figure 2021523508
θに関する導関数をとると、
Figure 2021523508
が生成される。
この行列は、π/2をθに追加することに対応するが、元の行列の列をスワップし、それらの1つを無視することにも対応する。数学表記では、これは、
Figure 2021523508
を意味する。
分解されたユニタリ行列の列の勾配を特定するために、列内の各MZIの角度をπ/2だけ回転させ、次に上述したように動作2−402及び2−403から出力された要素の連続対間の内積を計算する(例えば、xδ+xδ)のではなく、幾つかの実施形態では、角度は、π/2だけ回転されず、代わりに関係式xδ−xδが計算されて、同じ勾配を取得する。行列W(n×m)のサイズが、サイズn×nの行列U及びサイズm×mの行列Vを有するフォトニクスプロセッサのサイズに一致する幾つかの実施形態では、動作2−401乃至2−404により、コントローラは、サイズn×nのユニタリ/直交行列のfloor(n/2)勾配を取得することができる。したがって、各行列乗算がO(1)演算で計算することができる上述したフォトニック処理システム100等のハードウェアでは、全体バックプロパゲーション手順は、フォトニックプロセッサが完全な行列を表すのに十分なサイズのものである場合、O(n+m)演算で完了し得る。フォトニクスプロセッサが完全な行列を表すのに十分なサイズのものではない場合、上述したように、行列は、タイルに分割され得る。サイズNのフォトニックプロセッサを考える。サイズI×Jの行列をサイズJのベクトルで乗算するというタスクの場合、1つの行列−ベクトル積は、複雑性O(IJ/N)(I及びJが両方ともNで除算可能であると仮定する)を有することになり、これは、行列の各次元がサイズNの行列に分割され、プロセッサにロードされ、部分結果の計算に使用されなければならないためである。Kベクトルのバッチの場合(例えば、サイズJ×Kの第2の行列)、行列−ベクトル積の複雑性は、O(IJK/N)である。
n個の光学モードを有する上述したフォトニックプロセッサの実施形態は、自然に、サイズ[n×n]の行列とn要素ベクトルとの間の行列−ベクトル積を計算する。これは、サイズ[n×n]の行列とサイズ[n×1]の行列との間の行列−行列積として等しく表現される。更に、K個の異なる入力ベクトル及び1つの繰り返される入力行列を用いた一連のK個の行列−ベクトル積演算は、サイズ[n×n]及び[n×K]の行列間の行列−行列積の計算として表現することができる。しかし、本明細書に記載される用途及びアルゴリズムは、多くの場合、任意のサイズの行列間の一般行列−行列乗算(GEMM:general matrix−matrix multiplication)の計算、すなわち計算
Figure 2021523508
を含み、式中、aijは、[I×J]行列Aのi行目及びj列目における要素であり、bjkは、[J×K]行列Bのj行目及びk列目であり、cikは、[I×K]行列C=ABのi行目及びk列目における要素である。この計算の再帰性に起因して、これは、
Figure 2021523508
として等しく表現することができ、式中、Aは、まず、
Figure 2021523508
行列にパディングされ、次にサブ行列(それぞれサイズ[n×n])の
Figure 2021523508
グリッドに分割され、Aijは、このグリッドのi行目及びj列目における[n×n]サブ行列であり、Bは、まず、
Figure 2021523508
行列にパディングされ、次にサブ行列(それぞれサイズ[n×K])の
Figure 2021523508
グリッドに分割され、Bは、このグリッドのj行目における[n×K]サブ行列であり、Cは、まず、
Figure 2021523508
行列にパディングされ、次にサブ行列(それぞれサイズ[n×K])の
Figure 2021523508
グリッドに分割され、Cは、このグリッドのi行目における[n×K]サブ行列である。
このプロセスを使用して、フォトニックプロセッサは、
Figure 2021523508
個の異なる行列をフォトニックアレイにロードし、ロードされた各行列について、フォトニックアレイを通してK個の異なるベクトルを伝播させることにより任意のGEMMを計算することができる。これは、
Figure 2021523508
出力ベクトル(それぞれn個の要素で構成される)を生成し、上記式により定義されるように、その部分集合は、一緒に加算されて、所望の[I×K]出力行列を生成し得る。
図2−4において説明された動作2−103の実装形態では、行列を実施するフォトニクスプロセッサの左から右へのトポロジが仮定され、ベクトルは、光学構成要素のアレイの左側に入力され、出力ベクトルは、光学構成要素のアレイの右側に提供された。このトポロジでは、フォトニクスプロセッサを通して誤差ベクトルを伝播させる場合、角度表現行列の転置を計算する必要がある。幾つかの実施形態では、フォトニックプロセッサは、光学構成要素のアレイの片側(例えば、左側)に入力及び出力の両方を配置する折り返しトポロジを使用して実施される。そのようなアーキテクチャでは、スイッチの使用により、光がいずれの方向に伝播すべきか − 入力から出力又は出力から入力を決定することができる。オンザフライで構成可能な方向の選択を用いて、誤差ベクトルの伝播は、まず出力を入力として使用するように方向を切り替え、次にアレイを通して誤差ベクトルを伝播させることにより達成することができ、上述したように、列kの勾配が特定されているとき、位相を打ち消し(例えば、列k内の各フォトニック要素の角度をπ/2だけ回転させることにより)、列を転置させる必要性をなくす。
図2−1におけるプロセス2−100に戻ると、動作2−104は、特定された勾配に基づいて角度表現のパラメータを更新することにより重み行列を更新することに関する。ここで述べた図2−4に示されるプロセスは、1つの入力データ例に基づいて、分解されたユニタリ行列における勾配の1つの集合(例えば、列k)の角度パラメータの勾配を計算するためのものである。重み行列を更新するために、各入力データベクトルについて各集合(例えば、列)の勾配をバッチで計算する必要がある。図2−5は、幾つかの実施形態による重み行列の更新に必要な全ての勾配を計算するプロセスのフローチャートを示す。動作2−501において、ユニタリ伝達行列(例えば、ギヴンス回転)の複数の集合の1つの集合の勾配が特定される(例えば、図2−4に示されるプロセスを使用して)。動作2−502において、次に、現在の入力データベクトルについて勾配が計算される必要があるユニタリ伝達行列の追加の集合(例えば、列)があるか否かが判断される。計算すべき追加の勾配があると判断される場合、プロセスは、動作2−501に戻り、新しい集合(例えば、列)が選択され、新たに選択された集合の勾配が計算される。後述するように、幾つかの計算アーキテクチャでは、アレイの全ての列は、動作2−502における判断が必要ないように同時に読み出され得る。プロセスは、分解されたユニタリ行列内のユニタリ伝達行列の全ての集合(例えば、列)の勾配が特定されたと動作2−502において判断されるまで続けられる。次に、プロセスは、動作2−503に進み、処理中のトレーニングデータのバッチで処理する更なる入力データベクトルがあるか否かが判断される。追加の入力データベクトルがあると判断された場合、プロセスは、動作2−501に戻り、バッチから新しい入力データベクトルが選択され、新たに選択された入力データベクトルに基づいて勾配が計算される。プロセスは、トレーニングデータのバッチ内の全ての入力データベクトルが処理されたと動作2−503において判断されるまで繰り返される。動作2−504において、動作2−501乃至2−503において特定された勾配は、平均化され、平均化された勾配を利用する更新ルールに基づいて角度表現のパラメータ(例えば、重み行列の分解のギヴンス回転行列の角度)が更新される。非限定的な例として、更新ルールは、学習率による平均勾配のスケーリングを含み得るか、又は「モーメンタム」若しくはパラメータ勾配の履歴の他の補正を含み得る。
手短に上述したように、上記例は、単層ニューラルネットワークにおける実数重み行列に適用されたが、結果は、複数の層及び複素重み行列を有するネットワークに一般化され得る。幾つかの実施形態では、ニューラルネットワークは、複数の層(例えば、ディープニューラルネットワークでは50層以上)からなる。層Lの行列の勾配を計算するために、その層への入力ベクトルは、前の層L−1の出力であり、その層への誤差ベクトルは、続く層L+1から逆伝播された誤差である。逆伝播された誤差ベクトルの値は、従来の多変数微積分学の連鎖律を使用して計算することができる。更に、幾つかの実施形態では、複素数U及びV行列(例えば、ユニタリ行列)は、追加の複素位相項をギヴンス回転行列に追加することにより使用され得る。
上記説明は、一般にハードウェアアーキテクチャとは無関係に当てはまるが、特定のハードウェアアーキテクチャは、他のハードウェアアーキテクチャよりも一層の計算加速を提供する。特に、グラフィカル処理ユニット、シストリック行列乗算器、フォトニックプロセッサ(例えば、フォトニック処理システム100)又は勾配の並列計算が可能な他のハードウェアアーキテクチャで本明細書に説明されたバックプロパゲーション技法の実施は、従来の手法と比較して最大利得に関して好ましい。
上述したように、フォトニック処理システム100は、任意のユニタリ変換を実施するように構成される。一連のギヴンス回転は、そのようなユニタリ変換の一例であり、したがって、フォトニック処理システム100は、O(1)時間において上記の分解における変換を計算するようにプログラムすることができる。上述したように、行列は、可変ビームスプリッタ(VBS)の規則正しいアレイを制御することにより実施され得る。ユニタリ行列U及びVは、VBSのタイル化されたアレイに分解され得、VBSの各タイル化アレイは、2×2直交行列演算(例えば、ギヴンス回転)を実行する。対角行列Σは、対角位相スクリーンD及びD(対角行列DΣDの形態)と共に、上述したように光パルスの強度及び位相を制御することによりフォトニック処理システム100により実施することができる。
対角行列Σ内の各エントリは、各フォトニックモードの増幅又は減衰に対応する。1以上の大きさを有するエントリは、増幅に対応し、1以下の大きさを有するエントリは、減衰に対応し、VBSと利得媒体との組合せにより、減衰又は増幅のいずれかが可能である。n×n正方行列Mの場合、対角行列Σの適用に必要な光学モード数は、nである。しかしながら、行列Mが正方ではない場合、必要な光学モードの数は、小さい方の次元に等しい。
上述したように、幾つかの実施形態では、フォトニックプロセッサのサイズは、行列M及び乗算中の入力ベクトルのサイズと同じである。しかしながら、実際には、行列Mのサイズ及びフォトニックプロセッサのサイズは、異なることが多い。サイズNのフォトニックプロセッサを考える。サイズI×Jの行列をサイズJのベクトルで乗算するというタスクの場合、1つの行列−ベクトル積は、複雑性O(IJ/N)(I及びJが両方ともNで除算可能であると仮定する)を有することになり、これは、行列の各次元がサイズNの行列に分割され、プロセッサにロードされ、部分結果の計算に使用されなければならないためである。Kベクトルのバッチの場合(例えば、サイズJ×Kの第2の行列)、行列−ベクトル積の複雑性は、O(IJK/N)である。
小さいN×N行列パーテーションで機能する能力は、行列が非正方である場合、特にI>>J又はJ>>Iのいずれかである場合に有利であり得る。非正方行列Aを仮定すると、行列の直接SVDは、1つのI×Iユニタリ行列、1つのJ×Jユニタリ行列及び1つのI×J対角行列を生成する。I>>J又はJ>>Iのいずれかの場合、この分解された行列を表すのに必要なパラメータ数は、元の行列Aよりもはるかに大きい。
しかしながら、行列Aが、より小さい次元を有する複数のN×N正方行列に分割される場合、これらのN×N行列へのSVDは、2つのN×Nユニタリ行列及び1つのN×N対角行列を生成する。この場合、分解された行列を表すのに必要なパラメータ数は、なおもN(元の行列Aのサイズに等しい)であり、合計非正方行列は、合計でIJに近似する数のパラメータを用いて分解することができる。IJがNで除算可能である場合、この近似は、等式になる。
2N+1列を有するフォトニックプロセッサの場合、各列の誤差ベクトルを逆伝播させた部分結果が計算され得る。したがって、Kベクトルのバッチの場合、サイズNのフォトニックプロセッサを使用したバックプロパゲーションの複雑性は、O(IJK/N)である。比較により、非並列プロセッサ(例えば、CPU)で行列乗算アルゴリズムを使用した逆伝播誤差の計算は、O(IJK)である。
これまでの説明は、入力ベクトルデータ及び逆伝播される誤差ベクトルを有するニューラルネットワーク層内の行列の使用に焦点を合わせていた。本発明者らは、ディープニューラルネットワーク計算におけるデータが必ずしもベクトルではなく、一般に多次元テンソルであることを認識及び理解した。同様に、ニューロン間の接続を記述する重み値も一般に多次元テンソルである。幾つかの実施形態では、上述した方法は、重みテンソルが、各々が互いから独立した行列スライスにスライスされる場合、直接適用することができる。したがって、特異値分解及びギヴンス様回転分解が実行されて、特定の行列スライスの位相に関して有効な表現を取得することができる。次に、適宜配置の入力テンソルデータ及び逆伝播される誤差データを同様に用いて、位相の勾配を計算する同じ方法を適用することができる。特定の行列スライスの勾配は、その特定の行列スライスに寄与した入力データ及び誤差データの部分を用いて計算されるべきである。
具体性のために、一般n次元重みテンソルWa1a2a3…ai…anを考える。{ai=1,...,nから、行列スライスを構成する2つのインデックスを選択し(例えば、選択されたものは、インデックスa及びaにより記される)、∂E/∂θij (k)を計算することにより分解を実行して位相θij (k)を取得する。重要なことに、b及びcは、1乃至nの任意の値であり得る。ここで、一般k次元入力テンソルxa1…ai…anを考える。有効なテンソル演算のために、この入力テンソルへの重みテンソルの演算の出力は、(n−k)次元出力テンソルを生成することが当てはまらなければならない。したがって、この層の重みテンソルの逆伝播された誤差テンソルが(n−k)次元テンソル:eak+1…ai…anであると結論付けることができる。したがって、計算すべき勾配は、
Figure 2021523508
であり、式中、簡潔さのために(しかし、必須条件ではない)、重みテンソルのインデックスは、最初のk個のインデックスがxに対して動作し、最後の(n−k)個のインデックスが誤差eに対して動作するように並べられている。
他の実施形態では、タッカー分解等の特異値分解のより高次の一般化を実行することがより好都合であり得、ここで、任意のn次元テンソルは、
Figure 2021523508
として分解することができ、式中、各Uaibi (i)は、ギヴンス回転位相に分解することができる直交行列であり、gb1…bnは、n次元コアテンソルである。幾つかの場合、コアテンソルは、CANDECOMP−PARAFAC(CP)分解と呼ばれるタッカー分解の特殊な事例を使用して、上対角であるように選択することができる。タッカー分解は、ユニタリ行列の幾つかの反転(転置又は共役転置)を乗算することにより、二次元SVD形態と同様にすることができる。例えば、分解は、
Figure 2021523508
として書き直すことができ、式中、最初のmユニタリ行列は、コアテンソルの左側にプッシュされる。コアテンソルのいずれかの側でのユニタリ行列の集合は、回転角に分解することができ、各回転角の勾配は、微積分学の連鎖律並びに入力テンソル及び誤差テンソルとの勾配の縮約により取得される。
本発明者らは、位相の勾配(例えば、分解された行列U及びVの)並びに符号付き特異値の勾配(例えば、行列Σの)が異なる上限を有し得ることを認識及び理解した。ニューラルネットワークパラメータに関してのスカラー損失関数Lの勾配を計算するタスクを考える。ユークリッド空間では、勾配の値は、
Figure 2021523508
により与えられ、ここで、Wは、行列である。位相空間では、特定のスカラー位相θについて、連鎖律は、
Figure 2021523508
を提供する。
トレースの定義から、これは、
Figure 2021523508
に等しく、式中、
Figure 2021523508
は、両方とも行列である。トレースがフロベニウスノルム積Tr(AB)≦││A││││AB││により区切られ、││A││=││A││であることが既知である。したがって、
Figure 2021523508
である。
θに関する微分は、Wの特異値を変えず、したがってフロベニウスノルムを変えないため、以下が当てはまる。
Figure 2021523508
特定の特異値σに関して微分すると、
Figure 2021523508
を意味する、1になる微分中の特異値を除き、全ての特異値がゼロになる。
したがって、
Figure 2021523508
である。
幾つかの実施形態では、位相及び特異値の勾配は、例えば、上限の差を説明するために、角度表現のパラメータの更新中に別個にスケーリングされる。勾配を別個にスケーリングすることにより、位相の勾配又は特異値の勾配のいずれかは、同じ上限を有するように再スケーリングされ得る。幾つかの実施形態では、位相の勾配は、行列のフロベニウスノルムによりスケーリングされる。幾つかの更新ルールによれば、位相及び特異値の勾配のスケーリングは、独立して、位相の勾配及び特異値の勾配に異なる学習率を有することに等しい。したがって、幾つかの実施形態では、U及びV行列の組の構成要素を更新する第1の学習率は、Σ行列の組の構成要素を更新する第2の学習率と異なる。
本発明者らは、重み行列が位相空間に分解されると、位相及び特異値の両方が、良好な解を得るために、あらゆる反復において更新される必要がないことがあり得ることを認識及び理解した。したがって、エポック中、全体トレーニング時間の幾らかの部分で特異値のみ(位相ではなく)が更新される場合、O(n)ではなく、O(n)パラメータを更新するのみでよく、全体実行時間の改善に繋がる。幾つかの反復中、特異値のみ又は位相のみを更新することは、「パラメータクランピング」と呼ばれ得る。幾つかの実施形態では、パラメータクランピングは、以下のクランピング技法の1つ又は複数に従って実行され得る。
・固定クランピング:特定の数の反復中、全てのパラメータをトレーニングし、続けて特異値のみを更新する。
・循環クランピング:幾つかのエポックMにわたり、全てのパラメータをトレーニングし、次に幾つかのエポックNにわたり位相をフリーズさせる(すなわち特異値のみを更新する)。別のM個のエポックにわたり全てのパラメータのトレーニングを再開し、次に再びN個のエポックにわたり位相をフリーズさせる。全数の所望のエポックに達するまで繰り返す。
・ウォームアップクランピング:何らかの数のエポックKにわたり全てのパラメータをトレーニングし、次に残りの数のエポックにわたり循環クランピングを開始する。
・閾値クランピング:更新が閾値εよりも小さくなるまで位相又は特異値を更新し続ける。
本発明者らは、フォトニクスプロセッサのアーキテクチャが計算の複雑性に影響を及ぼし得ることを認識及び理解した。例えば、図1に示されるアーキテクチャでは、検出器は、フォトニックプロセッサアレイの一端部のみにあり、上述したように勾配を計算する列毎の手法(例えば、部分前方及び後方パスを使用する)になる。代替のアーキテクチャでは、検出器は、フォトニクスアレイ内のあらゆるフォトニック要素に(例えば、各MZIに)配置され得る。そのようなアーキテクチャでは、列毎の手法は、1つの前方パス及び1つの後方パスで置換され得、あらゆる列における出力は、同時に読み出され、したがって追加の計算加速を提供する。検出器の列がアレイ全体を通して断続的に配置される場合、中間解も意図される。検出器列の任意の追加は、それに応じて、勾配計算に必要な部分前方パス及び部分後方パスの数を低減する。
上述した技法は、位相空間に全ての計算を保持しながら(例えば、行列の角度表現を使用して)、重み行列パラメータの更新を実行する技法を示す。幾つかの実施形態では、計算の少なくとも幾つかは、ユークリッドベクトル空間で実行され得る一方、他の計算は、位相空間で実行される。例えば、更新の実行に必要な数量は、上述したように位相空間で計算され得るが、パラメータの実際の更新は、ユークリッドベクトル空間で行われ得る。ユークリッドベクトル空間で計算された更新された行列は、次に、次の反復に向けて重み空間に再分解され得る。ユークリッドベクトル空間において、所与の層で、更新ルールは、
Figure 2021523508
であり得る。
この計算では、δは、位相空間におけるフォトニクスプロセッサ全体を通る後方パスを用いて計算することができる。次に、xとδとの間の上記外積は、別個に(例えば、オフチップで)計算することができる。更新が適用されると、更新された行列は、再分解することができ、分解された値は、上述したようにフォトニックプロセッサの位相の設定に使用することができる。
III.畳み込み層
畳み込み及び相互相関は、オーディオ/ビデオ符号化、確率理論、画像処理及び機械学習等の多くの用途で一般的な信号処理演算である。畳み込み及び相互相関という用語は、一般に、入力として2つの信号を受け入れ、出力として、入力間に存在する類似性を表す第3の信号を生成する数学的演算を指す。本発明者らは、畳み込み及び相互相関の計算が計算的にリソース集約的であり得ることを認識及び理解した。特に、本発明者らは、畳み込み及び相互相関の計算速度及び効率を改善する技法を開発した。これらの技法の実施形態は、畳み込み演算を行列−ベクトル積及び/又は多次元アレイの積に変換することにより畳み込み及び相互相関を計算することを含む。これらの技法の実施形態は、離散変換に従って畳み込みを計算することを更に含む。
本発明者らは、畳み込み及び相互相関の計算が、意図される用途に応じて多様な方法で実行され得ることを更に認識及び理解した。入力信号及び出力信号は、離散又は連続であり得る。信号を構成するデータ値は、実数、複素平面又は有限整数環等の多様な数値ドメインにわたり定義され得る。信号は、任意の数の次元を有し得る。信号は、複数のチャネルを有することもでき、これは、畳み込みニューラルネットワーク(CNN:convolutional neural network)で一般に使用される技法である。本明細書に記載される実施形態は、任意の組合せのこれらの変形に適応するように実施され得る。
更に、これらの技法の実施形態は、行列演算を実行するように構成された任意の適した計算システムで実施され得る。本明細書に記載された技法から恩恵を受け得るそのような計算システムの例には、中央演算処理装置(CPU)、グラフィック処理ユニット(GPU)、フィールドプログラマブルゲートアレイ(FPGA:field programmable gate array)、特定用途向け集積回路(ASIC:application−specific integrated circuit)及びフォトニックプロセッサがある。本明細書に記載される実施形態は、フォトニックプロセッサに関連して説明され得るが、これらの技法は、限定ではなく、上述等の他の計算システムにも適用可能であることを理解されたい。
以下に、畳み込み及び相互相関の計算に関連する種々の概念並びにその実施形態、技法のより詳細な説明が続く。本明細書に記載される種々の態様が任意の多くの方法で実施可能であることを理解されたい。具体的な実装形態の例は、例示のみを目的として本明細書に提供される。加えて、以下の実施形態に記載される種々の態様は、単独で又は任意の組合せで使用することができ、本明細書に明示的に記載される組合せに限定されない。
本発明者らは、電気信号の代わりに光信号を使用して、電気計算を用いて上記の問題の多くを解消することを更に認識及び理解した。光信号は、光が移動する媒体において光速で移動し、したがって、フォトニック信号の待ち時間は、電気伝播遅延と比較して大きな制限ではない。更に、光信号が移動する距離の増大により電力が散逸せず、電気信号を使用して実現可能でなかったであろう新しいトポロジ及びプロセッサレイアウトを開拓する。したがって、フォトニックプロセッサ等の光ベースのプロセッサは、幾つかの従来の電気ベースのプロセッサよりも良好な速度及び効率性能を有し得る。
フォトニクスベースのプロセッサを実施するために、本発明者らは、行列による入力ベクトルの乗算が、相互接続可変ビームスプリッタ(VBS)の第1のアレイ、相互接続可変ビームスプリッタの第2のアレイ及び第1のアレイの1つの出力を第2のアレイの1つの入力に接続する、2つのアレイ間の複数の制御可能な電子光学要素を通してコヒーレント光信号、例えばレーザパルスを伝播させることにより達成され得ることを認識及び理解した。
本明細書に記載されるように、n個の光学モードを有するフォトニックプロセッサの幾つかの実施形態は、自然に、サイズ[n×n]の行列とn要素ベクトルとの間の行列−ベクトル積を計算する。これは、サイズ[n×n]の行列とサイズ[n×1]の行列との間の行列−行列積として等しく表現され得る。K個の異なる入力ベクトル及び1つの反復入力行列を有する一連のK個の行列−ベクトル積演算は、サイズ[n×n]の行列とサイズ[n×K]の行列との間の行列−行列積の計算として表現され得る。しかし、本明細書に記載される用途及びアルゴリズムは、多くの場合、任意のサイズの行列間の一般行列−行列乗算(GEMM)の計算、すなわち計算
Figure 2021523508
を含み、式中、aijは、[I×J]行列Aのi行目及びj列目における要素であり、bjkは、[J×K]行列Bのj行目及びk列目であり、cikは、[I×K]行列C=ABのi行目及びk列目における要素である。この計算の再帰性に起因して、これは、
Figure 2021523508
として等しく表現することができ、式中、Aは、まず、
Figure 2021523508
行列にパディングされ、次にサブ行列(それぞれサイズ[n×n])の
Figure 2021523508
グリッドに分割され、Aijは、このグリッドのi行目及びj列目における[n×n]サブ行列であり、Bは、まず、
Figure 2021523508
行列にパディングされ、次にサブ行列(それぞれサイズ[n×K])の
Figure 2021523508
グリッドに分割され、Bは、このグリッドのj行目における[n×K]サブ行列であり、Cは、まず、
Figure 2021523508
行列にパディングされ、次にサブ行列(それぞれサイズ[n×K])の
Figure 2021523508
グリッドに分割され、Cは、このグリッドのi行目における[n×K]サブ行列である。
幾つかの実施形態によれば、このプロセスを使用して、フォトニックプロセッサは、
Figure 2021523508
個の異なる行列をフォトニックアレイにロードし、ロードされた各行列について、フォトニックアレイを通してK個の異なるベクトルを伝播させることにより任意のGEMMを計算することができる。これは、
Figure 2021523508
出力ベクトル(それぞれn個の要素で構成される)を生成し、上記式により定義されるように、その部分集合は、一緒に加算されて、所望の[I×K]出力行列を生成し得る。
本発明者らは、フォトニックプロセッサが、畳み込み及び相互相関を計算するプロセスを加速させ得るが、本明細書に記載される畳み込み及び相互相関を計算する実施形態が任意の適した計算システムで実施され得ることを認識及び理解した。本明細書に記載される実施形態は、二次元畳み込みに関して考察されるが、任意の数の次元に一般化され得る。[I×I]入力(本明細書では「画像」と呼ばれるが、入力は、任意の適したデータを表し得ることを理解されたい)G及び[K×K]フィルタFの場合、二次元畳み込みの数式は、
Figure 2021523508
である。
二次元相互相関は、
Figure 2021523508
により与えられ、式中、
Figure 2021523508
は、境界条件によって決まるGの関数であり、
Figure 2021523508
は、複素共役を示し、・は、スカラー乗算を示す。
幾つかの実装形態では、畳み込み及び相互相関演算は、相互交換可能であり得、その理由は、複素値二次元信号G及びFの相互相関が、
Figure 2021523508
を介して畳み込みに変換することができるためである。
本明細書に記載される実施形態は、畳み込みの場合に焦点を合わせるが、本明細書に記載される実施形態は、畳み込み及び相互相関の計算に使用され得ることを理解されたい。
畳み込み及び相互相関の両方において、境界条件がどのように扱われるかに応じて異なる変形形態が存在する。本明細書において幾つかの実施形態に記載される2つの境界条件は、循環:
Figure 2021523508
及びパディング:
Figure 2021523508
を含み、式中、a%nは、aモジュロnを示す。
幾つかの実施形態によれば、追加の境界条件変数が使用され得る。これらの境界条件は、画像が境界にわたり反映される対称(ミラー又は反射とも呼ばれる)境界条件を含む。パディング境界条件は、幾つかの実施形態では、線形又は充填と様々に呼ばれ得る。循環境界条件は、ラップドとしても既知である。
更に、いずれの要素が境界条件と相互作用するかを決定するために異なる出力モードが利用され得る。これらの出力モードは、有効出力モード、同出力モード(又はハーフパディング)及びフル出力モードを含む。有効出力モードでは、出力は、境界条件に依存しない要素のみからなる必要がある。同出力モードでは、出力は、入力と同じサイズである必要がある。フル出力モードでは、出力は、境界条件に専ら依存しない全ての要素からなる。
異なる出力モードは、出力が定義される点[x,y]の数を制御する。したがって、本明細書に記載される各実施形態は、任意の所与の出力モードで動作するように変更され得る。本明細書に記載される実施形態は、同モード畳み込みの場合に焦点を合わせるが、これらの実装形態は、本明細書に記載される実施形態への代替又は追加として、相互相関及び/又は代替の出力モードを計算するように拡張され得ることを理解されたい。
CNN等の幾つかの実装形態では、これらの演算は、マルチチャネルデータに適用され得、且つ/又はマルチチャネルデータを生成するように一般化され得る。一例として、RGB画像は、3つの色チャネルを有する。2つの空間次元及びCチャネルを有する入力Gの場合、マルチチャネル演算は、
Figure 2021523508
として定義され、式中、
Figure 2021523508
は、畳み込み又は相互相関のいずれかを表し、Mは、出力チャネル数であり、Gは、三次元[C×I×I]テンソルであり、Fは、四次元[M×C×I×I]テンソルであり、
Figure 2021523508
は、三次元[M×I×I]テンソルである。上記の場合、スライスインデックス表記が使用され、空間次元は、F[m,c]がFの二次元[K×K]空間スライスにアクセスし、G[c]がGの二次元[I×I]空間スライスにアクセスするように抑制される。
一般に、行列演算として畳み込みを表現する技法は、図3−1のプロセスに従い得る。動作3−102において、行列が、例えば、正確な次元のものであり、境界条件及び/又は出力モードに従うことを確認するために、行列演算前に画像及び/又はフィルタ行列の前処理が行われ得る。動作3−104において、コア行列又は行列−ベクトル演算が適用され得、畳み込みの出力を作成する。動作3−106において、例えば、出力を再形成するために、本明細書においてより詳細に考察するように、畳み込みの出力の後処理が行われ得る。
幾つかの実施形態は、フォトニックプロセッサを使用して、行列−ベクトル積として畳み込みを計算し得る。本発明者らは、本明細書において上述したようなフォトニックプロセッサの幾つかの実施形態に含まれ得る等の可変ビームスプリッタ(VBS)のアレイが、任意のユニタリ行列を表すために使用され得ることを認識及び理解した。一例として、それらの技法を使用して拡張画像Gmatを表す場合、行列は、Gmat=VΣUとして特異値分解を用いて分解され得る。
フォトニックプロセッサの幾つかの実施形態では、2つのユニタリ行列U及びVは、次に、上述したアルゴリズムを用いて分解され得る。その計算から生成された位相は、特異値と共にフォトニックアレイにプログラムされる。幾つかの実施形態では、プロセッサは、画像ではなくフィルタを分解し、したがって、フィルタは、画像のバッチ全体にわたりロードされたままであり得る。
幾つかの実施形態による、フォトニックプロセッサにおいて畳み込みを計算するプロセスの一例は、図3−2に示される。動作3−202において、プロセスは、入力画像行列Gから行列Gmatを構築する。行列Gmatは、限定ではなく、二重ブロック循環行列又は二重ブロックテプリッツ行列としてGmatを構築することを含め、選択された境界条件に従って任意の適した方法で構築され得る。
次に、動作3−204において、分解された行列Gmatは、フォトニックアレイにロードされ得る。入力バッチ内の各フィルタFについて、ループが繰り返され、動作3−206において、フィルタFは、列ベクトルに平坦化され、動作3−208においてフォトニックアレイを通して行列−乗算演算を実行し、次に動作3−210において、適切な次元を有する出力に再形成される。動作3−212において、任意の更なるフィルタFが残っているか否かが判断される。畳み込み層を通るべき更なるフィルタFがある場合、プロセスは、動作3−206に戻る。他の場合、プロセスは、終了する。畳み込みの可換性により、プロセス3−200は、フィルタFがFmatに拡張され、画像Gが列ベクトルに平坦化され、動作3−208においてフォトニックアレイを通る状態で実行され得る。
フォトニックプロセッサは、任意の適した行列乗算ベースのアルゴリズムの実施に使用され得る。行列乗算ベースのアルゴリズムは、計算が幾らかの前処理及び/又は後処理を有する一般行列−行列乗算(GEMM)として表現することができるように入力信号を並べ替え且つ/又は拡張する。フォトニックプロセッサで実施され得る幾つかの行列乗算ベースアルゴリズムの例には、im2col、kn2row及び省メモリ畳み込み(MEC:memory−efficient convolution)がある。
幾つかの実施形態によれば、im2colアルゴリズムは、フォトニックプロセッサで実施され得る。im2colアルゴリズムでは、前処理中、画像Gは、[I×I]行列から[(K・K)×(I・I)]行列に拡張され得る。フィルタFは、[K×K]行列から[1×(K・K)]行ベクトルに平坦化され得る。次に、出力は、画像及びフィルタの行列−ベクトル積により生成され得、なぜなら、この前処理ステップは、各列が、スケーリングされ得、出力中の各ロケーションで蓄積され得る全ての(K×K)要素のコピーを保持する拡張データ行列を生成するためである。したがって、im2colアルゴリズムは、O(K・K・I・I)データコピー及びO(K・K・I・I)一時的記憶を必要とし得る。
幾つかの実施形態によれば、kn2rowアルゴリズムは、フォトニックプロセッサで実施され得る。kn2rowアルゴリズムは、変更されていない画像とフィルタ信号との外積を計算し、サイズ[(K・K)×(I・I)]の一時的な行列を生成する。kn2rowアルゴリズムは、次に、外積の各行からの特定の要素を一緒に加算して、[1×(I・I)]出力ベクトルを生成する。したがって、kn2rowアルゴリズムもO(K・K・I・I)データコピー及びO(K・K・I・I)一時的記憶を必要とし得る。
幾つかの実施形態によれば、MECアルゴリズムは、フォトニックプロセッサで実施され得る。MECアルゴリズムは、im2colアルゴリズムでのように(K・K)係数ではなく、K係数又はK係数のみで入力画像を拡張し得る。より小さいフィルタ次元が拡張に選択される場合、アルゴリズムは、O(min(K,K)・I・I)のみの一時的記憶及びデータコピーを必要とする。1つの行列−ベクトル積を計算するim2col又はkn2rowと異なり、MECアルゴリズムは、一連のより小さい行列−ベクトル積を計算し、結果を連結する。
上述した実施形態では、フィルタ行列は、畳み込みの可換性により、画像ではなく、前処理中に拡張され得る。タイル化され行列に再形成されるのが画像であるか又はフィルタであるかの選択は、いずれの演算がより高速であり、且つ/又はより少ない計算エネルギーを必要とするかによって決まり得る。
VII.二次元行列−行列乗算を介した多次元畳み込み
本発明者らは、上述した畳み込みを計算する行列乗算ベースのアルゴリズムが計算アーキテクチャ又は用途によっては適さないことがあることを認識及び理解した。本発明者らは、im2col又はkn2rowの計算効率をMECアルゴリズムの省メモリ特徴と組み合わせることができる手法が、畳み込み及び相互相関の計算にとって有益であることを更に認識及び理解した。特に、本発明者らは、これらの恩恵が、入力行列及び出力行列の並び替え及び再形成を前処理ステップ及び後処理ステップに分割することにより達成され得、そのような方法がN次元畳み込みに一般化され得ることを認識し、ここで、N≧2である。
幾つかの実施形態によれば、二次元行列−行列乗算アルゴリズムを介した多次元畳み込み(本明細書では「cng2」アルゴリズム)は、3つのステップを含む。高レベルにおいて、二次元循環畳み込みの非限定的な例では、前処理ステップは、[I×I]入力行列の行を複製して回転させることにより[K×(I・I)]行列を構築し、幾つかの実装形態では、「回転」は、ベクトルの要素の循環置換を指し、例えば([1,2,3,4],−1)を[2,3,4,1]に回転させる。GEMMステップでは、[K×K]フィルタ行列と、前処理ステップからの[K×(I・I)]行列との積が計算される。後処理において、GEMMにより作成された[K×(I・I)]行列の行は、回転され、加算されて出力を構築する。
幾つかの実施形態によれば、cng2アルゴリズムは、他の境界条件を実施するように変更され得る。一例として、前処理及び後処理中、パディング畳み込みの場合、ベクトル行は、回転ではなく、シフトされる。すなわち、回転ステップ中、通常であれば行ベクトルをラップアラウンドする要素は、ゼロに設定される。cng2アルゴリズムで実施され得る他の境界条件には、限定ではなく、対称又はミラー境界条件がある。
更に、cng2アルゴリズムの前処理ステップは、左辺入力(ここでは画像)のみへの適用に限定されず、幾つかの実施形態によれば、むしろ右辺入力(ここではフィルタ)に適用できることが留意され得る。フル又は有効モード畳み込みの場合、演算は、可換性であり、前処理フェーズは、いずれの入力に適用することもできる。同モード畳み込みの場合、I≠K又はI・Kであるとき、演算は、可換性ではなく、前処理フェーズは、それでもなお右辺に適用することができるが、フィルタは、まず各次元でゼロパディング及び/又はクロッピングされて出力サイズに一致しなければならない。
幾つかの実装形態では、cng2アルゴリズムは、図3−3Aに説明されるように追加のステップを含み得る。上述したような前処理段階前に、動作3−302に示されるように、1つ又は複数の入力フィルタ行列は、適切な次元を有するフィルタ行列Fに再形成される必要があり得る。この再形成は、任意の適した様式で1つ又は複数の入力フィルタ行列を連結することにより行われ得る。動作3−304において、循環行列Hを構築する前処理ステップが実行され、図3−3Bを参照してより詳細に説明する。動作3−306において、GEMMステップが実行され、中間行列X=F×Hが作成される。次に、後処理ステップが実行され得る。動作3−308において、行列Xのベクトル行は、回転及び/又はシフトされて、行列X’を形成する。動作3−310において、ベクトル行加算が行列X’の行に対して実行されて、行列Zを形成する。動作3−312において、特定の処理システムのメモリレイアウトに応じて、行列Zは、少なくとも1つの出力行列に再形成され得る。
行列Hを構築する方法は、幾つかの実施形態によれば、図3−3Bの動作3−304の拡張に示されるように、所望の境界条件に依存し得る。動作3−314において、境界条件が循環であるか否かが判断され得る。境界条件が循環であると判断される場合、処理システムは、動作3−316に進み得、行列Hは、少なくとも1つの入力行列の行を複製及び回転させることにより作成される。代わりに、動作3−314において境界条件が循環ではなくパディングであると判断される場合、処理システムは、動作3−318に進み得る。動作3−318において、行列Hは、上述したように少なくとも1つの入力行列の行を複製及びシフトさせることにより作成される。幾つかの実施形態では、動作3−318において、パディング境界条件以外の他の境界条件が利用され得ることを理解されたい。
代替的に、幾つかの実施形態によれば、相互相関を計算する際、問題は、プロセス3−300でのように畳み込みに明示的に変換される必要がないことがあり得ることである。代わりに、要素反転ステップ3−302は、省略され得、cng2アルゴリズムの前処理及び後処理ステップは、それに従って変更することができる。すなわち、要素反転ステップは、cng2アルゴリズムの前処理ステップ及び後処理ステップと組み合わされ得る。これがどのように行われるかは、前処理拡張が左辺入力に適用されるか又は右辺入力に適用されるかに依存する。左辺入力が拡張される場合、前処理ステップ及び後処理ステップの両方におけるシフト又は回転は、逆方向で実行され得る。右辺入力が拡張される場合、前処理フェーズ中に生成された各循環行列は、転置され、逆順で連結され得、GEMM出力行列のi行目は、後処理フェーズにおいて、i・n要素ではなく、(i−n+1)・n要素だけシフト又は回転され得る。複素値データの場合、相互相関は、なおも1つの入力の複素共役を必要とする。
CNNにおける実施等の幾つかの実装形態では、マルチチャネルデータに適用及び/又は生成することができるように上記演算を一般化することが望ましいことがある。C個の入力チャネル及びM個の出力チャネルを有する問題の場合、フィルタ行列は、形態[(M・K)×(K・C)]をとり、入力行列は、形態[(K・C)×(I・I)]をとり、出力行列は、形態[(M・K)×(I・I)]をとる。
図3−4A乃至図3−4Fを参照すると、幾つかの実施形態によるマルチチャネル入力及び出力のプロセス3−300の一例が示される。4つの出力チャネルを含む[2×2]フィルタf及び3つの入力チャネルを含む[3×3]画像Gの場合、動作3−402は、図3−4Aに視覚化される。しかしながら、任意のサイズのフィルタ行列、画像行列並びに/又は任意の数の入力及び/若しくは出力チャネルが実施可能である。動作3−402の例では、フィルタfの[6×8]フィルタ行列Fへの再形成が実行される。この例では、フィルタfの再形成は、行列要素の順序を変更せずにフィルタfを連結することにより行われるが、フィルタfの行の回転、シフト又は他の方法での変更等の他の方法を利用することもできる。フィルタfの再形成は、フィルタ行列Fが後のGEMM演算に適切な次元のものであることを保証する。しかしながら、メモリが適宜レイアウトされる幾つかの実装形態では、動作3−402は、後述するように動作3−404前に必要ではないことがある。
幾つかの実施形態によれば、図3−4Bに示されるように、動作3−402後、画像Gの前処理が動作3−404において実行され得る。この例では、画像Gは、同モード畳み込みを実行するように形成されるが、任意の出力モードが使用可能である。この例では、循環行列Hは、循環境界条件に基づいて形成されるが、例えばパディング境界条件等の任意の境界条件が使用可能である。動作3−404後、図3−4Cに示されるように、動作3−406のGEMM演算F×H=Xが実行され得る。この例では、中間行列Xは、次元[9×8]を有する。
GEMM演算後、図3−4D乃至図3−4Eに示されるように、後処理ステップが行われ得る。図3−4Dでは、動作3−408が示され、この例の循環境界条件に従って中間行列Xの行が回転されて、行列X’を形成する。前処理ステップ及び後処理ステップの境界条件が互いに同一である限り、非限定的な例として、パディング境界条件等の他の境界条件が前処理及び後処理で実施され得る。
動作3−410が示される図3−4Eを参照すると、後処理の最後のステップは、行列X’の行を加算して、出力行列Zを形成する。すなわち、この例では、x00+x16=z00、x01+x17=z01等である。幾つかの実装形態では、処理システムのメモリがどのようにレイアウトされるかに応じて、動作3−410後、出力行列Zの再形成を動作3−412において実行する必要があり得る。図3−4Fの視覚化例では、出力行列Zは、次元[3×3]の4つの出力行列Aに再形成される。
複数の入力チャネルに一般化可能であることに加えて、幾つかの実施形態によれば、cng2アルゴリズムは、より高次元の信号(すなわち2超)に一般化することもできる。サイズ[K×Kn−1×...×K]のフィルタテンソルとサイズ[I×In−1×...×I]の画像との間のn次元畳み込みの場合、二次元信号で行われるものと同様のステップを用いる二次元行列乗算を使用して所望の出力を計算することが可能である。前処理中、入力テンソルは、(K・Ka−1.......K)係数により拡張され得、ここで、aは、前処理フェーズ中に扱われる次元数と考えることができ、範囲1≦a≦n−1内の任意の値が選択され得る。GEMMステップでは、[(K・Kn−1.....Ka+1)×(K・Ka−1.....K)]行列及び前処理ステップからの拡張行列として分割されたフィルタテンソルの積が実行され得る。後処理ステップ中、GEMM中に生成された行列のサブベクトルは、回転及び蓄積され得る。
前処理フェーズにより生成された拡張行列は、(I・In−1.....Ia+1)水平連結サブ行列からなり得、各サブ行列は、a次の入れ子テプリッツ行列であり、最も内側のテプリッツ行列は、二次元cng2実施でのように定義される。後処理フェーズは、(n−a)ラウンドの回転及び加算を実行し得、i番目のラウンドは、前のラウンドにより(又は最初にGEMM演算により)生成された行列をサイズ[Ka+i×(Ia+i・Ia+i−1.....I)]のサブ行列に分割する。各サブ行列について、以下の演算が次に実行される。まず、j行目は、(j・(Ia+i−1・Ia+i−2.....I))要素だけ回転又はシフトされ得る。次に、全ての行が一緒に加算され得る。
上記説明は、順序通りに次元を扱い、すなわち前処理フェーズは、最初のa次元に沿ってデータを拡張し、後処理フェーズは、最後のn−a次元に沿ってデータを低減するが、幾つかの実施形態によれば、これが当てはまる必要はない。前処理フェーズは、二次元の場合について説明したのと同じように入力データ及び出力データを並び替えることにより、任意のa次元に沿ってデータを拡張することができる。
cng2アルゴリズムは、畳み込みを計算する柔軟な枠組みを提供し、幾つかの代替の実施形態が本明細書に説明される。幾つかの実装形態では、出力における所与の点の入力信号の重複領域は、一定のオフセットによりシフトし得る。そのようなオフセットは、出力モードに関係なく適用され得るが、同モード出力と対になることが最も多い。同モードで動作する畳み込み(相互相関)及び先に与えられた定義では、境界条件は、上(下)縁部に沿って(K−1)・I要素及び入力画像Gの左(右)縁部に沿って(K−1)・I要素に適用し得る。この挙動は、フィルタロケーションと出力ロケーションとの間に一定のオフセットを用いて演算を再定義することにより変更され得る。畳み込み(相互相関)を計算する場合、この変更は、前処理フェーズにおいてオフセットをシフト量又は回転量から減算(加算)し、後処理フェーズにおいてオフセット・Iをシフト量又は回転量から減算(加算)することによりcng2に適用することができる。
更に、kn2row後処理ステップの時間要件及び記憶要件の両方の低減に向けて提案された方法は、幾つかの実施形態によれば、cng2アルゴリズムにも同様に適用し得る。kn2rowアルゴリズムでは、GEMM演算は、一連のK・Kのより小さいGEMM演算に分割され得、それらのより小さいGEMM演算の結果は、連続して一緒に蓄積される。これにより、後処理加算は、最終出力の記憶に関して最適化され、且つインプレースで実行することができる。kn2rowの場合、これは、境界条件を無視することができる場合のみ又は追加の(及び一般に非効率的な)いわゆるホールパンチングプロセスが導入される場合のみ機能する。しかし、cng2アルゴリズムでは、このプロセスは、精度又は追加処理なく直接適用することができ、後処理ステップの計算コストを効率的になくし、cng2アルゴリズムに必要な一時的記憶をO(K・I・I)に低減する。
幾つかの実施形態では、空間次元は、プロセス3−300に記載されるように逆順に扱うことができる。cng2アルゴリズムは、プロセス3−300の開始時において両方の入力信号に適用される転置演算及び最終出力に対する転置演算で向上させることができる。これは、なおも所望の結果を生成するが、フィルタの形状が厳密に矩形である(すなわちK≠K)場合、挙動を変える。この場合、入力画像は、Kではなく、係数Kで拡張され、後処理ステップは、O(K・I・I)ではな、くO(K・I・I)加算からなる。この変形形態を上記の低メモリ集積後処理変形と組み合わせる実装形態は、cng2アルゴリズムに必要な一時的記憶をO(min(K・K)・I・I)に更に低減することができる。
代替の実装形態として、GEMM演算に渡される行列中の行及び/又は列は、並び替えられ得る。GEMM演算がC=ABとして定義される場合、入力行列A又はBのいずれかの行及び/又は列は、適切な置換が他方の入力行列(Aの列又はBの行を並び替える場合)又は出力行列(Aの行又はBの列を並び替える場合)に適用される限り、並び替えられ得る。特に、複数の出力チャネルの場合にAの行を並び替えることは、ベクトルプロセッサ又は単一命令複数データ(SIMD:single−instruction−multiple−data)アーキテクチャによく適するように、後処理フェーズで利用可能なデータレベル並列性を認識し得る。
畳み込み計算は、幾つかの実施形態によれば、ストライドを用いて計算することもできる。第1の次元におけるストライドS及び第2の次元におけるストライドSについて、畳み込み演算は、以下のように定義される。
Figure 2021523508
この定義は、計数S・Sで出力信号のサイズを低減し、各出力点でフィルタが画像にわたりスライドするステップサイズの増大に等しい。これは、非ストライド畳み込みを計算し、次に各次元で適切な量で結果をダウンサンプリングすることにより実施され得るが、これは、必要なものよりも追加のO(S・S)計算ステップを必要とする。少なくとも、この計算ペナルティは、個々の各循環行列においてS番目毎の列のみを生成するように前処理フェーズ3−304を変更し、i・Iではなく、i・(I/S)で各行をシフト又は回転するように後処理ステップを変更することにより、cng2でO(S)に低減することができる。幾つかの実装形態では、計算ペナルティは、各フェーズへの追加の変更により完全になくすことができる。まず、前処理ステップ3−304は、1つの行列ではなく、S拡張行列を生成するように変更され得、ここで、j=iモジュロSの場合、i番目の循環行列は、j番目の拡張行列に割り当てられる。次に、コア処理フェーズは、SGEMM演算を実行しなければならない(拡張入力行列毎に1つのGEMM演算)各演算は、フィルタ行列のK/S行のみを使用する。後処理ステップ3−308、3−310は、次に、生成された行列の行をインタリーブし、S行の各群を直接加算し(すなわち行のシフト又は回転なく)、シフト又は回転量i・(I/S)を用いて標準後処理論理にK/S行を通し得る。
代替的に、幾つかの実施形態によれば、畳み込みは、伸長し得る。第1の次元における伸長D及び第2の次元における伸長Dの場合、畳み込み演算は、
Figure 2021523508
として定義される。
伸長は、各出力点で画像のより大きいパッチにわたりフィルタの各フィールドを増大し、フィルタの要素間への空間の挿入と見なすことができる。cng2アルゴリズムは、前処理フェーズ及び後処理フェーズの両方でそれぞれD及びDだけ回転量又はシフト量を増やすことにより伸長畳み込みを実施するように変更され得る。伸長畳み込みは、因果出力モードを用いた計算に更に制限され得る。
本発明者らは、畳み込み及び相互相関が変換ベースアルゴリズムを使用することにより計算可能であることを更に認識及び理解した。変換ベースアルゴリズムは、まず、代替数値ドメイン(例えば、周波数ドメイン)で入力信号の均等表現を計算し、代替線形演算(例えば、要素毎の乗算)を実行し、次に信号の元の数値ドメイン(例えば、時間ドメイン)への結果の逆変換を計算することにより計算問題の性質を変える。そのような変換の例には、離散フーリエ変換(DFT:discrete Fourier transform)、離散正弦変換、離散余弦変換、離散ハートレー変換、非デシメート離散ウェーブレット変換、ウォルシュ−アダマール変換、ハンケル変換及びウィノグラード最小フィルタリングアルゴリズム等の有限インパルス応答(FIR:finite impulse response)フィルタがある。DFTに基づく変換ベースアルゴリズムの一例が本明細書に記載されるが、任意の適した変換が変換ベースアルゴリズム及びフォトニックプロセッサで実施可能である。
ユニタリ正規化の場合、一次元信号の離散フーリエ変換(DFT)は、
Figure 2021523508
として計算される。
この変換の逆T1D −1は、複素共役をとることにより計算され得る。同様に、二次元では、ユニタリ正規化DFTは、
Figure 2021523508
として計算され得る。
サイズNのベクトルに対して上記定義した一次元DFTを実行することは、行列−ベクトル積T1D(x)=X=Wxを計算することにより達成することができる。行列Wは、
Figure 2021523508
により与えられる変換行列と呼ばれ、式中、
Figure 2021523508
である。逆変換は、W−1の要素が複素共役である同様の行列−ベクトル積により計算され得る。DFTは、可分変換であり、したがって直交軸に沿って2つの一次元変換を計算することと見なされ得る。
したがって、[M×N](すなわち矩形)入力xの二次元DFTは、以下の行列三重積T2D(x)=X=WxYを介して計算され得、式中、Wは、列に関連付けられた[M×M]変換行列であり、Yは、行に関連付けられた[N×N]変換行列であり、上付き文字Tは、行列転置を示す。サイズ[N×N]の正方入力の場合、列Wの転置行列は、行Yの転置行列と同じである。
同等に、これは、まずx行毎にサイズM・Nの列ベクトルxcolに平坦化し、以下の行列−ベクトル積:
Figure 2021523508
を計算することにより計算され得、式中、
Figure 2021523508
は、クロネッカー積である。幾つかの実施形態によれば、結果ベクトルXcolは、次に、[M×N]二次元アレイXに再形成され得る。
2D(x)=X=reshape(Xcol
同様のプロセスは、前方変換行列W及び逆変換に関連付けられた行列W−1が、上記の他の変換に従って任意の適した方法で定義される他の離散変換で実行することもできる。
一次元DFTの場合、行列Wは、ユニタリ行列であり、したがって上述した実施形態によりフォトニックアレイに直接プログラムされ得る。他の離散変換では、行列Wは、ユニタリではないことがあり、したがって、上述した方法によれば、フォトニックアレイにプログラムされる前に分解が必要であり得る。幾つかの実施形態による、一次元変換をベクトルに対して実行するプロセス3−500を図3−5に示す。動作3−502において、行列Wは、フォトニックアレイにプログラムされ、動作3−504において、ベクトルxは、アレイを通して伝播する。
幾つかの実装形態では、二次元変換は、図3−6のプロセス3−600に記載されるように計算され得る。サイズN×Nである二次元入力xの場合、プロセス3−500は、上記定義した二次元変換を生成するように変更され得る。動作3−602において、サイズN一次元入力に対応する変換行列Wsmallが作成される。次に、動作3−604において、対角線に沿ってWをタイル化することにより、サイズN×Nのブロック対角行列Bが作成される。次に、動作3−606において、行毎に入力xを平坦化することによりサイズNの列ベクトルxcolが作成される。動作3−608において、ベクトルxをフォトニックアレイに伝播させることにより、乗算Xpartial=Bxが実行され得る。動作3−610において、行列Xpartialは、次に、N×N行列に再形成され得、次に動作3−612において、N×N行列は、列毎にサイズN列ベクトルに更に平坦化することができる。動作3−614において、フォトニックアレイを通してXpartialを伝播させることにより、乗算X=BXpartialが実行され得る。動作3−616において、生成されたベクトルXは、出力に向けてN×N行列に再形成され得る。
幾つかの実施形態では、次に、[N×N]入力xの二次元変換は、第1に、行列Wをフォトニックアレイにプログラムすることにより計算され得る。第2に、フォトニックアレイを通してxの列を伝播させることによりXpartial=Wxを計算する。第3に、部分結果Xpartialを転置させる。第4に、アレイを通してXpartial の列を2回目伝播させて、WXpartial を計算する。最後に、結果を転置させて、X=WxWを生成する。
本明細書に記載されるフォトニックベースのシステムの一実施形態等の幾つかのシステムは、実数ユニタリ行列(すなわち直交行列)の実施に制限される。そのような実装形態では、変換は、なおも計算することができるが、追加のステップが必要である。システムは、変換行列及び入力ベクトル又は画像の実数部及び虚数部を別個に追跡しなければならない。積を計算する先に定義された実施形態は、直交行列に適合することができるが、上述したフォトニックアレイを通したあらゆるパスで、アルゴリズムは、4つのパスを実行しなければならない。変数の実数部をRe(x)と記し、虚数部をIm(x)と記すと、積の実数部は、Re(Wx)=Re(W)Re(x)−Im(W)Im(x)であり、同様に積の虚数部は、Im(Wx)=Re(W)Im(x)+Im(W)Re(x)である。幾つかの実施形態によれば、実数行列のみを表すフォトニックプロセッサのフォトコアでは、図3−7のプロセス3−700が実行され得る。入力の次元によれば、プロセス3−500又は3−600のいずれかがプロセス3−700において使用され得る。動作3−702において、Re(W)は、フォトニックアレイにロードされる。動作3−704において、入力の次元に応じて、Re(x)及びIm(x)についてプロセス3−500又は3−600のいずれかが実行され得る。これは、Re(W)Re(x)及びRe(W)Im(x)を生成する。動作3−706において、Im(W)は、フォトニックアレイにロードされる。動作3−708において、プロセス3−500又は3−600のいずれかが、ここでも入力の次元に応じて、Re(x)及びIm(x)について実行され得る。これは、Im(W)Re(x)及びIm(W)Im(x)を生成する。動作3−710において、Re(W)Re(x)及びIm(W)Im(x)は、減算されて、Re(Wx)を生成する。また、動作3−712において、Re(W)Im(x)及びIm(W)Re(x)は、加算されてIm(Wx)を生成する。
上記プロセス3−500、3−600及び3−700を用いて、入力行列は、その変換に変換され得る。畳み込みフィルタF及び画像Gがそれらの変換相手方に変換されると、幾つかの実施形態により畳み込み理論が提供され得る。畳み込み理論は、2つの信号の畳み込みが2つの信号の変換の要素毎の積の変換に対応することを述べている。数学的に、これは、
Figure 2021523508
により表されるか、又は換言すれば、
Figure 2021523508
により表され、式中、
Figure 2021523508
は、要素毎の乗算を表し、T−1は、逆変換を表す。幾つかの実施形態では、画像の次元及びフィルタの次元は、異なり得、そのような場合、順変換及び逆変換の各々の計算に適切な次元変換が使用され得ることを理解されたい。したがって、フィルタ及び画像の一般変換及び一般次元との一次元畳み込みを表す行列乗算式は、
Figure 2021523508
であり、式中、Wは、フィルタFの変換に関連付けられた行列であり、W は、画像Gの変換に関連付けられた行列であり、W は、結合信号の逆変換に関連付けられた行列である。
したがって、同様に、矩形フィルタ及び画像への一般変換との二次元畳み込みを表す行列乗算式は、
Figure 2021523508
であり、式中、W及びW は、フィルタFの変換に関連付けられた行列であり、W 及びWは、画像Gの変換に関連付けられた行列であり、W 及びWは、結合信号の逆変換に関連付けられた行列である。
図3−8を参照すると、変換ベースアルゴリズムを使用してフォトニックプロセッサのフォトコアにおいて畳み込みを実行する幾つかの実施形態は、以下の動作を含み得る。動作3−802において、画像Gの変換は、プロセス3−500、3−600及び/又は3−700のいずれか1つを使用して実行され得る。
幾つかの実施形態では、次に、動作3−804において、フィルタFは、画像Gのサイズに合うようにゼロでパディングされ得、その後、動作3−806において、プロセス3−500、3−600及び/又は3−700のいずれか1つを使用してフィルタFに対して変換が実行され得る。次に、動作3−808において、変換されたフィルタFは、フォトニックアレイの要素毎の乗算器にロードされ得、動作3−810において、フォトニックアレイを通して画像Gを伝播し得る。動作3−812において、プロセス3−500、3−600及び/又は3−700のいずれか1つを使用して前の計算の結果に逆変換を実行し得る。次に、動作3−814において、動作3−812の結果は、サイズGに再形成され得、クロッピングされて最終畳み込み画像G*Fを生成し得る。
幾つかの実施形態では、畳み込みG*Fは、1つの入力がタイルの組に分割され、各タイルが第2の入力で別個に畳み込まれる分割統治様式で計算され得る。次に、個々の各畳み込みの結果は、再結合されて所望の出力にすることができるが、この分割統治手法を実施するアルゴリズム(例えば、重複加算、重複保存)は、重要ではない。ある入力が他よりもはるかに小さく、変換ベースアルゴリズムが畳み込み演算に使用される場合、この手法は、フィルタが画像のサイズに合うようにパディングされた状態で、上述したように1つの演算で畳み込み全体を計算するよりもはるかに効率的であり得る。フォトニックアレイでタイルの変換を実行することにより、変換ベースの畳み込みのそのような分割統治アルゴリズムがフォトニックプロセッサで実施可能であることが理解され得る。
幾つかの実施形態では、フィルタF及び画像Gは、複数のチャネルを有し得る。先に定義したように、これは、画像の各チャネルがフィルタテンソルの対応するチャネルで畳み込まれ、結果が要素単位で一緒に加算されることを意味する。マルチチャネル畳み込みが変換ベース方法を用いて計算される場合、チャネルにわたる合算は、変換ドメイン又は出力ドメインのいずれかで実行され得る。実際には、多くの場合、変換ドメインでの合算実行が選択され、その理由は、これが、出力変換を適用しなければならないデータ量を低減するためである。この場合、チャネル毎の合算が続く要素毎の乗算は、一連の行列−行列乗算(GEMM)として表現することができる。数学的には、これは、以下のように表現することができる。
Gを、N×N画像のCデータチャネルを含む入力信号とする。Fを、N×NフィルタのM・Cデータチャネルを含む入力信号とする。C及びMを、それぞれ入力データチャネル及び出力データチャネルの数とする。Qm,cを、フィルタテンソルのm番目の出力チャネル及びc番目の入力チャネルの変換されたデータとする(すなわち、
Figure 2021523508
)。Rを、変換された三次元[C×N×N]入力テンソルとし、Rを、変換された入力テンソルのc番目のチャネルとする(すなわちR=W )。したがって、複数の出力チャネルを生成するF及びGの畳み込みは、
Figure 2021523508
である。
ijが、三次元[C×N×N]テンソルS内の各チャネルの(i,j)番目の位置におけるC要素で構成される列ベクトルを示す場合、これは、同等に、
Figure 2021523508
と表現することができる。
各Q ijij行列−行列乗算は、上述したようにフォトニックプロセッサで計算され得る。これは、上述した分割統治手法と更に組み合わされ得る。
本願の態様は、CPU、GPU、ASIC、FPGA又は任意の他の適したプロセッサ等の処理デバイスで実行され得る方法、手順及びアルゴリズムを提供する。例えば、処理デバイスは、上述した手順を実行して、本明細書に記載されるフォトニックプロセッサのフォトコアの可変ビームスプリッタ及び変調器の設定を生成し得る。処理デバイスは、上記手順を実行して、本明細書に記載されるフォトニックプロセッサに入力される入力データを生成することもできる。
計算デバイスの一例の実装形態は、少なくとも1つのプロセッサ及び非一時的コンピュータ可読記憶媒体を含み得る。計算デバイスは、例えば、デスクトップ若しくはラップトップパーソナルコンピュータ、個人情報端末(PDA:personal digital assistant)、スマートモバイル電話、タブレットコンピュータ、サーバ又は任意の他の適した計算デバイスであり得る。コンピュータ可読媒体は、プロセッサにより処理されるデータ及び/又はプロセッサにより実行される命令を記憶するように構成され得る。プロセッサは、データの処理及び命令の実行を可能にする。データ及び命令は、コンピュータ可読記憶媒体に記憶され得、例えば、計算デバイスの構成要素間の通信を可能にし得る。コンピュータ可読記憶媒体に記憶されるデータ及び命令は、本明細書に記載される原理により動作する技法を実施するコンピュータ実行可能命令を含み得る。
計算デバイスは、入力デバイス及び出力デバイスを含め、1つ又は複数の構成要素及び周辺機器を更に有し得る。これらのデバイスは、特に、ユーザインターフェースを提示するために使用することができる。ユーザインターフェースの提供に使用することができる出力デバイスの例には、出力の視覚的提示のためのプリンタ又はディスプレイ画面及び出力の可聴的提示のためのスピーカ又は他の音生成デバイスがある。ユーザインターフェースに使用することができる入力デバイスの例には、キーボード、マウス等のポインティングデバイス、タッチパッド及びデジタイジングタブレットがある。別の例として、計算デバイスは、発話認識を通して又は他の可聴フォーマットの入力情報を受信し得る。別の例として、計算デバイスは、カメラ、ライダー又は視覚的データを生成する他のデバイスから入力を受信し得る。
計算デバイスの実施形態は、本明細書に記載される等のフォトニックプロセッサを含むこともできる。計算デバイスのプロセッサは、1つ又は複数のインターフェースを介してフォトニックプロセッサと情報をやりとりし得る。送受信される情報は、フォトニックプロセッサの可変ビームスプリッタ及び変調器の設定及び/又はフォトニックプロセッサの検出器からの測定結果を含み得る。
IV.フォトニックエンコーダ
本発明者らは、光学信号の位相−強度関係、したがって位相及び強度変調が互いに相互依存し、光学処理で光場にベクトルを精密に符号化することに関して問題を呈することを認識及び理解した。
幾つかの光学変調器は、数値ベクトルを光学ドメインに符号化し、数値は、光学信号の位相又は強度に符号化される。理想的な世界では、光学強度変調器は、光学信号の位相を変更なく維持しながら光学信号の強度を変調することが可能であり、光学位相変調器は、光学信号の強度を変更なく維持しながら光学信号の位相を変調することが可能である。しかしながら、現実世界では、光学信号の位相及び強度は、相互依存する。したがって、強度変調は、対応する位相変調を生じさせ、位相変調は、対応する強度変調を生じさせる。
例えば、強度及び位相がクラマース−クローニッヒ式(複素解析関数の実数部及び虚数部を結ぶ双方向数学的関係式)により互いに関連する集積フォトニクスプラットフォームを考える。これらの場合、光場は、関数の実数部及び虚数部(その結果として強度及び位相)が互いに関連する複素関数で表すことができる。加えて、強度変調器及び位相変調器の現実的な実装は、一般に、動的損失を受け、それにより、変調器が付与する変調量(位相又は強度)は、変調器の現在の設定に依存する。これらの変調器は、位相変調が行われない場合、特定の電力損失を受け、位相変調が行われる場合、異なる電力損失を受ける。例えば、位相変調がない場合に受ける電力損失は、L1であり得、π/2位相変調の場合に受ける電力損失は、L2であり得、π位相変調の場合に受ける電力損失は、L3であり得、L1、L2及びL3は、互いに異なる。位相変調に加えて、信号は、強度変調を更に受けるため、この挙動は、望ましくない。
光学変調器(4−10)の一例を図4−1に示し、図中、ψinは、入力光場を表し、ψoutは、変調器4−10により出力される光場を表し、αは、振幅変調係数を表し、θは、位相変調係数を表す。理想的には、変調器4−10は、光場ψinのエントリをψout=αeiθとして任意の減衰と組み合わせて任意の位相に設定することが可能であり、ここで、α≦1であり、θ∈[0,2π]である。変調器は、通常、関連付けられたクラマース−クローニッヒ関係式を有し、且つ/又は動的損失を受け、単にα及びθの値を設定することは、容易に達成することができない。従来、2つの独立した制御可能な変調信号を有する2つ以上の変調器が、実数の符号付き数を表すように光場の振幅及び位相の両方を符号化するために使用される。しかしながら、複数の制御可能な変調信号を有することは、光学信号の位相及び強度を同時に制御するフィードバックループを含むことが多い複雑な多変量符号化方式を必要とする。
位相に影響せずに強度を変調することが可能な光学変調器は、電子光学材料に基づく変調器を含めて存在する。残念ながら、電子光学変調器は、製造が非実現的な材料の使用が関わることに起因して大規模商業状況で機能することが難しい。
従来のコンピュータは、元々、複素算術を実行しない。むしろ、従来のコンピュータは、符号付き算術を使用し、ここで、数字は、正又は負であり得、複素算術は、幾つかの計算を実行し、結果を組み合わせることにより構築することができる。本発明者らは、これが、動的損失及び/又は非理想的な位相又は強度変調器が存在する場合でも、実数の符号付き線形変換の実施を動的に簡易化するために使用され得ることを認識及び理解した。
幾つかの実施形態は、非理想的な光学変調器(強度変調が位相変調を生じさせ、位相変調が強度変調を生じさせる変調器)を使用して符号付き実数のベクトルを符号化する技法に関する。他の実装形態とは対照的に、幾つかのそのような実施形態は、1つの変調信号を使用して、光学信号の位相及び強度を制御することを含む。本発明者らは、1つの変調信号を使用して符号付き実数を光場に符号化する場合、位相空間における光学信号の厳密なロケーション(例えば、実数部及び虚数部又は振幅及び位相)が復号化のために重要でないことを理解した。幾つかの実施形態によれば、正確な復号化にとって重要なのは、実数軸(又は測定軸として予め選択された他の任意の軸)への光学信号の射影である。予め選択された軸への射影を実行するために、幾つかの実施形態ではコヒーレント検出方式が使用される
本明細書に記載されるタイプの光学ドメイン符号化技法は、限定ではなく、短距離、中距離及び長距離用途向けの高速電気通信、検知、通信及び計算向けのチップ位相敏感測定並びにフォトニックプロセッサを使用した光学機械学習を含めて多様な状況で使用され得る。
より一般的には、本明細書に記載されるタイプの符号化技法は、光学信号が実数変換(複素変換とは対照的に)に従って処理される任意の状況で使用され得る。従来のコンピュータは、複素算術を直接実行しない。むしろ、従来のコンピュータは、符号付き実数算術を使用し、ここで、数字は、正又は負であり得る。幾つかの実施形態では、複素算術は、実数算術を含む幾つかの計算を実行することにより光学ドメインにおいて構築することができる。例えば、以下の式:
y=Mx=[Re(M)+iIm(M)][Re(x)+iIm(x)]
=[Re(M)Re(x)−Im(M)Im(x)]+i[Re(m)Im(x)+Im(M)(Re(x)]
に従って光学信号を変換するように構成された光学線形システム例を考え、式中、xは、入力ベクトルを表し、Mは、変換行列を表し、yは、出力ベクトルを表し、iは、i=−1であるように定義される虚数を表す。実数変換(Im(M)=0であるような)を考えると、yは、以下:
Figure 2021523508
のように書き換えることができる。
この式に基づいて、入力場xの実数部及び虚数部は、生成される場yの線形独立成分にのみ寄与することに留意されたい。本発明者らは、yが、yを複素平面における任意の軸に射影することにより、コヒーレント受信機を使用して復号化できることを認識及び理解した。
幾つかの実施形態では、本明細書に記載されるタイプの符号化技法は、フォトニック処理システムの一環として使用され得る。例えば、幾つかの実施形態では、図1−1の光学エンコーダ1−101、図1−11の光学エンコーダ1−1103及び/又は図1−12Bの光学エンコーダ1−1211は、本明細書に記載されるタイプの符号化技法を実施し得る。
図4−2Aは、幾つかの実施形態による光学符号化技法を実施するフォトニックシステムのブロック図である。フォトニックシステム4−100は、光源4−102、エンコーダ4−104、光学変調器4−106及び光学変換ユニット4−108、コヒーレント受信機4−110、局部発振器4−112及びデコーダ4−114を含む。幾つかの実施形態では、フォトニックシステム4−100は、図4−2Aに示されていない追加又は代替の構成要素を含み得る。幾つかの実施形態では、図4−2Aの構成要素の幾つか又は全ては、同じ半導体基板(例えば、シリコン基板)に配置され得る。
光源4−102は、例えば、コヒーレント光源の使用を含め、幾つかの方法で実施され得る。一例では、光源4−102は、波長λの光を発するように構成されたレーザを含む。放射波長は、電磁スペクトルの可視部分、赤外線部分(近赤外線、中赤外線及び遠赤外線)又は紫外線部分であり得る。幾つかの実施形態では、λは、O帯、C帯又はL帯にあり得る。光源4−102により発せられた光は、光学変調器4−106を使用して変調される。光学変調器4−106は、位相変調が強度変調を生じさせ、強度変調が位相変調を生じさせる非理想的な変調器である。幾つかの実施形態では、位相変調は、クラマース−クローニッヒ式に従って強度変調に関連し得る。代替又は追加として、変調器4−106は、動的損失を受け得、その場合、位相シフトは、減衰に繋がる。
幾つかの実施形態では、変調器4−106は、1つの電気変調信号4−105により駆動される。したがって、1つの変調信号は、光場の位相及び振幅の両方を変調する。これは、各シンボルが2ビット以上を表す光場の複素振幅にシンボルを符号化する、光学通信で従来使用される変調器とは対照的である。そのようなタイプの変調器では、実際には、複数の変調信号が光場を変調する。例えば、四位相偏移(QPSK:quadrature phase−shift keying)変調方式を提供するように構成された光学変調器を考える。これらのタイプの変調器では、1つの変調信号は、光場の実数部を変調し、1つの変調場は、光場の虚数部を変調する。したがって、QPSK変調器では、光場の位相及び振幅は、2つの変調信号を使用してまとめて変調される。
変調器4−106に使用し得る変調器の例には、可能なタイプの変調器の中でも特に、マッハツェンダー変調器、電子光学変調器、リング若しくはディスク変調器又は他のタイプの共振変調器、電子吸収型変調器、フランク−ケルディッシュ変調器、音響光学変調器、シュタルク効果変調器、磁気光学変調器、熱光学変調器、液晶変調器、量子閉込光学変調器及びフォトニック結晶変調器がある。
エンコーダ4−104は、符号化する実数に基づいて変調信号4−105を生成する。例えば、幾つかの実施形態では、エンコーダ4−104は、実数を変調信号の振幅にマッピングするテーブルを含み得る。
光学変換ユニット4−108は、受信した光場の強度及び/又は位相を変換するように構成され得る。例えば、光学変換ユニット4−108は、光ファイバ、光学導波路、光学減衰器、光学増幅器(エルビウムドープファイバ増幅器等)、ビームスプリッタ、ビーム結合器、変調器(特に電子光学変調器、フランツ−ケルディッシュ変調器、共振変調器又はマッハツェンダー変調器等)、位相シフタ(熱位相シフタ又はプラズマ分散効果に基づく位相シフタ等)、光学共振器、レーザ又はそれらの任意の適した組合せを含み得る。光学通信に関連して、光学変換ユニット4−108は、光ファイバ通信チャネルを含み得る。光学通信チャネルは、例えば、光ファイバ及び任意選択的に光学リピータ(例えば、エルビウムドープファイバ増幅器)を含み得る。光学処理に関連して、光学変換ユニット4−108は、フォトニック処理ユニットを含み得、その一例を更に詳細に後述する。幾つかの実施形態では、光学変換ユニット4−108は、変換の虚数部がゼロに略等しいように実数変換を実施する。
光学変換ユニット4−108により出力された光場は、コヒーレント受信機4−110に直接又は間接的に(例えば、1つ又は複数の他のフォトニック構成要素を通った後)提供される。コヒーレント受信機4−110は、ホモダイン光学受信機又はヘテロダイン光学受信機を含み得る。受信信号がビートする基準信号は、図4−2Aに示されるように、局部発振器4−112により提供され得るか、又は光学変換ユニット4−108を通った後、変調された光場と一緒に提供され得る。デコーダ4−114は、コヒーレント受信機4−112により出力された信号から実数(又は実数のベクトル)を抽出するように構成され得る。
図1−1のフォトニック処理システム1−100が、本明細書に記載されるタイプの符号化技法を実施する実施形態の少なくとも幾つかでは、光学変調器4−106は、光学エンコーダ1−101の一部であり得、光学変換ユニット4−108は、フォトニックプロセッサ1−103の一部であり得、コヒーレント受信機4−110は、光学受信機1−105の一部であり得る。
図4−2Bは、幾つかの実施形態による光学ドメインにおいて実数を処理する方法を示すフローチャートである。方法4−150は、図4−2Aのシステムを使用して又は任意の他の適したシステムを使用して実行され得る。方法4−150は、実数を表す値が提供される動作4−152において開始される。幾つかの実施形態では、実数は、符号付きであり得る(すなわち正又は負であり得る)。実数は、物理的状況(例えば、温度、圧力等)、物体に関連付けられた情報(例えば、位置、運動、速度、回転率、加速度等)、マルチメディアファイルに関連付けられた情報(例えば、オーディオファイルの音響強度、画像若しくはビデオファイルのピクセルカラー及び/又は強度)、特定の化学/有機要素若しくは化合物に関連付けられた情報(例えば、濃度)、金融資産に関連付けられた情報(例えば、特定の証券の価格)又は上述した例から導出される情報を含む任意の他の適したタイプの情報等の特定の環境変数又はパラメータを表し得る。符号付き実数により表される情報は、例えば、機械学習アルゴリズムのトレーニング、予測の実行、データ解析の実行、トラブルシューティングの実行又は単に将来使用するためのデータの収集を含めて多様な理由で有用であり得る。
動作4−154において、実数を表す値は、光場に符号化され得る。幾つかの実施形態では、値を光場に符号化することは、値に基づいて光場の位相及び強度を変調することを含む。その結果、光場の位相及び振幅は、符号化された値を反映する。動作4−154は、幾つかの実施形態では、エンコーダ4−104及び変調器4−106(図4−2Aを参照されたい)を使用して実行され得る。幾つかのそのような実施形態では、値に基づいて位相及び振幅を変調することは、1つの電気変調信号を用いて1つの変調器を駆動することを含む。したがって、1つの変調信号は、光場の位相及び振幅の両方を変調する。再び図4−2Aを参照すると、限定ではなく例として、エンコーダ4−104は、1つの変調信号4−105を使用して光学変調器4−106を駆動し得る。
1つの変調信号が変調器の駆動に使用されることは、変調器が動作する環境を制御する他の制御信号の使用を除外しないことに留意されたい。例えば、1つ又は複数の制御信号は、変調器の温度又は変調器の特定の部分の温度の制御に使用され得る。1つ又は複数の制御信号は、変調器の動作の給電に使用され得る。1つ又は複数の制御信号は、線形領域における変調器のバイアス又は光源の波長(例えば、図4−2Aのλ)に一致するような変調器の波長の設定等の動作の特定のレジームにおいて変調器をバイアスするために使用され得る。
幾つかの実施形態による特定のタイプの変調器を図4−3Aに示す。変調器4−206は、リング共振変調器である。リング変調器は、単に例として本明細書に記載され、先に列記したものを含め、任意の他の適したタイプの変調が代替的に使用可能であることに留意されたい。変調器4−206は、導波路4−208、リング4−210及び位相シフタ4−212を含む。リング4−210は、共振波長を示し、その値は、パラメータの中でも特にリング周縁の長さに依存する。光場ψinが導波路4−208にローンチされると、光場は、リング4−210の共振波長に対するψinの波長に応じてリング4−210に結合されることも又は結合されないこともある。例えば、ψinの波長が共振波長に一致する場合、ψinのエネルギーの少なくとも部分は、エバネッセント結合を介してリング4−210に移動する。リングに移動した力は、完全に散乱するか、又は他の方法で散逸するまでリング内部でいつまでも振動する。これとは対照的に、ψinの波長が共振波長に一致しない場合、ψinは、いかなる有意な減衰もなく導波路4−208を通して進み得る。
したがって、光場は、共振波長に対するψinの波長に応じて変化し得る。より具体的には、光場の位相及び強度は、共振波長に対するψinの波長に応じて変化し得る。図4−3Bは、強度(上部チャート)及び位相(下部チャート)が共振波長に対するψinの波長に応じてどのように変化し得るかを示すプロットである。上部チャートは、ψinが有し得る可能な全ての波長(λ)の関数としての強度スペクトル応答αを示す。下部チャートは、同じ波長の関数としての位相スペクトル応答θを示す。共振周波数において、強度応答は、下落を示し、位相応答は、変曲点を示す。その共振周波数より実質的に低い波長は、低強度減衰(α乃至1)及び低位相変化(θ乃至0)を受ける。その共振周波数より実質的に大きい波長は、低強度減衰(α乃至1)及び符号変化(θ乃至−π)を受ける。共振波長では、ψinの強度は、下落に対応する値だけ減衰され、変曲点の値(すなわち−π/2)に等しい位相シフトを受ける。図4−3Bの例では、ψinの波長(λ)は、共振周波数からわずかにオフセットされる。この場合、ψinの強度は、αV0(ここで、0<αV0<1)だけ減衰し、位相は、θV0(ここで、−π<θV0<−π/2)だけシフトする。
再び図4−3Aを参照すると、ψinの振幅及び位相の変調は、電圧Vを使用して実行され得、この場合、電圧Vは、図4−2Aの変調信号4−105を具現する。電圧Vが位相シフタ4−212に印加されると、位相シフタの屈折率は、変化し、したがって、その結果、リングの周縁の有効長も変化する。また、これは、リングの共振周波数の変動に繋がる。有効周縁長(したがって共振周波数)が変化する程度は、Vの振幅に依存する。
図4−3Bの例では、電圧Vは、ゼロに設定される。図4−3Cの例では、電圧は、Vに設定される。図4−3Cに示されるように、位相シフタ4−212へのVの印加は、波長軸に沿った変調器の強度応答及び位相スペクトル応答をシフトさせる。この場合、応答は、レッドシフト(すなわちより大きい波長に向かうシフト)を示す。結果として、ψinの強度は、ここで、αV1(αV1は、αV0と異なる)だけ減衰し、位相は、θV1(θV1は、θV0と異なる)だけシフトする。
したがって、電圧Vの変更は、ψinの強度及び位相の変化に繋がる。換言すれば、Vは、変調信号と見なすことができる。幾つかの実施形態では、電圧Vは、変調器4−210を駆動する唯一の変調信号であり得る。幾つかの実施形態では、電圧Vは、以下の式V=VDC+V(t)を仮定し得、式中、VDCは、定数であり、V(t)は、符号化する実数に応じて経時変化する。VDCは、共振周波数がψinの波長(λ)の近傍にあるようにリングを予めバイアスし得る。
図4−3Dは、幾つかの実施形態による、変調器4−206を使用して実数がどのように光場の位相及び強度に符号化され得るかの一例を提供する符号化表(例えば、ルックアップテーブル)である。この場合、例として、1に等しい増分を有する−10乃至10の実数が光学ドメインに符号化されると仮定される(「符号化する実数」と記された列を参照されたい)。当然ながら、本明細書に記載される技法を使用して任意の適した組の実数が符号化され得る。「V(印加電圧)」と記された列は、位相シフタ4−212に印加される電圧を示す。「α(振幅変調)」と記された列は、ψinの波長(λ)における強度スペクトル応答の値を示す(図4−3B及び図4−3Cの上部チャートを参照されたい)。「θ(位相変調)」と記された列は、ψinの波長(λ)における位相スペクトル応答の値を示す(図4−3B及び図4−3Cの下部チャートを参照されたい)。この場合、実数「−10」は、特定の電圧Vにマッピングされ、振幅変調α及び位相変調θを生じさせ、実数「−9」は、特定の電圧Vにマッピングされ、振幅変調α及び位相変調θを生じさせる等々である。実数「10」は、特定の電圧Vにマッピングされ、振幅変調α及び位相変調θを生じさせる。したがって、異なる実数は、異なる強度/位相対を用いて符号化される。
図4−3Eは、幾つかの実施形態による、複素平面における図4−3Dの符号化表の視覚的表現を提供する。線4−300に沿った異なる点は、電圧が変わるにつれて、図4−3B及び図4−3Cのスペクトル応答に従った異なる強度/位相対を表す。例えば、シンボルSinは、強度変調α及び位相変調θを特徴とする特定のシンボルを表す。Sinは、図4−3Dの表からの特定の行を表す。表の各行は、線4−300の異なる点にマッピングされる。
再び図4−2Bを参照すると、動作4−156において、変換は、変調器により出力される変調光学信号に適用される。変換は、符号化された実数の処理を望む方法に応じて強度変換及び/又は位相変換を含み得る。幾つかの実施形態では、光学変換ユニット4−108は、変調器4−106により出力される信号の変換に使用され得る。光学変換ユニット4−108は、強度α及び位相θを特徴とするシンボルSinを強度αβ及び位相θ+Δθを特徴とするシンボルSoutに変換するように構成され得る。換言すれば、光学変換ユニット4−108は、強度変調β及び位相シフトΔθを導入する。β及びΔθの値は、使用されている特定の光学変換ユニットに依存する。
例として図4−3Eの入力シンボルSinを考えると、図4−4A乃至図4−4Cは、光学変換ユニットが変換をどのように実行し得るかの例を提供する。図4−4Aの変換は、β<1であり、Δθ=0であるようなものである。すなわち、光学変換ユニットは、減衰を導入するが、入力光場の位相を変更しない。これは、例えば、光ファイバは入力位相を維持するように選択された長さを有する、光学リピータを有さない光ファイバの場合であり得る。結果として、線4−300は、線4−300の圧縮版である線4−401に変換される。出力サンプルSoutは、Sinと同じ位相を有するが、強度がαβに等しい(すなわちβだけ減衰する)。
図4−4Bの変換は、減衰及び位相シフトを導入する。これは、例えば、任意の長さを有する、光学リピータを有さない光ファイバの場合であり得る。結果として、線4−300は、線4−300が圧縮及び回転されたものである線4−402に変換される。出力サンプルSoutは、位相θ+Δθ及び強度αβを有する。
図4−4Cの変換は、マルチモード変換を含む。これは、入力光場が1つ又は複数の他の光場と結合される場合、生じ得る。マルチモード変換を用いる場合、線4−403は、任意の適した様式で再形成することができる。マルチモード変換の例は、光学処理ユニットを含み、その幾つかについて以下に更に詳細に説明する。
再び図4−2Bを参照すると、動作4−158において、コヒーレント受信機は、変換された変調光場を基準光学信号と混合して、電気出力信号を取得し得る。幾つかの実施形態では、混合は、図4−2Aのコヒーレント受信機4−110を使用して実行され得る。基準光学信号は、局部発振器(例えば、図4−2Aの局部発振器4−112)により生成された信号であり得るか、又は光学変換ユニットを通して変調光場と一緒に送信された信号であり得る。混合の効果は、限定ではなく例として図4−5に示される。線4−403(図4−4Cに示される線と同じ線)は、特定のマルチモード変換から生じる可能な全ての強度/位相対を表す。図4−5は、例えば、図1−1のフォトニックプロセッサ1−103を通して光学信号を伝播させる効果を示し得る。
outが特定の時間に変換から生じたシンボルであると考える。上述したように、シンボルSoutは、強度αβ及び位相θ+Δθを特徴とする。変換された場が基準信号と混合される場合、線4−403に沿った点は、基準軸4−500に射影される。したがって、例えば、シンボルSoutは、軸4−500上の点Aに射影される。点Aは、混合から生じた電気出力信号を表し、0とAとの間
Figure 2021523508
の距離に等しい振幅を特徴とする。実数軸に対する軸4−500の角度(すなわち角度φ)が、変換された変調光場に対する基準信号の位相に依存することに留意されたい。この例では、0<φ<π/4である。
再び図4−2Bを参照すると、動作4−160において、デコーダは、動作4−158において取得された電気出力信号に基づいて復号化された実数を表す値を取得し得る。幾つかの実施形態では、光学変換を通して取得されたシンボルを復号化する際、複素平面におけるシンボルの厳密なロケーションは、重要ではないことがある。幾つかの実施形態による正確な復号化に重要なのは、既知の基準軸への光学信号の射影である。換言すれば、線4−403に沿ったシンボルは、シンボルSoutが点Aにマッピングされるのと同様に基準軸に沿った点にマッピングすることができる。したがって、幾つかの実施形態は、基準軸に沿った点が複素平面における特定のシンボルに対応する光学復号化方式を実施する。
基準軸に沿った点が複素平面におけるシンボルにマッピングされる様式は、較正手順を使用して決定され得る。較正手順中、既知の強度及び位相の入力シンボル(実数の組を表すシンボル)の組は、特定の光学変換ユニットを通して渡され、生成されたシンボルは、既知の位相を有する基準信号を使用してコヒーレントに検出される。生成された電気出力信号の振幅(すなわち基準軸に沿った射影の振幅)は、表(例えば、ルックアップテーブル)に記録及び記憶される。表は、続けて、基準軸に沿った射影の振幅に基づいて実数を復号化する動作中に使用され得る。
幾つかの実施形態によるそのような表の一例を図4−6に示す。この表は、基準信号の位相(「基準位相φ」)の列、基準軸に沿った射影の列(「射影
Figure 2021523508
、すなわち電気出力信号の振幅」)及び復号化された実数の列(「復号化された実数」)を含む。表は、1)既知の光学変換ユニットを通して既知の強度及び位相のシンボルを通し、2)基準信号の位相を既知の値に設定し、3)変換されたシンボルを基準信号と混合し、それにより変換されたシンボルを既知の基準軸に射影し、4)基準軸に沿った射影の振幅を特定し、5)予期される出力実数を記録することを含む較正手順中に埋めることができる。動作中、ユーザは、基準位相の値及び測定された射影に基づいて表を使用して、復号化された実数を推測し得る。
図4−6の例では、限定ではなく例として、2つのみの基準位相が考えられる−0及びπ/6。φ=0において、射影−1、−0.8及び1は、それぞれ実数−9.6、0.2及び8.7にマッピングされる。φ=π/6において、射影−0.4、0.6及び0,9は、それぞれ実数3.1、−5及び10にマッピングされる。したがって、例えば、ユーザが−0.4の射影を取得する場合、π/6の基準位相を使用するとき、ユーザは、復号化された実数が3.1であると推測することができる。
図4−7は、幾つかの実施形態による、光学変換ユニットが光ファイバ4−708を含むフォトニックシステム4−700の特定の例を示す。この例は、本明細書に記載されるタイプの符号化技法が光学通信に関連してどのように使用され得るかを示す。この実装形態では、光ファイバ4−708は、受信機4−702から送信機4−701を隔てる。
送信機4−701は、光源4−102、エンコーダ4−104及び光学変調器4−106(図4−2Aに関連して上述)を含み、受信機4−702は、コヒーレント受信機4−110及びデコーダ4−114(これも図4−2Aに関連して上述)を含む。上述したように、幾つかの実施形態では、光学変調器4−106は、1つの変調信号4−105を使用して駆動され得る。幾つかのそのような実施形態では、光学変調器4−106は、オン−オフキーイング(OOK:on−off keying)変調方式を実施し得る。
この実装形態では、コヒーレント検出に使用される基準信号は、受信機4−702においてローカルに生成されるのではなく、送信機4−701から直接提供される(しかし、他の実装形態は、受信機4−702に局部発振器を含み得る)ことに留意されたい。この概念を示すために、例えば図4−8のプロットを考える。図4−8は、送信機4−701の出力における光場の電力スペクトル密度の一例を示す。示されるように、電力スペクトル密度は、信号4−800及び搬送波4−801を含む。信号4−800は、変調器4−106を使用して符号化された情報を表す。搬送波4−801は、光源4−102の波長(λ)におけるトーンを表す。光ファイバ4−708を通してこの光場を送信すると、コヒーレント受信機4−110は、基準信号として搬送波4−801自体を使用して混合を実行し得る。
幾つかの実施形態は、本明細書に記載されるタイプのフォトニックシステムを製造する方法に関連する。幾つかの実施形態による1つのそのような方法は、図4−9に示される。方法4−900は、変調器が製造される動作4−902において開始される。変調器は、1つの電気変調信号を用いて駆動されるように製造され得る。変調器の一例は、変調器4−106(図4−2A)である。動作4−904において、コヒーレント受信機が製造される。幾つかの実施形態では、コヒーレント受信機は、変調器が製造された基板と同じ半導体基板に製造される。動作4−906において、光学変換ユニットが製造される。光学変換ユニットは、コヒーレント受信機が製造された基板と同じ基板及び/又は変調器が製造された基板と同じ半導体基板に製造され得る。光学変換ユニットは、変調器とコヒーレント受信機との間に結合されて製造され得る。光学変換ユニットの一例は、光学変換ユニット4−108(図4−2A)である。
V.差分受信機
本発明者らは、幾つかの従来の光学受信機が、電圧源から生成されるノイズ、光検出器が必然的に暗電流を生成することから生じるノイズ及び他の形態のノイズの影響を特に受けやすいことを認識及び理解した。ノイズの存在は、信号対雑音比、したがって入力光学信号を正確に検知するこれらの光検出器の能力を低減する。これは、これらの光検出器が展開されるシステムの性能に悪影響を及ぼし得る。例えば、これは、システムのビットエラーレート及び電力予算に悪影響を及ぼし得る。
本発明者らは、ノイズからの影響の受けやすさを低減した光学受信機を開発した。本願の幾つかの実施形態は、光/電気変換及び増幅の両方が差分的に実行される光学受信機に関する。本明細書に記載される光学受信機では、2つの別個の信号の減算が行われる。まず、光電流が互いから減算されて、差分電流の対を生成する。次に、生成された差分電流は、互いから更に減算されて、増幅された差分出力を生成する。本発明者らは、複数のレベルの信号減算を含む光学受信機を有することが複数のレベルのノイズ相殺に繋がり、したがってシステムからのノイズを実質的に低減することを認識及び理解した。これには、より広いダイナミックレンジ、より大きい信号対雑音比、より大きい出力振幅及び増大した電源ノイズ耐性を含め、従来の光学受信機よりも優れた幾つかの利点があり得る。
本明細書に記載されるタイプの光学受信機は、例えば、電気通信及びデータ通信(ローカルエリアネットワーク、大都市圏ネットワーク、広域ネットワーク、データセンタネットワーク、衛星ネットワーク等を含む)、光ファイバ無線等のアナログ用途、全光スイッチ、ライダー、フェーズドアレイ、コヒーレント撮像、機械学習、他のタイプの人工知能用途及び他の用途を含めて多様な設定で使用することができる。幾つかの実施形態では、本明細書に記載されるタイプの光学受信機は、フォトニック処理システムの一部として使用され得る。例えば、幾つかの実施形態では、本明細書に記載されるタイプの光学受信機は、図1−1の光学受信機1−105(例えば、図1−9の1つ又は複数のホモダイン受信機1−901)を実施するために使用され得る。
図5−1は、本願の幾つかの非限定的な実施形態による光学受信機5−100の非限定的な例を示す。示されるように、光学受信機5−100は、光検出器5−102、5−104、5−106及び5−108を含むが、他の実装形態は、5つ以上の光検出器を含む。光検出器5−102は、光検出器5−104に接続され得、光検出器5−106は、光検出器5−108に接続され得る。幾つかの実施形態では、光検出器5−102のアノードは、光検出器5−104のカソードに接続され(ノード5−103において)、光検出器5−106のカソードは、光検出器5−108のアノードに接続される(ノード5−105において)。図5−1の例では、光検出器5−102及び5−108のカソードは、電源VDDに接続され、光検出器5−104及び5−106のアノードは、基準電位(例えば、接地)に接続される。幾つかの実施形態では、逆の構成も可能である。基準電位は、ゼロに等しい電位であり得るか、又は−VDD等の任意の適した値を有し得る。VDDは、任意の適した値を有し得る。
光検出器5−102乃至5−108は、例えば、PN接合フォトダイオード、PIN接合フォトダイオード、アバランシェフォトダイオード、フォトトランジスタ、光抵抗器等を含め、任意の多くの方法で実施され得る。光検出器は、関心のある波長の光を吸収することが可能な材料を含み得る。例えば、O帯、C帯又はL帯の波長において、光検出器は、非限定的な例として、少なくとも部分的にゲルマニウムで作られた吸収領域を有し得る。可視光の場合、光検出器は、別の非限定的な例として、少なくとも部分的にシリコンで作られた吸収領域を有し得る。
光検出器5−102乃至5−108は、同じ基板の部分としてモノリシックに形成された集積構成要素であり得る。幾つかの実施形態では、基板は、バルクシリコン基板又はシリコンオンインシュレータ等のシリコン基板であり得る。例えば、リン化インジウム又は任意の適した半導体材料を含め、他のタイプの基板を使用することも可能である。製造許容差に起因した光検出器の特性のばらつきを低減するために、幾つかの実施形態では、光検出器は、互いの近傍に位置決めされ得る。例えば、光検出器は、基板の1mm以下、0.1mm以下又は0.01mm以下の面積内に位置決めされ得る。
図5−1に更に示されるように、光検出器5−102乃至5−108は、差分演算増幅器5−110に接続される。例えば、光検出器5−102及び5−104は、DOA5−110の非反転入力(「+」)に接続され得、光検出器5−106及び5−108は、DOA5−110の反転入力(「−」)に接続され得る。DOA5−110は、出力の対を有する。一方の出力は、反転であり、他方の出力は、非反転である。
幾つかの実施形態では、図5−2に関連して詳述するように、光検出器5−102及び5−106は、同じ光学信号「t」を受信するように構成され得、光検出器5−104及び5−108は、同じ光学信号「b」を受信するように構成され得る。幾つかの実施形態では、光検出器5−102乃至5−108は、互いに実質的に等しいように設計され得る。例えば、光検出器5−102乃至5−108は、同じプロセスステップ及び同じフォトマスクパターンを使用して形成され得る。これらの実施形態では、光検出器5−102乃至5−108は、実質的に同じ応答性(光電流と受信光学電力との比率)及び/又は実質的に同じ暗電流(光学電力が受信されないときに生成される電流)等の実質的に同じ特性を示し得る。これらの実施形態では、信号tの受信に応答して光検出器5−102及び5−106により生成される光電流は、互いに実質的に等しい値であり得る。そのような光電流は、図5−1において「i」として識別される。光検出器5−102及び5−106の向きに起因して、光検出器5−102及び5−106により生成された光電流は、逆方向に向けられることに留意されたい。すなわち、光検出器5−102の光電流は、ノード5−103に向けられ、光検出器5−106の光電流は、ノード5−105から逆に向けられる。更に、信号bの受信に応答して光検出器5−104及び5−108により生成される光電流は、互いに実質的に等しい値であり得る。そのような光電流は、「i」として識別される。光検出器5−104及び5−108の互いに対する向きに起因して、光検出器5−104及び5−108により生成される光電流は、逆方向に向けられる。すなわち、光検出器5−108の光電流は、ノード5−105に向けられ、光検出器5−104の光電流は、ノード5−103の逆に向けられる。
光検出器の向きに鑑みて、振幅i−iを有する電流は、ノード5−103から現れ、振幅i−iを有する電流は、ノード5−105から現れる。したがって、電流は、実質的に同じ振幅を有するが、逆の符号を有する。
光検出器5−102乃至5−108は、暗電流を生成し得る。暗電流は、通常、漏出に起因し、光検出器が光に露出されているか否かに関係なく、光検出器から生じる。暗電流は、入力光学信号がない場合でも生じるため、光学受信機におけるノイズに実質的に寄与する。本発明者らは、これらの暗電流の悪影響が、上述した電流減算により有意に減衰できることを理解した。したがって、図5−1の例では、光検出器5−102の暗電流及び光検出器5−104の暗電流は、互いに実質的に相殺され(又は少なくとも相互に実質的に低減され)、光検出器5−106及び5−108の暗電流も同じである。したがって、暗電流の存在に起因するノイズは、大幅に減衰する。
図5−2は、幾つかの非限定的な実施形態による、光検出器5−102乃至5−108に2つの光学信号を提供するように構成されたフォトニック回路5−200を示す。フォトニック回路5−200は、光学信号を光検出器にルーティングする光学導波路を備え得る。光学導波路は、関心のある波長の光を透過又は少なくとも部分的に透過する材料で作られ得る。例えば、光学導波路は、シリコン、酸化シリコン、窒化シリコン、リン化インジウム、ガリウムヒ素又は任意の他の適した材料で作られ得る。図5−2の例では、フォトニック回路5−200は、入力光学導波路5−202及び204並びに結合器5−212、5−214及び5−216を含む。更に示されるように、フォトニック回路5−200の出力光学導波路は、光検出器5−102乃至5−108に結合される。
図5−2の例では、結合器5−212、5−214及び5−216は、方向性結合器を含み、エバネッセント結合は、隣接する導波路間の光学電力の転送を可能にする。しかしながら、Y接合、X接合、光学クロスオーバ、逆方向結合器等の他のタイプの結合器も使用可能である。他の実施形態では、フォトニック回路5−200は、マルチモード干渉計(MMI)を用いて実施され得る。結合器5−212、5−214及び5−216は、幾つかの実施形態では、3dB結合器(50%−50%結合比を有する)であり得るが、51%−49%、55%−45%又は60%−40%等の他の比も可能である。製造許容差に起因して、実際の結合比は、意図される結合比からわずかにずれ得ることを理解されたい。
信号sは、入力光学導波路5−202に提供され得、信号sは、入力光学導波路204に提供され得る。信号s及びsは、例えば、光ファイバを使用して各入力光学導波路に提供され得る。幾つかの実施形態では、sは、基準レーザにより生成される信号等の基準局部発振器信号を表し、sは、検出される信号を表す。したがって、光学受信機は、ホモダイン光学受信機として見なすことができる。幾つかのそのような実施形態では、sは、連続波(CW:continuous wave)光学信号であり得る一方、sは、変調され得る。他の実施形態では、両方の信号は、変調されるか、又は両方の信号は、CW光学信号であり、用途は、いかなる特定のタイプの信号にも限定されない。
図5−2の例では、信号sは、振幅ALO及び位相
Figure 2021523508
を有し、信号sは、振幅A及び位相φを有する。結合器5−212は、信号t及びbが結合器5−212の各出力に現れるように信号s及びsを結合する。結合器5−212が3dB結合器である実施形態では、t及びbは、以下の式:
Figure 2021523508
により与えられ得、電力T及びB(それぞれt及びbの)は、以下の式:
Figure 2021523508
により与えられ得る。
したがって、結合器5−214及び5−216が3dB結合器である実施形態では、光検出器5−102及び5−106は、それぞれT/2により与えられる電力を受信し得、光検出器5−104及び5−108は、それぞれB/2により与えられる電力を受信し得る。
再び図5−1を参照して、光検出器5−102乃至5−108の応答性が全て互いに等しい(全ての実施形態がこの点において限定されるわけではない)と仮定すると、ノード5−103及び5−105から現れる電流は、それぞれ以下の式:
Figure 2021523508
により与えられ得る。
DOA5−110は、「+」及び「−」入力において受信した差分信号を増幅し、電圧Vout,n及びVout,pにより図5−1に表される増幅された差分出力を生成するように構成される。幾つかの実施形態では、DOA5−110は、インピーダンスzと組み合わせて、電流の差分対(i−i,i−i)に基づいて電圧の差分対(Vout,n,Vout,p)を生成するという点で差分トランスインピーダンス増幅器と見なすことができる。幾つかの実施形態では、Vout,n、Vout,pの各々は、電流i−iと電流i−iとの間の差分に比例し得、したがって、以下の式:
out,p=2z(i−i
out,n=2z(i−i
を生じさせる。
電圧のこの差分対は、限定ではなく、アナログ−デジタル変換器(図5−1に示されず)を含む任意の適した電子回路に入力として提供され得る。光学受信機5−100は、2レベルのノイズ拒絶を提供することに留意されたい。第1のレベルのノイズ拒絶は、光電流の減算により生じ、第2のレベルのノイズ拒絶は、差分増幅段階で行われる減算により生じる。これは、ノイズ拒絶の有意な増大を生じさせる。
図5−1の例では、インピーダンスzは、互いに等しいものとして示されているが、他の実施形態では異なるインピーダンスが使用され得る。これらのインピーダンスは、抵抗器、キャパシタ及びインダクタ等の受動電気構成要素並びに/又はダイオード及びトランジスタ等の能動電子構成要素を含み得る。これらのインピーダンスを構成する構成要素は、可能な特性の中でも特に、所望の利得及び帯域幅を提供するように選択され得る。
上述したように、光学受信機5−100は、基板にモノリシックに集積され得る。幾つかの非限定的な実施形態による1つのそのような基板は、図5−3Aに示される。この例では、光検出器5−102乃至5−108、フォトニック回路5−200及びDOA5−110は、基板5−301の部分としてモノリシックに集積される。他の実施形態では、光検出器5−102乃至5−108及びフォトニック回路5−200は、基板5−301に集積され得、DOA5−110は、別個の基板5−302に集積され得る。図5−3Bの例では、基板5−301及び5−302は、互いにフリップチップ接合される。図5−3Cの例では、基板5−301及び5−302は、互いにワイヤ接合される。更に別の例(図示せず)では、光検出器5−102乃至5−108及びフォトニック回路5−200は、別個の基板に製造され得る。
本願の幾つかの実施形態は、光学受信機を製造する方法に関する。幾つかの非限定的な例による1つのそのような方法は、図5−4に示される。方法5−400は、複数の光検出器が第1の基板に製造される動作5−402において開始される。
製造されると、光検出器は、例えば、図5−1に示される構成で一緒に接続され得る。幾つかの実施形態では、光検出器は、第1の基板の1mm以下、0.1mm以下又は0.01mm以下の面積内に位置決めされ得る。動作5−404において、フォトニック回路は、第1の基板に製造される。フォトニック回路は、例えば、図5−2に示されるように、光学信号の対を光検出器に提供するように構成され得る。動作5−406において、差分演算増幅器は、第2の基板に製造され得る。差分演算増幅器の一例は、図5−1のDOA5−110である。動作5−408において、第1の基板は、例えば、フリップチップ接合(図5−3Aに示されるように)を介して、ワイヤ接合(図5−3Bに示されるように)を介して又は任意の他の適した接合技法を使用して第2の基板に接合され得る。基板が接合されると、第1の基板の光検出器は、例えば、図5−1に示されるように第2の基板の差分演算増幅器に電気的に接続され得る。
幾つかの実施形態による製造プロセスの例は、図5−4A乃至図5−4Fに概略的に示される。図5−4Aは、下部クラッド5−412(例えば、埋込酸化層又は他のタイプの誘電材料等の酸化層)と、半導体層5−413(例えば、シリコン層、窒化シリコン層又は他のタイプの材料層)とを有する基板5−301を示す。図5−4Bにおいて、半導体層5−413は、例えば、フォトリソグラフィ露光を使用してパターニングされて、領域5−414を形成する。領域5−414は、幾つかの実施形態では、光学導波路を形成するように構成され得る。幾つかの実施形態では、生成されたパターンは、フォトニック回路5−200(図5−2)に類似し、導波路5−202及び204並びに結合器5−212、5−214及び5−216は、1つ又は複数の領域5−414内に埋め込まれる。図5−4Cにおいて、光検出器5−102、5−104及び5−108(及び任意選択的に他の光検出器)が形成される。この例では、光学吸収材料5−416が領域5−414に隣接して堆積する。光学吸収材料5−416は、光検出器を形成するようにパターニングされ得る。光学吸収材料に使用される材料は、検出される波長に依存し得る。例えば、ゲルマニウムは、L帯、C帯又はO帯の波長に使用され得る。シリコンは、可視波長に使用され得る。当然ながら、他の材料も可能である。光学吸収材料5−416は、限定ではなく、バット結合、テーパ結合及びエバネッセント結合を含め、任意の適した方法で領域5−414に光学的に結合されて位置決めされ得る。
図5−4Dにおいて、DOA5−110が形成される。幾つかの実施形態では、DOA5−110は、イオン注入を介して形成された幾つかのトランジスタを含む。図5−4Dは、注入された領域5−418を示し、注入された領域5−418は、DOA5−110の1つ又は複数のトランジスタの部分を形成し得る。図5−4Dには1つのイオン注入のみが示されているが、幾つかの実施形態では、DOA5−110の形成は、2つ以上のイオン注入を含み得る。更に、DOA5−110は、例えば、基板5−301に形成された1つ又は複数の導電性トレースを介して光検出器に電気的に接続され得る。
図5−4Dの構成は、フォトニック回路5−200、光検出器5−102乃至5−108及びDOA5−110が共通の基板に形成される(図5−3Aに示されるように)ようなものである。DOA5−110が別個の基板に形成される(図5−3B又は図5−3Cに示されるように)構成も可能である。1つのそのような例では、図5−4Eに示されるように、DOA5−110は、別個の基板5−302に形成され、注入領域5−428は、1つ又は複数のイオン注入を介して形成される。
続けて、基板5−301は、基板5−302に接合され、光検出器5−102乃至5−108は、DOA5−110に接続される。図5−4Fにおいて、導電性パッド5−431が形成され、光学吸収材料5−416と電気通信して配置され、導電性パッド5−432が形成され、注入領域5−428と電気通信して配置される。導電性パッドは、ワイヤ接合(図5−4Fに示されるように)又はフリップチップ接合を介して電気的に接続される。
幾つかの実施形態は、入力光学信号を受信する方法に関する。幾つかのそのような実施形態は、ホモダイン検出を含み得るが、用途は、この点に関して限定されない。他の実施形態は、ヘテロダイン検出を含み得る。更に他の実施形態は、直接検出を含み得る。幾つかの実施形態では、光学信号の受信は、光学受信機5−100(図5−1)を含み得るが、他のタイプの受信機を使用することも可能である。
幾つかの実施形態による入力光学信号を受信する方法の一例は、図5−5に示される。方法5−500は、入力信号が基準信号と結合されて、第1及び第2の光学信号を取得する動作5−502において開始される。入力信号には、例えば、変調タイプの中でも特に、振幅変調、パルス幅変調、位相又は周波数変調の形態でデータが符号化され得る。ホモダイン検出を含む実施形態の幾つかでは、基準信号は、局部発振器(例えば、レーザ)により生成された信号であり得る。他の実施形態では、基準信号にデータを符号化することもできる。幾つかの実施形態では、入力信号及び基準信号は、フォトニック回路5−200(図5−2)を使用して結合されるが、限定ではなく、MMI、Y接合、X接合、光学クロスオーバ及び逆方向結合器を含め、他のタイプの光学結合器が使用され得る。フォトニック回路5−200が使用される実施形態では、t及びbは、入力信号と基準信号との結合から取得される信号を表し得る。
動作5−504において、第1の光学信号は、第1の光検出器及び第2の光検出器を用いて検出され、第2の光学信号は、第3の光検出器及び第4の光検出器を用いて検出されて、差分電流の対を生成する。幾つかの実施形態では、動作5−504は、光学受信機5−100(図5−1)を使用して実行し得る。幾つかのそのような実施形態では、第1の光学信号は、光検出器5−102及び5−106を用いて検出され、第2の光学信号は、光検出器5−104及び5−108を用いて検出される。生成された差分電流対は、まとめて電流i−i及びi−iで表される。差分であるため、幾つかの実施形態では、対の電流は、実質的に等しい振幅を有し得るが、実質的に逆の位相を有し得る(例えば、π位相差を有する)。
動作5−506において、差分演算増幅器(例えば、図5−1のDOA5−110)は、動作5−504において生成された差分電流対を使用して、増幅された差分電圧の対を生成する。DOA5−110を使用する実施形態では、生成された差分電圧対は、電圧Vout,n及びVout,pで表される。差分であるため、幾つかの実施形態では、電圧対は、実質的に等しい振幅を有し得るが、実質的に逆の位相を有し得る(例えば、π位相差を有する)。
方法5−500は、例えば、より広いダイナミックレンジ、より大きい信号対雑音比、より大きい出力振幅及び増大した電源ノイズ耐性を含め、光学信号を受信する従来の方法よりも優れた1つ又は複数の利点を有し得る。
VI.位相変調器
本発明者らは、特定の光学位相変調器が、展開することができる用途の範囲を大幅に制限する高い動的損失及び低変調速度という問題を有することを認識及び理解した。より具体的には、幾つかの位相変調器は、変調速度と動的損失との間において、変調速度を上げると動的損失が上がるような大きいトレードオフを含む。本明細書で使用される場合、「動的損失」という句は、位相が変調される程度に依存する光学信号が受ける光学電力損失を指す。理想的な位相変調器は、電力損失が位相変調から独立するようなものである。しかしながら、現実世界の位相変調器は、変調が行われないとき、特定の電力損失を受け、変調が行われるとき、異なる電力損失を受ける。例えば、位相変調がないときに受ける電力損失は、Lであり得、π/2位相変調のときに受ける電力損失は、Lであり、π位相変調のときに受ける電力損失は、Lであり、L、L及びLは、互いに異なる。位相変調に加えて、信号は、振幅変調を更に受けるため、この挙動は、望ましくない。
幾つかのそのような位相変調器は、加えて、十分に大きい位相シフトを提供するために、数百μmの長さを必要とする。残念ながら、そのように長いことにより、そのような位相変調器は、幾つかの位相シフタを1つのチップに集積する必要がある用途での使用に適さない。位相変調器のみでチップの利用可能なスペースの大半を占め、したがって同じチップに共に集積することができるデバイスの数を制限する。
特定の位相変調器の上述した制限を認識して、本発明者らは、動的損失を制限しながら高変調速度(例えば、6乃至100MHz又は1GHz超)を提供することが可能な小フットプリント光学位相変調器を開発した。幾つかの実施形態では、位相変調器が占める面積は、わずか300μmであり得る。したがって、一例として、1cmの面積を有するレチクルは、50mmを他のデバイスのために保存しながら、15,000個もの位相変調器を収容することができる。
幾つかの実施形態は、互いに隣接して位置決めされ、間に複数のスロットを形成する複数の懸架された光学導波路を有するナノオプトエレクトロメカニカルシステム(NOEMS)位相変調器に関する。スロットの寸法は、スロット導波路を形成するのに十分に小さく、それにより、モードエネルギーの大部分(例えば、大半)は、スロット自体内に閉じ込められる。本明細書では、これらのモードは、スロットモードと呼ばれる。モードエネルギーの大部分をスロット内に有することで、スロットの寸法を変動させることにより、モードの実効屈折率の変調及び結果としてモードを利用した光学信号の位相の変調が可能になる。幾つかの実施形態では、位相変調は、スロットの寸法を変動させる機械的力を付与することにより達成することができる。
本発明者らは、本明細書に記載されるNOEMS位相変調器を用いて達成可能な変調速度が、動的損失を有意に増大させずに、光学変調が行われる領域から機械的駆動装置を切り離すことにより増大させ得ることを認識及び理解した。機械的駆動装置が光学変調領域から切り離れた位相変調器では、電気駆動信号は、光学変調領域自体に印加されるのではなく、機械的駆動装置に印加される。この構成は、光学変調領域を導電性にする必要性をなくし、したがってこの領域のドープを低減できるようにする。低ドープは、通常であれば光学吸収に繋がり得る自由キャリアを低減させ、したがって動的損失を下げる。
更に、機械的駆動装置を光学変調領域から切り離すことは、単位長当たりでより大きい変調を可能にし、その結果、より短い変調領域を可能にする。また、より短い変調領域は、より高い変調速度を可能にする。
本発明者らは、変調領域に複数のスロットを含めることにより、位相変調器の長さの更なる短縮(それによりサイズの低減)を可能にし得ることを更に認識及び理解した。2つ以上のスロットを有することは、実際に、光が変調領域に結合される遷移領域の長さの有意な短縮を可能にする。結果として、はるかにコンパクトなフォームファクタになる。したがって、本明細書に記載されるタイプのNOEMS位相変調器は、より短い変調領域及び/又はより短い遷移領域を有することができる。本明細書に記載されるタイプの位相変調器は、幾つかの実施形態では、20μm又は30μmという短い長さを有することができる。
以下に更に詳述するように、幾つかの実施形態は、トレンチがチップに形成され、変調導波路が空中に懸架され、空間中を自在に移動可能なように構成される位相変調器に関する。
本発明者らは、クラッド/空気界面の形成から生じるトレンチの使用に関連する潜在的な欠点を認識した。伝播している光学信号は、トレンチに入る(又は出る)際、クラッド/エアインターフェース(又はエア/クラッド界面)に直面する。残念ながら、境界の存在は、光学反射を生じさせ得、光学反射は、挿入損失を増大させ得る。本発明者らは、そのような境界の悪影響が、境界を通る領域における光学モードの物理的広がりを低減することにより軽減できることを理解した。これは、種々の方法で達成することができる。例えば、幾つかの実施形態では、光学モードの広がりは、モードをリブ導波路内に密に閉じ込めることにより低減され得る。リブ導波路は、モードエネルギーの小さい割合のみ(例えば、20%未満、10%未満又は5%未満)が導波路の縁部外にあるようなサイズであり得る。
本明細書に記載されるタイプのNOEMS位相変調器は、例えば、電気通信及びデータ通信(ローカルエリアネットワーク、大都市圏ネットワーク、広域ネットワーク、データセンタネットワーク、衛星ネットワーク等を含む)、光ファイバ無線等のアナログ用途、全光スイッチ、ライダー、フェーズドアレイ、コヒーレント撮像、機械学習、他のタイプの人工知能用途を含めて多様な用途で使用され得る。更に、NOEMS変調器は、例えば、マッハツェンダー変調器と組み合わされる場合、振幅変調器の部分として使用され得る。例えば、NOEMS位相変調器がマッハツェンダー変調器のアームの1つ又は複数に位置決めされたマッハツェンダー変調器が提供され得る。例えば、振幅シフトキーイング(ASK:amplitude shift keying)、直交振幅変調(QAM:quadrature amplitude modulation)、位相シフトキーイング(BPSK:phase shift keying)、直交位相シフトキーイング(QPSK:quadrature phase shift keying)及び高次QPSK、オフセット直交位相シフトキーイング(OQPSK:offset quadrature phase−shift keying)、二重偏波直交シフトキーイング(DPQPSK:Dual−polarization quadrature phase shift keying)、振幅位相シフトキーイング(APSK:amplitude phase shift keying)等を含め、幾つかの変調方式は、NOEMS位相変調器を使用して可能になり得る。更に、NOEMS位相変調器は、光学信号の位相が予測不可能なようにドリフトする傾向がある用途での位相補正器として使用され得る。幾つかの実施形態では、本明細書に記載されるタイプのNOEMS位相変調器は、フォトニック処理システムの一部として使用され得る。例えば、幾つかの実施形態では、本明細書に記載されるタイプのNOEMS位相変調器は、図1−1の位相変調器1−207の実施、図104の可変ビームスプリッタ1−401の部分の実施、図1−5の位相シフタ1−505、1−507及び1−509の実施、図1−6の位相変調器1−601の実施、図1−6の振幅変調器1−603の部分の実施及び/又は図1−2の振幅変調器1−205の部分の実施に使用され得る。
図6−1Aは、幾つかの非限定的な実施形態によるナノオプトエレクトロメカニカルシステム(NOEMS)位相変調器を概略的に示す上面図である。NOEMS位相変調器6−100は、入力導波路6−102、出力導波路6−104、入力遷移領域6−140、出力遷移領域6−150、懸架されたマルチスロット光学構造6−120、機械的構造6−130及び6−132並びに機械的駆動装置6−160及び6−162を含む。NOEMS位相変調器6−100は、シリコンフォトニック技法を使用して製造され得る。例えば、NOEMS位相変調器6−100は、バルクシリコン基板又はシリコンオンインシュレータ(SOI:silicon−on−insulator)基板等のシリコン基板に製造され得る。幾つかの実施形態では、NOEMS位相変調器6−100は、機械的駆動装置6−160及び6−162の動作を制御するように構成された電子回路を更に含み得る。電子回路は、図6−1Aの構成要素をホストする基板と同じ基板又は別個の基板に製造され得る。別個の基板に配置される場合、基板は、3D接合、フリップチップ接合、ワイヤ接合等を含め、任意の適した方法で互いに接合され得る。
NOEMS位相変調器6−100の少なくとも部分は、トレンチ6−106に形成される。以下に更に詳述するように、本明細書に記載されるタイプのトレンチは、クラッドの一部をエッチングすることにより形成され得る。図6−1Aの例では、トレンチ6−106は、矩形であるが、任意の他の適した形状のトレンチが使用され得る。この例では、トレンチ6−106は、4つの側壁を有する。側壁6−112及び6−114は、z軸(本明細書では伝播軸と呼ばれる)に沿って互いから離間され、他の2つの側壁(図6−1Aには記されず)は、x軸に沿って互いから離間される。
幾つかの実施形態では、側壁6−112及び6−114間のz軸に沿った隔たりは、50μm以下、30μm以下又は20μm以下であり得る。したがって、NOEMS位相変調器の変調領域は、光学信号の位相の変調に数百μmを必要とする他のタイプの位相変調器よりもはるかに短い。比較的短い長さは、以下の要因の1つ又は複数により可能になる。第1に、複数のスロットを有することは、光学変調領域への結合を改善し、且つ遷移領域の長さの低減を可能にする。改善された結合は、マルチスロット構造の強化モード対称性の結果であり得る。第2に、光学変調領域からの機械的駆動装置の切り離しは、単位長さ当たりでより大きい変調を可能にし、その結果、変調領域が短くなる。
演算中、光学信号は、入力導波路6−102に提供され得る。一例では、光学信号は、連続波(CW)信号であり得る。位相変調は、懸架されたマルチスロット光学構造6−120において行われ得る。位相変調された光学信号は、出力導波路6−104からNOEMS位相変調器6−100から出ることができる。遷移領域6−140は、入力導波路6−102と、懸架されたマルチスロット光学構造6−120との間の損失なし又は略損失なし光学結合を保証し得る。同様に、遷移領域6−150は、懸架されたマルチスロット光学構造6−120と出力導波路6−104との間の損失なし又は略損失なし光学結合を保証し得る。遷移領域6−140及び6−150は、幾つかの実施形態では、以下に更に詳述するように、テーパ形導波路を含み得る。上述したように、遷移領域の長さは、他の実装形態と比べて短い長さであり得る。
入力光学信号は、限定ではなく、O帯、E帯、S帯、C帯又はL帯の波長を含め、任意の適した波長を有し得る。代替的に、波長は、850nm帯又は可視帯にあり得る。材料が関心のある波長を透過又は少なくとも部分的に透過し、コア領域の屈折率が周囲クラッドの屈折率よりも大きい限り、NOEMS位相変調器6−100は、任意の適した材料で作られ得ることを理解されたい。幾つかの実施形態では、NOEMS位相変調器6−100は、シリコンで作られ得る。例えば、入力導波路6−102、出力導波路6−104、入力遷移領域6−140、出力遷移領域6−150、懸架されたマルチスロット光学構造6−120並びに機械的構造6−130及び6−132は、シリコンで作られ得る。シリコンの比較的低い光学バンドギャップ(概ね1.12eV)を所与として、シリコンは、近赤外線波長との併用に特に適し得る。別の例では、NOEMS位相変調器6−100は、窒化シリコン又はダイヤモンドで作られ得る。窒化シリコン及びダイヤモンドの比較的高い光学バンドギャップ(それぞれ概ね5eV及び概ね5.47eV)を所与として、これらの材料は、可視波長との併用に特に適し得る。しかしながら、リン化インジウム、ガリウムヒ素及び又は任意の適したIII−V又はII−VI合金を含め、他の材料も可能である。
幾つかの実施形態では、入力導波路6−102及び出力導波路6−104は、動作波長において1つのモードをサポートするようなサイズであり得る(しかし、マルチモード導波路を使用することもできる)。例えば、NOEMS位相変調器が1550nmで動作するように設計される場合(しかし、当然ながら、全ての実施形態がこれに関して限定されるわけではない)、入力導波路6−102及び出力導波路6−104は、1550nmにおいて1つのモードをサポートし得る。このようにして、導波路内のモード閉じ込めが強化され得、したがって散乱及び反射に起因した光学損失が低減する。導波路6−102及び6−104は、リブ導波路(例えば、矩形断面を有する)であり得るか、又は任意の他の適した形状を有し得る。
上述したように、NOEMS位相変調器6−100の部分は、変調領域における導波路が空気で囲まれ、空間を自在に移動可能であるようにトレンチ6−106内に形成し得る。トレンチを含むことの欠点は、伝播路に沿ってクラッド/空気界面及び空気/クラッド界面が形成されることである。したがって、入力光学信号は、変調が行われる領域に達する前にクラッド/空気界面(側壁6−112に対応する)を通り、変調領域後に空気/クラッド界面(側壁6−114に対応する)を通る。これらの境界は、反射損失を導入し得る。幾つかの実施形態では、反射損失は、遷移領域6−140をトレンチ6−106の外部(図6−1Aに示されるように)ではなく、内部に位置決めすることにより低減され得る。このようにして、遷移領域に関連するモード拡張は、光学信号がクラッド/空気界面を既に過ぎた場所で行われる。換言すれば、モードは、クラッド/空気界面を通過する際、密に閉じ込められるが、懸架されたマルチスロット構造6−120に結合するために、遷移領域を使用してトレンチにおいて拡張する。同様に、遷移領域6−150もトレンチ6−106内部に形成され得、それにより側壁6−114に達する前にモードを空間的に再び閉じ込め得る。
図6−1Bは、幾つかの非限定的な実施形態による懸架されたマルチスロット光学構造6−120を更に詳細に示す。図6−1Bの例では、マルチスロット光学構造6−120は、3つの導波路(6−121、6−122及び6−123)を含む。スロット6−124は、導波路6−121を導波路6−122から分離し、スロット6−125は、導波路6−122を導波路6−123から分離する。スロットの幅(d及びd)は、スロットモードを形成する臨界幅(動作波長における)未満であり得、それにより、モードエネルギーの大部分(例えば、40%超、50%超、60%超又は75%超)は、スロット内にある。例えば、d及びdの各々は、200nm以下、6−150nm以下又は6−100nm以下であり得る。最小幅は、フォトリソグラフィ分解能により設定され得る。
図6−1Cは、幾つかの非限定的な実施形態による、導波路6−121、6−122及び6−123によりサポートされる光学モードの一例を示すプロットである。より具体的には、プロットは、モードの振幅(例えば、電場E、E若しくはE又は磁場H、H若しくはH)を示す。示されるように、全体エネルギーの大部分は、スロット内に閉じ込められ、スロットにおいて、モードは、振幅ピークを示す。幾つかの実施形態では、個々の導波路の任意の1つよりもスロットの1つ内により多くの光学エネルギーがある。幾つかの実施形態では、一緒に考慮される全ての導波路内よりもスロットの1つ内により多くの光学エネルギーがある。外部導波路の外壁外では、モードエネルギーは、減衰する(例えば、指数的に)。
幅d及びdは、互いに等しいか又は異なり得る。スロット及び導波路の幅は、z軸に沿って一定であり得る(図6−1Bでのように)か又は変化し得る。幾つかの実施形態では、導波路6−121、6−122及び6−123の幅は、入力導波路6−102の幅未満であり得る。幾つかの実施形態では、動作波長がC帯内にある場合、導波路6−121、6−122及び6−123の幅は、200nm乃至400nm、250nm乃至350nm又はそのような範囲内であるか若しくは範囲外であるかに関係なく、任意の他の適した範囲内であり得る。
図6−1Bの例は、3つの導波路及び2つのスロットを有する懸架されたマルチスロット光学構造6−120を示すが、任意の他の適した数の導波路及びスロットが使用可能である。他の例では、懸架されたマルチスロット光学構造6−120は、5つの導波路及び4つのスロット、7つの導波路及び6つのスロット、9つの導波路及び8つのスロット等を含み得る。幾つかの実施形態では、構造は、非対称モードが励起されないままで、対称モードのみが励起されるように奇数の導波路(したがって偶数のスロット)を含む。本発明者らは、モードの対称性の強化がスロット付き構造への結合を強化し、したがっ、遷移領域の長さの有意な低減を可能にすることを理解した。しかしながら、偶数の導波路を有する実装形態も可能である。
以下に更に詳述するように、位相変調は、外部導波路(図6−1Bにおける6−121及び6−123)をx軸に沿って中心導波路(図6−1Bにおける6−122)に相対して移動させることにより行われる。導波路6−121が導波路6−122に相対してx軸に移動する場合、スロット6−124の幅が変化し、それに従って構造によりサポートされるモードの形状も変化する。その結果、構造によりサポートされるモードの実効屈折率が変化し、したがって位相変調が行われる。外部導波路の移動は、機械的構造6−130及び6−132を使用して誘導され得る。
幾つかの非限定的な実施形態による機械的構造6−130の一例は、図6−1Dに示される。機械的構造6−132(図6−1Aを参照されたい)は、同様の構成を有し得る。図6−1Dの例では、機械的構造6−130は、ビーム6−133、6−134、6−135及び6−136を含む。ビーム6−133は、機械的駆動装置6−160をビーム6−134に接続する。ビーム6−135及び6−136は、ビーム6−134を外部導波路に接続する。光学損失を制限するために、ビーム6−135及び6−136は、変調領域(後述する図6−1Eに示されるように)ではなく、それぞれ遷移領域6−140及び6−150における外部導波路に取り付けられ得る。しかしながら、ビーム6−135及び6−136を変調領域への外部導波路に取り付けることも可能である。図6−1Dに示されるものへの代替又は追加として、異なる形状、サイズ及び向きを有するビームを使用することもできる。
機械的構造6−130は、機械的駆動装置6−160において生成された機械力を導波路6−121に伝達し、それにより導波路6−121を導波路6−122に相対して移動させ得る。機械的駆動装置6−160及び6−162は、任意の適した方法で実施され得る。一例では、機械的駆動装置は、圧電デバイスを含み得る。一例では、機械的駆動装置は、導電性フィンガを含み得る。電圧が隣接するフィンガ間に印加されると、フィンガは、加速を受け得、したがって機械力を機械的構造に付与し得る。幾つかの実施形態では、機械的駆動装置は、符号化されたパターンを有する電気信号を用いて駆動され得る。このようにして、変調は、パターンを入力光学信号の位相に付与させる。
懸架されたマルチスロット光学構造6−120の導波路は、特定の従来の位相変調器でのように電気信号が直接供給されるのではなく、外部機械的駆動装置により駆動されるため、導波路の導電性を緩和することができ、したがって自由キャリア吸収損失が下がり、その結果、動的損失が下がることを理解されたい。これは、導波路自体がヒータ又はキャリア蓄積領域として動作するようにドープされる幾つかの従来の位相変調器と異なる。幾つかの実施形態では、導波路6−121、6−122及び6−123は、非ドープ又は低ドープ半導体材料(例えば、非ドープシリコン又はドープ濃度1014cm−3未満を有するシリコン)で作られ得る。幾つかの実施形態では、導波路を形成する材料の抵抗率は、1300Ωcm超であり得る。
図6−1Eは、幾つかの非限定的な実施形態による遷移領域6−140の一例を示す。この実装形態では、導波路6−122は、入力導波路6−102に隣接する(例えば、入力導波路6−102に連続する)。示されるように、導波路6−122は、懸架されたマルチスロット光学構造6−120に近づくにつれて幅が狭まるように遷移領域において先細る。これとは対照的に、導波路6−121及び6−123は、懸架されたマルチスロット光学構造6−120から離れるにつれて幅が増大するように遷移領域において先細る。テーパ形導波路は、入力導波路6−102のモードと、懸架されたマルチスロット光学構造6−120のモードとの間の断熱結合を可能にし得、それにより結合損失を制限する。同様の構成は、遷移領域6−150に使用することもできる。マルチスロット構造によりサポートされるモードの強化された対称性に起因して、遷移領域6−140及び6−150は、他の実装形態よりもはるかに短い。幾つかの実施形態では、遷移領域は、わずか10μm以下又は5μm以下であり得るが、他の値も可能である。
図6−2は、幾つかの非限定的な実施形態による、導波路6−122を通るyz平面(図6−1Bにおける平面6−190を参照されたい)におけるNOEMS位相変調器6−100の断面図である。入力導波路6−102及び出力導波路6−104は、コア材料の屈折率未満の屈折率を有する材料(例えば、酸化シリコン)で作られたクラッドで囲まれる。下部クラッド6−202は、導波路と下の基板6−201との間にある。上部クラッド6−206は、導波路上に形成される。
懸架されたマルチスロット光学構造6−120の導波路の自由な移動を可能にするために、トレンチ6−106は、上部クラッド6−206の部分を通して形成される。幾つかの実施形態では、懸架されたマルチスロット光学構造6−120の下の下部クラッド6−202の一部は、除去され、したがってアンダーカット6−204を形成する。その結果、導波路6−121、6−122及び6−123は、空中に懸架され、機械力に応答して自在に移動することができる。クラッド/空気界面は、トレンチ側壁6−112に存在し、空気/クラッド界面は、トレンチ側壁6−114に存在する。例えば、トレンチが反応イオンエッチング(RIE:reaction ion etching)により形成される場合、側壁は、略垂直であり得るか又は代替的に傾斜し得る。等方性エッチングが使用される場合、図6−2に示されるように、アンダーカット6−204は、湾曲側壁を有し得るか又は代替的に略垂直であり得る。幾つかの実施形態では、トレンチ6−106及びアンダーカット6−204は、同じエッチングの一環として形成され得る一方、他の実施形態では別個のエッチングを使用して形成され得る。
図6−3は、幾つかの非限定的な実施形態による、導波路6−121、6−122及び6−123を通るxy平面(図6−1Bにおける平面6−191を参照されたい)におけるNOEMS位相変調器6−100の断面図である。図6−3は、導波路6−121、6−122及び6−123並びにビーム6−134が同じ平面にあり(少なくともこの例では)、基板6−201の上方で空中に懸架されることを示す。この図に更に示されるように、導波路6−121、6−122及び6−123は、この断面では下部クラッド6−202に接触しない。機械的駆動装置6−160及び6−162が作動する場合、ビーム6−134並びに導波路6−121及び6−123は、x軸に沿って振動し、したがってスロット6−124及び6−125の幅を変化させる。幾つかの非限定的な実施形態による導波路6−121及び6−123の振動運動の一例は、図6−4A乃至図6−4Cにまとめて示されている。図6−4Aは、機械力が印加されない場合を示す。その結果、スロットの幅は、摂動しない。図6−4Bでは、矢印で示されるように、両方の導波路6−121及び6−123が導波路6−122に向かって移動するように力の対が印加される。その結果、スロットの幅は、低減する。図6−4Cでは、これも矢印で示されるように、両方の導波路6−121及び6−123が導波路6−122から離れて移動するように力の対が印加される。その結果、スロットの幅は、増大する。幾つかの実施形態では、力は、定期的に印加され得、且つ/又は駆動電気信号のパターンに従って印加され得る。幾つかの実施形態では、同じ強度であるが、符号が逆である両方の導波路に印加されるように、力は、導波路6−121及び6−123に別様に印加され得る。
図6−5は、幾つかの非限定的な実施形態による、懸架されたマルチスロット光学構造6−120を伝播するモードの実効屈折率(Neff)が幅d(導波路6−121及び6−122間のスロットの幅)の関数としてどのように変化するかを示すプロットである。同様の応答は、dの関数としてもプロットされ得る。実効屈折率変動は、印加された機械力の影響下で導波路間の隔たりが変化するにつれて、モードの形状が、図6−1Cに示されるものからずれることにより生じる。幅が経時変化するにつれて、モードの実効屈折率、したがってモードの位相も経時変化する。
図6−6は、幾つかの非限定的な実施形態による、NOEMS位相変調器を製造する方法の一例を示すフローチャートである。後述する方法のステップが任意の適した順序で実行され得、製造プロセスは、図6−6に示される特定の順序に限定されないことを理解されたい。
製造方法6−600は、チップが取得されるステップ6−602において開始される。幾つかの実施形態では、チップは、シリコンオンインシュレータチップ又はバルクシリコンチップであり得る。チップは、基板及び以下の任意の層を有し得る:下部クラッド層、半導体層及び上部クラッド層。幾つかの実施形態では、下部クラッド層は、酸化シリコンを含み得る。半導体層は、幾つかの実施形態では、シリコン、窒化シリコン及び/又はドープ酸化シリコンを含み得る。上部クラッド層は、下部クラッド層を形成する材料と同じ材料又は異なる材料を含み得る。図6−3は、下部クラッド層(クラッド6−202)、半導体層(導波路6−121、6−122及び6−123の層)及び上部クラッド層(クラッド6−206)を有する基板(基板6−201)の一例を示す。チップが製造設備(NOEMS位相変調器が製造される)に到着したとき、上記で識別された任意の層がチップ上に既に存在し得るか、又は製造プロセスの一環として設備で形成され得ることを理解されたい。
ステップ6−604において、半導体層は、第1及び第2のスロット(又は3つ以上の任意の他の数のスロット)を有するマルチスロット光学構造を形成するようにパターニングされる。図6−3の例では、ステップ6−604において、導波路6−121、122及び6−123が形成され得る。半導体層のパターニングは、フォトレジスト層の堆積、フォトリソグラフィ露光及び半導体層を通したエッチングを含み得る。幾つかの実施形態では、機械的構造6−130及び6−132、機械的駆動装置6−160及び6−162、導波路6−102及び6−104並びに遷移領域6−140及び6−142(図6−1Aを参照されたい)は、同じフォトリソグラフィ露光の一環として製造されるが、全ての実施形態がこれに関して限定されるわけではなく、1つ又は複数の別個のフォトリソグラフィ露光が使用され得る。幾つかの実施形態では、ステップ6−604において、機械的駆動装置6−160は、例えば、イオン注入を使用してドープされ得る。幾つかの実施形態では、マルチスロット光学構造は、ドープされないままであり得る。
ステップ6−606において、トレンチが上部クラッド層を通して形成され得る。トレンチの一例(トレンチ6−106)は、図6−3に示される。トレンチは、例えば、反応イオンエッチング等の乾式エッチングを使用して形成され得る。しかしながら、代替又は追加として、湿式エッチングが使用され得る。トレンチの形成は、ステップ6−604において形成されたマルチスロット光学構造の上方の領域における上部クラッド層の一部の削除を含み得る。その結果、マルチスロット光学構造は、部分的又は全体的に空気に露出され得る。
ステップ6−608において、アンダーカットが下部クラッド層に形成され得る。アンダーカットの一例(アンダーカット6−204)は、図6−3に示される。アンダーカットは、例えば、湿式エッチングを使用して形成され得るが、代替又は追加として乾式エッチングが使用され得る。アンダーカットの形成は、マルチスロット光学構造の下方の領域内の下部クラッド層の一部の除去を含み得る。その結果、マルチスロット光学構造の少なくとも部分は、空中に懸架され得る。
このように本願の技術のいくつかの態様及び実施形態が説明されているため、様々な代替、変更、及び改善が当業者によって容易になされることを理解されたい。このような代替、変更、及び改善は、本願において説明されている技術の精神と範囲内のものであることが意図される。したがって、前述の実施形態は単なる例として提示されており、添付の特許請求の範囲及びその均等の範囲内で、本発明の実施形態は、具体的に記載されている以外の方法で実施され得ることを理解されたい。加えて、本願に記載の2つ以上の特徴、システム、物品、材料、及び/又は方法の任意の組み合わせは、そのような特徴、システム、物品、材料、及び/又は方法が相互に矛盾しない限り、本開示の範囲内に含まれる。
また、説明したように、いくつかの態様は、1つ以上の方法として具体化され得る。方法の一部として実行される動作は、任意の適切な方法でその順序が並び替えられ得る。したがって、例示的な実施形態では連続的な動作として示されていても、いくつかの動作を同時に実行することを含む、図示とは異なる順序で動作が実行される実施形態を構築してもよい。
すべての定義は、本願で定義され使用される通りであり、辞書の定義、援用する文書内の定義、及び/又は定義された用語の通常の意味を統制するように理解すべきである。
不定冠詞「a」及び「an」は、本願の明細書及び特許請求の範囲において使用する場合、明確に反示されない限り、「少なくとも1つ」を意味するものと理解すべきである。
慣用句「及び/又は」は、本願明細書及び特許請求の範囲において使用する場合、そのように結びつけられた複数の要素の「いずれか又は両方」、すなわち、ある場合には結合的に存在し、またその他の場合には非結合的に存在する要素を意味するものと理解されるべきである。
本願明細書及び特許請求の範囲において使用する場合、1つ以上の要素のリストを参照する際の慣用句「少なくとも1つ」とは、要素のリスト内の任意の1つ以上の要素から選択される少なくとも1つの要素を意味するものと理解すべきであるが、しかし要素のリスト内に特にリスト化されているあらゆる要素それぞれの少なくとも1つを必ずしも含む必要はなく、また要素のリスト内の要素の任意の組み合わせを排除するものでもない。この定義は、慣用句「少なくとも1つ」が指す要素のリスト内で特に識別された要素以外の要素が、そのような特に識別された要素に関連する、しないに関わらず任意選択で存在し得ることも可能にする。
「おおよそ」及び「約」という用語は、いくつかの実施形態では目標値の±20%以内、いくつかの実施形態では目標値の±10%以内、いくつかの実施形態では目標値の±5%以内、さらにいくつかの実施形態では目標値の±2%以内であることを意味するために使用され得る。なお、「おおよそ」及び「約」という用語は、目標値を含み得る。

Claims (30)

  1. フォトニックプロセッサであって、
    第1の複数の光学入力及び第1の複数の光学出力を含む相互接続可変ビームスプリッタ(VBS)の第1のアレイと、
    第2の複数の光学入力及び第2の複数の光学出力を含む相互接続可変VBSの第2のアレイと、
    複数の制御可能な光学要素であって、前記複数の制御可能な光学要素の各々は、前記第1のアレイの前記第1の複数の光学出力の単一の1つを前記第2のアレイの前記第2の複数の光学入力のそれぞれの単一の1つに結合する、複数の制御可能な光学要素と
    を備えるフォトニックプロセッサ。
  2. 前記第1のアレイ及び前記第2のアレイの前記VBSの各々は、マッハツェンダー干渉計であって、
    第1のビームスプリッタと、
    第2のビームスプリッタと、
    前記第1のビームスプリッタ及び前記第2のビームスプリッタを結合する光学モードの光の位相を変調するように構成された少なくとも1つの位相変調器と
    を備えるマッハツェンダー干渉計を含む、請求項1に記載のフォトニックプロセッサ。
  3. 前記制御可能な光学要素の各々は、可変減衰器及び少なくとも1つの位相変調器を含む、請求項1に記載のフォトニックプロセッサ。
  4. 前記制御可能な光学要素の前記可変減衰器の各々は、マッハツェンダー干渉計を含む、請求項3に記載のフォトニックプロセッサ。
  5. 前記相互接続VBSの第1のアレイと前記相互接続VBSの第2のアレイとの間に少なくとも1つの折り返しを更に含み、前記第1の複数の光学出力の各々の光学モードの伝播方向は、前記第2の複数の入力のそれぞれの光学入力の光学モードの伝播方向の逆である、請求項1に記載のフォトニックプロセッサ。
  6. VBSの複数の列を更に含み、前記複数の列の少なくともサブセットは、前記相互接続VBSの第1のアレイの少なくとも一部が前記相互接続VBSの第2のアレイの少なくとも一部とインタリーブされるように、前記相互接続VBSの第1のアレイの前記VBSの少なくとも1つ及び前記相互接続VBSの第2のアレイの前記VBSの少なくとも1つを含む、請求項4に記載のフォトニックプロセッサ。
  7. フォトニック処理システムであって、
    入力ベクトルを第1の複数の光学信号に符号化するように構成された光学エンコーダと、
    フォトニックプロセッサであって、
    前記第1の複数の光学信号を受信することであって、前記第1の複数の信号の各々は、前記フォトニックプロセッサの複数の入力空間モードのそれぞれの入力空間モードによって受信される、受信すること、
    前記第1の複数の光学信号に対して複数の演算を実行することであって、前記複数の演算は、行列による前記入力ベクトルの行列乗算を実施する、実行すること、及び
    出力ベクトルを表す第2の複数の光学信号を出力することであって、前記第2の複数の信号の各々は、前記フォトニックプロセッサの複数の出力空間モードのそれぞれの出力空間モードによって送信される、出力すること
    を行うように構成されたフォトニックプロセッサと、
    前記第2の複数の光学信号を検出し、且つ前記出力ベクトルの電気デジタル表現を出力するように構成された光学受信機と
    を備えるフォトニック処理システム。
  8. 前記光学受信機は、位相敏感検出器を使用して、前記第2の複数の光学信号を検出するように構成される、請求項7に記載のフォトニック処理デバイス。
  9. 光源であって、
    前記第1の複数の光学信号の符号化に使用される第1の光を前記光学エンコーダに提供することと、
    前記位相敏感検出器によって局部発振器として使用される第2の光を前記光学受信機に提供することと
    を行うように構成された光源を更に備え、
    前記局部発振器は、前記第1の複数の光学信号の各々と位相コヒーレントであり、
    前記光源から前記光学受信機への前記第1の複数の光学信号の第1の路長は、前記光源から前記光学受信機への前記局部発振器の第2の路長と実質的に等しい、請求項8に記載のフォトニック処理デバイス。
  10. 前記光学エンコーダは、
    前記入力ベクトルのベクトル成分の絶対値を前記第1の複数の光学信号のそれぞれの光学信号の振幅に符号化することと、
    前記入力ベクトルの前記ベクトル成分の位相を前記第1の複数の光学信号の前記それぞれの光学信号の位相に符号化することと
    を行うように構成される、請求項7に記載のフォトニック処理デバイス。
  11. 前記行列は、任意のユニタリ行列である、請求項7に記載のフォトニック処理デバイス。
  12. 複数のフロントエンドであって、前記複数のフロントエンドの各々は、前記フォトニックプロセッサの前記複数の入力空間モードの1つの入力空間モードに関連付けられ、前記複数のフロントエンドの各々は、
    複数の光学エンコーダであって、前記光学エンコーダの各々は、入力ベクトルのそれぞれの成分を光学信号に符号化するように構成され、各光学エンコーダは、他の光学エンコーダによって出力される波長と異なる波長の光学信号を出力するように構成される、複数の光学エンコーダ、及び
    別個の空間モードで前記複数の光学エンコーダの各々から前記光学信号の各々を受信し、且つ前記フォトニックプロセッサの前記複数の入力空間モードのそれぞれの入力空間モードに接続された単一の空間モードで前記光学信号の各々を出力するように構成された入力波長分割マルチプレクサ(WDM)
    を含む、複数のフロントエンドと、
    複数のバックエンドであって、前記複数のバックエンドの各々は、前記フォトニックプロセッサの複数の出力空間モードの1つの出力空間モードに関連付けられ、前記複数のバックエンドの各々は、
    前記フォトニックプロセッサの前記複数の出力空間モードのそれぞれの1つから異なる波長の光学信号を受信し、且つ前記WDMの複数の出力空間モードのそれぞれの空間モードで異なる波長の前記光学信号の各々を出力するように構成された出力波長分割マルチプレクサ(WDM)、
    複数の光学受信機であって、前記光学受信機の各々は、前記WDMのそれぞれの出力空間モードに関連付けられたそれぞれの光学信号を検出することにより、出力ベクトルのそれぞれの成分を特定するように構成される、複数の光学受信機
    を含む、複数のバックエンドと
    を更に備える、請求項7に記載のフォトニック処理デバイス。
  13. 前記フォトニックプロセッサは、
    前記第1の複数の入力空間モードに対応する第1の複数の光学入力及び第1の複数の光学出力を含む相互接続可変ビームスプリッタ(VBS)の第1のアレイと、
    第2の複数の光学入力及び前記複数の出力空間モードに対応する第2の複数の光学出力を含む相互接続VBSの第2のアレイと、
    複数の制御可能な光学要素であって、前記複数の制御可能な光学要素の各々は、前記第1のアレイの前記第1の複数の光学出力の単一の1つを前記第2のアレイの前記第2の複数の光学出力のそれぞれの単一の1つに結合する、複数の制御可能な光学要素と
    を備える、請求項7に記載のフォトニック処理デバイス。
  14. コントローラであって、
    前記行列の特異値分解(SVD)を実行して、第1のSVD行列、第2のSVD行列及び第3のSVD行列を特定すること、
    前記第1のSVD行列を実施するように前記第1の複数の相互接続VBSを制御すること、
    前記第2のSVD行列を実施するように前記第2の複数の相互接続VBSを制御すること、
    前記第3のSVD行列を実施するように前記複数の制御可能な光学要素を制御することであって、前記第3のSVD行列は、対角行列である、制御すること
    を行うように構成されたコントローラを更に含む、請求項13に記載のフォトニック処理デバイス。
  15. 前記コントローラは、前記第1の複数の相互接続VBS及び前記第2の複数の相互接続VBSの1つ又は複数のパラメータを調整する少なくとも1つのデジタル−アナログ変換器(DAC)を更に含む、請求項14に記載のフォトニック処理デバイス。
  16. 前記第1の複数の相互接続VBSの前記VBSの各々及び前記第2の複数の相互接続VBSの前記VBSの各々は、それぞれのアドレスに関連付けられ、及び
    前記少なくとも1つのDACは、前記アドレスを使用して、前記第1の複数の相互接続VBS及び/又は前記第2の複数の相互接続VBSの複数の前記FBSを制御する単一のDACを含む、請求項15に記載のフォトニック処理デバイス。
  17. 前記行列は、第1の行列であり、及び前記フォトニック処理デバイスは、前記第1の行列による第2の行列の乗算を、
    (a)前記第2の行列の各列からの複数の入力ベクトルを特定すること、
    (b)前記複数の入力ベクトルから入力ベクトルを選択すること、
    (c)前記光学エンコーダを使用して、前記選択された入力ベクトルを前記第1の複数の光学信号に符号化すること、
    (d)第1の入力ベクトルに関連付けられた前記第1の複数の光学信号に対して前記複数の演算を実行すること、
    (e)前記選択された入力ベクトルに関連付けられた前記第2の複数の光学信号を検出すること、
    (f)前記検出された第2の複数の光学信号に基づいてデジタル検出結果を記憶すること、
    (g)前記複数の入力ベクトルの他の入力ベクトルについて、動作(b)乃至(f)を繰り返すこと、
    (h)前記デジタル検出結果をデジタル的に結合して、前記第1の行列による前記第2の行列の前記乗算からもたらされる結果行列を特定すること
    を行うことによって実行するように前記フォトニック処理デバイスを制御するように構成されたコントローラを更に備える、請求項7に記載のフォトニック処理デバイス。
  18. 前記光学受信機は、前記フォトニックプロセッサの前記複数の出力空間モードの各出力空間モードに関連付けられた複数の後続信号のアナログ合算を実行するように構成されたローパスフィルタを含む、請求項7に記載のフォトニック処理デバイス。
  19. 行列−ベクトル乗算を光学的に実行する方法であって、
    入力ベクトルのデジタル表現を受信することと、
    光学エンコーダを使用して、前記入力ベクトルを第1の複数の光学信号に符号化することと、
    プロセッサを使用して、行列の特異値分解(SVD)を実行して、第1のSVD行列、第2のSVD行列及び第3のSVD行列を特定することと、
    複数の可変ビームスプリッタ(VBS)を含むフォトニックプロセッサを、前記第1のSVD行列、前記第2のSVD行列及び前記第3のSVD行列を光学的に実施するように制御することと、
    前記フォトニックプロセッサを通して前記第1の複数の光学信号を伝播させることと、
    前記フォトニックプロセッサから受信された第2の複数の光学信号を検出することと、
    前記検出された第2の複数の光学信号に基づいて出力ベクトルを特定することであって、前記出力ベクトルは、前記行列−ベクトル乗算の結果を表す、特定することと
    を含む方法。
  20. 前記第2の複数の光学信号を前記検出することは、位相敏感検出器を使用して実行される、請求項19に記載の方法。
  21. 前記第1の複数の光学信号を符号化するために第1の光を光源から前記光学エンコーダに提供すること、
    第2の光を前記光源から前記位相敏感検出器に提供することであって、前記第2の光は、前記位相敏感検出器によって局部発振器として使用される、提供すること
    を更に含む、請求項20に記載の方法。
  22. 前記局部発振器は、前記第1の複数の光学信号の各々と位相コヒーレントであり、及び
    前記光源から前記位相敏感検出器への前記第1の複数の光学信号の第1の路長は、前記光源から前記位相敏感検出器への前記局部発振器の第2の路長と実質的に等しい、請求項21に記載の方法。
  23. 前記入力ベクトルを符号化することは、
    前記入力ベクトルのベクトル成分の絶対値を前記第1の複数の光学信号のそれぞれの光学信号の振幅に符号化することと、
    前記入力ベクトルの前記ベクトル成分の位相を前記第1の複数の光学信号の前記それぞれの光学信号の位相に符号化することと
    を含む、請求項19に記載の方法。
  24. 前記行列は、任意のユニタリ行列である、請求項19に記載の方法。
  25. 波長分割多重化を使用して、複数の行列−ベクトル乗算を同時に実行することを更に含む、請求項19に記載の方法。
  26. 前記入力ベクトルは、複数の入力ベクトルの1つであり、
    前記方法は、前記複数の入力ベクトルの各々を特定の波長の第1の複数の光学信号のそれぞれの1つに符号化することを更に含み、前記第1の複数の光学信号のそれぞれの1つに関連付けられた各波長は、前記第1の複数の光学信号の他のものの他の波長と異なる、請求項25に記載の方法。
  27. 前記フォトニックプロセッサは、
    前記第1の複数の入力空間モードに対応する第1の複数の光学入力及び第1の複数の光学出力を含む相互接続可変ビームスプリッタ(VBS)の第1のアレイと、
    第2の複数の光学入力及び複数の出力空間モードに対応する第2の複数の光学出力を含む相互接続VBSの第2のアレイと、
    複数の制御可能な光学要素であって、前記複数の制御可能な光学要素の各々は、前記第1のアレイの前記第1の複数の光学出力の単一の1つを前記第2のアレイの前記第2の複数の光学出力のそれぞれの単一の1つに結合する、複数の制御可能な光学要素と
    を含む、請求項19に記載の方法。
  28. 前記第1の複数の相互接続VBSは、前記第1のSVD行列を実施し、
    前記第2の複数の相互接続VBSは、前記第2のSVD行列を実施し、
    前記複数の制御可能な光学要素は、前記第3のSVD行列を実施し、前記第3のSVD行列は、対角行列である、請求項27に記載の方法。
  29. 前記第1の複数の相互接続VBSの前記VBSの各々及び前記第2の複数の相互接続VBSの前記VBSの各々は、それぞれのアドレスに関連付けられ、及び
    前記第1の複数の前記VBS及び/又は前記第2の複数の前記VBSは、前記アドレスを使用して複数の前記VBSを制御する少なくとも1つのデジタル−アナログ変換器(DAC)によって制御される、請求項27に記載の方法。
  30. 前記行列−ベクトル乗算は、行列−行列乗算を実行するように実行される複数の行列−ベクトル乗算の1つであり、前記行列は、第1の行列であり、及び前記行列−行列乗算は、前記第1の行列による第2の行列の乗算を含み、前記方法は、
    (a)前記第2の行列の各列からの複数の入力ベクトルを特定すること、
    (b)前記複数の入力ベクトルから入力ベクトルを選択すること、
    (c)前記光学エンコーダを使用して、前記選択された入力ベクトルを前記第1の複数の光学信号に符号化すること、
    (d)第1の入力ベクトルに関連付けられた前記第1の複数の光学信号に対して複数の演算を実行すること、
    (e)前記選択された入力ベクトルに関連付けられた前記第2の複数の光学信号を検出すること、
    (f)前記検出された第2の複数の光学信号に基づいてデジタル検出結果を記憶すること、
    (g)前記複数の入力ベクトルの他の入力ベクトルについて、動作(b)乃至(f)を繰り返すこと、
    (h)前記デジタル検出結果をデジタル的に結合して、前記第1の行列による前記第2の行列の前記乗算からもたらされる結果行列を特定すること
    を更に含む、請求項7に記載の方法。
JP2021514294A 2018-05-15 2019-05-14 フォトニック処理デバイス及び方法 Active JP7362727B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2023172693A JP2024001148A (ja) 2018-05-15 2023-10-04 フォトニック処理デバイス及び方法

Applications Claiming Priority (15)

Application Number Priority Date Filing Date Title
US201862671793P 2018-05-15 2018-05-15
US62/671,793 2018-05-15
US201862680557P 2018-06-04 2018-06-04
US62/680,557 2018-06-04
US201862689022P 2018-06-22 2018-06-22
US62/689,022 2018-06-22
US201862755402P 2018-11-02 2018-11-02
US62/755,402 2018-11-02
US201962792720P 2019-01-15 2019-01-15
US62/792,720 2019-01-15
US201962793327P 2019-01-16 2019-01-16
US62/793,327 2019-01-16
US201962834743P 2019-04-16 2019-04-16
US62/834,743 2019-04-16
PCT/US2019/032181 WO2019222185A1 (en) 2018-05-15 2019-05-14 Photonic processing systems and methods

Related Child Applications (1)

Application Number Title Priority Date Filing Date
JP2023172693A Division JP2024001148A (ja) 2018-05-15 2023-10-04 フォトニック処理デバイス及び方法

Publications (3)

Publication Number Publication Date
JP2021523508A true JP2021523508A (ja) 2021-09-02
JPWO2019222185A5 JPWO2019222185A5 (ja) 2022-05-10
JP7362727B2 JP7362727B2 (ja) 2023-10-17

Family

ID=68534517

Family Applications (2)

Application Number Title Priority Date Filing Date
JP2021514294A Active JP7362727B2 (ja) 2018-05-15 2019-05-14 フォトニック処理デバイス及び方法
JP2023172693A Pending JP2024001148A (ja) 2018-05-15 2023-10-04 フォトニック処理デバイス及び方法

Family Applications After (1)

Application Number Title Priority Date Filing Date
JP2023172693A Pending JP2024001148A (ja) 2018-05-15 2023-10-04 フォトニック処理デバイス及び方法

Country Status (9)

Country Link
US (4) US10763974B2 (ja)
EP (1) EP3803265A4 (ja)
JP (2) JP7362727B2 (ja)
KR (1) KR20210020912A (ja)
CN (2) CN112384748B (ja)
CA (1) CA3100326A1 (ja)
SG (1) SG11202011352SA (ja)
TW (1) TWI818020B (ja)
WO (1) WO2019222185A1 (ja)

Families Citing this family (81)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9606803B2 (en) * 2013-07-15 2017-03-28 Texas Instruments Incorporated Highly integrated scalable, flexible DSP megamodule architecture
WO2018222896A1 (en) * 2017-05-31 2018-12-06 Intel Corporation Gradient-based training engine for quaternion-based machine-learning systems
US11113168B2 (en) * 2018-03-09 2021-09-07 Toyota Motor Engineering & Manufacturing North America, Inc. Distributed architecture for fault monitoring
JP7362727B2 (ja) 2018-05-15 2023-10-17 ライトマター インコーポレイテッド フォトニック処理デバイス及び方法
WO2019236250A1 (en) 2018-06-04 2019-12-12 Lightmatter, Inc. Real-number photonic encoding
CA3101026A1 (en) 2018-06-05 2019-12-12 Lightelligence, Inc. Optoelectronic computing systems
US11507818B2 (en) 2018-06-05 2022-11-22 Lightelligence PTE. Ltd. Optoelectronic computing systems
EP3878146A4 (en) * 2018-11-05 2022-06-29 Nokia Solutions and Networks Oy Papr reduction of mimo-ofdm
WO2020096913A1 (en) 2018-11-08 2020-05-14 Luminous Computing, Inc. System and method for photonic computing
US11734556B2 (en) * 2019-01-14 2023-08-22 Lightelligence PTE. Ltd. Optoelectronic computing systems
TW202111467A (zh) 2019-02-25 2021-03-16 美商萊特美特股份有限公司 路徑數平衡式通用光子網路
WO2020176538A1 (en) 2019-02-26 2020-09-03 Lightmatter, Inc. Hybrid analog-digital matrix processors
US20220164642A1 (en) * 2019-05-03 2022-05-26 University Of Central Florida Research Foundation, Inc. Photonic tensor accelerators for artificial neural networks
CA3139835C (en) * 2019-05-22 2022-07-19 Xanadu Quantum Technologies Inc. Apparatus and methods for gaussian boson sampling
US11409991B2 (en) * 2019-05-24 2022-08-09 Google Llc Regularizing the training of convolutional neural networks
WO2020247243A1 (en) * 2019-06-04 2020-12-10 Delahoussaye Kevin Neuroscience based learning-computing
US11016315B2 (en) 2019-07-11 2021-05-25 Luminous Computing, Inc. Photonic bandgap phase modulator, optical filter bank, photonic computing system, and methods of use
CN114514490A (zh) 2019-07-29 2022-05-17 轻物质公司 使用线性光子处理器进行模拟计算的系统和方法
US11407672B2 (en) * 2019-10-03 2022-08-09 Northrop Grumman Systems Corporation Method for high fill-factor optical arrays manufacturing
EP4062561A4 (en) 2019-11-22 2024-01-10 Lightmatter, Inc. LINEAR PHOTOMIC PROCESSORS AND ASSOCIATED METHODS
US12124177B2 (en) * 2019-12-05 2024-10-22 Asml Holding N.V. Overlay measurement system using lock-in amplifier technique
US11454862B2 (en) * 2019-12-18 2022-09-27 Xanadu Quantum Technologies Inc. Apparatus and methods for spatio-temporal implementation of arbitrary unitary transformations on optical modes
CN111198593B (zh) * 2019-12-31 2023-08-25 联合微电子中心有限责任公司 一种超线程光子计算结构
US12045080B1 (en) 2020-02-07 2024-07-23 Luminous Computing, Inc. Optical computing system and method of use
US11874582B2 (en) 2020-02-19 2024-01-16 Shanghai Jiao Tong University Monolithically integrated optical analog-to-digital conversion system based on lithium niobate-silicon wafer and method for manufacturing the same
CN111176053B (zh) * 2020-02-19 2021-07-27 上海交通大学 基于铌酸锂-硅晶圆的单片集成光模数转换系统及制备方法
CN113325808A (zh) * 2020-02-28 2021-08-31 上海诺基亚贝尔股份有限公司 控制方法、设备、装置、系统以及计算机可读介质
US11211941B2 (en) * 2020-03-14 2021-12-28 Luminous Computing, Inc. Digital-to-analog converter system and method of operation
WO2021222098A1 (en) * 2020-04-27 2021-11-04 Lightmatter, Inc. Photonics processor architecture
WO2021068494A1 (zh) * 2020-05-03 2021-04-15 浙江大学 基于平面互质阵列虚拟域张量空间谱搜索的高分辨精确二维波达方向估计方法
US11500410B1 (en) * 2020-05-06 2022-11-15 Luminous Computing, Inc. System and method for parallel photonic computation
US11490177B1 (en) * 2020-06-05 2022-11-01 Luminous Computing, Inc. Optical link system and method for computation
CN112232503B (zh) * 2020-06-09 2021-11-19 联合微电子中心有限责任公司 计算装置、计算方法以及计算系统
US11428785B2 (en) * 2020-06-12 2022-08-30 Ours Technology, Llc Lidar pixel with active polarization control
CN111723337B (zh) * 2020-06-16 2023-02-07 上海交通大学 用于神经网络训练的光子张量核集成电路架构及其神经网络训练方法
US11057143B1 (en) 2020-06-18 2021-07-06 Hewlett Packard Enterprise Development Lp Wavelength division multiplexing (WDM)-based and multipath interferometry based optical ternary content addressable memory (TCAM)
US11200929B1 (en) 2020-06-18 2021-12-14 Hewlett Packard Enterprise Development Lp Time division multiplexing (TDM) based optical ternary content addressable memory (TCAM)
KR20230034326A (ko) 2020-06-29 2023-03-09 라이트매터, 인크. 고속 예측 프로세서
DE112021003808T5 (de) * 2020-07-15 2023-06-15 Voyant Photonics, Inc. Optisch phasengesteuerter Array-Antrieb
JP2023536703A (ja) 2020-07-24 2023-08-29 ライトマター インコーポレイテッド フォトニックプロセッサにおいて光子の自由度を利用するためのシステム及び方法
US11469764B2 (en) 2020-08-28 2022-10-11 Hewlett Packard Enterprise Development Lp Optical comb source for content-addressable memory encoders
CN112232487B (zh) * 2020-10-19 2023-09-22 中国科学院半导体研究所 光学神经网络芯片及其计算方法
US20220156469A1 (en) * 2020-11-16 2022-05-19 Lightmatter, Inc. Parallelization and pipelining strategies for an efficient analog neural network accelerator
CN117255967A (zh) * 2020-12-17 2023-12-19 天体人工智能公司 用于矩阵计算的平衡光子架构
EP4264369A1 (en) * 2020-12-17 2023-10-25 Celestial AI Inc. Balanced photonic architectures for matrix computations
KR102655199B1 (ko) * 2020-12-22 2024-04-08 재단법인대구경북과학기술원 재순환식 가변 광자 회로 및 그 동작 방법
US11573416B2 (en) 2020-12-22 2023-02-07 Daegu Gyeongbuk Institute Of Science And Technology Recirculating programmable photonic circuits and operating method thereof
CN112904270B (zh) * 2021-01-15 2022-06-21 电子科技大学 一种阵列模型误差下基于拟合模型的波达方向估计方法
CN112881972B (zh) * 2021-01-15 2022-06-21 电子科技大学 一种阵列模型误差下基于神经网络的波达方向估计方法
US20220269972A1 (en) * 2021-02-19 2022-08-25 Saumil Bandyopadhyay Error Correction for Programmable Photonics
US20240176383A1 (en) * 2021-03-12 2024-05-30 Siemens Corporation Method of Producing and a Photonic Metasurface for Performing Computationally Intensive Mathematical Computations
CN112988113B (zh) * 2021-04-29 2021-09-14 中国科学院西安光学精密机械研究所 一种光子矩阵向量乘法器
CN115407463B (zh) * 2021-05-26 2024-08-06 索尔思光电股份有限公司 光学装置及其组装方法
AT525103B1 (de) * 2021-05-28 2024-03-15 Ait Austrian Inst Tech Gmbh Optische Anordnung zur Emulation eines neuronalen Netzes
WO2022256905A1 (en) * 2021-06-11 2022-12-15 Huawei Technologies Canada Co., Ltd. System and method for optically performing computations using a photonic modulator
CN113452449B (zh) * 2021-07-08 2022-05-17 上海交通大学 对时域信号进行酉矩阵计算的光学装置
CN113761468B (zh) * 2021-07-16 2024-10-01 深圳大学 一种基于数学分解理论的光学矩阵运算模块实现方法
CN113595647B (zh) * 2021-07-21 2022-08-05 联合微电子中心有限责任公司 光子波束成形单元、发射系统和接收系统
CN114095317B (zh) * 2021-08-25 2024-02-13 郑州大学 一种适用于高阶apsk调制的载波参数估计解耦合方法和系统
WO2023191849A2 (en) * 2021-09-24 2023-10-05 Arizona Board Of Regents On Behalf Of The University Of Arizona Managing an optical probe beam for displacement sensing
WO2023050305A1 (en) * 2021-09-30 2023-04-06 Shanghai Xizhi Technology Co., Ltd. Integrated slot waveguide optical phase modulator
CN113644984B (zh) * 2021-10-14 2022-03-11 清华大学 光电数字逻辑运算的光学逻辑元件及其逻辑运算方法
WO2023122369A1 (en) * 2021-12-20 2023-06-29 Massachusetts Institute Of Technology Photonic and electronic hamiltonian machines
US11907715B2 (en) * 2021-12-20 2024-02-20 International Business Machines Corporation Hardware acceleration with preconditioners
GB2616425A (en) * 2022-03-07 2023-09-13 Optalysys Ltd Optical chiplet
GB2616428A (en) * 2022-03-07 2023-09-13 Optalysys Ltd Optical encoders
GB2616426B (en) * 2022-03-07 2024-08-21 Optalysys Ltd Optical encoders
GB2629696A (en) * 2022-03-07 2024-11-06 Optalysys Ltd Optical encoders
CN116795171A (zh) * 2022-03-15 2023-09-22 上海曦智科技有限公司 数据处理方法及系统
CN114706161B (zh) * 2022-03-28 2023-07-18 上海科技大学 一种基于频率编码的片上集成光学矩阵矢量处理器
CN114815436B (zh) * 2022-04-21 2023-05-19 电子科技大学 基于邻域采样主成分分析的光学相控阵阵元互耦补偿方法
CN114819089B (zh) * 2022-04-28 2024-09-06 华中科技大学 一种基于模式复用的光子卷积加速器
CN114861734B (zh) * 2022-05-26 2024-04-16 东南大学 一种基于光散射的矩阵运算立体结构单元
CN114861927B (zh) * 2022-07-04 2022-11-15 深圳市永达电子信息股份有限公司 基于冯氏计算机布尔数字逻辑的数字量子态的操作方法
CN114840255B (zh) * 2022-07-04 2022-09-27 飞腾信息技术有限公司 处理数据的方法、装置及设备可读存储介质
US20240045464A1 (en) 2022-08-04 2024-02-08 Lightmatter, Inc. Optical computing system with disaggregated memory
US20240160693A1 (en) * 2022-11-10 2024-05-16 Rain Neuromorphics Inc. Error tolerant ai accelerators
CN117896011B (zh) * 2023-04-27 2024-09-24 光本位科技(苏州)有限公司 通过光子计算单元在光域中进行运算的方法
CN117055273B (zh) * 2023-08-14 2024-06-18 希烽光电科技(南京)有限公司 基于卷积神经网络的光学相控阵初始相位校准系统和方法
CN117675029B (zh) * 2024-01-31 2024-04-19 北京中科国光量子科技有限公司 一种用于光通信和量子密钥分发的不间断偏振补偿方法
CN117787369B (zh) * 2024-02-27 2024-05-10 苏州元脑智能科技有限公司 光计算系统、复值检测方法及数据处理方法

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH03204624A (ja) * 1990-01-08 1991-09-06 Sumitomo Cement Co Ltd 光ニューラル演算装置
JPH04227517A (ja) * 1990-03-30 1992-08-17 Hughes Aircraft Co データ処理システム及び線形計画法
US8027587B1 (en) * 2007-08-21 2011-09-27 Sandia Corporation Integrated optic vector-matrix multiplier
JP2015169847A (ja) * 2014-03-07 2015-09-28 国立大学法人徳島大学 位相感応型光増幅器及び励起光位相同期回路
US20180081388A1 (en) * 2016-09-22 2018-03-22 Hewlett Packard Enterprise Development Lp Concurrently performing attribute-dependent operations on signals

Family Cites Families (166)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3872293A (en) * 1972-01-07 1975-03-18 Us Navy Multi-dimensional fourier transform optical processor
US4567569A (en) 1982-12-15 1986-01-28 Battelle Development Corporation Optical systolic array processing
US4739520A (en) * 1983-09-14 1988-04-19 The Ohio State University Optical switching system
GB2154772B (en) * 1984-02-25 1987-04-15 Standard Telephones Cables Ltd Optical computation
US4592004A (en) 1984-05-21 1986-05-27 The United States Of America As Represented By The Secretary Of The Navy Electrooptical matrix multiplication using the twos complement arithmetic for improved accuracy
US4607344A (en) * 1984-09-27 1986-08-19 The United States Of America As Represented By The Secretary Of The Navy Triple matrix product optical processors using combined time-and-space integration
US4686646A (en) * 1985-05-01 1987-08-11 Westinghouse Electric Corp. Binary space-integrating acousto-optic processor for vector-matrix multiplication
US4809204A (en) * 1986-04-04 1989-02-28 Gte Laboratories Incorporated Optical digital matrix multiplication apparatus
CA1290019C (en) 1986-06-20 1991-10-01 Hideo Kuwahara Dual balanced optical signal receiver
DE3879996T2 (de) 1987-04-20 1993-07-15 Fuji Photo Film Co Ltd Aufnahmekopf fuer magnetooptischen aufzeichnungstraeger.
US4849940A (en) * 1987-12-10 1989-07-18 The Washington Technology Center Optical neural net memory
US4877297A (en) * 1988-04-29 1989-10-31 Rockwell International Corporation Reconfigurable 0ptical interconnect using dynamic hologram
GB2220780B (en) 1988-07-05 1992-12-23 Mitsubishi Electric Corp Neurocomputer
US5004309A (en) 1988-08-18 1991-04-02 Teledyne Brown Engineering Neural processor with holographic optical paths and nonlinear operating means
US4948212A (en) * 1988-08-22 1990-08-14 California Institute Of Technology Optical processing in III-V and II-VI compound semiconductors
US5254957A (en) 1989-01-04 1993-10-19 Information Storage, Inc. Apparatus and method for amplifying optically sensed signals
US5117099A (en) 1989-09-01 1992-05-26 Schmidt Terrence C Ambient light rejecting quad photodiode sensor
US5077619A (en) 1989-10-25 1991-12-31 Tacan Corporation High linearity optical transmitter
US5428466A (en) * 1989-11-10 1995-06-27 British Telecommunications Public Limited Company Neural networks
US5220644A (en) * 1989-11-22 1993-06-15 Hitachi, Ltd. Optical neural network system
JPH03164816A (ja) 1989-11-22 1991-07-16 Mitsubishi Electric Corp 情報処理装置
US5416616A (en) * 1990-04-06 1995-05-16 University Of Southern California Incoherent/coherent readout of double angularly multiplexed volume holographic optical elements
JP2795015B2 (ja) 1991-01-09 1998-09-10 松下電器産業株式会社 空間光変調素子および神経ネットワーク回路
GB2267165A (en) * 1992-05-11 1993-11-24 Sharp Kk Optical information processor
GB2269296A (en) * 1992-08-01 1994-02-02 Northern Telecom Ltd Telecommunications switch architecture
US5288990A (en) 1992-12-28 1994-02-22 At&T Bell Laboratories Differential self-electrooptic effect device
US5495356A (en) * 1993-04-30 1996-02-27 Nec Research Institute, Inc. Multidimensional switching networks
US5333117A (en) * 1993-10-04 1994-07-26 Nec Research Institute, Inc. Parallel MSD arithmetic using an opto-electronic shared content-addressable memory processor
US5410145A (en) 1994-02-25 1995-04-25 Coroy; Trenton G. Light detector using reverse biased photodiodes with dark current compensation
CA2184166A1 (en) * 1994-03-02 1995-09-08 Matthias Budil Optical vector multiplier for neural networks
US5640261A (en) * 1994-08-18 1997-06-17 Fuji Photo Film Co., Ltd. Optical operation apparatus for finding an inner product of vectors using light
US5699449A (en) 1994-11-14 1997-12-16 The University Of Connecticut Method and apparatus for implementation of neural networks for face recognition
US5621227A (en) 1995-07-18 1997-04-15 Discovery Semiconductors, Inc. Method and apparatus for monolithic optoelectronic integrated circuit using selective epitaxy
US5597068A (en) 1995-08-25 1997-01-28 Alpha Enterprises, Inc. Compact disc security container
JP3204624B2 (ja) 1996-02-23 2001-09-04 シチズン時計株式会社 半導体装置
JP2970844B2 (ja) 1997-06-04 1999-11-02 日本電気株式会社 光受信器及びそれを用いた光ネットワークシステム
US6005998A (en) 1998-02-20 1999-12-21 Lucent Technologies Inc. Strictly non-blocking scalable matrix optical switch
US6303923B1 (en) 1998-12-18 2001-10-16 California Institute Of Technology Fabricating a hybrid imaging device having non-destructive sense nodes
US6060710A (en) 1998-12-21 2000-05-09 The United States Of America As Represented By The Secretary Of The Army Infrared Mueller matrix detection and ranging system
US7515753B2 (en) 1999-05-19 2009-04-07 Lenslet Labs Ltd. Phase extraction in optical processing
WO2000072104A1 (en) * 1999-05-19 2000-11-30 Jtc 2000 Development(Delaware), Inc. Optical processor architecture
US6178020B1 (en) * 1999-09-30 2001-01-23 Ut-Battelle, Llc Modules and methods for all photonic computing
WO2001091342A2 (en) * 2000-05-24 2001-11-29 Purdue Research Foundation Method and system for polarization control and polarization mode dispersion compensation for wideband optical signals
WO2002011490A2 (en) * 2000-07-27 2002-02-07 Civcom Devices & Systems Ltd. Data processing using polarization-based optical switching and broadcasting
US6594050B2 (en) * 2001-01-03 2003-07-15 Physical Optics Corporation Optical communication switch node
US6728434B2 (en) * 2001-06-04 2004-04-27 Axun Technologies, Inc. MEMS dynamic optical spectral filter
US6720830B2 (en) 2001-06-11 2004-04-13 Johns Hopkins University Low-power, differential optical receiver in silicon on insulator
DE10136515C2 (de) 2001-07-26 2003-10-23 Wacker Construction Equipment Bohr- und/oder Schlaghammer mit Handgriff
AUPR726901A0 (en) 2001-08-24 2001-09-20 Uniquest Limited Quantum optical cnot gate
IL145245A0 (en) * 2001-09-03 2002-06-30 Jtc 2000 Dev Delaware Inc System and method including vector-matrix multiplication
KR20050042243A (ko) 2001-11-06 2005-05-06 더 존스 홉킨스 유니버시티 단일 양자들의 양자 상태들을 이용하는 논리 연산들을수행하기 위한 기술들
US7136587B1 (en) * 2001-11-15 2006-11-14 Meshnetworks, Inc. System and method for providing simulated hardware-in-the-loop testing of wireless communications networks
FR2832579A1 (fr) 2001-11-19 2003-05-23 St Microelectronics Sa Dispositif de calibrage pour un etage d'entree video
US6690853B1 (en) * 2002-03-11 2004-02-10 Pts Corporation Tunable DWDM demultiplexer
US7317574B2 (en) 2002-05-20 2008-01-08 Magiq Technologies, Inc. Long-distance quantum communication
DE50201169D1 (de) 2002-06-24 2004-11-04 Alcatel Sa Vorrichtung für ein passives optisches Netzwerk
US7019875B2 (en) 2002-12-09 2006-03-28 The John Hopkins University Method and apparatus for single-photon source and quantum memory
KR20050088423A (ko) 2002-12-12 2005-09-06 코닌클리케 필립스 일렉트로닉스 엔.브이. 분할 포토 검출기를 갖는 비트 검출기
US7279731B1 (en) 2006-05-15 2007-10-09 Udt Sensors, Inc. Edge illuminated photodiodes
US7366416B2 (en) 2003-08-11 2008-04-29 General Instrument Corporation Hub for a passive optical network hub
US7271461B2 (en) * 2004-02-27 2007-09-18 Banpil Photonics Stackable optoelectronics chip-to-chip interconnects and method of manufacturing
US7133173B2 (en) 2004-07-26 2006-11-07 Hewlett-Packard Development Company, L.P. Nonlinear electromagnetic quantum information processing
WO2006013928A1 (ja) 2004-08-04 2006-02-09 The Furukawa Electric Co., Ltd. 光回路装置
US7660533B1 (en) 2004-08-04 2010-02-09 The United States Of America As Represented By The Secretary Of The Army Quantum Fourier transform based information transmission system and method
CN1243262C (zh) * 2004-09-09 2006-02-22 上海交通大学 可调谐波长选择/锁定光密集波分复用合波/分波器
US7230227B2 (en) 2004-10-08 2007-06-12 The Boeing Company Lenslet/detector array assembly for high data rate optical communications
WO2007086888A2 (en) 2005-03-04 2007-08-02 Cornell Research Foundation, Inc. Electro-optic modulation
US8560282B2 (en) 2005-07-11 2013-10-15 D-Wave Systems Inc. Quantum processor-based systems, methods and apparatus for solving problems as logic circuits
WO2007041382A1 (en) 2005-09-29 2007-04-12 General Hospital Corporation Arrangements and methods for providing multimodality microscopic imaging of one or more biological structures
EP1955452A1 (en) 2005-10-13 2008-08-13 National ICT Australia Limited Method and apparatus for sampled optical signal monitoring
US8023828B2 (en) 2005-10-17 2011-09-20 Hewlett-Packard Development Company, L.P. Quantum information conversion between matter and light representations
US7774675B1 (en) * 2005-12-05 2010-08-10 Marvell International Ltd. LDPC codes and expansion method
JP4883273B2 (ja) * 2006-01-11 2012-02-22 日本電気株式会社 乱数品質管理装置および管理方法
CN101375302B (zh) 2006-01-27 2012-03-28 D-波系统公司 绝热量子计算的方法
US20080002993A1 (en) 2006-06-30 2008-01-03 Kirkpatrick Peter E Optical receiver with dual photodetector for common mode noise suppression
KR100890389B1 (ko) 2006-12-05 2009-03-26 한국전자통신연구원 편광 무의존 단방향 양자 암호 수신 및 송수신 장치
AU2007329156B2 (en) 2006-12-05 2012-09-13 D-Wave Systems Inc. Systems, methods and apparatus for local programming of quantum processor elements
US8548334B2 (en) 2006-12-06 2013-10-01 Mohammad Mazed Dynamic intelligent bidirectional optical access communication system with object/intelligent appliance-to-object/intelligent appliance interaction
US7985965B2 (en) 2007-03-29 2011-07-26 Raytheon Company Quantum computing device and method including qubit arrays of entangled states using negative refractive index lenses
US7843209B2 (en) 2007-04-25 2010-11-30 D-Wave Systems Inc. Architecture for local programming of quantum processor elements using latching qubits
US7539375B2 (en) 2007-05-04 2009-05-26 Massachusetts Institute Of Technology Optical coupled resonator structures based on loop-coupled cavities and loop coupling phase
WO2009007741A1 (en) * 2007-07-09 2009-01-15 Bae Systems Plc Improvements relating to optical vector matrix multipliers
EP2209038B1 (en) * 2007-10-10 2014-06-25 NEC Corporation Optical modulator and optical communication system
US8483581B2 (en) 2007-11-30 2013-07-09 Nec Corporation Light receiving circuit and signal processing method
US8190553B2 (en) 2007-12-20 2012-05-29 Routt Thomas J Methods and systems for quantum search, computation and memory
JP2009194138A (ja) 2008-02-14 2009-08-27 Nec Corp 半導体レーザ駆動装置、方法、光モジュールおよび光送信装置
JP5091717B2 (ja) 2008-02-21 2012-12-05 株式会社東芝 量子計算方法および量子計算機
JP4972602B2 (ja) 2008-04-10 2012-07-11 株式会社日立製作所 光信号検出回路及びそれを用いた情報再生装置
CN101630178B (zh) 2008-07-16 2011-11-16 中国科学院半导体研究所 一种硅基集成化的光学向量-矩阵乘法器
US8224139B2 (en) * 2008-08-21 2012-07-17 Infinera Corporation Tunable optical filter
JP5272686B2 (ja) 2008-11-28 2013-08-28 富士通株式会社 光受信器、光受信回路および光受信方法
FR2940432B1 (fr) 2008-12-23 2011-01-21 H2I Technologies Dispositif pour quantifier et localiser un signal lumineux module a une frequence predeterminee
JP4786727B2 (ja) 2009-03-27 2011-10-05 株式会社東芝 量子計算方法、量子計算機およびプログラム
US8620855B2 (en) 2009-04-17 2013-12-31 Microsoft Corporation Use of topological charge measurements to change between different qubit encodings
CN102804033B (zh) 2010-03-19 2015-07-29 日本电信电话株式会社 光调制器
US8026837B1 (en) * 2010-04-22 2011-09-27 The Aerospace Corporation Systems and methods for converting wideband signals in the optical domain
JP5799531B2 (ja) 2010-04-30 2015-10-28 ソニー株式会社 A/d変換器、a/d変換方法、固体撮像素子およびカメラシステム
US8247780B2 (en) 2010-11-10 2012-08-21 Siemens Aktiengesellschaft High density, proportional-mode, APD arrays for individual scintillator readout in PET applications
US9069139B2 (en) 2011-07-28 2015-06-30 Jds Uniphase Corporation Multicast optical switch
US8837544B2 (en) 2011-10-28 2014-09-16 Hewlett-Packard Development Company, L.P. Quantum optical device
US8693895B2 (en) 2011-11-11 2014-04-08 Wuhan Research Institute Of Posts And Telecommunications Signal transmission and reception device and method
US9494740B2 (en) 2012-01-31 2016-11-15 Hewlett Packard Enterprise Development Lp Optical architecture with riser cards a matrix and optic cables to carry outbound signals of the matrix to the riser cards
US9014568B2 (en) 2012-02-16 2015-04-21 Nec Laboratories America, Inc. Next generation optical access network with centralized digital OLT
US9712235B2 (en) * 2012-02-28 2017-07-18 Spatial Digital Systems, Inc. Resource allocation in PON networks via wave-front multiplexing and de-multiplexing
US9485048B2 (en) * 2012-06-08 2016-11-01 The Royal Institution For The Advancement Of Learning/Mcgill University Methods and devices for space-time multi-plane optical networks
US8625936B1 (en) 2012-06-29 2014-01-07 Alcatel Lucent Advanced modulation formats using optical modulators
US10033477B2 (en) * 2012-07-27 2018-07-24 Hewlett Packard Enterprise Development Lp Spatial multiplexing for optical transmission
CN102866876B (zh) * 2012-08-22 2015-03-04 清华大学 一种单片集成的光学矩阵-向量乘法器
US10534189B2 (en) 2012-11-27 2020-01-14 The Board Of Trustees Of The Leland Stanford Junior University Universal linear components
US20140199065A1 (en) * 2013-01-15 2014-07-17 Hewlett-Packard Development Company, L.P. Multimode multiplexing
FR3002654A1 (fr) 2013-02-26 2014-08-29 St Microelectronics Sa Modulateur optique avec correction de polarisation automatique
JP6011719B2 (ja) 2013-04-24 2016-10-19 日本電気株式会社 偏波分離器、及び光デバイス
WO2014192153A1 (ja) 2013-05-31 2014-12-04 株式会社日立製作所 半導体装置
JP6300049B2 (ja) 2013-07-09 2018-03-28 ザ ボード オブ トラスティーズ オブ ザ レランド スタンフォード ジュニア ユニバーシティー 光パラメトリック発振器のネットワークを使用する計算
GB201402736D0 (en) * 2013-07-26 2014-04-02 Isis Innovation Method of training a neural network
CN103473213A (zh) * 2013-09-12 2013-12-25 中国科学院半导体研究所 用于光学向量-矩阵乘法器并行信息加载和提取的系统
CN105531946B (zh) 2013-12-23 2018-01-19 华为技术有限公司 一种光差分信号的发送和接收方法、装置和系统
WO2015124954A2 (en) * 2014-02-24 2015-08-27 Rockley Photonics Limited Detector remodulator and optoelectronic switch
US9354039B2 (en) * 2014-06-06 2016-05-31 Massachusetts Institute Of Technology Methods, systems, and apparatus for programmable quantum photonic processing
US9239264B1 (en) * 2014-09-18 2016-01-19 Joseph R. Demers Transceiver method and apparatus having phase modulation and common mode phase drift rejection
WO2016051410A1 (en) * 2014-10-02 2016-04-07 B.G. Negev Technologies And Applications Ltd., At Ben-Gurion University All-optical silicon-photonic constellation conversion of amplitude-phase modulation formats
US9544062B2 (en) 2014-12-22 2017-01-10 Opel Solar, Inc. Coherent optical receiver
US10009135B2 (en) * 2015-02-06 2018-06-26 The Trustees Of Princeton University System and method for photonic processing
US9753224B2 (en) * 2015-03-25 2017-09-05 The Board Of Trustees Of The Leland Stanford Junior University Field-programmable optical component
WO2016191679A1 (en) * 2015-05-28 2016-12-01 Massachusetts Institute Of Technology Apparatus and methods for quantum key distribution
US9941957B2 (en) 2016-01-07 2018-04-10 Luxtera, Inc. Method and system for connectionless integrated optical receiver and transmitter test
CN105681787B (zh) * 2016-01-22 2019-01-18 北京大学 对时空信号进行编码的方法和装置
GB2551685B (en) * 2016-02-16 2019-12-11 Toshiba Kk An optical device, a transmitter for a quantum communication system and a quantum communication system
US10126572B2 (en) 2016-03-31 2018-11-13 Huawei Technologies Co., Ltd. Automatic endless polarization controller for a silicon-on-insulator platform
CA3026091A1 (en) * 2016-06-02 2017-12-07 Massachusetts Institute Of Technology Apparatus and methods for optical neural network
US10148360B2 (en) * 2016-06-17 2018-12-04 Nxgen Partners Ip, Llc System and method for communication using prolate spheroidal wave functions
US10326526B2 (en) * 2016-09-08 2019-06-18 Nxgen Partners Ip, Llc Method for muxing orthogonal modes using modal correlation matrices
US10274989B2 (en) * 2016-10-13 2019-04-30 Fathom Computing Wavelength multiplexed matrix-matrix multiplier
WO2018098230A1 (en) 2016-11-22 2018-05-31 Massachusetts Institute Of Technology Systems and methods for training neural networks
US10095262B2 (en) * 2016-12-12 2018-10-09 The Aerospace Corporation Systems and methods for performing linear algebra operations using multi-mode optics
US10382139B2 (en) * 2016-12-21 2019-08-13 Ceragon Networks Ltd. Polarization pre-coding for a single carrier communication system
JP6970513B2 (ja) 2017-02-17 2021-11-24 キヤノン株式会社 光電変換装置
US11290150B2 (en) * 2017-05-03 2022-03-29 Assia Spe, Llc Systems and methods for implementing high-speed waveguide transmission over wires
US10634851B2 (en) 2017-05-17 2020-04-28 Massachusetts Institute Of Technology Apparatus, systems, and methods for nonblocking optical switching
US11017309B2 (en) * 2017-07-11 2021-05-25 Massachusetts Institute Of Technology Optical Ising machines and optical convolutional neural networks
US10197971B1 (en) * 2017-08-02 2019-02-05 International Business Machines Corporation Integrated optical circuit for holographic information processing
US10757450B2 (en) 2017-10-05 2020-08-25 Cable Television Laboratories, Inc System and methods for data compression and nonuniform quantizers
CN111713101B (zh) 2017-12-11 2022-05-13 普罗菲西公司 基于事件的图像传感器及其操作方法
US10236952B1 (en) * 2018-01-17 2019-03-19 B. G. Negev Technologies And Applications Ltd., At Ben-Gurion University Energy-efficient power and offset allocation of spatial multiplexing in multimode fiber
WO2020027868A2 (en) * 2018-02-06 2020-02-06 Massachusetts Institute Of Technology Serialized electro-optic neural network using optical weights encoding
US11922136B2 (en) * 2018-02-23 2024-03-05 The George Washington University Residue arithmetic nanophotonic system
US10345519B1 (en) * 2018-04-11 2019-07-09 Microsoft Technology Licensing, Llc Integrated optical beam steering system
US11494461B2 (en) * 2018-04-17 2022-11-08 The Trustees Of The University Of Pennsylvania Metastructures for solving equations with waves
US10670860B2 (en) * 2018-04-30 2020-06-02 The Trustees Of Princeton University Photonic filter bank system and method of use
WO2019217835A1 (en) 2018-05-10 2019-11-14 The Board Of Trustees Of The Leland Stanford Junior University Training of photonic neural networks through in situ backpropagation
US10740693B2 (en) * 2018-05-15 2020-08-11 Lightmatter, Inc. Systems and methods for training matrix-based differentiable programs
JP7362727B2 (ja) * 2018-05-15 2023-10-17 ライトマター インコーポレイテッド フォトニック処理デバイス及び方法
TW202013265A (zh) * 2018-06-04 2020-04-01 美商萊特美特股份有限公司 使用可編程奈米光子器件計算旋積的方法
WO2019236250A1 (en) * 2018-06-04 2019-12-12 Lightmatter, Inc. Real-number photonic encoding
US11507818B2 (en) * 2018-06-05 2022-11-22 Lightelligence PTE. Ltd. Optoelectronic computing systems
US10461967B1 (en) 2018-06-22 2019-10-29 Elenion Technologies, Llc Optical domain equalization for coherent optical receivers
US11628902B2 (en) 2018-08-01 2023-04-18 Huffy Corporation Tool-less steering wheel assembly
WO2020096913A1 (en) * 2018-11-08 2020-05-14 Luminous Computing, Inc. System and method for photonic computing
US11604978B2 (en) * 2018-11-12 2023-03-14 Massachusetts Institute Of Technology Large-scale artificial neural-network accelerators based on coherent detection and optical data fan-out
US11073658B2 (en) * 2018-12-28 2021-07-27 Universitat Politècnica De València Photonic chip, field programmable photonic array and programmable circuit
WO2020149871A1 (en) 2019-01-16 2020-07-23 Lightmatter, Inc. Optical differential low-noise receivers and related methods
US11551056B2 (en) * 2019-01-29 2023-01-10 Hewlett Packard Enterprise Development Lp Staged neural networks for solving NP hard/complete problems
WO2020176538A1 (en) * 2019-02-26 2020-09-03 Lightmatter, Inc. Hybrid analog-digital matrix processors
CN114514490A (zh) 2019-07-29 2022-05-17 轻物质公司 使用线性光子处理器进行模拟计算的系统和方法
US20220261645A1 (en) * 2021-02-16 2022-08-18 Lightmatter, Inc. The accuracy of low-bitwidth neural networks by regularizing the higher-order moments of weights and hidden states
IL291772A (en) * 2021-03-31 2022-10-01 Cognifiber Ltd Ultra wideband optical data processor

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH03204624A (ja) * 1990-01-08 1991-09-06 Sumitomo Cement Co Ltd 光ニューラル演算装置
JPH04227517A (ja) * 1990-03-30 1992-08-17 Hughes Aircraft Co データ処理システム及び線形計画法
US8027587B1 (en) * 2007-08-21 2011-09-27 Sandia Corporation Integrated optic vector-matrix multiplier
JP2015169847A (ja) * 2014-03-07 2015-09-28 国立大学法人徳島大学 位相感応型光増幅器及び励起光位相同期回路
US20180081388A1 (en) * 2016-09-22 2018-03-22 Hewlett Packard Enterprise Development Lp Concurrently performing attribute-dependent operations on signals

Also Published As

Publication number Publication date
JP7362727B2 (ja) 2023-10-17
US20230412279A1 (en) 2023-12-21
KR20210020912A (ko) 2021-02-24
EP3803265A4 (en) 2022-01-26
US11626931B2 (en) 2023-04-11
SG11202011352SA (en) 2020-12-30
EP3803265A1 (en) 2021-04-14
TWI818020B (zh) 2023-10-11
US11218227B2 (en) 2022-01-04
TW202403491A (zh) 2024-01-16
WO2019222185A1 (en) 2019-11-21
US20200396007A1 (en) 2020-12-17
CN112384748A (zh) 2021-02-19
US10763974B2 (en) 2020-09-01
US12113581B2 (en) 2024-10-08
CN114912604A (zh) 2022-08-16
US20220094443A1 (en) 2022-03-24
CN112384748B (zh) 2022-06-17
US20190356394A1 (en) 2019-11-21
CA3100326A1 (en) 2019-11-21
TW202020598A (zh) 2020-06-01
JP2024001148A (ja) 2024-01-09

Similar Documents

Publication Publication Date Title
JP7362727B2 (ja) フォトニック処理デバイス及び方法
US11475367B2 (en) Systems and methods for training matrix-based differentiable programs
US12033065B2 (en) Convolutional layers for neural networks using programmable nanophotonics
US10608663B2 (en) Real-number photonic encoding
TWI831932B (zh) 混合類比-數位處理器及該處理器中執行的方法
AU2019282632A1 (en) Optoelectronic computing systems
KR20220039775A (ko) 선형 포토닉 프로세서를 이용한 아날로그 계산을 위한 시스템들 및 방법들
EP3912096A1 (en) Optoelectronic computing systems
CN113496281A (zh) 光电计算系统
TWI852756B (zh) 光子處理系統及方法
Serikawa et al. Quantum information processing with a travelling wave of light
CN112912900B (zh) 光电计算系统
Pasricha Optical Computing for Deep Neural Network Acceleration: Foundations, Recent Developments, and Emerging Directions
Cheng et al. Direct Optical Convolution Computing Based on Arrayed Waveguide Grating Router
WO2023122369A1 (en) Photonic and electronic hamiltonian machines

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20220426

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20220426

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20230525

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20230613

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20230721

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20230905

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20231004

R150 Certificate of patent or registration of utility model

Ref document number: 7362727

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150