KR20220105940A - 비휘발성 메모리 장치 및 이를 포함하는 메모리 시스템 및 비휘발성 메모리 장치의 동작 방법 - Google Patents

비휘발성 메모리 장치 및 이를 포함하는 메모리 시스템 및 비휘발성 메모리 장치의 동작 방법 Download PDF

Info

Publication number
KR20220105940A
KR20220105940A KR1020210008917A KR20210008917A KR20220105940A KR 20220105940 A KR20220105940 A KR 20220105940A KR 1020210008917 A KR1020210008917 A KR 1020210008917A KR 20210008917 A KR20210008917 A KR 20210008917A KR 20220105940 A KR20220105940 A KR 20220105940A
Authority
KR
South Korea
Prior art keywords
information
target cell
memory device
neural network
chip
Prior art date
Application number
KR1020210008917A
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 삼성전자주식회사
Priority to KR1020210008917A priority Critical patent/KR20220105940A/ko
Priority to CN202111170351.3A priority patent/CN114822643A/zh
Priority to US17/498,832 priority patent/US11763903B2/en
Priority to EP21212645.2A priority patent/EP4033491A1/en
Publication of KR20220105940A publication Critical patent/KR20220105940A/ko

Links

Images

Classifications

    • 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/10Programming or data input 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/0483Erasable programmable read-only memories electrically programmable using variable threshold transistors, e.g. FAMOS comprising cells having several storage transistors connected in series
    • 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
    • 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/5621Digital 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 charge storage in a floating gate
    • G11C11/5628Programming or writing circuits; Data input 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/0433Erasable programmable read-only memories electrically programmable using variable threshold transistors, e.g. FAMOS comprising cells containing floating gate transistors comprising cells containing a single floating gate transistor and one or more separate select transistors
    • 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
    • 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/06Auxiliary circuits, e.g. for writing into memory
    • G11C16/10Programming or data input circuits
    • G11C16/102External programming circuits, e.g. EPROM programmers; In-circuit programming or reprogramming; EPROM emulators
    • 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/10Programming or data input circuits
    • G11C16/14Circuits for erasing electrically, e.g. erase voltage switching 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/26Sensing or reading circuits; Data output 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/34Determination of programming status, e.g. threshold voltage, overprogramming or underprogramming, retention
    • G11C16/3436Arrangements for verifying correct programming or erasure
    • G11C16/344Arrangements for verifying correct erasure or for detecting overerased cells
    • G11C16/3445Circuits or methods to verify correct erasure of nonvolatile memory cells
    • 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/34Determination of programming status, e.g. threshold voltage, overprogramming or underprogramming, retention
    • G11C16/3436Arrangements for verifying correct programming or erasure
    • G11C16/3454Arrangements for verifying correct programming or for detecting overprogrammed cells
    • G11C16/3459Circuits or methods to verify correct programming of nonvolatile memory cells
    • 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/34Determination of programming status, e.g. threshold voltage, overprogramming or underprogramming, retention
    • G11C16/349Arrangements for evaluating degradation, retention or wearout, e.g. by counting erase cycles
    • 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/34Determination of programming status, e.g. threshold voltage, overprogramming or underprogramming, retention
    • G11C16/349Arrangements for evaluating degradation, retention or wearout, e.g. by counting erase cycles
    • G11C16/3495Circuits or methods to detect or delay wearout of nonvolatile EPROM or EEPROM memory devices, e.g. by counting numbers of erase or reprogram cycles, by using multiple memory areas serially or cyclically
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C29/00Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
    • G11C29/02Detection or location of defective auxiliary circuits, e.g. defective refresh counters
    • G11C29/021Detection or location of defective auxiliary circuits, e.g. defective refresh counters in voltage or current generators
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C29/00Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
    • G11C29/02Detection or location of defective auxiliary circuits, e.g. defective refresh counters
    • G11C29/028Detection or location of defective auxiliary circuits, e.g. defective refresh counters with adaption or trimming of parameters
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C29/00Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
    • G11C29/04Detection or location of defective memory elements, e.g. cell constructio details, timing of test signals
    • G11C29/08Functional testing, e.g. testing during refresh, power-on self testing [POST] or distributed testing
    • G11C29/12Built-in arrangements for testing, e.g. built-in self testing [BIST] or interconnection details
    • G11C29/14Implementation of control logic, e.g. test mode decoders
    • G11C29/16Implementation of control logic, e.g. test mode decoders using microprogrammed units, e.g. state machines
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C7/00Arrangements for writing information into, or reading information out from, a digital store
    • G11C7/10Input/output [I/O] data interface arrangements, e.g. I/O data control circuits, I/O data buffers
    • G11C7/1051Data output circuits, e.g. read-out amplifiers, data output buffers, data output registers, data output level conversion circuits
    • G11C7/1057Data output buffers, e.g. comprising level conversion circuits, circuits for adapting load
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C7/00Arrangements for writing information into, or reading information out from, a digital store
    • G11C7/10Input/output [I/O] data interface arrangements, e.g. I/O data control circuits, I/O data buffers
    • G11C7/1078Data input circuits, e.g. write amplifiers, data input buffers, data input registers, data input level conversion circuits
    • G11C7/1084Data input buffers, e.g. comprising level conversion circuits, circuits for adapting load
    • 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/34Determination of programming status, e.g. threshold voltage, overprogramming or underprogramming, retention
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C29/00Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
    • G11C29/04Detection or location of defective memory elements, e.g. cell constructio details, timing of test signals
    • G11C2029/0409Online test
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C29/00Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
    • G11C29/04Detection or location of defective memory elements, e.g. cell constructio details, timing of test signals
    • G11C29/08Functional testing, e.g. testing during refresh, power-on self testing [POST] or distributed testing
    • G11C29/12Built-in arrangements for testing, e.g. built-in self testing [BIST] or interconnection details
    • G11C2029/4402Internal storage of test result, quality data, chip identification, repair information
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C2211/00Indexing scheme relating to digital stores characterized by the use of particular electric or magnetic storage elements; Storage elements therefor
    • G11C2211/56Indexing scheme relating to G11C11/56 and sub-groups for features not covered by these groups
    • G11C2211/564Miscellaneous aspects
    • G11C2211/5642Multilevel memory with buffers, latches, registers at input or output

Abstract

비휘발성 메모리 장치가 개시된다. 본 개시의 예시적 실시예에 따른 비휘발성 메모리 장치는, 유저 데이터 및 메타 영역에 칩 관련 정보를 포함하는 메모리 셀 어레이, 호스트로부터 커맨드를 수신하고, 상기 커맨드에 상응하는 대상 셀을 식별하는 컨트롤러, 인공신경망 모델을 이용하여, 상기 칩 관련 정보 및 상기 식별된 대상 셀에 관련된 정보를 입력으로 최적 파라미터를 추론하는 ML 연산기 및 상기 인공신경망 모델의 가중치 파라미터들을 저장하는 버퍼 메모리를 포함할 수 있다.

Description

비휘발성 메모리 장치 및 이를 포함하는 메모리 시스템 및 비휘발성 메모리 장치의 동작 방법{NONVOLATILE MEMORY DEVICE, MEMORY SYSTEM COMPRISING THEREOF AND OPERATING METHOD OF NONVOLATILE MEMORY DEVICE}
본 개시의 기술적 사상은 메모리 장치에 관한 것이며, 더욱 상세하게는, 비휘발성 메모리 장치 및 이를 포함하는 메모리 시스템 및 비휘발성 메모리 장치의 동작 방법에 관한 것이다.
최근 정보 통신 장치의 다기능화에 따라 메모리 장치의 대용량화 및 고집적화가 요구되고 있다. 메모리 장치의 대용량화 및 고집적화를 위하여, V-NAND(vertical NAND) 구조가 이용될 수 있다. V-NAND 중에서 C2C(chip to chip) 구조는 하나의 웨이퍼에서 셀과 주변 회로를 모두 만드는 COP와는 달리 셀과 주변 회로를 서로 다른 웨이퍼에서 각각 생산하여 둘을 연결하는 방식으로 개발될 수 있다. 다만, 수직으로 적층하는 워드라인이 늘어남에 따라, 워드라인 별 채널 홀 크기가 상이하고, 다양한 원인들에 의해 워드라인으로 동일한 전압을 인가하더라도, 산포가 일정하지 않은 문제점이 야기되고 있다.
본 개시의 기술적 사상은, 워드라인에 최적의 전압을 추론하는 인공신경망 모델을 이용하는 비휘발성 메모리 장치 및 이의 동작 방법과 비휘발성 메모리 장치를 포함하는 메모리 시스템을 제공하는 데 있다.
본 개시의 기술적 사상에 따른 비휘발성 메모리 장치는 유저 데이터 및 메타 영역에 칩 관련 정보를 포함하는 메모리 셀 어레이, 호스트로부터 커맨드를 수신하고, 상기 커맨드에 상응하는 대상 셀을 식별하는 컨트롤러, 인공신경망 모델을 이용하여, 상기 칩 관련 정보 및 상기 식별된 대상 셀에 관련된 정보를 입력으로 최적 파라미터를 추론하는 ML 연산기 및 상기 인공신경망 모델의 가중치 파라미터들을 저장하는 버퍼 메모리를 포함할 수 있다.
또한, 본 개시의 기술적 사상에 따른 비휘발성 메모리 장치의 동작 방법은, 호스트로부터 커맨드를 수신하고, 상기 커맨드에 상응하는 대상 셀을 식별하는 단계, 상기 식별된 대상 셀과 관련된 정보 및 상기 메모리 셀 어레이의 메타 영역에 저장된 칩 관련 정보를 로드하는 단계, 상기 ML 연산기를 통해, 상기 대상 셀과 관련된 정보 및 상기 칩 관련 정보를 인공신경망 모델의 입력으로 최적 파라미터를 출력하는 단계를 포함할 수 있다.
또한, 본 개시의 기술적 사상에 따른 메모리 시스템은, 프로그램 커맨드, 리드 커맨드 또는 이레이즈 커맨드를 송신하는 호스트 장치 및 유저 데이터 및 메타 영역에 칩 관련 정보를 포함하는 메모리 셀 어레이와, 상기 프로그램 커맨드, 리드 커맨드 또는 이레이즈 커맨드를 수신하고, 상기 프로그램 커맨드, 리드 커맨드 또는 이레이즈 커맨드에 상응하는 대상 셀을 식별하는 컨트롤러와, 인공신경망 모델을 이용하여, 상기 칩 관련 정보 및 상기 식별된 대상 셀에 관련된 정보를 입력으로 최적 프로그램 전압, 최적 리드 전압 또는 최적 이레이즈 전압을 추론하는 ML 연산기와, 상기 인공신경망 모델의 가중치 파라미터들을 저장하는 버퍼 메모리를 포함하는 비휘발성 메모리 장치를 포함할 수 있다.
본 개시의 예시적 실시예에 따른 비휘발성 메모리 장치는, 인공 신경망 모델을 이용하여 프로그램 대상 워드라인에 상응하는 최적의 전압을 추론함으로써, 각각의 워드라인마다 동일한 산포를 갖는 프로그램을 수행할 수 있다.
본 개시의 예시적 실시예에 따른 비휘발성 메모리 장치는, 칩 레벨의 환경 정보 및 동작 정보와 같은 다양한 추가 정보에 기반하여 인공 신경망 모델을 학습함으로써, 프로그램 대상 셀의 어드레스뿐만 아니라, 다양한 요인들을 모두 고려한 최적의 전압을 추론할 수 있다.
도 1은 본 개시의 일 실시예에 따른 비휘발성 메모리 장치를 나타내는 블록도이다.
도 2는 본 개시의 일 실시예에 따른 비휘발성 메모리 장치를 나타내는 블록도이다.
도 3은 본 개시의 일 실시예에 따른 메모리 블록을 나타내는 사시도이다.
도 4는 본 개시의 예시적 실시예에 따른 뉴럴 네트워크 및 뉴럴 네트워크를 이용한 연산 처리를 설명하기 위한 도면이다.
도 5는 본 개시의 예시적 실시예에 따른 ML IP(machine learning intellectual property)의 블록도를 도시한다.
도 6은 워드라인에 따라 상이한 프로그램 전압을 인가하는 비교 예를 도시한다.
도 7은 본 개시의 예시적 실시예에 따른 인공신경망 모델의 예를 도시한다.
도 8은 본 개시의 예시적 실시예에 따른 비휘발성 메모리 장치의 순서도이다.
도 9는 본 개시의 예시적 실시예에 따른 비휘발성 메모리 장치의 순서도이다.
도 10은 본 개시의 일 실시예에 따른 메모리 장치를 나타내는 단면도이다.
도 11은 본 개시의 일부 실시예들에 따른 메모리 장치를 SSD 시스템에 적용한 예를 나타내는 블록도이다.
이하, 첨부한 도면을 참조하여 본 발명의 실시예에 대해 상세히 설명한다.
도 1은 본 개시의 일 실시예에 따른 메모리 장치를 나타내는 블록도이다.
도 1을 참조하면, 메모리 장치(10)는 메모리 셀 어레이(100) 및 주변 회로(200)를 포함할 수 있고, 주변 회로(200)는 페이지 버퍼 회로(210), 제어 로직(220), 전압 생성부(230), 로우 디코더(240), 카운팅 회로(260), 버퍼 메모리(270) 및 ML(machine learning) IP(intellectual property)(280)를 포함할 수 있다.
다양한 실시예들에 따라, 미 도시되었으나, 주변 회로(200)는 데이터 입출력 회로 또는 입출력 인터페이스 등을 더 포함할 수 있다.
다양한 실시예들에 따라, 메모리 셀 어레이(100)는 비트라인들(BL)을 통해 페이지 버퍼 회로(210)에 연결되고, 워드라인들(WL), 스트링 선택 라인들(SSL) 및 그라운드 선택 라인들(GSL)을 통해 로우 디코더(240)에 연결될 수 있다. 메모리 셀 어레이(100)는 메모리 셀들을 포함할 수 있고, 예를 들어, 메모리 셀들은 플래쉬 메모리 셀들일 수 있다. 이하에서는, 복수의 메모리 셀들이 낸드(NAND) 플래쉬 메모리 셀들인 경우를 예로 하여 본 개시의 실시예들을 상술하기로 한다. 그러나, 본 발명은 이에 한정되지 않고, 일부 실시예들에서, 복수의 메모리 셀들은 ReRAM(resistive RAM), PRAM(phase change RAM) 또는 MRAM(magnetic RAM)과 같은 저항형 메모리 셀들일 수 있다.
일 실시예에서, 메모리 셀 어레이(100)는 3차원 메모리 셀 어레이를 포함할 수 있고, 3차원 메모리 셀 어레이는 복수의 낸드 스트링들을 포함할 수 있으며, 각 낸드 스트링은 기판 위에 수직으로 적층된 워드라인들에 각각 연결된 메모리 셀들을 포함할 수 있다. 미국 특허공개공보 제7,679,133호, 미국 특허공개공보 제8,553,466호, 미국 특허공개공보 제8,654,587호, 미국 특허공개공보 제8,559,235호, 및 미국 특허출원 공개공보 제2011/0233648호는 3차원 메모리 어레이가 복수 레벨로 구성되고 워드라인들 및/또는 비트라인들이 레벨들 간에 공유되어 있는 3차원 메모리 어레이에 대한 적절한 구성들을 상술하는 것으로서, 본 명세서에 인용 형식으로 결합된다. 그러나, 본 발명은 이에 한정되지 않으며, 일부 실시예에서, 메모리 셀 어레이(100)는 2차원 메모리 셀 어레이를 포함할 수 있다.
일 실시예에서, 메모리 셀 어레이(100)는 메모리 셀 어레이의 적어도 일부 영역에 상응하는 메타 영역(meta region)(110) 더 포함할 수 있다. 상기 메타 영역(110)은 온-칩(on-chip) 레벨의 정보들을 포함할 수 있다. 상기 온-칩 레벨의 정보들은, 웨이퍼 위치 정보, 웨이퍼 신뢰도 정보, P/E 사이클 횟수에 대한 정보 등을 포함할 수 있다.
상기 웨이퍼 위치 정보는, 메모리 장치(10)가 구현된 칩이 공정 과정에서 웨이퍼의 어느 위치에서 제조되었는지 나타내는 정보일 수 있다. 예를 들어, 공정의 특징 상, 웨이퍼의 특정 위치(예를 들어, 웨이퍼의 엣지(edge)) 영역에서 생산된 칩은, 열화 속도가 빠르거나, 오류를 포함할 가능성이 높을 수 있다. 따라서, 메타 영역(110)은 웨이퍼 위치 정보를 포함하여, ML IP(280)에게 상기 웨이퍼 위치 정보를 전달할 수 있다. 상기 웨이퍼 신뢰도 정보는, 공정 과정에서 메모리 장치(10)가 구현된 칩을 포함하는 웨이퍼 자체의 신뢰도를 나타내는 정보일 수 있다. 예를 들어, 동일한 제조사의 웨이퍼라도 웨이퍼 각각의 품질 퀄리티는 상이할 수 있다. 높은 품질의 제1 웨이퍼에서 생산된 칩들은 열화 속도가 느릴 수 있고, 낮은 품질의 제2 웨이퍼에서 생산된 칩들은 열화 속도가 상대적으로 빠를 수 있다. 따라서, 메타 영역(110)은 웨이퍼의 신뢰도 정보(예를 들어, 상기 제1 웨이퍼 및 상기 제2 웨이퍼의 품질 정보)를 미리 저장하여, ML IP(280)에게 상기 웨이퍼 신뢰도 정보를 전달할 수 있다.
다양한 실시예들에 따라, 제어 로직(220)은 커맨드(CMD), 어드레스(ADDR) 및 제어 신호(CTRL)를 기초로, 메모리 셀 어레이(100)에 데이터를 프로그램, 메모리 셀 어레이(100)로부터 데이터를 독출, 또는 메모리 셀 어레이(100)에 저장된 데이터를 소거하기 위한 각종 제어 신호, 예를 들어, 전압 제어 신호(CTRL_vol), 로우 어드레스(X-ADDR) 및 칼럼 어드레스(Y-ADDR)를 출력할 수 있다. 이로써, 제어 로직(220)은 메모리 장치(10) 내의 각종 동작을 전반적으로 제어할 수 있다.
다양한 실시예들에 따라, 전압 생성부(230)는 전압 제어 신호(CTRL_vol)를 기초로 하여 메모리 셀 어레이(100)에 대한 프로그램, 독출 및 소거 동작을 수행하기 위한 다양한 종류의 전압들을 생성할 수 있다. 구체적으로, 전압 생성부(230)는 워드라인 전압(VWL), 예를 들어, 프로그램 전압, 독출 전압, 패스 전압, 소거 검증 전압 또는 프로그램 검증 전압 등을 생성할 수 있고, 또한, 스트링 선택 라인 전압 및 그라운드 선택 라인 전압을 더 생성할 수 있다.
다양한 실시예들에 따라, 로우 디코더(240)는 로우 어드레스(X-ADDR)에 응답하여, 복수의 메모리 블록들 중 하나를 선택할 수 있고, 선택된 메모리 블록의 워드라인들(WL) 중 하나를 선택할 수 있고, 복수의 스트링 선택 라인들(SSL) 중 하나를 선택할 수 있다. 페이지 버퍼 회로(210)는 칼럼 어드레스(Y-ADDR)에 응답하여 비트라인들(BL) 중 일부 비트라인을 선택할 수 있다. 구체적으로, 페이지 버퍼 회로(210)는 동작 모드에 따라 기입 드라이버 또는 감지 증폭기로서 동작할 수 있다.
다양한 실시예들에 따라, 페이지 버퍼 회로(210)는 복수의 비트라인들(BL)에 각각 연결되는 복수의 페이지 버퍼들(PB)을 포함할 수 있다. 일 실시예에서, 복수의 페이지 버퍼들(PB)은 복수의 칼럼들 및 복수의 로우들을 포함하는 매트릭스 형태로 배치될 수 있다. 복수의 페이지 버퍼들(PB)은 복수의 다단 구조들(multi-stage structures)로 배치될 수 있다.
다양한 실시예들에 따라, 카운팅 회로(260)는 페이지 버퍼들(PB)의 센싱 동작의 결과로부터 메모리 셀들의 개수를 카운트할 수 있다. 카운팅 회로(260)는 상기 카운트 값에 기반하여, 검증 전압이 인가되었을 때, 온-셀 및 오프-셀의 개수를 카운트하기 위하여 동작할 수 있다. 카운팅 회로(260)는 카운트한 값을 제어 로직(220) 및 버퍼 메모리(270)에게 출력할 수 있다.
다양한 실시예들에 따라, ML IP(280)는 인공신경망 모델에 기반하여 프로그램 대상 셀에 상응하는 최적의 워드라인 전압을 추론할 수 있다. 상기 ML IP(280)는 인공 신경망 모델뿐만 아니라, 결정 트리(decision tree), 선형 회귀(linear regression), 지원 벡터 기계(support vector machine)를 적어도 포함하는 다양한 기계학습 모델들에 기반할 수 있다.
다양한 실시예들에 따라, 인공신경망 모델들은 GoogleNet, AlexNet, VGG Network 등과 같은 CNN(Convolution Neural Network), R-CNN(Region with Convolution Neural Network), RPN(Region Proposal Network), RNN(Recurrent Neural Network), S-DNN(Stacking-based deep Neural Network), S-SDNN(State-Space Dynamic Neural Network), Deconvolution Network, DBN(Deep Belief Network), RBM(Restricted Boltzman Machine), Fully Convolutional Network, LSTM(Long Short-Term Memory) Network, Classification Network 등 다양한 종류의 모델들을 포함할 수 있으며, 전술한 모델들로 제한되는 것은 아니다.
다양한 실시예들에 따라, 버퍼 메모리(270)는 ML IP(280)의 인공신경망 모델을 로드할 수 있으며, 인공신경망의 추론 과정에서 사용되는 파라미터, 중간 산출물, 결과값 등을 저장할 수 있다.
미 도시되었지만, ML IP(280)는 인공신경망 모델을 구동하기 위하여 요구되는 많은 연산을 처리하기 위한 별도의 IP(intellectual property) 블록들을 더 포함할 수도 있다. 예를 들어, 별도의 IP 블록들은 GPU(graphical processing unit) 또는 특정 연산을 빠르게 수행하기 위한 가속기(accelerator)를 더 포함할 수도 있다.
도 2는 본 개시의 일 실시예에 따른 메모리 장치를 나타내는 블록도이다.
메모리 장치(10)는 C2C(chip to chip) 구조일 수 있다. C2C 구조는 제1 웨이퍼 상에 셀 영역(CELL)(100)을 포함하는 상부 칩을 제작하고, 제1 웨이퍼와 다른 제2 웨이퍼 상에 주변 회로 영역(PERI)(200)을 포함하는 하부 칩을 제작한 후, 상기 상부 칩과 상기 하부 칩을 본딩(bonding) 방식에 의해 서로 연결하는 것을 의미할 수 있다. 일 예로, 상기 본딩 방식은 상부 칩의 최상부 메탈층에 형성된 본딩 메탈과 하부 칩의 최상부 메탈층에 형성된 본딩 메탈을 서로 전기적으로 연결하는 방식을 의미할 수 있다.
C2C 구조를 사용하면, 전술한 바와 같이 상기 제1 웨이퍼와 상기 제2 웨이퍼를 독립적으로 제작한 이후 본딩하기 때문에, 주변 회로 영역(200)에 더욱 정교한 로직 공정을 사용할 수 있다. 기존 공정에서는 제어 로직(220)이 대부분의 연산을 수행하였으나, 주변 회로 영역(200)에 ML IP(280) 및 버퍼 메모리(270)를 이용한 로직 공정을 활용할 수 있다면 메모리 장치(10)의 제어에 필요한 복잡한 연산을 메모리 컨트롤러의 개입 없이 메모리가 직접 진행할 수 있고, 메모리 컨트롤러와의 신호 교환을 생략할 수 있으므로 지연시간을 감소시키는 등의 성능 개선이 가능할 수 있다.
도 3은 본 개시의 일 실시예에 따른 메모리 블록(BLKa)을 나타내는 사시도이다.
도 3을 참조하면, 메모리 블록(BLKa)은 기판(SUB)에 대해 수직 방향으로 형성되어 있다. 기판(SUB) 상에 제2 수평 방향(HD2)을 따라 신장된 공통 소스 라인(CSL)이 제공된다. 인접한 두 공통 소스 라인(CSL) 사이의 기판(SUB)의 영역 상에, 제2 수평 방향(HD2)을 따라 신장되는 복수의 절연막들(IL)이 수직 방향(VD)을 따라 순차적으로 제공되며, 복수의 절연막들(IL)은 수직 방향(VD)을 따라 특정 거리만큼 이격된다. 인접한 두 공통 소스 라인들(CSL) 사이의 기판(SUB)의 영역 상에, 제1 수평 방향(HD1)을 따라 순차적으로 배치되며, 수직 방향(VD)을 따라 복수의 절연막들(IL)을 관통하는 복수의 필라들(pillars)(P)이 제공된다. 각 필라(P)의 표면층(surface layer)(S)은 제1 타입을 갖는 실리콘 물질을 포함할 수 있고, 채널 영역으로 기능할 수 있다. 한편, 각 필라(P)의 내부층(I)은 실리콘 산화물과 같은 절연 물질 또는 에어 갭(air gap)을 포함할 수 있다.
인접한 두 공통 소스 라인들(CSL) 사이의 영역에서, 절연막들(IL), 필라들(P) 및 기판(SUB)의 노출된 표면을 따라 전하 저장층(charge storage layer, CS)이 제공된다. 예를 들어, 전하 저장층(CS)은 ONO(oxide-nitride-oxide) 구조를 가질 수 있다. 또한, 인접한 두 공통 소스 라인들(CSL) 사이의 영역에서, 전하 저장층(CS)의 노출된 표면 상에, 선택 라인들(GSL, SSL) 및 워드라인들(WL0 내지 WL7)과 같은 게이트 전극(GE)이 제공된다. 복수의 필라들(P) 상에는 드레인들(DR)이 각각 제공된다. 드레인들(DR) 상에, 제1 수평 방향(HD1)으로 신장된 비트라인들(BL1 내지 BL3)이 제공된다.
도 4는 본 개시의 예시적 실시예에 따른 뉴럴 네트워크 및 뉴럴 네트워크를 이용한 연산 처리를 설명하기 위한 도면이다.
도 4를 참고하면, 뉴럴 네트워크(NN)는 복수의 레이어들(L1 내지 Ln)을 포함할 수 있다. 복수의 레이어들(L1 내지 Ln) 각각은 선형 레이어 또는 비선형 레이어일 수 있으며, 실시예에 따라, 적어도 하나의 선형 레이어 및 적어도 하나의 비선형 레이어가 결합되어 하나의 레이어로 지칭될 수도 있다. 예를 들어, 선형 레이어는 컨볼루션 레이어(convolution), 풀리 커넥티드(fully connected) 레이어를 포함할 수 있으며, 비선형 레이어는 샘플링(sampling) 레이어, 풀링(pooling) 레이어, 활성(activation) 레이어를 포함할 수 있다.
예시적으로, 제1 레이어(L1)는 컨볼루션 레이어이고, 제2 레이어(L2)는 샘플링 레이어일 수 있다. 뉴럴 네트워크는 활성(activation) 레이어를 더 포함할 수 있으며, 다른 종류의 연산을 수행하는 레이어를 더 포함할 수 있다.
복수의 레이어들 각각은 입력되는 이미지 데이터 또는 이전 레이어에서 생성된 입력 피처맵(input feature map)을 수신하고, 입력 피처맵을 연산하여 출력 피처맵을 생성할 수 있다.
제1 레이어(L1)는 제1 피처맵(FM1)을 웨이트 맵(WM)과 컨볼루션하여 제2 피처맵(FM2)을 생성할 수 있다. 웨이트 맵(WM)은 제1 피처맵(FM1)을 필터링할 수 있으며, 필터 또는 커널로 지칭될 수 있다. 예컨대, 웨이트 맵(WM)의 깊이, 즉 채널 개수는 제1 피처맵(FM1)의 깊이, 즉 채널 개수와 동일하며, 웨이트 맵(WM)과 제1 피처맵(FM1)의 동일한 채널끼리 컨볼루션될 수 있다. 웨이트 맵(WM)은 제1 피처맵(FM1)을 슬라이딩 윈도우로 하여 횡단하는 방식으로 시프트된다. 시프트되는 양은 "스트라이드(stride) 길이" 또는 "스트라이드"로 지칭될 수 있다. 각 시프트 동안, 웨이트 맵(WM)에 포함되는 웨이트들 각각이 제1 피처맵(FM1)과 중첩된 영역에서의 모든 피처 값과 곱해지고 더해질 수 있다. 제1 피처맵(FM1)과 웨이트 맵(WM)이 컨볼루션 됨에 따라, 제2 피처맵(FM2)의 하나의 채널이 생성될 수 있다. 도 2에는 하나의 웨이트 맵(WM)이 표시되었으나, 실질적으로는 복수개의 웨이트 맵이 제1 피처맵(FM1)과 컨볼루션 되어, 제2 피처맵(FM2)의 복수개의 채널이 생성될 수 있다. 다시 말해, 제2 피처맵(FM2)의 채널의 수는 웨이트 맵의 개수에 대응할 수 있다.
제2 레이어(L2)는 제2 피처맵(FM2)의 공간적 크기(spatial size)를 변경함으로써, 제3 피처맵(FM3)을 생성할 수 있다. 일 예로, 제2 레이어(L2)는 샘플링 레이어일 수 있다. 제2 레이어(L2)는 업-샘플링 또는 다운-샘플링을 수행할 수 있으며, 제2 레이어(L2)는 제2 피처맵(FM2)에 포함된 데이터들 중 일부를 선별할 수 있다. 예컨대, 2 차원의 윈도우(WD)가 윈도우(WD)의 사이즈(예컨대, 4 * 4 행렬) 단위로 제2 피처맵(FM2) 상에서 시프트되고, 윈도우(WD)와 중첩되는 영역에서 특정 위치(예컨대, 1행 1열)의 값을 선택할 수 있다. 제2 레이어(L2)는 선택된 데이터를 제3 피처맵(FM3)의 데이터로서 출력할 수 있다. 다른 예로, 제2 레이어(L2)는 풀링 레이어일 수 있다. 이 경우, 제2 레이어(L2)는 제2 피처맵(FM2)에서 윈도우(WD)와 중첩되는 영역의 피처 값들의 최대 값(max pooling) 또는 피처 값들의 평균 값(average pooling)을 선택할 수 있다. 제2 레이어(L2)는 선택된 데이터를 제3 피처맵(FM3)의 데이터로서 출력할 수 있다.
이에 따라, 제2 피처맵(FM2)으로부터 공간적 사이즈가 변경된 제3 피처맵(FM3)이 생성될 수 있다. 제3 피처맵(FM3)의 채널과 제2 피처맵(FM2)의 채널 개수는 동일할 수 있다. 한편, 본 개시의 예시적인 실시예에 따르면, 풀링 레이어보다 샘플링 레이어의 연산 속도가 빠를 수 있고, 샘플링 레이어는 출력 이미지의 퀄리티(예컨대, PSNR(Peak Signal to Noise Ratio) 측면에서)를 개선할 수 있다. 예컨대, 풀링 레이어에 의한 연산은, 최대 값 또는 평균 값을 산출하여야 하므로 샘플링 레이어에 의한 연산보다 연산 시간이 더 오래 걸릴 수 있다.
실시예에 따라, 제2 레이어(L2)는 샘플링 레이어 또는 풀링 레이어에 한정되지 않는다. 즉, 제2 레이어(L2)는 제1 레이어(L1)와 유사한 컨볼루션 레이어가 될 수 있다. 제2 레이어(L2)는 제2 피처맵(FM2)을 웨이트 맵과 컨볼루션하여 제3 피처맵(FM3)을 생성할 수 있다. 이 경우, 제2 레이어(L2)에서 컨볼루션 연산을 수행한 웨이트 맵은 제1 레이어(L1)에서 컨볼루션 연산을 수행한 웨이트 맵(WM)과 다를 수 있다.
제1 레이어(L1) 및 제2 레이어(L2)를 포함한 복수의 레이어들을 거쳐 제N 레이어에서 제N 피처맵을 생성할 수 있다. 제N 피처맵은 출력 데이터가 출력되는 뉴럴 네트워크(NN)의 백 앤드(back end)에 위치한 복원 레이어(reconstruction layer)에 입력될 수 있다. 복원 레이어는 제N 피처맵을 기반으로 출력 이미지를 생성할 수 있다. 또한, 복원 레이어는 제N 피처맵 뿐만 아니라, 제1 피처맵(FM1) 및 제2 피처맵(FM2) 등 복수의 피처맵들을 수신하고, 복수의 피처맵들에 기초하여 출력 이미지를 생성할 수 있다. 제3 레이어(L3)는 제3 피처맵(FM3)의 피처들을 조합하여 출력 신호(REC)를 생성할 수 있다. 예를 들어, 상기 출력 신호(REC)는 대상 워드라인에 대한 최적 프로그램 전압 값, 최적 리드 전압 값, ISPP(Incremental Step Pulse Program), 최적 이레이즈 전압 값, ISPE(Incremental Step Pulse Erase), 프로그램 전압 펄스 폭, 프로그램 루프 컨트롤, 이레이즈 전압 펄스 폭, 이레이즈 루프 컨트롤 값 중 적어도 하나를 포함할 수 있다.
도 5는 본 개시의 예시적 실시예에 따른 ML IP(280)의 블록도를 도시한다.
도 5를 참조하면, ML IP(280)는 추론 모듈(282), 트레이닝 모듈(284) 및 트리거 모듈(286)을 포함할 수 있다.
다양한 실시예들에 따라, 추론 모듈(282)은 학습(또는 트레이닝)이 완료된 인공신경망 모델의 가중치 파라미터(weight parameter)들에 기반하여 입력에 대응하는 출력을 생성할 수 있다. 추론 모듈(282)은 칩-레벨 정보, 물리 정보 및 동작 정보 중 적어도 하나를 입력으로 수신할 수 있다.
칩-레벨 정보는, 메타 영역에 저장된 정보로서 P/E 사이클 횟수에 대한 정보, 웨이퍼 위치 정보, 웨이퍼 신뢰도 정보를 포함할 수 있다. P/E 사이클 횟수에 대한 정보는, 메모리 셀 어레이(100)의 내구성에 대한 정보이고, 상기 웨이퍼 위치 정보는, 메모리 장치(10)가 구현된 칩이 웨이퍼 중 어느 위치에서 제작되었는지 지시하는 정보이고, 상기 웨이퍼 신뢰도 정보는, 메모리 장치(10)가 구현된 칩이 제작된 웨이퍼 자체의 신뢰도 정보를 지칭할 수 있다.
동작 정보는, 일련의 프로그램, 리드 및 이레이즈 동작을 수행하면서 획득되는 값을 지칭할 수 있다. 예를 들어, 동작 정보는, 셀 스피드 정보, 검증 전압 인가 시 온-셀 및 오프-셀의 개수에 대한 카운트 정보, 검증 패스 루프 횟수, 산포 모양에 대한 정보, 리텐션(retention) 열화 정도에 대한 정보, 인접 셀에 쓰여진 패턴에 대한 정보, 동작이 수행되는 온도에 대한 정보 등을 포함할 수 있다. 상기 동작 정보는, 모니터링 정보, 셀 상태 정보, 실시간 정보와 같은 다양한 용어로 지칭될 수 있다.
물리 정보는, 프로그램, 리드 또는 이레이즈의 대상 셀에 관한 물리적 정보로서, 프로그램, 리드 또는 이레이즈할 대상 셀의 블록 정보, 상기 대상 셀의 워드라인 정보, 상기 대상 셀의 스트링 선택 정보를 적어도 포함할 수 있다.
다양한 실시예들에 따라, 트레이닝 모듈(284)은 인공신경망 모델에 대한 학습을 수행할 수 있다. 트레이닝 모듈(284)은 상기 칩-레벨 정보, 물리 정보 및 동작 정보에 기반하여 인공신경망 모델을 학습하여 최적의 가중치 파라미터들을 업데이트할 수 있다. 예를 들어, 트레이닝 모듈(284)은 버퍼 메모리(270)로부터 검증 전압 인가 시, 온-셀 및 오프-셀 개수에 대한 카운트 정보, 프로그램 또는 이레이즈를 완료하기 위해 수행되는 루프 횟수와 같은 셀 스피드 정보, 셀에 저장된 데이터가 리텐션에 의해 열화된 정도 등을 로드할 수 있다. 상기 카운트 정보, 셀 스피드 정보, 및 셀 리텐션 정보는 이전 시점에 인공신경망 모델을 학습할 때와 상이한 값들을 가질 수 있다. 따라서, 트레이닝 모듈(284)은 새롭게 업데이트된 카운트 정보, 셀 스피드 정보, 및 셀 리텐션 정보에 기반하여 인공신경망 모델을 학습할 수 있다. 재학습된 인공신경망 모델은, 기존의 인공신경망 모델과 가중치 파라미터가 상이할 수 있다.
다양한 실시예들에 따라, ML IP(280)는 추론 모듈(282)을 적어도 포함할 수 있다. 즉, 일 예로, ML IP(280)는 추론 모듈(282)만을 포함할 수 있다. 이 경우, ML IP(280)는 기 학습된 인공신경망 모델의 가중치 파라미터들에 기반하여 추론만을 수행할 수 있다. 따라서, 메모리 장치(10)의 일련의 프로그램, 리드 및 이레이즈에 따라 변경되는 셀 스피드 정보, 변경된 온-셀, 오프-셀에 대한 카운트 정보, 및 셀 리텐션 정보에 기반한 새로운 학습은 수행하지 않을 수 있다.
다양한 실시예들에 따라, ML IP(280)는 추론 모듈(282), 트레이닝 모듈(284) 및 트리거 모듈(286)을 더 포함할 수 있다. 트리거 모듈(286)은 트레이닝 모듈(284)의 활성화를 판단하기 위한 모듈에 상응할 수 있다. 트리거 모듈(286)은 대기 시간, 카운트 정보와 임계 값의 비교 결과, 셀 스피드 정보와 임계 값의 비교 결과에 기반하여 트레이닝 모듈(284)을 활성화할 수 있다.
일 실시예에 따라, 트리거 모듈(286)은 프로그램, 리드 및/또는 이레이즈가 수행되지 않는 대기 시간이 미리 설정된 제1 임계 시간을 초과하는 것을 식별할 수 있다. 상기 식별을 위하여, 트리거 모듈(286)은 별도의 타이머 회로(미도시)에 기반할 수도 있다. 트리거 모듈(286)은 상기 대기 시간이 상기 제1 임계 시간을 초과하는 경우, 트레이닝 모듈(284)을 활성화하고, 버퍼 메모리(270)에 저장된 셀 스피드 정보, 온-셀 및 오프-셀에 대한 카운트 정보를 트레이닝 모듈(284)에게 입력할 수 있다. 즉, 트리거 모듈(286)은 프로그램, 리드 및 이레이즈가 없는 대기 시간 동안 인공신경망 모델을 학습함으로써 항상 최적의 프로그램 전압, 최적의 리드 전압 및/또는 최적의 이레이즈 전압을 추론할 수 있다. 또는 다양한 실시예들에 따라, 트리거 모듈(286)은 메모리 컨트롤러의 요청을 수신하고, 상기 요청에 응답하여 트레이닝 모듈(284)을 활성화할 수도 있다. 메모리 컨트롤러는 호스트로부터 일정 시간동안 프로그램, 리드 커맨드가 수신되지 않는 경우, 인공신경망 모델을 훈련할 것을 결정하고, 인공신경망의 훈련을 지시하는 별도의 커맨드를 트리거 모듈(286)에게 전달할 수 있다.
다른 실시예에 따라, 트리거 모듈(286)은 셀 스피드 정보와 임계 값의 비교 또는 카운트 정보와 임계 값의 비교 결과에 따라 트레이닝 모듈(284)을 활성화할 수 있다. 메모리 셀 어레이(100)는 일련의 프로그램 및 이레이즈를 반복적을 수행함에 따라 열화될 수 있다. 상기 임계 값은, 기 학습된 인공신경망에 따라 추론된 전압으로 원하는 성능 개선이 이루어지지 않음을 판단하기 위한 기준 값에 상응할 수 있다. 예를 들어, 트리거 모듈(286)은 셀 스피드가 미리 결정된 속도보다 느리게 검출된 경우, 트레이닝 모듈(284)을 활성화할 수 있다. 다른 예를 들어, 트리거 모듈(286)은 오프-셀의 개수가 미리 정의된 개수를 초과하는 경우, 메모리 셀 어레이(100)의 열화 정도를 반영하기 위하여, 트레이닝 모듈(284)을 활성화할 수 있다.
다양한 실시예들에 따라, 트리거 모듈(286)은 트레이닝 모듈(284)를 트리거할 뿐만 아니라, 버퍼 메모리(222)에 저장된 데이터를 메모리 셀 어레이(100)의 메타 영역으로 백업(back up)하는 것을 트리거할 수도 있다. 예를 들어, 버퍼 메모리(222)가 휘발성 메모리에 상응하는 경우, 트리거 모듈(286)은 버퍼 메모리(270)에 변경된 가중치 파라미터가 저장되고, 미리 정의된 대기 시간이 경과하였는지 식별하거나, 또는 메모리 컨트롤러로부터 주기적으로 버퍼 메모리(222)의 백업을 요청하는 커맨드를 수신할 수 있다. 트리거 모듈(286)은 상기 미리 정의된 대기 시간이 경과하거나, 상기 백업을 요청하는 커맨드의 수신에 응답하여 버퍼 메모리(222)의 변경된 가중치 파라미터, 추론된 최적의 워드라인 전압 값, 중간 산출물 등의 데이터를 메모리 셀 어레이(100)의 메타 영역에 라이트하도록 제어 로직(220)을 트리거할 수도 있다.
도 6은 워드라인에 따라 상이한 프로그램 전압을 도시한 비교 예를 도시한다.
도 6을 참조하면, 워드라인 적층 수가 증가하게 되고, 이에 따라 셀들 간에 편차(variation)도 증가하는 추세이다. 따라서, 제어 로직(220)은 복수의 워드라인들을 적어도 하나 이상의 그룹으로 그룹화하고, 각각의 그룹에 최적의 시간 동안 최적의 전압을 인가하고 있다. 도 6을 참조하면, 워드라인마다 채널의 홀 사이즈가 상이한 경우, 각각의 워드라인에 인가되는 프로그램 전압, 리드 전압, 이레이즈 전압 및 펄스 인가 시간들은 각각 상이할 수 있다.
예를 들어, 각각의 워드라인마다 동일한 산포에 따른 프로그램을 수행하기 위하여, 제어 로직(220)은 제12 워드라인(WL12)을 프로그램할 때는 제1 프로그램 전압(VPGM1)을 인가하고, 제1 워드라인(WL1)에 위치한 셀을 프로그램할 때는 제6 프로그램 전압(VPGM6)을 인가할 수 있고, 상기 제1 프로그램 전압(VPGM1)과 제6 프로그램 전압(VPGM6)은 서로 상이할 수 있다. 특성이 유사한 복수의 워드라인을 그룹핑하고, 각각의 그룹마다 최적의 프로그램 전압 및 프로그램 시간을 매핑 테이블의 형태로 관리할 수 있으나, 적층 수가 늘어남에 따라 매핑 테이블의 크기가 증가하고, 최적화에 어려움이 야기될 수 있다. 따라서, 특성이 유사한 복수의 워드라인들을 매핑 테이블의 형태가 아닌 ML IP(280)를 활용하여 인공신경망 모델에 기반하여 관리한다면 적층 수가 늘어나더라도 보다 정교한 최적화가 가능할 수 있다.
도 7은 본 개시의 예시적 실시예에 따른 인공신경망 모델의 예를 도시한다.
도 7을 참조하면, 인공신경망 모델은 프로그램 대상 셀의 블록 정보, 워드라인 정보, 스트링 선택 라인 정보를 포함하는 물리 정보와, 웨이퍼 위치 정보, 웨이퍼 신뢰도 정보, P/E 사이클 횟수에 대한 정보를 포함하는 칩-레벨 정보와, 리드 카운트 횟수, 검증 전압을 인가했을 때의 오프-셀 및 온-셀 개수의 카운트 정보, 등을 포함하는 동작 정보를 입력으로, 최적의 프로그램 전압(Vprm), 최적의 이레이즈 전압(Vers), 최적의 프로그램 전압 펄스 폭(PWpgm) 등을 추론할 수 있다.
인공신경망 모델은 입력 레이어를 구성하는 입력 노드들(I1~I3), 적어도 하나의 히든 레이어를 구성하는 히든 노드들, 그리고 출력 레이어를 구성하는 출력 노드들(v1~v3)을 포함할 수 있다. 버퍼 메모리(270)에 저장된 가중치 파라미터들은, 각각의 노드에서 다음 단계의 노드로 진행할 때, 진행 방향을 결정하기 위한 값들로서, 각각의 노드에서 진행할 수 있는 모든 진행 방향마다 고유 값들이 트레이닝에 의해 결정될 수 있다.
도 7에서는, 1단을 포함하는 히든 레이어를 기준으로 도시되었으나, 이에 제한되는 것은 아니다. 다양한 실시예들에 따라, 최적의 프로그램 전압, 최적의 리드 전압 및 최적의 이레이즈 전압에 대한 오차 허용 범위, 메모리 장치(10)의 성능에 따라, 히든 노드, 히든 레이어의 개수 및 구조는 다양할 수 있다.
도 8은 본 개시의 예시적 실시예에 따른 비휘발성 메모리 장치(10)의 프로그램 순서도이다.
도 8을 참조하면, 동작 S110에서, 제어 로직(220)은 프로그램 커맨드(PGM CMD)를 수신할 수 있다. 제어 로직(220)은 프로그램 커맨드(PGM CMD)의 어드레스를 통해 프로그램 대상 셀을 식별할 수 있다.
동작 S120에서, ML IP(280)는 메타 영역(110)에 저장된 칩-레벨 정보를 로드할 수 있다. 상기 칩-레벨 정보는, 웨이퍼 위치 정보, 웨이퍼 신뢰도 정보 등을 포함할 수 있다. ML IP(280)는 상기 칩-레벨 정보를 버퍼 메모리(270)에 로드할 수 있다. 다양한 실시예들에서, ML IP(280)는 제어 로직(220)로부터 제어 신호를 수신하지 않더라도 상기 칩-레벨 정보를 버퍼 메모리(270)에 로드할 수 있다. 예를 들어, 메모리 장치(10)가 파워업 될 때, ML IP(280)는 프로그램 커맨드가 수신되지 않더라도, 상기 칩-레벨 정보를 버퍼 메모리(222)에 미리 로드할 수 있다.
동작 S130에서, ML IP(280)는 프로그램 대상 셀의 물리 정보를 로드할 수 있다. 제어 로직(220)은 프로그램 커맨드(PGM CMD)를 복호하여 프로그램 대상 셀의 위치 정보를 획득할 수 있다. 제어 로직(220)은 프로그램 대상 셀의 블록 정보, 워드라인 정보, 스트링 선택 정보를 ML IP(280)에게 입력으로 전송할 수 있다.
동작 S140에서, ML IP(280)는 로드한 동작 정보, 칩-레벨 정보 및 물리 정보에 기반하여 최적 프로그램 전압을 추론할 수 있다. ML IP(280)는 칩-레벨 정보의 웨이퍼 위치 정보, 웨이퍼 신뢰도 정보와 프로그램 대상 셀의 어드레스에 따라 최적 프로그램 전압 값을 출력할 수 있다.
동작 S150에서, 제어 로직(220)은 추론된 최적 프로그램 전압을 인가할 수 있다. 제어 로직(220)은 ML IP(280)에 의해 추론된 최적 프로그램 전압 값을 수신하고, 수신된 프로그램 전압 값에 따라 전압 생성기(230)에게 전달함으로써 프로그램을 수행할 수 있다.
동작 S160에서, 제어 로직(220)은 상기 프로그램을 수행하면서 획득된 동작 정보를 버퍼 메모리(222)에 저장할 수 있다. 매번 프로그램, 리드, 이레이즈 동작을 수행할 때마다 동작 정보는 변경될 수 있고, 변경된 동작 정보는, 추후 인공신경망 모델의 추론 및 트레이닝에 사용될 수 있다. 따라서, 제어 로직(220)은 프로그램을 완료한 이후, 획득된 셀 스피드 정보, 검증 전압 인가 시 온-셀, 오프-셀의 개수, 검증 패스에 소요되는 루프 횟수, 산포 모양에 대한 정보, 리텐션 열화 정도에 대한 정보 등을 버퍼 메모리(222)에 저장하도록 제어할 수 있다. 전술한 실시예에서, 비휘발성 메모리 장치(10)가 프로그램 동작을 수행하는 것을 기준으로 도시되었으나, 이에 제한되는 것은 아니다. 다양한 실시예들에 따라, 비휘발성 메모리 장치(10)가 리드 동작을 수행하거나, 이레이즈 동작을 수행하는 경우에 적용될 수 있음은 명확할 것이다.
도 9는 본 개시의 예시적 실시예에 따른 비휘발성 메모리 장치(10)의 순서도이다.
도 9을 참조하면, 동작 S210에서, ML IP(280)는 제1 트레이닝 페이즈에 따라 가중치 파라미터들을 생성할 수 있다. 일 실시예에 따라, 상기 제1 트레이닝 페이즈는 제품 출하 이전에, 칩-레벨 정보만을 이용하여 수행될 수 있다.
동작 S220에서, ML IP(280)는 인공신경망을 이용하여 제1 최적 프로그램 전압을 추론할 수 있다. 동작 S220은 도 8의 동작 S110 내지 동작 S150을 포함하므로, 중복된 기재는 생략하기로 한다. 상기 제1 최적 프로그램 전압은, 제1 트레이닝 페이즈에 따라 학습된 추론 모듈(282)로부터 출력된 값을 지칭할 수 있다.
동작 S230에서, ML IP(280)는 트리거 모듈(286)에 기반하여 트레이닝 모듈(284)을 활성화할 수 있다. 트리거 모듈(286)은 미리 정의된 이벤트를 검출함에 응답하여, 트레이닝 모듈(284)을 활성화할 수 있다. 일 실시예에 따라, 트리거 모듈(286)은 미리 정의된 대기 시간을 경과하여 프로그램 및 이레이즈 커맨드를 수신하지 않은 경우, 트리거 모듈(286)은 트레이닝 모듈(284)을 활성화할 수 있다. 다른 실시예에 따라, 트리거 모듈(286)은 셀 스피드가 미리 결정된 속도보다 느리게 검출되는 셀을 카운트하고, 카운트 값이 미리 정의된 임계 값을 초과하는 경우, 트레이닝 모듈(284)을 활성화할 수도 있다. 또 다른 실시예에 따라, 트리거 모듈(286)은 프로그램 후 검증 전압을 인가하거나, 이레이즈 후 검증 전압을 인가하고, 오프-셀의 개수가 미리 정의된 개수를 초과하는 경우, 오프-셀의 개수가 미리 정의된 개수를 초과하는 경우, 메모리 셀 어레이(100)의 열화 정도를 반영하는 트레이닝을 수행하기 위하여, 트레이닝 모듈(284)을 활성화할 수 있다. 또 다른 실시예에 따라, 트리거 모듈(286)은 메모리 컨트롤러로부터 인공신경망 모델의 트레이닝을 지시하는 커맨드를 수신하고, 상기 커맨드에 응답하여 트레이닝 모듈(284)을 활성화할 수도 있다.
동작 S240에서, ML IP(280)는 동작 정보, 물리 정보 및 칩-레벨 정보를 로드하여 인공신경망 모델에 대한 제2 트레이닝 페이즈를 수행할 수 있다. ML IP(280)의 트레이닝 모듈(284)은 프로그램 대상 셀의 위치 정보, 대상 셀의 위치와 웨이퍼 위치 정보에 포함되는지 여부, 프로그램 또는 이레이즈 후 검증 전압 인가 시, 오프-셀 및 온-셀 카운트 정보를 모두 고려하여, 트레이닝을 수행할 수 있다. 상기 제2 트레이닝 페이즈에 따라, 제1 트레이닝 페이즈에서 생성된 가중치 파라미터들 값이 변경될 수 있다. 제2 트레이닝 페이즈에서 업데이트된 가중치 파라미터들은, 제1 트레이닝 페이즈 이후에 복수의 프로그램 및 이레이즈를 수행하면서 열화되는 셀에 대한 정보를 더 반영함으로써, 변경된 메모리 셀 어레이(100)의 상태에서 제2 최적 프로그램 전압을 추론하는데 이용될 수 있다.
동작 S245에서, ML IP(280)은 인공신경망의 가중치 파라미터에 대한 적합성 여부를 검증할 수 있다. ML IP(280)는 가중치 파라미터들에 대하여 허용 가능한 범위를 미리 설정할 수 있다. 이는, 인공신경망 모델이 임의의 입력에 대하여 편향(biasing)되도록 트레이닝됨으로써 최적의 프로그램 전압 값, 최적의 리드 전압 값, 또는 최적의 이레이즈 전압 값을 출력하지 못하는 상황을 미연에 방지할 수 있다.
다양한 실시예들에 따라, ML IP(280)는 매번 트레이닝이 종료될 때마다 인공신경망 모델을 구성하는 가중치 파라미터들이 상기 허용 가능한 범위를 초과하였는지 여부를 판단할 수 있다. ML IP(280)는 상기 허용 가능한 범위를 초과한 가중치 파라미터가 식별되는 경우, 상기 식별된 가중치 파라미터들의 값을 상기 허용 가능한 범위 이내의 값으로 다시 설정할 수 있다. 일 실시예에 따라, ML IP(280)는 하이퍼 파라미터를 조정할 수 있다. 상기 하이퍼 파라미터는, 인공신경망 모델의 노드들 간에 가중치 파라미터가 아닌 인공신경망 모델의 트레이닝에 영향을 미치는 파라미터들을 지칭할 수 있다. 예를 들어, 하이퍼 파라미터는 히든 레이어의 개수, 학습률(learning rate), 훈련을 반복하는 아이터레이션(iteration) 횟수, 배치(batch) 크기, 정규화 강도(regularization strength) 등을 적어도 포함할 수 있다. 예를 들어, ML IP(280)는 상기 허용 가능한 범위를 초과한 가중치 파라미터가 식별되는 경우, 가중치 초기화(weight initialization)를 수행한 이후, 트레이닝 데이터 세트를 하이퍼 파라미터의 검증을 위한 제1 데이터 세트와 트레이닝을 위한 제2 데이터 세트로 구별하고, 제1 데이터 세트의 인공신경망 모델의 하이퍼 파라미터를 변경하면서 제2 데이터 세트의 결과와 비교함으로써 최적의 하이퍼 파라미터를 획득할 수 있다.
동작 S250에서, ML IP(280)는 인공신경망의 가중치 파라미터를 업데이트할 수 있다. ML IP(280)는 제2 트레이닝 페이즈를 수행하는 동안, 변경된 가중치 파라미터 값들을 버퍼 메모리(270)에 저장할 수 있다. 예를 들어, 트리거 모듈(286)은 버퍼 메모리(270)에 변경된 가중치 파라미터가 저장되고, 미리 정의된 시간이 경과한 경우, SPO(sudden power off)가 발생하여 상기 변경된 가중치 파라미터를 소실하는 것을 방지하기 위하여, 버퍼 메모리(222)의 변경된 가중치 파라미터를 메모리 셀 어레이(100)의 메타 영역에 저장하도록 제어 로직(220)을 트리거할 수 있다.
도 1 내지 도 9의 전술한 실시예들에서, ML IP(280)는 최적의 프로그램 전압을 추론하는 것을 기준으로 설명하였으나, 이에 제한되는 것은 아니다. 다양한 실시예들에 따라, ML IP(280)는 최적의 리드 전압 값, ISPP, 최적 이레이즈 전압 값, ISPE, 프로그램 전압 펄스 폭, 프로그램 루프 컨트롤, 이레이즈 전압 펄스 폭, 이레이즈 루프 컨트롤 값 중 적어도 하나를 포함할 수 있다. 예를 들어, ML IP(280)는 ISPP의 시작 전압 레벨, 검증 전압 레벨, 복수의 ISPP 전압 펄스들의 개수, 복수의 ISPP 전압 펄스들의 전압 상승 간격 등을 변경된 메모리 셀 어레이(100)의 상태에 최적화되도록 변경할 수 있다.
전술한 실시예들에서, ML IP(280)는 결정 트리, 뉴럴 네트워크 모델, 선형 회귀 중 어느 하나에 기반하는 것을 기준으로 설명하였으나, 이에 제한되는 것은 아니다. 다양한 실시예들에 따라, ML IP(280)는 결정 트리, 뉴럴 네트워크 모델 및 선형 회귀 중 적어도 둘 이상의 결합에 기반하여 최적의 프로그램 전압을 추론할 수 있을 것이다. 예를 들어, ML IP(280)는 메타 정보는 결정 트리에 기반하고, 물리 정보는 뉴럴 네트워크 모델에 기반하고, 동작 정보는 선형 회귀에 기반하여 최적의 프로그램 전압을 추론할 수도 있다.
도 10은 본 개시의 일 실시예에 따른 메모리 장치(900)를 나타내는 단면도이다.
도 10을 참조하면, 메모리 장치(900)는 C2C(chip to chip) 구조일 수 있다. C2C 구조는 제1 웨이퍼 상에 셀 영역(CELL)을 포함하는 상부 칩을 제작하고, 제1 웨이퍼와 다른 제2 웨이퍼 상에 주변 회로 영역(PERI)을 포함하는 하부 칩을 제작한 후, 상기 상부 칩과 상기 하부 칩을 본딩(bonding) 방식에 의해 서로 연결하는 것을 의미할 수 있다. 일례로, 상기 본딩 방식은 상부 칩의 최상부 메탈층에 형성된 본딩 메탈과 하부 칩의 최상부 메탈층에 형성된 본딩 메탈을 서로 전기적으로 연결하는 방식을 의미할 수 있다. 예컨대, 상기 본딩 메탈이 구리(Cu)로 형성된 경우, 상기 본딩 방식은 Cu-Cu 본딩 방식일 수 있으며, 상기 본딩 메탈은 알루미늄 혹은 텅스텐으로도 형성될 수 있다. 도 1 내지 도 9에 예시된 실시예들은 메모리 장치(900)에 구현될 수 있고, 예를 들어, 도 1 내지 도 9를 참조하여 ML IP(280)는 주변 회로 영역(PERI)에 구현될 수 있다.
메모리 장치(900)의 주변 회로 영역(PERI)과 셀 영역(CELL) 각각은 외부 패드 본딩 영역(PA), 워드라인 본딩 영역(WLBA), 및 비트라인 본딩 영역(BLBA)을 포함할 수 있다. 주변 회로 영역(PERI)은 제1 기판(710), 층간 절연층(715), 제1 기판(710)에 형성되는 복수의 회로 소자들(720a, 720b, 720c), 복수의 회로 소자들(720a, 720b, 720c) 각각과 연결되는 제1 메탈층(730a, 730b, 730c), 제1 메탈층(730a, 730b, 730c) 상에 형성되는 제2 메탈층(740a, 740b, 740c)을 포함할 수 있다. 일 실시예에서, 제1 메탈층(730a, 730b, 730c)은 상대적으로 저항이 높은 텅스텐으로 형성될 수 있고, 제2 메탈층(740a, 740b, 740c)은 상대적으로 저항이 낮은 구리로 형성될 수 있다.
본 명세서에서는 제1 메탈층(730a, 730b, 730c)과 제2 메탈층(740a, 740b, 740c)만 도시되고 설명되나, 이에 한정되는 것은 아니고, 제2 메탈층(740a, 740b, 740c) 상에 적어도 하나 이상의 메탈층이 더 형성될 수도 있다. 제2 메탈층(740a, 740b, 740c)의 상부에 형성되는 하나 이상의 메탈층 중 적어도 일부는, 제2 메탈층(740a, 740b, 740c)을 형성하는 구리보다 더 낮은 저항을 갖는 알루미늄 등으로 형성될 수 있다. 층간 절연층(715)은 복수의 회로 소자들(720a, 720b, 720c), 제1 메탈층(730a, 730b, 730c), 및 제2 메탈층(740a, 740b, 740c)을 커버하도록 제1 기판(710) 상에 배치되며, 실리콘 산화물, 실리콘 질화물 등과 같은 절연 물질을 포함할 수 있다.
워드라인 본딩 영역(WLBA)의 제2 메탈층(740b) 상에 하부 본딩 메탈(771b, 772b)이 형성될 수 있다. 워드라인 본딩 영역(WLBA)에서, 주변 회로 영역(PERI)의 하부 본딩 메탈(771b, 772b)은 셀 영역(CELL)의 상부 본딩 메탈(871b, 872b)과 본딩 방식에 의해 서로 전기적으로 연결될 수 있으며, 하부 본딩 메탈(771b, 772b)과 상부 본딩 메탈(871b, 872b)은 알루미늄, 구리, 혹은 텅스텐 등으로 형성될 수 있다. 셀 영역(CELL)의 상부 본딩 메탈(871b, 872b)은 제1 메탈 패드들이라고 지칭될 수 있고, 주변 회로 영역(PERI)의 하부 본딩 메탈(771b, 772b)은 제2 메탈 패드들이라고 지칭할 수 있다.
셀 영역(CELL)은 적어도 하나의 메모리 블록을 제공할 수 있다. 셀 영역(CELL)은 제2 기판(810)과 공통 소스 라인(820)을 포함할 수 있다. 제2 기판(810) 상에는, 제2 기판(810)의 상면에 수직하는 방향(VD)을 따라 복수의 워드라인들(831-838; 830)이 적층될 수 있다. 워드라인들(830)의 상부 및 하부 각각에는 스트링 선택 라인들과 접지 선택 라인이 배치될 수 있으며, 스트링 선택 라인들과 접지 선택 라인 사이에 복수의 워드라인들(830)이 배치될 수 있다.
비트라인 본딩 영역(BLBA)에서, 채널 구조체(CH)는 제2 기판(810)의 상면에 수직하는 방향으로 연장되어 워드라인들(830), 스트링 선택 라인들, 및 접지 선택 라인을 관통할 수 있다. 채널 구조체(CH)는 데이터 저장층, 채널층, 및 매립 절연층 등을 포함할 수 있으며, 채널층은 제1 메탈층(850c) 및 제2 메탈층(860c)과 전기적으로 연결될 수 있다. 예컨대, 제1 메탈층(850c)은 비트라인 컨택일 수 있고, 제2 메탈층(860c)은 비트라인일 수 있다. 일 실시예에서, 비트라인(860c)은 제2 기판(810)의 상면에 평행한 제1 수평 방향(HD1)을 따라 연장될 수 있다.
도 10에 도시한 일 실시예에서, 채널 구조체(CH)와 비트라인(860c) 등이 배치되는 영역이 비트라인 본딩 영역(BLBA)으로 정의될 수 있다. 비트라인(860c)은 비트라인 본딩 영역(BLBA)에서 주변 회로 영역(PERI)에서 페이지 버퍼(893)를 제공하는 회로 소자들(720c)과 전기적으로 연결될 수 있다. 일례로, 비트라인(860c)은 주변 회로 영역(PERI)에서 상부 본딩 메탈(871c, 872c)과 연결되며, 상부 본딩 메탈(871c, 872c)은 페이지 버퍼(893)의 회로 소자들(720c)에 연결되는 하부 본딩 메탈(771c, 772c)과 연결될 수 있다.
워드라인 본딩 영역(WLBA)에서, 워드라인들(830)은 제2 기판(810)의 상면에 평행한 제2 수평 방향(HD2)을 따라 연장될 수 있으며, 복수의 셀 컨택 플러그들(841-847; 840)와 연결될 수 있다. 워드라인들(830)과 셀 컨택 플러그들(840)은, 제2 수평 방향을 따라 워드라인들(830) 중 적어도 일부가 서로 다른 길이로 연장되어 제공하는 패드들에서 서로 연결될 수 있다. 워드라인들(830)에 연결되는 셀 컨택 플러그들(840)의 상부에는 제1 메탈층(850b)과 제2 메탈층(860b)이 차례로 연결될 수 있다. 셀 컨택 플러그들(840)은 워드라인 본딩 영역(WLBA)에서 셀 영역(CELL)의 상부 본딩 메탈(871b, 872b)과 주변 회로 영역(PERI)의 하부 본딩 메탈(771b, 772b)을 통해 주변 회로 영역(PERI)과 연결될 수 있다.
셀 컨택 플러그들(840)은 주변 회로 영역(PERI)에서 로우 디코더(894)를 제공하는 회로 소자들(720b)과 전기적으로 연결될 수 있다. 일 실시예에서, 로우 디코더(894)를 제공하는 회로 소자들(720b)의 동작 전압은, 페이지 버퍼(893)를 제공하는 회로 소자들(720c)의 동작 전압과 다를 수 있다. 일례로, 페이지 버퍼(893)를 제공하는 회로 소자들(720c)의 동작 전압이 로우 디코더(894)를 제공하는 회로 소자들(720b)의 동작 전압보다 클 수 있다.
외부 패드 본딩 영역(PA)에는 공통 소스 라인 컨택 플러그(880)가 배치될 수 있다. 공통 소스 라인 컨택 플러그(880)는 금속, 금속 화합물, 또는 폴리실리콘 등의 도전성 물질로 형성되며, 공통 소스 라인(820)과 전기적으로 연결될 수 있다. 공통 소스 라인 컨택 플러그(880) 상부에는 제1 메탈층(850a)과 제2 메탈층(860a)이 차례로 적층될 수 있다. 일례로, 공통 소스 라인 컨택 플러그(880), 제1 메탈층(850a), 및 제2 메탈층(860a)이 배치되는 영역은 외부 패드 본딩 영역(PA)으로 정의될 수 있다.
한편 외부 패드 본딩 영역(PA)에는 입출력 패드들(705, 805)이 배치될 수 있다. 도 10을 참조하면, 제1 기판(710)의 하부에는 제1 기판(710)의 하면을 덮는 하부 절연막(701) 이 형성될 수 있으며, 하부 절연막(701) 상에 제1 입출력 패드(705)가 형성될 수 있다. 제1 입출력 패드(705)는 제1 입출력 컨택 플러그(703)를 통해 주변 회로 영역(PERI)에 배치되는 복수의 회로 소자들(720a, 720b, 720c) 중 적어도 하나와 연결되며, 하부 절연막(701)에 의해 제1 기판(710)과 분리될 수 있다. 또한, 제1 입출력 컨택 플러그(703)와 제1 기판(710) 사이에는 측면 절연막이 배치되어 제1 입출력 컨택 플러그(703)와 제1 기판(710)을 전기적으로 분리할 수 있다.
도 10을 참조하면, 제2 기판(810)의 상부에는 제2 기판(810)의 상면을 덮는 상부 절연막(801)이 형성될 수 있으며, 상부 절연막(801) 상에 제2 입출력 패드(805)가 배치될 수 있다. 제2 입출력 패드(805)는 제2 입출력 컨택 플러그(803)를 통해 주변 회로 영역(PERI)에 배치되는 복수의 회로 소자들(720a, 720b, 720c) 중 적어도 하나와 연결될 수 있다.
실시예들에 따라, 제2 입출력 컨택 플러그(803)가 배치되는 영역에는 제2 기판(810) 및 공통 소스 라인(820) 등이 배치되지 않을 수 있다. 또한, 제2 입출력 패드(805)는 제3 방향(Z축 방향)에서 워드라인들(830)과 오버랩되지 않을 수 있다. 도 12를 참조하면, 제2 입출력 컨택 플러그(803)는 제2 기판(810)의 상면에 평행한 방향에서 제2 기판(810)과 분리되며, 셀 영역(CELL)의 층간 절연층(815)을 관통하여 제2 입출력 패드(805)에 연결될 수 있다.
실시예들에 따라, 제1 입출력 패드(705)와 제2 입출력 패드(805)는 선택적으로 형성될 수 있다. 일례로, 메모리 장치(800)는 제1 기판(710)의 상부에 배치되는 제1 입출력 패드(705)만을 포함하거나, 또는 제2 기판(810)의 상부에 배치되는 제2 입출력 패드(805)만을 포함할 수 있다. 또는, 메모리 장치(800)가 제1 입출력 패드(705)와 제2 입출력 패드(805)를 모두 포함할 수도 있다.
셀 영역(CELL)과 주변 회로 영역(PERI) 각각에 포함되는 외부 패드 본딩 영역(PA)과 비트라인 본딩 영역(BLBA) 각각에는 최상부 메탈층의 메탈 패턴이 더미 패턴(dummy pattern)으로 존재하거나, 최상부 메탈층이 비어있을 수 있다.
메모리 장치(800)는 외부 패드 본딩 영역(PA)에서, 셀 영역(CELL)의 최상부 메탈층에 형성된 상부 메탈 패턴(872a)에 대응하여 주변 회로 영역(PERI)의 최상부 메탈층에 셀 영역(CELL)의 상부 메탈 패턴(872a)과 동일한 형태의 하부 메탈 패턴(773a)을 형성할 수 있다. 주변 회로 영역(PERI)의 최상부 메탈층에 형성된 하부 메탈 패턴(773a)은 주변 회로 영역(PERI)에서 별도의 콘택과 연결되지 않을 수 있다. 이와 유사하게, 외부 패드 본딩 영역(PA)에서 주변 회로 영역(PERI)의 최상부 메탈층에 형성된 하부 메탈 패턴에 대응하여 셀 영역(CELL)의 상부 메탈층에 주변 회로 영역(PERI)의 하부 메탈 패턴과 동일한 형태의 상부 메탈 패턴을 형성할 수도 있다.
워드라인 본딩 영역(WLBA)의 제2 메탈층(740b) 상에는 하부 본딩 메탈(771b, 772b)이 형성될 수 있다. 워드라인 본딩 영역(WLBA)에서, 주변 회로 영역(PERI)의 하부 본딩 메탈(771b, 772b)은 셀 영역(CELL)의 상부 본딩 메탈(871b, 872b)과 본딩 방식에 의해 서로 전기적으로 연결될 수 있다. 비트라인 본딩 영역(BLBA)에서, 주변 회로 영역(PERI)의 최상부 메탈층에 형성된 하부 메탈 패턴(752)에 대응하여 셀 영역(CELL)의 최상부 메탈층에 주변 회로 영역(PERI)의 하부 메탈 패턴(752)과 동일한 형태의 상부 메탈 패턴(892)을 형성할 수 있다. 셀 영역(CELL)의 최상부 메탈층에 형성된 상부 메탈 패턴(892) 상에는 콘택을 형성하지 않을 수 있다.
도 11은 본 개시의 일부 실시예들에 따른 메모리 장치를 SSD 시스템에 적용한 예를 나타내는 블록도이다.
도 11을 참조하면, SSD 시스템(1000)은 호스트(1100) 및 SSD(1200)를 포함할 수 있다. SSD(1200)는 SSD 컨트롤러(1210), 보조 전원 장치(1220) 및 메모리 장치들(1230, 1240, 1250)을 포함할 수 있다.
메모리 장치들(1230, 1240, 1250)은 수직 적층형 NAND 플래시 메모리 장치일 수 있다. 이때, SSD(1200)는 도 1 내지 도 10을 참조하여 상술된 실시예들을 이용하여 구현될 수 있다.
이상에서와 같이 도면과 명세서에서 예시적인 실시예들이 개시되었다. 본 명세서에서 특정한 용어를 사용하여 실시예들을 설명되었으나, 이는 단지 본 개시의 기술적 사상을 설명하기 위한 목적에서 사용된 것이지 의미 한정이나 특허청구범위에 기재된 본 개시의 범위를 제한하기 위하여 사용된 것은 아니다. 그러므로 본 기술분야의 통상의 지식을 가진 자라면 이로부터 다양한 변형 및 균등한 타 실시예가 가능하다는 점을 이해할 것이다. 따라서, 본 개시의 진정한 기술적 보호범위는 첨부된 특허청구범위의 기술적 사상에 의해 정해져야 할 것이다.

Claims (20)

  1. 비휘발성 메모리 장치에 있어서,
    유저 데이터 및 메타 영역에 칩 관련 정보를 포함하는 메모리 셀 어레이;
    호스트로부터 커맨드를 수신하고, 상기 커맨드에 상응하는 대상 셀을 식별하는 컨트롤러;
    인공신경망 모델을 이용하여, 상기 칩 관련 정보 및 상기 식별된 대상 셀에 관련된 정보를 입력으로 최적 파라미터를 추론하는 ML 연산기; 및
    상기 인공신경망 모델의 가중치 파라미터들을 저장하는 버퍼 메모리를 포함하는 비휘발성 메모리 장치.
  2. 제1항에 있어서,
    상기 인공신경망 모델은,
    결정 트리(decision tree), 뉴럴 네트워크(neural network), 및 선형 회귀(linear regression) 중 적어도 하나에 기반하는 것을 특징으로 하는 비휘발성 메모리 장치.
  3. 제1항에 있어서,
    상기 ML 연산기는,
    상기 버퍼 메모리에 저장된 상기 가중치 파라미터에 기반하여 추론을 수행하는 추론 모듈;
    상기 칩 관련 정보, 상기 대상 셀에 관련된 정보 및 동작 정보에 기반하여 상기 인공신경망 모델의 학습을 수행하는 트레이닝 모듈; 및
    상기 트레이닝 모듈의 활성화를 판단하는 트리거 모듈을 더 포함하는 것을 특징으로 하는 비휘발성 메모리 장치.
  4. 제3항에 있어서,
    상기 칩 관련 정보는,
    웨이퍼 위치 정보, 웨이퍼 신뢰도 정보 및 프로그램/이레이즈 사이클 횟수에 대한 정보를 포함하는 것을 특징으로 하는 비휘발성 메모리 장치.
  5. 제3항에 있어서,
    상기 대상 셀에 관련된 정보는,
    상기 대상 셀의 워드라인 정보, 상기 대상 셀의 블록 정보, 상기 대상 셀의 스트링 선택 라인 정보, 상기 대상 셀의 인홀(in-hole) 또는 아웃홀(out-hole) 여부를 지시하는 정보를 포함하는 것을 특징으로 하는 비휘발성 메모리 장치.
  6. 제3항에 있어서,
    상기 동작 정보는,
    셀 스피드 정보, 프로그램 후 검증 전압 인가 시 온-셀 및 오프-셀의 개수에 대한 카운트 정보, 프로그램 검증 패스 루프 횟수, 산포 모양에 대한 정보, 리텐션 열화 정도를 지시하는 정보, 인접 셀의 쓰기 패턴에 대한 정보, 대상 셀의 온도에 대한 정보를 적어도 포함하는 것을 특징으로 하는 비휘발성 메모리 장치.
  7. 제1항에 있어서,
    상기 메모리 셀 어레이는, 제1 웨이퍼 상에 임베디드(embedded)되고,
    상기 ML 연산기 및 상기 버퍼 메모리는, 상기 제1 웨이퍼와 상이한 제2 웨이퍼에 임베디드되고,
    상기 제1 웨이퍼와 상기 제2 웨이퍼는 C2C(chip to chip) 방식에 기반하여 서로 본딩(bonding)되는 것을 특징으로 하는 비휘발성 메모리 장치.
  8. 제3항에 있어서,
    상기 트리거 모듈은,
    프로그램 또는 이레이즈 후 검증 전압의 인가 시, 오프-셀의 개수를 미리 정의된 임계 값과 비교하고,
    상기 비교의 결과에 따라 상기 트레이닝 모듈을 활성화할 것을 트리거하는 것을 특징으로 하는 비휘발성 메모리 장치.
  9. 제8항에 있어서,
    상기 트레이닝 모듈은,
    상기 트리거 모듈의 트리거에 기반하여, 상기 동작 정보, 상기 칩 관련 정보, 및 상기 대상 셀에 관련된 정보를 수신하고,
    상기 수신된 정보에 기반하여 상기 인공신경망 모델의 학습을 수행하여 상기 가중치 파라미터들을 업데이트하는 것을 특징으로 하는 비휘발성 메모리 장치.
  10. 제1항에 있어서,
    상기 출력되는 최적 파라미터는,
    프로그램 전압 값, 리드 전압 값, 프로그램 전압의 펄스 폭, 프로그램 루프 컨트롤, ISPP(incremental step pulse program)의 펄스 개수 및 전압 상승 간격, 이레이즈 전압 값, 이레이즈 전압의 펄스 폭, 이레이즈 루프 컨트롤, ISPE(incremental step pulse erase)의 펄스 개수 및 전압 상승 간격에 대한 정보를 적어도 포함하는 것을 특징으로 하는 비휘발성 메모리 장치.
  11. 페리 영역에 버퍼 메모리, ML 연산기, 컨트롤러 및 메모리 셀 어레이를 포함하는 비휘발성 메모리 장치의 동작 방법에 있어서,
    호스트로부터 커맨드를 수신하고, 상기 커맨드에 상응하는 대상 셀을 식별하는 단계;
    상기 식별된 대상 셀과 관련된 정보 및 상기 메모리 셀 어레이의 메타 영역에 저장된 칩 관련 정보를 로드하는 단계;
    상기 ML 연산기를 통해, 상기 대상 셀과 관련된 정보 및 상기 칩 관련 정보를 인공신경망 모델의 입력으로 최적 파라미터를 출력하는 단계를 포함하는 비휘발성 메모리 장치의 동작 방법.
  12. 제11항에 있어서,
    상기 인공신경망 모델은,
    결정 트리(decision tree), 뉴럴 네트워크(neural network), 및 선형 회귀(linear regression) 중 적어도 하나에 기반하는 것을 특징으로 하는 비휘발성 메모리 장치의 동작 방법.
  13. 제11항에 있어서,
    상기 ML 연산기는,
    상기 버퍼 메모리에 저장된 가중치 파라미터에 기반하여 추론을 수행하는 추론 모듈과,
    상기 칩 관련 정보, 상기 대상 셀에 관련된 정보 및 동작 정보에 기반하여 상기 인공신경망 모델의 학습을 수행하는 트레이닝 모듈과,
    상기 트레이닝 모듈의 활성화를 판단하는 트리거 모듈을 더 포함하는 것을 특징으로 하는 비휘발성 메모리 장치의 동작 방법.
  14. 제13항에 있어서,
    상기 칩 관련 정보는, 웨이퍼 위치 정보, 웨이퍼 신뢰도 정보 및 프로그램/이레이즈 사이클 횟수에 대한 정보를 포함하는 것을 특징으로 하는 비휘발성 메모리 장치의 동작 방법.
  15. 제13항에 있어서,
    상기 대상 셀에 관련된 정보는,
    상기 대상 셀의 워드라인 정보, 상기 대상 셀의 블록 정보, 상기 대상 셀의 스트링 선택 라인 정보, 상기 대상 셀의 인홀(in-hole) 또는 아웃홀(out-hole) 여부를 지시하는 정보를 포함하는 것을 특징으로 하는 비휘발성 메모리 장치의 동작 방법.
  16. 제13항에 있어서,
    상기 동작 정보는,
    셀 스피드 정보, 프로그램 후 검증 전압 인가 시 온-셀 및 오프-셀의 개수에 대한 카운트 정보, 프로그램 검증 패스 루프 횟수, 산포 모양에 대한 정보, 리텐션 열화 정도를 지시하는 정보, 인접 셀의 쓰기 패턴에 대한 정보, 대상 셀의 온도에 대한 정보를 적어도 포함하는 것을 특징으로 하는 비휘발성 메모리 장치의 동작 방법.
  17. 제13항에 있어서,
    프로그램 또는 이레이즈 후 검증 전압의 인가 시, 오프-셀의 개수를 미리 정의된 임계 값과 비교하는 단계; 및
    상기 비교의 결과에 따라 상기 트레이닝 모듈을 활성화하는 단계를 더 포함하는 것을 특징으로 하는 비휘발성 메모리 장치의 동작 방법.
  18. 제17항에 있어서,
    상기 동작 정보, 상기 칩 관련 정보, 및 상기 대상 셀에 관련된 정보를 수신하는 단계;
    상기 수신된 정보에 기반하여 상기 인공신경망 모델의 학습을 수행하는 단계; 및
    상기 학습에 따라 업데이트된 상기 가중치 파라미터들을 상기 버퍼 메모리에 저장하는 단계를 포함하는 것을 특징으로 하는 비휘발성 메모리 장치의 동작 방법.
  19. 제11항에 있어서,
    상기 출력되는 최적 파라미터는,
    프로그램 전압 값, 리드 전압 값, 프로그램 전압의 펄스 폭, 프로그램 루프 컨트롤, ISPP(incremental step pulse program)의 펄스 개수 및 전압 상승 간격, 이레이즈 전압 값, 이레이즈 전압의 펄스 폭, 이레이즈 루프 컨트롤, ISPE(incremental step pulse erase)의 펄스 개수 및 전압 상승 간격에 대한 정보를 적어도 포함하는 것을 특징으로 하는 비휘발성 메모리 장치의 동작 방법.
  20. 프로그램 커맨드, 리드 커맨드 및 이레이즈 커맨드 포함하는 복수의 커맨드들을 송신하는 호스트 장치; 및
    유저 데이터 및 메타 영역에 칩 관련 정보를 포함하는 메모리 셀 어레이와, 상기 복수의 커맨드들 중 어느 하나의 커맨드를 수신하고, 상기 수신된 커맨드에 상응하는 대상 셀을 식별하는 컨트롤러와, 인공신경망 모델을 이용하여, 상기 칩 관련 정보 및 상기 식별된 대상 셀에 관련된 정보를 입력으로 최적 프로그램 전압, 최적 리드 전압 또는 최적 이레이즈 전압을 추론하는 ML 연산기와, 상기 인공신경망 모델의 가중치 파라미터들을 저장하는 버퍼 메모리를 포함하는 비휘발성 메모리 장치를 포함하는 메모리 시스템.
KR1020210008917A 2021-01-21 2021-01-21 비휘발성 메모리 장치 및 이를 포함하는 메모리 시스템 및 비휘발성 메모리 장치의 동작 방법 KR20220105940A (ko)

Priority Applications (4)

Application Number Priority Date Filing Date Title
KR1020210008917A KR20220105940A (ko) 2021-01-21 2021-01-21 비휘발성 메모리 장치 및 이를 포함하는 메모리 시스템 및 비휘발성 메모리 장치의 동작 방법
CN202111170351.3A CN114822643A (zh) 2021-01-21 2021-10-08 非易失性存储器装置及其操作方法和存储器系统
US17/498,832 US11763903B2 (en) 2021-01-21 2021-10-12 Nonvolatile memory device including artificial neural network, memory system including same, and operating method of nonvolatile memory device including artificial neural network
EP21212645.2A EP4033491A1 (en) 2021-01-21 2021-12-06 Nonvolatile memory device, memory system including same, and operating method of nonvolatile memory device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020210008917A KR20220105940A (ko) 2021-01-21 2021-01-21 비휘발성 메모리 장치 및 이를 포함하는 메모리 시스템 및 비휘발성 메모리 장치의 동작 방법

Publications (1)

Publication Number Publication Date
KR20220105940A true KR20220105940A (ko) 2022-07-28

Family

ID=78822338

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020210008917A KR20220105940A (ko) 2021-01-21 2021-01-21 비휘발성 메모리 장치 및 이를 포함하는 메모리 시스템 및 비휘발성 메모리 장치의 동작 방법

Country Status (4)

Country Link
US (1) US11763903B2 (ko)
EP (1) EP4033491A1 (ko)
KR (1) KR20220105940A (ko)
CN (1) CN114822643A (ko)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20230051863A1 (en) * 2021-08-10 2023-02-16 Micron Technology, Inc. Memory device for wafer-on-wafer formed memory and logic
US20230169008A1 (en) * 2021-11-30 2023-06-01 Red Hat, Inc. Managing prefetching operations for drives in distributed storage systems

Family Cites Families (24)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101226685B1 (ko) 2007-11-08 2013-01-25 삼성전자주식회사 수직형 반도체 소자 및 그 제조 방법.
US8072805B2 (en) * 2009-08-18 2011-12-06 Skymedi Corporation Method and system of finding a read voltage for a flash memory
KR101691092B1 (ko) 2010-08-26 2016-12-30 삼성전자주식회사 불휘발성 메모리 장치, 그것의 동작 방법, 그리고 그것을 포함하는 메모리 시스템
US8553466B2 (en) 2010-03-04 2013-10-08 Samsung Electronics Co., Ltd. Non-volatile memory device, erasing method thereof, and memory system including the same
US9536970B2 (en) 2010-03-26 2017-01-03 Samsung Electronics Co., Ltd. Three-dimensional semiconductor memory devices and methods of fabricating the same
KR101682666B1 (ko) 2010-08-11 2016-12-07 삼성전자주식회사 비휘발성 메모리 장치, 그것의 채널 부스팅 방법, 그것의 프로그램 방법 및 그것을 포함하는 메모리 시스템
KR20180027710A (ko) 2016-09-06 2018-03-15 삼성전자주식회사 불휘발성 메모리 장치를 포함하는 스토리지 장치 및 불휘발성 메모리 장치의 액세스 방법
US10289341B2 (en) * 2017-06-30 2019-05-14 Western Digital Technologies, Inc. Operating parameter offsets in solid state memory devices
KR102534917B1 (ko) 2017-08-16 2023-05-19 에스케이하이닉스 주식회사 신경망 처리 회로를 구비하는 메모리 장치 및 이를 포함하는 메모리 시스템
US10552251B2 (en) 2017-09-06 2020-02-04 Western Digital Technologies, Inc. Storage of neural networks
KR102395196B1 (ko) 2017-10-17 2022-05-06 삼성전자주식회사 파라미터 교정 기능을 갖는 스토리지 장치 및 상기 스토리지 장치의 동작 방법
KR102408858B1 (ko) 2017-12-19 2022-06-14 삼성전자주식회사 비휘발성 메모리 장치, 이를 포함하는 메모리 시스템 및 비휘발성 메모리 장치의 동작 방법
US11152074B2 (en) 2018-02-28 2021-10-19 Samsung Electronics Co., Ltd. Memory device with improved program performance and method of operating the same
TWI657456B (zh) 2018-05-14 2019-04-21 慧榮科技股份有限公司 用來於記憶裝置中藉助於機器學習來進行的記憶體存取管理之方法,記憶裝置及其控制器以及電子裝置
US20190363131A1 (en) 2018-05-25 2019-11-28 Gyrfalcon Technology Inc. Memory architecture having different type of memory devices and logic circuit disposed over a semiconductor substrate
KR102599123B1 (ko) 2018-11-14 2023-11-06 삼성전자주식회사 인공 신경망 모델에 기초하여 읽기 레벨들을 추론하는 스토리지 장치 및 인공 신경망 모델의 학습 방법
KR20200064264A (ko) 2018-11-28 2020-06-08 삼성전자주식회사 반도체 메모리 장치 및 반도체 메모리 장치의 동작 방법
US10573390B1 (en) 2018-11-30 2020-02-25 Samsung Electronics Co., Ltd. High-density storage system
KR102525165B1 (ko) 2018-12-18 2023-04-24 삼성전자주식회사 연산 회로를 포함하는 비휘발성 메모리 장치 및 이를 포함하는 뉴럴 네트워크 시스템
US11610116B2 (en) 2018-12-31 2023-03-21 SK Hynix Inc. Storage device performance optimization using deep learning
US11315649B2 (en) 2019-04-16 2022-04-26 Samsung Electronics Co., Ltd. Memory controller, memory device and memory system having improved threshold voltage distribution characteristics and related operating methods
US10861562B1 (en) 2019-06-24 2020-12-08 SK Hynix Inc. Deep learning based regression framework for read thresholds in a NAND flash memory
US10811075B1 (en) 2019-08-19 2020-10-20 Silicon Motion, Inc. Method for performing access control regarding quality of service optimization of memory device with aid of machine learning, associated memory device and controller thereof
KR20210026432A (ko) * 2019-08-30 2021-03-10 에스케이하이닉스 주식회사 반도체 메모리 장치

Also Published As

Publication number Publication date
US11763903B2 (en) 2023-09-19
CN114822643A (zh) 2022-07-29
EP4033491A1 (en) 2022-07-27
US20220230695A1 (en) 2022-07-21

Similar Documents

Publication Publication Date Title
EP3262655B1 (en) Balancing programming speeds of memory cells in a 3d stacked memory
JP5361213B2 (ja) 不揮発性メモリ装置及びその駆動方法
US10720218B2 (en) Nonvolatile memory device and an erase method thereof
CN105810249B (zh) 用于非易失性存储器装置的操作参数的快速适应性整理
US11158381B2 (en) Non-volatile memory device and operating method thereof
KR102336661B1 (ko) 비휘발성 메모리 장치 및 그것의 센싱 방법
CN106981306B (zh) 非易失性存储器装置的操作方法
US10748632B2 (en) Nonvolatile memory device and method of programming with bit line programming forcing voltage and programming inhibition voltage
CN106960681B (zh) 非易失性存储器装置
US11164631B2 (en) Nonvolatile memory device and operating method of the same
US11508443B2 (en) Nonvolatile memory device including a peripheral circuit to verify a program operation
KR20180061469A (ko) 부분 읽기 동작을 수행하는 불휘발성 메모리 장치 및 그것의 읽기 방법
CN105845181A (zh) 感测期间的字线突跳:修整和相邻的字线
EP4033491A1 (en) Nonvolatile memory device, memory system including same, and operating method of nonvolatile memory device
US11942166B2 (en) Nonvolatile memory device, storage device including nonvolatile memory device, and operating method of nonvolatile memory device
KR20220058278A (ko) 비휘발성 메모리 장치, 이를 포함하는 메모리 시스템 및 비휘발성 메모리 장치의 동작 방법
KR102497212B1 (ko) 비휘발성 메모리 장치 및 이의 동작 방법
US11594295B2 (en) Nonvolatile memory device and method of operating the same
US11315646B2 (en) Memory device having improved data reliability by varying program sequences
CN111312314A (zh) 非易失性存储器设备及其操作方法
KR20210054376A (ko) 반도체 메모리 장치 및 그 동작 방법

Legal Events

Date Code Title Description
A201 Request for examination