KR20220133005A - Artificial Neuromorphic Device and Methode of operating the same - Google Patents

Artificial Neuromorphic Device and Methode of operating the same Download PDF

Info

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
Application number
KR1020210038255A
Other languages
Korean (ko)
Other versions
KR102612011B1 (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 KR1020210038255A priority Critical patent/KR102612011B1/en
Publication of KR20220133005A publication Critical patent/KR20220133005A/en
Application granted granted Critical
Publication of KR102612011B1 publication Critical patent/KR102612011B1/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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N5/00Computing arrangements using knowledge-based models
    • G06N5/04Inference 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

Disclosed are an artificial neural network element for transcribing the weight information having a volatile characteristic into the weight information having a non-volatile characteristic, and an operating method of the artificial neural network element. The volatile weight information having a volatile characteristic in a learning part is compared in an inference control part and transcribed as the non-volatile weight information in the information storage part. A program operation is performed in the information storage part for transcribing of the weight information. Therefore, the present invention is capable of having an advantage of being able to update the weight information.

Description

인공 신경망 소자 및 이의 동작 방법{Artificial Neuromorphic Device and Methode of operating the same}Artificial Neuromorphic Device and Methode of operating the same

본 발명은 신경망 소자에 관한 것으로, 더욱 상세하게는 휘발성 가중치 데이터를 비휘발성 가중치 데이터로 전사하기 위한 인공 신경망 소자 및 이의 동작 방법에 관한 것이다.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 learning unit 100 and an inference unit 200 .

학습부(100)는 학습 컬럼 라인 VBL과 학습 로우 라인 VWL에 연결되고, 획득된 가중치 정보를 전압의 형태로 저장한다. 다만, 상기 학습부(100)는 학습 동작이 멈춘 상태에서는 시간의 경과에 따라 저장된 가중치 정보가 사라지는 동적(Dynamic) 저장 특성을 가진다. 전압의 형태로 저장된 가중치 정보는 추론부(200)로 전달된다. 추론부로 전달되는 가중치 정보는 전류의 형태로 전환된다.The learning unit 100 is connected to the learning column line VBL and the learning row line VWL, and stores the obtained weight information in the form of a voltage. However, the learning unit 100 has a dynamic storage characteristic in which the stored weight information disappears with the lapse of time when the learning operation is stopped. Weight information stored in the form of voltage is transmitted to the reasoning unit 200 . The weight information transmitted to the reasoning unit is converted into a current form.

추론부(200)는 제1 노드 N1을 통해 학습부(100)에 연결되고, 추론 제어부(210) 및 정보 저장부(220)를 가진다. 추론부(200)는 상기 학습부(100)에 선택적으로 연결될 수 있으며, 학습부(100)에서 전류의 형태로 전환된 가중치 정보를 전달 받는다. 학습부(100)에 저장된 가중치 정보는 전류의 형태로 변환되고, 상기 전류의 비교 동작을 통해 추론부(200)에서는 비휘발성 특성을 가지는 가중치 정보로 저장된다. 즉, 학습부(100)에서 학습되고 저장된 가중치 정보는 동적 또는 휘발성의 특징을 가지고, 추론부(200)에서 가중치 정보는 플래시 메모리 셀의 문턱 전압 또는 멤리스터의 저항값의 형태로 저장되며 가중치 독출을 위해 역시 전류로 변환될 수 있다. 다만, 추론부(200)에서 저장된 가중치 정보는 반영구적으로 정보가 유지되는 비휘발성의 특징을 가진다.The reasoning unit 200 is connected to the learning unit 100 through the first node N1 , and has an inference control unit 210 and an information storage unit 220 . The reasoning unit 200 may be selectively connected to the learning unit 100 , and the learning unit 100 receives weight information converted in the form of current. The weight information stored in the learning unit 100 is converted into a form of current, and the reasoning unit 200 is stored as weight information having non-volatile characteristics through the comparison operation of the current. That is, the weight information learned and stored in the learning unit 100 has dynamic or volatile characteristics, and the weight information in the inference unit 200 is stored in the form of a threshold voltage of a flash memory cell or a resistance value of a memristor, and the weight is read. can also be converted into current for However, the weight information stored in the reasoning unit 200 has a non-volatile characteristic in which the information is semi-permanently maintained.

추론부(200)를 구성하는 추론 제어부(210)는 선택적으로 학습부(100) 및 정보 저장부(220)에 연결될 수 있으며, 상기 정보 저장부(220)도 선택적으로 학습부(100) 및 추론 제어부(210)에 연결될 수 있다. 상술한 구성요소들의 선택적 연결은 다양한 수단을 통해 달성될 수 있음은 공지의 사실이다. 예컨대 선택적 연결을 위해 스위치 또는 트랜지스터 등이 사용될 수 있으며, 활성화 신호 및 비활성화 신호 등의 수단을 통해서도 선택적 연결은 구현될 수 있다. 다만, 본 발명에서는 구성요소들의 선택적 연결은 스위치를 통해 설명한다. 이는 이해의 편의를 위해 사용된 수단으로 해석될 필요가 있다. The inference control unit 210 constituting the reasoning unit 200 may be selectively connected to the learning unit 100 and the information storage unit 220 , and the information storage unit 220 may also be selectively connected to the learning unit 100 and the reasoning unit 220 . It may be connected to the control unit 210 . It is a known fact that the selective connection of the above-described components can be achieved through various means. For example, a switch or a transistor may be used for selective connection, and selective connection may be implemented through means such as an activation signal and a deactivation signal. However, in the present invention, selective connection of components will be described through a switch. This needs to be interpreted as a means used for convenience of understanding.

추론 제어부(210)는 각각 학습부(100)와 정보 저장부(220)를 흐르는 전류의 크기에 따라 정보 저장부(220)로 전류를 공급하거나, 학습부(100)에서 공급되는 전류의 일부를 전달 받는다. The inference control unit 210 supplies a current to the information storage unit 220 according to the magnitude of the current flowing through the learning unit 100 and the information storage unit 220, respectively, or a part of the current supplied from the learning unit 100 get delivered

설명의 편의를 위해 가중치 정보가 반영되고, 학습부(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 learning unit 100 is referred to as the weight current iw, the current flowing into the information storage unit 220 is the synaptic current is, and the inference control unit 210 flows through the The current is referred to as the inference control current ia. According to Kirchhoff's law, ia is the difference between iw and is. The inference control unit detects the inference control current ia and transfers the weight current iw to the information storage unit 220 in such a way that the synaptic current is is changed so that the inference control current ia converges to zero.

예를 들어 정보 저장부(220)로 흘러 들어가는 시냅스 전류 is가 가중치 전류 iw에 비해 크다면 추론 제어전류 ia는 추론 제어부(210)로부터 흘러나오는 방향이 된다. 추론 제어부(210)는 추론 제어전류 ia를 감지하여 정보 저장부(220)의 시냅스 전류 is를 감소시키는 방향으로 정보 저장부(220)의 비휘발성 메모리 셀에 저장되는 가중치를 조정한다. 즉 상기 비휘발성 메모리 셀이 플래시 메모리 셀일 경우, 셀 트랜지스터의 문턱전압을 상승시켜 전류를 감소시킨다. For example, if the synaptic current is flowing into the information storage unit 220 is greater than the weighting current iw, the inference control current ia flows in the direction from the inference control unit 210 . The reasoning control unit 210 detects the speculation control current ia and adjusts the weight stored in the nonvolatile memory cell of the information storage unit 220 in a direction to reduce the synaptic current is of the information storage unit 220 . That is, when the nonvolatile memory cell is a flash memory cell, the threshold voltage of the cell transistor is increased to decrease the current.

가중치 전류 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 information storage unit 220 is equal to the weighting current iw or less than the weighting current iw. The transfer of the weight current iw in the information storage unit 220 is described as a program operation. The program operation should be understood as an operation of changing a channel resistance or a threshold voltage of a nonvolatile memory constituting the information storage unit 220 . That is, the current flowing through the nonvolatile memory decreases by performing the program operation in a situation where the same voltage is applied to the gate terminal.

만일, 정보 저장부(220) 메모리 셀의 문턱전압이 계속 상승하여 시냅스 전류 is가 충분히 감소하고, 이에 따라 추론 제어부(210)로부터 노드 N1으로 전류 추론 제어전류 ia가 흘러나오지 않게 된다면, 더 이상 정보 저장부(220)의 프로그램 동작은 일어나지 않으며, 가중치 전류 iw와 정보 저장부(220)를 흐르는 시냅스 전류 is가 같아지도록 학습부(100)의 가중치가 정보 저장부(220)로 전사된 것으로 판단되고, 가중치의 전사는 완료된다. If the threshold voltage of the memory cell of the information storage unit 220 continues to rise, the synaptic current is sufficiently decreases, and accordingly, the current reasoning control current ia does not flow from the reasoning controller 210 to the node N1. The program operation of the storage unit 220 does not occur, and it is determined that the weight of the learning unit 100 is transferred to the information storage unit 220 so that the weight current iw and the synaptic current is flowing through the information storage unit 220 are equal. , the transfer of weights is complete.

추론 제어부(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 inference control unit 210 . The column line to which the information storage unit 220 is connected may include a pair of a column source line SSL of the reasoning unit 200 and a column bit line SBL. The voltage levels of the column source line SSL and the column bit line SBL are adjusted depending on the program control signal CSO. According to an embodiment, the program control signal CSO may be directly connected to the column source line SSL and the column bit line SBL, and a separate control for controlling the voltage levels of the column source line SSL and the column bit line SBL by the program control signal CSO signal Means may be provided.

정보 저장부(220)에는 추론 로우 라인 SWL이 연결되고, 추론 로우 라인 SWL을 통해 읽기 전압 Vread 또는 프로그래밍 전압 Vpp가 공급될 수 있다. 정보 저장부(220)의 메모리 셀을 흐르는 시냅스 전류 is는 추론 로우 라인 SWL에 인가되는 전압값에 의존한다. 추론 로우 라인 SWL을 통해 정보 저장부(220)에 소정의 Vread가 인가될 때, 시냅스 전류 is는 메모리 셀의 문턱 전압과 인가되는 읽기 전압 Vread에 의해 결정된다. An inference low line SWL is connected to the information storage unit 220 , and a read voltage Vread or a programming voltage Vpp may be supplied through the inference low line SWL. The synaptic current is flowing through the memory cell of the information storage unit 220 depends on a voltage value applied to the inferred low line SWL. When a predetermined Vread is applied to the information storage unit 220 through the inference low line SWL, the synaptic current is is determined by the threshold voltage of the memory cell and the applied read voltage Vread.

정보 저장부(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 information storage unit 220 is greater than the weight current iw supplied from the learning unit 100, inferred to balance the current in the node N1 The speculation control current ia is drawn from the control unit 210 to the node N1. The reasoning controller 210 detects a direction in which the speculation control current ia is drawn and generates a program control signal CSO. In addition, the program control signal CSO controls the voltages of the column bit line SBL and the column source line SSL so that a program operation for increasing the threshold voltage occurs in the information storage unit 220 in a subsequent program operation step. In the program operation step, the program voltage Vpp may be applied to the speculation low line SWL. When a program operation is performed in the information storage unit 220 , the threshold voltage or channel resistance of the information storage unit 220 increases, so that the amount of current generated by the read voltage Vread later decreases.

상술한 동작은 정보 저장부(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 information storage unit 220 is equal to or smaller than the weight current iw. That is, under the condition that the synaptic current is is less than the weighting current iw, the reasoning control current ia flows in the direction flowing into the reasoning controller 210 . The reasoning controller 210 detects the direction of the speculation control current ia and outputs a program control signal CSO corresponding to the direction of the speculation control current ia. In a subsequent program operation step, the program control signal CSO controls the voltages of the column bit line SBL and the column source line SSL, and the information storage unit 220 uses the controlled voltages of the column bit line SBL and the column source line SSL as a threshold in the information storage unit 220 . The program phenomenon that raises the voltage does not occur.

본 발명에서 추론 제어전류 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 information storage unit 220 , the synaptic current is generated from the information storage unit 220 and the weighting current iw refers to the difference.

또한, 읽기 전압 Vread에 의해 정보 저장부(220)가 발생시킬 수 있는 시냅스 전류 is의 최대값은 상기 학습부(100)가 공급하는 가중치 전류 iw의 최대값 이상임이 바람직하다.In addition, it is preferable that the maximum value of the synaptic current is generated by the information storage unit 220 by the read voltage Vread is greater than or equal to the maximum value of the weighting current iw supplied by the learning unit 100 .

상술한 과정을 통해, 학습부(100)에 저장된 동적 특성의 휘발성 가중치 정보는 가중치 전류 iw와 시냅스 전류 is의 매칭을 통해 추론부(200)의 비휘발성의 가중치 정보로 저장된다.Through the above-described process, the volatile weight information of the dynamic characteristics stored in the learning unit 100 is stored as non-volatile weight information of the inference unit 200 by matching the weighting current iw and the synaptic current is.

또한, 상술한 과정을 통해 학습부(100)에 커패시터 전압의 형태로 저장된 가중치 정보는 추론부(200)의 메모리 셀의 문턱 전압 또는 채널 저항의 형태로 전환된다. 학습부(100)는 반복적이고 고속의 학습 동작을 위해 커패시터와 같은 동적(dynamic)이고 휘발성의 메모리 특성을 가진다. 또한, 추론부(200)의 정보 저장부(220)는 학습부(100)의 가중치 정보를 저장하기 위해 비휘발성 메모리의 특성을 가진다. 따라서, 학습된 가중치 정보는 저장된 데이터의 리프레시 동작이나 전원 조건에 관계없이 시냅스 소자에 기록된 값으로 유지될 수 있다.In addition, the weight information stored in the form of capacitor voltage in the learning unit 100 is converted into the form of threshold voltage or channel resistance of the memory cell of the inference unit 200 through the above-described process. The learning unit 100 has a dynamic and volatile memory characteristic such as a capacitor for a repetitive and high-speed learning operation. Also, the information storage unit 220 of the reasoning unit 200 has a characteristic of a non-volatile memory to store weight information of the learning unit 100 . Therefore, the learned weight information may be maintained as a value recorded in the synaptic device regardless of the stored data refresh operation or power condition.

도 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 learning unit 100 includes a weight information forming unit 110 and a weight information controlling unit 120 . The weight information forming unit 110 stores the weighting voltage Vw through learning, and determines the magnitude of the weighting current iw corresponding to the weighting voltage Vw. In addition, the weight information control unit 120 connected between the weight information forming unit 110 and the first node N1 sets the weighting current iw to the first of the learning column line VBL depending on the row selection voltage VL applied through the learning row line VWL. output to node N1.

가중치 정보 형성부(110)은 제1 커패시터 CL 및 제1 트랜지스터 Q1를 가지고, 가중치 정보 제어부는 제2 트랜지스터 Q2를 가진다. The weight information forming unit 110 includes a first capacitor CL and a first transistor Q1 , and the weight information control unit has a second transistor Q2 .

제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 reasoning unit 200 may be electrically connected to the learning unit 100 through a switch or the like.

추론부(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 reasoning control unit 210 constituting the reasoning unit 200 includes a current detector 211 and a comparator 212 . The current detector 211 may use various types of current sense amplifiers, but in this specification, a current integrator type current sensor will be described as an example. In the case of a current integrator, it can be configured with an operational amplifier and a feedback capacitor CA. A comparison reference voltage VB may be applied to the positive input terminals of the current detector 211 and the comparator 212 . When SW2 is turned on, the learning column line VBL voltage is also maintained as the comparison reference voltage VB by feedback of the operational amplifier. The VBL voltage determines the drain voltages of Q1 and Q2 current read transistors of the learning weight cell, and the column bit line SBL corresponds to the drain of the transistor Q3 of the reasoning unit 200 . During the transfer operation of the weighting current iw, the VBL and SBL voltages are maintained as the comparison reference voltage VB by the operational amplifier feedback. A reset switch SWr may be provided in parallel with the feedback capacitor CA for the reset operation of the current detector 211 .

전류의 관점에서 전류 감지기(211)의 동작은 다음과 같이 해석된다. The operation of the current detector 211 in terms of current is interpreted as follows.

만일, 전류 감지기(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 current detector 211 toward the first node N1 , the speculation control current ia must be supplied from the feedback capacitor CA and the third node N3 that is the output terminal of the current 211 . Also, due to the virtual short circuit of the amplifier, the negative input terminal has the same DC voltage value as the comparison reference voltage VB. Accordingly, under the above condition, the third node N3 , which is the output terminal of the current detector 211 , has a voltage higher than the comparison reference voltage VB, and the comparator 212 forms the low-level program control signal CSO.

만일, 추론 제어전류 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 current detector 211, the voltage of the third node N3 as a result of current integration has a lower value than the comparison reference voltage VB, and the comparator 212 ) outputs the high level program control signal CSO.

정보 저장부(220)는 동적 특성을 가지는 비휘발성 메모리 소자로 구성된다. 사용가능한 비휘발성 메모리 소자로는 ReRAM, MRAM 또는 플래시 메모리 셀 등이 있다. ReRAM은 프로그램 동작의 수행에 의해 전도성 필라멘트가 생성되고, 문턱 전압이 감소하는 특징이 있다. 또한, 플래시 메모리는 프로그램 동작의 수행에 의해 전자가 트랩되고, 트랩된 전자에 의해 문턱 전압이 증가하는 특징이 있다. The information storage unit 220 is composed of a non-volatile memory device having dynamic characteristics. Non-volatile memory devices that can be used include ReRAM, MRAM, or flash memory cells. ReRAM has a characteristic that a conductive filament is generated by performing a program operation and a threshold voltage is reduced. In addition, the flash memory is characterized in that electrons are trapped by performing a program operation, and a threshold voltage is increased by the trapped electrons.

본 실시예에서는 설명의 편의를 위해 n형의 플래시 메모리 Q3으로 정보 저장부(220)가 구성된 것으로 설명한다. 다만, 게이트 단자인 추론 로우 라인 SWL에 인가되는 프로그램 전압 Vpp을 통해 채널의 저항이 변경되거나 문턱 전압이 변경되고, 비휘발성의 특성을 가진다면 여하한 형태로도 가능할 것이다. In the present embodiment, for convenience of description, it will be described that the information storage unit 220 is configured as an n-type flash memory Q3. However, if the resistance of the channel is changed or the threshold voltage is changed through the program voltage Vpp applied to the speculation low line SWL, which is the gate terminal, and has non-volatile characteristics, any form may be used.

플래시 메모리 셀 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 learning unit 100 .

가중치 전사를 위한 회로 동작 과정의 한 예시를 도 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 learning unit 100 and the synaptic current is flowing through the memory cell of the inference unit 200 is performed. In the current comparison step, when SW2 is connected while SWr is connected and the feedback of the operational amplifier is maintained, the voltage of the learning column line VBL is maintained as the comparison reference voltage VB. SW1 is connected so that the learning column line VBL and the column bit line SSL line are connected. When Q2 is turned on by the learning low line VWL, a weighting current iw proportional to the learning weight flows into the first node N1. In addition, the read voltage Vread is applied to the inference low line SWL connected to Q3, and the synaptic current is current flows from the first node N1 to Q3. Accordingly, in order to balance the current in the first node N1 , the reasoning control current ia, which is a current corresponding to the difference between is and iw, starts to flow from the reasoning controller 210 to the first node N1. After that, SWr is opened, and from this point on, the speculation control current ia current flows through the capacitor CA, not through SWr, and the amount of charge obtained by integrating the speculation control current ia is accumulated in the capacitor CA. In the circuit operation for weight transfer, the connection of the switches and the voltage application order of the row lines may be various examples other than the above description.

또한 상기 도 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 inference control unit 210 input node N4. The common connection point X may be connected to any two of the first node N1, the second node N2, and the inference control unit 210 input node N4, respectively.

상기 전류 비교 단계의 동작에서 학습부(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 learning unit 100, and an appropriate bias voltage lower than the comparison reference voltage VB may be applied to the column source line SSL. The bias applied to the column source line SSL line may be a negative power supply voltage VSS (in the present invention, a negative reference voltage should be understood to refer to a power supply voltage having a lower value than the positive reference voltage VDD or the like). During the circuit operation of the current comparison step, the PMOS transistor Q1 of the learning unit 100 may be in a linear region or a saturation region, and the flash cell Q3 of the inference unit 200 may also be in a linear region or a saturation region.

스위치 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 learning unit 100, in order to satisfy the Kirchhoff current law at the common connection point X, The inference control current ia flows from the third node N3 through CA to the common connection point X through the fourth node N4. The speculation control current ia flowing for a predetermined time is accumulated as the charge amount of the capacitor CA, and the voltage of the third node N3 increases in proportion to the charge amount of the capacitor CA to become higher than the initial value VB.

추론 제어전류 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 comparator 212 is activated by the Ecomp signal, and the comparison reference voltage VB is compared with the voltage of the third node N3, which is the output of the current detector 211, and the result is obtained. It is output as the program control signal CSO. As in the above-described case, when the output of the current detector 211 is higher than the comparison reference voltage VB, the program control signal CSO outputs the voltage value VSS.

추론 제어부(210)가 학습부(100)의 가중치 전류 iw와 추론부(200)의 메모리 셀 전류 is를 비교 감지하는 상기 전류 비교 단계에 이어 상기 두 전류를 비교한 결과를 바탕으로 메모리 셀의 문턱전압을 조절하는 프로그램 단계가 실행된다. 시냅스 전류 is 가 가중치 전류 iw보다 큰 경우, 상기 설명과 같이 프로그램 제어신호 CSO는 VSS(음의 전원 전압)를 출력한다. 컬럼 소스 라인 SSL과 컬럼 비트 라인 SBL은 스위치(도시하지 않음)를 통해 상기 프로그램 제어신호 CSO에 연결되거나 또는 VSS 전압이 인가되도록 프로그램 제어신호 CSO에 의해 제어된다. 이 단계에서 SW1은 열린 상태로 유지된다.Following the current comparison step in which the inference control unit 210 compares and detects the weight current iw of the learning unit 100 and the memory cell current is of the inference unit 200 , the threshold of the memory cell is based on the result of comparing the two currents. A program step for adjusting the voltage is executed. When the synaptic current is is greater than the weight current iw, the program control signal CSO outputs VSS (negative power supply voltage) as described above. The column source line SSL and the column bit line SBL are connected to the program control signal CSO through a switch (not shown), or are controlled by the program control signal CSO such that the VSS voltage is applied. During this phase, SW1 remains open.

상기 프로그램 단계에서 추론 로우 라인 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 learning unit 100, the inference control current ia flows from the common connection point X to the fourth node N4 and flows through the capacitor CA flows to the third node N3. The speculation control current ia flowing for a predetermined time is accumulated as the amount of charge of the capacitor CA, and the voltage of the third node N3 falls in proportion to the amount of charge of the capacitor CA to be lower than the comparison reference voltage VB, which is an initial value. When an appropriate time for accumulating the inference control current ia elapses, the comparator 212 is activated by the Ecomp signal, compares the comparison reference voltage VB with the voltage of the third node N3, and outputs the result as the program control signal CSO.

상기 설명 사례와 같이 전류 감지기(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 current detector 211 is lower than the comparison reference voltage VB, the program control signal CSO outputs a VDD (positive power supply voltage) voltage value. Following the current comparison step, a program step is executed. When the synaptic current is is less than the weight current iw, the program control signal CSO outputs VDD as described above, and the column source line SSL and the column bit line SBL are connected to the program control signal CSO through a switch (not shown). connected or controlled by the program control signal CSO so that the VDD voltage is applied. During this phase, SW1 remains open.

상기 프로그램 단계에서 추론 로우 라인 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 learning unit 100 obtains an optimized weight arrangement stored in the capacitor CL through propagation and backpropagation operations. In the operation of the above mode, weights are continuously updated by learning. The weight update operation is performed while the capacitor CL is charged or discharged in an amount proportional to the pulse time period to which the switch SWup or SWdw is connected. Accordingly, the sign of the weight change amount Δw of the learning unit 100 that is updated by selecting one of the switches may be determined, and the magnitude of the Δw may be adjusted by the length of the pulse time period to which the switch is connected. During the learning mode operation, SW1 is opened and the reasoning unit 200 is separated from the learning unit 100 . However, depending on the system design, since the inference control unit 210 can also be used as a current sensor of the learning unit 100, SW2 may be connected during the learning mode.

상기 가중치 전사 모드에서는 학습부(100)에 획득된 시냅스 가중치를 추론부(200)의 비휘발성 시냅스 셀인 정보 저장부(220)로 복제하는 동작이 실행된다. In the weight transfer mode, an operation of duplicating the synaptic weight obtained by the learning unit 100 to the information storage unit 220 which is a non-volatile synaptic cell of the inference unit 200 is executed.

상기 가중치 전사 동작 모드는 학습부(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 learning unit 100 and the synaptic current is of the information storage unit 220 corresponding to the synaptic memory cell of the inference unit 200, the current comparison result It is divided into program steps for adjusting the current level of the information storage unit 220 based on the background. In the weight transfer operation mode, the current comparison step and the programming step are alternately repeated to bring the synaptic current is as close to the weight current iw as possible.

상기 추론 모드는 비휘발성 메모리 셀로 전사된 가중치를 사용하여 추론부에서 신경망 연산 동작을 수행하는 상태이다. 상기 추론 모드에서는 학습부(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 learning unit 100 and the reasoning unit 200 are electrically separated.

도 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 learning unit 100 and the information storage unit 220 corresponding to the inference unit synapse arrangement are electrically separated. The unit synapse of the learning unit 100 outputs the accumulated current amount corresponding to the product of the weight stored as the CL voltage and the input value corresponding to the width of the learning row line VWL pulse to the learning column line VBL line.

학습 칼럼 라인 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 learning unit 100 also executes a backpropagation operation necessary for a learning operation through an additional auxiliary circuit connection.

상기 전파와 역전파 동작을 통해 학습부(100)의 가중치는 업데이트량 Δw로 결정된다. 상기 가중치 업데이트량 Δw는 스위치 SWup와 SWdw 중 하나를 선택하여 업데이트되는 학습부(100)의 가중치의 변화량 Δw의 부호를 결정하고, 상기 Δw의 크기는 스위치가 접속되는 펄스 시구간의 길이로 조절할 수 있다. 학습부(100)의 전파, 역전파, 및 가중치 업데이트 실행을 위해서 도2에 도시되지 않은 적절한 배열 및 주변 회로의 구성이 필요하다. Through the propagation and backpropagation operations, the weight of the learning unit 100 is determined as the update amount Δw. The weight update amount Δw determines the sign of the weight change amount Δw of the learning unit 100 that is updated by selecting one of the switches SWup and SWdw, and the magnitude of the Δw can be adjusted by the length of the pulse time period to which the switch is connected. . In order to perform propagation, backpropagation, and weight update of the learning unit 100, an appropriate arrangement and peripheral circuit configuration not shown in FIG. 2 are required.

다만, 본 명세서에서 제시하는 내용은 학습부(100)의 시냅스 가중치가 커패시터 전압으로 저장되고 전류값으로 출력되는 한, 배열 및 주변 회로의 구체적인 구성에 제약되지 아니한다. However, as long as the synaptic weight of the learning unit 100 is stored as a capacitor voltage and output as a current value, the content presented in this specification is not limited to the specific configuration of the arrangement and peripheral circuits.

도 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 information storage unit 220 . According to the magnitude of the two currents, the inference control current ia corresponding to the difference flows into or out of the inference control unit 210 .

상기 추론 제어전류 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 current detector 211 .

시냅스 전류 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 comparator 212 is activated, and the result of comparing the voltage of the third node N3 with the comparison reference voltage VB is converted to VDD or VSS through the program control signal CSO. is output

도 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 reasoning unit 200 from the learning unit 100, and the voltages of the column lines SSL and SBL are connected to the program control signal CSO as a switch or controlled by the program control signal CSO. . A program voltage Vpp that may cause tunneling to Q3 is applied to the speculative low line SWL. However, as described above, whether or not a program phenomenon occurs in the corresponding Q3 cell is determined by the column source line SSL and column bit line SBL voltages controlled by the program control signal CSO voltage.

이와 같이 전류 비교 단계와 프로그램 단계가 쌍을 이루어 한 묶음 동작(프로그램 패키지)으로 실행된다. 상기 프로그램 패키지 동작은 초기의 시냅스 전류 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 learning unit 100 to the information storage unit 220 of the inference unit 200 .

도 2에서는 하나의 시냅스 로우 및 칼럼만 도시하였으나, 학습부(100)와 추론부(200)는 공히 다수의 시냅스 로우 및 칼럼을 가지고 시냅스 배열을 이룬다. 상기 프로그램 패키지 동작은 개별 로우 단위로 모든 또는 다수의 컬럼에서 동시에 실행되는 것이 바람직하며, 추론부(200)의 배열을 이루는 모든 로우의 셀에서 가중치 전사가 이루어지면 학습부(100)로부터 추론부(200)로의 가중치 전사는 완료된다.Although only one synapse row and column is illustrated in FIG. 2 , the learning unit 100 and the inference unit 200 both have a plurality of synaptic rows and columns to form a synapse arrangement. Preferably, the program package operation is simultaneously executed in all or a plurality of columns in units of individual rows, and when weight transfer is performed in cells of all rows constituting the arrangement of the reasoning unit 200, the learning unit 100 sends the inference unit ( 200) is complete.

제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 learning unit 300 , a temporary storage unit 400 , and an inference unit 500 .

학습부(300)는 학습 컬럼 라인 VBL의 제1 노드 N1에 연결되고, 학습 로우 라인 VWL을 통해 로우 선택 전압 VL을 수신한다. 또한, 학습부(300)는 획득된 가중치 정보를 전압의 형태로 저장한다. 다만, 상기 학습부(300)에 저장되는 가중치 정보는 동적(Dynamic) 저장 특성을 가진다. The learning unit 300 is connected to the first node N1 of the learning column line VBL, and receives the row selection voltage VL through the learning row line VWL. In addition, the learning unit 300 stores the obtained weight information in the form of voltage. However, the weight information stored in the learning unit 300 has a dynamic storage characteristic.

제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 learning unit 300 to the synaptic weight of the inference unit 500 . When the current output by the synaptic cell of the learning unit 300 to the learning column line VBL and the current output by the synaptic cell of the inference unit 500 to the column bit line SBL are equal, the synaptic weight of the learning unit 300 is determined by the inference unit (500) It is determined that the synapse is transcribed. In the second embodiment, the weight transfer operation is performed in two steps. The second step is a temporary storage step of first copying the synaptic weight of the learning unit 300 to the temporary storage unit 400 , and then applying the weight copied to the temporary storage unit 400 to the non-volatile synaptic cell of the inference unit 500 . The transfer consists of a weight transfer step.

임시 저장부(400)는 연속적인 값을 갖는 아날로그 데이터의 쓰기 동작을 빠르게 실행할 수 있는 메모리 소자이며, 학습부(300)의 시냅스 셀과 동일하게 전하량으로 데이터를 저장하는 커패시터일 수 있다. 커패시터 소자로 가중치를 저장하므로 학습부(300)의 시냅스 셀과 마찬가지로 시간 경과에 따른 전하 손실에 의해 동적(Dynamic) 저장 특성을 가질 수 있으나, 상기 학습부(300)의 시냅스 셀보다 큰 커패시턴스 값을 가짐으로써 학습부(300)의 시냅스 셀보다 데이터를 더 긴 시간 저장 가능하다. The temporary storage unit 400 is a memory device capable of rapidly executing a write operation of analog data having a continuous value, and may be a capacitor for storing data in the same amount of charge as the synaptic cell of the learning unit 300 . Since the weight is stored as a capacitor element, it may have a dynamic storage characteristic due to charge loss over time like the synaptic cell of the learning unit 300 , but a larger capacitance value than the synaptic cell of the learning unit 300 . By having it, it is possible to store data for a longer time than the synaptic cell of the learning unit 300 .

상기 임시 저장 단계에서 학습 로우 라인 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 learning unit 300 flows in from the learning column line VBL, and the synaptic current is and the inference control current ia are controlled to be 0. , the capacitor voltage of the temporary storage unit 400 is automatically adjusted so that the second weighting current ic output from the temporary storage unit 400 is equal to the first weighting current iw.

상기 제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 temporary storage unit 400 is opened to fix the capacitor voltage value. The fixed capacitor voltage corresponds to the weight copied to the temporary storage unit 400 .

상기 가중치 전사 단계에서는 추론부(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 reasoning unit 500 becomes equal to the second weighted current ic of the temporary storage unit 400, and the memory cell of the information storage unit 520 is stored. This is the programming step.

즉, 상기 제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 inference unit 200 is equal to the first weight current iw of the learning unit 100 , and the information storage unit of the inference unit 200 . It is the same process as the operation of programming 220 , except that the learning unit 100 is replaced with the temporary storage unit 400 . In more detail, as in the first embodiment, the weight transfer step includes a current comparison step of comparing the synaptic current is and the second weight current ic and a program step of adjusting the threshold voltage of the synaptic memory cell of the information storage unit 520 . is composed

상기 가중치 전사 단계는 학습부(300)를 상기 추론부(500)로부터 전기적으로 분리시키고, 임시 저장부(400), 추론 제어부(510) 및 정보 저장부(520)를 활성화시켜 동작하게 된다. In the weight transfer step, the learning unit 300 is electrically separated from the reasoning unit 500 , and the temporary storage unit 400 , the reasoning control unit 510 , and the information storage unit 520 are activated to operate.

임시 저장부(400)에 가중치 복사가 이루어지면, 학습부(300)는 전기적으로 분리되어 상기 가중치 전사 동작 중에도 별개의 독립적인 학습 동작을 진행할 수 있다.When the weights are copied to the temporary storage unit 400 , the learning unit 300 is electrically separated to perform a separate independent learning operation during the weight transfer operation.

학습부(300) 및 정보 저장부(520)는 복수개의 로우와 칼럼을 갖는 신경망 배열을 이루는 반면, 임시 저장부(400)는 칼럼마다 1개의 가중치 저장 셀이 존재하며 따라서 전체적으로 1개의 로우 만을 구성한다.While the learning unit 300 and the information storage unit 520 form a neural network array having a plurality of rows and columns, the temporary storage unit 400 has one weight storage cell for each column, and thus only one row is configured as a whole. do.

상기 임시 저장 단계와 상기 가중치 전사 단계는 신경망 배열의 로우마다 한 묶음으로 실행된다. 학습부(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 learning unit 300 , synaptic weights constituting one row of the neural network are stored in the temporary storage unit 400 , and the stored weights in the temporary storage unit 400 are transferred to synaptic cells constituting a row of the corresponding reasoning unit 500 . do. After the transfer operation on the learning unit 300 connected to the row line is completed, the transfer operation on the next row line may be performed. However, the cell weight connected to the row line in the learning unit 300 is transferred as the cell weight in the information storage unit 520 of the corresponding row line, but the temporary storage unit 400 used in the transfer operation process stores all the row lines. can share When the transcription operation is completed for all row lines, all synaptic weights of the learning unit 300 are transferred to the information storage unit 520 of the inference unit 500 .

도 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 learning unit 300 includes a weight information forming unit 310 and a weighting information control unit 320 .

가중치 정보 형성부(310)는 학습을 통한 가중치 전압 Vw를 저장하고, 가중치 전압 Vw에 상응하는 제1 가중치 전류 iw를 생성한다. The weight information forming unit 310 stores the weight voltage Vw through learning and generates a first weight current iw corresponding to the weight voltage Vw.

또한, 가중치 정보 형성부(310)와 학습 컬럼 라인 VBL의 제1 노드 N1 사이에 연결된 가중치 정보 제어부(320)은 학습 로우 라인 VWL을 통해 인가되는 로우 선택 전압 VL에 의존하여 제1 가중치 전류 iw를 학습 컬럼 라인 VBL의 제1 노드 N1으로부터 유입한다.In addition, the weight information control unit 320 connected between the weight information forming unit 310 and the first node N1 of the learning column line VBL generates a first weighting current iw depending on the row selection voltage VL applied through the learning row line VWL. It flows in from the first node N1 of the learning column line VBL.

가중치 정보 형성부(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 information forming unit 310 includes a first capacitor CL and a second transistor Q2 , and the weight information control unit 320 includes a first transistor Q1 . The first transistor Q1 is connected to the first node N1, and the transfer control voltage row selection voltage VL is applied to the gate terminal. Also, the second transistor Q2 is connected between the first transistor Q1 and the VBSS terminal. A first capacitor CL is connected between the gate terminal of the second transistor Q2 and the VBSS terminal.

설명의 편의를 위해 가중치의 학습 동작은 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 temporary storage unit 400 is connected between the positive power voltage VBDD and the second node N2 , and is selectively connected to the learning unit 300 through the first switch SW1 . The temporary storage unit 400 includes a third transistor Q3 and a second capacitor CT. The third transistor Q3 is connected between the positive power supply voltage VBDD and the second node N2, and the gate terminal is connected to the other terminal of the second capacitor CT. One terminal of the second capacitor CT is connected to the positive power supply voltage VBDD. Also, a second switch SW2 is disposed between the gate terminal and the drain terminal of the third transistor Q3.

학습부(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 learning unit 300 is started when the transfer control voltage low selection voltage VL is at a high level, the first switch SW1 is turned on, and the second switch SW2 is turned on. Also, the third switch SW3 and the fourth switch SW4 are turned off to perform the temporary storage operation. The first weighting current iw corresponding to the weighting voltage Vw stored in the first capacitor CL flows along a path formed by the third transistor Q3, the second node N2, the first node N1, the first transistor Q1, and the second transistor Q2. The voltage of the second node N2 connected to the first node N1 is adjusted until the first weight current iw flowing through Q2 and the second weight current ic of the temporary storage unit 400 flowing through Q3 become the same, and the second weight When the current ic reaches the same magnitude as the first weight current iw, the voltages of the N1 and N2 nodes and the Q3 gate terminals, which are the same voltages, are kept constant. Thereafter, by opening SW2, the voltage Vtmp outputting the second weighting current ic equal to the first weighting current iw is stored in the capacitor CT. This completes the operation of the temporary storage step. When the temporary storage operation is completed, SW1 is opened to electrically disconnect the learning unit 300 .

임시 저장 단계에 이어서 실행되는 가중치 전사 단계는 정보 저장부(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 information storage unit 520 has the same magnitude as the second weight current ic of the temporary storage unit 400 . The program package operation of the program stage is repeatedly performed.

즉, 전류 비교 단계에서 컬럼 소스 라인 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 current detector 511 and Ecmp is activated at an appropriate time to control the program according to the comparison result between the synaptic current is and the second weighted current ic A VDD or VSS voltage is output through the signal CSO.

시냅스 전류 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 learning unit 300 for all the row lines are stored in the information storage unit 520 through the temporary storage unit 400, it is determined that the weight transfer mode of the second embodiment is completed.

제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 temporary storage unit 400 is arranged at each intersection of a plurality of row lines and column lines, while only one capacitor CT exists in one column line, even if it has a large capacity as a unit device, the overall The required area burden is reduced.

도 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 information control unit 320 . . As a current flows from the learning column line VBL line to the learning unit 300 , the learning column line VBL line voltage decreases, and the gate voltage of Q3 connected to the learning column line VBL also decreases accordingly. As the gate voltage of transistor Q3 falls, the Vtmp voltage increases and thus the second weight current ic also increases. The transition continues until the magnitude of the second weighting current ic becomes equal to the first weighting current iw and the net current of the learning column line VBL becomes zero.

충분한 시간이 경과한 후, 제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 learning unit 300 is transferred to the temporary storage unit 400 ), the operation of being copied to the capacitor CT is completed. After SW1 is opened, the learning unit 300 is electrically separated.

임시 저장 단계가 완료된 후, 가중치 전사 단계가 시작된다. 가중치 전사 단계는 더 세부적으로 전류 비교 단계와 프로그램 단계로 구성되는데, 상기 전류 비교 단계에서 스위치 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 reasoning unit 500, to draw the synaptic current is from the column bit line SBL.

초기에 스위치 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 speculation control unit 510 . The reasoning control current ia accumulated in the capacitor CA for a certain time increases or decreases the voltage of the fourth node N4 than the comparison reference voltage VB depending on the direction.

전류 누적에 충분한 시간이 경과한 시점에 Ecmp 신호를 통해 비교기(512)를 활성화시켜 프로그램 제어신호 CSO 출력을 발생하고 상기 전류 비교 동작이 완료된다. 상기 시냅스 전류 is가 제2 가중치 전류 ic에 비해 큰 값일 경우 프로그램 제어신호 CSO에는 VSS를 출력하고, 그 반대의 경우엔 VDD를 출력한다.When a time sufficient for current accumulation has elapsed, the comparator 512 is activated through the Ecmp signal to generate a program control signal CSO output, and the current comparison operation is completed. 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 opposite case, VDD is outputted.

이후 이어지는 프로그램 단계에서는 컬럼 소스 라인 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 information storage unit 620 is formed of string-type flash memories QF1, QF2, QF3, and QF4, other configurations are the same as those of the first and second embodiments. However, in FIG. 7 , weight information obtained in time series by one learner may be sequentially stored in string-type flash memories QF1, QF2, QF3, and QF4.

도 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 information storage unit 620 .

먼저, 제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 information storage unit 620 . For example, when the third flash memory QF3 is selected, the passing voltage Vpass is applied to the speculation row lines SWL1, SWL2, and SWL4 that are gate terminals of the unselected flash memories, and the read voltage Vread is applied to the speculation row line SWL3 of the selected flash memory. do. The passing voltage Vpass is a value between the read voltage Vread and the program voltage Vpp, and through the application of the passing voltage Vpass, the corresponding flash memory acts only as a switch.

따라서, 제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 information storage unit 620 as a new weight current. At this time, other flash memories are selected from among the plurality of flash memories QF1, QF2, QF3, and QF4 except for the third flash memory QF3 in which the weight is stored in the first mode. The selection operation of the flash memory is an operation of applying the read voltage Vread to the speculation row line SWL of the selected flash memory. At this time, the passing voltage Vpass is applied to the gate terminals of the remaining flash memories that are not selected.

상술한 동작을 통해 스트링을 이루는 복수개의 플래시 메모리들 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 unit 200, 500: reasoning unit
210, 510: inference control unit 220, 520: information storage unit
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.
제1항에 있어서,
상기 학습부는
상기 가중치 정보를 동적 특성의 커패시터 전압으로 저장하며,
상기 추론부는
상기 가중치가 비휘발성 메모리 소자에 저장되는 것을 특징으로 하는 인공 신경망 소자.
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.
제2항에 있어서,
상기 학습부가 출력하는 가중치 전류와 대응되는 상기 추론부가 출력하는 시냅스 전류가 동일하도록 상기 추론부의 가중치를 조절하는 것을 특징으로 하는 인공 신경망 소자.
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.
제1항에 있어서, 상기 학습부는
학습을 통해 상기 커패시터 전압을 저장하기 위한 가중치 정보 형성부; 및
가중치 정보 형성부와 학습 컬럼 라인 사이에 연결되고, 학습 로우 라인을 통해 인가되는 제어전압에 의존하여 가중치 전류를 형성하고, 상기 학습 컬럼 라인에 상기 가중치 전류를 전달하기 위한 가중치 정보 제어부를 포함하는 것을 특징으로 하는 인공 신경망 소자.
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.
제1항에 있어서, 상기 추론부는
상기 학습부에 선택적으로 연결되고, 상기 가중치 전류에 대한 전류 비교 동작을 수행하고, 프로그램 판단 동작을 수행하기 위한 추론 제어부; 및
상기 추론 제어부에 선택적으로 연결되고, 프로그램 동작에 의해 문턱 전압이 변경되고, 추론 로우 라인을 통해 인가되는 읽기 전압에 따른 시냅스 전류를 형성하기 위한 정보 저장부를 포함하고,
상기 추론 제어부는 읽기 전압에 따른 전류와 상기 가중치 전류를 비교하여 프로그램 제어신호를 출력하는 것을 특징으로 하는 인공 신경망 소자.
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.
제5항에 있어서, 상기 추론 제어전류가 상기 정보 저장부로 유입되면, 상기 프로그램 제어신호에 따라 상기 정보 저장부는 프로그램 동작을 수행하는 것을 특징으로 하는 인공 신경망 소자. The artificial neural network device according to claim 5, wherein when the reasoning control current flows into the information storage unit, the information storage unit performs a program operation according to the program control signal. 제6항에 있어서, 상기 가중치 전류와 상기 읽기 전압에 따른 전류의 크기가 반전되는 시점까지 상기 프로그램 동작이 반복되는 것을 특징으로 하는 인공 신경망 소자.The artificial neural network device of claim 6 , wherein the programming operation is repeated until a point in time when magnitudes of the current according to the weight current and the read voltage are inverted. 제5항에 있어서, 상기 추론 제어부는
상기 학습부 또는 상기 정보 저장부에 선택적으로 연결되는 전류감지기; 및
상기 전류감지기와 연결되고, 상기 프로그램 제어신호를 출력하기 위한 비교기를 포함하는 것을 특징으로 하는 인공 신경망 소자.
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.
제5항에 있어서, 상기 정보 저장부는 플래시 메모리 셀을 포함하는 것을 특징으로 하는 인공 신경망 소자.The artificial neural network device according to claim 5, wherein the information storage unit comprises a flash memory cell. 제5항에 있어서, 상기 정보 저장부는 복수개의 플래시 메모리 셀들이 스트링 형태로 연결된 것을 특징으로 하는 인공 신경망 소자.The artificial neural network device according to claim 5, wherein the information storage unit has a plurality of flash memory cells connected in a string form. 가중치 정보를 획득하여 휘발성의 가중치 전압으로 저장하는 학습부;
상기 학습부의 가중치 전압에 의해 발생되는 가중치 전류에 상응하는 임시 저장 전압을 저장하기 위한 임시 저장부; 및
상기 임시 저장부에 선택적으로 연결되며, 상기 임시 저장부가 공급하는 가중치 전류를 수신하고, 이를 비휘발성 데이터로 저장하기 위한 추론부를 포함하는 인공 신경망 소자.
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.
제11항에 있어서, 상기 학습부는
학습을 통해 상기 가중치 전압을 저장하기 위한 가중치 정보 형성부; 및
가중치 정보 형성부와 학습 컬럼 라인 사이에 연결되고, 학습 로우 라인을 통해 인가되는 제어전압에 의존하여 가중치 전류를 형성하기 위한 가중치 정보 제어부를 포함하는 것을 특징으로 하는 인공 신경망 소자.
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.
제12항에 있어서, 상기 학습부에서 상기 가중치 전압을 저장하기 위한 커패시턴스 보다 상기 임시 저장부에서 상기 임시 저장 전압을 저장하기 위한 커패시턴스가 더 큰 것을 특징으로 하는 인공 신경망 소자.The artificial neural network device according to claim 12, wherein a capacitance for storing the temporary storage voltage in the temporary storage unit is greater than a capacitance for storing the weight voltage in the learning unit. 제11항에 있어서, 상기 추론부는
상기 임시 저장부에 선택적으로 연결되고, 상기 가중치 전류에 대한 전류 비교 동작을 수행하고, 프로그램 판단 동작을 수행하기 위한 추론 제어부; 및
상기 추론 제어부에 선택적으로 연결되고, 프로그램 동작에 의해 문턱 전압이 변경되고, 추론 로우 라인을 통해 인가되는 읽기 전압에 따른 시냅스 전류를 형성하기 위한 정보 저장부를 포함하고,
상기 추론 제어부는 읽기 전압에 따른 상기 시냅스 전류와 상기 가중치 전류를 비교하여 프로그램 제어신호를 출력하는 것을 특징으로 하는 인공 신경망 소자.
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.
제14항에 있어서, 상기 정보 저장부는 플래시 메모리를 포함하는 것을 특징으로 하는 인공 신경망 소자.15. The artificial neural network device of claim 14, wherein the information storage unit comprises a flash memory. 제14항에 있어서, 상기 정보 저장부는 복수개의 플래시 메모리 셀들이 직렬 연결되어 스트링을 구성하는 것을 특징으로 하는 인공 신경망 소자.15. The artificial neural network device of claim 14, wherein the information storage unit comprises a plurality of flash memory cells connected in series to form a string. 휘발성의 가중치 정보에 상응하는 가중치 전류에 대한 전류 비교 동작을 수행하는 단계; 및
상기 전류 비교 동작을 근거로 상기 가중치 전류가 비휘발성 가중치 정보로 전사되는 비휘발성 메모리에 대한 프로그램 동작을 판단하는 단계를 포함하는 인공 신경망 소자의 동작 방법.
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.
제17항에 있어서, 상기 전류 비교 동작은 상기 가중치 전류와 읽기 전압에 대한 상기 비휘발성 메모리의 시냅스 전류를 비교하는 것이며, 전류 비교 결과에 의해 추론 제어전류가 발생되는 것을 특징으로 하는 인공 신경망 소자의 동작 방법.The artificial neural network device of claim 17, wherein the current comparison operation compares the synaptic current of the non-volatile memory with respect to the weight current and the read voltage, and an inference control current is generated according to the current comparison result. how it works. 제18항에 있어서, 상기 전류 비교 결과, 상기 가중치 전류가 상기 시냅스 전류보다 작으면, 상기 비휘발성 메모리에 대한 프로그램 동작이 수행되는 것을 특징으로 하는 인공 신경망 소자의 동작 방법.19. The method of claim 18, wherein when the weight current is smaller than the synaptic current as a result of the current comparison, a program operation on the non-volatile memory is performed. 제18항에 있어서, 상기 전류 비교 결과, 프로그램 동작에 의해 상기 가중치 전류와 상기 시냅스 전류의 크기가 반전되면, 상기 비휘발성 메모리에 대한 프로그램 동작이 중지되는 것을 특징으로 하는 인공 신경망 소자의 동작 방법.The method of claim 18 , wherein, as a result of comparing the currents, when the magnitudes of the weight current and the synaptic current are inverted by a program operation, the program operation on the non-volatile memory is stopped. 제20항에 있어서, 상기 프로그램 동작의 중지에 의해 상기 가중치 전류의 전사가 상기 비휘발성 메모리에서 완료된 것으로 판단하는 것을 특징으로 하는 인공 신경망 소자의 동작 방법.21. The method of claim 20, wherein it is determined that the transfer of the weight current is completed in the non-volatile memory by stopping the program operation. 제17항에 있어서, 상기 전류 비교 동작 이전에
상기 휘발성의 가중치 정보에 상응하는 가중치 전류를 이용하여 상기 가중치 정보를 휘발성이 다른 가중치 정보로 임시 저장하는 단계를 더 포함하는 것을 특징으로 하는 인공 신경망 소자의 동작 방법.
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.
KR1020210038255A 2021-03-24 2021-03-24 Artificial Neuromorphic Device and Methode of operating the same KR102612011B1 (en)

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)

* Cited by examiner, † Cited by third party
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

Patent Citations (6)

* Cited by examiner, † Cited by third party
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