JPWO2020178903A1 - 積和演算器、ニューロモーフィックデバイスおよび積和演算方法 - Google Patents
積和演算器、ニューロモーフィックデバイスおよび積和演算方法 Download PDFInfo
- Publication number
- JPWO2020178903A1 JPWO2020178903A1 JP2021503257A JP2021503257A JPWO2020178903A1 JP WO2020178903 A1 JPWO2020178903 A1 JP WO2020178903A1 JP 2021503257 A JP2021503257 A JP 2021503257A JP 2021503257 A JP2021503257 A JP 2021503257A JP WO2020178903 A1 JPWO2020178903 A1 JP WO2020178903A1
- Authority
- JP
- Japan
- Prior art keywords
- unit
- output
- detection unit
- input
- variable resistance
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
- 238000000034 method Methods 0.000 title description 10
- 238000001514 detection method Methods 0.000 claims abstract description 339
- 238000004364 calculation method Methods 0.000 claims abstract description 224
- 238000012937 correction Methods 0.000 claims abstract description 143
- 238000006243 chemical reaction Methods 0.000 claims description 27
- 230000000694 effects Effects 0.000 claims description 8
- 238000010586 diagram Methods 0.000 description 17
- 238000013528 artificial neural network Methods 0.000 description 16
- 238000012545 processing Methods 0.000 description 15
- 230000006870 function Effects 0.000 description 6
- 230000005540 biological transmission Effects 0.000 description 4
- 238000004891 communication Methods 0.000 description 4
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 230000004913 activation Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 230000008878 coupling Effects 0.000 description 1
- 238000010168 coupling process Methods 0.000 description 1
- 238000005859 coupling reaction Methods 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000010801 machine learning Methods 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 230000008450 motivation Effects 0.000 description 1
- 210000000653 nervous system Anatomy 0.000 description 1
- 230000001537 neural effect Effects 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- 230000000704 physical effect Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06G—ANALOGUE COMPUTERS
- G06G7/00—Devices in which the computing operation is performed by varying electric or magnetic quantities
- G06G7/12—Arrangements for performing computing operations, e.g. operational amplifiers
- G06G7/32—Arrangements for performing computing operations, e.g. operational amplifiers for solving of equations or inequations; for matrices
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F7/00—Methods or arrangements for processing data by operating upon the order or content of the data handled
- G06F7/38—Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation
- G06F7/48—Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation using non-contact-making devices, e.g. tube, solid state device; using unspecified devices
- G06F7/544—Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation using non-contact-making devices, e.g. tube, solid state device; using unspecified devices for evaluating functions by calculation
- G06F7/5443—Sum of products
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/06—Physical realisation, i.e. hardware implementation of neural networks, neurons or parts of neurons
- G06N3/063—Physical realisation, i.e. hardware implementation of neural networks, neurons or parts of neurons using electronic means
- G06N3/065—Analogue means
-
- H—ELECTRICITY
- H01—ELECTRIC ELEMENTS
- H01L—SEMICONDUCTOR DEVICES NOT COVERED BY CLASS H10
- H01L21/00—Processes or apparatus adapted for the manufacture or treatment of semiconductor or solid state devices or of parts thereof
- H01L21/70—Manufacture or treatment of devices consisting of a plurality of solid state components formed in or on a common substrate or of parts thereof; Manufacture of integrated circuit devices or of parts thereof
- H01L21/77—Manufacture or treatment of devices consisting of a plurality of solid state components or integrated circuits formed in, or on, a common substrate
- H01L21/78—Manufacture or treatment of devices consisting of a plurality of solid state components or integrated circuits formed in, or on, a common substrate with subsequent division of the substrate into plural individual devices
- H01L21/82—Manufacture or treatment of devices consisting of a plurality of solid state components or integrated circuits formed in, or on, a common substrate with subsequent division of the substrate into plural individual devices to produce devices, e.g. integrated circuits, each consisting of a plurality of components
- H01L21/822—Manufacture or treatment of devices consisting of a plurality of solid state components or integrated circuits formed in, or on, a common substrate with subsequent division of the substrate into plural individual devices to produce devices, e.g. integrated circuits, each consisting of a plurality of components the substrate being a semiconductor, using silicon technology
-
- H—ELECTRICITY
- H01—ELECTRIC ELEMENTS
- H01L—SEMICONDUCTOR DEVICES NOT COVERED BY CLASS H10
- H01L27/00—Devices consisting of a plurality of semiconductor or other solid-state components formed in or on a common substrate
- H01L27/02—Devices consisting of a plurality of semiconductor or other solid-state components formed in or on a common substrate including semiconductor components specially adapted for rectifying, oscillating, amplifying or switching and having potential barriers; including integrated passive circuit elements having potential barriers
- H01L27/04—Devices consisting of a plurality of semiconductor or other solid-state components formed in or on a common substrate including semiconductor components specially adapted for rectifying, oscillating, amplifying or switching and having potential barriers; including integrated passive circuit elements having potential barriers the substrate being a semiconductor body
-
- H—ELECTRICITY
- H01—ELECTRIC ELEMENTS
- H01L—SEMICONDUCTOR DEVICES NOT COVERED BY CLASS H10
- H01L29/00—Semiconductor devices specially adapted for rectifying, amplifying, oscillating or switching and having potential barriers; Capacitors or resistors having potential barriers, e.g. a PN-junction depletion layer or carrier concentration layer; Details of semiconductor bodies or of electrodes thereof ; Multistep manufacturing processes therefor
- H01L29/66—Types of semiconductor device ; Multistep manufacturing processes therefor
- H01L29/82—Types of semiconductor device ; Multistep manufacturing processes therefor controllable by variation of the magnetic field applied to the device
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2207/00—Indexing scheme relating to methods or arrangements for processing data by operating upon the order or content of the data handled
- G06F2207/38—Indexing scheme relating to groups G06F7/38 - G06F7/575
- G06F2207/48—Indexing scheme relating to groups G06F7/48 - G06F7/575
- G06F2207/4802—Special implementations
- G06F2207/4828—Negative resistance devices, e.g. tunnel diodes, gunn effect devices
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
- G06N3/084—Backpropagation, e.g. using gradient descent
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Mathematical Physics (AREA)
- Power Engineering (AREA)
- Computer Hardware Design (AREA)
- Biophysics (AREA)
- Microelectronics & Electronic Packaging (AREA)
- Health & Medical Sciences (AREA)
- Life Sciences & Earth Sciences (AREA)
- Biomedical Technology (AREA)
- Software Systems (AREA)
- Condensed Matter Physics & Semiconductors (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- Mathematical Optimization (AREA)
- Mathematical Analysis (AREA)
- Pure & Applied Mathematics (AREA)
- Evolutionary Computation (AREA)
- Data Mining & Analysis (AREA)
- Artificial Intelligence (AREA)
- Molecular Biology (AREA)
- Computational Linguistics (AREA)
- General Health & Medical Sciences (AREA)
- Neurology (AREA)
- Algebra (AREA)
- Computational Mathematics (AREA)
- Manufacturing & Machinery (AREA)
- Ceramic Engineering (AREA)
- Amplifiers (AREA)
- Semiconductor Integrated Circuits (AREA)
- Semiconductor Memories (AREA)
- Hall/Mr Elements (AREA)
- Mram Or Spin Memory Techniques (AREA)
Abstract
Description
抵抗値が固定されたリファレンス抵抗素子を有するリファレンスアレイ部と、
入力データから入力信号を生成し、前記複数の可変抵抗素子および前記リファレンス抵抗素子に対して前記入力信号を入力する信号入力部と、
前記複数の可変抵抗素子に印加された前記入力信号に基づいて、前記可変抵抗アレイ部に流れる電流を検出する第一検出部と、
前記リファレンス抵抗素子に印加された前記入力信号に基づいて、前記リファレンスアレイ部に流れる電流を検出する第二検出部と、
前記第一検出部からの出力に対して、前記第二検出部からの出力に基づいて、予め定めた演算を行う補正演算部と、
を備える積和演算器。
前記第二検出部からの出力をデジタル変換して、前記補正演算部に出力する第二変換部と、
を更に備え、
前記補正演算部は、前記第二変換部からの出力に予め定められた係数を乗算した値を、前記第一変換部からの出力から減算し、更に、予め定められた係数を乗算する、上記[1]に記載の積和演算器。
(前記補正演算部の出力)={(前記第一検出部の出力)−(前記第二検出部の出力)×K1}×K2
但し、K1およびK2は係数
前記第一検出部からの出力および前記第二検出部からの出力の一方あるいは両方を増幅する増幅回路と、
前記第一検出部からの出力と第二検出部からの出力との差分を出力する差分出力回路と、を備え、
前記補正演算部は、前記第一検出部からの出力および前記第二検出部からの出力に予め定められた係数を乗算した値の差分に対応する出力を行う、上記[1]に記載の積和演算器。
前記第一検出部および前記第二検出部は、電荷検出方式による検出回路を有する、上記[1]〜[4]のいずれかに記載の積和演算器。
前記第一検出部および前記第二検出部は、電流検出方式による検出回路を有する、上記[1]〜[4]のいずれかに記載の積和演算器。
前記複数の可変抵抗カラムに流れる電流をそれぞれ検出する複数の前記第一検出部と、
を備え、
1つの前記補正演算部が、前記複数の第一検出部からの複数の出力に対して演算を行う、上記[1]〜[6]のいずれかに記載の積和演算器。
抵抗値が固定されたリファレンス抵抗素子を有するリファレンスカラムで構成される第一リファレンスアレイ部と、
抵抗値が固定されたリファレンス抵抗素子を有するリファレンスローで構成される第二リファレンスアレイ部と、
前記可変抵抗アレイ部の入力側に接続され、入力データから第一入力信号を生成し、前記複数の可変抵抗素子および前記リファレンスカラムの前記リファレンス抵抗素子に対して前記第一入力信号を入力する第一信号入力部と、
前記可変抵抗アレイ部の出力側に接続され、前記複数の可変抵抗素子に印加された前記第一入力信号に基づいて、前記可変抵抗アレイ部に流れる電流を検出する第一検出部と、
前記可変抵抗アレイ部の出力側に接続され、前記リファレンスカラムの前記リファレンス抵抗素子に印加された前記第一入力信号に基づいて、前記第一リファレンスアレイ部に流れる電流を検出する第二検出部と、
前記可変抵抗アレイ部の出力側に接続され、入力データから第二入力信号を生成し、前記複数の可変抵抗素子および前記リファレンスローの前記リファレンス抵抗素子に対して前記第二入力信号を入力する第二信号入力部と、
前記可変抵抗アレイ部の入力側に接続され、前記複数の可変抵抗素子に印加された前記第二入力信号に基づいて、前記可変抵抗アレイ部に流れる電流を検出する第三検出部と、
前記可変抵抗アレイ部の入力側に接続され、前記リファレンスローの前記リファレンス抵抗素子に印加された前記第二入力信号に基づいて、前記第二リファレンスアレイ部に流れる電流を検出する第四検出部と、
前記第一検出部からの出力に対して、前記第二検出部からの出力に応じて予め定めた演算を行う第一補正演算部と、
前記第三検出部からの出力に対して、前記第四検出部からの出力に応じて予め定めた演算を行う第二補正演算部と、
前記可変抵抗アレイ部の入力側に接続され、前記第一信号入力部からの入力と前記第三検出部への出力とを切り替える第一入出力切替部と、
前記可変抵抗アレイ部の出力側に接続され、前記第二信号入力部からの入力と前記第一検出部への出力とを切り替える第二入出力切替部と、
を備える、積和演算器。
前記第二検出部からの出力をデジタル変換して、前記第一補正演算部に出力する第二変換部と、
を更に備え、
前記第一補正演算部は、前記第二検出部からの出力に予め定められた係数を乗算した値を、前記第一検出部からの出力から減算し、更に、予め定められた係数を乗算する、上記[11]に記載の積和演算器。
(前記第一補正演算部の出力)={(前記第一検出部の出力)−(前記第二検出部の出力)×K1}×K2 ・・・(1)
但し、K1およびK2は係数
前記第一検出部からの出力および前記第二検出部からの出力の一方あるいは両方を増幅する第一増幅回路と、
前記第一検出部からの出力と第二検出部からの出力との差分を出力する第一差分出力回路と、を備え、
前記第一検出部からの出力および前記第二検出部からの出力に予め定められた係数を乗算した値の差分に対応する出力を行う、上記[11]に記載の積和演算器。
前記第一検出部および前記第二検出部は、電荷検出方式による検出回路を有する、上記[11]〜[14]のいずれかに記載の積和演算器。
前記第一検出部および前記第二検出部は、電流検出方式による検出回路を有する、上記[11]〜[14]のいずれかに記載の積和演算器。
前記第一入力信号に基づいて前記複数の可変抵抗カラムに流れる電流をそれぞれ検出する複数の前記第一検出部と、
を備え、
前記第一補正演算部が、前記複数の第一検出部からの複数の出力に対して演算を行う、上記[11]〜[16]のいずれかに記載の積和演算器。
前記第四検出部からの出力をデジタル変換して、前記第二補正演算部に出力する第四変換部と、
を更に備え、
前記第二補正演算部は、前記第四検出部からの出力に予め定められた係数を乗算した値を、前記第三検出部からの出力から減算し、更に、予め定められた係数を乗算する、上記[11]に記載の積和演算器。
前記第三検出部からの出力および前記第四検出部からの出力のいずれか一方、あるいは両方を増幅する第二増幅回路と、
前記第三検出部からの出力と第四検出部からの出力との差分を出力する第二差分出力回路と、を備え、
前記第三検出部からの出力および前記第四検出部からの出力に予め定められた係数を乗算した値の差分に対応する出力を行う、上記[11]に記載の積和演算器。
前記複数の可変抵抗素子に印加された前記入力信号に基づいて前記可変抵抗アレイ部に流れる電流を検出すると共に、前記リファレンス抵抗素子に印加された前記入力信号に基づいて前記リファレンスアレイ部に流れる電流を検出する検出ステップと、
前記可変抵抗アレイ部に流れる電流の検出結果に応じた出力に対して、前記リファレンスアレイ部に流れる電流の検出結果に応じた出力に基づいて、予め定めた演算を行う補正演算ステップと、
を有する、積和演算方法。
図1は、本発明の第1実施形態に係る積和演算器の構成の一例を示す図である。
図1に示すように、積和演算器1は、可変抵抗アレイ部10A、リファレンスアレイ部10B、信号入力部20、第一検出部30、第二検出部40および補正演算部50を備えている。
また、図1では、リファレンスアレイ部10Bは、複数のリファレンス抵抗素子10B−1,10B−1,…10B−n(nは自然数)を有するが、これに限らず、1つのリファレンス抵抗素子で構成されてもよい。
補正演算部50がデジタル処理を行う場合、積和演算器1は、例えば、第一検出部30(例えば、第一検出部30−2)からの出力をデジタル変換して、補正演算部50(例えば、補正演算部50−2)に出力する第一変換部60と、第二検出部40からの出力をデジタル変換して、補正演算部50(例えば、補正演算部50−2)に出力する第二変換部70とを更に備えることができる。
(補正演算部50の出力)={(第一検出部30の出力)−(第二検出部40の出力)×K1}×K2 ・・・(1)
但し、K1およびK2は係数
補正演算部50がアナログ処理を行う場合、補正演算部50は、例えば、第一検出部30(例えば、第一検出部30−2)からの出力および第二検出部40からの出力を増幅する増幅回路51,52(第一増幅回路)と、第一検出部30からの出力と第二検出部40からの出力との差分を出力する差分出力回路53(第一差分検出回路)と、を備えることができる。差分出力回路53には、差分出力回路53からの出力をデジタル変換する第三変換部80が接続されている。
図4は、図1の積和演算器1で実行される積和演算方法の一例を示すフローチャートである。
図4に示すように、先ず、信号入力部20は、入力データから入力信号を生成し(ステップS1)、可変抵抗アレイ部10Aを構成する複数の可変抵抗素子(例えば、10A1−1〜10A1−n)に対して上記入力信号を入力すると共に、抵抗値が固定されたリファレンス抵抗素子(例えば、10B−1)に対して上記入力信号を入力する(ステップS2)。
可変抵抗素子のコンダクタンスG(単位:S(=1/Ω))は、物性から決まる定数であり、変化可能な範囲は決まっている。そこで、例えば、可変抵抗素子のコンダクタンスGが1μS〜2μSの範囲のみ変化できるとする。一方、重みWで表現される範囲は、仕様により変化するが、0を中心として正の範囲と負の範囲を含むように設定し、例えば、−0.5〜+0.5(あるいは、−1.0〜+1.0)とする。この場合、重みWで表現される範囲を、コンダクタンスGの範囲に割り当てる。図5の例の場合、コンダクタンスGと重みWとの相関から、コンダクタンスGは、下記式(2)で表現される。
G=(W+1.5)×10−6 ・・・(2)
W×(Input)=G×(Input)×106−1.5×(Input) ・・・(3)
よって、(Input)が分かれば、上記式(3)より、W×(Input)が求められる。
W×(Input)=G×(Input)×106−1.5×(Input)
=(可変抵抗カラムからの出力)×106−1.5×(リファレンスカラムからの出力)÷(G_Ref)
=(可変抵抗カラムからの出力)×106−1.5×(リファレンスカラムからの出力)×106
={(可変抵抗カラムからの出力)−1.5×(リファレンスカラムからの出力)}×106
上記式において、W×(Input)は、補正演算部からの出力に相当し、(可変抵抗カラムからの出力)は(第一検出部からの出力)に相当し、(リファレンスカラムからの出力)は(第二検出部からの出力)に相当する。また、「1.5」は係数K1に、「106」は係数K2に相当する。よって、上記式(1)から、補正演算部の出力(補正結果)を得ることができる。
以下の5つの具体例では、5つの可変抵抗素子で構成される可変抵抗カラムと、5つのリファレンス抵抗素子で構成されるリファレンスカラムとを備える積和演算器を想定する。
(G_Ref)としてGminを用い、Gの範囲を1μS〜2μSとした場合を、表1に示す。表1中、「Input/MAC」の最下段の値「0.0000025」が、入力値(Input)に固定値である(G_Ref)を乗算した値(リファレンスカラムの出力)であり、「DW/MAC」の最下段の値「4.05E−06」が、入力値に重みWを乗じた値である(可変抵抗カラムの出力)。そして、「Comp.MAC」の最下段の値が、(G_Ref)からの値を用いて補正した計算結果である(補正演算部の出力)。この場合、補正演算部の出力「0.3」を得られることが分かる。
(G_Ref)およびGの範囲を具体例1と同様とし、5つの可変抵抗素子に入力される入力値を変えた場合を、表2に示す。表2の結果から、入力値が異なっても、補正演算部の出力「0.06」を得られることが分かる。
表3では、(G_Ref)、Gの範囲および入力値を具体例1と同様とし、重みWを変えた場合を、表3に示す。表中、「Ideal/Weight」は重みWを示す。表3の結果から、重みWを変えても、補正演算部の出力「−0.354」を得られることが分かる。
Gの範囲、入力値および重みWを具体例1と同様とし、(G_Ref)としてGmaxを用いた場合を、表4に示す。表4の結果から、(G_Ref)を変えても、補正演算部の出力「0.3」を得られることが分かる。
入力値、重みW、(G_Ref)を具体例1と同様とし、Gの範囲を1μS〜3μSnに変更した場合を、表5に示す。可変抵抗素子のコンダクタンスGの範囲が1μS〜3μSである場合、可変抵抗素子のコンダクタンスGと重みWとは、W=G×0.5×106−1の関係にある。よって上記式(3)は、以下のように書き換えることができる。
W×(Input)=G×(Input)×0.5×106−1×(Input)÷(G_Ref) ・・・(4)
表5の結果から、可変抵抗素子のコンダクタンスGの範囲が異なる場合でも、上記式(4)を用いて、補正演算部の出力「0.3」を得られることが分かる。
具体的には、図6に示すように、複数の第一検出部30−1,30−2,…が複数の可変抵抗カラム10A1,10A2,…からの出力をそれぞれ検出する。そして、1つの補正演算部50が、複数の第一検出部30−1,30−2,…からの複数の出力に対して演算を行う。このように、複数の第一検出部30−1,30−2,…に対して1つの補正演算部50を共有することで、アレイの実装面積を低減することが可能となる。
図7は、本発明の第2実施形態に係る積和演算器の構成の一例を示す図である。
図7に示すように、積和演算器2は、可変抵抗アレイ部10A、第一リファレンスアレイ部10C、第二リファレンスアレイ部10D、第一信号入力部20A、第二信号入力部20B、第一検出部30A、第二検出部40A、第三検出部30B、第四検出部40B、第一補正演算部50A、第二補正演算部50B、第一入出力切替部90Aおよび第二入出力切替部90Bを備える。
本実施形態では、第一信号入力部20Aは、複数の第一信号入力部20A−1,20A−2,…で構成されている。第一信号入力部20A−1は、ラインL1を介して、複数の可変抵抗素子10A1−1,10A2−1,…およびリファレンス抵抗素子10C−1に接続されている。第一信号入力部20A−2は、ラインL2を介して、複数の可変抵抗素子10A1−2,10A2−2,…、およびリファレンス抵抗素子10C−2に接続されている。
本実施形態では、第二信号入力部20Bは、複数の第二信号入力部20B−1,20B−2,…で構成されている。第二信号入力部20B−1は、ラインM1を介して、複数の可変抵抗素子10A1−n,…10A2−2,10A1−1およびリファレンス抵抗素子10D−1に接続されている。第二信号入力部20B−2は、ラインM2を介して、複数の可変抵抗素子10A2−n,…10A2−2,10A2−1およびリファレンス抵抗素子10D−2に接続されている。
このとき、第二補正演算部50Bは、デジタル論理演算を行い、第四検出部40Bからの出力に予め定められた係数を乗算した値を、第三検出部30Bからの出力から減算し、更に、予め定められた係数を乗算する。
図8は、図7の積和演算器2のフォーワード動作を説明する図である。積和演算器2のフォーワード動作は、最初に第一入出力切替部90Aおよび第二入出力切替部90Bによって切替を行うこと以外は、積和演算器1の動作と同様である。
すなわち、先ず、フォーワード動作が行われる場合、第一入出力切替部90Aを作動し、第一信号入力部20AをラインL1,L2,…Lnに接続する。また、第二入出力切替部90Bを作動し、第一検出部30AをラインM1,M2,…に接続する。
バックワード動作が行われる場合、先ず、第一入出力切替部90Aを作動し、第三検出部30BをラインL1,L2,…Lnに接続する。また、第二入出力切替部90Bを作動し、第二信号入力部20BをラインM1,M2,…に接続する。
図10に示すように、ニューラルネットワーク100は、入力層101と、隠れ層102と、出力層103と、隠れ層102のための演算を行なう積和演算器1−1と、出力層103のための演算を行なう積和演算器1−2とを備えている。積和演算器1−1,1−2は、図1の第1実施形態の積和演算器1と同様の構成であり、複数の可変抵抗素子を有する。
なお、ここでいう「コンピュータシステム」とは、オペレーティング・システム(OS:Operating System)あるいは周辺機器等のハードウェアを含むものであってもよい。
また、「コンピュータ読み取り可能な記録媒体」とは、フレキシブルディスク、光磁気ディスク、ROM(Read Only Memory)、フラッシュメモリ等の書き込み可能な不揮発性メモリ、DVD(Digital Versatile Disc)等の可搬媒体、コンピュータシステムに内蔵されるハードディスク等の記憶装置のことをいう。また、記録媒体としては、例えば、一時的にデータを記録する記録媒体であってもよい。
また、上記のプログラムは、このプログラムを記憶装置等に格納したコンピュータシステムから、伝送媒体を介して、あるいは、伝送媒体中の伝送波により他のコンピュータシステムに伝送されてもよい。ここで、プログラムを伝送する「伝送媒体」は、インターネット等のネットワーク(通信網)あるいは電話回線等の通信回線(通信線)のように情報を伝送する機能を有する媒体のことをいう。
また、上記のプログラムは、前述した機能の一部を実現するためのものであってもよい。さらに、上記のプログラムは、前述した機能をコンピュータシステムに既に記録されているプログラムとの組み合わせで実現できるもの、いわゆる差分ファイル(差分プログラム)であってもよい。
コンピュータでは、例えば、CPU(Central Processing Unit)などのプロセッサがメモリに記憶されたプログラムを読み出して実行する。
1−1 積和演算器
1−2 積和演算器
2 積和演算器
10A 可変抵抗アレイ部
10A1 可変抵抗カラム
10A1−1 可変抵抗素子
10A1−2 可変抵抗素子
10A1−n 可変抵抗素子
10A2 可変抵抗カラム
10A2−1 可変抵抗素子
10A2−2 可変抵抗素子
10A2−n 可変抵抗素子
10B リファレンスアレイ部
10B−1 リファレンス抵抗素子
10B−2 リファレンス抵抗素子
10B−n リファレンス抵抗素子
10C 第一リファレンスアレイ部
10C−1 リファレンス抵抗素子
10C−2 リファレンス抵抗素子
10C−n リファレンス抵抗素子
10D 第二リファレンスアレイ部
10D−1 リファレンス抵抗素子
10D−2 リファレンス抵抗素子
20 信号入力部
20−1 信号入力部
20−2 信号入力部
20−n 信号入力部
20A 第一信号入力部
20A−1 第一信号入力部
20A−2 第一信号入力部
20B 第二信号入力部
20B−1 第二信号入力部
20B−2 第二信号入力部
30 第一検出部
30−1 第一検出部
30−2 第一検出部
30A 第一検出部
30A−1 第一検出部
30A−2 第一検出部
30B 第三検出部
30B−1 第三検出部
30B−2 第三検出部
40 第二検出部
40A 第二検出部
40B 第四検出部
50 補正演算部
50−1 補正演算部
50−2 補正演算部
50A 第一補正演算部
50B 第二補正演算部
51 増幅回路
52 増幅回路
53 差分出力回路
60 第一変換部
70 第二変換部
80 第三変換部
90A 第一入出力切替部
90B 第二入出力切替部
100 ニューラルネットワーク
101 入力層
101A ノード
101B ノード
101C ノード
101D ノード
102 層
102A ノード
102B ノード
102C ノード
103 出力層
103A ノード
103B ノード
103C ノード
入力データから入力信号を生成し、可変抵抗アレイ部を構成する複数の可変抵抗素子に対して前記入力信号を入力すると共に、リファレンスアレイ部を構成する、抵抗値が固定されたリファレンス抵抗素子に対して、前記入力信号を出力する入力ステップと、
前記複数の可変抵抗素子に印加された前記入力信号に基づいて前記可変抵抗アレイ部に流れる電流を検出すると共に、前記リファレンス抵抗素子に印加された前記入力信号に基づいて前記リファレンスアレイ部に流れる電流を検出する検出ステップと、
前記可変抵抗アレイ部に流れる電流の検出結果に応じた出力に対して、前記リファレンスアレイ部に流れる電流の検出結果に応じた出力に基づいて、予め定めた演算を行う補正演算ステップと、
を有する、積和演算方法。
Claims (21)
- 複数の可変抵抗素子を有する可変抵抗アレイ部と、
抵抗値が固定されたリファレンス抵抗素子を有するリファレンスアレイ部と、
入力データから入力信号を生成し、前記複数の可変抵抗素子および前記リファレンス抵抗素子に対して前記入力信号を入力する信号入力部と、
前記複数の可変抵抗素子に印加された前記入力信号に基づいて、前記可変抵抗アレイ部に流れる電流を検出する第一検出部と、
前記リファレンス抵抗素子に印加された前記入力信号に基づいて、前記リファレンスアレイ部に流れる電流を検出する第二検出部と、
前記第一検出部からの出力に対して、前記第二検出部からの出力に基づいて、予め定めた演算を行う補正演算部と、
を備える積和演算器。 - 前記第一検出部からの出力をデジタル変換して、前記補正演算部に出力する第一変換部と、
前記第二検出部からの出力をデジタル変換して、前記補正演算部に出力する第二変換部と、
を更に備え、
前記補正演算部は、前記第二変換部からの出力に予め定められた係数を乗算した値を、前記第一変換部からの出力から減算し、更に、予め定められた係数を乗算する、請求項1に記載の積和演算器。 - 前記補正演算部の出力は、以下の式で決定される、請求項2に記載の積和演算器。
(前記補正演算部の出力)={(前記第一検出部の出力)−(前記第二検出部の出力)×K1}×K2
但し、K1およびK2は係数 - 前記補正演算部は、
前記第一検出部からの出力および前記第二検出部からの出力の一方あるいは両方を増幅する増幅回路と、
前記第一検出部からの出力と第二検出部からの出力との差分を出力する差分出力回路と、を備え、
前記補正演算部は、前記第一検出部からの出力および前記第二検出部からの出力に予め定められた係数を乗算した値の差分に対応する出力を行う、請求項1に記載の積和演算器。 - 前記信号入力部は、前記入力データに基づいてパルス幅変調信号を入力し、
前記第一検出部および前記第二検出部は、電荷検出方式による検出回路を有する、請求項1〜4のいずれか1項に記載の積和演算器。 - 前記信号入力部は、前記入力データに基づいてパルス振幅変調信号を入力し、
前記第一検出部および前記第二検出部は、電流検出方式による検出回路を有する、請求項1〜4のいずれか1項に記載の積和演算器。 - 複数の前記可変抵抗素子でそれぞれ構成される複数の可変抵抗カラムと、
前記複数の可変抵抗カラムに流れる電流をそれぞれ検出する複数の前記第一検出部と、
を備え、
1つの前記補正演算部が、前記複数の第一検出部からの複数の出力に対して演算を行う、請求項1〜6のいずれか1項に記載の積和演算器。 - 前記リファレンスアレイ部が、前記複数のリファレンス抵抗素子を有するリファレンスカラムで構成される、請求項1に記載の積和演算器。
- 前記リファレンスアレイ部が、前記複数のリファレンス抵抗素子を有するリファレンスローで構成される、請求項1に記載の積和演算器。
- 前記可変抵抗素子は、磁気抵抗効果素子である、請求項1〜9のいずれか1項に記載の積和演算器。
- 複数の可変抵抗素子を有する可変抵抗アレイ部と、
抵抗値が固定されたリファレンス抵抗素子を有するリファレンスカラムで構成される第一リファレンスアレイ部と、
抵抗値が固定されたリファレンス抵抗素子を有するリファレンスローで構成される第二リファレンスアレイ部と、
前記可変抵抗アレイ部の入力側に接続され、入力データから第一入力信号を生成し、前記複数の可変抵抗素子および前記リファレンスカラムの前記リファレンス抵抗素子に対して前記第一入力信号を入力する第一信号入力部と、
前記可変抵抗アレイ部の出力側に接続され、前記複数の可変抵抗素子に印加された前記第一入力信号に基づいて、前記可変抵抗アレイ部に流れる電流を検出する第一検出部と、
前記可変抵抗アレイ部の出力側に接続され、前記リファレンスカラムの前記リファレンス抵抗素子に印加された前記第一入力信号に基づいて、前記第一リファレンスアレイ部に流れる電流を検出する第二検出部と、
前記可変抵抗アレイ部の出力側に接続され、入力データから第二入力信号を生成し、前記複数の可変抵抗素子および前記リファレンスローの前記リファレンス抵抗素子に対して前記第二入力信号を入力する第二信号入力部と、
前記可変抵抗アレイ部の入力側に接続され、前記複数の可変抵抗素子に印加された前記第二入力信号に基づいて、前記可変抵抗アレイ部に流れる電流を検出する第三検出部と、
前記可変抵抗アレイ部の入力側に接続され、前記リファレンスローの前記リファレンス抵抗素子に印加された前記第二入力信号に基づいて、前記第二リファレンスアレイ部に流れる電流を検出する第四検出部と、
前記第一検出部からの出力に対して、前記第二検出部からの出力に応じて予め定めた演算を行う第一補正演算部と、
前記第三検出部からの出力に対して、前記第四検出部からの出力に応じて予め定めた演算を行う第二補正演算部と、
前記可変抵抗アレイ部の入力側に接続され、前記第一信号入力部からの入力と前記第三検出部への出力とを切り替える第一入出力切替部と、
前記可変抵抗アレイ部の出力側に接続され、前記第二信号入力部からの入力と前記第一検出部への出力とを切り替える第二入出力切替部と、
を備える、積和演算器。 - 前記第一検出部からの出力をデジタル変換して、前記第一補正演算部に出力する第一変換部と、
前記第二検出部からの出力をデジタル変換して、前記第一補正演算部に出力する第二変換部と、
を更に備え、
前記第一補正演算部は、前記第二検出部からの出力に予め定められた係数を乗算した値を、前記第一検出部からの出力から減算し、更に、予め定められた係数を乗算する、請求項11に記載の積和演算器。 - 前記第一補正演算部の出力は、以下の式(1)で決定される、請求項12に記載の積和演算器。
(前記第一補正演算部の出力)={(前記第一検出部の出力)−(前記第二検出部の出力)×K1}×K2 ・・・(1)
但し、K1およびK2は係数 - 前記第一補正演算部は、
前記第一検出部からの出力および前記第二検出部からの出力の一方あるいは両方を増幅する第一増幅回路と、
前記第一検出部からの出力と第二検出部からの出力との差分を出力する第一差分出力回路と、を備え、
前記第一検出部からの出力および前記第二検出部からの出力に予め定められた係数を乗算した値の差分に対応する出力を行う、請求項11に記載の積和演算器。 - 前記第一信号入力部は、前記入力データに基づいてパルス幅変調信号を入力し、
前記第一検出部および前記第二検出部は、電荷検出方式による検出回路を有する、請求項11〜14のいずれか1項に記載の積和演算器。 - 前記第一信号入力部は、前記入力データに基づいてパルス振幅変調信号を入力し、
前記第一検出部および前記第二検出部は、電流検出方式による検出回路を有する、請求項11〜14のいずれか1項に記載の積和演算器。 - 複数の前記可変抵抗素子でそれぞれ構成される複数の可変抵抗カラムと、
前記第一入力信号に基づいて前記複数の可変抵抗カラムに流れる電流をそれぞれ検出する複数の前記第一検出部と、
を備え、
前記第一補正演算部が、前記複数の第一検出部からの複数の出力に対して演算を行う、請求項11〜16のいずれか1項に記載の積和演算器。 - 前記第三検出部からの出力をデジタル変換して、前記第二補正演算部に出力する第三変換部と、
前記第四検出部からの出力をデジタル変換して、前記第二補正演算部に出力する第四変換部と、
を更に備え、
前記第二補正演算部は、前記第四検出部からの出力に予め定められた係数を乗算した値を、前記第三検出部からの出力から減算し、更に、予め定められた係数を乗算する、請求項11に記載の積和演算器。 - 前記第二補正演算部は、
前記第三検出部からの出力および前記第四検出部からの出力のいずれか一方、あるいは両方を増幅する第二増幅回路と、
前記第三検出部からの出力と第四検出部からの出力との差分を出力する第二差分出力回路と、を備え、
前記第三検出部からの出力および前記第四検出部からの出力に予め定められた係数を乗算した値の差分に対応する出力を行う、請求項11に記載の積和演算器。 - 請求項1〜19のいずれか1項に記載の積和演算器を備えるニューロモーフィックデバイス。
- 入力データから入力信号を生成し、可変抵抗アレイ部を構成する複数の可変抵抗素子に対して前記入力信号を入力すると共に、リファレンスアレイ部を構成する、抵抗値が固定されたリファレンス抵抗素子に対して、前記入力信号を出力する入力ステップと、
前記複数の可変抵抗素子に印加された前記入力信号に基づいて前記可変抵抗アレイ部に流れる電流を検出すると共に、前記リファレンス抵抗素子に印加された前記入力信号に基づいて前記リファレンスアレイ部に流れる電流を検出する検出ステップと、
前記可変抵抗アレイ部に流れる電流の検出結果に応じた出力に対して、前記リファレンスアレイ部に流れる電流の検出結果に応じた出力に基づいて、予め定めた演算を行う補正演算ステップと、
を有する、積和演算方法。
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/JP2019/008114 WO2020178903A1 (ja) | 2019-03-01 | 2019-03-01 | 積和演算器、ニューロモーフィックデバイスおよび積和演算方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
JPWO2020178903A1 true JPWO2020178903A1 (ja) | 2021-11-18 |
JP6977908B2 JP6977908B2 (ja) | 2021-12-08 |
Family
ID=72338208
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2021503257A Active JP6977908B2 (ja) | 2019-03-01 | 2019-03-01 | 積和演算器、ニューロモーフィックデバイスおよび積和演算方法 |
Country Status (3)
Country | Link |
---|---|
US (1) | US20220138441A1 (ja) |
JP (1) | JP6977908B2 (ja) |
WO (1) | WO2020178903A1 (ja) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20220108158A1 (en) * | 2020-10-02 | 2022-04-07 | Sandisk Technologies Llc | Ultralow power inference engine with external magnetic field programming assistance |
US20220366229A1 (en) * | 2021-05-12 | 2022-11-17 | Taiwan Semiconductor Manufacturing Co., Ltd. | Gate based resistance control units |
WO2023074798A1 (ja) * | 2021-10-29 | 2023-05-04 | 国立大学法人 奈良先端科学技術大学院大学 | スパイキングニューラルネットワークを実行するための装置及び方法、並びに、スパイキングニューロモーフィックシステム |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2016004589A (ja) * | 2014-06-13 | 2016-01-12 | ソニー株式会社 | 抵抗変化型メモリ装置及び半導体装置 |
WO2018189964A1 (ja) * | 2017-04-14 | 2018-10-18 | Tdk株式会社 | 磁壁利用型アナログメモリ素子、磁壁利用型アナログメモリ、不揮発性ロジック回路及び磁気ニューロ素子 |
JP2018182291A (ja) * | 2017-04-14 | 2018-11-15 | Tdk株式会社 | 磁壁利用型アナログメモリ素子、磁壁利用型アナログメモリ、不揮発性ロジック回路及び磁気ニューロ素子 |
-
2019
- 2019-03-01 WO PCT/JP2019/008114 patent/WO2020178903A1/ja active Application Filing
- 2019-03-01 JP JP2021503257A patent/JP6977908B2/ja active Active
- 2019-03-01 US US17/434,921 patent/US20220138441A1/en active Pending
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2016004589A (ja) * | 2014-06-13 | 2016-01-12 | ソニー株式会社 | 抵抗変化型メモリ装置及び半導体装置 |
WO2018189964A1 (ja) * | 2017-04-14 | 2018-10-18 | Tdk株式会社 | 磁壁利用型アナログメモリ素子、磁壁利用型アナログメモリ、不揮発性ロジック回路及び磁気ニューロ素子 |
JP2018182291A (ja) * | 2017-04-14 | 2018-11-15 | Tdk株式会社 | 磁壁利用型アナログメモリ素子、磁壁利用型アナログメモリ、不揮発性ロジック回路及び磁気ニューロ素子 |
Also Published As
Publication number | Publication date |
---|---|
JP6977908B2 (ja) | 2021-12-08 |
US20220138441A1 (en) | 2022-05-05 |
WO2020178903A1 (ja) | 2020-09-10 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP6977908B2 (ja) | 積和演算器、ニューロモーフィックデバイスおよび積和演算方法 | |
TWI793277B (zh) | 用於混合訊號運算的系統與方法 | |
JP6477924B2 (ja) | メモリスタ神経形態学的回路及びメモリスタ神経形態学的回路をトレーニングするための方法 | |
JP6477922B2 (ja) | メモリスタ神経形態学的回路及びメモリスタ神経形態学的回路をトレーニングするための方法 | |
JP6623947B2 (ja) | 情報処理装置、イジング装置及び情報処理装置の制御方法 | |
JP6293963B1 (ja) | ニューロモルフィック素子を含むアレイの制御装置、離散化ステップサイズの演算方法およびプログラム | |
WO2018228424A1 (zh) | 一种神经网络训练方法和装置 | |
US11436482B2 (en) | Storing neural net works and weights for neural networks | |
KR20130036323A (ko) | 뉴로-프로세서들에서 대체가능한 시냅스 가중치 저장을 위한 방법들 및 시스템들 | |
US10453527B1 (en) | In-cell differential read-out circuitry for reading signed weight values in resistive processing unit architecture | |
US20220188604A1 (en) | Method and Apparatus for Performing a Neural Network Operation | |
TWI771014B (zh) | 記憶體電路及其操作方法 | |
JP2019095860A (ja) | ニューラルネットワーク装置および演算装置 | |
TW202006609A (zh) | 用於類神經網路的記憶體內運算裝置 | |
Pedretti et al. | Redundancy and analog slicing for precise in-memory machine learning—Part I: Programming techniques | |
US12001811B2 (en) | Product-sum operation device, logical calculation device, neuromorphic device, and multiply-accumulate method | |
JP6521207B1 (ja) | 積和演算器、積和演算方法、論理演算デバイスおよびニューロモーフィックデバイス | |
JP4932273B2 (ja) | 強誘電体キャパシタを用いた演算処理回路および演算方法 | |
US20220101142A1 (en) | Neural network accelerators resilient to conductance drift | |
KR102421323B1 (ko) | Pcm 기반의 시냅스 소자 및 그 동작 방법 | |
JP6903568B2 (ja) | 入力装置、入力装置の制御方法、及びコンピュータに入力装置の制御方法を実行させるプログラム | |
JP6904491B2 (ja) | 積和演算器、論理演算デバイス、ニューロモーフィックデバイス及び積和演算方法 | |
TWI668694B (zh) | 資料讀取方法以及使用此方法的非揮發性記憶體裝置 | |
JPWO2020008869A1 (ja) | 演算処理システム、センサシステム、演算処理方法、及びプログラム | |
JP2019174864A (ja) | 入力装置、入力装置の制御方法、及びコンピュータに入力装置の制御方法を実行させるプログラム |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20210617 |
|
A871 | Explanation of circumstances concerning accelerated examination |
Free format text: JAPANESE INTERMEDIATE CODE: A871 Effective date: 20210617 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20210727 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20210922 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20211012 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20211025 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 6977908 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |