KR102427975B1 - Conductance-based sequential matrix multiplication neural network by controlling weights with transistors - Google Patents

Conductance-based sequential matrix multiplication neural network by controlling weights with transistors Download PDF

Info

Publication number
KR102427975B1
KR102427975B1 KR1020200003241A KR20200003241A KR102427975B1 KR 102427975 B1 KR102427975 B1 KR 102427975B1 KR 1020200003241 A KR1020200003241 A KR 1020200003241A KR 20200003241 A KR20200003241 A KR 20200003241A KR 102427975 B1 KR102427975 B1 KR 102427975B1
Authority
KR
South Korea
Prior art keywords
transistor
weight
diode
conductance
neural network
Prior art date
Application number
KR1020200003241A
Other languages
Korean (ko)
Other versions
KR20210089988A (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 KR1020200003241A priority Critical patent/KR102427975B1/en
Publication of KR20210089988A publication Critical patent/KR20210089988A/en
Application granted granted Critical
Publication of KR102427975B1 publication Critical patent/KR102427975B1/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
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F17/00Digital computing or data processing equipment or methods, specially adapted for specific functions
    • G06F17/10Complex mathematical operations
    • G06F17/16Matrix or vector computation, e.g. matrix-matrix or matrix-vector multiplication, matrix factorization

Landscapes

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

Abstract

본 발명의 실시예에 따른 트랜지스터로 가중치를 조절할 수 있는 컨덕턴스 기반 순차 행렬 곱셈 뉴럴 네트워크는 워드 라인, 입력 라인 및 다이오드와 연결되는 트랜지스터와, 출력 라인, 및 트랜지스터와 연결되는 다이오드를 포함하고, 출력 라인은 선택 트랜지스터와 연결된다.A conductance-based sequential matrix multiplication neural network capable of adjusting a weight with a transistor according to an embodiment of the present invention includes a word line, an input line and a transistor connected to a diode, an output line, and a diode connected to the transistor, and an output line is connected to the selection transistor.

Description

트랜지스터로 가중치를 조절할 수 있는 컨덕턴스 기반 순차 행렬 곱셈 뉴럴 네트워크{CONDUCTANCE-BASED SEQUENTIAL MATRIX MULTIPLICATION NEURAL NETWORK BY CONTROLLING WEIGHTS WITH TRANSISTORS}CONDUCTANCE-BASED SEQUENTIAL MATRIX MULTIPLICATION NEURAL NETWORK BY CONTROLLING WEIGHTS WITH TRANSISTORS

본 발명은 뉴럴 네트워크에 관한 것으로서, 보다 상세하게는 트랜지스터로 가중치를 조절할 수 있는 컨덕턴스 기반 순차 행렬 곱셈 뉴럴 네트워크에 관한 것이다.The present invention relates to a neural network, and more particularly, to a conductance-based sequential matrix multiplication neural network capable of controlling a weight with a transistor.

모바일용 뉴럴 프로세서는 학습을 서버나 컴퓨터로 수행하고 학습결과를 모바일 뉴럴 프로세서에 저장하여 추론(inference)을 수행한다. 이 때 뉴럴 프로세서의 가중치에 저장되는 값은 멀티레벨이 되는 것이 바람직하나 멀티레벨 값에 한계가 있어서 학습을 수행한 후 전지 작업(pruning), 데이터 압축 등의 과정을 거쳐 작은 비트폭(small bit-width)화 한 다음 그 값을 모바일 뉴럴 프로세서 가중치로 저장한다. 이 가중치는 불휘발성 메모리 또는 휘발성 메모리에 저장할 수 있다. The mobile neural processor performs learning by a server or computer, and stores the learning results in the mobile neural processor to perform inference. At this time, it is preferable that the value stored in the weight of the neural processor be multi-level, but there is a limit to the multi-level value. width) and then store the value as the mobile neural processor weight. This weight may be stored in a non-volatile memory or a volatile memory.

서버용으로는 Google의 TPU(Tensor Processing Unit)가 있는데 가중치 값을 DRAM에 저장한 후 페치(fetch)하여 행렬 곱셈부(matrix multiply unit, MMU)로 보낸다. 출력(output) 계산 결과는 DRAM에 저장된 새로운 가중치 값과 함께 다시 행렬 곱셈부 입력(input)으로 보내어 최종 출력(output) 결과가 나올 때까지 순환시킨다. For servers, there is Google's Tensor Processing Unit (TPU), which stores weight values in DRAM, fetches them, and sends them to the matrix multiply unit (MMU). The output calculation result is sent back to the matrix multiplier input together with the new weight value stored in the DRAM, and circulated until the final output result is obtained.

가중치를 불휘발성 메모리에 저장하여 사용하는 경우에는 추론 속도가 빠른 장점이 있으나 은닉층(hidden layer)을 모두 제작해야 하므로 회로 오버헤드(circuit overhead)가 증가하는 단점이 있다. Google의 TPU같은 경우는 가중치 정보를 뉴럴 네트워크 외부에 저장하고, 동일한 뉴럴 네트위크를 다시 사용하면서 순차적으로 계산하기 때문에 추론 속도는 감소하지만 회로 오버헤드를 줄일 수 있다.When the weights are stored and used in the nonvolatile memory, the inference speed is fast, but there is a disadvantage in that the circuit overhead increases because all hidden layers must be manufactured. In the case of Google's TPU, weight information is stored outside the neural network, and the inference speed is reduced, but circuit overhead can be reduced because it is sequentially calculated while using the same neural network again.

위 기재된 내용은 오직 본 발명의 기술적 사상들에 대한 배경 기술의 이해를 돕기 위한 것이며, 따라서 그것은 본 발명의 기술 분야의 당업자에게 알려진 선행 기술에 해당하는 내용으로 이해될 수 없다.The above description is only for helping the understanding of the background of the technical spirit of the present invention, and therefore it cannot be understood as the content corresponding to the prior art known to those skilled in the art.

뉴럴 네트워크로 데이터를 학습하고 학습한 결과를 이용하여 추론 및 예측 등을 수행하기 위해서는 가중치를 조절해야 한다. 가중치 소자를 멀티레벨로 제작한다는 것은 물리적 한계가 있기 때문에, 소프트웨어에서 사용하는 가중치 비트폭(weight bit-width)을 따라갈 수 없다. 예를 들어서 16 비트폭의 멀티레벨, 즉, 65,536 저항 레벨을 갖는 저항 메모리 소재는 현재로서는 구현하기 어렵다. 따라서 가중치 값을 소프트웨어만큼 탄력적으로 입력하면서 행렬 곱셈이 가능한 행렬 곱셈부의 구조와 작동 방법을 고안해야 한다.In order to learn data with a neural network and perform inference and prediction using the learned result, weights need to be adjusted. Since there is a physical limit to manufacturing a weight element in multi-level, it cannot follow the weight bit-width used in software. For example, a 16-bit wide multilevel resistive memory material with 65,536 resistance levels is currently difficult to implement. Therefore, it is necessary to devise a structure and operation method of a matrix multiplier that can perform matrix multiplication while inputting weight values as flexibly as software.

가중치를 바꾸기 위해 저항값(혹은 컨덕턴스 값)을 바꾸는 방법으로는 여러가지 저항 값을 갖는 저항체를 제작하여 필요한 저항체를 선택하거나, 동일한 고정 저항 값을 갖는 저항체들을 제작한 후 그룹으로 선택하는 방법이 있다. 이러한 경우에는 회로가 복잡해지기 때문에 circuit overhead가 증가한다. 또한, 은닉층을 필요한 만큼 제작하는 것이 칩(chip) 크기에 제약을 주는 또 하나의 문제가 된다. 따라서, 메모리 소재를 가중치로 사용하는 것보다는 트랜지스터를 사용하여 트랜지스터의 채널 컨덕턴스를 멀티레벨화 하거나 트랜지스터에 흐르는 전류를 멀티레벨화 하는 방법을 고안하는 것이 바람직하다.As a method of changing the resistance value (or conductance value) to change the weight, there is a method of manufacturing resistors having various resistance values and selecting the necessary resistors, or there is a method of manufacturing resistors having the same fixed resistance value and selecting the resistors as a group. In this case, the circuit overhead increases because the circuit becomes more complex. In addition, manufacturing as many hidden layers as necessary is another problem that limits the size of a chip. Therefore, rather than using a memory material as a weight, it is preferable to devise a method for multileveling the channel conductance of a transistor or multileveling the current flowing through the transistor using a transistor.

상기 목적을 달성하기 위하여 본 발명의 실시예에 따른 트랜지스터로 가중치를 조절할 수 있는 컨덕턴스 기반 순차 행렬 곱셈 뉴럴 네트워크는, 워드 라인, 입력 라인, 및 다이오드와 연결되는 트랜지스터와; 출력 라인, 및 상기 트랜지스터와 연결되는 다이오드를 포함하고, 상기 출력 라인은 선택 트랜지스터와 연결된다.In order to achieve the above object, in accordance with an embodiment of the present invention, a conductance-based sequential matrix multiplication neural network capable of adjusting a weight with a transistor includes: a transistor connected to a word line, an input line, and a diode; an output line, and a diode coupled to the transistor, the output line coupled to the selection transistor.

상기 워드 라인에 인가되는 전압은 펄스 전압일 수 있다.The voltage applied to the word line may be a pulse voltage.

상기 펄스 전압의 펄스 진폭을 제어하여 가중치를 조절할 수 있다.The weight may be adjusted by controlling the pulse amplitude of the pulse voltage.

상기 펄스 전압의 펄스 폭을 제어하여 가중치를 조절할 수 있다.The weight may be adjusted by controlling the pulse width of the pulse voltage.

상기 워드 라인과 상기 출력 라인은 서로 직교하여 위치할 수 있다.The word line and the output line may be positioned perpendicular to each other.

상기 입력 라인은 입력과 연결되고, 상기 선택 트랜지스터는 출력과 연결될 수 있다.The input line may be connected to an input, and the selection transistor may be connected to an output.

상기 입력은 직류 전압이 인가되고, 상기 출력은 전하 적분기와 연결될 수 있다.A DC voltage may be applied to the input, and the output may be connected to a charge integrator.

본 발명의 실시예에 따른 트랜지스터로 가중치를 조절할 수 있는 컨덕턴스 기반 순차 행렬 곱셈 뉴럴 네트워크는, 제1 워드 라인, 제1 입력, 및 제1 다이오드와 연결되는 제1 트랜지스터, 및 출력 라인과 연결되는 상기 제1 다이오드를 포함하는 제1 가중치 셀과; 제2 워드 라인, 제2 입력, 및 제2 다이오드와 연결되는 제2 트랜지스터, 및 출력 라인과 연결되는 상기 제2 다이오드를 포함하는 제2 가중치 셀을 포함하고, 상기 출력 라인은 제1 선택 트랜지스터와 연결된다.A conductance-based sequential matrix multiplication neural network capable of adjusting a weight with a transistor according to an embodiment of the present invention includes a first word line, a first input, a first transistor connected to a first diode, and an output line connected to the a first weight cell comprising a first diode; a second weight cell comprising a second word line, a second input, a second transistor coupled to a second diode, and the second diode coupled to an output line, the output line comprising a first select transistor and Connected.

상기 제1 워드 라인과 상기 제2 워드 라인에 인가되는 전압은 서로 다른 펄스 전압일 수 있다.Voltages applied to the first word line and the second word line may be different pulse voltages.

상기 서로 다른 펄스 전압은 서로 다른 펄스 진폭을 가질 수 있다.The different pulse voltages may have different pulse amplitudes.

상기 서로 다른 펄스 전압의 펄스 진폭을 제어하여 상기 출력 라인으로 출력되는 가중치를 조절할 수 있다.A weight output to the output line may be adjusted by controlling the pulse amplitudes of the different pulse voltages.

상기 서로 다른 펄스 전압은 서로 다른 펄스 폭을 가질 수 있다.The different pulse voltages may have different pulse widths.

상기 서로 다른 펄스 전압의 펄스 폭을 제어하여 상기 출력 라인으로 출력되는 가중치를 조절할 수 있다.A weight output to the output line may be adjusted by controlling the pulse widths of the different pulse voltages.

상기 제1 워드 라인과 상기 제2 워드 라인은 서로 평행하게 위치하고, 상기 제1 워드 라인 및 상기 제2 워드 라인과 상기 출력 라인은 서로 직교하여 위치할 수 있다.The first word line and the second word line may be positioned parallel to each other, and the first word line, the second word line, and the output line may be positioned perpendicular to each other.

본 발명의 실시예에 따른 트랜지스터로 가중치를 조절할 수 있는 컨덕턴스 기반 순차 행렬 곱셈 뉴럴 네트워크는, 제1 워드 라인, 제1 입력, 및 다이오드와 연결되는 제1 트랜지스터, 및 제1 출력 라인과 연결되는 상기 다이오드를 포함하는 제1 가중치 셀과; 제2 워드 라인, 제2 입력, 및 다이오드와 연결되는 제2 트랜지스터, 및 제1 출력 라인과 연결되는 상기 다이오드를 포함하는 제2 가중치 셀과; 제1 워드 라인, 제1 입력, 및 다이오드와 연결되는 제3 트랜지스터, 및 제2 출력 라인과 연결되는 상기 다이오드를 포함하는 제3 가중치 셀과; 제2 워드 라인, 제2 입력, 및 다이오드와 연결되는 제4 트랜지스터, 및 제2 출력 라인과 연결되는 상기 다이오드를 포함하는 제4 가중치 셀을 포함하고, 상기 제1 출력 라인은 제1 선택 트랜지스터와 연결되고, 상기 제2 출력 라인은 제2 선택 트랜지스터와 연결된다.A conductance-based sequential matrix multiplication neural network capable of adjusting a weight with a transistor according to an embodiment of the present invention includes a first word line, a first input, a first transistor connected to a diode, and a first output line a first weight cell comprising a diode; a second weight cell comprising a second word line, a second input, a second transistor coupled to a diode, and the diode coupled to a first output line; a third weight cell comprising a third transistor coupled to a first word line, a first input, and a diode, and the diode coupled to a second output line; a fourth weight cell comprising a second word line, a second input, and a fourth transistor coupled to a diode, and the diode coupled to a second output line, wherein the first output line comprises a first select transistor and connected, and the second output line is connected to a second selection transistor.

상기 제1 워드 라인과 상기 제2 워드 라인에 인가되는 전압은 서로 다른 펄스 전압일 수 있다.Voltages applied to the first word line and the second word line may be different pulse voltages.

상기 서로 다른 펄스 전압은 서로 다른 펄스 진폭 또는 서로 다른 펄스 폭을 가질 수 있다.The different pulse voltages may have different pulse amplitudes or different pulse widths.

상기 서로 다른 펄스 전압의 펄스 진폭 또는 펄스 폭을 제어하여 가중치를 조절할 수 있다.The weight may be adjusted by controlling the pulse amplitudes or pulse widths of the different pulse voltages.

상기 제1 선택 트랜지스터와 상기 제2 선택 트랜지스터에 선택적으로 게이트 전압을 인가하여 상기 제1 출력 라인 및 상기 제2 출력 라인으로 출력되는 가중치 셀의 가중치를 선택적으로 조절할 수 있다.By selectively applying a gate voltage to the first selection transistor and the second selection transistor, weights of weight cells output to the first output line and the second output line may be selectively adjusted.

상기 제1 선택 트랜지스터와 상기 제2 선택 트랜지스터에 순차로 게이트 전압을 인가하여 상기 제1 출력 라인 및 상기 제2 출력 라인으로 출력되는 가중치 셀의 가중치를 순차로 조절할 수 있다.By sequentially applying a gate voltage to the first selection transistor and the second selection transistor, weights of weight cells output to the first output line and the second output line may be sequentially adjusted.

이와 같은 본 발명의 실시예에 따른 트랜지스터로 가중치를 조절할 수 있는 컨덕턴스 기반 순차 행렬 곱셈 뉴럴 네트워크는, 가중치를 탄력적으로 조절할 수 있으며, 회로 부하를 줄일 수 있고 행렬 곱셈 유닛 칩 크기(matrix multiplication unit chip size)도 최소화할 수 있다.Such a conductance-based sequential matrix multiplication neural network capable of adjusting weights with transistors according to an embodiment of the present invention can adjust weights flexibly, reduce circuit load, and achieve matrix multiplication unit chip size (matrix multiplication unit chip size). ) can also be minimized.

도 1은 본 발명의 일 실시예에 따른 뉴럴 네트워크를 개략적으로 나타내는 회로도이다.
도 2는 본 발명의 일 실시예에 따른 뉴럴 네트워크의 가중치 셀을 개략적으로 나타내는 회로도이다.
도 3 및 도 4는 본 발명의 일 실시예에 따른 뉴럴 네트워크의 가중치 셀의 작동 원리를 개략적으로 나타내는 회로도이다.
도 5는 본 발명의 일 실시예에 따른 뉴럴 네트워크의 가중치 셀 어레이와 어레이에 연결된 워드 라인들, 비트 라인들, 선택 트랜지스터들 및 각각의 입력, 출력을 설명하기 위한 회로도이다.
도 6 및 도 7은 본 발명의 실시예에 따른 뉴럴 네트워크의 순차 행렬 곱셈 동작을 설명하기 위한 회로도이다.
1 is a circuit diagram schematically illustrating a neural network according to an embodiment of the present invention.
2 is a circuit diagram schematically illustrating a weight cell of a neural network according to an embodiment of the present invention.
3 and 4 are circuit diagrams schematically illustrating an operating principle of a weight cell of a neural network according to an embodiment of the present invention.
5 is a circuit diagram illustrating a weight cell array of a neural network, word lines, bit lines, and selection transistors connected to the array, and respective inputs and outputs according to an embodiment of the present invention.
6 and 7 are circuit diagrams for explaining a sequential matrix multiplication operation of a neural network according to an embodiment of the present invention.

위 발명의 배경이 되는 기술 란에 기재된 내용은 오직 본 발명의 기술적 사상에 대한 배경 기술의 이해를 돕기 위한 것이며, 따라서 그것은 본 발명의 기술 분야의 당업자에게 알려진 선행 기술에 해당하는 내용으로 이해될 수 없다.The contents described in the technical field of the background of the present invention are only for helping the understanding of the background of the technical idea of the present invention, and therefore it can be understood as content corresponding to the prior art known to those skilled in the art of the present invention. none.

아래의 서술에서, 설명의 목적으로, 다양한 실시예들의 이해를 돕기 위해 많은 구체적인 세부 내용들이 제시된다. 그러나, 다양한 실시예들이 이러한 구체적인 세부 내용들 없이 또는 하나 이상의 동등한 방식으로 실시될 수 있다는 것은 명백하다. 다른 예시들에서, 잘 알려진 구조들과 장치들은 다양한 실시예들을 불필요하게 이해하기 어렵게 하는 것을 피하기 위해 블록도로 표시된다. In the following description, for purposes of explanation, numerous specific details are set forth to aid in understanding various embodiments. It will be evident, however, that various embodiments may be practiced without these specific details or in one or more equivalent manners. In other instances, well-known structures and devices are shown in block diagram form in order to avoid unnecessarily obscuring the various embodiments.

도면에서, 레이어들, 필름들, 패널들, 영역들 등의 크기 또는 상대적인 크기는 명확한 설명을 위해 과장될 수 있다. 또한, 동일한 참조 번호는 동일한 구성 요소를 나타낸다.In the drawings, the size or relative size of layers, films, panels, regions, etc. may be exaggerated for clarity. Also, like reference numbers indicate like elements.

명세서 전체에서, 어떤 부분이 다른 부분과 "연결"되어 있다고 할 때, 이는 "직접적으로 연결"되어 있는 경우뿐 아니라, 그 중간에 다른 소자를 사이에 두고 "간접적으로 연결"되어 있는 경우도 포함한다. 그러나, 만약 어떤 부분이 다른 부분과 "직접적으로 연결되어 있다”고 서술되어 있으면, 이는 해당 부분과 다른 부분 사이에 다른 소자가 없음을 의미할 것이다. "X, Y, 및 Z 중 적어도 어느 하나", 그리고 "X, Y, 및 Z로 구성된 그룹으로부터 선택된 적어도 어느 하나"는 X 하나, Y 하나, Z 하나, 또는 X, Y, 및 Z 중 둘 또는 그 이상의 어떤 조합 (예를 들면, XYZ, XYY, YZ, ZZ) 으로 이해될 것이다. 여기에서, "및/또는"은 해당 구성들 중 하나 또는 그 이상의 모든 조합을 포함한다.Throughout the specification, when a part is "connected" with another part, this includes not only the case of being "directly connected" but also the case of being "indirectly connected" with another element interposed therebetween. . However, if it is stated that a part is "directly connected" to another part, this will mean that there is no other element between the part and the other part. "At least one of X, Y, and Z" , and "at least any one selected from the group consisting of X, Y, and Z" means one X, one Y, one Z, or any combination of two or more of X, Y, and Z (e.g., XYZ, XYY , YZ, ZZ) Herein, "and/or" includes any combination of one or more of those elements.

여기에서, 첫번째, 두번째 등과 같은 용어가 다양한 소자들, 요소들, 지역들, 레이어들, 및/또는 섹션들을 설명하기 위해 사용될 수 있지만, 이러한 소자들, 요소들, 지역들, 레이어들, 및/또는 섹션들은 이러한 용어들에 한정되지 않는다. 이러한 용어들은 하나의 소자, 요소, 지역, 레이어, 및/또는 섹션을 다른 소자, 요소, 지역, 레이어, 및 또는 섹션과 구별하기 위해 사용된다. 따라서, 일 실시예에서의 첫번째 소자, 요소, 지역, 레이어, 및/또는 섹션은 다른 실시예에서 두번째 소자, 요소, 지역, 레이어, 및/또는 섹션이라 칭할 수 있다.Herein, although terms such as first, second, etc. may be used to describe various elements, elements, regions, layers, and/or sections, such elements, elements, regions, layers, and/or or sections are not limited to these terms. These terms are used to distinguish one element, element, region, layer, and/or section from another element, element, region, layer, and/or section. Accordingly, a first element, element, region, layer, and/or section in one embodiment may be referred to as a second element, element, region, layer, and/or section in another embodiment.

"아래", "위" 등과 같은 공간적으로 상대적인 용어가 설명의 목적으로 사용될 수 있으며, 그렇게 함으로써 도면에서 도시된 대로 하나의 소자 또는 특징과 다른 소자(들) 또는 특징(들)과의 관계를 설명한다. 이는 도면 상에서 하나의 구성 요소의 다른 구성 요소에 대한 관계를 나타내는 데에 사용될 뿐, 절대적인 위치를 의미하는 것은 아니다. 예를 들어, 도면에 도시된 장치가 뒤집히면, 다른 소자들 또는 특징들의 "아래"에 위치하는 것으로 묘사된 소자들은 다른 소자들 또는 특징들의 "위"의 방향에 위치한다. 따라서, 일 실시예에서 "아래" 라는 용어는 위와 아래의 양방향을 포함할 수 있다. 뿐만 아니라, 장치는 그 외의 다른 방향일 수 있다 (예를 들어, 90도 회전된 혹은 다른 방향에서), 그리고, 여기에서 사용되는 그런 공간적으로 상대적인 용어들은 그에 따라 해석된다.Spatially relative terms such as "below", "above", etc. may be used for descriptive purposes, thereby describing the relationship of one element or feature to another element(s) or feature(s) as shown in the drawings. do. This is only used to indicate the relationship of one component to another component in the drawing, and does not mean an absolute position. For example, if the device shown in the figures is turned over, elements depicted as being "below" other elements or features are positioned "above" the other elements or features. Thus, in one embodiment, the term "below" may include both up and down. In addition, the device may be otherwise oriented (eg, rotated 90 degrees or in other orientations), and such spatially relative terms used herein are interpreted accordingly.

여기에서 사용된 용어는 특정한 실시예들을 설명하는 목적이고 제한하기 위한 목적이 아니다. 명세서 전체에서, 어떤 부분이 어떤 구성요소를 "포함"한다 고 할 때, 이는 특별히 반대되는 기재가 없는 한 다른 구성요소를 제외하는 것이 아니라 다른 구성요소를 더 포함할 수 있는 것을 의미한다. 다른 정의가 없는 한, 여기에 사용된 용어들은 본 발명이 속하는 분야에서 통상적인 지식을 가진 자에게 일반적으로 이해되는 것과 같은 의미를 갖는다.The terminology used herein is for the purpose of describing particular embodiments and not for the purpose of limitation. Throughout the specification, when a part "includes" a certain element, it means that other elements may be further included, rather than excluding other elements, unless otherwise stated. Unless otherwise defined, terms used herein have the same meaning as commonly understood by one of ordinary skill in the art to which this invention belongs.

도 1은 본 발명의 일 실시예에 따른 뉴럴 네트워크를 개략적으로 나타내는 회로도이다.1 is a circuit diagram schematically illustrating a neural network according to an embodiment of the present invention.

도 1을 참조하면, 본 발명의 일 실시예에 따른 뉴럴 네트워크(neural network)는 입력 뉴런(10), 출력 뉴런(20), 및 가중치 셀(30)을 포함한다. 시냅스(30) 소자는 입력 뉴런(10)으로부터 수평으로 연장하는 로우 라인(R)(row lines) 및 출력 뉴런(20)으로부터 수직으로 연장하는 컬럼 라인(C)(column lines)의 교차점에 배치될 수 있다. 설명의 편의를 위해 도 1에는 예시적으로 각각 네 개의 입력 뉴런(10) 및 출력 뉴런(20)이 도시되었으나, 본 발명은 이에 한정되지 않는다.Referring to FIG. 1 , a neural network according to an embodiment of the present invention includes an input neuron 10 , an output neuron 20 , and a weight cell 30 . The synapse 30 device is to be disposed at the intersection of a row line (R) extending horizontally from the input neuron 10 and a column line (C) extending vertically from the output neuron 20 can For convenience of explanation, four input neurons 10 and four output neurons 20 are illustrated in FIG. 1 , respectively, but the present invention is not limited thereto.

입력 뉴런(10)은 학습 모드(learning mode), 리셋 모드(reset mode), 보정 또는 읽기 모드(reading mode)에서 로우 라인(R)을 통하여 가중치 셀(30)로 전기적 펄스들(pulses)을 전송할 수 있다.The input neuron 10 transmits electrical pulses to the weight cell 30 through the row line R in a learning mode, a reset mode, a correction or a reading mode. can

출력 뉴런(20)은 학습 모드 또는 리셋 모드 또는 보정 또는 읽기 모드에서 컬럼 라인(C)을 통하여 가중치 셀(30)로부터 전기적 펄스를 수신할 수 있다.The output neuron 20 may receive an electrical pulse from the weight cell 30 through the column line C in the learning mode, the reset mode, or the correction or read mode.

도 2는 본 발명의 일 실시예에 따른 뉴럴 네트워크의 가중치 셀을 개략적으로 나타내는 회로도이다. 2 is a circuit diagram schematically illustrating a weight cell of a neural network according to an embodiment of the present invention.

본 발명의 실시예에 따른 가중치 비트폭을 탄력적으로 적용하기 위하여 가중치를 새롭게 정의한다. 현재까지는 컨덕턴스를 기초로 하는 가중치에서 I=GV(전류=컨덕턴스×전압)를 적용하여 G를 멀티레벨화 하였다. 이 때 Q=IΔt 관계를 추가하여 Q=GΔtV 관계를 적용한다면 가중치는 컨덕턴스 G와 전류가 흐르는 시간 Δt로 조절할 수 있기 때문에 멀티레벨화 할 수 있는 여지가 증가한다. 따라서 가중치는 GΔt로 정의한다.In order to flexibly apply the weight bit width according to the embodiment of the present invention, the weight is newly defined. Until now, G was multi-leveled by applying I = GV (current = conductance × voltage) in a weight based on conductance. At this time, if the Q=IΔt relationship is added and the Q=GΔtV relationship is applied, the weight can be adjusted by the conductance G and the current flowing time Δt, so the room for multileveling increases. Therefore, the weight is defined as GΔt.

도 2를 참조하면, 본 발명의 실시예에 따른 트랜지스터로 가중치를 조절할 수 있는 컨덕턴스 기반 순차 행렬 곱셈 뉴럴 네트워크는, 트랜지스터와 다이오드를 포함한다. 트랜지스터는 워드 라인(WL), 입력 라인(BL), 및 다이오드와 연결되고, 다이오드는 출력 라인 및 트랜지스터와 연결되며, 출력 라인은 선택 트랜지스터(ST)와 연결된다.Referring to FIG. 2 , a conductance-based sequential matrix multiplication neural network capable of adjusting a weight with a transistor according to an embodiment of the present invention includes a transistor and a diode. The transistor is connected to the word line WL, the input line BL, and the diode, the diode is connected to the output line and the transistor, and the output line is connected to the selection transistor ST.

본 발명의 일 실시예에 따르면, 워드 라인(WL)에 인가되는 전압은 펄스 전압일 수 있다. 실시예로서, 펄스 전압의 펄스 진폭을 제어하여 가중치를 조절할 수 있다. 다른 실시예로서, 펄스 전압의 펄스 폭을 제어하여 가중치를 조절할 수 있다.According to an embodiment of the present invention, the voltage applied to the word line WL may be a pulse voltage. As an embodiment, the weight may be adjusted by controlling the pulse amplitude of the pulse voltage. As another embodiment, the weight may be adjusted by controlling the pulse width of the pulse voltage.

실시예로서, 워드 라인(WL)과 출력 라인은 서로 직교하여 위치할 수 있다. 입력 라인은 입력과 연결되고, 선택 트랜지스터(ST)는 출력과 연결될 수 있다. 입력은 직류 전압이 인가되고, 출력은 전하 적분기와 연결될 수 있다.In an embodiment, the word line WL and the output line may be positioned to be orthogonal to each other. The input line may be connected to the input, and the selection transistor ST may be connected to the output. A DC voltage may be applied to the input, and the output may be connected to a charge integrator.

도 3 및 도 4는 본 발명의 일 실시예에 따른 뉴럴 네트워크의 가중치 셀의 작동 원리를 개략적으로 나타내는 회로도이다.3 and 4 are circuit diagrams schematically illustrating an operating principle of a weight cell of a neural network according to an embodiment of the present invention.

도 3을 참조하면, 본 발명의 실시예에 따른 트랜지스터로 가중치를 조절할 수 있는 컨덕턴스 기반 순차 행렬 곱셈 뉴럴 네트워크는, 제1 트랜지스터와 제1 다이오드를 포함하는 제1 가중치 셀 및 제2 트랜지스터와 제2 다이오드를 포함하는 제2 가중치 셀을 포함한다. 제1 트랜지스터는 제1 워드 라인, 제1 입력, 및 제1 다이오드와 연결되고, 제1 다이오드는 제1 트랜지스터 및 출력 라인과 연결된다. 제2 트랜지스터는 제2 워드 라인, 제2 입력, 및 제2 다이오드와 연결되고, 제2 다이오드는 제2 트랜지스터 및 출력 라인과 연결된다. 출력 라인은 제1 선택 트랜지스터와 연결된다. 실시예로서, 제1 워드 라인과 제2 워드 라인은 서로 평행하게 위치하고, 제1 워드 라인 및 제2 워드 라인과 출력 라인은 서로 직교하여 위치할 수 있다. 제1 선택 트랜지스터는 출력과 연결될 수 있고, 출력은 전하 적분기와 연결될 수 있다.Referring to FIG. 3 , a conductance-based sequential matrix multiplication neural network capable of adjusting weights with transistors according to an embodiment of the present invention includes a first weight cell including a first transistor and a first diode, a second transistor and a second and a second weight cell comprising a diode. The first transistor is coupled to the first word line, the first input, and the first diode, and the first diode is coupled to the first transistor and the output line. A second transistor is coupled to the second word line, the second input, and the second diode, and the second diode is coupled to the second transistor and the output line. The output line is connected to the first select transistor. As an embodiment, the first word line and the second word line may be positioned parallel to each other, and the first word line, the second word line, and the output line may be positioned perpendicular to each other. The first select transistor may be coupled to the output, and the output may be coupled to the charge integrator.

본 발명의 일 실시예에 따르면, 제1 워드 라인과 제2 워드 라인에 인가되는 전압은 서로 다른 펄스 전압일 수 있다. 실시예로서, 서로 다른 펄스 전압은 서로 다른 펄스 진폭을 가질 수 있다. 또한, 서로 다른 펄스 전압의 펄스 진폭을 제어하여 상기 출력 라인으로 출력되는 가중치를 조절할 수 있다. 다른 실시예로서, 서로 다른 펄스 전압은 서로 다른 펄스 폭을 가질 수 있다. 또한, 서로 다른 펄스 전압의 펄스 폭을 제어하여 상기 출력 라인으로 출력되는 가중치를 조절할 수 있다.According to an embodiment of the present invention, voltages applied to the first word line and the second word line may be different pulse voltages. As an embodiment, different pulse voltages may have different pulse amplitudes. In addition, the weight output to the output line may be adjusted by controlling the pulse amplitudes of different pulse voltages. As another embodiment, different pulse voltages may have different pulse widths. In addition, the weight output to the output line may be adjusted by controlling the pulse widths of different pulse voltages.

본 발명의 일 실시예에 따르면, 가중치 셀의 채널 컨덕턴스(혹은 트랜스 컨덕턴스)로 결정되는 전류가 펄스 폭으로 결정되는 일정 시간동안 흐르는 전하량을 출력값으로 한다. 실시예로서, 가중치 셀의 워드 라인에 인가되는 펄스는 펄스 진폭과 펄스 폭을 임의로 지정할 수 있는 전압 펄스이다. 실시예로서, 펄스 진폭은 트랜지스터의 트랜스 컨덕턴스를 멀티레벨화 할 수 있는 범위로 인가할 수 있다. 또한 펄스 폭은 주어진 채널 컨덕턴스(또는 트랜스 컨덕턴스)로 조건으로 전류가 흐를 때 전하 적분기능 소자에서 역전압이 발생하지 않는 한도까지 증가시킬 수 있다. 따라서 가중치 셀에 흐르는 최대 허용 전하량은 채널 컨덕턴스와 펄스 폭의 곱으로 결정된다. 따라서 이 최대 허용 전하량이 가중치 셀의 가중치 폭(weight bit-width)에 대응된다. According to an embodiment of the present invention, the amount of charge flowing for a predetermined time determined by the pulse width of the current determined by the channel conductance (or transconductance) of the weight cell is used as an output value. By way of example, the pulses applied to the word lines of the weight cells are voltage pulses of which the pulse amplitude and pulse width can be arbitrarily specified. As an embodiment, the pulse amplitude may be applied in a range capable of multi-leveling the transconductance of the transistor. In addition, the pulse width can be increased to the limit where reverse voltage does not occur in the charge integrator device when current flows with a given channel conductance (or transconductance) condition. Therefore, the maximum allowable charge flowing in the weight cell is determined by the product of the channel conductance and the pulse width. Accordingly, this maximum allowable charge corresponds to the weight bit-width of the weight cell.

도 3 및 도 4를 참조하면, 선택 트랜지스터에 의해 가중치 셀 열이 선택되고 트랜지스터의 비트 라인에는 입력 신호에 대응되는 입력 전압을 인가하고, 워드 라인에는 셀 별로 각각의 전압을 일정한 시간만큼 인가하되 열 별로 순차로 인가한다.3 and 4 , a column of weighted cells is selected by a selection transistor, an input voltage corresponding to an input signal is applied to a bit line of the transistor, and each voltage is applied to a word line for a predetermined time for each cell. Apply sequentially.

출력 라인과 출력 사이에는 선택 트랜지스터가 배치되어, 선택 트랜지스터의 게이트에 게이트 전압을 인가함으로써 임의의 열이 선택되고 이 열에 연결된 가중치를 통해 흘러 나오는 전하들의 합이 출력된다.A selection transistor is disposed between the output line and the output, an arbitrary column is selected by applying a gate voltage to the gate of the selection transistor, and the sum of charges flowing through a weight connected to the column is output.

본 발명의 실시예에 따른 뉴럴 네트워크의 각 가중치 셀에서 방출되는 전하량은 Q=GΔtV가 된다. 이 관계에서 가중치에 해당하는 GΔt와 전압 V와의 곱셈이 가능해진다. G는 워드라인에 인가되는 게이트 전압에 의해 결정되는 트랜지스터의 채널 컨덕턴스 혹은 트랜스 컨턱턴스로서, 이 컨턱턴스가 선형으로 멀티레벨이 되는 범위로 게이트 전압을 인가한다. 선형 채널 컨덕턴스에서 최저 채널 컨덕턴스가 접지(ground) 컨덕턴스 GO가 된다. 펄스 폭 Δt는 선형으로 증가하도록 기본 단위 펄스 폭 ΔtO을 정한다. 따라서 GO 및 ΔtO를 기준으로 가중치 폭(weight bit-width) 및 가중치 해상도(bit-resolution)를 조절할 수 있다.The amount of charge emitted from each weight cell of the neural network according to the embodiment of the present invention is Q=GΔtV. In this relationship, multiplication of GΔt corresponding to weight and voltage V becomes possible. G is the channel conductance or transconductance of the transistor determined by the gate voltage applied to the word line, and the gate voltage is applied in a range in which the conductance becomes multi-level linearly. In the linear channel conductance, the lowest channel conductance becomes the ground conductance GO. The pulse width Δt determines the basic unit pulse width ΔtO to increase linearly. Accordingly, weight bit-width and bit-resolution can be adjusted based on GO and ΔtO.

실시예로서, 각 펄스 폭의 시간차, 각 가중치의 컨덕턴스의 차이, 입력 전압의 차이에 의해 임의의 가중치에서 출력되는 전하가 같은 열의 다른 쪽 가중치 셀을 통해 역류하는 것을 막기 위하여 출력 라인과 각 가중치 셀의 트랜지스터 사이에 다이오드를 배치할 수 있다. As an embodiment, in order to prevent the charge output from an arbitrary weight from flowing backward through the other weight cell in the same column due to the time difference of each pulse width, the difference in conductance of each weight, and the difference in input voltage, the output line and each weight cell A diode can be placed between the transistors of

실시예로서, 각각의 가중치 셀들의 가중치를 랜덤하게 조정하기 위하여 선택 트랜지스터로 열 한 개씩 선택하여 곱셈을 수행할 수 있다. 다른 실시예로서 열 한 개씩 선택하되 첫번째 열부터 마지막 열까지 순서대로 선택하거나 임의의 열을 임의의 순서로 선택할 수 있다. 또 다른 실시예로서, 가중치 셀 어레이에서 순차 곱셈을 실시할 때마다 각 열은 한 번씩 선택할 수 있다.As an embodiment, in order to randomly adjust the weight of each weight cell, multiplication may be performed by selecting each column by a selection transistor. As another embodiment, each column may be selected in order from the first column to the last column, or any column may be selected in any order. As another embodiment, each column may be selected once whenever sequential multiplication is performed on the weight cell array.

각 열의 출력들은 출력 라인 하나로 연결하여 출력 전하들을 모으는 전하 적분기에 연결된다.The outputs of each column are connected to a charge integrator that collects the output charges by connecting one output line.

도 5는 본 발명의 일 실시예에 따른 뉴럴 네트워크의 가중치 셀 어레이와 어레이에 연결된 워드 라인들, 비트 라인들, 선택 트랜지스터들 및 각각의 입력, 출력을 설명하기 위한 회로도이다.5 is a circuit diagram illustrating a weight cell array of a neural network, word lines, bit lines, and selection transistors connected to the array, and respective inputs and outputs according to an embodiment of the present invention.

도 5를 참조하면, 본 발명의 실시예에 따른 트랜지스터로 가중치를 조절할 수 있는 컨덕턴스 기반 순차 행렬 곱셈 뉴럴 네트워크는, 제1 가중치 셀, 제2 가중치 셀, 제3 가중치 셀, 제4 가중치 셀을 포함한다. 제1 가중치 셀은 제1 워드 라인, 제1 입력, 및 다이오드와 연결되는 제1 트랜지스터, 및 제1 출력 라인과 연결되는 다이오드를 포함한다. 제2 가중치 셀은 제2 워드 라인, 제2 입력, 및 다이오드와 연결되는 제2 트랜지스터, 및 제1 출력 라인과 연결되는 다이오드를 포함한다. 제3 가중치 셀은 제1 워드 라인, 제1 입력, 및 다이오드와 연결되는 제3 트랜지스터, 및 제2 출력 라인과 연결되는 다이오드를 포함한다. 제4 가중치 셀은 제2 워드 라인, 제2 입력, 및 다이오드와 연결되는 제4 트랜지스터, 및 제2 출력 라인과 연결되는 다이오드를 포함한다. 제1 출력 라인은 제1 선택 트랜지스터와 연결되고, 제2 출력 라인은 제2 선택 트랜지스터와 연결된다.Referring to FIG. 5 , a conductance-based sequential matrix multiplication neural network capable of adjusting weights with a transistor according to an embodiment of the present invention includes a first weight cell, a second weight cell, a third weight cell, and a fourth weight cell do. The first weight cell includes a first transistor coupled with a first word line, a first input, and a diode, and a diode coupled with a first output line. The second weight cell includes a second transistor coupled to a second word line, a second input, and a diode, and a diode coupled to the first output line. The third weight cell includes a third transistor coupled to the first word line, the first input, and the diode, and the diode coupled to the second output line. The fourth weight cell includes a second word line, a second input, and a fourth transistor coupled to the diode, and a diode coupled to the second output line. The first output line is connected to the first select transistor, and the second output line is connected to the second select transistor.

본 발명의 일 실시예에 따르면, 제1 워드 라인과 제2 워드 라인에 인가되는 전압은 서로 다른 펄스 전압일 수 있다. 서로 다른 펄스 전압은 서로 다른 펄스 진폭 또는 서로 다른 펄스 폭을 가질 수 있다. 서로 다른 펄스 전압의 펄스 진폭 또는 펄스 폭을 제어하여 가중치를 조절할 수 있다. 실시예로서, 제1 선택 트랜지스터와 제2 선택 트랜지스터에 선택적으로 게이트 전압을 인가하여 제1 출력 라인 및 제2 출력 라인으로 출력되는 가중치 셀의 가중치를 선택적으로 조절할 수 있다. 다른 실시예로서, 제1 선택 트랜지스터와 제2 선택 트랜지스터에 순차로 게이트 전압을 인가하여 제1 출력 라인 및 제2 출력 라인으로 출력되는 가중치 셀의 가중치를 순차로 조절할 수 있다.According to an embodiment of the present invention, voltages applied to the first word line and the second word line may be different pulse voltages. Different pulse voltages may have different pulse amplitudes or different pulse widths. The weights can be adjusted by controlling the pulse amplitudes or pulse widths of different pulse voltages. In an embodiment, a weight of a weight cell output to the first output line and the second output line may be selectively adjusted by selectively applying a gate voltage to the first selection transistor and the second selection transistor. As another embodiment, the weights of the weight cells output to the first output line and the second output line may be sequentially adjusted by sequentially applying a gate voltage to the first selection transistor and the second selection transistor.

본 발명의 일 실시예에 따르면, 출력 라인과 전하 적분기 사이에는 선택 트랜지스터(ST)가 배치된다. 실시예로서, 선택 트랜지스터의 게이트에 게이트 전압을 인가함으로써 뉴럴 네트워크의 가중치 셀들의 열이 선택된다.According to an embodiment of the present invention, a selection transistor ST is disposed between the output line and the charge integrator. As an embodiment, a column of weight cells of the neural network is selected by applying a gate voltage to the gate of the select transistor.

도 6 및 도 7은 본 발명의 실시예에 따른 뉴럴 네트워크의 순차 행렬 곱셈 동작을 설명하기 위한 회로도이다.6 and 7 are circuit diagrams for explaining a sequential matrix multiplication operation of a neural network according to an embodiment of the present invention.

도 6은 본 발명의 실시예에 따른 뉴럴 네트워크의 제1 열에 대해, 제1 선택 트랜지스터의 게이트에 전압을 인가하고 제1 열에 각각의, 그리고 임의의 펄스 진폭과 펄스 폭을 가지는 펄스 전압을 각각의 가중치 셀들의 게이트에 인가하는 회로도이다.6 shows, for a first column of a neural network according to an embodiment of the present invention, applying a voltage to the gate of the first selection transistor and applying a voltage to the first column, respectively, and pulse voltages having arbitrary pulse amplitudes and pulse widths, respectively; It is a circuit diagram applied to the gates of weight cells.

도 7은 본 발명의 실시예에 따른 뉴럴네트워크의 마지막 열에 대해 마지막 선택 트랜지스터의 게이트에 제 1선택 트랜지스터의 게이트 전압과 동일한 전압을 인가하고 마지막 열에 각각의, 그리고 임의의 펄스 진폭과 펄스 폭을 가지는 펄스 전압을 각각의 가중치 셀들의 게이트에 인가하는 회로도이다. 7 shows that for the last column of a neural network according to an embodiment of the present invention, a voltage equal to the gate voltage of the first selection transistor is applied to the gate of the last selection transistor, and each and arbitrary pulse amplitudes and pulse widths are applied to the last column. It is a circuit diagram for applying a pulse voltage to the gates of each weight cell.

도 5, 도 6, 및 도 7을 참조하면, 본 발명의 실시예에 따른 뉴럴 네트워크는 가중치 셀을 어레이(array)로 구성하고 이를 네트워크 레이어(network layer)로 제작한 다음 가중치 셀 어레이의 열 별로 순차로 작동시키는 동시에 출력 값을 다음 은닉층의 입력 정보로 사용하는 리커런트(recurrent) 혹은 이터레이션(iteration) 방식을 적용한다.5, 6, and 7, in the neural network according to an embodiment of the present invention, weight cells are configured as an array, the weight cells are manufactured as a network layer, and then each column of the weight cell array is configured. A recurrent or iteration method is applied, which operates sequentially and uses the output value as input information for the next hidden layer.

도 6 및 도 7을 참조하면, 본 발명의 실시예에 따른 뉴럴 네트워크의 특정 열의 각 가중치 셀에 게이트 전압을 인가하는 시간은, 각 열의 가중치 셀 별로 연결된 워드 라인에 인가하는 게이트 펄스 폭으로 조절한다. 실시예로서, 행렬 곱셈은 열 별로 워드 라인에 임의의 전압을 인가하여 열 별로 순차적으로 수행하고, 각 은닉층별 가중치 정보와 입력 정보는 뉴럴 네트워크 외부의 저장 매체에 저장할 수 있다. 외부의 저장 매체에는 레이어별 가중치 정보와 입력 정보를 저장하여 추론(inference)시 순환 컴퓨팅(computing)에 사용한다.6 and 7, the time for applying the gate voltage to each weight cell in a specific column of the neural network according to an embodiment of the present invention is adjusted by the width of the gate pulse applied to the word line connected to each weight cell in each column. . As an embodiment, matrix multiplication may be sequentially performed for each column by applying an arbitrary voltage to the word line for each column, and weight information and input information for each hidden layer may be stored in a storage medium external to the neural network. Weight information and input information for each layer are stored in an external storage medium and used for cyclic computing during inference.

도 6 및 도 7을 참조하면, i개의 열 중, 첫번째열과 마지막 열을 순차로 선택한 실시예를 확인할 수 있으나 본 발명은 이에 한정되지 않고 여러 열을 순위 없이 한번씩만 선택하여 매트릭스 곱을 수행할 수 있다. Referring to FIGS. 6 and 7 , an embodiment in which the first column and the last column are sequentially selected among i columns can be seen, but the present invention is not limited thereto, and matrix multiplication can be performed by selecting several columns only once without ranking. .

전술한 바와 같은 본 발명의 실시예들에 따르면, 본 발명의 실시예에 따른 트랜지스터로 가중치를 조절할 수 있는 컨덕턴스 기반 순차 행렬 곱셈 뉴럴 네트워크는, 가중치를 탄력적으로 조절할 수 있으며, 회로 부하를 줄일 수 있고 행렬 곱셈 유닛 칩 크기(matrix multiplication unit chip size)도 최소화할 수 있다.According to the embodiments of the present invention as described above, the conductance-based sequential matrix multiplication neural network capable of adjusting the weights with the transistor according to the embodiment of the present invention can adjust the weights flexibly and reduce the circuit load, A matrix multiplication unit chip size can also be minimized.

이상과 같이 본 발명에서는 구체적인 구성 요소 등과 같은 특정 사항들과 한정된 실시예 및 도면에 의해 설명되었으나 이는 본 발명의 보다 전반적인 이해를 돕기 위해서 제공된 것일 뿐, 본 발명은 상기의 실시예에 한정되는 것은 아니며, 본 발명이 속하는 분야에서 통상적인 지식을 가진 자라면 이러한 기재로부터 다양한 수정 및 변형이 가능하다.As described above, the present invention has been described with specific matters such as specific components and limited embodiments and drawings, but these are only provided to help a more general understanding of the present invention, and the present invention is not limited to the above embodiments. , various modifications and variations are possible from these descriptions by those of ordinary skill in the art to which the present invention pertains.

따라서, 본 발명의 사상은 설명된 실시예에 국한되어 정해져서는 아니되며, 후술하는 특허청구범위뿐 아니라 이 특허청구범위와 균등하거나 등가적 변형이 있는 모든 것들은 본 발명 사상의 범주에 속한다고 할 것이다.Therefore, the spirit of the present invention should not be limited to the described embodiments, and not only the claims described below, but also all those with equivalent or equivalent modifications to the claims will be said to belong to the scope of the spirit of the present invention. .

10: 입력 뉴런 20: 출력 뉴런
30: 가중치 셀
10: input neuron 20: output neuron
30: weight cell

Claims (20)

워드 라인이 게이트와 연결되고, 입력 라인이 드레인 및 소스 중 어느 하나와 연결되고, 다이오드와 상기 드레인 및 상기 소스 중 나머지 하나가 연결되는 트랜지스터; 및
출력 라인이 캐소드와 연결되고, 상기 트랜지스터와 애노드가 연결되는 다이오드를 포함하고,
상기 출력 라인은 선택 트랜지스터의 드레인 및 소스 중 어느 하나와 연결되는 트랜지스터로 가중치를 조절할 수 있는 컨덕턴스 기반 뉴럴 네트워크.
a transistor having a word line connected to a gate, an input line connected to any one of a drain and a source, and a diode connected to the other one of the drain and the source; and
The output line is connected to the cathode and includes a diode to which the transistor and the anode are connected,
The output line is a transistor connected to any one of a drain and a source of a selection transistor, and a conductance-based neural network whose weight can be adjusted.
제 1항에 있어서,
상기 워드 라인에 인가되는 전압은 펄스 전압인 트랜지스터로 가중치를 조절할 수 있는 컨덕턴스 기반 뉴럴 네트워크.
The method of claim 1,
A conductance-based neural network in which the voltage applied to the word line is a pulse voltage and the weight of the transistor can be adjusted.
제 2항에 있어서,
상기 펄스 전압의 펄스 진폭을 제어하여 가중치를 조절하는 트랜지스터로 가중치를 조절할 수 있는 컨덕턴스 기반 뉴럴 네트워크.
3. The method of claim 2,
A conductance-based neural network capable of adjusting a weight by a transistor that adjusts the weight by controlling the pulse amplitude of the pulse voltage.
제 2항에 있어서,
상기 펄스 전압의 펄스 폭을 제어하여 가중치를 조절하는 트랜지스터로 가중치를 조절할 수 있는 컨덕턴스 기반 뉴럴 네트워크.
3. The method of claim 2,
A conductance-based neural network capable of adjusting a weight by a transistor that adjusts the weight by controlling the pulse width of the pulse voltage.
제 1항에 있어서,
상기 워드 라인과 상기 출력 라인은 서로 직교하여 위치하는 트랜지스터로 가중치를 조절할 수 있는 컨덕턴스 기반 뉴럴 네트워크.
The method of claim 1,
A conductance-based neural network in which the word line and the output line are configured to be weighted by transistors positioned to be orthogonal to each other.
제 1항에 있어서,
상기 입력 라인은 입력과 연결되고, 상기 선택 트랜지스터는 출력과 연결되는 트랜지스터로 가중치를 조절할 수 있는 컨덕턴스 기반 뉴럴 네트워크.
The method of claim 1,
The input line is connected to the input, and the selection transistor is a transistor connected to the output, and the weight of the transistor can be adjusted.
제 6항에 있어서,
상기 입력은 직류 전압이 인가되고, 상기 출력은 전하 적분기와 연결되는 트랜지스터로 가중치를 조절할 수 있는 컨덕턴스 기반 뉴럴 네트워크.
7. The method of claim 6,
A conductance-based neural network in which a direct current voltage is applied to the input, and the output is a transistor connected to a charge integrator, and weight can be adjusted.
제1 워드 라인이 게이트와 연결되고, 제1 입력이 드레인 및 소스 중 어느 하나와 연결되고, 제1 다이오드와 상기 드레인 및 상기 소스 중 나머지 하나가 연결되는 제1 트랜지스터, 상기 제1 트랜지스터가 애노드와 연결되고, 출력 라인이 캐소드와 연결되는 상기 제1 다이오드를 포함하는 제1 가중치 셀; 및
제2 워드 라인이 게이트와 연결되고, 제2 입력이 제2 트랜지스터의 드레인 및 소스 중 어느 하나와 연결되고, 제2 다이오드와 제2 트랜지스터의 상기 드레인 및 상기 소스 중 나머지 하나가 연결되는 제2 트랜지스터, 상기 제2 트랜지스터가 애노드와 연결되고, 출력 라인이 캐소드와 연결되는 상기 제2 다이오드를 포함하는 제2 가중치 셀을 포함하고,
상기 출력 라인은 제1 선택 트랜지스터의 드레인 및 소스 중 어느 하나와 연결되는 트랜지스터로 가중치를 조절할 수 있는 컨덕턴스 기반 뉴럴 네트워크.
a first transistor having a first word line connected to a gate, a first input connected to any one of a drain and a source, and a first diode connected to the other one of the drain and the source, the first transistor having an anode and an anode a first weight cell coupled and including the first diode having an output line coupled to a cathode; and
A second transistor having a second word line connected to a gate, a second input connected to one of a drain and a source of a second transistor, and a second diode connected to the other one of the drain and the source of the second transistor , a second weight cell comprising the second diode, wherein the second transistor is connected to the anode and the output line is connected to the cathode;
The output line is a transistor connected to any one of a drain and a source of the first selection transistor, and a weight of a conductance-based neural network can be adjusted.
제 8항에 있어서,
상기 제1 워드 라인과 상기 제2 워드 라인에 인가되는 전압은 서로 다른 펄스 전압인 트랜지스터로 가중치를 조절할 수 있는 컨덕턴스 기반 뉴럴 네트워크.
9. The method of claim 8,
Voltages applied to the first word line and the second word line are pulse voltages different from each other, and a weight of a transistor may be used to adjust a weight.
제 9항에 있어서,
상기 서로 다른 펄스 전압은 서로 다른 펄스 진폭을 가지는 트랜지스터로 가중치를 조절할 수 있는 컨덕턴스 기반 뉴럴 네트워크.
10. The method of claim 9,
A conductance-based neural network in which the different pulse voltages are weighted by transistors having different pulse amplitudes.
제 9항에 있어서,
상기 서로 다른 펄스 전압의 펄스 진폭을 제어하여 상기 출력 라인으로 출력되는 가중치를 조절하는 트랜지스터로 가중치를 조절할 수 있는 컨덕턴스 기반 뉴럴 네트워크.
10. The method of claim 9,
A conductance-based neural network capable of adjusting a weight by a transistor that adjusts the weight output to the output line by controlling the pulse amplitudes of the different pulse voltages.
제 9항에 있어서,
상기 서로 다른 펄스 전압은 서로 다른 펄스 폭을 가지는 트랜지스터로 가중치를 조절할 수 있는 컨덕턴스 기반 뉴럴 네트워크.
10. The method of claim 9,
A conductance-based neural network in which the different pulse voltages are weighted by transistors having different pulse widths.
제 9항에 있어서,
상기 서로 다른 펄스 전압의 펄스 폭을 제어하여 상기 출력 라인으로 출력되는 가중치를 조절하는 트랜지스터로 가중치를 조절할 수 있는 컨덕턴스 기반 뉴럴 네트워크.
10. The method of claim 9,
A conductance-based neural network capable of adjusting a weight by a transistor that adjusts the weight output to the output line by controlling the pulse widths of the different pulse voltages.
제 8항에 있어서,
상기 제1 워드 라인과 상기 제2 워드 라인은 서로 평행하게 위치하고, 상기 제1 워드 라인 및 상기 제2 워드 라인과 상기 출력 라인은 서로 직교하여 위치하는 트랜지스터로 가중치를 조절할 수 있는 컨덕턴스 기반 뉴럴 네트워크.
9. The method of claim 8,
The first word line and the second word line are positioned parallel to each other, and the first word line, the second word line, and the output line are positioned orthogonally to each other.
제1 워드 라인이 게이트와 연결되고, 제1 입력이 드레인 및 소스 중 어느 하나와 연결되고, 다이오드와 드레인 및 소스 중 나머지 하나가 연결되는 제1 트랜지스터, 상기 제1 트랜지스터가 애노드와 연결되고, 제1 출력 라인이 캐소드와 연결되는 상기 다이오드를 포함하는 제1 가중치 셀;
제2 워드 라인이 게이트와 연결되고, 제2 입력이 제2 트랜지스터의 드레인 및 소스 중 어느 하나와 연결되고, 다이오드와 제2 트랜지스터의 상기 드레인 및 상기 소스 중 나머지 하나가 연결되는 제2 트랜지스터, 상기 제2 트랜지스터가 애노드와 연결되고, 제1 출력 라인이 캐소드와 연결되는 상기 다이오드를 포함하는 제2 가중치 셀;
제1 워드 라인이 게이트와 연결되고, 제1 입력이 제3 트랜지스터의 드레인 및 소스 중 어느 하나와 연결되고, 다이오드와 제3 트랜지스터의 상기 드레인 및 상기 소스 중 나머지 하나가 연결되는 제3 트랜지스터, 상기 제3 트랜지스터가 애노드와 연결되고, 제2 출력 라인이 캐소드와 연결되는 상기 다이오드를 포함하는 제3 가중치 셀; 및
제2 워드 라인이 게이트와 연결되고, 제2 입력이 제4 트랜지스터의 드레인 및 소스 중 어느 하나와 연결되고, 다이오드와 제4 트랜지스터의 상기 드레인 및 상기 소스 중 나머지 하나가 연결되는 제4 트랜지스터, 상기 제4 트랜지스터가 애노드와 연결되고, 제2 출력 라인이 캐소드와 연결되는 상기 다이오드를 포함하는 제4 가중치 셀을 포함하고,
상기 제1 출력 라인은 제1 선택 트랜지스터의 드레인 및 소스 중 어느 하나와 연결되고, 상기 제2 출력 라인은 제2 선택 트랜지스터의 드레인 및 소스 중 어느 하나와 연결되는 트랜지스터로 가중치를 조절할 수 있는 컨덕턴스 기반 뉴럴 네트워크.
a first transistor having a first word line connected to a gate, a first input connected to any one of a drain and a source, and a diode connected to the other one of a drain and a source, the first transistor being connected to an anode, a first weight cell comprising the diode having one output line coupled to a cathode;
a second transistor having a second word line connected to a gate, a second input connected to any one of a drain and a source of a second transistor, and a diode connected to a diode and the other one of the drain and the source of the second transistor; a second weight cell comprising the diode having a second transistor coupled to the anode and a first output line coupled to the cathode;
a third transistor having a first word line connected to a gate, a first input connected to any one of a drain and a source of a third transistor, and a diode connected to a diode and the other one of the drain and the source of the third transistor; a third weight cell comprising the diode having a third transistor coupled to the anode and a second output line coupled to the cathode; and
a fourth transistor having a second word line connected to a gate, a second input connected to any one of a drain and a source of a fourth transistor, and a diode connected to a diode and the other one of the drain and the source of the fourth transistor; a fourth weight cell comprising the diode having a fourth transistor coupled to the anode and a second output line coupled to the cathode;
The first output line is connected to any one of a drain and a source of a first selection transistor, and the second output line is a transistor connected to any one of a drain and a source of the second selection transistor. A conductance-based transistor whose weight can be adjusted. neural network.
제 15항에 있어서,
상기 제1 워드 라인과 상기 제2 워드 라인에 인가되는 전압은 서로 다른 펄스 전압인 트랜지스터로 가중치를 조절할 수 있는 컨덕턴스 기반 뉴럴 네트워크.
16. The method of claim 15,
Voltages applied to the first word line and the second word line are pulse voltages different from each other, and a weight of a transistor may be used to adjust a weight.
제 16항에 있어서,
상기 서로 다른 펄스 전압은 서로 다른 펄스 진폭 또는 서로 다른 펄스 폭을 가지는 트랜지스터로 가중치를 조절할 수 있는 컨덕턴스 기반 뉴럴 네트워크.
17. The method of claim 16,
A conductance-based neural network in which the different pulse voltages are weighted by transistors having different pulse amplitudes or different pulse widths.
제 16항에 있어서,
상기 서로 다른 펄스 전압의 펄스 진폭 또는 펄스 폭을 제어하여 가중치를 조절하는 트랜지스터로 가중치를 조절할 수 있는 컨덕턴스 기반 뉴럴 네트워크.
17. The method of claim 16,
A conductance-based neural network capable of adjusting a weight by a transistor that adjusts the weight by controlling the pulse amplitude or pulse width of the different pulse voltages.
제 15항에 있어서,
상기 제1 선택 트랜지스터와 상기 제2 선택 트랜지스터에 선택적으로 게이트 전압을 인가하여 상기 제1 출력 라인 및 상기 제2 출력 라인으로 출력되는 가중치 셀의 가중치를 선택적으로 조절하는 트랜지스터로 가중치를 조절할 수 있는 컨덕턴스 기반 뉴럴 네트워크.
16. The method of claim 15,
A transistor that selectively adjusts weights of weight cells output to the first output line and the second output line by selectively applying a gate voltage to the first selection transistor and the second selection transistor. A conductance capable of controlling a weight. based neural networks.
제 15항에 있어서,
상기 제1 선택 트랜지스터와 상기 제2 선택 트랜지스터에 순차로 게이트 전압을 인가하여 상기 제1 출력 라인 및 상기 제2 출력 라인으로 출력되는 가중치 셀의 가중치를 순차로 조절하는 트랜지스터로 가중치를 조절할 수 있는 컨덕턴스 기반 뉴럴 네트워크.
16. The method of claim 15,
A transistor that sequentially adjusts weights of weight cells output to the first output line and the second output line by sequentially applying a gate voltage to the first selection transistor and the second selection transistor. based neural networks.
KR1020200003241A 2020-01-09 2020-01-09 Conductance-based sequential matrix multiplication neural network by controlling weights with transistors KR102427975B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020200003241A KR102427975B1 (en) 2020-01-09 2020-01-09 Conductance-based sequential matrix multiplication neural network by controlling weights with transistors

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020200003241A KR102427975B1 (en) 2020-01-09 2020-01-09 Conductance-based sequential matrix multiplication neural network by controlling weights with transistors

Publications (2)

Publication Number Publication Date
KR20210089988A KR20210089988A (en) 2021-07-19
KR102427975B1 true KR102427975B1 (en) 2022-08-01

Family

ID=77126073

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020200003241A KR102427975B1 (en) 2020-01-09 2020-01-09 Conductance-based sequential matrix multiplication neural network by controlling weights with transistors

Country Status (1)

Country Link
KR (1) KR102427975B1 (en)

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20120284217A1 (en) 2009-11-18 2012-11-08 International Business Machines Corporation Area efficient neuromorphic system
US20190034788A1 (en) 2017-07-26 2019-01-31 International Business Machines Corporation System and method for constructing synaptic weights for artificial neural networks from signed analog conductance-pairs of varying significance

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102461251B1 (en) * 2015-09-18 2022-11-01 삼성전자주식회사 Weighting device, neural network, and operating method of the weighting device

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20120284217A1 (en) 2009-11-18 2012-11-08 International Business Machines Corporation Area efficient neuromorphic system
US20190034788A1 (en) 2017-07-26 2019-01-31 International Business Machines Corporation System and method for constructing synaptic weights for artificial neural networks from signed analog conductance-pairs of varying significance

Also Published As

Publication number Publication date
KR20210089988A (en) 2021-07-19

Similar Documents

Publication Publication Date Title
US10534840B1 (en) Multiplication using non-volatile memory cells
US10552510B2 (en) Vector-by-matrix multiplier modules based on non-volatile 2D and 3D memory arrays
US10528643B1 (en) Vector-matrix multiplication using non-volatile memory cells
US11694744B2 (en) Mixed digital-analog memory devices and circuits for secure storage and computing
CN111722830A (en) Non-volatile calculation method of flash memory
TWI699711B (en) Memory devices and manufacturing method thereof
KR102218740B1 (en) Transposable synaptic weight cell and array thereof
US11301752B2 (en) Memory configuration for implementing a neural network
US11056185B2 (en) Apparatus for deep learning operations on resistive crossbar array
US20210117500A1 (en) Methods to tolerate programming and retention errors of crossbar memory arrays
US20210303982A1 (en) Neural network computing device including on-device quantizer, operating method of neural network computing device, and computing device including neural network computing device
KR102427975B1 (en) Conductance-based sequential matrix multiplication neural network by controlling weights with transistors
KR102448396B1 (en) Capacitance-based neural network with flexible weight bit-width
KR102503403B1 (en) Pseudo vector matrix multiplication neural network by controlling weights with conductance and puse width
TWI809663B (en) Precise data tuning method and apparatus for analog neural memory in an artificial neural network
KR102351376B1 (en) Weight cell with flexible weight bit-width
CN114861900A (en) Weight updating method for memristor array and processing unit
KR102365470B1 (en) Capacitance-based sequential matrix multiplication neural network by controlling weights with transistor-capacitor pair
US20240046080A1 (en) Vertical nand flash type semiconductor device and method of operating the same
US20230317124A1 (en) Memory system and operating method of memory system
KR102365468B1 (en) Capacitance-based matrix multiplication neural network by controlling input with pulse counts and weights with voltage
KR102511526B1 (en) Hardware-based artificial neural network device
CN114121089B (en) Memristor array-based data processing method and device
US20240028211A1 (en) Memory device for computing in-memory
Bengel et al. Devices and Architectures for Efficient Computing In-Memory (CIM) Design

Legal Events

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