KR20200110701A - 비휘발성의 시냅스 배열을 가지는 신경망 회로 - Google Patents

비휘발성의 시냅스 배열을 가지는 신경망 회로 Download PDF

Info

Publication number
KR20200110701A
KR20200110701A KR1020207024195A KR20207024195A KR20200110701A KR 20200110701 A KR20200110701 A KR 20200110701A KR 1020207024195 A KR1020207024195 A KR 1020207024195A KR 20207024195 A KR20207024195 A KR 20207024195A KR 20200110701 A KR20200110701 A KR 20200110701A
Authority
KR
South Korea
Prior art keywords
line
electrically connected
transistor
input signal
neural network
Prior art date
Application number
KR1020207024195A
Other languages
English (en)
Other versions
KR102567160B1 (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
Priority claimed from US16/196,617 external-priority patent/US11361215B2/en
Application filed by 아나플래시 인코포레이티드 filed Critical 아나플래시 인코포레이티드
Publication of KR20200110701A publication Critical patent/KR20200110701A/ko
Application granted granted Critical
Publication of KR102567160B1 publication Critical patent/KR102567160B1/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
    • 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/048Activation functions
    • G06N3/0481
    • 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
    • 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
    • G11C11/00Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor
    • G11C11/56Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using storage elements with more than two stable states represented by steps, e.g. of voltage, current, phase, frequency
    • G11C11/5614Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using storage elements with more than two stable states represented by steps, e.g. of voltage, current, phase, frequency using conductive bridging RAM [CBRAM] or programming metallization cells [PMC]
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C11/00Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor
    • G11C11/56Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using storage elements with more than two stable states represented by steps, e.g. of voltage, current, phase, frequency
    • G11C11/5685Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using storage elements with more than two stable states represented by steps, e.g. of voltage, current, phase, frequency using storage elements comprising metal oxide memory material, e.g. perovskites
    • 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
    • G11C13/0028Word-line or row 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/003Cell access
    • 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/004Reading or sensing circuits or methods
    • 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
    • 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/0097Erasing, e.g. resetting, circuits or methods
    • 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
    • G11C2013/0092Write characterized by the shape, e.g. form, length, amplitude of the write pulse
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C2213/00Indexing scheme relating to G11C13/00 for features not covered by this group
    • G11C2213/70Resistive array aspects
    • G11C2213/79Array wherein the access device being a transistor
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C2213/00Indexing scheme relating to G11C13/00 for features not covered by this group
    • G11C2213/70Resistive array aspects
    • G11C2213/82Array having, for accessing a cell, a word line, a bit line and a plate or source line receiving different potentials

Landscapes

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

Abstract

본 발명은 비휘발성 신경망의 시냅스 회로를 개시한다. 시냅스는 기준 신호 라인입력 신호 라인; 기준 신호 라인; 출력 라인 및 출력 신호를 생성하기위한 셀. 셀은 입력 신호 라인에 전기적으로 연결된 게이트를 갖는 상부 선택 트랜지스터; 및 일단이 상기 상부 선택 트랜지스터에 직렬로 연결되고 타단이 상기 기준 신호 라인기준 신호 라인에 전기적으로 연결되는 저항변화소자를 포함한다. 저항변화소자의 값은 출력 신호의 크기를 상부 선택 트랜지스터 변경하도록 프로그래밍 할 수 있다. 상부 선택 트랜지스터의 드레인은 제1 출력 라인에 전기적으로 연결된다.

Description

비휘발성의 시냅스 배열을 가지는 신경망 회로
본 발명은 신경망 회로에 관한 것으로, 보다 상세하게는 아날로그 값들을 사용하는 비휘발성 시냅스어레이들을 가진 신경망 회로에 관한 것이다.
인공신경망(ANN; Artificial Neural Network)은 인간 두뇌의 계산 모델을 모방한 신경망이다. 신경망은 많은 뉴런들이 그들 사이의 시냅스를 통해 서로 연결된 것으로 설명될 수 있다. 연결의 강도 또는 각 시냅스의 가중치 파라미터는 훈련 가능한 파라미터로 학습 프로세스를 통해 조정될 수 있다. 최근 ANN들을 이용한 인공지능(AI)은 시각 및 음성 감지/인식, 언어번역, 게임, 의료의사결정, 재무 또는 일기예보, 드론, 자율주행차 등과 같은 다양한 분야에 적용되고 있다.
전통적으로, 신경망의 계산은 다수의 중앙처리장치(CPUs; Central Processing Units) 및/또는 그래픽처리장치(GPUs; Graphics Processing Units)를 갖는 고성능 클라우드 서버를 요구한다. 계산의 복잡성이 모바일 장치의 제한된 전력과 계산자원으로 인하여 AI 프로그램을 로컬로 실행하는 것을 금지시키기 때문이다. 전용 CMOS(Complementary Metal-O×ide-Semiconductor) 로직으로 신경망의 계산 속도를 높이는 기존의 다른 ASIC(application-specific integrated circuit)나 FPGA(field-programmable gate array) 접근방식은 일반적인 CPU 및 GPU 기반의 접근 방식에 비해 전력 효율적일 수 있다. 그러나 여전히 훈련된 가중치 파라미터가 저장되어 있는 별도의 오프-칩 비휘발성메모리(NVM)와 데이터를 송수신하기 위해 불필요한 전력 및 레이턴시(latency)를 낭비한다. 따라서, 계산 자원을 상당히 적게 소비하는 신경망 회로에 대한 요구가 있다.
본 발명의 다른 실시예에 따라, 비휘발성 신경망의 시냅스 회로는 입력 신호 라인, 기준 신호 라인, 출력 라인 및 출력 신호를 생성하기위한 셀을 포함한다. 셀은 입력 신호 라인에 전기적으로 연결된 게이트를 갖는 상부 선택 변환기, 및 일단이 상부 선택 트랜지스터에 직렬로 연결되고 다른 단부가 기준 신호 라인에 전기적으로 연결된 저항변화소자를 포함한다. 저항 변화 요소의 값은 출력 신호의 크기를 변경하도록 프로그래밍 할 수 있다. 상부 선택 트랜지스터의 드레인은 출력 라인에 전기적으로 연결된다.
본 발명의 다른 실시예에 따라, 시냅스 회로는 제1 및 제2 입력 신호 라인, 기준 신호 라인, 제1 및 제2 출력 신호 라인, 제1 및 제2 셀 및 교차 결합 래치 회로를 포함한다. 교차 결합 래치 회로는 제1 및 제2 인버터, 제1 및 제2 신호 노드를 포함한다. 제1 인버터의 입력 단자는 제1 신호 노드에서 제2 인버터의 출력 단자에 연결되고 제2 인버터의 입력 단자는 제2 신호 노드에서 제1 인버터의 출력 단자에 연결된다. 각 셀은 게이트에서 제1 입력 신호 라인에 전기적으로 연결된 제1 상부 선택 트랜지스터, 및 제2 입력 신호 라인에 연결된 제2 상부 선택 트랜지스터를 포함한다. 제1 및 제2 상부 선택 트랜지스터의 소스 단자는 공통노드에 연결된다. 제1 셀에서, 제1 및 제2 상부 선택 트랜지스터의 드레인 단자는 각각 제1 및 제2 출력 신호 라인에 연결된다. 제2 셀에서, 드레인 단자는 제1 상부 선택 트랜지스터가 제2 출력 라인에 연결되고 제2 상부 선택 트랜지스터가 제1 출력 라인에 연결되어 반전된다. 제1 셀의 공통노드는 교차 결합 래치 회로의 제1 신호 노드에 연결되고 제2 셀의 공통노드는 교차 결합 래치 회로의 제2 신호 노드에 연결된다. 기준 신호 라인. 교차 결합된 래치 회로의 제1 및 제2 인버터에 결합된다.
실시예에서의 이러한 프라이버시 강화 신경망은 창의적인 개인 장치에 사용될 수 있다. 예를 들어, 본 발명의 일 실시예에 따르면 새로운 개인적인 작업, 질문 또는 답변이 온-칩 비휘발성 신경망을 사용하는 휴대용 교육 장치 또는 스마트 장난감에서 상호작용에 의하여 생성될 수 있다. 본 발명의 일 실시예는 오프 칩 액세스를 제한하면서 이미지 또는 사운드 인식을 통해 개인을 식별하는 데 유용할 수 있다. 특히 홈케어나 차일드케어 기기는 음성을 인식해야 하는 사람의 수가 제한되어 있어 매우 복잡한 신경망 모델이 필요하지 않을 수 있다. 그러나 이러한 장치에는 높은 수준의 개인화가 필요할 수 있으며 개인 정보에 대한 엄격한 요구 사항이 있을 수 있다. 또한, 이러한 유형의 애플리케이션을 위한 핵심 신경망 계층은 중요한 정보의 오프-칩 통신없이 실행될 수 있기 때문에, 본 발명의 일 실시예에 따른 온-칩 비휘발성 신경망은 군사 장치 또는 네트워크 방화벽의 보안을 향상시킬 수 있다.
본 발명의 다른 측면에서, 제안된 온-칩 비휘발성 신경망 시스템은 개인화 정보를 온-칩에 저장 및 계산함으로써 보안 개인화 비전/동작/음성 인식 장치에 사용될 수 있다. 예를 들어, 모든 신경망 계산은 온-칩으로 계산되기 때문에 장치는 개인적으로 훈련된 신경망 매개 변수를 칩 외부로 전송하지 않고도 특정 사람의 제스처 또는 음성을 인식할 수 있다. 이러한 시각/동작/음성 인식 신경망 장치는 부피가 큰 사용자 인터페이스 장치(예: PC의 키보드 또는 마우스, 텔레비전의 원격 컨트롤러)를 대체할 수 있다. 예를 들어, 키보드 터치 디스플레이는 각 텍스트 문자에 대한 장치 소유자의 손 제스처를 인식할 수 있는 신경망 엔진으로 대체될 수 있다. 개인화된 정보를 온-칩 비휘발성 신경망에 저장함으로써 특정 사람만 장치와 상호 작용할 수 있다.
또한, 제안된 온-칩 비휘발성 신경망은 CPU, 메모리 및 센서와 같은 다른 SoC 빌딩 블록의 성능과 신뢰성을 향상시키기 위해 활용될 수 있다. 예를 들어, 트랜지스터의 노화 효과나 온도와 같은 다양한 작동 조건으로 인해 작동 전압 및 주파수는 SoC의 수명 동안 순응적으로 제어될 필요가 있다. 이러한 매개 변수의 수동 조정은 신경망이 최적화하기에는 어려운 작업이다. 그러나, 오프-칩 신경망 가속기는 성능 요구 사항을 충족하지 못하고 과도한 추가 전력이 필요할 수 있다. 비휘발성 신경망은 주어진 성능 및 전력 요구 사항에 대해 자체 칩의 다른 컴포넌트의 이러한 매개 변수를 최적화하는 데 사용될 수 있다.
본 발명의 실시예를 참조할 것이며, 그 예는 첨부 도면에 도시될 수 있다. 이러한 도면들은 제한적인 것이 아니라 예시적인 것으로 의도된다. 본 발명은 이러한 실시예들과 관련하여 일반적으로 설명되지만, 본 발명의 범위를 이러한 특정 실시예들로 제한하고자 하는 의도가 아님을 이해해야 한다.
도 1은 본 발명의 실시예에 따라 신경망의 개략도를 나타낸다.
도 2는 본 발명의 실시예에 따라 시냅스 어레이의 개략도를 나타낸다.
도 3은 본 발명의 실시예에 따라 시냅스의 개략도를 나타낸다.
도 4는 본 발명의 실시예에 따라 또 다른 시냅스의 개략도를 나타낸다.
도 5는 본 발명의 실시예에 따라 또 다른 시냅스의 개략도를 나타낸다.
도 6은 본 발명의 실시예에 따라 또 다른 시냅스의 개략도를 나타낸다.
도 7은 본 발명의 실시예에 따라 또 다른 시냅스의 개략도를 나타낸다.
도 8은 본 발명의 실시예에 따라 또 다른 시냅스의 개략도를 나타낸다.
도 9a 내지 9b는 임계전압(VTH)을 프로그래밍하기 위한 종래 방법과 본 발명의 실시예에 따른 방법을 비교하여 나타낸다.
도 10a 내지 10b는 본 발명의 실시예에 따라 플로팅게이트노드의 임계전압(VTH)을 프로그래밍하기 위한 또 다른 방법을 나타낸다.
도 11은 본 발명의 실시예에 따라 플로팅게이트노드의 임계전압(VTH)을 프로그래밍하기 위한 예시적인 프로세스의 흐름도를 나타낸다.
도 12a 내지 12c는 본 발명의 실시예에 따라 차동 시그널링을 나타낸다.
도 13은 본 발명의 실시예에 따라 신경망을 포함하는 칩(chip)의 개략도를 나타낸다.
도 14는 본 발명의 실시예에 따라 비휘발성 시냅스어레이를 포함하는 신경망의 개략도를 나타낸다.
도 15는 본 발명의 실시예에 따른 다른 시냅스의 개략도를 나타낸다.
도 16은 본 발명의 실시예에 따라 2진 곱셈을 수행하기 위해 도 15에 도시된 입력 및 출력 라인의 신호를 표로 나타낸 것이다.
도 17은 본 발명의 실시예에 따른 다른 시냅스의 개략도를 나타낸다.
도 18은 본 발명의 실시예에 따른 다른 시냅스의 개략도를 나타낸다.
도 19는 본 발명의 실시예에 따른 다른 시냅스의 개략도를 나타낸다.
도 20은 본 발명의 실시예에 따른 다른 시냅스의 개략도를 나타낸다.
도 21은 본 발명의 실시예에 따른 다른 시냅스의 개략도를 나타낸다.
도 22는 본 발명의 실시예에 따른 다른 시냅스의 개략도를 나타낸다.
도 23은 종래 기술에 따른 신경망 시스템의 개략도를 나타낸다.
도 24는 본 발명의 실시예에 따른 온-칩 비휘발성 신경망 및 외부 신경망 가속기 장치를 포함하는 SoC로 구성된 계층화 된 신경망 컴퓨팅 시스템의 개략도를 나타낸다.
도 25는 본 발명의 실시예에 따른 다수의 SoC들로 구성된 분산 신경망 시스템의 개략도를 나타낸다.
도 26은 본 발명의 실시예에 따른 논리 친화적 NVM 통합 신경망 시스템의 개략도를 나타낸다.
도 27은 본 발명의 실시예에 따른 다른 논리 친화적 NVM 통합 신경망 시스템의 개략도를 나타낸다.
다음의 설명에서 설명의 목적으로 본 발명의 이해를 제공하기 위하여 특정 세부사항들이 설명된다. 그러나 본 발명이 이러한 세부사항 없이도 실시될 수 있다는 것은 당업자에게 명백할 것이다. 당업자는 후술하는 본 발명의 실시예가 다양한 방법으로 그리고 다양한 수단을 사용하여 수행될 수 있음을 인식할 것이다. 당업자는 또한 본 발명이 유용성을 제공할 수 있는 추가적인 분야들과 마찬가지로, 추가적인 수정, 응용 및 실시예가 그 범위 내에 있음을 인식할 것이다. 따라서, 후술하는 실시예들은 본 발명의 특정 실시예들을 예시하고 본 발명을 모호하게 하는 것을 피하도록 의도된다.
본 명세서에서 언급된 "일 실시예" 또는 "실시예"는 실시예와 관련하여 설명된 특정 특징, 구조, 특성 또는 기능이 본 발명의 적어도 하나의 실시예에 포함됨을 의미한다. 본 명세서의 여러 곳에서 "일 실시예에서", "실시예에서" 등의 어구로 나타나는 것은 모두 동일한 실시예를 지칭하는 것은 아니다.
도 1은 본 발명의 실시예들에 따라 신경망(100)의 개략도를 나타낸다(명세서 전반에 걸쳐 유사한 참조번호들은 유사한 요소들을 나타낸다). 도시된 바와 같이, 신경망(100)은 5개의 뉴런어레이층(또는 간략히 뉴런층)(110, 130, 150, 170, 190), 및 시냅스어레이층(또는 간략히 시냅스층)(120, 140, 160, 180)을 포함할 수 있다. 뉴런층들의 각각(예를 들어, 110)은 적절한 수의 뉴런들을 포함할 수 있다. 도 1에서 단 5개의 뉴런층과 4개의 시냅스층이 도시되어 있다. 그러나 신경망(100)이 다른 적절한 수의 뉴런층들을 포함할 수 있고 시냅스층이 2개의 인접한 뉴런층들 사이에 배치될 수 있다는 것은 당업자에게 명백하다.
뉴런층(예를 들어, 110) 내의 각각의 뉴런(예를 들어, 112a)은 시냅스층(예를 들어, 120)의 m개의 시냅스들을 통해 다음의 뉴런어레이층(예를 들어, 130)의 하나 이상의 뉴런들(예를 들어, 132a ~ 132m)에 연결될 수 있다. 예를 들어, 뉴런층(110)의 뉴런 각각이 뉴런층(130)의 모든 뉴런에 전기적으로 연결되면, 시냅스층 (120)은 n×m 시냅스들을 포함할 수 있다. 실시예에서, 각 시냅스는 두 뉴런들 간의 연결 강도를 나타내는 훈련 가능한 가중치 파라미터(w)를 가질 수 있다.
실시예에서, 입력뉴런신호(Ain)와 출력뉴런신호(Aout) 사이의 관계는 다음 수학식의 활성화 함수로 나타내어질 수 있다.
[수학식 1]
Aout=f(W × Ain + Bias)
여기서, Ain 및 Aout은 각각 시냅스층에 대한 입력신호와 시냅스층으로부터의 출력신호를 나타내는 행렬이고, W는 시냅스층의 가중치를 나타내는 행렬이며, Bias는 Aout에 대한 바이어스 신호를 나타내는 행렬이다. 실시예들에서, W 및 Bias는 훈련 가능한 파라미터일 수 있고, 논리 친화적 비휘발성 메모리(NVM)에 저장 될 수 있다. 예를 들어, 훈련/기계 학습 프로세스는 W 및 Bias를 결정하기 위해 알려진 데이터와 함께 사용될 수 있다. 실시예들에서, 함수 f는 sigmoid, tanh, ReLU, leaky ReLU 등과 같은 비선형 함수일 수 있다. 실시예들에서, Aout은 (W × Ain + Bias)가 특정 임계값보다 클 때 활성화될 수 있다.
예로서, 수학식 1에 나타낸 관계는 2개의 뉴런을 갖는 뉴런층(110), 시냅스층(120) 및 3개의 뉴런을 갖는 뉴런층(130)으로 설명될 수 있다. 이 예에서, 뉴런어레이층(110)으로부터의 출력신호를 나타내는 Ain은 2행×1열의 행렬로 표현될 수 있고, 시냅스층(120)으로부터의 출력신호를 나타내는 Aout은 3행×1열의 행렬로 표현될 수 있으며, 시냅스층(120)의 가중치를 나타내는 W는 6개의 가중치를 가진 3행×2열의 행렬로 표현될 수 있고, 뉴런층(130)에 부가된 바이어스 값을 나타내는 Bias는 3행×1열의 행렬로 표현될 수 있다. 수학식 1의 (W × Ain + Bias)의 각 요소에 적용되는 비선형 함수 f는 Aout의 각 요소의 최종 값을 결정할 수 있다. 다른예로서, 뉴런어레이층(110)은 센서들로부터 입력신호를 수신할 수 있고, 뉴런어레이층(190)은 응답 신호를 나타낼 수 있다.
실시예에서, 신경망(100)에는 수많은 뉴런들과 시냅스들이 있을 수 있으며, 수학식 1에서의 행렬 곱셈 및 합산은 많은 양의 컴퓨팅 자원을 소비할 수 있는 프로세스일 수 있다. 종래의 메모리 내 처리 컴퓨팅 접근법에서, 컴퓨팅 장치는 디지털 논리 및 산술 컴포넌트를 사용하는 것보다 오히려 아날로그 전기값을 사용하여 NVM 셀 어레이 내에서 행렬 곱셈을 수행한다. 이러한 종래 설계는 CMOS 로직과 NVM 컴포넌트들 사이의 통신을 줄여 계산 부하를 줄이고 전력 요구량을 줄이는 것을 목표로 한다. 그러나 이러한 종래 접근법들은 대규모 NVM 셀 어레이에서 전류 입력 신호 경로에 대한 저항성분이 크기 때문에 각 시냅스에 대한 전류 입력 신호에 큰 변화가 있는 경향이 있다. 또한, 큰 어레이에서 절반-선택된(half-selected) 셀을 통한 누설전류는 프로그래밍 된 저항 값을 변경하여, 원하지 않는 프로그램 교란과 신경망 계산 정확도의 저하를 야기한다.
종래 접근법과 다르게, 실시예들에서, 전력 효율적인 신경망은 차동 구조를 가진 논리 친화적 비휘발성 시냅스에 기초할 수 있으며, 여기서 차동 구조는 선택트랜지스터 및 논리 친화적 NVM을 포함할 수 있다. 실시예들에서, 완전 차동 시냅스 구조는 곱셈기(multiplier)로서 시냅스 회로의 동작 범위를 넓힐 수있다. 종래의 구조들과 비교하여 보면, 실시예들에서 약간의 곱셈 오류는 훈련된 가중치 파라미터의 특정 레벨의 양자화 잡음을 보상하는데 유리할 수있다.
후술하는 바와 같이, 실시예들에서, 시냅스층들(120, 140, 160, 180)의 각 시냅스로의 입력 신호는 시냅스의 선택트랜지스터의 게이트 단자로 향하여, 곱셈 잡음을 억제할 수 있다. 실시예들에서, 곱셈기 전류는 대략 게이트 단자 전압과 가변저항이나 NVM의 저항 레벨을 곱한 것일 수 있다.
도 2는 본 발명의 실시예들에 따른 시냅스어레이(200)의 개략도를 나타낸다. 도시된 바와 같이, 시냅스어레이(200)는 행과 열로 배열된 비휘발성 시냅스들(210)과, 열선택트랜지스터(263)에 각각 전기적으로 연결된 포지티브출력전류라인들(Bit Lines)(266)과, 열선택트랜지스터(268)에 각각 전기적으로 연결된 네거티브출력전류라인들(Bit Line Bar lines)(267)을 포함할 수 있다. 실시예들에서, 열선택트랜지스터(263)의 드레인 단자는 감지회로(250)의 포지티브전류포트(241)에 전기적으로 연결될 수 있고, 열선택트랜지스터(268)의 드레인 단자는 감지회로(250)의 네거티브전류포트(242)에 전기적으로 연결될 수 있다.
실시예들에서, 각각의 비휘발성시냅스(210)는 하나의 포지티브 가중치와 하나의 네거티브 가중치를 저장할 수있다. 실시예들에서, 각각의 비휘발성시냅스(210)는, 기준전압입력(201)을 수신하기 위한 신호라인(또는 동일하게 기준 신호 라인)(예를 들어, SL1)(264)과, 신호전압입력(202)을 수신하기 위한 워드라인(또는 동일하게 입력신호라인)(예를 들어, WL1)(265)과, 포지티브전류출력(203)을 출력하기 위한 포지티브출력라인(예를 들어, BL1)(266)과, 네거티브전류출력(204)을 출력하기 위한 네거티브출력라인(예를 들어, BLB1)(267)을 포함한다.
실시예들에서, 신호전압입력(202) 및 기준전압입력(201) 각각은 포지티브 및 네거티브 가중치 모두와 관련될 수 있고, 포지티브전류출력(203)은 포지티브 가중치와 관련될 수 있고, 네거티브 전류출력(204)은 네거티브 가중치와 관련될 수 있다.
실시예들에서, 각각의 비휘발성시냅스(210)에 저장된 포지티브(또는 네거티브)의 가중치는 가변 저항값의 역수로 표현될 수 있고, 신호전압입력(202) 및 기준전압입력(201) 값들은 전기적 전압 값일 수있다. 실시예들에서, 포지티브전류출력(203)의 값은 포지티브 가중치 값과 신호전압입력(202)을 곱한 결과일 수 있고, 네거티브전류출력(204)의 값은 네거티브 가중치 값과 신호전압입력(202)을 곱한 결과일 수 있다.
도 2에 도시된 바와 같이, 비휘발성 시냅스어레이(200)의 각 행은 기준전압라인(SL, 264) 및 신호전압라인(WL, 265)을 공유할 수 있으며, 여기서 각 SL은 상응하는 한 행의 비휘발성 시냅스들에 기준전압입력(201)을 제공할 수 있고, 각 WL은 상응하는 한 행의 비휘발성 시냅스들에 신호전압입력(202)을 제공하여, 한 행의 비휘발성 시냅스들은 실질적으로 동일한 신호전압입력 및 동일한 기준전압입력을 수신할 수 있다.
전술한 바와 같이, 비휘발성 시냅스어레이(200)의 각 열은 포지티브출력전류라인(BL)(266)과 네거티브출력전류라인(BL-Bar)(267)을 공유할 수 있다. 즉 한 열의 시냅스들의 각각의 포지티브전류출력(203)은 상응하는 BL(266)에 의해 수집될 수 있고, 한 열의 시냅스들의 각각의 네거티브전류출력(204)은 상응하는 BL-Bar라인(267)에 의해 수집될 수 있다. 따라서, BL라인(266) 상의 전기적 전류는 한 열의 시냅스들로부터의 포지티브 전기적 출력전류(203)의 합일 수 있다. 유사하게, 실시예에서, BL-Bar라인(267) 상의 전기적 전류 값은 한 열의 시냅스들로부터의 네거티브 전기적 출력전류(204)의 합일 수 있다.
실시예들에서, 각각의 포지티브출력전류라인(BL)(266)은 상응하는 열선택트랜지스터(263)의 소스 단자에 전기적으로 연결될 수 있고, 각각의 네거티브출력전류라인(BL-Bar)(267)은 상응하는 열선택트랜지스터(268)의 소스 단자에 전기적으로 연결될 수 있다. 실시예들에서, 한 쌍의 BL 및 BL-Bar 라인(263, 268)의 열선택트랜지스터는 외부의 열 선택 회로(도 2에 도시되지 않음)로부터 게이트 단자에 동일한 열 선택 신호를 수신할 수 있다. 실시예들에서, 열선택트랜지스터(263)의 드레인 단자의 라인은 감지회로(250)의 포지티브전류입력(241)에 전기적으로 연결될 수 있다. 실시예들에서, 열선택트랜지스터(268)의 드레인 단자의 라인은 네거티브전류입력(242)에 전기적으로 연결될 수 있다.
실시예들에서, 포지티브전류포트(241)의 전기적인 전류 값(IBL)(261)은 각 열선택트랜지스터(263) 상에서 열 선택 신호를 수신하는 포지티브출력전류 BL (266)의 값일 수 있다. 마찬가지로, 네거티브전류입력(242)의 전기적 전류 값(IBL-bar)(262)은 각 열선택트랜지스터(268) 상에서 열 선택 신호를 수신하는 네거티브출력전류라인 BL-Bar(267)일 수있다.
실시예들에서, 시냅스(210)의 하나 이상의 행은 WL(265)들 상에 고정된 입력 신호 전압을 가질 수 있고, 해당 행의 시냅스들은 해당 열에 대한 바이어스 값을 저장할 수 있다. 실시예들에서, 시냅스들의 어레이는 수학식 1의 행렬 곱셈을 구현할 수 있다.
W × Ain + Bias
여기서, W는 시냅스어레이일 수 있고, Ain 행렬은 WL 입력을 나타낸다.
실시예들에서, 각각의 비휘발성시냅스(210)는 네거티브 및 포지티브의 가중치를 저장하는 2 개의 회로(또는 동일하게 셀)를 가질 수 있다. 실시예들에서, 전술한 바와 같이, 가중치는 각각 가변저항의 역수 값, l / Rn = W_neg 및 l / Rp = W_pos으로 표현될 수 있다. 어레이(200)의 시냅스들의 각 행은 입력신호를 전기전압, Ain으로 수신할 수 있다. 입력신호에 응답하여, 어레이(200)의 각 시냅스는 BL(예를 들어, BL0(266))을 통한 포지티브 출력전류와, BLB(예를 들어, 267)를 통한 네거티브 출력전류를 생성할 수 있으며, 여기서 포지티브 출력전류 BLc의 값은 BLc = Ain × W_pos로 표현되고 네거티브 출력전류 BLBc는 BLBc = Ain × W_neg로 표현될 수 있다.
실시예들에서, 신경망(100)의 각 시냅스층에 대한 가중치(W)는 별도의 훈련단계에서 결정(계산 및 조정)될 수 있다. 그 다음, 추론단계 동안 입력신호들(Ain)은 신경망(100)에 인가될 수 있으며, 여기서 미리 결정된 가중치들은 출력값들을 생성하기 위해 사용될 수있다. 실시예들에서, 훈련단계 동안 결정될 수 있는 가중치는 추론단계 동안 변경되지 않을 수 있다.
실시예들에서, 전술한 바와 같이, BL(예를 들어, BLi)은 시냅스어레이(200)의 한 열에서 시냅스들의 출력라인들 모두에 전기적으로 연결될 수 있고, BL-bar라인(예를 들어, BLBi)은 시냅스어레이(200)의 시냅스들의 출력라인들 모두에 전기적으로 연결될 수 있다. 이러한 구성은 각각의 BL(266)(또는 BLB(267)) 상의 전류값을 어레이(200) 내 상응하는 열의 시냅스들의 개별적으로 계산된 전류 값들의 합이 되도록 만들 수 있다. 실시예들에서, BLn 라인 및 BLBn 라인의 출력전류는 다음과 같이 표현될 수 있다.
[수학식 2a]
BLn = ∑(W_pos-row × Ain-row), n-열의 해당 행들에 대하여
[수학식 2b]
BLBn = ∑(W_neg-row × Ain-row), n-열의 해당 행들에 대하여
실시예들에서, 어레이(200)의 하나 이상의 행은 고정된 입력신호전압을 가질 수 있고, 해당 행의 시냅스들은 해당 열에 대한 바이어스 값을 저장할 수 있다. 이 경우 BLn 및 BLBn 상의 총 전기적 전류는 다음과 같이 표현될 수 있다.
[수학식 3a]
BLn = ∑(W_pos-row × Ain-row) + bias_pos
[수학식 3b]
BLBn = ∑(W_neg-row × Ain-row)+ bias_neg
실시예들에서, 감지회로(250)에서 시냅스어레이로부터의 전류입력신호(ISig = IBL(261) 또는 IBLB(262))는 CTIA(Capacitive Trans Impedance Amplifier)를 사용하여 전압신호(Vsig)로 변환될 수 있고, 추가로 ADC(Analog Digital Converter)를 사용하여 디지털신호를 생성하도록 처리될 수 있다. 실시예들에서, ADC는 오프셋 소거 열 비교기와 카운터를 사용하는 단일기울기 열 ADC 구조(single-slope column ADC architecture)를 가질 수 있다. 이러한 구조는 파이프 라인 또는 연속근사 ADC들과 같은 다른 ADC 구조와 비교하여 최소면적 및 최소전력손실을 사용할 수 있다.
실시예들에서, 신경망(100)의 각 시냅스층(예를 들어, 120)은 BL(266) 및 BLB(267)에 전기적으로 연결될 수 있고, BL 및 BLB 라인 상의 출력전류를 전기적으로 처리할 수 있는 전기적 컴포넌트(도 2에 도시되지 않음)를 가질 수 있다. 예를들어, 전기적인 컴포넌트는 차동적 감지를 제공하고, 출력전류신호를 전압신호로 변환하며, 추가로 디지털신호로 변환하고, 누산기에서 디지털신호들을 합산할 수 있다. 다른 예에서, 전기적 컴포넌트들은 합산된 값에 대하여 정규화 및 활성화와 같은 다른 다양한 처리 동작들을 수행함으로써, 수학식 1의 Aout에 대한 활성화 함수를 구현할 수 있다. 실시예들에서, 최종 Aout은 데이터 버퍼에 저장될 수 있고 신경망(100)에서 다음 뉴럴어레이층에 대한 입력신호를 생성하는 데 사용될 수 있다.
실시예들에서, 별도의 회로(도 2에 도시되지 않음)가 다음과 같은 보조 기능 - (1) 신경망(100)의 논리적 뉴런-시냅스 구조를 시냅스어레이(200)의 물리적 주소 맵핑에 맵핑하는 라우터/제어기, (2) 입력신호를 구성에 따른 적절한 시냅스의 행으로 구동하는 구동회로, (3) 시냅스들의 하나 이상의 열을 공유하는 감지회로에 대한 열 선택을 제공하는 선택회로, (4) 시냅스들을 선택하기 위해 사용되는 기준 전압을 생성하는 전압발생기, 및 (5) 라우터제어기 및 감지회로(250)에 대한 구성을 저장하는 저장장치 - 을 수행하기 위해 신경망(100)에 포함될 수 있다.
도 3은 본 발명의 실시예들에 따른 시냅스(300)의 개략도를 나타낸다. 실시예들에서, 시냅스(300)는 도 2의 시냅스(210)로서 사용될 수 있다. 도시된 바와 같이, 시냅스(300)는 한 쌍의 입력트랜지스터(311, 312)와, 한 쌍의 비휘발성 저항변화소자(R_p(313), R_n(314))(이하, "비휘발성 저항변화소자"와 "저항"라는 용어는 혼용된다). 다르게 말하면, 시냅스(300)는 한 쌍의 1T-1R(1-트랜지스터 1-저항) 구조를 가질 수 있다. 실시예들에서, 저항 R_p(313) 및 R_n(314)은 논리 친화적 비휘발성 저항변화소자일 수 있다. 실시예들에서, 시냅스(300)는 2개의 셀(332, 334)을 가질 수 있고, 여기서 각 셀은 하나의 입력트랜지스터(311)(또는 312)와 저항 R_p(312)(또는 R_n(314))을 가질 수 있다.
실시예들에서, 논리 친화적 비휘발성 저항변화소자 R_p(313)(또는 R_n(314))는 시냅스(300)가 기억/저장할 수 있는 포지티브(또는 네거티브) 가중치 파라미터와 관련될 수 있다. 실시예들에서, 각각의 저항은 입력트랜지스터(예를 들어, 311)의 소스단자에 전기적으로 연결될 수 있고 기준 신호 라인(264)은 기준신호를 상기 저항에 인가할 수 있다. 실시예들에서, 워드라인(WL)(265)은 입력신호전압을 입력트랜지스터(예를 들어, 311)의 게이트단자에 인가할 수 있다.
실시예들에서, 저항값 R(= R_p 또는 R_n)은 훈련단계에서 저항변화소자로 프로그래밍될 수 있다. 시냅스입력신호가 WL(265)에 인가될 때, 시냅스출력전류는 이전 뉴런으로부터의 입력값 Ain에 가중치(1/R로 표현)를 곱한 것으로 근사화할 수 있고, 여기서 Ain은 WL(265) 상의 전압으로 나타낼 수있다.
실시예들에서, 시냅스어레이(200)에 저장된 신경망 파라미터는 대략 유사한 수의 포지티브 및 네거티브의 가중치 파라미터를 가질 수 있다. 어레이(200)에서 사용되지 않는 저항소자는 기 설정된 값보다 높은 저항 값을 갖도록 프로그래밍될 수 있다. 셀의 출력전류가 셀의 BL(또는 BLB) 상의 출력전류에 실질적으로 추가되지 않도록, 각 미사용 저항소자를 통한 전기적 전류는 실질적으로 0이어야 한다. 따라서, 계산상 미사용 저항소자의 영향이 최소화되고 전력소비가 감소된다. 훈련된 가중치 파라미터는 신경망 계산의 정확도를 크게 저하시키지 않으면서 저항변화소자로 양자화 및 프로그래밍될 수 있다. 저항 R_p(313)(또는 R_n(314))의 저항값 R이 훈련 단계에서 프로그래밍되고 스케일링된 시냅스입력신호 WL들이 WL(265)을 통해 인가될 때, BL(266)(또는 BLB(267)) 상의 시냅스출력전류 IC는 수학식 4 및 5로 나타내어질 수 있다.
[수학식 4]
dIC/dWL = ~ gm / (1 + gm*R) = ~ l/R (R이 l/gm보다 충분히 클 때)
여기서, gm은 입력트랜지스터의 컨덕턴스이다.
[수학식 5]
IC = ~ WL / R = ~ w Ain (여기서 w = l/R, Ain = WL 이다)
여기서, w와 Ain은 그것들을 곱한결과 IC를 근사적으로 제공할 수 있다.
수학식 5에 나타난 바와 같이, 출력전류 IC는 입력신호(입력전압 Ain)와 가중치(w)의 곱으로 근사화할 수 있다. 종래의 시스템과는 달리, 시냅스(300)에서 발생하는 수학식 5의 아날로그 곱셈 연산은 복잡한 디지털 논리 게이트의 사용을 필요로 하지 않아서 시냅스 구조의 복잡성과 계산 자원의 사용량을 상당히 감소시킨다.
실시예들에서, 입력신호(Ain)는 이전 뉴런으로부터의 출력신호일 수 있고(도 1에 도시된 바와 같이), 입력트랜지스터(311)(또는 312)의 게이트로 유도될 수 있다. 입력신호(Ain)를 게이트로 유도하는 것은 큰 시냅스어레이의 저항성분에 의해 발생되는 노이즈를 최소화할 수 있다. 왜냐하면, 선택트랜지스터의 게이트에 정적전류가 흐르지 않기 때문이다. 대조적으로, 종래의 시스템에서, 입력신호는 시냅스의 선택기 또는 저항변화소자로 구동되는데, 이는 큰 어레이에서의 큰 저항성분 및 작동 중 정적전류 흐름으로 인해 각 시냅스에 대한 전류입력신호에 큰 변화가 발생하기 쉽다.
종래의 시스템에서, 저항변화소자를 프로그래밍할 때, 큰 어레이에서 절반-선택된(half-selected) 셀을 통한 누설전류는 미리 프로그램 된 저항값을 변경할 수 있어 원하지 않는 프로그램 장애가 발생할 수 있다. 대조적으로, 실시예들에서, 입력트랜지스터(311)(또는 312)는 큰 어레이에서 선택된 저항(313)(또는 314)으로만 유도되는 프로그램 펄스로 활성화될 수 있다. 따라서, 실시예들에서, 선택되지 않은 시냅스들은 선택된 시냅스들의 프로그래밍을 교란하지 않을 수 있으며, 여기서 선택된 시냅스들은 BL(또는 BLB) 및 SL 노드들에 적합한 바이어스 조건을 적용함으로써 프로그래밍될 수 있다.
제한하지 않은 예로서, 시냅스(200)의 어레이는 시냅스층(120)에 위치될 수 있고, 여기서 뉴런어레이층(110)의 이전 뉴런(예를 들어, 112a)으로부터의 출력신호는 시냅스어레이(200)의 시냅스(300)에 입력될 수 있고 BL(266) 및 BLB(267)의 출력신호는 뉴런어레이층(130)에서 다음 뉴런(예를 들어, 132a ~ 132m) 중 하나 이상에 입력될 수 있다.
실시예들에서, 저항(313)(또는 314)은 비휘발성 MRAM, RRAM, 또는 PRAM 또는 단일 폴리 내장 플래시 메모리와 같은 다양한 회로(또는 메모리)로 구현될 수 있으며, 여기서 회로는 저항의 역수로 표현될 수 있는 연관 파라미터를 기억(저장)하도록 프로그래밍될 수 있다. 실시예들에서, 곱셈 연산은 디지털 논리 및 산술 회로를 사용하지 않고 아날로그 값으로 시냅스 내에서 완료될 수 있다.
도 4는 본 발명의 실시예들에 따른 다른 시냅스(400)의 개략도를 나타낸다. 실시예들에서, 시냅스(400)는 도 3의 저항들(313 및 314)의 예시적인 구현을 나타낼 수 있다. 달리 말하면, 실시예들에서, 저항(313)은 도 4의 박스(452) 내의 컴포넌트들에 의해 구현될 수있다.
도 4에 도시된 바와 같이, 시냅스(400)는 한 쌍의 논리호환형 내장플래시메모리셀(432, 434)을 포함하며, 여기서 플래시메모리셀에서의 플로팅게이트노드 (FG_p, FG_n)는 이 시냅스(400)가 기억/저장하는 포지티브 및 네거티브의 가중치 파라미터 각각과 관련될 수 있다.
실시예들에서, WL(420) 상의 시냅스입력신호는 BL(406) 및 BLB(407) 상의 차동 시냅스출력전류(IBL, IBLB)를 유도할 수 있는 두 분기 사이에서 공유될 수 있다. 실시예들에서, 프로그램워드라인(또는 간략히 프로그램라인, PWL)(418), 쓰기워드라인(또는 간략히 쓰기라인, WWL)(416) 및 지우기워드라인(또는 간략히 지우기라인, EWL)(414)은 논리호환형 내장플래시메모리셀(432, 434)의 프로그램, 쓰기 및 지우기 동작을 위한 추가적인 제어 신호를 제공하는데 사용될 수 있다.
실시예들에서, 메모리셀들(432, 434)은 표준 로직 프로세스를 넘어 추가적인 프로세스 오버헤드(overhead)를 방지하는 로직 트랜지스터를 포함할 수 있다. 실시예들에서, PWL(418)에 직접 연결된 커플링 트랜지스터(422)(및 423)는 PWL(418)을 통해 제공되는 제어신호에 플로팅게이트노드(FG_p, FG_n)의 더 높은 결합을 위해 확대(upsized)될 수 있다. 실시예들에서, PWL(418)에 직접 연결된 커플링 트랜지스터(422)(또는 423)는 쓰기 트랜지스터(424)(또는 425)보다 상대적으로 더 클 수 있다. PWL(418) 및 WWL(416)로 높은 프로그램전압이 유도되는 경우, 메모리셀(432)(또는 434)은 BL(406)(또는 BLB(407))에 0V를 인가하고 FG_p로 전자를 주입함으로써, 선택되고 프로그래밍될 수 있다. 반면, 선택되지 않은 셀(434)(또는 432)은 VDD를 BLB(407)(또는 BL(406))에 인가하고 VDD를 WL(420)에 인가하여 선택되지 않은 셀(434)(또는 432)의 선택트랜지스터를 오프시킴으로써 프로그램이 금지될 수 있다. 이하, 선택트랜지스터라는 용어는 BL(406) 또는 BLB(407)에 전기적으로 연결된 게이트를 갖는 트랜지스터를 지칭한다.
실시예들에서, WWL(416)로만 높은 지우기전압이 유도되는 경우, 선택된 WL은 FG로부터 전자를 방출하는 것에 의하여 소거될 수있다. 선택되지 않은 WL들은 프로그램 및 지우기 작동 중 VDD보다 높은 전압으로 유도되지 않을 수 있다. 따라서 선택되지 않은 WL들에는 교란이 없다. 실시예들에서, FG 노드 전압은 PWL(418), WWL(416) 및 FG 노드에 저장된 전자들의 수에 대한 신호들의 함수일 수 있다. FG에 전기적으로 연결된 읽기 트랜지스터(예를 들어, 462)의 컨덕턴스는 PWL(418) 및 WWL(416)에서의 전압과 FG 노드에 저장된 전기적 전하를 제어함으로써 프로그램될 수 있다.
실시예들에서, 내장플래시셀(432)(또는 434)의 임계전압이 프로그래밍되었을 때, 그리고 스케일링된 시냅스입력신호가 WL(420)을 통해 제공될 때, 수학식 5가 대략적으로 충족될 수 있는 특정 임계전압 범위가 있을 수 있다. 여기서 셀출력전류(=IBL, IBLB)는 입력신호뿐만 아니라 프로그래밍된 가중치 파라미터에 비례한다.
실시예들에서, 신경망(100)은 랜덤 오차 또는 가중치 파라미터의 작은 변화에 강할 수 있다. 실시예들에서, 사전훈련된 가중치 파라미터(W)가 신경망(100)의 계산 중 양자화될 때, 신경망 성능 또는 추론 정확도는 곱셈 오차가 특정 범위 내에 있는 한 수학식 5의 약간의 곱셈 오차로 최적화될 수 있다. 또한, 제안된 근사 곱셈기로부터의 약간의 곱셈 오류는 신경망(100)의 훈련된 가중치 파라미터의 양자화 잡음을 보상할 수 있다. 그럼에도 불구하고, 신경망의 반복적인 훈련 후 큰 셀 임계전압쉬프트로 인한 심각한 셀 보존에러를 회피하기 위해, 의도적인 자가치유전류는 WWL(416)을 통해 인가될 수 있다. 의도적인 자가치유전류는 내장플래시메모리셀(432, 434)의 WWL(416)에 전기적으로 연결된 장치의 손상된 게이트 산화물을 치유할 수 있기 때문이다. 실시예들에서, 자가치유전류를 인가하는 것은 모든 훈련이나 추론에 필요하지 않을 수 있으므로 성능이나 전력소비에 최소한의 영향을 미친다.
실시예들에서, 각각의 셀(예를 들어, 432)은 커플링 트랜지스터(422), 쓰기 트랜지스터(424) 및 상부 선택 트랜지스터상부 선택 트랜지스터(또는 제1 선택트랜지스터)(460), 읽기 트랜지스터(462) 및 하부 선택 트랜지스터(464)를 포함할 수 있다. 시냅스(400) 내의 단일-폴리(single-poly) 내장플래시메모리는 저항변화소자로서 사용될 수 있고, 플래시의 플로팅게이트(FG)에 전기적으로 연결된 읽기 트랜지스터(예를 들어, 462)의 컨덕턴스는 저항변화소자로서 작용할 수 있다. 실시예들에서, 읽기 트랜지스터(예를 들어, 462)의 컨덕턴스는 FG 노드들(FG_p 또는 FG_n) 각각의 임계전압 VTH에 의해 결정될 수 있다. FG 노드들(FG_p 또는 FG_n)의 VTH는 먼저 밸런스-스텝-펄스 프로그래밍(balanced step pulse programming) 방법을 사용하여 대략적으로 프로그래밍될 수 있고, 이후 감소된 전압을 갖는 후속한 상수-펄스 프로그래밍 방법(constant pulse programming)은 시냅스(400)에 저장될 가중치를 정확하게 프로그래밍하기 위해 VTH 값을 미세 조정할 수 있다. 프로그래밍 단계는 도 10A 내지 10B와 관련하여 설명된다.
도 5는 본 발명의 실시예들에 따라 시냅스(500)의 개략도를 나타낸다. 실시 예들에서, 시냅스(500)는 도 2의 시냅스(210)로서 사용될 수 있다. 도시된 바와 같이, 시냅스(500)는 3쌍의 1T-1R을 가질 수 있고, 여기서 3개의 워드라인(WLa, WLb 및 WLc)은 6개의 트랜지스터들의 게이트들에 전기적으로 연결될 수 있다. 시냅스(500)는 다른 적절한 수의 입력트랜지스터와 저항뿐만 아니라 입력트랜지스터에 전기적으로 결합된 워드라인을 가질 수 있다. 예를 들어, 실시예들에서, 시냅스(500)는 워드라인(WLa) 및 1T-1R 유닛들(550, 551)의 컴포넌트들이 제거될 수 있도록 변경될 수 있다. 즉 각 셀은 2쌍의 1T-1R을 가질 수 있다. 다른 예로서, 실시예들에서, 시냅스(500)는 각 셀이 4쌍의 lT-1R 및 4개의 워드라인(입력신호라인) (WL)을 갖도록 변경될 수 있다.
실시예들에서, 시냅스(500)의 SL, BL 및 BLB는 시냅스(300)의 시냅스(300)에서 SL, BL 및 BLB와 같은 유사한 기능을 가질 수 있다. 시냅스(300)와 시냅스(500)의 차이는 시냅스(500)가 3개의 워드라인(WLa, WLb, WLc)을 통해 이전 뉴런으로부터 입력신호를 수신할 수 있다는 것이다. 보다 구체적으로, 각 WL로부터의 신호는 상응하는 입력트랜지스터의 게이트단자로 유도될 수 있다.
각 시냅스(500)는 3개의 워드라인(WLa, WLb, WLc)에 전기적으로 연결될 수 있는 반면, 도 2의 각 시냅스(210)는 하나의 워드라인(265)에 연결된 것으로 도시되어 있다. 그래서, 도 2의 각 워드라인(265)은 하나 이상의 입력트랜지스터를 포함하는 시냅스에 전기적으로 연결된 적어도 하나의 워드라인을 일괄하여 지칭한다.
실시예에서, 시냅스(500)는 2개의 셀(532, 534)을 가질 수 있고, 여기서 각 셀은 3쌍의 1T-1R(하나의 트랜지스터-하나의 저항)을 가질 수 있고, 각 1T-1R 쌍은 WL과 SL에 전기적으로 연결될 수 있다.
시냅스(500)의 각 저항은 비휘발성 MRAM, RRAM, 또는 PRAM 또는 단일-폴리 내장플래시메모리와 같은 다양한 회로(또는 메모리)에 의해 구현될 수 있으며, 여기서 회로는 저항으로 표현될 수 있는 관련 파라미터를 기억(저장)하도록 프로그램될 수 있다. 실시예들에서, 시냅스(500)의 각 저항은 도 4의 박스(452)의 컴포넌트들에 의해 구현될 수 있다. 여기서 각 시냅스(500)는 시냅스(400)와 유사한 방식으로 PWL, WWL 및 EWL에 전기적으로 연결될 수 있다.
도 6은 본 발명의 실시예들에 따른 또 다른 시냅스(600)의 개략도를 나타낸다. 실시예들에서, 시냅스(600)는 도 2의 시냅스(210)로서 사용될 수 있다. 도시된 바와 같이, 각각의 셀(632, 634)은 2개의 트랜지스터들(예를 들어, 602, 606)과 1개의 저항(예를 들어, 613), 그리고 전기적으로 연결된 2개의 입력신호(또는 워드)라인(워드라인(WL) 및 워드라인바(WLB)), 그리고 하나의 기준 신호 라인(SL)을 포함할 수 있다. 각 시냅스(600)는 2개의 워드라인에 전기적으로 연결될 수 있지만, 도 2의 각 시냅스(210)는 하나의 워드라인(265)에 연결된 것으로 도시되어 있다. 그래서, 도 2의 각 워드라인(265)은 하나 이상의 입력트랜지스터를 포함하는 시냅스에 전기적으로 연결된 하나 이상의 워드라인을 일괄하여 지칭한다.
실시예들에서, 시냅스저항(R_p(613), R_n(614)), 기준 신호 라인(SL), 출력전류라인(BL, BLB)은 도 3의 시냅스(230)의 상응하는 컴포넌트와 유사한 기능을 가질 수 있다. 예를 들어, WL과, 저항 R_p(613) 및 R_n(614) 각각에 전기적으로 연결된 입력선택트랜지스터(602, 604)는 입력선택트랜지스터(211, 212) 각각에 상응할 수 있다.
도 3의 시냅스(300)와 비교하여, 시냅스(600)는 다른 입력신호라인(WLB)에 전기적으로 연결될 수 있고, 여기서 WLB는 WL에 대한 차동 입력신호전압을 제공할 수 있다. 실시예들에서, 추가적인 입력선택트랜지스터(606, 608)는 그것들의 게이트단자를 통해 WLB에 전기적으로 연결될 수 있다. 실시예들에서, 입력선택트랜지스터(606, 608)의 소스단자는 저항(R_p(613), R_n(614))에 각각 전기적으로 연결될 수 있다. 실시예들에서, 트랜지스터(602)의 드레인단자는 BL에 전기적으로 연결될 수 있고 트랜지스터(606)의 드레인단자는 BLB에 전기적으로 연결될 수 있다. 마찬가지로, 트랜지스터(604)의 드레인단자는 BLB에 전기적으로 연결될 수 있고 트랜지스터(608)의 드레인단자는 BL에 전기적으로 연결될 수 있다.
실시예들에서, 시냅스(600)는 차동 입력신호를 수신할 수 있고, 여기서 WL은 포지티브 입력신호전압(공통모드 기준)과 a_pos를 제공하고, WLB는 네거티브 입력신호전압(공통모드 기준)과 a_neg을 제공한다. 실시예들에서, R_p(613)는 포지티브 가중치 w_pos를 저장할 수 있고 R_n(614)은 네거티브 가중치 w_neg를 저장할 수 있다. 따라서, 실시예들에서, BL 상의 출력신호전류(BLo)는 2개의 셀(532, 534)로부터의 2개의 출력신호의 합일 수 있다.
[수학식 6]
BLo = a_pos × w_pos + a_neg × w_neg
마찬가지로, BLB 상의 출력신호전류(BLBo)는 2개의 셀(532, 534)로부터의 2개의 출력신호의 합일 수 있다.
[수학식 7]
BLBo = a_pos × w_neg + a_neg × w_pos
따라서, 도시된 바와 같이, WL 및 WLB에 대한 차동신호를 가진 일부 실시예들은, 도 3에 도시된 시냅스(300)의 WL에 대한 단일-종단 신호(single-ended signaling)를 갖는 다른 실시예들에 비하여 BL 및 BLB 상 더 큰 범위의 출력전류를 가질 수 있다. 또한, 도시된 바와 같이, 차동입력신호를 가진 실시예들은 공급전압 또는 온도의 변화로부터 공통모드노이즈뿐만 아니라 트랜지스터 오프셋노이즈를 억제할 수 있다.
시냅스(600)의 각 저항은 비휘발성 MRAM, RRAM, 또는 PRAM 또는 단일-폴리 내장플래시메모리와 같은 다양한 회로(또는 메모리)에 의해 구현될 수 있으며, 여기서 회로는 관련 파라미터를 기억(저장)하도록 프로그래밍될 수 있다. 도 7은 본 발명의 실시예들에 따른 또 다른 시냅스(700)의 개략도를 나타낸다. 실시예들에서, 시냅스(700)는 도 6의 저항들(613, 614)의 예시적인 구현을 나타낼 수 있다. 다르게 말하면, 박스(752)의 컴포넌트들은 도 6의 저항(613)에 상응할 수 있다.
도 7에 도시된 바와 같이, 시냅스(700)는 2개의 셀(732, 734)을 포함할 수 있다. 실시예들에서, 셀(732(또는 734))은 시냅스(400)의 셀(432(또는 434))과 유사할 수 있고, 셀(732)(또는 734)이 추가적인 상부 선택 트랜지스터상부 선택 트랜지스터(720(또는 722)) 및 추가적인 입력신호라인(WLB)을 포함하는 것에 차이가 있다. 실시예들에서, 트랜지스터(720)(또는 722)의 게이트는 입력신호라인(WLB)에 전기적으로 연결될 수 있고 트랜지스터(720)(또는 722)의 드레인은 출력신호라인(BLB)에 전기적으로 연결될 수 있다.
도 8은 본 발명의 실시예들에 따른 또 다른 시냅스(800)의 개략도를 나타낸다. 실시예들에서, 시냅스(800)는 도 2의 시냅스(210)로서 사용될 수 있다. 도시 된 바와 같이, 시냅스(800)는 2개의 셀(832, 834)을 포함할 수 있다. 여기서 각 셀은 3개의 저항과 6개의 트랜지스터를 포함할 수 있다. 시냅스(800)는 2T-1R 구조를 가질 수 있다. 즉, 각 셀은 2T-1R 유닛(802) 3세트를 포함할 수 있다. 시냅스 (800)는 6개의 입력신호라인 - 3개의 워드라인(WLa, WLb 및 WLc)과, 3개의 워드라인바(WLaB, WLbB 및 WLcB) - 에 전기적으로 연결될 수 있다. 시냅스(800)의 각 셀은 다른 적절한 수의 2T-1R 유닛(802)을 포함할 수 있다. 실시예들에서, WL 및 WLB의 각 쌍(예를 들어, WLa 및 WLaB)은 셀(832, 834)에 차동 입력신호를 제공할 수 있다.
실시예들에서, 기준 신호 라인(SL)은 셀(832, 834)에 기준신호를 제공할 수 있다. 실시예들에서, 각 출력신호라인(BL, BLB)은 셀(832)의 3개의 트랜지스터들의 드레인 단자와, 셀(834)의 3개의 트랜지스터들의 드레인 단자로부터의 출력신호를 수집할 수 있다. 실시예들에서, 시냅스(800)는 차동입력신호를 수신할 수 있다. 여기서 각각의 WLi는 포지티브 입력신호전압(a_pos_i)을 제공하고, 각각의 WLBj는 네거티브 입력신호전압(a_neg_j)을 제공한다. 실시예들에서, 각각의 R_p는 포지티브 가중치(w_pos_i)를 저장할 수 있고 각각의 R_n은 네거티브 가중치(w_neg_j)를 저장할 수 있다. 실시예들에서, BL 상의 출력신호전류(BLo)는 2개의 셀(832, 834)로부터의 6개의 출력신호의 합일 수 있다.
[수학식 8]
BLo = ∑(a_pos_i × w_pos_i) + ∑(a_neg_j × w_neg_j)
마찬가지로, BLB 상의 출력신호전류(BLBo)는 2개의 셀(832, 834)로부터의 6개의 출력신호의 합일 수 있다.
[수학식 9]
BLBo = ∑(a_pos_i × w_neg_j) + ∑(a_neg_j × w_pos_i)
시냅스(800)의 각 저항은 비휘발성 MRAM, RRAM, 또는 PRAM 또는 단일-폴리 내장플래시메모리와 같은 다양한 회로(또는 메모리)에 의해 구현될 수 있으며, 여기서 회로는 관련 파라미터를 기억(저장)하도록 프로그래밍될 수 있다. 실시예들에서, 시냅스(800)의 각 저항은 도 7의 박스(752)의 컴포넌트들에 의해 구현될 수 있다. 여기서, 각 시냅스(800)는 시냅스(700)와 유사한 방식으로 PWL, WWL 및 EWL에 전기적으로 연결될 수 있다.
일반적으로, 플로팅게이트에 전자를 주입함으로써 읽기 트랜지스터(예를 들어, 462)의 컨덕턴스는 변경될 수 있다. 도 9A 내지 9B는 플로팅게이트노드(열(910 및 914))의 임계전압(VTH)을 프로그래밍하기 위한 2개의 종래 방법과 실시예들에 따른 방법(열(912))을 비교하여 나타낸다. 도 9A는 플로팅게이트셀(432)의 프로그램 동작 중 PWL 및 WWL 단자에 인가된 신호의 전압높이 및 폭을 포함하는 테이블(900)을 나타낸다. 이를 위해, 플로팅게이트에 전자를 주입할 수 있다. 도시된 바와 같이, 테이블(900)은 각각 전압신호를 인가하기 위한 3가지 접근법에 상응하는 3개의 열(910, 912, 914) 각각을 포함한다.
열(910)은 각 후속한 프로그램 단계가 이전 단계보다 일정한 펄스 폭(T_pulse)을 갖는 델타만큼 프로그램 전압을 증가시키는 종래의 증분-스텝-펄스 프로그래밍(ISPP; incremental-step-pulse programming) 방법을 나타낸다. 열(912)은 실시예에 따라 제1 단계가 열(910)의 프로그래밍 방법에 비해 특정 설계파라미터(m)만큼 더 긴 프로그래밍 펄스 폭을 갖는 밸런스-스텝-펄스 프로그래밍(balanced-step-pulse programming) 방법을 나타낸다. 열(914)은 모든 단계가 동일한 프로그램 전압과 프로그램 펄스 폭을 갖는 종래의 상수-펄스 프로그래밍(constant-pulse programming) 방법을 나타낸다.
도 9B는 도 9A의 3가지 방법에 따라 플로팅게이트셀(432 또는 434)의 VTH(950)를 표시하여 나타낸다. 도 9B에서 3개의 표시(960, 962, 964)는 3개의 방법(910, 912, 914) 각각에 상응하고, 도 9B의 각 표시는 도 9A의 상응하는 방법의 각 단계 후 플로팅게이트셀(432 또는 434)의 VTH를 나타낸다.
표시(950)를 근거로, 본 발명의 실시에들에 따른 밸런스-스텝-펄스 프로그래밍 방법이 이들 3가지 방법 중 바람직할 수 있다. 각 단계는 VTH를 대략 동일한 양(델타)만큼 증가시키므로, VTH는 정확하게 프로그래밍 될 수 있고, 다른 방법보다 VTH 변동이 더 좁아지게 된다.
도 10A 내지 10B는 본 발명의 실시예들에 따라 플로팅게이트셀(432 또는 434)의 임계전압(VTH)을 프로그래밍하기 위한 또 다른 방법을 나타낸다. 도 10A는 플로팅게이트셀(432 또는 434)의 프로그램 동작 중 PWL 및 WWL 단자에 인가된 신호의 전압높이 및 폭을 포함하는 테이블(1000)을 나타낸다. 이를 위해, 플로팅게이트에 전자를 주입할 수 있다. 도 10B는 도 10B의 각 단계에서 플로팅게이트셀(432 또는 434)에 저장된 VTH의 표시(1050)를 나타낸다.
도시된 바와 같이, 몇몇 초기 단계들(여기서는, 4단계까지)에 대해, 밸런스-스텝-펄스 프로그래밍 방법(도 9A 및 9B와 함께 언급됨)은 목표 VTH를 초과하지 않는 값으로 셀 VTH를 대략적으로 프로그래밍하기 위해 사용될 수 있다. 일부 실시예들에서, 목표 VTH는 허용 가능한 마진을 가지고 이러한 초기단계들(4단계까지)에서 달성될 수 있다. 일부 다른 실시예들에서, 목표 VTH에 대한 보다 정확한 프로그래밍은 필요할 수 있다. 이러한 실시예들에서, 현재 VTH와 목표 VTH 간의 차이는 각 단계마다 VTH의 가능한 증가분보다 작아질 수 있다(도 10b의 델타(delta)). 이후, VTH를 정확하게 프로그래밍하기 위해 후속한 상수-펄스 프로그래밍 단계가 더 적용된다.
실시예들에서, 후속한 상수-펄스 프로그래밍 단계들은 목표로 VTH를 설정하기 위해 감소된 프로그래밍 펄스 높이(도 10A의 알파(alpha)에 의해)를 사용하지만 증가된 펄스 폭(T_pulse * n, n은 1.0 이상)을 사용한다. 결과적으로, 도 10A 내지 10B의 프로그래밍 방식은 목표 VTH와 온-칩(on-chip) 전압기준으로부터 생성된 가능한 전압단계(=델타(delta)) 이하의 최종 프로그램된 셀 임계 전압을 제어할 수 있다.
도 11은 본 발명의 실시예들에 따른 플로팅게이트노드의 임계전압(VTH)을 프로그래밍하기 위한 예시적인 프로세스의 흐름도(1100)를 나타낸다. 단계 1102에서, 제1 높이(예를 들어, VPGM)와 제1 폭(T_pulse * m, m은 1.0 이상)을 가진 전압펄스(예를 들어, 도 10A의 1단계)가 플로팅게이트셀(432 또는 434)의 PWL 및 WWL 단자에 인가될 수 있다. 이를 위해 전자를 플로팅게이트에 주입할 수 있다. 단계 1104에서, 이전 펄스로부터 기 설정된 값(예를 들어, 델타(delta))만큼 각 펄스의 높이를 증가시키면서 제1 전압펄스시퀀스(예컨대, 도 10A의 2 내지 4단계)가 PWL 및 WWL 단자에 인가될 수있다.
단계 1106에서, 제1 펄스시퀀스가 인가된 후에 목표 VTH에 도달했는지 여부가 결정될 수 있다. 결정에 대한 대답이 긍정적이면, 프로세스는 단계 1108로 진행한다. 단계 1108에서, 프로세스는 중지된다. 그렇지 않으면, 단계 1110에서, 제2 전압펄스시퀀스(도 10A의 5 내지 19단계와 같은)가 PWL 및 WWL 단자에 인가될 수 있다. 실시예들에서, 제2 펄스시퀀스의 각 펄스는 이전 단계에서의 펄스(T_pulse)보다 좁지 않은 폭(T_pulse * n, n은 1.0 이상)을 가질 수 있다. 실시예들에서, 제2 펄스시퀀스는 제1 높이보다 낮은 높이(VPGM - 알파(alpha))를 가지며, 제2 펄스시퀀스는 제2 폭(T_pulse)보다 좁지 않은 폭(T_pulse * n)을 갖는다. 실시예들에서, 예로서, 값은 m=9.0, n=5.0, alpha=0.8V, delta=0.1V, 그리고 VPGM=7.2V 일 수 있다.
도 9A 내지 11의 플로팅게이트노드의 VTH를 프로그래밍하기 위한 방법들은 셀(732, 734)에 적용될 수 있다. 더 구체적으로, 도 9A의 열(912)과 관련된 방법 및/또는 도 10a 내지 10b와 함께 설명된 방법은 셀들(732, 734)의 VTH를 프로그래밍하기 위해 사용될 수 있다.
도 3 내지 8의 각 시냅스는 2개의 출력신호라인(BL, BLB)을 통해 2개의 출력신호를 생성할 수 있다. 여기서 2개의 출력신호를 생성하기 위해 차동신호기술이 적용될 수 있다. 차동신호(differential signaling)는 가중 합 계산을 위한 종래의 시냅스 또는 디바이스의 설계에서 출력전류에 심각한 오류를 야기할 수 있는 공급전압 및 온도변화에 따른 트랜지스터오프셋 및 공통모드노이즈에 대한 민감도를 감소시킬 수 있다.
도 12A 내지 12C는 본 발명의 실시예들에 따른 차동신호(differential signaling)를 도시한다. 도 12A에 도시된 바와 같이. IBL라인(1212)과 IeL-Bar라인 (1214)은 각각 시냅스의 출력신호라인(BL(예를 들어, 106), BLB(예를 들어, 107))을 통한 출력전류일 수 있다. 예로서, 각 출력전류는 R_p 및 R_n의 저항값에 따라 최소 0.5(A.U.) 내지 최대 1.5(A.U.)의 범위일 수 있다. 실시예들에서, IBL라인(1212)은 제1 전류신호(1224)와 오프셋전류신호(1220)의 합일 수 있는 반면, IBL라인(1214)은 오프셋전류(1220)와 제2 전류신호(1226)의 합일 수 있다. 도시된 바와 같이, 오프셋전류(1220)는 트랜지스터오프셋 및 공통모드노이즈를 포함할 수 있다.
도 12B에 도시된 바와 같이. 2개의 출력신호라인(1212, 1214)에 차동신호기술을 적용함으로써, 오프셋전류(1220)가 상쇄될 수 있고, 출력전류신호(1224, 1226)의 값이 획득될 수 있다. 예로서, 출력전류신호들(1224, 1226)은 0.0(A.U.) 내지 1.0(A.U.)의 범위일 수 있다.
또한, 실시예에서, 제1 전류신호(1224)는 제2 전류신호(1226)와 반대 극성을 가질 수 있다. 도 12C에 도시된 바와 같이, 두 출력신호들의 차동신호(differential signaling)를 이용함으로써, 2개 신호의 차이(IBL - IBL-Bar)(1216))는 최소 -1.0에서 최대 +1.0의 범위일 수 있다. 즉, 결합된 신호의 범위는 단일출력 범위의 두 배일 수 있다.
도 13은 본 발명의 실시예들에 따른 신경망을 포함하는 칩(1300)의 개략도를 나타낸다. 도시된 바와 같이, 칩(1300)은 시스템-온-칩 구조를 가질 수 있으며, 비휘발성 신경망(1316)과, 칩(1300)상의 요소들을 제어하기 위한 CPU(1312)와, 비휘발성 신경망(1316)에 입력신호를 제공하기 위한 센서(1314)와, 메모리(1318)를 포함할 수 있다. 실시예들에서, 신경망(1316)은 도 1의 신경망(100)과 유사할 수 있다. 실시예들에서, 칩(1300)은 실리콘 칩일 수 있고 컴포넌트들(1312 ~ 1318)은 칩(1300) 상에 통합될 수 있다.
도 14는 본 발명의 실시예들에 따른 비휘발성 시냅스어레이를 동작시키기 위한 시스템(1400)의 개략도를 나타낸다. 도시된 바와 같이, 시스템(1400)은 비휘발성 시냅스어레이(1410)와, 기준생성기(1402)와, 구성저장장치(1404)와, 비휘발성 시냅스어레이(1410) 중에서 시냅스의 행을 선택하기 위한 행(row)드라이버(1406)와, 라우터/제어기(1408)와, 비휘발성 시냅스어레이(1410) 중에서 시냅스의 열을 선택하기 위한 열(column)선택기(1412)와, 감지회로(1414)와, 비휘발성 시냅스어레이(1410)로부터 출력값을 수집하기 위한 누산기(1416)와, 정규화/활성화/풀링(pooling) 기능블록(1418)과, 비휘발성 시냅스어레이(1410)로부터 버퍼데이터를 위한 데이터버퍼(1420)를 포함할 수 있다. 실시예들에서, 비휘발성 시냅스어레이(1410)는 비휘발성 시냅스어레이(200)와 유사할 수 있고, 감지회로(1414)는 도 2의 감지회로(250)와 유사할 수 있다.
기준생성기(1402)는 로우(row)드라이버(1406)에 의해 사용되는 기준신호들(예를들어, 도 2 내지 8의 SL)과 입력신호라인들(예를 들어, 도 2 내지 8의 WL)에 필요한 전압레벨을 제공한다. 구성저장장치(1404)는 라우터/제어기(1408)에 의해 사용되는 유한한 상태의 머신에 대한 데이터, 시냅스어레이(200) 내의 시냅스 위치에 대한 가중치 파라미터의 물리적인 맵핑, 및 감지 회로를 위한 다른 구성 파라미터들을 저장한다. 실시예들에서, 구성저장장치는 온-칩의 비휘발성 메모리로 구현 될 수 있다. 라우터/제어기(1408)는 로우(row)드라이버(1406)에 의해 행 선택 시퀀스들을 제어하기 위해 유한한 상태의 기계를 구현한다. 감지회로(1414)는 전압레귤레이터와 아날로그-디지털 변환기를 포함하여 선택된 열로부터의 출력전류신호를 전압신호로 그리고 추가로 디지털값으로 변환한다. 감지회로로부터의 결과는 누산기(1416)에서 합산된다. 정규화/활성화/풀링 기능블록(1418)은 누산기 값에 대해 필요한 신호처리동작을 수행한다. 이러한 수치연산을 병렬로 수행하기 위해 다중의 전용 DSP들 또는 내장형 CPU 코어들이 포함될 수 있다.
일부 실시예에서, 신경망 설계는 가중치 및 입력 매개 변수의 값을 1 또는 -1로 이진화 할 수 있다. 그러한 실시예에서, 시냅스(600)는 한 쌍의 비휘발성 저항 변화 요소 대신에 교차 결합 래치 회로가 사용될 수 있도록 수정될 수 있다. 도 15는 본 발명의 실시예들에 따른 다른 시냅스 (1500)의 개략도를 나타낸다. 도시된 바와 같이, 시냅스 (1500)는 교차 결합 래치 회로(1510)를 포함 할 수 있으며, 교차 결합 래치 회로(1510)는 입력 단자가 제2 인버터(1518)의 출력 단자에 전기적으로 결합된 인버터(1514)를 포함할 수 있으며 그 반대의 경우도 마찬가지이다. 실시예에 따르면, 교차 결합 래치는 1518의 출력과 1514의 입력 사이에 위치한 S 노드와 1514의 출력과 1518의 입력 사이에 위치한 SB 노드에 디지털 신호를 저장할 수 있다. 실시예에 따르면, S 노드가 전기적 신호 값을 갖는 경우, SB 노드는 상보적인 신호값을 가질 수 있으며, 그 반대는 인버터 결합으로 인해 가능하다.
도 15에 도시된 바와 같이, 시냅스(1500)의 셀(1532,1534) 각각은 2 개의 입력 신호(또는 워드) 라인, 워드 라인(WL) 및 워드라인바(WLB)에 전기적으로 연결된 2 개의 입력 선택 트랜지스터(예를 들어, 1502 및 1506)를 포함할 수 있으며, 게이트 터미널에서. 입력 선택 트랜지스터의 소스 단자는 교차 결합 래치 회로(1510)의 노드에 추가로 전기적으로 결합되는 공통노드에 전기적으로 결합될 수 있다. 셀(1532)은 교차 결합 래치(1510)의 SB 노드에 전기적으로 결합될 수 있다. 셀(1534)은 1510의 S 노드에 전기적으로 연결된다.
실시예에서, 트랜지스터(1502)의 드레인 단자는 출력 라인(BL)에 전기적으로 연결될 수 있고 트랜지스터(1506)의 드레인 단자는 출력 라인(BLB)에 전기적으로 연결될 수 있다. 마찬가지로, 트랜지스터(1504 및 1508)의 드레인 단자는 각각 BLB 및 BL에 전기적으로 연결될 수 있다.
실시예들에서, 기준 신호 라인(SL)은 교차 결합 래치(1510)의 인버터들 (1514 및 1518) 각각에 전기적으로 연결될 수 있고, 기준 전압 입력 신호(201)가 인버터들(1514 및 1518)에 제공될 수 있다.
교차 결합 래치(1510)는 비휘발성 컴포넌트와 같은 다양한 회로 (또는 메모리)에 의해 구현되지만, 전원(예 : 배터리)이 사용 가능한 경우 휘발성 메모리 컴포넌트에 의하여 구현될 수도 있다.
도 16은 WL 및 WLB의 입력 전압 값, S 및 SB 노드의 전압 신호로 표시되는 가중치 값, BL 및 BLB 라인의 전류 값으로 표시되는 출력 간의 관계를 보여주는 표를 보여준다. 테이블의 입력에 대해 (WL = High, WLB = Low)는 1이고 (WL = Low, WLB = High)는 -1 일 수 있다. 표의 가중치에 대해 (SB = High, S = Low)는 1이고 (SB = Low, S = High)는 -1 일 수 있다. 표의 입력 및 가중치에 대한 "낮은"전압 값은 "높은"전압 값보다 낮은 전압 값이다. 표의 출력에 대해 (BL = Low, BLB = High)는 1이고 (BL = High, BLB = Low)는 -1 일 수 있다. 표의 출력에서 "Low" 전류 값은 "High" 전류 값보다 낮은 전류 값이다.
표에서, BL 및 BLB의 출력은 입력 (WL, WLB)과 가중치 (SB, S)의 곱셈을 나타낼 수 있으며, 여기서 1×1 = 1, 1×-1 = -1, -1×1 = -1, 및 -1×-1 = 1 이다. 따라서 이진화 된 입력과 가중치 사이의 곱셈 연산은 산술적으로 올바른 결과를 산출할 수 있다.
도 17, 18 및 19는 본 발명의 실시 예에 따른 시냅스(1700, 1800, 1900)의 개략도를 각각 나타낸다. 도 17에 도시된 바에 따르면, 시냅스(1700)는 도 6에 도시된 시냅스 (600) 내의 세포 (632)에 대응할 수 있는 세포 (1732)만을 포함할 수 있다. 마찬가지로, 도 18은 도 7에 도시된 시냅스 (700)의 세포 (732)에 대응할 수 있는 세포 (1832)만을 포함하는 시냅스 (1800)를 도시한다. 도 19에 도시된 시냅스(1900)는 도 8의 시냅스(800)의 셀 (832)에 대응할 수 있는 셀(1932)만을 포함할 수 있다. 시냅스 (1700, 1800 및 1900)에서 음의 가중치 w_neg는 0과 같을 수 있다. 즉, 음의 가중치는 시냅스(600), 시냅스(700) 및 시냅스(800) 각각에서 제거될 수 있다. WLB 신호가 BLB 라인에 음의 입력 신호를 제공할 수 있기 때문에 BLB 라인은 유지될 수 있다.
실시예에서, 시냅스(1700 및 1800)에 대한 출력 신호 전류 BLBo는 다음과 같을 수 있다.
[수학식 10]
BLBo = a_neg × w_pos
마찬가지로, 시냅스(1900)에 대한 출력 전류 신호 BLBo는 다음과 같을 수 있다.
[수학식 11]
BLBo = ∑(a_neg_j × w_pos_i)
도 20은 본 발명의 실시예들에 따른 시냅스(2000)의 개략도를 나타낸다. 도시된 바와 같이, 시냅스(2000)는 시냅스(300)와 유사할 수 있으며, 차이점은 세포(2032)의 양의 가중치(도 3의 세포 (332)에 대응될 수 있음)만이 시냅스(2000)에 포함되고, 도 3의 세포 (334) 및 BLB 라인(267)은 제거될 수 있다는 것이다.
도 21은 본 발명의 실시예들에 따른 시냅스 (2100)의 개략도를 나타낸다. 도시된 바와 같이, 시냅스 (2100)는 시냅스(400)와 유사할 수 있지만, 차이점은 세포(2132)만이(도 4의 세포(432)에 대응될 수 있음) 사용되고 도 4의 셀(434)과 BLB 출력 라인은 제거될 수 있다는 것이다.
도 22는 본 발명의 실시예에 따른 시냅스(2200)의 개략도를 나타낸다. 도시된 바에 따르면, 시냅스(2200)는 도 5의 시냅스(500)와 유사할 수 있지만, 차이점은 셀 2232(도 5의 셀 (532)에 대응)만이 사용되고 도 5의 셀(534)과 BLB 출력 라인은 제거될 수 있는 것이다.
도 17 내지 도 22는 도 2에 도시 된 바와 같이 2 차원 배열 형식으로 배열된 시냅스를 개시한다. 즉, 도 17 내지 도 22의 시냅스는 시냅스(210)에 대응될 수 있다.
본 발명에 따르면, 실시예에서 논리 친화적인 NVM은 분할 게이트 플래시 메모리 또는 EEPROM과 같은 종래의 NVM 컴포넌트보다 적은 처리 단계로 생성될 수 있는 비휘발성 메모리 컴포넌트(대기 전력이 0)를 의미한다. 실시예의 NVM은 CPU 또는 신경망 계산 엔진의 논리 컴포넌트에 비해 몇 가지 추가 처리 단계만 필요하기 때문에, CPU 또는 신경망 엔진과 동일한 칩에 실시예의 NVM을 내장하는 것이 가능하다. 반대로, 기존의 NVM 컴포넌트를 CPU 또는 신경망 엔진과 동일한 칩에 내장하는 것은 그러한 칩을 생성하는데 필요한 과도한 추가 처리로 인해 실현 가능하지 않다.
실시예에서 사용되는 논리 친화적 NVM의 예는 로직 컴포넌트보다 몇 개의 처리 단계가 요구되는 STT-MRAM, RRAM, PRAM 또는 FeFET 컴포넌트를 포함한다. 실시 예에서 논리 친화적 NVM의 또 다른 예는 단일 폴리 내장형 플래시 메모리이다. 단일 폴리 플래시 메모리는 로직 컴포넌트에 비해 추가 처리가 필요하지 않으며 특히 CPU, 신경망 엔진과 동일한 칩에 임베딩하는데 적합하다. 기존 NVM과 같이 논리 친화적인 NVM은 전원이 꺼져 있을 때 저장된 데이터를 유지할 수 있다.
도 23에 도시된 종래의 신경망 시스템에서, 외부 NVM 칩(2319)은 CPU (1312), 센서(1314) 및 시스템 버스(2330)를 통해 연결되는 신경망 컴퓨팅 엔진(2320)과 같은 다양한 회로 블록을 통합하는 시스템-온-칩(SoC)(2310)에 별도로 부착된다.
CPU (1312) 및 센서 (1314)는 도 13의 구성 요소들과 유사하게 번호가 매겨진다. 신경망 가중치 파라미터는 시스템 전원이 꺼질 때 외부 NVM 칩(2319)에 저장된다. 외부 NVM 칩(2319)에 액세스하는 것은 시스템 버스(2330)의 성능이 SoC(2310)의 핀 수에 의해 제한되기 때문에 느리다.
외부 NVM에 액세스하는 것은 외부 와이어 커패시턴스로 인해 많은 양의 전력을 소비한다. 또한, SoC(2310)과 외부 NVM(2319)간에 개인 정보 보호 관련 신경망 매개 변수가 전송될 때 보안이 문제가 된다.
도 24에는 도 13에 도시된 SoC(1300)와 외부 신경망 가속화 장치(2470) 로 구성된 본 발명에 따른 신경망을 위한 계층화된 시스템을 도시한다. 실시예에서, 온-칩 비휘발성 신경망 모듈(1316)은 고성능 시스템 버스를 통해 SoC(1300) 내의 CPU(1312), 센서(1314) 및 메모리(1318) 블록과 통합된다.
실시예에서, 고성능 시스템 버스 (2430)의 폭은 SoC (1300)의 핀 수에 의해 제한되지 않는다. 따라서, 고성능 시스템 버스 (2430)를 통한 통신은 도 23에 도시된 종래기술의 시스템 버스(2330)의 통신보다 훨씬 빠르다. 외부 신경망 가속기 장치(2470)는 국부적으로 유선 또는 원격으로 액세스 될 수 있는 오프-칩 상호 연결(2480)을 통해 연결될 수 있다. 로컬 유선 접근 방식에는 TSV, 3D-스태킹, 와이어 본딩 또는 PCB를 통한 접근이 포함될 수 있다. 원격 액세스 방식에는 LAN, Wi-Fi, Bluetooth가 포함될 수 있다. 외부 신경망 가속기 장치는 자체 CPU 및 고밀도 메모리(DRAM, Flash Memory, SCM 등)를 포함할 수 있으며 클라우드 서버에 위치할 수 있다.
실시예에서, 전체 신경망을 SoC(1300) 및 외부 신경망 가속기 장치(2470)로 분할함으로써, 비휘발성 신경망 모듈(1316)을 사용하여 SoC(1300) 내에서 특정 중요 계층이 실행될 수 있는 반면 다른 나머지 계층은 외부 신경망 가속기 장치(2470)는 3D-NAND와 같은 저비용 및 고밀도 메모리를 사용할 수 있다. 예를 들어, 신경망의 초기 계층은 온-칩으로 처리될 수 있고 나머지 계층은 외부 신경망 가속기 장치(2470)로 처리될 수 있다. 온-칩 비휘발성 신경망에서만 추출되거나 코딩된 특징은 오프-칩으로 통신되고, SoC 내에 신경망 모듈이 없는 경우에 비해 외부에서 통신하는 데이터의 양을 줄일 수 있기 때문이다. 온-칩 신경망의 중간 결과는 실행에 필요한 매개 변수가 온-칩 비휘발성 신경망(1316)에 저장되기 때문에 최종 결과의 조기 예측에 유용할 수 있는 짧은 지연 시간 부분 결과를 제공할 수 있다. SoC(1300)와 외부 신경망 가속기 장치(2470) 사이에서만 코딩된 정보로 오프-칩 통신함으로써 개인정보 문제가 확연히 줄어들게 된다.
도 25는 본 발명에 따른 SoC(1300a 및 1300b)의 다중 다이로 구성된 분산 신경망 시스템을 도시한다. 실시예에서, SoC(1300a 및 1300b)는 도 13 및 도 24에 설명된 SoC(1300)와 유사하다. 오프-칩 상호 접속(2480)은 도 24의 것과 유사하다. 전체 신경망을 여러 SoC 장치로 분할함으로써 신경망 계산을 병렬로 수행하여 성능을 향상시킬 수 있다. 예를 들어, 일부 초기 계층은 한 SoC의 온-칩 신경망 모듈로 처리할 수 있고 나머지 계층은 다른 SoC로 처리할 수 있다. 첫 번째 SoC에서 추출되거나 코딩된 기능만 칩 외부로 전달된다. 첫 번째 SoC의 중간 결과는 실행에 필요한 매개 변수가 각각의 온-칩 비휘발성 신경망(1316)에 저장되기 때문에 최종 결과의 조기 예측에 유용할 수 있는 낮은 지연 부분 결과를 제공할 수 있다. SoC(1300a 및 1300b) 사이에서만 코딩된 정보로 오프-칩 통신함으로써 개인정보 문제가 확연히 줄어들게 된다.
도 26은 논리 친화적 NVM(2619)이 CPU(1312), 센서(1314) 및 신경망 컴퓨팅 엔진(2320)과 같은 다른 회로 블록과 함께 SoC(2600)에 통합되고 본 발명에 따른 고성능 시스템 버스(2430)를 통해 연결된 시스템-온-칩을 보여준다. 유사하게 번호가 매겨진 컴포넌트는 도 23에 대응하는 컴포넌트를 나타낸다. 실시예들에서 적당한 밀도의 신경망 컴퓨팅 엔진과 SoC의 논리 친화적 NVM(2619)을 통합함으로써, 에너지 소산, 지연 오버헤드도 도 23의 종래 기술 설계에 비해 개선될 수 있다. 또한 외부 NVM 액세스로 인한 보안 문제가 줄어든다. 실시예의 단일 로직 칩 솔루션은 경제적이고, 신경망 매개 변수를 안전하게 저장하는 로직 호환 임베디드 플래시를 특징으로 하는 IoT 애플리케이션에 매력적이다.
실시예에서, 버스 폭은 칩의 이용 가능한 핀 수에 의해 제한되지 않는다. 따라서, 넓은 I/O 및 낮은 지연 메모리 인터페이스는 SoC(2600)의 논리 친화적 NVM과 다른 블록 사이의 통신에 사용될 수 있다. 따라서, 신경망 컴퓨팅 엔진 (2320)은 외부 플래시 메모리를 사용하는 종래 기술 시스템에 비해 논리 친화적 NVM(2619)의 데이터에 빠르게 액세스 할 수 있다.
도 27은 논리 친화적 NVM(2719)이 신경망 엔진(2720) 내의 SoC(2700)에 통합된 본 발명의 신경망 시스템을 도시한다. 신경망 컴퓨팅 엔진 (2720)은 도 26의 신경망 컴퓨팅 엔진(2620)과 유사하다. 신경망 컴퓨팅 엔진 (2720)은 도 26의 종래 기술에 비해 향상된 성능 및 전력 효율로 CPU 개입없이 논리 친화적 인 NVM (2719)에 액세스 할 수 있다.
도 24 내지 도 27에 설명된 온-칩 비휘발성 신경망을 갖는 본 발명의 제안 된 구성은 종래 기술에 비해 더 낮은 전력 소비 및 더 높은 성능과 같은 다양한 이점을 갖는다. 또한, 실시예에서 신경망을 실행하기 위해 개인 사용자 데이터가 사용될 때 오프-칩 액세스를 제한함으로써 프라이버시 문제가 상당히 감소된다.
실시예에서의 이러한 프라이버시 강화 신경망은 창의적인 개인 장치에 사용될 수 있다. 예를 들어, 본 발명의 일 실시예에 따르면 새로운 개인적인 작업, 질문 또는 답변이 온-칩 비휘발성 신경망을 사용하는 휴대용 교육 장치 또는 스마트 장난감에서 상호작용에 의하여 생성될 수 있다. 본 발명의 일 실시예는 오프 칩 액세스를 제한하면서 이미지 또는 사운드 인식을 통해 개인을 식별하는 데 유용할 수 있다. 특히 홈케어나 차일드케어 기기는 음성을 인식해야 하는 사람의 수가 제한되어 있어 매우 복잡한 신경망 모델이 필요하지 않을 수 있다. 그러나 이러한 장치에는 높은 수준의 개인화가 필요할 수 있으며 개인 정보에 대한 엄격한 요구 사항이 있을 수 있다. 또한, 이러한 유형의 애플리케이션을 위한 핵심 신경망 계층은 중요한 정보의 오프-칩 통신없이 실행될 수 있기 때문에, 본 발명의 일 실시예에 따른 온-칩 비휘발성 신경망은 군사 장치 또는 네트워크 방화벽의 보안을 향상시킬 수 있다.
본 발명의 다른 측면에서, 제안된 온-칩 비휘발성 신경망 시스템은 개인화 정보를 온-칩에 저장 및 계산함으로써 보안 개인화 비전/동작/음성 인식 장치에 사용될 수 있다. 예를 들어, 모든 신경망 계산은 온-칩으로 계산되기 때문에 장치는 개인적으로 훈련된 신경망 매개 변수를 칩 외부로 전송하지 않고도 특정 사람의 제스처 또는 음성을 인식할 수 있다. 이러한 시각/동작/음성 인식 신경망 장치는 부피가 큰 사용자 인터페이스 장치(예: PC의 키보드 또는 마우스, 텔레비전의 원격 컨트롤러)를 대체할 수 있다. 예를 들어, 키보드 터치 디스플레이는 각 텍스트 문자에 대한 장치 소유자의 손 제스처를 인식할 수 있는 신경망 엔진으로 대체될 수 있다. 개인화된 정보를 온-칩 비휘발성 신경망에 저장함으로써 특정 사람만 장치와 상호 작용할 수 있다.
또한, 제안된 온-칩 비휘발성 신경망은 CPU, 메모리 및 센서와 같은 다른 SoC 빌딩 블록의 성능과 신뢰성을 향상시키기 위해 활용될 수 있다. 예를 들어, 트랜지스터의 노화 효과나 온도와 같은 다양한 작동 조건으로 인해 작동 전압 및 주파수는 SoC의 수명 동안 순응적으로 제어될 필요가 있다. 이러한 매개 변수의 수동 조정은 신경망이 최적화하기에는 어려운 작업이다. 그러나, 오프-칩 신경망 가속기는 성능 요구 사항을 충족하지 못하고 과도한 추가 전력이 필요할 수 있다. 비휘발성 신경망은 주어진 성능 및 전력 요구 사항에 대해 자체 칩의 다른 컴포넌트의 이러한 매개 변수를 최적화하는 데 사용될 수 있다.
본 발명은 다양한 변형 및 대안적인 형태가 가능하지만, 특정예가 도면에 도시되어 있고 여기에 상세히 설명되어 있다. 그러나 본 발명은 개시된 특정 형태로 제한되지 않고, 반대로 본 발명은 첨부된 청구항들의 범위 내에 속하는 모든 변형, 균등물 및 대안을 포함하는 것으로 이해되어야 한다.

Claims (17)

  1. 제1 신호를 제공하기위한 제1 입력 신호 라인;
    기준 신호 라인기준 신호를 제공하는 기준 신호라인;
    출력 신호를 전달하기 위한 제1 출력 라인; 및
    상기 출력 신호를 생성하기 위한 셀을 포함하며,
    상기 셀은,
    상기 제1 입력 신호 라인에 전기적으로 연결된 게이트를 갖는 제1 상부 선택 트랜지스터; 및
    일단이 상기 제1 상부 선택 트랜지스터에 직렬로 연결되고 타단이 상기 기준 신호 라인에 전기적으로 연결되는 제1 저항변화소자 -상기 제1 저항변화소자의 값은 출력 신호의 크기를 변경하도록 프로그래밍 가능함- ; 를 포함하며,
    상기 셀의 제1 상부 선택 트랜지스터의 드레인은 제1 출력 라인에 전기적으로 연결되는 것을 특징으로 하는 비휘발성 시냅스 회로.
  2. 제1항에 있어서,
    프로그래밍 신호를 제공하기 위한 프로그램라인;
    쓰기신호를 제공하기 위한 쓰기라인; 및
    지우기신호를 제공하기 위한 지우기라인;
    을 더 포함하되,
    상기 제1 저항변화소자는, 플로팅게이트노드를 갖도록 마련된 커플링 트랜지스터 및 쓰기 트랜지스터 - 상기 커플링 트랜지스터는 상기 프로그램라인에 전기적으로 연결되고, 상기 쓰기 트랜지스터는 상기 쓰기라인에 전기적으로 연결됨 - 와, 상기 상부 선택 트랜지스터와 직렬로 마련된 읽기 트랜지스터 및 하부 선택 트랜지스터 - 상기 하부 선택 트랜지스터는 상기 기준 신호 라인에 전기적으로 연결된 소스와 상기 지우기라인에 전기적으로 연결된 게이트를 갖고, 상기 읽기 트랜지스터는 상기 플로팅게이트노드에 전기적으로 연결된 게이트를 가짐 - 를 포함하는 것을 특징으로 하는 비휘발성 시냅스 회로.
  3. 제1항에 있어서,
    제2 입력신호를 제공하기 위한 제2 입력신호라인;
    을 더 포함하되,
    상기 셀은, 상기 제2 입력신호라인에 전기적으로 연결된 게이트를 가진 제2 상부 선택 트랜지스터와, 일단이 상기 제2 상부 선택 트랜지스터에 직렬로 연결되고 타단이 상기 기준 신호 라인에 전기적으로 연결된 제2 저항변화소자 - 상기 제2 저항변화소자의 값은 출력신호의 크기를 변경하도록 프로그램 가능함 - 를 더 포함하고,
    상기 셀의 상기 제2 상부 선택 트랜지스터의 드레인은 상기 제1 출력라인에 전기적으로 연결되는 것을 특징으로 하는 비휘발성 시냅스 회로.
  4. 제1항에 있어서,
    제2 입력신호를 제공하기 위한 제2 입력신호라인;
    을 더 포함하되,
    상기 셀은, 상기 제2 입력신호라인에 전기적으로 연결된 게이트를 가진 제2 상부 선택 트랜지스터와, 상기 제1 저항변화소자에 전기적으로 연결된 소스를 가진 상기 제2 상부 선택 트랜지스터 - 상기 제1 상부 선택 트랜지스터의 소스와 상기 제2 상부 선택 트랜지스터의 소스는 제1 공통노드에 직접 연결됨 - 를 더 포함하고,
    상기 셀의 상기 제2 상부 선택 트랜지스터의 드레인은 상기 제2 출력라인에 전기적으로 연결되는 것을 특징으로 하는 비휘발성 시냅스 회로.
  5. 제4항에 있어서,
    프로그래밍 신호를 제공하기 위한 프로그램라인;
    쓰기신호를 제공하기 위한 쓰기라인; 및
    지우기신호를 제공하기 위한 지우기라인;
    을 더 포함하되,
    상기 제1 저항변화소자는, 플로팅게이트노드를 갖도록 마련된 커플링 트랜지스터 및 쓰기 트랜지스터 - 상기 커플링 트랜지스터는 상기 프로그램라인에 전기적으로 연결되고, 상기 쓰기 트랜지스터는 상기 쓰기라인에 전기적으로 연결됨 - 와, 직렬로 마련된 읽기 트랜지스터 및 하부 선택 트랜지스터 - 상기 하부 선택 트랜지스터는 상기 기준 신호 라인에 전기적으로 연결된 소스와 상기 지우기라인에 전기적으로 연결된 게이트를 갖고, 상기 읽기 트랜지스터는 상기 플로팅게이트노드에 전기적으로 연결된 게이트와 상기 제1 공통노드에 직접 연결된 소스를 가짐 - 를 포함하는 것을 특징으로 하는 비휘발성 시냅스 회로.
  6. 제4 항에 있어서,
    제3 입력신호를 제공하기 위한 제3 입력신호라인; 및
    제4 입력신호를 제공하기 위한 제4 입력신호라인;
    을 더 포함하되,
    상기 셀은,
    상기 제3 입력신호라인에 전기적으로 연결된 게이트를 갖는 제3 상부 선택 트랜지스터;
    상기 제4 입력신호라인에 전기적으로 연결된 게이트를 가진 제4 상부 선택 트랜지스터를 포함하고,
    상기 제3 상부 선택 트랜지스터의 소스와 상기 제4 상부 선택 트랜지스터의 소스는 제2 공통노드에 직접 연결되고,
    제2 저항변화소자는 일단이 상기 제2 공통노드에 연결되고 타단이 상기 기준 신호 라인에 전기적으로 연결되며, 상기 제2 저항변화소자의 값은 출력신호의 크기를 변경하도록 프로그램 가능하며,
    상기 셀의 상기 제3 상부 선택 트랜지스터의 드레인은 상기 제1 출력라인에 전기적으로 연결되고,
    상기 셀의 상기 제4 상부 선택 트랜지스터의 드레인은 상기 제2 출력라인에 전기적으로 연결되는 것을 특징으로 하는 비휘발성 시냅스 회로.
  7. 제 1 입력 신호를 제공하기 위한 제 1 입력 신호 라인;
    제 2 입력 신호를 제공하기 위한 2 입력 신호 라인;
    기준 신호를 제공하기 위한 기준 신호 라인;
    제 1 및 제 2 출력 신호를 전달하기 위한 제 1 및 제 2 출력 라인;
    전기 신호를 저장하기위한 교차 결합 래치 회로를 포함하며,
    각각 입력 및 출력 단자를 갖는 제1 및 제2 인버터와, 제1 신호 노드에서 상기 제2 인버터의 출력 단자에 연결되는 제1 인버터의 입력 단자와, 제2 신호 노드에서 상기 제1 인버터의 출력 단자에 연결되는 제2 인버터의 입력 단자와, 제1 및 제2 출력 신호를 각각 생성하기 위한 제1 및 제2 셀들을 포함하고,
    각각의 제 1 및 제 2 셀은:
    상기 제 1 입력 신호 라인에 전기적으로 연결된 게이트를 갖는 제 1 상부 선택 트랜지스터;
    상기 제 2 입력 신호 라인에 전기적으로 연결된 게이트를 갖는 제 2 상부 선택 트랜지스터; 및
    공통노드에 직접 연결되는 제 1 상부 선택 트랜지스터의 소스 및 제 2 상부 선택 트랜지스터의 소스를 포함하고,
    제 1 셀의 공통노드는 교차 결합 래치 회로의 제 1 신호 노드에 전기적으로 결합되고, 제 2 셀의 공통노드는 교차 결합 래치 회로의 제 2 신호 노드에 전기적으로 결합되며,
    여기서 :
    제 1 셀의 제 1 상부 선택 트랜지스터의 드레인은 제 1 출력 라인에 전기적으로 연결되고, 제 2 셀의 제 1 상부 선택 트랜지스터의 드레인은 제 2 출력 라인에 전기적으로 연결되고,
    제 1 셀의 제 2 상부 선택 트랜지스터의 드레인은 제 2 출력 라인에 전기적으로 연결되고, 제 2 셀의 제 2 상부 선택 트랜지스터의 드레인은 제 1 출력 라인에 전기적으로 연결되고,
    교차 결합된 래치 회로의 제 1 및 제 2 인버터는 기준 신호 라인에 전기적으로 결합되는 것을 특징으로 하는 시냅스 회로.
  8. 제7항에 있어서,
    상기 교차 결합된 래치 회로는 비휘발성 메모리 회로로서 구현되는 것을 특징으로 하는 시냅스 회로.
  9. 칩의 요소를 제어하기위한 중앙처리 유닛;
    비휘발성 신경망 유닛;
    상기 비휘발성 신경망에 입력 신호를 제공하는 센서; 및
    메모리 유닛을 포함하며,
    상기 중앙처리 유닛, 센서, 메모리 유닛 및 비휘발성 신경망 유닛은 전기적으로 결합되고,
    상기 비휘발성 신경망 유닛은,
    복수의 비휘발성 시냅스를 포함하는 시냅스어레이;
    로우 드라이버;
    기준 생성기; 및
    감지 회로를 포함하며,
    상기 시냅스어레이, 로우 드라이버, 기준 생성기 및 감지 회로는 전기적으로 결합되고,
    각각의 비휘발성 시냅스는,
    로우 드라이버로부터 제1 입력 신호를 제공하는 제1 입력 신호 라인-상기 기준 생성기가 요구되는 전압 레벨을 로우 드라이버에 제공함-;
    로우 드라이버로부터 기준 신호를 제공하기위한 기준 신호 라인-기준 생성기가 요구되는 전압 레벨을 로우 드라이버에 제공함-;
    출력 신호를 전달하기 위한 제1 출력 라인-출력 신호는 감지 회로에 의해 처리됨-; 및
    출력 신호를 생성하기위한 제1 셀을 포함하며,
    각 셀은,
    상기 제1 입력 신호 라인에 전기적으로 연결된 게이트를 갖는 제1 상부 선택 트랜지스터; 및
    일단이 상기 제1 상부 선택 트랜지스터에 직렬로 연결되고 타단이 상기 기준 신호 라인에 전기적으로 연결되는 제1 저항변화소자를 포함하며 - 상기 제1 저항변화소자의 값은 출력 신호의 크기를 변경하도록 프로그래밍 가능함-
    여기서, 상기 제1 셀의 상기 제1 상부 선택 트랜지스터의 드레인은 상기 제1 출력 라인에 전기적으로 연결되는 것을 특징으로 하는 신경망 칩.
  10. 제9 항에 있어서,
    상기 시냅스어레이층의 각각의 비휘발성 시냅스는,
    로우 드라이버로부터 프로그래밍 신호를 제공하기 위한 프로그램 라인-기준 생성기는 로우 드라이버에 필요한 전압 레벨을 제공함-;
    로우 드라이버로부터 쓰기신호를 제공하기 위한 쓰기라인-기준 생성기는 요구되는 전압 레벨을 로우 드라이버에 제공함-; 및
    로우 드라이버로부터 지우기신호를 제공하는 지우기라인을 포함하며,
    제1 저항변화소자는,
    플로팅 게이트 노드를 갖도록 배열된 커플링 및 쓰기 트랜지스터-커플링 트랜지스터는 프로그램 라인에 전기적으로 결합되고, 쓰기 트랜지스터는 쓰기라인에 전기적으로 결합됨-; 및
    상부 선택 트랜지스터와 직렬로 배열된 읽기 트랜지스터 및 하부 선택 트랜지스터 - 하부 선택 트랜지스터는 기준 신호 라인에 전기적으로 연결된 소스 및 지우기라인에 전기적으로 연결된 게이트를 가지며, 읽기 트랜지스터는 게이트 노드에 전기적으로 결합된 플로팅게이트를 가짐 - 를 포함하는 것을 특징으로 하는 신경망 칩.
  11. 제9항에 있어서,
    상기 시냅스어레이층의 각각의 비휘발성 시냅스는,
    상기 로우 드라이버로부터 제2 입력 신호를 제공하는 제2 입력 신호 라인을 더 포함하며,
    상기 셀은,
    상기 제2 입력 신호 라인에 전기적으로 연결된 게이트를 갖는 제2 상부 선택 트랜지스터;
    일단이 상기 제2 상부 선택 트랜지스터에 직렬로 연결되고 타단이 상기 기준 신호 라인에 전기적으로 연결된 제2 저항 변화 소자로서, 상기 제2 저항 변화 소자의 값은 출력 신호의 크기를 변경하도록 프로그래밍 가능하며,
    상기 셀의 제2 상부 선택 트랜지스터의 드레인은 상기 제1 출력 라인에 전기적으로 결합되는 것을 특징으로 하는 신경망 칩.
  12. 제9 항에 있어서,
    상기 시냅스어레이층의 각각의 비휘발성 시냅스는,
    로우 드라이버로부터의 제2 입력 신호를 제공하기 위한 제2 입력 신호 라인-기준 생성기는 요구되는 전압 레벨을 로우 드라이버에 제공함-; 및
    제2 출력 신호를 제공하는 제2 출력 신호 라인을 포함하며,
    출력 신호를 전달하기 위해 출력 신호는 감지 회로에 의해 처리되고;
    상기 셀은,
    상기 제2 입력 신호 라인에 전기적으로 결합된 게이트를 갖는 제2 상부 선택 트랜지스터; 및
    상기 제2 상부 선택 트랜지스터는 상기 제1 저항변화소자에 전기적으로 결합된 소스 -상기 제1 상부 선택 트랜지스터의 소스 및 상기 제2 상부 선택 트랜지스터의 소스는 제1 공통노드에 직접 연결됨 - ;
    제1 셀의 제2 상부 선택 트랜지스터의 드레인은 제2 출력 라인에 전기적으로 결합되는 것을 특징으로 하는 신경망 칩.
  13. 제12 항에 있어서,
    상기 시냅스어레이층의 각각의 비휘발성 시냅스는,
    상기 로우 드라이버로부터 프로그래밍 신호를 제공하기위한 프로그램 라인 -상기 기준 생성기는 상기 요구되는 전압 레벨을 상기 로우 드라이버에 제공함- ;
    로우 드라이버로부터 쓰기신호를 제공하기 위한 쓰기라인 -기준 생성기는 요구되는 전압 레벨을 로우 드라이버에 제공함- ;
    로우 드라이버로부터 지우기신호를 제공하기위한 지우기라인-기준 생성기는 필요한 전압 레벨을 로우 드라이버에 제공함-;
    상기 제1 저항변화소자는,
    플로팅게이트노드를 갖도록 마련된 커플링트랜지스터 및 쓰기트랜지스터 - 상기 커플링트랜지스터는 상기 프로그램라인에 전기적으로 연결되고, 상기 쓰기트랜지스터는 상기 쓰기라인에 전기적으로 연결됨 - 와, 상기 제1 상부 선택 트랜지스터와 직렬로 마련된 읽기트랜지스터 및 하부 선택 트랜지스터 - 상기 하부 선택 트랜지스터는 상기 기준 신호 라인에 전기적으로 연결된 소스와 상기 지우기라인에 전기적으로 연결된 게이트를 갖고, 상기 읽기트랜지스터는 상기 플로팅게이트노드에 전기적으로 연결된 게이트를 가짐 - 를 포함하는 것을 특징으로 하는 비휘발성 신경망.
  14. 제12항에 있어서,
    상기 시냅스 어레이층에서 각각의 비휘발성 시냅스는,
    상기 로우 드라이버로부터 제3 입력신호를 제공하기 위한 제3 입력신호라인 -기준 생성기가 상기 요구되는 전압 레벨을 상기 로우 드라이버에 제공함- ; 및
    상기 로우 드라이버로부터 제4 입력 신호를 제공하기 위한 제4 입력신호라인 -상기 기준 생성기가 상기 요구되는 전압 레벨을 상기 로우 드라이버에 제공함- ; 을 더 포함하되,
    상기 셀들은,
    상기 제3 입력신호라인에 전기적으로 연결된 게이트를 갖는 제3 상부 선택 트랜지스터; 및
    상기 제4 입력신호라인에 전기적으로 연결된 게이트를 가진 제4 상부 선택 트랜지스터 - 상기 제3 상부 선택 트랜지스터의 소스와 상기 제4 상부 선택 트랜지스터의 소스는 제2 공통노드에 직접 연결되고, 제2 저항변화소자는 일단이 상기 제2 공통노드에 연결되고 타단이 상기 기준 신호 라인에 전기적으로 결합되며, 상기 제2 저항변화소자의 값은 출력신호의 크기를 변경하도록 프로그램 가능함- ; 를 더 포함하고,
    상기 셀의 제3 상부 선택 트랜지스터의 드레인은 상기 제1 출력라인에 전기적으로 결합되며,
    상기 셀의 제4 상부 선택 트랜지스터의 드레인은 상기 제2 출력라인에 전기적으로 결합되는 것을 특징으로 하는 비휘발성 신경망.
  15. 중앙처리 유닛;
    센서 유닛;
    신경망 엔진; 및
    논리 친화적 비휘발성 메모리 유닛을 포함하며,
    상기 중앙처리 유닛, 상기 센서 유닛, 상기 논리 친화적 비휘발성 메모리 유닛 및 상기 신경망 엔진은 시스템 버스에 의해 연결되고,
    상기 신경망 엔진은 논리 친화적 비휘발성 메모리에 저장된 데이터를 칩 외부로 전송하지 않고도 실행할 수 있는 것을 특징으로 하는 온-칩 신경망 시스템.
  16. 제15항에 있어서,
    상기 논리 친화적 비휘발성 메모리 유닛은 상기 신경망 엔진에 내장되고,
    상기 신경망 엔진은 상기 중앙처리 유닛의 개입없이 논리 친화적 비휘발성 메모리에 저장된 데이터에 액세스 할 수 있는 것을 특징으로 하는 온-칩 신경망 시스템.
  17. 칩의 요소들을 제어하기 위한 중앙처리 유닛;
    비휘발성 신경망 유닛;
    상기 비휘발성 신경망에 입력 신호를 제공하기 위한 센서; 및
    메모리 유닛을 포함하며,
    상기 중앙처리장치, 상기 센서, 상기 메모리 유닛 및 상기 비휘발성 신경망 유닛은 전기적으로 결합되고, 상기 비휘발성 신경망 유닛은 상기 중앙처리 유닛, 상기 메모리 유닛 및 상기 센서의 전압 및 주파수와 같은 작동 매개 변수를 제어하는 것을 특징으로 하는 신경망 칩.
KR1020207024195A 2018-01-23 2019-01-22 비휘발성의 시냅스 배열을 가지는 신경망 회로 KR102567160B1 (ko)

Applications Claiming Priority (9)

Application Number Priority Date Filing Date Title
US201862620947P 2018-01-23 2018-01-23
US62/620,947 2018-01-23
US201862655074P 2018-04-09 2018-04-09
US62/655,074 2018-04-09
US16/196,617 US11361215B2 (en) 2017-11-29 2018-11-20 Neural network circuits having non-volatile synapse arrays
US16/196,617 2018-11-20
US16/252,640 2019-01-20
US16/252,640 US11361216B2 (en) 2017-11-29 2019-01-20 Neural network circuits having non-volatile synapse arrays
PCT/US2019/014442 WO2019147522A2 (en) 2018-01-23 2019-01-22 Neural network circuits having non-volatile synapse arrays

Publications (2)

Publication Number Publication Date
KR20200110701A true KR20200110701A (ko) 2020-09-24
KR102567160B1 KR102567160B1 (ko) 2023-08-16

Family

ID=67395562

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020207024195A KR102567160B1 (ko) 2018-01-23 2019-01-22 비휘발성의 시냅스 배열을 가지는 신경망 회로

Country Status (5)

Country Link
EP (1) EP3743857A4 (ko)
KR (1) KR102567160B1 (ko)
CN (1) CN111656371B (ko)
TW (1) TWI751403B (ko)
WO (1) WO2019147522A2 (ko)

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11694751B2 (en) 2019-11-30 2023-07-04 Semibrain Inc. Logic compatible flash memory programming with a pulse width control scheme
US11636322B2 (en) * 2020-01-03 2023-04-25 Silicon Storage Technology, Inc. Precise data tuning method and apparatus for analog neural memory in an artificial neural network
US11475946B2 (en) 2020-01-16 2022-10-18 International Business Machines Corporation Synapse weight update compensation
US11663455B2 (en) * 2020-02-12 2023-05-30 Ememory Technology Inc. Resistive random-access memory cell and associated cell array structure
CN112465128B (zh) * 2020-11-30 2024-05-24 光华临港工程应用技术研发(上海)有限公司 神经元网络单元
CN113655993A (zh) * 2021-03-17 2021-11-16 神盾股份有限公司 乘积和运算装置
CN113793631A (zh) * 2021-08-03 2021-12-14 特忆智能科技 使用反馈电路控制rram器件的装置

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20130133111A (ko) * 2012-05-28 2013-12-06 송승환 순수 로직 트랜지스터로 구성된 플래시 메모리
US20160048755A1 (en) * 2014-08-14 2016-02-18 The Regents Of The University Of Michigan Floating-gate transistor array for performing weighted sum computation
US20160111163A1 (en) * 2005-07-14 2016-04-21 Sau Ching Wong Parallel programming of nonvolatile memory cells
US20160336052A1 (en) * 2014-01-22 2016-11-17 Commissariat A L'energie Atomiue Et Aux Energies Alternatives Multi-port non-volatile memory
US9715916B1 (en) * 2016-03-24 2017-07-25 Intel Corporation Supply-switched dual cell memory bitcell
KR20170117863A (ko) * 2016-04-14 2017-10-24 에스케이하이닉스 주식회사 고정된 저항 값들을 갖는 시냅스들을 포함하는 뉴로모픽 소자
US20170337466A1 (en) * 2016-05-17 2017-11-23 Silicon Storage Technology, Inc. Deep Learning Neural Network Classifier Using Non-volatile Memory Array

Family Cites Families (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0277871A (ja) * 1988-06-14 1990-03-16 Mitsubishi Electric Corp 神経回路網
US4956564A (en) * 1989-07-13 1990-09-11 Intel Corporation Adaptive synapse cell providing both excitatory and inhibitory connections in an associative network
US5353382A (en) * 1990-10-15 1994-10-04 California Institute Of Technology Programmable synapse for neural network applications
JP3119392B2 (ja) * 1992-06-03 2000-12-18 直 柴田 半導体装置
US5336937A (en) * 1992-08-28 1994-08-09 State University Of New York Programmable analog synapse and neural networks incorporating same
US5721704A (en) * 1996-08-23 1998-02-24 Motorola, Inc. Control gate driver circuit for a non-volatile memory and memory using same
AU2003243137A1 (en) * 2002-03-22 2003-10-08 Georgia Tech Research Corporation Floating-gate analog circuit
EP1861014A1 (en) * 2004-10-04 2007-12-05 Statchip ApS A handheld home monitoring sensors network device
US7167392B1 (en) 2005-07-15 2007-01-23 National Semiconductor Corporation Non-volatile memory cell with improved programming technique
US8515885B2 (en) * 2010-10-29 2013-08-20 International Business Machines Corporation Neuromorphic and synaptronic spiking neural network with synaptic weights learned using simulation
WO2013108299A1 (ja) * 2012-01-20 2013-07-25 パナソニック株式会社 ニューラルネットワーク回路の学習方法
WO2014139047A1 (en) * 2013-03-14 2014-09-18 Micron Technology, Inc. Memory systems and methods including training,data organizing,and/or shadowing
CN104240753B (zh) * 2013-06-10 2018-08-28 三星电子株式会社 突触阵列、脉冲整形电路和神经形态系统
US9934831B2 (en) * 2014-04-07 2018-04-03 Micron Technology, Inc. Apparatuses and methods for storing and writing multiple parameter codes for memory operating parameters
GB201419355D0 (en) * 2014-10-30 2014-12-17 Ibm Neuromorphic synapses
US9881253B2 (en) * 2014-11-07 2018-01-30 International Business Machines Corporation Synaptic neural network core based sensor system
US10019631B2 (en) * 2015-11-05 2018-07-10 Qualcomm Incorporated Adapting to appearance variations when tracking a target object in video sequence
US11361215B2 (en) * 2017-11-29 2022-06-14 Anaflash Inc. Neural network circuits having non-volatile synapse arrays

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20160111163A1 (en) * 2005-07-14 2016-04-21 Sau Ching Wong Parallel programming of nonvolatile memory cells
KR20130133111A (ko) * 2012-05-28 2013-12-06 송승환 순수 로직 트랜지스터로 구성된 플래시 메모리
US20160336052A1 (en) * 2014-01-22 2016-11-17 Commissariat A L'energie Atomiue Et Aux Energies Alternatives Multi-port non-volatile memory
US20160048755A1 (en) * 2014-08-14 2016-02-18 The Regents Of The University Of Michigan Floating-gate transistor array for performing weighted sum computation
US9715916B1 (en) * 2016-03-24 2017-07-25 Intel Corporation Supply-switched dual cell memory bitcell
KR20170117863A (ko) * 2016-04-14 2017-10-24 에스케이하이닉스 주식회사 고정된 저항 값들을 갖는 시냅스들을 포함하는 뉴로모픽 소자
US20170337466A1 (en) * 2016-05-17 2017-11-23 Silicon Storage Technology, Inc. Deep Learning Neural Network Classifier Using Non-volatile Memory Array

Also Published As

Publication number Publication date
EP3743857A4 (en) 2021-12-29
TWI751403B (zh) 2022-01-01
KR102567160B1 (ko) 2023-08-16
EP3743857A2 (en) 2020-12-02
CN111656371B (zh) 2024-06-04
WO2019147522A3 (en) 2020-04-09
TW201937413A (zh) 2019-09-16
WO2019147522A2 (en) 2019-08-01
CN111656371A (zh) 2020-09-11

Similar Documents

Publication Publication Date Title
US11361216B2 (en) Neural network circuits having non-volatile synapse arrays
KR102567160B1 (ko) 비휘발성의 시냅스 배열을 가지는 신경망 회로
US11604974B2 (en) Neural network computation circuit including non-volatile semiconductor memory element
US11615299B2 (en) Neural network computation circuit including non-volatile semiconductor memory element
US20220277199A1 (en) Method for data processing in neural network system and neural network system
US11620505B2 (en) Neuromorphic package devices and neuromorphic computing systems
US11157810B2 (en) Resistive processing unit architecture with separate weight update and inference circuitry
JP2018521400A (ja) メモリスタ神経形態学的回路及びメモリスタ神経形態学的回路をトレーニングするための方法
TWI698884B (zh) 記憶體裝置及其操作方法
TWI699711B (zh) 記憶體裝置及其製造方法
Bennett et al. Contrasting advantages of learning with random weights and backpropagation in non-volatile memory neural networks
Lee et al. Novel method enabling forward and backward propagations in NAND flash memory for on-chip learning
KR102607860B1 (ko) 3차원 적층 시냅스 구조를 갖는 뉴로모픽 장치 및 이를 포함하는 메모리 장치
CN108154227B (zh) 一种使用模拟计算的神经网络芯片
US10249360B1 (en) Method and circuit for generating a reference voltage in neuromorphic system
CN108154226B (zh) 一种使用模拟计算的神经网络芯片
US10262725B1 (en) Selective bit-line sensing method and storage device utilizing the same
CN115796252A (zh) 权重写入方法及装置、电子设备和存储介质
JP7480391B2 (ja) インメモリコンピューティングのための記憶装置
Valentian et al. SPIRIT: A First Mixed-Signal SNN Using Co-integrated CMOS Neurons and Resistive Synapses
Lee Next-generation AI: From Algorithm to Device Perspectives
CN116997187A (zh) Cmos半导体存储阵列及存内计算电路

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