KR20220133005A - Artificial Neuromorphic Device and Methode of operating the same - Google Patents
Artificial Neuromorphic Device and Methode of operating the same Download PDFInfo
- Publication number
- KR20220133005A KR20220133005A KR1020210038255A KR20210038255A KR20220133005A KR 20220133005 A KR20220133005 A KR 20220133005A KR 1020210038255 A KR1020210038255 A KR 1020210038255A KR 20210038255 A KR20210038255 A KR 20210038255A KR 20220133005 A KR20220133005 A KR 20220133005A
- Authority
- KR
- South Korea
- Prior art keywords
- current
- unit
- weight
- learning
- voltage
- Prior art date
Links
- 238000003860 storage Methods 0.000 claims abstract description 125
- 238000013528 artificial neural network Methods 0.000 claims abstract description 50
- 230000000946 synaptic effect Effects 0.000 claims description 95
- 230000015654 memory Effects 0.000 claims description 63
- 239000003990 capacitor Substances 0.000 claims description 53
- 238000012546 transfer Methods 0.000 claims description 37
- 238000000034 method Methods 0.000 claims description 18
- 230000008901 benefit Effects 0.000 abstract description 3
- 238000011017 operating method Methods 0.000 abstract description 2
- 210000004027 cell Anatomy 0.000 description 58
- 238000010586 diagram Methods 0.000 description 16
- 210000000225 synapse Anatomy 0.000 description 14
- 230000007423 decrease Effects 0.000 description 11
- 230000008569 process Effects 0.000 description 6
- 230000002829 reductive effect Effects 0.000 description 6
- 238000013518 transcription Methods 0.000 description 6
- 230000035897 transcription Effects 0.000 description 6
- 230000005641 tunneling Effects 0.000 description 5
- 230000008859 change Effects 0.000 description 4
- 210000002569 neuron Anatomy 0.000 description 4
- 230000003247 decreasing effect Effects 0.000 description 3
- 238000009825 accumulation Methods 0.000 description 2
- 230000010354 integration Effects 0.000 description 2
- 230000002093 peripheral effect Effects 0.000 description 2
- 238000012549 training Methods 0.000 description 2
- 108010020053 Staphylococcus warneri lipase 2 Proteins 0.000 description 1
- 230000004913 activation Effects 0.000 description 1
- 238000013473 artificial intelligence Methods 0.000 description 1
- 230000002238 attenuated effect Effects 0.000 description 1
- 230000006399 behavior Effects 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 210000003792 cranial nerve Anatomy 0.000 description 1
- 230000009849 deactivation Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000010893 electron trap Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000011065 in-situ storage Methods 0.000 description 1
- 230000000670 limiting effect Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000003252 repetitive effect Effects 0.000 description 1
- 238000011160 research Methods 0.000 description 1
- 230000002441 reversible effect Effects 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 210000000352 storage cell Anatomy 0.000 description 1
- 230000007704 transition Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/06—Physical realisation, i.e. hardware implementation of neural networks, neurons or parts of neurons
- G06N3/063—Physical realisation, i.e. hardware implementation of neural networks, neurons or parts of neurons using electronic means
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N5/00—Computing arrangements using knowledge-based models
- G06N5/04—Inference or reasoning models
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Mathematical Physics (AREA)
- Computing Systems (AREA)
- Biomedical Technology (AREA)
- Biophysics (AREA)
- Computational Linguistics (AREA)
- Data Mining & Analysis (AREA)
- Evolutionary Computation (AREA)
- Health & Medical Sciences (AREA)
- Software Systems (AREA)
- Artificial Intelligence (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Life Sciences & Earth Sciences (AREA)
- Molecular Biology (AREA)
- General Health & Medical Sciences (AREA)
- Neurology (AREA)
- Control Of Voltage And Current In General (AREA)
- Read Only Memory (AREA)
Abstract
Description
본 발명은 신경망 소자에 관한 것으로, 더욱 상세하게는 휘발성 가중치 데이터를 비휘발성 가중치 데이터로 전사하기 위한 인공 신경망 소자 및 이의 동작 방법에 관한 것이다.The present invention relates to a neural network device, and more particularly, to an artificial neural network device for transferring volatile weight data to non-volatile weight data, and an operating method thereof.
인체의 뇌신경의 동작을 모사한 인공 신경망은 인공지능을 구현하는 핵심 기술이다. 인공 신경망은 여러 경로의 전기적 신호를 수합하여 판단 처리하는 뉴런과 저장된 값에 의해 두 뉴런 사이의 전달되는 신호의 크기를 조정하는 시냅스의 연결망으로 구성되어 있다. 이러한 뉴런과 시냅스 동작을 각각 모사하여 실행하는 소자를 구비하고 이 소자들 사이의 전기적 연결을 통해 신경망 동작을 하드웨어로 직접 구현하는 회로를 뉴로모픽 칩이라고 하며, 이는 기존의 컴퓨터를 구성하는 폰노이만 머신과는 차별화된 아키텍쳐이다. 인공 신경망은 방대한 데이터의 지도 학습을 통해 데이터가 가지는 패턴의 특성을 배열을 이루는 다수의 시냅스에 가중치라는 특성값으로 저장하게 된다. 이 저장된 시냅스 가중치들에 의해서 새로 입력되는 데이터의 특징을 판단하는 추론 동작이 이루어지게 된다. 따라서 뉴로모픽 칩을 통해 데이터의 특징을 판단하는 추론 작업을 하기 위해서는 사전에 학습 동작이 이루어져 적절한 시냅스 가중치 값들이 획득되어야 한다. An artificial neural network that mimics the behavior of the human cranial nerves is a key technology for realizing artificial intelligence. The artificial neural network is composed of a neuron that collects and processes electrical signals from multiple paths and a synaptic network that adjusts the size of a signal transmitted between two neurons according to a stored value. A circuit that has devices that simulate and execute these neurons and synapses, respectively, and directly implements neural network operations in hardware through electrical connections between these devices, is called a neuromorphic chip. It is an architecture that is differentiated from machines. The artificial neural network stores the characteristic of the pattern of the data as a characteristic value called a weight in a plurality of synapses that form an arrangement through supervised learning of a large amount of data. An inference operation for determining the characteristics of newly input data is performed by the stored synaptic weights. Therefore, in order to perform an inference work to determine the characteristics of data through the neuromorphic chip, a learning operation must be performed in advance to obtain appropriate synaptic weight values.
실제 응용에 있어서 뉴로모픽 칩의 적용 방식은 두 가지로 나뉠 수 있다. 첫 번째로 학습 동작은 기존의 폰노이만 컴퓨터에서 구동되는 텐서플로와 같은 인공 신경망 S/W를 사용하여 시냅스 가중치를 얻은 후, 뉴로모픽칩의 시냅스들에 저장하여 추론 동작을 뉴로모픽 칩으로 실행하는 방식이다. 이 경우, 뉴로모픽 칩은 가중치를 시냅스들에 저장하여 추론하는 동작만을 실행하면 되므로 칩의 구성이 단순해지고 시냅스 소자에 요구되는 조건이 완화되어 구현 가능성이 높아진다. 반면에 온칩(on-chip) 학습이 불가능하므로 현장에서의 즉각적이고 개별적인, 즉 in-situ 방식의 가중치 업데이트가 불가능하여 활용도가 크게 떨어지게 된다.In practical applications, the application method of the neuromorphic chip can be divided into two types. First, the learning motion uses artificial neural network S/W such as TensorFlow running on the existing von Neumann computer to obtain synaptic weights, stores them in the synapses of the neuromorphic chip, and executes the inference motion with the neuromorphic chip. way to do it In this case, since the neuromorphic chip only needs to execute the operation of inferring by storing the weight in the synapses, the configuration of the chip is simplified, the conditions required for the synaptic device are relaxed, and the implementation possibility is increased. On the other hand, since on-chip learning is impossible, immediate and individual, that is, in-situ weight update in the field is not possible, which greatly reduces utilization.
두 번째로 추론 동작 뿐 아니라 학습 동작도 뉴로모픽 칩에서 on-chip으로 직접 실행되는 방식이다. 이 경우, 개별 뉴로모픽 칩마다 현장에서의 즉각적이고 개별적인 가중치 학습이 가능하여 칩의 활용성이 대폭 확장된다. 학습 동작이 실행되는 동안, 시냅스 가중치는 계속 새 값으로 업데이트되어야 하므로 on-chip 학습이 가능한 뉴로모픽 칩의 시냅스는 회수의 제한 없이 쓰고 지우기를 반복할 수 있어야 하며 쓰고 지우는 속도도 빠른 소자이어야 한다. 또한 동일한 시냅스 배열을 통해 추론 동작도 이루어져야 하므로 학습된 시냅스 가중치를 장기간 저장할 수 있어야 한다. 그러나 이러한 조건을 갖춘 신뢰성 높은 시냅스 소자의 구현이 용이하지 않다. Second, the learning operation as well as the inference operation is directly executed from the neuromorphic chip on-chip. In this case, immediate and individual weight learning in the field is possible for each neuromorphic chip, greatly expanding the utility of the chip. While the learning operation is being executed, the synapse weight must be continuously updated with a new value, so the synapse of a neuromorphic chip capable of on-chip learning should be able to repeat writing and erasing without limiting the number of times, and it should be a device with a fast writing and erasing speed. . In addition, since an inference operation must also be performed through the same synaptic arrangement, the learned synaptic weights must be stored for a long time. However, it is not easy to implement a highly reliable synaptic device having these conditions.
현재 on-chip 학습이 가능한 뉴로모픽 칩을 구현하는 한 가지 방법으로서 시냅스 소자로 커패시터를 사용하려는 연구가 시도하고 있다. 커패시터는 현재까지 상용화된 반도체 메모리 소자 중에서 쓰고 지우기의 회수 제한이 없는 소자이며 또한 쓰고 지우기의 속도 또한 매우 빠르다. 커패시터 시냅스 소자 및 회로의 세부 구성은 다양한 형태로 구현 가능하지만, 일반적으로 가중치는 커패시터에 대전되는 전하량 또는 전압으로 저장되고, 상기 커패시터 전압은 독출 트랜지스터의 전류의 형태로 뉴런으로 출력된다. 그러나 커패시터에 저장된 전하량은 스위칭 소자의 누설전류에 의해 감쇄하게 되므로 학습된 가중치를 장기간 저장할 수 없다. 이 문제를 해결하기 위한 다양한 방법이 시도되고 있으며, 그중 한 가지 방법은 DRAM의 리프레쉬 동작과 유사하게 학습 동작을 계속해서 반복 실시하여 시냅스 가중치 셋을 유지하는 것이다.Currently, research on using a capacitor as a synaptic device is being attempted as a way to implement a neuromorphic chip capable of on-chip learning. A capacitor is a device that has no limit on the number of writes and erases among semiconductor memory devices commercialized so far, and also has a very fast write and erase speed. The detailed configuration of the capacitor synaptic device and circuit can be implemented in various forms, but in general, the weight is stored as an amount of charge or voltage charged to the capacitor, and the capacitor voltage is output to the neuron in the form of a current of a read transistor. However, since the amount of charge stored in the capacitor is attenuated by the leakage current of the switching element, the learned weight cannot be stored for a long time. Various methods have been tried to solve this problem, and one of them is to maintain a synaptic weight set by continuously and repeatedly performing a learning operation similar to the refresh operation of DRAM.
본 명세서에서 제시하는 내용은 상기 시냅스로서 커패시터 소자를 채용한 on-chip 뉴로모픽 칩에 대한 것이며, 누설 전류에 의해 커패시터 소자에 저장된 가중치를 점차 상실하는 문제를 해결하기 위한 것이다. The content presented in the present specification relates to an on-chip neuromorphic chip employing a capacitor element as the synapse, and is intended to solve the problem of gradually losing the weight stored in the capacitor element due to leakage current.
본 발명이 이루고자 하는 제1 기술적 과제는 휘발성 특성을 가지는 가중치 정보를 비휘발성 특성을 가지는 가중치 정보로 전사할 수 있는 인공신경망 소자를 제공하는데 있다.A first technical object of the present invention is to provide an artificial neural network device capable of transferring weight information having a volatile characteristic into weight information having a non-volatile characteristic.
또한, 본 발명이 이루고자 하는 제2 기술적 과제는 상기 제1 기술적 과제를 달성하기 위한 인공 신경망 소자의 동작 방법을 제공하는데 있다.In addition, a second technical problem to be achieved by the present invention is to provide a method of operating an artificial neural network device for achieving the first technical problem.
상술한 제1 기술적 과제를 달성하기 위한 본 발명은, 가중치 정보를 획득하여 휘발성의 가중치 전압으로 저장하는 학습부; 및 상기 학습부에 선택적으로 연결되며, 상기 학습부가 공급하는 가중치 전류를 수신하고, 이를 비휘발성 데이터로 저장하기 위한 추론부를 포함하는 인공 신경망 소자를 제공한다.The present invention for achieving the above-described first technical problem, a learning unit for acquiring weight information and storing it as a volatile weighted voltage; and an inference unit selectively connected to the learning unit, receiving the weighting current supplied by the learning unit, and storing the weighted current as non-volatile data.
본 발명의 상기 제1 기술적 과제는, 가중치 정보를 획득하여 휘발성의 가중치 전압으로 저장하는 학습부; 상기 학습부의 가중치 전압에 의해 발생되는 가중치 전류에 상응하는 임시 저장 전압을 저장하기 위한 임시 저장부; 및 상기 임시 저장부에 선택적으로 연결되며, 상기 임시 저장부가 공급하는 가중치 전류를 수신하고, 이를 비휘발성 데이터로 저장하기 위한 추론부를 포함하는 인공 신경망 소자의 제공을 통해서도 달성된다.The first technical problem of the present invention is, a learning unit for acquiring weight information and storing it as a volatile weight voltage; a temporary storage unit for storing a temporary storage voltage corresponding to a weighting current generated by the weighting voltage of the learning unit; and an inference unit selectively connected to the temporary storage unit, receiving the weight current supplied by the temporary storage unit, and storing it as non-volatile data.
상술한 제2 기술적 과제를 달성하기 위한 본 발명은, 휘발성의 가중치 정보에 상응하는 가중치 전류에 대한 전류 비교 동작을 수행하는 단계; 및 상기 전류 비교 동작을 근거로 상기 가중치 전류가 비휘발성 가중치 정보로 전사되는 비휘발성 메모리에 대한 프로그램 동작을 판단하는 단계를 포함하는 인공 신경망 소자의 동작 방법을 제공한다.The present invention for achieving the second technical problem described above includes the steps of performing a current comparison operation with respect to a weighting current corresponding to volatile weighting information; and determining a program operation for a non-volatile memory in which the weight current is transferred into non-volatile weight information based on the current comparison operation.
상술한 본 발명에 따르면, 학습부에서 획득된 휘발성 가중치 정보는 정보 저장부에 비휘발성 가중치 정보로 저장된다. 저장된 정보의 전사는 추론 제어부를 이용한 가중치 전류의 비교 동작 및 프로그램 판단 동작으로 구성된다. 이를 통해 비휘발성 메모리로 구성된 정보 저장부에 프로그램 동작이 수행되고, 문턱 전압이 변경된다. 문턱 전압의 변경을 통해 비휘발성 가중치 정보가 정보 저장부로 전사된다.According to the present invention described above, the volatile weight information obtained in the learning unit is stored as non-volatile weight information in the information storage unit. The transcription of the stored information consists of a comparison operation of weighted currents and a program determination operation using the inference control unit. Through this, a program operation is performed on the information storage unit formed of the non-volatile memory, and the threshold voltage is changed. By changing the threshold voltage, nonvolatile weight information is transferred to the information storage unit.
본 발명에서는 학습 동작이 수행되어 가중치가 획득되는 학습부와 학습부에서 획득된 가중치 정보를 전원이 제거되더라도 저장할 수 있는 추론부로 분리된 신경망 소자가 제공된다. 가중치 정보는 비휘발성 데이터로 저장되며, 전사 또는 추론 동작이 완료된 후, 학습부는 새로운 학습 동작을 개시하여 가중치 정보를 갱신할 수 있는 이점을 가진다.In the present invention, there is provided a neural network element separated into a learning unit in which a weight is obtained by performing a learning operation and an inference unit capable of storing weight information obtained in the learning unit even when power is removed. The weight information is stored as non-volatile data, and after the transcription or inference operation is completed, the learning unit has the advantage of starting a new learning operation to update the weight information.
도 1은 본 발명의 제1 실시예에 따른 인공 신경망 소자의 블록도이다.
도 2는 본 발명의 제1 실시예에 따라 상기 도 1의 인공 신경망 소자를 구현하기 위한 회로도이다.
도 3은 본 발명의 제1 실시예에 따라 상기 도 2의 인공 신경망 소자의 동작을 설명하기 위한 타이밍도이다.
도 4는 본 발명의 제2 실시예에 따른 인공 신경망 소자의 블록도이다.
도 5는 본 발명의 제2 실시예에 따른 인공 신경망 소자의 회로도이다.
도 6은 본 발명의 제2 실시예에 따른 인공 신경망 소자의 동작을 설명하기 위한 타이밍도이다.
도 7은 본 발명의 제3 실시예에 따른 인공 신경망 소자를 도시한 회로도이다.1 is a block diagram of an artificial neural network device according to a first embodiment of the present invention.
2 is a circuit diagram for implementing the artificial neural network device of FIG. 1 according to the first embodiment of the present invention.
3 is a timing diagram for explaining the operation of the artificial neural network element of FIG. 2 according to the first embodiment of the present invention.
4 is a block diagram of an artificial neural network device according to a second embodiment of the present invention.
5 is a circuit diagram of an artificial neural network device according to a second embodiment of the present invention.
6 is a timing diagram for explaining the operation of the artificial neural network device according to the second embodiment of the present invention.
7 is a circuit diagram illustrating an artificial neural network device according to a third embodiment of the present invention.
본 발명은 다양한 변경을 가할 수 있고 여러 가지 형태를 가질 수 있는 바, 특정 실시예들을 도면에 예시하고 본문에 상세하게 설명하고자 한다. 그러나, 이는 본 발명을 특정한 개시 형태에 대해 한정하려는 것이 아니며, 본 발명의 사상 및 기술 범위에 포함되는 모든 변경, 균등물 내지 대체물을 포함하는 것으로 이해되어야 한다. 각 도면을 설명하면서 유사한 참조부호를 유사한 구성요소에 대해 사용하였다.Since the present invention can have various changes and can have various forms, specific embodiments are illustrated in the drawings and described in detail in the text. However, this is not intended to limit the present invention to the specific disclosed form, it should be understood to include all modifications, equivalents and substitutes included in the spirit and scope of the present invention. In describing each figure, like reference numerals have been used for like elements.
다르게 정의되지 않는 한, 기술적이거나 과학적인 용어를 포함해서 여기서 사용되는 모든 용어들은 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 것과 동일한 의미를 가지고 있다. 일반적으로 사용되는 사전에 정의되어 있는 것과 같은 용어들은 관련 기술의 문맥 상 가지는 의미와 일치하는 의미를 가지는 것으로 해석되어야 하며, 본 출원에서 명백하게 정의하지 않는 한, 이상적이거나 과도하게 형식적인 의미로 해석되지 않는다. Unless defined otherwise, all terms used herein, including technical or scientific terms, have the same meaning as commonly understood by one of ordinary skill in the art to which this invention belongs. Terms such as those defined in a commonly used dictionary should be interpreted as having a meaning consistent with the meaning in the context of the related art, and should not be interpreted in an ideal or excessively formal meaning unless explicitly defined in the present application. does not
이하, 첨부한 도면들을 참조하여, 본 발명의 바람직한 실시예를 보다 상세하게 설명하고자 한다. Hereinafter, preferred embodiments of the present invention will be described in more detail with reference to the accompanying drawings.
제1 실시예first embodiment
도 1은 본 발명의 제1 실시예에 따른 인공 신경망 소자의 블록도이다.1 is a block diagram of an artificial neural network device according to a first embodiment of the present invention.
도 1을 참조하면, 인공 신경망 소자는 학습부(100) 및 추론부(200)를 가진다.Referring to FIG. 1 , the artificial neural network device includes a
학습부(100)는 학습 컬럼 라인 VBL과 학습 로우 라인 VWL에 연결되고, 획득된 가중치 정보를 전압의 형태로 저장한다. 다만, 상기 학습부(100)는 학습 동작이 멈춘 상태에서는 시간의 경과에 따라 저장된 가중치 정보가 사라지는 동적(Dynamic) 저장 특성을 가진다. 전압의 형태로 저장된 가중치 정보는 추론부(200)로 전달된다. 추론부로 전달되는 가중치 정보는 전류의 형태로 전환된다.The
추론부(200)는 제1 노드 N1을 통해 학습부(100)에 연결되고, 추론 제어부(210) 및 정보 저장부(220)를 가진다. 추론부(200)는 상기 학습부(100)에 선택적으로 연결될 수 있으며, 학습부(100)에서 전류의 형태로 전환된 가중치 정보를 전달 받는다. 학습부(100)에 저장된 가중치 정보는 전류의 형태로 변환되고, 상기 전류의 비교 동작을 통해 추론부(200)에서는 비휘발성 특성을 가지는 가중치 정보로 저장된다. 즉, 학습부(100)에서 학습되고 저장된 가중치 정보는 동적 또는 휘발성의 특징을 가지고, 추론부(200)에서 가중치 정보는 플래시 메모리 셀의 문턱 전압 또는 멤리스터의 저항값의 형태로 저장되며 가중치 독출을 위해 역시 전류로 변환될 수 있다. 다만, 추론부(200)에서 저장된 가중치 정보는 반영구적으로 정보가 유지되는 비휘발성의 특징을 가진다.The
추론부(200)를 구성하는 추론 제어부(210)는 선택적으로 학습부(100) 및 정보 저장부(220)에 연결될 수 있으며, 상기 정보 저장부(220)도 선택적으로 학습부(100) 및 추론 제어부(210)에 연결될 수 있다. 상술한 구성요소들의 선택적 연결은 다양한 수단을 통해 달성될 수 있음은 공지의 사실이다. 예컨대 선택적 연결을 위해 스위치 또는 트랜지스터 등이 사용될 수 있으며, 활성화 신호 및 비활성화 신호 등의 수단을 통해서도 선택적 연결은 구현될 수 있다. 다만, 본 발명에서는 구성요소들의 선택적 연결은 스위치를 통해 설명한다. 이는 이해의 편의를 위해 사용된 수단으로 해석될 필요가 있다. The
추론 제어부(210)는 각각 학습부(100)와 정보 저장부(220)를 흐르는 전류의 크기에 따라 정보 저장부(220)로 전류를 공급하거나, 학습부(100)에서 공급되는 전류의 일부를 전달 받는다. The
설명의 편의를 위해 가중치 정보가 반영되고, 학습부(100)로부터 흘러나오는 전류를 가중치 전류 iw라 지칭하고, 정보 저장부(220)로 흘러들어가는 전류를 시냅스 전류 is, 추론 제어부(210)를 흐르는 전류를 추론 제어전류 ia라 지칭한다. 키르히호프의 법칙에 의하여 ia는 iw와 is의 차에 해당한다. 추론 제어부에서 추론 제어전류 ia를 감지하여 추론 제어전류 ia가 0으로 수렴하도록 시냅스 전류 is를 변경하는 방식으로 가중치 전류 iw를 정보 저장부(220)에 전사한다. For convenience of explanation, weight information is reflected, the current flowing from the
예를 들어 정보 저장부(220)로 흘러 들어가는 시냅스 전류 is가 가중치 전류 iw에 비해 크다면 추론 제어전류 ia는 추론 제어부(210)로부터 흘러나오는 방향이 된다. 추론 제어부(210)는 추론 제어전류 ia를 감지하여 정보 저장부(220)의 시냅스 전류 is를 감소시키는 방향으로 정보 저장부(220)의 비휘발성 메모리 셀에 저장되는 가중치를 조정한다. 즉 상기 비휘발성 메모리 셀이 플래시 메모리 셀일 경우, 셀 트랜지스터의 문턱전압을 상승시켜 전류를 감소시킨다. For example, if the synaptic current is flowing into the
가중치 전류 iw의 전사 동작은 정보 저장부(220)에서 발생되는 시냅스 전류 is가 가중치 전류 iw와 동일하거나 가중치 전류 iw에 하회할 때까지 진행된다. 정보 저장부(220)에서 가중치 전류 iw의 전사는 프로그램 동작으로 설명된다. 상기 프로그램 동작은 정보 저장부(220)를 구성하는 비휘발성 메모리의 채널 저항의 변경 또는 문턱 전압의 변경 동작으로 이해되어야 한다. 즉, 게이트 단자에 동일한 전압이 인가되는 상황에서 프로그램 동작의 수행에 의해 비휘발성 메모리를 흐르는 전류는 감소한다. The transfer operation of the weighting current iw is performed until the synaptic current is generated in the
만일, 정보 저장부(220) 메모리 셀의 문턱전압이 계속 상승하여 시냅스 전류 is가 충분히 감소하고, 이에 따라 추론 제어부(210)로부터 노드 N1으로 전류 추론 제어전류 ia가 흘러나오지 않게 된다면, 더 이상 정보 저장부(220)의 프로그램 동작은 일어나지 않으며, 가중치 전류 iw와 정보 저장부(220)를 흐르는 시냅스 전류 is가 같아지도록 학습부(100)의 가중치가 정보 저장부(220)로 전사된 것으로 판단되고, 가중치의 전사는 완료된다. If the threshold voltage of the memory cell of the
추론 제어부(210)의 출력인 프로그램 제어신호 CSO에 의해 프로그램 동작의 여부는 결정된다. 정보 저장부(220)가 연결된 컬럼 라인은 추론부(200)의 컬럼 소스 라인 SSL과 컬럼 비트 라인인 SBL의 쌍으로 구성될 수 있다. 프로그램 제어신호 CSO에 의존하여 컬럼 소스 라인 SSL 및 컬럼 비트 라인 SBL의 전압 레벨이 조절된다. 실시의 형태에 따라 컬럼 소스 라인 SSL 및 컬럼 비트 라인 SBL에는 프로그램 제어신호 CSO가 직접 연결될 수도 있으며, 프로그램 제어신호 CSO 신호에 의해 컬럼 소스 라인 SSL 및 컬럼 비트 라인 SBL의 전압 레벨을 제어하는 별도의 제어 수단이 구비될 수도 있다.Whether a program operation is performed is determined by the program control signal CSO, which is an output of the
정보 저장부(220)에는 추론 로우 라인 SWL이 연결되고, 추론 로우 라인 SWL을 통해 읽기 전압 Vread 또는 프로그래밍 전압 Vpp가 공급될 수 있다. 정보 저장부(220)의 메모리 셀을 흐르는 시냅스 전류 is는 추론 로우 라인 SWL에 인가되는 전압값에 의존한다. 추론 로우 라인 SWL을 통해 정보 저장부(220)에 소정의 Vread가 인가될 때, 시냅스 전류 is는 메모리 셀의 문턱 전압과 인가되는 읽기 전압 Vread에 의해 결정된다. An inference low line SWL is connected to the
정보 저장부(220)의 추론 로우 라인 SWL에 인가되는 소정의 읽기 전압 Vread에 의해 발생되는 시냅스 전류 is가 학습부(100)에서 공급되는 가중치 전류 iw보다 크면, 노드 N1에서 전류 평형을 맞추기 위해 추론 제어부(210)로부터 노드 N1으로 추론 제어전류 ia가 인출된다. 상기 추론 제어부(210)는 추론 제어전류 ia가 인출되는 방향을 감지하고 프로그램 제어신호 CSO를 생성한다. 또한, 프로그램 제어신호 CSO는 이후 이어지는 프로그램 동작 단계에서 정보 저장부(220)에서 문턱 전압을 상승시키는 프로그램 동작이 일어나도록 컬럼 비트 라인 SBL 및 컬럼 소스 라인 SSL의 전압을 제어한다. 프로그램 동작 단계에서 추론 로우 라인 SWL에는 프로그램 전압 Vpp가 인가될 수 있다. 정보 저장부(220)에서 프로그램 동작이 수행되면, 정보 저장부(220)의 문턱 전압 또는 채널 저항이 증가하여, 추후 읽기 전압 Vread에 의해 발생되는 전류량은 감소한다. If the synaptic current is generated by the predetermined read voltage Vread applied to the inferred low line SWL of the
상술한 동작은 정보 저장부(220)를 흐르는 시냅스 전류 is가 가중치 전류 iw와 동일하거나 작을 때까지 수행된다. 즉, 시냅스 전류 is가 가중치 전류 iw보다 하회하는 조건에서 추론 제어전류 ia는 추론 제어부(210)로 유입되는 방향으로 흐른다. 추론 제어부(210)은 추론 제어전류 ia의 방향을 감지하고, 추론 제어전류 ia의 방향에 상응하는 프로그램 제어신호 CSO를 출력한다. 이후의 프로그램 동작 단계에서 프로그램 제어신호 CSO는 컬럼 비트 라인 SBL 및 컬럼 소스 라인 SSL의 전압을 제어하고, 제어된 컬럼 비트 라인 SBL 및 컬럼 소스 라인 SSL의 전압들에 의해 정보 저장부(220)에서 문턱 전압을 상승시키는 프로그램 현상은 발생되지 않는다. The above-described operation is performed until the synaptic current is flowing through the
본 발명에서 추론 제어전류 ia는 특정의 레벨로 고정된 값이 아니며, 정보 저장부(220)에서 읽기 전압 Vread가 인가될 경우, 정보 저장부(220)에서 발생되는 시냅스 전류 is와 가중치 전류 iw의 차이값을 지칭한다.In the present invention, the inference control current ia is not a fixed value at a specific level, and when the read voltage Vread is applied from the
또한, 읽기 전압 Vread에 의해 정보 저장부(220)가 발생시킬 수 있는 시냅스 전류 is의 최대값은 상기 학습부(100)가 공급하는 가중치 전류 iw의 최대값 이상임이 바람직하다.In addition, it is preferable that the maximum value of the synaptic current is generated by the
상술한 과정을 통해, 학습부(100)에 저장된 동적 특성의 휘발성 가중치 정보는 가중치 전류 iw와 시냅스 전류 is의 매칭을 통해 추론부(200)의 비휘발성의 가중치 정보로 저장된다.Through the above-described process, the volatile weight information of the dynamic characteristics stored in the
또한, 상술한 과정을 통해 학습부(100)에 커패시터 전압의 형태로 저장된 가중치 정보는 추론부(200)의 메모리 셀의 문턱 전압 또는 채널 저항의 형태로 전환된다. 학습부(100)는 반복적이고 고속의 학습 동작을 위해 커패시터와 같은 동적(dynamic)이고 휘발성의 메모리 특성을 가진다. 또한, 추론부(200)의 정보 저장부(220)는 학습부(100)의 가중치 정보를 저장하기 위해 비휘발성 메모리의 특성을 가진다. 따라서, 학습된 가중치 정보는 저장된 데이터의 리프레시 동작이나 전원 조건에 관계없이 시냅스 소자에 기록된 값으로 유지될 수 있다.In addition, the weight information stored in the form of capacitor voltage in the
도 2는 본 발명의 제1 실시예에 따라 상기 도 1의 인공 신경망 소자를 구현하기 위한 회로도이다.2 is a circuit diagram for implementing the artificial neural network device of FIG. 1 according to the first embodiment of the present invention.
도 2를 참조하면, 학습부(100)는 가중치 정보 형성부(110) 및 가중치 정보 제어부(120)을 가진다. 가중치 정보 형성부(110)은 학습을 통한 가중치 전압 Vw를 저장하고, 가중치 전압 Vw에 상응하는 가중치 전류 iw의 크기를 결정한다. 또한, 가중치 정보 형성부(110)와 제1 노드 N1 사이에 연결된 가중치 정보 제어부(120)은 학습 로우 라인 VWL을 통해 인가되는 로우 선택 전압 VL에 의존하여 가중치 전류 iw를 학습 컬럼 라인 VBL의 제1 노드 N1에 출력한다.Referring to FIG. 2 , the
가중치 정보 형성부(110)은 제1 커패시터 CL 및 제1 트랜지스터 Q1를 가지고, 가중치 정보 제어부는 제2 트랜지스터 Q2를 가진다. The weight
제1 커패시터 CL과 제1 트랜지스터 Q1은 양의 기준전압 VBDD에 연결되고, 제1 커패시터 CL의 다른 단자는 제1 트랜지스터 Q1의 게이트 단자에 연결된다. 또한, 제2 트랜지스터 Q2는 제1 노드 N1과 제1 트랜지스터 Q1 사이에 연결되고, 게이트 단자에는 학습 로우 라인 VWL이 연결되고, 로우 선택 전압 VL이 인가된다.The first capacitor CL and the first transistor Q1 are connected to the positive reference voltage VBDD, and the other terminal of the first capacitor CL is connected to the gate terminal of the first transistor Q1. In addition, the second transistor Q2 is connected between the first node N1 and the first transistor Q1, the learning row line VWL is connected to the gate terminal, and the row selection voltage VL is applied.
설명의 편의를 위해 가중치의 학습 동작은 2개의 스위치들 SWup 및 SWdw를 이용하여 2개의 전류원 Iup 및 Idw를 제어하는 것으로 설명한다. 즉 제1 커패시터 CL 양단에 전압의 형태로 저장되는 가중치는 학습 동작의 전파 및 역전파 연산을 거치면서 지속적으로 값이 업데이트 되는데 상기 스위치 SWup 및 SWdw를 활용한다. 일례로서, 학습의 결과로서 가중치를 Δw만큼 증대시킬 필요가 있을 때에는 Δw에 비례하는 시간 동안 SWdw 스위치를 켜서 Vw값을 증가시킬 수 있다. For convenience of description, the learning operation of the weight will be described as controlling two current sources Iup and Idw using two switches SWup and SWdw. That is, the value of the weight stored in the form of voltage across the first capacitor CL is continuously updated through propagation and reverse propagation of the learning operation, and the switches SWup and SWdw are used. As an example, when it is necessary to increase the weight by Δw as a result of learning, the Vw value may be increased by turning on the SWdw switch for a time proportional to Δw.
로우 선택 전압 VL은 제2 트랜지스터 Q2의 온/오프 상태에 의존하여 제1 노드 N1을 흐르는 가중치 전류 iw를 형성할 수 있다. 예컨대, 로우 선택 전압 VL이 하이 레벨(high level)이면, 제2 트랜지스터 Q2는 오프되고, 전류는 제1 노드 N1로 공급되지 않는다. 또한, 로우 선택 전압 VL이 로우 레벨이면, 제2 트랜지스터 Q2는 온된다. 또한, 제1 트랜지스터 Q1의 소스-게이트 사이의 전압차인 가중치 전압 Vw에 의존하여 가중치 전류 iw를 발생시킨다. 생성된 가중치 전류 iw는 제2 트랜지스터 Q2를 통해 제1 노드 N1로 전달된다.The row selection voltage VL may form a weighting current iw flowing through the first node N1 depending on the on/off state of the second transistor Q2. For example, when the row selection voltage VL is at a high level, the second transistor Q2 is turned off, and no current is supplied to the first node N1. Also, when the row selection voltage VL is at a low level, the second transistor Q2 is turned on. In addition, the weighting current iw is generated depending on the weighting voltage Vw, which is the voltage difference between the source and the gate of the first transistor Q1. The generated weight current iw is transferred to the first node N1 through the second transistor Q2.
추론부(200)는 스위치 등을 통해 상기 학습부(100)에 전기적으로 연결될 수 있다. The
추론부(200)를 구성하는 추론 제어부(210)는 전류 감지기(211) 및 비교기(212)를 가진다. 전류 감지기(211)는 다양한 형태의 전류 감지 증폭기를 사용할 수 있으나, 본 명세서에서는 일례로서 전류 적분기 방식의 전류 감지기에 대해 설명한다. 전류 적분기의 경우 연산증폭기 및 피드백 커패시터 CA로 구성 가능하다. 전류 감지기(211) 및 비교기(212)의 양의 입력단자에는 비교 기준전압 VB가 인가될 수 있는데, SW2가 켜지면 연산증폭기의 피드백에 의해서 학습 컬럼 라인 VBL 전압 역시 비교 기준전압 VB로 유지된다. VBL 전압은 학습 가중치 셀의 전류 독출 트랜지스터인 Q1과 Q2의 드레인 전압을 결정하며, 컬럼 비트 라인 SBL은 추론부(200)의 트랜지스터 Q3의 드레인에 해당한다. 가중치 전류 iw의 전사 동작 시, 상기 VBL 및 SBL 전압은 상기 연산증폭기 피드백에 의해 비교 기준전압 VB로 유지된다. 전류 감지기(211)의 리셋 동작을 위해 피드백 커패시터 CA와 병렬로 리셋 스위치 SWr이 구비될 수 있다.The
전류의 관점에서 전류 감지기(211)의 동작은 다음과 같이 해석된다. The operation of the
만일, 전류 감지기(211)의 입력단으로부터 제1 노드 N1을 향해 추론 제어전류 ia가 흐르면, 추론 제어전류 ia는 피드백 커패시터 CA 및 전류(211)의 출력단자인 제3 노드 N3로부터 공급되어야 한다. 또한, 증폭기가 가지는 가상 단락 회로에 의해 음의 입력 단자는 비교 기준전압 VB와 동일한 직류 전압값을 가진다. 따라서, 상기 조건에서 전류 감지기(211)의 출력 단자인 제3 노드 N3은 비교 기준전압 VB보다 높은 전압값을 가지며, 비교기(212)는 로우 레벨의 프로그램 제어신호 CSO를 형성한다. If the speculation control current ia flows from the input terminal of the
만일, 추론 제어전류 ia가 제1 노드 N1로부터 전류 감지기(211)의 입력단으로 흘러 들어가는 방향이면, 전류 적분의 결과로써 제3 노드 N3의 전압은 비교 기준전압 VB보다 낮은 값을 가지며, 비교기(212)는 하이 레벨의 프로그램 제어신호 CSO를 출력한다.If the inference control current ia flows from the first node N1 to the input terminal of the
정보 저장부(220)는 동적 특성을 가지는 비휘발성 메모리 소자로 구성된다. 사용가능한 비휘발성 메모리 소자로는 ReRAM, MRAM 또는 플래시 메모리 셀 등이 있다. ReRAM은 프로그램 동작의 수행에 의해 전도성 필라멘트가 생성되고, 문턱 전압이 감소하는 특징이 있다. 또한, 플래시 메모리는 프로그램 동작의 수행에 의해 전자가 트랩되고, 트랩된 전자에 의해 문턱 전압이 증가하는 특징이 있다. The
본 실시예에서는 설명의 편의를 위해 n형의 플래시 메모리 Q3으로 정보 저장부(220)가 구성된 것으로 설명한다. 다만, 게이트 단자인 추론 로우 라인 SWL에 인가되는 프로그램 전압 Vpp을 통해 채널의 저항이 변경되거나 문턱 전압이 변경되고, 비휘발성의 특성을 가진다면 여하한 형태로도 가능할 것이다. In the present embodiment, for convenience of description, it will be described that the
플래시 메모리 셀 Q3의 소스/드레인 중 일측 단자는 컬럼 비트 라인 SBL의 제2 노드 N2에 연결되고, 타측 단자는 컬럼 소스 라인 SSL에 연결된다. 또한, 플래시 메모리 셀 Q3의 게이트 단자는 추론 로우 라인 SWL에 연결된다. 추론 로우 라인 SWL에는 프로그램 전압 Vpp 또는 읽기 전압 Vread가 인가될 수 있으며, 직렬(series) 셀 배열의 경우에는 통과 전압 Vpass가 인가될 수도 있다. One terminal of the source/drain of the flash memory cell Q3 is connected to the second node N2 of the column bit line SBL, and the other terminal is connected to the column source line SSL. Also, the gate terminal of the flash memory cell Q3 is connected to the speculative row line SWL. A program voltage Vpp or a read voltage Vread may be applied to the reasoning low line SWL, and in the case of a series cell arrangement, a pass voltage Vpass may be applied.
상기 프로그램 전압 Vpp는 플래시 메모리 셀에서 채널 영역으로부터 전하 저장층으로 전자를 주입할 수 있는 전압 레벨을 가진다. 또한, 상기 읽기 전압 Vread은 프로그램 전압 Vpp보다 낮은 값을 가지며, 읽기 전압 Vread의 인가에 의해 프로그램 동작이 일어나지 않는다. 또한, 읽기 전압 Vread는 특정의 값을 가지며, 프로그램 동작이 진행될수록 플래시 메모리 셀 Q3을 흐르는 전류량은 감소한다. 또한, 플래시 메모리 Q3에 대한 소거 동작이 수행되어 전자의 트랩이 발생하지 않은 경우, 읽기 전압 Vread에 따른 플래시 메모리 Q3의 전류는 최대값 imax가 된다. 또한, 최대 전류 imax는 학습부(100)에서 발생시킬 수 있는 가중치 전류 iw의 최대 전류보다 크게 설정됨이 바람직하다.The program voltage Vpp has a voltage level capable of injecting electrons from the channel region into the charge storage layer in the flash memory cell. In addition, the read voltage Vread has a lower value than the program voltage Vpp, and a program operation does not occur due to the application of the read voltage Vread. Also, the read voltage Vread has a specific value, and the amount of current flowing through the flash memory cell Q3 decreases as the program operation proceeds. In addition, when the erase operation is performed on the flash memory Q3 and the electron trap does not occur, the current of the flash memory Q3 according to the read voltage Vread becomes the maximum value imax. In addition, the maximum current imax is preferably set to be greater than the maximum current of the weighting current iw that can be generated by the
가중치 전사를 위한 회로 동작 과정의 한 예시를 도 2를 바탕으로 설명하면 다음과 같다. 먼저 학습부(100)의 가중치 전류 iw와 추론부(200)의 메모리 셀을 흐르는 시냅스 전류 is의 크기를 비교하여 감지하는 전류 비교 단계가 실시된다. 상기 전류 비교 단계에서 SWr이 접속되어 연산증폭기의 피드백이 유지된 상태에서 SW2가 접속되면 학습 컬럼 라인 VBL의 전압은 비교 기준전압 VB로 유지된다. SW1은 접속되어 학습 컬럼 라인 VBL과 컬럼 비트 라인 SSL 라인이 연결된다. 학습 로우 라인 VWL에 의해 Q2가 켜지는 시점에 학습 가중치에 비례하는 가중치 전류 iw가 제1 노드 N1으로 유입된다. 또한 Q3에 연결된 추론 로우 라인 SWL에 읽기 전압 Vread가 인가되어 시냅스 전류 is 전류 제1 노드 N1에서 Q3로 유출된다. 따라서 제1 노드 N1에서의 전류 평형을 맞추기 위해 is와 iw의 차이에 해당하는 전류인 추론 제어전류 ia가 추론 제어부(210)로부터 제1 노드 N1으로 흐르기 시작한다. 이후 SWr이 열리게 되고 이 시점부터 추론 제어전류 ia 전류는 SWr이 아니라 커패시터 CA를 통해 흐르고, 커패시터 CA에는 추론 제어전류 ia를 적분한 전하량이 누적된다. 가중치 전사를 위한 회로 동작에서 상기 스위치들의 연결 및 상기 로우 라인들의 전압 인가 순서는 상기 제시한 설명 외에도 다양한 사례가 가능하다 할 것이다. An example of a circuit operation process for weight transfer will be described with reference to FIG. 2 . First, a current comparison step of comparing and sensing the weight current iw of the
또한 상기 도 2에서는 제1 스위치 SW1이 공통연결점 X와 제2 노드 N2를 연결하고, 제2 스위치 SW2가 공통연결점 X와 추론 제어부(210) 입력 노드 N4를 연결하는 것으로 설명되나, 실제 적용에 있어서는 제1 노드 N1, 제2 노드 N2, 추론 제어부(210) 입력 노드 N4 중 임의의 2곳과 공통연결점 X를 각각 연결하는 것일 수도 있다.Also, in FIG. 2, it is described that the first switch SW1 connects the common connection point X and the second node N2, and the second switch SW2 connects the common connection point X and the
상기 전류 비교 단계의 동작에서 학습부(100)의 VBDD에는 비교 기준전압 VB보다 높은 레벨의 바이어스 전압이 인가되며, 컬럼 소스 라인 SSL에는 비교 기준전압 VB보다 낮은 적절한 바이어스 전압이 인가될 수 있으며, 상기 컬럼 소스 라인 SSL 라인에 인가되는 바이어스는 음의 전원 전압인 VSS일 수 있다(본 발명에서 음의 기준전압은 양의 기준전압 VDD 등에 비해 낮은 값을 가지는 전원전압을 지칭하는 것으로 이해되어야 한다). 상기 전류 비교 단계의 회로 동작 시에 학습부(100)의 PMOS 트랜지스터 Q1은 선형 영역 또는 포화 영역 상태일 수 있으며, 추론부(200)의 플래시 셀 Q3는 또한 선형 영역 또는 포화 영역 상태일 수 있다. In the operation of the current comparison step, a bias voltage higher than the comparison reference voltage VB may be applied to VBDD of the
스위치 SWr이 접속된 상태에서는 가상단락 피드백에 의해 제3 노드 N3와 제4 노드 N4의 전압은 VB가 된다. 이후 SWr이 열린 상태에서, 플래시 메모리 셀 Q3을 흐르는 시냅스 전류 is가 학습부(100)의 가중치 전류 iw보다 큰 값을 가지면, 공통 연결점 X에서 키르히호프 전류 법칙을 만족하기 위해 추론 제어부(210)의 추론 제어전류 ia는 제3 노드 N3으로부터 CA를 통해 제4 노드 N4를 지나 공통연결점 X로 흐른다. 일정 시간 동안 흐르는 추론 제어전류 ia는 커패시터 CA의 전하량으로 누적되며, 제3 노드 N3의 전압은 커패시터 CA 전하량에 비례하여 상승하여 초기값 VB보다 높아진다. In a state in which the switch SWr is connected, the voltages of the third node N3 and the fourth node N4 become VB by the virtual short feedback. After SWr is open, if the synaptic current is flowing through the flash memory cell Q3 has a value greater than the weight current iw of the
추론 제어전류 ia를 누적하는 적절한 시간이 경과한 시점에 Ecomp 신호에 의해 비교기(212)가 활성화되며 비교 기준전압 VB와 전류 감지기(211)의 출력인 제3 노드 N3의 전압을 비교하여 그 결과를 프로그램 제어신호 CSO로 출력한다. 상기 설명 사례와 같이 전류 감지기(211)의 출력이 비교 기준전압 VB보다 높은 경우에 프로그램 제어신호 CSO는 VSS 전압값을 출력한다.When the appropriate time for accumulating the inference control current ia has elapsed, the
추론 제어부(210)가 학습부(100)의 가중치 전류 iw와 추론부(200)의 메모리 셀 전류 is를 비교 감지하는 상기 전류 비교 단계에 이어 상기 두 전류를 비교한 결과를 바탕으로 메모리 셀의 문턱전압을 조절하는 프로그램 단계가 실행된다. 시냅스 전류 is 가 가중치 전류 iw보다 큰 경우, 상기 설명과 같이 프로그램 제어신호 CSO는 VSS(음의 전원 전압)를 출력한다. 컬럼 소스 라인 SSL과 컬럼 비트 라인 SBL은 스위치(도시하지 않음)를 통해 상기 프로그램 제어신호 CSO에 연결되거나 또는 VSS 전압이 인가되도록 프로그램 제어신호 CSO에 의해 제어된다. 이 단계에서 SW1은 열린 상태로 유지된다.Following the current comparison step in which the
상기 프로그램 단계에서 추론 로우 라인 SWL에는 프로그램 전압 Vpp가 인가된다. 플래시 메모리 셀 Q3의 소스/드레인에 해당하는 SSL/SBL 전압이 VSS이고, 게이트에 해당하는 SWL 전압이 Vpp일 때 상기 Q3 셀에서는 높은 게이트-소스 전압에 의해 채널 전자가 터널링에 의해 전하저장층으로 주입되는 프로그램 현상이 발생한다. 전하저장층에 전자가 주입됨에 따라 메모리 셀 Q3의 문턱전압이 높아진다. 상기 프로그램 동작을 실시한 메모리 셀은 실시하기 전에 비해 문턱전압이 높아지므로 Vread 전압을 인가한 상태에서 흐르는 시냅스 전류 is의 크기는 프로그램 실시 전에 비해 감소하게 된다. 프로그램 동작의 실행 횟수가 증가할수록 시냅스 전류 is의 크기는 지속적으로 감소한다.In the programming step, the program voltage Vpp is applied to the speculation low line SWL. When the SSL/SBL voltage corresponding to the source/drain of the flash memory cell Q3 is VSS and the SWL voltage corresponding to the gate is Vpp, in the Q3 cell, channel electrons are tunneled to the charge storage layer by the high gate-source voltage. The injected program phenomenon occurs. As electrons are injected into the charge storage layer, the threshold voltage of the memory cell Q3 increases. Since the threshold voltage of the memory cell subjected to the program operation is higher than before the execution of the program, the magnitude of the synaptic current is flowing while the Vread voltage is applied is reduced compared to before the execution of the program. As the number of executions of the program operation increases, the magnitude of the synaptic current is continuously decreases.
상기 전류 비교 단계에서 플래시 메모리 셀 Q3을 흐르는 시냅스 전류 is가 학습부(100)의 가중치 전류 iw보다 작은 값을 가지면, 추론 제어전류 ia는 공통 연결점 X로부터 제4 노드 N4로 유입되어 커패시터 CA를 통해 제3 노드 N3로 흐른다. 일정 시간 동안 흐르는 추론 제어전류 ia는 커패시터 CA의 전하량으로 누적되며, 제3 노드 N3의 전압은 커패시터 CA의 전하량에 비례하여 하강하여 초기값인 비교 기준전압 VB보다 낮아진다. 추론 제어전류 ia를 누적하는 적절한 시간이 경과한 시점에 Ecomp 신호에 의해 비교기(212)가 활성화되며 비교 기준전압 VB와 제3 노드 N3의 전압을 비교하여 그 결과를 프로그램 제어신호 CSO로 출력한다.When the synaptic current is flowing through the flash memory cell Q3 in the current comparison step has a value smaller than the weight current iw of the
상기 설명 사례와 같이 전류 감지기(211)의 출력인 제3 노드 N3의 전압이 비교 기준전압 VB보다 낮은 경우에 프로그램 제어신호 CSO는 VDD (양의 전원 전압) 전압값을 출력한다. 상기 전류 비교 단계에 이어 프로그램 단계가 실행된다. 상기 시냅스 전류 is가 가중치 전류 iw보다 작은 경우, 상기 설명과 같이 프로그램 제어신호 CSO는 VDD를 출력하고, 컬럼 소스 라인 SSL과 컬럼 비트 라인 SBL은 스위치(도시하지 않음)를 통해 상기 프로그램 제어신호 CSO에 연결되거나 또는 VDD 전압이 인가되도록 프로그램 제어신호 CSO에 의해 제어된다. 이 단계에서 SW1은 열린 상태로 유지된다.As in the above-described case, when the voltage of the third node N3 that is the output of the
상기 프로그램 단계에서 추론 로우 라인 SWL에는 프로그램 전압 Vpp가 인가된다. 플래시 메모리 셀 Q3의 소스/드레인에 해당하는 SSL/SBL에 VDD가 인가되면, 비록 게이트에 높은 프로그램 전압 Vpp가 인가되더라도 상기 Q3 셀에서는 게이트-소스 전압은 현저히 낮아져 터널링 현상이 충분히 억제되어 프로그램 현상이 발생하지 않는다. 따라서 프로그램 단계를 거치더라도 상기 Q3 셀의 문턱전압에는 변화가 없다.In the programming step, the program voltage Vpp is applied to the speculation low line SWL. When VDD is applied to the SSL/SBL corresponding to the source/drain of the flash memory cell Q3, even if a high programming voltage Vpp is applied to the gate, the gate-source voltage is significantly lowered in the Q3 cell, so that the tunneling phenomenon is sufficiently suppressed to prevent the programming phenomenon. doesn't happen Therefore, there is no change in the threshold voltage of the Q3 cell even after the programming step.
도 3은 본 발명의 제1 실시예에 따라 상기 도 2의 인공 신경망 소자의 동작을 설명하기 위한 타이밍도이다. 3 is a timing diagram for explaining the operation of the artificial neural network element of FIG. 2 according to the first embodiment of the present invention.
상기 도 2에 도시된 인공 신경망 소자는 학습 모드, 가중치 전사 모드, 및 추론 모드의 3가지 동작 상태가 존재할 수 있다. The artificial neural network element shown in FIG. 2 may have three operating states: a learning mode, a weighted transcription mode, and an inference mode.
상기 학습 모드는 학습부(100)의 배열로 구성된 신경망이 전파 및 역전파 동작을 통해 커패시터 CL에 저장되는 최적화된 가중치 배열을 구하는 동작 상태이다. 상기 모드의 동작에서는 학습에 의해 가중치의 업데이트가 지속적으로 이루어진다. 상기 가중치 업데이트 동작은 스위치 SWup 또는 SWdw가 접속되는 펄스 시구간에 비례하는 전하량이 커패시터 CL로 충전되거나 방전되면서 실행된다. 따라서 상기 스위치 중 하나를 선택하여 업데이트되는 학습부(100)의 가중치 변화량 Δw의 부호를 결정하고, 상기 Δw의 크기는 스위치가 접속되는 펄스 시구간의 길이로 조절할 수 있다. 상기 학습 모드 동작 시에는 SW1이 열려서 추론부(200)는 학습부(100)로부터 분리된다. 다만 시스템 설계에 따라 추론 제어부(210)는 학습부(100)의 전류감지기로도 겸용이 가능하므로 상기 학습 모드 동안 SW2가 연결될 수도 있다.The learning mode is an operation state in which the neural network composed of the arrangement of the
상기 가중치 전사 모드에서는 학습부(100)에 획득된 시냅스 가중치를 추론부(200)의 비휘발성 시냅스 셀인 정보 저장부(220)로 복제하는 동작이 실행된다. In the weight transfer mode, an operation of duplicating the synaptic weight obtained by the
상기 가중치 전사 동작 모드는 학습부(100)의 가중치 전류 iw와 추론부(200)의 시냅스 메모리 셀에 해당하는 정보 저장부(220)의 시냅스 전류 is를 비교하는 전류 비교 단계, 상기 전류 비교 결과를 바탕으로 정보 저장부(220)의 전류 크기를 조절하는 프로그램 단계로 구분된다. 상기 가중치 전사 동작 모드에서는 상기 전류 비교 단계와 상기 프로그램 단계를 번갈아가며 반복하여 시냅스 전류 is를 가중치 전류 iw에 최대한 근접시킨다.The weight transfer operation mode is a current comparison step of comparing the weight current iw of the
상기 추론 모드는 비휘발성 메모리 셀로 전사된 가중치를 사용하여 추론부에서 신경망 연산 동작을 수행하는 상태이다. 상기 추론 모드에서는 학습부(100)와 추론부(200)가 전기적으로 분리된다.The reasoning mode is a state in which the neural network calculation operation is performed by the reasoning unit using the weight transferred to the nonvolatile memory cell. In the reasoning mode, the
도 3을 참조하면, 상기 가중치 전사 모드에서 상기 전류비교감지 단계와 상기 프로그램 단계를 반복하는 동작 단위로 이루어진다. Referring to FIG. 3 , in the weight transfer mode, the current comparison sensing step and the program step are repeated in an operation unit.
상기 도 3에 파형들은 시스템 클럭에 연동하여 인가된다. 시스템 클럭에 연동하여 인공 신경망 소자를 구동하는 파형들이 인가됨은 당업자에게 자명한 사항이므로 상세한 설명은 생략키로 한다.The waveforms in FIG. 3 are applied in conjunction with the system clock. It is obvious to those skilled in the art that the waveforms for driving the artificial neural network element are applied in conjunction with the system clock, so a detailed description thereof will be omitted.
도 2 및 도 3를 참조하면, 학습 모드 동작 시 제1 스위치 SW1는 오프되어 학습부(100)와 추론부 시냅스 배열에 해당하는 정보 저장부(220)는 전기적으로 분리된다. 학습부(100)의 단위 시냅스는 CL 전압으로 저장된 가중치와 학습 로우 라인 VWL 펄스의 폭에 해당하는 입력값의 곱에 해당하는 누적 전류량을 학습 컬럼 라인 VBL 라인으로 출력한다. 2 and 3 , during the learning mode operation, the first switch SW1 is turned off, so that the
학습 칼럼 라인 VBL에서 각 로우에 연결된 시냅스의 출력 전류가 합산되어 신경망에서 전파 동작의 기본에 해당하는 누적곱합산(multiply-and-accumulation) 연산을 실행하게 된다. 또한, 상기 학습부(100)에서는 추가적인 보조 회로 연결을 통해 학습 동작 시 필요한 역전파 연산도 실행된다. In the learning column line VBL, the output currents of synapses connected to each row are summed, and a multiply-and-accumulation operation corresponding to the basic propagation operation in the neural network is executed. In addition, the
상기 전파와 역전파 동작을 통해 학습부(100)의 가중치는 업데이트량 Δw로 결정된다. 상기 가중치 업데이트량 Δw는 스위치 SWup와 SWdw 중 하나를 선택하여 업데이트되는 학습부(100)의 가중치의 변화량 Δw의 부호를 결정하고, 상기 Δw의 크기는 스위치가 접속되는 펄스 시구간의 길이로 조절할 수 있다. 학습부(100)의 전파, 역전파, 및 가중치 업데이트 실행을 위해서 도2에 도시되지 않은 적절한 배열 및 주변 회로의 구성이 필요하다. Through the propagation and backpropagation operations, the weight of the
다만, 본 명세서에서 제시하는 내용은 학습부(100)의 시냅스 가중치가 커패시터 전압으로 저장되고 전류값으로 출력되는 한, 배열 및 주변 회로의 구체적인 구성에 제약되지 아니한다. However, as long as the synaptic weight of the
도 3의 타이밍도를 참조하면, 학습 모드가 중지되고 가중치 전사 모드가 시작된다. 상기 가중치 전사 모드는 먼저 전류 비교 단계부터 시작한다. 전류 비교 단계에서 학습 컬럼 라인 VBL과 컬럼 비트 라인 SBL은 SW1에 의해 접속된다. Referring to the timing diagram of FIG. 3 , the learning mode is stopped and the weight transfer mode is started. The weight transfer mode first starts with a current comparison step. In the current comparison step, the learning column line VBL and the column bit line SBL are connected by SW1.
학습 로우 라인 VWL에 Q2를 켜는 낮은 레벨의 전압, 추론 로우 라인 SWL에 Vread 전압이 각각 인가됨에 따라, 가중치 전류 iw가 학습 컬럼 라인 VBL로 흘러나오고, 추론부 시냅스 셀 전류 is가 컬럼 비트 라인 SBL에서 정보 저장부(220)로 흐른다. 상기 두 전류의 크기에 따라, 그 차이에 해당하는 추론 제어전류 ia가 추론 제어부(210)로 유입되거나 혹은 유출된다. As the low-level voltage that turns on Q2 to the training row line VWL and the voltage Vread are applied to the inference low line SWL, respectively, a weighting current iw flows into the training column line VBL, and the inference unit synaptic cell current is is from the column bit line SBL. flows to the
상기 추론 제어전류 ia가 커패시터 CA의 전하량으로 누적되고, 상기 커패시터 CA의 전하량에 의존하여 제3 노드 N3의 전압은 비교 기준전압 VB에서 벗어나게 된다. 즉, 상기 제3 노드 N3의 전압은 전류 감지기(211)의 적분 동작에 의해 추론 제어전류 ia의 방향에 의존하여 비교 기준전압 VB보다 높은 값 또는 낮은 값을 갖게 된다. The reasoning control current ia is accumulated as an amount of charge of the capacitor CA, and the voltage of the third node N3 deviates from the comparison reference voltage VB depending on the amount of charge of the capacitor CA. That is, the voltage of the third node N3 has a value higher or lower than the comparison reference voltage VB depending on the direction of the inference control current ia by the integration operation of the
시냅스 전류 is가 가중치 전류 iw보다 큰 값일 경우, 상기 제3 노드 N3의 전압은 비교 기준전압 VB보다 높은 전압을 가지고, 시냅스 전류 is가 가중치 전류 iw보다 작은 값일 경우, 상기 제3 노드 N3의 전압은 비교 기준전압 VB보다 낮은 값을 가진다. 커패시터 CA에 추론 제어전류 ia의 누적이 충분히 이루어진 시점에, 비교기(212)는 활성화되고, 상기 제3 노드 N3의 전압과 비교 기준전압 VB를 비교한 결과는 프로그램 제어신호 CSO를 통해 VDD 또는 VSS로 출력된다.When the synaptic current is is greater than the weighting current iw, the voltage of the third node N3 has a voltage higher than the comparison reference voltage VB, and when the synaptic current is is smaller than the weighting current iw, the voltage of the third node N3 is It has a lower value than the comparison reference voltage VB. When the inference control current ia is sufficiently accumulated in the capacitor CA, the
도 3의 타이밍도를 참조하면, 전류 비교 단계가 종료되고 프로그램 단계가 시작된다. Referring to the timing diagram of FIG. 3 , the current comparison phase ends and the program phase begins.
프로그램 단계에서는 SW1을 열어서 추론부(200)를 학습부(100)로부터 전기적으로 분리하고, 컬럼 라인들인 SSL 및 SBL의 전압은 프로그램 제어신호 CSO에 스위치로 접속되거나 혹은 프로그램 제어신호 CSO에 의해 제어된다. 추론 로우 라인 SWL에 Q3에 터널링 현상이 발생할 수 있는 프로그램 전압 Vpp가 인가된다. 다만 해당 Q3 셀에 프로그램 현상이 발생할지의 여부는 프로그램 제어신호 CSO 전압에 의해 제어되는 컬럼 소스 라인 SSL 및 컬럼 비트 라인 SBL 전압에 의해 결정됨은 앞에서 상술한 바와 같다. In the program stage, SW1 is opened to electrically separate the
이와 같이 전류 비교 단계와 프로그램 단계가 쌍을 이루어 한 묶음 동작(프로그램 패키지)으로 실행된다. 상기 프로그램 패키지 동작은 초기의 시냅스 전류 is가 점차 감소하여 가중치 전류 iw에 비해 최초로 하회할 때까지 충분한 횟수만큼 반복된다. 시냅스 전류 is가 가중치 전류 iw를 하회하게 되면 상기 프로그램 패키지 동작에 의해 더 이상 시냅스 전류 is의 크기가 감소하지 않는다. In this way, the current comparison step and the program step are paired and executed as a bundle operation (program package). The program package operation is repeated a sufficient number of times until the initial synaptic current is gradually decreases and initially becomes lower than the weight current iw. When the synaptic current is is less than the weight current iw, the magnitude of the synaptic current is no longer decreased by the program package operation.
상기 단위 프로그램 패키지 동작에 의한 시냅스 전류 is의 변화량(프로그램 스텝)이 충분히 감소되면, 전류 is가 가중치 전류 iw를 최초로 하회한 경우에 두 전류의 크기는 충분히 근접한다. 상기 조건에서 학습부(100)에서 추론부(200)의 정보 저장부(220)로 가중치 전사가 이루어진 것으로 판단된다. When the amount of change (program step) of the synaptic current is due to the unit program package operation is sufficiently reduced, the magnitudes of the two currents are sufficiently close when the current is is lower than the weight current iw for the first time. Under the above conditions, it is determined that the weight transfer has been made from the
도 2에서는 하나의 시냅스 로우 및 칼럼만 도시하였으나, 학습부(100)와 추론부(200)는 공히 다수의 시냅스 로우 및 칼럼을 가지고 시냅스 배열을 이룬다. 상기 프로그램 패키지 동작은 개별 로우 단위로 모든 또는 다수의 컬럼에서 동시에 실행되는 것이 바람직하며, 추론부(200)의 배열을 이루는 모든 로우의 셀에서 가중치 전사가 이루어지면 학습부(100)로부터 추론부(200)로의 가중치 전사는 완료된다.Although only one synapse row and column is illustrated in FIG. 2 , the
제2 실시예second embodiment
도 4는 본 발명의 제2 실시예에 따른 인공 신경망 소자의 블록도이다.4 is a block diagram of an artificial neural network device according to a second embodiment of the present invention.
도 4를 참조하면, 인공 신경망 소자는 학습부(300), 임시 저장부(400) 및 추론부(500)를 가진다.Referring to FIG. 4 , the artificial neural network device includes a
학습부(300)는 학습 컬럼 라인 VBL의 제1 노드 N1에 연결되고, 학습 로우 라인 VWL을 통해 로우 선택 전압 VL을 수신한다. 또한, 학습부(300)는 획득된 가중치 정보를 전압의 형태로 저장한다. 다만, 상기 학습부(300)에 저장되는 가중치 정보는 동적(Dynamic) 저장 특성을 가진다. The
제2 실시예에 있어서도 가중치 전사 동작은 학습부(300)의 시냅스 가중치를 추론부(500)의 시냅스 가중치로 이전하는 작업이다. 학습부(300) 시냅스 셀이 학습 컬럼 라인 VBL에 출력하는 전류와 추론부(500)의 시냅스 셀이 컬럼 비트 라인 SBL에 출력하는 전류가 동등할 때, 학습부(300)의 시냅스 가중치가 추론부(500)의 시냅스로 전사되었다고 판단한다. 제2 실시예에 있어서 가중치 전사 동작은 2단계로 실시된다. 상기 2단계는 먼저 학습부(300)의 시냅스 가중치를 임시 저장부(400)에 복사하는 임시 저장 단계, 이후 임시 저장부(400)에 복사된 가중치를 추론부(500)의 비휘발성 시냅스 셀에 전사하는 가중치 전사 단계로 구성된다. Also in the second embodiment, the weight transfer operation is an operation of transferring the synaptic weight of the
임시 저장부(400)는 연속적인 값을 갖는 아날로그 데이터의 쓰기 동작을 빠르게 실행할 수 있는 메모리 소자이며, 학습부(300)의 시냅스 셀과 동일하게 전하량으로 데이터를 저장하는 커패시터일 수 있다. 커패시터 소자로 가중치를 저장하므로 학습부(300)의 시냅스 셀과 마찬가지로 시간 경과에 따른 전하 손실에 의해 동적(Dynamic) 저장 특성을 가질 수 있으나, 상기 학습부(300)의 시냅스 셀보다 큰 커패시턴스 값을 가짐으로써 학습부(300)의 시냅스 셀보다 데이터를 더 긴 시간 저장 가능하다. The
상기 임시 저장 단계에서 학습 로우 라인 VWL이 활성화되면, 학습부(300)의 시냅스 셀의 제1 가중치 전류 iw가 학습 컬럼 라인 VBL로부터 유입되고, 시냅스 전류 is와 추론 제어전류 ia가 0이 되도록 제어하여, 임시 저장부(400)에서 출력되는 제2 가중치 전류 ic가 상기 제1 가중치 전류 iw와 동일해지도록 임시 저장부(400)의 커패시터 전압이 자동적으로 조절된다. When the learning row line VWL is activated in the temporary storage step, the first weight current iw of the synaptic cell of the
상기 제2 가중치 전류 ic와 제1 가중치 전류 iw가 동일한 상태에 이르면 임시 저장부(400)의 스위치를 오픈하여 커패시터 전압값을 고정시킨다. 상기 고정시킨 커패시터 전압은 임시 저장부(400)에 복사된 가중치에 해당한다.When the second weighting current ic and the first weighting current iw reach the same state, a switch of the
상기 가중치 전사 단계에서는 추론부(500)의 시냅스 전류 is가 임시 저장부(400)의 제2 가중치 전류 ic와 동일해지도록 상기 두 전류의 크기를 비교감지하고 정보 저장부(520)의 메모리 셀을 프로그램하는 단계이다. In the weight transfer step, the magnitude of the two currents is compared and sensed so that the synaptic current is of the
즉, 상기 제1 실시예에서 추론부(200)의 시냅스 전류 is가 학습부(100)의 제1 가중치 전류 iw와 동일해지도록 두 전류의 크기를 비교감지하고 추론부(200)의 정보 저장부(220)를 프로그램하는 동작과 동일한 과정이며, 학습부(100)가 임시 저장부(400)로 교체된 차이만 존재한다. 상기 가중치 전사 단계는 더 세부적으로는 제1 실시예와 마찬가지로 시냅스 전류 is와 제2 가중치 전류 ic를 비교하는 전류 비교 단계와 정보 저장부(520)의 시냅스 메모리 셀의 문턱전압을 조절하는 프로그램 단계로 구성된다. That is, in the first embodiment, the magnitude of the two currents is compared and detected so that the synaptic current is of the
상기 가중치 전사 단계는 학습부(300)를 상기 추론부(500)로부터 전기적으로 분리시키고, 임시 저장부(400), 추론 제어부(510) 및 정보 저장부(520)를 활성화시켜 동작하게 된다. In the weight transfer step, the
임시 저장부(400)에 가중치 복사가 이루어지면, 학습부(300)는 전기적으로 분리되어 상기 가중치 전사 동작 중에도 별개의 독립적인 학습 동작을 진행할 수 있다.When the weights are copied to the
학습부(300) 및 정보 저장부(520)는 복수개의 로우와 칼럼을 갖는 신경망 배열을 이루는 반면, 임시 저장부(400)는 칼럼마다 1개의 가중치 저장 셀이 존재하며 따라서 전체적으로 1개의 로우 만을 구성한다.While the
상기 임시 저장 단계와 상기 가중치 전사 단계는 신경망 배열의 로우마다 한 묶음으로 실행된다. 학습부(300)에서 신경망의 한 로우를 이루는 시냅스 가중치가 임시 저장부(400)에 저장되고, 상기 저장된 임시 저장부(400)의 가중치가 대응되는 추론부(500)의 로우를 이루는 시냅스 셀로 전사된다. 상기 로우 라인에 연결된 학습부(300)에 대한 전사 동작이 완료된 후, 다음 로우 라인에 대한 전사 동작이 실행될 수 있다. 다만, 학습부(300)에서 로우 라인과 연결된 셀 가중치는 대응되는 로우 라인의 정보 저장부(520)에서 셀 가중치로 전사되되, 전사 동작 과정에 사용되는 임시 저장부(400)는 모든 로우 라인들이 공유할 수 있다. 모든 로우 라인들에 대해 상기 전사 동작이 완료되면 학습부(300)의 모든 시냅스 가중치가 추론부(500)의 정보 저장부(520)로 전사된 것이다.The temporary storage step and the weight transfer step are performed as a bundle for each row of the neural network array. In the
도 5는 본 발명의 제2 실시예에 따른 인공 신경망 소자의 회로도이다.5 is a circuit diagram of an artificial neural network device according to a second embodiment of the present invention.
도 5를 참조하면, 학습부(300)는 가중치 정보 형성부(310) 및 가중치 정보 제어부(320)을 가진다. Referring to FIG. 5 , the
가중치 정보 형성부(310)는 학습을 통한 가중치 전압 Vw를 저장하고, 가중치 전압 Vw에 상응하는 제1 가중치 전류 iw를 생성한다. The weight
또한, 가중치 정보 형성부(310)와 학습 컬럼 라인 VBL의 제1 노드 N1 사이에 연결된 가중치 정보 제어부(320)은 학습 로우 라인 VWL을 통해 인가되는 로우 선택 전압 VL에 의존하여 제1 가중치 전류 iw를 학습 컬럼 라인 VBL의 제1 노드 N1으로부터 유입한다.In addition, the weight
가중치 정보 형성부(310)은 제1 커패시터 CL 및 제2 트랜지스터 Q2를 가지고, 가중치 정보 제어부(320)는 제1 트랜지스터 Q1를 가진다. 제1 트랜지스터 Q1은 제1 노드 N1에 연결되고, 게이트 단자에는 전사 제어전압 로우 선택 전압 VL이 인가된다. 또한, 제2 트랜지스터 Q2는 제1 트랜지스터 Q1과 VBSS 단자 사이에 연결된다. 제2 트랜지스터 Q2의 게이트 단자와 VBSS 단자 사이에는 제1 커패시터 CL이 연결된다.The weight
설명의 편의를 위해 가중치의 학습 동작은 2개의 스위치들 SWup 및 SWdw를 이용하여 2개의 전류원 Iup 및 Idw를 제어하는 것으로 설명한다. 학습 동작을 통한 가중치는 제1 커패시터 CL 양단의 가중치 전압 Vw의 형태로 저장된다. For convenience of description, the learning operation of the weight will be described as controlling two current sources Iup and Idw using two switches SWup and SWdw. The weight through the learning operation is stored in the form of a weight voltage Vw across the first capacitor CL.
임시 저장부(400)는 양의 전원전압 VBDD와 제2 노드 N2 사이에 연결되고, 제1 스위치 SW1을 통해 상기 학습부(300)에 선택적으로 연결된다. 임시 저장부(400)는 제3 트랜지스터 Q3 및 제2 커패시터 CT를 가진다. 제3 트랜지스터 Q3은 양의 전원 전압 VBDD와 제2 노드 N2 사이에 연결되며, 게이트 단자는 제2 커패시터 CT의 타측 단자에 연결된다. 제2 커패시터 CT의 일측 단자는 양의 전원전압 VBDD에 연결된다. 또한, 제3 트랜지스터 Q3의 게이트 단자와 드레인 단자 사이에는 제2 스위치 SW2가 배치된다.The
학습부(300)에 저장된 가중치 정보의 임시 저장 동작은 전사 제어전압 로우 선택 전압 VL이 하이 레벨, 제1 스위치 SW1이 온, 및 제2 스위치 SW2가 온됨을 통해 개시된다. 또한, 임시 저장 동작이 수행되기 위해 제3 스위치 SW3 및 제4 스위치 SW4는 오프된다. 제1 커패시터 CL에 저장된 가중치 전압 Vw에 상응하는 제1 가중치 전류 iw는 제3 트랜지스터 Q3, 제2 노드 N2, 제1 노드 N1, 제1 트랜지스터 Q1 및 제2 트랜지스터 Q2로 형성된 경로를 따라 흐른다. 제1 노드 N1과 접속된 제2 노드 N2의 전압은 Q2를 흐르는 제1 가중치 전류 iw와 Q3를 흐르는 임시 저장부(400)의 제2 가중치 전류 ic가 동일해질 때까지 조정되며, 상기 제2 가중치 전류 ic가 제1 가중치 전류 iw와 동일한 크기에 도달하면, 동일한 전압인 N1, N2 노드와 Q3 게이트 단자의 전압은 일정하게 유지된다. 이후 SW2를 오픈시킴으로써 제1 가중치 전류 iw와 동일한 제2 가중치 전류 ic를 출력하는 Vtmp 전압을 커패시터 CT에 저장한다. 이로서 임시 저장 단계의 동작은 완료된다. 임시 저장 동작이 완료되면 SW1을 오픈하여 학습부(300)를 전기적으로 분리한다.The temporary storage operation of the weight information stored in the
임시 저장 단계에 이어서 실행되는 가중치 전사 단계는 정보 저장부(520)의 시냅스 전류 is가 임시 저장부(400)의 제2 가중치 전류 ic와 동일한 크기를 갖도록 제1 실시예에서 상술한 전류 비교 단계와 프로그램 단계의 프로그램 패키지 동작을 반복적으로 실시한다. The weight transfer step executed following the temporary storage step includes the current comparison step described above in the first embodiment so that the synaptic current is of the
즉, 전류 비교 단계에서 컬럼 소스 라인 SSL에 VSS, 추론 로우 라인 SWL에 Vread 전압이 인가되어 컬럼 비트 라인 SBL로부터 Q4 셀로 시냅스 전류 is가 유입된다. 상기 제2 가중치 전류 ic와 시냅스 전류 is의 차에 해당하는 전류가 전류 감지기(511)에 누적되고 적절한 시점에 Ecmp가 활성화되어 상기 시냅스 전류 is와 제2 가중치 전류 ic의 크기 비교 결과에 따라 프로그램 제어신호 CSO를 통해 VDD 또는 VSS 전압이 출력된다. That is, in the current comparison step, VSS is applied to the column source line SSL and Vread voltage is applied to the inferred row line SWL, so that a synaptic current is flows from the column bit line SBL to the Q4 cell. A current corresponding to the difference between the second weighted current ic and the synaptic current is is accumulated in the
시냅스 전류 is가 제2 가중치 전류 ic에 비해 큰 경우, 프로그램 제어신호 CSO에 VSS가 출력되고, 이후 이어지는 프로그램 단계에서 프로그램 제어신호 CSO 신호는 직접 접속되거나 또는 제어신호로 사용되어 컬럼 소스 라인 SSL과 컬럼 비트 라인 SBL에 VSS 전압을 인가한다. 프로그램 단계에서 추론 로우 라인 SWL에는 고전압 Vpp가 인가되어 컬럼 소스 라인 SSL과 컬럼 비트 라인 SBL에 VSS 전압이 인가될 경우, 터널링에 의한 프로그램 현상이 발생하여 시냅스 셀의 문턱전압을 높인다. When the synaptic current is is larger than the second weighting current ic, VSS is output to the program control signal CSO, and in the subsequent program step, the program control signal CSO signal is directly connected or used as a control signal to form a column source line SSL and a column A voltage VSS is applied to the bit line SBL. In the programming phase, when the high voltage Vpp is applied to the inferred row line SWL and the VSS voltage is applied to the column source line SSL and the column bit line SBL, a programming phenomenon due to tunneling occurs to increase the threshold voltage of the synaptic cell.
제1 실시예에서 상술한 바와 같이 이와 같은 프로그램 패키지 동작을 반복하여 시냅스 전류 is가 제2 가중치 전류 ic를 하회하도록 한다. 시냅스 전류 is가 제2 가중치 전류 ic를 하회하면 프로그램 제어신호 CSO 출력은 VDD가 되고, 컬럼 소스 라인 SSL 및 컬럼 비트 라인 SBL을 VDD가 되도록 제어하므로 추론 로우 라인 SWL에 Vpp가 인가되는 프로그램 단계에서도 터널링 현상이 억제되어 셀의 문턱전압은 그대로 유지된다.As described above in the first embodiment, the above-described program package operation is repeated so that the synaptic current is is lower than the second weight current ic. When the synaptic current is less than the second weighting current ic, the program control signal CSO output becomes VDD, and the column source line SSL and the column bit line SBL are controlled to be VDD. The phenomenon is suppressed and the threshold voltage of the cell is maintained as it is.
모든 로우 라인들에 대하여 학습부(300)의 가중치가 임시 저장부(400)를 거쳐서 정보 저장부(520)에 저장되면 제2 실시예의 가중치 전사 모드는 완료된 것으로 판단된다.When the weights of the
제2 실시예에서 커패시터 CT는 커패시터 CL에 비해 큰 용량값을 가지므로 단위 소자에 필요한 소요면적은 증대된다. 그러나 임시 저장부(400)의 커패시터 CL이 다수개의 로우 라인들과 칼럼 라인들의 교차점마다 배치되는 배열인 반면 커패시터 CT는 하나의 칼럼 라인에 1개만 존재하므로 단위 소자로는 큰 용량을 갖더라도 전체적으로는 소요되는 면적 부담은 감경된다.In the second embodiment, since the capacitor CT has a larger capacitance value than that of the capacitor CL, the area required for the unit element is increased. However, since the capacitor CL of the
도 6은 본 발명의 제2 실시예에 따른 인공 신경망 소자의 동작을 설명하기 위한 타이밍도이다.6 is a timing diagram for explaining the operation of the artificial neural network device according to the second embodiment of the present invention.
도 6을 참조하면, 본 실시예의 인공 신경망 소자는 가중치의 임시 저장 단계 및 가중치 전사 단계로 구성되며, 상기 가중치 전사 단계는 세부적으로 전류 비교 단계 및 프로그램 단계로 구성된다.Referring to FIG. 6 , the artificial neural network device of this embodiment consists of a weight temporary storage step and a weight transfer step, and the weight transfer step includes a current comparison step and a programming step in detail.
도 5 및 도 6을 참조하면, 임시 저장 단계에서 선택된 학습 로우 라인 VWL에 하이 레벨 전압이 인가되고, 제1 스위치 SW1 및 제2 스위치 SW2는 접속된다. 또한, 제3 스위치 SW3 및 제4 스위치 SW4는 오프된다.5 and 6 , a high level voltage is applied to the learning low line VWL selected in the temporary storage step, and the first switch SW1 and the second switch SW2 are connected. Further, the third switch SW3 and the fourth switch SW4 are turned off.
상기 조건에서 제1 트랜지스터 Q1은 턴온되고, 제1 커패시터 CL에 저장된 가중치 전압 Vw에 상응하는 제1 가중치 전류 iw가 발생된다. 학습 컬럼 라인 VBL 라인은 외부에서 의도적으로 인가하는 바이어스가 없으며, 초기 전압은 임의의 값이 될 수 있으나 설명의 편의를 위해 VBDD 전압으로 초기화되어 있다고 가정한다. 접속된 제2 스위치 SW2에 의해 N2 노드에 연결된 Q3의 게이트 전압도 동일하게 VBDD로 초기화 되어 있다고 가정한다. Under the above condition, the first transistor Q1 is turned on, and a first weighting current iw corresponding to the weighting voltage Vw stored in the first capacitor CL is generated. The learning column line VBL line has no bias intentionally applied from the outside, and the initial voltage may be any value, but for convenience of description, it is assumed that the VBDD voltage is initialized. It is assumed that the gate voltage of Q3 connected to the N2 node by the connected second switch SW2 is also initialized to VBDD.
상기 조건에서 Q3의 소스-게이트 사이에 전압이 0이므로 Q3는 꺼져 있으므로 학습 컬럼 라인 VBL 라인의 네트(net) 전류는 제1 노드 N1로부터 가중치 정보 제어부(320)로 유입되는 제1 가중치 전류 iw이다. 학습 컬럼 라인 VBL 라인에서 전류가 학습부(300)로 유출됨에 따라 학습 컬럼 라인 VBL 라인 전압이 하강하게 되고, 학습 컬럼 라인 VBL에 접속된 상태인 Q3의 게이트 전압도 따라서 하강한다. 트랜지스터 Q3의 게이트 전압이 하강함에 따라 Vtmp 전압은 증대되고 따라서 제2 가중치 전류 ic도 증가한다. 상기 추이는 제2 가중치 전류 ic의 크기가 제1 가중치 전류 iw와 동등해져 학습 컬럼 라인 VBL의 네트 전류가 0가 될 때까지 지속된다. In the above condition, since the voltage between the source and gate of Q3 is 0, Q3 is turned off, so the net current of the learning column line VBL line is the first weighting current iw flowing from the first node N1 to the weight
충분한 시간이 경과한 후, 제2 가중치 전류 ic의 크기가 제1 가중치 전류 iw와 동일하게 되는 Vtmp가 커패시터 CT에 저장되고, SW2 스위치가 오픈됨으로써 학습부(300)의 가중치가 임시 저장부(400)의 커패시터 CT에 복사되는 동작이 완료된다. 이후 SW1이 오픈되어 학습부(300)는 전기적으로 분리된다.After a sufficient time elapses, Vtmp at which the magnitude of the second weighting current ic becomes equal to the first weighting current iw is stored in the capacitor CT, and the SW2 switch is opened so that the weight of the
임시 저장 단계가 완료된 후, 가중치 전사 단계가 시작된다. 가중치 전사 단계는 더 세부적으로 전류 비교 단계와 프로그램 단계로 구성되는데, 상기 전류 비교 단계에서 스위치 SW3와 SW4는 접속된다. 추론부(500)의 시냅스 셀의 로우 라인인 추론 로우 라인 SWL에는 Vread 전압이 인가되어 시냅스 전류 is를 컬럼 비트 라인 SBL로부터 인출한다. After the temporary storage phase is completed, the weight transfer phase begins. The weight transfer step is more specifically composed of a current comparison step and a programming step, wherein switches SW3 and SW4 are connected in the current comparison step. The voltage Vread is applied to the reasoning row line SWL, which is the row line of the synaptic cell of the
초기에 스위치 SWr은 접속된 상태로 연산증폭기의 피드백을 통해 학습 컬럼 라인 VBL 전압을 비교 기준전압 VB로 가상단락시킨다. 연결되어 있던 스위치 SWr이 열리면서 전류 비교 동작이 시작된다. 컬럼 비트 라인 SBL로 유입되는 제2 가중치 전류 ic와 컬럼 비트 라인 SBL로부터 유출되는 시냅스 전류 is의 차이에 해당하는 추론 제어전류 ia가 추론 제어부(510)으로 흘러들어 오거나 혹은 흘러나가게 된다. 일정 시간 동안 커패시터 CA에 누적된 추론 제어전류 ia는 방향에 의존하여 제4 노드 N4의 전압을 비교 기준전압 VB보다 상승시키거나 하강시킨다. Initially, the switch SWr is connected and virtually shorts the learning column line VBL voltage to the comparison reference voltage VB through the feedback of the operational amplifier. The connected switch SWr opens and the current comparison operation starts. The speculation control current ia corresponding to the difference between the second weight current ic flowing into the column bit line SBL and the synaptic current is flowing from the column bit line SBL flows into or flows out into the
전류 누적에 충분한 시간이 경과한 시점에 Ecmp 신호를 통해 비교기(512)를 활성화시켜 프로그램 제어신호 CSO 출력을 발생하고 상기 전류 비교 동작이 완료된다. 상기 시냅스 전류 is가 제2 가중치 전류 ic에 비해 큰 값일 경우 프로그램 제어신호 CSO에는 VSS를 출력하고, 그 반대의 경우엔 VDD를 출력한다.When a time sufficient for current accumulation has elapsed, the
이후 이어지는 프로그램 단계에서는 컬럼 소스 라인 SSL 및 컬럼 비트 라인 SBL에 프로그램 제어신호 CSO에 접속되거나 혹은 제어되어 VSS 또는 VDD의 전압이 인가되고, 선택된 추론 로우 라인 SWL 라인에 고전압 Vpp가 인가된다. In the subsequent programming step, a voltage of VSS or VDD is applied to or connected to the program control signal CSO to the column source line SSL and the column bit line SBL, and a high voltage Vpp is applied to the selected inference row line SWL line.
상기 전류 비교 단계의 결과로서 시냅스 전류 is가 제2 가중치 전류 ic보다 큰 경우, 컬럼 소스 라인 SSL 및 컬럼 비트 라인 SBL에 VSS가 인가되고, 게이트에 해당하는 추론 로우 라인 SWL 전압이 Vpp일 때 Q4 셀에서는 높은 게이트-소스 전압에 의해 채널 전자가 터널링에 의해 전하저장층으로 주입되는 프로그램 현상이 발생한다. 전하저장층에 전자가 주입됨에 따라 메모리 셀 Q4의 문턱전압이 높아진다. 상기 프로그램 동작을 실시한 메모리 셀은 실시하기 전에 비해 문턱전압이 높아지므로 Vread 전압을 인가한 상태에서 흐르는 시냅스 전류 is의 크기는 프로그램 실시 전에 비해 감소하게 된다. 프로그램 동작의 실행 횟수가 증가할수록 시냅스 전류 is의 크기는 지속적으로 감소한다. When the synaptic current is greater than the second weight current ic as a result of the current comparison step, VSS is applied to the column source line SSL and the column bit line SBL, and when the inferred row line SWL voltage corresponding to the gate is Vpp, cell Q4 In this case, a programming phenomenon occurs in which channel electrons are injected into the charge storage layer by tunneling due to a high gate-source voltage. As electrons are injected into the charge storage layer, the threshold voltage of the memory cell Q4 increases. Since the threshold voltage of the memory cell subjected to the program operation is higher than before the execution of the program, the magnitude of the synaptic current is flowing while the Vread voltage is applied is reduced compared to before the execution of the program. As the number of executions of the program operation increases, the magnitude of the synaptic current is continuously decreases.
상기 전류 비교 단계 및 프로그램 단계가 반복되어 상기 시냅스 전류 is가 점차 감소하여 제2 가중치 전류 ic를 하회하게 되면, 전류 비교 동작의 결과로서 프로그램 제어신호 CSO는 VDD 전압을 출력하고 이후 이어진 프로그램 단계에서 컬럼 소스 라인 SSL 및 컬럼 비트 라인 SBL에 VDD 전압을 인가한다. 상기 조건에서 추론 로우 라인 SWL 라인에 Vpp가 인가되더라도 Q4 셀의 게이트-소스 전압은 현저히 감소하여 상기 Q4 셀에는 터널링이 억제되고 따라서 문턱전압은 상승하지 않고 그대로 유지되며 따라서 상기 시냅스 전류 is 역시 감소하지 않고 유지된다.When the current comparison step and the programming step are repeated and the synaptic current is gradually decreased to be less than the second weight current ic, the program control signal CSO outputs the VDD voltage as a result of the current comparison operation, and in the subsequent programming step, the column A voltage VDD is applied to the source line SSL and the column bit line SBL. In the above condition, even if Vpp is applied to the inferred low line SWL line, the gate-source voltage of the Q4 cell is significantly reduced, so that tunneling is suppressed in the Q4 cell, and thus the threshold voltage is maintained without increasing, and thus the synaptic current is also not decreased. is maintained without
이와 같이 상기 전류 비교 및 프로그램 단계의 묶음 동작을 복수회 반복적으로 실시함으로써 상기 Q4의 시냅스 전류 is를 제2 가중치 전류 ic와 충분히 근접한 값을 가지도록 조정할 수 있다. As described above, by repeatedly performing the bundling operation of the current comparison and programming steps a plurality of times, the synaptic current is of Q4 may be adjusted to have a value sufficiently close to the second weight current ic.
제3 실시예third embodiment
도 7은 본 발명의 제3 실시예에 따른 인공 신경망 소자를 도시한 회로도이다.7 is a circuit diagram illustrating an artificial neural network device according to a third embodiment of the present invention.
도 7을 참조하면, 정보 저장부(620)가 스트링 형태의 플래시 메모리들 QF1, QF2, QF3, QF4로 구성된 것을 제외하고, 상기 제1 실시예 및 제2 실시예와 나머지 구성들은 동일하다. 다만, 도 7에서는 하나의 학습부에서 시계열적으로 획득된 가중치 정보들은 스트링 형태의 플래시 메모리들 QF1, QF2, QF3, QF4에 순차적으로 저장될 수 있다.Referring to FIG. 7 , except that the
도 7의 동작을 설명하기 위해 제1 모드 및 이에 연속하는 제2 모드를 예시한다. 각각의 모드에서 학습부에 획득된 가중치 정보는 정보 저장부(620)에 저장된다.In order to explain the operation of FIG. 7 , the first mode and the second mode subsequent thereto are exemplified. Weight information obtained by the learning unit in each mode is stored in the
먼저, 제1 모드에서 학습부로부터 가중치 전류 iw1이 공급된다. 가중치 전류 iw1은 정보 저장부(620)에서 선택된 플래시 메모리의 문턱 전압의 형태로 저장된다. 예컨대 제3 플래시 메모리 QF3이 선택되면, 선택되지 않은 플래시 메모리들의 게이트 단자인 추론 로우 라인들 SWL1, SWL2 및 SWL4에는 패싱 전압 Vpass가 인가되고, 선택된 플래시 메모리의 추론 로우 라인 SWL3에는 읽기 전압 Vread가 인가된다. 패싱 전압 Vpass는 읽기 전압 Vread와 프로그램 전압 Vpp의 사잇값이며, 패싱 전압 Vpass의 인가를 통해 해당하는 플래시 메모리는 스위치로만 작용한다. First, in the first mode, a weighting current iw1 is supplied from the learning unit. The weight current iw1 is stored in the form of a threshold voltage of the flash memory selected by the
따라서, 제1 모드에서 선택된 제3 플래시 메모리 QF3을 통해 가중치 전류의 비교 동작 및 프로그램 판단 동작이 수행된다. 이를 통해 제1 모드에서 가중치 전류 iw1이 전사된다. 전사가 완료되면, 제2 모드가 진행된다. Accordingly, the weight current comparison operation and the program determination operation are performed through the third flash memory QF3 selected in the first mode. Through this, the weighting current iw1 is transferred in the first mode. When the transfer is completed, the second mode proceeds.
제2 모드에서 상술한 학습부는 새로운 가중치 정보를 학습하고, 이를 새로운 가중치 전류로 정보 저장부(620)에 공급한다. 이 때, 복수개의 플래시 메모리들 QF1, QF2, QF3, QF4 중 제1 모드에서 가중치를 저장한 제3 플래시 메모리 QF3을 제외한 다른 플래시 메모리가 선택된다. 플래시 메모리의 선택 동작은 선택된 플래시 메모리의 추론 로우 라인 SWL에 읽기 전압 Vread를 인가하는 동작이다. 이때 선택되지 않은 나머지 플래시 메모리의 게이트 단자들에는 패싱 전압 Vpass 가 인가된다.In the second mode, the above-described learning unit learns new weight information, and supplies it to the
상술한 동작을 통해 스트링을 이루는 복수개의 플래시 메모리들 QF1, QF2, QF3, QF4가 각각 개별적인 추론부 시냅스 로우를 구성할 수 있다. 즉, 복수개의 시냅스 로우가 셀이 직렬 연결된 하나의 스트링에 구현되어 칩 면적을 절감할 수 있다. Through the above-described operation, the plurality of flash memories QF1, QF2, QF3, and QF4 constituting the string may each constitute an individual reasoning unit synapse row. That is, a plurality of synaptic rows may be implemented in one string in which cells are serially connected, thereby reducing the chip area.
상술한 본 발명에서 학습부에서 획득된 휘발성 가중치 정보는 정보 저장부에 비휘발성 가중치 정보로 저장된다. 저장된 정보의 전사는 추론 제어부를 이용한 가중치 전류의 비교 동작 및 프로그램 판단 동작으로 구성된다. 이를 통해 비휘발성 메모리로 구성된 정보 저장부에 프로그램 동작이 수행되고, 문턱 전압이 변경된다. 문턱 전압의 변경을 통해 비휘발성 가중치 정보가 정보 저장부로 전사된다.In the present invention, the volatile weight information obtained by the learning unit is stored as non-volatile weight information in the information storage unit. The transcription of the stored information consists of a comparison operation of weighted currents and a program determination operation using the inference control unit. Through this, a program operation is performed on the information storage unit formed of the non-volatile memory, and the threshold voltage is changed. By changing the threshold voltage, nonvolatile weight information is transferred to the information storage unit.
본 발명에서는 학습 동작이 수행되어 가중치가 획득되는 학습부와 학습부에서 획득된 가중치 정보를 전원이 제거되더라도 저장할 수 있는 추론부로 분리된 신경망 소자가 제공된다. 가중치 정보는 비휘발성 데이터로 저장되며, 전사 또는 추론 동작이 완료된 후, 학습부는 새로운 학습 동작을 개시하여 가중치 정보를 갱신할 수 있는 이점을 가진다.In the present invention, there is provided a neural network element separated into a learning unit in which a weight is obtained by performing a learning operation and an inference unit capable of storing weight information obtained in the learning unit even when power is removed. The weight information is stored as non-volatile data, and after the transcription or inference operation is completed, the learning unit has the advantage of starting a new learning operation to update the weight information.
100, 300 : 학습부
200, 500 : 추론부
210, 510 : 추론 제어부
220, 520 : 정보 저장부
400 : 임시 저장부100, 300: learning
210, 510:
400: temporary storage
Claims (22)
상기 학습부에 선택적으로 연결되며, 상기 학습부가 획득한 가중치 정보를 수신하여 저장하는 추론부를 포함하는 인공 신경망 소자.a learning unit that acquires weight information through learning; and
and an inference unit selectively connected to the learning unit and configured to receive and store the weight information obtained by the learning unit.
상기 학습부는
상기 가중치 정보를 동적 특성의 커패시터 전압으로 저장하며,
상기 추론부는
상기 가중치가 비휘발성 메모리 소자에 저장되는 것을 특징으로 하는 인공 신경망 소자.According to claim 1,
the learning unit
storing the weight information as a capacitor voltage of dynamic characteristics;
The reasoning part
The artificial neural network device, characterized in that the weight is stored in a non-volatile memory device.
상기 학습부가 출력하는 가중치 전류와 대응되는 상기 추론부가 출력하는 시냅스 전류가 동일하도록 상기 추론부의 가중치를 조절하는 것을 특징으로 하는 인공 신경망 소자.3. The method of claim 2,
An artificial neural network device, characterized in that the weight of the reasoning unit is adjusted so that the weighted current output by the learning unit and the synaptic current output by the corresponding inference unit are the same.
학습을 통해 상기 커패시터 전압을 저장하기 위한 가중치 정보 형성부; 및
가중치 정보 형성부와 학습 컬럼 라인 사이에 연결되고, 학습 로우 라인을 통해 인가되는 제어전압에 의존하여 가중치 전류를 형성하고, 상기 학습 컬럼 라인에 상기 가중치 전류를 전달하기 위한 가중치 정보 제어부를 포함하는 것을 특징으로 하는 인공 신경망 소자.According to claim 1, wherein the learning unit
a weight information forming unit for storing the capacitor voltage through learning; and
a weight information control unit connected between the weight information forming unit and the learning column line, forming a weight current depending on a control voltage applied through the learning row line, and transmitting the weight current to the learning column line; Characterized by an artificial neural network device.
상기 학습부에 선택적으로 연결되고, 상기 가중치 전류에 대한 전류 비교 동작을 수행하고, 프로그램 판단 동작을 수행하기 위한 추론 제어부; 및
상기 추론 제어부에 선택적으로 연결되고, 프로그램 동작에 의해 문턱 전압이 변경되고, 추론 로우 라인을 통해 인가되는 읽기 전압에 따른 시냅스 전류를 형성하기 위한 정보 저장부를 포함하고,
상기 추론 제어부는 읽기 전압에 따른 전류와 상기 가중치 전류를 비교하여 프로그램 제어신호를 출력하는 것을 특징으로 하는 인공 신경망 소자.The method of claim 1, wherein the inference unit
an inference control unit selectively connected to the learning unit, performing a current comparison operation with respect to the weighted current, and performing a program determination operation; and
an information storage unit selectively connected to the reasoning control unit, the threshold voltage is changed by a program operation, and forming a synaptic current according to the read voltage applied through the speculation row line;
The inference control unit compares the current according to the read voltage with the weighted current and outputs a program control signal.
상기 학습부 또는 상기 정보 저장부에 선택적으로 연결되는 전류감지기; 및
상기 전류감지기와 연결되고, 상기 프로그램 제어신호를 출력하기 위한 비교기를 포함하는 것을 특징으로 하는 인공 신경망 소자.The method of claim 5, wherein the inference control unit
a current sensor selectively connected to the learning unit or the information storage unit; and
An artificial neural network device connected to the current sensor and comprising a comparator for outputting the program control signal.
상기 학습부의 가중치 전압에 의해 발생되는 가중치 전류에 상응하는 임시 저장 전압을 저장하기 위한 임시 저장부; 및
상기 임시 저장부에 선택적으로 연결되며, 상기 임시 저장부가 공급하는 가중치 전류를 수신하고, 이를 비휘발성 데이터로 저장하기 위한 추론부를 포함하는 인공 신경망 소자.a learning unit that acquires weight information and stores it as a volatile weighted voltage;
a temporary storage unit for storing a temporary storage voltage corresponding to a weighting current generated by the weighting voltage of the learning unit; and
and an inference unit selectively connected to the temporary storage unit, receiving the weight current supplied by the temporary storage unit, and storing the weighted current as non-volatile data.
학습을 통해 상기 가중치 전압을 저장하기 위한 가중치 정보 형성부; 및
가중치 정보 형성부와 학습 컬럼 라인 사이에 연결되고, 학습 로우 라인을 통해 인가되는 제어전압에 의존하여 가중치 전류를 형성하기 위한 가중치 정보 제어부를 포함하는 것을 특징으로 하는 인공 신경망 소자.The method of claim 11, wherein the learning unit
a weight information forming unit for storing the weighted voltage through learning; and
and a weight information controller connected between the weight information forming unit and the learning column line and configured to form a weighting current depending on a control voltage applied through the learning row line.
상기 임시 저장부에 선택적으로 연결되고, 상기 가중치 전류에 대한 전류 비교 동작을 수행하고, 프로그램 판단 동작을 수행하기 위한 추론 제어부; 및
상기 추론 제어부에 선택적으로 연결되고, 프로그램 동작에 의해 문턱 전압이 변경되고, 추론 로우 라인을 통해 인가되는 읽기 전압에 따른 시냅스 전류를 형성하기 위한 정보 저장부를 포함하고,
상기 추론 제어부는 읽기 전압에 따른 상기 시냅스 전류와 상기 가중치 전류를 비교하여 프로그램 제어신호를 출력하는 것을 특징으로 하는 인공 신경망 소자.The method of claim 11, wherein the inference unit
an inference control unit selectively connected to the temporary storage unit, performing a current comparison operation with respect to the weighted current, and performing a program determination operation; and
an information storage unit selectively connected to the reasoning control unit, the threshold voltage is changed by a program operation, and forming a synaptic current according to the read voltage applied through the speculation row line;
The inference controller compares the synaptic current according to the read voltage with the weighted current and outputs a program control signal.
상기 전류 비교 동작을 근거로 상기 가중치 전류가 비휘발성 가중치 정보로 전사되는 비휘발성 메모리에 대한 프로그램 동작을 판단하는 단계를 포함하는 인공 신경망 소자의 동작 방법.performing a current comparison operation with respect to a weighting current corresponding to the volatile weighting information; and
and determining, based on the current comparison operation, a program operation for a non-volatile memory in which the weight current is transcribed into non-volatile weight information.
상기 휘발성의 가중치 정보에 상응하는 가중치 전류를 이용하여 상기 가중치 정보를 휘발성이 다른 가중치 정보로 임시 저장하는 단계를 더 포함하는 것을 특징으로 하는 인공 신경망 소자의 동작 방법.18. The method of claim 17, wherein prior to the current comparison operation,
and temporarily storing the weighting information as weighting information having different volatility by using a weighting current corresponding to the volatile weighting information.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020210038255A KR102612011B1 (en) | 2021-03-24 | 2021-03-24 | Artificial Neuromorphic Device and Methode of operating the same |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020210038255A KR102612011B1 (en) | 2021-03-24 | 2021-03-24 | Artificial Neuromorphic Device and Methode of operating the same |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20220133005A true KR20220133005A (en) | 2022-10-04 |
KR102612011B1 KR102612011B1 (en) | 2023-12-07 |
Family
ID=83600181
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020210038255A KR102612011B1 (en) | 2021-03-24 | 2021-03-24 | Artificial Neuromorphic Device and Methode of operating the same |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR102612011B1 (en) |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2019028569A (en) * | 2017-07-26 | 2019-02-21 | 株式会社東芝 | Memory system, semiconductor storage and signal processing system |
JP2020528611A (en) * | 2017-07-26 | 2020-09-24 | インターナショナル・ビジネス・マシーンズ・コーポレーションInternational Business Machines Corporation | Systems and methods for constructing synaptic weights for artificial neuron networks with signed analog conductance pairs of different weights |
KR20200121347A (en) * | 2018-03-14 | 2020-10-23 | 실리콘 스토리지 테크놀로지 인크 | Data refresh method and apparatus for analog nonvolatile memory in deep learning neural network |
KR20210005750A (en) * | 2018-06-06 | 2021-01-14 | 마이크론 테크놀로지, 인크 | Store weights using memory devices |
KR20210026905A (en) * | 2019-09-02 | 2021-03-10 | 광운대학교 산학협력단 | Weight memory device and weight memory system with variable capacitance and operating method therefor |
KR20210084907A (en) * | 2019-12-30 | 2021-07-08 | 광운대학교 산학협력단 | Weight memory device and weight memory system with variable capacitance and operating method therefor |
-
2021
- 2021-03-24 KR KR1020210038255A patent/KR102612011B1/en active IP Right Grant
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2019028569A (en) * | 2017-07-26 | 2019-02-21 | 株式会社東芝 | Memory system, semiconductor storage and signal processing system |
JP2020528611A (en) * | 2017-07-26 | 2020-09-24 | インターナショナル・ビジネス・マシーンズ・コーポレーションInternational Business Machines Corporation | Systems and methods for constructing synaptic weights for artificial neuron networks with signed analog conductance pairs of different weights |
KR20200121347A (en) * | 2018-03-14 | 2020-10-23 | 실리콘 스토리지 테크놀로지 인크 | Data refresh method and apparatus for analog nonvolatile memory in deep learning neural network |
KR20210005750A (en) * | 2018-06-06 | 2021-01-14 | 마이크론 테크놀로지, 인크 | Store weights using memory devices |
KR20210026905A (en) * | 2019-09-02 | 2021-03-10 | 광운대학교 산학협력단 | Weight memory device and weight memory system with variable capacitance and operating method therefor |
KR20210084907A (en) * | 2019-12-30 | 2021-07-08 | 광운대학교 산학협력단 | Weight memory device and weight memory system with variable capacitance and operating method therefor |
Also Published As
Publication number | Publication date |
---|---|
KR102612011B1 (en) | 2023-12-07 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR102497675B1 (en) | Neural network circuit with non-volatile synaptic array | |
US11430511B2 (en) | Comparing input data to stored data | |
KR100487417B1 (en) | nonvolatile ferroelectric memory device and method for operating write and read of multiple-bit data thereof | |
US10748613B2 (en) | Memory sense amplifiers and memory verification methods | |
US11829863B2 (en) | Neural network circuit device | |
US20200167638A1 (en) | Circuit neuronal apte à mettre en oeuvre un apprentissage synaptique | |
US11217302B2 (en) | Three-dimensional neuromorphic device including switching element and resistive element | |
CN110729011B (en) | In-memory arithmetic device for neural network | |
KR20190133532A (en) | Transposable synaptic weight cell and array thereof | |
CN112447229A (en) | Non-volatile memory device performing multiply-accumulate operation | |
US11321608B2 (en) | Synapse memory cell driver | |
US20200303003A1 (en) | Multiplier-accumulator | |
CN115035937A (en) | Non-volatile memory device for performing dual sensing operations | |
JP6668282B2 (en) | Semiconductor storage device | |
KR102612011B1 (en) | Artificial Neuromorphic Device and Methode of operating the same | |
KR102511526B1 (en) | Hardware-based artificial neural network device | |
US20230013081A1 (en) | Driving method of synapse circuit | |
US20230147403A1 (en) | Hardware-based artificial neural network device | |
JP7209068B1 (en) | semiconductor storage device | |
KR20240016128A (en) | Vertical NAND flash type semiconductor device and method of operating the same | |
JP3447929B2 (en) | Dynamic semiconductor memory device | |
KR20230122842A (en) | Artificial neural network system based on capacitive coupling | |
CN117497026A (en) | Memory unit, array circuit structure and data processing method | |
TW202236171A (en) | Memory device and operation thereof | |
CN116997187A (en) | CMOS semiconductor memory array and in-memory computing circuit |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
E902 | Notification of reason for refusal | ||
E90F | Notification of reason for final refusal | ||
E701 | Decision to grant or registration of patent right | ||
GRNT | Written decision to grant |