KR20200000686A - 웨이트 행렬 입력 회로 및 웨이트 행렬 회로 - Google Patents

웨이트 행렬 입력 회로 및 웨이트 행렬 회로 Download PDF

Info

Publication number
KR20200000686A
KR20200000686A KR1020180072808A KR20180072808A KR20200000686A KR 20200000686 A KR20200000686 A KR 20200000686A KR 1020180072808 A KR1020180072808 A KR 1020180072808A KR 20180072808 A KR20180072808 A KR 20180072808A KR 20200000686 A KR20200000686 A KR 20200000686A
Authority
KR
South Korea
Prior art keywords
circuit
weight matrix
input
output
electrode
Prior art date
Application number
KR1020180072808A
Other languages
English (en)
Other versions
KR102105936B1 (ko
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 KR1020180072808A priority Critical patent/KR102105936B1/ko
Priority to US16/450,968 priority patent/US11216728B2/en
Publication of KR20200000686A publication Critical patent/KR20200000686A/ko
Application granted granted Critical
Publication of KR102105936B1 publication Critical patent/KR102105936B1/ko

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/08Learning methods
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C11/00Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor
    • G11C11/54Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using elements simulating biological cells, e.g. neuron
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C13/00Digital stores characterised by the use of storage elements not covered by groups G11C11/00, G11C23/00, or G11C25/00
    • G11C13/0002Digital stores characterised by the use of storage elements not covered by groups G11C11/00, G11C23/00, or G11C25/00 using resistive RAM [RRAM] elements
    • G11C13/0021Auxiliary circuits
    • G11C13/0069Writing or programming circuits or methods
    • 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
    • G06N3/065Analogue means
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C13/00Digital stores characterised by the use of storage elements not covered by groups G11C11/00, G11C23/00, or G11C25/00
    • G11C13/0002Digital stores characterised by the use of storage elements not covered by groups G11C11/00, G11C23/00, or G11C25/00 using resistive RAM [RRAM] elements
    • G11C13/0021Auxiliary circuits
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C13/00Digital stores characterised by the use of storage elements not covered by groups G11C11/00, G11C23/00, or G11C25/00
    • G11C13/0002Digital stores characterised by the use of storage elements not covered by groups G11C11/00, G11C23/00, or G11C25/00 using resistive RAM [RRAM] elements
    • G11C13/0021Auxiliary circuits
    • G11C13/0023Address circuits or decoders
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C7/00Arrangements for writing information into, or reading information out from, a digital store
    • G11C7/10Input/output [I/O] data interface arrangements, e.g. I/O data control circuits, I/O data buffers
    • G11C7/1006Data managing, e.g. manipulating data before writing or reading out, data bus switches or control circuits therefor
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/045Combinations of networks
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C11/00Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor
    • G11C11/02Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using magnetic elements
    • G11C11/16Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using magnetic elements using elements in which the storage effect is based on magnetic spin effect
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C11/00Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor
    • G11C11/02Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using magnetic elements
    • G11C11/16Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using magnetic elements using elements in which the storage effect is based on magnetic spin effect
    • G11C11/165Auxiliary circuits
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C11/00Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor
    • G11C11/21Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements
    • G11C11/22Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using ferroelectric elements
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C11/00Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor
    • G11C11/21Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements
    • G11C11/22Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using ferroelectric elements
    • G11C11/225Auxiliary circuits
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C13/00Digital stores characterised by the use of storage elements not covered by groups G11C11/00, G11C23/00, or G11C25/00
    • G11C13/0002Digital stores characterised by the use of storage elements not covered by groups G11C11/00, G11C23/00, or G11C25/00 using resistive RAM [RRAM] elements
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C13/00Digital stores characterised by the use of storage elements not covered by groups G11C11/00, G11C23/00, or G11C25/00
    • G11C13/0002Digital stores characterised by the use of storage elements not covered by groups G11C11/00, G11C23/00, or G11C25/00 using resistive RAM [RRAM] elements
    • G11C13/0004Digital stores characterised by the use of storage elements not covered by groups G11C11/00, G11C23/00, or G11C25/00 using resistive RAM [RRAM] elements comprising amorphous/crystalline phase transition cells
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C2213/00Indexing scheme relating to G11C13/00 for features not covered by this group
    • G11C2213/10Resistive cells; Technology aspects
    • G11C2213/15Current-voltage curve

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Health & Medical Sciences (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Biomedical Technology (AREA)
  • Molecular Biology (AREA)
  • General Health & Medical Sciences (AREA)
  • Biophysics (AREA)
  • General Physics & Mathematics (AREA)
  • Mathematical Physics (AREA)
  • Data Mining & Analysis (AREA)
  • Computational Linguistics (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Artificial Intelligence (AREA)
  • Evolutionary Computation (AREA)
  • Software Systems (AREA)
  • Neurology (AREA)
  • Chemical & Material Sciences (AREA)
  • Crystallography & Structural Chemistry (AREA)
  • Computer Hardware Design (AREA)
  • Semiconductor Memories (AREA)
  • Mram Or Spin Memory Techniques (AREA)

Abstract

본 실시예에 의한 웨이트 행렬 회로는 n 개의 입력 라인과, m 개의 출력 라인과, n 개의 입력 라인과 m 개의 출력 라인에 각각 연결되며 각각이 비선형 전류 대 전압 특성을 가지는 n*m 개의 저항성 메모리 소자를 포함하는 메모리 어레이와, 각각의 입력 라인과 연결된 입력 회로 및 각각의 출력 라인과 연결된 출력 회로를 포함하는 웨이트 행렬 회로(weight matrix circuit)로, 입력 회로는 저항성 메모리 소자와 연결되어 웨이트 행렬 회로는 선형 전류 대 전압 특성을 가진다.

Description

웨이트 행렬 입력 회로 및 웨이트 행렬 회로{WEIGHT MATRIX INPUT CIRCUIT AND WEIGHT MATRIX CIRCUIT}
본 기술은 웨이트 행렬 입력 회로 및 웨이트 행렬 회로에 관련된 것이다.
기존의 폰 노이만 구조를 기반으로 하는 칩들의 구조적 한계를 극복하기 위하여, IC 칩 개발 업체들은 사람의 뇌를 이루는 기본 단위인 뉴런과 이러한 뉴런 사이의 연결을 이어주는 시냅스 등으로 이루어진 뉴럴 네트워크를 바탕으로 하는 뉴럴 네트워크 하드웨어 또는 뉴로모픽 하드웨어를 개발해 오고 있다. 뉴럴 네트워크는 기존의 머신 러닝 알고리즘들이 갖고 있던 한계를 뛰어넘어 사람에 근접한 수준의 이미지, 영상, 패턴 학습 및 인지 능력을 보여주고 있으며, 이미 수많은 분야에 사용되고 있다. 수많은 회사와 연구자들은 이러한 뉴럴 네트워크의 연산 작업을 보다 저전력으로 빠르게 수행하기 위하여 전용 ASIC 칩을 개발해 오고 있다.
뉴럴 네트워크는 사람의 뇌와 같이 뉴런들이 이어져 네트워크를 형성하고, 학습과, 추론을 수행한다. 뉴럴 네트워크는 뉴런과 뉴런들이 연결되는 시냅스를 포함하며, 뉴런과 뉴런 사이의 연결도가 강하거나, 약할 수 있으며, 그 정도를 웨이트(weight)라고 한다.
뉴럴 네트워크를 학습한다고 하는 것은 네트워크를 형성하고, 학습시키고자 하는 데이터를 입력하였을 때, 목적하는 결과가 출력될 때까지 웨이트의 값을 제어하는 과정이다.
뉴럴 네트워크를 학습시키는 과정은 n 개의 뉴런과 m 개의 뉴런 사이의 웨이트 값을 n*m의 웨이트 행렬(weight matrix)로 표현하고, 행렬의 원소값을 변경하는 과정으로 설명될 수 있다. 또한, 뉴럴 네트워크를 이용한 추론을 수행하는 과정은 뉴런이 제공하는 벡터와 웨이트 행렬의 곱 연산을 수행하는 과정으로 설명할 수 있다.
뉴럴 네트워크를 학습시키거나, 뉴럴 네트워크를 이용하여 추론하는 과정은 수많은 곱셈 연산을 반복하여 수행하는 것으로, 이들을 전용 하드웨어로 구현하는 것이 소모 전력과 연산 속도의 측면에서 바람직하다.
웨이트 행렬을 어레이 형태의 저항성 메모리를 이용하여 구현하는 경우 벡터에 해당하는 전압을 저항성 메모리 어레이에 가한 뒤 전류를 측정함으로써 벡터와 웨이트 행렬의 곱 연산을 수행할 수 있다. 이 때 벡터-전압 변환 회로는 저항성 메모리가 선형 전류-전압 특성을 가지는 것으로 가정되어 설계되었다. 그러나 저항성 메모리 소자들은 비선형적 전류-전압 특성을 보인다.
이러한 특성으로 인해 목적하는 웨이트 값을 메모리 소자에 정확하게 기입하여도 연산이 정확하게 이뤄지지 않으며, 그로부터 학습 및 추론의 정확도, 학습 및 추론 수행 속도 및 소모 전력에 영향을 미친다.
본 실시예는 저항성 메모리를 이용하여 웨이트 행렬(weight matrix)을 구현할 때, 저항성 메모리의 비선형적 전류-전압 특성을 감소시키도록 하는 것이 주된 목표 중 하나이다.
본 실시예에 의한 웨이트 행렬 회로는 n 개의 입력 라인과, m 개의 출력 라인과, n 개의 입력 라인과 m 개의 출력 라인에 각각 연결되며 각각이 비선형 전류 대 전압 특성을 가지는 n*m 개의 저항성 메모리 소자를 포함하는 메모리 어레이와, 각각의 입력 라인과 연결된 입력 회로 및 각각의 출력 라인과 연결된 출력 회로를 포함하는 웨이트 행렬 회로(weight matrix circuit)로, 입력 회로는 저항성 메모리 소자와 연결되어 웨이트 행렬 회로는 선형 전류 대 전압 특성을 가진다.
본 실시예에 의한 웨이트 행렬 입력 회로는 뉴럴 네트워크의 뉴런과 뉴런 사이의 웨이트 값들을 저장하는 웨이트 행렬 회로에 입력을 제공하는 회로로, 웨이트 행렬 입력 회로는: 반전 입력 전극(inverting input electrode)과, 비반전 입력 전극(non-inverting input electrode) 및 출력 전극(output electrode)을 가지는 연산 증폭기(OP-amp, operational amplifier)와, 반전 입력 전극과 연결된 저항(resistor) 및 반전 입력 전극과, 출력 전극에 각각 일단이 연결된 저항성 메모리 소자를 포함하며, 웨이트 행렬 입력 회로와 연결된 웨이트 행렬 회로의 전류 대 전압 특성은 선형 특성을 가진다.
본 실시예에 의하면, 웨이트 행렬에 제공되는 전류 대 전압 특성을 선형으로 형성할 수 있어 웨이트 값에 대한 용이한 제어가 가능하다. 이러한 특징으로부터 학습 및 추론의 정확도, 학습 및 추론 수행 속도 및 소모 전력 특성을 향상시킬 수 있다는 장점이 제공된다.
도 1은 본 실시예에 의한 웨이트 행렬 회로의 개요를 도시한 도면이다.
도 2는 출력 회로(300)에 포함된 변환 회로 실시예의 개요를 도시한 도면이다.
도 3은 본 실시예에 의한 입력 회로부에 포함된 웨이트 행렬 입력 회로(210)의 개요를 도시한 도면이다.
도 4(A)는 메모리 어레이(100)에 포함된 저항성 메모리 소자(RM)의 전류 대 전압 특성을 도시한 도면이고, 도 4(B)는 입력 회로부의 전류 대 전압 특성 개형을 나타내는 도면이다.
도 5는 본 실시예에 의한 입력 회로부를 구비한 웨이트 행렬 회로와, 종래 기술에 의한 웨이트 행렬 회로를 비교한 결과를 정리한 도표이다.
본 발명에 관한 설명은 구조적 내지 기능적 설명을 위한 실시예에 불과하므로, 본 발명의 권리범위는 본문에 설명된 실시예에 의하여 제한되는 것으로 해석되어서는 아니 된다. 즉, 실시예는 다양한 변경이 가능하고 여러 가지 형태를 가질 수 있으므로 본 발명의 권리범위는 기술적 사상을 실현할 수 있는 균등물들을 포함하는 것으로 이해되어야 한다.
한편, 본 출원에서 서술되는 용어의 의미는 다음과 같이 이해되어야 할 것이다.
단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한 복수의 표현을 포함하는 것으로 이해되어야 하고, "포함하다" 또는 "가지다" 등의 용어는 설시된 특징, 숫자, 단계, 동작, 구성요소, 부분품 또는 이들을 조합한 것이 존재함을 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성요소, 부분품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.
각 단계들은 문맥상 명백하게 특정 순서를 기재하지 않은 이상 명기된 순서와 다르게 일어날 수 있다. 즉, 각 단계들은 명기된 순서와 동일하게 일어날 수도 있고 실질적으로 동시에 수행될 수도 있으며 반대의 순서대로 수행될 수도 있다.
여기서 사용되는 모든 용어들은 다르게 정의되지 않는 한, 본 발명이 속하는 분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 것과 동일한 의미를 가진다. 일반적으로 사용되는 사전에 정의되어 있는 것과 같은 용어들은 관련 기술의 문맥상 가지는 의미와 일치하는 것으로 해석되어야 하며, 본 출원에서 명백하게 정의하지 않는 한 이상적이거나 과도하게 형식적인 의미를 지니는 것으로 해석될 수 없다.
이하에서는 첨부된 도면들을 참조하여 본 실시예를 설명한다. 도 1은 본 실시예에 의한 웨이트 행렬 회로(1)의 개요를 도시한 도면이다. 도 1을 참조하면, 웨이트 행렬 회로(1)는 n 개의 입력 라인과, m 개의 출력 라인과, n 개의 입력 라인과 m 개의 출력 라인에 각각 연결되며 각각이 비선형 전류 대 전압 특성을 가지는 n*m 개의 저항성 메모리 소자(RM)를 포함하는 메모리 어레이(100)와, 각각의 입력 라인과 연결된 입력 회로(200) 및 각각의 출력 라인과 연결된 출력 회로(300)를 포함하는 웨이트 행렬 회로(weight matrix circuit)로, 입력 회로는 저항성 메모리 소자(RM)와 연결되어 웨이트 행렬 회로는 선형 전류 대 전압 특성을 가진다.
메모리 어레이(100)는 복수의 입력 라인과 복수의 출력 라인과 연결된 저항성 메모리 소자(RM)들을 포함하며, 저항성 메모리 소자(RM)들은 어레이 형태로 배치된다. 저항성 메모리 소자(RM)들에 저장된 값은 어느 한 뉴런과 다른 뉴런 사이에서 연결의 강도를 나타내는 웨이트 값(weight value, w11, w21, .. wnm)를 저장한다. 따라서, 도 1로 예시된 메모리 어레이(100)는 n 개의 뉴런과 m 개의 뉴런을 연결하는 웨이트 값을 저장할 수 있다. 웨이트 값이 클수록 연결되는 뉴런사이의 연결강도가 클 수 있으며, 반대로 웨이트 값이 작을수록 연결되는 뉴런사이의 연결강도가 작을 수 있다.
일 예로, 메모리 어레이(100)의 어느 두 번째 행에 전압 형태의 입력 신호(Vi2)가 제공되면, 메모리 소자에 저장된 웨이트 값(w21, w22, w23, ..., w2m)에 따른 전류(I1, I2, I3, ..., Im)이 출력되며, 메모리 어레이(100)에서 출력되는 전류값은 메모리 소자에 저장된 웨이트 값(w21, w22, w23, ..., w2m)과 입력의 곱에 상응한다.
일 실시예로, 저항성 메모리 소자(RM)은 RRAM(resistive random access memory), MRAM(megnetic random access memory), PCRAM(phase-change random access memory) 및 FeRAM(ferroelectric random access memory)를 포함하는 그룹에서 선택된 어느 하나일 수 있다.
도 2는 출력 회로(300)에 포함된 변환 회로(310) 실시예의 개요를 도시한 도면이다. 도 2를 참조하면, 변환 회로(310)는 연산 증폭기(312)와, 연산 증폭기의 반전 입력과 출력에 각각 일단과 타단이 연결된 저항(RF)을 포함하며, 연산 증폭기의 비반전 입력은 기준 전위(reference voltage)와 연결되고, 연산 증폭기(310)와 저항(RF)이 연결된 노드를 통하여 입력 전류(IK)가 제공되며, 입력 전류를 상응하는 전압 신호(Vok)로 변환하여 출력한다.
도 3은 본 실시예에 의한 입력 회로부(200)에 포함된 웨이트 행렬 입력 회로(210)의 개요를 도시한 도면이다. 도 3을 참조하면, 웨이트 행렬 입력 회로(210)는 웨이트 행렬 입력 회로는 반전 입력(inverting input)과, 비반전 입력(non-inverting input) 및 출력 전극(output)을 가지는 연산 증폭기(operational amplifier, 212)와, 반전 입력 전극과 연결된 저항(resistor, IR) 및 반전 입력 전극과, 출력 전극에 각각 일단이 연결된 저항성 메모리 소자(RM)를 포함한다.
일 실시예로, 웨이트 행렬 입력 회로(210)에 포함된 메모리 소자(RM)은 저항성 메모리 소자(RM)는 RRAM(resistive random access memory), MRAM(megnetic random access memory), PCRAM(phase-change random access memory) 및 FeRAM(ferroelectric random access memory)를 포함하는 그룹에서 선택된 어느 하나일 수 있으며, 메모리 어레이(100)에 포함된 저항성 메모리 소자와 동일한 소자일 수 있다.
이하에서는 상기한 구성을 가지는 웨이트 행렬 회로(1)의 동작을 살펴본다. 도 4(A)는 메모리 어레이(100)에 포함된 저항성 메모리 소자(RM)의 전류 대 전압 특성을 도시한 도면이다. 도 4(A)를 참조하면, 수동 소자인 저항(Resistor)의 전류 대 전압 특성은 직선으로 도시되나, 저항성 메모리 소자(RM)의 전류 대 전압 특성은 비선형 특성을 가진다. 저항성 메모리 소자(RM)의 전류 대 전압 특성은 아래의 수학식 1과 같이 하이퍼볼릭 사인 함수(hyperbolic sine function)으로 수학적 모델링 가능하다.
Figure pat00001
(I: 전류, V: 전압, B: 상수 G: 컨덕턴스 )
도 3에 도시된 입력 회로부(300)의 전류 대 전압 특성은 입력으로 임의의 입력 전압 Vit이 주어질 때 입력 저항(IR)과 연산 증폭기(212)를 이용한 회로의 특성에 따라 형성되는 출력 단자의 전압 Vot는 저항성 메모리 소자(RM)의 컨덕턴스가 Gt일 때 저항성 메모리 소자(RM)의 전류 전압 특성에 역함수를 취한 형태로 결정되며, 이는 아래의 수학식 2와 같이 표현될 수 있고, 그 개형은 도 4(B)와 같다.
Figure pat00002
따라서, 출력 전압 Vot를 컨덕턴스(G)를 갖도록 설정된 다른 저항성 메모리 소자(RM)에 입력하는 경우 메모리 소자에 흐르는 전류는 아래의 수학식 3과 같이 연산될 수 있으며, 수학식 3으로 표현된 것과 같이 선형 전류 대 전압 특성을 얻을 수 있다.
Figure pat00003
구현예 및 실험예
도 5는 본 실시예에 의한 입력 회로부를 구비한 웨이트 행렬 회로와, 종래 기술에 의한 웨이트 행렬 회로를 비교한 결과를 정리한 도표이다. MNIST 데이터 집합을 분류하기 위해 MLP (Multi-Layer Perceptron)를 교육함으로써 본 실시예의 효과를 검증했다. 학습과 판단은 MATLAB으로 수행되었다. 도 5(a)는 이상적인 경우(Ideal), 종래 기술에 의한 경우(naive) 및 본 실시예에 따른 경우(proposed)의 정확성을 비교한 도면이다. 종래 기술에 의한 경우 88%의 정확성을 가지나, 본 실시예에 의한 경우에는 94.81%의 정확성을 가지는 것으로 파악되었다.
복잡한 이미지 분류 작업을 위해 CNN(Convolutional Neural Networks)을 사용하여 세 가지 사례의 분류 정확도 결과를 비교하였다. 도 5(b)와 도 5(c)는 RRAM 크로스바 어레이를 사용하여 CIFAR-10 및 ImageNet 데이터 세트를 분류하기 위한 LeNet 및 AlexNet의 계산 시뮬레이션 결과를 도시한다.
도 5(B)와 도 5(C)를 참조하면 종래 기술에 의하면 비선형성이 증가함에 따라 종래 기술의 데이터 세트 분류의 정확성은 감소한다(흑색). 그러나, 본 실시예에 의하면 비선형성이 증가하여도 데이터 세트 분류의 정확성은 일정한 수준으로 유지되는 것을 확인할 수 있다.
본 실시예의 입력 회로는 저항성 메모리 소자를 활용하여 임의의 입력 전압에 대해 해당 소자가 갖는 비선형 전류-전압 특성의 역함수 형태를 보이는 출력 전압을 가지도록 설계된다. 따라서, 본 실시예에 의한 입력 회로에 의하면 메모리 어레이에 포함된 저항성 메모리 소자의 비선형적 전류-전압 특성이 보상되어 해당 메모리 소자를 활용한 인공신경망 회로의 연산 정확도를 개선할 수 있다는 장점이 제공된다.
본 발명에 대한 이해를 돕기 위하여 도면에 도시된 실시 예를 참고로 설명되었으나, 이는 실시를 위한 실시예로, 예시적인 것에 불과하며, 당해 분야에서 통상적 지식을 가진 자라면 이로부터 다양한 변형 및 균등한 타 실시 예가 가능하다는 점을 이해할 것이다. 따라서, 본 발명의 진정한 기술적 보호범위는 첨부된 특허청구범위에 의해 정해져야 할 것이다.
1: 웨이트 행렬 회로 100: 메모리 어레이
200: 입력 회로 210: 웨이트 행렬 입력 회로
300: 출력 회로 310: 변환 회로

Claims (7)

  1. n 개의 입력 라인과, m 개의 출력 라인과, 상기 n 개의 입력 라인과 m 개의 출력 라인에 각각 연결되며 각각이 비선형 전류 대 전압 특성을 가지는 n*m 개의 저항성 메모리 소자를 포함하는 메모리 어레이;
    각각의 상기 입력 라인과 연결된 입력 회로; 및
    각각의 상기 출력 라인과 연결된 출력 회로를 포함하는 웨이트 행렬 회로(weight matrix circuit)로,
    상기 입력 회로는 상기 저항성 메모리 소자와 연결되어 상기 웨이트 행렬 회로는 선형 전류 대 전압 특성을 가지는 웨이트 행렬 회로.
  2. 제1항에 있어서,
    상기 저항성 메모리 소자는 RRAM(resistive random access memory), MRAM(megnetic random access memory), PCRAM(phase-change random access memory) 및 FeRAM(ferroelectric random access memory)를 포함하는 그룹에서 선택된 어느 하나인 웨이트 행렬 회로.
  3. 제1항에 있어서,
    상기 저항성 메모리 소자의 비선형 전류대 전압 특성은,
    제공된 전압에 대하여 하이퍼볼릭 사인(hyperbolic sine, sinhx) 형태로 모델링 될 수 있는 전류 특성인 웨이트 행렬 회로.
  4. 제1항에 있어서,
    상기 입력 회로는,
    반전 입력 전극(inverting input electrode)과, 비반전 입력 전극(non-inverting input electrode) 및 출력 전극(output electrode)을 가지는 연산 증폭기(OP-amp, operational amplifier)와,
    상기 반전 입력 전극과 연결된 저항(resistor) 및
    상기 반전 입력 전극과, 상기 출력 전극에 각각 일단이 연결된 저항성 메모리 소자를 포함하는 웨이트 행렬 회로.
  5. 제1항에 있어서,
    상기 입력 회로는,
    상기 저항성 메모리 소자의 전류 대 전압 특성의 역함수 형태로 모델링 될 수 있는 웨이트 행렬 회로.
  6. 뉴럴 네트워크의 뉴런과 뉴런 사이의 웨이트 값들을 저장하는 웨이트 행렬 회로에 입력을 제공하는 회로로, 상기 웨이트 행렬 입력 회로는:
    반전 입력 전극(inverting input electrode)과, 비반전 입력 전극(non-inverting input electrode) 및 출력 전극(output electrode)을 가지는 연산 증폭기(OP-amp, operational amplifier);
    상기 반전 입력 전극과 연결된 저항(resistor) 및
    상기 반전 입력 전극과, 상기 출력 전극에 각각 일단이 연결된 저항성 메모리 소자를 포함하며,
    상기 웨이트 행렬 입력 회로와 연결된 상기 웨이트 행렬 회로의 전류 대 전압 특성은 선형 특성을 가지는 웨이트 행렬 입력 회로.
  7. 제6항에 있어서,
    상기 웨이트 행렬 회로의 전류 대 전압 특성은 하이퍼볼릭 사인 함수(hyperbolic sine function)로 모델링 가능하고,
    상기 웨이트 행렬 입력 회로의 전류 대 전압 특성은 하이퍼볼릭 사인 함수의 역함수(inverse function of hyperbolic sine function)로 모델링 가능한 웨이트 행렬 입력 회로.
KR1020180072808A 2018-06-25 2018-06-25 웨이트 행렬 입력 회로 및 웨이트 행렬 회로 KR102105936B1 (ko)

Priority Applications (2)

Application Number Priority Date Filing Date Title
KR1020180072808A KR102105936B1 (ko) 2018-06-25 2018-06-25 웨이트 행렬 입력 회로 및 웨이트 행렬 회로
US16/450,968 US11216728B2 (en) 2018-06-25 2019-06-24 Weight matrix circuit and weight matrix input circuit

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020180072808A KR102105936B1 (ko) 2018-06-25 2018-06-25 웨이트 행렬 입력 회로 및 웨이트 행렬 회로

Publications (2)

Publication Number Publication Date
KR20200000686A true KR20200000686A (ko) 2020-01-03
KR102105936B1 KR102105936B1 (ko) 2020-05-28

Family

ID=68982029

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020180072808A KR102105936B1 (ko) 2018-06-25 2018-06-25 웨이트 행렬 입력 회로 및 웨이트 행렬 회로

Country Status (2)

Country Link
US (1) US11216728B2 (ko)
KR (1) KR102105936B1 (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20210141090A (ko) * 2020-05-15 2021-11-23 연세대학교 산학협력단 상변화 소자를 이용한 인공신경망 시스템

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11081182B2 (en) * 2019-10-29 2021-08-03 Macronix International Co., Ltd. Integrated circuit and computing method thereof
US11600321B2 (en) 2020-03-05 2023-03-07 Silicon Storage Technology, Inc. Analog neural memory array storing synapsis weights in differential cell pairs in artificial neural network
US11544061B2 (en) * 2020-12-22 2023-01-03 International Business Machines Corporation Analog hardware matrix computation

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20080039829A (ko) * 2005-01-19 2008-05-07 샌디스크 쓰리디 엘엘씨 신뢰할 수 있는 기록을 위해 위상 변경 메모리 어레이를바이어싱하기 위한 구조 및 방법

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2011034637A (ja) * 2009-08-03 2011-02-17 Toshiba Corp 不揮発性半導体記憶装置
JP2016062627A (ja) * 2014-09-17 2016-04-25 株式会社東芝 半導体集積回路
US10008264B2 (en) * 2014-10-23 2018-06-26 Hewlett Packard Enterprise Development Lp Memristive cross-bar array for determining a dot product
US10176425B2 (en) * 2016-07-14 2019-01-08 University Of Dayton Analog neuromorphic circuits for dot-product operation implementing resistive memories
US10366752B2 (en) * 2016-12-11 2019-07-30 Technion Research & Development Foundation Ltd. Programming for electronic memories
US10970441B1 (en) * 2018-02-26 2021-04-06 Washington University System and method using neural networks for analog-to-information processors
EP3776271A4 (en) * 2018-04-05 2022-01-19 Rain Neuromorphics Inc. SYSTEMS AND METHODS FOR EFFICIENT MATRIX MULTIPLICATION
KR102221763B1 (ko) * 2018-11-19 2021-02-26 포항공과대학교 산학협력단 이진 신경망에서의 저항성 메모리 기반 배치 정규화 장치

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20080039829A (ko) * 2005-01-19 2008-05-07 샌디스크 쓰리디 엘엘씨 신뢰할 수 있는 기록을 위해 위상 변경 메모리 어레이를바이어싱하기 위한 구조 및 방법

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20210141090A (ko) * 2020-05-15 2021-11-23 연세대학교 산학협력단 상변화 소자를 이용한 인공신경망 시스템

Also Published As

Publication number Publication date
US20190392316A1 (en) 2019-12-26
KR102105936B1 (ko) 2020-05-28
US11216728B2 (en) 2022-01-04

Similar Documents

Publication Publication Date Title
US10708522B2 (en) Image sensor with analog sample and hold circuit control for analog neural networks
CN107924227B (zh) 电阻处理单元
US10740671B2 (en) Convolutional neural networks using resistive processing unit array
US9779355B1 (en) Back propagation gates and storage capacitor for neural networks
US11222259B2 (en) Counter based resistive processing unit for programmable and reconfigurable artificial-neural-networks
Demin et al. Hardware elementary perceptron based on polyaniline memristive devices
US11087204B2 (en) Resistive processing unit with multiple weight readers
KR102105936B1 (ko) 웨이트 행렬 입력 회로 및 웨이트 행렬 회로
CN113469334B (zh) 一种忆阻递归神经网络电路
Hasan et al. On-chip training of memristor based deep neural networks
Xiao et al. GST-memristor-based online learning neural networks
US12050997B2 (en) Row-by-row convolutional neural network mapping for analog artificial intelligence network training
Zoppo et al. Equilibrium propagation for memristor-based recurrent neural networks
Wu et al. Adaptive anti-synchronization and H∞ anti-synchronization for memristive neural networks with mixed time delays and reaction–diffusion terms
Zyarah et al. Ziksa: On-chip learning accelerator with memristor crossbars for multilevel neural networks
CN115699028A (zh) 模拟人工智能网络推理的逐行卷积神经网络映射的高效瓦片映射
Hassan et al. Hybrid spiking-based multi-layered self-learning neuromorphic system based on memristor crossbar arrays
Hajiabadi et al. Memristor-based synaptic plasticity and unsupervised learning of spiking neural networks
AU2021296187B2 (en) Suppressing undesired programming at half-selected devices in a crosspoint array of 3-terminal resistive memory
Khalid et al. Memristor crossbar-based pattern recognition circuit using perceptron learning rule
Krestinskaya et al. Binarized neural network with stochastic memristors
Mukhametkhan et al. Notice of Retraction: Analysis of Multilayer Perceptron with Rectifier Linear Unit Activation Function
Elhamdaoui et al. Synapse design based on memristor
Kendall et al. Deep learning in memristive nanowire networks
Hassan et al. Designing neuromorphic computing systems with memristor devices

Legal Events

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