KR102351376B1 - 가중치 비트폭을 탄력적으로 적용할 수 있는 가중치 셀 - Google Patents

가중치 비트폭을 탄력적으로 적용할 수 있는 가중치 셀 Download PDF

Info

Publication number
KR102351376B1
KR102351376B1 KR1020190048108A KR20190048108A KR102351376B1 KR 102351376 B1 KR102351376 B1 KR 102351376B1 KR 1020190048108 A KR1020190048108 A KR 1020190048108A KR 20190048108 A KR20190048108 A KR 20190048108A KR 102351376 B1 KR102351376 B1 KR 102351376B1
Authority
KR
South Korea
Prior art keywords
transistor
word line
line
weight
bit
Prior art date
Application number
KR1020190048108A
Other languages
English (en)
Other versions
KR20200124585A (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 KR1020190048108A priority Critical patent/KR102351376B1/ko
Priority to PCT/KR2019/007780 priority patent/WO2020218673A1/ko
Publication of KR20200124585A publication Critical patent/KR20200124585A/ko
Application granted granted Critical
Publication of KR102351376B1 publication Critical patent/KR102351376B1/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/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

Landscapes

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

Abstract

본 발명의 실시예에 따른 가중치 비트폭을 탄력적으로 적용할 수 있는 가중치 셀은, 제1 워드 라인, 제1 비트 라인, 및 제2 선택 트랜지스터와 연결되는 제1 선택 트랜지스터와, 제2 워드 라인, 제2 비트 라인 및 제1 선택 트랜지스터와 연결되는 제2 선택 트랜지스터와, 제2 비트라인 및 입력과 연결되는 PMOS 트랜지스터를 포함하되, 제1 비트 라인은 출력과 연결되고, 제2 비트 라인은 PMOS 트랜지스터를 통해 입력과 연결되며, 제1 워드 라인은 제1 비트 라인과 직교하여 배치되고, 제2 워드 라인은 제1 워드 라인 및 제2 비트 라인과 직교하여 배치된다.

Description

가중치 비트폭을 탄력적으로 적용할 수 있는 가중치 셀{WEIGHT CELL WITH FLEXIBLE WEIGHT BIT-WIDTH}
본 발명은 뉴럴 네트워크에 관한 것으로서, 보다 상세하게는 가중치 비트폭을 탄력적으로 적용할 수 있는 가중치 셀에 관한 것이다.
모바일용 뉴럴 프로세서는 학습을 서버나 컴퓨터로 수행하고 학습결과를 모바일 뉴럴 프로세서에 저장하여 추론(inference)을 수행한다. 이 때 뉴럴 프로세서의 가중치에 저장되는 값은 멀티레벨이 되는 것이 바람직하나 멀티레벨 값에 한계가 있어서 학습을 수행한 후 전지 작업(pruning), 데이터 압축 등의 과정을 거쳐 작은 비트폭(small bit-width)화 한 다음 그 값을 모바일 뉴럴 프로세서 가중치로 저장한다. 이 가중치는 불휘발성 메모리 또는 휘발성 메모리에 저장할 수 있다.
서버용으로는 Google의 TPU(Tensor Processing Unit)가 있는데 가중치 값을 DRAM에 저장한 후 페치(fetch)하여 행렬 곱셈부(matrix multiply unit, MMU)로 보낸다. 출력(output) 계산 결과는 DRAM의 새로운 가중치 값과 함께 다시 행렬 곱셈부 입력(input)으로 보내어 최종 출력(output) 결과가 나올 때까지 순환시킨다. 이 때 사용하는 행렬 곱셈부는 로직으로 구성된 소자이다.
가중치를 불휘발성 메모리에 저장하여 사용하는 경우에는 추론 속도가 빠른 장점이 있으나 은닉층(hidden layer)을 모두 제작해야 하므로 회로 오버헤드(circuit overhead)가 증가하는 단점이 있다. Google의 TPU같은 경우는 가중치 정보를 뉴럴 네트워크 외부에 저장하고, 동일한 뉴럴 네트위크를 다시 사용하면서 순차적으로 계산하기 때문에 추론 속도는 감소하지만 회로 오버헤드를 줄일 수 있다.
위 기재된 내용은 오직 본 발명의 기술적 사상들에 대한 배경 기술의 이해를 돕기 위한 것이며, 따라서 그것은 본 발명의 기술 분야의 당업자에게 알려진 선행 기술에 해당하는 내용으로 이해될 수 없다.
본 발명은 인공지능 학습에서 학습결과를 수행하기 위한 가중치 조절 방법에 관한 뉴럴 네트워크 구성 및 작동 원리이다.
가중치 소자를 하드웨어를 이용하여 멀티레벨로 제작한다는 것은 물리적 한계가 있기 때문에, 소프트웨어에서 사용하는 가중치 비트폭(weight bit-width)을 따라갈 수 없다. 예를 들어서 16 비트폭의 멀티레벨, 즉, 65,536 저항 레벨을 갖는 저항 메모리 소재는 현재로서는 구현하기 어렵다. 따라서 가중치 값을 소프트웨어만큼 탄력적으로 입력하면서 벡터 행렬 곱셈이 가능한 행렬 곱셈부의 구조와 작동 방법을 고안해야 한다.
상기 목적을 달성하기 위하여 본 발명의 실시예에 따른 가중치 비트폭을 탄력적으로 적용할 수 있는 가중치 셀은, 제1 워드 라인, 제1 비트 라인, 및 제2 선택 트랜지스터와 연결되는 제1 선택 트랜지스터와; 제2 워드 라인, 제2 비트 라인 및 상기 제1 선택 트랜지스터와 연결되는 제2 선택 트랜지스터와; 상기 제2 비트라인 및 입력과 연결되는 PMOS 트랜지스터를 포함하되, 상기 제1 비트 라인은 출력과 연결되고, 상기 제2 비트 라인은 상기 PMOS 트랜지스터를 통해 상기 입력과 연결되며, 상기 제1 워드 라인은 상기 제1 비트 라인과 직교하여 배치되고, 상기 제2 워드 라인은 상기 제1 워드 라인 및 상기 제2 비트 라인과 직교하여 배치된다.
상기 제1 선택 트랜지스터는 CMOS 트랜지스터, 이온 기반(ion-based) 트랜지스터, 산화물 트랜지스터, 플로팅 게이트(FG) 트랜지스터, 강유전체 트랜지스터 및 TFT를 포함하는 해상도 제어(resolution control) 트랜지스터를 포함할 수 있다.
상기 제1 선택 트랜지스터의 트랜스 컨덕턴스(trans-conductance)는 상기 제2 선택 트랜지스터의 트랜스 컨덕턴스와 같거나 작을 수 있다.
상기 제1 워드 라인에 인가되는 전압은 전압 펄스이고, 상기 제2 워드 라인과 상기 제2 비트 라인에 인가되는 입력은 일정한 전압일 수 있다.
상기 제1 워드 라인과 상기 제2 비트 라인에 인가되는 입력은 전압 펄스이고, 상기 제1 워드 라인에 인가되는 전압 펄스는 상기 제2 비트 라인에 인가되는 전압 펄스 레이트에 맞추어 동기화한 전압 펄스일 수 있다.
상기 제1 워드 라인과 상기 제2 워드 라인에 인가되는 전압은 일정한 전압이고, 상기 제2 비트 라인에 인가되는 입력은 전압 펄스일 수 있다.
본 발명의 실시예에 따른 가중치 비트폭을 탄력적으로 적용할 수 있는 가중치 셀은, 제1 워드 라인, 제1 비트 라인, 및 제2 선택 트랜지스터와 연결되는 제1 선택 트랜지스터와; 제2 워드 라인, 제2 비트 라인 및 상기 제1 선택 트랜지스터와 연결되는 제2 선택 트랜지스터와; 상기 제1 선택 트랜지스터와 연결되는 다이오드를 포함하되, 상기 제1 비트 라인은 출력과 연결되고 상기 제2 비트 라인은 입력과 연결되며, 상기 제1 워드 라인은 상기 제2 워드 라인과 직교하여 배치되고, 상기 다이오드는 상기 제1 선택 트랜지스터와 상기 제1 비트 라인 사이에 배치된다.
상기 제1 선택 트랜지스터는 해상도 제어(resolution control) 트랜지스터를 포함할 수 있다.
상기 제1 선택 트랜지스터는 CMOS 트랜지스터, 이온 기반(ion-based) 트랜지스터, 산화물 트랜지스터, 플로팅 게이트(FG) 트랜지스터, 강유전체 트랜지스터 및 TFT를 포함할 수 있다.
상기 제2 선택 트랜지스터는 CMOS 트랜지스터를 포함할 수 있다.
상기 제1 선택 트랜지스터의 트랜스 컨덕턴스(trans-conductance)는 상기 제2 선택 트랜지스터의 트랜스 컨덕턴스와 같거나 작을 수 있다.
상기 입력에 인가되는 입력 전압은 직류 전압이고, 상기 제1 워드 라인에 인가되는 전압은 가중치를 결정하는 전압 펄스일 수 있다.
상기 제2 비트 라인에 인가되는 전압은 가중치를 결정하는 전압 펄스이고, 상기 제1 워드 라인에 인가되는 전압은 직류 전압일 수 있다.
본 발명의 실시예에 따른 가중치 비트폭을 탄력적으로 적용할 수 있는 가중치 셀은, 제1 워드 라인, 제1 비트 라인, 및 제2 선택 트랜지스터와 연결되는 제1 선택 트랜지스터와; 제2 워드 라인, 제2 비트 라인 및 상기 제1 선택 트랜지스터와 연결되는 제2 선택 트랜지스터와; 상기 제2 비트라인 및 입력과 연결되는 PMOS 트랜지스터와; 상기 제1 선택 트랜지스터와 연결되는 다이오드를 포함하되, 상기 제1 비트 라인은 출력과 연결되고, 상기 제2 비트 라인은 상기 PMOS 트랜지스터를 통해 상기 입력과 연결되며, 상기 제1 워드 라인은 상기 제2 워드 라인과 직교하여 배치되고, 상기 다이오드는 상기 제1 선택 트랜지스터와 상기 제1 비트 라인 사이에 배치된다.
상기 PMOS 트랜지스터는 스위치를 포함할 수 있다.
상기 제1 선택 트랜지스터는 CMOS 트랜지스터, 이온 기반(ion-based) 트랜지스터, 산화물 트랜지스터, 플로팅 게이트(FG) 트랜지스터, 강유전체 트랜지스터 및 TFT를 포함할 수 있다.
본 발명의 실시예에 따른 가중치 비트폭을 탄력적으로 적용할 수 있는 가중치 셀은, 제1 워드 라인, 출력 라인, 및 선택 트랜지스터와 연결되는 해상도 제어(resolution control) 트랜지스터와; 제2 워드 라인, 입력 라인 및 상기 해상도 제어 트랜지스터와 연결되는 선택 트랜지스터를 포함하되, 상기 제2 워드 라인은 상기 입력 라인과 직교하여 배치된다.
상기 입력 라인에 인가되는 전압은 직류 전압이고, 상기 제1 워드 라인에 인가되는 전압은 가중치를 결정하는 전압 펄스일 수 있다.
상기 입력 라인에 인가되는 전압은 가중치를 결정하는 전압 펄스이고, 상기 제1 워드 라인에 인가되는 전압은 직류 전압일 수 있다.
트랜지스터 쌍을 제작하여 하나의 트랜지스터 워드라인에는 외부 입력 전압을 인가하여 트랜스 컨덕턴스(trans-conductance)를 결정하고 다른 트랜지스터에서는 가중치에 해당하는 횟수만큼 전압 펄스(pulse)를 연속적으로 입력하여 전압과 컨턱턴스에 의해 출력으로 나오는 전류 펄스의 횟수를 누적 (integration)한 후 전압으로 변환하여 활성화(activation) 되도록 한다. 이것을 각각 독립적으로 동시에 수행할 경우 회로의 오버헤드가 커질 것이므로 공통 워드 라인(word line)과 공통 비트 라인(bit line)을 사용하여 순차적으로 벡터 행렬 곱셈이 수행되도록 한다. 활성화된 출력은 은닉층을 거쳐서 마지막 출력이 나올 때까지 다시 은닉층의 입력으로 순환시킨다.
이와 같은 본 발명의 실시예에 따른 가중치 비트폭을 탄력적으로 적용할 수 있는 가중치 셀은, "출력 (전류 펄스 stream) = 펄스 횟수 x 트랜스 컨덕턴스 x 전압 펄스 = 가중치 x 전압 펄스" 관계를 가지는 하드웨어로 제작하고, 펄스 트레인(pulse train)을 인가함으로써 가중치 비트폭을 탄력적으로 적용할 수 있다.
또한, 뉴럴 네트워크에 사용하는 가중치를 외부에 저장하기도 하고 내부에 저장하기도 함으로써, 온-칩 러닝(on-chip learning) 또는 모바일 전용 서비스로 활용이 가능한 준 범용 프로세서의 구현이 가능하다.
도 1은 본 발명의 일 실시예에 따른 뉴럴 네트워크를 개략적으로 나타내는 회로도이다.
도 2는 본 발명의 일 실시예에 따른 뉴럴 네트워크의 가중치 셀 원리를 개략적으로 나타내는 회로도이다.
도 3은 본 발명의 일 실시예에 따른 뉴럴 네트워크의 가중치 셀을 개략적으로 나타내는 회로도이다.
도 4는 본 발명의 일 실시예에 따른 뉴럴 네트워크 구성을 개략적으로 나타내는 회로도이다.
도 5는 본 발명의 다른 실시예에 따른 뉴럴 네트워크의 가중치 셀을 개략적으로 나타내는 회로도이다.
도 6은 본 발명의 다른 실시예에 따른 뉴럴 네트워크 구성을 개략적으로 나타내는 회로도이다.
도 7 내지 도 9는 본 발명의 일 실시예에 따른 뉴럴 네트워크의 동작을 설명하기 위한 회로도이다.
위 발명의 배경이 되는 기술 란에 기재된 내용은 오직 본 발명의 기술적 사상에 대한 배경 기술의 이해를 돕기 위한 것이며, 따라서 그것은 본 발명의 기술 분야의 당업자에게 알려진 선행 기술에 해당하는 내용으로 이해될 수 없다.
아래의 서술에서, 설명의 목적으로, 다양한 실시예들의 이해를 돕기 위해 많은 구체적인 세부 내용들이 제시된다. 그러나, 다양한 실시예들이 이러한 구체적인 세부 내용들 없이 또는 하나 이상의 동등한 방식으로 실시될 수 있다는 것은 명백하다. 다른 예시들에서, 잘 알려진 구조들과 장치들은 다양한 실시예들을 불필요하게 이해하기 어렵게 하는 것을 피하기 위해 블록도로 표시된다.
도면에서, 레이어들, 필름들, 패널들, 영역들 등의 크기 또는 상대적인 크기는 명확한 설명을 위해 과장될 수 있다. 또한, 동일한 참조 번호는 동일한 구성 요소를 나타낸다.
명세서 전체에서, 어떤 부분이 다른 부분과 "연결"되어 있다고 할 때, 이는 "직접적으로 연결"되어 있는 경우뿐 아니라, 그 중간에 다른 소자를 사이에 두고 "간접적으로 연결"되어 있는 경우도 포함한다. 그러나, 만약 어떤 부분이 다른 부분과 "직접적으로 연결되어 있다"고 서술되어 있으면, 이는 해당 부분과 다른 부분 사이에 다른 소자가 없음을 의미할 것이다. "X, Y, 및 Z 중 적어도 어느 하나", 그리고 "X, Y, 및 Z로 구성된 그룹으로부터 선택된 적어도 어느 하나"는 X 하나, Y 하나, Z 하나, 또는 X, Y, 및 Z 중 둘 또는 그 이상의 어떤 조합 (예를 들면, XYZ, XYY, YZ, ZZ) 으로 이해될 것이다. 여기에서, "및/또는"은 해당 구성들 중 하나 또는 그 이상의 모든 조합을 포함한다.
여기에서, 첫번째, 두번째 등과 같은 용어가 다양한 소자들, 요소들, 지역들, 레이어들, 및/또는 섹션들을 설명하기 위해 사용될 수 있지만, 이러한 소자들, 요소들, 지역들, 레이어들, 및/또는 섹션들은 이러한 용어들에 한정되지 않는다. 이러한 용어들은 하나의 소자, 요소, 지역, 레이어, 및/또는 섹션을 다른 소자, 요소, 지역, 레이어, 및 또는 섹션과 구별하기 위해 사용된다. 따라서, 일 실시예에서의 첫번째 소자, 요소, 지역, 레이어, 및/또는 섹션은 다른 실시예에서 두번째 소자, 요소, 지역, 레이어, 및/또는 섹션이라 칭할 수 있다.
"아래", "위" 등과 같은 공간적으로 상대적인 용어가 설명의 목적으로 사용될 수 있으며, 그렇게 함으로써 도면에서 도시된 대로 하나의 소자 또는 특징과 다른 소자(들) 또는 특징(들)과의 관계를 설명한다. 이는 도면 상에서 하나의 구성 요소의 다른 구성 요소에 대한 관계를 나타내는 데에 사용될 뿐, 절대적인 위치를 의미하는 것은 아니다. 예를 들어, 도면에 도시된 장치가 뒤집히면, 다른 소자들 또는 특징들의 "아래"에 위치하는 것으로 묘사된 소자들은 다른 소자들 또는 특징들의 "위"의 방향에 위치한다. 따라서, 일 실시예에서 "아래" 라는 용어는 위와 아래의 양방향을 포함할 수 있다. 뿐만 아니라, 장치는 그 외의 다른 방향일 수 있다 (예를 들어, 90도 회전된 혹은 다른 방향에서), 그리고, 여기에서 사용되는 그런 공간적으로 상대적인 용어들은 그에 따라 해석된다.
여기에서 사용된 용어는 특정한 실시예들을 설명하는 목적이고 제한하기 위한 목적이 아니다. 명세서 전체에서, 어떤 부분이 어떤 구성요소를 "포함"한다 고 할 때, 이는 특별히 반대되는 기재가 없는 한 다른 구성요소를 제외하는 것이 아니라 다른 구성요소를 더 포함할 수 있는 것을 의미한다. 다른 정의가 없는 한, 여기에 사용된 용어들은 본 발명이 속하는 분야에서 통상적인 지식을 가진 자에게 일반적으로 이해되는 것과 같은 의미를 갖는다.
도 1은 본 발명의 일 실시예에 따른 뉴럴 네트워크를 개략적으로 나타내는 회로도이다.
도 1을 참조하면, 본 발명의 일 실시예에 따른 뉴럴 네트워크(neural network)는 입력 뉴런(10), 출력 뉴런(20), 및 가중치 소자(30)를 포함한다. 시냅스(30) 소자는 입력 뉴런(10)으로부터 수평으로 연장하는 로우 라인(R)(row lines) 및 출력 뉴런(20)으로부터 수직으로 연장하는 컬럼 라인(C)(column lines)의 교차점에 배치될 수 있다. 설명의 편의를 위해 도 1에는 예시적으로 각각 네 개의 입력 뉴런(10) 및 출력 뉴런(20)이 도시되었으나, 본 발명은 이에 한정되지 않는다.
입력 뉴런(10)은 학습 모드(learning mode), 리셋 모드(reset mode), 보정 또는 읽기 모드(reading mode)에서 로우 라인(R)을 통하여 가중치 소자(30)로 전기적 펄스들(pulses)을 전송할 수 있다.
출력 뉴런(20)은 학습 모드 또는 리셋 모드 또는 보정 시 컬럼 라인(C)을 통하여 가중치 소자(30)로 전기적 펄스를 전송할 수 있고, 및 읽기 모드에서 컬럼 라인(C)을 통하여 가중치 소자(30)로부터 전기적 펄스를 수신할 수 있다.
본 발명의 실시예에 따른 가중치 비트폭을 탄력적으로 적용하기 위하여 가중치를 새롭게 정의한다. 현재까지는 컨덕턴스를 기초로 하는 가중치에서 I=GV(전류=conductance×전압)를 적용하여 G를 멀티레벨화 했다. 여기서 선형 멀티레벨은 배수 n을 사용하여 G=nGo로 표현할 수 있다. 이 때 기저(ground) 컨덕턴스가 되는 Go는 가중치의 해상도(resolution)가 되고 GoV는 전류의 해상도(resolution)가 된다.
본 발명의 일 실시예에 따른 뉴럴 네트워크의 입력(input), 가중치, 출력(output)은 수학식 1과 같이 행렬로 표현할 수 있다.
Figure 112019042465577-pat00001
이 관계를 그림으로 표현하면 도 1과 같이 된다. 이것을 간단히 표현하면 I=GTV가 되는데 이것은 다시 I=GonTV 관계가 된다. 여기서 n은 배수 개념에서 횟수(number) 개념으로 전환할 수 있기 때문에 Go를 n회 적용하든가, V전압을 n회 인가하는 방식을 도입할 수 있다. 따라서 가중치를 n으로 정의할 수 있다.
도 2는 본 발명의 일 실시예에 따른 뉴럴 네트워크의 가중치 셀 원리를 개략적으로 나타내는 회로도이다.
도 2를 참조하면, 본 발명의 일 실시예에 따른 뉴럴 네트워크는 가중치를 펄스 횟수로 정의할 경우 게이트 펄스 모드(gate pulse mode)와 비트 라인 펄스 모드(bit line pulse mode)를 적용할 수 있다.
본 발명의 일 실시예에 따른 뉴럴 네트워크에서 완전한 벡터 행렬 곱셈(vector matrix multiplication)을 위해서는 가중치 셀마다 워드 라인을 제작하거나 가중치 셀마다 비트 라인을 제작하면 되겠지만, 이 경우 회로 부하(circuit overhead)가 커지기 때문에 뉴럴 칩(neural chip)으로서의 장점이 사라질 수 있다. 따라서, 뉴럴 네트워크에서 순차적인 곱셈(sequential multiplication)을 수행할 수 있도록 트레이드오프(trade-off) 하는 것이 바람직하다. 이를 위해 Go를 결정하는 기저 컨덕턴스 제어 트랜지스터(혹은 해상도 제어 트랜지스터)와 가중치 셀을 선택하는 선택 트랜지스터 쌍으로 구성되는 가중치 셀을 제안한다.
도 3은 본 발명의 일 실시예에 따른 뉴럴 네트워크의 가중치 셀을 개략적으로 나타내는 회로도이다. 도 4는 본 발명의 일 실시예에 따른 뉴럴 네트워크 구성을 개략적으로 나타내는 회로도이다.
도 3 및 도 4를 참조하면, 본 발명의 일 실시예에 따른 뉴럴 네트워크의 가중치 셀(1)은 제1 선택 트랜지스터(10)와 제2 선택 트랜지스터(20) 및 PMOS 트랜지스터(25)를 포함한다. 제1 선택 트랜지스터(10)는 제1 워드 라인(11), 제1 비트 라인(12) 및 제2 선택 트랜지스터(20)와 연결되고, 제2 선택 트랜지스터(20)는 제2 워드 라인(21), 제2 비트 라인(22) 및 제1 선택 트랜지스터(10)와 연결되고, PMOS 트랜지스터(25)는 제2 비트 라인(22) 및 입력(30)과 연결된다. 제1 비트 라인(12)은 출력(40)과 연결 되고, 제2 비트 라인(22)은 PMOS 트랜지스터(25)를 통해 입력(30)과 연결된다. 제1 워드 라인(11)은 제1 비트 라인(12)과 직교하여 배치되고, 제2 워드 라인(21)은 제1 워드 라인(11) 및 제2 비트 라인(22)과 직교하여 배치된다. 실시예로서, PMOS 트랜지스터(25)는 스위치로서 동작할 수 있다.
실시예로서, 제1 선택 트랜지스터(10)는 가중치 해상도를 제어할 수 있고, 멀티레벨(multi-level) 값을 가질 수 있다. 제1 선택 트랜지스터(10)는 강유전체의 분극으로 강유전체 표면에 발생하는 컨덕턴스를 이용하는 강유전체 트랜지스터(혹은 TFT), 이온(ion)을 마이그레이션(migration) 시켜 채널을 형성함으로써 트랜스 컨덕턴스를 이용하는 이온 기반(ion-based) 트랜지스터(혹은 TFT), 산화물반도체를 채널 물질로 사용함으로써 트랜스 컨덕턴스를 이용하는 산화물 트랜지스터(혹은 TFT), doped Si을 채널로 사용함으로써 트랜스 컨덕턴스를 이용하는 CMOS 트랜지스터(혹은 TFT), 및 플로팅 게이트(floating gate)를 사용하는 불휘발성 트랜지스터를 포함하는 해상도 제어 트랜지스터를 포함할 수 있다.
실시예로서, 제1 선택 트랜지스터(10)의 트랜스 컨덕턴스는 제2 선택 트랜지스터(20)의 트랜스 컨덕턴스와 같거나 작을 수 있다.
실시예로서, 제1 워드 라인(11)에 인가되는 전압은 전압 펄스이고, 제2 워드 라인(21)과 제2 비트 라인(22)에 인가되는 전압은 일정한 전압일 수 있다. 다른 실시예로서, 제1 워드 라인(11)과 제2 비트 라인(22)에 인가되는 전압은 전압 펄스이고, 제1 워드 라인(11)에 인가되는 전압 펄스는 제2 비트 라인(22)에 인가되는 전압 펄스 레이트에 맞추어 동기화한 전압 펄스일 수 있다. 또 다른 실시예로서, 제1 워드 라인(11)과 제2 워드 라인(21)에 인가되는 전압은 일정한 전압이고, 제2 비트 라인(22)에 인가되는 전압은 전압 펄스일 수 있다.
도 5는 본 발명의 다른 실시예에 따른 뉴럴 네트워크의 가중치 셀을 개략적으로 나타내는 회로도이다. 도 6은 본 발명의 다른 실시예에 따른 뉴럴 네트워크 구성을 개략적으로 나타내는 회로도이다.
도 5 및 도 6을 참조하면, 본 발명의 다른 실시예에 따른 뉴럴 네트워크의 가중치 셀(2)은 제1 선택 트랜지스터(10), 제2 선택 트랜지스터(20) 및 다이오드(50)를 포함한다. 제1 선택 트랜지스터(10)는 제1 워드 라인(11), 제1 비트 라인(12) 및 제2 선택 트랜지스터(20)와 연결되고, 제2 선택 트랜지스터(20)는 제2 워드 라인(21), 제2 비트 라인(22) 및 제1 선택 트랜지스터(10)와 연결되며, 다이오드(50)는 제1 선택 트랜지스터(10)와 연결된다. 제1 비트 라인(12)은 출력(40) 라인과 연결 되고, 제2 비트 라인(22)은 입력(30) 라인과 연결된다. 제1 워드 라인(11)은 제2 워드 라인(21)과 직교하여 배치되고, 다이오드(50)는 제1 선택 트랜지스터(10)와 제1 비트 라인(12) 사이에 배치된다.
실시예로서, 제1 선택 트랜지스터(10)는 해상도 제어 트랜지스터를 포함할 수 있다. 다른 실시예로서, 제1 선택 트랜지스터(10)는 CMOS 트랜지스터를 포함할 수 있다. 제2 선택 트랜지스터(20)는 CMOS 트랜지스터를 포함할 수 있다.
실시예로서, 제1 선택 트랜지스터(10)의 트랜스 컨덕턴스는 제2 선택 트랜지스터(20)의 트랜스 컨덕턴스와 같거나 작을 수 있다.
실시예로서, 입력(30) 라인에 인가되는 전압은 직류 전압이고, 제1 워드 라인(11)에 인가되는 전압은 가중치를 결정하는 전압 펄스일 수 있다. 다른 실시예로서, 제2 비트 라인(22)에 인가되는 전압은 가중치를 결정하는 전압 펄스이고, 제1 워드 라인(11)에 인가되는 전압은 직류 전압일 수 있다.
본 발명의 또 다른 실시예에 따른 뉴럴 네트워크의 가중치 셀(2)은 해상도 제어 트랜지스터(10)와 선택 트랜지스터(20)를 포함한다. 해상도 제어 트랜지스터(10)는 제1 워드 라인(11), 출력 라인(12) 및 선택 트랜지스터(20)와 연결되고, 선택 트랜지스터(20)는 제2 워드 라인(21), 입력 라인(22) 및 해상도 제어 트랜지스터(10)와 연결된다. 제1 비트 라인(12)은 출력(40) 라인과 연결 되고, 제2 비트 라인(22)은 입력(30) 라인과 연결된다. 제2 워드 라인(21)은 입력 라인(22)과 직교하여 배치된다.
실시예로서, 게이트 펄스 모드인 경우, 입력 라인(22)에 인가되는 전압은 직류 전압이고, 제1 워드 라인(11)에 인가되는 가중치를 결정하는 전압 펄스일 수 있다. 다른 실시예로서, 비트 라인 펄스 모드인 경우, 입력 라인(22)에 인가되는 전압은 가중치를 결정하는 전압 펄스이고, 제1 워드 라인(11)에 인가되는 전압은 직류 전압일 수 있다.
도 7 내지 도 9는 본 발명의 일 실시예에 따른 뉴럴 네트워크의 동작을 설명하기 위한 회로도이다.
도 7 내지 도 9를 참조하면, 본 발명의 일 실시예에 따른 뉴럴 네트워크는 외부의 저장매체로부터 가중치를 페치(fetch)하여 이를 펄스 횟수로 환산한 후 선택 트랜지스터의 워드 라인에 인가한다. 실시예로서, 외부의 저장매체는 SRAM, DRAM, RRAM 및 스토리지 중 적어도 하나를 포함할 수 있다. 본 발명의 일 실시예에 따른 뉴럴 네트워크는 효과적인 벡터 행렬 곱셈(VMM)을 위하여 도 7 내지 도 9와 같이 순차적으로 가중치를 인가하고, 순차적인 벡터 행렬 곱셈(sequential VMM)의 출력(output)에서는 펄스들을 누적(integration)하여 이 값을 활성화 (activation)하고 활성화 된 정보를 외부 저장매체에 임시 저장한다.
본 발명의 일 실시예에 따른 뉴럴 네트워크는 순차적인 벡터 행렬 곱셈(Sequential VMM)이 완료되면 활성화되어 다음 레이어(layer)로 전달할 출력 정보와 각각의 셀 가중치 정보를 다시 뉴럴 네트워크의 입력에 전달하고 이 과정을 최종 출력이 될 때까지 반복(혹은 순환)시킨다. 온-칩 러닝(On-chip learning)시에는 역전파(back-propagation)를 적용할 수 있다.
전술한 바와 같은 본 발명의 실시예들에 따르면, 본 발명의 실시예에 따른 가중치 비트폭을 탄력적으로 적용할 수 있는 가중치 셀은, "출력 (전류 펄스 stream) = 펄스 횟수 x 트랜스 컨덕턴스 x 전압 펄스 = 가중치 x 전압 펄스" 관계를 가지는 하드웨어로 제작하고, 펄스 트레인(pulse train)을 인가함으로써 가중치 비트폭을 탄력적으로 적용할 수 있다. 또한, 뉴럴 네트워크에 사용하는 가중치를 외부에 저장하기도 하고 내부에 저장하기도 함으로써, 온-칩 러닝(on-chip learning) 또는 모바일 전용 서비스로 활용이 가능한 준 범용 프로세서의 구현이 가능하다.
이상과 같이 본 발명에서는 구체적인 구성 요소 등과 같은 특정 사항들과 한정된 실시예 및 도면에 의해 설명되었으나 이는 본 발명의 보다 전반적인 이해를 돕기 위해서 제공된 것일 뿐, 본 발명은 상기의 실시예에 한정되는 것은 아니며, 본 발명이 속하는 분야에서 통상적인 지식을 가진 자라면 이러한 기재로부터 다양한 수정 및 변형이 가능하다.
따라서, 본 발명의 사상은 설명된 실시예에 국한되어 정해져서는 아니되며, 후술하는 특허청구범위뿐 아니라 이 특허청구범위와 균등하거나 등가적 변형이 있는 모든 것들은 본 발명 사상의 범주에 속한다고 할 것이다.
1, 2: 가중치 셀 10: 제1 선택 트랜지스터
11: 제1 워드 라인 12: 제1 비트 라인
20: 제2 선택 트랜지스터 21: 제2 워드 라인
22: 제2 비트 라인 25: PMOS 트랜지스터
30: 입력 40: 출력

Claims (19)

  1. 제1 워드 라인, 제1 비트 라인, 및 제2 선택 트랜지스터와 연결되는 제1 선택 트랜지스터;
    제2 워드 라인, 제2 비트 라인 및 상기 제1 선택 트랜지스터와 연결되는 제2 선택 트랜지스터; 및
    상기 제2 비트라인 및 입력과 연결되는 PMOS 트랜지스터를 포함하되,
    상기 제1 비트 라인은 출력과 연결되고, 상기 제2 비트 라인은 상기 PMOS 트랜지스터를 통해 상기 입력과 연결되며, 상기 제1 워드 라인은 상기 제1 비트 라인과 직교하여 배치되고, 상기 제2 워드 라인은 상기 제1 워드 라인 및 상기 제2 비트 라인과 직교하여 배치되고,
    상기 제1 선택 트랜지스터의 트랜스 컨덕턴스(trans-conductance)는 상기 제2 선택 트랜지스터의 트랜스 컨덕턴스와 같거나 작은 가중치 비트폭을 탄력적으로 적용할 수 있는 가중치 셀.
  2. 제 1항에 있어서,
    상기 제1 선택 트랜지스터는 CMOS 트랜지스터, 이온 기반(ion-based) 트랜지스터, 산화물 트랜지스터, 플로팅 게이트(FG) 트랜지스터, 강유전체 트랜지스터 및 TFT를 포함하는 해상도 제어(resolution control) 트랜지스터를 포함하는 가중치 비트폭을 탄력적으로 적용할 수 있는 가중치 셀.
  3. 삭제
  4. 제 1항에 있어서,
    상기 제1 워드 라인에 인가되는 전압은 전압 펄스이고, 상기 제2 워드 라인과 상기 제2 비트 라인에 인가되는 입력은 일정한 전압인 가중치 비트폭을 탄력적으로 적용할 수 있는 가중치 셀.
  5. 제 1항에 있어서,
    상기 제1 워드 라인과 상기 제2 비트 라인에 인가되는 입력은 전압 펄스이고, 상기 제1 워드 라인에 인가되는 전압 펄스는 상기 제2 비트 라인에 인가되는 전압 펄스 레이트에 맞추어 동기화한 전압 펄스인 가중치 비트폭을 탄력적으로 적용할 수 있는 가중치 셀.
  6. 제 1항에 있어서,
    상기 제1 워드 라인과 상기 제2 워드 라인에 인가되는 전압은 일정한 전압이고, 상기 제2 비트 라인에 인가되는 입력은 전압 펄스인 가중치 비트폭을 탄력적으로 적용할 수 있는 가중치 셀.
  7. 제1 워드 라인, 제1 비트 라인, 및 제2 선택 트랜지스터와 연결되는 제1 선택 트랜지스터;
    제2 워드 라인, 제2 비트 라인 및 상기 제1 선택 트랜지스터와 연결되는 제2 선택 트랜지스터; 및
    상기 제1 선택 트랜지스터와 연결되는 다이오드를 포함하되,
    상기 제1 비트 라인은 출력과 연결되고 상기 제2 비트 라인은 입력과 연결되며,
    상기 제1 워드 라인은 상기 제2 워드 라인과 직교하여 배치되고, 상기 다이오드는 상기 제1 선택 트랜지스터와 상기 제1 비트 라인 사이에 배치되고,
    상기 제1 선택 트랜지스터의 트랜스 컨덕턴스(trans-conductance)는 상기 제2 선택 트랜지스터의 트랜스 컨덕턴스와 같거나 작은 가중치 비트폭을 탄력적으로 적용할 수 있는 가중치 셀.
  8. 제 7항에 있어서,
    상기 제1 선택 트랜지스터는 해상도 제어(resolution control) 트랜지스터를 포함하는 가중치 비트폭을 탄력적으로 적용할 수 있는 가중치 셀.
  9. 제 7항에 있어서,
    상기 제1 선택 트랜지스터는 CMOS 트랜지스터, 이온 기반(ion-based) 트랜지스터, 산화물 트랜지스터, 플로팅 게이트(FG) 트랜지스터, 강유전체 트랜지스터 및 TFT를 포함하는 가중치 비트폭을 탄력적으로 적용할 수 있는 가중치 셀.
  10. 제 7항에 있어서,
    상기 제2 선택 트랜지스터는 CMOS 트랜지스터를 포함하는 가중치 비트폭을 탄력적으로 적용할 수 있는 가중치 셀.
  11. 삭제
  12. 제 7항에 있어서,
    상기 입력에 인가되는 입력 전압은 직류 전압이고, 상기 제1 워드 라인에 인가되는 전압은 가중치를 결정하는 전압 펄스인 가중치 비트폭을 탄력적으로 적용할 수 있는 가중치 셀.
  13. 제 7항에 있어서,
    상기 제2 비트 라인에 인가되는 전압은 가중치를 결정하는 전압 펄스이고, 상기 제1 워드 라인에 인가되는 전압은 직류 전압인 가중치 비트폭을 탄력적으로 적용할 수 있는 가중치 셀.
  14. 제1 워드 라인, 제1 비트 라인, 및 제2 선택 트랜지스터와 연결되는 제1 선택 트랜지스터;
    제2 워드 라인, 제2 비트 라인 및 상기 제1 선택 트랜지스터와 연결되는 제2 선택 트랜지스터;
    상기 제2 비트라인 및 입력과 연결되는 PMOS 트랜지스터; 및
    상기 제1 선택 트랜지스터와 연결되는 다이오드를 포함하되,
    상기 제1 비트 라인은 출력과 연결되고, 상기 제2 비트 라인은 상기 PMOS 트랜지스터를 통해 상기 입력과 연결되며, 상기 제1 워드 라인은 상기 제2 워드 라인과 직교하여 배치되고, 상기 다이오드는 상기 제1 선택 트랜지스터와 상기 제1 비트 라인 사이에 배치되고,
    상기 제1 선택 트랜지스터의 트랜스 컨덕턴스(trans-conductance)는 상기 제2 선택 트랜지스터의 트랜스 컨덕턴스와 같거나 작은 가중치 비트폭을 탄력적으로 적용할 수 있는 가중치 셀.
  15. 제 14항에 있어서,
    상기 PMOS 트랜지스터는 스위치를 포함하는 가중치 비트폭을 탄력적으로 적용할 수 있는 가중치 셀.
  16. 제 14항에 있어서,
    상기 제1 선택 트랜지스터는 CMOS 트랜지스터, 이온 기반(ion-based) 트랜지스터, 산화물 트랜지스터, 플로팅 게이트(FG) 트랜지스터, 강유전체 트랜지스터 및 TFT를 포함하는 가중치 비트폭을 탄력적으로 적용할 수 있는 가중치 셀.
  17. 제1 워드 라인, 출력 라인, 및 선택 트랜지스터와 연결되는 해상도 제어(resolution control) 트랜지스터; 및
    제2 워드 라인, 입력 라인 및 상기 해상도 제어 트랜지스터와 연결되는 선택 트랜지스터를 포함하되,
    상기 제2 워드 라인은 상기 입력 라인과 직교하여 배치되고,
    상기 해상도 제어 트랜지스터의 트랜스 컨덕턴스(trans-conductance)는 상기 선택 트랜지스터의 트랜스 컨덕턴스와 같거나 작은 가중치 비트폭을 탄력적으로 적용할 수 있는 가중치 셀.
  18. 제 17항에 있어서,
    상기 입력 라인에 인가되는 전압은 직류 전압이고, 상기 제1 워드 라인에 인가되는 전압은 가중치를 결정하는 전압 펄스인 가중치 비트폭을 탄력적으로 적용할 수 있는 가중치 셀.
  19. 제 17항에 있어서,
    상기 입력 라인에 인가되는 전압은 가중치를 결정하는 전압 펄스이고, 상기 제1 워드 라인에 인가되는 전압은 직류 전압인 가중치 비트폭을 탄력적으로 적용할 수 있는 가중치 셀.
KR1020190048108A 2019-04-24 2019-04-24 가중치 비트폭을 탄력적으로 적용할 수 있는 가중치 셀 KR102351376B1 (ko)

Priority Applications (2)

Application Number Priority Date Filing Date Title
KR1020190048108A KR102351376B1 (ko) 2019-04-24 2019-04-24 가중치 비트폭을 탄력적으로 적용할 수 있는 가중치 셀
PCT/KR2019/007780 WO2020218673A1 (ko) 2019-04-24 2019-06-27 가중치 비트폭을 탄력적으로 적용할 수 있는 가중치 셀

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020190048108A KR102351376B1 (ko) 2019-04-24 2019-04-24 가중치 비트폭을 탄력적으로 적용할 수 있는 가중치 셀

Publications (2)

Publication Number Publication Date
KR20200124585A KR20200124585A (ko) 2020-11-03
KR102351376B1 true KR102351376B1 (ko) 2022-01-13

Family

ID=72940782

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020190048108A KR102351376B1 (ko) 2019-04-24 2019-04-24 가중치 비트폭을 탄력적으로 적용할 수 있는 가중치 셀

Country Status (2)

Country Link
KR (1) KR102351376B1 (ko)
WO (1) WO2020218673A1 (ko)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20210015073A (ko) * 2019-07-31 2021-02-10 삼성전자주식회사 강유전성 물질을 포함하는 반도체 소자, 이를 포함하는 뉴로모픽 회로 및 뉴로모픽 컴퓨팅 장치

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20190108437A1 (en) * 2017-10-10 2019-04-11 Fu-Chang Hsu Two and three-dimensional neural network arrays

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8694452B2 (en) * 2010-07-07 2014-04-08 Qualcomm Incorporated Methods and systems for CMOS implementation of neuron synapse

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20190108437A1 (en) * 2017-10-10 2019-04-11 Fu-Chang Hsu Two and three-dimensional neural network arrays

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
"Low-Power, adaptive Neuromorphic Systems: Recent Progress and Future Directions", IEEE JOURNAL ON EMERGING AND SELECTED TOPICS IN CIRCUITS AND SYSTEMS VOL. 8 NO. 1(pp. 6-27), 2018.
"Perspective: A review on memristive hardware for neuromorphic computation", Journal of Applied Physics(pp. 1-13), 2018.10.05.*
"Technology Aware Training in Memristive Neuromorphic Systems based on non-ideal Synaptic Crossbars", IEEE(pp. 1-10), 2017.

Also Published As

Publication number Publication date
WO2020218673A1 (ko) 2020-10-29
KR20200124585A (ko) 2020-11-03

Similar Documents

Publication Publication Date Title
US11361216B2 (en) Neural network circuits having non-volatile synapse arrays
CN109214510B (zh) 神经形态多位式数字权重单元
US11416744B2 (en) Max pooling processor based on 1T1R memory
KR20180116094A (ko) 뉴로모픽 컴퓨팅을 위한 모놀리식 멀티비트 웨이트 셀
TWI699711B (zh) 記憶體裝置及其製造方法
TWI751403B (zh) 具有非揮發性突觸陣列的神經網路電路及神經晶片
Choi et al. AND flash array based on charge trap flash for implementation of convolutional neural networks
CN115191016A (zh) 深度学习人工神经网络中的模拟神经存储器单元的超精确调谐
US20220044103A1 (en) Matrix-vector multiplication using sot-based non-volatile memory cells
CN112101539A (zh) 一种存算一体电路及人工智能芯片
KR102351376B1 (ko) 가중치 비트폭을 탄력적으로 적용할 수 있는 가중치 셀
CN114861900A (zh) 用于忆阻器阵列的权重更新方法和处理单元
KR102448396B1 (ko) 가중치 비트폭을 탄력적으로 적용할 수 있는 커패시턴스 기반 뉴럴 네트워크
KR102427975B1 (ko) 트랜지스터로 가중치를 조절할 수 있는 컨덕턴스 기반 순차 행렬 곱셈 뉴럴 네트워크
KR102503403B1 (ko) 컨덕턴스와 펄스 폭으로 가중치를 조절할 수 있는 준 벡터 행렬 곱셈 뉴럴 네트워크
KR102365470B1 (ko) 트랜지스터-커패시터 쌍으로 가중치를 조절할 수 있는 커패시턴스 기반 순차 행렬 곱셈 뉴럴 네트워크
TW202305670A (zh) 神經網路運算裝置及其運算方法
KR20210032064A (ko) 펄스 횟수를 입력 신호에 대응시키고 전압으로 가중치를 조절하는 커패시턴스 기반 행렬 곱셈 뉴럴 네트워크
KR20220047016A (ko) 뉴럴 네트워크 장치
JPS63261874A (ja) 半導体集積回路

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