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

Neuromorphic device using 3d crossbar memory Download PDF

Info

Publication number
KR102114356B1
KR102114356B1 KR1020180101061A KR20180101061A KR102114356B1 KR 102114356 B1 KR102114356 B1 KR 102114356B1 KR 1020180101061 A KR1020180101061 A KR 1020180101061A KR 20180101061 A KR20180101061 A KR 20180101061A KR 102114356 B1 KR102114356 B1 KR 102114356B1
Authority
KR
South Korea
Prior art keywords
memory
memory layer
layer
data
synaptic
Prior art date
Application number
KR1020180101061A
Other languages
Korean (ko)
Other versions
KR20200024419A (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

Abstract

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

Description

3차원 크로스바 메모리 구조를 이용한 뉴로 모픽 소자{NEUROMORPHIC DEVICE USING 3D CROSSBAR MEMORY}Neuromorphic device using 3D 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 has increased, studies on neuromorphic devices embodying them in hardware have been actively conducted.

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

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

이에, 본 발명에서는 시냅스 어레이를 모사한 메모리 소자에 대하여, 전방향 인공 신경망 또는 순환 인공 신경망 등을 선택할 수 있도록 하고, 학습 알고리즘 역시 자율 학습 알고리즘과 지도 학습 알고리즘을 선택할 수 있도록 하는 새로운 뉴로 모픽 소자를 제공하고자 한다.Accordingly, in the present invention, a new neuromorphic device that enables a user to select an omni-directional artificial neural network or a circulating artificial neural network, etc. for a memory device simulating a synaptic array, and also selects an autonomous learning algorithm and a supervised learning algorithm as a learning algorithm. Want to provide.

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

본 발명은 전술한 종래 기술의 문제점을 해결하기 위한 것으로서, 본 발명의 일부 실시예는 3차원 크로스바 메모리 구조를 이용한 뉴로모픽 소자를 제공하는 것을 그 목적으로 한다.The present invention is to solve the problems of the prior art described above, some embodiments of the present invention is 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, and a plurality of memory layers are sequentially connected to each other to form a memory Control the operation of the device and the memory device, store weight data in the n-th memory layer, apply input data to the n-th memory layer (n is a natural number), and calculate the calculation result of the input data and the weight data. And a control unit that outputs the output data as input data and inputs the output data as input data of an n + 1 memory layer adjacent to the n-th memory layer. At this time, each memory layer includes a plurality of word lines to which input data is applied, each of the word lines and a resistive material layer interposed therebetween, and including connection bit lines for outputting output data. Weight data is stored.

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

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

아래에서는 첨부한 도면을 참조하여 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자가 용이하게 실시할 수 있도록 본 발명의 실시예를 상세히 설명한다. 그러나 본 발명은 여러 가지 상이한 형태로 구현될 수 있으며 여기에서 설명하는 실시예에 한정되지 않는다. 그리고 도면에서 본 발명을 명확하게 설명하기 위해서 설명과 관계없는 부분은 생략하였으며, 명세서 전체를 통하여 유사한 부분에 대해서는 유사한 도면 부호를 붙였다.Hereinafter, embodiments of the present invention will be described in detail with reference to the accompanying drawings so that those skilled in the art to which the present invention pertains may easily practice. However, the present invention can be implemented in many different forms and is not limited to the embodiments described herein. In addition, in order to clearly describe the present invention in the drawings, parts irrelevant to the description are omitted, and like reference numerals are assigned to similar parts throughout the specification.

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

도 1은 본 발명의 일 실시예에 따른 뉴로모픽 소자를 도시한 블록도이다.1 is a block diagram illustrating a neuromorphic device according to an 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 elements 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. In addition, each memory layer includes a plurality of word lines to which input data is applied, coupled with each word line and a layer of resistive material therebetween, and includes connection bit lines for outputting output data. At this time, the weight data is stored in the resistive material layer. The specific configuration of the memory element 10 will be described later.

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

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

이를 위하여, 제어부(20)는 인공 신경망 선택신호에 따라 메모리 소자(10)가 전방향 신경망 모드 또는 순환 신경망 모드로 동작하도록 조절한다. 또한, 제어부(20)는 학습 알고리즘 선택 신호를 통해 메모리 소자(10)가 지도 학습 모드 또는 자율 학습 모드로 동작하도록 조절한다. 이때, 인공 신경망 선택신호는 제어부(20)의 외부로부터 수신한 것으로 도시되어 있으나, 이는 설명의 편의를 위한 것으로, 제어부(20) 내에 설정된 조건에 따라 제어부(20)가 인공 신경망 선택신호 또는 학습 알고리즘 선택 신호를 생성할 수 있다.To this end, the controller 20 adjusts the memory element 10 to operate in an omni-directional neural network mode or a cyclic neural network mode according to the artificial neural network selection signal. In addition, the control unit 20 adjusts the memory element 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 this is for convenience of explanation, and the control unit 20 may select the artificial neural network selection signal or a learning algorithm according to conditions set in the control unit 20. It is possible to generate a selection signal.

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

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

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

메모리 데이터 관리부(26)는 메모리 소자(10)에 각 메모리 레이어 별로 저장해야 할 입력 데이터를 관리한다. 초기 입력 데이터는 제어부(20)의 외부에서 전송되는 것일 수 있고, 입력 데이터가 메모리 레이어에 입력됨에 따라 해당 메모리 레이어에서 출력된 출력 데이터는 메모리 데이터 관리부(26)로 전송되어, 다음 메모리 레이어로 입력되는 입력 데이터로서 관리된다. 이를 위해, 각 메모리 레이어별로 입력 데이터와 출력 데이터를 저장하고 이를 관리하는 동작을 수행한다.The memory data management unit 26 manages input data to be stored for each memory layer in the memory element 10. The initial input data may be transmitted from the outside of the control unit 20, and as the input data is input to the memory layer, output data output from the memory layer is transmitted to the memory data management unit 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 control unit 20 sets the voltage to be supplied to the bit line, word line, and selection line so that the memory element 10 operates as a 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 the voltages of the power supply voltages Vdd and 0V to the bit lines and the word lines, respectively, or supplies voltages having values located therebetween. In addition, a voltage is supplied to a selection line that controls activation of the bit line according to the structure of the present invention. At this time, the voltage to be supplied to each bit line and word line is set by the control unit 20. Since the specific configuration of the other voltage supply unit 20 is similar to that of the conventional memory device, detailed description thereof will be omitted.

도 2는 본 발명의 일 실시예에 따른 뉴로모픽 소자의 메모리 소자를 도시한 도면이다.2 is a diagram illustrating a memory device of a neuromorphic device according to an 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 the word lines 110, 120, 130, 140 connected thereto are connected to the ends of the synaptic structures 210, 220, 230, 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 has a connection bit line 212 formed extending in a first direction, and resistive material layers 214 and 216 stacked along both sides of each connection bit line 212 along a first direction. ). As described above, the synaptic structures are arranged next to each other along the second direction (210, 220, 230, 240), and the groups of the synaptic structures arranged in this way are arranged by N lines to form an array of synaptic structures.

이때, 저항성 물질층(214, 216)은 일반적인 저항성 메모리 소자를 구성하는 것으로서, 저항성 물질층(214, 216)과 접촉된 워드라인을 통해 인가되는 전압에 따라 저항의 상태가 고저항 상태 또는 저저항 상태로 변경되며, 이에 의하여 인공 신경망을 구성하는 시냅스 어레이의 가중치가 각각 결정될 수 있다.At this time, the resistive material layers 214 and 216 constitute a general resistive memory device, and the state of the resistance is high or low depending on the voltage applied through the word line contacted with the resistive material layers 214 and 216. The state is changed, and the weights of the synaptic arrays 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 are formed to extend in the second direction, and the resistive material layer 214 is stacked on one side of the first synaptic structures 210, 220, 230, and 240. It is disposed to be in contact with, and spaced apart from each other along the first direction. In addition, the second word lines 120, 122, and 124 are formed to extend in the second direction, and the resistive material layer 216 stacked on the other side of the first synaptic structures 210, 220, 230, and 240. The one side is arranged to contact, and is spaced apart from each other along the first direction. As such, 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 Space utilization can be much improved compared to 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 synapse structures 210, 220, 230, and 240, and extend along the third direction. When the group of N synaptic structures forms an array, each output bit line contacts the ends of synaptic structures at the same position with respect to the axis extending in the second direction. That is, the output bit lines 310 are in contact with the ends of the synaptic structures 210 and 280 in the same position with respect to the axis extending in the second direction, and the output bit lines 320 are synaptic structures 220 and 270 Is in contact with the end of.

이때, 제 1 워드라인들(110, 112, 114, 116)과 제 2 워드라인들(120, 122, 124, 126)은 프리 뉴런으로서 기능하며, 출력 비트라인들(310, 320, 330)은 포스트 뉴런으로서 기능한다.At this time, the first word lines (110, 112, 114, 116) and the second word lines (120, 122, 124, 126) function as free neurons, and the output bit lines (310, 320, 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)은 프리 뉴런으로서 기능하게 된다. 그리고, 이러한 시냅스 구조물 그룹들 사이에 워드라인들이 각각 배치되는 구조를 통해 더 큰 시냅스 어레이를 형성할 수 있다. On the other hand, it has the same structure as the first synaptic structures 210, 220, 230, and 240, and a layer of resistive material 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 along the second direction may be further included. In addition, the resistance material layer stacked on the other side of the second synaptic structures 250, 260, 270, and 280 is formed to extend in the second direction and is disposed to contact one side thereof, and is aligned with each other along the first direction. A plurality of third word lines 130, 132, 134, and 136 spaced apart from each other may be further included. At this time, the output bit lines 310, 320, 330, and 340 contact the ends of the second synaptic structures 250, 260, 270, 280, and the third word lines 130, 132, 134, 136 It functions as a free neuron. Further, a larger synaptic array may be formed through a structure in which word lines are respectively disposed between the synaptic structure groups.

이와 같은 구조에서, 각 시냅스 구조물들과 워드라인들이 접촉하는 지점의 저항성 물질층의 저항 상태가 고저항 상태인지 저저항 상태인지에 따라 뉴로 모픽 소자의 가중치 값이 조절될 수 있다. 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 are formed to extend in the second direction, are arranged to contact any one side of the synaptic structures, and are combined in synaptic structure group units to activate the synaptic structures by group. Adjust. Through this 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, the input through the first word line 110 and the second word line 120 is output through the first synaptic structure group 210, 220, 230, 240, and the second word line 120 and the third The input through the word line 130 is output through the second synaptic structure groups 250, 260, 270, and 280, and the output timing can be adjusted in units of 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 group of synaptic structures 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 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 including a group of first word lines 110 to 116 and first synaptic structures 210, 220 and 230 and a layer of a resistive material stacked on one side thereof is configured. And can be specified as the first memory layer. Further, a memory layer of another unit including a group of second word lines 120 to 126 and first synaptic structures 210, 220 and 230 and a resistive material layer stacked on the other side thereof may be configured, 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 메모리 레이어로 동작시에는 억제성 신호가 입력된다.Alternatively, in FIG. 3, a neuromorphic device may be implemented in a form in which an excitatory signal and an inhibitory signal are applied together for each word line group. At this time, the excitatory signal and the inhibitory signal are temporally separated and input to one word line group. For example, the excitatory signal and the inhibitory signal are input to the groups of the first word lines 110 to 116 and the groups of the second word lines 120 to 126, respectively, and the groups of 1 word lines 110 to 116 ), 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 the first memory layer. Then, the excitatory signal and the inhibitory signal are input to the group of the second word lines 120 and the group of the third word lines 130, and the second synaptic structures 210, 220, and 230 coupled thereto. ), One unit memory layer may be configured, and may be specified as a second memory layer. At this time, an excitability signal is input to the group of second word lines 120 to 126 when operating as the first memory layer, and an inhibitory signal is input when operating as the second memory layer.

도 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 This is a diagram showing the 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 typical artificial neural network has a configuration in which a plurality of layers sequentially simulating the structures of neurons and synapses, processing input data, and outputting output data. The unit memory layers mentioned in the description of the memory elements 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 controlled to operate in an omni-directional neural network mode or a cyclic neural network mode through a neural network mode selection signal. As illustrated in FIG. 5, in the omni-directional neural network mode, each memory layer processes input data to generate output data, and transmits it to an adjacent next memory layer. And, as illustrated in FIG. 6, in the cyclic neural network mode, each memory layer processes input data to generate output data, and transmits it to an adjacent next memory layer, and the output of the last memory layer is 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 control unit 20 outputs the outputs 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 ( 20) may be received, and control it in the form of inputting it to the word lines 110 to 116 connected to the synaptic structure coupled to the first selection line 410, thereby implementing a circulating neural network structure.

도 7 내지 도 9는 본 발명의 일 실시예에 따른 뉴로 모픽 소자를 통해 제공할 수 있는 학습 알고리즘을 설명하기 위한 도면이다.7 to 9 are diagrams 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 illustrated 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. Then, the control unit 20 separates each unit memory layer from the memory element 10 through the memory layer setting unit 22 and manages data input and output to each unit memory layer. In particular, the output data of the nth memory layer is transmitted to the control unit 20, and then the control unit 20 transfers the corresponding data as input data of the n + 1 memory layer. Therefore, the output data of the nth memory layer is input through the word line of the n + 1 memory layer through the control unit 20.

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

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

제어부(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 (①), the weights stored in the first memory layer and the calculation result of the input data are output as output data, which is transferred to the control unit 20. The control unit 20 inputs the output data of the first memory layer as input data of the second memory layer (②). That is, after the output data of the first memory layer is transferred to the control unit 20, it is 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. Then, finally, the fourth memory layer compares the output data with the 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. Then, the changed weight value is programmed in each resistive material layer of the fourth memory layer so that the weight is updated (⑥, ⑦). The process of calculating the amount of change in 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 designated 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 in which the weight is updated 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 from the data input procedure, the weight value is updated for the third memory layer, the second memory layer, and the first memory layer as described above (⑧ ~ ⑬).

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

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

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

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

이때, 도면에서 동일한 숫자는 각 단계가 동일한 타이밍에 출력되는 클럭에 의하여 동기화된 것임을 의미한다.At this time, 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 calculation result of the weight and input data stored in the first memory layer is output as the output data (②), which is transmitted to the control unit 20. It is transferred to the second memory layer (④). The control unit 20 calculates a weight change amount based on the output data of the first memory layer, and uses it to update the weight of the first memory layer (③).

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

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

또한, 본 발명의 일 실시예는 컴퓨터에 의해 실행되는 프로그램 모듈과 같은 컴퓨터에 의해 실행 가능한 명령어를 포함하는 기록 매체의 형태로도 구현될 수 있다. 컴퓨터 판독 가능 매체는 컴퓨터에 의해 액세스될 수 있는 임의의 가용 매체일 수 있고, 휘발성 및 비휘발성 매체, 분리형 및 비분리형 매체를 모두 포함한다. 또한, 컴퓨터 판독가능 매체는 컴퓨터 저장 매체를 모두 포함할 수 있다. 컴퓨터 저장 매체는 컴퓨터 판독가능 명령어, 데이터 구조, 프로그램 모듈 또는 기타 데이터와 같은 정보의 저장을 위한 임의의 방법 또는 기술로 구현된 휘발성 및 비휘발성, 분리형 및 비분리형 매체를 모두 포함한다.Also, an embodiment of the present invention may be implemented in the form of a recording medium including instructions executable by a computer, such as program modules, executed by a 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. Also, the computer-readable medium may include any computer storage medium. 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 above description of the present invention is for illustration only, and those skilled in the art to which the present invention pertains can understand that the present invention can be easily modified into 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 illustrative 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 indicated by the following claims rather than the above detailed description, and it should be interpreted that all changes or modified forms derived from the meaning and scope of the claims and equivalent concepts thereof are 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 element
20: control unit
30: voltage supply
110, 120, 130, 140: word line
210, 220, 230, 240: synaptic structures
310, 320, 330, 340: output bit line
410, 420, 430, 440: selection line

Claims (8)

3차원 크로스바 메모리 구조를 이용한 뉴로 모픽 소자에 있어서,
3차원 크로스바 메모리 구조를 가지고, 복수의 메모리 레이어가 서로 순차적으로 연결되어 구성된 것으로, 제 1 메모리 레이어 내지 제 k 메모리 레이어(k는 n보다 큰 자연수)를 포함하는 메모리 소자 및
상기 메모리 소자의 동작을 제어하고, 제 n 메모리 레이어에 가중치 데이터를 저장하고, 상기 제 n 메모리 레이어(n은 자연수)에 입력 데이터를 인가하여, 상기 입력 데이터와 상기 가중치 데이터의 연산 결과를 출력 데이터로서 출력시키고, 해당 출력 데이터를 상기 제 n 메모리 레이어에 인접한 제 n+1 메모리 레이어의 입력 데이터로서 입력시키는 제어부를 포함하되,
상기 각 메모리 레이어는 입력 데이터가 인가되는 복수의 워드라인들, 상기 각 워드라인들과 저항성 물질층을 사이에 두고 결합되고, 출력 데이터를 출력하는 연결 비트라인들을 포함하되, 상기 저항성 물질층에 가중치 데이터가 저장되는 것이고,
상기 제어부는 신경망 모드 선택 신호를 통해 상기 메모리 소자가 전방향 신경망 모드 또는 순환 신경망 모드로 동작하도록 조절하되,
상기 전방향 신경망 모드로 동작시에는 상기 제 n 메모리 레이어의 출력 데이터가 상기 제 n+1 메모리 레이어의 입력 데이터로서 전달되도록 하고,
상기 순환 신경망 모드로 동작시에는 상기 제 k 메모리 레이어의 출력 데이터가 상기 제 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, including a first memory layer to a k-th memory layer (k is a natural number greater than n) and
Control the operation of the memory element, store weight data in the nth memory layer, apply input data to the nth memory layer (n is a natural number), and output the calculation result of the input data and the weight data as output data And a control unit that outputs as and inputs the output data as input data of an n + 1 memory layer adjacent to the nth memory layer,
Each of the memory layers includes a plurality of word lines to which input data is applied, coupled with each of the word lines and a layer of resistive material therebetween, and connection bit lines for outputting output data, wherein the weight is applied to the layer of resistive material Data is stored,
The control unit controls the memory device to operate in an omni-directional 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 memory layer,
When operating in the cyclic neural network mode, the neuromorphic device is such that output data of the k-th memory layer is transmitted as input data of the first memory layer.
삭제delete 제 1 항에 있어서,
상기 제어부는 학습 알고리즘 선택 신호를 통해 상기 메모리 소자가 지도 학습 모드 또는 자율 학습 모드로 동작하도록 조절하는 것인 뉴로 모픽 소자.
According to claim 1,
The controller modulates 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,
When operating in the supervised learning mode, the neuromorphic device performs a weight update stored in each memory layer according to a backpropagation algorithm.
제 3 항에 있어서,
상기 자율 학습 모드로 동작시에는 STDP(Spike-timing-dependent plasticity)를 이용하여 각 메모리 레이어의 상태 값에 가중치 갱신을 수행하는 뉴로 모픽 소자.
The method of claim 3,
When operating in the self-learning mode, a neuromorphic device that performs weight update on a state value of each memory layer using a spike-timing-dependent plasticity (STDP).
제 1 항에 있어서,
상기 메모리 소자는
제 1 방향으로 연장 형성된 연결 비트라인과 상기 각 연결 비트라인의 양측면에 상기 제 1 방향을 따라 적층된 저항성 물질층을 포함하며, 상기 제 1 방향과 교차되는 제 2 방향을 따라 서로 나란하게 배치된 복수의 제 1 시냅스 구조물들,
상기 제 2 방향으로 연장 형성되고, 상기 시냅스 구조물의 일측면에 적층된 저항성 물질층과 접촉하도록 배치되며, 상기 제 1 방향을 따라 서로 나란하게 이격되어 배치된 복수의 워드라인들,
상기 제 2 방향으로 연장 형성되고, 상기 제 1 시냅스 구조물의 타측면에 적층된 저항성 물질층과 그 일측면이 접촉하도록 배치되며, 상기 제 1 방향을 따라 서로 나란하게 이격되어 배치된 복수의 제 2 워드라인들,
상기 제 1 시냅스 구조물의 단부에 접촉되며, 상기 제 1 방향 및 제 2 방향과 교차되는 제 3 방향을 따라 연장 형성된 복수의 출력 비트라인들 및
상기 제 2 방향으로 연장 형성되고, 상기 제 1 시냅스 구조물들의 어느 한 측면에 접촉하도록 각각 배치되며, 전압 인가에 따라 상기 제 1 시냅스 구조물들의 활성화 상태를 조절하는 선택라인을 포함하되,
상기 제 1 워드라인들과 제 2 워드라인들은 프리 뉴런으로서 기능하며, 상기 출력 비트라인들은 포스트 뉴런으로서 기능하는 것인 뉴로 모픽 소자.
According to claim 1,
The memory element
A connection bit line formed extending in a first direction and a layer of resistive materials stacked along the first direction on both sides of each connection bit line, and arranged side by side with each other along a second direction intersecting the first direction A plurality of first synaptic structures,
A plurality of word lines extending in the second direction, disposed to contact the layer of resistive material stacked on one side of the synaptic structure, and spaced apart from each other along the first direction;
A plurality of second extensions extending in the second direction, arranged to contact one side of the layer of the resistive material stacked on the other side of the first synaptic structure, and spaced apart from each other along the first direction Word Lines,
A plurality of output bit lines contacting ends of the first synaptic structure and extending along a third direction intersecting the first direction and the second direction, and
It is formed extending in the second direction, respectively disposed to contact any one side of the first synaptic structures, and includes a selection line for adjusting the activation state of the first synaptic structures according to a voltage applied,
The neuromorphic device 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 include a plurality of selection lines coupled to the side surfaces of each group of synaptic structures,
A neuromorphic device in which activation states of synaptic structures contacting the selection line are adjusted based on a voltage applied to the selection line.
제 1 항에 있어서,
상기 저항성 물질층의 저항 상태가 고저항 상태인지 저저항 상태인지에 따라 가중치 값이 조절되는 뉴로 모픽 소자.
According to claim 1,
A neuromorphic device whose weight value is adjusted according to whether the resistance state of the resistive material layer 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 KR20200024419A (en) 2020-03-09
KR102114356B1 true 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)

Families Citing this family (2)

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

Citations (1)

* 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

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102230784B1 (en) * 2013-05-30 2021-03-23 삼성전자주식회사 Synapse circuit for spike-timing dependent plasticity(stdp) operation and neuromorphic system
KR102151176B1 (en) * 2014-08-22 2020-09-02 삼성전자 주식회사 Resistive Memory Device and Operating Method thereof
KR102609301B1 (en) 2015-12-30 2023-12-05 에스케이하이닉스 주식회사 Neuromorphic Device Including Gating Lines Having Width Different from One Another

Patent Citations (1)

* 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

Also Published As

Publication number Publication date
KR20200024419A (en) 2020-03-09

Similar Documents

Publication Publication Date Title
KR102608248B1 (en) Neural network hardware accelerator architectures and operating method thereof
JP7047062B2 (en) Neuromorphological processing device
Guo et al. Unsupervised learning on resistive memory array based spiking neural networks
US9779355B1 (en) Back propagation gates and storage capacitor for neural networks
US11531871B2 (en) Stacked neuromorphic devices and neuromorphic computing systems
US11620505B2 (en) Neuromorphic package devices and neuromorphic computing systems
JP2021507349A (en) A method for storing weights in a crosspoint device of a resistance processing unit array, its crosspoint device, a crosspoint array for performing a neural network, its system, and a method for performing a neural network. Method
CN110852429B (en) 1T 1R-based convolutional neural network circuit and operation method thereof
GB2583302A (en) Neuromorphic chip for updating precise synaptic weight values
US11157810B2 (en) Resistive processing unit architecture with separate weight update and inference circuitry
US5101361A (en) Analog hardware for delta-backpropagation neural networks
KR102121562B1 (en) Neuromorphic device using 3d crossbar memory
CN112825153A (en) Data processing method in neural network system and neural network system
KR20180133061A (en) Synapse Array of Neuromorphic Device Including Synapses Having Ferro-electric Field Effect Transistors and Operation Method of the Same
KR102114356B1 (en) Neuromorphic device using 3d crossbar memory
KR102365324B1 (en) 3d neuromorphic device with multiple synapses in one neuron
US5353382A (en) Programmable synapse for neural network applications
US11321608B2 (en) Synapse memory cell driver
KR20190016311A (en) Reconfigurable neuromorphic system and method of neural network configuration
KR20170080431A (en) Neuromorphic Device and Methods of Adjusting Resistance Change Ratio of the Same
US11868893B2 (en) Efficient tile mapping for row-by-row convolutional neural network mapping for analog artificial intelligence network inference
US20220147796A1 (en) Circuit and method for spike time dependent plasticity
KR102049463B1 (en) Neuromorphic device and guide training method using the same
KR102511526B1 (en) Hardware-based artificial neural network device
CN117391161A (en) Memory-based neuromorphic device and method of operating the same

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