KR20200024419A - Neuromorphic device using 3d crossbar memory - Google Patents

Neuromorphic device using 3d crossbar memory Download PDF

Info

Publication number
KR20200024419A
KR20200024419A KR1020180101061A KR20180101061A KR20200024419A KR 20200024419 A KR20200024419 A KR 20200024419A KR 1020180101061 A KR1020180101061 A KR 1020180101061A KR 20180101061 A KR20180101061 A KR 20180101061A KR 20200024419 A KR20200024419 A KR 20200024419A
Authority
KR
South Korea
Prior art keywords
memory
memory layer
data
layer
synaptic
Prior art date
Application number
KR1020180101061A
Other languages
Korean (ko)
Other versions
KR102114356B1 (en
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 이화여자대학교 산학협력단
Priority to KR1020180101061A priority Critical patent/KR102114356B1/en
Publication of KR20200024419A publication Critical patent/KR20200024419A/en
Application granted granted Critical
Publication of KR102114356B1 publication Critical patent/KR102114356B1/en

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/06Physical realisation, i.e. hardware implementation of neural networks, neurons or parts of neurons
    • G06N3/063Physical realisation, i.e. hardware implementation of neural networks, neurons or parts of neurons using electronic means
    • H01L27/11551
    • HELECTRICITY
    • H10SEMICONDUCTOR DEVICES; ELECTRIC SOLID-STATE DEVICES NOT OTHERWISE PROVIDED FOR
    • H10BELECTRONIC MEMORY DEVICES
    • H10B41/00Electrically erasable-and-programmable ROM [EEPROM] devices comprising floating gates
    • H10B41/20Electrically erasable-and-programmable ROM [EEPROM] devices comprising floating gates characterised by three-dimensional arrangements, e.g. with cells on different height levels

Landscapes

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

Abstract

The present invention relates to a neuromorphic device using a 3D crossbar memory structure, which is capable of implementing various kinds of artificial neural network structures. According to one embodiment of the present invention, the neuromorphic device comprises: a memory device having a 3D crossbar memory structure and formed by sequentially connecting a plurality of memory layers; and a control unit controlling the operation of the memory device, storing weight data in an n^th memory layer (n is a natural number), applying input data to the n^th memory layer to output an operation result of the input data and the weight data as output data, and inputting the corresponding output data to an (n+1)^th memory layer adjacent to the n^th memory layer as input data. Each memory layer comprises: a plurality of wordlines to which the input data are applied; and connection bitlines which are coupled to each word line with a resistive material layer interposed therebetween and outputting the output data, wherein the weight data is stored in the resistive material layer.

Description

3차원 크로스바 메모리 구조를 이용한 뉴로 모픽 소자{NEUROMORPHIC DEVICE USING 3D CROSSBAR MEMORY}Neuromorphic device using three-dimensional crossbar memory structure {NEUROMORPHIC DEVICE USING 3D CROSSBAR MEMORY}

본 발명은 3차원 크로스바 메모리 구조를 이용한 뉴로 모픽 소자에 대한 것이다. The present invention relates to a neuromorphic device using a three-dimensional crossbar memory structure.

최근 들어 인공 신경망에 대한 관심이 증가함에 따라, 이를 하드웨어적으로 구현한 뉴로 모픽 소자에 대한 연구가 활발하게 진행되고 있다.Recently, as interest in artificial neural networks increases, studies on neuromorphic devices that implement the hardware have been actively conducted.

뉴로 모픽 소자는 생체의 뇌신경계를 이루는 뉴런과 시냅스의 구조를 모방한 것으로, 대체로 시냅스 전에 위치한 프리 뉴런(Pre neuron), 시냅스, 시냅스 후에 위치한 포스트 뉴런(Post neuron)의 구조를 갖는다. 일반적인 뉴로 모픽 소자의 경우 입력부, 시냅스 어레이, 출력부로 이루어지며, 입력부는 프리 뉴런, 출력부는 포스트 뉴런으로서 기능하고, 시냅스 어레이는 시냅스로서 기능한다.Neuromorphic devices mimic the structures of neurons and synapses that make up the nervous system of the living body, and generally have a structure of pre neurons located before synapses, synapses, and post neurons located after synapses. In the case of a typical neuromorphic device, an input part, a synapse array, and an output part are provided. The input part is a pre-neuron, the output part is a post-neuron, and the synapse array is a synapse.

다만, 종래에 알려진 뉴로 모픽 소자는 하드웨어적으로 고정된 구조를 갖기 때문에 최근에 연구되고 있는 다양한 구조의 인경 신경망을 적절하게 조절할 수 없다. 또한, 학습 알고리즘 역시 대표적으로 알려지는 지도 학습 알고리즘과 자율 학습 알고리즘을 사용자가 선택하여 적용하기 어려운 구조를 갖는다. However, the neuromorphic device known in the art has a fixed structure in hardware, and thus cannot properly adjust the artificial neural networks of various structures that have been recently studied. In addition, the learning algorithm also has a structure in which it is difficult for a user to select and apply a representative learning algorithm and an autonomous learning algorithm.

이에, 본 발명에서는 시냅스 어레이를 모사한 메모리 소자에 대하여, 전방향 인공 신경망 또는 순환 인공 신경망 등을 선택할 수 있도록 하고, 학습 알고리즘 역시 자율 학습 알고리즘과 지도 학습 알고리즘을 선택할 수 있도록 하는 새로운 뉴로 모픽 소자를 제공하고자 한다.Accordingly, in the present invention, it is possible to select a forward artificial neural network or a cyclic artificial neural network for a memory device that simulates a synaptic array, and a new neuromorphic device for selecting a self-learning algorithm and a supervised learning algorithm. To provide.

대한민국공개특허 제 10-2017-0080441 호(서로 다른 폭들을 갖는 게이팅 라인들을 포함하는 뉴로모픽 소자)Republic of Korea Patent Publication No. 10-2017-0080441 (Neuromorphic device including gating lines having different widths)

본 발명은 전술한 종래 기술의 문제점을 해결하기 위한 것으로서, 본 발명의 일부 실시예는 3차원 크로스바 메모리 구조를 이용한 뉴로모픽 소자를 제공하는 것을 그 목적으로 한다.SUMMARY OF THE INVENTION The present invention solves the problems of the prior art described above, and some embodiments of the present invention aim to provide a neuromorphic device using a three-dimensional crossbar memory structure.

상술한 기술적 과제를 달성하기 위한 기술적 수단으로서, 본 발명의 일측면에 따른 3차원 크로스바 메모리 구조를 이용한 뉴로 모픽 소자는 3차원 크로스바 메모리 구조를 가지고, 복수의 메모리 레이어가 서로 순차적으로 연결되어 구성된 메모리 소자 및 상기 메모리 소자의 동작을 제어하고, 제 n 메모리 레이어에 가중치 데이터를 저장하고, 상기 제 n 메모리 레이어(n은 자연수)에 입력 데이터를 인가하여, 상기 입력 데이터와 상기 가중치 데이터의 연산 결과를 출력 데이터로서 출력시키고, 해당 출력 데이터를 상기 제 n 메모리 레이어에 인접한 제 n+1 메모리 레이어의 입력 데이터로서 입력시키는 제어부를 포함한다. 이때, 각 메모리 레이어는 입력 데이터가 인가되는 복수의 워드라인들, 상기 각 워드라인들과 저항성 물질층을 사이에 두고 결합되고, 출력 데이터를 출력하는 연결 비트라인들을 포함하되, 상기 저항성 물질층에 가중치 데이터가 저장되는 것이다.As a technical means for achieving the above-described technical problem, a neuromorphic device using a three-dimensional crossbar memory structure according to an aspect of the present invention has a three-dimensional crossbar memory structure, a memory consisting of a plurality of memory layers are sequentially connected to each other Control operations of the device and the memory device, store weight data in an n-th memory layer, and apply input data to the n-th memory layer (n is a natural number) to calculate a result of calculating the input data and the weight data. And a control unit for outputting the output data as input data of the n + 1th memory layer adjacent to the nth memory layer. In this case, each memory layer includes a plurality of word lines to which input data is applied, and connection bit lines coupled to each of the word lines and the resistive material layer therebetween and outputting output data, wherein the bit lines are connected to the resistive material layer. The weight data is stored.

전술한 본 발명의 과제 해결 수단에 의하면, 3차원 크로스바 메모리 구조를 이용한 뉴로 모픽 소자를 통해 다양한 종류의 인공 신경망 구조를 구현할 수 있고, 이를 기초로 다양한 종류의 학습 알고리즘을 선택적으로 적용할 수 있다.According to the above-described problem solving means of the present invention, it is possible to implement various kinds of artificial neural network structure through a neuromorphic device using a three-dimensional crossbar memory structure, it is possible to selectively apply various kinds of learning algorithms based on this.

도 1은 본 발명의 일 실시예에 따른 뉴로모픽 소자를 도시한 블록도이다.
도 2는 본 발명의 일 실시예에 따른 시냅스용 메모리 소자를 도시한 도면이다.
도 3은 본 발명의 일 실시예에 따른 시냅스용 메모리 소자를 도시한 도면이다.
도 4는 통상적인 인공 신경망의 구조를 도시한 도면이다.
도 5는 본 발명의 일 실시예에 따른 뉴로 모픽 소자를 통해 구현할 수 있는 인공 신경망의 구조를 도시한 도면이다.
도 6은 본 발명의 일 실시예에 따른 뉴로 모픽 소자를 통해 구현할 수 있는 인공 신경망의 구조를 도시한 도면이다.
도 7은 본 발명의 일 실시예에 따른 뉴로 모픽 소자를 통해 제공할 수 있는 학습 알고리즘을 설명하기 위한 도면이다.
도 8은 본 발명의 일 실시예에 따른 뉴로 모픽 소자를 통해 제공할 수 있는 학습 알고리즘을 설명하기 위한 도면이다.
도 9는 본 발명의 일 실시예에 따른 뉴로 모픽 소자를 통해 제공할 수 있는 학습 알고리즘을 설명하기 위한 도면이다.
1 is a block diagram illustrating a neuromorphic device according to an exemplary embodiment of the present invention.
2 is a diagram illustrating a synaptic memory device according to an embodiment of the present invention.
3 illustrates a synaptic memory device according to an embodiment of the present invention.
4 is a view showing the structure of a conventional artificial neural network.
5 is a diagram illustrating a structure of an artificial neural network that can be implemented through a neuromorphic device according to an embodiment of the present invention.
6 is a diagram illustrating a structure of an artificial neural network that can be implemented through a neuromorphic device according to an embodiment of the present invention.
7 is a view for explaining a learning algorithm that can be provided through a neuromorphic device according to an embodiment of the present invention.
8 is a diagram illustrating a learning algorithm that may be provided through a neuromorphic device according to an embodiment of the present invention.
9 is a view for explaining a learning algorithm that can be provided through a neuromorphic device according to an embodiment of the present invention.

아래에서는 첨부한 도면을 참조하여 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자가 용이하게 실시할 수 있도록 본 발명의 실시예를 상세히 설명한다. 그러나 본 발명은 여러 가지 상이한 형태로 구현될 수 있으며 여기에서 설명하는 실시예에 한정되지 않는다. 그리고 도면에서 본 발명을 명확하게 설명하기 위해서 설명과 관계없는 부분은 생략하였으며, 명세서 전체를 통하여 유사한 부분에 대해서는 유사한 도면 부호를 붙였다.DETAILED DESCRIPTION Hereinafter, exemplary embodiments of the present invention will be described in detail with reference to the accompanying drawings so that those skilled in the art may easily implement the present invention. As those skilled in the art would realize, the described embodiments may be modified in various different ways, all without departing from the spirit or scope of the present invention. In the drawings, parts irrelevant to the description are omitted in order to clearly describe the present invention, and like reference numerals designate like parts throughout the specification.

명세서 전체에서, 어떤 부분이 다른 부분과 "연결"되어 있다고 할 때, 이는 "직접적으로 연결"되어 있는 경우뿐 아니라, 그 중간에 다른 소자를 사이에 두고 "전기적으로 연결"되어 있는 경우도 포함한다. 또한 어떤 부분이 어떤 구성요소를 "포함"한다고 할 때, 이는 특별히 반대되는 기재가 없는 한 다른 구성요소를 제외하는 것이 아니라 다른 구성요소를 더 포함할 수 있는 것을 의미한다.Throughout the specification, when a part is "connected" to another part, it includes not only "directly connected" but also "electrically connected" with another element in between. . In addition, when a part is said to "include" a certain component, this means that it may further include other components, except to exclude other components unless otherwise stated.

도 1은 본 발명의 일 실시예에 따른 뉴로모픽 소자를 도시한 블록도이다.1 is a block diagram illustrating a neuromorphic device according to an exemplary embodiment of the present invention.

도시된 바와 같이, 뉴로모픽 소자는 메모리 소자(10), 제어부(20) 및 전압 공급부(30)를 포함한다.As shown, the neuromorphic element includes a memory element 10, a control unit 20, and a voltage supply unit 30.

메모리 소자(10)는 저항성 메모리를 이용하여 시냅스 어레이 형태로 배열된 것으로, 복수의 메모리 레이어가 서로 순차적으로 연결된 구조를 갖는다. 그리고 각 메모리 레이어는 입력 데이터가 인가되는 복수의 워드라인들, 각 워드라인들과 저항성 물질층을 사이에 두고 결합되고, 출력 데이터를 출력하는 연결 비트라인들을 포함하여 이루어진다. 이때, 저항성 물질층에 가중치 데이터가 저장되는 형태를 가진다. 메모리 소자(10)의 구체적인 구성에 대해서는 추후 설명하도록 한다.The memory devices 10 are arranged in a synaptic array form using a resistive memory, and have a structure in which a plurality of memory layers are sequentially connected to each other. Each memory layer includes a plurality of word lines to which input data is applied, and connection word lines coupled to each word line and a resistive material layer therebetween and outputting output data. At this time, the weight data is stored in the resistive material layer. A detailed configuration of the memory device 10 will be described later.

제어부(20)는 메모리 소자(10)의 동작을 제어하는데, 특히 제 n 메모리 레이어 (n은 자연수) 에 가중치 데이터를 저장하고, 입력 데이터를 인가하여, 입력 데이터와 가중치 데이터의 연산 결과를 출력 데이터로서 출력시킨다. 그리고, 해당 출력 데이터를 제 n 메모리 레이어에 인접한 제 n+1 메모리 레이어의 입력 데이터로서 입력시키는 동작을 수행한다.The controller 20 controls the operation of the memory device 10. In particular, the controller 20 stores weight data in an n th memory layer (n is a natural number) and applies input data to output the calculation result of the input data and the weight data. Output as. Then, the output data is input as input data of the n + 1th memory layer adjacent to the nth memory layer.

또한, 메모리 소자(10)를 통해 구현되는 인공 신경망의 종류 및 학습 알고리즘의 종류가 변경될 수 있도록 조절한다. 또한, 선택된 인공 신경망이 구현되도록 하는 전압 공급 설정 제어신호를 전압 공급부(20)에 공급한다. 본 발명에서는 이후에 설명할 메모리 소자(10)에 대하여 여러 형태의 인공 신경망 구조와 학습 알고리즘을 설정할 수 있는데, 제어부(20)의 동작을 통해 이와 같은 인공 신경망 구조의 변경과 학습 알고리즘의 변경이 가능하다. In addition, the type of the artificial neural network implemented through the memory device 10 and the type of learning algorithm are adjusted to be changed. In addition, the voltage supply setting control signal for supplying the selected artificial neural network is supplied to the voltage supply unit 20. In the present invention, various types of artificial neural network structures and learning algorithms may be set for the memory device 10 to be described later, and the artificial neural network structure and the learning algorithm can be changed through the operation of the controller 20. Do.

이를 위하여, 제어부(20)는 인공 신경망 선택신호에 따라 메모리 소자(10)가 전방향 신경망 모드 또는 순환 신경망 모드로 동작하도록 조절한다. 또한, 제어부(20)는 학습 알고리즘 선택 신호를 통해 메모리 소자(10)가 지도 학습 모드 또는 자율 학습 모드로 동작하도록 조절한다. 이때, 인공 신경망 선택신호는 제어부(20)의 외부로부터 수신한 것으로 도시되어 있으나, 이는 설명의 편의를 위한 것으로, 제어부(20) 내에 설정된 조건에 따라 제어부(20)가 인공 신경망 선택신호 또는 학습 알고리즘 선택 신호를 생성할 수 있다.To this end, the controller 20 adjusts the memory device 10 to operate in an omnidirectional neural network mode or a cyclic neural network mode according to an artificial neural network selection signal. In addition, the controller 20 adjusts the memory device 10 to operate in a supervised learning mode or an autonomous learning mode through a learning algorithm selection signal. At this time, the artificial neural network selection signal is shown as received from the outside of the control unit 20, but for convenience of description, the control unit 20 according to the conditions set in the control unit 20 artificial neural network selection signal or learning algorithm A selection signal can be generated.

이러한 동작의 수행을 위해 제어부(20)는 메모리 레이어 설정부(22), 메모리 레이어 제어부(24) 및 메모리 데이터 관리부(26) 등의 모듈을 포함할 수 있다. 메모리 레이어 설정부(22)는 이후 설명할 메모리 소자(10)에서 워드라인들과 시냅스 구조물을 포함하는 단위 메모리 레이어를 설정하고, 해당 메모리 레이어가 순차적으로 데이터를 출력하여 다음 메모리 레이어로 전달되도록 한다. 특히, 시냅스 구조물의 일측면에 결합된 워드라인들을 포함하여 하나의 메모리 레이어를 구성하도록 하거나(도 2의 실시예), 시냅스 구조물의 양측면에 결합된 워드라인들을 포함하여 하나의 메모리 레이어를 구성하도록 구현할 수 있다(도 3의 실시예).In order to perform such an operation, the controller 20 may include modules such as a memory layer setting unit 22, a memory layer control unit 24, and a memory data management unit 26. The memory layer setting unit 22 sets a unit memory layer including word lines and synaptic structures in the memory device 10 to be described later, and outputs data sequentially to the next memory layer. . In particular, one memory layer may be configured to include word lines coupled to one side of the synaptic structure (the embodiment of FIG. 2), or one memory layer may be configured to include word lines coupled to both sides of the synaptic structure. It may be implemented (the embodiment of Figure 3).

메모리 레이어 제어부(24)는 위와 같이 설정된 메모리 레이어 들이 순차적으로 데이터를 출력하여 다음 메모리 레이어로 전달하도록 한다. 이때, 순환 신경망 구조에서는 가장 마지막에 위치한 메모리 레이어의 출력이 가장 첫번째로 위치한 메모리 레이어로 입력되도록 조절한다. 또한, 각 메모리 레이어로 입력 데이터를 입력시키기 위해 메모리 데이터 관리부(26)를 통해 각 워드라인에 입력 데이터를 인가하는 동작이나, 각 메모리 레이어에서 출력된 데이터를 출력 비트라인을 통해 수신하여, 제어부(20)에 임시 저장하고, 이를 다음 메모리 레이어의 워드라인을 통해 입력 데이터를 인가하는 동작들을 수행하도록 한다. The memory layer controller 24 outputs data sequentially and transmits the data to the next memory layer. In this case, the cyclic neural network structure adjusts the output of the last memory layer to be input to the first memory layer. In addition, an operation of applying input data to each word line through the memory data manager 26 to input input data to each memory layer, or receiving data output from each memory layer through an output bit line, 20 and temporarily store the data, and apply the input data through the word line of the next memory layer.

또한, 메모리 레이어 제어부(24)는 각 시냅스 구조물의 저항성 물질층에 저장되는 가중치 값을 관리한다. 초기 동작시에는 미리 설정된 가중치가 저장되도록 하며, 이후 학습 과정을 거치면서, 각 시냅스 구조물에 저장된 가중치가 변경되도록 한다. 메모리 레이어 제어부(24)는 초기 동작시의 각 메모리 레이어별 가중치 값 또는 목표로 하는 가중치 값을 저장할 수 있다. 또한, 학습 알고리즘의 적용에 따라 가중치 값의 갱신 작업을 수행할 수 있다. 학습 알고리즘에 따라 각 가중치 설정 방법이 변경될 수 있는데, 이에 대해서는 추후 설명하기로 한다. In addition, the memory layer controller 24 manages a weight value stored in the resistive material layer of each synaptic structure. In the initial operation, the preset weight is stored, and after the learning process, the weight stored in each synaptic structure is changed. The memory layer controller 24 may store a weight value or a target weight value for each memory layer during the initial operation. In addition, the weighting value may be updated according to the application of the learning algorithm. Each weight setting method may be changed according to a learning algorithm, which will be described later.

메모리 데이터 관리부(26)는 메모리 소자(10)에 각 메모리 레이어 별로 저장해야 할 입력 데이터를 관리한다. 초기 입력 데이터는 제어부(20)의 외부에서 전송되는 것일 수 있고, 입력 데이터가 메모리 레이어에 입력됨에 따라 해당 메모리 레이어에서 출력된 출력 데이터는 메모리 데이터 관리부(26)로 전송되어, 다음 메모리 레이어로 입력되는 입력 데이터로서 관리된다. 이를 위해, 각 메모리 레이어별로 입력 데이터와 출력 데이터를 저장하고 이를 관리하는 동작을 수행한다.The memory data manager 26 manages input data to be stored in each memory layer in the memory device 10. The initial input data may be transmitted from the outside of the controller 20. As the input data is input to the memory layer, the output data output from the corresponding memory layer is transmitted to the memory data manager 26 and input to the next memory layer. It is managed as input data. To this end, an operation of storing and managing input data and output data for each memory layer is performed.

또한, 제어부(20)는 메모리 소자(10)가 선택된 인공 신경망으로 동작하도록 비트라인, 워드라인 및 선택라인에 공급될 전압을 설정한다. In addition, the controller 20 sets the voltage to be supplied to the bit line, the word line, and the selection line so that the memory device 10 operates with the selected artificial neural network.

전압 공급부(30)는 메모리 소자(10)의 비트라인과 워드라인에 각각 설정된 전압을 공급한다. 전압 공급부(20)는 비트라인과 워드라인에 각각 전원전압(Vdd)과 0V의 전압을 공급하거나, 그 사이에 위치하는 값을 가진 전압을 공급한다. 또한, 본 발명의 구조에 따라 비트라인의 활성화를 조절하는 선택라인에 전압을 공급한다. 이때, 각 비트라인과 워드라인에 공급할 전압은 제어부(20)에 의하여 설정된다. 그 밖의 전압 공급부(20)의 구체적인 구성은 종래 메모리 소자의 구성과 유사하므로, 이에 대한 상세한 설명은 생략하도록 한다.The voltage supply unit 30 supplies voltages set to bit lines and word lines of the memory device 10, respectively. The voltage supply unit 20 supplies voltages of the power supply voltage Vdd and 0V to the bit lines and the word lines, respectively, or a voltage having a value located therebetween. In addition, according to the structure of the present invention, a voltage is supplied to a selection line that controls the activation of the bit line. At this time, the voltage to be supplied to each bit line and word line is set by the controller 20. Since the specific configuration of the other voltage supply unit 20 is similar to that of the conventional memory device, a detailed description thereof will be omitted.

도 2는 본 발명의 일 실시예에 따른 뉴로모픽 소자의 메모리 소자를 도시한 도면이다.2 is a diagram illustrating a memory device of a neuromorphic device according to an exemplary embodiment of the present invention.

도 2에 도시된 바와 같이, 시냅스 구조물(210, 220, 230, 240)과 이에 연결된 워드라인들(110, 120, 130, 140), 시냅스 구조물(210, 220, 230, 240)의 단부에 연결된 출력 비트라인들(310, 320, 330, 340)이 포함된다.As shown in FIG. 2, the synaptic structures 210, 220, 230, and 240 and word lines 110, 120, 130, and 140 connected thereto are connected to ends of the synaptic structures 210, 220, 230, and 240. Output bit lines 310, 320, 330, 340 are included.

각 시냅스 구조물(210, 220, 230, 240)은 제 1 방향으로 연장 형성된 연결 비트라인(212)과 각 연결 비트라인(212)의 양측면에 제 1 방향을 따라 적층된 저항성 물질층(214, 216)을 포함한다. 이와 같은, 시냅스 구조물은 제 2 방향을 따라 서로 나란하게 배치되며(210, 220, 230, 240), 이렇게 배치된 시냅스 구조물 그룹이 N 개의 라인만큼 배치되어 시냅스 구조물 어레이를 형성한다.Each of the synaptic structures 210, 220, 230, and 240 may have connection bit lines 212 extending in a first direction and resistive material layers 214 and 216 stacked along both sides of the connection bit lines 212 along the first direction. ). As such, the synaptic structures are arranged parallel to each other along the second direction (210, 220, 230, 240), the group of synaptic structures arranged in this way is arranged by N lines to form a synaptic structure array.

이때, 저항성 물질층(214, 216)은 일반적인 저항성 메모리 소자를 구성하는 것으로서, 저항성 물질층(214, 216)과 접촉된 워드라인을 통해 인가되는 전압에 따라 저항의 상태가 고저항 상태 또는 저저항 상태로 변경되며, 이에 의하여 인공 신경망을 구성하는 시냅스 어레이의 가중치가 각각 결정될 수 있다.In this case, the resistive material layers 214 and 216 constitute a general resistive memory device. The resistive material layers 214 and 216 have a high resistance state or a low resistance according to a voltage applied through a word line in contact with the resistive material layers 214 and 216. The state is changed, whereby the weight of each synaptic array constituting the artificial neural network can be determined.

다음으로, 제 1 워드라인들(110, 112, 114)은 제 2 방향으로 연장 형성되고, 제 1 시냅스 구조물들(210, 220, 230, 240)의 일측면에 적층된 저항성 물질층(214)과 접촉하도록 배치되며, 제 1 방향을 따라 서로 나란하게 이격되어 배치된다. 또한, 제 2 워드라인들(120, 122, 124)은 제 2 방향으로 연장 형성되고, 제 1 시냅스 구조물들(210, 220, 230, 240)의 타측면에 적층된 저항성 물질층(216)과 그 일측면이 접촉하도록 배치되며, 제 1 방향을 따라 서로 나란하게 이격되어 배치된다. 이와같이, 크로스바 메모리 구조에 따라 각 워드라인들이 시냅스 구조물(210, 220, 230, 240)의 수직 방향을 따라 순차적으로 배치되므로, 개별 워드라인 사이에 저항성 물질층이 배치되는 2차원 구조의 크로스 포인트 메모리 구조에 비하여 공간 활용성이 훨씬 향상될 수 있다.Next, the first word lines 110, 112, and 114 extend in a second direction, and the resistive material layer 214 is stacked on one side of the first synaptic structures 210, 220, 230, and 240. And spaced apart from each other along the first direction. In addition, the second word lines 120, 122, and 124 may extend in a second direction, and the resistive material layer 216 may be stacked on the other side of the first synaptic structures 210, 220, 230, and 240. One side thereof is disposed to be in contact with each other, and spaced apart from each other in parallel with each other along the first direction. As described above, since each word line is sequentially arranged along the vertical direction of the synaptic structures 210, 220, 230, and 240 according to the crossbar memory structure, a cross-point memory having a two-dimensional structure in which a resistive material layer is disposed between individual word lines. The space utilization can be much improved compared to the structure.

출력 비트라인들(310, 320, 330, 340)은 제 1 시냅스 구조물(210, 220, 230, 240)의 단부에 접촉되며, 제 3 방향을 따라 연장 형성된다. N개의 시냅스 구조물 그룹이 어레이를 형성하는 경우, 각 출력 비트라인들은 제 2 방향으로 연장되는 축을 기준으로 서로 동일한 위치에 있는 시냅스 구조물들의 단부에 접촉된다. 즉, 출력 비트라인(310)은 제 2 방향으로 연장되는 축을 기준으로 서로 동일한 위치에 있는 시냅스 구조물(210, 280)의 단부에 접촉되며, 출력 비트라인(320)은 시냅스 구조물(220, 270)의 단부에 접촉된다.The output bit lines 310, 320, 330, and 340 contact the ends of the first synaptic structure 210, 220, 230, and 240, and extend along the third direction. When N groups of synaptic structures form an array, each output bitline contacts the ends of the synaptic structures at the same position with respect to the axis extending in the second direction. That is, the output bit line 310 contacts the ends of the synaptic structures 210 and 280 at the same position with respect to the axis extending in the second direction, and the output bit line 320 is the synaptic structure 220 and 270. In contact with the end of the.

이때, 제 1 워드라인들(110, 112, 114, 116)과 제 2 워드라인들(120, 122, 124, 126)은 프리 뉴런으로서 기능하며, 출력 비트라인들(310, 320, 330)은 포스트 뉴런으로서 기능한다.In this case, the first word lines 110, 112, 114, and 116 and the second word lines 120, 122, 124, and 126 function as free neurons, and the output bit lines 310, 320, and 330 It functions as a post neuron.

한편, 제 1 시냅스 구조물들(210, 220, 230, 240)과 동일한 구조를 가지며, 그 일측면에 적층된 저항성 물질층이 제 2 워드라인들(120, 122, 124, 126)의 타측면에 접촉하도록 배치되며, 제 2 방향을 따라 서로 나란하게 배치된 복수의 제 2 시냅스 구조물들(250, 260, 270, 280)이 더 포함될 수 있다. 그리고, 제 2 방향으로 연장 형성되고, 제 2 시냅스 구조물들(250, 260, 270, 280)의 타측면에 적층된 저항성 물질층과 그 일측면이 접촉하도록 배치되고, 제 1 방향을 따라 서로 나란하게 이격되어 배치된 복수의 제 3 워드라인들(130, 132, 134, 136)이 더 포함될 수 있다. 이때, 출력 비트라인들(310, 320, 330, 340)은 제 2 시냅스 구조물(250, 260, 270, 280)의 단부에도 접촉되며, 제 3 워드라인들(130, 132, 134, 136)은 프리 뉴런으로서 기능하게 된다. 그리고, 이러한 시냅스 구조물 그룹들 사이에 워드라인들이 각각 배치되는 구조를 통해 더 큰 시냅스 어레이를 형성할 수 있다. Meanwhile, a resistive material layer having the same structure as the first synaptic structures 210, 220, 230, and 240, and stacked on one side thereof, is formed on the other side of the second word lines 120, 122, 124, and 126. A plurality of second synaptic structures 250, 260, 270, and 280 disposed to be in contact with each other and disposed in parallel with each other along a second direction may be further included. In addition, the resistive material layer which is formed extending in the second direction and laminated on the other side of the second synaptic structures 250, 260, 270, and 280 and one side thereof is in contact with each other and is parallel to each other along the first direction. The plurality of third word lines 130, 132, 134, and 136 spaced apart from each other may be further included. In this case, the output bit lines 310, 320, 330, and 340 are also in contact with the end of the second synaptic structure 250, 260, 270, and 280, and the third word lines 130, 132, 134, and 136 may be It functions as a free neuron. In addition, a larger synaptic array may be formed through a structure in which word lines are disposed between the groups of synaptic structures.

이와 같은 구조에서, 각 시냅스 구조물들과 워드라인들이 접촉하는 지점의 저항성 물질층의 저항 상태가 고저항 상태인지 저저항 상태인지에 따라 뉴로 모픽 소자의 가중치 값이 조절될 수 있다. In such a structure, the weight value of the neuromorphic device may be adjusted according to whether the resistance state of the resistive material layer at the point where the synaptic structures and the word lines contact each other is a high resistance state or a low resistance state.

또한, 선택라인들(410, 420, 430, 440)은 제 2 방향으로 연장 형성되고, 시냅스 구조물들의 어느 한 측면에 접촉하도록 배치되며, 시냅스 구조물 그룹 단위로 결합되어 시냅스 구조물들을 그룹별로 활성화 상태로 조절한다. 이와 같은 구성을 통해, 시냅스 구조물 그룹 단위로 출력 비트라인(310, 320, 330, 340)을 통해 출력되는 출력값들의 타이밍을 조절할 수 있다. In addition, the selection lines 410, 420, 430, and 440 extend in a second direction, are arranged to contact either side of the synaptic structures, and are combined in a group of synaptic structures to activate the synaptic structures in groups. Adjust Through such a configuration, the timing of output values output through the output bit lines 310, 320, 330, and 340 in units of synaptic structure groups may be adjusted.

즉, 제 1 워드라인(110)과 제 2 워드라인(120)을 통한 입력이 제 1 시냅스 구조물 그룹(210, 220, 230, 240)을 통해 출력되고, 제 2 워드라인(120)과 제 3 워드라인(130)을 통한 입력이 제 2 시냅스 구조물 그룹(250, 260, 270, 280)을 통해 출력되며, 각 시냅스 구조물 그룹 단위로 출력 타이밍이 조절될 수 있다.That is, inputs through the first word line 110 and the second word line 120 are output through the first synaptic structure group 210, 220, 230, and 240, and the second word line 120 and the third word are output. An input through the word line 130 may be output through the second synaptic structure group 250, 260, 270, and 280, and the output timing may be adjusted for each synaptic structure group.

이를 위해, 제어 로직 회로에 의하여 선택라인들(410, 420, 430, 440) 중 어느 하나가 턴온되면, 턴온된 선택라인에 결합된 시냅스 구조물 그룹의 출력이 출력 비트라인을 통해 출력된다. To this end, when any one of the selection lines 410, 420, 430, and 440 is turned on by the control logic circuit, the output of the synaptic structure group coupled to the turned on selection line is output through the output bit line.

도 3은 본 발명의 일 실시예에 따른 뉴로모픽 소자의 메모리 소자를 도시한 도면이다.3 is a diagram illustrating a memory device of a neuromorphic device according to an exemplary embodiment of the present invention.

도 2의 실시예와 전체적인 구성은 동일하며, 각 워드라인을 통해 입력되는 데이터가 상이하다.The overall configuration is the same as the embodiment of FIG. 2, and data input through each word line is different.

즉, 도 2의 경우 제 1 워드라인들의 그룹(110~116)과 제 1 시냅스 구조물들(210, 220, 230) 및 그 일측면에 적층된 저항성 물질층을 포함하는 하나의 단위 메모리 레이어를 구성할 수 있고, 제 1 메모리 레이어로 특정될 수 있다. 그리고, 제 2 워드라인들의 그룹(120~126)과 제 1 시냅스 구조물들(210, 220, 230) 및 그 타측면에 적층된 저항성 물질층을 포함하는 다른 단위의 메모리 레이어를 구성할 수 있고, 제 2 메모리 레이어로 특정될 수 있다.That is, in FIG. 2, one unit memory layer includes a group of first word lines 110 to 116, first synaptic structures 210, 220, and 230, and a resistive material layer stacked on one side thereof. And may be specified as a first memory layer. The memory layer may be configured in another unit including the group of second word lines 120 to 126, the first synaptic structures 210, 220, and 230, and a resistive material layer stacked on the other side thereof. It may be specified as a second memory layer.

이와 달리, 도 3의 경우 각 워드라인 그룹 별로 흥분성 신호와 억제성 신호를 함께 인가하는 형태로 뉴로 모픽 소자를 구현할 수 있다. 이때, 하나의 워드라인 그룹에 흥분성 신호와 억제성 신호를 서로 시간적으로 구분하여 입력한다. 예를 들면, 제 1 워드라인들의 그룹(110~116)과 제 2 워드라인들의 그룹(120~126)으로는 각각 흥분성 신호와 억제성 신호가 입력되도록 하고, 1 워드라인들의 그룹(110~116), 제 2 워드라인들의 그룹(120~126) 및 제 1 시냅스 구조물들(210, 220, 230)을 기초로 하나의 단위 메모리 레이어를 구성할 수 있고, 제 1 메모리 레이어로 특정될 수 있다. 그리고, 제 2 워드라인들(120)의 그룹, 제 3 워드라인들(130)의 그룹으로 각각 흥분성 신호와 억제성 신호가 입력되도록 하고, 그에 결합된 제 2 시냅스 구조물들(210, 220, 230)을 기초로 하나의 단위 메모리 레이어를 구성할 수 있고, 제 2 메모리 레이어로 특정될 수 있다. 이때, 제 2 워드라인들의 그룹(120~126)으로는 제 1 메모리 레이어로 동작시에는 흥분성 신호가 입력되고, 제 2 메모리 레이어로 동작시에는 억제성 신호가 입력된다.In contrast, in FIG. 3, the neuromorphic device may be implemented by applying the excitatory signal and the suppressive signal to each word line group. At this time, the excitatory signal and the suppressive signal are inputted to one word line group in time division. For example, the excitation signal and the suppression signal are input to the groups 110 to 116 of the first word lines and the groups 120 to 126 of the second word lines, respectively, and the groups 110 to 116 of one word lines. ), One unit memory layer may be configured based on the group of second word lines 120 to 126 and the first synaptic structures 210, 220, and 230, and may be specified as a first memory layer. The excitation signal and the suppression signal are input to the group of the second word lines 120 and the group of the third word lines 130, respectively, and the second synaptic structures 210, 220, and 230 coupled thereto. ) May be configured as one unit memory layer, and may be specified as a second memory layer. At this time, the excitation signal is input to the groups of second word lines 120 to 126 when the first memory layer is operated, and the suppressive signal is input to the second word lines.

도 4는 통상적인 인공 신경망의 구조를 도시한 도면이고, 도 5는 본 발명의 일 실시예에 따른 뉴로 모픽 소자를 통해 구현할 수 있는 인공 신경망의 구조를 도시한 도면이고, 도 6 은 본 발명의 일 실시예에 따른 뉴로 모픽 소자를 통해 구현할 수 있는 인공 신경망의 구조를 도시한 도면이다.4 is a view showing the structure of a conventional artificial neural network, Figure 5 is a view showing the structure of an artificial neural network that can be implemented through a neuromorphic device according to an embodiment of the present invention, Figure 6 is a view of the present invention 2 is a diagram illustrating a structure of an artificial neural network that can be implemented through a neuromorphic device according to an embodiment.

도 4와 같이 통상의 인공 신경망은 뉴런과 시냅스의 구조를 모사하여, 입력 데이터를 처리하여 출력 데이터를 출력하는 복수의 레이어가 순차적으로 연결되어 있는 구성을 갖는다. 앞서 도 2와 도 3의 메모리 소자의 설명시에 언급된 단위 메모리 레이어는 이와 같은 인공 신경망의 각 레이어에 대응된다.As shown in FIG. 4, a conventional artificial neural network simulates the structure of neurons and synapses, and has a configuration in which a plurality of layers for processing input data and outputting output data are sequentially connected. The unit memory layers mentioned in the above description of the memory device of FIGS. 2 and 3 correspond to each layer of the artificial neural network.

한편, 본 발명에서는 신경망 모드 선택 신호를 통해 메모리 소자(20)가 전방향 신경망 모드 또는 순환 신경망 모드로 동작하도록 조절할 수 있다. 도 5에 도시된 바와 같이, 전방향 신경망 모드에서는 각 메모리 레이어가 입력 데이터를 처리하여 출력 데이터를 생성하고, 이를 인접한 다음 메모리 레이어로 전송하는 동작을 수행한다. 그리고, 도 6에 도시된 바와 같이, 순환 신경망 모드에서는 각 메모리 레이어가 입력 데이터를 처리하여 출력 데이터를 생성하고, 이를 인접한 다음 메모리 레이어로 전송하는 동작과 함께, 가장 마지막에 위치한 메모리 레이어의 출력이 첫번째 메모리 레이어의 입력 데이터로서 입력된다.Meanwhile, in the present invention, the memory device 20 may be adjusted to operate in the forward neural network mode or the cyclic neural network mode through the neural network mode selection signal. As illustrated in FIG. 5, in the omnidirectional neural network mode, each memory layer processes input data to generate output data, and transmits the output data to the next adjacent memory layer. As shown in FIG. 6, in the cyclic neural network mode, each memory layer processes input data to generate output data, and transmits the output data to the next adjacent memory layer. It is input as input data of the first memory layer.

예를 들면, 제어부(20)는 도 2의 시냅스 구조물들 중 가장 마지막에 위치한 선택라인(440)에 결합된 시냅스 구조물들의 출력을 출력 비트라인들(310, 320, 330, 340)을 통해 제어부(20)가 수신하고, 이를 다시 첫번째 선택라인(410)에 결합된 시냅스 구조물에 접속된 워드라인(110~116)에 입력하는 형태로 제어하여, 순환 신경망 구조를 구현할 수 있다.For example, the controller 20 outputs the output of the synaptic structures coupled to the selection line 440 located at the last of the synaptic structures in FIG. 2 through the output bit lines 310, 320, 330, and 340. Received by 20), it is controlled again in the form of input to the word line (110 ~ 116) connected to the synaptic structure coupled to the first selection line 410, to implement a cyclic neural network structure.

도 7 내지 도 9는 본 발명의 일 실시예에 따른 뉴로 모픽 소자를 통해 제공할 수 있는 학습 알고리즘을 설명하기 위한 도면이다.7 to 9 are views for explaining a learning algorithm that can be provided through a neuromorphic device according to an embodiment of the present invention.

먼저, 도 7에 도시된 바와 같이, 본 발명의 메모리 소자(10)를 통해 제공할 수 있는 인공 신경망은 서로 순차적으로 연결된 복수의 메모리 레이어를 포함한다. 그리고, 제어부(20)는 메모리 레이어 설정부(22)를 통해 메모리 소자(10)에서 각 단위 메모리 레이어를 구분하고, 각 단위 메모리 레이어에 대하여 데이터 입출력이 수행되도록 관리한다. 특히, 제 n 메모리 레이어의 출력 데이터가 제어부(20)로 전달되도록 하고, 이후 제어부(20)는 해당 데이터를 제 n+1 메모리 레이어의 입력 데이터로서 전달한다. 따라서, 제 n 메모리 레이어의 출력 데이터는 제어부(20)를 거쳐 제 n+1 메모리 레이어의 워드라인을 통해 입력된다. First, as shown in FIG. 7, an artificial neural network that can be provided through the memory device 10 of the present invention includes a plurality of memory layers sequentially connected to each other. The controller 20 divides each unit memory layer in the memory device 10 through the memory layer setting unit 22 and manages data input / output to each unit memory layer. In particular, the output data of the n th memory layer is transmitted to the controller 20, and then the controller 20 transfers the corresponding data as input data of the n + 1 th memory layer. Accordingly, output data of the n th memory layer is input through the word line of the n + 1 th memory layer through the control unit 20.

도 8은 지도 학습 알고리즘에 따라 학습이 이루어지는 과정을 도시하고 있다.8 illustrates a process in which learning is performed according to a supervised learning algorithm.

도시된 바와 같이, 설명의 편의를 위해 제 1 메모리 레이어 내지 제 4 메모리 레이어가 도시되어 있다.As shown, for convenience of description, first to fourth memory layers are shown.

제어부(20)는 각 메모리 레이어를 구분하여 관리하는데, 각 메모리 레이어 별로 입력 데이터, 가중치, 출력 데이터 등을 관리한다. The controller 20 classifies and manages each memory layer, and manages input data, weights, and output data for each memory layer.

먼저, 제 1 메모리 레이어로 입력 데이터가 입력되면(①), 제 1 메모리 레이어에 저장된 가중치와 입력 데이터의 연산 결과가 출력 데이터로서 출력되고, 이는 제어부(20)로 전달된다. 제어부(20)는 제 1 메모리 레이어의 출력 데이터를 제 2 메모리 레이어의 입력 데이터로서 입력시킨다(②). 즉, 제 1 메모리 레이어의 출력 데이터가 제어부(20)로 전달된 후, 제 2 메모리 레이어의 워드라인을 통해 제 2 메모리 레이어로 입력된다. 이와 같은 절차가 제 1 메모리 레이어에서 제 4 메모리 레이어로 순차적으로 진행된다. 이후, 마지막으로 제 4 메모리 레이어는 출력 데이터와 제어부(20)에 미리 저장된 목표값을 비교하고, 그 값의 차이에 기초하여 해당 메모리 레이어에 저장된 가중치 값의 변화량을 산출한다. 그리고, 변경된 가중치 값은 제 4 메모리 레이어의 각 저항성 물질층에 프로그램되어 가중치가 갱신되도록 한다(⑥, ⑦). 이와 같은, 가중치 값의 변화량 산출과정은 역전파(back-propagation) 알고리즘을 통해 수행될 수 있다. 역전파 알고리즘에 따르면 각 메모리 레이어에서 출력되는 출력 데이터와 지도 학습에 의하여 지정된 출력을 비교하고 그 차이에 해당하는 오차에 비례하여 각 메모리 레이어의 가중치를 갱신한다. 이때, 가중치를 갱신하는 방향은 출력 데이터가 진행하는 방향과 반대된다. 즉, 제 4 메모리 레이어에서 가중치 갱신이 진행된 후 그리고, 데이터 입력 절차와는 역순으로 제 3 메모리 레이어, 제 2 메모리 레이어 및 제 1 메모리 레이어에 대해서도 위와 같이 가중치 값의 갱신 작업을 수행한다(⑧~⑬).First, when input data is input to the first memory layer (1), a weight stored in the first memory layer and a calculation result of the input data are output as output data, which is transmitted to the controller 20. The controller 20 inputs output data of the first memory layer as input data of the second memory layer (②). That is, the output data of the first memory layer is transferred to the controller 20 and then input to the second memory layer through the word line of the second memory layer. This procedure is sequentially performed from the first memory layer to the fourth memory layer. Thereafter, the fourth memory layer compares the output data with a target value previously stored in the controller 20 and calculates a change amount of the weight value stored in the corresponding memory layer based on the difference between the values. The changed weight value is programmed in each resistive material layer of the fourth memory layer so that the weight is updated (6, 7). As such, the process of calculating the change amount of the weight value may be performed through a back-propagation algorithm. According to the backpropagation algorithm, the output data output from each memory layer is compared with the output specified by supervised learning, and the weight of each memory layer is updated in proportion to an error corresponding to the difference. At this time, the direction of updating the weight is opposite to the direction in which the output data proceeds. That is, after the weight update is performed in the fourth memory layer, and in the reverse order to the data input procedure, the update of the weight value is performed as described above with respect to the third memory layer, the second memory layer, and the first memory layer. Iii).

이와 같은 단계를 반복함에 따라, 목표 값에 근접한 결과가 나오도록 각 메모리 레이어의 가중치를 조절할 수 있게 된다. 또한, 이러한 구성을 통해, 학습의 목표값이 미리 지정되어 있는 지도 학습 알고리즘을 메모리 소자를 통해서도 구현할 수 있다.By repeating the above steps, the weight of each memory layer can be adjusted to produce a result close to the target value. In addition, through this configuration, it is possible to implement a supervised learning algorithm in which a target value of learning is specified in advance through the memory element.

도 9는 자율 학습 알고리즘에 따라 학습이 이루어지는 과정을 도시하고 있다.9 illustrates a process of learning according to an autonomous learning algorithm.

도시된 바와 같이, 설명의 편의를 위해 제 1 메모리 레이어 내지 제 4 메모리 레이어가 도시되어 있다.As shown, for convenience of description, first to fourth memory layers are shown.

제어부(20)는 각 메모리 레이어를 구분하여 관리하는데, 각 메모리 레이어 별로 입력 데이터, 가중치, 출력 데이터 등을 관리한다. The controller 20 classifies and manages each memory layer, and manages input data, weights, and output data for each memory layer.

이때, 도면에서 동일한 숫자는 각 단계가 동일한 타이밍에 출력되는 클럭에 의하여 동기화된 것임을 의미한다.In this case, the same number in the drawing means that each step is synchronized by a clock output at the same timing.

먼저, 제 1 메모리 레이어로 제 1 입력 데이터가 입력되면(①), 제 1 메모리 레이어에 저장된 가중치와 입력 데이터의 연산 결과가 출력 데이터로서 출력되고(②), 이는 제어부(20)로 전달됨과 함께 제 2 메모리 레이어로 전달된다(④). 제어부(20)는 제 1 메모리 레이어의 출력 데이터를 기초로 가중치 변화량을 산출하고, 이를 이용하여 제 1 메모리 레이어의 가중치를 갱신한다(③). First, when the first input data is input to the first memory layer (①), the weight stored in the first memory layer and the calculation result of the input data are output as output data (②), which is transmitted to the controller 20 and Is transferred to the second memory layer (④). The controller 20 calculates a weight change amount based on the output data of the first memory layer, and updates the weight of the first memory layer by using the weight change amount (③).

그리고, 제 2 메모리 레이어는 제 1 메모리 레이어의 출력 데이터를 입력 데이터로서 입력시키고, 이때, 제 1 메모리 레이어로는 제 2 입력 데이터가 입력된다(④). 제 2 메모리 레이어에 저장된 가중치와 입력 데이터의 연산 결과가 출력 데이터로서 출력되고(⑤), 이는 제어부(20)로 전달됨과 함께 제 3 메모리 레이어로 전달된다(⑦). 이때, 제 1 메모리 레이어에서도 제 2 입력 데이터를 기반으로한 출력 데이터 출력 및 데이터 전달이 동시에 이루어진다. 그리고, 제어부(20)는 제 2 메모리 레이어의 출력 데이터를 기초로 가중치 변화량을 산출하고, 이를 이용하여 제 2 메모리 레이어의 가중치를 갱신한다(⑥).The second memory layer inputs output data of the first memory layer as input data, and at this time, second input data is input to the first memory layer (④). The weight stored in the second memory layer and the operation result of the input data are output as output data (5), which is transferred to the control unit 20 and transferred to the third memory layer (7). In this case, output data and data transfer based on the second input data are simultaneously performed in the first memory layer. The controller 20 calculates a weight change amount based on the output data of the second memory layer, and updates the weight of the second memory layer using the weight change amount (⑥).

이와 같이, 입력 데이터의 입력, 가중치 갱신, 출력 데이터의 전달이 각 메모리 레이에서 서로 독립적으로 이루어진다. 이때, 가중치 갱신 과정은 STDP(Spike-timing-dependent plasticity)를 이용하여 수행된다. 즉, 제 n 메모리 레이어와 제 n+1 메모리 레이어의 상태 값에 따라 가중치 증가 또는 가중치 감소 여부가 결정된다. 예를 들어, 제 n 메모리 레이어의 출력 상태값과 제 n+1 메모리 레이어의 출력 상태값이 동일하게 "0" 인 경우에는 가중치를 유지하고, 동일하게 "1"인 경우에는 가중치를 증가시키고, 출력 상태값이 "0"에서 "1"로 변경되거나 "1"에서 "0"으로 변경되는 경우에는 가중치를 감소시킨다.In this way, input of input data, weight update, and delivery of output data are performed independently in each memory ray. At this time, the weight updating process is performed using Spike-timing-dependent plasticity (STDP). That is, whether the weight increases or decreases is determined according to the state values of the n th memory layer and the n + 1 th memory layer. For example, when the output state value of the nth memory layer and the output state value of the n + 1th memory layer are equal to "0", the weight is maintained, and when the value is equal to "1", the weight is increased, When the output state value changes from "0" to "1" or from "1" to "0", the weight is decreased.

또한, 본 발명의 일 실시예는 컴퓨터에 의해 실행되는 프로그램 모듈과 같은 컴퓨터에 의해 실행 가능한 명령어를 포함하는 기록 매체의 형태로도 구현될 수 있다. 컴퓨터 판독 가능 매체는 컴퓨터에 의해 액세스될 수 있는 임의의 가용 매체일 수 있고, 휘발성 및 비휘발성 매체, 분리형 및 비분리형 매체를 모두 포함한다. 또한, 컴퓨터 판독가능 매체는 컴퓨터 저장 매체를 모두 포함할 수 있다. 컴퓨터 저장 매체는 컴퓨터 판독가능 명령어, 데이터 구조, 프로그램 모듈 또는 기타 데이터와 같은 정보의 저장을 위한 임의의 방법 또는 기술로 구현된 휘발성 및 비휘발성, 분리형 및 비분리형 매체를 모두 포함한다.In addition, an embodiment of the present invention may also be implemented in the form of a recording medium including instructions executable by a computer, such as a program module executed by the computer. Computer readable media can be any available media that can be accessed by a computer and includes both volatile and nonvolatile media, removable and non-removable media. In addition, computer readable media may include all computer storage media. Computer storage media includes both volatile and nonvolatile, removable and non-removable media implemented in any method or technology for storage of information such as computer readable instructions, data structures, program modules or other data.

전술한 본 발명의 설명은 예시를 위한 것이며, 본 발명이 속하는 기술분야의 통상의 지식을 가진 자는 본 발명의 기술적 사상이나 필수적인 특징을 변경하지 않고서 다른 구체적인 형태로 쉽게 변형이 가능하다는 것을 이해할 수 있을 것이다. 그러므로 이상에서 기술한 실시예들은 모든 면에서 예시적인 것이며 한정적이 아닌 것으로 이해해야만 한다. 예를 들어, 단일형으로 설명되어 있는 각 구성 요소는 분산되어 실시될 수도 있으며, 마찬가지로 분산된 것으로 설명되어 있는 구성 요소들도 결합된 형태로 실시될 수 있다.The foregoing description of the present invention is intended for illustration, and it will be understood by those skilled in the art that the present invention may be easily modified in other specific forms without changing the technical spirit or essential features of the present invention. will be. Therefore, it should be understood that the embodiments described above are exemplary in all respects and not restrictive. For example, each component described as a single type may be implemented in a distributed manner, and similarly, components described as distributed may be implemented in a combined form.

본 발명의 범위는 상기 상세한 설명보다는 후술하는 특허청구범위에 의하여 나타내어지며, 특허청구범위의 의미 및 범위 그리고 그 균등 개념으로부터 도출되는 모든 변경 또는 변형된 형태가 본 발명의 범위에 포함되는 것으로 해석되어야 한다.The scope of the present invention is shown by the following claims rather than the above description, and all changes or modifications derived from the meaning and scope of the claims and their equivalents should be construed as being included in the scope of the present invention. do.

10: 메모리 소자
20: 제어부
30: 전압 공급부
110, 120, 130, 140: 워드라인
210, 220, 230, 240: 시냅스 구조물
310, 320, 330, 340: 출력 비트라인
410, 420, 430, 440: 선택라인
10: memory device
20: control unit
30: voltage supply
110, 120, 130, 140: wordline
210, 220, 230, 240: synaptic structures
310, 320, 330, 340: output bit lines
410, 420, 430, 440: selection line

Claims (8)

3차원 크로스바 메모리 구조를 이용한 뉴로 모픽 소자에 있어서,
3차원 크로스바 메모리 구조를 가지고, 복수의 메모리 레이어가 서로 순차적으로 연결되어 구성된 메모리 소자 및
상기 메모리 소자의 동작을 제어하고, 제 n 메모리 레이어에 가중치 데이터를 저장하고, 상기 제 n 메모리 레이어(n은 자연수)에 입력 데이터를 인가하여, 상기 입력 데이터와 상기 가중치 데이터의 연산 결과를 출력 데이터로서 출력시키고, 해당 출력 데이터를 상기 제 n 메모리 레이어에 인접한 제 n+1 메모리 레이어의 입력 데이터로서 입력시키는 제어부를 포함하되,
상기 각 메모리 레이어는 입력 데이터가 인가되는 복수의 워드라인들, 상기 각 워드라인들과 저항성 물질층을 사이에 두고 결합되고, 출력 데이터를 출력하는 연결 비트라인들을 포함하되, 상기 저항성 물질층에 가중치 데이터가 저장되는 것인 뉴로 모픽 소자.
In a neuromorphic device using a three-dimensional crossbar memory structure,
A memory device having a three-dimensional crossbar memory structure and having a plurality of memory layers sequentially connected to each other;
The operation of the memory device is controlled, weight data is stored in an n-th memory layer, and input data is applied to the n-th memory layer (n is a natural number), and output results of the calculation of the input data and the weight data are output data. And a control unit for outputting the output data as input data of the n + 1th memory layer adjacent to the nth memory layer,
Each of the memory layers may include a plurality of word lines to which input data is applied, and connection bit lines coupled between the word lines and a resistive material layer therebetween and outputting output data, wherein the weighted values of the resistive material layer are included. Neuromorphic device in which data is stored.
제 1 항에 있어서,
상기 메모리 소자는 제 1 메모리 레이어 내지 제 k 메모리 레이어(k는 n보다 큰 자연수)를 포함하고,
상기 제어부는 신경망 모드 선택 신호를 통해 상기 메모리 소자가 전방향 신경망 모드 또는 순환 신경망 모드로 동작하도록 조절하되,
상기 전방향 신경망 모드로 동작시에는 상기 제 n 메모리 레이어의 출력 데이터가 상기 제 n+1 메모리 레이어의 입력 데이터로서 전달되도록 하고,
상기 순환 신경망 모드로 동작시에는 상기 제 k 메모리 레이어의 출력 데이터가 상기 제 1 메모리 레이어의 입력 데이터로서 전달되도록 하는 것인 뉴로 모픽 소자.
The method of claim 1,
The memory device may include first to kth memory layers (k is a natural number greater than n),
The controller controls the memory device to operate in an omnidirectional neural network mode or a cyclic neural network mode through a neural network mode selection signal.
When operating in the omni-directional neural network mode, output data of the n th memory layer is transmitted as input data of the n + 1 th memory layer,
And a neuromorphic device configured to transmit output data of the kth memory layer as input data of the first memory layer when operating in the cyclic neural network mode.
제 1 항에 있어서,
상기 메모리 소자는 제 1 메모리 레이어 내지 제 k 메모리 레이어(k는 n보다 큰 자연수)를 포함하고
상기 제어부는 학습 알고리즘 선택 신호를 통해 상기 메모리 소자가 지도 학습 모드 또는 자율 학습 모드로 동작하도록 조절하는 것인 뉴로 모픽 소자.
The method of claim 1,
The memory device may include first to k th memory layers (k is a natural number greater than n).
And the control unit controls the memory device to operate in a supervised learning mode or an autonomous learning mode through a learning algorithm selection signal.
제 3 항에 있어서,
상기 지도 학습 모드로 동작시에는 역전파 알고리즘에 따라 각 메모리 레이어에 저장된 가중치 갱신을 수행하는 뉴로 모픽 소자.
The method of claim 3, wherein
The neuromorphic device performs weight update stored in each memory layer according to a backpropagation algorithm when operating in the supervised learning mode.
제 3 항에 있어서,
상기 자율 학습 모드로 동작시에는 STDP(Spike-timing-dependent plasticity)를 이용하여 각 메모리 레이어의 상태 값에 가중치 갱신을 수행하는 뉴로 모픽 소자.
The method of claim 3, wherein
The neuromorphic device performs weight update on state values of each memory layer by using spike-timing-dependent plasticity (STDP) when operating in the autonomous learning mode.
제 1 항에 있어서,
상기 메모리 소자는
제 1 방향으로 연장 형성된 연결 비트라인과 상기 각 연결 비트라인의 양측면에 상기 제 1 방향을 따라 적층된 저항성 물질층을 포함하며, 상기 제 1 방향과 교차되는 제 2 방향을 따라 서로 나란하게 배치된 복수의 제 1 시냅스 구조물들,
상기 제 2 방향으로 연장 형성되고, 상기 시냅스 구조물의 일측면에 적층된 저항성 물질층과 접촉하도록 배치되며, 상기 제 1 방향을 따라 서로 나란하게 이격되어 배치된 복수의 워드라인들,
상기 제 2 방향으로 연장 형성되고, 상기 제 1 시냅스 구조물의 타측면에 적층된 저항성 물질층과 그 일측면이 접촉하도록 배치되며, 상기 제 1 방향을 따라 서로 나란하게 이격되어 배치된 복수의 제 2 워드라인들,
상기 제 1 시냅스 구조물의 단부에 접촉되며, 상기 제 1 방향 및 제 2 방향과 교차되는 제 3 방향을 따라 연장 형성된 복수의 출력 비트라인들 및
상기 제 2 방향으로 연장 형성되고, 상기 제 1 시냅스 구조물들의 어느 한 측면에 접촉하도록 각각 배치되며, 전압 인가에 따라 상기 제 1 시냅스 구조물들의 활성화 상태를 조절하는 선택라인을 포함하되,
상기 제 1 워드라인들과 제 2 워드라인들은 프리 뉴런으로서 기능하며, 상기 출력 비트라인들은 포스트 뉴런으로서 기능하는 것인 뉴로 모픽 소자.
The method of claim 1,
The memory device is
A connection bit line extending in a first direction and a layer of resistive material stacked along the first direction on both sides of each connection bit line, and arranged parallel to each other along a second direction crossing the first direction; A plurality of first synaptic structures,
A plurality of word lines extending in the second direction and disposed to contact the resistive material layer stacked on one side of the synaptic structure, the plurality of word lines spaced apart from each other along the first direction;
A plurality of second electrodes extending in the second direction, disposed to contact the resistive material layer stacked on the other side of the first synaptic structure, and one side thereof, and spaced apart from one another in the first direction; Word Lines,
A plurality of output bit lines in contact with an end of the first synaptic structure and extending along a third direction crossing the first and second directions;
A selection line extending in the second direction and disposed to contact one side of the first synaptic structures, the selection line adjusting an activation state of the first synaptic structures according to voltage application;
Wherein the first word lines and the second word lines function as free neurons, and the output bit lines function as post neurons.
제 6 항에 있어서,
상기 시냅스 구조물들은 복수의 그룹이 배치되고, 각 그룹의 시냅스 구조물들의 측면에 결합된 복수의 선택라인들을 포함하되,
선택라인에 인가되는 전압에 기초하여 해당 선택라인에 접촉된 시냅스 구조물들의 활성화 상태가 조절되는 것인 뉴로 모픽 소자.
The method of claim 6,
The synaptic structures are arranged in a plurality of groups, and includes a plurality of selection lines coupled to the sides of the synaptic structures of each group,
A neuromorphic device in which the activation state of the synaptic structures in contact with the selection line is adjusted based on the voltage applied to the selection line.
제 1 항에 있어서,
상기 시냅스 구조물들과 상기 워드라인들이 접촉하는 지점의 저항성 물질층의 저항 상태가 고저항 상태인지 저저항 상태인지에 따라 가중치 값이 조절되는 뉴로 모픽 소자.
The method of claim 1,
And a weight value adjusted according to whether the resistance state of the resistive material layer at the point where the synaptic structures and the word lines contact each other is a high resistance state or a low resistance state.
KR1020180101061A 2018-08-28 2018-08-28 Neuromorphic device using 3d crossbar memory KR102114356B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020180101061A KR102114356B1 (en) 2018-08-28 2018-08-28 Neuromorphic device using 3d crossbar memory

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020180101061A KR102114356B1 (en) 2018-08-28 2018-08-28 Neuromorphic device using 3d crossbar memory

Publications (2)

Publication Number Publication Date
KR20200024419A true KR20200024419A (en) 2020-03-09
KR102114356B1 KR102114356B1 (en) 2020-05-22

Family

ID=69802113

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020180101061A KR102114356B1 (en) 2018-08-28 2018-08-28 Neuromorphic device using 3d crossbar memory

Country Status (1)

Country Link
KR (1) KR102114356B1 (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20220057386A (en) * 2020-10-29 2022-05-09 한국과학기술연구원 Expandable neuromorphic circuit
KR20230023269A (en) 2021-08-10 2023-02-17 고려대학교 산학협력단 3-terminal diagonal memtransistor system, apparatus and method for convolution network processing using the same

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2012055593A1 (en) * 2010-10-29 2012-05-03 International Business Machines Corporation Neuromorphic and synaptronic spiking neural network with synaptic weights learned using simulation
KR20140141778A (en) * 2013-05-30 2014-12-11 삼성전자주식회사 Synapse circuit for spike-timing dependent plasticity(stdp) operation and neuromorphic system
KR20160023480A (en) * 2014-08-22 2016-03-03 삼성전자주식회사 Resistive Memory Device and Operating Method thereof
KR20170080441A (en) 2015-12-30 2017-07-10 에스케이하이닉스 주식회사 Neuromorphic Device Including Gating Lines Having Width Different from One Another

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2012055593A1 (en) * 2010-10-29 2012-05-03 International Business Machines Corporation Neuromorphic and synaptronic spiking neural network with synaptic weights learned using simulation
KR20140141778A (en) * 2013-05-30 2014-12-11 삼성전자주식회사 Synapse circuit for spike-timing dependent plasticity(stdp) operation and neuromorphic system
KR20160023480A (en) * 2014-08-22 2016-03-03 삼성전자주식회사 Resistive Memory Device and Operating Method thereof
KR20170080441A (en) 2015-12-30 2017-07-10 에스케이하이닉스 주식회사 Neuromorphic Device Including Gating Lines Having Width Different from One Another

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20220057386A (en) * 2020-10-29 2022-05-09 한국과학기술연구원 Expandable neuromorphic circuit
KR20230023269A (en) 2021-08-10 2023-02-17 고려대학교 산학협력단 3-terminal diagonal memtransistor system, apparatus and method for convolution network processing using the same

Also Published As

Publication number Publication date
KR102114356B1 (en) 2020-05-22

Similar Documents

Publication Publication Date Title
KR102608248B1 (en) Neural network hardware accelerator architectures and operating method thereof
US9934463B2 (en) Neuromorphic computational system(s) using resistive synaptic devices
Nguyen et al. Neural networks for self-learning control systems
US11157810B2 (en) Resistive processing unit architecture with separate weight update and inference circuitry
CN110852429B (en) 1T 1R-based convolutional neural network circuit and operation method thereof
GB2583302A (en) Neuromorphic chip for updating precise synaptic weight values
US5101361A (en) Analog hardware for delta-backpropagation neural networks
KR102218740B1 (en) Transposable synaptic weight cell and array thereof
KR102567160B1 (en) Neural network circuit with non-volatile synaptic array
CN112825153A (en) Data processing method in neural network system and neural network system
KR102099242B1 (en) Reconfigurable neuromorphic system and method of neural network configuration
US20200167638A1 (en) Circuit neuronal apte à mettre en oeuvre un apprentissage synaptique
KR20180133061A (en) Synapse Array of Neuromorphic Device Including Synapses Having Ferro-electric Field Effect Transistors and Operation Method of the Same
US11321608B2 (en) Synapse memory cell driver
US5353382A (en) Programmable synapse for neural network applications
US20190122102A1 (en) Memory configuration for implementing a neural network
KR20190075682A (en) Neuromorphic device using 3d crossbar memory
KR102114356B1 (en) Neuromorphic device using 3d crossbar memory
KR20210151737A (en) Synapse string and synapse string array for neural networks
KR102607860B1 (en) Neuromorphic apparatus having 3d stacked synaptic structure and memory apparatus having the same
JP2023502204A (en) Neuromorphic device with crossbar array structure
US11868893B2 (en) Efficient tile mapping for row-by-row convolutional neural network mapping for analog artificial intelligence network inference
KR20210060024A (en) Memory device including neural network processing circuit
CN109359734B (en) Neural network synaptic structure based on memristor unit and adjusting method thereof
US20220147796A1 (en) Circuit and method for spike time dependent plasticity

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant