CN111279351B - 积和运算器、神经形态器件以及积和运算器的使用方法 - Google Patents

积和运算器、神经形态器件以及积和运算器的使用方法 Download PDF

Info

Publication number
CN111279351B
CN111279351B CN201980005310.3A CN201980005310A CN111279351B CN 111279351 B CN111279351 B CN 111279351B CN 201980005310 A CN201980005310 A CN 201980005310A CN 111279351 B CN111279351 B CN 111279351B
Authority
CN
China
Prior art keywords
product
magnetization
elements
sum
layer
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.)
Active
Application number
CN201980005310.3A
Other languages
English (en)
Other versions
CN111279351A (zh
Inventor
柴田龙雄
佐佐木智生
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
TDK Corp
Original Assignee
TDK Corp
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 TDK Corp filed Critical TDK Corp
Publication of CN111279351A publication Critical patent/CN111279351A/zh
Application granted granted Critical
Publication of CN111279351B publication Critical patent/CN111279351B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F7/00Methods or arrangements for processing data by operating upon the order or content of the data handled
    • G06F7/38Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation
    • G06F7/48Methods 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/544Methods 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/5443Sum of products
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F7/00Methods or arrangements for processing data by operating upon the order or content of the data handled
    • G06F7/02Comparing digital values
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F7/00Methods or arrangements for processing data by operating upon the order or content of the data handled
    • G06F7/38Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation
    • G06F7/383Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation using magnetic or similar elements
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F7/00Methods or arrangements for processing data by operating upon the order or content of the data handled
    • G06F7/38Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation
    • G06F7/48Methods 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/50Adding; Subtracting
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F7/00Methods or arrangements for processing data by operating upon the order or content of the data handled
    • G06F7/38Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation
    • G06F7/48Methods 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/52Multiplying; Dividing
    • G06F7/523Multiplying only
    • 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
    • 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
    • G06N3/065Analogue means
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • G06N3/084Backpropagation, e.g. using gradient descent
    • HELECTRICITY
    • H01ELECTRIC ELEMENTS
    • H01LSEMICONDUCTOR DEVICES NOT COVERED BY CLASS H10
    • H01L21/00Processes or apparatus adapted for the manufacture or treatment of semiconductor or solid state devices or of parts thereof
    • H01L21/70Manufacture 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/77Manufacture or treatment of devices consisting of a plurality of solid state components or integrated circuits formed in, or on, a common substrate
    • H01L21/78Manufacture 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/82Manufacture 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/822Manufacture 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
    • HELECTRICITY
    • H01ELECTRIC ELEMENTS
    • H01LSEMICONDUCTOR DEVICES NOT COVERED BY CLASS H10
    • H01L27/00Devices consisting of a plurality of semiconductor or other solid-state components formed in or on a common substrate
    • H01L27/02Devices 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/04Devices 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
    • HELECTRICITY
    • H01ELECTRIC ELEMENTS
    • H01LSEMICONDUCTOR DEVICES NOT COVERED BY CLASS H10
    • H01L29/00Semiconductor 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/66Types of semiconductor device ; Multistep manufacturing processes therefor
    • H01L29/82Types of semiconductor device ; Multistep manufacturing processes therefor controllable by variation of the magnetic field applied to the device
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2207/00Indexing scheme relating to methods or arrangements for processing data by operating upon the order or content of the data handled
    • G06F2207/38Indexing scheme relating to groups G06F7/38 - G06F7/575
    • G06F2207/48Indexing scheme relating to groups G06F7/48 - G06F7/575
    • G06F2207/4802Special implementations
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2207/00Indexing scheme relating to methods or arrangements for processing data by operating upon the order or content of the data handled
    • G06F2207/38Indexing scheme relating to groups G06F7/38 - G06F7/575
    • G06F2207/48Indexing scheme relating to groups G06F7/48 - G06F7/575
    • G06F2207/4802Special implementations
    • G06F2207/4814Non-logic devices, e.g. operational amplifiers
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2207/00Indexing scheme relating to methods or arrangements for processing data by operating upon the order or content of the data handled
    • G06F2207/38Indexing scheme relating to groups G06F7/38 - G06F7/575
    • G06F2207/48Indexing scheme relating to groups G06F7/48 - G06F7/575
    • G06F2207/4802Special implementations
    • G06F2207/4818Threshold devices
    • G06F2207/4824Neural networks

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Computational Mathematics (AREA)
  • Mathematical Analysis (AREA)
  • Pure & Applied Mathematics (AREA)
  • Computing Systems (AREA)
  • Mathematical Optimization (AREA)
  • Health & Medical Sciences (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Biophysics (AREA)
  • Biomedical Technology (AREA)
  • Power Engineering (AREA)
  • Microelectronics & Electronic Packaging (AREA)
  • Mathematical Physics (AREA)
  • General Health & Medical Sciences (AREA)
  • Artificial Intelligence (AREA)
  • Software Systems (AREA)
  • Molecular Biology (AREA)
  • Computational Linguistics (AREA)
  • Data Mining & Analysis (AREA)
  • Evolutionary Computation (AREA)
  • Computer Hardware Design (AREA)
  • Condensed Matter Physics & Semiconductors (AREA)
  • Neurology (AREA)
  • Manufacturing & Machinery (AREA)
  • Ceramic Engineering (AREA)
  • Hall/Mr Elements (AREA)
  • Measuring Magnetic Variables (AREA)
  • Mram Or Spin Memory Techniques (AREA)

Abstract

本发明提供一种积和运算器(1),其包括积运算部(10)以及和运算部(11),所述积运算部(10)包括作为电阻变化元件的多个积运算元件(10AA、10AB)和至少一个参考元件(10AMAX、10AMIN),所述和运算部(11)至少包括检测来自所述多个积运算元件的输出的合计值的输出检测器(11A),所述多个积运算元件各自为磁阻效应元件,包括:具有磁壁的磁化自由层;磁化方向被固定的磁化固定层;和由所述磁化自由层与所述磁化固定层夹持的非磁性层,所述参考元件为包括不具有磁壁的磁化自由层的参考磁阻效应元件。

Description

积和运算器、神经形态器件以及积和运算器的使用方法
技术领域
本发明涉及积和运算器、神经形态器件以及积和运算器的使用方法。
本申请基于2018年3月16日申请于日本的特愿2018-049766号主张优先权,并将其内容在此引用。
背景技术
目前,已知有RRAM(注册商标)基础模拟神经形态系统中的用于灰度图像识别的最佳化的学习方案(例如参照非专利文献1)。该文献中记载有模拟神经形态系统以组装的电阻式开关存储阵列为基础进行开发的内容。该文献中,为了通过利用段化的突触的举动来将模拟系统的性能最佳化,而提出新的训练方案。另外,该文献中,该方案适用于灰度图像识别。
另外,进行着使用电阻变化元件的阵列来实现模仿神经系统的神经网络的研究。神经形态器件(NMD)中,从前一阶段向下一阶段施加载荷并进行累加的积和运算。因此,组合多个电阻连续地变化的电阻变化元件,以各自的电阻值为权重进行相对于输入信号的积运算,并取得从其输出的电流的总和,由此,进行和运算的各种各样的类型的积和运算器、及利用了该积和运算器的NMD的开发不断进展。
例如专利文献1中记载有一种利用了磁壁利用型磁阻变化元件的磁神经元系统,该磁壁利用型磁阻变化元件利用了根据磁记录层内的磁壁的位置,使电阻值连续地变化。
现有技术文献
专利文献
专利文献1:国际公开第2017/183573号。
非专利文献
非专利文献1:Zhe Chen他著,“RRAM基础模拟神经形态系统中的用于灰度图像识别的最佳化的学习方案(Optimized Learning Scheme for Grayscale ImageRecognition in a RRAM Based Analog Neuromorphic System)”,2015年,IEEE,p.17.7.1-p.17.7.4。
发明内容
发明所要解决的技术问题
但是,专利文献1中,未对构成系统的磁阻效应元件的依赖于温度的特性变化进行研究。因此,在温度变化的情况下,神经网络的性能可能降低。另外,特别是在使用隧道磁阻效应元件作为磁阻效应元件的情况下,有时元件的磁阻值根据电流方向不同而不同,因此,在通过反向传播进行学习时,需要比其它的电阻变化元件复杂的操作,因此,处理速度可能变慢。
鉴于上述的问题点,本发明的目的在于,提供在应用于神经网络的情况下,能够抑制来自温度变化或电流方向的元件特性的变动引起的神经网络的性能降低的积和运算器、神经形态器件以及积和运算器的使用方法。
用于解决问题的技术方案
本发明的一个方式提供一种积和运算器,包括积运算部以及和运算部,所述积运算部包括多个积运算元件和至少一个参考元件,所述多个积运算元件、所述至少一个参考元件分别为电阻变化元件,所述和运算部至少包括检测来自所述多个积运算元件的输出的合计值的输出检测器,所述多个积运算元件分别为磁阻效应元件,所述磁阻效应元件包括:具有磁壁的第一磁化自由层;磁化方向被固定的第一磁化固定层;和由所述第一磁化自由层与所述第一磁化固定层夹持的第一非磁性层,所述至少一个参考元件为参考磁阻效应元件,所述参考磁阻效应元件包括:不具有磁壁的第二磁化自由层或具有磁壁的第三磁化自由层;磁化方向被固定的第二磁化固定层;和由所述第二磁化固定层与所述第二磁化自由层或所述第三磁化自由层夹持的第二非磁性层,并且,所述第二磁化自由层的一个磁化方向或所述第三磁化自由层的多个磁化方向各自与所述第二磁化固定层的磁化方向所成的相对角度是固定的。
本发明的一个方式的积和运算器中,也可以是,所述至少一个参考元件包含:所述第二磁化自由层的所述一个磁化方向与所述第二磁化固定层的磁化方向为反向平行的第一参考元件或具有所述第三磁化自由层且设定成最大电阻值的第三参考元件;和所述第二磁化自由层的所述一个磁化方向与所述第二磁化固定层的磁化方向平行的具有所述磁化固定层的第二参考元件或具有所述第三磁化自由层且设定成最小电阻值的第四参考元件。
本发明的一个方式的积和运算器也可以还包括比较部,其将来自所述多个积运算元件的输出与来自所述至少一个参考元件的输出进行比较。
本发明的一个方式的积和运算器也可以还包括至少一个参考列,所述至少一个参考列不包含所述多个积运算元件,包含所述至少一个参考元件。
本发明的一个方式的积和运算器也可以还包括至少一个参考输出检测器,所述至少一个参考输出检测器分别检测来自所述至少一个参考列各自的输出。
本发明的一个方式提供一种所述积和运算器的使用方法,其中,所述积和运算器还包括故障探测部,所述积和运算器的使用方法包含:所述故障探测部基于由所述至少一个参考输出检测器检测出的来自所述至少一个参考列各自的输出,对由所述输出检测器检测出的来自所述多个积运算元件的输出的合计值的正常范围进行设定的正常范围设定步骤;和所述故障探测部基于由所述输出检测器检测出的来自所述多个积运算元件的输出的合计值和所述正常范围,判断所述多个积运算元件有无故障的故障有无判断步骤。
本发明的一个方式的积和运算器的使用方法中,也可以是,所述积和运算器还包括比较部,所述积和运算器的使用方法还包含:所述比较部将由所述输出检测器检测出的来自所述多个积运算元件的输出的合计值与由所述至少一个参考输出检测器检测出的来自所述至少一个参考列各自的输出进行比较的比较步骤。
本发明的一个方式的积和运算器的使用方法中,也可以是,所述积和运算器还包括校正部,所述积和运算器的使用方法还包含:所述校正部基于由所述输出检测器检测出的来自所述多个积运算元件的输出的合计值和由所述至少一个参考输出检测器检测出的来自所述至少一个参考列各自的输出,计算所述多个积运算元件的依赖于温度的电阻值变化量,并校正所述多个积运算元件的电阻值的校正步骤。
本发明的一个方式的积和运算器中,所述至少一个参考列包含动作用参考列和反向传播用参考列。
本发明的一个方式提供一种神经形态器件,其包括所述积和运算器。
发明效果
根据本发明,能够提供在应用于神经网络的情况下,可抑制来自温度变化或电流方向的元件特性的变动引起的神经网络的性能降低的积和运算器、神经形态器件以及积和运算器的使用方法。
附图说明
图1是表示第一实施方式的积和算运器的一部分结构的一例的图。
图2是表示第一实施方式的积和运算器的整体结构的一例的图。
图3是表示第一实施方式的积和运算器的构成积运算元件各自的磁阻效应元件的一例的立体图。
图4是表示第一实施方式的积和运算器的应用例的图。
图5是用于说明由输出检测器检测的合计值及限定值的图。
图6是表示由第一实施方式的积和运算器执行的处理的一例的流程图。
图7是表示第二实施方式的积和运算器的一部分结构的一例的图。
图8是表示第三实施方式的积和运算器的一部分结构的一例的图。
具体实施方式
以下,参照附图对本发明的积和运算器、神经形态器件以及积和运算器的使用方法的实施方式进行说明。
<第一实施方式>
图1是表示第一实施方式的积和运算器1的一部分结构的一例的图。图2是表示第一实施方式的积和运算器1的整体结构的一例的图。
图1及图2所示的例子中,第一实施方式的积和运算器1包括:积运算部10、和运算部11、输入部12、故障探测部13、比较部14、校正部15。积运算部10包括列10A和列10B。
图1所示的例子中,积运算部10包括两个列10A、10B,但其它例子中,积运算部10也可以包括3个以上的任意数量的列10A、10B、……。
图1所示的例子中,列10A包括积运算元件10AA、积运算元件10AB、参考元件10AMAX、参考元件10AMIN。积运算元件10AA、10AB进行积运算。参考元件10AMAX用于积和运算器1的动作时或反向传播学习时的积运算元件10AA、10AB等的电阻值的最大值的校正。参考元件10AMIN用于积和运算器1的积和运算器1的动作时或反向传播学习时的积运算元件10AA、10AB等的电阻值的最小值的校正。
列10B包括积运算元件10BA、积运算元件10BB、积运算元件10BC、积运算元件10BD。积运算元件10BA~10BD与积运算元件10AA、10AB同样地进行积运算。
图1所示的例子中,列10A包括两个积运算元件10AA、10AB,列10B包括4个积运算元件10BA、10BB、10BC、10BD,但其它例子中,列10A也可以包括2以外的任意数量(详细而言,多个)的积运算元件,列10B包括4以外的任意数量(详细而言,多个)的积运算元件。
图1所示的例子中,列10A包括:用于积和运算器1的动作时或反向传播学习时的积运算元件10AA、10AB等的电阻值的最大值的校正的一个参考元件10AMAX;和用于积和运算器1的动作时或反向传播学习时的积运算元件10AA、10AB等的电阻值的最小值的校正的一个参考元件10AMIN。其它的例子中,列10A也可以包括用于积和运算器1的动作时的积运算元件10AA、10AB等的电阻值的校正的多个参考元件,或包括用于积和运算器1的反向传播学习时的积运算元件10AA、10AB等的电阻值的校正的多个参考元件。
图1所示的例子中,输入部12包括第一输入部12A、第二输入部12B、第三输入部12C、第四输入部12D。多个积运算元件10AA、10AB、10BA~10BD和参考元件10AMAX、10AMIN各自为包括读出端子、写入端子、共用端子的电阻变化元件。
积运算元件10AA、10BA的读出端子连接于线L11。线L11连接于在积和运算器1的动作时对积运算元件10AA、10BA输入信号的第一输入部12A。积运算元件10AA、10BA的写入端子连接于线L12。
积运算元件10AB、10BB的读出端子连接于线L21。线L21连接于积和运算器1的动作时对积运算元件10AB、10BB输入信号的第二输入部12B。积运算元件10AB、10BB的写入端子连接于线L22。
参考元件10AMAX及积运算元件10BC的读出端子连接于线L31。线L31连接于在积和运算器1的动作时对参考元件10AMAX及积运算元件10BC输入信号的第三输入部12C。参考元件10AMAX及积运算元件10BC的写入端子连接于线L32。
参考元件10AMIN及积运算元件10BD的读出端子连接于线L41。线L41连接于在积和运算器1的动作时对参考元件10AMIN及积运算元件10BD输入信号的第四输入部12D。参考元件10AMIN及积运算元件10BD的写入端子连接于线LX2。
积运算元件10AA、10AB及参考元件10AMAX、10AMIN的共用端子连接于线M1。积运算元件10BA、10BB、10BC、10BD的共用端子连接于线M2。
作为本发明中用作积运算元件的磁阻效应元件,只要是利用磁阻效应可改变电阻的元件即可,作为代表性的例子,可举出隧道磁阻效应(TMR)元件,巨磁阻效应(GMR)元件。
图1所示的例子中,和运算部11包括输出检测器11A和输出检测器11B。输出检测器11A配置于线M1。输出检测器11B配置于线M2。
在第一输入部12A对积运算元件10AA输入信号,第二输入部12B对积运算元件10AB输入信号,第三输入部12C对参考元件10AMAX输入信号,第四输入部12D对参考元件10AMIN输入信号的情况下,输出检测器11A检测来自积运算元件10AA的输出、来自积运算元件10AB的输出、来自参考元件10AMAX的输出、来自参考元件10AMIN的输出的合计值。
在第一输入部12A对积运算元件10AA输入信号,第二输入部12B对积运算元件10AB没有输入信号,第三输入部12C对参考元件10AMAX没有输入信号,第四输入部12D对参考元件10AMIN没有输入信号的情况下,输出检测器11A检测来自积运算元件10AA的输出。
在第一输入部12A对积运算元件10AA没有输入信号,第二输入部12B对积运算元件10AB输入信号,第三输入部12C对参考元件10AMAX没有输入信号,第四输入部12D对参考元件10AMIN没有输入信号的情况下,输出检测器11A检测来自积运算元件10AB的输出。
在第一输入部12A对积运算元件10AA没有输入信号,第二输入部12B对积运算元件10AB没有输入信号,第三输入部12C对参考元件10AMAX输入信号,第四输入部12D对参考元件10AMIN没有输入信号的情况下,输出检测器11A检测来自参考元件10AMAX的输出。
在第一输入部12A对积运算元件10AA没有输入信号,第二输入部12B对积运算元件10AB没有输入信号,第三输入部12C对参考元件10AMAX没有输入信号,第四输入部12D对参考元件10AMIN输入信号的情况下,输出检测器11A检测来自参考元件10AMIN的输出。
在第一输入部12A对积运算元件10BA输入信号,第二输入部12B对积运算元件10BB输入信号,第三输入部12C对积运算元件10BC输入信号,第四输入部12D对积运算元件10BD输入信号的情况下,输出检测器11B检测来自积运算元件10BA的输出、来自积运算元件10BB的输出、来自积运算元件10BC的输出、来自积运算元件10BD的输出的合计值。
在第一输入部12A对积运算元件10BA输入信号,第二输入部12B对积运算元件10BB没有输入信号,第三输入部12C对积运算元件10BC没有输入信号,第四输入部12D对积运算元件10BD没有输入信号的情况下,输出检测器11B检测来自积运算元件10BA的输出。
在第一输入部12A对积运算元件10BA没有输入信号,第二输入部12B对积运算元件10BB输入信号,第三输入部12C对积运算元件10BC没有输入信号,第四输入部12D对积运算元件10BD没有输入信号的情况下,输出检测器11B检测来自积运算元件10BB的输出。
在第一输入部12A对积运算元件10BA没有输入信号,第二输入部12B对积运算元件10BB没有输入信号,第三输入部12C对积运算元件10BC输入信号,第四输入部12D对积运算元件10BD没有输入信号的的情况下,输出检测器11B检测来自积运算元件10BC的输出。
在第一输入部12A对积运算元件10BA没有输入信号,第二输入部12B对积运算元件10BB没有输入信号,第三输入部12C对积运算元件10BC没有输入信号,第四输入部12D对积运算元件10BD输入信号的情况下,输出检测器11B检测来自积运算元件10BD的输出。
图1所示的例子中,在第一输入部12A对积运算元件10AA输入信号,第二输入部12B对积运算元件10AB输入信号,第三输入部12C对参考元件10AMAX输入信号,第四输入部12D对参考元件10AMIN输入信号的情况下,输出检测器11A检测来自积运算元件10AA的输出电流、来自积运算元件10AB的输出电流、来自参考元件10AMAX的输出电流、来自参考元件10AMIN的输出电流的合计值。
其它的例子中,在第一输入部12A对积运算元件10AA输入信号,第二输入部12B对积运算元件10AB输入信号,第三输入部12C对参考元件10AMAX输入信号,第四输入部12D对参考元件10AMIN输入信号的情况下,输出检测器11A也可以作为相当于来自积运算元件10AA的输出的电荷、相当于来自积运算元件10AB的输出的电荷、相当于来自参考元件10AMAX的输出的电荷、相当于来自参考元件10AMIN的输出的电荷的合计值检测。
详细而言,图1所示的例子中,积运算元件10AA、10AB、10BA~10BD各自为呈现磁阻效应的磁阻效应元件。
图3是表示第一实施方式的分别构成积和运算器1中的积运算元件10AA、10AC、10BA~10BD的磁阻效应元件A的一例的立体图。
图3所示的例子中,磁阻效应元件A包括具有磁壁DW的磁化自由层A1、磁化方向被固定的磁化固定层A2、非磁性层A3。非磁性层A3由磁化自由层A1与磁化固定层A2夹持。磁化自由层A1在磁壁DW的一侧具有第一区域A11,在磁壁DW的另一侧具有第二区域A12。第一区域A11中设置有写入端子AA。第二区域A12中设置有共用端子AB。磁化固定层A2中设置有读出端子AC。
磁壁DW的移动量(移动距离)通过调整在写入端子AA与共用端子AB之间流通的写入电流的大小、时间,能够控制成可变。写入电流的大小、时间,也能够根据例如脉冲数或脉冲宽度设定磁壁DW的移动量(移动距离)。通过磁壁DW的驱动(移动),磁化固定层A2和磁化自由层A1各自的磁化方向平行的(或反向平行的)部分的面积连续地变化时,磁化方向平行的部分的面积率与磁化方向反向平行的部分的面积率之比连续地变化,磁阻效应元件中得到接近线形的电阻变化。
另外,数据的读出能够通过如下进行,在读出端子AC与共用端子AB之间流通电流,检测相应于磁化方向平行的部分的面积率与磁化方向反向平行的部分的面积率之比的电阻(例如,参照专利文献1)。
[磁化固定层A2]
磁化固定层A2是磁化向第一方向(例如图3的左方向)取向,且固定的层。在此,磁化被固定是指,在使用了写入电流的写入前后,磁化方向不变化(磁化被固定)。
图3所示的例子中,磁化固定层A2是磁化具有面内磁各向异性(面内易磁化轴)的面内磁化膜。磁化固定层A2不限于面内磁化膜,也可以是具有垂直磁各向异性(垂直易磁化轴)的垂直磁化膜。
磁化固定层A2为面内磁化膜时,具有较高的MR比(磁阻变化率),在读入时难以受到自旋转移力矩(STT)引起的影响,能够增大读取电压。另一方面,在将元件微小化的情况下,优选使用磁各向异性较大、磁壁宽度较小的垂直磁化膜。
磁化固定层A2中能够使用公知的材料。例如能够使用选自由Cr、Mn、Co、Fe和Ni构成的组的金属及将这些金属含有1种以上且呈现铁磁性的合金。另外,也能够使用含有这些金属和B、C和N中的至少1种以上的元素的合金。具体而言,可举出Co-Fe及Co-Fe-B。
另外,磁化固定层A2中也能够使用Co2FeSi等的霍伊斯勒合金。霍伊斯勒合金包含具有X2YZ的化学组成的金属间化合物,X为周期表上Co、Fe、Ni或Cu族的过渡金属元素或贵金属元素,Y也能够采用Mn、V、Cr或Ti族的过渡金属且X的元素种类,Z为III族~V族的典型元素。例如,可举出:Co2FeSi、Co2MnSi、Co2Mn1-aFeaAlbSi1-b等。
另外,磁化固定层A2也可以是由铁磁性层、非磁性层构成的合成结构,或由反铁磁性层、铁磁性层、非磁性层构成的合成结构。后者中,在合成结构中,磁化固定层A2的磁化方向利用反铁磁性层较强地保持。因此,磁化固定层A2的磁化难以受到来自外部的影响。
在使磁化固定层A2的磁化取向于XY面内(将磁化固定层A2设为面内磁化膜)的情况下,优选使用例如NiFe。另一方面,在使磁化固定层A2的磁化取向于Z方向的(将磁化固定层A2设为垂直磁化膜)的情况下,优选使用例如Co/Ni层叠膜、Co/Pt层叠膜等。例如,当将磁化固定层A2设为[Co(0.24nm)/Pt(0.16nm)]6/Ru(0.9nm)/[Pt(0.16nm)/Co(0.16nm)]4/Ta(0.2nm)/FeB(1.0nm)时,成为垂直磁化膜。
[非磁性层A3]
非磁性层A3设置于磁化固定层A2的下表面。磁阻效应元件A经由非磁性层A3将磁化自由层A1相对于磁化固定层A2的磁化状态的变化作为电阻值变化读出。即,磁化固定层A2、非磁性层A3及磁化自由层A1作为磁阻效应元件A发挥作用,在非磁性层A3由绝缘体构成的情况下,为与隧道磁阻(TMR)元件相似的结构,在非磁性层2由金属构成的情况下,为与巨磁阻效应(GMR)元件相似的结构。
作为非磁性层A3的材料,可使用能够用于磁阻效应元件A的非磁性层的公知的材料。在非磁性层A3由绝缘体构成的情况下(为隧道势垒层的情况),作为其材料,能够使用Al2O3、SiO2、MgO、MgAl2O4、ZnAl2O4、MgGa2O4、ZnGa2O4、MgIn2O4、ZnIn2O4、以及这些材料的多层膜或混合组成膜等。另外,除了这些之外,还能够使用Al、Si、Mg的一部分置换成Zn、Be等的材料等。这些材料中,MgO及MgAl2O4为能够实现相干隧道的材料,因此,能够增大磁阻比(MR比)。另一方面,在非磁性层2由金属构成的情况下,作为其材料,能够使用Cu、Al、Ag等。
在非磁性层A3由绝缘体构成的情况下(为隧道势垒层的情况),从较高地设定元件电阻值的观点来看,其厚度优选为例如2.5nm以上。
[磁化自由层A1]
磁化自由层A1相当于磁壁驱动型(移动型)MRAM的磁壁驱动层(磁化记录层)。
磁化自由层A1由铁磁性体材料构成,其内部的磁化的方向可反转。磁化自由层A1具有:磁化向磁化固定层A2的反方向的第二方向取向的第一区域A11、磁化向与第一方向相同的方向取向的第二区域A12、构成这些区域的界面的磁壁DW。夹持磁壁DW而第一区域A11与第二区域A12的磁化的方向相反。磁壁DW通过磁化自由层A1的第一区域A11与第二区域A12的构成比率变化而移动。
磁化自由层A1的材料能够使用公知的材料,特别是能够应用软磁性材料。例如,能够使用选自由Cr、Mn、Co、Fe以及Ni构成的组的金属、将这些金属含有1种以上的合金、含有这些金属与B、C、以及N的至少1种以上的元素的合金等。具体而言,作为磁化自由层A1的材料可举出Co-Fe、Co-Fe-B、Ni-Fe。
磁化自由层A1的材料也能够使用饱和磁化较小的材料。例如,当使用(MnGa)As及(InFe)As、或Co/Tb多层膜及GdFeCo那样饱和磁化较小的材料时,能够以较小的电流密度驱动磁化自由层A1的磁壁DW。另外,当使用这些材料时,磁壁DW的驱动速度变慢。
NiFe那样的磁各向异性较弱的材料的磁壁DW的驱动速度较快,磁壁DW以100m/sec以上的速度动作。也就是,磁壁DW以10nsec的脉冲移动1μm的距离。因此,在将磁化自由层A1在元件内模拟性地移动的情况下,需要使用高价的半导体电路施加微小的脉冲,或牺牲集成度而充分延长磁化自由层等的对策。与之相对,在磁壁DW的驱动速度较慢的材料的情况下,即使在施加充分长的脉冲电流的情况或磁化自由层A1的长度较短的情况下,也可形成模拟存储器。
在将磁化自由层A1设为垂直磁化膜的情况下,优选为选自由Co/Pt多层膜、Co/Pd多层膜、以及CoCrPt合金膜构成的组的垂直磁化膜。另外,也能够使用Mn3X(X=Ga,Ge)的垂直磁化膜及Co/Ni等的多层膜的垂直磁化膜。这些材料即使用于磁壁驱动的电流密度较小,也可驱动磁壁DW。
磁化自由层A1沿着长边方向延伸的长度优选为60nm以上。若是低于60nm,则容易成为单磁区,难以在磁化自由层A1内形成磁壁DW。
磁化自由层A1的厚度只要作为磁壁驱动层发挥作用,就没有特别限制,例如,能够设为2~60nm。当磁化自由层A1的厚度成为60nm以上时,沿着层叠方向形成磁壁的可能性变高。但是,是否沿着层叠方向形成磁壁根据与磁化自由层A1的形状各向异性的平衡产生。如果磁化自由层A1的厚度低于60nm,则认为难以形成磁壁DW。
磁化自由层A1也可以在层的侧面具有阻止磁壁DW的移动的磁壁钉扎部。例如,当在要阻止磁化自由层A1的磁壁DW的移动的位置设置凹凸、槽、隆起、收缩、切口等时,能够阻止磁壁的移动(钉扎)。当具有磁壁钉扎部时,能够设为如果不流通阈值以上的电流则磁壁不会移动其以上的结构,输出信号不是模拟的信号,容易多值化。
例如,通过每预定的距离形成磁壁钉扎部,能够更稳定地保持磁壁DW,可进行稳定的多值记录,可更稳定地读出多值化的输出信号。
本发明包括的磁阻效应元件只要作为磁阻效应元件发挥作用,也可以包括上述的层以外的层。例如,图3所示的磁阻效应元件A中,磁化自由层仅为作为具有磁壁DW的磁化记录层的磁化自由层A1,但除了该磁化自由层A1以外,也可以在磁化自由层A1与非磁性层A3之间的磁化自由层A1的中央区域(俯视时与磁化固定层A2重合的区域)包括其它的磁化自由层(以下,称为第二磁化自由层)。第二磁化自由层与磁化自由层A1磁耦合,该磁化状态依赖于磁化自由层A1的中央区域的磁化状态而变化。
图3所示的例子中,为了形成磁壁DW,在磁化自由层A1中的俯视时不与磁化固定层A2重叠的两端部各自包括具有与第一区域A11的磁化相同的第一方向的磁化的第一磁化供给层A4、及具有与第二区域A12的磁化相同的第二方向的磁化的第二磁化供给层A5。
作为第一磁化供给层A4及第二磁化供给层A5的材料,能够使用与用于磁化固定层A2的铁磁性材料相同的材料。
图3所示的例子中,为了形成磁壁DW,作为在磁化自由层A1的两端部均固定磁化的层,使用了第一磁化供给层A4及第二磁化供给层A5,但也可以在任一方或双方使用与磁化自由层A1相接触并且沿着与磁化自由层A1的长边方向交叉的方向延伸的自旋轨道力矩(SOT)配线。自旋轨道力矩配线由流通电流时,通过自旋霍尔效应产生纯自旋流的材料构成。
通过具有上述的结构,即使不设置作为固定磁化的层的磁化供给层,通过向自旋轨道力矩配线的两端流通电流,也能够向磁化自由层A1导入磁壁,另外,通过经由自旋轨道力矩配线向磁化自由层A1流通电流,能够移动磁壁。
另外,图3所示的例子中,为了形成磁壁DW,作为在磁化自由层A1的两端部均固定磁化的层,使用了第一磁化供给层A4及第二磁化供给层A5,但也可以在任一方或双方使用与磁化自由层A1电绝缘,并且沿着与磁化自由层A1交叉的方向延伸的磁场施加配线。通过向磁场施加配线流通电流,根据安培定律产生磁场。根据向磁场施加配线流通的电流的方向,能够将产生的磁场的方向设为反方向。因此,通过在磁化自由层A1的端部可供给地配置面内磁化,能够根据向磁场施加配线流通的电流的方向,供给与磁化自由层A1的端部相互反方向的面内磁化方向中的一面内磁化方向的磁化。另外,通过在磁化自由层A1的端部可供给地配置垂直磁化,能够根据向磁场施加配线流通的电流的方向,供给与磁化自由层A1的端部相互反方向的垂直磁化方向中的一垂直磁化方向的磁化。
另外,图3所示的例子中,为了形成磁壁DW,作为在磁化自由层A1的两端部均固定磁化的层,使用了第一磁化供给层A4及第二磁化供给层A5,但也可以在任一方或双方使用经由绝缘层连接于磁化自由层A1的电压施加端子。当在磁化固定层A2与电压施加端子之间施加电压时,磁化自由层A1的磁化的一部分受到电压的影响。例如,从电压施加端子以脉冲施加电压时,磁化的一部分在电压施加时向与磁化自由层A1的磁化方向正交的方向取向,在停止电压施加的定时,磁化自由层A1的磁化向第一方向或其反方向的第二方向取向。该向正交的方向取向的磁化是沿着第一方向还是向其反方向的第二方向倾倒是等概率的,通过调整施加脉冲电压的定时、次数、周期,能够使磁化的一部分从第一方向向第二方向取向。
也可以在磁化自由层A1与非磁性层A3之间设置磁耦合层。磁耦合层是转印磁化自由层A1的磁化状态的层。磁化自由层A1的主要的功能是用于驱动磁壁的层,不限于能够选择适于经由磁化固定层A1和非磁性层A2产生的磁阻效应的材料。通常已知,为了产生使用了非磁性层A2的相干隧道效应,磁化固定层A1及磁耦合层的BCC结构的铁磁性材料是良好的。特别是已知,作为磁化固定层A1及磁耦合层的材料,Co-Fe-B的组成的材料通过溅射制作时得到较大的输出。
图4是表示第一实施方式的积和运算器1的应用例的图。
图4所示的例子中,第一实施方式的积和运算器1应用于神经形态器件100。神经形态器件100包括输入层101、隐藏层102、输出层103、第一实施方式的积和运算器1、积和运算器2。积和运算器2与图1所示的第一实施方式的积和运算器1同样具有多个积运算元件。
输入层101包括例如4个节点101A、101B、101C、101D。隐藏层102包括例如3个节点102A、102B、102C。输出层103包括例如3个节点103A、103B、103C。
积和运算器1配置于输入层101与隐藏层102之间,将输入层101的4个节点101A、101B、101C、101D与隐藏层102的3个节点102A、102B、102C连接。积和运算器1通过变更图1所示的积运算元件10AA、10AB、10BA~10BD的电阻值,而变更权重。
在隐藏层102与输出层103之间配置有积和运算器2。积和运算器2将隐藏层102的3个节点102A、102B、102C与输出层103的3个节点103A、103B、103C连接。积和运算器2通过变更多个积运算元件的电阻值,而变更权重。
隐藏层102使用活性化函数(例如Sigmoid函数)。
但是,构成积和运算器1的积运算元件10AA、10AB、10BA~10BD各自的电阻值根据温度变化而变动。详细而言,与通常的电阻体不同,作为磁阻效应元件A的积运算元件10AA、10AB、10BA~10BD各自的电阻值随着温度上升而降低。也就是,积运算元件10AA、10AB、10BA~10BD的电阻值具有与通常的电阻体不同的温度依赖性。
本发明人在锐意研究中发现,当不考虑与温度变化相应的积运算元件10AA、10AB、10BA~10BD的电阻值的变动,利用神经形态器件100进行判别时,神经形态器件100的判别功能降低。
另外,本发明人发现,例如从输入部12向输出检测器11A、11B流通电流的情况(沿着顺方向流通电流的情况)的积运算元件10AA、10AB、10BA~10BD的电阻值与从输出检测器11A、11B向输入部12流通电流的情况(沿着反方向流通电流的情况)的积运算元件10AA、10AB、10BA~10BD的电阻值不同。即,本发明人发现,积运算元件10AA、10AB、10BA~10BD的电阻值具有偏置依赖性(依赖于电压及极性)。
鉴于该点,第一实施方式的积和运算器1中,实施后述的对策。
具体而言,图1所示的例子中,如上述,参考元件10AMAX和参考元件10AMIN包括于积和运算器1。
参考元件10AMAX、10AMIN,与积运算元件10AA、10AB、10BA~10BD不同,是包括:不具有磁壁的磁化自由层、磁化方向被固定的磁化固定层、由磁化自由层与磁化固定层夹持的非磁性层,并且磁化自由层的磁化方向与磁化固定层的磁化方向所成的相对角度被固定的参考磁阻效应元件,或是包括:具有磁壁的磁化自由层、磁化方向被固定的磁化固定层、由磁化自由层与磁化固定层夹持的非磁性层,并且具有该磁壁的磁化自由层的多个磁化方向各自与磁化固定层的磁化方向所成的相对角度被实质性地固定的参考磁阻效应元件。相对角度被实质性地固定的参考磁阻效应元件通过如下能够实现,在将积和运算器初始化的时刻,将参考磁阻效应元件的值设定成已决定的初始值,在以后的动作时,从初始值起不变更值地使用,并作为实际的固定值运用。参考磁阻效应元件的设定值也可以使用最大或最小值,或也可以选择任意的最大与最小之间的值。不具有磁壁的磁化自由层也可以使用磁化自由层A1中的在俯视时与磁化固定层A2重叠的区域不具有磁壁的层。作为固定相对角度的方法能够使用公知的方法。参考元件10AMAX、10AMIN为了使与作为磁阻效应元件的积运算元件10AA、10AB、10BA~10BD的比较容易(为了能够容易校正),除了磁壁的有无之外,优选层结构(材料,层厚)与积运算元件10AA、10AB、10BA~10BD相同或类似。作为参考元件10AMAX、10AMIN中的不具有磁壁的磁化自由层,也可以使用磁化方向固定的层。
参考元件10AMAX、10AMIN是为了使与温度变化相应的积运算元件10AA、10AB、10BA~10BD的电阻值的变动不对神经形态器件100的判别功能造成不良影响而使用的。
详细而言,参考元件10AMAX是为了使从输入部12向输出检测器11A、11B流通电流的情况下的与温度变化相应的积运算元件10AA、10AB、10BA~10BD的电阻值的变动不对神经形态器件100的判别功能造成不良影响而使用的。参考元件10AMAX的磁化自由层的磁化方向与磁化固定层的磁化方向也可以反向平行。
另外,参考元件10AMIN是为了使从输出检测器11A、11B向输入部12流通电流的情况下的与温度变化相应的积运算元件10AA、10AB、10BA~10BD的电阻值的变动不对神经形态器件100的判别功能造成不良影响而使用的。参考元件10AMIN的磁化自由层的磁化方向与磁化固定层的磁化方向也可以平行。
具有磁壁的参考元件的磁化自由层也可以使用磁化自由层A1中的在俯视时与磁化固定层A2重叠的区域具有磁壁的层。作为将具有磁壁的参考元件的磁化自由层的多个磁化方向各自与参考元件的磁化固定层的磁化方向构成的相对角度固定的方法,能够使用如下方法,在将初始化积和运算器的时刻,将参考磁阻效应元件的值设定成已决定的初始值,在以后的积和运算时,从初始值起不变更值地使用,由此,能够作为实际的固定值使用。在该情况下,参考元件10AMAX、10AMIN为了与作为磁阻效应元件的积运算元件10AA、10AB、10BA~10BD的比较容易(为了能够容易校正),也优选层结构(材料,层厚)与积运算元件10AA、10AB、10BA~10BD相同或类似。
在使用包括具有磁壁的磁化自由层的参考元件的情况下,为了磁壁在读出时不位移,也可以调节读出电流方向与磁化供给层A4、A5的磁化方向的关系。例如,用作最大值的参考元件中,也可以将处于流通读出电流侧的磁化供给层的磁化的方向配置成与磁化固定层A2的磁化反向平行,将另一磁化供给层的磁化的方向配置成与磁化固定层A2的磁化平行。另外,作为最小值使用的参考元件中,也可以将处于流通读出电流侧的磁化供给层的磁化的方向配置成与磁化固定层A2的磁化平行,且将另一磁化供给层的磁化的方向配置成与磁化固定层A2的磁化反向平行。
另外,图2所示的例子中,如上述,比较部14包括于积和运算器1。比较部14将来自积运算元件10AA、10AB、10BA~10BD的输出与来自参考元件10AMAX、10AMIN的输出进行比较。
详细而言,比较部14在从输入部12向输出检测器11A、11B流通电流的情况下(沿着顺方向流通电流的情况),将例如来自积运算元件10AA的输出与来自参考元件10AMAX的输出进行比较。通过将例如来自积运算元件10AA的顺方向输出电流与来自参考元件10AMAX的顺方向输出电流进行比较,在此时的温度条件下,能够掌握流通顺方向输出电流的积运算元件10AA的电阻值进行哪种程度变动。
另外,比较部14在从输出检测器11A、11B向输入部12流通电流的情况下(沿着反方向流通电流的情况),将例如来自积运算元件10AA的输出与来自参考元件10AMIN的输出进行比较。通过将例如来自积运算元件10AA的反方向输出电流与来自参考元件10AMIN的反方向输出电流比较,在此时的温度条件下,能够掌握流通反方向输出电流的积运算元件10AA的电阻值进行哪种程度变动。
另外,图2所示的例子中,如上述,校正部15包括于积和运算器1。
在从输入部12向输出检测器11A、11B流通电流的情况下(沿着顺方向流通电流的情况),校正部15基于例如来自积运算元件10AA的输出和来自参考元件10AMAX的输出,算出流通顺方向输出电流的积运算元件10AA的依赖于温度的电阻值变化量。另外,校正部15基于流通顺方向输出电流的积运算元件10AA的依赖于温度的电阻值变化量,校正流通顺方向输出电流的积运算元件10AA的电阻值。同样,校正部15校正流通顺方向输出电流的积运算元件10AB、10BA~10BD的电阻值。
在从输出检测器11A、11B向输入部12流通电流的情况下(沿着反方向流通电流的情况),校正部15基于例如来自积运算元件10AA的输出和来自参考元件10AMIN的输出,算出流通反方向输出电流的积运算元件10AA的依赖于温度的电阻值变化量。另外,校正部15基于流通反方向输出电流的积运算元件10AA的依赖于温度的电阻值变化量,校正流通反方向输出电流的积运算元件10AA的电阻值。同样,校正部15校正流通反方向输出电流的积运算元件10AB、10BA~10BD的电阻值。
因此,第一实施方式的积和运算器1中,与不包括参考元件10AMAX、10AMIN的情况相比,能够抑制伴随与温度变化相应的积运算元件10AA、10AB、10BA~10BD的电阻值的变动的神经形态器件100的判别功能降低。
另外,图2所示的例子中,如上述,故障探测部13包括于积和运算器1。故障探测部13进行积运算元件10AA等是否故障的判断。
故障探测部13在例如由输出检测器11A检测的来自积运算元件10AA的输出超过限定值的情况下,判断为输出电流变大的故障产生于积运算元件10AA。
另外,故障探测部13在例如由输出检测器11B检测的来自多个积运算元件10BA~10BD的输出的合计值超过限定值的情况下,判断为列10B中包含的多个积运算元件10BA~10BD的至少任一项产生输出电流变大的故障。
图5是用于说明由输出检测器11B检测的合计值及限定值的图。图5中,纵轴表示由输出检测器11B检测的多个积运算元件10BA~10BD的输出电流的合计值、限定值等。横轴表示积运算元件10BA~10BD的状态(电阻值的大小)。
在多个积运算元件10BA~10BD的正常动作时,且积运算元件10BA~10BD的电阻值最高时,由输出检测器11B检测的多个积运算元件10BA~10BD的输出电流的合计值成为最小值Min。
在多个积运算元件10BA~10BD的正常动作时,随着积运算元件10BA~10BD的电阻值变低,由输出检测器11B检测的多个积运算元件10BA~10BD的输出电流的合计值变大。
在多个积运算元件10BA~10BD的正常动作时,且积运算元件10BA~10BD的电阻值最低时,由输出检测器11B检测的多个积运算元件10BA~10BD的输出电流的合计值成为最大值Max。
限定值设定成最大值Max以上的值。也就是,限定值是在多个积运算元件10BA~10BD全部正常动作的情况下输出检测器11B可检测的合计值的最大值Max以上的值。
图5所示的例子中,在点P1的状态下,由输出检测器11B检测的积运算元件10BA~10BD的输出电流的合计值不超过限定值。因此,故障探测部13判断为列10B中包含的多个积运算元件10BA~10BD的任一项均未产生输出电流变大的故障的可能性高。
另一方面,在点P2的状态下,由输出检测器11B检测的积运算元件10BA~10BD的输出电流的合计值超过限定值。因此,故障探测部13判断为列10B中包含的多个积运算元件10BA~10BD的至少任一项产生了输出电流变大的故障。
另外,图1及图2所示的例子中,故障探测部13判断多个积运算元件10AA、10AB各自是否故障。
例如,为了判断积运算元件10AA是否故障,在第二输入部12B对积运算元件10AB没有输入信号的状态,且第三输入部12C对参考元件10AMAX没有输入信号的状态,且第四输入部12D对参考元件10AMIN没有输入信号的状态,且第一输入部12A对积运算元件10AA输入信号的状态下,输出检测器11A检测来自积运算元件10AA的输出。在该状态下,来自积运算元件10AB的输出为零,来自参考元件10AMAX的输出为零,来自参考元件10AMIN的输出为零。另外,故障探测部13基于输出检测器11A的检测值,判断积运算元件10AA是否故障。
同样,故障探测部13判断积运算元件10AB是否故障。
另外,图1及图2所示的例子中,故障探测部13判断多个积运算元件10BA、10BB、10BC、10BD各自是否故障。
例如,为了判断积运算元件10BB是否故障,在第一输入部12A对积运算元件10BA没有输入信号的状态,且第三输入部12C对积运算元件10BC没有输入信号的状态,且第四输入部12D对积运算元件10BD没有输入信号的状态,且第二输入部12B对积运算元件10BB输入信号的状态下,输出检测器11B检测来自积运算元件10BB的输出。在该状态下,来自积运算元件10BA的输出为零,来自积运算元件10BC的输出为零,来自积运算元件10BD的输出为零。另外,故障探测部13基于输出检测器11B的检测值,判断积运算元件10BB是否故障。
同样,故障探测部13判断积运算元件10BA是否故障、积运算元件10BC是否故障、以及积运算元件10BD是否故障。
图6是表示由第一实施方式的积和运算器1执行的处理的一例的流程图。
图6所示的例子中,积和运算器1包括从输入部12向输出检测器11A、11B流通电流的动作模式和从输出检测器11A、11B向输入部12流通电流的反向传播模式。
在积和运算器1为动作模式的情况下,步骤S10中,故障探测部13设定来自积运算元件10AA、10AB、10BA~10BD的顺方向的输出的正常范围。详细而言,故障探测部13将例如图5的“限定值”以下的范围设定为来自多个积运算元件10BA~10BD的顺方向的输出的合计值的正常范围。另外,故障探测部13设定来自积运算元件10AA、10AB、10BA~10BD各自的顺方向的输出的正常范围。故障探测部13在例如积运算元件10AA正常动作的情况下,将积运算元件10AA可沿着顺方向输出的最大电流值以下的范围设定为来自积运算元件10AA的顺方向的输出的正常范围。
接着,步骤S11中,输出检测器11A检测来自积运算元件10AA、10AB及参考元件10AMAX各自的顺方向输出电流。详细而言,在第一输入部12A对积运算元件10AA输入信号,第二输入部12B对积运算元件10AB没有输入信号,第三输入部12C对参考元件10AMAX没有输入信号,且第四输入部12D对参考元件10AMIN没有输入信号的情况下,输出检测器11A检测来自积运算元件10AA的顺方向输出电流。同样,输出检测器11A检测来自积运算元件10AB的顺方向输出电流和来自参考元件10AMAX的顺方向输出电流。
另外,步骤S11中,输出检测器11B检测来自积运算元件10BA~10BD的顺方向的输出。详细而言,输出检测器11B检测来自积运算元件10BA~10BD的顺方向输出电流的合计值。另外,输出检测器11B检测来自积运算元件10BA的顺方向输出电流、来自积运算元件10BB的顺方向输出电流、来自积运算元件10BC的顺方向输出电流、以及来自积运算元件10BD的顺方向输出电流各自。
接着,步骤S12中,故障探测部13判断多个积运算元件10AA、10AB、10BA~10BD有无故障。详细而言,故障探测部13基于由输出检测器11B检测的来自积运算元件10BA~10BD的顺方向输出电流的合计值、和来自积运算元件10BA~10BD的顺方向的输出的合计值的正常范围,判断多个积运算元件10BA~10BD中是否包含故障的积运算元件。在由输出检测器11B检测的来自积运算元件10BA~10BD的顺方向输出电流的合计值超过来自积运算元件10BA~10BD的顺方向的输出的合计值的正常范围的情况下,故障探测部13判断为多个积运算元件10BA~BD中包含故障的积运算元件,并结束图6所示的程序。
另外,步骤S12中,故障探测部13基于由输出检测器11A检测的来自积运算元件10AA、10AB各自的顺方向输出电流和来自积运算元件10AA、10AB各自的顺方向的输出的正常范围,判断积运算元件10AA、10AB是否故障。在由输出检测器11A检测的来自积运算元件10AA的顺方向输出电流超过来自积运算元件10AA的顺方向的输出的正常范围的情况下,故障探测部13判断为积运算元件10AA故障,并结束图6所示的程序。另外,在故障探测部13判断为积运算元件10AB故障的情况下,也结束图6所示的程序。
另外,步骤S12中,故障探测部13基于由输出检测器11B检测的来自积运算元件10BA~10BD的顺方向输出电流和来自积运算元件10BA~10BD的顺方向的输出的正常范围,判断积运算元件10BA~10BD是否故障。在由输出检测器11B检测的来自积运算元件10BA的顺方向输出电流超过来自积运算元件10BA的顺方向的输出的正常范围的情况下,故障探测部13判断为积运算元件10BA故障,并结束图6所示的程序。另外,在故障探测部13判断为积运算元件10BB~10BD的任一项故障的情况下,也结束图6所示的程序。
步骤S12中,在故障探测部13判断为多个积运算元件10AA、10AB、10BA~10BD未故障的情况下,进入步骤S13。
步骤S13中,比较部14将由输出检测器11A检测的来自积运算元件10AA的顺方向输出电流与由输出检测器11A检测的来自参考元件10AMAX的顺方向输出电流进行比较。
步骤S13中,比较部14也可以将由输出检测器11A检测的来自积运算元件10AB的顺方向输出电流或由输出检测器11B检测的来自积运算元件10BA~10BD的任一项的顺方向输出电流与由输出检测器11A检测的来自参考元件10AMAX的顺方向输出电流进行比较。
接着,步骤S14中,当校正部15基于比较部14的比较结果,不校正积运算元件10AA、10AB、10BA~10BD的顺方向的电阻值时,判定神经形态器件100的判别功能是否可能降低。如果不校正积运算元件10AA、10AB、10BA~10BD的顺方向的电阻值,则在神经形态器件100的判别功能可能降低的情况下,校正部15校正积运算元件10AA、10AB、10BA~10BD的顺方向的电阻值。
详细而言,校正部15基于由输出检测器11A检测的来自积运算元件10AA的顺方向输出电流和由输出检测器11A检测的来自参考元件10AMAX的顺方向输出电流,算出积运算元件10AA的依赖于温度的电阻值变化量。另外,校正部15基于该电阻值变化量,校正积运算元件10AA的顺方向的电阻值。
具体而言,在通过温度上升,积运算元件10AA的顺方向的电阻值比期望的顺方向的电阻值变低的情况下,校正部15进行使积运算元件10AA的顺方向的电阻值增加的校正。另外,在通过温度降低,积运算元件10AA的顺方向的电阻值比期望的顺方向的电阻值变高的情况下,校正部15进行使积运算元件10AA的顺方向的电阻值减少的校正。同样,校正部15校正积运算元件10AB、10BA~10BD的顺方向的电阻值。
在积和运算器1为反向传播模式的情况下,步骤S10中,故障探测部13设定来自积运算元件10BA~10BD的反方向的输出的合计值的正常范围。另外,故障探测部13设定来自积运算元件10AA、10AB、10BA~10BD各自的反方向的输出的正常范围。
接着,步骤S11中,输出检测器11A检测在积运算元件10AA、10AB及参考元件10AMIN各自流通的反方向输出电流。详细而言,在第一输入部12A接通反方向电流路径,第二输入部12B断开反方向电流路径,第三输入部12C断开反方向电流路径,且第四输入部12D断开反方向电流路径的情况下,输出检测器11A检测在积运算元件10AA流通的反方向输出电流。同样,输出检测器11A检测在积运算元件10AB流通的反方向输出电流和在参考元件10AMIN流通的反方向输出电流。
另外,步骤S11中,输出检测器11B检测在积运算元件10BA~10BD流通的反方向输出电流。详细而言,输出检测器11B检测在积运算元件10BA~10BD流通的反方向输出电流的合计值。另外,输出检测器11B检测在积运算元件10BA流通的反方向输出电流、在积运算元件10BB流通的反方向输出电流、在积运算元件10BC流通的反方向输出电流、以及在积运算元件10BD流通的反方向输出电流各自。
接着,步骤S12中,故障探测部13判断多个积运算元件10AA、10AB、10BA~10BD有无故障。详细而言,故障探测部13基于由输出检测器11B检测的在积运算元件10BA~10BD流通的反方向输出电流的合计值和来自积运算元件10BA~10BD的反方向的输出的合计值的正常范围,判断多个积运算元件10BA~10BD中是否包含故障的积运算元件。在由输出检测器11B检测的在积运算元件10BA~10BD流通的反方向输出电流的合计值超过来自积运算元件10BA~10BD的反方向的输出的合计值的正常范围的情况下,故障探测部13判断为多个积运算元件10BA~BD中包含故障的积运算元件,并结束图6所示的程序。
另外,步骤S12中,故障探测部13基于由输出检测器11A检测的在积运算元件10AA、10AB各自流通的反方向输出电流和来自积运算元件10AA、10AB各自的反方向的输出的正常范围,判断积运算元件10AA、10AB是否故障。在由输出检测器11A检测的在积运算元件10AA流通的反方向输出电流超过来自积运算元件10AA的反方向的输出的正常范围的情况下,故障探测部13判断为积运算元件10AA故障,并结束图6所示的程序。另外,在故障探测部13判断为积运算元件10AB故障的情况下,也结束图6所示的程序。
另外,步骤S12中,故障探测部13基于由输出检测器11B检测的在积运算元件10BA~10BD各自流通的反方向输出电流和来自积运算元件10BA~10BD的反方向的输出的正常范围,判断积运算元件10BA~10BD是否故障。在由输出检测器11B检测的在积运算元件10BA流通的反方向输出电流超过来自积运算元件10BA的反方向的输出的正常范围的情况下,故障探测部13判断为积运算元件10BA故障,并结束图6所示的程序。另外,在故障探测部13判断为积运算元件10BB~10BD的任一项故障的情况下,也结束图6所示的程序。步骤S12中,在故障探测部13判断为多个积运算元件10AA、10AB、10BA~10BD未故障的情况下,进入步骤S13。
步骤S13中,比较部14将由输出检测器11A检测的在积运算元件10AA流通的反方向输出电流与由输出检测器11A检测的在参考元件10AMIN流通的反方向输出电流进行比较。
步骤S13中,比较部14也可以将由输出检测器11A检测的在积运算元件10AB流通的反方向输出电流或由输出检测器11B检测的在积运算元件10BA~10BD的任一项流通的反方向输出电流与由输出检测器11A检测的在参考元件10AMIN流通的反方向输出电流进行比较。
接着,步骤S14中,校正部15基于比较部14的比较结果不校正积运算元件10AA、10AB、10BA~10BD的反方向的电阻值时,判定神经形态器件100的判别功能是否可能降低(详细而言,可能不能执行期望的反向传播学习)。如果不校正积运算元件10AA、10AB、10BA~10BD的反方向的电阻值,则在神经形态器件100的判别功能可能降低的情况下(在可能不能执行期望的反向传播学习的情况下),校正部15校正积运算元件10AA、10AB、10BA~10BD的反方向的电阻值。
详细而言,校正部15基于由输出检测器11A检测的在积运算元件10AA流通的反方向输出电流和由输出检测器11A检测的在参考元件10AMIN流通的反方向输出电流,算出积运算元件10AA的依赖于温度的电阻值变化量。另外,校正部15基于该电阻值变化量,校正积运算元件10AA的反方向的电阻值。
具体而言,与积和运算器1为动作模式的情况同样,在积运算元件10AA的反方向的电阻值由于温度上升而比期望的反方向的电阻值变低的情况下,校正部15进行增加积运算元件10AA的反方向的电阻值的校正。另外,在积运算元件10AA的反方向的电阻值由于温度降低而比期望的反方向的电阻值变高的情况下,校正部15进行减少积运算元件10AA的反方向的电阻值的校正。同样,校正部15校正积运算元件10AB、10BA~10BD的反方向的电阻值。
如上述,第一实施方式的积和运算器1中,包括不具有磁壁的磁化自由层的参考元件10AMAX、10AMIN包括于积运算部10。
因此,根据第一实施方式的积和运算器1,与这种参考元件不包括于积运算部的积和运算器相比,在应用于神经网络的情况下,能够抑制温度变化的神经网络的性能降低。
另外,第一实施方式的积和运算器1中,如上述,磁化自由层的磁化方向与磁化固定层的磁化方向反向平行的参考元件10AMAX、磁化自由层的磁化方向与磁化固定层的磁化方向平行的参考元件10AMIN包括于积运算部10。
因此,根据第一实施方式的积和运算器1,能够抑制在积和运算器1为动作模式的情况下温度变化引起的神经网络的性能降低,并且能够抑制在积和运算器1为反向传播模式的情况下不能执行期望的反向传播学习的可能性。
另外,第一实施方式的积和运算器1中,如上述,包括比较来自积运算元件10AA、10AB、10BA~10BD的输出与来自参考元件10AMAX、10AMIN的输出的比较部14。
因此,根据第一实施方式的积和运算器1,与不比较来自积运算元件10AA、10AB、10BA~10BD的输出与来自参考元件10AMAX、10AMIN的输出的情况相比,能够抑制温度变化引起的神经网络的性能降低。
另外,第一实施方式的积和运算器1中,如上述,包括根据温度变化校正积运算元件10AA、10AB、10BA~10BD的电阻值的校正部15。
因此,根据第一实施方式的积和运算器1,与不根据温度变化校正积运算元件10AA、10AB、10BA~10BD的电阻值相比,能够抑制温度变化引起的神经网络的性能降低。
<第二实施方式>
以下,对本发明的积和运算器的第二实施方式进行说明。
第二实施方式的积和运算器1除后述的点之外,与上述的第一实施方式的积和运算器1同样地构成。因此,根据第二实施方式的积和运算器1,除了后述的点之外,能够实现与上述的第一实施方式的积和运算器1一样的效果。
图7是表示第二实施方式的积和运算器1的一部分结构的一例的图。
图1所示的例子中,积运算部10不包括参考列,但图7所示的例子中,积运算部10包括参考列10MAX、10MIN。
图7所示的例子中,列10A除了积运算元件10AA、10AB之外,还包括积运算元件10AC、10AD。积运算元件10AC、10AD与积运算元件10AA、10AB同样地构成,并与积运算元件10AA、10AB同样地进行积运算。
参考列10MAX不包括积运算元件,而包括参考元件10MAXA、10MAXB、10MAXC、10MAXD。参考元件10MAXA、10MAXB、10MAXC、10MAXD与图1所示的参考元件10AMAX同样地构成,用于积和运算器1的动作时及反向传播学习时的积运算元件10AA~10AD、10BA~10BD的电阻值的校正。
参考列10MIN不包括积运算元件,而包括参考元件10MINA、10MINB、10MINC、10MIND。参考元件10MINA、10MINB、10MINC、10MIND与图1所示的参考元件10AMIN同样地构成,用于积和运算器1的动作时及反向传播学习时的积运算元件10AA~10AD、10BA~10BD的电阻值的校正。
图7所示的例子中,积运算元件10AC的读出端子连接于线L31。积运算元件10AC的写入端子连接于线L32。
积运算元件10AD的读出端子连接于线L41。积运算元件10AD的写入端子连接于线L42。
积运算元件10AC、10AD的共用端子连接于线M1。
参考元件10MAXA、10MINA的读出端子连接于线L11。参考元件10MAXA、10MINA的写入端子连接于线L12。
参考元件10MAXB、10MINB的读出端子连接于线L21。参考元件10MAXB、10MINB的写入端子连接于线L22。
参考元件10MAXC、10MINC的读出端子连接于线L31。参考元件10MAXC、10MINC的写入端子连接于线L32。
参考元件10MAXD、10MIND的读出端子连接于线L41。参考元件10MAXD、10MIND的写入端子连接于线L42。
参考元件10MAXA、10MAXB、10MAXC、10MAXD的共用端子连接于线M3。参考元件10MINA、10MINB、10MINC、10MIND的共用端子连接于线M4。
图1所示的例子中,和运算部11包括输出检测器11A、11B,但图7所示的例子中,和运算部11包括输出检测器11A、11B和参考输出检测器11MAX、11MIN。参考输出检测器11MAX配置于线M3。参考输出检测器11MIN配置于线M4。
图7所示的例子中,在第一输入部12A对参考元件10MAXA输入信号,第二输入部12B对参考元件10MAXB输入信号,第三输入部12C对参考元件10MAXC输入信号,且第四输入部12D对参考元件10MAXD输入信号的情况下,参考输出检测器11MAX检测来自参考元件10MAXA的顺方向的输出、来自参考元件10MAXB的顺方向的输出、来自参考元件10MAXC的顺方向的输出、来自参考元件10MAXD的顺方向的输出的合计值。
例如,在第一输入部12A对参考元件10MAXA输入信号,第二输入部12B对参考元件10MAXB没有输入信号,第三输入部12C对参考元件10MAXC没有输入信号,且第四输入部12D对参考元件10MAXD没有输入信号的情况下,参考输出检测器11MAX检测来自参考元件10MAXA的顺方向的输出。
图7所示的例子中,在第一输入部12A接通反方向电流路径,第二输入部12B接通反方向电流路径,第三输入部12C接通反方向电流路径,且第四输入部12D接通反方向电流路径的情况下,参考输出检测器11MIN检测在参考元件10MINA流通的反方向的输出、在参考元件10MINB流通的反方向的输出、在参考元件10MINC流通的反方向的输出、在参考元件10MIND流通的反方向的输出的合计值。
例如,在第一输入部12A断开反方向电流路径,第二输入部12B接通反方向电流路径,第三输入部12C断开反方向电流路径,且第四输入部12D断开反方向电流路径的情况下,参考输出检测器11MIN检测在参考元件10MINB流通的反方向的输出。
另外,为了读出反方向电流路径,输入部12与和运算部11也可以在输入部12还包括用于反方向电流路径的检测电路、在和运算部11还包括用于反方向电流路径的输入部。
第二实施方式的积和运算器1中,与第一实施方式的积和运算器1同样执行图6所示的处理。
第二实施方式的积和运算器1包括从输入部12向输出检测器11A、11B及参考输出检测器11MAX、11MIN流通电流的动作模式和从输出检测器11A、11B及参考输出检测器11MAX、11MIN向输入部12流通电流的反向传播模式。
在积和运算器1为动作模式的情况下,步骤S10中,故障探测部13基于由参考输出检测器11MAX检测的来自参考列10MAX的顺方向的输出,设定由输出检测器11A检测的来自积运算元件10AA~10AD的顺方向的输出的合计值的正常范围和由输出检测器11B检测的来自积运算元件10BA~10BD的顺方向的输出的合计值的正常范围。
接着,步骤S11中,输出检测器11A检测来自积运算元件10AA~10AD的顺方向的输出的合计值。另外,输出检测器11B检测来自积运算元件10BA~10BD的顺方向的输出的合计值。
接着,步骤S12中,故障探测部13判断多个积运算元件10AA~10AD、10BA~10BD有无故障。详细而言,故障探测部13基于由输出检测器11A检测的来自积运算元件10AA~10AD的顺方向的输出的合计值、来自积运算元件10AA~10AD的顺方向的输出的合计值的正常范围,判断多个积运算元件10AA~10AD中是否包含故障的积运算元件。在由输出检测器11A检测的来自积运算元件10AA~10AD的顺方向的输出的合计值超过来自积运算元件10AA~10AD的顺方向的输出的合计值的正常范围的情况下,故障探测部13判断为多个积运算元件10AA~AD中包含故障的积运算元件,并结束图6所示的程序。
另外,步骤S12中,故障探测部13基于由输出检测器11B检测的来自积运算元件10BA~10BD的顺方向的输出的合计值和来自积运算元件10BA~10BD的顺方向的输出的合计值的正常范围,判断多个积运算元件10BA~10BD中是否包含故障的积运算元件。在由输出检测器11B检测的来自积运算元件10BA~10BD的顺方向的输出的合计值超过来自积运算元件10BA~10BD的顺方向的输出的合计值的正常范围的情况下,故障探测部13判断为多个积运算元件10BA~BD中包含故障的积运算元件,并结束图6所示的程序。
步骤S12中,在故障探测部13判断为多个积运算元件10AA~10AD、10BA~10BD未故障的情况下,进入步骤S13。
步骤S13中,比较部14比较由输出检测器11A检测的来自积运算元件10AA~10AD的顺方向的输出的合计值、由参考输出检测器11MAX、MIN检测的来自参考列10MAX、MIN的顺方向的输出。
步骤S13中,比较部14也可以比较由输出检测器11B检测的来自积运算元件10BA~10BD的顺方向的输出的合计值、由参考输出检测器11MAX、MIN检测的来自参考列10MAX、MIN的顺方向的输出。
接着,步骤S14中,校正部15基于比较部14的比较结果,校正积运算元件10AA~10AD、10BA~10BD的顺方向的电阻值时,判定神经形态器件100的判别功能是否可能降低。如果不校正积运算元件10AA~10AD、10BA~10BD的顺方向的电阻值,则在神经形态器件100的判别功能可能降低的情况下,校正部15校正积运算元件10AA~10AD、10BA~10BD的顺方向的电阻值。
详细而言,校正部15基于由输出检测器11A检测的来自积运算元件10AA~10AD的顺方向的输出的合计值、由参考输出检测器11MAX、MIN检测的来自参考列10MAX、MIN的顺方向的输出,算出积运算元件10AA~10AD的依赖于温度的电阻值变化量。另外,校正部15基于该电阻值变化量,校正积运算元件10AA~10AD的顺方向的电阻值。
具体而言,在由于温度上升,积运算元件10AA~10AD的顺方向的电阻值比预定的(例如标准温度的)顺方向的电阻值变低的情况下,校正部15进行增加积运算元件10AA~10AD的顺方向的电阻值的校正。另外,在由于温度降低,积运算元件10AA~10AD的顺方向的电阻值比预定的顺方向的电阻值变高的情况下,校正部15进行减少积运算元件10AA~10AD的顺方向的电阻值的校正。同样,校正部15校正积运算元件10BA~10BD的顺方向的电阻值。
在积和运算器1为反向传播模式的情况下,步骤S10中,故障探测部13基于由参考输出检测器11MIN检测的在参考列10MIN流通的反方向的输出,设定由输出检测器11A检测的在积运算元件10AA~10AD流通的反方向的输出的合计值的正常范围、由输出检测器11B检测的在积运算元件10BA~10BD流通的反方向的输出的合计值的正常范围。
接着,步骤S11中,输出检测器11A检测在积运算元件10AA~10AD流通的反方向的输出的合计值。另外,输出检测器11B检测在积运算元件10BA~10BD流通的反方向的输出的合计值。
接着,步骤S12中,故障探测部13判断多个积运算元件10AA~10AD、10BA~10BD有无故障。详细而言,故障探测部13基于由输出检测器11A检测的在积运算元件10AA~10AD流通的反方向的输出的合计值、在积运算元件10AA~10AD流通的反方向的输出的合计值的正常范围,判断多个积运算元件10AA~10AD中是否包含故障的积运算元件。在由输出检测器11A检测的在积运算元件10AA~10AD流通的反方向的输出的合计值超过在积运算元件10AA~10AD流通的反方向的输出的合计值的正常范围的情况下,故障探测部13判断为多个积运算元件10AA~AD中包含故障的积运算元件,并结束图6所示的程序。
另外,步骤S12中,故障探测部13基于由输出检测器11B检测的在积运算元件10BA~10BD流通的反方向的输出的合计值、在积运算元件10BA~10BD流通的反方向的输出的合计值的正常范围,判断多个积运算元件10BA~10BD中是否包含故障的积运算元件。在由输出检测器11B检测的在积运算元件10BA~10BD流通的反方向的输出的合计值超过在积运算元件10BA~10BD流通的反方向的输出的合计值的正常范围的情况下,故障探测部13判断为多个积运算元件10BA~BD中包含故障的积运算元件,并结束图6所示的程序。
步骤S12中,在故障探测部13判断为多个积运算元件10AA~10AD、10BA~10BD未故障的情况下,进入步骤S13。
步骤S13中,比较部14将由输出检测器11A检测的在积运算元件10AA~10AD流通的反方向的输出的合计值与由参考输出检测器11MIN检测的在参考列10MIN流通的反方向的输出进行比较。
步骤S13中,比较部14也可以将由输出检测器11B检测的在积运算元件10BA~10BD流通的反方向的输出的合计值与由参考输出检测器11MIN检测的在参考列10MIN流通的反方向的输出进行比较。
接着,步骤S14中,校正部15基于比较部14的比较结果,不校正积运算元件10AA~10AD、10BA~10BD的反方向的电阻值时,判定神经形态器件100的判别功能是否可能降低(详细而言,可能不能执行期望的反向传播学习)。如果不校正积运算元件10AA~10AD、10BA~10BD的反方向的电阻值,则在神经形态器件100的判别功能可能降低的情况下(在可能不能执行期望的反向传播学习的情况下),校正部15校正积运算元件10AA~10AD、10BA~10BD的反方向的电阻值。
详细而言,校正部15基于由输出检测器11A检测的在积运算元件10AA~10AD流通的反方向的输出的合计值、由参考输出检测器11MIN检测的在参考列10MIN流通的反方向的输出,算出积运算元件10AA~10AD的依赖于温度的电阻值变化量。另外,校正部15基于该电阻值变化量,校正积运算元件10AA~10AD的反方向的电阻值。
具体而言,与积和运算器1为动作模式的情况同样,在由于温度上升,积运算元件10AA~10AD的反方向的电阻值比期望的反方向的电阻值变低的情况下,校正部15进行增加积运算元件10AA~10AD的反方向的电阻值的校正。另外,在由于温度降低,积运算元件10AA~10AD的反方向的电阻值比期望的反方向的电阻值变高的情况下,校正部15进行减少积运算元件10AA~10AD的反方向的电阻值的校正。同样,校正部15校正积运算元件10BA~10BD的反方向的电阻值。
如上所述,第二实施方式的积和运算器1中,包括具有参考元件10MAXA~10MAXD的参考列10MAX和具有参考元件10MINA~10MIND的参考列10MIN。
因此,根据第二实施方式的积和运算器1,在应用于神经网络的情况下,通过使用参考列10MAX、10MIN,能够抑制温度变化引起的神经网络的性能降低。
另外,第二实施方式的积和运算器1中,如上述,包括检测来自参考列10MAX的输出的参考输出检测器11MAX和检测来自参考列10MIN的输出的参考输出检测器11MIN。
因此,根据第二实施方式的积和运算器1,在应用于神经网络的情况下,通过使用参考输出检测器11MAX、11MIN,能够抑制温度变化引起的神经网络的性能降低。
另外,第二实施方式的积和运算器1中,如上述,基于由参考输出检测器11MAX、11MIN检测的来自参考列10MAX、10MIN各自的输出,设定由输出检测器11A检测的来自积运算元件10AA~10AD的输出的合计值的正常范围、由输出检测器11B检测的来自积运算元件10BA~10BD的输出的合计值的正常范围。另外,基于由输出检测器11A检测的来自积运算元件10AA~10AD的输出的合计值和正常范围,判断积运算元件10AA~10AD有无故障,并基于由输出检测器11B检测的来自积运算元件10BA~10BD的输出的合计值和正常范围,判断积运算元件10BA~10BD有无故障。
因此,根据第二实施方式的积和运算器1,在应用于神经网络的情况下,不判断积运算元件10AA~10AD、10BA~10BD有无故障,能够抑制神经网络的性能可能降低。
另外,第二实施方式的积和运算器1中,如上述,在积和运算器1为动作模式的情况下,比较由输出检测器11A检测的来自积运算元件10AA~10AD的输出的合计值、与由参考输出检测器11MAX检测的来自参考列10MAX的输出。另外,基于由输出检测器11A检测的来自积运算元件10AA~10AD的输出的合计值和由参考输出检测器11MAX检测的来自参考列10MAX的输出,算出积运算元件10AA~10AD、10BA~10BD的依赖于温度的电阻值变化量,并校正积运算元件10AA~10AD、10BA~10BD的电阻值。
因此,根据第二实施方式的积和运算器1,在应用于神经网络的情况下,与不校正积运算元件10AA~10AD、10BA~10BD的电阻值的情况相比,能够抑制温度变化引起的神经网络的性能降低。
另外,第二实施方式的积和运算器1中,如上述,在积和运算器1为反向传播模式的情况下,比较由输出检测器11A检测的来自积运算元件10AA~10AD的输出的合计值与由参考输出检测器11MIN检测的来自参考列10MIN的输出。另外,基于由输出检测器11A检测的来自积运算元件10AA~10AD的输出的合计值和由参考输出检测器11MIN检测的来自参考列10MIN的输出,算出积运算元件10AA~10AD、10BA~10BD的依赖于温度的电阻值变化量,并校正积运算元件10AA~10AD、10BA~10BD的电阻值。
因此,根据第二实施方式的积和运算器1,在应用于神经网络的情况下,与不校正积运算元件10AA~10AD、10BA~10BD的电阻值的情况相比,能够抑制由于温度变化可能不能执行期望的反向传播学习。
另外,第二实施方式的积和运算器1中,如上述,包括积和运算器1的动作时的积运算元件10AA~10AD、10BA~10BD的电阻值的校正中使用的参考列10MAX。
因此,根据第二实施方式的积和运算器1,与不包括参考列10MAX的情况相比,能够容易进行积和运算器1的动作时的积运算元件10AA~10AD、10BA~10BD有无故障的判断。
另外,第二实施方式的积和运算器1中,如上述,包括积和运算器1的反向传播学习时的积运算元件10AA~10AD、10BA~10BD的电阻值的校正中使用的参考列10MIN。
因此,根据第二实施方式的积和运算器1,与不包括参考列10MIN的情况相比,能够容易进行积和运算器1的反向传播学习时的积运算元件10AA~10AD、10BA~10BD有无故障的判断。
<第三实施方式>
以下,对本发明的积和运算器的第三实施方式进行说明。
第三实施方式的积和运算器1除了后述的点之外,与上述的第一实施方式的积和运算器1一样地构成。因此,根据第三实施方式的积和运算器1,除了后述的点之外,能够实现与上述的第一实施方式的积和运算器1同样的效果。
图8是表示第三实施方式的积和运算器1的一部分结构的一例的图。
图1所示的例子中,列10B包括积运算元件10BC、10BD,但图8所示的例子中,列10B不包括积运算元件10BC、10BD,而包括参考元件10BMAX、10BMIN。
图8所示的例子中,参考元件10BMAX与参考元件10AMAX一样地构成,能够用于积和运算器1的动作时的积运算元件10AA、10AB、10BA、10BB的电阻值的校正。
参考元件10BMIN与参考元件10AMIN同样地构成,能够用于积和运算器1的反向传播学习时的积运算元件10AA、10AB、10BA、10BB的电阻值的校正。
图8所示的例子中,参考元件10BMAX的读出端子连接于线L31。参考元件10BMAX的写入端子连接于线L32。
参考元件10BMIN的读出端子连接于线L41。参考元件10BMIN的写入端子连接于线L42。
参考元件10BMAX、10BMIN的共用端子连接于线M2。
图8所示的例子中,第一输入部12A对积运算元件10BA没有输入信号,第二输入部12B对积运算元件10BB没有输入信号,参考输入部12MAX对参考元件10BMAX输入信号,参考输入部12MIN对参考元件10BMIN没有输入信号的情况下,输出检测器11B检测来自参考元件10BMAX的顺方向的输出。
例如,在第一输入部12A断开反方向电流路径,第二输入部12B断开反方向电流路径,参考输入部12MAX断开反方向电流路径,且参考输入部12MIN接通反方向电流路径的情况下,输出检测器11B检测在参考元件10BMIN流通的反方向的输出。
例如,通过将用于实现以上所示的实施方式的各装置(例如,积和运算器1)的功能的程序记录于计算机可读取的记录介质(存储介质),使计算机系统读入并执行记录于该记录介质的程序,由此,也可以进行处理。
此外,这里所说的“计算机系统”也可以包含操作系统(OS:Operating System)或周边设备等的硬件。
另外,“计算机可读取的记录介质”是指软盘、光盘、ROM(Read Only Memory)、闪光存储器等的可写入的非易失性存储器、DVD(Digital Versatile Disc)等的便携式介质、内置于计算机系统的硬盘等的存储装置。另外,作为记录介质,例如也可以是临时性地记录数据的记录介质。
另外,“计算机可读取的记录介质”还包含经由因特网等的网络或电话线等的通讯线发送程序时的成为服务器或客户端的计算机系统内部的挥发性存储器(例如DRAM(Dynamic Random Access Memory))那样将程序保持一定时间的介质。
另外,上述的程序也可以从将该程序储存于存储装置等的计算机系统,经由传送介质,或通过传送介质中的传送波向其它计算机系统传送。在此,传送程序的“传送介质”是指因特网等的网络(通信网)或电话线等的通讯线(通信线)那样具有传送信息的功能的介质。
另外,上述的程序也可以是用于实现上述的功能的一部分的程序。另外,上述的程序也可以是使上述的功能与已经记录于计算机系统的程序的组合而能够实现的、所谓的差分文件(差分程序)。
计算机中,例如CPU(Central Processing Unit)等的处理器读出并执行存储于存储器的程序。
以上,参照附图详细叙述本发明的实施方式,但具体的结构不限于该实施方式,能够在不脱离本发明宗旨的范围内进行各种变形及置换。也可以组合上述的各实施方式所记载的结构。
产业上的可利用性
根据本发明,能够提供在应用于神经网络的情况下,能够抑制来自温度变化或电流方向的元件特性的变动引起的神经网络的性能降低的积和运算器、神经形态器件以及积和运算器的使用方法。
符号说明
1 积和运算器
2 积和运算器
10 积运算部
10A 列
10AA 积运算元件
10AB 积运算元件
10AC 积运算元件
10AD 积运算元件
10AMAX 参考元件
10AMIN 参考元件
10B 列
10BA 积运算元件
10BB 积运算元件
10BC 积运算元件
10BD 积运算元件
10BMAX 参考元件
10BMIN 参考元件
10MAX 参考列
10MAXA 参考元件
10MAXB 参考元件
10MAXC 参考元件
10MAXD 参考元件
10MIN 参考列
10MINA 参考元件
10MINB 参考元件
10MINC 参考元件
10MIND 参考元件
11 和运算部
11A 输出检测器
11B 输出检测器
11MAX 参考输出检测器
11MIN 参考输出检测器
12 输入部
12A 第一输入部
12B 第二输入部
12C 第三输入部
12D 第四输入部
12MAX 参考输入部
12MIN 参考输入部
13 故障探测部
14 比较部
15 校正部
100 神经形态器件
101 输入层
101A、101B、101C、101D 节点
102 隐藏层
102A、102B、102C 节点
103 输出层
103A、103B、103C 节点
A 磁阻效应元件
AA 写入端子
AB 共用端子
AC 读出端子
A1 磁化自由层
A11 第一区域
A12 第二区域
A2 磁化固定层
A3 非磁性层
DW 磁壁
L11 线
L12 线
L21 线
L22 线
L31 线
L32 线
L41 线
L42 线
M1 线
M2 线
M3 线
M4 线

Claims (12)

1.一种积和运算器,其特征在于:
包括积运算部以及和运算部,
所述积运算部包括多个积运算元件和至少一个参考元件,
所述多个积运算元件、所述至少一个参考元件分别为电阻变化元件,
所述和运算部至少包括检测来自所述多个积运算元件的输出的合计值的输出检测器,
所述多个积运算元件分别为磁阻效应元件,所述磁阻效应元件包括:具有磁壁的第一磁化自由层;磁化方向被固定的第一磁化固定层;和由所述第一磁化自由层与所述第一磁化固定层夹持的第一非磁性层,
所述至少一个参考元件为参考磁阻效应元件,所述参考磁阻效应元件包括:不具有磁壁的第二磁化自由层或具有磁壁的第三磁化自由层;磁化方向被固定的第二磁化固定层;和由所述第二磁化固定层与所述第二磁化自由层或所述第三磁化自由层夹持的第二非磁性层,并且,所述第二磁化自由层的一个磁化方向或所述第三磁化自由层的多个磁化方向各自与所述第二磁化固定层的磁化方向所成的相对角度是固定的。
2.根据权利要求1所述的积和运算器,其特征在于:
所述至少一个参考元件包含以下参考元件中的任一者:
所述第二磁化自由层的所述一个磁化方向与所述第二磁化固定层的磁化方向为反向平行的第一参考元件;
所述第二磁化自由层的所述一个磁化方向与所述第二磁化固定层的磁化方向平行的具有所述第二磁化固定层的第二参考元件;
具有所述第三磁化自由层且设定成最大电阻值的第三参考元件;和
具有第三磁化自由层且设定成最小电阻值的第四参考元件。
3.根据权利要求1所述的积和运算器,其特征在于:
所述至少一个参考元件包含:
所述第二磁化自由层的所述一个磁化方向与所述第二磁化固定层的磁化方向为反向平行的第一参考元件或具有所述第三磁化自由层且设定成最大电阻值的第三参考元件;和
所述第二磁化自由层的所述一个磁化方向与所述第二磁化固定层的磁化方向平行的具有所述第二磁化固定层的第二参考元件或具有所述第三磁化自由层且设定成最小电阻值的第四参考元件。
4.根据权利要求2或3所述的积和运算器,其特征在于:
还包括比较部,其将来自所述多个积运算元件的输出与来自所述至少一个参考元件的输出进行比较。
5.根据权利要求1至3中任一项所述的积和运算器,其特征在于:
还包括至少一个参考列,
所述至少一个参考列不包含所述多个积运算元件,包含所述至少一个参考元件。
6.根据权利要求5所述的积和运算器,其特征在于:
还包括至少一个参考输出检测器,
所述至少一个参考输出检测器分别检测来自所述至少一个参考列各自的输出。
7.根据权利要求5所述的积和运算器,其特征在于:
所述至少一个参考列包含动作用参考列和反向传播用参考列。
8.根据权利要求6所述的积和运算器,其特征在于:
所述至少一个参考列包含动作用参考列和反向传播用参考列。
9.一种积和运算器的使用方法,是权利要求6所述的积和运算器的使用方法,其特征在于:
所述积和运算器还包括故障探测部,
所述积和运算器的使用方法包含:
所述故障探测部基于由所述至少一个参考输出检测器检测出的来自所述至少一个参考列各自的输出,对由所述输出检测器检测出的来自所述多个积运算元件的输出的合计值的正常范围进行设定的正常范围设定步骤;和
所述故障探测部基于由所述输出检测器检测出的来自所述多个积运算元件的输出的合计值和所述正常范围,判断所述多个积运算元件有无故障的故障有无判断步骤。
10.根据权利要求9所述的积和运算器的使用方法,其特征在于:
所述积和运算器还包括比较部,
所述积和运算器的使用方法还包含:所述比较部将由所述输出检测器检测出的来自所述多个积运算元件的输出的合计值与由所述至少一个参考输出检测器检测出的来自所述至少一个参考列各自的输出进行比较的比较步骤。
11.根据权利要求10所述的积和运算器的使用方法,其特征在于:
所述积和运算器还包括校正部,
所述积和运算器的使用方法还包含:所述校正部基于由所述输出检测器检测出的来自所述多个积运算元件的输出的合计值和由所述至少一个参考输出检测器检测出的来自所述至少一个参考列各自的输出,计算所述多个积运算元件的依赖于温度的电阻值变化量,并校正所述多个积运算元件的电阻值的校正步骤。
12.一种神经形态器件,其包括权利要求1~8中任一项所述的积和运算器。
CN201980005310.3A 2018-03-16 2019-02-27 积和运算器、神经形态器件以及积和运算器的使用方法 Active CN111279351B (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
JP2018049766 2018-03-16
JP2018-049766 2018-03-16
PCT/JP2019/007557 WO2019176540A1 (ja) 2018-03-16 2019-02-27 積和演算器、ニューロモーフィックデバイスおよび積和演算器の使用方法

Publications (2)

Publication Number Publication Date
CN111279351A CN111279351A (zh) 2020-06-12
CN111279351B true CN111279351B (zh) 2023-08-25

Family

ID=67908141

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201980005310.3A Active CN111279351B (zh) 2018-03-16 2019-02-27 积和运算器、神经形态器件以及积和运算器的使用方法

Country Status (5)

Country Link
US (1) US11429348B2 (zh)
EP (1) EP3767517B1 (zh)
JP (1) JP6721136B2 (zh)
CN (1) CN111279351B (zh)
WO (1) WO2019176540A1 (zh)

Families Citing this family (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11138497B2 (en) 2018-07-17 2021-10-05 Macronix International Co., Ltd In-memory computing devices for neural networks
US11636325B2 (en) 2018-10-24 2023-04-25 Macronix International Co., Ltd. In-memory data pooling for machine learning
US11562229B2 (en) 2018-11-30 2023-01-24 Macronix International Co., Ltd. Convolution accelerator using in-memory computation
US11934480B2 (en) 2018-12-18 2024-03-19 Macronix International Co., Ltd. NAND block architecture for in-memory multiply-and-accumulate operations
US11132176B2 (en) * 2019-03-20 2021-09-28 Macronix International Co., Ltd. Non-volatile computing method in flash memory
WO2021176656A1 (ja) * 2020-03-05 2021-09-10 Tdk株式会社 磁気記録アレイ、ニューロモルフィックデバイスおよび磁気記録アレイの制御方法
CN113614920A (zh) * 2020-03-05 2021-11-05 Tdk株式会社 磁记录阵列
WO2022003957A1 (ja) * 2020-07-03 2022-01-06 Tdk株式会社 集積装置及びニューロモーフィックデバイス
US11840757B2 (en) * 2020-07-08 2023-12-12 Tdk Corporation Film deposition system, factory system, and method of depositing film on wafer
JP2022059919A (ja) 2020-10-02 2022-04-14 Tdk株式会社 集積装置及びニューロモーフィックデバイス
JP7215645B2 (ja) * 2020-10-23 2023-01-31 Tdk株式会社 ニューロモーフィックデバイス
KR20220136750A (ko) * 2021-04-01 2022-10-11 삼성전자주식회사 사용자 발화를 처리하는 전자 장치, 및 그 전자 장치의 제어 방법
WO2023166707A1 (ja) * 2022-03-04 2023-09-07 Tdk株式会社 ニューロモーフィックデバイス

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1720027A1 (en) * 2004-02-19 2006-11-08 Mitsubishi Denki Kabushiki Kaisha Magnetic field detector, and current detection device, position detection device and rotation detection devices using the magnetic field detector
TW200901192A (en) * 2007-06-29 2009-01-01 Ind Tech Res Inst Simulating circuit for simulating a toggle magnetic tunneling junction element
JP2009282782A (ja) * 2008-05-22 2009-12-03 Sharp Corp 抵抗変化型可変抵抗素子を備えた積演算装置、及び積和演算装置、これらの装置を各ニューロン素子に備えるニューラルネットワーク、並びに積演算方法
JP2010219104A (ja) * 2009-03-13 2010-09-30 Nec Corp 磁気メモリ素子、磁気メモリ、及びその製造方法
CN103430186A (zh) * 2012-01-20 2013-12-04 松下电器产业株式会社 神经网络电路的学习方法
CN107076808A (zh) * 2014-09-26 2017-08-18 旭化成微电子株式会社 磁传感器

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2008072421A1 (ja) * 2006-12-12 2008-06-19 Nec Corporation 磁気抵抗効果素子及びmram
US8565010B2 (en) * 2011-02-16 2013-10-22 Avalanche Technology, Inc. Magnetic random access memory with field compensating layer and multi-level cell
JP2016004589A (ja) * 2014-06-13 2016-01-12 ソニー株式会社 抵抗変化型メモリ装置及び半導体装置
WO2017183573A1 (ja) * 2016-04-21 2017-10-26 Tdk株式会社 磁壁利用型アナログメモリ素子および磁壁利用型アナログメモリ
EP3825925B1 (en) 2016-08-19 2023-11-08 Sony Group Corporation Multiply-accumulate operation device
JP2018049766A (ja) 2016-09-23 2018-03-29 矢崎総業株式会社 コネクタおよびコネクタの組立方法

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1720027A1 (en) * 2004-02-19 2006-11-08 Mitsubishi Denki Kabushiki Kaisha Magnetic field detector, and current detection device, position detection device and rotation detection devices using the magnetic field detector
TW200901192A (en) * 2007-06-29 2009-01-01 Ind Tech Res Inst Simulating circuit for simulating a toggle magnetic tunneling junction element
JP2009282782A (ja) * 2008-05-22 2009-12-03 Sharp Corp 抵抗変化型可変抵抗素子を備えた積演算装置、及び積和演算装置、これらの装置を各ニューロン素子に備えるニューラルネットワーク、並びに積演算方法
JP2010219104A (ja) * 2009-03-13 2010-09-30 Nec Corp 磁気メモリ素子、磁気メモリ、及びその製造方法
CN103430186A (zh) * 2012-01-20 2013-12-04 松下电器产业株式会社 神经网络电路的学习方法
CN107076808A (zh) * 2014-09-26 2017-08-18 旭化成微电子株式会社 磁传感器

Also Published As

Publication number Publication date
JP6721136B2 (ja) 2020-07-08
CN111279351A (zh) 2020-06-12
EP3767517A1 (en) 2021-01-20
JPWO2019176540A1 (ja) 2020-04-16
US11429348B2 (en) 2022-08-30
EP3767517B1 (en) 2022-12-28
EP3767517A4 (en) 2021-11-24
WO2019176540A1 (ja) 2019-09-19
US20200334015A1 (en) 2020-10-22

Similar Documents

Publication Publication Date Title
CN111279351B (zh) 积和运算器、神经形态器件以及积和运算器的使用方法
US10892009B2 (en) Magnetic wall utilization-analog memory element and magnetic wall utilization analog memory
JPWO2018189964A1 (ja) 磁壁利用型アナログメモリ素子、磁壁利用型アナログメモリ、不揮発性ロジック回路及び磁気ニューロ素子
CN1445781A (zh) 具有双隧道结的磁阻存储器件
CN111512311B (zh) 积和运算器、神经形态器件以及积和运算器的故障判断方法
EP1473735A1 (en) Dual-junction magnetic memory device and read method
JP6819843B1 (ja) 磁気記録アレイ、ニューロモルフィックデバイスおよび磁気記録アレイの制御方法
CN111512312B (zh) 积和运算器、神经形态器件及积和运算器的使用方法
JP6819799B2 (ja) 積和演算器の使用方法
US8514614B2 (en) Magnetic memory
CN111512313B (zh) 积和运算器、神经形态器件及积和运算器的使用方法
US10896708B2 (en) Magnetic memory device
US20160071776A1 (en) Manufacturing method of magnetic memory device

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant