Coherent Photonic Computing Architecture
The coherent photonic circuit architecture addresses the challenges of scalability and accuracy in neuromorphic computing by using a coherent photonic circuit with optical splitters, input cells, weighting cells, and optical combiners, enabling efficient and precise computation for various neural network models.
Patent Information
- Application Number
- JP2023508467
- Authority / Receiving Office
- JP · JP
- Patent Type
- Patents
- Current Assignee / Owner
- Priority Date
- 2020-08-06
- Filing Date
- 2021-08-06
- Publication Date
- 2025-06-13
- Estimated Expiration
- 2041-08-06
AI Technical Summary
Existing photonic computing methods for neuromorphic computing, such as those using wavelength-division multiplexing (WDM) or complex spatial layouts with Mach-Zehnder interferometers, face challenges in scalability, accuracy, and the ability to implement non-linear activation functions all-optically.
A coherent photonic circuit architecture that implements linear algebraic operations using an optical splitter, input cells, weighting cells, and an optical combiner, allowing for scalable and precise computation while enabling the selective implementation of non-linear activation functions in either the photonic or electronic circuit.
The solution achieves scalable and high-precision computation, fitting well within a small footprint, low power, and low cost implementation as a photonic integrated circuit (PIC). It enables flexible computing platforms for various neural network models and allows for the efficient implementation of different types of neural networks.
Smart Images

Figure 0007692466000006 
Figure 0007692466000007 
Figure 0007692466000008
Abstract
Description
Technical Field
[0001] The present disclosure generally relates to photonic circuits and architectures for computing applications, including, for example, neural mimicking computing and the like.
[0002] Cross-reference to Related Applications This application claims the benefit and priority of U.S. Provisional Patent Application No. 63 / 062,163, filed on August 6, 2020.
Background Art
[0003] Photonic (or equivalently, optical) computing has newly emerged as a promising candidate for maintaining progress in computing power today when the improvement of the computing performance of conventional von Neumann architectures, which have conventionally been characterized by Moore's law and Koomey's law, has begun to plateau. Compared with electronic computing, photonics shows promise in terms of speed improvement and energy saving. In fact, the attempt to shift computing from the electronic domain to the optical domain is greatly triggered by the speed and energy-related advantages that photonics has brought to the fields of telecommunication and data communication.
[0004] Although there are many potential applications of photonic computing, one area that has received considerable attention is neuromorphic computing, which is a computing paradigm inspired by the brain and in which large-scale integrated analog or digital circuits mimic neurobiological functions. In particular, various methods have been proposed for photonic implementation of linear artificial neural networks that mathematically correspond to weighted sums. Many of the proposed methods employ wavelength-division multiplexing (WDM) to encode each neuron input signal onto a different wavelength. These methods can demonstrate the principle proof of optical implementation of linear neurons, but they do not scale well when accompanied by a larger number of neuron inputs. This is because the circuit complexity increases significantly with each additional wavelength, thereby severely limiting the suitability for practical applications. Also, in many WDM schemes, only unweighted weights are applied in the optical domain, and it only enables the addition or subtraction of weighted signals in the electronic domain relying on optoelectronic conversion (for example, summing positive and negative weights using a balanced photodetector), which inhibits the subsequent utilization of all-optical non-linear activation functions. In an alternative method proposed previously, the linear sum is implemented in a complex spatial layout including multiple cascaded Mach-Zehnder interferometers (MZIs) by coherent electric field addition (while utilizing the phase of the optical carrier field for the purpose of sine encoding), which is described, for example, in Patent Document 1. This coherent method can result in optical linear neurons with a single wavelength and a single laser, but the signal error accumulates as it passes through the MZI cascade, currently preventing a sufficiently high accuracy or a sufficiently low bit error rate (BER) for large-scale practical applications.
Prior Art Documents
Patent Documents
[0005] [Patent Document 1] U.S. Patent Application Publication No. 2018 / 0260703 [Summary of the Invention]
[0006] Disclosed is a coherent photonic circuit architecture that implements linear algebraic operations, as well as a hybrid photonic-electronic computing system that integrates a photonic circuit with an electronic circuit at an interface between inputs, outputs, and / or computational layers. Various embodiments are described, with particular reference to applications related to neuromorphic computing, and specifically, the implementation of linear neurons and linear neural network layers is discussed. Mathematically, the operations of a linear neuron or neural network layer on a set of inputs correspond to a weighted sum over the inputs using a set of weights associated with the neuron or a set of multiple sets of weights associated with the neural network layer, and these operations can also be described as the scalar product of an input vector with a weight vector or matrix. Thus, examples of photonic implementations of linear algebraic operations (e.g., when multiplying a vector by a vector or a vector by a matrix) can be exemplified with reference to examples of linear neural networks without loss of generality. [Brief Description of the Drawings]
[0007] Disclosed herein is a system and a photonic circuit architecture that optically implement linear algebraic operations, such as those used within an artificial neural network. Various embodiments of the inventive subject matter are described in relation to the accompanying drawings, which are as follows.
[0008]
Figure 1
Figure 2
Figure 3
Figure 4
Figure 5
Figure 6
Figure 7
Figure 8
Figure 9
Modes for Carrying Out the Invention
[0009] The disclosed photonic circuit architecture is scalable to any number of inputs while providing high precision, and also fits well with a small footprint, low power, and low cost implementation as a photonic integrated circuit (PIC) using standard silicon fabrication foundries and processes. Such a hybrid photonic-electronic system with a PIC provides a flexible computing platform, which can be adapted to many neural network models when utilized in the field of neuromorphic computing, and also enables selective implementation of specific functions, such as non-linear activation functions, in either the photonic circuit or the electronic circuit for performance optimization.
[0010] According to various embodiments, a coherent photonic circuit is constructed with the following elements: an optical splitter that divides incoming carrier light into a plurality of optical carrier signals; an “input cell” (e.g., a neural input cell that adds a neural input) configured to add an arithmetic input to the optical carrier signal to generate an optical input signal to an arithmetic weight layer (e.g., a neural network layer); a “weighting cell” (e.g., a neural weighting cell that adds a neural weight) configured to add an arithmetic weight to the optical input signal; an optical combiner that coherently combines the weighted optical input signal into an optical output signal encoding an arithmetic output (e.g., a linear neuron output); a photodetector that measures the optical output signal and thereby converts the arithmetic output (hereinafter sometimes simply referred to as “output”) into the electronic domain; any additional coupling and waveguide-related infrastructure for connecting the various listed components. The arithmetic input and arithmetic weight (hereinafter sometimes simply referred to as “input” and “weight”) are added to the electric field of the optical carrier signal, and this can be done, for example, with an optical amplitude modulator (e.g., an electro-absorption modulator) and an optical phase shifter that can encode the sign of the weight and / or input with a phase shift of zero or π. The optical input signal resulting from the modulation of the optical carrier signal to which the arithmetic input is added is also referred to as the “first modulated optical signal,” and the weighted optical signal resulting from the further modulation of the optical input signal to which the arithmetic weight is added is also referred to as the “second modulated optical signal.” The optical signals are considered to be combined “in a coherent manner” if the combined signals are temporally aligned and synchronized within any phase difference intentionally added as part of the encoded input or weight (e.g., up to a phase shift of π that changes the direction of the field amplitude to encode a negative sign). A coherent combination or interference for signals that can have different phases with a phase shift of π results in an algebraic sum with respect to the (signed) signal amplitudes.For a given set of neuron inputs, a single set of neural weighting cells associated with each input, along with coupling and waveguide infrastructure that provides a coherent combination of weighted input signals into an optical output signal, forms an implementation of a single linear optical neuron.
[0011] In various embodiments, the weighting cells are physically arranged in an array, where the rows of the array correspond to different respective arithmetic inputs and receive optical input signals from respective input cells associated with the rows, and the columns of the array correspond to different respective arithmetic outputs and include respective associated sets of weights. (The terms “row” and “column” are used merely to designate two dimensions of the array, and the orientation of the array is irrelevant, with inputs and outputs arbitrarily associated respectively. When the rows of the array are associated with inputs and the columns are associated with outputs, the rows and columns of the array map directly to the rows and columns of a weight matrix multiplied by an input vector from the left.) In neural network applications, multiple columns corresponding to multiple sets of weights implement multiple respective neurons or nodes within a neural network layer.
[0012] Within the array configuration of the weighting cells, multiple optical waveguides arranged along a row can serve to carry optical input signals from neural input cells to neural weighting cells, and these waveguides may also be referred to as “optical input waveguides” or simply “input waveguides”. Also, in an example implementation of an optical combiner, multiple optical waveguides arranged along a column and crossing the input waveguides can serve to sequentially combine weighted optical input signal outputs from neural weighting cells along each column into each output signal for the column, and these waveguides may also be referred to as “optical output waveguides” or simply “output waveguides”. In this photonic crossbar configuration, each weighting cell is coupled between one of the input waveguides and one of the output waveguides.
[0013] To effect coherent addition of weighted optical input signals along each column, the optical path lengths from the input cells to the output of each optical combiner (e.g., the location on the output waveguide where all weighted optical input signals are combined) are configured to be equal, and any difference in geometric path lengths can be compensated by optical delay lines (e.g., can be placed in the input waveguide preceding the weighting cell). Further, according to various embodiments, to ensure that the modulation amplitude of the weighted optical input signal directly reflects the product of the input and the weight, the optical power ratio between the input waveguides and the coupling ratios along the input and output waveguides are collectively configured as follows: for passively operated (non-modulated) input and weighting cells, the signals received from all optical paths are power balanced at their combination location. Advantageously, the weighted sum along each column with respect to the optical input signals is separate and independent from all other columns, and the associated arithmetic errors are fixed and independent of the number of columns (e.g., corresponding to the number of neurons), so that the architecture can be scaled without sacrificing accuracy.
[0014] By using coherent electric field addition to perform algebraic summation with respect to the inputs, the disclosed photonic circuit architecture eliminates the need to use multiple wavelengths to carry different signals, resulting in a scalability that cannot be practically achieved with existing WDM schemes. However, the disclosed photonic circuit is compatible with WDM schemes and, optionally, can process light of different wavelengths in parallel, substantially increasing the physical integration density of the arithmetic units (i.e., the physical neuron integration density, e.g., for neural network applications) using a single crossbar array of weighting cells and associated input cells. For this purpose, the input cells and / or the weighting cells can include a pair of a demultiplexer and a multiplexer, can bracket a plurality of amplitude modulators and / or phase shifters, and can attach different inputs and / or different weights to components of different wavelengths.
[0015] In the context of neural emulation applications, various specific neural network types or models can be implemented by modulating multiplexed and / or demultiplexed signals in appropriate combinations. For example, to achieve the weight sharing used in a convolutional neural network (CNN), while imparting multiple different neuron inputs to neural input cells onto a demultiplexed optical carrier signal at different wavelengths, a single weight is applied to the multiplexed signal at each neural weighting cell. On the other hand, for a fully connected neural network, a single neuron input is applied onto an incoming multiplexed optical carrier signal within each neural input cell, and each neural weighting cell imparts multiple different neuron weights onto a demultiplexed optical input signal for different wavelength components. In this case, a single column of neural weighting cells implements separate neurons for each wavelength. When both neural input cells and neural weighting cells act on demultiplexed optical signals of different wavelengths, each column of the crossbar matrix implements a plurality of independent parallel neurons equal in number to the number of wavelengths.
[0016] In some embodiments, (e.g., neural) input and weighting cells each have two optical paths: one that imparts an input or weight to a single, possibly multiplexed, optical signal, and another that further branches into a plurality of optical signals of individually tunable different wavelengths. In these embodiments, optical switches (e.g., electro - optical or thermo - optical switches) before and after the (neural) input and weighting cells can be configured to direct the incoming optical signal within each cell to either path. Due to this configurability, it becomes possible to program a photonic neural network to be of any of the neural network types described above. In other words, a single hardware photonic circuit can efficiently implement different types of neural networks via optical switch settings.
[0017] To form a functioning computing system, a photonic circuit is used together with an electronic circuit that provides control signals for drivers associated with optical amplitude modulators and phase shifters of input cells and / or weighted cells and processes photodetector outputs. For example, in an artificial neural network application, the photodetector outputs correspond to neuron outputs of a neural network layer, and these can be processed to compute neuron inputs for the next layer in the neural network. In some embodiments, such a next layer is implemented as a separate physical array of neural weighted cells and associated neural input cells. In other embodiments, multiple layers of the neural network are implemented sequentially in multiple computational cycles, which is done using a single physical array of neural weighted cells and associated neural input cells, and this is done by applying the neuron inputs and neuron weights of each network layer, which may be stored in the memory of the electronic circuit, to the optical amplitude modulators and phase shifters during each cycle. The electronic circuit provides neural network functionality (e.g., implementation of non-linear activation layers, pooling layers, etc.) and can also perform preprocessing and postprocessing operations on inputs to the neural network and outputs generated thereby. Generally, the electronic circuit can be an analog circuit or a mixed-signal (analog-digital) circuit that includes A / D and D / A converters (ADCs and DACs) that convert between the analog and digital domains. One advantage of digital circuits is that they can support mixed-precision computations.
[0018] The disclosed computing platform enables alternative implementation of several functions in a photonic circuit or an electronic circuit. For example, in a neural emulation application, the electronic circuit may include a memory for storing neuron weights. Alternatively or additionally, if the neuron weights for a neural weighting cell are invariant or change less frequently than the frequency of change of the input, they can be stored directly within the neural weighting cell (e.g., within an optical phase change memory). Further, non-linear activation can be applied to the linear neuron output by an all-optical activation unit preceding the photodetector, or, when converting the optical output signal to the electronic domain, by an analog or digital electronic circuit; alternatively, the electro-optical non-linearity of the photodetector itself can serve as the non-linear activation. The electronic circuit can, in some embodiments, also implement one or more neural network layers. For example, a convolutional neural network can be implemented with a photonic convolutional layer, a digital electronic pooling, and a fully connected layer. Also, a series of photonic neural network layers can interface through an electronic circuit that electronically provides neuron inputs to the neural input cells of one layer based on the neuron outputs measured at the photodetectors of the preceding layer as described above, and can also directly provide the optical output signal of one layer to the waveguide of the next layer (in which case the neural input cells are omitted or operated passively).
[0019] The above will be better understood from the detailed description hereinafter with reference to the accompanying drawings.
[0020] FIG. 1 conceptually shows an exemplary artificial neuron 100 corresponding to an individual node of an artificial neural network. The artificial neuron 100 generally has a plurality of inputs X iTake 102 (i = 1... N, where N is the "fan-in" of the neurons), and typically process these in two stages (a linear neuron stage 104 followed by a non-linear activation stage 106) to generate a (single) neuron output 108. The linear neuron stage 104 functions like a linear algebra unit, and for each input X i multiply each by the respective neuron weight W i 110, and take the sum at S112 with respect to the weighted inputs to yield a linear neuron output 114. The weights 110 can be positive or negative, and by means of the sign of the weights 110, it effectively enables both addition and subtraction for the inputs 102. In the non-linear activation stage 106, a non-linear function is applied to the linear neuron output 114 to yield the overall neuron output 108. Such non-linear activation functions include, without limitation, the following: logistic function (sigmoid), trigonometric functions (sine-like, hyperbolic tangent-like, etc.), rectified linear unit (ReLU), inverse square root linear unit (ISRU), exponential linear unit (ELU), etc.
[0021] Figure 2 is a schematic diagram showing an example of a photonic circuit 200 that implements individual artificial neurons 100 according to various embodiments. The photonic circuit 200, hereinafter simply referred to as a "photonic neuron", includes a coherent linear neuron stage 202 and a non-linear activation and conversion unit 204. The coherent linear neuron stage 202 (hereinafter also simply referred to as a "coherent linear neuron") is implemented by a multi-path interferometer formed by an optical splitter 206, an optical combiner 208, and a plurality of parallel optical interferometer branches 210 between the optical splitter 206 and the optical combiner 208. In operation, the splitter 206 splits the incoming carrier light 212 into a plurality of optical carrier signals among the parallel interferometer branches 210, and phase and amplitude modulation are performed on each of them at each interferometer branch 210. The modulated optical signals related to the outputs obtained as a result of the interferometer branches 210 interfere in the optical combiner 208 to produce a single optical output signal, which corresponds to the coherent sum of the electric fields of the modulated optical carrier signals, and this constitutes the linear neuron output 114. The interferometer branches 210 include one "neuron input branch" 214 for each neuron input X i 102 (i = 1...N), and optionally include a "bias branch" 216 for assisting in encoding the sign of the coherent sum with respect to the neuron input branch 214 regarding the intensity of the optical output signal. Details of this will be described later. In various embodiments, the optical splitter 206 is configured to send half of the incoming light to the bias branch 216 and split the remaining half among the neuron input branches 214. However, other splitting ratios can also be taken between the entire bias branch 216 and the neuron input branches 214.
[0022] Each of the neuron input branches 214 may include two amplitude modulators 218, 220 and at least one phase shifter 222. In operation, an electronic driver circuit 224 associated with the amplitude modulators 218, 220 and the phase shifter 222 controls a first optical amplitude modulator 218 within each neuron input branch 214 to add the absolute value of each neuron input X i 102 to the optical input signal, and also controls a second optical amplitude modulator 220 to add the absolute value of each neuron weight W i 110 to the optical input signal. The phase shifter 222 is controlled to encode the product of the signs of the neuron input X i 102 and the weight W i 110, for example, causing a phase shift of φ i = π for a negative overall sign (product of signs), and also causing a phase shift of φ i = 0 for a positive one (the phase shift φ i = π induces a negative overall sign (product of signs), and a phase shift of φ i = 0 induces a positive one. (The phase shift φ iis relative to some reference phase common to all of the neuron input branches 214. More specifically, the electrical drive signal of the phase shifter 222 can be the voltage resulting from the addition of the neuron input coincidence and the weight coincidence voltages: the voltage encoding the coincidence of the neuron inputs can be, for example, 0V (positive) or 1V (negative), and the voltage encoding the coincidence of the weights can be 0V (positive) or -1V (negative); adding the two voltages results in 0V when both the neuron input and the weight are either positive or negative, and -1V or 1V when the neuron input and the weight have different signs. Applying -1V or 1V to the phase shifter 222 results in a phase shift of π in either case. Instead of using a single phase shifter 222 to impart the product of the signs of the neuron input and the neuron weight, two phase shifters can be used to separately encode the phase or sign of the neuron input and the phase or sign of the neuron weight. In either case, by encoding the signs of the neuron input and the weight using one or more phase shifters, the electric field amplitudes of the modulated optical carrier signals can be effectively added or subtracted from each other by interference in the optical combiner 208, resulting in an overall positive or overall negative electric field. For complex-valued neuron inputs X i 102 and weights W i 110, two phase shifters within each branch 214 can separately encode the complex phases of the neuron inputs X i 102 and weights W i 110, or a single phase shifter 222 within each branch 214 can encode the relative complex phase difference between them.
[0023] In various embodiments, each of the optical splitter 206 and the optical combiner 208 is formed by a cascade of branching optical couplers. For example, incoming carrier light is split into N = 2 N'To split into the neuron input branches 214, the optical splitter 206 can be configured as a symmetric tree with N' layers of 3dB couplers that continuously split light, and the optical combiner 208 can be configured as an anti-symmetric tree with N' layers of 3dB couplers that continuously recombine the modulated signals. With this configuration, the incoming light is evenly split among the neuron input branches 214, and it is ensured that the modulated light is recombined at an equal ratio with respect to the input branches 214. If the incoming light 212 is subjected to such an even split among 2 N' input branches 214 (assuming there is no bias branch 216), representing the electric field of the incoming carrier light 212 as E in at the output of the optical combiner 208, the electric field amplitude E out of the optical interference signal is expressed by the following equation:
Equation
[0024] For example, E outThe phase of an optical signal such as this and any symbol information encoded therein will of course be lost if the intensity of the signal is measured. Therefore, in some embodiments, in order to discriminate between the overall positive and overall negative of the coherent sum of the modulated optical output signals received from the neuron input branches 214, an offset is applied to the coherent sum by a bias signal applied via the bias branch 216. The bias branch 216 can include an amplitude modulator 226 and an optional phase shifter 228 controlled by an electronic driver circuit, whereby bias weights W b and a phase shift φ b can be added. Similar to the phase shifter 222 in the neuron input branch 214, the phase shifter 228 in the bias branch 216 can set the phase shift φ b to π for a relative negative bias with respect to the optical input signal associated with the neuron input, and to zero for a positive bias. (Note that the phase shifter 228 becomes unnecessary when the phase of the bias signal is used as a common reference phase relative to which the phase shift φ i in the neuron input branch 214 is relatively set.) The amplitude modulator 226 can be operated to generate an offset electric field with an amplitude sufficient to exceed the maximum expected absolute value of the coherent sum of the weighted optical input signals output by the neuron input branch 214 in order to ensure that the overall interference signal has a positive electric field amplitude. If a 1:1 split is made between the neuron input branch 214 and the bias branch 216 with respect to the incoming light 212, and an equal split is made among the N neuron input branches 214, the electric field amplitude E out of the optical interference signal at the output of the optical combiner 208 is represented by the following equation:
Equation
[0025] As can be seen from this, the phases of the bias term and the neuron input term are aligned, and the weight W iand input X i If neither of them exceeds 1 (similar to the case where all amplitude modulators simply operate equivalently without attenuating or amplifying the signal), a bias weight W equal to 1 b ensures (as a self - evident case implemented by the bias branch 216 without the amplitude modulator 226) that the bias term exceeds or is equal to the absolute value of the neuron input term; thus, in some embodiments, the bias branch 216 can be an additional interferometer arm that receives half of the input light 212 but no other additional inputs.
[0026] As shown in FIG. 2, the optical output signal of the coherent linear neuron 202 (reflecting the linear neuron output 114) can be provided to the non-linear activation and conversion unit 204, which applies an activation function and generates an electronic neuron output signal 230. In some embodiments, the optical non-linear activation unit 232 implements the activation function optically, resulting in an optical neuron output signal encoding the output value of the activation function. Those skilled in the art are familiar with all-optical activation units. In one example, when constructing an optical activation unit, a semiconductor optical amplifier Mach-Zehnder interferometer (SOA-MZI) operating in a regime of thorough saturation and configured in a specifically biased scheme is followed by an SOA operating in its own low-signal gain region, and both devices serve as wavelength converters; the details of this optical activation unit are described in the following reference: G. Mourgias-Alexandris et al., “An all-optical neuron with sigmoid activation function,” Optics Express, Vol. 27, No. 7 (Apr 2019). The optical neuron output signal 234 emerging from the optical non-linear activation unit can be converted into the electronic neuron output signal 230, for example, by measuring the intensity using a photodetector 236. Alternatively, the photodetector 236 can serve to implement the non-linear activation function, and the amplitude |E of the optical interference signal out| is photoelectrically converted into an electronic signal proportional to the square of the amplitude. The non-linear activation and conversion unit 204 may also include a circuit (not shown) following the photodetector 236, and this circuit electronically applies an activation function after the optical linear neuron output 114 is converted into the electronic domain. Thus, generally, the electro-optic non-linearity essentially applied by the photodetector 236 may itself constitute a non-linear activation or, in combination with a preceding all-optical or electronic non-linearity, implement an overall non-linear activation function.
[0027] In various embodiments, the photonic neuron 200 may be implemented within a PIC such as a silicon-on-insulator (SOI) substrate (although bulk optical implementations are also possible in principle). Mentioning the advantages, the PIC implementation provides a small form factor, allows controllability and high circuit complexity, and can be manufactured using existing semiconductor foundries, which means mass production at low cost. In the photonic neuron PIC, integrated optical waveguides (e.g., rectangular ridge or rib-shaped waveguides formed in the silicon device layer of the substrate) deliver the carrier light 212 to the photonic neuron 200, implement the interferometer branches 214, 216, and guide the optical interference signal from the linear neuron stage 202 to the optical non-linear activation unit 232 and / or (if present) the photodetector 236. The optical splitter 206 and the optical combiner 208 can be implemented as a cascade of waveguide-based power splitters or directional couplers, and may include, for example, Y-junction couplers or multimode interferometer (MMI) couplers. The photodetector 236 can be, for example, a waveguide-based p-i-n diode.
[0028] The phase shifters 222, 228 may each include an electro-optic and / or thermo-optic phase shifter that modulates the refractive index in the interferometer branches 214, 216 based on a waveguide by applying voltage or heat. In the case of the thermo-optic phase shifter, heat is applied by one or more ohmic heating filaments; thus, the thermo-optic phase shifter can be controlled via an electronic signal, similar to the electro-optic phase shifter. Similarly, the amplitude modulators 218, 220, 226 can be implemented by electro-optic or thermo-optic components, such as, for example, an electro-absorption modulator (EAM), an optical response modulator (e.g., an optical ring modulator), or a quantum-confined Stark effect (QCSE) EAM. Since the EAM affects the refractive index and absorption properties of the waveguide, the phase shifter can be implemented with an EAM (e.g., three EAMs in series), and the desired phase shift can be added while canceling out the incidental amplitude modulation caused by each individual EAM with each other.
[0029] In various embodiments, the functionality for specifically weighting an amplitude modulator (and / or phase shifter) is provided by a non-volatile optical memory implemented by an optical phase-change material (O-PCM). For example, O-PCMs such as various chalcogenide alloys (e.g., germanium-antimony-tellurium (GST) alloy) can gradually transition from a crystalline state to an amorphous state and can be continuously brought into any physical state between crystalline and amorphous by controlled heating. Different physical states have different associated electrical and / or optical properties. Thus, when an O-PCM is disposed as a thin film, for example, on a waveguide, it can cause changes in optical properties such as the refractive index and absorption rate of the waveguide itself (e.g., due to the overlap of the evanescent field of any waveguide mode of the O-PCM film). To mention the advantages, the O-PCM-based optical memory is non-volatile and rewritable. Using O-PCM, a fixed optical amplitude modulation and / or a fixed phase shift can be directly stored in the PIC without the need for an electronic drive signal.
[0030] The principle of coherent computing for single-weight summation with respect to a set of inputs was described with reference to an example of an individual photonic neuron 200. Next, a photonic architecture that simultaneously computes multiple weighted sums for the same set of inputs with respect to each of a plurality of sets of weights (corresponding to the multiplication of an input vector and a weight matrix) will be described. For example, it is conceivable to integrate a plurality of coherent linear photonic neurons into a neural network layer.
[0031] FIG. 3 is a schematic diagram of an example of a photonic crossbar 300 implementing a neural network layer according to various embodiments. The photonic crossbar 300 includes an array of neural weighting cells 302, each of which is coupled between one of a plurality of first waveguides arranged along a row of the array and one of a plurality of second waveguides arranged along a column of the array, the latter intersecting the first waveguide at waveguide intersection 303 (or a 2×2 switch operating in a cross mode). Each column of the weighting cells 302 constitutes a separate set of weighting cells for computing a separate output (e.g., corresponding to a separate neuron within a neural network layer), and each row of the weighting cells 302 is associated with either one of the biases applied at one of the (e.g., neuron) inputs X i or a column. Each of the weighting cells 302 includes an amplitude modulator 304 and a phase shifter 306 (which correspond to the amplitude modulators 220, 226 and the phase shifter 228 along either one of the interferometer branches 210 of the photonic neuron 200 shown in FIG. 2), which apply the weighted weight W ij to the optical input signal, or the bias weighted weight W bj to the optical carrier signal for the bias, where i = 1...N numbers the inputs (N is, for example, the fan-in of the neuron) and j = 1...M numbers the set of weights (e.g., representing the neurons within the layer).
[0032] The rows of the weighting cells 302 associated with different inputs receive their optical input signals from respective input cells 308. Each input cell 308 includes (or in this example, "consists of") an amplitude modulator 310 (corresponding to the amplitude modulator 218 on one of the interferometer branches 210 of FIG. 2), which is the input X iIt plays the role of applying to create each first modulated optical signal. The input cell and bias branch 312 of the photonic crossbar 300 receive the carrier light from a single incoming optical waveguide 314, which branches into a plurality of first waveguides along the rows of the matrix. First, the bias branch 312 is split off by the optical splitter 316 and then successively branches into a plurality of input waveguides 318 associated with the neural input cell 308 in a cascade of bifurcating waveguide splitters (e.g., implemented as a Y-junction as shown in the figure). Collectively, the waveguide section that couples the incoming optical waveguide 314 to the input cell 308 and the waveguide splitters 316, 319, 320 in the middle thereof form an optical splitter (which functionally corresponds to the splitter 206 of the photonic neuron 200 in FIG. 2).
[0033] Each weighting cell 302 other than the last column takes as input an optical coupler 322 that functions as an optical tap, which couples a portion of the optical power guided in the input waveguide 318 or bias branch 312 associated with the weighting cell 302 to the weighting cell, and transmits the remaining optical power to the weighting cell 302 associated with the downstream column of the crossbar 300. The weighting cell 302 in the last column simply receives the optical power remaining in the input waveguide 318 downstream of the optical tap associated with the second-to-last column. Along each input waveguide 318 and bias branch 312 (collectively referred to as the first waveguide), the ratio of the optical power tapped to the weighting cell 302 can increase in the propagation direction of the optical input signal, and all the optical input signals received by the weighting cells 302 in each row can be made to have substantially the same power. Such power equalization between the columns of the crossbar 300 contributes to achieving a uniform signal-to-noise ratio and associated photonic calculation accuracy across different sets of weights implemented by the columns, and also ensures that the signal level of the optical input signal consistently reflects the calculated output value across the columns.
[0034] Each weighted cell 302 in any row except the first row further includes, as its output, optical couplers 324, 325 (e.g., those structurally similar to coupler 322 but operating in the opposite direction to a combiner) that couple the weighted optical input signal (or bias signal) generated by the weighted cell 302 (or the second modulated optical signal) to one of a plurality of second waveguides 326 (or output waveguides) associated with the columns of crossbar 300, thereby combining the output of that weighted cell 302 with the combined outputs of any weighted cells 302 upstream along each output waveguide 326. In other words, the second modulated optical signals are combined sequentially along output waveguide 326. The output of the weighted cells 302 in the first row serves as the basis point of output waveguide 326. Collectively, output waveguide 326 and optical couplers 324, 325 along each column form an optical combiner associated with the set of weights (or neurons) implemented by the column (which corresponds to the function of output combiner 208 of a single photonic neuron 200 as shown in FIG. 2). Note that the optical input signal added to the carrier signal first split by the cascade of waveguide splitters 319, 320 is also first recombined along output waveguide 326 in this embodiment. After the combination of the second modulated optical signals representing the weighted inputs, the coherent sum is combined with the bias signal at bias branch 312. Then, the optical output obtained as a result of output waveguide 326 encoding the computed output (e.g., a linear neuron) can be measured using photodetector 328.
[0035] The input cell 308 can be operated periodically, and during each calculation cycle, a new set of inputs can be appended to the generally continuous-wave optical carrier signal in the input waveguide 318. Accordingly, the optical input signal takes the form of pulses flowing through the photonic crossbar 300. To ensure that the pulses of each cycle interfere along each column, the photonic crossbar 300 is configured such that the optical path lengths from all input cells to the optical coupler 325 associated with the output of the Nth neural weighting cell 302 of the column are equal. As can be seen in FIG. 3, since the geometric path lengths can generally be different as a result of the array arrangement of the weighting cells 302, the crossbar 300 can include, for example, an optical delay line 330 in the input waveguide 318 between the output of the input cell 308 and the optical coupler 322 associated with the first column of the weighting cells 302. The delay line 330 delays the input signal pulses by a selected time delay interval Δτ 1 <Δτ 2 <...<Δτ N such that all pulses arrive at the couplers 324, 325 that recombine them at the same time. The optical delay line 330 can further include an adjustable phase shifter that is calibrated to ensure that the phases of all signal pulses are aligned (up to the phase difference reflecting the appended weights) at the recombination and interference points. Alternatively, the phase shifter 306 of the neural weighting cell 302 can operate to compensate for any phase difference between the optical paths to the recombination point in addition to appending the sign of the weight via a phase shift of zero or π.
[0036] Furthermore, the optical couplers 324 on the waveguide splitters 319, 320 of the input splitter and the output waveguide 326 (of the optical combiner) are collectively configured such that the second modulated optical signal output by the weighting cell 302 is equally weighted in the coherently combined optical output signal, ensuring that the amplitude of the output signal accurately reflects the sum of the weighted inputs to which an addition is made. For this purpose, the coupling ratios of the waveguide splitters 319, 320 and the optical coupler 324 are selected such that the optical signal is affected by the same product of amplitude reduction along each path passing through the coupler 325 in the Nth row of any given column starting from there including the splitter 319 (the branching start point of the input waveguide 318). For example, in one embodiment, the waveguide splitter 319 couples one third of the optical power to the input waveguide 318 associated with the first row. The remaining two thirds of the optical power enters the branches where each of a series of 3 dB waveguide splitters 320 divides the incoming optical power in half. In each output waveguide 326, the couplers 324 in the second to (N - 1)th columns that combine the first N - 1 weighted input signals are 3 dB couplers, and the coupler 325 in the Nth column combines the output of the associated neural weighting cell 302 and the input from the output waveguide 326 at a coupling ratio of 1:2. By these coupling ratios, the electric field amplitude of the optical signal propagating along the first path is multiplied by the following coefficients: 1 / √3 at the splitter 319, 1 / √2 at each of the N - 2 couplers 324 along the output waveguide 326 in the second to (N - 1)th columns, and √(2 / 3) at the coupler 325 in the Nth column. Similarly, and to reach the same product, the electric field amplitude of the optical signal propagating along each of the second to Nth paths is multiplied by the following coefficients: √(2 / 3) at the splitter 319, 1 / √2 at each of the total N - 2 splitters / couplers 320, 324 at the input coupler and along the output waveguide 326, and 1 / √3 at the coupler 325 in the Nth column. The coupling ratio of the splitter 316 that provides the bias branch 312 can be set taking into account not only the sensitivity of the photodetector 328 but also the overall loss along the optical path.
[0037] In the above description of the photonic crossbar 300 of FIG. 3, one possible layout and configuration for input cells and weighted cells is provided along with photonic circuits implementing linear calculations, such as optical splitters and optical combiners for neural network layers. Other geometric layouts and physical configurations are also conceivable that can perform weighted summation simultaneously for multiple sets of weights with respect to a set of inputs, with or without an array arrangement of weighted cells.
[0038] The photonic crossbar 300 shown in FIG. 3 shows the basic structure of an arithmetic layer implementing multiple distinct sets of weights, according to one embodiment, and can represent, for example, a neural network layer formed from multiple single-wavelength coherent linear neurons 200. In the description of FIGS. 4-7 below, it is shown how this basic structure can be enhanced to implement a WDM scheme that enables more optical operations with the same number of weighted cells 302 by performing operations in parallel at multiple wavelengths. These WDM schemes are particularly suitable for the implementation of neural networks (although not limited thereto) and substantially allow different neural network model configurations on the same underlying photonic hardware while increasing the neuron density.
[0039] FIG. 4 is a schematic diagram of an example of a WDM photonic circuit configuration 400 suitable for implementing multiple independent artificial neurons according to various embodiments. For simplicity, the photonic circuit configuration 400 is shown with only two interferometer branches 402, 404 each including a (neural) input cell 406 and a (neural) weighted cell 408. As will be readily understood by those skilled in the art, additional similar interferometer branches can be added to perform weighted summation for two or more inputs.
[0040] To facilitate WDM operations on the multiplexed optical input signals at branches 402, 404, each of input cell 402 and weighting cell 408 includes a demultiplexer 410 that divides the multiplexed signal into its (e.g., four, as shown) wavelength components, and a multiplexer 412 that recombines those components back into the multiplexed signal at the output of input cell 406 or weighting cell 408. In input cell 406, the demultiplexer 410 and multiplexer bracket a plurality of amplitude modulators 310, one for each wavelength, such that each input is appended to a different wavelength component of the optical carrier signal. Similarly, in weighting cell 408, the demultiplexer 410 and multiplexer 412 bracket amplitude modulators 304 and phase shifters 306 associated with different wavelengths so as to enable appending of different respective weights. For the multiplexed modulated optical signals at the outputs of the two interferometer branches 402, 404, they are made to interfere at output combiner 208 (e.g., implemented by a Y-junction as shown), and then separated again by wavelength at output demultiplexer 413, resulting in separate optical output signals (e.g., four output signals y 1 , y 2 , y 3 , y 4 ) for (e.g., four) different wavelengths. This WDM configuration can implement four independent dual-input neurons that generally operate on different input signals in a single column of neural weighting cells, as reflected in the following determinant sparse weight matrix representing neural network operations.
Number
[0041] As a variation, after the demultiplexer 413, a second layer of (four) separate weights for different wavelengths, a multiplexer, and a photodetector for measuring the combined intensity of the multiplexed signals at the output may be provided. In this case, the photonic structure implements two cascaded neurons, and the first neuron layer provides a square activation (by a photodetector that measures intensity rather than an electric field).
[0042] Optionally, as shown in FIG. 4, the input cell 406 and the weighting cell 408 can each include an alternative optical path 415 in which all wavelength components of the multiplexed optical carrier signal are jointly processed by a single amplitude modulator 310 of the input cell 406 and a single set of the amplitude modulator 304 and the phase shifter 306 of the weighting cell 408. Thus, each input cell 406 includes a first demultiplexed input optical path and a second multiplexed input optical path, and each weighting cell 408 includes a first demultiplexed weighting optical path and a second multiplexed weighting optical path. To enable selectively directing the optical carrier signals of each interferometer branch 402, 404 along the first or second input optical path and the first or second weighting optical path in any combination, the photonic circuit configuration 400 includes electro-optic switches 414, 416, 418 placed in front of the input cell 406, between the input and weighting cells 406, 408, and following the weighting cell 408 and in the interferometer branches 402, 404. In the illustrated configuration 400, the switch settings are such that the optical input signal propagates along the first demultiplexed input optical path and the weighting optical path. The same configuration can be implemented in a fixed manner by omitting the multiplexed paths of the input and weighting cells 406, 408 in addition to the switches 414, 416, 418.
[0043] FIG. 5 is a schematic diagram of an example of a WDM photonic circuit configuration 500 suitable for implementing a convolutional neural network layer according to various embodiments. This configuration 500 utilizes the same hardware components as described above in connection with FIG. 4, but with different settings for electro-optic switches 416, 418. Similar to configuration 400, the optical carrier signal is demultiplexed at input cell 406, where different inputs are added to different wavelength components. However, unlike configuration 400, the wavelength components recombined upon exiting neural input cell 406 are switched via electro-optic switch 416 from the output of the demultiplexed input optical path to the input of the multiplexed weighted optical path, and all wavelength components are given the same weight within each of interferometer branches 402, 404. Sharing weights across multiple inputs is characteristic of CNNs, i.e., the same kernel (set of neuron weights) is applied to different receptive fields (subsets of neuron inputs) within a set of neuron inputs (e.g., different sub-regions of an image). In the WDM photonic circuit configuration 500 applied to a CNN, different wavelengths serve to apply the kernel to different receptive fields.
[0044] With the specific inputs and weights shown in FIG. 5, photonic circuit configuration 500 implements four neurons of a CNN layer, with a kernel size of 2 (i.e., each neuron takes two neuron inputs) and a stride of 2 (i.e., the kernel is shifted by two neuron inputs between adjacent neurons), and the operation is performed on an 8-dimensional input. In matrix notation, the operation of this CNN layer can be represented as follows:
Equation
[0045] FIG. 6 is a schematic diagram of an example of a WDM photonic circuit configuration 600 suitable for implementing a fully-connected neural network layer according to various embodiments. In this configuration 600, the same hardware as in configurations 400, 500 is reused, and the electro-optic switches 414, 416, 418 are set as follows: a single input is applied to the multiplexed optical input signal in the multiplexed input optical path of the input cell 406 in each interferometer branch, and separate weights are applied to different wavelength components in the demultiplexed weighted optical path of the weighting cell 408. As a result, the configuration 600 can simultaneously implement four dual-input neurons, which operate on a two-dimensional input and can be represented by the following equation as a fully-connected neural network layer matrix:
Number
[0046] FIG. 7 is a schematic diagram of an example of a WDM switch configurable photonic crossbar 700 suitable for implementing a programmable neural network layer according to various embodiments. This WDM photonic crossbar 700 has the same large-scale structure as the single-wavelength photonic crossbar 300 shown in FIG. 3, but the single-wavelength weighting cell 302 and input cell 310 are replaced by a weighting cell 702 and input cell 704 that enable WDM, which are substantially similar to those shown for the WDM photonic circuit configurations 400, 500, 600. That is, each weighting cell 702 and each input cell 704 includes two optical paths, one for adding different weighted weights or inputs to different wavelength components of the demultiplexed optical carrier signal by each amplitude modulator and / or phase shifter bracketed between the demultiplexer and multiplexer, and the other for adding a single weighted weight or input to the multiplexed signal. Electro-optic switches 706, 708 at the inputs and outputs of the weighting cell 702 and input cell 704 enable selectively coupling light to one or the other path. Note that in the illustrated crossbar configuration, a single 2×2 switch between the output of the input cell and the input of the weighting cell is replaced by two separate (1×2 and 2×1 type) switches 706, 708. To measure the different wavelength components of the optical output signal for each column, the WDM photonic crossbar 700 has a demultiplexer 710 and an array of photodetectors 712 following it at the output of each output waveguide.
[0047] As can be seen from the disclosure, the photonic crossbar 700 configurable by switches provides maximum flexibility in a programmable manner when implementing different neural network models. In static applications where the neural network does not change, it may be desirable to use a "hardwired" custom type of photonic crossbar configuration. For example, when implementing a CNN, a photonic crossbar can be designed with a WDM neural input cell that allows different neuron inputs to be appended to different wavelength components of a multiplexed carrier signal. Each of the neural weighting cells can be configured to include only one pair of an amplitude modulator and a phase shifter that apply the weighted weights to the multiplexed optical input signal as a whole. Except for additional demultiplexer / multiplexer pairs, multiple paths within the input cell, and the demultiplexer in the output waveguide, the complexity of such a crossbar is not greater than that of a single-wavelength photonic crossbar 300. However, the number of columns in the WDM crossbar is reduced by a factor equal to the number of wavelengths. Therefore, for a given CNN, a custom WDM crossbar can result in significant savings in terms of chip area and cost compared to either a general-purpose single-wavelength crossbar 300 or a fully programmable WDM crossbar 700.
[0048] Various coherent photonic circuit architectures have been described. For example, the integration of photonic circuits and electronic circuits is described below, which is done to supply a drive signal for optical signal modulation and process an output signal that encodes the arithmetic output of an optically implemented linear operation.
[0049] Figures 8A and 8B are schematic views showing an example of a hybrid photonic electronic computing system 800 from the side and above, respectively, according to various embodiments. As shown in FIG. 8A, the system 800 includes a PIC 802 (e.g., implementing a linear neural network layer) implemented in, for example, silicon, including one or more photonic crossbars (e.g., 300, 700) for performing weighted summation on inputs, and an electronic integrated circuit (EIC) 804 that interfaces with the PIC 802 to complement its functions. The EIC 804 can include analog and / or digital circuits and can be of a hardwired and application-specific type (e.g., ASIC) or a programmable type (e.g., FPGA). The system 800 further includes an optical engine 806 with one or more lasers for providing coherent carrier light, and can include, for example, without limitation, a distributed feedback (DFB) laser or other laser diodes with semiconductor materials such as III-V compounds. A plurality of lasers emitting at the same wavelength can be used to generate carrier light of one or more wavelengths for the plurality of photonic crossbars. Alternatively or additionally, the optical engine 806 can include a plurality of lasers emitting different wavelengths and a wavelength multiplexer implemented, for example, as an arrayed waveguide grating for combining different wavelengths into a single multiplexed optical carrier light.
[0050] The PIC 802, the EIC 804, and the optical engine 806 interface with each other via the optical interposer 808, and the optical interposer 808 integrates them into a chip-scale package. The interposer 808 can include, for example, an electrical connection between a photodetector on the PIC 802 and a processing circuit within the EIC 804 (where the analog electronic output signal of the photodetector is processed), or an electrical connection between a modulator (i.e., an amplitude modulator and a phase shifter) and an associated driver circuit within the EIC 804. Also, the interposer 808 can have an electrical connection between the EIC 804 and the optical engine 806, for example, to control and monitor the operation of the optical engine 806. The power consumption at the electronic interface between the PIC 802 and the EIC 804 is less than 3 pJ (picojoules) per bit of data converted between the optical region and the digital electronic region in some embodiments.
[0051] The interposer 808 can further facilitate optical communication between the optical engine 806 and the PIC 802 via a waveguide structure that couples a (e.g., multiplexed) laser output into a waveguide (e.g., a carrier optical waveguide 314 leading to an optical splitter of a photonic crossbar) within the PIC 806. The coupling can be made using, for example, an edge coupler, an inverse taper coupler, or a diffraction grating coupler within the PIC 802 and / or the interposer 808. In the illustrated embodiment, the PIC 802 and the EIC 804 are flip-chip bonded to the adjacent optical interposer 808. However, the EIC 804 can also be directly bonded to the PIC, which can provide the advantage of a significant reduction in the number of electrical connections from the EIC 804 to the electro-optic devices within the PIC 802.
[0052] FIG. 8B illustrates further details of the components of the EIC 804 according to an exemplary embodiment in a schematic top block style. The illustrated EIC 804 is a mixed signal circuit and includes an analog-to-digital converter (ADC) and a digital-to-analog converter (DAC) that convert electronic signals between analog and digital domains. The ADC is provided at the output of a transimpedance amplifier (TIA) that amplifies the electronic output signal received from the photodetector of the PIC 802 and is composed of the activations generated by the linear network layer; the TIA and the ADC are collectively designated as 810. The DAC is provided at the input of a driver that provides a drive signal for the optical modulator of the PIC 802; the driver and the DAC are collectively designated as 812.
[0053] In various embodiments of neural networks, a drive signal is applied to at least an input cell within a photonic crossbar to provide a neuron input in electronic form to an optical linear neural network layer. The driver of the input signal can operate at a high frequency, for example, operate at 50 GHz and apply a new neuron input to a given amplitude modulator every 20 ps. In some embodiments, further the drive signal is applied to a weighting cell, typically done at a much lower rate or pseudo-statically. The weights can be updated to implement another neural network layer if a number of different sets of inputs have been processed (e.g., every 100 clock cycles with respect to the inputs in an interference application). In such a manner, multiple neural network layers can be sequentially implemented by a single photonic crossbar. For example, the neuron output of one layer encoded in the optical output signal of the photonic crossbar can be converted to the electronic domain and then processed to calculate the neuron input of the next layer, and they are re-fed into the same photonic crossbar operating based on a new set of neuron weights. Alternatively, the processed neuron output from one crossbar can be provided as the neuron input to another physical crossbar implemented on PIC802. Optionally, the processed output of the second crossbar or any additional crossbar can eventually be re-fed into the first crossbar. A photonic crossbar can also implement a recurrent neural network layer, in which case the neuron weights applied when the neuron output of the recurrent layer is re-fed into the layer as input remain the same.
[0054] Referring back to FIG. 8B, the EIC 804 may further include on-chip memory 814, such as, for example, SRAM, or other embedded non-volatile memories such as MRAM (magnetoresistive RAM), ReRAM (resistive RAM), NOR flash memory, PCM (phase-change memory), etc. The memory 814 can store, for example, intermediate data such as weights applied to modulators in weighted cells and / or (neuron) inputs to a (neural network) layer of operations (neural network) calculated from the output of a previous layer. Alternatively, the weights can be stored directly in the PIC 802, for example using O-PCM.
[0055] The EIC 804 can be configured to perform various operations that cannot be implemented or cannot be implemented as efficiently in a photonic crossbar, including, in particular, non-MAC (non-multiple-accumulate) operations. The EIC 804 can apply, for example, an analog or digital non-linear activation function to an optically generated linear neuron output, although certain activation functions can be implemented entirely optically in the PIC 802. As another example, the EIC 804 can include a single instruction, multiple data (SIMD) processor 816 that can efficiently perform pooling operations, for example, between optically implemented convolutional layers of a neural network. Also, in some embodiments, it may be beneficial to electronically implement a fully connected neural network layer within the EIC 804. For example, in an optoelectronic neuromorphic computing system 800 configured for image recognition applications using a RESNET50 type model, the PIC 802 can implement the CNN layer, while the EIC 804 can handle the pooling layer and the fully connected layer of the model with a bit accuracy higher than the accuracy achievable with the PIC 802.
[0056] Separate from specific neural network operations, the EIC804 can also perform neural network (or other arithmetic) model and / or pre-processing and post-processing of inputs and outputs. In some embodiments, the neural network model (or other model represented by a matrix) is sparsified by converting non-essential network parameters (or matrix elements) to zero, without sacrificing accuracy. Further, sparse input data can be pre-processed for more efficient storage in the on-chip memory 814. Image input data can be pre-processed using, for example, Gaussian methods, wavelet methods, averaging methods, or median methods, fuzzy histogram hyperbolization, bias correction, or any of various other methods known in the field of image processing, to generate better input features for the neural network. In some embodiments, the EIC804 includes a graphics processing unit (GPU) for performing specific (e.g., image processing) operations. Advantageously, the processing of digital signals supports mixed-precision calculations and can achieve higher bit precision (e.g., any combination of FP64, FP32, FP16, bfloat16, INT8, INT8 Sparse, INT4 arithmetic) than photonic arithmetic. In various embodiments, the PIC802 can perform 4-bit or 8-bit arithmetic (or mixed-precision arithmetic combining 4-bit and 8-bit precision).
[0057] In various embodiments, for certain inference applications, computing system 800 implements a trained neural network model with pre-computed neuron weights (stored in on-chip memory 814 or in O-PCM directly within PIC 802). A machine learning algorithm for determining neuron weights (e.g., backpropagation of error with gradient descent) can be implemented and executed using, for example, conventional computing hardware (general purpose processor or GPU). Alternatively, in situ learning is performed for the neural network model using the neuroemulation computing system 800. For example, neuron inputs are optically processed by PIC 802 during the forward propagation phase, and corrections to the weights based on the neuron outputs are calculated electronically, either by EIC 804 (configured to implement the backpropagation phase of the algorithm for this purpose) or directly by an additional computing device communicable with EIC 804.
[0058] FIG. 9 is a flow diagram of a photonic computing method 900 according to various embodiments that may be performed using, for example, a photonic crossbar 300 or 700. The method 900 includes splitting light into a plurality of optical carrier signals associated with a plurality of arithmetic inputs (S902), and modulating the amplitudes of the plurality of optical carrier signals to append arithmetic inputs to the optical carrier signals, thereby creating a plurality of first modulated optical signals (S904). Each of the first modulated optical signals is split among a plurality of optical paths associated with a plurality of arithmetic outputs (S906). In an array configuration such as used in photonic crossbars 300, 700, the optical paths associated with the same arithmetic output direct the first modulated optical signals to the same column within the array. Further modulation is performed on the amplitude and / or phase of the first modulated optical signal within each of the plurality of optical paths to append arithmetic weights, thereby generating a second modulated optical signal (S908). Each weight is associated with one of the plurality of arithmetic inputs and one of the plurality of arithmetic outputs, and from each of the first modulated optical signals (encoding one of the arithmetic inputs), a plurality of second modulated optical signals corresponding to the plurality of arithmetic outputs are generated. For each of the arithmetic outputs, the second modulated optical signals within the associated paths are coherently combined (e.g., sequentially along an output waveguide that combines each of the optical paths) into an optical output signal that encodes the arithmetic output (S910).
[0059] In some embodiments, each optical carrier signal is modulated in response to one of the arithmetic inputs to create each of the first modulated optical signals; each of the first modulated optical signals is modulated in response to a plurality of arithmetic weights associated with each of the plurality of arithmetic outputs to generate a plurality of respective second modulated optical signals associated with the arithmetic input appended to the first modulated optical signal; and the second modulated optical signals associated with the same arithmetic output are combined into an optical output signal that encodes one of the arithmetic outputs across the arithmetic inputs.
[0060] In other embodiments, the optical carrier signals are multiplexed. In this case, for each individual optical carrier signal, for example, by a plurality of modulators within a single input cell, a plurality of arithmetic inputs can be appended to each respective wavelength component of the carrier signal to create a plurality of first modulated output signals, which can be multiplexed and jointly propagated to each respective weighted cell associated with the input cell. In turn, each weighted cell can append the same weight to the multiplexed first modulated output signal using one modulator and a phase shifter, or append different weights to each respective wavelength component corresponding to an individual first modulated output signal using a plurality of modulators and phase shifters. It is also possible to modulate each carrier signal at each input cell in response to one arithmetic input with only one modulator to create one first modulated output signal with different wavelength components, and each weighted cell appends different weights to each respective wavelength component. In either case, each weighted cell generates a plurality of second modulated optical signals at different respective wavelengths, which can be multiplexed and combined with other multiplexed second modulated optical signals into a single multiplexed optical output signal that encodes a plurality of arithmetic outputs in different respective wavelength states.
[0061] The following numbered examples are exemplary embodiments.
[0062] Example 1 is a system comprising a photonic circuit, the photonic circuit comprising: an optical splitter configured to split a carrier light into a plurality of optical carrier signals; a plurality of input cells comprising a first optical amplitude modulator configured to add a plurality of arithmetic inputs to the plurality of optical carrier signals to create a first modulated optical signal; a plurality of sets of weighting cells, wherein the weighting cells within each set are coupled at their inputs to the outputs of the plurality of input cells and comprise a plurality of second optical amplitude modulators configured to add a plurality of arithmetic weights to the first modulated optical signal received from the input cells to create a second modulated optical signal associated with the set; and a plurality of optical combiners each associated with one of the sets of weighting cells and configured to coherently combine the second modulated optical signal associated with the set into an optical output signal.
[0063] Example 2 is the system of Example 1, wherein the plurality of sets of weighting cells are arranged in an array comprising a plurality of rows and a plurality of columns, each column of weighting cells corresponding to one of the sets of weighting cells, and each row of weighting cells being associated with and coupled to one of the input cells.
[0064] Example 3 is the system of Example 2, wherein the photonic circuit comprises a plurality of optical input waveguides, each optical input waveguide being associated with one of the input cells and configured to guide the first modulated optical signal created within the input cell along the associated row of weighting cells, and optical taps arranged along each of the optical input waveguides at the inputs of the associated weighting cells to sequentially couple the first modulated optical signal from the optical input waveguide into the associated weighting cells.
[0065] Example 4 is a system according to Example 3, wherein each of the optical input waveguides is configured such that the optical tap couples, to the associated weighting cell, a part of the optical output guided by the optical input waveguide that increases in the propagation direction of the first modulated optical signal, and the first modulated optical signal coupled to the weighting cell has substantially equal output along the optical input waveguide.
[0066] Example 5 is a system according to any one of Examples 2 to 4, wherein each of the optical combiners includes an optical output waveguide and a plurality of optical couplers arranged along the optical output waveguide and configured to sequentially couple the second modulated optical signals from the associated set of weighting cells to the optical output waveguide.
[0067] Example 6 is a system according to any one of Examples 1 to 5, wherein the optical splitter and the optical combiner are collectively configured such that the second modulated optical signal associated with each set of weighting cells is combined with the corresponding optical output signal in an equal ratio.
[0068] Example 7 is a system according to any one of Examples 1 to 6, wherein the optical splitter comprises a cascade of branching splitters that sequentially couple the carrier light to the inputs of the plurality of input cells.
[0069] Example 8 is a system according to any one of Examples 1 to 7, wherein the photonic circuit further includes a plurality of optical delay lines that add an optical delay to the first modulated optical signal to equalize the optical path lengths between the input cell and the optical outputs of each of the optical combiners.
[0070] Example 9 is a system according to any one of Examples 1 to 8, wherein at least one of the first optical amplitude modulator or the second optical amplitude modulator comprises an electroabsorption modulator or a quantum-confined Stark effect (QCSE) electroabsorption modulator.
[0071] Example 10 is a system in any one of the systems of Examples 1 to 9, wherein the second optical amplitude modulator includes an optical phase change cell.
[0072] Example 11 is a system in any one of the systems of Examples 1 to 10, wherein the weighting cells in each set are associated with the plurality of second amplitude modulators and are configured to append the sign of the arithmetic weight to the first modulated optical signal, and further includes a plurality of phase shifters.
[0073] Example 12 is a system in the system of Example 11, wherein the phase shifter includes at least one of a thermal phase shifter, an electro-optic phase shifter, or a phase shifter based on a phase change material.
[0074] Example 13 is a system in any one of the systems of Examples 1 to 11, wherein the photonic circuit further includes a plurality of photodetectors disposed at the optical outputs of the plurality of optical combiners to measure the optical output signals.
[0075] Example 14 is a system in any one of the systems of Examples 1 to 13, further comprising an electronic circuit configured to control a driver associated with the plurality of first optical amplitude modulators, the plurality of second optical amplitude modulators, and the plurality of phase shifters, the electronic circuit including a memory storing the arithmetic weights associated with the plurality of weighting cells.
[0076] Example 15 is a system in the systems of Examples 13 and 14, in which the optical splitter, the plurality of input cells, the plurality of sets of weighting cells, the plurality of optical combiners, and the plurality of photodetectors implement a first neural network layer, the photonic circuit further includes an additional optical splitter, an additional plurality of input cells, an additional plurality of sets of weighting cells, an additional plurality of optical combiners, and an additional plurality of photodetectors to implement a second neural network layer, and the electronic circuit is configured to control a driver associated with an additional first optical amplitude modulator in the additional input cells of the second layer based on the outputs of the plurality of photodetectors in the first layer.
[0077] Example 16 is a system in the systems of Examples 13 and 14, in which the electronic circuit causes a first set of arithmetic weights associated with a first neural network layer to be applied by the plurality of sets of weighting cells, causes a first set of arithmetic inputs to be applied by the first optical amplitude modulator when the first set of arithmetic weights is applied, reads the photodetectors that measure the optical output signals to obtain a first set of arithmetic outputs associated with the first layer, causes a second set of arithmetic weights associated with a second neural network layer to be applied by the weighting cells, causes a second set of arithmetic inputs based on the first set of arithmetic outputs to be applied by the first optical amplitude modulator when the second set of arithmetic weights is applied, and reads the photodetectors that measure the optical output signals to obtain a second set of arithmetic outputs associated with the second layer.
[0078] Example 17 is a system according to any one of Examples 1 to 16, wherein each of the input cells is associated with one of the respective arithmetic inputs, and is configured to add the arithmetic input to one of the optical carrier signals using one of the first optical amplitude modulators to create one of the first modulated optical signals, each of the optical combiners and its associated optical output signal is associated with one of the respective arithmetic outputs, each of the weighting cells is associated with each set of one of the arithmetic inputs and one of the arithmetic outputs, and is configured to add one of the arithmetic weights to the first modulated optical signal associated with its arithmetic input using one of the second amplitude modulators to create one of the second modulated optical signals.
[0079] Example 18 is a system according to any one of Examples 1 to 16, wherein the carrier light is multiplexed light, the optical carrier signal is a multiplexed optical carrier signal, and the optical output signal is a multiplexed optical output signal.
[0080] Example 19 is a system according to Example 18, wherein each of the input cells is associated with a plurality of wavelengths of the multiplexed optical carrier signal, and includes a set of a plurality of first optical amplitude modulators preceded by a demultiplexer and followed by a multiplexer, and the plurality of first optical amplitude modulators in each input cell are configured to create a plurality of respective first modulated optical signals by adding a plurality of arithmetic inputs to the plurality of wavelengths of the multiplexed optical carrier signal.
[0081] Example 20 is a system according to Example 18 or Example 19, wherein each of the weighting cells is associated with a plurality of wavelengths of the multiplexed optical carrier signal, and includes a set of a plurality of second optical amplitude modulators and / or phase shifters preceded by a demultiplexer and followed by a multiplexer, and the plurality of second optical amplitude modulators and / or phase shifters are configured to create a plurality of respective second modulated optical signals by adding a plurality of arithmetic weights to one or more of the first modulated optical signals.
[0082] Example 21 is a system in the system of Example 18, further comprising electro-optical switches preceding and following each of the input cells and each of the weighting cells, the electro-optical switches being configurable to direct the multiplexed optical input signal along a first or second input optical path through the input cell and along a first or second weighting optical path through the weighting cell, each of the input cells being associated with a plurality of wavelengths of the multiplexed optical carrier signal along the first input optical path, a first set of optical amplitude modulators preceded by a demultiplexer and followed by a multiplexer, and a separate first optical amplitude modulator along the second input optical path, each of the weighting cells being associated with a plurality of wavelengths of the multiplexed optical carrier signal along the first weighting optical path, a second set of optical amplitude modulators and / or phase shifters preceded by a demultiplexer and followed by a multiplexer, and a separate second optical amplitude modulator and / or phase shifter along the second weighting optical path.
[0083] Example 22 is a system in the system of Example 21, wherein the electro-optical switch is programmable with respect to a plurality of configurations implementing a plurality of associated artificial neural network types, the plurality of configurations including a convolutional neural network configuration in which the multiplexed optical carrier signal is directed along the first input optical path and the second weighting optical path, a fully connected neural network configuration in which the multiplexed optical carrier signal is directed along the second input optical path and the first weighting optical path, and a neural network configuration in which the multiplexed optical input signal is directed along the first input optical path and the first weighting optical path.
[0084] Example 23 is a photonic circuit, comprising an optical splitter configured to split multiplexed light into a plurality of multiplexed optical carrier signals associated with a plurality of inputs, a plurality of interferometric optical paths configured to receive the plurality of multiplexed optical carrier signals and generate multiplexed weighted optical input signals, and an optical combiner configured to combine the multiplexed weighted optical input signals into a multiplexed optical output signal. Each of the interferometric optical paths includes a first electro-optic switch, a second electro-optic switch, and a third electro-optic switch. The first electro-optic switch and the second electro-optic switch are configured to switch the multiplexed optical carrier signal between a first and a second input optical path, and the second electro-optic switch and the third electro-optic switch are configured to switch the multiplexed optical input signal between a first and a second weighted optical path. The input cell between the first electro-optic switch and the second electro-optic switch is associated with a plurality of wavelengths of the multiplexed optical carrier signal along the first input optical path, and includes a first set of optical amplitude modulators preceded by a demultiplexer and followed by a multiplexer, and a separate first optical amplitude modulator along the second input optical path. The input cell is configured to generate the multiplexed optical input signal. The weighting cell between the second electro-optic switch and the third electro-optic switch is associated with a plurality of wavelengths of the multiplexed optical carrier signal along the first weighted optical path, and includes a second set of optical amplitude modulators and phase shifters preceded by a demultiplexer and followed by a multiplexer, and a separate second optical amplitude modulators and phase shifters along the second weighted optical path. The weighting cell is configured to generate the multiplexed weighted optical input signal.
[0085] Example 24 is a photonic circuit in Example 23, further comprising a demultiplexer at the output of the optical combiner, the demultiplexer being configured to separate the multiplexed optical output signal into optical output signals of a plurality of wavelengths.
[0086] Example 25 is a photonic circuit in Example 24, further comprising a plurality of photodetectors for measuring the optical output signal at the plurality of wavelengths.
[0087] Example 26 is a photonic computing method, comprising the steps of splitting light into a plurality of optical carrier signals associated with a plurality of arithmetic inputs; modulating the amplitudes of the plurality of optical carrier signals to append the arithmetic inputs to the optical carrier signals, thereby creating a plurality of first modulated optical signals; splitting the optical input signal among a plurality of optical paths associated with a plurality of arithmetic outputs; modulating the amplitude and / or phase of the first modulated optical signal within each of the plurality of optical paths to append arithmetic weights each associated with one of the plurality of arithmetic inputs and one of the plurality of arithmetic outputs to the first modulated optical signal, thereby generating a second modulated optical signal; and for each of the arithmetic outputs, coherently combining the second modulated optical signal within the optical path associated with the arithmetic output into an optical output signal encoding the arithmetic output.
[0088] Example 27 is a method in Example 26, wherein each of the optical carrier signals is associated with one of the plurality of arithmetic inputs, and each of the optical output signals is associated with one of the plurality of arithmetic outputs.
[0089] Example 28 is a method in the method of Example 26, wherein the light is multiplexed light including a plurality of wavelengths, the optical carrier signal is a multiplexed optical carrier signal respectively associated with a plurality of arithmetic inputs added to the optical carrier signal at the plurality of wavelengths to create a plurality of first modulated optical signals, and the optical output signal is a multiplexed optical output signal associated with a plurality of arithmetic outputs encoded in the optical output signal at the plurality of wavelengths.
[0090] Example 29 is a computing system, comprising a photonic integrated circuit (PIC) implementing one or more arithmetic layers, the PIC comprising one or more coherent photonic crossbars, each of the one or more coherent photonic crossbars configured to modulate a plurality of optical input signals, add arithmetic weights associated with a plurality of sets of weights to the optical input signals to create weighted optical input signals, and coherently combine the weighted optical input signals to generate an optical output signal encoding arithmetic outputs associated with the plurality of sets of weights; at least one of the one or more coherent photonic crossbars comprising a plurality of electronic control modulators that add arithmetic inputs to a coherent optical carrier signal to generate the plurality of optical input signals; and at least one of the one or more coherent photonic crossbars comprising a plurality of photodetectors that generate an analog electronic output signal based on the optical output signal; a PIC; and a mixed-signal electronic integrated circuit (EIC) comprising a driver circuit that controls the modulators in the PIC in response to the arithmetic inputs, and a processing circuit that processes the analog electronic output signal, the processing being performed at least partially digitally.
[0091] Example 30 is a computing system in the computing system of Example 29, wherein the one or more coherent photonic crossbars implement a plurality of arithmetic layers.
[0092] Example 31 is a computing system in the computing system of Example 30, wherein the analog electronic output signal associated with one of the plurality of computing layers is processed to generate a control signal for the driver circuit associated with another input of the computing layer.
[0093] Example 32 is a computing system in the computing system of any one of Examples 29 to 31, wherein at least one of the one or more coherent photonic crossbars comprises a plurality of additional electronic control modulators for adding the computing weights to the optical input signal, and the EIC further comprises an additional driver circuit for controlling the additional modulators.
[0094] Example 33 is a computing system in the computing system of Example 31 or Example 32, wherein the one of the computing layers and the other of the computing layers are implemented by a single one or more coherent photonic crossbars, and the additional driver circuit controls the additional modulators according to one set of computing weights to implement the one of the computing layers, and controls the additional modulators according to another set of computing weights to implement the other of the computing layers.
[0095] Example 34 is a computing system in the computing system of Example 32 or Example 33, wherein the EIC further comprises a memory for storing the computing weights and a digital-to-analog converter for generating a control signal for the additional driver circuit from the computing weights.
[0096] Example 35 is a computing system in the computing system of any one of Examples 32 to 34, wherein the additional electronic control modulator comprises a combination of an amplitude modulator and a phase shifter for adding the weighted computing weights to the electric field of the optical input signal.
[0097] Example 36 is a computing system in the computing system of Example 31 or Example 32, wherein one of the computing layers and the other one of the computing layers are implemented by two coherent photonic crossbars.
[0098] Example 37 is a computing system in the computing system of Example 30, wherein the plurality of computing layers are implemented by a plurality of coherent photonic crossbars, and at least one of the optical output signals of the coherent photonic crossbars is provided as the optical input signal to another one of the coherent photonic crossbars.
[0099] Example 38 is a computing system in the computing system of any one of Examples 29 to 37, further comprising at least one of an optical amplifier in the PIC for amplifying the optical output signal or an electronic amplifier in the processing circuit for amplifying the analog electronic output signal.
[0100] Example 39 is a computing system in the computing system of any one of Examples 29 to 38, wherein the one or more computing layers represent one or more neural network layers, the plurality of sets of weights represent a plurality of neurons, and the computed output is a linear neuron output.
[0101] Example 40 is a computing system in the computing system of Example 39, wherein the processing circuit applies a non-linear electronic activation function to the analog electronic signal in either the analog domain or the digital domain after analog-to-digital conversion.
[0102] Example 41 is a computing system according to the computing system of Example 39, wherein the PIC further comprises a non-linear activation unit associated with at least one of the neurons of the one or more coherent photonic crossbars, and the non-linear optical activation unit is configured to apply an optical non-linearity to the optical output signal encoding the linear neuron output thereby generating an optical output signal encoding a non-linear neuron output.
[0103] Example 42 is a computing system according to the computing system of any one of Examples 39 to 41, wherein the digital processing includes neural network layer operations.
[0104] Example 43 is a computing system according to the computing system of Example 42, wherein the neural network layer operations implement one of a pooling layer or a fully connected layer.
[0105] Example 44 is a computing system according to the computing system of any one of Examples 39 to 43, wherein the digital processing includes image preprocessing operations for image input to the one or more neural network layers or postprocessing operations for the output generated by the one or more neural network layers.
[0106] Example 45 is a computing system according to the computing system of Example 44, wherein the digital processing includes adjusting stored neural network weights to enable structural sparsity.
[0107] Example 46 is a computing system according to the computing system of any one of Examples 29 to 45, wherein at least one of the PIC or the EIC is configured to perform mixed-precision operations.
[0108] Example 47 is a computing system in any one of the computing systems of Examples 29 to 46, wherein the EIC further includes a graphics processing unit (GPU) core that performs at least a part of the digital processing.
[0109] Example 48 is a computing system in any one of the computing systems of Examples 29 to 47, wherein the EIC further includes on-chip memory.
[0110] Example 49 is a computing system in any one of the computing systems of Examples 29 to 48, further including an electronic interface between the PIC and the EIC, wherein the power consumption per bit of data converted from the optical region to the digital electronic region or from the digital electronic region to the optical region in the electronic interface is less than 3 pJ.
[0111] Example 50 is a computing system in any one of the computing systems of Examples 29 to 49, wherein the PIC further includes an optical splitter that receives the carrier light from the optical engine and splits it into the coherent optical carrier signals.
[0112] Example 51 is a computing system in the computing system of Example 50, wherein the optical engine includes a plurality of lasers that generate light at a plurality of wavelengths, and a multiplexer that combines the light at the plurality of wavelengths into multiplexed carrier light.
[0113] Example 52 is a computing system in any one of the computing systems of Examples 29 to 51, wherein the PIC further includes an optical interface that receives carrier light from a source external to the PIC, and the optical interface includes at least one of an edge coupler, an inverse taper coupler, or a diffraction grating coupler.
[0114] Example 53 is a computing system in the computing system of Example 52, wherein the optical interface comprises at least one of an edge coupler, an inverse taper coupler, or a diffraction grating coupler.
[0115] Example 54 is a computing system in the computing system of any one of Examples 29 to 53, wherein the digital processing includes operations performed with a higher bit accuracy than the operations performed within the PIC.
[0116] Although the inventive subject matter has been described by way of examples of specific embodiments, it is apparent that various modifications and changes can be made to these embodiments without departing from the broad scope of the inventive subject matter. Therefore, the specification and drawings are to be regarded as illustrative rather than restrictive.
Claims
1. A system comprising a photonic circuit, the photonic circuit comprising: an optical splitter configured to split a carrier light into a plurality of optical carrier signals; a plurality of input cells comprising a first optical amplitude modulator configured to append a plurality of arithmetic inputs to the plurality of optical carrier signals to output a first modulated optical signal; a plurality of sets of weighting cells, wherein the weighting cells within each set are coupled at their inputs to the outputs of the plurality of input cells and comprise a second optical amplitude modulator configured to append a plurality of arithmetic weights to the first modulated optical signal received from the input cells to output a second modulated optical signal associated with the set; a plurality of optical combiners each associated with one of the sets of weighting cells and configured to coherently combine the second modulated optical signal associated with the set into an optical output signal; A system comprising the above.
2. The system according to claim 1, wherein the plurality of sets of weighting cells are arranged in an array having a plurality of rows and a plurality of columns, each column of weighting cells corresponding to one of the sets of weighting cells, and each row of weighting cells being associated with and coupled to one of the input cells.
3. The system according to claim 2, wherein the photonic circuit includes a plurality of optical input waveguides, each optical input waveguide being associated with one of the input cells and configured to guide the first modulated optical signal output within the input cell along the associated row of weighting cells, and optical taps arranged along each of the optical input waveguides at the inputs of the associated weighting cells to sequentially couple the first modulated optical signal from the optical input waveguide into the associated weighting cells.
4. In the system according to claim 3, each of the optical taps along each of the optical input waveguides: couples a first portion of the optical output guided by the optical input waveguide, which increases in the propagation direction of the first modulated optical signal, to the associated weighting cell, such that the first modulated optical signal coupled to the weighting cell has substantially equal output along the optical input waveguide. to convey the second portion of the optical output to one or more additional weighting cells; A system configured to perform. **Claim 5** The system according to claim 2, wherein each of the optical combiners includes an optical output waveguide and a plurality of optical couplers arranged along the optical output waveguide and configured to sequentially couple the second modulated optical signal from the associated set of weighting cells to the optical output waveguide. **Claim 6** The system according to claim 1, wherein the optical splitter and the optical combiners are collectively configured such that the second modulated optical signal associated with each set of weighting cells is combined with the corresponding optical output signal in an equal ratio. **Claim 7** The system according to claim 1, wherein the optical splitter comprises a cascade of branching splitters that sequentially couple the carrier light to the inputs of the plurality of input cells. **Claim 8** The system according to claim 1, wherein the photonic circuit further includes a plurality of optical delay lines that add an optical delay to the second modulated optical signal to equalize the optical path lengths between the input cells and the optical outputs of each of the optical combiners. **Claim 9** The system according to claim 1, wherein at least one of the first optical amplitude modulator or the second optical amplitude modulator comprises an electro-absorption modulator or a multi-quantum confinement Stark effect (QCSE) electro-absorption modulator. **Claim 10** The system according to claim 1, wherein the second optical amplitude modulator comprises an optical phase change cell. **Claim 11** The system according to claim 1, wherein the weighting cells within each set are associated with the second optical amplitude modulator and further comprise a plurality of phase shifters configurable to add the sign of the arithmetic weight to the first modulated optical signal. **Claim 12** The system according to claim 11, wherein the phase shifter comprises at least one of a thermal phase shifter, an electro-optic phase shifter, or a phase shifter based on a phase change material. **Claim 13** The system according to claim 1, wherein the photonic circuit further includes a plurality of photodetectors arranged at the optical outputs of the plurality of optical combiners to measure the optical output signal.
14. In the system according to claim 13, further comprising an electronic circuit configured to control a driver associated with the first optical amplitude modulator, the second optical amplitude modulator, and the plurality of phase shifters, the electronic circuit comprising a memory storing the arithmetic weights associated with the plurality of weighting cells.
15. In the system according to claim 14, the optical splitter, the plurality of input cells, the plurality of sets of weighting cells, the plurality of optical combiners, and the plurality of photodetectors implement a first neural network layer, and the photonic circuit further comprises an additional optical splitter, an additional plurality of input cells, an additional plurality of sets of weighting cells, an additional plurality of optical combiners, and an additional plurality of photodetectors to implement a second neural network layer, and the electronic circuit is configured to control a driver associated with an additional first optical amplitude modulator in the additional input cells of the second layer based on the outputs of the plurality of photodetectors of the first layer.
16. In the system according to claim 14, the electronic circuit is adapted to apply by the plurality of sets of weighting cells to a first set of arithmetic weights associated with a first neural network layer; when the first set of arithmetic weights is applied, apply by the first optical amplitude modulator to a first set of arithmetic inputs, and read out the plurality of photodetectors measuring the optical output signal to obtain a first set of arithmetic outputs associated with the first layer; is adapted to apply by the weighting cells to a second set of arithmetic weights associated with a second neural network layer; when the second set of arithmetic weights is applied, apply by the first optical amplitude modulator to a second set of arithmetic inputs based on the first set of arithmetic outputs, and read out the plurality of photodetectors measuring the optical output signal to obtain a second set of arithmetic outputs associated with the second layer; configured to perform.
17. In the system according to claim 1, Each of the input cells is associated with one of the respective arithmetic inputs, and is configured to add the arithmetic input to one of the optical carrier signals using one of the first optical amplitude modulators to output one of the first modulated optical signals. Each of the optical combiners and its associated optical output signal is associated with one of the respective arithmetic outputs. Each of the weighting cells is associated with each set of one of the arithmetic inputs and one of the arithmetic outputs, and is configured to add one of the arithmetic weights to the first modulated optical signal associated with the arithmetic input using one of the second optical amplitude modulators to output one of the second modulated optical signals. A system.
18. The system according to claim 1, wherein the carrier light is multiplexed light, the optical carrier signal is a multiplexed optical carrier signal, and the optical output signal is a multiplexed optical output signal.
19. In the system according to claim 18, each of the input cells is associated with a plurality of wavelengths of the multiplexed optical carrier signal, and includes a set of a plurality of first optical amplitude modulators preceded by a demultiplexer and followed by a multiplexer. The plurality of first optical amplitude modulators in each input cell are configured to output a plurality of respective first modulated optical signals by adding a plurality of arithmetic inputs to the plurality of wavelengths of the multiplexed optical carrier signal. A system.
20. In the system according to claim 18, each of the weighting cells is associated with a plurality of wavelengths of the multiplexed optical carrier signal, and includes a set of a plurality of second optical amplitude modulators and / or phase shifters preceded by a demultiplexer and followed by a multiplexer. The plurality of second optical amplitude modulators and / or phase shifters are configured to output a plurality of respective second modulated optical signals by adding a plurality of arithmetic weights to one or more first modulated optical signals. A system.
21. In the system according to claim 18, further comprising electro - optical switches preceding and following each of said input cells and each of said weighted cells, said electro - optical switches being configurable to direct a multiplexed optical input signal along a first input optical path through said input cell or a second input optical path and along a first weighted optical path through said weighted cell or a second weighted optical path. Each of said input cells is associated with a plurality of wavelengths of said multiplexed optical carrier signal along said first input optical path, and comprises a set of first optical amplitude modulators preceded by a demultiplexer and followed by a multiplexer, and a separate first optical amplitude modulator along said second input optical path. Each of said weighted cells is associated with a plurality of wavelengths of said multiplexed optical carrier signal along said first weighted optical path, and comprises a set of second optical amplitude modulators and / or phase shifters preceded by a demultiplexer and followed by a multiplexer, and a separate second optical amplitude modulators and / or phase shifters along said second weighted optical path, a system.
22. In the system according to claim 21, said electro - optical switches are programmable with respect to a plurality of configurations implementing a plurality of associated artificial neural network types, said plurality of configurations including a convolutional neural network configuration in which said multiplexed optical carrier signal is directed along said first input optical path and said second weighted optical path; a fully - connected neural network configuration in which said multiplexed optical carrier signal is directed along said second input optical path and said first weighted optical path; a neural network configuration in which said multiplexed optical input signal is directed along said first input optical path and said first weighted optical path, a system.
23. A photonic circuit comprising an optical splitter configured to split multiplexed light into a plurality of multiplexed optical carrier signals associated with a plurality of inputs; a plurality of interferometric optical paths configured to receive said plurality of multiplexed optical carrier signals and generate a multiplexed weighted optical input signal; and an optical combiner configured to combine said multiplexed weighted optical input signal into a multiplexed optical output signal. Each of the plurality of interferometric optical paths is a first electro-optic switch, a second electro-optic switch, and a third electro-optic switch, wherein the first electro-optic switch and the second electro-optic switch are configured to switch the plurality of multiplexed optical carrier signals between a first input optical path and a second input optical path, and the second electro-optic switch and the third electro-optic switch are configured to switch a multiplexed optical input signal between a first weighted optical path and a second weighted optical path, the first electro-optic switch, the second electro-optic switch, and the third electro-optic switch an input cell between the first electro-optic switch and the second electro-optic switch, the input cell being associated with a plurality of wavelengths of the plurality of multiplexed optical carrier signals along the first input optical path, and comprising a set of first optical amplitude modulators preceded by a demultiplexer and followed by a multiplexer, and a separate first optical amplitude modulator along the second input optical path, the input cell being configured to generate the multiplexed optical input signal, the input cell a weighting cell between the second electro-optic switch and the third electro-optic switch, the weighting cell being associated with a plurality of wavelengths of the plurality of multiplexed optical carrier signals along the first weighted optical path, and comprising a set of second optical amplitude modulators and phase shifters preceded by a demultiplexer and followed by a multiplexer, and a separate second optical amplitude modulators and phase shifters along the second weighted optical path, the weighting cell being configured to generate the multiplexed weighted optical input signal, the weighting cell A photonic circuit comprising.
24. The photonic circuit according to claim 23, further comprising a demultiplexer at the output of the optical combiner, the demultiplexer being configured to separate the multiplexed optical output signal into optical output signals of a plurality of wavelengths.
25. The photonic circuit according to claim 24, further comprising a plurality of photodetectors for measuring the optical output signals at the plurality of wavelengths.
26. A method performed by a photonic crossbar, Dividing light into a plurality of optical carrier signals associated with a plurality of arithmetic inputs; Modulating the amplitudes of the plurality of optical carrier signals to append the arithmetic inputs to the optical carrier signals, thereby outputting a plurality of first modulated optical signals; Dividing each of the plurality of first modulated optical signals among a plurality of optical paths associated with a plurality of arithmetic outputs; Modulating the amplitude and / or phase of the first modulated optical signal in each of the plurality of optical paths to append arithmetic weights each associated with one of the plurality of arithmetic inputs and one of the plurality of arithmetic outputs to the first modulated optical signal, thereby generating a second modulated optical signal; For each of the arithmetic outputs, coherently combining the second modulated optical signal in the optical path associated with the arithmetic output into an optical output signal encoding the arithmetic output; A method comprising the above steps. **Claim 27** The method according to claim 26, wherein each of the plurality of optical carrier signals is associated with one of the plurality of arithmetic inputs, and each of the plurality of first modulated optical signals is associated with one of the plurality of arithmetic outputs. **Claim 28** The method according to claim 26, wherein the light is multiplexed light including a plurality of wavelengths, the plurality of optical carrier signals are multiplexed optical carrier signals each associated with one of the plurality of arithmetic inputs appended to one of the optical carrier signals among the optical carrier signals at the plurality of wavelengths to output the plurality of first modulated optical signals, and the plurality of optical output signals are multiplexed optical output signals each associated with the plurality of arithmetic outputs encoded in the plurality of optical output signals at the plurality of wavelengths.
Citation Information
Patent Citations
Apparatus and method for optical neural networks
JP2019523932A
Systems and methods for training neural networks
US20180260703A1
Matrix multiplication using optical processing
US20200142441A1
Large-scale artificial neural-network accelerators based on coherent detection and optical data fan-out
WO2020102204A1