KR20220033651A - 비휘발성 메모리 장치, 그것의 프로그램 방법 및 그것을 포함하는 저장 장치 - Google Patents
비휘발성 메모리 장치, 그것의 프로그램 방법 및 그것을 포함하는 저장 장치 Download PDFInfo
- Publication number
- KR20220033651A KR20220033651A KR1020200115545A KR20200115545A KR20220033651A KR 20220033651 A KR20220033651 A KR 20220033651A KR 1020200115545 A KR1020200115545 A KR 1020200115545A KR 20200115545 A KR20200115545 A KR 20200115545A KR 20220033651 A KR20220033651 A KR 20220033651A
- Authority
- KR
- South Korea
- Prior art keywords
- program
- pulse
- predetermined condition
- program operation
- applying
- Prior art date
Links
Images
Classifications
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C16/00—Erasable programmable read-only memories
- G11C16/02—Erasable programmable read-only memories electrically programmable
- G11C16/06—Auxiliary circuits, e.g. for writing into memory
- G11C16/10—Programming or data input circuits
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C16/00—Erasable programmable read-only memories
- G11C16/02—Erasable programmable read-only memories electrically programmable
- G11C16/06—Auxiliary circuits, e.g. for writing into memory
- G11C16/08—Address circuits; Decoders; Word-line control circuits
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C11/00—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor
- G11C11/56—Digital 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/5621—Digital 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/5628—Programming or writing circuits; Data input circuits
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C16/00—Erasable programmable read-only memories
- G11C16/02—Erasable programmable read-only memories electrically programmable
- G11C16/04—Erasable programmable read-only memories electrically programmable using variable threshold transistors, e.g. FAMOS
- G11C16/0483—Erasable programmable read-only memories electrically programmable using variable threshold transistors, e.g. FAMOS comprising cells having several storage transistors connected in series
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C16/00—Erasable programmable read-only memories
- G11C16/02—Erasable programmable read-only memories electrically programmable
- G11C16/06—Auxiliary circuits, e.g. for writing into memory
- G11C16/10—Programming or data input circuits
- G11C16/14—Circuits for erasing electrically, e.g. erase voltage switching circuits
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C16/00—Erasable programmable read-only memories
- G11C16/02—Erasable programmable read-only memories electrically programmable
- G11C16/06—Auxiliary circuits, e.g. for writing into memory
- G11C16/24—Bit-line control circuits
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C16/00—Erasable programmable read-only memories
- G11C16/02—Erasable programmable read-only memories electrically programmable
- G11C16/06—Auxiliary circuits, e.g. for writing into memory
- G11C16/26—Sensing or reading circuits; Data output circuits
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C16/00—Erasable programmable read-only memories
- G11C16/02—Erasable programmable read-only memories electrically programmable
- G11C16/06—Auxiliary circuits, e.g. for writing into memory
- G11C16/30—Power supply circuits
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C16/00—Erasable programmable read-only memories
- G11C16/02—Erasable programmable read-only memories electrically programmable
- G11C16/06—Auxiliary circuits, e.g. for writing into memory
- G11C16/34—Determination of programming status, e.g. threshold voltage, overprogramming or underprogramming, retention
- G11C16/3418—Disturbance prevention or evaluation; Refreshing of disturbed memory data
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C16/00—Erasable programmable read-only memories
- G11C16/02—Erasable programmable read-only memories electrically programmable
- G11C16/06—Auxiliary circuits, e.g. for writing into memory
- G11C16/34—Determination of programming status, e.g. threshold voltage, overprogramming or underprogramming, retention
- G11C16/3418—Disturbance prevention or evaluation; Refreshing of disturbed memory data
- G11C16/3427—Circuits or methods to prevent or reduce disturbance of the state of a memory cell when neighbouring cells are read or written
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C16/00—Erasable programmable read-only memories
- G11C16/02—Erasable programmable read-only memories electrically programmable
- G11C16/06—Auxiliary circuits, e.g. for writing into memory
- G11C16/34—Determination of programming status, e.g. threshold voltage, overprogramming or underprogramming, retention
- G11C16/3436—Arrangements for verifying correct programming or erasure
- G11C16/3454—Arrangements for verifying correct programming or for detecting overprogrammed cells
- G11C16/3459—Circuits or methods to verify correct programming of nonvolatile memory cells
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C7/00—Arrangements for writing information into, or reading information out from, a digital store
- G11C7/10—Input/output [I/O] data interface arrangements, e.g. I/O data control circuits, I/O data buffers
- G11C7/1015—Read-write modes for single port memories, i.e. having either a random port or a serial port
- G11C7/1045—Read-write mode select circuits
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C7/00—Arrangements for writing information into, or reading information out from, a digital store
- G11C7/10—Input/output [I/O] data interface arrangements, e.g. I/O data control circuits, I/O data buffers
- G11C7/1048—Data bus control circuits, e.g. precharging, presetting, equalising
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C7/00—Arrangements for writing information into, or reading information out from, a digital store
- G11C7/10—Input/output [I/O] data interface arrangements, e.g. I/O data control circuits, I/O data buffers
- G11C7/1051—Data output circuits, e.g. read-out amplifiers, data output buffers, data output registers, data output level conversion circuits
- G11C7/106—Data output latches
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C7/00—Arrangements for writing information into, or reading information out from, a digital store
- G11C7/10—Input/output [I/O] data interface arrangements, e.g. I/O data control circuits, I/O data buffers
- G11C7/1078—Data input circuits, e.g. write amplifiers, data input buffers, data input registers, data input level conversion circuits
- G11C7/1087—Data input latches
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C16/00—Erasable programmable read-only memories
- G11C16/02—Erasable programmable read-only memories electrically programmable
- G11C16/04—Erasable programmable read-only memories electrically programmable using variable threshold transistors, e.g. FAMOS
Landscapes
- Engineering & Computer Science (AREA)
- Microelectronics & Electronic Packaging (AREA)
- Computer Hardware Design (AREA)
- Read Only Memory (AREA)
Abstract
본 발명에 따른 비휘발성 메모리 장치의 프로그램 방법은, 어느 하나의 프로그램 루프에서 싱글-펄스 프로그램 동작을 수행하는 단계, 상기 어느 하나의 프로그램 루프에서 사전에 결정된 조건을 만족하는 지를 판별하는 단계, 및 상기 사전에 결정된 조건이 만족될 때, 다음 프로그램 루프에서 멀티-펄스 프로그램 동작을 수행하는 단계를 포함하고, 상기 싱글-펄스 프로그램 동작은 제 1 프로그램 펄스를 인가하는 것과 복수의 검증 펄스들을 인가하는 것을 포함하고, 상기 멀티-펄스 프로그램 동작은 제 2 프로그램 펄스를 인가하는 것, 제 3 프로그램 펄스를 인가하는 것과, 상기 복수의 검증 펄스들을 인가하는 것을 포함하고, 상기 제 2 및 상기 제 3 프로그램 펄스들의 각각은 상기 제 1 프로그램 펄스의 레벨보다 낮은 레벨을 갖는다.
Description
본 발명은 비휘발성 메모리 장치, 그것의 프로그램 방법, 및 그것을 포함하는 저장 장치에 관한 것이다.
일반적으로, 플래시 메모리 장치의 저장 데이터는 셀의 문턱전압에 의해 정의되고, 프로그램 동작은 셀의 문턱전압을 변화시키는 방식으로 수행되고 있다. 일반적으로 프로그램 시의 셀 문턱 전압(threshold voltage)은 증가형 스텝 펄스 프로그램(Incremental Step Pulse Programming; ISPP) 방식으로 제어되고 있다. ISPP 방식으로 메모리 셀을 프로그램하는 경우, 메모리 셀의 워드라인에 인가되는 프로그램 전압은 프로그램이 완료될 때까지 계단식으로 지속적으로 증가한다. 이러한 고전압의 프로그램 전압은 프로그램되는 셀의 이웃 셀들에게 프로그램 디스터번스(program disturbance)를 야기한다.
본 발명의 목적은, 프로그램 디스터번스를 줄이는 비휘발성 메모리 장치, 그것의 프로그램 방법, 및 저장 장치를 제공하는 데 있다.
본 발명의 목적은, 프로그램 디스터번스를 줄이면서 성능을 개선하는 비휘발성 메모리 장치, 그것의 프로그램 방법, 및 저장 장치를 제공하는 데 있다.
본 발명의 실시 예에 따른 비휘발성 메모리 장치의 프로그램 방법은, 어느 하나의 프로그램 루프에서 싱글-펄스 프로그램 동작을 수행하는 단계, 상기 어느 하나의 프로그램 루프에서 사전에 결정된 조건을 만족하는 지를 판별하는 단계, 및 상기 사전에 결정된 조건이 만족될 때, 다음 프로그램 루프에서 멀티-펄스 프로그램 동작을 수행하는 단계를 포함하고, 상기 싱글-펄스 프로그램 동작은 제 1 프로그램 펄스를 인가하는 것과 복수의 검증 펄스들을 인가하는 것을 포함하고, 상기 멀티-펄스 프로그램 동작은 제 2 프로그램 펄스를 인가하는 것, 제 3 프로그램 펄스를 인가하는 것과, 상기 복수의 검증 펄스들을 인가하는 것을 포함하고, 상기 제 2 및 상기 제 3 프로그램 펄스들의 각각은 상기 제 1 프로그램 펄스의 레벨보다 낮은 레벨을 갖는 것을 특징으로 한다.
본 발명의 실시 예에 따른 비휘발성 메모리 장치는, 제 1 메탈 패드를 갖는 메모리 셀 영역; 및 제 2 메탈 패드를 갖고, 상기 제 1 메탈 패드와 상기 제 2 메탈 패드를 통하여 수직으로 연결되는 페리퍼럴 회로 영역을 포함하고, 상기 메모리 셀 영역에서, 복수의 워드라인들과 복수의 비트라인들에 연결된 복수의 메모리 셀들을 갖는 복수의 메모리 블록들을 포함하는 메모리 셀 어레이; 상기 페리퍼럴 회로 영역에서, 상기 복수의 워드라인들 중에서 어느 하나를 선택하는 로우 디코더; 상기 페리퍼럴 회로 영역에서, 상기 복수의 비트라인들에 연결되는 복수의 페이지 버퍼들을 갖는 페이지 버퍼 회로; 및 상기 페리퍼럴 회로 영역에서, 제어 핀들을 통하여 CLE(command latch enable) 신호, ALE(address latch enable) 신호, CE(chip enable) 신호, WE(write enable) 신호, RE(read enable) 신호, DQS 신호를 수신하고, 상기 CLE 신호 및 상기 ALE 신호에 따라 상기 WE 신호의 엣지에서 커맨드 혹은 어드레스를 래치함으로써 프로그램 동작을 수행하는 제어 로직을 포함하고, 상기 제어 로직은, 프로그램 디스터번스를 줄이기 위한 멀티-펄스 프로그램 동작을 수행할 지를 판별하는 판별 회로를 포함하고, 상기 멀티-펄스 프로그램 동작은 복수의 프로그램 펄스들을 인가하는 것과, 복수의 검증 펄스들을 인가하는 것을 포함할 수 있다.
본 발명의 실시 예에 따른 저장 장치는, 적어도 하나의 비휘발성 메모리 장치; 및 상기 적어도 하나의 비휘발성 메모리 장치에 CLE(command latch enable) 신호, ALE(address latch enable) 신호, CE(chip enable) 신호, WE(write enable) 신호, RE(read enable) 신호, DQS 신호를 제공하는 제어 핀들로 연결되고, 상기 적어도 하나의 비휘발성 메모리로부터 데이터를 읽도록 구현된 제어기를 포함하고, 상기 적어도 하나의 비휘발성 메모리 장치는 상기 CLE 신호 및 상기 ALE 신호에 따라 상기 WE 신호의 엣지에서 커맨드 혹은 어드레스를 래치함으로써 싱글-펄스 프로그램 동작 및 멀티-펄스 프로그램 동작을 수행하고, 상기 싱글-펄스 프로그램 동작은 하나의 프로그램 펄스를 인가하는 것과 복수의 검증 펄스들은 인가하는 것을 포함하고, 상기 멀티-펄스 프로그램 동작은 복수의 프로그램 펄스들을 인가하는 것과, 상기 복수의 검증 펄스들을 인가하는 것을 포함할 수 있다.
본 발명의 실시 예에 따른 비휘발성 메모리 장치, 그것의 프로그램 방법, 및 그것을 포함하는 저장 장치는, 멀티-펄스 프로그램 동작을 수행함으로써 프로그램 디스터번스를 줄일 수 있다.
본 발명의 실시 예에 따른 비휘발성 메모리 장치, 그것의 프로그램 방법, 및 그것을 포함하는 저장 장치는, 싱글 펄스 프로그램 동작을 수행하다가 특정한 조건을 만족할 때 멀티-펄스 프로그램 동작을 수행함으로써 신뢰성 개선을 기대할 수 있다.
이하에 첨부되는 도면들은 본 실시 예에 관한 이해를 돕기 위한 것으로, 상세한 설명과 함께 실시 예들을 제공한다.
도 1은 본 발명의 실시 예에 따른 비휘발성 메모리 장치(100)를 예시적으로 보여주는 도면이다.
도 2a 및 도 2b은 본 발명의 실시 예에 따른 메모리 블록들을 예시적으로 보여주는 도면들이다.
도 3는 도 1에 도시된 메모리 블록들 중 어느 하나의 메모리 블록(BLK1)에 대한 회로도를 예시적으로 보여주는 도면이다.
도 4는 본 발명의 실시 예에 따른 비휘발성 메모리 장치(100)의 프로그램 동작을 개념적으로 보여주는 도면이다.
도 5는 본 발명의 실시 예에 따른 멀티-펄스 프로그램을 적용할 때 프로그램 펄스의 레벨을 예시적으로 보여주는 도면이다.
도 6은 본 발명의 실시 예에 따른 비휘발성 메모리 장치(100)의 프로그램 동작을 예시적으로 보여주는 흐름도이다.
도 7a, 도 7b, 및 도 7c는 사전에 결정된 조건들을 예시적으로 보여주는 도면들이다.
도 8은 본 발명의 실시 예에 따른 비휘발성 메모리 장치(100)의 프로그램 동작을 예시적으로 보여주는 흐름도이다.
도 9a는 본 발명의 실시 예에 따른 멀티-펄스 프로그램 동작의 동작 구간을 개략적으로 설명하는 도면이고, 도 9b는 본 발명의 실시 예에 따른 멀티-펄스 프로그램 동작의 타이밍을 예시적으로 보여주는 도면이다.
도 10은 본 발명의 다른 실시 예에 따른 멀티-펄스 프로그램 동작의 동작 구간을 예시적으로 보여주는 도면이다.
도 11a 및 도 11b는 본 발명의 실시 예에 따른 비휘발성 메모리 장치(100)의 프로그램 디스터번스를 줄이는 효과를 예시적으로 설명한 도면들이다.
도 12는 본 발명의 따른 실시 예에 따른 저장 장치(10)를 예시적으로 보여주는 도면이다.
도 13은 본 발명의 실시 예에 따른 저장 장치에서 멀티-펄스 프로그램 동작을 수행하는 과정을 예시적으로 보여주는 래더 다이어그램이다.
도 14는 본 발명의 실시 예에 따른 C2C 구조로 구현된 비휘발성 메모리 장치(1000)를 예시적으로 보여주는 도면이다.
도 1은 본 발명의 실시 예에 따른 비휘발성 메모리 장치(100)를 예시적으로 보여주는 도면이다.
도 2a 및 도 2b은 본 발명의 실시 예에 따른 메모리 블록들을 예시적으로 보여주는 도면들이다.
도 3는 도 1에 도시된 메모리 블록들 중 어느 하나의 메모리 블록(BLK1)에 대한 회로도를 예시적으로 보여주는 도면이다.
도 4는 본 발명의 실시 예에 따른 비휘발성 메모리 장치(100)의 프로그램 동작을 개념적으로 보여주는 도면이다.
도 5는 본 발명의 실시 예에 따른 멀티-펄스 프로그램을 적용할 때 프로그램 펄스의 레벨을 예시적으로 보여주는 도면이다.
도 6은 본 발명의 실시 예에 따른 비휘발성 메모리 장치(100)의 프로그램 동작을 예시적으로 보여주는 흐름도이다.
도 7a, 도 7b, 및 도 7c는 사전에 결정된 조건들을 예시적으로 보여주는 도면들이다.
도 8은 본 발명의 실시 예에 따른 비휘발성 메모리 장치(100)의 프로그램 동작을 예시적으로 보여주는 흐름도이다.
도 9a는 본 발명의 실시 예에 따른 멀티-펄스 프로그램 동작의 동작 구간을 개략적으로 설명하는 도면이고, 도 9b는 본 발명의 실시 예에 따른 멀티-펄스 프로그램 동작의 타이밍을 예시적으로 보여주는 도면이다.
도 10은 본 발명의 다른 실시 예에 따른 멀티-펄스 프로그램 동작의 동작 구간을 예시적으로 보여주는 도면이다.
도 11a 및 도 11b는 본 발명의 실시 예에 따른 비휘발성 메모리 장치(100)의 프로그램 디스터번스를 줄이는 효과를 예시적으로 설명한 도면들이다.
도 12는 본 발명의 따른 실시 예에 따른 저장 장치(10)를 예시적으로 보여주는 도면이다.
도 13은 본 발명의 실시 예에 따른 저장 장치에서 멀티-펄스 프로그램 동작을 수행하는 과정을 예시적으로 보여주는 래더 다이어그램이다.
도 14는 본 발명의 실시 예에 따른 C2C 구조로 구현된 비휘발성 메모리 장치(1000)를 예시적으로 보여주는 도면이다.
아래에서는 도면들을 이용하여 본 발명의 기술 분야에서 통상의 지식을 가진자가 용이하게 실시 할 수 있을 정도로 본 발명의 내용을 명확하고 상세하게 기재할 것이다.
도 1은 본 발명의 실시 예에 따른 비휘발성 메모리 장치(100)를 예시적으로 보여주는 도면이다. 도 1을 참조하면, 비휘발성 메모리 장치(100)는 메모리 셀 어레이(110), 로우 디코더(120), 페이지 버퍼 회로(130), 입출력 버퍼 회로(140), 제어 로직(150), 전압 발생기(160), 및 셀 카운터(170)를 포함할 수 있다.
메모리 셀 어레이(110)는 워드 라인들(WLs) 혹은 선택 라인들(SSL, GSL)을 통해 로우 디코더(120)에 연결될 수 있다. 메모리 셀 어레이(110)는 비트 라인들(BLs)을 통해서 페이지 버퍼 회로(130)에 연결될 수 있다. 메모리 셀 어레이(110)는 복수의 셀 스트링들을 포함할 수 있다. 셀 스트링들의 각각의 채널은 수직 혹은 수평 방향으로 형성될 수 있다. 셀 스트링들의 각각은 복수의 메모리 셀들을 포함할 수 있다. 여기서, 복수의 메모리 셀들은 비트 라인(BLs)이나, 워드 라인(WLs)으로 제공되는 전압에 의해서 프로그램 되거나, 이레이즈 되거나, 읽혀질 수 있다. 일반적으로, 프로그램 동작은 페이지 단위로 수행되고, 이레이즈 동작은 블록단위로 수행되고 있다.
로우 디코더(120)는 어드레스(ADD)에 응답하여 메모리 셀 어레이(110)의 메모리 블록들(BLK1 ~ BLKz) 중 어느 하나를 선택하도록 구현될 수 있다. 로우 디코더(120)는 어드레스(ADD)에 응답하여 선택된 메모리 블록의 워드 라인들 중 어느 하나를 선택할 수 있다. 로우 디코더(120)는 선택된 메모리 블록의 워드 라인에 동작 모드에 대응하는 워드라인 전압(VWL)을 전달할 수 있다. 프로그램 동작시 로우 디코더(120)는 선택 워드 라인에 프로그램 전압과 검증 전압을 인가하고, 비선택 워드 라인에 패스 전압을 인가할 수 있다. 리드 동작시 로우 디코더(120)는 선택 워드 라인에 리드 전압을 인가하고, 비선택 워드 라인에 리드 패스 전압을 인가할 수 있다.
페이지 버퍼 회로(130)는 쓰기 드라이버로 혹은 감지 증폭기로 동작하도록 구현될 수 있다. 프로그램 동작시, 페이지 버퍼 회로(130)는 메모리 셀 어레이(110)의 비트 라인들로 프로그램 될 데이터에 대응하는 비트 라인 전압을 인가할 수 있다. 리드 동작 혹은 검증 리드 동작시, 페이지 버퍼 회로(130)는 선택된 메모리 셀에 저장된 데이터를 비트 라인(BL)을 통해서 센싱 할 수 있다. 페이지 버퍼 회로(130)에 포함되는 복수의 페이지 버퍼들(PB1 ~ PBn, n은 2 이상의 정수)의 각각은 적어도 하나의 비트 라인에 연결될 수 있다.
복수의 페이지 버퍼들(PB1 ~ PBn)의 각각은, OVS(on-chip valley search) 동작을 수행하기 위한 센싱 및 래치를 수행하도록 구현될 수 있다. 즉, 복수의 페이지 버퍼들(PB1 ~ PBn)의 각각은 제어 로직(150)의 제어에 따라 선택된 메모리 셀들에 저장된 어느 하나의 상태를 식별하기 위해 복수의 센싱 동작을 수행할 수 있다. 또한, 복수의 페이지 버퍼들(PB1 ~ PBn)의 각각은 복수의 센싱 동작을 통해서 센싱 된 데이터를 각각 저장한 후에, 제어 로직(150)의 제어 아래에서 어느 하나의 데이터를 선택할 수 있다. 즉, 복수의 페이지 버퍼들(PB1 ~ PBn) 각각은 어느 하나의 상태를 식별하기 위하여 복수의 센싱 동작들을 수행할 수 있다. 또한, 복수의 페이지 버퍼들(PB1 ~ PBn)의 각각은 제어 로직(150)의 제어에 따라 센싱 된 복수의 데이터 중에서 최적의 데이터를 선택 혹은 출력할 수 있다.
입출력 버퍼 회로(140)는 외부에서 제공되는 데이터를 페이지 버퍼 회로(130)로 제공한다. 입출력 버퍼 회로(140)는 외부에서 제공되는 커맨드(CMD)는 제어 로직(150)에 제공할 수 있다. 입출력 버퍼 회로(140)는 외부에서 제공된 어드레스(ADD)를 제어 로직(150)이나 로우 디코더(120)에 제공할 수 있다. 더불어, 입출력 버퍼 회로(140)는 페이지 버퍼 회로(130)에 의해서 센싱 및 래치된 데이터를 외부로 출력할 수 있다.
제어 로직(150)은 외부로부터 전달되는 커맨드(CMD)에 응답하여 로우 디코더(120) 및 페이지 버퍼 회로(130)를 제어하도록 구현될 수 있다.
또한, 제어 로직(150)은 판별 회로(155)를 포함할 수 있다. 판별 회로(155)는 프로그램 동작에서 프로그램 디스터번스(program disturbance)를 줄이기 위하여 멀티-펄스의 인가 여부를 결정할 수 있다. 판별 회로(155)는 프로그램 동작에서 싱글 펄스(single pulse)를 인가하다가 사전에 결정된 조건을 만족하는 지를 판별할 수 있다.
실시 예에 있어서, 사전에 결정된 조건은 프로그램 루프(program loop)의 개수일 수 있다. 실시 예에 있어서, 사전에 결정된 조건은, 특정 프로그램 상태의 프로그램 패스 여부일 수 있다. 실시 예에 있어서, 사전에 결정된 조건은, 프로그램 전압의 레벨일 수 있다. 실시 예에 있어서, 사전에 결정된 조건은, 사전에 결정된 레지스터에 저장된 데이터의 값일 수 있다. 한편, 본 발명의 사전에 결정된 조건이 여기에 제한되지 않는다고 이해되어야 할 것이다.
한편, 제어 로직(150)은 복수 센싱 된 데이터들 중에서 최적의 데이터를 선택하기 위한 처리를 수행하도록 구현될 수 있다. 최적 데이터의 선택을 위해서 제어 로직(150)는 셀 카운터(170)로부터 제공되는 카운트 결과(nC)를 참조할 수 있다.
전압 발생기(160)는 제어 로직(150)의 제어에 따라 각각의 워드 라인들로 인가될 다양한 종류의 워드 라인 전압들, 메모리 셀들이 형성된 벌크(예를 들어, 웰 영역)로 공급될 웰 전압을 생성하도록 구현될 수 있다. 각각의 워드 라인들로 인가되는 워드 라인 전압들(VWL)은, 프로그램 전압, 패스 전압, 리드 전압, 리드 패스 전압들 등을 포함할 수 있다.
셀 카운터(170)는 페이지 버퍼 회로(130)에 센싱된 데이터로부터 특정 문턱전압 범위에 해당하는 메모리 셀들을 카운트하도록 구현될 수 있다. 예를 들어, 셀 카운터(170)는 복수의 페이지 버퍼들(PB1 ~ PBn) 각각에 센싱된 데이터를 처리함으로써, 특정 문턱전압 범위의 문턱전압을 갖는 메모리 셀들의 수를 카운트할 수 있다.
일반적으로 비휘발성 메모리 장치는 메모리 셀의 프로그램 디스터번스 및 트랜지스터 소자의 신뢰성을 개선하기 위하여 프로그램 동작에서 워드라인에 인가되는 전압을 낮출 필요성을 갖는다. 이를 위하여, 일반적인 비휘발성 메모리 장치는 낮은 전압에서 프로그램 펄스를 길게 인가하거나, 낮은 전압의 프로그램 펄스를 여러 번 인가한다. 그런데 프로그램 펄스를 길게 할 경우, 채널의 부스팅(boosting) 리키지 때문에 디스터번스의 개선에 한계가 있다. 또한, 프로그램 펄스의 인가 회수는 많게 할 경우, 펄스 인가를 위한 워드라인 셋업/리커버리 시간에 대한 타임 오버헤드가 야기되고 있다.
본 발명의 실시 예에 따른 비휘발성 메모리 장치(100)는, 사전에 결정된 조건을 만족할 때 멀티-펄스를 인가함으로써, 프로그램 동작에서 프로그램 디스터번스를 줄일 수 있다. 또한, 본 발명의 실시 예에 따른 비휘발성 메모리 장치(100)는 사전에 결정된 조건을 만족할 때 멀티-펄스 인가하는 프로그램 동작으로 변환됨에 따라, 타임 오버헤드를 최소화할 수 있다.
도 2a은 본 발명의 실시 예에 따른 메모리 블록을 예시적으로 보여주는 도면이다. 도 2a을 참조하면, 메모리 블록(BLK1)은 기판(SUB)과 수직 방향으로 형성된다. 기판(SUB)에는 n+ 도핑 영역이 형성될 수 있다.
기판(SUB) 위에는 게이트 전극막(gate electrode layer)과 절연막(insulation layer)이 교대로 증착 될 수 있다. 게이트 전극막(gate electrode layer)과 절연막(insulation layer) 사이에는 정보 저장막(information storage layer)이 형성될 수 있다. 게이트 전극막과 절연막을 수직 방향으로 패터닝(vertical patterning)하면, V자 모양의 필라(pillar)가 형성될 수 있다. 필라는 게이트 전극막과 절연막을 관통하여 기판(SUB)과 연결될 수 있다. 필라의 내부는 충전 유전 패턴(filing dielectric pattern)으로 실리콘 산화물(Silicon Oxide)과 같은 절연 물질로 구성될 수 있다. 필라의 외부는 수직 활성 패턴(vertical active pattern)으로 채널 반도체로 구성될 수 있다.
메모리 블록(BLK1)의 게이트 전극막(gate electrode layer)은 접지 선택 라인(GSL), 복수의 워드 라인들(WL1 ~ WL8), 그리고 스트링 선택 라인(SSL)에 연결될 수 있다. 그리고 메모리 블록(BLK1)의 필라는 복수의 비트 라인들(BL1 ~ BL3)과 연결될 수 있다. 도 2a에서는, 하나의 메모리 블록(BLK1)이 2개의 선택 라인(GSL, SSL), 8개의 워드 라인(WL1 ~ WL8), 그리고 3개의 비트 라인(BL1 ~ BL3)을 갖는 것으로 도시되지만, 본 발명이 여기에 제한되지 않을 것이다.
도 2b는 본 발명의 다른 실시 예에 따른 메모리 블록을 예시적으로 보여주는 도면이다. 도 2b를 참조하면, 메모리 블록(BLKb)은 설명의 편의를 위하여 워드라인의 층수가 4라고 하였다.
각 스트링(NS)은 직렬 연결된 메모리 셀들(MC1 ~ MC8)를 포함할 수 있다. 여기서 메모리 셀들(MC1 ~ MC8)의 제 1 상단은 스트링 선택 트랜지스터(SST)에 연결되고, 메모리 셀들(MC1 ~ MC8)의 제 2 상단은 접지 선택 트랜지스터(GST)에 연결되고, 메모리 셀들(MC1 ~ MC8)의 하단은 파이프 연결될 수 있다. 스트링(NS)을 구성하는 메모리 셀들은 복수의 반도체 층에 적층 됨으로써 형성될 수 있다. 각 스트링(NS)은 제 1 필라(PL11), 제 2 필라(PL12), 제 1 필라(PL11) 및 제 2 필라(PL12)를 연결하는 필라 연결부(PL13)를 포함할 수 있다. 제 1 필라(PL11)는 비트라인(예를 들어, BL1)과 필라 연결부(PL13)에 연결되고, 스트링 선택 라인(SSL), 워드라인들(WL5 ~ WL8) 사이를 관통함으로써 형성될 수 있다. 제 2 필라(PL12)는 공통소스라인(CSL)과 필라 연결부(PL13)에 연결되고, 접지 선택 라인(GSL), 워드라인들(WL1 ~ WL4) 사이를 관통함으로써 형성될 수 있다. 도 2b에 도시된 바와 같이, 스트링(NS)은 U 자형 필라 형태로 구현될 수 있다.
실시 예에 있어서, 백-게이트(BG)는 기판 위에 형성되고, 백-게이트(BC) 내부에 필라 연결부(PL13)가 구현될 수 있다. 실시 예에 있어서, 백-게이트(BG)는 블록(BLKb)에 공통적으로 존재할 수 있다. 백-게이트(BG)는 다른 블록의 백-게이트와 서로 분리된 구조일 수 있다.
도 3는 도 1에 도시된 메모리 블록들 중 어느 하나의 메모리 블록(BLK1)에 대한 회로도를 예시적으로 보여주는 도면이다. 도 3를 참조하면, 3차원 구조의 메모리 블록(BLK1)이 도시된다. 메모리 블록(BLK1)은 복수의 셀 스트링들(CS11, CS12, CS21, CS22)을 포함할 수 있다. 복수의 셀 스트링들(CS11, CS12, CS21, CS22)은 로우 방향(row direction) 및 컬럼 방향(column direction)을 따라 배치되어 로우들 및 컬럼들을 형성할 수 있다.
실시 예에 있어서, 셀 스트링들(CS11, CS12)은 스트링 선택 라인들(SSL1a, SSL1b)와 연결되어, 제 1 로우를 형성할 수 있다. 셀 스트링들(CS21, CS22)은 스트링 선택 라인들(SSL2a, SSL2b)와 연결되어 제 2 행을 형성할 수 있다. 예를 들어, 셀 스트링들(CS11, CS21)은 제 1 비트라인(BL1)과 연결되어 제 1 컬럼을 형성할 수 있다. 셀 스트링들(CS12, CS22)은 제 2 비트라인(BL2)과 연결되어 제 2 컬럼을 형성할 수 있다.
복수의 셀 스트링들(CS11, CS12, CS21, CS22)의 각각은 복수의 셀 트랜지스터들을 포함할 수 있다. 예를 들어, 복수의 셀 스트링들(CS11, CS12, CS21, CS22) 각각은 스트링 선택 트랜지스터들(SSTa, SSTb), 복수의 메모리 셀들(MC1 ~ MC8), 접지 선택 트랜지스터들(GSTa, GSTb), 및 더미 메모리 셀들(DMC1, DMC2)을 포함할 수 있다. 예를 들어, 복수의 셀 스트링들(CS11, CS12, CS21, CS22)에 포함된 복수의 셀 트랜지스터들 각각은 전하 트랩형 플래시(CTF; charge trap flash) 메모리 셀일 수 있다.
복수의 메모리 셀들(MC1 ~ MC8)은 직렬 연결되며, 로우 방향 및 컬럼 방향에 의해 형성된 평명에 수직 방향인 높이 방향(height direction)으로 적층 될 수 있다. 스트링 선택 트랜지스터들(SSTa, SSTb)은 직렬 연결되고, 직렬 연결된 스트링 선택 트랜지스터들(SSTa, SSTb)은 복수의 메모리 셀들(MC1 ~ MC8) 및 비트라인(BL) 사이에 제공될 수 있다. 접지 선택 트랜지스터들(GSTa, GSTb)은 직렬 연결되고, 직렬 연결된 접지 선택 트랜지스터들(GSTa, GSTb)은 복수의 메모리 셀들(MC1 ~ MC8) 및 공통 소스 라인(CSL) 사이에 제공될 수 있다.
실시 예에 있어서, 복수의 메모리 셀들(MC1 ~ MC8) 및 접지 선택 트랜지스터들(GSTa, GSTb) 사이에 제 1 더미 메모리 셀(DMC1)이 제공될 수 있다. 예를 들어, 복수의 메모리 셀들(MC1 ~ MC8) 및 스트링 선택 트랜지스터들(SSTa, SSTb) 사이에 제 2 더미 메모리 셀(DMC2)이 제공될 수 있다.
셀 스트링들(CS11, CS12, CS21, CS22)의 접지 선택 트랜지스터들(GSTa, GSTb)은 접지 선택 라인(GSL)에 공통으로 연결될 수 있다. 예를 들어, 동일한 로우의 접지 선택 트랜지스터들은 동일한 접지 선택 라인에 연결될 수 있고, 다른 로우의 접지 선택 트랜지스터들은 다른 접지 선택 라인에 연결될 수 있다. 예를 들어, 제 1 로우의 셀 스트링들(CS11, CS12)의 제 1 접지 선택 트랜지스터들(GSTa)은 제 1 접지 선택 라인에 연결될 수 있고, 마찬가지로, 동일한 높이의 제 2 스트링 선택 트랜지스터들(SSTb) 중 동일한 로우의 스트링 선택 트랜지스터들은 동일한 스트링 선택 라인과 연결되고, 다른 로우의 스트링 선택 트랜지스터들은 다른 스트링 선택 라인과 연결될 수 있다. 예를 들어, 제 1 로우의 셀 스트링들(CS11, CS12)의 제 2 스트링 선택 트랜지스터들(SSTb)은 스트링 선택 라인(SSL1b)과 공통으로 연결되고, 제 2 로우의 셀 스트링들(CS21, CS22)의 제 2 스트링 선택 트랜지스터들(SSTb)은 스트링 선택 라인(SSL2b)과 공통으로 연결될 수 있다.
도시되지 않았지만, 동일한 로우의 셀 스트링들의 스트링 선택 트랜지스터들은 동일한 스트링 선택 라인에 공통으로 연결될 수 있다. 예를 들어, 제 1 로우의 셀 스트링들(CS11, CS12)의 제 1 및 제 2 스트링 선택 트랜지스터들(SSTa, SSTb)은 동일한 스트링 선택 라인에 공통으로 연결될 수 있다. 제 2 로우의 셀 스트링들(CS21, CS22)의 제 1 및 제 2 스트링 선택 트랜지스터들(SSTa, SSTb)은 동일한 스트링 선택 라인에 공통으로 연결될 수 있다.
실시 예에 있어서, 동일한 높이의 더미 메모리 셀들은 동일한 더미 워드라인과 연결되고, 다른 높이의 더미 메모리 셀들은 다른 더미 워드라인과 연결될 수 있다. 예를 들어, 제 1 더미 메모리 셀들(DMC1)은 제 1 더미 워드라인(DWL1)과 연결되고, 제 2 더미 메모리 셀들(DMC2)은 제 2 더미 워드라인(DWL2)과 연결될 수 있다.
제 1 메모리 블록(BLK1)에서, 이레이즈는 메모리 블록 단위 혹은 서브 블록의 단위로 수행될 수 있다. 메모리 블록 단위로 이레이즈가 수행될 때, 제 1 메모리 블록(BLK1)의 모든 메모리 셀들(MC)이 하나의 이레이즈 요청에 따라 동시에 이레이즈 될 수 있다. 서브 블록의 단위로 수행될 때, 제 1 메모리 블록(BLK1)의 메모리 셀들(MC) 중 일부는 하나의 이레이즈 요청에 따라 동시에 이레이즈 되고, 나머지 일부는 이레이즈 금지될 수 있다. 이레이즈 되는 메모리 셀들에 연결된 워드 라인에 저전압(예를 들어, 접지 전압)이 공급되고, 이레이즈 금지된 메모리 셀들에 연결된 워드 라인은 플로팅 될 수 있다.
한편, 도 3에 도시된 제 1 메모리 블록(BLK1)은 예시적인 것이다. 본 발명의 셀 스트링들의 개수, 로우의 개수, 컬럼의 개수, 셀 트랜지스터들(GST, MC, DMC, SST 등)의 개수, 셀 트랜지스터들의 개수들에 따라 셀 트랜지스터들과 연결된 라인들(GSL, WL, DWL, SSL 등)의 개수들은 제한되지 않는다고 이해되어야 할 것이다.
도 4는 본 발명의 실시 예에 따른 비휘발성 메모리 장치(100)의 프로그램 동작을 개념적으로 보여주는 도면이다. 도 4를 참조하면, 제 K (K는 2 이상의 정수)번째 프로그램 루프까지 싱글-펄스 프로그램 동작이 수행되고, 제 K+1 번째 프로그램 루프부터는 멀티펄스 프로그램 동작이 수행될 수 있다.
싱글-펄스 프로그램 동작은, 일반적으로 증가형 스텝 펄스 프로그래밍(Incremental Step Pulse Programming; ISPP)을 포함할 수 있다. 제 1 프로그램 루프에서 제 K 프로그램 루프까지는 프로그램 루프가 증가함에 따라, 프로그램 전압은 제 1 옵셋(ISPP) 만큼 증가하는 프로그램 펄스(VPGM)와 검증을 위한 복수의 검증 펄스들(VVFY)을 포함할 수 있다. 도 4에서는 설명의 편의를 위하여 3개의 검증 펄스들이 도시되고 있다. 한편, 본 발명의 검증 펄스의 개수가 여기에 제한되지 않을 것이다.
싱글-펄스 프로그램 동작 중에서 제 K 번째 프로그램 루프에서 사전에 결정된 조건을 만족할 때, 다음 프로그램 루프부터는 멀티-펄스 프로그램 동작이 진행될 수 있다.
멀티-펄스 프로그램 동작은, 복수의 프로그램 펄스들과 복수의 검증 펄스들을 포함할 수 있다. 실시 예에 있어서, 복수의 프로그램 펄스들의 각각은 동일 전압 레벨을 가질 수 있다. 다른 실시 예에 있어서, 복수의 프로그램 펄스들의 각각은 서로 다른 전압 레벨을 가질 수도 있다. 실시 예에 있어서, 복수의 프로그램 펄스들의 개수는 도 3에 도시된 바와 같이 2개일 수 있다. 한편, 본 발명의 멀티-펄스 프로그램 동작의 프로그램 펄스의 개수가 여기에 제한되지 않을 것이다.
제 K+1 번째 프로그램 루프에서, 프로그램 전압은 제 K 번째 프로그램 루프의 프로그램 전압에서 제 2 옵셋(MPOST) 만큼 낮아진 복수의 프로그램 펄스들과 검증을 위한 복수의 검증 펄스들을 포함할 수 있다. 실시 예에 있어서, 복수의 프로그램 펄스들의 각각의 폭(시간)은, 제 K 번째 프로그램 루프의 프로그램 펄스의 폭과 동일할 수 있다. 한편, 본 발명의 프로그램 펄스의 폭이 여기에 제한되지 않는다고 이해되어야 할 것이다. 제 K+1 번째 프로그램 루프의 복수의 프로그램 펄스들의 각각의 폭은 제 K 번째 프로그램 루프의 프로그램 펄스의 폭보다 좁을 수도 있다.
실시 예에 있어서, 제 2 옵셋(MPOST)은 워드라인의 위치에 따라 달라질 수 있다. 다른 실시 예에 있어서, 제 2 옵셋(MPOST)은 워드라인의 위치에 상관없이 동일할 수 있다.
제 K+2 번째 프로그램 루프부터는 이전 프로그램 루프의 프로그램 펄스보다 제 1 옵셋(ISPP) 만큼 증가하는 복수의 프로그램 펄스들과 검증 펄스들을 포함할 수 있다.
한편, 도 4에서 제 K+2 번째 프로그램 루프부터는 제 1 옵셋(ISPP) 만큼 증가하는 복수의 프로그램 펄스들이 도시되고 있다. 하지만, 본 발명이 여기에 제한될 필요는 없다. 멀티-펄스 프로그램 동작의 증가분은 제 1 옵셋(ISPP)과 다른 값일 수도 있다.
실시 예에 있어서, 사전에 결정된 조건을 만족할 때, 멀티-펄스 플래그의 데이터가 가변 될 수 있다. 예를 들어, 사전에 결정된 조건이 만족할 때, 멀티-펄스 플래그는 데이터 '1'를 지시할 수 있다. 반면에, 사전에 결정된 조건이 만족하지 않을 때, 멀티-펄스 플래그는 데이터 0'을 지시할 수 있다. 한편, 멀티-펄스 플래그의 데이터와 사전에 결정된 조건의 대응 관계가 여기에 제한되지 않는다고 이해되어야 할 것이다.
도 5는 본 발명의 실시 예에 따른 멀티-펄스 프로그램을 적용할 때 프로그램 펄스의 레벨을 예시적으로 보여주는 도면이다.
설명의 편의를 위하여, 제 1 프로그램 루프에서 제 12 프로그램 루프까지는 싱글-펄스 프로그램 동작에 대응하여 멀티-펄스 플래그가 데이터 '0'이고, 제 13 프로그램 루프에서부터는 멀티-펄스 프로그램 동작에 대응하여 멀티-펄스 플래그가 데이터 '1'을 지시한다고 가정하겠다. 도 5를 참조하면, 제 1 프로그램 루프에서 제 12 프로그램 루프까지는 일정한 간격(ISPP) 만큼 프로그램 펄스(VPGM)가 증가되고, 제 13 프로그램 루프 사이에 일정한 간격(MPOST) 만큼 프로그램 펄스(VPGM)가 낮아진 후, 제 14 프로그램 루프부터는 다시 일정한 간격(ISPP) 만큼 프로그램 펄스(VPGM)가 증가되고 있다.
도 6은 본 발명의 실시 예에 따른 비휘발성 메모리 장치(100)의 프로그램 동작을 예시적으로 보여주는 흐름도이다. 도 6을 참조하면, 비휘발성 메모리 장치(100)의 프로그램 동작은, 디폴트적으로 노멀 ISPP 동작(싱글-펄스 프로그램 동작)이 수행될 수 있다(S110). 이후, 사전에 결정된 조건을 만족하는 지, 즉, 멀티-펄스를 인가할 필요가 있는 지가 판별될 수 있다(S120). 만일, 멀티-펄스를 인가할 필요가 있다면, 멀티-펄스 프로그램 동작이 수행될 수 있다(S130). 반면에, 멀티-펄스를 인가할 필요가 없다면, 노멀 ISPP 동작이 수행될 수 있다(S135).
실시 예에 있어서, 싱글-펄스 프로그램 동작은 제 1 프로그램 펄스를 인가하는 것과 복수의 검증 펄스들(VVFY)을 인가하는 것을 포함하고, 멀티-펄스 프로그램 동작은 제 2 프로그램 펄스를 인가하는 것, 제 3 프로그램 펄스를 인가하는 것과, 복수의 검증 펄스들(VVFY)을 인가하는 것을 포함할 수 있다. 실시 예에 있어서, 제 2 및 제 3 프로그램 펄스들의 레벨들의 각각은, 제 1 프로그램 펄스의 레벨보다 낮을 수 있다.
실시 예에 있어서, 사전에 결정된 조건이 만족하지 않을 때, 제 1 프로그램 펄스의 레벨이 제 1 옵셋(ISPP) 만큼 증가되고, 다음 프로그램 루프에서 증가된 제 1 프로그램 펄스를 이용하여 싱글-펄스 프로그램 동작이 수행될 수 있다.
실시 예에 있어서, 사전에 결정된 조건이 만족할 때, 제 2 및 제 3 프로그램 펄스들의 각각은 제 1 프로그램 펄스의 레벨에서 제 2 옵셋(MPOST) 만큼 감소된 레벨을 가질 수 있다.
실시 예에 있어서, 사전에 결정된 조건은 프로그램 루프의 회수이고, 프로그램 루프의 회수가 기준값보다 클 때, 멀티-펄스 프로그램 동작이 수행될 수 있다.
실시 예에 있어서, 사전에 결정된 조건은 특정 프로그램 상태의 패스 여부이고, 어느 하나의 프로그램 루프에서 특정 프로그램 상태가 패스 될 때, 멀티-펄스 프로그램 동작이 수행될 수 있다.
실시 예에 있어서, 사전에 결정된 조건은 프로그램 펄스의 레벨이고, 프로그램 펄스의 레벨이 멀티-펄스 프로그램 펄스 검출 레벨 이상일 때, 멀티-펄스 프로그램 동작이 수행될 수 있다.
실시 예에 있어서, 멀티-펄스 프로그램 동작에서 상기 제 3 프로그램 펄스를 인가할 때, 프로그램 디스터번스를 극대화시키기 위하여 비선택 스트링에 이니셜 프리차지 동작이 수행될 수 잇다.
실시 예에 있어서, 멀티-펄스 프로그램 동작에서 제 2 프로그램 펄스를 인가한 후에 비트라인 리커버리 동작이 수행되지 않고, 제 3 프로그램 펄스를 인가한 후에 비트라인 리커버리 동작이 수행될 수 있다.
실시 예에 있어서, 멀티-펄스 프로그램 동작에서 제 2 프로그램 펄스를 인가할 때 공통 소스 라인에 인가된 전압이 제 3 프로그램 펄스를 인가할 때까지 유지될 수 있다.
실시 예에 있어서, 멀티-펄스 프로그램 동작에서 제 2 프로그램 펄스에 대응하는 제 1 비트라인 셋업 시간은 제 3 프로그램 펄스에 대응하는 제 2 비트라인 셋업 시간보다 길 수 있다.
도 7a, 도 7b, 및 도 7c는 사전에 결정된 조건들을 예시적으로 보여주는 도면들이다.
도 7a를 참조하면, 사전에 결정된 조건은 프로그램 루프의 회수가 될 수 있다. 예를 들어, 프로그램 루프가 사전에 결정된 값(M, M는 2 이상의 정수)보다 클 때, 멀티-펄스 프로그램 동작이 수행될 수 있다.
도 7b를 참조하면, 사전에 결정된 조건은 특정 프로그램 상태(예를 들어, P12)의 패스 여부일 수 있다. 예를 들어, 제 12 프로그램 상태(P12)가 패스될 때, 멀티-펄스 프로그램 동작이 수행될 수 있다. 한편, 도 7b에서는 특정 프로그램 상태가 제 12 프로그램 상태(P12)이지만, 본 발명의 특정 프로그램 상태가 여기에 제한되지 않는다고 이해되어야 할 것이다.
또한, 특정 프로그램 상태의 패스 여부로 판별할 때, 동작하는 플레인(혹은 매트)들 중에서 어느 하나라도 패스될 때, 멀티-펄스 프로그램 동작이 수행될 수 있다.
도 7c를 참조하면, 사전에 결정된 조건은 사전에 결정된 멀티-펄스 프로그램 펄스의 검출 레벨일 수 있다. 예를 들어, 프로그램 펄스(VPGM)가 사전에 결정된 멀티-펄스 프로그램 펄스(MP_PGM_Detect_Level) 보다 클 때, 멀티-펄스 프로그램 동작이 수행될 수 있다.
한편, 본 발명의 실시 예에 따른 비휘발성 메모리 장치(100)는 사전에 결정된 조건을 만족하는 지를 지시하는 멀티-펄스 플래그를 이용하여 프로그램 동작을 수행할 수 있다.
도 8은 본 발명의 실시 예에 따른 비휘발성 메모리 장치(100)의 프로그램 동작을 예시적으로 보여주는 흐름도이다. 도 1 내지 도 8를 참조하면, 비휘발성 메모리 장치(100)의 프로그램 동작은 다음과 같이 진행될 수 있다. 아래에서는 멀티-펄스 프로그램 동작에서 2개의 프로그램 펄스들이 연속적으로 인가된다고 가정 하겠다.
외부 장치로부터 프로그램 커맨드와 데이터를 수신하고, 프로그램 동작을 수행하기 위한 프로그램 셋업 동작이 진행될 수 있다. 프로그램 셋업 동작은 선택/비선택 스트링들에 대한 이니셜 프리차지 동작을 포함할 수 있다. 이때 프로그램 루프의 회수는 1로 설정될 수 있다(S210). 멀티-펄스 플래그가 데이터 '1'인지 판별될 수 있다(S211). 만일, 멀티-펄스 플래그가 데이터 '1'를 지시하지 않으면, 제 1 프로그램 펄스(1st VPGM)가 인가될 수 있다(S212). 반면에, 멀티-펄스 플래그가 데이터 '1'를 지시하면, 제 2 프로그램 펄스(2nd VPGM)가 인가되고(S213), 이후에 제 3 프로그램 펄스(3rd VPGM)가 인가될 수 있다(S214). 실시 예에 있어서, 제 2 프로그램 펄스(2nd VPGM) 및 제 3 프로그램 펄스(3rd VPGM)은 동일한 펄스일 수 있다.
S212 단계 및 S214 단계가 진행 된 후, 프로그램 검증을 위한 검증 동작이 수행될 수 있다(S215). 여기서 검증 동작은 싱글 레벨 펄스 혹은 멀티 레벨 펄스를 이용할 수 있다. 이 후에, 프로그램 동작(PGM)이 패스되었는 지가 판별될 수 있다(S216). 만일, 프로그램 동작이 패스되면, 프로그램 동작은 완료될 수 있다. 반면에, 프로그램 동작이 패스되지 않았다면, 프로그램 루프의 개수가 최대값(Max) 이상인 지가 판별될 수 있다(S217). 만일, 프로그램 루프의 개수가 최대값(Max) 이상일 때, 프로그램 동작은 페일(failure)로 처리될 수 있다.
반면에, 프로그램 루프의 개수가 최대값(Max) 이상이 아니라면, 멀티-펄스 플래그가 데이터 '0'인지가 판별될 수 있다(S218). 만일, 멀티-펄스 플래그가 데이터 '0'이 아니라면, 프로그램 펄스는 제 1 옵셋(ISPP)만큼 증가될 수 있다(S219).
반면에, 멀티-펄스 플래그가 데이터 '0'이라면, 멀티-펄스가 인가할 필요가 있는지가 판별될 수 있다(S220). 만일, 멀티-펄스를 인가할 필요가 없다면, S219 단계가 진입될 수 있다. 반면에, 멀티-펄스를 인가할 필요가 있다면, 즉, 사전에 결정된 조건을 만족한다면, 프로그램 펄스(VPGM)는 제 2 옵셋(MPOST)만큼 낮아지고, 멀티-펄스 플래그는 데이터 '1'로 설정될 수 있다(S221).
S219 단계 이후에, 프로그램 루프의 개수는 1만큼 증가되고(S222), S211 단계로 진입될 수 있다.
도 9a는 본 발명의 실시 예에 따른 멀티-펄스 프로그램 동작의 동작 구간을 개략적으로 설명하는 도면이다. 도 9a를 참조하면, 멀티-펄스 프로그램 동작은, 제 1 비트라인 셋업 구간(1st BL Setup), 제 1 프로그램 실행 구간(1st PGM EXE), 제 2 비트라인 셋업 구간(2nd BL Setup), 제 2 프로그램 실행 구간(2nd PGM EXE), 비트라인 리커버리 구간(BL RCV), CSL(Common Source Line) 리커버리 구간(CSL RCV), 검증 구간(VRF), 검증 펄스 리커버리 구간(VRF RCV)를 포함할 수 있다.
실시 예에 있어서, 전력 소비를 최소화 하기 위하여 마지막 펄스(예를 들어, 3rd PGM))가 아닌 펄스(예를 들어, 2nd PGM)인가 후에, 비트라인 리커버리 동작이 수행되지 않을 수 있다.
도 9b는 본 발명의 실시 예에 따른 멀티-펄스 프로그램 동작의 타이밍을 예시적으로 보여주는 도면이다. 도 9b를 참조하면, 제 1 및 제 2 비트라인 셋업 구간들(1st BL Setup, 2nd BL Setup)에서 페이지 버퍼에 연결된 비트라인에 대응하는 데이터를 전송하기 위한 전압(BLSHF)이 인가되고, 제 1 및 제 2 프로그램 실행 구간들(1st PGM EXE, 2nd PGM EXE)에 BL Forcing을 위한 전압이 인가되고, 사전에 결정된 CSL 전압이 인가될 수 있다. 비트라인 리커버리 구간(BL RCV) 이후에, CSL이 접지 전압으로 리커버리 될 수 있다. 이후에, 검증 동작이 수행될 수 있다.
한편, 도 9a에서 제 1 비트라인 셋업 구간(1st BL Setup) 및 제 2 비트라인 셋업 구간(2nd BL Setup)은 서로 동일한 시간 동안 진행될 수 있다. 하지만, 본 발명이 여기에 제한될 필요는 없다.
도 10은 본 발명의 다른 실시 예에 따른 멀티-펄스 프로그램 동작의 동작 구간을 예시적으로 보여주는 도면이다. 도 10을 참조하면, 제 2 비트라인 셋업 구간(2nd BL Setup)의 시간(T_BLSTP2)은 제 1 비트라인 셋업 구간(1st BL Setup)의 시간(T_BLSTP2)보다 짧을 수 있다.
도 11a 및 도 11b는 본 발명의 실시 예에 따른 비휘발성 메모리 장치(100)의 프로그램 디스터번스를 줄이는 효과를 예시적으로 설명한 도면들이다. 설명의 편의를 위하여 도 11a 도시된 워드라인들 중에서 가운데 워드라인에 연결된 메모리 셀에 프로그램 동작이 수행되고, 하부 워드라인에 연결된 메모리 셀은 프로그램 동작이 완료되고, 하부 워드라인에 연결된 메모리 셀은 프로그램 동작이 수행되지 않는다고 가정하겠다.
일반적으로 프로그램 동작시 선택된 워드라인에 프로그램 펄스(VPGM)가 증가된다. 증가된 프로그램 펄스(VPGM)에 의해 채널 부스팅에 리키지가 야기되고, 이에 따라 비선택 워드라인에 연결된 메모리 셀(프로그램 된 셀, 프로그램 되지 않은 셀) 의 데이터가 파괴될 수 있다. 이를 위하여, 비휘발성 메모리 장치(100)는 사전에 결정된 조건을 만족할 때, 프로그램 펄스(VPGM)을 제 2 옵셋(MPOST) 만큼 낮춘 멀티-펄스를 선택된 워드라인에 인가할 수 있다. 선택된 워드라인에 연결된 메모리 셀에 프로그램 동작을 수행하면서, 제 2 옵셋(MPOST)낮춘 프로그램 펄스에 의해 비선택 워드라인에 연결된 메모리 셀의 리키지는 최소화 시킬 수 있다.
실시 예에 있어서, 멀티-펄스 프로그램 동작에서 프로그램 디스터번스 개선을 극대화 시키기 위하여 제 1 프로그램 펄스가 아닌 프로그램 펄스를 인가할 때, USIP(Unselected String Initial Precharge) 동작이 수행될 수 있다. 다른 실시 예에 있어서, 멀티-펄스 프로그램 동작에서 제 1 프로그램 펄스가 아닌 프로그램 펄스를 인가할 때, 성능 향상을 위하여 USIP 동작은 수행되지 않을 수도 있다.
한편, 본 발명의 실시 예에 따른 비휘발성 메모리 장치에 대한 신뢰성 개선을 위한 인공 지능을 위한 별도의 프로세서에서 진행될 수 있다.
도 12는 본 발명의 따른 실시 예에 따른 저장 장치(10)를 예시적으로 보여주는 도면이다. 도 12를 참조하면, 저장 장치(10)는 적어도 하나의 비휘발성 메모리 장치(100) 및 그것을 제어하는 제어기(200)를 포함할 수 있다.
적어도 하나의 메모리 장치(100)는 도 1 내지 도 11에서 설명된 바와 같이 프로그램 디스터번스를 줄이면서 성능 개선 가능한 멀티-펄스 프로그램 동작을 수행하도록 구현될 수 있다.
제어기(CNTL; 200)는 제어 신호들(CLE, ALE, CE(s), WE, RE, 등)을 전송하는 복수의 제어 핀들을 통하여 적어도 하나의 비휘발성 메모리 장치(100)에 연결될 수 있다. 또한, 제어 신호들(CLE, ALE, CE(s), WE, RE)을 이용하여 비휘발성 메모리 장치(100)를 제어하도록 구현될 수 있다. 예를 들어, 비휘발성 메모리 장치(100)는 CLE(command latch enable) 신호 및 ALE(address latch enable) 신호에 따라 WE(write enable) 신호의 엣지에서 커맨드 혹은 어드레스를 래치 함으로써, 프로그램 동작/리드 동작/소거 동작을 수행할 수 있다.
제어기(200)는 저장 장치(10)의 전반적인 동작을 제어하도록 구현될 수 있다. 제어기(200)는 캐시/버퍼 관리, 펌웨어 관리, 가비지 컬렉션 관리, 웨어 레벨링 관리, 데이터 중복 제거 관리, 리드 리프레쉬/리클레임 관리, 배드 블록 관리, 멀티-스트림 관리, 호스트 데이터와 비휘발성 메모리의 맵핑 관리, QoS(quality of service) 관리, 시스템 리소스 할당 관리, 비휘발성 메모리 큐(queue) 관리, 리드 전압 레벨 관리, 소거/프로그램 관리, 핫/콜드 데이터 관리, 전력 손실 보호 관리, 동적 열관리, 초기화 관리, RAID(redundant array of inexpensive disk) 관리 등과 같은 다양한 관리 동작들을 수행할 수 있다.
또한, 제어기(200)는 인공 지능 프로세서(212) 및 에러 정정 회로(230)를 포함할 수 있다. 인공 지능 프로세서(212)는 인공 지능을 이용하여 비휘발성 메모리 장치(100)의 신뢰성 개선을 관리 할 수 있다.
ECC 회로(230)는 프로그램 동작시 에러 정정 코드(error correction code)를 생성하고, 리드 동작시 에러 정정 코드를 이용하여 데이터의 복구하도록 구현될 수 있다. 즉, ECC 회로(230)는 비휘발성 메모리 장치(100)로부터 수신된 데이터의 페일 비트(fail bit) 혹은 에러 비트(error bit)를 정정하기 위한 에러 정정 코드(error correction code; ECC)를 생성할 수 있다. ECC 회로(230)는 비휘발성 메모리 장치(100)로 제공되는 데이터의 에러 정정 인코딩을 수행함으로써, 패리티(parity) 비트가 부가된 데이터를 형성할 수 있다. 패리티 비트는 비휘발성 메모리 장치(100)에 저장될 수 있다. 또한, ECC 회로(230)는 비휘발성 메모리 장치(100)로부터 출력된 데이터에 대하여 에러 정정 디코딩을 수행할 수 있다. ECC 회로(230)는 패리티를 사용하여 에러를 정정할 수 있다. ECC 회로(230)는 LDPC(low density parity check) code, BCH code, turbo code, 리드-솔로몬 코드(Reed-Solomon code), convolution code, RSC(recursive systematic code), TCM(trellis-coded modulation), BCM(block coded modulation) 등의 코디드 모듈레이션(coded modulation)을 사용하여 에러를 정정할 수 있다.
도 13은 본 발명의 실시 예에 따른 저장 장치에서 멀티-펄스 프로그램 동작을 수행하는 과정을 예시적으로 보여주는 래더 다이어그램이다. 도 1 내지 도 13을 참조하면, 저장 장치(10, 도 12 참조)의 동작은 다음과 같이 진행될 수 있다.
제어기(CNTL)는 비휘발성 메모리 장치(NVM)에 스테이터스 리드 요청을 전송할 수 있다(S11). 비휘발성 메모리 장치(NVM)는 스테이터스 리드 요청에 응답하여 스테이터스 정보를 제어기(CNTL)로 출력할 수 있다(S12). 여기서 스테이터스 정보는 메모리 셀의 신뢰성을 지시하는 셀 카운트 정보를 포함할 수 있다.
이 때, 제어기(CNTL)는 스테이터스 정보를 근거로 하여 프로그램 동작에서 멀티-펄스 프로그램 동작이 필요한 지를 판별할 수 있다(S13). 만일, 멀티-펄스 프로그램 동작이 필요하지 않다면, 노멀 프로그램 동작이 수행될 수 있다.
반면에, 멀티-펄스 프로그램 동작이 필요하다면, 제어기(CNTL)는 멀티-펄스 프로그램 모드 정보를 비휘발성 메모리 장치(NVM)에 전송할 수 있다(S14). 비휘발성 메모리 장치(NVM)는 멀티-펄스 프로그램 모드 정보를 수신하고, 멀티-펄스 프로그램 모드를 설정할 수 있다(S15). 이후에, 비휘발성 메모리 장치(NVM)는 사전에 결정된 조건을 만족할 때 멀티-펄스 프로그램 동작을 수행할 수 있다(S16).
한편, 본 발명의 실시 예에 따른 비휘발성 메모리 장치는 C2C(chip to chip) 구조로 구현될 수 있다.
도 14는 본 발명의 실시 예에 따른 C2C 구조로 구현된 비휘발성 메모리 장치(1000)를 예시적으로 보여주는 도면이다. 여기서 C2C 구조는 제 1 웨이퍼 상에 셀 영역(CELL)을 포함하는 상부 칩을 제작하고, 제 1 웨이퍼와 다른 제 2 웨이퍼 상에 페리퍼럴 회로 영역(PERI)을 포함하는 하부 칩을 제작한 후, 상부 칩과 하부 칩을 본딩(bonding) 방식에 의해 서로 연결하는 것을 의미할 수 있다. 예를 들어, 본딩 방식은 상부 칩의 최상부 메탈층에 형성된 본딩 메탈과 하부 칩의 최상부 메탈층에 형성된 본딩 메탈을 서로 전기적으로 연결하는 방식일 수 있다. 실시 예에 있어서, 본딩 메탈이 구리(Cu)로 형성된 경우, 본딩 방식은 Cu-to-Cu 본딩 방식일 수 있다. 다른 실시 예에 있어서, 본딩 메탈은 알루미늄(Al) 혹은 텅스텐(W)으로 형성될 수도 있다.
비휘발성 메모리 장치(1000)의 페리퍼럴 회로 영역(PERI)과 셀 영역(CELL) 각각은 외부 패드 본딩 영역(PA), 워드라인 본딩 영역(WLBA), 및 비트라인 본딩 영역(BLBA)을 포함할 수 있다.
페리퍼럴 회로 영역(PERI)은 제 1 기판(1210), 층간 절연층(1215), 제 1 기판(1210)에 형성되는 복수의 회로 소자들(1220a, 1220b, 1220c), 복수의 회로 소자들(1220a, 1220b, 1220c) 각각과 연결되는 제 1 메탈층(1230a, 1230b, 1230c), 제 1 메탈층(1230a, 1230b, 1230c) 상에 형성되는 제 2 메탈층(1240a, 1240b, 1240c)을 포함할 수 있다. 실시 예에 있어서, 제 1 메탈층(1230a, 1230b, 1230c)은 상대적으로 비저항이 높은 텅스텐으로 형성될 수 있다. 실시 예에 있어서, 제 2 메탈층(1240a, 1240b, 1240c)은 상대적으로 비저항이 낮은 구리로 형성될 수 있다.
도 14에 도시된 바와 같이, 제 1 메탈층(1230a, 1230b, 1230c)과 제 2 메탈층(1240a, 1240b, 1240c)이 도시되지만, 본 발명이 여기에 제한되지 않을 것이다. 제 2 메탈층(1240a, 1240b, 1240c) 상에 적어도 하나의 메탈층이 더 형성될 수도 있다. 제 2 메탈층(1240a, 1240b, 1240c)의 상부에 형성되는 하나 이상의 메탈층 중 적어도 일부는, 제 2 메탈층(1240a, 1240b, 1240c)을 형성하는 구리와 다른 비저항을 갖는 알루미늄 등으로 형성될 수도 있다.
실시 예에 있어서, 층간 절연층(1215)은 복수의 회로 소자들(1220a, 1220b, 1220c), 제 1 메탈층(1230a, 1230b, 1230c), 및 제 2 메탈층(1240a, 1240b, 1240c)을 커버하도록 제 1 기판(1210) 상에 배치될 수 있다. 실시 예에 있어서, 층간 절연층(1215)은, 실리콘 산화물, 실리콘 질화물 등과 같은 절연 물질을 포함할 수 있다.
워드라인 본딩 영역(WLBA)의 제 2 메탈층(1240b) 상에 하부 본딩 메탈(1271b, 1272b)이 형성될 수 있다. 워드라인 본딩 영역(WLBA)에서, 페리퍼럴 회로 영역(PERI)의 하부 본딩 메탈(1271b, 1272b)은 셀 영역(CELL)의 상부 본딩 메탈(1371b, 1372b)과 본딩 방식에 의해 서로 전기적으로 연결될 수 있다. 실시 예에 있어서, 하부 본딩 메탈(1271b, 1272b)과 상부 본딩 메탈(1371b, 1372b)은 알루미늄, 구리, 혹은 텅스텐 등으로 형성될 수 있다. 추가로, 셀 영역(CELL)의 상부 본딩 메탈들(1371b, 1372b)은 제 1 메탈 패드들로 언급될 수 있고, 하부 본딩 메탈들(1271b, 1272b)은 제 2 메탈 패드들로 언급될 수 있다.
셀 영역(CELL)은 적어도 하나의 메모리 블록을 포함할 수 있다. 실시 예에 있어서, 셀 영역(CELL)은 제 2 기판(1310)과 공통 소스 라인(1320)을 포함할 수 있다. 제 2 기판(1310) 상에는, 제 2 기판(1310)의 상면에 수직하는 방향(Z축 방향)을 따라 복수의 워드라인들(1331-338; 330)이 적층 될 수 있다. 실시 예에 있어서, 워드라인들(1330)의 상부 및 하부 각각에는 스트링 선택 라인들과 접지 선택 라인이 배치될 수 있다. 실시 예에 있어서, 스트링 선택 라인들과 접지 선택 라인 사이에 복수의 워드라인들(1330)이 배치될 수 있다.
비트라인 본딩 영역(BLBA)에서, 채널 구조체(CH)는 제 2 기판(1310)의 상면에 수직하는 방향(Z-축 방향)으로 연장되어 워드라인들(1330), 스트링 선택 라인들, 및 접지 선택 라인을 관통할 수 있다. 채널 구조체(CH)는 데이터 저장층, 채널층, 및 매립 절연층 등을 포함할 수 있으며, 채널층은 제 1 메탈층(1350c) 및 제 2 메탈층(1360c)과 전기적으로 연결될 수 있다. 예컨대, 제 1 메탈층(1350c)은 비트라인 콘택일 수 있고, 제 2 메탈층(1360c)은 비트라인일 수 있다. 실시 예 있어서, 비트라인(1360c)은 제 2 기판(1310)의 상면에 평행한 제 1 방향(Y축 방향)을 따라 연장될 수 있다.
도 14에 도시된 바와 같이, 채널 구조체(CH)와 비트라인(1360c) 등이 배치되는 영역이 비트라인 본딩 영역(BLBA)으로 정의될 수 있다. 실시 예에 있어서, 비트라인(1360c)은 비트라인 본딩 영역(BLBA)에서 페리퍼럴 회로 영역(PERI)에서 페이지 버퍼(1393)를 제공하는 회로 소자들(1220c)과 전기적으로 연결될 수 있다. 예를 들어, 비트라인(1360c)은 페리퍼럴 회로 영역(PERI)에서 상부 본딩 메탈(1371c, 1372c)과 연결될 수 있다. 여기서 상부 본딩 메탈(1371c, 1372c)은 페이지 버퍼(1393)의 회로 소자들(1220c)에 연결되는 하부 본딩 메탈(1271c, 1272c)과 연결될 수 있다. 워드라인 본딩 영역(WLBA)에서, 워드라인들(1330)은 제 1 방향에 수직하면서 제 2 기판(1310)의 상면에 평행한 제 2 방향(X축 방향)을 따라 연장될 수 있다. 실시 예에 있어서, 워드라인 본딩 영역(WLBA)은 복수의 셀 콘택 플러그들(1341-1347; 1340)과 연결될 수 있다. 예를 들어, 워드라인들(1330)과 셀 콘택 플러그들(1340)은, 제 2 방향을 따라 워드라인들(1330) 중 적어도 일부가 서로 다른 길이로 연장되어 제공하는 패드들에서 서로 연결될 수 있다. 실시 예에 있어서, 워드라인들(1330)에 연결되는 셀 콘택 플러그들(1340)의 상부에 제 1 메탈층(1350b)과 제 2 메탈층(1360b)이 차례로 연결될 수 있다. 실시 예에 있어서, 셀 콘택 플러그들(1340)은 워드라인 본딩 영역(WLBA)에서 셀 영역(CELL)의 상부 본딩 메탈(1371b, 1372b)과 페리퍼럴 회로 영역(PERI)의 하부 본딩 메탈(1271b, 1272b)을 통해 페리퍼럴 회로 영역(PERI)과 연결될 수 있다.
실시 예에 있어서, 셀 콘택 플러그들(1340)은 페리퍼럴 회로 영역(PERI)에서 로우 디코더(1394)를 제공하는 회로 소자들(1220b)과 전기적으로 연결될 수 있다. 실시 예에 있어서, 로우 디코더(1394)를 제공하는 회로 소자들(1220b)의 동작 전압은, 페이지 버퍼(1393)를 제공하는 회로 소자들(1220c)의 동작 전압과 다를 수 있다. 예를 들어, 페이지 버퍼(1393)를 제공하는 회로 소자들(1220c)의 동작 전압이 로우 디코더(1394)를 제공하는 회로 소자들(1220b)의 동작 전압보다 클 수 있다.
외부 패드 본딩 영역(PA)에 공통 소스 라인 콘택 플러그(1380)가 배치될 수 있다. 실시 예에 있어서, 공통 소스 라인 콘택 플러그(1380)는 금속, 금속 화합물, 혹은 폴리실리콘 등의 도전성 물질로 형성될 수 있다. 공통 소스 라인 콘택 플러그(1380)는 공통 소스 라인(1320)과 전기적으로 연결될 수 있다. 공통 소스 라인 콘택 플러그(1380) 상부에 제 1 메탈층(1350a)과 제 2 메탈층(1360a)이 차례로 적층될 수 있다. 예를 들어, 공통 소스 라인 콘택 플러그(1380), 제 1 메탈층(1350a), 및 제 2 메탈층(1360a)이 배치되는 영역은 외부 패드 본딩 영역(PA)으로 정의될 수 있다. 제 2 메탈층(1360a)은 상부 메탈 비아(1371a)에 전기적으로 연결될 수 있다. 상부 메탈 비아(1371a)는 상부 메탈 패턴(1372a)에 전기적으로 연결될 수 있다.
한편, 외부 패드 본딩 영역(PA)에는 입출력 패드들(1205, 1305)이 배치될 수 있다. 도 14를 참조하면, 제 1 기판(1210)의 하부에는 제 1 기판(1210)의 하면을 덮는 하부 절연막(1201)이 형성될 수 있다. 또한, 하부 절연막(1201) 상에 제 1 입출력 패드(1205)가 형성될 수 있다. 실시 예에 있어서, 제 1 입출력 패드(1205)는 제 1 입출력 콘택 플러그(1203)를 통해 페리퍼럴 회로 영역(PERI)에 배치되는 복수의 회로 소자들(1220a, 1220b, 1220c) 중 적어도 하나와 연결될 수 있다. 실시 예에 있어서, 제 1 입출력 패드(1205)는 하부 절연막(1201)에 의해 제 1 기판(1210)과 분리될 수 있다. 또한, 제 1 입출력 콘택 플러그(1203)와 제 1 기판(1210) 사이에는 측면 절연막이 배치됨으로써 제 1 입출력 콘택 플러그(1203)와 제 1 기판(1210)을 전기적으로 분리할 수 있다.
도 14를 참조하면, 제 2 기판(1310)의 상부에 제 2 기판(1310)의 상면을 덮는 상부 절연막(1301)이 형성될 수 있다. 또한, 상부 절연막(1301) 상에 제 2 입출력 패드(1305)가 배치될 수 있다. 실시 예에 있어서, 제 2 입출력 패드(1305)는 제 2 입출력 콘택 플러그(1303), 하부 메탈 패턴(1272a), 및 하부 메탈 비아(1271a)를 통해 페리퍼럴 회로 영역(PERI)에 배치되는 복수의 회로 소자들(1220a, 1220b, 1220c) 중 적어도 하나와 연결될 수 있다.
실시 예에 있어서, 제 2 입출력 콘택 플러그(1303)가 배치되는 영역에 제 2 기판(1310) 및 공통 소스 라인(1320) 등이 배치되지 않을 수 있다. 또한, 제 2 입출력 패드(1305)는 제3 방향(Z축 방향)에서 워드라인들(1380)과 오버랩 되지 않을 수 있다. 도 14를 참조하면, 제 2 입출력 콘택 플러그(1303)는 제 2 기판(1310)의 상면에 평행한 방향에서 제 2 기판(1310)과 분리될 수 있다. 또한, 제 2 입출력 콘택 플러그(1303)는 셀 영역(CELL)의 층간 절연층(1315)을 관통하여 제 2 입출력 패드(1305)에 연결될 수 있다. 실시 예에 있어서, 제 2 입출력 패드(1305)는 회로 소자(1220a)에 전기적으로 연결될 수 있다.
실시 예에 있어서, 제 1 입출력 패드(1205)와 제 2 입출력 패드(1305)는 선택적으로 형성될 수 있다. 예를 들어, 비휘발성 메모리 장치(1000)는 제 1 기판(1201)의 상부에 배치되는 제 1 입출력 패드(1205)만을 포함하거나, 혹은 제 2 기판(1301)의 상부에 배치되는 제 2 입출력 패드(1305)만을 포함할 수 있다. 다른 실시 예에 있어서, 비휘발성 메모리 장치(1000)는 제 1 입출력 패드(1205)와 제 2 입출력 패드(1305)를 모두 포함할 수도 있다.
셀 영역(CELL)과 페리퍼럴 회로 영역(PERI) 각각에 포함되는 외부 패드 본딩 영역(PA)과 비트라인 본딩 영역(BLBA) 각각에 최상부 메탈층의 메탈 패턴이 더미 패턴(dummy pattern)으로 존재하거나, 최상부 메탈층이 비어있을 수 있다.
본 발명의 실시 예에 따른 비휘발성 메모리 장치(1000)는 외부 패드 본딩 영역(PA)에서, 셀 영역(CELL)의 최상부 메탈층에 형성된 상부 메탈 패턴(1372a)에 대응하여 페리퍼럴 회로 영역(PERI)의 최상부 메탈층에 셀 영역(CELL)의 상부 메탈 패턴(1372a)과 동일한 형태의 하부 메탈 패턴(1273a)을 형성할 수 있다. 페리퍼럴 회로 영역(PERI)의 최상부 메탈층에 형성된 하부 메탈 패턴(1273a)은 페리퍼럴 회로 영역(PERI)에서 별도의 콘택과 연결되지 않을 수 있다. 이와 유사하게, 외부 패드 본딩 영역(PA)에서 페리퍼럴 회로 영역(PERI)의 최상부 메탈층에 형성된 하부 메탈 패턴에 대응하여 셀 영역(CELL)의 상부 메탈층에 페리퍼럴 회로 영역(PERI)의 하부 메탈 패턴과 동일한 형태의 상부 메탈 패턴을 형성할 수도 있다.
워드라인 본딩 영역(WLBA)의 제 2 메탈층(1240b) 상에 하부 본딩 메탈(1271b, 1272b)이 형성될 수 있다. 실시 예에 있어서, 워드라인 본딩 영역(WLBA)에서 페리퍼럴 회로 영역(PERI)의 하부 본딩 메탈(1271b, 1272b)은, 셀 영역(CELL)의 상부 본딩 메탈(1371b, 1372b)과 본딩 방식에 의해 서로 전기적으로 연결될 수 있다.
또한, 비트라인 본딩 영역(BLBA)에서, 페리퍼럴 회로 영역(PERI)의 최상부 메탈층에 형성된 하부 메탈 패턴(1252)에 대응하여 셀 영역(CELL)의 최상부 메탈층에 페리퍼럴 회로 영역(PERI)의 하부 메탈 패턴(1252)과 동일한 형태의 상부 메탈 패턴(1392)을 형성할 수 있다. 여기서 하부 메탈 패턴(1252)은 하부 메탈 비아(1251)에 전기적으로 연결될 수 있다. 셀 영역(CELL)의 최상부 메탈층에 형성된 상부 메탈 패턴(1392) 상에는 콘택을 형성하지 않을 수 있다.
본 발명의 실시 예에 따른 비휘발성 메모리 장치는, Multi-Pulse로 인한 성능 열화를 최소화시킬 수 있다. 본 발명의 비휘발성 메모리 장치의 프로그램 방법은, 단일 Program Pulse를 인가하며 Program하다가 특정 조건을 만족하는 Loop 이후에 복수의 Program Pulse를 인가하고, Pulse의 개수가 변경되는 Loop에서 프로그램 전압(VPGM)의 ISPP Step에 Offset을 주어 Program Speed 변화를 보상할 수 있다.
본 발명의 비휘발성 메모리 장치 및 그것의 프로그램 방법은, Program 전압 하향을 통한 Program Disturbance 개선하고 및 성능 열화 최소화할 수 있다.
ISPP 방식을 사용하는 Program 동작에서 초반 Loop는 VPGM 전압이 낮기 때문에 Program Disturbance를 상대적으로 적게 받는다. 따라서 특정 조건을 만족하는 Loop까지는 Single Pulse를 사용하고 그 이후에는 Multi-Pulse를 인가한다. Multi-Pulse를 인가할 경우, Single Pulse 대비 동일 전압에서의 Program되는 양이 증가하기 때문에, 동일한 ISPP Step을 인가하여 Program할 경우 Cell의 Vth 증가량이 커져 Program 산포를 열화 시킬 수 있다. 이를 보상하기 위해서 Multi-Pulse로 빨라진 Program Speed만큼을 프로그램 전압(VPGM)을 낮추어 보상해 줄 수 있다.
Multi-Pulse로 변경하는 특정 조건은, (i) 현재의 Loop가 특정 Loop값보다 큰가, (ii) 특정 State가 Pass되었는가, 및 (iii) 현재의 Program 전압이 특정 전압 이상인가 등으로 판단 될 수 있다. 여기서 특정 Loop, 특정 Program 전압은 WL에 따라 다를 수 있다. 또한 특정 State의 Pass여부로 판정하는 방식은 동작하고 있는 Plane(or Mat)들 중 하나라도 Pass되었을 때 Multi-Pulse를 적용할 수 있다.
Multi-Pulse 인가 시 프로그램 전압(VPGM)을 낮추는 값은 WL에 따라 다를 수 있다. Multi-Pulse 수행 시 1st Pulse가 아닌 Pulse에서의 USIP(Unselected String Initial Precharge) 동작은 Disturbance 개선을 극대화를 위해 수행할 수도 있고, 성능 극대화를 위해 미수행 할 수도 있다. Multi-Pulse 수행 시 마지막 Pulse가 아닌 Pulse에서는 Pulse인가 후 BL을 Recovery 하는 동작을 미 수행하여 Power 증가를 최소화 할 수 있다. Multi-Pulse 수행 시 1st Pulse에 인가된 CSL 전압을 마지막 Pulse가 끝날 때까지 Recovery하지 않고 유지하여 Power 증가를 최소화 할 수 있다. Multi-Pulse 수행 시 1st Pulse가 아닌 Pulse에서는 Program과 Inhibit을 결정하기 위해 BL을 Setup하는 동작의 시간을 짧게 적용하여 성능 열화를 최소화 할 수 있다.
한편, 상술된 본 발명의 내용은 발명을 실시하기 위한 구체적인 실시 예들에 불과하다. 본 발명은 구체적이고 실제로 이용할 수 있는 수단 자체뿐 아니라, 장차 기술로 활용 할 수 있는 추상적이고 개념적인 아이디어인 기술적 사상을 포함 할 것이다.
10: 저장 장치
100: 비휘발성 메모리 장치
110: 메모리 셀 어레이
120: 로우 디코더
130: 페이지 버퍼 회로
140: 입출력 회로
150: 제어 로직
155: 판별 회로
160: 전압 발생 회로
170: 셀 카운터
100: 비휘발성 메모리 장치
110: 메모리 셀 어레이
120: 로우 디코더
130: 페이지 버퍼 회로
140: 입출력 회로
150: 제어 로직
155: 판별 회로
160: 전압 발생 회로
170: 셀 카운터
Claims (10)
- 비휘발성 메모리 장치의 프로그램 방법에 있어서,
어느 하나의 프로그램 루프에서 싱글-펄스 프로그램 동작을 수행하는 단계;
상기 어느 하나의 프로그램 루프에서 사전에 결정된 조건을 만족하는 지를 판별하는 단계; 및
상기 사전에 결정된 조건이 만족될 때, 다음 프로그램 루프에서 멀티-펄스 프로그램 동작을 수행하는 단계를 포함하고,
상기 싱글-펄스 프로그램 동작은 제 1 프로그램 펄스를 인가하는 것과 복수의 검증 펄스들을 인가하는 것을 포함하고,
상기 멀티-펄스 프로그램 동작은 제 2 프로그램 펄스를 인가하는 것, 제 3 프로그램 펄스를 인가하는 것과, 상기 복수의 검증 펄스들을 인가하는 것을 포함하고,
상기 제 2 및 상기 제 3 프로그램 펄스들의 각각은 상기 제 1 프로그램 펄스의 레벨보다 낮은 레벨을 갖는 것을 특징으로 하는 방법. - 제 1 항에 있어서,
상기 사전에 결정된 조건이 만족하지 않을 때, 상기 제 1 프로그램 펄스의 레벨을 제 1 옵셋만큼 증가시키는 단계; 및
상기 다음 프로그램 루프에서 상기 증가된 제 1 프로그램 펄스를 이용하여 상기 싱글-펄스 프로그램 동작을 수행하는 단계를 더 포함하는 방법. - 제 1 항에 있어서,
상기 사전에 결정된 조건이 만족할 때,
상기 제 2 및 상기 제 3 프로그램 펄스들의 레벨들의 각각은 상기 제 1 프로그램 펄스의 레벨에서 제 2 옵셋만큼 감소된 레벨을 갖는 것을 특징으로 하는 방법. - 제 1 항에 있어서,
상기 사전에 결정된 조건은 프로그램 루프의 회수이고,
상기 사전에 결정된 조건을 만족하는 지 판별하는 단계는,
상기 프로그램 루프의 회수가 기준값보다 큰 지를 판별하는 단계를 포함하는 방법. - 제 1 항에 있어서,
상기 사전에 결정된 조건은 어느 하나의 프로그램 상태의 패스 여부이고,
상기 사전에 결정된 조건을 만족하는 지 판별하는 단계는,
상기 어느 하나의 프로그램 루프에서 상기 어느 하나의 프로그램 상태가 패스 되는 지를 판별하는 단계를 포함하는 방법. - 제 1 항에 있어서,
상기 사전에 결정된 조건은 상기 제 1 프로그램 펄스의 레벨이고,
상기 사전에 결정된 조건을 만족하는 지 판별하는 단계는,
상기 제 1 프로그램 펄스의 레벨이 멀티-펄스 프로그램 펄스 검출 레벨 이상인 지를 판별하는 단계를 포함하는 방법. - 제 1 항에 있어서,
상기 멀티-펄스 프로그램 동작에서 상기 제 3 프로그램 펄스를 인가할 때, 비선택 스트링에 이니셜 프리차지 동작이 수행되는 것을 특징으로 하는 방법. - 제 1 항에 있어서,
상기 멀티-펄스 프로그램 동작에서 상기 제 2 프로그램 펄스를 인가한 후에 비트라인 리커버리 동작이 수행되지 않고, 상기 제 3 프로그램 펄스를 인가한 후에 상기 비트라인 리커버리 동작이 수행되는 것을 특징으로 하는 방법. - 제 1 항에 있어서,
상기 멀티-펄스 프로그램 동작에서 상기 제 2 프로그램 펄스를 인가할 때 공통 소스 라인에 인가된 전압이 상기 제 3 프로그램 펄스를 인가할 때까지 유지되는 것을 특징으로 하는 방법. - 제 1 메탈 패드를 갖는 메모리 셀 영역; 및
제 2 메탈 패드를 갖고, 상기 제 1 메탈 패드와 상기 제 2 메탈 패드를 통하여 수직으로 연결되는 페리퍼럴 회로 영역을 포함하고,
상기 메모리 셀 영역에서, 복수의 워드라인들과 복수의 비트라인들에 연결된 복수의 메모리 셀들을 갖는 복수의 메모리 블록들을 포함하는 메모리 셀 어레이;
상기 페리퍼럴 회로 영역에서, 상기 복수의 워드라인들 중에서 어느 하나를 선택하는 로우 디코더;
상기 페리퍼럴 회로 영역에서, 상기 복수의 비트라인들에 연결되는 복수의 페이지 버퍼들을 갖는 페이지 버퍼 회로; 및
상기 페리퍼럴 회로 영역에서, 제어 핀들을 통하여 CLE(command latch enable) 신호, ALE(address latch enable) 신호, CE(chip enable) 신호, WE(write enable) 신호, RE(read enable) 신호, DQS 신호를 수신하고, 상기 CLE 신호 및 상기 ALE 신호에 따라 상기 WE 신호의 엣지에서 커맨드 혹은 어드레스를 래치함으로써 프로그램 동작을 수행하는 제어 로직을 포함하고,
상기 제어 로직은, 프로그램 디스터번스를 줄이기 위한 멀티-펄스 프로그램 동작을 수행할 지를 판별하는 판별 회로를 포함하고,
상기 멀티-펄스 프로그램 동작은 복수의 프로그램 펄스들을 인가하는 것과, 복수의 검증 펄스들을 인가하는 것을 포함하는 비휘발성 메모리 장치.
Priority Applications (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020200115545A KR20220033651A (ko) | 2020-09-09 | 2020-09-09 | 비휘발성 메모리 장치, 그것의 프로그램 방법 및 그것을 포함하는 저장 장치 |
US17/201,828 US11626171B2 (en) | 2020-09-09 | 2021-03-15 | Non-volatile memory device, programming method thereof, and storage device having the same |
CN202111006312.XA CN114242140A (zh) | 2020-09-09 | 2021-08-30 | 非易失性存储装置、其编程方法和具有其的存储设备 |
US18/128,596 US11823753B2 (en) | 2020-09-09 | 2023-03-30 | Non-volatile memory device, programming method thereof, and storage device having the same |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020200115545A KR20220033651A (ko) | 2020-09-09 | 2020-09-09 | 비휘발성 메모리 장치, 그것의 프로그램 방법 및 그것을 포함하는 저장 장치 |
Publications (1)
Publication Number | Publication Date |
---|---|
KR20220033651A true KR20220033651A (ko) | 2022-03-17 |
Family
ID=80470789
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020200115545A KR20220033651A (ko) | 2020-09-09 | 2020-09-09 | 비휘발성 메모리 장치, 그것의 프로그램 방법 및 그것을 포함하는 저장 장치 |
Country Status (3)
Country | Link |
---|---|
US (2) | US11626171B2 (ko) |
KR (1) | KR20220033651A (ko) |
CN (1) | CN114242140A (ko) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2021232223A1 (en) * | 2020-05-19 | 2021-11-25 | Yangtze Memory Technologies Co., Ltd. | 3d nand flash and operation method thereof |
Family Cites Families (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6552929B1 (en) * | 2001-02-08 | 2003-04-22 | Advanced Micro Devices, Inc. | Piggyback programming using an extended first pulse for multi-level cell flash memory designs |
KR100684873B1 (ko) * | 2004-11-22 | 2007-02-20 | 삼성전자주식회사 | 불휘발성 메모리 장치 및 그것의 워드라인 전압 제어 방법 |
US7869273B2 (en) | 2007-09-04 | 2011-01-11 | Sandisk Corporation | Reducing the impact of interference during programming |
US8130556B2 (en) | 2008-10-30 | 2012-03-06 | Sandisk Technologies Inc. | Pair bit line programming to improve boost voltage clamping |
KR101532584B1 (ko) | 2009-01-30 | 2015-06-30 | 삼성전자주식회사 | 비휘발성 메모리 장치, 및 그의 프로그램 방법 |
US8134871B2 (en) * | 2009-08-05 | 2012-03-13 | Sandisk Technologies Inc. | Programming memory with reduced pass voltage disturb and floating gate-to-control gate leakage |
US8416624B2 (en) | 2010-05-21 | 2013-04-09 | SanDisk Technologies, Inc. | Erase and programming techniques to reduce the widening of state distributions in non-volatile memories |
KR102118979B1 (ko) | 2013-09-13 | 2020-06-05 | 삼성전자주식회사 | 불휘발성 메모리 장치 및 그것의 프로그램 방법 |
US9368218B2 (en) * | 2014-10-03 | 2016-06-14 | HGST Netherlands B.V. | Fast secure erase in a flash system |
KR20160108770A (ko) | 2015-03-06 | 2016-09-20 | 에스케이하이닉스 주식회사 | 반도체 메모리 장치 및 그것의 동작 방법 |
KR20190073943A (ko) | 2017-12-19 | 2019-06-27 | 에스케이하이닉스 주식회사 | 반도체 메모리 장치 및 그 동작 방법 |
US11094379B1 (en) * | 2020-03-31 | 2021-08-17 | Micron Technology, Inc. | Memory cell programming |
-
2020
- 2020-09-09 KR KR1020200115545A patent/KR20220033651A/ko unknown
-
2021
- 2021-03-15 US US17/201,828 patent/US11626171B2/en active Active
- 2021-08-30 CN CN202111006312.XA patent/CN114242140A/zh active Pending
-
2023
- 2023-03-30 US US18/128,596 patent/US11823753B2/en active Active
Also Published As
Publication number | Publication date |
---|---|
US20220076766A1 (en) | 2022-03-10 |
US11626171B2 (en) | 2023-04-11 |
CN114242140A (zh) | 2022-03-25 |
US11823753B2 (en) | 2023-11-21 |
US20230238066A1 (en) | 2023-07-27 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR102355580B1 (ko) | 비휘발성 메모리 장치, 그것을 포함하는 저장 장치 및 그것의 동작 방법 | |
US11514997B2 (en) | Controller, a storage device including the controller, and a reading method of the storage device | |
US11158381B2 (en) | Non-volatile memory device and operating method thereof | |
US11475972B2 (en) | Non-volatile memory device, controller for controlling the same, storage device having the same, and reading method thereof | |
KR102277652B1 (ko) | 워드 라인 불량 검출 회로를 포함하는 메모리 장치 및 그 구동 방법 | |
KR102386242B1 (ko) | 전원 전압 변동에 독립적인 워드 라인 불량 검출 회로를 포함하는 메모리 장치 및 그 구동 방법 | |
CN111798904A (zh) | 非易失性存储器装置、其操作方法和存储器*** | |
KR20220006467A (ko) | 기계 학습에 기반한 오류 정정을 수행하는 메모리 장치 및 이의 동작 방법 | |
KR20200036653A (ko) | 메모리 장치 및 이를 이용한 스토리지 시스템 | |
US12002519B2 (en) | Operation method of controller configured to control nonvolatile memory device and operation method of storage device | |
US20230307062A1 (en) | Non-volatile memory device, operating method thereof, controller for controlling the same, and storage device including the same | |
US11610639B2 (en) | Non-volatile memory device, storage device having the same, and reading method thereof | |
US11823753B2 (en) | Non-volatile memory device, programming method thereof, and storage device having the same | |
CN114078529A (zh) | 用于对多页数据进行编程的非易失性存储器设备的操作方法 | |
US20230015496A1 (en) | Nonvolatile memory device, controller for controlling the same, storage device having the same, and method of operating the same | |
US11966608B2 (en) | Memory controller with improved data reliability and memory system including the same | |
US20230148408A1 (en) | Memory device for detecting fail cell and operation method thereof | |
US20220415408A1 (en) | Non-volatile memory device, storage device including the same, and operating method thereof | |
KR20230071013A (ko) | 데이터 신뢰성을 향상한 메모리 컨트롤러 및 이를 포함하는 메모리 시스템 | |
KR20220054493A (ko) | 비휘발성 메모리 장치, 그것을 갖는 저장 장치, 및 그것의 리드 방법 | |
CN116129974A (zh) | 非易失性存储装置以及操作非易失性存储装置的方法 | |
CN115966234A (zh) | 半导体存储器装置和操作半导体存储器装置的方法 | |
CN114822646A (zh) | 一种存储器装置、存储器***及操作方法 |