KR20230006499A - 인공 신경망에서 아날로그 신경 메모리 어레이를 위한 적응적 바이어스 디코더 - Google Patents

인공 신경망에서 아날로그 신경 메모리 어레이를 위한 적응적 바이어스 디코더 Download PDF

Info

Publication number
KR20230006499A
KR20230006499A KR1020227039865A KR20227039865A KR20230006499A KR 20230006499 A KR20230006499 A KR 20230006499A KR 1020227039865 A KR1020227039865 A KR 1020227039865A KR 20227039865 A KR20227039865 A KR 20227039865A KR 20230006499 A KR20230006499 A KR 20230006499A
Authority
KR
South Korea
Prior art keywords
volatile memory
memory system
voltage
adaptive bias
source
Prior art date
Application number
KR1020227039865A
Other languages
English (en)
Inventor
휴 반 트란
투안 뷰
스테펜 트린
스탠리 홍
난 도
마르크 리텐
안 리
Original Assignee
실리콘 스토리지 테크놀로지 인크
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 실리콘 스토리지 테크놀로지 인크 filed Critical 실리콘 스토리지 테크놀로지 인크
Publication of KR20230006499A publication Critical patent/KR20230006499A/ko

Links

Images

Classifications

    • 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
    • G11C16/00Erasable programmable read-only memories
    • G11C16/02Erasable programmable read-only memories electrically programmable
    • G11C16/06Auxiliary circuits, e.g. for writing into memory
    • G11C16/08Address circuits; Decoders; Word-line control circuits
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C16/00Erasable programmable read-only memories
    • G11C16/02Erasable programmable read-only memories electrically programmable
    • G11C16/04Erasable programmable read-only memories electrically programmable using variable threshold transistors, e.g. FAMOS
    • G11C16/0408Erasable programmable read-only memories electrically programmable using variable threshold transistors, e.g. FAMOS comprising cells containing floating gate transistors
    • G11C16/0425Erasable programmable read-only memories electrically programmable using variable threshold transistors, e.g. FAMOS comprising cells containing floating gate transistors comprising cells containing a merged floating gate and select transistor
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C16/00Erasable programmable read-only memories
    • G11C16/02Erasable programmable read-only memories electrically programmable
    • G11C16/06Auxiliary circuits, e.g. for writing into memory
    • G11C16/24Bit-line control circuits
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C16/00Erasable programmable read-only memories
    • G11C16/02Erasable programmable read-only memories electrically programmable
    • G11C16/06Auxiliary circuits, e.g. for writing into memory
    • G11C16/30Power supply circuits
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C2216/00Indexing scheme relating to G11C16/00 and subgroups, for features not directly covered by these groups
    • G11C2216/02Structural aspects of erasable programmable read-only memories
    • G11C2216/04Nonvolatile memory cell provided with a separate control gate for erasing the cells, i.e. erase gate, independent of the normal read control gate
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C7/00Arrangements for writing information into, or reading information out from, a digital store
    • G11C7/12Bit line control circuits, e.g. drivers, boosters, pull-up circuits, pull-down circuits, precharging circuits, equalising circuits, for bit lines
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C8/00Arrangements for selecting an address in a digital store
    • G11C8/08Word line control circuits, e.g. drivers, boosters, pull-up circuits, pull-down circuits, precharging circuits, for word lines

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Health & Medical Sciences (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Biomedical Technology (AREA)
  • General Health & Medical Sciences (AREA)
  • Molecular Biology (AREA)
  • Neurology (AREA)
  • Microelectronics & Electronic Packaging (AREA)
  • Non-Volatile Memory (AREA)
  • Read Only Memory (AREA)
  • Debugging And Monitoring (AREA)

Abstract

아날로그 신경 메모리 어레이들의 많은 실시예들이 개시된다. 특정 실시예들은 접지가 0V를 초과하는 경우들을 보상하기 위해 어레이 입력 라인들에 추가적인 바이어스를 제공하기 위한 적응적 바이어스 디코더를 포함한다. 이것은, 예를 들어, 판독, 프로그램, 또는 소거 동작에 대한 전압 강하를 최소화하면서 동작의 정확도를 유지하는 데 유용하다.

Description

인공 신경망에서 아날로그 신경 메모리 어레이를 위한 적응적 바이어스 디코더
우선권 주장
본 출원은 2020년 7월 6일자로 출원되고, 발명의 명칭이 "소스 라인 풀다운 메커니즘을 갖는 인공 신경망 내의 아날로그 신경 메모리 어레이용 적응적 바이어스 디코더(Adaptive Bias Decoder for Analog Neural Memory Array in Artificial Neural Network)"인 미국 가특허 출원 제63/048,470호, 및 2021년 1월 4일자로 출원되고, 발명의 명칭이 "인공 신경망 내의 아날로그 신경 메모리 어레이용 적응적 바이어스 디코더(Adaptive Bias Decoder for Analog Neural Memory Array in Artificial Neural Network)"인 미국 특허 출원 제17/140,924호에 대한 우선권을 주장한다.
기술분야
아날로그 신경 메모리 어레이들의 많은 실시예들이 개시된다.
인공 신경망은 생물학적 신경망(동물의 중추신경계, 특히 뇌)을 모방하며, 다수의 입력에 의존할 수 있고 일반적으로 알려져 있지 않은 함수를 추정하거나 근사화하는 데 이용된다. 인공 신경망은, 일반적으로, 서로 메시지들을 교환하는 상호접속된 "뉴런(neuron)들"의 층들을 포함한다.
도 1은 인공 신경망을 예시하며, 여기서 원들은 뉴런들의 층들 또는 입력들을 나타낸다. 연결부들(시냅스(synapse)들로 지칭됨)은 화살표로 표현되며, 경험에 기초하여 튜닝될 수 있는 수치 가중치를 갖는다. 이것은 인공 신경망을 입력에 적응할 수 있게 하고 학습할 수 있게 한다. 전형적으로, 인공 신경망은 다수의 입력들의 층을 포함한다. 전형적으로 뉴런들의 하나 이상의 중간 층, 및 신경망의 출력을 제공하는 뉴런들의 출력 층이 있다. 각각의 레벨의 뉴런들은 개별적으로 또는 집합적으로 시냅스들로부터의 수신된 데이터에 기초하여 결정을 행한다.
고성능 정보 처리를 위한 인공 신경망의 개발에서의 주요 과제들 중 하나는 적절한 하드웨어 기술의 결여이다. 사실상, 실제 인공 신경망은 매우 많은 수의 시냅스들에 의존하여, 뉴런들 사이의 높은 접속성, 즉 매우 높은 계산 병렬성(computational parallelism)을 가능하게 한다. 원칙적으로, 그러한 복잡성은 디지털 슈퍼컴퓨터들 또는 특수 그래픽 처리 유닛 클러스터들로 달성될 수 있다. 그러나, 고비용에 더하여, 이들 접근법은 또한 주로 저-정밀 아날로그 계산을 수행하기 때문에 훨씬 적은 에너지를 소비하는 생물학적 망(biological network)과 비교하여 평범한 에너지 효율을 겪는다. CMOS 아날로그 회로가 인공 신경망에 사용되어 왔지만, 대부분의 CMOS-구현된 시냅스들은 많은 수의 뉴런들 및 시냅스들을 고려해 볼 때 너무 부피가 컸다.
출원인은, 참고로 포함되는, 미국 특허 공개 제2017/0337466호로서 공개된, 미국 특허 출원 제15/594,439호에서 하나 이상의 비휘발성 메모리 어레이를 시냅스로서 이용하는 인공 (아날로그) 신경망을 이전에 개시하였다. 비휘발성 메모리 어레이들은 아날로그 뉴로모픽 메모리(analog neuromorphic memory)로서 동작한다. 본 명세서에서 사용된 바와 같은, 용어 '뉴로모픽'은 신경계의 모델을 구현하는 회로부를 의미한다. 아날로그 뉴로모픽 메모리는 제1 복수의 입력들을 수신하고 그로부터 제1 복수의 출력들을 생성하도록 구성된 제1 복수의 시냅스들, 및 제1 복수의 출력들을 수신하도록 구성된 제1 복수의 뉴런들을 포함한다. 제1 복수의 시냅스들은 복수의 메모리 셀들을 포함하는데, 여기서 메모리 셀들 각각은 반도체 기판 내에 형성되고 채널 영역이 사이에 연장되는 이격된 소스 영역과 드레인 영역, 채널 영역의 제1 부분 위에 배치되고 그로부터 절연되는 플로팅 게이트, 및 채널 영역의 제2 부분 위에 배치되고 그로부터 절연되는 비-플로팅 게이트를 포함한다. 복수의 메모리 셀들 각각은 플로팅 게이트 상의 전자들의 수에 대응하는 가중치 값을 저장하도록 구성된다. 복수의 메모리 셀들은 제1 복수의 입력들을 저장된 가중치 값들과 승산하여 제1 복수의 출력들을 생성하도록 구성된다. 이러한 방식으로 배열된 메모리 셀들의 어레이는 벡터x매트릭스 승산(vector by matrix multiplication, VMM) 어레이로 지칭될 수 있다.
VMM들에서 사용될 수 있는 상이한 비휘발성 메모리 셀들의 예들이 이제 논의될 것이다.
비휘발성 메모리 셀들
다양한 유형의 공지된 비휘발성 메모리 셀들이 VMM 어레이들에서 사용될 수 있다. 예를 들어, 본 명세서에 참고로 포함되는, 미국 특허 제5,029,130호("'130 특허")는 플래시 메모리 셀들의 한 유형인, 분리형 게이트 비휘발성 메모리 셀들의 어레이를 개시하고 있다. 그러한 메모리 셀(210)이 도 2에 도시되어 있다. 각각의 메모리 셀(210)은 반도체 기판(12) 내에 형성된 소스 영역(14) 및 드레인 영역(16)을 포함하며, 그 영역들 사이에 채널 영역(18)이 있다. 플로팅 게이트(20)가 소스 영역(14)의 일부분 위에, 그리고 채널 영역(18)의 제1 부분 위에 형성되고 그로부터 절연된다(그리고 그의 전도율을 제어한다). 워드 라인 단자(22)(전형적으로 워드 라인에 결합됨)가 채널 영역(18)의 제2 부분 위에 배치되고 그로부터 절연되는(그리고 그의 전도율을 제어하는) 제1 부분, 및 위쪽으로 그리고 플로팅 게이트(20) 위로 연장되는 제2 부분을 갖는다. 플로팅 게이트(20) 및 워드 라인 단자(22)는 게이트 산화물에 의해 기판(12)으로부터 절연된다. 비트 라인 단자(24)가 드레인 영역(16)에 결합된다.
메모리 셀(210)은 워드 라인 단자(22) 상에 높은 포지티브 전압을 배치함으로써 소거되는데(여기서 전자들이 플로팅 게이트로부터 제거됨), 이는 플로팅 게이트(20) 상의 전자들이 파울러-노드하임 터널링(Fowler-Nordheim tunneling)을 통해 중간 절연체를 통과하여 플로팅 게이트(20)로부터 워드 라인 단자(22)로 터널링하게 한다.
메모리 셀(210)은 워드 라인 단자(22) 상에 포지티브 전압을, 그리고 소스 영역(14) 상에 포지티브 전압을 배치함으로써 프로그래밍된다(여기서 전자들이 플로팅 게이트 상에 배치됨). 전자 전류가 드레인 영역(16)으로부터 소스 영역(14)(소스 라인 단자)으로 흐를 것이다. 전자들은 그들이 워드 라인 단자(22)와 플로팅 게이트(20) 사이의 갭에 도달할 때 가속되고 여기될(가열될) 것이다. 가열된 전자들 중 일부는 플로팅 게이트(20)로부터의 정전 인력으로 인해 게이트 산화물을 통과하여 플로팅 게이트(20) 상으로 주입될 것이다.
메모리 셀(210)은 드레인 영역(16) 및 워드 라인 단자(22) 상에 포지티브 판독 전압들을 배치함(이는 워드 라인 단자 아래의 채널 영역(18)의 부분을 턴온시킴)으로써 판독된다. 플로팅 게이트(20)가 포지티브로 대전되면(즉, 전자들이 소거되면), 플로팅 게이트(20) 아래의 채널 영역(18)의 부분이 또한 턴온되고, 전류가 채널 영역(18)을 가로질러 흐를 것이며, 이는 소거된 또는 "1" 상태로 감지된다. 플로팅 게이트(20)가 네거티브로 대전되면(즉, 전자들로 프로그래밍되면), 플로팅 게이트(20) 아래의 채널 영역의 부분은 대부분 또는 완전히 턴오프되고, 전류가 채널 영역(18)을 가로질러 흐르지 않을 것이며(또는 흐름이 거의 없을 것이며), 이는 프로그래밍된 또는 "0" 상태로 감지된다.
표 1은 판독, 소거, 및 프로그램 동작들을 수행하기 위해 메모리 셀(610)의 단자들에 인가될 수 있는 전형적인 전압 범위들을 보여준다:
[표 1]
Figure pct00001
"판독 1"은 셀 전류가 비트 라인 상에서 출력되는 판독 모드이다. "판독 2"는 셀 전류가 소스 라인 단자 상에서 출력되는 판독 모드이다.
도 3은 제어 게이트(CG) 단자(28)가 추가된 도 2의 메모리 셀(210)과 유사한, 메모리 셀(310)을 도시한다. 제어 게이트 단자(28)는 프로그래밍에서 고전압, 예를 들어 10V, 소거에서 저전압 또는 네거티브 전압, 예를 들어 0v/-8V, 판독에서 저전압 또는 중간 범위 전압, 예를 들어 0v/2.5V로 바이어싱된다. 다른 단자들은 도 2의 것과 유사하게 바이어싱된다.
도 4는 소스 영역(14), 드레인 영역(16), 채널 영역(18)의 제1 부분 위의 플로팅 게이트(20), 채널 영역(18)의 제2 부분 위의 선택 게이트(22)(전형적으로 워드 라인(WL)에 결합됨), 플로팅 게이트(20) 위의 제어 게이트(28), 및 소스 영역(14) 위의 소거 게이트(30)를 포함하는 4-게이트 메모리 셀(410)을 도시한다. 이러한 구성은, 모든 목적을 위해 본 명세서에 참고로 포함되는, 미국 특허 제6,747,310호에 기재되어 있다. 여기서, 모든 게이트들은 플로팅 게이트(20)를 제외하고 비-플로팅 게이트들이며, 이는 그들이 전압 소스에 전기적으로 접속되거나 접속 가능하다는 것을 의미한다. 프로그래밍은 채널 영역(18)으로부터의 가열된 전자들이 플로팅 게이트(20) 상으로 자신들을 주입하는 것에 의해 수행된다. 소거는 전자들이 플로팅 게이트(20)로부터 소거 게이트(30)로 터널링하는 것에 의해 수행된다.
표 2은 판독, 소거, 및 프로그램 동작들을 수행하기 위해 메모리 셀(410)의 단자들에 인가될 수 있는 전형적인 전압 범위들을 보여준다:
[표 2]
Figure pct00002
"판독 1"은 셀 전류가 비트 라인 상에서 출력되는 판독 모드이다. "판독 2"는 셀 전류가 소스 라인 단자 상에서 출력되는 판독 모드이다.
도 5는 메모리 셀(510)이 소거 게이트(EG) 단자를 포함하지 않는다는 점을 제외하고는 도 4의 메모리 셀(410)과 유사한, 메모리 셀(510)을 도시한다. 소거는 기판(18)을 고전압으로 바이어싱하고 제어 게이트(CG) 단자(28)를 저전압 또는 네거티브 전압으로 바이어싱함으로써 수행된다. 대안적으로, 소거는 워드 라인 단자(22)를 포지티브 전압으로 바이어싱하고 제어 게이트 단자(28)를 네거티브 전압으로 바이어싱함으로써 수행된다. 프로그래밍 및 판독은 도 4의 것과 유사하다.
도 6은 플래시 메모리 셀의 다른 유형인 3-게이트 메모리 셀(610)을 도시한다. 메모리 셀(610)은, 메모리 셀(610)이 별개의 제어 게이트 단자를 갖지 않는다는 점을 제외하고는, 도 4의 메모리 셀(410)과 동일하다. 소거 동작(그에 의해 소거 게이트 단자의 사용을 통해 소거가 발생함) 및 판독 동작은, 제어 게이트 바이어스가 인가되지 않는다는 점을 제외하고는, 도 4의 것과 유사하다. 프로그래밍 동작은 또한 제어 게이트 바이어스 없이 행해지고, 결과적으로, 제어 게이트 바이어스의 결여를 보상하기 위해 프로그램 동작 동안 소스 라인 단자 상에 더 높은 전압이 인가되어야 한다.
표 3은 판독, 소거, 및 프로그램 동작들을 수행하기 위해 메모리 셀(610)의 단자들에 인가될 수 있는 전형적인 전압 범위들을 보여준다:
[표 3]
Figure pct00003
"판독 1"은 셀 전류가 비트 라인 상에서 출력되는 판독 모드이다. "판독 2"는 셀 전류가 소스 라인 단자 상에서 출력되는 판독 모드이다.
도 7은 플래시 메모리 셀의 다른 유형인 적층형 게이트 메모리 셀(710)을 도시한다. 메모리 셀(710)은, 절연 층(도시되지 않음)에 의해 분리되어, 플로팅 게이트(20)가 전체 채널 영역(18) 위로 연장되고, 제어 게이트 단자(22)(여기서 워드 라인에 결합될 것임)가 플로팅 게이트(20) 위로 연장된다는 점을 제외하고는, 도 2의 메모리 셀(210)과 유사하다. 프로그래밍은 드레인 영역(16) 옆의 채널 영역에서 채널(18)로부터 플로팅 게이트(20)로의 핫 전자 주입을 사용하여 수행되고, 소거는 플로팅 게이트(20)로부터 기판(12)으로의 파울러-노드하임 전자 터널링을 사용하여 수행된다. 판독 동작들은 메모리 셀(210)에 대해 이전에 설명된 것과 유사한 방식으로 동작한다.
표 4는 판독, 소거, 및 프로그램 동작들을 수행하기 위해 기판(12) 및 메모리 셀(710)의 단자들에 인가될 수 있는 전형적인 전압 범위들을 보여준다:
[표 4]
Figure pct00004
"판독 1"은 셀 전류가 비트 라인 상에서 출력되는 판독 모드이다. "판독 2"는 셀 전류가 소스 라인 단자 상에서 출력되는 판독 모드이다. 선택적으로, 메모리 셀들(210, 310, 410, 510, 610, 또는 710)의 로우(row)들 및 컬럼(column)들을 포함하는 어레이들에서, 소스 라인들은 메모리 셀들의 하나의 로우에 또는 메모리 셀들의 2개의 인접한 로우들에 결합될 수 있다. 즉, 소스 라인 단자들은 메모리 셀들의 인접한 로우들에 의해 공유될 수 있다.
도 8은 트윈 분리형-게이트 메모리 셀(810)을 도시한다. 메모리 셀(810)은, 기판(12) 위에 배치되고 이로부터 절연된 플로팅 게이트(FG)(20), 플로팅 게이트(20) 위에 배치되고 이로부터 절연된 제어 게이트(CG)(28), 플로팅 및 제어 게이트(20/28)에 인접하여 배치되고 이로부터 절연되고 기판(12) 위에 배치되고 이로부터 절연된 소거 게이트(EG)(30) - 여기서 소거 게이트는 소거 효율을 향상시키기 위해 제어 게이트(CG)의 상부 모서리가 T자형 소거 게이트의 내부 모서리를 대향하도록 T자형으로 생성됨 -, 및 플로팅 게이트(20)에 인접하는 기판 내의 드레인 영역(DR)(16)(드레인 확산 영역(DR)(16)에 연결된 비트 라인 접촉부(BL)(24)를 가짐)을 포함한다. 메모리 셀들은 공통 소거 게이트(30)를 공유하는, 메모리 셀들의 쌍들(좌측의 A 및 우측의 B)로서 형성된다. 이 셀 설계는 적어도, 소거 게이트(EG) 아래에 소스 영역이 없고, 각각의 메모리 셀에 선택 게이트(워드 라인으로도 지칭됨), 및 채널 영역이 없다는 점에서, 도 2 내지 도 7을 참조하여 상기 논의된 메모리 셀과는 상이하다. 대신, 단일 연속 채널 영역(18)이 양측의 메모리 셀 아래에서 연장된다(즉, 하나의 메모리 셀의 드레인 영역(16)으로부터 다른 메모리 셀의 드레인 영역(16)으로 연장된다). 하나의 메모리 셀을 판독 또는 프로그래밍하기 위해, 다른 메모리 셀의 제어 게이트(28)는 하부 채널 영역 부분을 그들 사이의 플로팅 게이트(20)와의 전압 커플링을 통해 턴온시키도록 충분한 전압으로 상승된다(예컨대, 셀(A)을 판독 또는 프로그래밍하기 위해, FGB 상의 전압은 CGB로부터의 전압 커플링을 통해 상승되어, FGB 아래의 채널 영역 부분을 턴온시킨다). 소거는 플로팅 게이트(20)로부터 소거 게이트(30)로의 파울러 노드하임 전자 터널링을 이용하여 수행된다. 프로그래밍은 채널(18)로부터 플로팅 게이트(20)로의 핫 전자 주입을 사용하여 수행되며, 이는 표 5의 프로그래밍 1로서 표시되어 있다. 대안적으로, 프로그래밍은 소거 게이트(30)로부터 플로팅 게이트(20)로의 파울러 노드하임 전자 터널링을 이용하여 수행되며, 이는 표 5의 프로그램 2로서 표시되어 있다. 대안적으로, 프로그래밍은 채널(18)로부터 플로팅 게이트(20)로의 파울러 노드하임 전자 터널링을 이용하여 수행되며, 이 경우에, 조건은 기판이 낮은 전압 또는 네거티브 전압으로 바이어스되는 반면 소거 게이트는 낮은 포지티브 전압으로 바이어스되는 것을 제외하고는 프로그래밍 2와 유사하다.
표 5는 판독, 소거, 및 프로그램 동작들을 수행하기 위해 메모리 셀(810)의 단자들에 인가될 수 있는 전형적인 전압 범위들을 보여준다:
[표 5]
Figure pct00005
인공 신경망에서 위에서 설명된 비휘발성 메모리 셀들의 유형들 중 하나를 포함하는 메모리 어레이들을 이용하기 위해, 두 가지 수정이 이루어진다. 첫째, 라인들은, 하기에서 추가로 설명되는 바와 같이, 각각의 메모리 셀이 어레이 내의 다른 메모리 셀들의 메모리 상태에 악영향을 미치지 않으면서 개별적으로 프로그래밍, 소거, 및 판독될 수 있도록 구성된다. 둘째, 메모리 셀들의 연속적인 (유사한) 프로그래밍이 제공된다.
구체적으로, 어레이 내의 각각의 메모리 셀의 메모리 상태(즉, 플로팅 게이트 상의 전하)는, 독립적으로 그리고 다른 메모리 셀들의 교란을 최소화시킨 상태로, 완전 소거된 상태로부터 완전 프로그래밍된 상태로 연속적으로 변경될 수 있다. 다른 실시예에서, 어레이 내의 각각의 메모리 셀의 메모리 상태(즉, 플로팅 게이트 상의 전하)는, 독립적으로 그리고 다른 메모리 셀들의 교란을 최소화시킨 상태로, 완전 프로그래밍된 상태로부터 완전 소거된 상태로 연속적으로 변경될 수 있고, 그 역으로도 가능하다. 이것은 셀 저장소가 유사하거나 또는 적어도, 많은 개별 값들(예컨대 16개 또는 64개의 상이한 값) 중 하나를 저장할 수 있음을 의미하는데, 이는 메모리 어레이 내의 모든 셀들의 매우 정밀하고 개별적인 튜닝을 허용하고, 메모리 어레이를 신경망의 시냅스 가중치들에 대한 미세 튜닝 조정을 저장하고 행하는 데 이상적인 것으로 되게 한다.
본 명세서에 설명된 방법들 및 수단들은, 제한 없이, FINFET 분리형 게이트 플래시 또는 적층 게이트 플래시 메모리, NAND 플래시, SONOS(silicon-oxide-nitride-oxide-silicon, 질화물 내의 전하 트랩), MONOS(metal-oxide-nitride-oxide-silicon, 질화물 내의 금속 전하 트랩), ReRAM(resistive ram), PCM(phase change memory), MRAM(magnetic ram), FeRAM(ferroelectric ram), OTP(bi-level or multi-level one time programmable), 및 CeRAM(correlated electron ram)과 같은 다른 비휘발성 메모리 기술들에 적용될 수 있다. 본 명세서에 설명된 방법 및 수단은, 제한 없이, SRAM, DRAM, 및 다른 휘발성 시냅스 셀들과 같은 신경망에 대해 사용되는 휘발성 메모리 기술들에 적용될 수 있다.
비휘발성 메모리 셀 어레이들을 채용한 신경망들
도 9는 본 실시예의 비휘발성 메모리 어레이를 활용하는 신경망의 비제한적인 예를 개념적으로 예시한다. 이 예는 안면 인식 애플리케이션에 대해 비휘발성 메모리 어레이 신경망을 이용하지만, 비휘발성 메모리 어레이 기반 신경망을 이용하여 임의의 다른 적절한 애플리케이션이 구현될 수 있다.
S0은, 이 예에 대해, 5 비트 정밀도를 갖는 32x32 픽셀 RGB 이미지(즉, 각각의 색상 R, G 및 B에 대해 하나씩인 3개의 32x32 픽셀 어레이들, 각각의 픽셀은 5 비트 정밀도임)인 입력 층이다. 입력 층(S0)으로부터 층(C1)으로 가는 시냅스들(CB1)은 몇몇 예에서 가중치들 및 다른 예에서 공유 가중치들의 상이한 세트들을 적용하며, 입력 이미지를 3x3 픽셀 중첩 필터들(커널(kernel))로 스캔하여, 필터를 1 픽셀(또는 모델별로 지시되는 바와 같이 1 초과 픽셀)만큼 시프트시킨다. 구체적으로, 이미지의 3x3 부분 내의 9개 픽셀들(즉, 필터 또는 커널로 지칭됨)에 대한 값들이 시냅스들(CB1)에 제공되며, 여기서 이들 9개의 입력 값들이 적절한 가중치들과 승산되고, 그 승산의 출력들을 합산한 후, 단일 출력 값이 결정되고, 피처 맵(feature map)(C1)의 층들 중 하나의 층의 픽셀을 생성하기 위해 CB1의 제1 시냅스에 의해 제공된다. 이어서, 3x3 필터가 입력 층(S0) 내에서 하나의 픽셀씩 우측으로 시프트되며(즉, 우측에 3개 픽셀들의 컬럼을 추가하고, 좌측에서 3개 픽셀들의 컬럼을 뺌), 여기서 이러한 새롭게 위치된 필터에서의 9개 픽셀 값들이 시냅스들(CB1)에 제공되고, 이에 의해 이들은 동일한 가중치들과 승산되고, 제2 단일 출력 값이 연관된 시냅스에 의해 결정된다. 이러한 프로세스는, 3개의 모든 색상들에 대해 그리고 모든 비트들(정밀도 값들)에 대해, 3x3 필터가 입력 층(S0)의 전체 32x32 픽셀 이미지를 가로질러서 스캔할 때까지 계속된다. 이어서, 프로세스는, 층(C1)의 모든 피처 맵들이 계산될 때까지, 가중치들의 상이한 세트들을 사용하여 반복되어 C1의 상이한 피처 맵을 생성한다.
층(C1)에, 본 예에서, 각각 30x30 픽셀들을 갖는 16개 피처 맵들이 있다. 각각의 픽셀은 입력들과 커널을 승산하는 것으로부터 추출된 새로운 피처 픽셀이고, 따라서 각각의 피처 맵은 2차원 어레이이고, 따라서, 이러한 예에서, 층(C1)은 2차원 어레이들의 16개 층들을 구성한다(본 명세서에서 언급된 층들 및 어레이들은 반드시 물리적 관계인 것이 아니라 논리적 관계임 - 즉, 어레이들은 반드시 물리적으로 2차원 어레이들로 배향되지는 않음 - 에 유념한다). 층(C1) 내의 16개 피처 맵들 각각은 필터 스캔에 적용되는 시냅스 가중치들의 상이한 16개 세트들 중 하나의 세트에 의해 생성된다. C1 피처 맵들은 모두, 경계 식별과 같은 동일한 이미지 피처의 상이한 태양들에 관한 것일 수 있다. 예를 들어, 제1 맵(이러한 제1 맵을 생성하는 데 사용되는 모든 스캔을 위해 공유되는 제1 가중치 세트를 사용하여 생성됨)은 원형 에지들을 식별할 수 있고, 제2 맵(제1 가중치 세트와는 상이한 제2 가중치 세트를 사용하여 생성됨)은 직사각형 에지들, 또는 특정 피처들의 종횡비 등을 식별할 수 있다.
활성화 함수(P1)(풀링(pooling))가 층(C1)으로부터 층(S1)으로 가기 전에 적용되는데, 이는 각각의 피처 맵 내의 연속적인 비중첩 2x2 영역들로부터의 값들을 풀링한다. 풀링 함수의 목적은, 예를 들어 에지 위치의 의존성을 감소시키고 다음 스테이지로 가기 전에 데이터 크기를 감소시키기 위해 인근 위치를 평균하는 것이다(또는 최대 함수가 또한 사용될 수 있음). 층(S1)에, 16개 15x15 피처 맵들(즉, 각각 15x15 픽셀들의 상이한 16개 어레이들)이 있다. 층(S1)으로부터 층(C2)으로 가는 시냅스들(CB2)은 1 픽셀의 필터 시프트를 갖는 4x4 필터들로 S1 내의 맵들을 스캔한다. 층(C2)에, 22개 12x12 피처 맵들이 있다. 활성화 함수(P2)(풀링)가 층(C2)으로부터 층(S2)으로 가기 전에 적용되는데, 이는 각각의 피처 맵 내의 연속적인 비중첩 2x2 영역들로부터의 값들을 풀링한다. 층(S2)에, 22개 6x6 피처 맵들이 있다. 활성화 함수(풀링)가 층(S2)으로부터 층(C3)으로 가는 시냅스들(CB3)에서 적용되며, 여기서 층(C3) 내의 모든 뉴런은 CB3의 각자의 시냅스를 통해 층(S2) 내의 모든 맵에 접속된다. 층(C3)에, 64개 뉴런들이 있다. 층(C3)으로부터 출력 층(S3)으로 가는 시냅스들(CB4)은 C3을 S3에 완전히 접속시키는데, 즉 층(C3) 내의 모든 뉴런은 층(S3) 내의 모든 뉴런에 접속된다. S3에서의 출력은 10개 뉴런들을 포함하고, 여기서 최고 출력 뉴런이 클래스를 결정한다. 이러한 출력은, 예를 들어, 원래의 이미지의 내용의 식별 또는 분류를 나타낼 수 있다.
시냅스들의 각각의 층은 비휘발성 메모리 셀들의 어레이 또는 그들의 어레이의 일부를 사용하여 구현된다.
도 10은 그 목적을 위해 사용될 수 있는 시스템의 블록 다이어그램이다. VMM 시스템(32)은 비휘발성 메모리 셀들을 포함하고, 하나의 층과 다음 층 사이에서 시냅스들(예컨대, 도 6의 CB1, CB2, CB3, 및 CB4)로서 이용된다. 구체적으로, VMM 시스템(32)은 로우들 및 컬럼들로 배열된 비휘발성 메모리 셀들을 포함하는 VMM 어레이(33), 소거 게이트 및 워드 라인 게이트 디코더(34), 제어 게이트 디코더(35), 비트 라인 디코더(36) 및 소스 라인 디코더(37)를 포함하며, 이들은 비휘발성 메모리 셀 어레이(33)에 대한 각자의 입력들을 디코딩한다. VMM 어레이(33)로의 입력은 소거 게이트 및 워드 라인 게이트 디코더(34)로부터 또는 제어 게이트 디코더(35)로부터일 수 있다. 이 예에서의 소스 라인 디코더(37)는 또한 VMM 어레이(33)의 출력을 디코딩한다. 대안적으로, 비트 라인 디코더(36)는 VMM 어레이(33)의 출력을 디코딩할 수 있다.
VMM 어레이(33)는 두 가지 목적에 기여한다. 첫째, 그것은 VMM 시스템(32)에 의해 사용될 가중치들을 저장한다. 둘째, VMM 어레이(33)는 사실상 입력들을 VMM 어레이(33)에 저장된 가중치들과 승산하고 이들을 출력 라인(소스 라인 또는 비트 라인)마다 가산하여 출력을 생성하며, 이는 다음 층에 대한 입력 또는 최종 층에 대한 입력일 것이다. 승산 및 가산 함수를 수행함으로써, VMM 어레이(33)는 별개의 승산 및 가산 로직 회로들에 대한 필요성을 무효화하고, 또한 그의 인시투(in-situ) 메모리 계산으로 인해 전력 효율적이다.
VMM 어레이(33)의 출력은 차동 합산기(예컨대, 합산 연산 증폭기 또는 합산 전류 미러)(38)에 공급되고, 이는 VMM 어레이(33)의 출력들을 합산하여 그 콘볼루션(convolution)에 대한 단일 값을 생성한다. 차동 합산기(38)는 포지티브 가중치 및 네거티브 가중치 입력들 둘 모두의 합산을 수행하여 단일 값을 출력하도록 배열된다.
이어서 차동 합산기(38)의 합산된 출력 값들은 활성화 함수 회로(39)에 공급되며, 이는 출력을 정류한다. 활성화 함수 회로(39)는 시그모이드(sigmoid), tanh, ReLU 함수들, 또는 임의의 다른 비-선형 함수를 제공할 수 있다. 활성화 함수 회로(39)의 정류된 출력 값은 다음 층(예를 들어, 도 9의 C1)의 피처 맵의 요소가 되고, 이어서 다음 시냅스에 적용되어 다음 피처 맵 층 또는 최종 층을 생성한다. 따라서, 이 예에서, VMM 어레이(33)는 복수의 시냅스들(이들은 이전 뉴런 층으로부터 또는 이미지 데이터베이스와 같은 입력 층으로부터 그들의 입력들을 수신함)을 구성하고, 합산기(38) 및 활성화 함수 회로(39)는 복수의 뉴런들을 구성한다.
도 10의 VMM 시스템(32)에의 입력(WLx, EGx, CGx, 및 선택적으로 BLx 및 SLx)은 아날로그 레벨, 이진 레벨, 디지털 펄스들(이 경우에 펄스들을 적절한 입력 아날로그 레벨로 변환하기 위해 펄스-아날로그 변환기(PAC)가 필요할 수 있음) 또는 디지털 비트들(이 경우에 디지털 비트들을 적절한 입력 아날로그 레벨로 변환하기 위해 DAC가 제공됨)일 수 있고, 출력은 아날로그 레벨(예를 들어, 전류, 전압, 또는 전하), 이진 레벨, 디지털 펄스들, 또는 디지털 비트들(이 경우에 출력 아날로그 레벨을 디지털 비트들로 변환하기 위해 출력 ADC가 제공됨)일 수 있다.
도 11은, 여기서 VMM 시스템들(32a, 32b, 32c, 32d, 및 32e)로서 라벨링된, VMM 시스템들(32)의 다수의 층들의 사용을 도시하는 블록 다이어그램이다. 도 11에 도시된 바와 같이, Inputx로 표시된 입력은 디지털-아날로그 변환기(31)에 의해 디지털로부터 아날로그로 변환되고, 입력 VMM 시스템(32a)에 제공된다. 변환된 아날로그 입력들은 전압 또는 전류일 수 있다. 제1 층에 대한 입력 D/A 변환은, 입력들(Inputx)을 입력 VMM 시스템(32a)의 매트릭스 승산기에 대한 적절한 아날로그 레벨들에 매핑시키는 함수 또는 LUT(look up table)를 사용함으로써 행해질 수 있다. 입력 변환은 또한, 외부 아날로그 입력을 입력 VMM 시스템(32a)으로의 매핑된 아날로그 입력으로 변환하기 위한 아날로그-아날로그(A/A) 변환기에 의해 행해질 수 있다. 입력 변환은 또한 외부 디지털 입력을 입력 VMM 시스템(32a)에 대한 매핑된 디지털 펄스 또는 펄스들로 변환하기 위해 디지털-디지털 펄스(D/P) 변환기에 의해 행해질 수 있다.
입력 VMM 시스템(32a)에 의해 생성된 출력은 다음 VMM 시스템(은닉 레벨 1)(32b)에 대한 입력으로서 제공되고, 이는 이어서 다음 VMM 시스템(은닉 레벨 2)(32c)에 대한 입력으로서 제공되는 출력을 생성하고, 등등이다. VMM 시스템(32)의 다양한 층들은 컨볼루션 신경망(convolutional neural network, CNN)의 시냅스들 및 뉴런들의 상이한 층들로서 기능한다. 각각의 VMM 시스템(32a, 32b, 32c, 32d, 및 32e)은 각자의 비휘발성 메모리 어레이를 포함하는 독립형의, 물리적 시스템일 수 있거나, 또는 다수의 VMM 시스템들이 동일한 물리적 비휘발성 메모리 어레이의 상이한 부분들을 이용할 수 있거나, 또는 다수의 VMM 시스템들이 동일한 물리적 비휘발성 메모리 어레이의 중첩 부분들을 이용할 수 있다. 각각의 VMM 시스템(32a, 32b, 32c, 32d, 및 32e)은 또한 그의 어레이 또는 뉴런의 다양한 부분에 대해 시간 다중화될 수 있다. 도 11에 도시된 예는 다음과 같은 5개의 층(32a, 32b, 32c, 32d, 32e)을 포함한다: 하나의 입력 층(32a), 2개의 은닉 층(32b, 32c) 및 2개의 완전히 접속된 층(32d, 32e). 당업자는 이것은 단지 예시적인 것이고 시스템이 대신에 2개 초과의 은닉 층들 및 2개 초과의 완전히 접속된 층들을 포함할 수 있다는 것을 인식할 것이다.
VMM 어레이들
도 12는 뉴런 VMM 어레이(1200)를 도시하며, 이는 도 3에 도시된 바와 같은 메모리 셀들(310)에 특히 적합하고, 입력 층과 다음 층 사이의 뉴런들의 부분들 및 시냅스들로서 이용된다. VMM 어레이(1200)는 비휘발성 메모리 셀들의 메모리 어레이(1201), 및 비휘발성 기준 메모리 셀들의 (어레이의 상부에 있는) 기준 어레이(1202)를 포함한다. 대안적으로, 다른 기준 어레이가 하부에 배치될 수 있다.
VMM 어레이(1200)에서, 제어 게이트 라인(1203)과 같은 제어 게이트 라인들이 수직 방향으로 이어지고(따라서, 로우 방향의 기준 어레이(1202)는 제어 게이트 라인(1203)에 직교함), 소거 게이트 라인(1204)과 같은 소거 게이트 라인들이 수평 방향으로 이어진다. 여기서, VMM 어레이(1200)로의 입력들은 제어 게이트 라인들(CG0, CG1, CG2, CG3) 상에 제공되고, VMM 어레이(1200)의 출력은 소스 라인들(SL0, SL1) 상에 나타난다. 일 실시예에서 짝수 로우들만이 사용되고, 다른 실시예에서 홀수 로우들만이 사용된다. 각각의 소스 라인(각각, SL0, SL1) 상에 배치된 전류는 그 특정 소스 라인에 접속된 메모리 셀들로부터의 모든 전류들의 합산 함수를 수행한다.
신경망들에 대해 본 명세서에 설명된 바와 같이, VMM 어레이(1200)의 비휘발성 메모리 셀들, 즉 VMM 어레이(1200)의 플래시 메모리는 바람직하게는 하위-임계 영역에서 동작하도록 구성된다.
본 명세서에 기술된 비휘발성 기준 메모리 셀들 및 비휘발성 메모리 셀들은 약 반전(weak inversion)으로 바이어싱되며:
Ids = Io * e (Vg- Vth)/nVt = w * Io * e (Vg)/nVt,
여기서 w = e (- Vth)/nVt
여기서 Ids는 드레인-소스 전류이고; Vg는 메모리 셀 상의 게이트 전압이고; Vth는 메모리 셀의 임계 전압이고; Vt는 열 전압 = k*T/q이며, 이때 k는 볼츠만 상수이고, T는 켈빈 단위의 온도이고, q는 전자 전하이고; n은 기울기 인자 = 1 + (Cdep/Cox)이며, 이때 Cdep = 공핍 층의 커패시턴스이고, Cox는 게이트 산화물 층의 커패시턴스이고; Io는 임계 전압과 동일한 게이트 전압에서의 메모리 셀 전류이고, Io는 (Wt/L)*u*Cox* (n-1) * Vt2에 비례하며, 여기서 u는 캐리어 이동도이고, Wt 및 L은 메모리 셀의, 각각, 폭 및 길이이다.
메모리 셀(예컨대, 기준 메모리 셀 또는 주변 메모리 셀)을 사용하는 I-V 로그 변환기 또는 입력 전류 Ids를 입력 전압 Vg로 변환하기 위한 트랜지스터에 대해:
Vg= n*Vt*log [Ids/wp*Io]
여기서, wp는 기준 또는 주변 메모리 셀의 w이다.
메모리 셀(예컨대, 기준 메모리 셀 또는 주변 메모리 셀)을 사용하는 I-V 로그 변환기 또는 입력 전류 Ids를 입력 전압 Vg로 변환하기 위한 트랜지스터에 대해:
Vg= n*Vt*log [Ids/wp*Io]
여기서, wp는 기준 또는 주변 메모리 셀의 w이다.
벡터 매트릭스 승산기(VMM) 어레이로서 사용되는 메모리 어레이에 대해, 출력 전류는 다음과 같다:
Iout = wa * Io * e (Vg)/nVt, 즉
Iout = (wa/wp) * Iin = W * Iin
W = e (Vthp - Vtha)/nVt
Iin = wp * Io * e (Vg)/nVt
여기서, wa = 메모리 어레이 내의 각각의 메모리 셀의 w이다.
워드 라인 또는 제어 게이트가 입력 전압을 위해 메모리 셀에 대한 입력으로서 사용될 수 있다.
대안적으로, 본 명세서에 기술된 VMM 어레이들의 비휘발성 메모리 셀들은 선형 영역에서 동작하도록 구성될 수 있다:
Ids = beta* (Vgs-Vth)*Vds; beta = u*Cox*Wt/L,
Wα (Vgs-Vth),
이는 선형 영역에서의 가중치 W가 (Vgs-Vth)에 비례한다는 것을 의미함.
워드 라인 또는 제어 게이트 또는 비트 라인 또는 소스 라인이 선형 영역에서 동작되는 메모리 셀에 대한 입력으로서 사용될 수 있다. 비트 라인 또는 소스 라인은 메모리 셀에 대한 출력으로서 사용될 수 있다.
I-V 선형 변환기에 대해, 선형 영역에서 동작하는 메모리 셀(예컨대, 기준 메모리 셀 또는 주변 메모리 셀) 또는 트랜지스터, 또는 저항기가 입력/출력 전류를 입력/출력 전압으로 선형적으로 변환하는 데 사용될 수 있다.
대안적으로, 본 명세서에 기술된 VMM 어레이들의 메모리 셀들은 포화 영역에서 동작하도록 구성될 수 있다:
Ids = ½ * beta* (Vgs-Vth)2; beta = u*Cox*Wt/L
Wα (Vgs-Vth)2, 이는 가중치 W가 (Vgs-Vth)2에 비례한다는 것을 의미함
워드 라인, 제어 게이트, 또는 소거 게이트가 포화 영역에서 동작되는 메모리 셀에 대한 입력으로서 사용될 수 있다. 비트 라인 또는 소스 라인은 출력 뉴런에 대한 출력으로서 사용될 수 있다.
대안적으로, 본 명세서에 기술된 VMM 어레이들의 메모리 셀들은 신경망의 각각의 층 또는 다중 층들에 대한 모든 영역들 또는 이들의 조합(하위 임계, 선형, 또는 포화)에서 사용될 수 있다.
도 13은 뉴런 VMM 어레이(1300)를 도시하며, 이는 도 2에 도시된 바와 같은 메모리 셀들(210)에 특히 적합하고, 입력 층과 다음 층 사이의 시냅스로서 이용된다. VMM 어레이(1300)는 비휘발성 메모리 셀들의 메모리 어레이(1303), 제1 비휘발성 기준 메모리 셀들의 기준 어레이(1301), 및 제2 비휘발성 기준 메모리 셀들의 기준 어레이(1302)를 포함한다. 어레이의 컬럼 방향으로 배열된 기준 어레이들(1301 및 1302)은, 단자들(BLR0, BLR1, BLR2, 및 BLR3) 내로 흐르는 전류 입력들을 전압 입력들(WL0, WL1, WL2, 및 WL3)로 변환하는 역할을 한다. 실제로, 제1 및 제2 비휘발성 기준 메모리 셀들은 그들 내로 흐르는 전류 입력들과 멀티플렉서들(1314)(단지 부분적으로 도시됨)을 통해 다이오드 접속된다. 기준 셀들은 타겟 기준 레벨들로 튜닝(예컨대, 프로그래밍)된다. 타겟 기준 레벨들은 기준 미니-어레이 매트릭스(도시되지 않음)에 의해 제공된다.
메모리 어레이(1303)는 두 가지 목적에 기여한다. 첫째, 그것은 VMM 어레이(1300)에 의해 사용될 가중치들을 그것의 각자의 메모리 셀들 상에 저장한다. 둘째, 메모리 어레이(1303)는 입력들(즉, 단자들(BLR0, BLR1, BLR2, 및 BLR3)에 제공되는 전류 입력들, 이것에 대해 기준 어레이들(1301 및 1302)이 워드 라인들(WL0, WL1, WL2, 및 WL3)에 공급할 입력 전압들로 변환함)을 메모리 어레이(1303)에 저장된 가중치들과 유효하게 승산하고, 이어서 모든 결과들(메모리 셀 전류들)을 가산하여 각자의 비트 라인들(BL0 - BLN) 상의 출력을 생성하는데, 이는 다음 층에 대한 입력 또는 최종 층에 대한 입력일 것이다. 승산 및 가산 함수를 수행함으로써, 메모리 어레이(1303)는 별개의 승산 및 가산 로직 회로들에 대한 필요성을 무효화하고, 또한 전력 효율적이다. 여기서, 전압 입력들은 워드 라인들(WL0, WL1, WL2, 및 WL3) 상에 제공되고, 출력은 판독(추론) 동작 동안 각자의 비트 라인들(BL0 - BLN) 상에 나타난다. 비트 라인들(BL0 - BLN) 각각에 배치된 전류는 그 특정 비트 라인에 접속된 모든 비휘발성 메모리 셀들로부터의 전류들의 합산 함수를 수행한다.
표 6은 VMM 어레이(1300)에 대한 동작 전압들을 보여준다. 표 내의 컬럼들은 선택된 셀들에 대한 워드 라인들, 비선택된 셀들에 대한 워드 라인들, 선택된 셀들에 대한 비트 라인들, 비선택된 셀들에 대한 비트 라인들, 선택된 셀들에 대한 소스 라인들, 및 비선택된 셀들에 대한 소스 라인들 상에 배치된 전압들을 나타내며, 여기서 FLT는 플로팅을 나타내는데, 즉 전압이 부과되지 않음을 나타낸다. 로우들은 판독, 소거, 및 프로그램의 동작들을 나타낸다.
[표 6]
Figure pct00006
도 14는 뉴런 VMM 어레이(1400)를 도시하며, 이는 도 2에 도시된 바와 같은 메모리 셀들(210)에 특히 적합하고, 입력 층과 다음 층 사이의 뉴런들의 부분들 및 시냅스들로서 이용된다. VMM 어레이(1400)는 비휘발성 메모리 셀들의 메모리 어레이(1403), 제1 비휘발성 기준 메모리 셀들의 기준 어레이(1401), 및 제2 비휘발성 기준 메모리 셀들의 기준 어레이(1402)를 포함한다. 기준 어레이들(1401 및 1402)은 VMM 어레이(1400)의 로우 방향으로 이어진다. VMM 어레이는, VMM 어레이(1400)에서 워드 라인들이 수직 방향으로 이어진다는 점을 제외하고는, VMM(1300)과 유사하다. 여기서, 입력들은 워드 라인들(WLA0, WLB0, WLA1, WLB2, WLA2, WLB2, WLA3, WLB3) 상에 제공되고, 출력은 판독 동작 동안 소스 라인(SL0, SL1) 상에 나타난다. 각각의 소스 라인 상에 배치된 전류는 그 특정 소스 라인에 접속된 메모리 셀들로부터의 모든 전류들의 합산 함수를 수행한다.
표 7은 VMM 어레이(1400)에 대한 동작 전압들을 보여준다. 표 내의 컬럼들은 선택된 셀들에 대한 워드 라인들, 비선택된 셀들에 대한 워드 라인들, 선택된 셀들에 대한 비트 라인들, 비선택된 셀들에 대한 비트 라인들, 선택된 셀들에 대한 소스 라인들, 및 비선택된 셀들에 대한 소스 라인들 상에 배치된 전압들을 나타낸다. 로우들은 판독, 소거, 및 프로그램의 동작들을 나타낸다.
[표 7]
Figure pct00007
도 15는 뉴런 VMM 어레이(1500)를 도시하며, 이는 도 3에 도시된 바와 같은 메모리 셀들(310)에 특히 적합하고, 입력 층과 다음 층 사이의 뉴런들의 부분들 및 시냅스들로서 이용된다. VMM 어레이(1500)는 비휘발성 메모리 셀들의 메모리 어레이(1503), 제1 비휘발성 기준 메모리 셀들의 기준 어레이(1501), 및 제2 비휘발성 기준 메모리 셀들의 기준 어레이(1502)를 포함한다. 기준 어레이들(1501 및 1502)은 단자들(BLR0, BLR1, BLR2, 및 BLR3) 내로 흐르는 전류 입력들을 전압 입력들(CG0, CG1, CG2, 및 CG3)로 변환하는 역할을 한다. 실제로, 제1 및 제2 비휘발성 기준 메모리 셀들은 BLR0, BLR1, BLR2, 및 BLR3을 통해 그들 내로 흐르는 전류 입력들과 멀티플렉서들(1512)(단지 부분적으로 도시됨)을 통해 다이오드 접속된다. 멀티플렉서들(1512) 각각은 판독 동작 동안 제1 및 제2 비휘발성 기준 메모리 셀들 각각의 비트 라인(예컨대, BLR0) 상의 일정한 전압을 보장하기 위해 각각의 멀티플렉서(1505) 및 캐스코딩 트랜지스터(cascoding transistor)(1504)를 포함한다. 기준 셀들은 타겟 기준 레벨들로 튜닝된다.
메모리 어레이(1503)는 두 가지 목적에 기여한다. 첫째, 그것은 VMM 어레이(1500)에 의해 사용될 가중치들을 저장한다. 둘째, 메모리 어레이(1503)는 입력들(단자들(BLR0, BLR1, BLR2, 및 BLR3)에 제공되는 전류 입력들, 이것에 대해 기준 어레이들(1501 및 1502)이 이러한 전류 입력들을 제어 게이트들(CG0, CG1, CG2, 및 CG3)에 공급할 입력 전압들로 변환함)을 메모리 어레이에 저장된 가중치들과 유효하게 승산하고, 이어서 모든 결과들(셀 전류들)을 가산하여 출력을 생성하는데, 이는 BL0 - BLN 상에 나타나며 다음 층에 대한 입력 또는 최종 층에 대한 입력일 것이다. 승산 및 가산 함수를 수행함으로써, 메모리 어레이는 별개의 승산 및 가산 로직 회로들에 대한 필요성을 무효화하고, 또한 전력 효율적이다. 여기서, 입력들은 제어 게이트 라인들(CG0, CG1, CG2, 및 CG3) 상에 제공되고, 출력은 판독 동작 동안 비트 라인들(BL0 - BLN) 상에 나타난다. 각각의 비트 라인 상에 배치된 전류는 그 특정 비트 라인에 접속된 메모리 셀들로부터의 모든 전류들의 합산 함수를 수행한다.
VMM 어레이(1500)는 메모리 어레이(1503) 내의 비휘발성 메모리 셀들에 대한 단방향 튜닝을 구현한다. 즉, 각각의 비휘발성 메모리 셀은 소거되고, 이어서 플로팅 게이트 상의 원하는 전하에 도달할 때까지 부분적으로 프로그래밍된다. 이것은, 예를 들어, 후술되는 정밀 프로그래밍 기법들을 사용하여 수행될 수 있다. (잘못된 값이 셀에 저장되도록) 너무 많은 전하가 플로팅 게이트 상에 배치되는 경우, 셀은 소거되어야 하고, 부분 프로그래밍 동작들의 시퀀스가 다시 시작되어야 한다. 도시된 바와 같이, 동일한 소거 게이트(예컨대, EG0 또는 EG1)를 공유하는 2개의 로우들이 함께 소거될 필요가 있고(페이지 소거로서 알려짐), 그 후에 각각의 셀은 플로팅 게이트 상의 원하는 전하에 도달할 때까지 부분적으로 프로그래밍된다.
표 8은 VMM 어레이(1500)에 대한 동작 전압들을 보여준다. 표 내의 컬럼들은 선택된 셀들에 대한 워드 라인들, 비선택된 셀들에 대한 워드 라인들, 선택된 셀들에 대한 비트 라인들, 비선택된 셀들에 대한 비트 라인들, 선택된 셀들에 대한 제어 게이트들, 선택된 셀들과 동일한 섹터 내의 비선택된 셀들에 대한 제어 게이트들, 선택된 셀들과는 상이한 섹터 내의 비선택된 셀들에 대한 제어 게이트들, 선택된 셀들에 대한 소거 게이트들, 비선택된 셀들에 대한 소거 게이트들, 선택된 셀들에 대한 소스 라인들, 및 비선택된 셀들에 대한 소스 라인들 상에 배치된 전압들을 나타낸다. 로우들은 판독, 소거, 및 프로그램의 동작들을 나타낸다.
[표 8]
Figure pct00008
도 16은 뉴런 VMM 어레이(1600)를 도시하며, 이는 도 3에 도시된 바와 같은 메모리 셀들(310)에 특히 적합하고, 입력 층과 다음 층 사이의 뉴런들의 부분들 및 시냅스들로서 이용된다. VMM 어레이(1600)는 비휘발성 메모리 셀들의 메모리 어레이(1603), 제1 비휘발성 기준 메모리 셀들의 기준 어레이(1601), 및 제2 비휘발성 기준 메모리 셀들의 기준 어레이(1602)를 포함한다. EG 라인들(EGR0, EG0, EG1, 및 EGR1)은 수직으로 이어지는 반면, CG 라인들(CG0, CG1, CG2, 및 CG3) 및 SL 라인들(WL0, WL1, WL2, 및 WL3)은 수평으로 이어진다. VMM 어레이(1600)는, VMM 어레이(1600)가 양방향 튜닝을 구현한다는 점을 제외하고는 VMM 어레이(1600)와 유사하며, 여기서 각각의 개별 셀은 별개의 EG 라인들의 사용으로 인해 플로팅 게이트 상의 원하는 전하량에 도달하기 위해 필요에 따라 완전히 소거되고, 부분적으로 프로그래밍되고, 부분적으로 소거될 수 있다. 도시된 바와 같이, 기준 어레이들(1601 및 1602)은 (멀티플렉서들(1614)을 통한 다이오드 접속된 기준 셀들의 액션을 통해) 단자(BLR0, BLR1, BLR2, 및 BLR3) 내의 입력 전류를 로우 방향으로 메모리 셀들에 인가될 제어 게이트 전압들(CG0, CG1, CG2, 및 CG3)로 변환한다. 전류 출력(뉴런)은 비트 라인들(BL0 - BLN)에 있으며, 여기서 각각의 비트 라인은 그 특정 비트 라인에 접속된 비휘발성 메모리 셀들로부터의 모든 전류들을 합산한다.
표 9는 VMM 어레이(1600)에 대한 동작 전압들을 보여준다. 표 내의 컬럼들은 선택된 셀들에 대한 워드 라인들, 비선택된 셀들에 대한 워드 라인들, 선택된 셀들에 대한 비트 라인들, 비선택된 셀들에 대한 비트 라인들, 선택된 셀들에 대한 제어 게이트들, 선택된 셀들과 동일한 섹터 내의 비선택된 셀들에 대한 제어 게이트들, 선택된 셀들과는 상이한 섹터 내의 비선택된 셀들에 대한 제어 게이트들, 선택된 셀들에 대한 소거 게이트들, 비선택된 셀들에 대한 소거 게이트들, 선택된 셀들에 대한 소스 라인들, 및 비선택된 셀들에 대한 소스 라인들 상에 배치된 전압들을 나타낸다. 로우들은 판독, 소거, 및 프로그램의 동작들을 나타낸다.
[표 9]
Figure pct00009
VMM 어레이들에 대한 입력은 아날로그 레벨, 이진 레벨, 타이밍 펄스들, 또는 디지털 비트들일 수 있고, 출력은 아날로그 레벨, 이진 레벨, 타이밍 펄스들, 또는 디지털 비트들일 수 있다(이러한 경우에 출력 ADC는 출력 아날로그 레벨 전류 또는 전압을 디지털 비트들로 변환하는 데 필요하다).
VMM 어레이 내의 각각의 메모리 셀에 대해, 각각의 가중치(w)는 단일 메모리 셀에 의해 또는 차동 셀에 의해 또는 2개의 블렌드(blend) 메모리 셀들(2개 이상의 셀들의 평균)에 의해 구현될 수 있다. 차동 셀의 경우에, 2개의 메모리 셀들은 차동 가중치(w = w+ - w-)로서 가중치(w)를 구현하는 데 필요하다. 2개의 블렌드 메모리 셀들에서, 2개의 메모리 셀들은 2개의 셀들의 평균으로서 가중치(w)를 구현하는 데 필요하다.
종래 기술의 비휘발성 메모리 셀들의 어레이들의 하나의 결점은 판독 또는 소거 동작을 수행하기 위해 소스 라인들을 접지로 풀링하는 데 비교적 상당한 양의 시간이 필요하다는 것이다.
필요한 것은 종래 기술의 시스템들에서보다 더 정확하게 소스 라인을 접지로 폴링다운할 수 있는 개선된 VMM 시스템이다. 더 필요한 것은, 소스 라인이 0 V보다 큰 전압까지 당겨지는 경우(즉, "접지"라인이 실제로 0 V에서가 아닌 경우)에 입력 및/또는 출력 라인에 VMM 시스템으로 인가된 바이어스를 변경할 수 있는 적응적 바이어스 회로이다.
아날로그 신경 메모리 어레이들의 많은 실시예들이 개시된다. 소정 실시예들은 소스 라인들을 접지로 정확하게 풀링 다운하기 위한 개선된 메커니즘들을 포함한다. 이것은, 예를 들어, 판독, 프로그램, 또는 소거 동작에 대한 전압 강하를 최소화하는 데 유용하다. 다른 실시예들은 네거티브 및 포지티브 가중치들을 갖는 네거티브 및 포지티브 입력들에 대한 구현들을 포함한다. 다른 실시예들은 소스 라인이 0 V보다 큰 전압까지 당겨지는 경우들(즉, "접지"라인이 실제로 0 V에서가 아닌 경우)에서 입력 또는 출력 라인들에 VMM 시스템으로 바이어스를 변경할 수 있는 적응적 바이어스 회로를 포함한다.
도 1은 종래 기술의 인공 신경망을 도시한다.
도 2는 종래 기술의 분리형 게이트 플래시 메모리 셀을 도시한다.
도 3은 다른 종래 기술의 분리형 게이트 플래시 메모리 셀을 도시한다.
도 4는 다른 종래 기술의 분리형 게이트 플래시 메모리 셀을 도시한다.
도 5는 다른 종래 기술의 분리형 게이트 플래시 메모리 셀을 도시한다.
도 6은 다른 종래 기술의 분리형 게이트 플래시 메모리 셀을 도시한다.
도 7은 종래 기술의 적층형 게이트 플래시 메모리 셀을 도시한다.
도 8은 트윈 분리형-게이트 메모리 셀을 도시한다.
도 9는 하나 이상의 VMM 어레이를 활용하는 상이한 레벨들의 예시적인 인공 신경망을 도시한다.
도 10은 VMM 어레이 및 다른 회로부를 포함하는 VMM 시스템을 도시한다.
도 11은 하나 이상의 VMM 시스템들을 활용하는 예시적인 인공 신경망을 도시한다.
도 12는 VMM 어레이의 실시예를 도시한다.
도 13은 VMM 어레이의 다른 실시예를 도시한다.
도 14는 VMM 어레이의 다른 실시예를 도시한다.
도 15는 VMM 어레이의 다른 실시예를 도시한다.
도 16은 VMM 어레이의 다른 실시예를 도시한다.
도 17은 VMM 시스템을 도시한다.
도 18a, 도 18b, 및 도 18c는 종래 기술의 VMM 어레이를 도시한다.
도 19a, 도 19b, 및 도 19c는 개선된 VMM 어레이를 도시한다.
도 20은 다른 개선된 VMM 어레이를 도시한다.
도 21은 개선된 소스 라인 풀다운 메커니즘을 갖는 VMM 시스템을 도시한다.
도 22는 개선된 소스 라인 풀다운 메커니즘을 갖는 다른 VMM 시스템을 도시한다.
도 23은 개선된 소스 라인 풀다운 메커니즘을 갖는 다른 VMM 시스템을 도시한다.
도 24는 개선된 소스 라인 풀다운 메커니즘을 갖는 다른 VMM 시스템을 도시한다.
도 25는 개선된 소스 라인 풀다운 메커니즘을 갖는 VMM 시스템의 예시적인 레이아웃 다이어그램을 도시한다.
도 26은 개선된 소스 라인 풀다운 메커니즘을 갖는 VMM 시스템의 다른 예시적인 레이아웃 다이어그램을 도시한다.
도 27a, 도 27b, 및 도 27c는 다른 개선된 VMM 어레이들을 도시한다.
도 28은 중복 어레이를 포함하는 다른 개선된 VMM 어레이를 도시한다.
도 29는 2개의 VMM 어레이들 및 공유된 더미 비트 라인 스위칭 회로부를 포함하는 다른 개선된 VMM 시스템을 도시한다.
도 30은 다른 개선된 VMM 시스템을 도시한다.
도 31은 합산기 회로의 실시예를 도시한다.
도 32는 합산기 회로의 다른 실시예를 도시한다.
도 33a 및 도 33b는 합산기 회로의 다른 실시예들을 도시한다.
도 34a, 도 34b, 및 도 34c는 출력 회로의 실시예들을 도시한다.
도 35는 뉴런 출력 회로를 도시한다.
도 36은 아날로그-디지털 변환기의 실시예를 도시한다.
도 37은 아날로그-디지털 변환기의 다른 실시예를 도시한다.
도 38은 아날로그-디지털 변환기의 다른 실시예를 도시한다.
도 39는 아날로그-디지털 변환기의 다른 실시예를 도시한다.
도 40은 VMM 어레이 내의 제어 게이트 라인과 소스 라인 사이의 원하는 전압 차이를 도시한다.
도 41은 VMM 어레이 내의 워드 라인과 소스 라인 사이의 원하는 전압 차이를 도시한다.
도 42는 VMM 어레이 내의 비트 라인과 소스 라인 사이의 원하는 전압 차이를 도시한다.
도 43은 온도의 변화에 응답하여 VMM 어레이 내의 단자에 대한 전압의 전형적인 변화를 도시한다.
도 44a 및 도 44b는 적응적 바이어스 회로들을 도시한다.
도 45a 및 도 45b는 조절기 회로들을 도시한다.
도 46a는 디지털-아날로그 변환기를 도시한다.
도 46b는 아날로그-디지털 변환기를 도시한다.
도 47은 디코더를 도시한다.
도 48은 전류-전압 합산기를 도시한다.
도 49는 다른 전류-전압 합산기를 도시한다.
도 50은 다른 전류-전압 합산기를 도시한다.
도 51은 다른 전류-전압 합산기를 도시한다.
도 52는 다른 전류-전압 합산기를 도시한다.
도 53은 소거 게이트 디코더, 제어 게이트 디코더, 및 소스 라인 디코더를 위한 고전압 디코딩 회로부를 도시한다.
본 발명의 인공 신경망은 CMOS 기술과 비휘발성 메모리 어레이들의 조합을 이용한다.
개선된 VMM 시스템의 실시예
도 17은 VMM 시스템(1700)의 블록 다이어그램을 도시한다. VMM 시스템(1700)은 VMM 어레이(1701), 로우 디코더들(1702), 고전압 디코더들(1703), 컬럼 디코더들(1704), 비트 라인 드라이버들(1705), 입력 회로(1706), 출력 회로(1707), 제어 로직(1708), 및 바이어스 생성기(1709)를 포함한다. VMM 시스템(1700)은 전하 펌프(1711), 전하 펌프 조절기(1712), 및 고전압 레벨 생성기(1713)를 포함하는 고전압 생성 블록(1710)을 추가로 포함한다. VMM 시스템(1700)은 알고리즘 제어기(1714), 아날로그 회로부(1715), 제어 로직(1716), 및 테스트 제어 로직(1717)을 추가로 포함한다. 아래에서 설명되는 시스템들 및 방법들은 VMM 시스템(1700)에서 구현될 수 있다.
입력 회로(1706)는 DAC(디지털-아날로그 변환기), DPC(디지털-펄스 변환기), AAC(전류-전압 변환기와 같은, 아날로그-아날로그 변환기), PAC(펄스-아날로그 레벨 변환기), 또는 임의의 다른 유형의 변환기들과 같은 회로들을 포함할 수 있다. 입력 회로(1706)는 정규화, 스케일링 함수들, 또는 산술 함수들을 구현할 수 있다. 입력 회로(1706)는 입력에 대한 온도 보상 함수를 구현할 수 있다. 입력 회로(1706)는 ReLU 또는 시그모이드와 같은 활성화 함수를 구현할 수 있다. 출력 회로(1707)는 ADC(뉴런 아날로그 출력을 디지털 비트들로 변환하기 위한, 아날로그-디지털 변환기), AAC(전류-전압 변환기와 같은, 아날로그-아날로그 변환기), APC(아날로그-펄스(들) 변환기), 또는 임의의 다른 유형의 변환기들과 같은 회로들을 포함할 수 있다. 출력 회로(1707)는 ReLU 또는 시그모이드들과 같은 활성화 함수를 구현할 수 있다. 출력 회로(1707)는 뉴런 출력들을 위한 통계 정규화, 규칙화, 업/다운 스케일링 함수들, 통계적 반올림, 또는 산술 함수들(예를 들어, 가산, 감산, 제산, 승산, 시프트, 로그)을 구현할 수 있다. 출력 회로(1707)는, 예를 들어, 어레이의 전력 소모를 대략 일정하게 유지하기 위해 또는 예를 들어 IV 기울기를 대략 동일하게 유지함으로써 어레이(뉴런) 출력들의 정밀도를 개선하기 위해 뉴런 출력들 또는 어레이 출력들(예를 들어, 비트 라인 출력)을 위한 온도 보상 함수를 구현할 수 있다.
도 18a는 종래 기술의 VMM 시스템(1800)을 도시한다. VMM 시스템(1800)은 예시적인 셀들(1801 및 1802), (비트 라인들을 감지 회로부에 접속하는) 예시적인 비트 라인 스위치(1803), (판독 시에 접지 레벨과 같은 낮은 레벨에 결합되는) 예시적인 더미 비트 라인 스위치(1804), 예시적인 더미 셀들(1805 및 1806)(소스 라인 풀다운 셀들)을 포함한다. 비트 라인 스위치(1803)는 VMM 시스템(1800)에 데이터를 저장하는 데 사용되는, 셀들(1801 및 1802)을 포함한, 셀들의 컬럼에 결합된다. 더미 비트 라인 스위치(1804)는 VMM 시스템(1800)에 데이터를 저장하는 데 사용되지 않는 더미 셀들인 셀들의 컬럼(비트 라인)에 결합된다. 이러한 더미 비트 라인(일명 소스 라인 풀다운 비트 라인)은 판독에서 소스 라인 풀다운으로서 사용되며, 이는 소스 라인(SL)을 더미 비트 라인 내의 메모리 셀을 통해 접지 레벨과 같은 낮은 레벨로 풀링하는 데 사용되는 것을 의미한다.
VMM 시스템(1800)의 하나의 결점은 각각의 셀에 대한 입력 임피던스가 관련 비트 라인 스위치, 셀 자체, 및 관련 더미 비트 라인 스위치를 통한 전기 경로의 길이로 인해 달라진다는 것이다. 예를 들어, 도 18b는 비트 라인 스위치(1803), 셀(1801), 더미 셀(1805), 및 더미 비트 라인 스위치(1804)를 통한 전기 경로를 도시한다. 유사하게, 도 18c는 비트 라인 스위치(1803), 수직 금속 비트 라인(1807), 셀(1802), 더미 셀(1808), 수직 금속 비트 라인(1808), 및 더미 비트 라인 스위치(1804)를 통한 전기 경로를 도시한다. 알 수 있는 바와 같이, 셀(1802)을 통한 경로는 비트 라인 및 더미 비트 라인의 상당히 더 큰 길이를 횡단하며, 이는 더 높은 커패시턴스 및 더 높은 저항과 연관된다. 이것은 셀(1802)이 셀(1801)보다 비트 라인 또는 소스 라인에서 더 큰 기생 임피던스를 갖는 것을 야기한다. 이러한 변동성은 결점인데, 예를 들어, 왜냐하면 그것이 어레이 내의 셀들의 위치에 따라 셀들을 판독하거나 검증(프로그램/소거 튜닝 사이클들을 위한)하기 위해 적용되는 바와 같은 셀 출력의 정밀도에 있어서의 변동을 야기하기 때문이다.
도 19a는 개선된 VMM 시스템(1900)을 도시한다. VMM 시스템(1900)은 예시적인 셀(1901 및 1902), 예시적인 비트 라인 스위치(1903)(비트 라인을 감지 회로에 연결함), 예시적인 더미 셀(1905 및 1906)(소스 라인 풀다운 셀), 및 예시적인 더미 비트 라인 스위치(1904)(판독 시 접지 레벨과 같은 낮은 레벨에 결합함, 이 스위치는 소스 라인 풀다운으로서 사용되는 더미 셀에 연결되는 더미 비트 라인에 연결됨)를 포함한다. 알 수 있는 바와 같이, 예시적인 더미 비트 라인 스위치(1904) 및 다른 더미 비트 라인 스위치들은 비트 라인 스위치(1903) 및 다른 비트 라인 스위치들과는 반대편의, 어레이의 단부에 위치된다.
이러한 설계의 이익을 도 19b 및 도 19c에서 알 수 있다. 도 19b는 비트 라인 스위치(1903), 셀(1901), 더미 셀(1905)(소스 라인 풀다운 셀), 수직 금속 비트 라인(1908), 및 (판독 시 접지 레벨과 같은 낮은 레벨에 결합되는) 더미 비트 라인 스위치(1904)를 통한 전기 경로를 도시한다. 도 19c는 비트 라인 스위치(1903), 수직 금속 라인(1907), 셀(1902), 더미 셀(1906)(소스 라인 풀다운 셀), 및 더미 비트 라인 스위치(1904)를 통한 전기 경로를 도시한다. 경로들은 실질적으로 동일하며(셀들, 상호접속 길이들), 이는 VMM 시스템(1900) 내의 모든 셀들에 대해 그러하다. 결과적으로, 각 셀의 비트 라인 임피던스 플러스 소스 라인 임피던스의 임피던스는 실질적으로 동일하며, 이는 어레이 내의 다양한 셀의 동작을 판독 또는 검증하기 위해 끌어온 기생 전압 강하의 양의 변동이 상대적으로 동일함을 의미한다.
도 20은 글로벌 소스 라인 풀다운 비트 라인을 갖는 VMM 시스템(2000)을 도시한다. VMM 시스템(2000)은, 더미 비트 라인(2005a~2005n 또는 2007a~2007n)이 (판독 또는 검증 동안 메모리 셀 소스 라인을 접지 레벨로 풀링하기 위해 글로벌 소스 라인 풀다운 라인으로서 작용하도록) 함께 연결되고; 더미 비트 라인 스위치(2001 및 2002)와 같은 더미 비트 라인 스위치가 ARYGND로 표시된 공통 접지에 연결 또는 결합되며; 소스 라인이 소스 라인을 선택적으로 접지로 풀링하는 소스 라인 스위치(2003)에 함께 결합되는 것을 제외하고는 VMM 시스템(1900)과 유사하다. 이러한 변경들은 판독 또는 검증 동작들 동안 셀들 간의 (어레이) 기생 임피던스에 있어서의 변동을 더욱 감소시킨다. 소스 라인들은 SLARY(2888)로 함께 연결된다.
도 21은 VMM 시스템(2100)을 도시한다. VMM 시스템(2100)은 비트 라인 스위치(2101), 풀다운 비트 라인 스위치(2102), 풀다운 비트 라인 스위치(2103), 비트 라인 스위치(2104), 데이터 셀(2105) (본원에서, "데이터 셀"은 신경망에 대한 가중치 값을 저장하는 데 사용되는 메모리 셀임), 풀다운 셀(2106), 풀다운 셀(2107), 및 데이터 셀(2018)을 포함한다. 풀다운 셀(2106 및 2107)은 서로 인접한 것에 유의한다. 이는 2개의 풀다운 셀(2106 및 2107)의 수직 금속 라인(BLpdx)이 함께 연결(라인(2111))되도록 하여, 결과적으로 더 넓은 금속 라인으로 인해 기생 저항을 감소시킨다. 데이터 셀(2105)의 판독 또는 검증(프로그래밍/소거 튜닝 사이클에 대해) 동작 동안, 전류는 비트 라인 스위치(2101)를 통해 셀(2105)의 비트 라인 단자로 흘러 들어가 셀(2015)의 소스 라인 단자로 흘러 나올 것이며, 그 다음 소스 라인(2110)으로 그리고 풀다운 셀(2106 및 2107)의 소스 라인 단자로 흘러 들어가서 풀다운 비트 라인 스위치(2102 및 2103)를 통과한다. 셀(2104)의 판독 또는 검증(프로그래밍/소거 튜닝 사이클에 대해) 동작 동안, 전류는 비트 라인 스위치(2104)를 통해 데이터 셀(2108)의 비트 라인 단자로 흘러 들어가 셀(2108)의 소스 라인 단자로 흘러 나올 것이며, 그 다음 소스 라인(2110)으로 그리고 풀다운 셀(2106 및 2107)의 소스 라인 단자로 흘러 들어가서 풀다운 비트 라인 스위치(2102 및 2103)를 통과한다. 이러한 칼럼 패턴은 어레이 전체에서 반복되며, 여기서 모든 4개의 칼럼마다 데이터 셀 칼럼 2개와 풀다운 동작에 사용되는 인접한 어레이 칼럼 2개가 포함된다. 다른 실시예에서, 2개의 인접한 컬럼들의 2개의 풀다운 셀들의 확산은 풀다운 능력을 증가시키기 위해 하나의 더 큰 확산으로 함께 병합될 수 있다. 다른 실시예에서, 풀다운 셀의 확산은 풀다운 능력을 증가시키기 위해 데이터 셀 확산의 것보다 더 크도록 만들어질 수 있다. 다른 실시예에서, 각각의 풀다운 셀은 선택된 데이터 셀의 바이어스 조건과는 상이한 바이어스 조건을 갖는다.
일 실시예에서, 풀다운 셀은 정규 데이터 메모리 셀과 동일한 물리적 구조를 갖는다. 다른 실시예에서, 풀다운 셀은 정규 데이터 메모리 셀과 다른 물리적 구조를 갖고, 예를 들어, 풀다운 셀은 예컨대 전기 파라미터(층 두께, 임플란트 등)에 대한 하나 이상의 물리적 치수(폭, 길이 등)를 수정함으로써 정규 데이터 메모리 셀의 수정된 버전일 수 있다. 다른 실시예에서, 풀다운 셀은 IO 또는 고전압 트랜지스터와 같은 (플로팅 게이트가 없는) 정규 트랜지스터이다.
도 22는 VMM 시스템(2200)을 도시한다. VMM 시스템(2200)은 비트 라인(2201), 풀다운 비트 라인(2202), 데이터 셀(2203 및 2206), 풀다운 셀(2204, 2205), 및 소스 라인(2210)을 포함한다. 셀(2203)의 판독 또는 검증 동작 동안, 전류는 비트 라인 스위치(2201)를 통해 셀(2203)의 비트 라인 단자 내로 흘러 들어가서 셀(2203)의 소스 라인 단자로 흘러 나올 것이며, 그 다음 소스 라인(2210)으로 그리고 풀다운 셀(2204)의 소스 라인 단자 내로 흘러 들어가 풀다운 비트 라인(BLpd)(2202)을 통과한다. 이러한 설계는 매 컬럼에 대해 반복되며, 풀다운 셀(2204)을 포함하는 로우는 풀다운 셀들의 로우인 최종 결과를 갖는다.
셀(2206)의 판독 또는 검증 (프로그래밍/소거 튜닝 사이클에 대해) 동작 동안, 전류는 비트 라인 스위치(2201)를 통해 셀(2206)의 비트 라인 단자로 흘러 들어가 셀(2206)의 소스 라인 단자로 흘러 나올 것이며, 그 다음 소스 라인(2211)으로 그리고 풀다운 셀(2205)의 소스 라인 단자로 흘러 들어가 풀다운 비트 라인(2202)을 통과한다. 이러한 설계는 매 컬럼에 대해 반복되며, 풀다운 셀(2205)을 포함하는 로우는 풀다운 셀들의 로우인 최종 결과를 갖는다. 도 22에 도시된 바와 같이, 4개의 로우들이 있으며, 2개의 중간의 인접한 로우들은 풀다운 셀들을 위해 사용되고, 상부 및 하부 로우들은 데이터 셀들이다.
표 10은 VMM 시스템(2200)에 대한 동작 전압들을 보여준다. 테이블 내의 칼럼은 선택된 셀에 대한 비트 라인, 비트 라인 풀다운, 선택된 셀에 대한 워드 라인, 선택된 셀에 대한 제어 게이트, 선택된 풀다운 셀에 대한 워드 라인(WLS), 선택된 풀다운 셀에 대한 제어 게이트(CGS), 모든 셀에 대한 소거 게이트, 및 모든 셀에 대한 소스 라인 상에 배치된 전압을 나타낸다. 로우들은 판독, 소거, 및 프로그램의 동작들을 나타낸다. 판독 시의 CGS 및 WLS에 대한 전압 바이어스가 풀다운 셀들의 구동 능력을 향상시키기 위해 정규 WL 및 CG 바이어스들의 것보다 더 높다는 것에 유의한다. WLS 및 CGS에 대해 바이어스된 전압은 교란을 감소시키기 위해 프로그래밍에서 음일 수 있다.
[표 10]
Figure pct00010
도 23은 VMM 시스템(2300)을 도시한다. VMM 시스템(2300)은 비트 라인(2301), 비트 라인(2302), 데이터 셀(2303 및 2306), 및 풀다운 셀(2304, 2305)을 포함한다. 셀(2303)의 판독 또는 검증 (프로그래밍/소거 튜닝 사이클에 대해) 동작 동안, 전류는 비트 라인(2301)을 통해 셀(2303)의 비트 라인 단자로 흘러 들어가 셀(2303)의 소스 라인 단자로 흘러 나올 것이며, 그 다음 풀다운 셀(2304)의 소스 라인 단자로 흘러 들어가 (이 경우 풀다운 비트 라인으로서 작용하는) 비트 라인(2302)을 통과한다. 이러한 설계는 매 컬럼에 대해 반복되며, 제1 모드에서, 풀다운 셀(2304)을 포함하는 로우는 풀다운 셀들의 로우인 최종 결과를 갖는다. 데이터 셀(2306)의 판독 또는 검증 (프로그래밍/소거 튜닝 사이클에 대해) 동작 동안, 전류는 비트 라인(2301)을 통해 셀(2306)의 비트 라인 단자로 흘러 들어가 셀(2306)의 소스 라인 단자로 흘러 나올 것이며, 그 다음 풀다운 셀(2305)의 소스 라인 단자로 흘러 들어가 (이 경우 풀다운 비트 라인으로서 작용하는) 비트 라인(2302)을 통과한다. 이러한 설계는 매 컬럼에 대해 반복되며, 제2 모드에서, 풀다운 셀(2305)을 포함하는 로우는 풀다운 셀들의 로우인 최종 결과를 갖는다. 도 23에 도시된 바와 같이, 4개의 로우들이 있으며, 하나 걸러의 홀수(또는 짝수) 로우들은 풀다운 셀들을 위해 사용되고, 하나 걸러의 짝수(또는 홀수) 로우들은 데이터 셀들이다.
특히, 제2 모드 동안, 셀(2305 및 2306)은 판독 또는 검증에서 활성이고, 셀(2303 및 2305)은 풀다운 프로세스에 사용되며, 비트 라인(2301 및 2302)의 역할은 역전된다.
표 11은 VMM 시스템(2300)에 대한 동작 전압들을 보여준다. 표의 칼럼은 선택된 데이터 셀에 대한 비트 라인, 선택된 풀다운 셀에 대한 비트 라인, 선택된 데이터 셀에 대한 워드 라인, 선택된 데이터 셀에 대한 제어 게이트, 선택된 풀다운 셀에 대한 워드 라인(WLS), 선택된 풀다운 셀에 대한 제어 게이트(CGS), 모든 셀에 대한 소거 게이트, 및 모든 셀에 대한 소스 라인 상에 배치된 전압을 나타낸다. 로우들은 판독, 소거, 및 프로그램의 동작들을 나타낸다.
[표 11]
Figure pct00011
도 24는 VMM 시스템(2400)을 도시한다. VMM 시스템(2400)은 비트 라인(2401), 풀다운 비트 라인(2402), (데이터) 셀(2403), 소스 라인(2411), 및 풀다운 셀(2404, 2405, 및 2406)을 포함한다. 셀(2403)의 판독 또는 검증 동작 동안, 전류는 비트 라인(2401)을 통해 셀(2403)의 비트 라인 단자 내로 그리고 셀(2403)의 소스 라인 단자 밖으로 흐를 것이며, 여기서 그것은 이어서 소스 라인(2411) 내로 흐르고, 여기서 그것은 이어서 풀다운 셀들(2404, 2405, 및 2406)의 소스 라인 단자 내로 흐르고, 그로부터 풀다운 비트 라인(2402)을 통해 흐른다. 이러한 설계는 매 컬럼에 대해 반복되며, 풀다운 셀들(2404, 2405, 및 2406)을 포함하는 로우들은 각각 풀다운 셀들의 로우들인 최종 결과를 갖는다. 이것은 셀(2403)의 소스 라인 단자에 적용되는 풀다운을 최대화하는데, 왜냐하면 전류가 3개의 셀들을 통해 풀다운 비트 라인(2402) 내로 인출되기 때문이다. 4개의 로우의 소스 라인은 함께 연결된다는 것에 유의한다.
표 12는 VMM 시스템(2400)에 대한 동작 전압들을 보여준다. 표의 칼럼은 선택된 셀에 대한 비트 라인, 비트 라인 풀다운, 선택된 셀에 대한 워드 라인, 선택된 셀에 대한 제어 게이트, 선택된 셀에 대한 소거 게이트, 선택된 풀다운 셀에 대한 워드 라인(WLS), 선택된 풀다운 셀에 대한 제어 게이트(CGS), 선택된 풀다운 셀에 대한 소거 게이트, 및 모든 셀에 대한 소스 라인 상에 배치된 전압을 나타낸다. 로우들은 판독, 소거, 및 프로그램의 동작들을 나타낸다.
[표 12]
Figure pct00012
도 25는 도 22의 VMM 시스템(2200)에 대한 예시적인 레이아웃(2500)을 도시한다. 밝은 사각형은 비트 라인(2201)과 같은 비트 라인 및 풀다운 비트 라인(2202)과 같은 풀다운 비트 라인에 대한 금속 접점을 나타낸다.
도 26은 도 22의 VMM 시스템(2200)과 유사한 VMM 시스템에 대한 대안적인 레이아웃(2600)을 도시하며, 풀다운 비트 라인(2602)이 매우 넓고 풀다운 셀의 2개의 칼럼을 가로지르는 차이가 있다. 즉, 풀다운 비트 라인(2602)에 대한 확산 영역은 비트 라인(2601)에 대한 확산 영역보다 더 넓다. 레이아웃(2600)은 셀(2603 및 2604)(풀다운 셀), 소스 라인(2610), 및 비트 라인(2601)을 더 보여준다. 다른 실시예에서, 2개의 풀다운 셀(좌측 및 우측)의 확산은 하나의 더 큰 확산으로 함께 병합될 수 있다.
도 27a는 VMM 시스템(2700)을 도시한다. 신경망의 네거티브 및 포지티브 가중치들을 구현하기 위해, 비트 라인들의 절반은 w+ 라인들(포지티브 가중치들을 구현하는 메모리 셀들에 접속되는 비트 라인들)로 지정되고, 비트 라인들의 다른 절반은 w- 라인들(네거티브 가중치들을 구현하는 메모리 셀들에 접속되는 비트 라인들)로 지정되고 교번하는 방식으로 w+ 라인들 사이에 산재된다. 네거티브 동작은 합산 회로(2701 및 2702)와 같은 합산 회로에 의해 w- 비트 라인의 출력(뉴런 출력)에서 수행된다. w+ 라인의 출력과 w- 라인의 출력은 함께 조합되어 (w+, w-) 라인들의 모든 쌍들에 대해 (w+, w-) 셀들의 각각의 쌍에 대한 w = w+ - w-를 효과적으로 제공한다. 판독 시 FG-FG 커플링을 회피하고/하거나 소스 라인에서의 IR 전압 강하를 감소시키는 데 사용되는 더미 비트 라인 또는 소스 라인 풀다운 비트 라인은 도면에 도시되지 않는다. 시스템(2700)에 대한 입력(예컨대, CG 또는 WL)은 포지티브 값 또는 네거티브 값 입력을 가질 수 있다. 입력이 네거티브 값을 갖는 경우, 어레이에 대한 실제 입력은 여전히 (CG 또는 WL 상의 전압 레벨과 같은) 양수이므로, 어레이 출력(비트 라인 출력)은 네거티브 값 입력의 등가 기능을 실현하기 위해 출력 전에 무효화된다.
대안적으로, 도 27b를 참조하면, 포지티브 가중치들이 제1 어레이(2711)에서 구현될 수 있고, 네거티브 가중치들이 제1 어레이와는 별개의 제2 어레이(2712)에서 구현될 수 있고, 결과적인 가중치들은 합산 회로들(2713)에 의해 함께 적절하게 조합된다. 유사하게, 더미 비트 라인(미도시) 또는 소스 라인 풀다운 비트 라인(미도시)은 판독시 FG-FG 커플링을 피하고/피하거나 소스 라인에서의 IR 전압 강하를 감소시키기 위해 사용된다.
대안적으로, 도 27c는 포지티브 또는 네거티브 입력을 갖는 신경망의 네거티브 및 포지티브 가중치들을 구현하기 위한 VMM 시스템(2750)을 도시한다. 제1 어레이(2751)는 네거티브 및 포지티브 가중치를 갖는 포지티브 값 입력을 구현하고, 제2 어레이(2752)는 네거티브 및 포지티브 가중치를 갖는 네거티브 값 입력을 구현한다. 임의의 어레이에 대한 임의의 입력만이 포지티브 값(예컨대 CG 또는 WL 상의 아날로그 전압 레벨)을 갖기 때문에, 제2 어레이의 출력은 합산기(2755)에 의해 제1 어레이의 출력에 추가되기 전에 무효화된다.
표 10a는 비트 라인의 (w+, w-) 쌍(BL0/1 및 BL2/3)의 물리적 어레이 배열의 예시적인 레이아웃을 도시하며, 여기서 4개의 로우는 소스 라인 풀다운 비트 라인(BLPWDN)에 결합된다. (w+, w-) 라인을 구현하기 위해 (BL0, BL1) 비트 라인의 쌍이 사용된다. (w+, w-) 라인 쌍 사이에는, 소스 라인 풀다운 비트 라인(BLPWDN)이 있다. 이는 인접한 (w+, w-) 라인으로부터 현재의 (w+, w-) 라인 내로 커플링(예를 들어, FG 대 FG 커플링)을 방지하는 데 사용된다. 기본적으로, 소스 라인 풀다운 비트 라인(BLPWDN)은 (w+, w-) 라인의 쌍 사이의 물리적 장벽으로서 역할을 한다.
FG 대 FG 커플링 현상 및 해당 현상에 대응하기 위한 메커니즘에 관한 추가적인 세부사항은, 동일한 양수인에 의해 2020년 2월 26일자로 출원되고, "Ultra-Precise Tuning of Analog Neural Memory Cells in a Deep Learning Artificial Neural Network"라는 명칭의 미국 특허 가출원 제62/981,757에서 찾을 수 있으며, 이는 본원에 참조로서 통합된다.
표 10b는 상이한 예시적인 가중치 조합을 나타낸다. '1'은 셀이 사용되고 실제 출력 값을 갖는다는 것을 의미하는 반면, '0'은 셀이 사용되지 않고 값을 갖지 않거나 유효 출력 값을 갖지 않는다는 것을 의미한다.
다른 실시예에서, 소스 라인 풀다운 비트 라인 대신에 더미 비트 라인이 사용될 수 있다.
다른 실시예에서, 더미 로우들이 또한 로우들 사이의 결합을 회피하기 위한 물리적 장벽들로서 사용될 수 있다.
[표 10A]
Figure pct00013
[표 10B]
Figure pct00014
표 11a는 중복 라인(BL01, BL23) 및 소스 라인 풀다운 비트 라인(BLPWDN)을 갖는 (w+, w-) 쌍 라인(BL0/1 및 BL2/3)의 물리적 배열의 다른 어레이 실시예를 보여준다. BL01은 쌍 BL0/1에 대한 가중치 재매핑에 사용되고 BL23은 쌍 BL2/3에 대한 가중치 재매핑에 사용된다.
표 11B는 재매핑을 필요로 하지 않는 분산 가중치의 경우를 보여주며, 기본적으로 BL1과 BL3 사이에 인접한 '1'이 없으며, 이는 인접한 비트 라인 커플링을 야기한다. 표 11C는 재매핑을 필요로 하는 분산 가중치의 경우를 보여주며, 기본적으로 BL1과 BL3 사이에 인접한 '1'이 있으며, 이는 인접한 비트 라인 커플링을 야기한다. 이러한 재매핑은 표 11D에 보여지며, 그 결과 임의의 인접한 비트 라인들 사이에 '1' 값이 없게 된다. 또한, 비트 라인 간에 가중치, '1' 실제 값 가중치를 재분배하는 것을 의미하는 재매핑에 의해, 비트 라인을 따른 총 전류가 이제 감소되어 비트 라인(출력 뉴런)에서 보다 정확한 값으로 이어진다. 이 경우에, 중복 컬럼들로서의 역할을 하기 위해 추가적인 컬럼들(비트 라인)이 필요하다(BL01, BL23).
표 11E 및 표 11F는 잡음이 있는 셀들(또는 결함이 있는 셀들)을 표 10E에서의 BL01, BL23 또는 표 11F에서의 BL0B 및 BL1B와 같은 중복(여분) 컬럼들로 재매핑하는 다른 실시예들을 보여준다. 적절한 매핑과 함께 합산기가 비트 라인 출력들을 합산하는 데 사용된다.
[표 11A]
Figure pct00015
[표 11B]
Figure pct00016
[표 11C]
Figure pct00017
[표 11D]
Figure pct00018
[표 11E]
Figure pct00019
[표 11F]
Figure pct00020
표 11G는 도 27b에 적합한 어레이 물리적 배열의 실시예를 보여준다. 각각의 어레이는 포지티브 또는 네거티브 가중치를 갖기 때문에, FG-FG 커플링을 피하기 위해 소스 라인 풀다운 및 물리적 장벽으로서 작용하는 더미 비트 라인이 각각의 비트 라인에 대해 필요하다.
[표 11G]
Figure pct00021
다른 실시예는 FG-FG 커플링에 의해 타깃 비트 라인을 최종 타깃으로 튜닝하기 위해 타깃 비트 라인에 인접한 비트 라인으로서 튜닝 비트 라인을 갖는다. 이 경우, 소스 라인 풀다운 비트 라인(BLPWDN)은 튜닝 비트 라인과 경계를 이루지 않는 타깃 비트 라인의 한쪽에 삽입된다.
잡음이 있거나 결함이 있는 셀을 매핑하기 위한 다른 실시예는 이러한 셀을 (감지 회로에 의해 잡음이 있거나 결함이 있는 것으로 식별한 후) 사용하지 않는 셀로 지정하는 것이며, 뉴런 출력에 어떤 값도 기여하지 않도록 (깊이) 프로그래밍되어야 함을 의미한다.
빠른 셀을 처리하기 위한 실시예는 먼저 이러한 셀을 식별한 다음, 전압 증분 펄스가 더 작거나 없는 것 또는 플로팅 게이트 커플링 알고리즘을 사용하는 것과 같은 더 정밀한 알고리즘을 이러한 셀에 적용하는 것이다.
도 28은 이제까지 논의된 VMM 어레이들 중 임의의 것에 포함될 수 있는 선택적인 중복 어레이(2801)를 도시한다. 중복 어레이(2801)는 비트 라인 스위치들에 부착된 컬럼들 중 임의의 것이 결함이 있는 것으로 간주되는 경우 결함이 있는 컬럼들을 대체하기 위한 중복물로서 사용될 수 있다. 중복 어레이는 그 자신의 중복 뉴런 출력들(예를 들어, 비트 라인들) 및 중복물 목적을 위한 ADC 회로들을 가질 수 있다. 중복물이 필요한 경우, 중복물 ADC의 출력은 불량 비트 라인의 ADC의 출력을 대체할 것이다. 중복 어레이(2801)는 또한 비트 라인에 걸친 전력 분배를 위해 표 10x에 설명된 것과 같은 가중치 매핑에 사용될 수 있다.
도 29는, 어레이(2901), 어레이(2902), 칼럼 멀티플렉서(2903), 로컬 비트 라인(LBL)(2905a 내지 2905d), 글로벌 비트 라인(GBL)(2908 및 2909), 및 더미 비트 라인 스위치(2905)를 포함하는 VMM 시스템(2900)을 도시한다. 칼럼 멀티플렉서(2903)는 어레이(2901)의 상부 로컬 비트 라인(2905) 또는 어레이(2902)의 하부 로컬 비트 라인(2905)을 글로벌 비트 라인(2908)으로 선택하는 데 사용된다. 일 실시예에서, (금속) 글로벌 비트 라인(2908)은 로컬 비트 라인의 수, 예를 들어 8 또는 16과 동일한 수의 라인을 갖는다. 다른 실시예에서, 글로벌 비트 라인(2908)은 N개의 로컬 비트 라인당 단지 하나의 (금속) 라인만, 예를 들어 8개 또는 16개 로컬 비트 라인당 하나의 글로벌 비트 라인을 갖는다. 컬럼 멀티플렉서들(2903)은 전류 글로벌 비트 라인의 폭을 효과적으로 증가시키기 위해 인접한 글로벌 비트 라인(예를 들어, GBL(2909))을 전류 글로벌 비트 라인(예를 들어, GBL(2908))으로 멀티플렉싱(먹싱)하는 것을 추가로 포함한다. 이것은 글로벌 비트 라인에 걸친 전압 강하를 감소시킨다.
도 30은 VMM 시스템(3000)을 도시한다. VMM 시스템(3000)은 어레이(3010), (시프트 레지스터) SR(3001), (SR(3001)부터의 입력을 수신하고 동등한 (아날로그 또는 유사-아날로그) 레벨 또는 정보를 출력하는) 각각의 제어 게이트 라인(CG)에 대한 디지털-아날로그 변환기(3002), 합산기 회로(3003), 아날로그-디지털 변환기(3004), 및 비트 라인 스위치(3005)를 포함한다. 더미 비트 라인 및 더미 비트 라인 스위치는 존재하지만 도시되지 않는다. 도시된 바와 같이, ADC 회로는 함께 조합되어 더 큰 정밀도(즉, 더 큰 수의 비트)를 갖는 단일 ADC를 생성할 수 있다. 소스 라인들은 SLARY(3888)로 함께 연결된다.
합산기 회로들(3003)은 도 31 내지 도 33에 도시된 회로들을 포함할 수 있다. 이는 정규화, 스케일링, 산술 연산, 활성화, 통계적 반올림 등을 위한 회로를 포함할 수 있다.
도 31은 가변 저항기에 의해 조정 가능한 전류-전압 합산기 회로(3100)를 도시하며, 이는 각각 전류(Ineu(1), …, Ineu(n))(VMM 어레이의 비트 라인(들)으로부터 수신된 전류)를 인출하는 전류원(3101-1, …, 3101-n), 연산 증폭기(3102), 가변 홀딩 커패시터(3104), 및 가변 저항기(3103)를 포함한다. 연산 증폭기(3102)는 전압을 출력하고, Vneuout = R3103 *(Ineu1 + Ineu0)이며, 이는 전류 Ineux에 비례한다. 홀딩 커패시터(3104)는 스위치(3106)가 개방될 때 출력 전압을 유지하기 위해 사용된다. 이 홀딩 출력 전압은, 예를 들어, ADC 회로에 의해 디지털 비트로 변환되는 데 사용된다. VREF는 기준 전압, 예를 들어 0.1 V 내지 1.0 V이다. 이는 판독시 어레이의 비트 라인에 부여될 수 있는 전압이다.
도 32는 가변 커패시터(기본적으로 적분기)에 의해 조정 가능한 전류-전압 합산기 회로(3200)를 도시하며, 이는 각각 전류(Ineu(1), …, Ineu(n))(VMM 어레이의 비트 라인(들)으로부터 수신된 전류)를 인출하는 전류원(3201-1, …, 3201-n), 연산 증폭기(3202), 가변 커패시터(3203), 및 스위치(3204)를 포함한다. 연산 증폭기(3202)는 전압, Vneuout = Ineu*적분 시간/C3203을 출력하며, 이는 전류 Ineu(들)에 비례한다.
도 33a는 가변 커패시터(즉, 스위치 캡(SC) 회로)에 의해 조정 가능한 전압 합산기(3300)를 도시하며, 이는 스위치(3301 및 3302), 가변 커패시터(3303 및 3304), 연산 증폭기(3305), 가변 커패시터(3306), 및 스위치(3306)를 포함한다. 스위치(3301)가 폐쇄될 때, 입력 Vin0이 연산 증폭기(3305)에 제공된다. 스위치(3302)가 폐쇄될 때, 입력 Vin1이 연산 증폭기(3305)에 제공된다. 선택적으로, 스위치(3301 및 3302)는 동시에 폐쇄되지 않는다. 연산 증폭기(3305)는 입력(스위치들(3301 및 3302) 중에서 어느 스위치가 폐쇄되는지에 따라, Vin0 및/또는 Vin1 중 어느 하나)의 증폭된 버전인 출력 Vout을 생성한다. 즉 Vout = Cin/Cout * (Vin)이고, Cin은 C3303 또는 C3304이고, Cout은 C3306이다. 예를 들어, Vout = Cin/Cout * ∑ (Vinx), Cin = C3303 = C3304. 일 실시예에서, Vin0는 W+ 전압이고 Vin1은 W- 전압이며, 전압 합산기(3300)는 이들을 함께 가산하여 출력 전압(Vout)을 생성한다.
도 33b는 전압 합산기(3350)를 도시하며, 이는 스위치(3351, 3352, 3353 및 3354), 가변 입력 커패시터(3358), 연산 증폭기(3355), 가변 피드백 커패시터(3356), 및 스위치(3357)를 포함한다. 일 실시예에서, Vin0는 W+ 전압이고 Vin1은 W- 전압이며, 전압 합산기(3300)는 이들을 함께 가산하여 출력 전압(Vout)을 생성한다.
Input = Vin0에 대해: 스위치(3354 및 3351)가 폐쇄될 때, 입력 Vin0이 커패시터(3358)의 상부 단자에 제공된다. 이어서 스위치(3351)가 개방되고 스위치(3353)가 폐쇄되어 전하를 커패시터(3358)로부터 피드백 커패시터(3356) 내로 전송한다. 기본적으로 그 다음, 출력 VOUT = (C3358/C3356) * Vin0(예로서, VREF =0인 경우)이다.
Input = Vin1에 대해: 스위치(3353 및 3354)가 폐쇄될 때, 커패시터(3358)의 둘 모두의 단자들이 VREF로 방전된다. 이어서 스위치(3354)가 개방되고 스위치(3352)가 폐쇄되어, 커패시터(3358)의 하부 단자를 Vin1로 충전하며, 이는 결국 피드백 커패시터(3356)를 VOUT = -(C3358/C3356) * Vin1로 충전한다(VREF=0인 경우에 대해).
따라서, Vin0 입력이 인에이블된 후에 Vin1 입력이 인에이블되는 경우, 예로서 VREF=0의 경우에 대해, VOUT = (C3358/C3356) * (Vin 0 - Vin1)이다. 이것은 예를 들어 w = w+ - w-를 실현하는 데 사용된다.
위에서 논의된 VMM 어레이에 적용되는 도 2에 대한 입력 및 출력 동작의 방법은 디지털 또는 아날로그 형태일 수 있다. 방법들은 다음을 포함한다:
Figure pct00022
순차 입력 IN [0:q] 내지 DAC들:
Figure pct00023
순차적으로 IN0, 그 다음 IN1,..., 그 다음 INq를 동작시키고; 모든 입력 비트는 동일한 VCGin을 갖는다; 모든 비트 라인(뉴런) 출력은 이진 지수 승산기를 조정하여 합산된다; ADC 전 또는 ADC 이후
Figure pct00024
뉴런 (비트 라인) 이진 지수 승산기 조정 방법: 도 20에 도시된 바와 같이, 예시적인 합산기는 2개의 비트 라인(BL0, bln)을 갖는다. 가중치가 다수의 비트 라인들(BL0 내지 BLn)에 걸쳐 분배된다. 예를 들어 4개의 비트 라인들(BL0, BL1, BL2, BL3)이 있다. 비트 라인(BL0)으로부터의 출력은 2^0 =1과 승산되어야 한다. n번째 이진 비트 위치를 나타내는, 비트 라인(BLn)으로부터의 출력은 2^n, 예를 들어 n =3에 대해 2^3 = 8과 승산된다. 이어서 이진 비트 위치 2^n과 적절하게 승산된 후의 모든 비트 라인들로부터의 출력이 함께 합산된다. 이어서 이것은 ADC에 의해 디지털화된다. 이 방법은 모든 셀이 이진 범위만을 갖는다는 것을 의미하며, 다중 레벨 범위(n-비트)는 주변 회로(합산기 회로를 의미함)에 의해 달성된다. 이로 인해, 모든 비트 라인에 대한 전압 강하는 메모리 셀의 가장 높은 바이어스 레벨에 대해 대략 동일하다.
Figure pct00025
순차적으로 IN0, IN1,., INq를 동작시키고, 각각의 입력 비트는 대응하는 아날로그 값 VCGin을 갖는다; 모든 뉴런 출력은 모든 입력 비트 평가에 대해 합산된다; ADC 전 또는 ADC 이후
Figure pct00026
DAC들에 대한 병렬 입력들:
Figure pct00027
각각의 입력 IN[0:q]는 대응하는 아날로그 값 VCGin을 갖는다. 모든 뉴런 출력은 이진 지수 승산기 조정 방법으로 합산된다; ADC 전 또는 ADC 이후
어레이 상에서 순차적으로 동작함으로써, 전력은 보다 균일하게 분산된다. 뉴런 (비트 라인) 이진 지수 방법은, 비트 라인의 각 셀이 이진 레벨만을 가지므로, 어레이 내의 전력을 줄이고, 2^n 레벨이 합산기 회로(2603)에 의해 달성된다.
도 33에 도시된 바와 같은 각 ADC는 ADC의 적절한 설계로 보다 높은 비트 구현을 위해 다음 ADC와 조합하도록 구성될 수 있다.
도 34a, 도 34b, 및 도 34c는 도 30에서의 합산기 회로들(3003) 및 아날로그-디지털 변환기들(3004)에 대해 사용될 수 있는 출력 회로들을 도시한다.
도 34a는 뉴런 출력(3401)을 수신하고 출력 디지털 비트들(3403)을 출력하는, 아날로그-디지털 변환기(3402)를 포함하는, 출력 회로(3400)를 도시한다.
도 34b는 뉴런 출력(3401)을 함께 수신하고 출력(3413)을 생성하는 뉴런 출력 회로(3411) 및 아날로그-디지털 변환기(3412)를 포함하는 출력 회로(3410)를 도시한다.
도 34c는 뉴런 출력(3401)을 함께 수신하고 출력(3423)을 생성하는 뉴런 출력 회로(3421) 및 변환기(3422)를 포함하는 출력 회로(3420)를 도시한다.
뉴런 출력 회로(3411 또는 3411)는, 예를 들어, 합산, 스케일링, 정규화, 산술 연산 등을 수행할 수 있다. 예를 들어, 변환기(3422)는 ADC, PDC, AAC, APC 동작 등을 수행할 수 있다.
도 35는 뉴런 출력인 출력 iOUT을 함께 생성하는, 조정 가능한 (스케일링) 전류 소스(3501) 및 조정 가능한 (스케일링) 전류 소스(3502)를 포함하는, 뉴런 출력 회로(3500)를 도시한다. 이 회로는 포지티브 가중치 및 네거티브 가중치의 합산, 즉 w = w+ - w-, 및 출력 뉴런 전류의 업 또는 다운 스케일링을 동시에 수행할 수 있다.
도 36은 구성 가능한 뉴런 직렬 아날로그-디지털 변환기(3600)를 도시한다. 그것은 뉴런 출력 전류를 적분 커패시터(3602)로 적분하는 적분기(3670)를 포함한다. 일 실시예는 비교기(3604)가 극성을 전환할 때까지 램핑 VRAMP(3650)를 클록킹함으로써, 또는 다른 실시예는 VOUT(3603)이, EC(3605) 신호가 카운터(3620)를 비활성화하는 지점인, VREF(3650)에 도달할 때까지 램프 전류(3651)에 의해 노드 VC(3610)를 램핑 다운함으로써, 디지털 출력(카운트 출력)(3621)을 생성한다. (n-비트) ADC는 타겟 응용에 따라 n-비트들보다 작은 더 낮은 수의 비트 정밀도, 또는 n-비트들보다 큰 더 높은 수의 비트 정밀도를 갖도록 구성 가능하다. 구성 가능성은 예컨대 커패시터(3602), 전류(3651), 또는 VRAMP(3650)의 램핑 속도, 클록킹(3641) 등을 구성함으로써 수행된다. 다른 실시예에서, VMM 어레이의 ADC 회로는 더 낮은 정밀도(<n-비트)를 갖도록 구성되고 다른 VMM 어레이의 ADC 회로는 높은 정밀도(>n-비트)를 갖도록 구성된다. 또한, 하나의 뉴런 회로의 이러한 ADC 회로는 다음 뉴런 회로의 다음 ADC와 결합하여, 예컨대 2개의 ADC 회로의 집적 캐패시터(3602)를 결합함으로써 더 높은 n-비트 ADC 정밀도를 생성하도록 구성될 수 있다.
도 37은 구성 가능한 뉴런 SAR(연속 근사 레지스터) 아날로그-디지털 변환기(3700)를 도시한다. 이 회로는 이진 커패시터를 사용하는 전하 재분산에 기초하는 점근 변환기이다. 그것은 이진 CDAC(커패시터들에 기초하는 DAC)(3701), 연산 증폭기/비교기(3702), SAR 로직(3703)을 포함한다. 도시된 바와 같이 GndV(3704)는 저전압 기준 레벨, 예를 들어 접지 레벨이다.
도 38은 구성 가능한 뉴런 콤보 SAR 아날로그-디지털 변환기(3800)를 도시한다. 이 회로는 2개의 뉴런 회로로부터의 2개의 ADC를 하나로 조합하여, 예를 들어, 하나의 뉴런 회로에 대한 4-비트 ADC에 대해, 더 높은 정밀도(n-비트)를 달성하며, 이 회로는 2개의 4-비트 ADC를 조합함으로써 >4-비트 정밀도, 예컨대 8-비트 ADC 정밀도를 달성할 수 있다. 콤보 회로 토폴로지는 분리형 캡(브리지-커패시터(캡) 또는 어텐션 캡) SAR ADC 회로, 예를 들어, 2개의 인접한 4-비트 4C SAR ADC 회로를 조합함으로써 생성된 8-비트 4C-4C SAS ADC와 등가이다. 이것을 달성하기 위해 브리지 회로(3804)가 필요하며, 이러한 회로의 커패시터의 커패시턴스는 = (CDAC cap 유닛의 총 수/CDAC cap 유닛의 총 수 - 1)이다.
도 39는, 파이프라인 방식으로 비트의 수를 증가시키기 위해 다음 SAR ADC와 조합하도록 사용될 수 있는 구성 가능한 뉴런, 파이프라인형 SAR CDAC ADC 회로(3900)를 도시한다. 파이프라인형 ADC의 다음 스테이지에 대한 입력으로서 제공하기 위해(예를 들어, 다음 SAR CDAC ADC에 대한 입력으로서 2의 이득(DAC(3901) 내의 모든 cap들의 Cf 대 C의 비)을 제공하기 위해) 커패시터(3930) Cf에 의해 잔류 전압(3906)이 생성된다.
구성 가능한 출력 뉴런(예를 들어, 구성 가능한 뉴런 ADC) 회로들에 관한 추가적인 구현 상세 사항들을, 동일한 양수인에 의해 2019년 6월 21일자로 출원되고, 발명의 명칭이 "딥 러닝 인공 신경망 내의 아날로그 신경 메모리에 대한 구성 가능한 입력 블록들 및 출력 블록들 및 물리적 레이아웃(Configurable Input Blocks and Output Blocks and Physical Layout for Analog Neural Memory in a Deep Learning Artificial Neural Network)"인 미국 특허 출원 제16/449,201호에서 찾아볼 수 있으며, 이 출원은 본 명세서에 참고로 포함된다.
적응적 바이어스 회로
다시 도 20을 참조하면, 출원인은 동작 동안 노드 "ARYGND" (어레이 접지)가 항상 0V에 머무르지 않을 것이라고 결정하였다. 구체적으로, 전류가 다양한 소스 라인으로부터 ARYGND에 주입됨에 따라, ARYGND의 전압은 예를 들어 0.1 내지 0.5 V에서 0V를 초과하여 부유할 것이다. 이는 VMM 시스템(2000)의 정확도에 악영향을 미치는데, 그 이유는 이것이 다양한 셀의 판독 및 프로그래밍에 영향을 미칠 것이며, 이는 입력 라인(WL, CG, EG, BL)과 ARYGND로 풀다운된 소스 라인 사이의 전압의 차이에 의해 영향을 받는다.
일 실시예에서, 도 20의 SLARY(2888) 또는 도 30의 SLARY(3888)과 같이 전체 어레이에 대해 단 하나의 소스 라인(SLARY)이 있다. 도 45a(버퍼 조절기) 도 45b(힘/감지 조절기)와 같이 조절기에서 전압 바이어스를 SLARY(2888) 또는 SLARY(3888)에 직접 적용하여 고정 바이어스(예: 20 ㎷)를 유지할 수 있다. 다른 실시예에서, 다수의 SLARY 라인들이 있고, 이러한 SLARAY 라인들에 대한 고정 바이어스를 유지하기 위해 조절기들(4510 또는 4520)과 같은 다수의 조절기들이 있다.
도 40 내지 도 42는 한편으로는, 제어 게이트 라인들, 워드 라인 및 비트 라인과, 다른 한편으로는, 소스 라인들 사이의 적응성 전압 차이를 도시한다.
도 40에서, 그래프(4000)는 선택된 셀(들)에 대한 제어 게이트 라인과 소스 라인(d (CG-SL)로 라벨링됨) 사이의 차이는, 소스 라인 전압이 증가함에 따라 선택된 셀(들) 또는 비트 라인으로부터의 전류가 일정하게 유지되도록 하는 것이 바람직하다는 것을 도시한다. 여기서, x축은 SL 전압을 추적하고, y축은 CG 전압과 SL 전압 사이의 차이를 추적한다. 예를 들어, ARYGND 크기가 0V를 초과하는 경우 (소스 라인이 또한 0V를 초과하여 크리프할 것이라는 것을 의미함), 제어 게이트 라인과 소스 라인 사이의 차이는 셀 또는 비트 라인 전류를 일정한 레벨로 유지하기 위해 적응적으로 변경될 것이 바람직하다. 이 예에서, CG 상의 전압은 소스 전압 변화로부터의 상이한 효과를 보상하기 위해 소스 라인 전압의 함수로서 적응적으로 증가될 것이다. 보상될 효과는, 소스 전압 증가로 인한 효과적인 감소된 게이트-소스 전압 또는 증가하는 소스 전압으로 인해 임계 전압에 대한 바디 효과 증가로부터 유래된다. 그것은 또한 증가하는 소스 전압으로 인해 감소된 드레인-소스 전압에 의해 야기되는 영향을 보상할 수 있다. 그것은 또한 제어 게이트(CG)와 소스 전압으로부터 플로팅 게이트(FG) 내로의 결합에 의해 야기되는 효과를 보상한다. 적절한 보상 기능 또는 룩업 테이블 데이터는 실리콘 데이터로부터 특징지어질 수 있다.
도 41에서, 그래프(4100)는 선택된 셀(d(WL-SL)로 라벨링됨)에 대한 워드 라인과 소스 라인 사이의 차이가 소스 라인 전압이 증가함에 따라 선택된 셀(들) 또는 비트 라인으로부터의 전류가 일정하게 유지되도록 하는 것이 바람직하다는 것을 도시한다. 예를 들어, ARYGND 크기가 0V를 초과하는 경우 (소스 라인이 또한 0V를 초과하여 크리프할 것이라는 것을 의미함), 워드 라인과 소스 라인 사이의 차이는 셀 또는 비트 라인 전류를 일정한 레벨로 유지하기 위해 적응적으로 증가될 것이 바람직하다. 예를 들어, 워드 라인(WL) 상의 전압은 도 40에 대해 전술한 바와 유사하게 소스 전압 변화로부터의 상이한 효과를 보상하기 위해 소스 라인 전압의 함수로서 적응적으로 변경될 것이다. 워드 라인 전압 적응은 또한 바람직하게는 WL 및 FG 단자들 사이의 전압 커플링을 보상한다.
도 42에서, 그래프(4000)는 선택된 셀(d(BL-SL)로 라벨링됨)에 대한 비트 라인과 소스 라인 사이의 차이가 소스 라인 전압이 증가함에 따라 선택된 셀(들) 또는 비트 라인으로부터의 전류가 일정하게 유지되도록 하는 것이 바람직하다는 것을 도시한다. 예를 들어, ARYGND 크기가 0V를 초과하는 경우(소스 라인이 또한 0V를 초과하여 크리프할 것이라는 것을 의미함), 비트 라인과 소스 라인 사이의 차이는 선택된 셀(들) 또는 비트 라인으로부터의 전류가 일정한 레벨로 유지되도록 하는 것이 바람직하다 예를 들어, 비트 라인(BL) 상의 전압은 감소된 드레인-소스 전압, 바디 효과 변조 임계 전압, 소스로부터 FG로의 전압 커플링, 또는 다른 전기 효과들과 같은 상이한 효과들을 보상하기 위해 소스 라인 전압의 함수로서 적응적으로 증가될 것이다.
도 43에서, VMM 어레이의 온도가 (VMM 어레이의 동작 동안 자연적으로 발생하거나 환경의 변화로 인해) 증가함에 따라, 동일한 동작을 달성하기 위해 제어 게이트 라인 및/또는 소거 게이트 라인, 및/또는 워드 라인에 인가되어야 하는 바이어스 전압이 서브-임계치 동작 영역에 대한 증가하는 온도의 함수로서 감소할 것이라는 것이 그래프(4300)에서 나타날 수 있다. 바이어스 전압은 선형 또는 포화 동작 영역에서 증가하는 온도의 함수로서 증가할 수 있다. 예를 들어, 적절한 보상 기능 또는 룩업 테이블은 실리콘 데이터로부터 특징지어질 수 있다. 즉, ARYGND의 전압 변화 외에 온도 변화 또한 VMM 어레이의 동작 및 정확도에 영향을 줄 수 있다. 일 실시예에서, 온도 변화를 검출하고 그에 따라 바이어스 전압에 대해 보상 함수를 적용하기 위해 온-칩 온도 센서가 구현된다.
도 44a는 조정가능한 전류 소스(4401) 및 조정가능한 저항기(4402)를 포함하는 적응적 바이어스 회로(4410)를 도시한다. 저항기(4402)의 일 단부는 노드 VREF_AB (4403)에서 조정가능한 전류 소스(4401)에 결합되고, 저항기(4402)의 다른 단부는 도 20 또는 도 30의 노드 ARYGND에 연결된다. ARYGND의 전압이 변경될 때, 노드(VREF_AB)의 전압은, 저항기(4402)에 걸친 전압 강하가 조정가능한 전류 소스(4401)에 의해 생성된 일정한 전류에 대해 일정하게 유지될 때, 대략 동일한 양만큼 변화할 것이다. 저항기(4402)는 정의된 보상 함수 또는 룩업 테이블에 따라 ARYGND 전압의 함수로서 변경되도록 전압 VREF_AB를 변경하도록 조정될 수 있다. 유사하게, 저항기(4402)의 저항은 온도 변화의 함수로서 변경될 수 있다. 저항기(4402)의 저항에 대한 임의의 조정에 더하여, 또는 그를 대신해서, 또는 그와 조합하여, 조정가능한 전류 소스(4401)에 의해 제공되는 전류의 양은 온도 또는 ARYGND의 전압의 변화의 함수로서 변화하기 위해 정의된 보상 함수 또는 룩업 테이블에 따라 조정될 수 있다. 따라서, VREF_AB는 ARYGND의 전압과 온도의 실시간 변화를 반영할 것이고, 판독 또는 프로그래밍 동작 동안 다양한 회로에 의해 활용될 수 있다.
도 44b는 조정 가능한 저항기(4421), 조정 가능한 저항기(4422), 및 연산 증폭기(4423)로 구성된 적응적 바이어스 회로(4420)를 도시한다. 저항기(4421) 및/또는 저항기(4422)의 저항은 노드(4424)에서 원하는 전압 VREF_AB를 제공하도록 ARYGND 전압의 함수로서 변화하기 위해 정의된 보상 함수 또는 룩업 테이블에 따라 조정될 수 있다. 저항기(4421) 및/또는 저항기(4422)의 저항은 온도의 함수로서 변화하기 위해 정의된 보상 함수 또는 룩업 테이블에 따라 조정될 수 있다.
도 45a 및 도 45b는 노드(OUT)에서 조절된 전압 출력을 제공하기 위해 노드(IN)에서 적응적 바이어스 회로(4400)로부터 전압 VREF_AB를 선택적으로 수신할 수 있는 조절기(4501) (각각 조절기(4510) 또는 조절기(4520)을 포함함)를 도시한다. 조절기(4520)는, 예를 들어, 전력 버스 라우팅의 상호접속 금속 라인 전압 강하를 보상하기 위해 힘/감지 구성으로 사용되며, 여기서 출력 노드(OUT)에서의 전압은 피드백 전압(FB)에 스위칭 가능하게 연결되어 출력 노드(OUT)에서의 전압을 피드백 전압(FB)을 따르도록 한다. VMM 시스템(2000)에 적용될 때, 전압(OUT)은 도 20을 참조하여 위에서 논의된 바와 같이 노드 SLARY(2888)에 인가될 수 있다.
노드(IN)에서의 전압 VREF_AB는 특성화 데이터에 기초하여 룩업 테이블 또는 함수로부터 결정된다. 노드(OUT)에서의 출력 전압은 ARYGND 또는 SLARY에 바이어스를 제공하는 데 사용될 수 있다. 예를 들어, 노드(OUT)는 전체 어레이에 대한 SL 바이어스, 예를 들어, 0 V 또는 15 ㎷와 같은 SLARY를 공급하는 것으로 사용될 수 있다. 노드(OUT)는 또한, 예를 들어, 결합 부정합, 바디 효과 불일치, 또는 PVT 미스매치를 제한 없이 보상하기 위해 하나 이상의 비트 라인에 인가된 바이어스로서 사용될 수 있다. 노드(OUT)는 또한, 예를 들어, 결합 부정합, 바디 효과 불일치, 또는 PVT 미스매치를 제한 없이 보상하기 위해 Vcg에 대한 바이어스 전압으로서 사용될 수 있다.
도 46a는 입력 디지털-아날로그 변환기(4600)를 포함하는 적응적 바이어스 회로를 도시한다. 입력 디지털-아날로그 변환기(4600)는 디지털 입력 신호 DIN[7:0]을 수신하고, VMM 어레이에서 하나 이상의 선택된 셀을 프로그래밍하기 위해 제어 게이트 라인, 워드 라인, 소거 게이트 라인, 또는 소스 라인과 같은 VMM 어레이의 입력 라인에 인가될 수 있는 아날로그 신호를 생성한다. 특히, 입력 디지털-아날로그 변환기(4600)는 도 44 및 도 45로부터 전압 소스 VREF_AB를 활용하고, 그것은 도 20 및 도 44a로부터 그것의 접지로서 ARYGND를 이용한다. 입력 디지털-아날로그 변환기(4600)는 VREF_AB 전압의 사용을 통해 ARYGND의 변화들을 자동으로 보상한다.
도 46b는 출력 아날로그-디지털 변환기(4650)를 포함하는 적응적 바이어스 회로를 도시한다. 출력 아날로그-디지털 변환기(4650)는 전류 또는 전압과 같은 어레이 출력을 수신하고 디지털 출력 비트들을 생성한다. 특히, 출력 아날로그-디지털 변환기(4650)는 도 44a 및/또는 도 44b의 전압 소스 VREF_AB를 이용하고, 그것은 도 20 및 도 44b로부터 그것의 접지로서 ARYGND를 사용한다. 따라서, 출력 아날로그-디지털 변환기(4650)는 VREF_AB 전압의 사용을 통해 ARYGND의 변화들을 보상할 것이다.
도 47은 제어 게이트 디코더(4702)에 결합된 워드 라인 디코더(4701)를 포함하는 조정가능한 바이어스 행 디코더(4700)를 도시한다. 이 예에서, 조정가능한 바이어스 행 디코더(4700)는 VMM 어레이에서 로우 0에 대해 사용된다. 어레이 내의 모든 다른 행들은 그것에 할당된 유사한 조정 가능한 바이어스 행 디코더를 가질 것이다.
워드 라인 디코더(4701)는 도시된 바와 같이 구성된 인버터 및 NAND 게이트(4705)에서 배열된 PMOS 트랜지스터(4703) 및 NMOS 트랜지스터(4704)를 포함한다. 제어 게이트 디코더(4702)는 도시된 바와 같이 구성된, 도 46의 입력 디지털-아날로그 변환기(4600), 인버터(4706), 스위치(4707), 스위치(4708), 및 통과 게이트로서 작용하는 NMOS 트랜지스터(4709)를 포함한다. 여기서, 워드 라인(WL0) 및 제어 게이트 라인(CG0)은 NAND 게이트(4705)가 조정가능한 바이어스 행 디코더(4700)(여기서, 로우 0)에 할당된 행에 대응하는 어드레스 신호를 수신할 때 활성화될 것이다. 그 예에서, WL0 및 CG0이 활성화될 때, 입력 디지털-아날로그 변환기(4600)의 아날로그 출력 전압은 제어 게이트 CG0에 적용될 것이다. 여기서, 제어 게이트 라인(CG0)은 입력 디지털-아날로그 변환기(4600)에 의해 제공되는 보상된 바이어스 전압을 수신한다. EG 또는 WL 보상에 대한 유사한 수단도 사용될 수 있다.
도 48은, 연산 증폭기(3102)가 그의 비반전 입력 상에서 VREF 대신에 (도 44 및 45의) VREF_AB를 수신하고 어레이 출력 전류가 가상 지면 노드 ARYGND를 지칭하는 것을 제외하고는, 도 31의 전류-대-전압 합산기 회로(3100)와 동일한 전압으로 어레이 출력(BL) 전류를 변환하는 데 사용되는 전류-대-전압 합산기 회로(4800)를 도시한다.
도 49는 연산 증폭기(4901), 가변 저항기(4902), 및 전류 소스(4903) 드로잉 전류(Ineu)(VMM 어레이의 비트 라인으로부터 수신된 전류임)를 포함하는 전류-대-전압 합산기 회로(4900)를 도시한다. 동작 증폭기는 그의 비반전 입력 상에서 (도 44a 및/또는 도 45b의) VREF_AB를 수신한다. 동작 증폭기(4901)는 전압 Vneuout를 출력한다. 어레이 출력 전류는 가상 지면 노드 ARYGND를 지칭한다.
도 50은, 연산 증폭기(3202)가 그의 비반전 입력 상에서 VREF 대신에 (도 44a 및/또는 도 44b의) VREF_AB를 수신하는 것을 제외하고는 도 32의 전류-전압 합산기(3200)와 동일한 전류-전압 합산기(5000)를 도시한다. 어레이 출력 전류는 가상 지면 노드 ARYGND를 지칭한다.
도 51은 VREF 대신에 (도 44a 및/또는 도 44b의) 전압 VREF_AB를 이용하는 것을 제외하고는 도 33a에서 전압 합산기(3300)와 동일한 전압 합산기(5100)를 도시한다. 어레이 출력 전압 Vinx는 가상 접지 노드 ARYGND를 지칭한다.
도 52는 VREF 대신에 (도 44a 및/또는 도 44b의) 전압 VREF_AB를 활용하는 것을 제외하고 도 33b의 전압 합산기(3350)와 동일한 전압 합산기(5200)를 도시한다. 어레이 출력 전압 Vinx는 가상 접지 노드 ARYGND를 지칭한다.
도 53은 도 3에 도시된 유형의 메모리 셀들과 함께 사용하는 데 적합한, 소거 게이트 디코더 회로(5301), 제어 게이트 디코더 회로(5304), 소스 라인 디코더 회로(5307), 및 고전압 레벨 시프터(5311)를 포함하는 VMM 고전압 디코드 회로들을 도시한다.
소거 게이트 디코더 회로(5301)는 도시된 바와 같이 구성된 PMOS 선택 트랜지스터(5302)(신호 HVO_B에 의해 제어됨) 및 NMOS 선택해제 트랜지스터(5303)(신호 HVO_B에 의해 제어됨)를 포함한다.
제어 게이트 디코더 회로(5304)는 도시된 바와 같이 구성된 PMOS 선택 트랜지스터(5304)(신호 HVO_B에 의해 제어됨) 및 NMOS 선택해제 트랜지스터(5306)(신호 HVO_B에 의해 제어됨)를 포함한다.
소스 라인 디코더 회로(5307)는 도시된 바와 같이 구성된 NMOS 모니터 트랜지스터들(5308)(신호 SL MON에 의해 제어됨), 구동 트랜지스터(5309)(신호 HVO에 의해 제어됨), 및 선택해제 트랜지스터(5310)(신호 HVO_B에 의해 제어됨)를 포함한다.
고전압 레벨 시프터(5311)는 인에이블 신호 EN을 수신하고, 고전압 신호 (HV) 및 그 보체 HVO_B를 출력하고, 그의 전압 레일 HVSUP(고전압) 및 HVSUP_LOW를 수신한다.
본 명세서에 사용된 바와 같이, 용어들 "~ 위에" 및 "~ 상에" 둘 모두는 "직접적으로 ~ 상에"(어떠한 중간 재료들, 요소들 또는 공간도 사이에 배치되지 않음)와 "간접적으로~ 상에"(중간 재료들, 요소들 또는 공간이 사이에 배치됨)를 포괄적으로 포함한다는 것에 유의하여야 한다. 마찬가지로, 용어 "인접한"은 "직접적으로 인접한"(어떠한 중간 재료들, 요소들 또는 공간도 사이에 배치되지 않음)과 "간접적으로 인접한"(중간 재료들, 요소들 또는 공간이 사이에 배치됨)을 포함하고, "~에 실장되는"은 "직접적으로 ~에 실장되는"(어떠한 중간 재료들, 요소들 또는 공간도 사이에 배치되지 않음)과 "간접적으로 ~에 실장되는"(중간 재료들, 요소들 또는 공간이 사이에 배치됨)을 포함하고, "전기적으로 결합되는"은 "직접적으로 ~에 전기적으로 결합되는"(요소들을 함께 전기적으로 접속시키는 어떠한 중간 재료들 또는 요소들도 사이에 없음)과 "간접적으로 ~에 전기적으로 결합되는"(요소들을 함께 전기적으로 접속시키는 중간 재료들 또는 요소들이 사이에 있음)을 포함한다. 예를 들어, "기판 위에" 요소를 형성하는 것은 어떠한 중간 재료들/요소들도 사이에 갖지 않고서 직접적으로 기판 상에 요소를 형성하는 것뿐만 아니라, 하나 이상의 중간 재료들/요소들을 사이에 갖고서 간접적으로 기판 상에 요소를 형성하는 것을 포함할 수 있다.

Claims (47)

  1. 비휘발성 메모리 시스템으로서,
    행들 및 열들로 배열된 비휘발성 메모리 셀들의 어레이 - 각각의 비휘발성 메모리 셀은 소스 및 드레인을 포함함 -;
    복수의 비트 라인들 - 상기 복수의 비트 라인들 각각은 비휘발성 메모리 셀들의 컬럼에 있는 각각의 비휘발성 메모리 셀의 드레인에 결합됨 -;
    각각의 비휘발성 메모리 셀들의 소스에 결합된 소스 라인; 및
    동작 동안 상기 어레이의 제어 게이트 라인에 전압을 제공하기 위한 적응적 바이어스 디코더를 포함하고, 상기 적응적 바이어스 디코더는 상기 소스 라인의 전압의 변화에 응답하여 상기 제어 게이트 라인에 제공된 전압을 조정하는, 비휘발성 메모리 시스템.
  2. 제1항에 있어서, 복수의 풀다운 비트 라인들을 더 포함하고, 상기 복수의 풀다운 비트 라인들 각각은 비휘발성 메모리 셀들의 행을 풀다운 노드에 결합시키는, 비휘발성 메모리 시스템.
  3. 제1항에 있어서, 상기 동작은 프로그램 동작인, 비휘발성 메모리 시스템.
  4. 제3항에 있어서, 상기 적응적 바이어스 디코더는 온도의 변화에 응답하여 상기 소스 라인에 제공된 전압을 조정하는, 비휘발성 메모리 시스템.
  5. 제1항에 있어서, 상기 적응적 바이어스 디코더는 온도의 변화에 응답하여 상기 소스 라인에 제공된 전압을 조정하는, 비휘발성 메모리 시스템.
  6. 제1항에 있어서, 상기 적응적 바이어스 디코더는 제1 단부 및 제2 단부를 포함하는 저항기를 포함하고, 상기 제1 단부는 조정가능한 전류 소스에 결합되고, 상기 제2 단부는 상기 소스 라인에 결합되는, 비휘발성 메모리 시스템.
  7. 제6항에 있어서, 상기 적응적 바이어스 디코더는 상기 저항기의 상기 제1 단부에 결합된 조절기를 더 포함하는, 비휘발성 메모리 시스템.
  8. 제1항에 있어서, 상기 적응적 바이어스 디코더는 특성화 데이터에 대해 수행된 함수에 기초하여 상기 제어 게이트 라인에 제공된 전압을 조정하는, 비휘발성 메모리 시스템.
  9. 제1항에 있어서, 상기 적응적 바이어스 디코더는 소스 라인 전압 변화들에 기초하여 상기 제어 게이트 라인에 제공된 전압을 조정하는, 비휘발성 메모리 시스템.
  10. 제1항에 있어서, 상기 적응적 바이어스 디코더는 바디 효과 변화에 기초하여 상기 제어 게이트 라인에 제공된 전압을 조정하는, 비휘발성 메모리 시스템.
  11. 제1항에 있어서, 상기 적응적 바이어스 디코더는 조정가능한 전류 소스 및 조정가능한 저항기를 포함하는, 비휘발성 메모리 시스템.
  12. 제1항에 있어서, 상기 적응적 바이어스 디코더는 연산 증폭기 및 하나 이상의 조정 가능한 저항기를 포함하는, 비휘발성 메모리 시스템.
  13. 제1항에 있어서, 상기 적응적 바이어스 회로는 디지털 입력을 상기 제어 게이트 라인에 인가된 아날로그 신호로 변환하기 위한 디지털-아날로그 변환기를 더 포함하는, 비휘발성 메모리 시스템.
  14. 제13항에 있어서, 상기 적응적 바이어스 회로는 어레이 출력 전류를 디지털 출력 비트들로 변환하기 위한 아날로그-디지털 변환기를 더 포함하는, 비휘발성 메모리 시스템.
  15. 제1항에 있어서, 상기 적응적 바이어스 회로는 어레이 출력을 디지털 출력 비트로 변환하기 위한 출력 회로를 더 포함하는, 비휘발성 메모리 시스템.
  16. 제1항에 있어서, 상기 적응적 바이어스 회로는 어레이 출력 전류를 디지털 출력 비트들로 변환하기 위한 아날로그-디지털 변환기를 더 포함하는, 비휘발성 메모리 시스템.
  17. 비휘발성 메모리 시스템으로서,
    행들 및 열들로 배열된 비휘발성 메모리 셀들의 어레이 - 각각의 비휘발성 메모리 셀은 소스 및 드레인을 포함함 -;
    복수의 비트 라인들 - 상기 복수의 비트 라인들 각각은 비휘발성 메모리 셀들의 컬럼에 있는 각각의 비휘발성 메모리 셀의 드레인에 결합됨 -;
    각각의 비휘발성 메모리 셀들의 소스에 결합된 소스 라인; 및
    동작 동안 상기 어레이의 워드 라인에 전압을 제공하기 위한 적응적 바이어스 디코더를 포함하고, 상기 적응적 바이어스 디코더는 상기 소스 라인의 전압의 변화에 응답하여 상기 워드 라인에 제공된 전압을 조정하는, 비휘발성 메모리 시스템.
  18. 제17항에 있어서,
    각각이 비휘발성 메모리 셀들의 행을 풀다운 노드에 결합시키는 복수의 풀다운 비트 라인들을 더 포함하는, 비휘발성 메모리 시스템.
  19. 제17항에 있어서, 상기 동작은 판독 동작인, 비휘발성 메모리 시스템.
  20. 제17항에 있어서, 상기 동작은 프로그램 동작인, 비휘발성 메모리 시스템.
  21. 제17항에 있어서, 상기 적응적 바이어스 디코더는 온도의 변화에 응답하여 상기 소스 라인에 제공된 전압을 조정하는, 비휘발성 메모리 시스템.
  22. 제17항에 있어서,
    아날로그-디지털 변환기를 더 포함하는, 비휘발성 메모리 시스템.
  23. 제17항에 있어서, 상기 적응적 바이어스 디코더는 제1 단부 및 제2 단부를 포함하는 저항기를 포함하고, 상기 제1 단부는 조정가능한 전류 소스에 결합되고, 상기 제2 단부는 풀다운 노드에 결합되는, 비휘발성 메모리 시스템.
  24. 제23항에 있어서, 상기 적응적 바이어스 디코더는 상기 저항기의 상기 제1 단부에 결합된 전압 조절기를 더 포함하는, 비휘발성 메모리 시스템.
  25. 제23항에 있어서, 상기 적응적 바이어스 디코더는 디지털 입력을 상기 워드 라인에 인가된 아날로그 신호로 변환하기 위한 디지털-아날로그 변환기를 더 포함하는, 비휘발성 메모리 시스템.
  26. 제17항에 있어서, 상기 적응적 바이어스 디코더는 특성화 데이터에 대해 수행된 함수에 기초하여 상기 워드 라인에 제공된 전압을 조정하는, 비휘발성 메모리 시스템.
  27. 제17항에 있어서, 상기 적응적 바이어스 디코더는 소스 전압 변화들에 기초하여 상기 워드 라인에 제공된 전압을 조정하는, 비휘발성 메모리 시스템.
  28. 제17항에 있어서, 상기 적응적 바이어스 디코더는 바디 효과 변화에 기초하여 상기 워드 라인에 제공된 전압을 조정하는, 비휘발성 메모리 시스템.
  29. 제17항에 있어서, 상기 적응적 바이어스 디코더는 커플링 비 변화에 기초하여 상기 워드 라인에 제공된 전압을 조정하는, 비휘발성 메모리 시스템.
  30. 비휘발성 메모리 시스템으로서,
    행들 및 열들로 배열된 비휘발성 메모리 셀들의 어레이 - 각각의 비휘발성 메모리 셀은 소스 및 드레인을 포함함 -;
    복수의 비트 라인들 - 상기 복수의 비트 라인들 각각은 비휘발성 메모리 셀들의 컬럼에 있는 각각의 비휘발성 메모리 셀의 드레인에 결합됨 -;
    각각의 비휘발성 메모리 셀들의 소스에 결합된 소스 라인; 및
    동작 동안 상기 어레이의 소거 게이트 라인에 전압을 제공하기 위한 적응적 바이어스 디코더를 포함하고, 상기 적응적 바이어스 디코더는 상기 소스 라인 노드의 전압의 변화에 응답하여 상기 소거 게이트 라인에 제공된 전압을 조정하는, 비휘발성 메모리 시스템.
  31. 제30항에 있어서,
    각각이 비휘발성 메모리 셀들의 행을 풀다운 노드에 결합시키는 복수의 풀다운 비트 라인들을 더 포함하는, 비휘발성 메모리 시스템.
  32. 제30항에 있어서, 상기 동작은 판독 동작인, 비휘발성 메모리 시스템.
  33. 제30항에 있어서, 상기 동작은 프로그램 동작인, 비휘발성 메모리 시스템.
  34. 제30항에 있어서, 상기 적응적 바이어스 디코더는 온도의 변화에 응답하여 상기 소스 라인에 제공된 전압을 조정하는, 비휘발성 메모리 시스템.
  35. 제30항에 있어서, 아날로그-디지털 변환기를 더 포함하는, 비휘발성 메모리 시스템.
  36. 제30항에 있어서, 상기 적응적 바이어스 디코더는 제1 단부 및 제2 단부를 포함하는 저항기를 포함하고, 상기 제1 단부는 조정가능한 전류 소스에 결합되고, 상기 제2 단부는 풀다운 노드에 결합되는, 비휘발성 메모리 시스템.
  37. 제37항에 있어서, 상기 적응적 바이어스 디코더는 상기 저항기의 상기 제1 단부에 결합된 전압 조절기를 더 포함하는, 비휘발성 메모리 시스템.
  38. 제37항에 있어서, 상기 적응적 바이어스 디코더는 디지털 입력을 상기 소거 게이트 라인에 인가된 아날로그 신호로 변환하기 위한 디지털-아날로그 변환기를 더 포함하는, 비휘발성 메모리 시스템.
  39. 제30항에 있어서, 상기 적응적 바이어스 디코더는 특성화 데이터에 대해 수행된 함수에 기초하여 상기 소거 게이트 라인에 제공된 전압을 조정하는, 비휘발성 메모리 시스템.
  40. 제30항에 있어서, 상기 적응적 바이어스 디코더는 소스 전압 변조에 기초하여 상기 소거 게이트 라인에 제공된 전압을 조정하는, 비휘발성 메모리 시스템.
  41. 제30항에 있어서, 상기 적응적 바이어스 디코더는 신체 효과 변화에 기초하여 상기 소거 게이트 라인에 제공된 전압을 조정하는, 비휘발성 메모리 시스템.
  42. 제30항에 있어서, 상기 적응적 바이어스 디코더는 커플링 비 변화에 기초하여 상기 소거 게이트 라인에 제공된 전압을 조정하는, 비휘발성 메모리 시스템.
  43. 비휘발성 메모리 시스템으로서,
    행들 및 열들로 배열된 비휘발성 메모리 셀들의 어레이 - 각각의 비휘발성 메모리 셀은 소스 및 드레인을 포함함 -;
    복수의 비트 라인들 - 상기 복수의 비트 라인들 각각은 비휘발성 메모리 셀들의 컬럼에 있는 각각의 비휘발성 메모리 셀의 드레인에 결합됨 -;
    각각의 비휘발성 메모리 셀들의 소스에 결합된 소스 라인; 및
    동작 동안 상기 어레이의 상기 소스 라인에 고정 전압을 제공하기 위한 적응적 바이어스 디코더를 포함하는, 비휘발성 메모리 시스템.
  44. 제43항에 있어서, 상기 적응적 바이어스 디코더는 온도의 변화에 응답하여 상기 소스 라인에 제공된 전압을 조정하는, 비휘발성 메모리 시스템.
  45. 제43항에 있어서, 상기 적응적 바이어스 디코더는 힘/감지 조절기인, 비휘발성 메모리 시스템.
  46. 제43항에 있어서, 상기 적응적 바이어스 디코더는 버퍼 조절기인, 비휘발성 메모리 시스템.
  47. 제43항에 있어서, 상기 적응적 바이어스 디코더는 온도의 변화에 응답하여 상기 소스 라인에 제공된 전압을 조정하는, 비휘발성 메모리 시스템.
KR1020227039865A 2020-07-06 2021-01-05 인공 신경망에서 아날로그 신경 메모리 어레이를 위한 적응적 바이어스 디코더 KR20230006499A (ko)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
US202063048470P 2020-07-06 2020-07-06
US63/048,470 2020-07-06
US17/140,924 2021-01-04
US17/140,924 US11875852B2 (en) 2020-07-06 2021-01-04 Adaptive bias decoder to provide a voltage to a control gate line in an analog neural memory array in artificial neural network
PCT/US2021/012158 WO2022010533A1 (en) 2020-07-06 2021-01-05 Adaptive bias decoder for analog neural memory array in artificial neural network

Publications (1)

Publication Number Publication Date
KR20230006499A true KR20230006499A (ko) 2023-01-10

Family

ID=74285616

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020227039865A KR20230006499A (ko) 2020-07-06 2021-01-05 인공 신경망에서 아날로그 신경 메모리 어레이를 위한 적응적 바이어스 디코더

Country Status (7)

Country Link
US (4) US11875852B2 (ko)
EP (1) EP4176433A1 (ko)
JP (1) JP7493089B2 (ko)
KR (1) KR20230006499A (ko)
CN (1) CN115968495A (ko)
TW (1) TWI780719B (ko)
WO (1) WO2022010533A1 (ko)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11354562B2 (en) * 2018-01-03 2022-06-07 Silicon Storage Technology, Inc. Programmable neuron for analog non-volatile memory in deep learning artificial neural network

Family Cites Families (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5029130A (en) 1990-01-22 1991-07-02 Silicon Storage Technology, Inc. Single transistor non-valatile electrically alterable semiconductor memory device
US6069824A (en) 1999-03-03 2000-05-30 Matsushita Electric Industrial Co., Ltd. Semiconductor memory device
US6747310B2 (en) 2002-10-07 2004-06-08 Actrans System Inc. Flash memory cells with separated self-aligned select and erase gates, and process of fabrication
US7173854B2 (en) * 2005-04-01 2007-02-06 Sandisk Corporation Non-volatile memory and method with compensation for source line bias errors
JP2007035115A (ja) 2005-07-25 2007-02-08 Matsushita Electric Ind Co Ltd 半導体記憶装置
KR20100030979A (ko) * 2008-09-11 2010-03-19 삼성전자주식회사 저항체를 이용한 비휘발성 메모리 장치
US7835200B2 (en) * 2008-12-30 2010-11-16 Stmicroelectronics S.R.L. Level shifter
US8908435B2 (en) * 2011-12-21 2014-12-09 Sandisk Technologies Inc. Erase operation with controlled select gate voltage for 3D non-volatile memory
JP6833873B2 (ja) 2016-05-17 2021-02-24 シリコン ストーリッジ テクノロージー インコーポレイテッドSilicon Storage Technology, Inc. 不揮発性メモリアレイを使用したディープラーニングニューラルネットワーク分類器
US9953719B2 (en) * 2016-05-18 2018-04-24 Silicon Storage Technology, Inc. Flash memory cell and associated decoders
US10340010B2 (en) * 2016-08-16 2019-07-02 Silicon Storage Technology, Inc. Method and apparatus for configuring array columns and rows for accessing flash memory cells
CN107799146B (zh) 2016-08-31 2020-06-09 中芯国际集成电路制造(上海)有限公司 存储器阵列及其读、编程、擦除操作方法
KR102375913B1 (ko) * 2017-10-18 2022-03-18 삼성전자주식회사 플래시 메모리 장치 및 이의 프로그램 방법
US11354562B2 (en) * 2018-01-03 2022-06-07 Silicon Storage Technology, Inc. Programmable neuron for analog non-volatile memory in deep learning artificial neural network
US10522226B2 (en) * 2018-05-01 2019-12-31 Silicon Storage Technology, Inc. Method and apparatus for high voltage generation for analog neural memory in deep learning artificial neural network
US10755783B2 (en) * 2018-08-27 2020-08-25 Silicon Storage Technology Temperature and leakage compensation for memory cells in an analog neural memory system used in a deep learning neural network
US10741568B2 (en) 2018-10-16 2020-08-11 Silicon Storage Technology, Inc. Precision tuning for the programming of analog neural memory in a deep learning artificial neural network
US11423979B2 (en) * 2019-04-29 2022-08-23 Silicon Storage Technology, Inc. Decoding system and physical layout for analog neural memory in deep learning artificial neural network
US20200349422A1 (en) 2019-05-02 2020-11-05 Silicon Storage Technology, Inc. Output array neuron conversion and calibration for analog neural memory in deep learning artificial neural network
US11355184B2 (en) * 2020-03-05 2022-06-07 Silicon Storage Technology, Inc. Analog neural memory array in artificial neural network with substantially constant array source impedance with adaptive weight mapping and distributed power

Also Published As

Publication number Publication date
US20240105263A1 (en) 2024-03-28
JP2023533719A (ja) 2023-08-04
CN115968495A (zh) 2023-04-14
JP7493089B2 (ja) 2024-05-30
TW202217823A (zh) 2022-05-01
US11875852B2 (en) 2024-01-16
US20220004860A1 (en) 2022-01-06
TWI780719B (zh) 2022-10-11
WO2022010533A1 (en) 2022-01-13
US20240127890A1 (en) 2024-04-18
US20240112736A1 (en) 2024-04-04
EP4176433A1 (en) 2023-05-10

Similar Documents

Publication Publication Date Title
TWI790551B (zh) 人工神經網路中於差異單元對中儲存有突觸權重的類比神經記憶體陣列
US12057170B2 (en) Neural network array comprising one or more coarse cells and one or more fine cells
JP2024105278A (ja) ソース線プルダウン機構を備えた人工ニューラルネットワーク内のアナログニューラルメモリアレイ
US20240127890A1 (en) Adaptive bias decoder for non-volatile memory system
TWI848411B (zh) 具有源極線下拉機制之非揮發性記憶體系統
JP2024116189A (ja) 人工ニューラルネットワーク内の差分セル対にシナプシス重みを記憶するアナログニューラルメモリアレイ

Legal Events

Date Code Title Description
E902 Notification of reason for refusal