WO2023074798A1 - スパイキングニューラルネットワークを実行するための装置及び方法、並びに、スパイキングニューロモーフィックシステム - Google Patents

スパイキングニューラルネットワークを実行するための装置及び方法、並びに、スパイキングニューロモーフィックシステム Download PDF

Info

Publication number
WO2023074798A1
WO2023074798A1 PCT/JP2022/040150 JP2022040150W WO2023074798A1 WO 2023074798 A1 WO2023074798 A1 WO 2023074798A1 JP 2022040150 W JP2022040150 W JP 2022040150W WO 2023074798 A1 WO2023074798 A1 WO 2023074798A1
Authority
WO
WIPO (PCT)
Prior art keywords
spike
data
input
circuit
spikes
Prior art date
Application number
PCT/JP2022/040150
Other languages
English (en)
French (fr)
Inventor
怜穏 押尾
睦 木村
任遠 張
康彦 中島
Original Assignee
国立大学法人 奈良先端科学技術大学院大学
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 国立大学法人 奈良先端科学技術大学院大学 filed Critical 国立大学法人 奈良先端科学技術大学院大学
Publication of WO2023074798A1 publication Critical patent/WO2023074798A1/ja

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06GANALOGUE COMPUTERS
    • G06G7/00Devices in which the computing operation is performed by varying electric or magnetic quantities
    • G06G7/48Analogue computers for specific processes, systems or devices, e.g. simulators
    • G06G7/60Analogue computers for specific processes, systems or devices, e.g. simulators for living beings, e.g. their nervous systems ; for problems in the medical field
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/049Temporal neural networks, e.g. delay elements, oscillating neurons or pulsed inputs
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/06Physical realisation, i.e. hardware implementation of neural networks, neurons or parts of neurons
    • G06N3/063Physical realisation, i.e. hardware implementation of neural networks, neurons or parts of neurons using electronic means

Definitions

  • the present disclosure relates to apparatus and methods for implementing spiking neural networks and spiking neuromorphic systems.
  • a neuromorphic system is a system that implements a neural network in hardware.
  • Neuromorphic systems are sometimes referred to as neuromorphic systems.
  • attention has been focused particularly on systems that model biological neurons more strictly than artificial neural networks (ANNs). This system is called a Spiking Neural Network (SNN).
  • SNN Spiking Neural Network
  • An object of one aspect of the present disclosure is to provide an apparatus and method for executing a spiking neural network and a spiking neuromorphic system capable of improving processing speed.
  • a device for executing a spiking neural network, wherein spike data input to the device is composed of a plurality of spikes. wherein the device has a variable weight, generates a membrane potential change adjusted according to the weight for each spike constituting the spike data, and an integral value of the membrane potential change exceeds a threshold value;
  • the spike data is data in which input data is expressed as a spike pattern, and the spike pattern is the number of spikes constituting the spike data, the spike It is defined using at least two of the width of each spike forming data and the amplitude of each spike forming said spike data.
  • a method is a method for executing a spiking neural network, wherein input data is spike data input to an apparatus for executing the spiking neural network.
  • the spike data input to the device is composed of a plurality of spikes, the device has a variable weight, and for each spike constituting the spike data, the weight and a circuit for generating a new spike when the integrated value of the membrane potential displacement exceeds a threshold, wherein the spike data is input data as a spike pattern
  • the spike pattern is represented data, and the spike pattern is at least two of the number of spikes that make up the spike data, the width of each spike that makes up the spike data, and the amplitude of each spike that makes up the spike data. Defined using parameters.
  • FIG. 4 is a diagram for explaining how the membrane potential Vmem increases or decreases discontinuously;
  • FIG. 4 is a diagram showing circuit configuration examples of a synapse circuit and a neuron circuit;
  • FIG. 2 is a diagram showing electrical characteristics of a memcapacitor and a schematic configuration of the memcapacitor;
  • 4A and 4B are diagrams for explaining an example of the present embodiment;
  • FIG. 4A and 4B are diagrams for explaining an example of the present embodiment;
  • FIG. 4A and 4B are diagrams for explaining an example of the present embodiment;
  • FIG. 4A and 4B are diagrams for explaining an example of the present embodiment;
  • FIG. 4A and 4B are diagrams for explaining an example of the present embodiment;
  • FIG. 4A and 4B are diagrams for explaining an example of the present embodiment;
  • FIG. 4A and 4B are diagrams for explaining an example of the present embodiment;
  • FIG. 4A and 4B are diagrams for explaining an example of the present embodiment;
  • FIG. 4A and 4B are diagrams for explaining an example of the present embodiment
  • FIG. 4A and 4B are diagrams for explaining an example of the present embodiment
  • FIG. 4A and 4B are diagrams for explaining an example of the present embodiment
  • FIG. 4A and 4B are diagrams for explaining an example of the present embodiment
  • FIG. 4 is a diagram for explaining another embodiment of the present disclosure
  • FIG. 4 is a diagram for explaining another embodiment of the present disclosure
  • FIG. 5 is a diagram for explaining still another embodiment of the present disclosure;
  • a neuromorphic system is hardware that mimics the brain, and is expected to be compact and consume less power.
  • the spiking neuromorphic system which uses spikes for signal transduction, is based on the same principle as the brain, and is expected to have higher performance including unknown brain functions.
  • coding In spiking neuromorphic systems, the physical representation of transmitted signals is called coding.
  • Conventional spiking neuromorphic systems have used coding using only the number of spikes. If coding using spike width and spike amplitude in addition to the number of spikes can be used, the processing speed can be improved for the same amount of processing information, and as a result, a significant reduction in processing time can be expected. Also, a significant increase in the amount of information processed can be expected for the same processing time.
  • the present disclosure has conducted extensive studies to enable coding that uses both the spike width and the spike amplitude. I have come to disclose.
  • FIG. 1 shows a model of a spiking neural network.
  • a neural network consists of a plurality of neurons and a plurality of synapses. Neurons are connected by synapses.
  • FIG. 1 shows a plurality of synapses s1, s2, and s3 connecting between a certain neuron n1 and neurons preceding the neuron n1.
  • the neuron n1 and the neurons following the neuron n1 are also connected by synapses.
  • multiple synapses s1, s2 and s3 are connected to neuron n1.
  • Spike x1 and spike x4 are input to neuron n1 via synapse s1.
  • the input time of spike x1 is T1.
  • T4 be the input time of spike x4.
  • Spike x3 is input to neuron n1 via synapse s2.
  • T3 be the input time of spike x3.
  • Spike x2 is input to neuron n1 via synapse s3.
  • T2 be the input time of spike x2.
  • W1 be the weight of synapse s1.
  • Weight W1 is a positive weight.
  • Synapse s1 is an excitatory synapse.
  • W2 be the weight of synapse s2.
  • Weight W2 is a negative weight.
  • Synapse s2 is an inhibitory synapse.
  • W3 be the weight of synapse s3.
  • Weight W3 is a positive weight.
  • Synapse s3 is an excitatory synapse.
  • Each synapse multiplies the input spike by a weight and outputs a membrane potential change adjusted according to the weight to the neuron.
  • spike x3 input to synapse s2 is multiplied by weight W2 of synapse s2, and membrane potential displacement adjusted according to weight W2 is output to neuron n1.
  • Membrane potential displacement will be described later.
  • the state of neuron n1 is represented by an internal variable called membrane potential.
  • Vmem be the membrane potential of the neuron n1.
  • FIG. 2 shows how the membrane potential Vmem increases or decreases discontinuously.
  • the spike x1 is input to the synapse s1 at time T1
  • the synapse s1 is an excitatory synapse
  • the membrane potential Vmem increases.
  • the spike x2 is input to the synapse s3 at time T2
  • the membrane potential Vmem increases because the synapse s3 is an excitatory synapse.
  • the membrane potential Vmem decreases because the synapse s2 is an inhibitory synapse.
  • the membrane potential Vmem increases because the synapse s1 is an excitatory synapse.
  • the neuron n1 displaces the membrane potential Vmem according to each spike each time the above spike is input to the neuron n1 via each synapse.
  • the neuron n1 then integrates the displacement of the membrane potential Vmem.
  • the change in the membrane potential Vmem when one spike is input to the neuron n1 is referred to as the change in membrane potential. Let the membrane potential change be ⁇ Vmem.
  • Neuron n1 holds a threshold. Let Vth be the threshold. In the example of FIG. 2, the neuron n1 fires when the integral value of the membrane potential change ⁇ Vmem reaches the threshold Vth. Assume that the firing time of neuron n1 is T5. The integrated value is the membrane potential Vmem at time T5 when all of the spikes x1, x2, x3 and x4 described above are input.
  • the neuron n1 When the neuron n1 fires, the neuron n1 outputs a spike y to the subsequent neuron, as shown in Figure 1. After the neuron n1 fires, the membrane potential Vmem of the neuron n1 is reset.
  • FIG. 3 shows circuit configuration examples of the synapse circuit 301 and the neuron circuit 302 according to this embodiment.
  • a synapse circuit 301 is a hardware configuration example of the synapses s1, s2, and s3 illustrated in FIG.
  • a neuron circuit 302 is a hardware configuration example of the neuron n1 illustrated in FIG. That is, the synapse circuit 301 and neuron circuit 302 are examples of circuits that generate new spikes.
  • a plurality of such circuits is an example of an apparatus for implementing a spiking neural network.
  • a system composed of a plurality of synapse circuits 301 and a plurality of neuron circuits 302 is an example of a spiking neuromorphic system.
  • the configuration of the synapse circuit 301 will be described first, then the configuration of the neuron circuit 302 will be described, and finally the operations of the synapse circuit 301 and the neuron circuit 302 that are connected to each other will be described.
  • the synapse circuit 301 includes a first input terminal X1, a second input terminal X2, an output terminal A, a first capacitor c1, a first switching element t1, and a second switching element. It has an element t2, a third switching element t3, a fourth switching element t4, a fifth switching element t5, a sixth switching element t6, and a second capacitor c2.
  • a first input signal is input to the first input terminal X1.
  • a second input signal is input to the second input terminal X2.
  • the first input signal is a signal obtained by inverting the first input signal.
  • the first input signal and the second input signal are complementary.
  • a third capacitor CM is connected between the output terminal A and the ground potential.
  • the first capacitor c1 is a memcapacitor with variable electrical characteristics.
  • FIG. 4 shows electrical characteristics of the memcapacitor and a schematic configuration of the memcapacitor.
  • the memcapacitor has electrical characteristics indicated by reference numeral 401 in FIG.
  • the memcapacitor has a schematic configuration indicated by reference numeral 402 in FIG.
  • a memcapacitor is a passive element that not only stores electric charge but also has electrical characteristics such that the capacitance value of the capacitor changes according to the history of the applied voltage, as shown by the hysteresis characteristics indicated by reference numeral 401 in FIG.
  • a memcapacitor is a memory element.
  • a memcapacitor holds analog data as a storage element.
  • a memcapacitor can be used as a nonvolatile memory.
  • the memcapacitor has a Pt layer 42 disposed on the base 41, a bismuth lanthanum titanate (BLT) layer 43 disposed on the Pt layer 42, and a BLT layer 43. and an Au layer 44 disposed on 43 .
  • the Pt layer 42 is the negative electrode.
  • the Au layer 44 is the positive electrode.
  • a charge Q is accumulated in the BLT layer 43 by applying a voltage V between the Pt layer 42 and the Au layer 44 . The application of this voltage V changes the capacitance value of the capacitor composed of the Pt layer 42, the BLT layer 43, and the Au layer 44.
  • the second capacitor c2 has a fixed capacitance value.
  • the first switching element t1 is a p-type MOSFET.
  • the first switching element t1 is turned on when the gate-source voltage is equal to or lower than the threshold voltage.
  • the gate is connected to the second input terminal X2 and the source is connected to the first input terminal X1.
  • the second switching element t2 is a p-type MOSFET.
  • the second switching element t2 is turned on when the gate-source voltage is equal to or lower than the threshold voltage.
  • the gate is connected to the first input terminal X1 and the drain is connected to the second input terminal X2.
  • the third switching element t3 is an n-type MOSFET.
  • the third switching element t3 is turned on when the gate-source voltage is equal to or higher than the threshold voltage.
  • the gate is connected to the second input terminal X2 through the second capacitor c2, the source is connected to the source of the second switching element t2, and the drain is connected to the first input terminal X1 through the first capacitor c1.
  • the fourth switching element t4 is an n-type MOSFET.
  • the fourth switching element t4 is turned on when the gate-source voltage is equal to or higher than the threshold voltage.
  • the gate is connected to the first input terminal X1 through the first capacitor c1
  • the source is connected to the second input terminal X2 through the second capacitor c2
  • the drain is connected to the drain of the first switching element t1.
  • the fifth switching element t5 is a p-type MOSFET.
  • the fifth switching element t5 is turned on when the gate-source voltage is equal to or lower than the threshold voltage.
  • the gate is connected to the second input terminal X2 through the second capacitor c2, the source is connected to the first input terminal X1 through the first capacitor c1, and the drain is connected to the output terminal A.
  • the sixth switching element t6 is a p-type MOSFET.
  • the sixth switching element t6 turns on when the gate-source voltage is equal to or lower than the threshold voltage.
  • the gate is connected to the first input terminal X1 through the first capacitor c1, the source is connected to the output terminal A, and the drain is connected to the second input terminal X2 through the second capacitor c2.
  • the synaptic circuit 301 shown in FIG. 3 represents an excitatory synapse. That is, in the synapse circuit 301 shown in FIG. 3, the sign of the weight expressed using the capacitance value of the first capacitor c1 is positive. When expressing an inhibitory synapse, in the synapse circuit 301 shown in FIG.
  • the first switching element t1 is replaced with an n-type MOSFET
  • the second switching element t2 is replaced with an n-type MOSFET
  • the third switching It is sufficient to replace the element t3 with a p-type MOSFET
  • replace the fourth switching element t4 with a p-type MOSFET
  • replace the fifth switching element t5 with an n-type MOSFET
  • replace the sixth switching element t6 with an n-type MOSFET.
  • the sign of the weight expressed using the capacitance value of the first capacitor c1 is negative.
  • the neuron circuit 302 includes a third capacitor CM, a seventh switching element t11, a first inverter element IN1, a second inverter element IN2, a third inverter element IN3, and a third inverter element IN3. It has a 4-inverter element IN4, a fourth capacitor c11, a fifth capacitor c12, a sixth capacitor c13, and an output terminal Y.
  • the third capacitor CM has a fixed capacitance value.
  • the third capacitor CM is connected between the output terminal A of the synapse circuit 301 and the ground potential, as described above.
  • the output terminal A of the synapse circuit 301 can be said to be an input terminal of the neuron circuit 302 from the perspective of the neuron circuit 302 .
  • the membrane potential Vmem illustrated in FIG. 1 is expressed using the potential of the third capacitor CM.
  • the seventh switching element t11 is an n-type MOSFET.
  • the seventh switching element t11 turns on when the gate-source voltage is equal to or higher than the threshold voltage.
  • the gate is connected to the output terminal Y, the source is connected to the ground potential, and the drain is connected to the ground potential via the third capacitor CM.
  • the first inverter element IN1 receives an input signal from the input side and outputs an output signal from the output side.
  • the output signal is the inverse of the input signal.
  • the input side is connected to the third capacitor CM, and the output side is connected to the ground potential through the fourth capacitor c11.
  • the second inverter element IN2 receives an input signal from the input side and outputs an output signal from the output side.
  • the output signal is the inverse of the input signal.
  • the input side is connected to the fourth capacitor c11, and the output side is connected to the ground potential through the fifth capacitor c12.
  • the third inverter element IN3 receives an input signal from the input side and outputs an output signal from the output side.
  • the output signal is the inverse of the input signal.
  • the input side is connected to the fifth capacitor c12, and the output side is connected to the ground potential via the sixth capacitor c13.
  • the fourth inverter element IN4 receives an input signal from the input side and outputs an output signal from the output side.
  • the output signal is the inverse of the input signal.
  • the input side is connected to the sixth capacitor c13, and the output side is connected to the output terminal Y.
  • the fourth capacitor c11 has a fixed capacitance value.
  • the fourth capacitor c11 is connected between the ground potential and the input side of the second inverter element IN2.
  • the fifth capacitor c12 has a fixed capacitance value.
  • the fifth capacitor c12 is connected between the ground potential and the input side of the third inverter element IN3.
  • the sixth capacitor c13 has a fixed capacitance value.
  • the sixth capacitor c13 is connected between the ground potential and the input side of the fourth inverter element IN4.
  • a spike is input to the first input terminal X1.
  • the spikes input to the first input terminal X1 correspond to the spikes x1, x2, x3 and x4 illustrated in FIG.
  • a spike obtained by inverting the spike input to the first input terminal X1 is input to the second input terminal X2.
  • the spike input to the first input terminal X1 and the spike input to the second input terminal X2 are complementary.
  • the spike input to the second input terminal X2 is hereinafter referred to as an inverted spike.
  • the spike input to the first input terminal X1 is a voltage spike.
  • the voltage spike input to the first input terminal X1 is a positive voltage.
  • the positive voltage input to the first input terminal X1 is a voltage equal to or higher than the respective threshold voltages of the third switching element t3 and the fourth switching element t4.
  • the spike input to the first input terminal X1 is hereinafter referred to as the first spike.
  • the inverted spike input to the second input terminal X2 is a voltage spike.
  • the voltage spike input to the second input terminal X2 is a negative voltage.
  • the negative voltage input to the second input terminal X2 is a voltage below the threshold voltages of the first switching element t1, the second switching element t2, the fifth switching element t5, and the sixth switching element t6.
  • the inverted spike input to the second input terminal X2 will be referred to as the second spike.
  • the first spike and the second spike are complementary. Therefore, the rising timing of the first spike and the falling timing of the second spike match. Also, the falling timing of the first spike and the rising timing of the second spike match.
  • a first spike generator for generating a first spike is connected to the first input terminal X1 of the synapse circuit 301 .
  • a second spike generator for generating a second spike is connected to the second input terminal X2 of the synapse circuit 301 .
  • the first spike generator converts input data such as an image into spike data consisting of multiple spikes. That is, the first spike generation device is a device that encodes input data such as an image into spike data as a binary number. The first spike generation device outputs each spike constituting spike data after conversion to the first input terminal X1. Each spike corresponds to the first spike.
  • the second spike generator converts input data such as images into spike data consisting of a plurality of spikes. That is, the second spike generation device is a device that encodes input data such as an image into spike data as a binary number. The second spike generation device outputs each spike constituting spike data after conversion to the second input terminal X2. Each spike corresponds to a second spike.
  • the first spike generator and the second spike generator perform the above encoding on the same input data.
  • the spike data encoded by the first spike generator is expressed as a spike pattern.
  • the spike pattern is defined using at least two of the number of spikes that make up the spike data, the width of each spike that makes up the spike data, and the amplitude of each spike that makes up the spike data. The same is true for the spike data encoded by the second spike generator.
  • the synapse circuit 301 operates as follows when the first spike is input to the first input terminal X1 and the second spike is input to the second input terminal X2.
  • the potential difference between the positive voltage input to the first input terminal X1 and the negative voltage input to the second input terminal X2 is applied to the second capacitor c2.
  • the application of this potential difference charges the second capacitor c2.
  • the discharge of the first capacitor c1 charges the third capacitor CM. Since the first capacitor c1 has a variable capacity, that is, stores an amount of charge corresponding to the weight, the membrane potential change ⁇ Vmem of the third capacitor CM is a change adjusted according to the weight of the first capacitor c1. .
  • the potential difference between the negative voltage input to the first input terminal X1 and the positive voltage input to the second input terminal X2 is applied to the first capacitor c1.
  • the application of this potential difference charges the first capacitor c1.
  • the discharge of the second capacitor c2 charges the third capacitor CM. Since the second capacitor c2 stores a charge amount corresponding to the fixed capacitance, the film potential change ⁇ Vmem of the third capacitor CM is a change corresponding to the fixed capacitance of the second capacitor c2.
  • the synapse circuit 301 controls the on/off of the first switching element t1 to the sixth switching element t6, and charges and discharges each of the first capacitor c1 and the second capacitor c2 to transfer the charge to the third capacitor CM.
  • This charge transition increases the potential of the third capacitor CM, that is, the membrane potential Vmem. From this, it can be said that the synapse circuit 301 constitutes a charge pump circuit that generates an increase in the membrane potential Vmem.
  • the membrane potential Vmem increases. Therefore, when a plurality of first spikes are input to the first input terminal X1 and a plurality of second spikes are input to the second input terminal X2, the membrane potential Vmem increases at the input timing of each spike. , that is, increases discontinuously.
  • the synapse circuit 301 expresses excitatory synapses. With a circuit configuration that expresses an inhibitory synapse, the potential of the third capacitor CM, that is, the membrane potential Vmem, decreases at the timing of each spike input, that is, decreases discontinuously.
  • the threshold Vth illustrated in FIG. 1 is expressed using the threshold of the first inverter element IN1.
  • the film potential Vmem of the third capacitor exceeds the threshold value of the first inverter element IN1
  • signals are applied to the first inverter element IN1, the second inverter element IN2, the third inverter element IN3, and the fourth inverter element IN4 in this order.
  • the signal output from the fourth inverter element IN4 to the output terminal Y becomes a new spike.
  • a new spike output to the output terminal Y is also input to the gate of the seventh switching element t11.
  • the seventh switching element t11 is turned on when a spike is input to its gate, and discharges the third capacitor CM.
  • the discharge of the third capacitor CM resets the third capacitor CM.
  • Example 1 As shown in FIG. 5, a simple network was constructed by combining a neuron circuit n11, a first synapse circuit s11 and a second synapse circuit s12, and a circuit simulation was performed.
  • a positive weighting was applied to the first synapse circuit s11.
  • the first synaptic circuit s11 acts as an excitatory synapse to increase the membrane potential Vmem of the neuron circuit n11.
  • Negative weighting was applied to the second synaptic circuit s12.
  • the second synaptic circuit s12 acts as an inhibitory synapse to reduce the membrane potential Vmem of the neuron circuit n11.
  • FIG. 6 shows the circuit simulation results.
  • Reference numeral 601 indicates the voltage waveform of spike data input to the input terminal x11 of the first synapse circuit s11.
  • Reference numeral 602 indicates the voltage waveform of spike data input to the input terminal x12 of the second synapse circuit s12.
  • Reference numeral 603 indicates the membrane potential of the neuron circuit n11.
  • Reference numeral 694 indicates the voltage waveform of spike data output from the output terminal y11 of the neuron circuit n11.
  • the membrane potential of the neuron circuit n11 increases each time a spike is input to the input terminal x11 of the first synapse circuit s11. Conversely, every time a spike is input to the input terminal x12 of the second synapse circuit s12, the membrane potential of the neuron circuit n11 decreases.
  • the membrane potential of the neuron circuit n11 continues to increase, and finally the threshold value of the neuron circuit n11 reach the voltage. Neuron circuit n11 generates spikes. After generating the spike, the membrane potential of the neuron circuit n11 is reset to the initial potential of 0V.
  • spike data is defined using the number of spikes that constitute spike data.
  • the spike data includes the number SN of spikes forming the spike data, the width SW of each spike forming the spike data, and the width SW of each spike forming the spike data.
  • the spike amplitude SA is also used and defined.
  • the present inventors performed a circuit simulation and confirmed that there is a positive correlation between the spike width SW and the increase in membrane potential, as shown in FIG.
  • the present inventors performed circuit simulations and confirmed that there is also a positive correlation between the spike amplitude SA and the increase in membrane potential, as shown in FIG.
  • encoding is performed by allocating the high-order bits of the transmission signal to wide spike widths and the low-order bits to narrow spike widths.
  • the membrane potential rise is 1:2
  • the upper bit of the 2-bit transmission signal should be assigned to the spike width of 200 ns, and the lower bit to the spike width of 10 ns.
  • the 2-bit transmission signals 00-11 are encoded with a combination of spike widths of 200 ns and 10 ns.
  • Fig. 12 shows the results of circuit simulation by conventional coding.
  • Reference numeral 1201 indicates the voltage waveform of spike data input to the input terminal x11 of the first synapse circuit s11.
  • Reference numeral 1202 indicates the membrane potential of neuron circuit n11.
  • Reference numeral 1203 indicates the voltage waveform of spike data output from the output terminal y11 of the neuron circuit n11.
  • FIG. 13 shows the circuit simulation results of Example 2.
  • Reference numeral 1301 indicates the voltage waveform of spike data input to the input terminal x11 of the first synapse circuit s11.
  • Reference numeral 1302 indicates the membrane potential of the neuron circuit n11.
  • Reference numeral 1303 indicates the voltage waveform of spike data output from the output terminal y11 of the neuron circuit n11.
  • encoding is performed by allocating the high-order bits of the transmission signal to large spike amplitudes and the low-order bits to small spike amplitudes.
  • the high-order bit of the 3-bit transmission signal is set to a spike amplitude of 0.8 V
  • the middle-order bit is set to a spike amplitude of 0.42 V
  • All that is necessary is to allocate the lower bits to a spike amplitude of 0.4V.
  • the 3-bit transmission signals 000-111 are encoded with a combination of spike widths of 0.8V, 0.42V and 0.4V.
  • Fig. 16 shows the results of circuit simulation by conventional coding.
  • Reference numeral 1601 indicates the voltage waveform of spike data input to the input terminal x11 of the first synapse circuit s11.
  • Reference numeral 1602 indicates the membrane potential of the neuron circuit n11.
  • Reference numeral 1603 indicates the voltage waveform of spike data output from the output terminal y11 of the neuron circuit n11.
  • FIG. 17 shows the circuit simulation results of Example 3.
  • Reference numeral 1701 indicates the voltage waveform of spike data input to the input terminal x11 of the first synapse circuit s11.
  • Reference numeral 1702 indicates the membrane potential of the neuron circuit n11.
  • Reference numeral 1703 indicates the voltage waveform of spike data output from the output terminal y11 of the neuron circuit n11.
  • the conventional coding when representing the 3-bit transmission signal 111, in the conventional encoding of only the number of spikes, it is represented by spike data composed of 7 spikes with a spike amplitude of 0.4V.
  • Example 3 it is represented by spike data composed of one spike amplitude of 0.8V, one spike amplitude of 0.42V, and one spike amplitude of 0.4V.
  • the effect of reducing the processing time becomes more pronounced as the number of bits of the transmission signal increases.
  • Example 4 differs from Example 3 in that the membrane potential increase is 1:4. According to FIG. 18, since the membrane potential rise is 1:4, the high-order bit of the 3-bit transmission signal has a spike amplitude of 0.8 V, and the middle-order bit and low-order bit have a spike amplitude of 0.4 V. All you have to do is allocate. More specifically, as shown in FIG. 19, the 3-bit transmission signals 000-111 are encoded with a combination of spike widths of 0.8V and 0.4V.
  • FIG. 20 shows the circuit simulation results of Example 4.
  • Reference numeral 2001 indicates the voltage waveform of spike data input to the input terminal x11 of the first synapse circuit s11.
  • Reference numeral 2002 indicates the membrane potential of the neuron circuit n11.
  • Reference numeral 2003 indicates the voltage waveform of spike data output from the output terminal y11 of the neuron circuit n11.
  • Example 5 provides encoding that assigns each bit of the transmitted signal to a different combination of spike width and spike amplitude.
  • the method of allocating each bit of the transmission signal to a different combination of spike width and spike amplitude can be selected according to the situation.
  • circuits for generating different spike widths and spike amplitudes require a certain amount of circuit area. It is preferable to allocate to spike width and spike amplitude.
  • the number of types of spike widths and spike amplitudes is increased, and all bits of the transmitted signal are separately assigned to different combinations of spike widths and spike amplitudes. is preferred.
  • FIG. 21 shows combinations of spike widths and spike amplitudes with a membrane potential increase width of about 8:4:2:1.
  • FIG. 22 shows the circuit simulation results of the fifth embodiment.
  • Reference numeral 2201 indicates the voltage waveform of spike data input to the input terminal x11 of the first synapse circuit s11.
  • Reference numeral 2202 indicates the membrane potential of neuron circuit n11.
  • spike data was encoded as a binary number in the above embodiment, the present disclosure is not limited to this.
  • the present disclosure as shown in FIG. 23, can be represented by spike data, indicated by reference numeral 2301, consisting of a combination of spikes of four membrane potential rise amplitudes, indicated by reference numeral 2302, encoded as binary numbers. That is, different strengths of the transmitted signal can be allocated to different spike widths and spike amplitudes.
  • one of the at least two parameters defining the spike pattern is the width of each spike that makes up the spike data
  • sign the spike data as the product of the number of spikes and the average spike intensity. and widen the width of each spike as the spike intensity increases.
  • one of the at least two parameters defining the spike pattern is the amplitude of each spike that constitutes the spike data
  • the spike data is encoded as the product of the number of spikes and the average value of the spike intensity, and the spike The amplitude of each spike should be increased as the intensity goes from low to high.
  • the spike intensity is represented by a function f(SA, SW) that monotonically increases with respect to both the spike amplitude SA and the spike width SW.
  • the ratio of membrane potential displacement to one weight can be set to 1:2:3:4 or 1:2:4:8.
  • the average spike intensity is the average sum of the spike intensities of each spike. More specifically, it is obtained by dividing the sum of the spike intensities of each spike by the number of spikes. Therefore, it can be said that the product of the number of spikes and the average value of spike intensities is the total sum of spike intensities. As shown in FIG. 23, between the spike data indicated by reference numeral 2301 and the spike data indicated by reference numeral 2302, the number described below each spike, ie, the sum of spike strengths, is 10 for both. That is, each summation is equal.
  • the present disclosure can be used for all neural networks and neuromorphic systems.
  • the present disclosure can be used in the fully connected layers.
  • FIG. 25 is a diagram showing a circuit configuration for realizing a synapse circuit and a neuron circuit according to yet another embodiment of the present disclosure.
  • the circuit 2500 according to this embodiment includes a matrix array MX, a multiplexer group MP, a first selection transistor group PT, a second selection transistor group NT, a first selection circuit 2501, a second selection It comprises a circuit 2502 , a third selection circuit 2503 , a voltage supply circuit 2504 and a control circuit 2505 .
  • the matrix array MX has 16 memcapacitors CM11 to CM44 arranged in a matrix at intersections of four bit lines B1 to B4 and four word lines W1 to W4.
  • bit line BG the four bit lines B1 to B4 are collectively referred to as "bit line BG”.
  • word line WG the four word lines W1 to W4 are collectively referred to as "word line WG”.
  • the 16 memcapacitors CM11 to CM44 are collectively referred to as "memcapacitors CMG”.
  • the number of bit lines BG is 4
  • the number of word lines WG is 4
  • the number of memcapacitors CMG is 16, but this embodiment is not limited to these numbers. .
  • the memcapacitor CMG is a memcapacitor having the electrical characteristics indicated by reference numeral 401 in FIG. 4 and the schematic configuration indicated by reference numeral 402 in FIG. Since FIG. 4 has already been described, it will not be described again here.
  • the memcapacitor CMG has two terminals. One terminal thereof is connected to the bit line BG. The other terminal is connected to the word line WG.
  • memcapacitor CM11 has one terminal connected to bit line B1 and the other terminal connected to word line W1.
  • the multiplexer group MP has four multiplexers M1 to M4.
  • the four multiplexers M1 to M4 are collectively referred to as "multiplexer MG".
  • the number of multiplexers MG is four, but this embodiment is not limited to this number.
  • the multiplexer MG has four input terminals, one output terminal, and one control terminal.
  • the multiplexer MG selects one of four voltages input from each of four input terminals based on a control signal input from one control terminal. In this case, the multiplexer MG outputs the selected voltage from the output terminal. Further, the multiplexer MG selects not to output any of the above four voltages based on the control signal input from one control terminal. In this case, the output terminal of the multiplexer MG is disconnected from any of the four input terminals.
  • the first selection transistor group PT has four p-type MOSFETs P1 to P4.
  • the four p-type MOSFETs P1 to P4 are collectively referred to as "p-type MOSFET PG".
  • the number of p-type MOSFETs PG is four, but this embodiment is not limited to this number.
  • the source terminal of the p-type MOSFET PG is connected to the power supply potential Vdd, and the drain terminal is connected to the bit line BG.
  • the source terminal of the p-type MOSFET P1 is connected to the power supply potential Vdd, and the drain terminal is connected to the bit line B1.
  • the second select transistor group NT has four n-type MOSFETs N1 to N4.
  • the four n-type MOSFETs N1 to N4 are collectively referred to as "n-type MOSFET NG".
  • the number of n-type MOSFETNGs is four, but this embodiment is not limited to this number.
  • the source terminal of the n-type MOSFET NG is connected to the ground potential GND, and the drain terminal is connected to the bit line BG.
  • the source terminal of the n-type MOSFET N1 is connected to the ground potential GND, and the drain terminal is connected to the bit line B1.
  • the first selection circuit 2501 outputs the control signal SP.
  • the control signal SP is input to the gate terminal of the p-type MOSFET PG of the first selection transistor group PT.
  • the p-type MOSFET PG is turned on.
  • the bit line BG is connected to the power supply potential Vdd through the p-type MOSFET PG.
  • the second selection circuit 2502 outputs the control signal SN.
  • the control signal SN is input to the gate terminal of the n-type MOSFET NG of the second selection transistor group NT.
  • the n-type MOSFET NG is turned on.
  • the bit line BG is connected to the ground potential GND via the n-type MOSFETNG.
  • the third selection circuit 2503 outputs control signals SM1 to SM4.
  • control signal SMG the four control signals SM1 to SM4 will be collectively referred to as "control signal SMG".
  • the number of control signals SMG is four, but this embodiment is not limited to this number.
  • a control signal SMG is input to the control terminal of the multiplexer MG in the multiplexer group MP.
  • the multiplexer MG selects one of the four voltages or selects not to output any of them, the number of bits of the control signal SMG must be at least 3 bits. . However, this embodiment is not limited to this.
  • a voltage supply circuit 2504 supplies voltages VL1 to VL4.
  • the four voltages VL1 to VL4 are collectively referred to as "voltage VLG".
  • the number of voltages VLG is four in the present embodiment, the present embodiment is not limited to this number.
  • the voltage VLG is input to four input terminals of the multiplexer MG of the multiplexer group MP.
  • the voltage supply circuit 2504 may generate the voltage VLG internally, or may be supplied with the voltage VLG from the outside.
  • the control circuit 2505 comprehensively controls the first selection circuit 2501, the second selection circuit 2502, the third selection circuit 2503 and the voltage supply circuit 2504.
  • circuit 2500 (equipment operation) The operation of circuit 2500 will now be described.
  • the voltage supply circuit 2504 supplies the voltage VLG to the multiplexers MG of the multiplexer group MP.
  • Voltages VL1 to VL4 are input to the four input terminals of the multiplexer MG, respectively.
  • the voltage VL1 is the voltage of the ground potential GND
  • the voltage VL2 is a voltage of 1/4 of the power supply potential Vdd
  • the voltage VL3 is 2/4 of the power supply potential Vdd, that is, 1/2.
  • the voltage VL4 is 3/4 of the power supply potential Vdd.
  • Voltages VL1-VL4 each correspond to the spike amplitudes of the four spikes input to circuit 2500.
  • the third selection circuit 2503 Based on the instruction from the control circuit 2505, the third selection circuit 2503 outputs the control signal SMG to the multiplexer MG of the multiplexer group MP.
  • Control signals SM1-SM4 are input to respective control terminals of multiplexers M1-M4.
  • the multiplexer MG selects one of the voltages VL1 to VL4 based on the control signal SMG, and outputs the selected voltage from the output terminal. Since the output terminal of the multiplexer MG is connected to the word line WG, the voltage output from the output terminal of the multiplexer MG is applied to the word line WG.
  • the first selection circuit 2501 changes the level of the control signal SP to low level.
  • the level of the control signal SP becomes low level, the p-type MOSFET PG of the first selection transistor group PT is turned on.
  • the voltage of the power supply potential Vdd is applied to the bit line BG via the p-type MOSFET PG.
  • the charging operation of the memcapacitor CMG will be described more specifically.
  • the memcapacitor CM22 will be described below as an example.
  • the first selection circuit 2501 makes the level of the control signal SP high.
  • the third selection circuit 2503 stops outputting the control signal SMG.
  • the voltage supply circuit 2504 stops supplying the voltages VL1 to VL4.
  • the second selection circuit 2502 sets the level of the control signal SN to a high level.
  • the n-type MOSFET NG of the second selection transistor group NT is turned on.
  • the voltage of the ground potential GND is applied to the bit line BG via the n-type MOSFETNG.
  • the discharge operation of the memcapacitor CMG will be described more specifically.
  • the memcapacitors CM21 to CM24 connected to the bit line B2 will be described below as an example.
  • any one of the first to fourth potential differences is applied across each of the memcapacitors CM21 to CM24. Therefore, in each of the memcapacitors CM21 to CM24, a charge amount corresponding to the potential difference applied across the terminals is accumulated.
  • inverter element IG input terminals of inverter elements I1 to I4 are connected to bit lines B1 to B4, respectively.
  • Output signals O1-O4 are output from respective output terminals of inverter elements I1-I4.
  • the four inverter elements I1 to I4 will be collectively referred to as "inverter element IG”.
  • output signal OX when collectively referring to the four output signals O1 to O4, they will be referred to as "output signal OX”.
  • the number of inverter elements IG is four, but this embodiment is not limited to this number.
  • the inverter element IG When the charge accumulated in the memcapacitor CMG is discharged toward the ground potential GND, a potential difference corresponding to the amount of accumulated charge is input to the input terminal of the inverter element IG connected to the bit line BG. .
  • the charge accumulated in the memcapacitor CMG gradually decreases as the charge is discharged. Also, the potential difference decreases as the charge stored in the memcapacitor CMG decreases.
  • the inverter element IG outputs the output signal OX from the output terminal until the potential difference input to the input terminal exceeds the threshold value of the inverter element IG and becomes equal to or less than the threshold value again.
  • the periods during which output signals O1-O4 are output correspond to the spike widths of the four spikes output from circuit 2500, respectively.
  • this embodiment is not limited to the configuration in which the periods in which the output signals O1 to O4 are output correspond to the spike widths of the four spikes output from the circuit 2500, respectively.
  • a circuit capable of accumulating the above spike width may be connected to the output terminal side of the inverter element IG.
  • the circuit is realized by combining a time integration circuit and a time comparator circuit. By connecting this circuit to the output terminal side of the inverter element IG, it is possible to construct a spiking neuron circuit by regarding the spike width output from the circuit 2500 as the membrane potential change amount.
  • Modification 1 Although the circuit 2500 selects the voltage VL to be applied to the word line WG via the multiplexer MG, this embodiment is not limited to this.
  • a DA converter may be used instead of the multiplexer MG.
  • a DA converter can generate a plurality of voltages from one voltage, so there is no need to supply the four voltages VL1 to VL4 from the voltage supply circuit 2504.
  • FIG. One voltage is supplied from the voltage supply circuit 2504 to the DA converter, and four voltages VL1 to VL4 are generated inside the DA converter.
  • the circuit configuration of the DA converter is more complicated than the circuit configuration of the multiplexer MG.
  • the voltages VL1 to VL4 respectively correspond to the spike amplitudes of the four spikes input to the circuit 2500, but this embodiment is not limited to this.
  • the inverter element IG is connected to the bit line BG, and the output signal OX of the inverter element IG corresponds to the spike widths of the four spikes output from the circuit 2500, but this embodiment is limited to this. not a thing
  • a current mirror circuit may be connected instead of the inverter element IG.
  • the current mirror circuit outputs a current having the same value as the current flowing through the bit line BG.
  • a spiking neuromorphic system can be constructed by connecting the output terminal of the current mirror circuit to the input terminal of the neuron circuit 302 shown in FIG. 3 and inputting the output current of the current mirror circuit to the neuron circuit 302. can.
  • the voltages VL1 to VL4 respectively correspond to the spike amplitudes of the four spikes input to the circuit 2500, but this embodiment is not limited to this.
  • the period during which the voltage VLG is supplied from the voltage supply circuit 2504 to the multiplexer MG correspond to the spike width, it is possible to construct spike data that is a combination of the spike amplitude and the spike width.

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Biomedical Technology (AREA)
  • Health & Medical Sciences (AREA)
  • General Health & Medical Sciences (AREA)
  • Biophysics (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Mathematical Physics (AREA)
  • General Physics & Mathematics (AREA)
  • Artificial Intelligence (AREA)
  • Molecular Biology (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Evolutionary Computation (AREA)
  • Data Mining & Analysis (AREA)
  • Software Systems (AREA)
  • Computational Linguistics (AREA)
  • Neurology (AREA)
  • Computer Hardware Design (AREA)
  • Neurosurgery (AREA)
  • Physiology (AREA)
  • Semiconductor Integrated Circuits (AREA)

Abstract

スパイキングニューラルネットワークを実行するための装置であって、前記装置に入力されるスパイクデータは、複数のスパイクから構成されており、前記装置は、可変の重みを有し、前記スパイクデータを構成する各スパイクに対して前記重みに応じて調整された膜電位変位を生成し、当該膜電位変位の積分値が閾値を超えた場合に新たなスパイクを生成する回路(301、302)を備えており、前記スパイクデータは、入力データがスパイクパターンとして表現されたデータであり、前記スパイクパターンは、前記スパイクデータを構成するスパイクの数、各スパイクの幅、及び各スパイクの振幅のうちの少なくとも2つを用いて定義される。

Description

スパイキングニューラルネットワークを実行するための装置及び方法、並びに、スパイキングニューロモーフィックシステム
 本開示は、スパイキングニューラルネットワークを実行するための装置及び方法、並びに、スパイキングニューロモーフィックシステムに関する。
 ニューロモーフィックシステムはニューラルネットワークをハードウェアで実現したシステムである。ニューロモーフィックシステムはニューロモルフィックシステムと称される場合もある。ニューロモーフィックシステムのうち特に、人工ニューラルネットワーク(Artificial Neural Network:ANN)よりも厳密に生物のニューロンをモデル化したシステムが注目されている。このシステムはスパイキングニューラルネットワーク(Spiking Neural Network:SNN)と称されている。
特開2021-013048号公報
黒江 康明, スパイキングニューラルネットワーク - 学習法を中心として, システム/制御/情報, Vol. 48, No. 2, pp. 57-62, 2004 岡崎 篤也, ニューロモーフィックコンピューティングを支えるハードウェア技術の現状と研究動向, 日本ロボット学会誌 Vo. 35, No. 3, pp. 209-214, pp. 209-214, 2017 澤田 篤志, 押尾 怜穏, 野村 武司, 張 任遠, 木村 睦, 中島 康彦, メムキャパシタを用いたスパイキングニューラルネットワークの開発, 電子情報通信学会, CPSY2021-11, pp. 59-63, 2021年7月 D. Auge, J. H. Hille, E. Mueller, and A. Knoll, A Survey of Encoding Techniques for Signal Processing in Spiking Neural Networks, Neural Processing Letters, 2021 W. Guo, M. Fouda, A. M. Eltawil, and K. N. Salama, Neural Coding in Spiking Neural Networks: A Comparative Study for Robust Neuromorphic Systems, Front. Neurosci., 2021 T. Erlina, R. Zhang, and Y. Nakashima, A Feasibility Study of Multi-Domain Stochastic Computing Circuit, IEICE Trans. Electron., Vol. E104-C, No.5, pp. 153-163, 2021
 本開示の一態様は、処理速度の向上を図ることができるスパイキングニューラルネットワークを実行するための装置及び方法、並びに、スパイキングニューロモーフィックシステムを提供することを目的とする。
 上記の課題を解決するために、本開示の一態様に係る装置は、スパイキングニューラルネットワークを実行するための装置であって、前記装置に入力されるスパイクデータは、複数のスパイクから構成されており、前記装置は、可変の重みを有し、前記スパイクデータを構成する各スパイクに対して前記重みに応じて調整された膜電位変位を生成し、当該膜電位変位の積分値が閾値を超えた場合に新たなスパイクを生成する回路を備えており、前記スパイクデータは、入力データがスパイクパターンとして表現されたデータであり、前記スパイクパターンは、前記スパイクデータを構成するスパイクの数、前記スパイクデータを構成する各スパイクの幅、及び前記スパイクデータを構成する各スパイクの振幅のうちの少なくとも2つを用いて定義される。
 本開示の他の一態様に係る方法は、スパイキングニューラルネットワークを実行するための方法であって、前記方法は、入力データを、スパイキングニューラルネットワークを実行するための装置に入力されるスパイクデータに変換する方法であり、前記装置に入力されるスパイクデータは、複数のスパイクから構成されており、前記装置は、可変の重みを有し、前記スパイクデータを構成する各スパイクに対して前記重みに応じて調整された膜電位変位を生成し、当該膜電位変位の積分値が閾値を超えた場合に新たなスパイクを生成する回路を備えており、前記スパイクデータは、入力データがスパイクパターンとして表現されたデータであり、前記スパイクパターンは、前記スパイクデータを構成するスパイクの数、前記スパイクデータを構成する各スパイクの幅、及び前記スパイクデータを構成する各スパイクの振幅のうちの少なくとも2つのパラメータを用いて定義される。
 本開示の一態様によれば、処理速度の向上を図ることができる。
スパイキングニューラルネットワークのモデルを示す概念図。 膜電位Vmemが不連続的に増加又は減少する様子を説明する図。 シナプス回路及びニューロン回路の各回路構成例を示す図。 メムキャパシタの電気的特性と、当該メムキャパシタの概略構成と、を示す図。 本実施形態の実施例を説明する図。 本実施形態の実施例を説明する図。 本実施形態の実施例を説明する図。 本実施形態の実施例を説明する図。 本実施形態の実施例を説明する図。 本実施形態の実施例を説明する図。 本実施形態の実施例を説明する図。 本実施形態の実施例を説明する図。 本実施形態の実施例を説明する図。 本実施形態の実施例を説明する図。 本実施形態の実施例を説明する図。 本実施形態の実施例を説明する図。 本実施形態の実施例を説明する図。 本実施形態の実施例を説明する図。 本実施形態の実施例を説明する図。 本実施形態の実施例を説明する図。 本実施形態の実施例を説明する図。 本実施形態の実施例を説明する図。 本開示のその他の実施形態を説明する図。 本開示のその他の実施形態を説明する図。 本開示の更なるその他の実施形態を説明する図。
 <本開示に至った経緯>
 従来、人工知能は、高機能なハードウェアで複雑及び長大なソフトウェアが実行される。このため、巨大なサイズのハードウェアと膨大な消費電力が問題となった。ニューロモーフィックシステムは、脳を模倣するハードウェアであり、コンパクト化及び低消費電力化が期待できる。特に、信号伝達にスパイクを用いるスパイキングニューロモーフィックシステムは、脳と同じ原理に基づいており、未知の脳の機能を含む高性能化が期待できる。
 スパイキングニューロモーフィックシステムにおいて、伝達信号の物理的な表現方法はコーディングと称される。従来のスパイキングニューロモーフィックシステムでは、スパイク数のみを用いたコーディングが使われてきた。スパイク数に加えて、スパイク幅及びスパイク振幅を併用したコーディングを使うことができれば、同じ処理情報量に対して処理速度が向上し、その結果、処理時間の大幅な低減が期待できる。また、同じ処理時間に対して、処理情報量の大幅な増加が期待できる。
 本開示者らは、スパイク数に加えて、スパイク幅及びスパイク振幅を併用したコーディングを可能とすべく鋭意検討を行った結果、スパイク数、スパイク幅及びスパイク振幅を併用したコーディングを可能とする本開示をするに至った。
 <実施形態>
 以下、添付図面を参照しながら、本開示の実施形態に係るスパイキングニューラルネットワークを実行するための装置及び方法、並びに、スパイキングニューロモーフィックシステムについて、詳細に説明する。
 (ニューロンの発火のメカニズム)
 ここではまず、スパイキングニューラルネットワークのニューロンの発火のメカニズムについて説明しておく。図1にスパイキングニューラルネットワークのモデルを示す。なお、ニューラルネットワークは、複数のニューロンと複数のシナプスとから成る。ニューロン間はシナプスで接続されている。図1には、或る1つのニューロンn1と、ニューロンn1の前段のニューロンとの間を接続する複数のシナプスs1、s2及びs3が記載されている。図1には記載されていないが、ニューロンn1と、ニューロンn1の後段のニューロンとの間もシナプスで接続されている。
 図1のとおり、ニューロンn1に対して複数のシナプスs1、s2及びs3が接続されている。シナプスs1を介してスパイクx1及びスパイクx4がニューロンn1に入力される。図1の例では、スパイクx1の入力時刻をT1とする。スパイクx4の入力時刻をT4とする。シナプスs2を介してスパイクx3がニューロンn1に入力される。スパイクx3の入力時刻をT3とする。シナプスs3を介してスパイクx2がニューロンn1に入力される。スパイクx2の入力時刻をT2とする。
 また、シナプスs1の重みをW1とする。重みW1は正の重みである。シナプスs1は興奮性のシナプスである。シナプスs2の重みをW2とする。重みW2は負の重みである。シナプスs2は抑制性のシナプスである。シナプスs3の重みをW3とする。重みW3は正の重みである。シナプスs3は興奮性のシナプスである。各シナプスは、入力されたスパイクに重みを乗じ、重みに応じて調整された膜電位変位をニューロンに出力する。例えば、シナプスs2を例に説明すると、シナプスs2に入力されたスパイクx3と、シナプスs2の重みW2とが乗じられ、重みW2に応じて調整された膜電位変位がニューロンn1に出力される。膜電位変位については、後述する。
 ニューロンn1の状態は、膜電位と呼ばれる内部変数によって表される。ニューロンn1の膜電位をVmemとする。ニューロンn1にスパイクが入力されると、膜電位Vmemは不連続的に増加又は減少する。図2に膜電位Vmemが不連続的に増加又は減少する様子を示す。図2の例では、時刻T1においてスパイクx1がシナプスs1に入力されると、シナプスs1は興奮性のシナプスであるので膜電位Vmemは増加する。次に、時刻T2においてスパイクx2がシナプスs3に入力されると、シナプスs3は興奮性のシナプスであるので膜電位Vmemは増加する。時刻T3においてスパイクx3がシナプスs2に入力されると、シナプスs2は抑制性のシナプスであるので膜電位Vmemは減少する。次に、時刻T4においてスパイクx4がシナプスs1に入力されると、シナプスs1は興奮性のシナプスであるので膜電位Vmemは増加する。
 すなわち、ニューロンn1は、上述の各スパイクが各シナプスを介してニューロンn1に入力される度に、各スパイクに応じて膜電位Vmemを変位させる。そして、ニューロンn1は、膜電位Vmemの変位を積分する。以下、1つのスパイクがニューロンn1に入力された際における膜電位Vmemの変位を膜電位変位と称する。膜電位変位をΔVmemとする。
 ニューロンn1は閾値を保持している。閾値をVthとする。図2の例では、膜電位変位ΔVmemの積分値が閾値Vthに達すると、ニューロンn1が発火する。ニューロンn1の発火時刻をT5とする。なお、当該積分値は、上述のスパイクx1、x2、x3及びx4の全てが入力された時点、すなわち時刻T5における膜電位Vmemである。
 ニューロンn1が発火すると、図1のとおり、ニューロンn1は後段のニューロンにスパイクyを出力する。ニューロンn1の発火後、ニューロンn1の膜電位Vmemはリセットされる。
 (シナプス回路及びニューロン回路)
 次に、本実施形態に係るシナプス回路及びニューロン回路の各構成について説明する。図3に、本実施形態に係るシナプス回路301及びニューロン回路302の各回路構成例を示す。シナプス回路301は、図1に例示したシナプスs1、s2及びs3のハードウェア構成例である。また、ニューロン回路302は、図1に例示したニューロンn1のハードウェア構成例である。すなわち、シナプス回路301及びニューロン回路302は、新たなスパイクを生成する回路の一例である。複数の当該回路は、スパイキングニューラルネットワークを実行するための装置の一例である。また、複数のシナプス回路301と複数のニューロン回路302とから成るシステムは、スパイキングニューロモーフィックシステムの一例である。
 以下、まず、シナプス回路301の構成について説明し、次に、ニューロン回路302の構成について説明し、最後に、互いに接続されたシナプス回路301及びニューロン回路302の各動作について説明する。
 1.シナプス回路301の構成
 図3のとおり、シナプス回路301は、第1入力端子X1と、第2入力端子X2と、出力端子Aと、第1キャパシタc1と、第1スイッチング素子t1と、第2スイッチング素子t2と、第3スイッチング素子t3と、第4スイッチング素子t4と、第5スイッチング素子t5と、第6スイッチング素子t6と、第2キャパシタc2と、を有している。
 第1入力端子X1には第1入力信号が入力される。第2入力端子X2には第2入力信号が入力される。第1入力信号は、第1入力信号を反転させた信号である。第1入力信号と第2入力信号とは相補的である。
 出力端子Aからは出力信号が出力される。出力端子Aと接地電位との間には、第3キャパシタCMが接続されている。
 第1キャパシタc1は、可変の電気的特性を有するメムキャパシタである。図4に、メムキャパシタの電気的特性と、当該メムキャパシタの概略構成と、を示す。メムキャパシタは、図4の符号401で示す電気的特性を備える。メムキャパシタは、図4の符号402で示す概略構成を備える。
 メムキャパシタは、図4の符号401で示すヒステリシス特性のとおり、コンデンサに電荷を貯めるだけでなく、コンデンサの容量値が印加電圧の履歴に応じて変化する電気的特性を持った受動素子である。メムキャパシタは記憶素子である。メムキャパシタは、記憶素子としてアナログデータを保持する。メムキャパシタは不揮発性メモリとしての活用が可能である。
 メムキャパシタは、図4の符号402で示す概略構成のとおり、基台41上に配置されたPt層42と、Pt層42上に配置されたチタン酸ビスマスランタン(BLT)層43と、BLT層43上に配置されたAu層44とを備える。Pt層42は負極である。Au層44は正極である。Pt層42とAu層44との間に電圧Vが印加されることによって、BLT層43に電荷Qが蓄積される。この電圧Vの印加によって、Pt層42とBLT層43とAu層44とからなるコンデンサの容量値が変化する。なお、メムキャパシタは公知の素子であるので詳細は割愛する。
 第2キャパシタc2は固定の容量値を有する。
 第1スイッチング素子t1は、p型MOSFETである。第1スイッチング素子t1は、ゲート-ソース間電圧が閾値電圧以下の場合にオンとなる。ゲートが第2入力端子X2に接続され、ソースが第1入力端子X1に接続される。
 第2スイッチング素子t2は、p型MOSFETである。第2スイッチング素子t2は、ゲート-ソース間電圧が閾値電圧以下の場合にオンとなる。ゲートが第1入力端子X1に接続され、ドレインが第2入力端子X2に接続される。
 第3スイッチング素子t3は、n型MOSFETである。第3スイッチング素子t3は、ゲート-ソース間電圧が閾値電圧以上の場合にオンとなる。ゲートが第2キャパシタc2を介して第2入力端子X2に接続され、ソースが第2スイッチング素子t2のソースに接続され、ドレインが第1キャパシタc1を介して第1入力端子X1に接続される。
 第4スイッチング素子t4は、n型MOSFETである。第4スイッチング素子t4は、ゲート-ソース間電圧が閾値電圧以上の場合にオンとなる。ゲートが第1キャパシタc1を介して第1入力端子X1に接続され、ソースが第2キャパシタc2を介して第2入力端子X2に接続され、ドレインが第1スイッチング素子t1のドレインに接続される。
 第5スイッチング素子t5は、p型MOSFETである。第5スイッチング素子t5は、ゲート-ソース間電圧が閾値電圧以下の場合にオンとなる。ゲートが第2キャパシタc2を介して第2入力端子X2に接続され、ソースが第1キャパシタc1を介して第1入力端子X1に接続され、ドレインが出力端子Aに接続される。
 第6スイッチング素子t6は、p型MOSFETである。第6スイッチング素子t6は、ゲート-ソース間電圧が閾値電圧以下の場合にオンとなる。ゲートが第1キャパシタc1を介して第1入力端子X1に接続され、ソースが出力端子Aに接続され、ドレインが第2キャパシタc2を介して第2入力端子X2に接続される。
 ここで、図1に例示した重みW1、W2及びW3の絶対値は、メムキャパシタの上述した可変の容量値を用いて表現される。
 また、図3に示したシナプス回路301は、興奮性のシナプスを表現している。つまり、図3に示したシナプス回路301では、第1キャパシタc1の容量値を用いて表現される重みの符号は正となる。なお、抑制性のシナプスを表現する場合には、図3に示したシナプス回路301において、第1スイッチング素子t1をn型MOSFETに置き換え、第2スイッチング素子t2をn型MOSFETに置き換え、第3スイッチング素子t3をp型MOSFETに置き換え、第4スイッチング素子t4をp型MOSFETに置き換え、第5スイッチング素子t5をn型MOSFETに置き換え、第6スイッチング素子t6をn型MOSFETに置き換えれば良い。この置き換えた構成では、第1キャパシタc1の容量値を用いて表現される重みの符号は負となる。
 2.ニューロン回路302の構成
 図3のとおり、ニューロン回路302は、第3キャパシタCMと、第7スイッチング素子t11と、第1インバータ素子IN1と、第2インバータ素子IN2と、第3インバータ素子IN3と、第4インバータ素子IN4と、第4キャパシタc11と、第5キャパシタc12と、第6キャパシタc13と、出力端子Yと、を有している。
 第3キャパシタCMは固定の容量値を有する。第3キャパシタCMは、上述のとおり、シナプス回路301の出力端子Aと接地電位との間に接続されている。なお、シナプス回路301の出力端子Aは、ニューロン回路302からすると、ニューロン回路302の入力端子といえる。ここで、図1に例示した膜電位Vmemは、第3キャパシタCMの電位を用いて表現される。
 第7スイッチング素子t11は、n型MOSFETである。第7スイッチング素子t11は、ゲート-ソース間電圧が閾値電圧以上の場合にオンとなる。ゲートが出力端子Yに接続され、ソースが接地電位に接続され、ドレインが第3キャパシタCMを介して接地電位に接続される。
 第1インバータ素子IN1は、入力側から入力信号が入力され、出力側から出力信号を出力する。出力信号は入力信号の反転信号である。入力側が第3キャパシタCMに接続され、出力側が第4キャパシタc11を介して接地電位に接続される。
 第2インバータ素子IN2は、入力側から入力信号が入力され、出力側から出力信号を出力する。出力信号は入力信号の反転信号である。入力側が第4キャパシタc11に接続され、出力側が第5キャパシタc12を介して接地電位に接続される。
 第3インバータ素子IN3は、入力側から入力信号が入力され、出力側から出力信号を出力する。出力信号は入力信号の反転信号である。入力側が第5キャパシタc12に接続され、出力側が第6キャパシタc13を介して接地電位に接続される。
 第4インバータ素子IN4は、入力側から入力信号が入力され、出力側から出力信号を出力する。出力信号は入力信号の反転信号である。入力側が第6キャパシタc13に接続され、出力側が出力端子Yに接続される。
 第4キャパシタc11は、固定の容量値を有する。第4キャパシタc11は、接地電位と第2インバータ素子IN2の入力側との間に接続される。
 第5キャパシタc12は、固定の容量値を有する。第5キャパシタc12は、接地電位と第3インバータ素子IN3の入力側との間に接続される。
 第6キャパシタc13は、固定の容量値を有する。第6キャパシタc13は、接地電位と第4インバータ素子IN4の入力側との間に接続される。
 3.シナプス回路301の動作
 第1入力端子X1にはスパイクが入力される。第1入力端子X1に入力されるスパイクは、図1に例示したスパイクx1、x2、x3及びx4に対応する。第2入力端子X2には、第1入力端子X1に入力されるスパイクを反転させたスパイクが入力される。第1入力端子X1に入力されるスパイクと第2入力端子X2に入力されるスパイクとは相補的である。以下、第2入力端子X2に入力されるスパイクを反転スパイクと称する。
 第1入力端子X1に入力されるスパイクは電圧スパイクである。また、第1入力端子X1に入力される電圧スパイクは正の電圧である。また、第1入力端子X1に入力される正の電圧は第3スイッチング素子t3及び第4スイッチング素子t4の各閾値電圧以上の電圧である。以下、第1入力端子X1に入力されるスパイクを第1スパイクと称する。
 第2入力端子X2に入力される反転スパイクは電圧スパイクである。第2入力端子X2に入力される電圧スパイクは負の電圧である。また、第2入力端子X2に入力される負の電圧は第1スイッチング素子t1、第2スイッチング素子t2、第5スイッチング素子t5及び第6スイッチング素子t6の各閾値電圧以下の電圧である。以下、第2入力端子X2に入力される反転スパイクを第2スパイクと称する。
 なお、上述のとおり、第1スパイクと第2スパイクとは相補的である。したがって、第1スパイクの立ち上がりのタイミングと第2スパイクの立ち下がりのタイミングとは一致する。また、第1スパイクの立ち下がりのタイミングと第2スパイクの立ち上がりのタイミングとは一致する。
 また、図示はしないが、シナプス回路301の第1入力端子X1には第1スパイクを生成する第1スパイク生成装置が接続されている。シナプス回路301の第2入力端子X2には第2スパイクを生成する第2スパイク生成装置が接続されている。
 第1スパイク生成装置は、画像等の入力データを複数のスパイクから成るスパイクデータに変換する。すなわち、第1スパイク生成装置は、画像等の入力データをスパイクデータに二進数として符号化する装置である。第1スパイク生成装置は、変換後のスパイクデータを構成する各スパイクを第1入力端子X1に出力する。各スパイクが第1スパイクに相当する。
 第2スパイク生成装置は、画像等の入力データを複数のスパイクから成るスパイクデータに変換する。すなわち、第2スパイク生成装置は、画像等の入力データをスパイクデータに二進数として符号化する装置である。第2スパイク生成装置は、変換後のスパイクデータを構成する各スパイクを第2入力端子X2に出力する。各スパイクが第2スパイクに相当する。
 第1スパイク生成装置と第2スパイク生成装置とは、同一の入力データに対し、上述の符号化を行う。
 また、第1スパイク生成装置によって符号化されたスパイクデータは、スパイクパターンとして表現される。スパイクパターンは、スパイクデータを構成するスパイクの数、スパイクデータを構成する各スパイクの幅、及びスパイクデータを構成する各スパイクの振幅のうちの少なくとも2つを用いて定義される。第2スパイク生成装置によって符号化されたスパイクデータについても同様である。
 なお、第1スパイク生成装置及び第2スパイク生成装置の各構成及び符号化処理の詳細については説明を省略する。
 シナプス回路301は、第1入力端子X1に第1スパイクが入力され、第2入力端子X2に第2スパイクが入力されると、次のとおり動作する。
 1)第1スパイクが立ち上がり、第2スパイクが立ち下がると、第1入力端子X1には正の電圧が印加される一方、第2入力端子X2には負の電圧が印加される。これにより、第1スイッチング素子t1はオンとなり、第2スイッチング素子t2はオフとなり、第3スイッチング素子t3はオフとなり、第4スイッチング素子t4はオンとなり、第5スイッチング素子t5はオンとなり、第6スイッチング素子t6はオフとなる。
 この場合、第2キャパシタc2には、第1入力端子X1に入力された正の電圧と第2入力端子X2に入力された負の電圧との電位差が印加される。この電位差の印加により、第2キャパシタc2は充電される。また、第1キャパシタc1の放電により、第3キャパシタCMは充電される。第1キャパシタc1は、可変の容量、すなわち重みに応じた電荷量を蓄積しているので、第3キャパシタCMの膜電位変位ΔVmemは、第1キャパシタc1の重みに応じて調整された変位となる。
 2)第1スパイクが立ち下がり、第2スパイクが立ち上がると、第1入力端子X1には負の電圧が印加される一方、第2入力端子X2には正の電圧が印加される。これにより、第1スイッチング素子t1はオフとなり、第2スイッチング素子t2はオンとなり、第3スイッチング素子t3はオンとなり、第4スイッチング素子t4はオフとなり、第5スイッチング素子t5はオフとなり、第6スイッチング素子t6はオンとなる。
 この場合、第1キャパシタc1には、第1入力端子X1に入力された負の電圧と第2入力端子X2に入力された正の電圧との電位差が印加される。この電位差の印加により、第1キャパシタc1は充電される。また、第2キャパシタc2の放電により、第3キャパシタCMは充電される。第2キャパシタc2は、固定の容量に応じた電荷量を蓄積しているので、第3キャパシタCMの膜電位変位ΔVmemは、第2キャパシタc2の固定の容量に応じた変位となる。
 このようにして、シナプス回路301は、第1スイッチング素子t1~第6スイッチング素子t6をオンオフ制御し、第1キャパシタc1及び第2キャパシタc2の各々への充放電により電荷を第3キャパシタCMへ遷移させる。この電荷の遷移により、第3キャパシタCMの電位、すなわち、膜電位Vmemは増加する。このことから、シナプス回路301は、膜電位Vmemの上昇を生成するチャージポンプ回路を構成するといえる。
 また、第1入力端子X1に第1スパイクが入力され、第2入力端子X2に第2スパイクが入力される度に、膜電位Vmemは増加する。それゆえ、第1入力端子X1に複数の第1スパイクが入力され、第2入力端子X2に複数の第2スパイクが入力される場合には、膜電位Vmemは、各スパイクの入力のタイミングで増加する、すなわち、不連続的に増加する。なお、上述のとおり、シナプス回路301は興奮性のシナプスを表現している。抑制性のシナプスを表現した回路構成であれば、第3キャパシタCMの電位、すなわち、膜電位Vmemは、各スパイクの入力のタイミングで減少する、すなわち、不連続的に減少する。
 4.ニューロン回路302の動作
 第3キャパシタCMの膜電位Vmemが増加する度に、膜電位変位ΔVmemは積分される。当該積分値は、膜電位Vmemが増加した時点における膜電位Vmemとなる。
 図1に例示した閾値Vthは、第1インバータ素子IN1の閾値を用いて表現される。第3キャパシタの膜電位Vmemが第1インバータ素子IN1の閾値を超えると、第1インバータ素子IN1、第2インバータ素子IN2、第3インバータ素子IN3、及び第4インバータ素子IN4を、この順で信号が伝達されることになる。第4インバータ素子IN4から出力端子Yに出力される信号が新たなスパイクとなる。
 また、出力端子Yに出力される新たなスパイクは、第7スイッチング素子t11のゲートにも入力される。第7スイッチング素子t11は、ゲートにスパイクが入力されるとオンとなり、第3キャパシタCMを放電する。第3キャパシタCMの放電により、第3キャパシタCMはリセットされる。
 <本実施形態の効果>
 以下、本実施形態の効果について、実施例を用いて説明する。
 (実施例1)
 図5のとおり、ニューロン回路n11と第1シナプス回路s11と第2シナプス回路s12を組み合わせて簡単なネットワークを構築し、回路シミュレーションを行った。
 第1シナプス回路s11に正の重み付けを行った。第1シナプス回路s11は、ニューロン回路n11の膜電位Vmemを増加させるための興奮性のシナプスの働きをする。第2シナプス回路s12に負の重み付けを行った。第2シナプス回路s12は、ニューロン回路n11の膜電位Vmemを減少させるための抑制性シナプスの働きをする。
 また、第1シナプス回路s11の正の重みの絶対値は、第2シナプス回路s12の負の重みの絶対値よりも大きいとする。
 図6に回路シミュレーション結果を示す。符号601で第1シナプス回路s11の入力端子x11に入力されたスパイクデータの電圧波形を示す。符号602で第2シナプス回路s12の入力端子x12に入力されたスパイクデータの電圧波形を示す。符号603でニューロン回路n11の膜電位を示す。符号694でニューロン回路n11の出力端子y11から出力されるスパイクデータの電圧波形を示す。
 図6のとおり、第1シナプス回路s11の入力端子x11にスパイクが入力される度にニューロン回路n11の膜電位が増加している。逆に第2シナプス回路s12の入力端子x12にスパイクが入力される度にニューロン回路n11の膜電位が減少している。
 第2シナプス回路s12の負の重みの絶対値よりも第1シナプス回路s11の正の重みの絶対値が大きいので、ニューロン回路n11の膜電位は増加し続け、最終的にはニューロン回路n11の閾値電圧に達する。ニューロン回路n11はスパイクを生成する。スパイクの生成後、ニューロン回路n11の膜電位は初期電位の0Vにリセットされている。
 ここで、実施例1では、スパイクデータは、スパイクデータを構成するスパイクの数を用いて定義されている。一方、後述する実施例2~5では、図7のとおり、スパイクデータは、スパイクデータを構成するスパイクの数SNに加えて、スパイクデータを構成する各スパイクの幅SW及びスパイクデータを構成する各スパイクの振幅SAも用いて定義されている。
 本開示者らは、回路シミュレーションを行い、図8のとおり、スパイク幅SWと膜電位上昇との間には正の相関があることを確認した。また、本開示者らは、回路シミュレーションを行い、図9のとおり、スパイク振幅SAと膜電位上昇との間にも正の相関があることを確認した。
 (実施例2)
 実施例2では、伝達信号の上位ビットを広いスパイク幅に、下位ビットを狭いスパイク幅に割り振る符号化を行う。図10によれば、膜電位上昇が1:2になっているので、2ビットの伝達信号の上位ビットを200nsのスパイク幅に、下位ビットを10nsのスパイク幅に割り振ればよい。より具体的には、図11のとおり、2ビットの伝達信号00~11は、200nsと10nsのスパイク幅の組み合わせで符号化される。
 図12に、従来の符号化による回路シミュレーション結果を示す。符号1201で第1シナプス回路s11の入力端子x11に入力されたスパイクデータの電圧波形を示す。符号1202でニューロン回路n11の膜電位を示す。符号1203でニューロン回路n11の出力端子y11から出力されるスパイクデータの電圧波形を示す。
 図13に、実施例2の回路シミュレーション結果を示す。符号1301で第1シナプス回路s11の入力端子x11に入力されたスパイクデータの電圧波形を示す。符号1302でニューロン回路n11の膜電位を示す。符号1303でニューロン回路n11の出力端子y11から出力されるスパイクデータの電圧波形を示す。
 例えば、2ビットの伝達信号11を表す場合、従来のスパイク数のみの符号化では、3個の10nsのスパイク幅のスパイクから構成されるスパイクデータで表される。一方、実施例2では、1個の200nsのスパイク幅のスパイクと1個の10nsのスパイク幅のスパイクとから構成されるスパイクデータで表される。回路シミュレーション結果によれば、従来の符号化であれば、ひとつの出力スパイクを生成するまでに、平均的に7.3個のスパイク数が必要であったことに対し、実施例2では、5.1個のスパイク数で十分であった。このことから処理時間が低減されていることがわかる。理論的には2/3=0.67になるはずであり、5.1/7.3=0.69で大凡正しい結果が得られている。
 なお、処理時間の低減効果は、伝達信号のビット数が増加するにつれて、より顕著となる。例えば、8ビットの伝達信号11111111を表す場合、従来の符号化では、255個の同じスパイク幅のスパイクから構成されるスパイクデータで表される。一方、実施例2では、異なる8種のスパイク幅のスパイクから構成されるスパイクデータで表される。処理時間は8/255に低減される。
 (実施例3)
 実施例3では、伝達信号の上位ビットを大きいスパイク振幅に、下位ビットを小さいスパイク振幅に割り振る符号化を行う。図14によれば、膜電位上昇が1:2:4になっているので、3ビットの伝達信号の上位ビットを0.8Vのスパイク振幅に、中位ビットを0.42Vのスパイク振幅に、下位ビットを0.4Vのスパイク振幅に割り振ればよい。より具体的には、図15のとおり、3ビットの伝達信号000~111は、0.8Vと0.42Vと0.4Vのスパイク幅の組み合わせで符号化される。
 図16に、従来の符号化による回路シミュレーション結果を示す。符号1601で第1シナプス回路s11の入力端子x11に入力されたスパイクデータの電圧波形を示す。符号1602でニューロン回路n11の膜電位を示す。符号1603でニューロン回路n11の出力端子y11から出力されるスパイクデータの電圧波形を示す。
 図17に、実施例3の回路シミュレーション結果を示す。符号1701で第1シナプス回路s11の入力端子x11に入力されたスパイクデータの電圧波形を示す。符号1702でニューロン回路n11の膜電位を示す。符号1703でニューロン回路n11の出力端子y11から出力されるスパイクデータの電圧波形を示す。
 例えば、3ビットの伝達信号111を表す場合、従来のスパイク数のみの符号化では、7個の0.4Vのスパイク振幅のスパイクから構成されるスパイクデータで表される。一方、実施例3では、1個の0.8Vのスパイク振幅と1個の0.42Vのスパイク振幅と1個の0.4Vのスパイク振幅のスパイクとから構成されるスパイクデータで表される。回路シミュレーション結果によれば、従来のコーディングでは、1つの出力スパイクを生成するまでに、平均的に10個のスパイク数が必要であったことに対し、実施例3の符号化では、5.4個のスパイク数で十分であった。このことから処理時間が低減されていることがわかる。理論的には3/7=0.43になるはずで、5.4/10=0.54で大凡正しい結果が得られている。
 なお、処理時間の低減効果は、伝達信号のビット数が増加するにつれて、より顕著となることは、実施例2と同じである。
 (実施例4)
 実施例4が実施例3と異なる点は、膜電位上昇が1:4である点である。図18によれば、膜電位上昇が1:4になっているので、3ビットの伝達信号の上位ビットを0.8Vのスパイク振幅に、中位ビット及び下位ビットを0.4Vのスパイク振幅に割り振ればよい。より具体的には、図19のとおり、3ビットの伝達信号000~111は、0.8Vと0.4Vのスパイク幅の組み合わせで符号化される。
 図20に、実施例4の回路シミュレーション結果を示す。符号2001で第1シナプス回路s11の入力端子x11に入力されたスパイクデータの電圧波形を示す。符号2002でニューロン回路n11の膜電位を示す。符号2003でニューロン回路n11の出力端子y11から出力されるスパイクデータの電圧波形を示す。
 例えば、3ビットの伝達信号111を表す場合、従来のスパイク数のみの符号化では、7個の0.4Vのスパイク振幅のスパイクから構成されるスパイクデータで表される。一方、実施例4では、1個の0.8Vのスパイク振幅と3個の0.4Vのスパイク振幅のスパイクとから構成されるスパイクデータで表される。回路シミュレーション結果によれば、従来の符号化では、1つの出力スパイクを生成するまでに、実施例3で述べたとおり、平均的に10個のスパイク数が必要であったことに対し、実施例4では、6.8個のスパイク数で十分であった。このことから処理時間が低減されていることがわかる。理論的には4/7=0.57になるはずで、6.8/10=0.68で大凡正しい結果が得られている。
 (実施例5)
 実施例5は、伝達信号のそれぞれのビットを異なるスパイク幅とスパイク振幅との組み合わせに割り振る符号化を行う。
 伝達信号のそれぞれのビットを異なるスパイク幅とスパイク振幅の組み合わせに割り振る方法は、状況により選べばよい。一般に、異なるスパイク幅やスパイク振幅の生成回路はある程度の回路面積となるため、回路面積を小さくしたい用途では、スパイク幅やスパイク振幅の種類は少なめにして、いくつかのビットをまとめて、ひとつのスパイク幅やスパイク振幅に割り振ることが好ましい。
 一方、回路面積を大きくしても処理速度を向上させたい用途では、スパイク幅やスパイク振幅の種類を多くして、伝達信号のすべてのビットを別々に、異なるスパイク幅とスパイク振幅の組み合わせに割り振ることが好ましい。
 例えば、図21に、膜電位上昇幅が約8:4:2:1となるスパイク幅とスパイク振幅との組み合わせを示す。図22に、実施例5の回路シミュレーション結果を示す。符号2201で第1シナプス回路s11の入力端子x11に入力されたスパイクデータの電圧波形を示す。符号2202でニューロン回路n11の膜電位を示す。
 <その他の実施形態>
 上述の実施形態では、スパイクデータは二進数として符号化されていたが、本開示はこれに限るものではない。本開示は、図23のとおり、符号2301で示す、二進数として符号化されたスパイクデータを符号2302で示す4つの膜電位上昇幅のスパイクの組み合わせから構成されるスパイクデータで表わすことができる。すなわち、伝達信号の異なる強度を異なるスパイク幅及びスパイク振幅に割り振ることができる。
 より詳細には、スパイクパターンを定義する少なくとも2つのパラメータの1つがスパイクデータを構成する各スパイクの幅である場合であれば、スパイクデータを、スパイク数とスパイク強度の平均値との積として符号化し、スパイク強度の小さいものから大きいものに向かうにつれて各スパイクの幅を広くすれば良い。
 また、スパイクパターンを定義する少なくとも2つのパラメータの1つがスパイクデータを構成する各スパイクの振幅である場合であれば、スパイクデータを、スパイク数とスパイク強度の平均値との積として符号化し、スパイク強度の小さいものから大きいものに向かうにつれて各スパイクの振幅を大きくすれば良い。
 ここで、スパイク強度は、スパイク振幅SA及びスパイク幅SWの両方に対して単調増加する関数f(SA,SW)で表現される。スパイク強度の組を適切に設定することにより、1つの重みに対する膜電位変位の比を1:2:3:4に設定したり、1:2:4:8に設定したりすることができる。
 また、スパイク強度の平均値は、各スパイクのスパイク強度の総和の平均をとった値である。より具体的には、各スパイクのスパイク強度の総和をスパイク数で除算したものである。したがって、スパイク数とスパイク強度の平均値との積とは、スパイク強度の総和であるといえる。図23のとおり、符号2301で示すスパイクデータと符号2302で示すスパイクデータとの間において、各スパイクの下に記載の数字、すなわち、スパイク強度の総和はいずれも10である。すなわち、各総和は等しくなっている。
 また、本開示は、すべてのニューラルネットワーク及びニューロモーフィックシステムに利用できる。例えば、図24のような、複数層の畳み込み層と数層の最終層の全結合層を組み合わせたニューラルネットワークにおいて、本開示は全結合層において利用可能である。
 <更なるその他の実施形態>
 図25は、本開示の更なるその他の実施形態に係るシナプス回路及びニューロン回路を実現する回路構成を示す図である。図25のとおり、本実施形態に係る回路2500は、マトリックスアレイMXと、マルチプレクサ群MPと、第1選択トランジスタ群PTと、第2選択トランジスタ群NTと、第1選択回路2501と、第2選択回路2502と、第3選択回路2503と、電圧供給回路2504と、制御回路2505と、を備えている。
 (装置構成)
 マトリックスアレイMXは、4本のビット線B1~B4の各々と、4本のワード線W1~W4の各々との交差位置にマトリックス状に配置された16個のメムキャパシタCM11~CM44を有している。以下では、4本のビット線B1~B4を総称する際には「ビット線BG」と称する。また、4本のワード線W1~W4を総称する際には「ワード線WG」と称する。また、16個のメムキャパシタCM11~CM44を総称する際には「メムキャパシタCMG」と称する。なお、本実施形態では、ビット線BGの本数を4本、ワード線WGの本数を4本、メムキャパシタCMGの個数を16個としたが、本実施形態はこれらの数に限られるものではない。
 メムキャパシタCMGは、図4の符号401で示した電気的特性及び、図4の符号402で示した概略構成を備えるメムキャパシタである。図4については既に説明済みであるため、ここでは繰り返し説明を行わない。
 メムキャパシタCMGは2つの端子を有している。その一方の端子はビット線BGに接続されている。その他方の端子はワード線WGに接続されている。例えばメムキャパシタCM11について述べれば、メムキャパシタCM11の一方の端子はビット線B1に接続され、他方の端子はワード線W1に接続されている。
 マルチプレクサ群MPは、4個のマルチプレクサM1~M4を有している。以下では、4個のマルチプレクサM1~M4を総称する際には「マルチプレクサMG」と称する。なお、本実施形態では、マルチプレクサMGの個数を4個としたが、本実施形態はこの数に限られるものではない。
 マルチプレクサMGは、4個の入力端子と、1個の出力端子と、1個の制御端子と、有している。マルチプレクサMGは、1個の制御端子から入力される制御信号に基づき、4個の入力端子の各々から入力される4つの電圧のうちのいずれか1つの電圧を選択する。この場合、マルチプレクサMGは、当該選択された電圧を出力端子から出力する。また、マルチプレクサMGは、1個の制御端子から入力される制御信号に基づき、上述の4つの電圧のいずれも出力しないことを選択する。この場合、マルチプレクサMGの出力端子は、4個の入力端子のいずれからも切断される。
 第1選択トランジスタ群PTは、4個のp型MOSFETP1~P4を有している。以下では、4個のp型MOSFETP1~P4を総称する際には「p型MOSFETPG」と称する。なお、本実施形態では、p型MOSFETPGの個数を4個としたが、本実施形態はこの数に限られるものではない。
 p型MOSFETPGのソース端子は電源電位Vddに接続され、ドレイン端子はビット線BGに接続されている。例えばp型MOSFETP1について述べれば、p型MOSFETP1のソース端子は電源電位Vddに接続され、ドレイン端子はビット線B1に接続されている。
 第2選択トランジスタ群NTは、4個のn型MOSFETN1~N4を有している。以下では、4個のn型MOSFETN1~N4を総称する際には「n型MOSFETNG」と称する。なお、本実施形態では、n型MOSFETNGの個数を4個としたが、本実施形態はこの数に限られるものではない。
 n型MOSFETNGのソース端子は接地電位GNDに接続され、ドレイン端子はビット線BGに接続されている。例えばn型MOSFETN1について述べれば、n型MOSFETN1のソース端子は接地電位GNDに接続され、ドレイン端子はビット線B1に接続されている。
 第1選択回路2501は制御信号SPを出力する。当該制御信号SPは、第1選択トランジスタ群PTのp型MOSFETPGのゲート端子に入力される。制御信号SPのレベルがロウレベルであるとき、p型MOSFETPGはオンとなる。p型MOSFETPGがオンすると、p型MOSFETPGを介して、ビット線BGは電源電位Vddと接続される。
 第2選択回路2502は制御信号SNを出力する。当該制御信号SNは、第2選択トランジスタ群NTのn型MOSFETNGのゲート端子に入力される。制御信号SNのレベルがハイレベルであるとき、n型MOSFETNGはオンとなる。n型MOSFETNGがオンすると、n型MOSFETNGを介して、ビット線BGは接地電位GNDと接続される。
 第3選択回路2503は制御信号SM1~SM4を出力する。以下では、4つの制御信号SM1~SM4を総称する際には「制御信号SMG」と称する。なお、本実施形態では、制御信号SMGの個数を4つとしたが、本実施形態はこの数に限られるものではない。制御信号SMGは、マルチプレクサ群MPのマルチプレクサMGの制御端子に入力される。なお、本実施形態では、マルチプレクサMGが4つの電圧のうちのいずれか1つの電圧を選択する、又は、いずれも出力しないことを選択するので、制御信号SMGのビット数は少なくとも3ビット必要である。ただし、本実施形態はこれに限られるものではない。
 電圧供給回路2504は電圧VL1~VL4を供給する。以下では、4つの電圧VL1~VL4を総称する際には「電圧VLG」と称する。なお、本実施形態では、電圧VLGの個数を4つとしたが、本実施形態はこの数に限られるものではない。電圧VLGは、マルチプレクサ群MPのマルチプレクサMGの4つの入力端子に入力される。
 なお、電圧供給回路2504は、内部で電圧VLGを生成しても良いし、外部から電圧VLGを供給されても良い。
 制御回路2505は、第1選択回路2501、第2選択回路2502、第3選択回路2503及び電圧供給回路2504を統括的に制御する。
 (装置動作)
 次に、回路2500の動作を説明する。
 制御回路2505からの指示に基づき、電圧供給回路2504は電圧VLGをマルチプレクサ群MPのマルチプレクサMGに供給する。マルチプレクサMGの4つ入力端子には、電圧VL1~VL4がそれぞれに入力される。ここで、本実施形態では、電圧VL1は接地電位GNDの電圧であり、電圧VL2は電源電位Vddの1/4の電圧であり、電圧VL3は電源電位Vddの2/4、すなわち、1/2の電圧であり、電圧VL4は電源電位Vddの3/4の電圧である。電圧VL1~VL4はそれぞれ、回路2500に入力される4つのスパイクのスパイク振幅に対応する。
 なお、本実施形態では、電圧VL1~VL4の各々の電圧を上述のとおり規定されているが、本実施形態は上述に限られるものではない。
 制御回路2505からの指示に基づき、第3選択回路2503は制御信号SMGをマルチプレクサ群MPのマルチプレクサMGに出力する。制御信号SM1~SM4はそれぞれ、マルチプレクサM1~M4の各制御端子に入力される。
 マルチプレクサMGは、制御信号SMGに基づき、電圧VL1~VL4のうちのいずれか1つを選択し、当該選択した電圧を出力端子から出力する。マルチプレクサMGの出力端子はワード線WGに接続されているので、マルチプレクサMGの出力端子から出力される電圧はワード線WGに印加されることになる。
 制御回路2505からの指示に基づき、第1選択回路2501は制御信号SPのレベルをロウレベルにする。制御信号SPのレベルがロウレベルになると、第1選択トランジスタ群PTのp型MOSFETPGはオンする。p型MOSFETPGがオンすると、電源電位Vddの電圧は、p型MOSFETPGを介して、ビット線BGに印加されることになる。
 このようにして、電圧VLGがワード線WGに印加されると共に、電源電位Vddがビット線BGに印加されると、メムキャパシタCMGの両端間にはワード線WGに印加された電圧VLGとビット線BGに印加された電源電位Vddの電圧との電位差が印加されることになる。当該電位差の印加によりメムキャパシタCMGは充電される。
 ここで、メムキャパシタCMGの充電動作について、より具体的に説明する。なお、以下では、メムキャパシタCM22を例として説明する。
 マルチプレクサM2の出力端子から電圧VL1が出力された場合、ワード線W2には電圧VL1が印加される。一方、ビット線B2には電源電位Vddの電圧が印加されるので、メムキャパシタCM22の両端間には次の電位差(以下「第1電位差」と称する。)が印加されることになる。
・(電源電位Vddの電圧)-(電圧VL1)=(電源電位Vddの電圧)
 同様に、マルチプレクサM2の出力端子から電圧VL2が出力された場合、メムキャパシタCM22の両端間には次の電位差(以下「第2電位差」と称する。)が印加されることになる。
・(電源電位Vddの電圧)-(電圧VL2)=(電源電位Vddの3/4の電圧)
 同様に、マルチプレクサM2の出力端子から電圧VL3が出力された場合、メムキャパシタCM22の両端間には次の電位差(以下「第3電位差」と称する。)が印加されることになる。
・(電源電位Vddの電圧)-(電圧VL3)=(電源電位Vddの1/2の電圧)
 同様に、マルチプレクサM2の出力端子から電圧VL4が出力された場合、メムキャパシタCM22の両端間には次の電位差(以下「第4電位差」と称する。)が印加されることになる。
・(電源電位Vddの電圧)-(電圧VL4)=(電源電位Vddの1/4の電圧)
 メムキャパシタCM22には、両端間に印加される第1~第4電位差の各々に応じた電荷量が蓄積される。
 一方、マルチプレクサM2の出力端子から電圧VL1~4のいずれも出力されなかった場合、メムキャパシタCM22の両端間には電位差が印加されないので、メムキャパシタCM22に電荷は蓄積されない。
 再び、回路2500の動作説明に戻る。制御回路2505からの指示に基づき、第1選択回路2501は制御信号SPのレベルをハイレベルにする。また、第3選択回路2503は制御信号SMGの出力を停止する。また、電圧供給回路2504は電圧VL1~VL4の供給を停止する。また、第2選択回路2502は制御信号SNのレベルをハイレベルにする。
 制御信号SNのレベルがハイレベルになると、第2選択トランジスタ群NTのn型MOSFETNGはオンする。n型MOSFETNGがオンすると、接地電位GNDの電圧は、n型MOSFETNGを介して、ビット線BGに印加されることになる。
 このようにして、接地電位GNDがビット線BGに印加されると、メムキャパシタCMGに蓄積された電荷は、ビット線BG及びn型MOSFETNGを介して、接地電位GNDに向かって放電される。
 ここで、メムキャパシタCMGの放電動作について、より具体的に説明する。なお、以下では、ビット線B2に接続されたメムキャパシタCM21~CM24を例として説明する。
 メムキャパシタCM21~CM24の各々の両端間には上述の第1~第4電位差のいずれかが印加される。このため、メムキャパシタCM21~CM24の各々には、両端間に印加された電位差に応じた電荷量が蓄積されている。
 n型MOSFETN2がオンすると、ビット線B2に接地電位GNDの電圧が印加されるので、メムキャパシタCM21~CM24の各々に蓄積された電荷が接地電位GNDに流れ込む。
 再び、回路2500の動作説明に戻る。図25のとおり、ビット線B1~B4の各々にはインバータ素子I1~I4の各入力端子が接続されている。インバータ素子I1~I4の各出力端子から出力信号O1~O4が出力される。以下では、4個のインバータ素子I1~I4を総称する際には「インバータ素子IG」と称する。また、4つの出力信号O1~O4を総称する際には「出力信号OX」と称する。なお、本実施形態では、インバータ素子IGの個数を4個としたが、本実施形態はこの数に限られるものではない。
 メムキャパシタCMGに蓄積された電荷が接地電位GNDに向かって放電される際、ビット線BGに接続されたインバータ素子IGの入力端子には、蓄積されている電荷量に応じた電位差が入力される。なお、メムキャパシタCMGに蓄積されている電荷は、当該電荷の放電に伴い、徐々に減少する。また、当該電位差は、メムキャパシタCMGに蓄積された電荷が減少するにつれて減少する。インバータ素子IGは、入力端子に入力される電位差がインバータ素子IGの閾値を超えてから、再び、当該閾値以下となるまで、出力端子から出力信号OXを出力する。すなわち、インバータ素子IGは、放電される電荷量が多ければ多いほど出力信号OXを出力する期間は長くなる。一方、インバータ素子IGは、放電される電荷量が少なければ少ないほど出力信号OXを出力する期間は短くなる。出力信号O1~O4が出力される期間はそれぞれ、回路2500から出力される4つのスパイクのスパイク幅に対応する。但し、本実施形態は、出力信号O1~O4が出力される期間がそれぞれ、回路2500から出力される4つのスパイクのスパイク幅に対応する構成に限定される訳ではない。例えば、インバータ素子IGの出力端子側に、上述のスパイク幅を累積可能な回路を接続しても良い。当該回路は、時間積分回路と時間コンパレータ回路とを組み合わせることで実現される。当該回路をインバータ素子IGの出力端子側に接続すれば、回路2500から出力されるスパイク幅を膜電位変化量とみなしてスパイキングニューロン回路を構成することが可能となる。
 (変形例1)
 回路2500では、マルチプレクサMGを介してワード線WGに印加する電圧VLを選択したが、本実施形態はこれに限られるものではない。マルチプレクサMGに代えて、DAコンバータを用いても良い。DAコンバータであれば、1つの電圧から複数の電圧を生成することができるので、電圧供給回路2504から4つの電圧VL1~VL4を供給する必要はない。電圧供給回路2504から1つの電圧をDAコンバータに供給し、DAコンバータの内部で4つの電圧VL1~VL4を生成すれば良い。ただし、DAコンバータの回路構成はマルチプレクサMGの回路構成よりも複雑となる。
 (変形例2)
 回路2500では、電圧VL1~VL4はそれぞれ、回路2500に入力される4つのスパイクのスパイク振幅に対応するものとしたが、本実施形態はこれに限られるものではない。マルチプレクサMGを介して電圧VLGがワード線WGに印加される期間をスパイク幅に対応させることで、スパイク振幅とスパイク幅とを組み合わせたスパイクデータを構成することができる。
 更に、マルチプレクサMGを介して電圧VLGがワード線WGに印加される回数をスパイク数に対応させることで、スパイク振幅とスパイク幅とスパイク数とを組み合わせたスパイクデータを構成することができる。
 (変形例3)
 回路2500では、ビット線BGにインバータ素子IGを接続し、インバータ素子IGの出力信号OXを、回路2500から出力される4つのスパイクのスパイク幅に対応させたが、本実施形態はこれに限られるものではない。例えば、回路2500では、ビット線BGにインバータ素子IGを接続したが、当該インバータ素子IGに代えてカレントミラー回路を接続しても良い。当該カレントミラー回路は、ビット線BGに流れる電流と同じ値である電流を出力する。当該カレントミラー回路の出力端子を図3に示したニューロン回路302の入力端子に接続し、当該カレントミラー回路の出力電流をニューロン回路302に入力することでスパイキングニューロモーフィックシステムを構築することができる。
 (変形例4)
 回路2500では、電圧VL1~VL4はそれぞれ、回路2500に入力される4つのスパイクのスパイク振幅に対応するものとしたが、本実施形態はこれに限られるものではない。電圧供給回路2504からマルチプレクサMGに電圧VLGを供給する期間をスパイク幅に対応させることで、スパイク振幅とスパイク幅とを組み合わせたスパイクデータを構成することができる。
 301 シナプス回路、302 ニューロン回路、c1 第1キャパシタ

Claims (14)

  1.  スパイキングニューラルネットワークを実行するための装置であって、
     前記装置に入力されるスパイクデータは、複数のスパイクから構成されており、
     前記装置は、
      可変の重みを有し、前記スパイクデータを構成する各スパイクに対して前記重みに応じて調整された膜電位変位を生成し、当該膜電位変位の積分値が閾値を超えた場合に新たなスパイクを生成する回路を備えており、
     前記スパイクデータは、入力データがスパイクパターンとして表現されたデータであり、
     前記スパイクパターンは、前記スパイクデータを構成するスパイクの数、前記スパイクデータを構成する各スパイクの幅、及び前記スパイクデータを構成する各スパイクの振幅のうちの少なくとも2つを用いて定義される、装置。
  2.  前記回路は、前記スパイクデータを構成する各スパイクが入力される度に、当該スパイクの入力によってスイッチング素子をオンオフ制御し、コンデンサへの充放電により電荷を遷移させて前記膜電位変位を生成するチャージポンプ回路を更に有する、請求項1に記載の装置。
  3.  前記回路は、前記重みを示す、可変の電気的特性を有するメムキャパシタを更に有する、請求項1又は2に記載の装置。
  4.  スパイキングニューラルネットワークを実行するための方法であって、
     前記方法は、入力データを、スパイキングニューラルネットワークを実行するための装置に入力されるスパイクデータに変換する方法であり、
     前記装置に入力されるスパイクデータは、複数のスパイクから構成されており、
     前記装置は、
      可変の重みを有し、前記スパイクデータを構成する各スパイクに対して前記重みに応じて調整された膜電位変位を生成し、当該膜電位変位の積分値が閾値を超えた場合に新たなスパイクを生成する回路を備えており、
     前記スパイクデータは、入力データがスパイクパターンとして表現されたデータであり、
     前記スパイクパターンは、前記スパイクデータを構成するスパイクの数、前記スパイクデータを構成する各スパイクの幅、及び前記スパイクデータを構成する各スパイクの振幅のうちの少なくとも2つのパラメータを用いて定義される、方法。
  5.  前記スパイクパターンを定義する少なくとも2つのパラメータの1つが前記スパイクデータを構成する各スパイクの幅である場合において、
     前記スパイクデータは、二進数として符号化されており、
     前記二進数の最下位ビット側から最上位ビット側に向かうにつれて各スパイクの幅が広くなる、請求項4に記載の方法。
  6.  前記スパイクパターンを定義する少なくとも2つのパラメータの1つが前記スパイクデータを構成する各スパイクの振幅である場合において、
     前記スパイクデータは、二進数として符号化されており、
     前記二進数の最下位ビット側から最上位ビット側に向かうにつれて各スパイクの振幅が大きくなる、請求項4又は5に記載の方法。
  7.  前記スパイクパターンを定義する少なくとも2つのパラメータの1つが前記スパイクデータを構成する各スパイクの幅である場合において、
     前記スパイクデータは、スパイク数とスパイク強度の平均値との積として符号化されており、
     前記スパイク強度の小さいものから大きいものに向かうにつれて各スパイクの幅が広くなる、請求項4に記載の方法。
  8.  前記スパイクパターンを定義する少なくとも2つのパラメータの1つが前記スパイクデータを構成する各スパイクの振幅である場合において、
     前記スパイクデータは、スパイク数とスパイク強度の平均値との積として符号化されており、
     前記スパイク強度の小さいものから大きいものに向かうにつれて各スパイクの振幅が大きくなる、請求項4又は7に記載の方法。
  9.  前記スパイク強度の異なる強度を互いに異なるスパイク幅及び/又は異なるスパイク振幅に割り振られている、請求項7又は8に記載の方法。
  10.  複数のニューロン回路と、
     複数のシナプス回路と
    を備え、
     前記複数のニューロン回路の各々は、前記複数のシナプス回路のうちの1つ又は複数のシナプス回路が接続されており、接続された各シナプス回路からスパイクを取得し、
     請求項1~3のいずれか1項に記載の装置は、1つのシナプス回路と当該シナプス回路に接続された1つのニューロン回路との組合せを実現する、スパイキングニューロモーフィックシステム。
  11.  前記装置は、
      複数のワード線と複数のビット線との交差位置に複数のメムキャパシタがマトリックス状に配置されたマトリックスアレイと、
      複数のマルチプレクサであって、各マルチプレクサが、複数の入力端子の各々から入力される複数の電圧のうちのいずれか1つの電圧を選択し、当該選択された電圧を、対応する前記ワード線に印加する、又は、前記複数の電圧のいずれも出力しないことを選択する、複数のマルチプレクサと、
      電源電位と、対応する前記ビット線との間に配置された、複数のp型MOSFETと、
      接地電位と、対応する前記ビット線との間に配置された、複数のn型MOSFETと
     を備えている、請求項1~3のいずれか1項に記載の装置。
  12.  前記装置は、前記複数のビット線の各々に関して、各前記ビット線に接続された各前記メムキャパシタに蓄積された電荷量に応じた出力信号を出力する、請求項11に記載の装置。
  13.  各前記マルチプレクサに入力される各前記電圧は、前記装置に入力されるスパイクのスパイク振幅に対応する、請求項11又は12に記載の装置。
  14.  各前記出力信号が出力される期間は、前記装置から出力されるスパイクのスパイク幅に対応する、請求項12に記載の装置。
PCT/JP2022/040150 2021-10-29 2022-10-27 スパイキングニューラルネットワークを実行するための装置及び方法、並びに、スパイキングニューロモーフィックシステム WO2023074798A1 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2021178174 2021-10-29
JP2021-178174 2021-10-29

Publications (1)

Publication Number Publication Date
WO2023074798A1 true WO2023074798A1 (ja) 2023-05-04

Family

ID=86159972

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2022/040150 WO2023074798A1 (ja) 2021-10-29 2022-10-27 スパイキングニューラルネットワークを実行するための装置及び方法、並びに、スパイキングニューロモーフィックシステム

Country Status (1)

Country Link
WO (1) WO2023074798A1 (ja)

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20170193354A1 (en) * 2015-12-30 2017-07-06 SK Hynix Inc. Neuromorphic device and method of adjusting a resistance change ratio thereof
WO2020178903A1 (ja) * 2019-03-01 2020-09-10 Tdk株式会社 積和演算器、ニューロモーフィックデバイスおよび積和演算方法

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20170193354A1 (en) * 2015-12-30 2017-07-06 SK Hynix Inc. Neuromorphic device and method of adjusting a resistance change ratio thereof
WO2020178903A1 (ja) * 2019-03-01 2020-09-10 Tdk株式会社 積和演算器、ニューロモーフィックデバイスおよび積和演算方法

Similar Documents

Publication Publication Date Title
TWI762719B (zh) 用於混和訊號運算的系統及方法
CN109492187A (zh) 用于执行模拟复向量矩阵乘法的方法和系统
US5264734A (en) Difference calculating neural network utilizing switched capacitors
CN111052153B (zh) 使用半导体存储元件的神经网络运算电路及动作方法
KR102141385B1 (ko) 전치 가능한 메모리와 가상 순람표를 이용한 뉴로모픽 시스템
US10453527B1 (en) In-cell differential read-out circuitry for reading signed weight values in resistive processing unit architecture
US20230401432A1 (en) Distributed multi-component synaptic computational structure
KR20180090560A (ko) 다수 개의 시냅스 셀들을 가진 시냅스를 포함하는 뉴로모픽 소자
KR102354286B1 (ko) 신경망을 위한 시냅스 스트링 및 시냅스 스트링 어레이
US5155377A (en) Charge domain differential conductance synapse cell for neural networks
CN114429199A (zh) 可扩展的仿神经电路
WO2023074798A1 (ja) スパイキングニューラルネットワークを実行するための装置及び方法、並びに、スパイキングニューロモーフィックシステム
US20200381027A1 (en) Dac/adc architecture for ai in memory
US20210011687A1 (en) Product-sum calculation device and product-sum calculation method
Gi et al. A ReRAM-based convolutional neural network accelerator using the analog layer normalization technique
JPH0628504A (ja) ニューラル・ネットワーク
US11106971B2 (en) Neuromorphic device and a synapse network including a post-synaptic neuron having a subtracting circuit
JP7358312B2 (ja) 記憶装置およびニューラルネットワーク装置
US20220156556A1 (en) Spiking neural network circuit
CN217279611U (zh) 人工神经元的电子电路及人工神经网络
Kotov et al. Resistor Array as a Commutator
Kier et al. An MDAC synapse for analog neural networks
WO2022091794A1 (ja) ニューロモーフィック装置及びニューロモーフィックシステム
JP7482071B2 (ja) 記憶装置およびニューラルネットワーク装置
US20210279558A1 (en) Synaptic circuit and neural network apparatus

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 22887123

Country of ref document: EP

Kind code of ref document: A1

WWE Wipo information: entry into national phase

Ref document number: 2023556635

Country of ref document: JP