KR102444238B1 - 메모리 장치의 프로그램 방법 및 이를 적용하는 메모리 시스템 - Google Patents

메모리 장치의 프로그램 방법 및 이를 적용하는 메모리 시스템 Download PDF

Info

Publication number
KR102444238B1
KR102444238B1 KR1020160023629A KR20160023629A KR102444238B1 KR 102444238 B1 KR102444238 B1 KR 102444238B1 KR 1020160023629 A KR1020160023629 A KR 1020160023629A KR 20160023629 A KR20160023629 A KR 20160023629A KR 102444238 B1 KR102444238 B1 KR 102444238B1
Authority
KR
South Korea
Prior art keywords
word line
memory
program
data
selected word
Prior art date
Application number
KR1020160023629A
Other languages
English (en)
Other versions
KR20170101000A (ko
Inventor
박일한
이승재
Original Assignee
삼성전자주식회사
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 삼성전자주식회사 filed Critical 삼성전자주식회사
Priority to KR1020160023629A priority Critical patent/KR102444238B1/ko
Priority to US15/425,315 priority patent/US10163513B2/en
Priority to CN201710109311.5A priority patent/CN107369470B/zh
Publication of KR20170101000A publication Critical patent/KR20170101000A/ko
Application granted granted Critical
Publication of KR102444238B1 publication Critical patent/KR102444238B1/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
    • 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/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/34Determination of programming status, e.g. threshold voltage, overprogramming or underprogramming, retention
    • G11C16/3418Disturbance prevention or evaluation; Refreshing of disturbed memory data
    • G11C16/3427Circuits or methods to prevent or reduce disturbance of the state of a memory cell when neighbouring cells are read or written
    • 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
    • G11C2213/00Indexing scheme relating to G11C13/00 for features not covered by this group
    • G11C2213/70Resistive array aspects
    • G11C2213/75Array having a NAND structure comprising, for example, memory cells in series or memory elements in series, a memory element being a memory cell in parallel with an access transistor

Landscapes

  • Engineering & Computer Science (AREA)
  • Microelectronics & Electronic Packaging (AREA)
  • Read Only Memory (AREA)
  • Stored Programmes (AREA)
  • Dram (AREA)

Abstract

메모리 장치의 프로그램 방법 및 이를 적용하는 메모리 시스템에 관하여 개시한다. 메모리 장치의 프로그램 방법은 프로그램 커맨드가 수행될 선택 워드라인에 인접한 워드라인의 메모리 셀들에 유효한 데이터가 저장되어 있는지를 판단하는 단계, 상기 선택 워드라인에 인접한 워드라인의 메모리 셀들에 유효한 데이터가 저장되어 있지 않은 경우에 상기 선택 워드라인에 라이트 될 데이터에 기초하여 상기 선택 워드라인에 인접한 워드라인에서 프리-프로그램 동작을 수행하는 단계 및, 상기 프리-프로그램 동작을 수행하고 나서 상기 프로그램 커맨드에 기초하여 상기 선택 워드라인에서 프로그램 동작을 수행하는 단계를 포함한다.

Description

메모리 장치의 프로그램 방법 및 이를 적용하는 메모리 시스템{Method for programming memory device and memory system adopting the same}
본 발명의 기술적 사상은 메모리 장치 및 그 제어 방법에 관한 것으로서, 자세하게는 메모리 장치의 프로그램 방법 및 이를 적용하는 메모리 시스템에 관한 것이다.
메모리 장치는 데이터를 저장하는데 사용되며, 휘발성 메모리 장치와 비휘발성 메모리 장치로 구분된다. 휘발성 메모리 장치는 전원이 차단될 때 저장된 데이터를 잃지만, 비휘발성 메모리 장치는 전원이 차단되더라도 저장된 데이터를 보존한다. 비휘발성 메모리 장치의 일 예로서, 플래시 메모리 장치는 휴대폰, 디지털 카메라, 휴대용 정보 단말기(PDA), 컴퓨터 장치 등에서 사용될 수 있다. 이러한 비휘발성 메모리 장치는 데이터가 저장되는 위치에 관계없이 일정한 수준 이상의 신뢰성이 요구된다.
본 발명의 기술적 사상이 해결하려는 과제는 메모리 장치에서의 에지 워드라인의 신뢰성을 높이기 위한 메모리 장치의 프로그램 방법을 제공하는데 있다.
본 발명의 기술적 사상이 해결하려는 다른 과제는 메모리 장치에서의 에지 워드라인의 신뢰성을 높이기 위한 메모리 시스템을 제공하는데 있다.
본 발명의 기술적 사상의 일면에 따른 메모리 장치의 프로그램 방법은 프로그램 커맨드가 수행될 선택 워드라인에 인접한 워드라인의 메모리 셀들에 유효한 데이터가 저장되어 있는지를 판단하는 단계, 상기 선택 워드라인에 인접한 워드라인의 메모리 셀들에 유효한 데이터가 저장되어 있지 않은 경우에 상기 선택 워드라인에 라이트 될 데이터에 기초하여 상기 선택 워드라인에 인접한 워드라인에서 프리-프로그램 동작을 수행하는 단계 및, 상기 프리-프로그램 동작을 수행하고 나서 상기 프로그램 커맨드에 기초하여 상기 선택 워드라인에서 프로그램 동작을 수행하는 단계를 포함한다.
본 발명의 기술적 사상의 다른 면에 따른 메모리 시스템은 복수개의 워드라인들 및 비트 라인들에 접속되는 메모리 셀 어레이를 포함하는 비휘발성 메모리 장치 및, 호스트로부터 수신되는 프로그램 커맨드에 기초하여 상기 비휘발성 메모리 장치의 동작을 제어하는 메모리 컨트롤러를 포함하고, 상기 프로그램 커맨드가 수행될 상기 비휘발성 메모리 장치의 선택 워드라인에 인접한 워드라인의 메모리 셀들에 유효한 데이터가 저장되어 있지 않은 경우에 상기 선택 워드라인에 라이트 될 데이터에 기초하여 상기 선택 워드라인에 인접한 워드라인에서 프리-프로그램 동작을 수행하고 나서 상기 프로그램 커맨드에 따른 프로그램 동작을 수행하는 특징으로 한다.
본 발명에 따르면 인접 워드라인에 유효한 데이터가 저장되지 않은 선택 워드라인 WLn에 대한 프로그램 동작을 수행하기 전에 선택 워드라인 WLn에 라이트 될 데이터와 동일하거나 조합된 데이터를 워드라인 WLn-1에 라이트하는 프리-프로그램(pre-program) 동작을 수행함으로써, 에지 워드라인의 신뢰성을 향상시킬 수 있는 효과가 발생된다.
그리고, 본 발명에 따르면 소거된 메모리 블록에서의 첫 번째 프로그램 동작을 메인 워드라인에서 수행하기 전에 첫 번째 프로그램 동작에 따라서 메인 워드라인에 라이트 될 데이터와 동일한 데이터를 메인 워드라인에 인접한 더미 워드라인에 라이트하는 프리-프로그램 동작을 수행함으로써, 에지 워드라인의 신뢰성을 향상시킬 수 있는 효과가 발생된다.
그리고, 본 발명에 따르면 프리-프로그램 동작을 코어스(coarse)하게 수행함으로써, 프리-프로그램 동작 시간을 단축시킬 수 있는 효과가 발생된다.
도 1은 본 발명의 일 실시 예에 따른 메모리 시스템을 개략적으로 나타내는 블록도이다.
도 2는 본 발명의 다른 실시 예에 따른 메모리 시스템을 개략적으로 나타내는 블록도이다.
도 3은 도 1의 메모리 시스템에 포함된 메모리 장치를 상세하게 나타내는 블록도이다.
도 4는 도 2의 메모리 시스템에 포함된 메모리 장치를 상세하게 나타내는 블록도이다.
도 5는 도 3 또는 도 4에 도시된 메모리 셀 어레이의 일 예를 나타낸다.
도 6은 도 5에 도시된 메모리 셀 어레이에 포함된 메모리 블록의 일 예를 나타내는 회로도이다.
도 7은 도 5에 도시된 메모리 셀 어레이에 포함된 메모리 블록의 다른 예를 나타내는 회로도이다.
도 8은 도 6 또는 도 7에 도시된 메모리 블록에 포함된 메모리 셀의 일 예를 보여주는 단면도이다.
도 9는 도 1에 도시된 메모리 컨트롤러의 블록 구성의 일 예를 보여준다.
도 10은 도 2에 도시된 메모리 컨트롤러의 블록 구성의 일 예를 보여준다.
도 11은 도 1 또는 도 2의 메모리 시스템에서의 프리-프로그램 모드가 디스에이블 된 조건에서의 도 6 또는 도 7의 소거된 메모리 블록에 포함된 하나의 셀 스트링에서의 소거 동작 후의 최초의 프로그램 상태를 보여준다.
도 12는 도 1 또는 도 2의 메모리 시스템에서의 프리-프로그램 모드가 디스에이블 된 조건에서의 프로그램 동작이 실행된 메모리 블록에서의 워드라인 별 메모리 셀들의 리텐션 특성을 보여준다.
도 13은 도 1 또는 도 2의 메모리 시스템에서의 프리-프로그램 모드가 인에이블 된 조건에서의 도 6 또는 도 7의 메모리 블록에 포함된 하나의 셀 스트링에 대한 소거 동작 후의 프로그램 과정을 보여준다.
도 14는 도 1 또는 도 2의 메모리 시스템에서의 프리-프로그램 모드가 인에이블 된 조건에서의 프로그램 동작이 실행된 메모리 블록에서의 워드라인 별 메모리 셀들의 리텐션 특성을 보여준다.
도 15는 본 발명의 실시 예에 따른 메모리 시스템에서의 소거된 메모리 블록에서의 첫 번째 프로그램 커맨드에 따라서 선택 워드라인에 라이트 할 데이터가 단일 페이지의 데이터인 경우에 프리-프로그램 동작 과정의 일 예를 보여주는 도면이다.
도 16은 본 발명의 실시 예에 따른 메모리 시스템에서의 소거된 메모리 블록에서의 첫 번째 프로그램 커맨드에 따라서 선택 워드라인에 라이트 할 데이터가 복수 페이지의 데이터인 경우에 프로그램 동작 수행 과정의 일 예를 보여주는 도면이다.
도 17은 본 발명의 실시 예에 따른 메모리 시스템에서의 소거된 메모리 블록에서의 첫 번째 프로그램 커맨드에 따라서 선택 워드라인에 라이트 할 데이터가 복수 페이지의 데이터인 경우에 프로그램 동작 수행 과정의 다른 예를 보여주는 도면이다.
도 18은 본 발명에 따른 메모리 장치의 프로그램 방법의 흐름도의 일 예를 보여준다.
도 19는 본 발명에 따른 메모리 장치의 프로그램 방법의 흐름도의 다른 예를 보여준다.
도 20은 본 발명에 따른 메모리 장치의 프로그램 방법의 흐름도의 또 다른 예를 보여준다.
도 21은 본 발명에 따른 메모리 장치의 프로그램 방법의 흐름도의 또 다른 예를 보여준다.
도 22는 본 발명의 실시 예들에 따른 메모리 시스템을 메모리 카드 시스템에 적용한 예를 나타내는 블록도이다.
도 23은 본 발명의 실시 예들에 따른 메모리 시스템을 포함하는 컴퓨팅 시스템을 나타내는 블록도이다.
도 24는 본 발명의 실시 예들에 따른 메모리 시스템을 SSD 시스템에 적용한 예를 나타내는 블록도이다.
이하, 첨부한 도면을 참조하여 본 발명의 실시 예에 대해 상세히 설명한다. 본 발명의 실시 예는 당 업계에서 평균적인 지식을 가진 자에게 본 발명을 보다 완전하게 설명하기 위하여 제공되는 것이다. 본 발명은 다양한 변경을 가할 수 있고 여러 가지 형태를 가질 수 있는 바, 특정 실시 예들을 도면에 예시하고 상세하게 설명하고자 한다. 그러나, 이는 본 발명을 특정한 개시 형태에 대해 한정하려는 것이 아니며, 본 발명의 사상 및 기술 범위에 포함되는 모든 변경, 균등물 내지 대체물을 포함하는 것으로 이해되어야 한다. 각 도면을 설명하면서 유사한 참조부호를 유사한 구성요소에 대해 사용한다. 첨부된 도면에 있어서, 구조물들의 치수는 본 발명의 명확성을 기하기 위하여 실제보다 확대하거나 축소하여 도시한 것이다.
본 출원에서 사용한 용어는 단지 특정한 실시 예를 설명하기 위해 사용된 것으로, 본 발명을 한정하려는 의도가 아니다. 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다. 본 출원에서, "포함하다" 또는 "가지다" 등의 용어는 명세서 상에 기재된 특징, 숫자, 단계, 동작, 구성요소, 부분품 또는 이들을 조합한 것이 존재함을 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성 요소, 부분품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.
다르게 정의되지 않는 한, 기술적이거나 과학적인 용어를 포함해서 여기서 사용되는 모든 용어들은 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 것과 동일한 의미를 갖는다. 일반적으로 사용되는 사전에 정의되어 있는 것과 같은 용어들은 관련 기술의 문맥상 가지는 의미와 일치하는 의미를 가지는 것으로 해석되어야 하며, 본 출원에서 명백하게 정의하지 한, 이상적이거나 과도하게 형식적인 의미로 해석되지 않는다.
도 1은 본 발명의 일 실시 예에 따른 메모리 시스템(100A)을 개략적으로 나타내는 블록도이다.
도 1에 도시된 바와 같이, 메모리 시스템(100A)은 메모리 장치(10A)와 메모리 컨트롤러(20A)를 포함한다. 메모리 장치(10A)는 메모리 셀 어레이(11) 및 프리-프로그램 관리부(12-1A)를 포함할 수 있다.
메모리 셀 어레이(11)는 복수의 워드 라인들과 복수의 비트 라인들이 교차하는 영역들에 배치되는 복수의 메모리 셀들을 포함할 수 있다. 일 실시예에서, 복수의 메모리 셀들은 플래시 메모리 셀들일 수 있다. 예로서, 메모리 셀 어레이(11)는 낸드(NAND) 플래시 메모리 셀 어레이 또는 노아(NOR) 플래시 메모리 셀 어레이일 수 있다. 이하에서는, 복수의 메모리 셀들이 낸드 플래시 메모리 셀들인 경우를 예로 하여 본 발명의 실시 예들을 상술하기로 한다.
메모리 셀 어레이(11)는 다수의 메모리 셀들이 직렬로 연결되는 스트링(string) 구조로 이루어진다. 예로서, 각각의 셀 스트링은 공통 소스 라인(Common Source Line; CSL)과 비트 라인(BL) 사이에 접지 선택 트랜지스터, 하나 이상의 더미 메모리 셀, 복수의 메인 메모리 셀들, 스트링 선택 트랜지스터가 직렬로 연결된다. 공통 소스 라인(CSL) 쪽에서 메인 메모리 셀들에 미치는 커플링(coupling) 영향을 줄이기 위하여 더미 메모리 셀은 접지 선택 트랜지스터와 복수의 메인 메모리 셀들 사이에 배치한다. 즉, 메인 메모리 셀의 에지(edge)에 더미 메모리 셀을 배치한다.
다른 예로서, 각각의 셀 스트링은 공통 소스 라인(Common Source Line; CSL)과 비트 라인(BL) 사이에 접지 선택 트랜지스터, 하나 이상의 더미 메모리 셀, 복수의 메인 메모리 셀들, 하나 이상의 더미 메모리 셀, 스트링 선택 트랜지스터가 직렬로 연결될 수도 있다.
복수의 비트 라인들에 접속된 메인 메모리 셀들 및 더미 메모리 셀들은 각기 다른 워드라인들에 접속된다. 예로서, 더미 메모리 셀들이 접속되는 워드라인을 더미 워드라인이라 칭할 수 있다.
그리고, 셀 스트링 구조의 취약점인 백 패턴 종속성(back pattern dependency)를 최소화하기 위하여 셀 스트링에서 글로벌 소스 라인(Global source line; GSL)이 접속되는 접지 선택 트랜지스터에서 가장 가까운 메모리 셀부터 순차적으로 프로그램을 진행한다. 여기에서, 글로벌 소스 라인(GSL)은 접지 선택 라인(Ground Selection Line)이라 칭할 수도 있다.
예로서, 메모리 셀 어레이(11)는 2차원 플래너 낸드 플래시 메모리 셀 구조로 설계될 수 있다. 다른 예로서, 메모리 셀 어레이(11)는 3차원 수직 구조의 낸드(vertical NAND, VNAND) 플래시 메모리 셀 구조로 설계될 수 있다.
본 발명의 기술적 사상에 의한 일 실시 예에서, 3 차원 (3D) 구조의 메모리 셀 어레이(11)는 실리콘 기판 위에 배치되는 활성 영역과, 메모리 셀들의 동작과 관련된 회로로서 상기 기판상에 또는 상기 기판 내에 형성된 회로를 가지는 메모리 셀 어레이들의 적어도 하나의 물리적 레벨에 모놀리식으로 형성된다. 상기 용어 "모놀리식"은 상기 어레이를 구성하는 각 레벨의 층들이 상기 어레이 중 각 하부 레벨의 층들의 바로 위에 적층되어 있음을 의미한다.
본 발명의 기술적 사상에 의한 일 실시 예에서, 상기 3D 구조의 메모리 어레이는 적어도 하나의 메모리 셀이 다른 메모리 셀의 위에 위치하도록 수직 방향으로 배치된 버티칼 NAND 스트링들을 포함한다. 상기 적어도 하나의 메모리 셀은 전하 트랩층을 포함할 수 있다.
미국 특허공개공보 제7,679,133호, 동 제8,553,466호, 동 제8,654,587호, 동 제8,559,235호, 및 미국 특허출원공개공보 제2011/0233648호는 3D 메모리 어레이가 복수 레벨로 구성되고 워드 라인들 및/또는 비트 라인들이 레벨들간에 공유되어 있는 3D 메모리 어레이에 대한 적절한 구성들을 상술하는 것들로서, 본 명세서에 인용 형식으로 결합될 수 있다.
프리-프로그램 관리부(12-1A)는 도 18 내지 도 21에 도시된 바와 같은 메모리 장치의 프로그램 방법의 흐름도를 수행하기 위한 하드웨어 또는 소프트웨어를 구비한다.
프리-프로그램 관리부(12-1A)는 프로그램 커맨드가 수행될 선택 워드라인에 인접한 워드라인의 메모리 셀들에 유효한 데이터가 저장되어 있지 않은 경우에 선택 워드라인에 라이트 될 데이터에 기초하여 선택 워드라인에 인접한 워드라인에서 프리-프로그램(pre-program) 동작을 수행하고 나서 프로그램 커맨드에 기초하여 선택 워드라인에서 프로그램 동작을 수행한다.
예로서, 프리-프로그램 관리부(12-1A)는 소거 처리된 메모리 블록에서의 첫 번째 프로그램 동작을 수행하기 위한 프로그램 커맨드가 메모리 장치(10A)에서 수행되기 전에 프로그램 커맨드가 지시하는 선택 워드라인에 인접한 더미 워드라인에서 프리-프로그램 동작을 수행한다. 예로서, 프리-프로그램 동작은 프로그램 커맨드에서 따라서 선택 워드라인에 라이트 될 데이터와 동일한 데이터를 선택 워드라인에 인접한 더미 워드라인에 라이트하는 동작을 수행할 수 있다.
프리-프로그램 관리부(12-1A)는 코어스(coarse)한 프로그램 방식을 적용하여 프리-프로그램 동작을 수행할 수 있다. 예로서, 프리-프로그램 동작은 프로그램 커맨드에 따른 프로그램 동작에 비하여 프로그램 루프 변경에 따른 프로그램 전압 레벨의 증가 폭을 크게 설정할 수 있다. 예로서, 프리-프로그램 동작은 한번의 프로그램 펄스를 이용하여 수행될 수 있다. 예로서, 프리-프로그램 동작에서는 프로그램 검증 동작을 수행하지 않을 수 있다. 예로서, 프로그램 커맨드에 따라서 선택 워드라인에 프로그램 될 데이터가 2 페이지 이상의 데이터인 경우에, 프리-프로그램 동작에 따라서 선택 워드라인에 인접한 워드라인에 라이트 되는 데이터는 선택 워드라인에 라이트 될 2 페이지 이상의 데이터를 조합한 데이터로 결정할 수 있다. 예로서, 프로그램 커맨드에 따라서 선택 워드라인에 프로그램 될 데이터가 2 페이지 이상의 데이터인 경우에, 선택 워드라인에 인접한 워드라인에 라이트 되는 데이터는 상기 선택 워드라인에 라이트 될 2 페이지 이상의 데이터를 조합하여 생성한 단일 페이지 데이터로 결정할 수 있다.
예로서, 프리-프로그램 동작이 수행되는 선택 워드라인에 인접한 더미 워드라인의 더미 메모리 셀은 셀 스트링의 접지 선택 트랜지스터와 메인 메모리 셀 사이에 배치될 수 있다. 예로서, 메모리 블록에 포함된 셀 스트링의 메인 메모리 셀과 접지 선택 트랜지스터 사이에 복수 개의 더미 메모리 셀들이 배치된 경우에, 프리-프로그램 관리부(12-1A)는 메인 메모리 셀부터 가장 가깝게 인접된 더미 메모리 셀에서 프리-프로그램 동작을 수행할 수 있다.
프리-프로그램 관리부(12-1A)는 프리-프로그램 모드 설정 상태가 인에이블(enable) 되어 있는 경우에 프리-프로그램 동작을 수행하고, 프리-프로그램 모드 설정 상태가 디스에이블(disable) 되어 있는 경우에는 프리-프로그램 동작을 수행하지 않도록 메모리 장치(10A)에서의 프리-프로그램 동작을 제어할 수 있다. 예로서, 메모리 블록 별 프로그램/소거 사이클 회수가 초기 설정된 임계 값을 초과하는 경우에 해당 메모리 블록에 대하여 프리-프로그램 모드를 인에이블 상태로 설정할 수 있다. 다른 예로서, 테스트 공정 또는 사용자 환경에서 프리-프로그램 모드를 인에이블 상태로 설정할 수도 있다.
메모리 컨트롤러(20A)는 메모리 장치(10A)에 대한 제어 동작을 수행할 수 있다. 구체적으로, 메모리 컨트롤러(20A)는 메모리 장치(10A)를 제어하기 위한 어드레스(ADDR), 커맨드(CMD) 및 제어 신호(CTRL)를 생성할 수 있다. 그리고, 메모리 컨트롤러(20A)는 메모리 장치(10A)에 어드레스(ADDR), 커맨드(CMD) 및 제어 신호(CTRL)를 제공함으로써, 메모리 장치(10A)에 대한 프로그램(program)(또는 쓰기), 독출(read) 및 소거(erase) 동작을 제어할 수 있다. 또한, 프로그램 동작을 위한 데이터(DATA)와 독출된 데이터(DATA)가 메모리 컨트롤러(20A)와 메모리 장치(10A) 사이에서 송수신될 수 있다.
도 2는 본 발명의 다른 실시 예에 따른 메모리 시스템(100B)을 개략적으로 나타내는 블록도이다.
도 2에 도시된 바와 같이, 메모리 시스템(100B)은 메모리 장치(10B)와 메모리 컨트롤러(20B)를 포함한다. 메모리 장치(10B)는 메모리 셀 어레이(11)를 포함하고, 메모리 컨트롤러(20B)는 프리-프로그램 관리부(21)를 포함할 수 있다.
메모리 장치(10B)의 셀 어레이(11)는 도 1에서 이미 설명하였으므로, 중복적인 설명은 피하기로 한다.
도 1의 실시 예에서는 프리-프로그램 관리부(12-1A)가 메모리 장치(10A)에 배치되어 있는데 비하여, 도 2의 실시 예에서는 프리-프로그램 관리부(21)가 메모리 컨트롤러(20B)에 배치되어 있다.
메모리 컨트롤러(20B)는 메모리 장치(10B)에 대한 제어 동작을 수행할 수 있다. 구체적으로, 메모리 컨트롤러(20B)는 메모리 장치(10B)를 제어하기 위한 어드레스(ADDR), 커맨드(CMD) 및 제어 신호(CTRL)를 생성할 수 있다. 그리고, 메모리 컨트롤러(20B)는 메모리 장치(10B)에 어드레스(ADDR), 커맨드(CMD) 및 제어 신호(CTRL)를 제공함으로써, 메모리 장치(10B)에 대한 프로그램(program)(또는 쓰기), 독출(read) 및 소거(erase) 동작을 제어할 수 있다. 또한, 프로그램 또는 프리-프로그램 동작을 위한 데이터(DATA)와 독출된 데이터(DATA)가 메모리 컨트롤러(20B)와 메모리 장치(10B) 사이에서 송수신될 수 있다.
프리-프로그램 관리부(21)는 도 18 내지 도 21에 도시된 바와 같은 메모리 장치(10B)의 프로그램 방법의 흐름도를 수행하기 위한 하드웨어 또는 소프트웨어를 구비한다.
프리-프로그램 관리부(21)는 프로그램 커맨드가 수행될 선택 워드라인에 인접한 워드라인의 메모리 셀들에 유효한 데이터가 저장되어 있지 않은 경우에 프로그램 커맨드를 메모리 장치(10B)로 전송하기 전에 선택 워드라인에 라이트 될 데이터에 기초하여 선택 워드라인에 인접한 워드라인에서 프리-프로그램(pre-program) 동작을 수행하기 위한 커맨드, 어드레스 및 데이터를 메모리 장치(10B)로 전송한다.
메모리 컨트롤러(20B)는 프로그램 커맨드가 수행될 선택 워드라인에 인접한 워드라인의 메모리 셀들에 유효한 데이터가 저장되어 있지 않은 경우에, 프리-프로그램(pre-program) 동작을 수행하고 나서 선택 워드라인에서의 프로그램 동작을 위한 커맨드, 어드레스 및 데이터를 메모리 장치(10B)로 전송한다.
예로서, 프리-프로그램 관리부(21)는 소거 처리된 메모리 블록에서의 첫 번째 프로그램 동작을 수행하기 위한 프로그램 커맨드를 메모리 장치(10B)로 전송하기 전에 프로그램 커맨드가 지시하는 선택 워드라인에 인접한 더미 워드라인에서 프리-프로그램 동작을 수행하기 위한 커맨드, 어드레스 및 데이터를 메모리 장치(10B)로 전송할 수 있다.
예로서, 프리-프로그램 관리부(21)는 프리-프로그램 동작을 수행하기 위하여 메모리 장치(10B)로 전송되는 데이터를 프로그램 커맨드에서 따라서 선택 워드라인에 라이트 될 데이터와 동일한 데이터로 결정할 수 있다.
프리-프로그램 관리부(21)는 코어스(coarse)한 프로그램 방식을 적용하여 프리-프로그램 동작을 수행하도록 메모리 장치(10B)를 제어할 수 있다. 예로서, 프리-프로그램 관리부(21)는 프리-프로그램 동작에서 프로그램 커맨드에 따른 프로그램 동작에 비하여 프로그램 루프 변경에 따른 프로그램 전압 레벨의 증가 폭을 크게 설정할 수 있다. 예로서, 프리-프로그램 관리부(21)는 한번의 프로그램 펄스를 이용하여 프리-프로그램 동작을 수행하도록 메모리 장치(10B)를 제어할 수 있다. 예로서, 프리-프로그램 관리부(21)는 프리-프로그램 동작에서 프로그램 검증 동작을 수행하지 않도록 메모리 장치(10B)를 제어할 수 있다. 예로서, 프리-프로그램 관리부(21)는 프로그램 커맨드에 따라서 선택 워드라인에 프로그램 될 데이터가 2 페이지 이상의 데이터인 경우에, 프리-프로그램 동작에 따라서 선택 워드라인에 인접한 워드라인에 라이트 되는 데이터를 선택 워드라인에 라이트 될 2 페이지 이상의 데이터를 조합한 데이터로 결정할 수 있다. 예로서, 프로그램 커맨드에 따라서 선택 워드라인에 프로그램 될 데이터가 2 페이지 이상의 데이터인 경우에, 선택 워드라인에 인접한 워드라인에 라이트 되는 데이터는 상기 선택 워드라인에 라이트 될 2 페이지 이상의 데이터를 조합하여 생성한 단일 페이지 데이터로 결정할 수 있다.
예로서, 프리-프로그램 관리부(21)에 의하여 프리-프로그램 동작이 수행되는 메모리 장치(10B)에서의 더미 워드라인의 더미 메모리 셀은 셀 스트링의 접지 선택 트랜지스터와 메인 메모리 셀 사이에 배치될 수 있다. 예로서, 메모리 장치(10B)의 메모리 블록에 포함된 셀 스트링의 메인 메모리 셀과 접지 선택 트랜지스터 사이에 복수 개의 더미 메모리 셀들이 배치된 경우에, 프리-프로그램 관리부(21)는 메인 메모리 셀부터 가장 가깝게 인접된 더미 메모리 셀에서 프리-프로그램 동작을 수행하도록 메모리 장치(10B)를 제어할 수 있다.
프리-프로그램 관리부(21)는 프리-프로그램 모드 설정 상태가 인에이블(enable) 되어 있는 경우에 프리-프로그램 동작을 수행하고, 프리-프로그램 모드 설정 상태가 디스에이블(disable) 되어 있는 경우에는 프리-프로그램 동작을 수행하지 않도록 메모리 장치(10B)를 제어할 수 있다. 예로서, 프리-프로그램 관리부(21)는 메모리 블록 별 프로그램/소거 사이클 회수가 초기 설정된 임계 값을 초과하는 경우에 해당 메모리 블록에 대하여 프리-프로그램 모드를 인에이블 상태로 설정할 수 있다. 다른 예로서, 테스트 공정 또는 사용자 환경에서 프리-프로그램 모드를 인에이블 상태로 설정할 수도 있다.
도 3은 도 1의 메모리 시스템(100A)에 포함된 메모리 장치(10A)를 상세하게 나타내는 블록도이다.
도 3을 참조하면, 메모리 장치(10A)는 메모리 셀 어레이(11), 제어 로직(control logic; 12A), 전압 생성부(13), 로우 디코더(14) 및 페이지 버퍼(15)를 포함할 수 있다.
메모리 셀 어레이(11)는 하나 이상의 스트링 선택 라인(SSL), 복수의 워드 라인들(WL) 및 하나 이상의 접지 선택 라인(GSL)에 연결될 수 있으며, 또한 복수의 비트 라인들(BL)에 연결될 수 있다. 메모리 셀 어레이(11)는 복수의 워드 라인들(WL) 및 복수의 비트 라인들(BL)이 교차하는 영역들에 배치되는 복수의 메모리 셀들을 포함할 수 있다. 복수의 워드 라인들(WL)은 메인 워드 라인들(MWL)과 하나 이상의 더미 워드 라인(DWL)이 포함될 수 있다. 더미 워드 라인(DWL)은 메인 워드 라인의 데이터 신뢰성을 향상시키기 위한 역할을 한다.
메모리 셀 어레이(11)에 소거 전압이 인가되면 복수의 메모리 셀들(MC)은 소거 상태가 되며, 메모리 셀 어레이(11)에 프로그램 전압이 인가되면 복수의 메모리 셀들(MC)은 프로그램 상태가 된다. 이때, 각 메모리 셀(MC)은 문턱 전압에 따라 구분되는 소거 상태 및 제1 내지 제n 프로그램 상태들(P1 내지 Pn) 중 하나를 가질 수 있다.
여기서, n은 2 이상의 자연수일 수 있다. 예를 들어, 메모리 셀(MC)이 2 비트 레벨 셀인 경우 n은 3일 수 있다. 다른 예에서, 메모리 셀(MC)이 3 비트 레벨 셀인 경우 n은 7일 수 있다. 또 다른 예에서, 메모리 셀(MC)이 4 비트 레벨 셀인 경우 n은 15일 수 있다. 이와 같이, 복수의 메모리 셀들(MC)은 멀티 레벨 셀들을 포함할 수 있다. 그러나, 본 발명의 기술적 사상은 이에 한정되지 않고, 복수의 메모리 셀들(MC)은 싱글 레벨 셀들을 포함할 수도 있다.
제어 로직(12A)은 메모리 컨트롤러(20A)로부터 수신한 커맨드(CMD), 어드레스(ADDR) 및 제어 신호(CTRL)를 기초로 하여, 메모리 셀 어레이(11)에 데이터를 기입하거나 메모리 셀 어레이(11)로부터 데이터를 독출하거나, 메모리 셀 어레이(11)를 소거하기 위한 각종 제어 신호를 출력할 수 있다. 이로써, 제어 로직(12A)은 메모리 장치(10A) 내의 각종 동작을 전반적으로 제어할 수 있다.
제어 로직(12A)는 프리-프로그램 관리부(12-1A)를 포함한다. 프리-프로그램 관리부(12-1A)는 메모리 컨트롤러(20A)로부터 수신된 프로그램 커맨드가 수행될 선택 워드라인에 인접한 워드라인의 메모리 셀들에 유효한 데이터가 저장되어 있지 않은 경우에, 선택 워드라인에 라이트 될 데이터에 기초하여 선택 워드라인에 인접한 워드라인에서 프리-프로그램(pre-program) 동작을 수행하고 나서 프로그램 커맨드에 기초하여 선택 워드라인에서 프로그램 동작을 수행하기 위한 제어 신호들을 생성할 수 있다. 예로서, 프리-프로그램 관리부(12-1A)는 코어스(coarse)한 프리-프로그램 동작을 수행하기 위한 제어 신호들을 생성시킬 수 있다.
제어 로직(12A)에서 생성된 제어 신호들은 전압 생성부(13), 로우 디코더(14) 및 페이지 버퍼(15)에 제공될 수 있다. 예로서, 제어 로직(12A)은 전압 생성부(13)에 전압 제어 신호(CTRL_vol)를 제공할 수 있고, 로우 디코더(14)에 로우 어드레스(X_ADDR)를 제공할 수 있으며, 페이지 버퍼(15)에 칼럼 어드레스(Y_ADDR)를 제공할 수 있다.
전압 생성부(13)는 전압 제어 신호(CTRL_vol)를 기초로 하여 메모리 셀 어레이(11)에 대한 프리-프로그램, 프로그램, 독출 및 소거 동작을 수행하기 위한 다양한 종류의 전압들을 생성할 수 있다. 구체적으로, 전압 생성부(13)는 복수의 워드 라인들(WL)을 구동하기 위한 제1 구동 전압(VWL), 복수의 스트링 선택 라인들(SSL)을 구동하기 위한 제2 구동 전압(VSSL) 및 복수의 접지 선택 라인들(GSL)을 구동하기 위한 제3 구동 전압(VGSL)을 생성할 수 있다.
이때, 제1 구동 전압(VWL)은 프리-프로그램 전압, 프로그램 전압(또는 기입 전압), 독출 전압, 소거 전압, 패스 전압 또는 프로그램 검증 전압일 수 있다. 또한, 제2 구동 전압(VSSL)은 스트링 선택 전압, 즉, 온(on) 전압 또는 오프(off) 전압일 수 있다. 나아가, 제3 구동 전압(VGSL)은 접지 선택 전압, 즉, 온 전압 또는 오프 전압일 수 있다.
로우 디코더(14)는 복수의 워드 라인들(WL)을 통해 메모리 셀 어레이(11)에 연결되고, 제어 로직(12A)으로부터 수신한 로우 어드레스(X_ADDR)에 응답하여 복수의 워드 라인들(WL) 중 일부 워드 라인을 활성화할 수 있다. 구체적으로, 독출 동작 시에 로우 디코더(14)는 선택된 워드 라인에 독출 전압을 인가하고, 비 선택된 워드 라인에 패스 전압을 인가할 수 있다.
한편, 프리-프로그램 또는 프로그램 동작 시에 로우 디코더(14)는 선택된 워드 라인에 프로그램 전압을 인가하고, 비 선택된 워드 라인에 패스 전압을 인가할 수 있다.
그리고, 소거 동작 시에 로우 디코더(14)는 워드 라인들(WL)에 소거용 전압(예로서, 0V)을 인가하고, 스트링 선택 라인(SSL) 및 접지 선택 라인(GSL)을 각각 플로팅(Floating) 시킬 수 있다.
페이지 버퍼(15)는 복수의 비트 라인들(BL)을 통해 메모리 셀 어레이(11)에 연결될 수 있다. 구체적으로, 독출 동작 시에 페이지 버퍼(15)는 감지 증폭기(sense amplifier)로 동작하여 메모리 셀 어레이(11)에 저장된 데이터(DATA)를 출력할 수 있다. 한편, 프리-프로그램 또는 프로그램 동작 시에 페이지 버퍼(15)는 기입 드라이버(write driver)로 동작하여 메모리 셀 어레이(11)에 저장하고자 하는 데이터(DATA)를 입력시킬 수 있다.
도 4는 도 2의 메모리 시스템(100B)에 포함된 메모리 장치(10B)를 상세하게 나타내는 블록도이다.
도 4를 참조하면, 메모리 장치(10A)는 메모리 셀 어레이(11), 제어 로직(control logic; 12), 전압 생성부(13), 로우 디코더(14) 및 페이지 버퍼(15)를 포함할 수 있다. 메모리 셀 어레이(11), 전압 생성부(13), 로우 디코더(14) 및 페이지 버퍼(15)는 도 5에서 이미 설명하였으므로, 중복적인 설명은 피하기로 한다.
그리고, 제어 로직(12)은 도 5에 도시된 제어 로직(12A)에서 프리-프로그램 관리부(12-1A)가 생략된 구성을 갖는다. 제어 로직(12)은 메모리 컨트롤러(20B)로부터 수신한 커맨드(CMD), 어드레스(ADDR) 및 제어 신호(CTRL)를 기초로 하여, 메모리 셀 어레이(11)에 데이터를 기입하거나 메모리 셀 어레이(11)로부터 데이터를 독출하거나, 메모리 셀 어레이(11)를 소거하기 위한 각종 제어 신호를 출력할 수 있다. 이로써, 제어 로직(12)은 메모리 장치(10B) 내의 각종 동작을 전반적으로 제어할 수 있다.
도 5는 도 3 또는 도 4에 도시된 메모리 셀 어레이(11)의 일 예를 나타낸다.
도 5를 참조하면, 메모리 셀 어레이(11)는 플래시 메모리 셀 어레이일 수 있다. 이때, 메모리 셀 어레이(11)는 a(a는 2 이상의 정수)개의 메모리 블록들(BLK1 내지 BLKa)을 포함하고, 각 메모리 블록(BLK1 내지 BLKa)은 b(b는 2이상의 정수)개의 페이지들(PAGE1 내지 PAGEb)을 포함하며, 각 페이지들(PAGE1 내지 PAGEb)은 c(c는 2 이상의 정수)개의 섹터들(SEC1 내지 SECc)을 포함할 수 있다. 도 8에서는 도시의 편의를 위해, 메모리 블록 BLK1에 대하여만 페이지들(PAGE0 내지 PAGEb) 및 섹터들(SEC1 내지 SECc)을 도시하였으나, 다른 메모리 블록들(BLK2 내지 BLKa)도 블록 BLK1과 동일한 구조를 가질 수 있다.
도 6은 도 5에 도시된 메모리 셀 어레이에 포함된 메모리 블록(BLK1)의 일 예를 나타내는 회로도이다.
도 6을 참조하면, 제1 메모리 블록(BLK1)은 수평 구조의 낸드 플래쉬 메모리일 수 있고, 도 5에 도시된 각 메모리 블록들(BLK1 내지 BLKa)은 도 6과 같이 구현될 수 있다. 제1 메모리 블록(BLK1)은 예를 들어, 8개의 메모리 셀들이 직렬로 연결되는 d(d는 2 이상의 정수)개의 셀 스트링(STR)들을 포함할 수 있다. 각 셀 스트링(STR)은 직렬로 연결된 메모리 셀들의 양 끝에 각각 연결되는 스트링 선택 트랜지스터(SST) 및 접지 선택 트랜지스터(GST)를 포함할 수 있다. 여기에서, 하나의 셀 스트링에 포함되는 8개의 메모리 셀들 중에서 접지 선택 트랜지스터(GST)에 인접된 하나 이상의 메모리 셀을 더미 메모리 셀로 설정할 수 있다.
도 6의 실시 예에서는 접지 선택 트랜지스터(GST)에 인접된 2개의 메모리 셀들을 더미 메모리 셀(DMC)로 설정하였다. 이에 따라서, 하나의 셀 스트링에 포함되는 8개의 메모리 셀들 중에서 6개의 메모리 셀들이 메인 메모리 셀(MMC)로 설정된다. 다른 예로서, 스트링 선택 트랜지스터(SST)와 메인 메모리 셀(MMC) 사이에 하나 이상의 더미 메모리 셀(DMC)을 추가할 수도 있다.
그리고, 더미 메모리 셀(DMC)에는 더미 워드 라인(DWL)이 연결되고, 메인 메모리 셀(MMC)에는 메인 워드 라인(MWL)이 연결된다. 이와 같이, 공통 소스 라인(CSL) 쪽에서 메인 메모리 셀들에 미치는 커플링(coupling) 영향을 줄이기 위하여 더미 메모리 셀은 접지 선택 트랜지스터(GST)와 복수의 메인 메모리 셀들(MMC1 ~ MMC6) 사이에 배치한다. 즉, 메인 메모리 셀의 에지(edge)에 하나 이상의 더미 메모리 셀을 배치한다.
여기서, 셀 스트링들(STR)의 개수, 더미 워드 라인들(DWL)의 개수, 메인 워드 라인들(MWL)의 개수, 비트 라인들(BL)의 개수는 실시예에 따라 다양하게 변경될 수 있다.
도 6과 같은 구조를 갖는 낸드 플래쉬 메모리 장치는 메모리 블록 단위로 소거가 수행되고, 각 워드 라인에 대응하는 페이지 단위로 프로그램을 수행할 수 있다. 일 예에서, 메모리 셀이 싱글 레벨 셀인 경우, 각 워드 라인에 하나의 페이지가 대응될 수 있다. 다른 예에서, 메모리 셀이 멀티 레벨 셀 또는 트리플 레벨 셀인 경우, 각 워드 라인에 복수의 페이지들이 대응될 수 있다.
도 7은 도 5에 도시된 메모리 셀 어레이에 포함된 메모리 블록의 다른 예를 나타내는 회로도이다.
도 7은 도 5의 메모리 셀 어레이에 포함된 메모리 블록의 다른 예(BLK1')를 나타내는 회로도이다.
도 7을 참조하면, 제1 메모리 블록(BLK1')은 수직 구조의 낸드 플래쉬 메모리일 수 있고, 도 5에 도시된 각 메모리 블록들(BLK1 내지 BLKa)은 도 7과 같이 구현될 수 있다. 제1 메모리 블록(BLK1')은 복수의 셀 스트링들(STR11 내지 STR33), 복수의 워드 라인들(DWL1, DW2, WL1 ~ WL6), 복수의 비트 라인들(BL1 내지 BL3), 접지 선택 라인(GSL), 복수의 스트링 선택 라인들(SSL1 내지 SSL3) 및 공통 소스 라인(CSL)을 포함할 수 있다. 여기서, 셀 스트링들의 개수, 워드 라인들의 개수, 비트 라인들의 개수, 접지 선택 라인의 개수 및 스트링 선택 라인들의 개수는 실시 예에 따라 다양하게 변경될 수 있다.
비트 라인(BL1 내지 BL3)과 공통 소스 라인(CSL) 사이에는 셀 스트링(STR11 내지 STR33)이 연결된다. 각 셀 스트링(예를 들면, STR11)은 직렬로 연결된 스트링 선택 트랜지스터(SST), 복수의 메모리 셀들(DMC 및 MMC) 및 접지 선택 트랜지스터(GST)를 포함할 수 있다.
도 7의 실시 예에서는 셀 스트링에서 접지 선택 트랜지스터(GST)에 인접된 2개의 메모리 셀들을 더미 메모리 셀(DMC)로 설정하였다. 이에 따라서, 하나의 셀 스트링에 포함되는 8개의 메모리 셀들 중에서 6개의 메모리 셀들이 메인 메모리 셀(MMC)로 설정된다. 다른 예로서, 스트링 선택 트랜지스터(SST)와 메인 메모리 셀(MMC) 사이에 하나 이상의 더미 메모리 셀(DMC)을 추가할 수도 있다.
스트링 선택 트랜지스터(SST)는 스트링 선택 라인(SSL1 내지 SSL3)에 연결된다. 복수의 메모리 셀(MC1 내지 MC8)은 각각 대응하는 워드 라인(WL1 내지 WL8)에 연결된다. 접지 선택 트랜지스터(GST)는 접지 선택 라인(GSL)에 연결되어 있다. 스트링 선택 트랜지스터(SST)는 대응하는 비트 라인(BL)에 연결되고, 접지 선택 트랜지스터(GST)는 공통 소스 라인(CSL)에 연결된다.
동일 높이의 워드 라인(예를 들면, WL1)은 공통으로 연결되어 있고, 스트링 선택 라인(SSL1 내지 SSL3)은 분리되어 있다. 워드 라인 WL1에 연결되어 있고 셀 스트링(STR11, STR12, STR13)에 속해 있는 메모리 셀들을 프로그램하는 경우에는, 워드 라인 WL1과 스트링 선택 라인 SSL1이 선택된다.
도 8은 도 6 및 도 7에 도시된 메모리 블록에 포함된 메모리 셀의 일 예를 보여주는 단면도이다. 여기에서, 메모리 셀은 더미 메모리 셀(DMC) 또는 메인 메모리 셀(MMC)이 될 수 있다.
도 8을 참조하면, 메모리 셀은 채널 영역(1), 전하 저장층(2) 및 제어 게이트(CG, 3)를 포함할 수 있다. 일 예에서, 전하 저장층(2)은 도체인 플로팅 게이트로 구현될 수 있고, 이러한 구성을 가지는 메모리 셀을 플로팅 게이트 구조 셀이라고 지칭할 수 있다. 다른 예에서, 전하 저장층(2)은 부도체, 예를 들어, SiN로 구현될 수 있고, 이러한 구성을 가지는 메모리 셀을 전하 트랩형 플래시(charge trap flash, CTF) 셀이라고 지칭할 수 있다.
메모리 셀에 대한 프로그램 동작을 수행하기 위해서, 상대적으로 높은 프로그램 전압이 제어 게이트(3)에 인가되고, 채널 영역(1)에 상대적으로 낮은 전압(예를 들면, 0V)이 인가될 수 있다. 이러한 바이어스 조건에 따라, 제어 게이트(3)에서 채널 영역(1)의 방향으로 전계가 형성됨으로써, 전하들, 예를 들어, 전자들(electrons)이 화살표 P 방향으로 채널 영역(1)에서 전하 저장층(2)으로 이동될 수 있으며, 이에 따라, 메모리 셀이 프로그램될 수 있다.
그리고, 메모리 셀에 대한 소거 동작을 수행하기 위해서, 상대적으로 낮은 소거 전압(예를 들면, 0V)이 제어 게이트(3)에 인가되고, 채널 영역(1)에 상대적으로 높은 전압이 인가될 수 있다. 이러한 바이어스 조건에 따라, 채널 영역(1)에서 제어 게이트(3)의 방향으로 전계가 형성됨으로써, 전하들, 예를 들어, 전자들(electrons)이 화살표 E 방향으로 전하 저장층(2)에서 채널 영역(1)으로 이동될 수 있으며, 이에 따라, 메모리 셀이 소거될 수 있다.
도 9는 도 1에 도시된 메모리 컨트롤러(20A)의 블록 구성의 일 예를 보여준다.
도 9에 도시된 바와 같이, 메모리 컨트롤러(20A)는 프로세서(210A), RAM(Random Access Memory; 220A), 호스트 인터페이스(230), 메모리 인터페이스(240) 및 버스(250)를 구비한다.
메모리 컨트롤러(20)의 구성요소들은 버스(250)를 통하여 전기적으로 연결될 수 있다.
프로세서(210A)는 RAM(220A)에 저장된 프로그램 코드 및 데이터들을 이용하여 메모리 시스템(100A)의 동작을 전반적으로 제어한다. 예로서, 프로세서(210A)는 마이크로프로세서(micro-processor) 또는 중앙처리장치(Central Processing Unit; CPU)로 구현될 수 있다. 메모리 시스템(100A)이 초기화될 때 프로세서(210A)는 메모리 시스템(100A)에서 수행되는 동작들을 제어하는데 필요한 프로그램 코드 및 데이터들을 메모리 장치(10A)로부터 읽어내어 RAM(220A)에 로딩시킬 수 있다.
프로세서(210A)는 리드 동작 시에는 리드 커맨드 및 어드레스를 메모리 장치(10)에 제공하고, 프로그램 동작 시에는 프로그램 커맨드, 어드레스, 그리고 데이터를 제공하고, 소거 동작 시에는 소거 커맨드 및 어드레스를 제공한다. 그리고, 프로세서(210A)는 RAM(220A)에 저장된 시스템 데이터를 이용하여 호스트로부터 수신되는 논리적 어드레스를 물리적 어드레스로 변환시키는 처리를 수행할 수 있다.
호스트 인터페이스(230)는 메모리 시스템(100A)과 접속되는 호스트와의 데이터 교환 프로토콜을 구비하고, 메모리 시스템(100A)과 호스트를 상호 연결한다. 호스트 인터페이스(230)는 ATA(Advanced Technology Attachment) 인터페이스, SATA(Serial Advanced Technology Attachment) 인터페이스, PATA(Parallel Advanced Technology Attachment) 인터페이스, USB(Universal Serial Bus) 또는 SAS(Serial Attached Small Computer System) 인터페이스, SCSI(Small Computer System Interface), eMMC(embedded Multi Media Card) 인터페이스, UFS(Universal Flash Storage) 인터페이스로 구현할 수 있다. 그러나 이는 예시일 뿐 이에 제한되는 것은 아니다. 호스트 인터페이스(230)는 프로세서(210A)의 제어에 따라서 호스트로부터 커맨드, 어드레스 및 데이터를 수신하거나, 호스트로 데이터를 전송할 수 있다.
메모리 인터페이스(240)는 메모리 장치(10A)와 전기적으로 연결되어 있다. 메모리 인터페이스(240)는 프로세서(210A)의 제어에 따라서 메모리 장치(10A)로 커맨드, 어드레스 및 데이터를 전송하거나, 메모리 장치(10A)로부터 데이터를 수신할 수 있다. 메모리 인터페이스(240)는 NAND 플래시 메모리 또는 NOR 플래시 메모리를 지원하도록 구성될 수 있다. 메모리 인터페이스(240)는 복수 개의 채널들을 통하여 소프트웨어 또는 하드웨어 인터리브 동작들이 수행되도록 구성될 수도 있다.
도 10은 도 2에 도시된 메모리 컨트롤러(20B)의 블록 구성의 일 예를 보여준다
도 10에 도시된 바와 같이, 메모리 컨트롤러(20B)는 프로세서(210B), RAM(Random Access Memory; 220B), 호스트 인터페이스(230), 메모리 인터페이스(240) 및 버스(250)를 구비한다.
RAM(220B)에는 메모리 시스템(100B)에서 수행되는 동작들을 제어하는데 필요한 프로그램 코드 및 데이터들이 저장된다. 예로서, 메모리 시스템(100B)이 초기화될 때 프로세서(210B)는 메모리 시스템(100B)에서 수행되는 동작들을 제어하는데 필요한 프로그램 코드 및 데이터들을 메모리 장치(10B)로부터 읽어내어 RAM(220B)에 로딩시킬 수 있다. 특히, RAM(220B)에는 프리-프로그램 관리 동작을 수행하기 위한 프로그램 코드 (PPM; 220-1)가 저장될 수 있다.
프로세서(210B)는 RAM(220B)에 저장된 프로그램 코드 및 데이터들을 이용하여 메모리 시스템(100B)의 동작을 전반적으로 제어한다. 예로서, 프로세서(210B)는 RAM(220B)에 저장된 프로그램 코드(PPM; 220-1)를 이용하여 도 2에서 설명한 바와 같은 프리-프로그램 관리부(21)의 동작을 수행할 수 있다. 예로서, 프로세서(210B)는 RAM(220B)에 저장된 프로그램 코드(PPM; 220-1)를 이용하여 도 18 내지 도 21에 도시된 바와 같은 메모리 장치의 프로그램 관리 방법의 흐름도를 수행할 수 있다.
호스트 인터페이스(230), 메모리 인터페이스(240) 및 버스(250)는 도 9에서 이미 설명하였으므로, 중복적인 설명은 피하기로 한다.
도 11은 도 1 또는 도 2의 메모리 시스템(100A 또는 100B)에서 프리-프로그램 모드가 디스에이블 된 조건에서의 도 6 또는 도 7의 메모리 블록에 포함된 하나의 셀 스트링에서의 소거 동작 후의 최초의 프로그램 상태를 보여준다.
도 11을 참조하면, 셀 스트링은 다수의 메모리 셀들이 직렬로 연결되는 스트링 구조를 갖는다. 예로서, 공통 소스 라인(CSL)으로부터 메인 메모리 셀(MMC)에 미치는 영향을 줄이기 위하여 접지 선택 트랜지스터와 메인 메모리 셀(MMC1) 사이에 2개의 더미 메모리 셀들(DMC1, DMC2)이 배치된다. 그리고, 접지 선택 라인(GSL)에서 가까운 메모리 셀들로부터 순차적으로 프로그램이 수행된다. 도 11에서 더미 메모리 셀들(DMC1, DMC2)은 더미 워드 라인 DWL1 및 DWL2에 각각 연결된다.
이에 따라서, 메모리 시스템에서의 프리-프로그램 모드가 디스에이블 된 조건에서의 소거 동작을 수행하고 나서 최초의 프로그램 동작은 접지 선택 라인(GSL)에서 가까운 메인 메모리 셀인 MMC1에서 이루어진다. 즉, 소거 동작 후의 최초로 워드 라인 WL1에 연결된 메모리 셀 MMC1이 프로그램(P_1 PGM) 된다.
소거 동작 후에 최초로 프로그램 동작이 수행되는 워드라인 WL1에 인접한 상/하위 워드라인에 접속된 메모리 셀들은 모두 소거 상태이므로 인접 워드라인 중 최소 하나의 워드라인에 데이터가 라이트 되어 있는 다른 워드라인과는 인접 워드라인의 영향력이 상이하다. 인접 워드라인이 모두 소거 상태인 워드라인의 경우 인접 워드라인의 메모리 셀들의 높은 플로팅 게이트 포텐셜(floating gate potential)로 인하여 다른 워드라인들보다 더 많은 량의 전자(electron)를 주입시켜야만 타깃 문턱 전압에 도달할 수 있다. 이로 인하여, 소거 동작 후의 첫 번째 프로그램이 수행되는 워드라인 WL1의 메모리 셀들이 다른 워드라인들의 메모리 셀들에 비하여 인듀얼런스/리텐션(endurance/retention) 등의 신뢰성 특성이 나빠진다.
도 12는 도 1 또는 도 2의 메모리 시스템(100A 또는 100B)에서 프리-프로그램 모드가 디스에이블 된 조건에서의 프로그램 동작이 실행된 메모리 블록에서의 워드라인 별 메모리 셀들의 리텐션 특성을 보여준다. 예로서, 프리-프로그램 모드가 디스에이블 된 조건에서의 프로그램 동작을 수행하고 나서 열악한 조건에서 초기 설정된 회수만큼의 리드 동작을 수행 후의 워드라인 별 메모리 셀들의 문턱 전압 상태가 도시되어 있다.
도 12를 참조하면, 메인 워드 라인 WL1에 연결된 메모리 셀들에 대한 프로그램 상태(P1)의 문턱 전압 산포는 메인 워드 라인 WL2 ~ MWLn(여기에서, n은 3 이상의 정수)에 연결된 메모리 셀들에 대한 프로그램 상태(P1)의 문턱 전압 산포에 비하여 소거 상태(E0)의 문턱 전압 쪽으로 시프트 되었다는 사실을 알 수 있다. 이는 메인 워드 라인 WL1은 인접 페이지가 모두 소거된 상태에서 프로그램 되므로, 소거 후에 최초로 메인 워드 라인 WL1의 페이지를 프로그램하기 위해서는 가장 많은 챠지 트랩이 필요하게 된다. 이로 인하여 도 12에 도시된 바와 같이, 셀 스트링에서 메인 워드 라인 WL1의 메모리 셀들에 대한 신뢰성이 가장 취약한 상태가 된다.
도 13은 도 1 또는 도 2의 메모리 시스템(100A 또는 100B)에서 프리 프로그램 모드가 인에이블 된 조건에서의 도 6 또는 도 7의 메모리 블록에 포함된 하나의 셀 스트링에 대한 소거 동작 후의 프로그램 과정을 보여준다.
도 13의 (a)는 소거 동작이 수행된 메모리 블록에 포함된 셀 스트링에 포함된 더미 메모리 셀(DMC) 및 메인 메모리 셀(MMC)의 상태를 보여준다. 즉, 소거 동작이 수행된 후의 더미 워드 라인(DWL1, DWL2)에 연결된 더미 메모리 셀들(DMC1, DMC2) 및 메인 워드 라인(WL1 ~ WLn)의 메인 메모리 셀들(MMC1 ~ MMCn)은 모두 소거 상태(E0)의 문턱 전압을 갖는다.
도 13의 (b)는 소거 동작 후의 프리-프로그램 모드의 수행에 따라서 프로그램 커맨드에 따라서 메인 워드라인 WL1에서의 프로그램 동작을 수행하기 전에 셀 스트링의 메인 메모리 셀로부터 인접한 더미 메모리 셀(DMC2)에 워드라인 WL1에 라이트 될 데이터와 동일한 데이터가 라이트된 상태를 보여준다. 즉, 소거 동작이 수행되고 나서 메인 워드 라인(WL1 ~ WLn)에 대한 프로그램 동작을 수행하기 전에 메인 워드 라인(WL1)에 인접한 더미 워드 라인(DWL2)에 연결된 더미 메모리 셀(DMC2)이 프리-프로그램 된다(P_1').
도 13의 (c)는 프리 프로그램 모드의 수행하고 나서 셀 스트링의 첫 번째 메인 메모리 셀인 MMC1이 프로그램 된 상태(P_1 PGM)를 보여준다. 즉, 소거 동작을 수행하고 나서 메인 워드 라인(WL1)에 인접한 더미 워드 라인(DWL2)에 연결된 더미 메모리 셀(DMC2)을 프리-프로그램 한 후에 메인 워드 라인(WL1)에 연결된 메인 메모리 셀(MMC1)을 프로그램 한 상태를 보여준다.
도 14는 도 1 또는 도 2의 메모리 시스템(100A 또는 100B)에서 프리 프로그램 모드가 인에이블 된 조건에서의 프로그램 동작이 실행된 메모리 블록에서의 워드라인 별 메모리 셀들의 리텐션 특성을 보여준다. 세부적으로, 프리-프로그램 모드가 인에이블 된 조건에서의 프로그램 동작을 수행하고 나서 열악한 조건에서 초기 설정된 회수만큼의 리드 동작을 수행 후의 워드라인 별 메모리 셀들의 문턱 전압 상태가 도시되어 있다.
도 14를 참조하면, 프리 프로그램 동작에 의하여 프로그램 된 더미 워드 라인 DWL2에 연결된 메모리 셀들에 대한 프로그램 상태(P1)의 문턱 전압 산포는 메인 워드 라인 WL1 ~ WLn(여기에서, n은 3 이상의 정수)에 연결된 메모리 셀들에 대한 프로그램 상태(P1)의 문턱 전압 산포에 비하여 소거 상태(E0)의 문턱 전압 쪽으로 시프트 되었다는 사실을 알 수 있다. 이는 더미 워드 라인 DWL2는 인접 페이지가 모두 소거된 상태에서 프로그램 되므로, 소거 후에 최초로 더미 워드 라인 DWL2의 페이지를 프로그램하기 위해서는 가장 많은 챠지 트랩이 필요하게 된다. 이로 인하여 도 14에 도시된 바와 같이, 셀 스트링에서 더미 워드 라인 DWL2의 메모리 셀들에 대한 신뢰성이 가장 취약한 상태가 되었으나, 첫 번째 메인 워드 라인 WL1의 메모리 셀들에 대한 신뢰성은 향상된다.
즉, 소거 후의 프리 프로그램 동작에 의하여 더미 워드 라인 DWL2에 연결된 메모리 셀들에 대한 프로그램 동작에 의하여 메인 워드 라인 WL1 ~ WLn에 연결된 메모리 셀들에 대한 신뢰성은 향상된다.
도 15 내지 도 17을 참조하여 메모리 시스템에서의 소거된 메모리 블록에서의 첫 번째 프로그램 커맨드에 따라서 워드라인에서 프로그램 되는 과정을 설명하기로 한다.
도 15 내지 도 17에서는 설명의 편의를 위하여 워드라인 별로 4개의 메모리 셀들에 대한 프로그램 상태를 표시하였다. 물론, 본 발명이 적용되는 메모리 시스템에서는 워드라인 별로 4개 이상의 메모리 셀들이 접속되는 구조를 가질 수 있다.
그리고, 도 16 및 도 17에서는 원-스텝 프로그램(one-step program) 방식을 적용하여 하나의 워드라인에 복수의 페이지들을 프로그램 하는 사례를 보여준다. 본 발명의 다른 실시 예에서는 재프로그래밍(reprogramming) 동작에 따른 멀티-스텝 프로그램(multi-step program) 방식을 적용하여 프로그램 동작을 수행할 수도 있다.
도 15는 본 발명의 실시 예에 따른 메모리 시스템에서의 소거된 메모리 블록에서의 첫 번째 프로그램 커맨드에 따라서 선택 워드라인에 라이트 할 데이터가 단일 페이지의 데이터인 경우에 프리-프로그램 동작 과정의 일 예를 보여주는 도면이다.
도 15의 (a)는 소거 동작이 수행된 메모리 블록의 워드라인들 WLn-1, WLn, WLn+1 들에 접속된 메모리 셀들의 프로그램 상태를 보여준다. 소거 동작이 수행되었으므로, 워드라인들 WLn-1, WLn, WLn+1 들에 접속된 모든 메모리 셀들은 소거 상태(E)를 갖는다.
예로서, 소거 동작 후의 메모리 블록의 워드라인 WLn에 데이터 '0110'를 라이트하는 첫 번째 프로그램 커맨드가 발생된 경우에, 첫 번째 프로그램 커맨드를 수행하기 전에 워드라인 WLn에 인접한 하위 워드라인 WLn-1에 데이터 '0110' 를 라이트하는 프리-프로그램 동작을 수행한다. 이와 같은 프리-프로그램 동작을 수행한 후의 메모리 블록의 워드라인들 WLn-1, WLn, WLn+1 들에 접속된 메모리 셀들의 프로그램 상태는 도 15의 (b)와 같게 된다. 참고적으로, 도 15의 (b)에서 'P'는 데이터 '0'으로 프로그램 된 상태를 나타내고, 'E'는 소거 상태를 나타낸다. 예로서, 소거 상태는 데이터 '1'을 나타낸다.
프리-프로그램 동작을 수행하고 나서 첫 번째 프로그램 커맨드에 따라서 메모리 블록의 워드라인 WLn에 데이터 '0110'를 라이트하는 프로그램 동작을 수행한다. 이와 같은 프로그램 동작을 수행한 후의 메모리 블록의 워드라인들 WLn-1, WLn, WLn+1 들에 접속된 메모리 셀들의 프로그램 상태는 도 15의 (c)와 같게 된다.
도 15의 (c)를 참조하면, 프리-프로그램 동작에 의하여 워드라인 WLn에 라이트 될 데이터와 동일한 데이터를 워드라인 WLn-1에 라이트하고 나서 워드라인 WLn에 대한 프로그램 동작을 수행하기 때문에, 워드라인 WLn의 메모리 셀들에 대한 신뢰성이 향상된다.
예로서, 워드라인 WLn-1은 더미 워드라인이고, WLn은 더미 워드라인에 인접된 메인 워드라인인 WL1이 될 수 있다.
도 16은 본 발명의 실시 예에 따른 메모리 시스템에서의 소거된 메모리 블록에서의 첫 번째 프로그램 커맨드에 따라서 선택 워드라인에 라이트 할 데이터가 복수 페이지의 데이터인 경우에 프로그램 동작 수행 과정의 일 예를 보여주는 도면이다.
도 16의 (a)는 소거 동작이 수행된 메모리 블록의 워드라인들 WLn-1, WLn, WLn+1 들에 접속된 메모리 셀들의 프로그램 상태를 보여준다. 소거 동작이 수행되었으므로, 워드라인들 WLn-1, WLn, WLn+1 들에 접속된 모든 메모리 셀들은 소거 상태(E)를 갖는다.
예로서, 소거 동작 후의 메모리 블록의 워드라인 WLn에 2개 페이지의 데이터 '0101' 및 '0110'를 라이트하는 첫 번째 프로그램 커맨드가 발생된 경우에, 첫 번째 프로그램 커맨드를 수행하기 전에 워드라인 WLn에 인접한 하위 워드라인 WLn-1에 워드라인 WLn에 라이트할 데이터와 같은 2개 페이지의 데이터 '0101' 및 '0110'를 라이트하는 프리-프로그램 동작을 수행한다. 이와 같은 프리-프로그램 동작을 수행한 후의 메모리 블록의 워드라인들 WLn-1, WLn, WLn+1 들에 접속된 메모리 셀들의 프로그램 상태는 도 16의 (b)와 같게 된다. 참고적으로, 도 16의 (b)에서 'E'는 소거 상태의 데이터 '11'를 나타내고, 'P1'은 데이터 '01'을 프로그램 한 상태를 나타내고, 'P2'는 데이터 '00'을 프로그램 한 상태를 나타내고, 'P3'는 데이터 '10'를 프로그램한 상태를 나타낸다.
프리-프로그램 동작을 수행하고 나서 첫 번째 프로그램 커맨드에 따라서 메모리 블록의 워드라인 WLn에 2개 페이지의 데이터 '0101' 및 '0110'를 라이트하는 프로그램 동작을 수행한다. 이와 같은 프로그램 동작을 수행한 후의 메모리 블록의 워드라인들 WLn-1, WLn, WLn+1 들에 접속된 메모리 셀들의 프로그램 상태는 도 16의 (c)와 같게 된다. 예로서, 워드라인 WLn-1은 더미 워드라인이고, WLn은 더미 워드라인에 인접된 메인 워드라인인 WL1이 될 수 있다.
도 16을 참조하면, 워드라인 WLn-1에서 2개 페이지에 대한 프리-프로그램을 수행하게 되는데, 이로 인하여 프리-프로그램 동작을 수행하는데 비교적 많은 시간이 소요된다. 이를 해결하기 위하여 소거된 메모리 블록의 첫 번째 프로그램 커맨드에 따라서 선택 워드라인 WLn에 라이트 할 복수 페이지의 데이터를 조합한 단일 페이지의 데이터를 워드라인 WLn-1에 프리-프로그램하는 방안을 도 17에 제시하였다.
도 17은 본 발명의 실시 예에 따른 메모리 시스템에서의 소거된 메모리 블록에서의 첫 번째 프로그램 커맨드에 따라서 선택 워드라인에 라이트 할 데이터가 복수 페이지의 데이터인 경우에 프로그램 동작 수행 과정의 다른 예를 보여주는 도면이다.
도 17의 (a)는 소거 동작이 수행된 메모리 블록의 워드라인들 WLn-1, WLn, WLn+1 들에 접속된 메모리 셀들의 프로그램 상태를 보여준다. 소거 동작이 수행되었으므로, 워드라인들 WLn-1, WLn, WLn+1 들에 접속된 모든 메모리 셀들은 소거 상태(E)를 갖는다.
예로서, 소거 동작 후의 메모리 블록의 워드라인 WLn에 2개 페이지의 데이터 '0101' 및 '0110'를 라이트하는 첫 번째 프로그램 커맨드가 발생된 경우에, 워드라인 WLn에 라이트할 2개 페이지 데이터를 조합하여 단일 페이지의 데이터를 생성한다. 예로서, 멀티 레벨 셀에서의 4개의 프로그램 상태들을 2개의 프로그램 상태들로 분류하여 단일 페이지의 데이터를 생성할 수 있다.
예로서, 멀티 레벨 셀의 E(11) 상태 및 P1(01) 상태를 싱글 레벨 셀의 E(1) 상태로 분류하고, 멀티 레벨 셀의 P2(00) 상태 및 P3(10) 상태를 싱글 레벨 셀의 P(0) 상태로 분류하는 방식으로 단일 페이지의 데이터를 생성할 수 있다. 이와 같은 방식을 적용하면, 2개 페이지의 데이터인 상위 페이지 데이터 '0101' 및 하위 페이지 데이터 '0110'로부터 단일 페이지의 데이터 '0110'를 생성할 수 있다. 물론 다른 다양한 방식으로 복수 페이지의 데이터를 조합하여 단일 페이지의 데이터를 생성할 수도 있다.
첫 번째 프로그램 커맨드를 수행하기 전에 위와 같이 생성된 단일 페이지의 데이터 '0110'를 워드라인 WLn에 인접한 하위 워드라인 WLn-1에 라이트하는 프리-프로그램 동작을 수행한다. 프리-프로그램 동작을 수행한 후의 메모리 블록의 워드라인들 WLn-1, WLn, WLn+1 들에 접속된 메모리 셀들의 프로그램 상태는 도 17의 (b)와 같게 된다.
프리-프로그램 동작을 수행하고 나서 첫 번째 프로그램 커맨드에 따라서 메모리 블록의 워드라인 WLn에 2개 페이지의 데이터 '0101' 및 '0110'를 라이트하는 프로그램 동작을 수행한다. 이와 같은 프로그램 동작을 수행한 후의 메모리 블록의 워드라인들 WLn-1, WLn, WLn+1 들에 접속된 메모리 셀들의 프로그램 상태는 도 17의 (c)와 같게 된다. 참고적으로, 도 17의 (c)에서 'E'는 데이터 '11'를 나타내고, 'P1'은 데이터 '01'을 프로그램 한 상태를 나타내고, 'P2'는 데이터 '00'을 프로그램 한 상태를 나타내고, 'P3'는 데이터 '10'를 프로그램한 상태를 나타낸다.
도 17에서는 프로그램 커맨드에서 지정하는 선택 워드라인에 라이트 할 데이터가 2개 페이지의 데이터인 경우 선택 워드라인에 인접한 워드라인에 라이트할 데이터를 1개 페이지로 생성하는 사례를 보여준다. 본 발명의 다른 실시 예에서는 선택 워드라인에 라이트 할 데이터가 3개 페이지 이상의 데이터인 경우에도 선택 워드라인에 인접한 워드라인에 라이트할 데이터를 위와 같은 방식을 적용하여 1개 페이지로 생성할 수 있다.
다음으로, 도 1 및 도 2에 도시된 메모리 시스템(100A 또는 100B)을 포함하는 다양한 형태의 메모리 시스템에서 수행되는 메모리 장치의 에지 워드라인 관리 동작에 대하여 도 18 내지 도 21의 흐름도를 참조하여 설명하기로 한다.
도 18은 본 발명에 따른 메모리 장치의 프로그램 방법의 흐름도의 일 예를 보여준다.
우선, 호스트로부터의 요구에 기초하여 메모리 시스템은 메모리 장치의 선택 워드라인 WLn에서 수행될 프로그램 커맨드 처리를 위한 준비를 한다(S110).
다음으로, 메모리 시스템은 프로그램 커맨드가 수행될 메모리 장치의 선택 워드라인 WLn에 인접한 하위 워드라인 WLn-1에 유효한 데이터가 저장되어 있는지를 판단한다(S120).
오퍼레이션 S120의 판단 결과 프로그램 커맨드가 수행될 메모리 장치의 선택 워드라인 WLn에 인접한 하위 어드레스 WLn-1에 유효한 데이터가 저장되어 있지 않은 경우에, 메모리 시스템은 워드라인 WLn-1에 데이터를 라이트하는 프리-프로그램 동작을 수행한다(S130). 예로서, 워드라인 WLn-1에 라이트되는 데이터는 프로그램 커맨드에서 지정하는 선택 워드라인 WLn에 라이트 될 데이터와 동일한 데이터로 결정할 수 있다. 다른 예로서, 프로그램 커맨드에서 지정하는 선택 워드라인 WLn에 라이트 될 데이터가 복수 페이지의 데이터인 경우에, 선택 워드라인 WLn에 라이트 될 복수 페이지의 데이터를 조합한 단일 페이지의 데이터를 워드라인 WLn-1에 라이트되는 데이터로 결정할 수 있다. 예로서, 코어스(coarse)한 프로그램 방식을 적용하여 프리-프로그램 동작을 수행할 수 있다. 예로서, 한번의 프로그램 펄스를 이용하여 프리-프로그램 동작을 수행할 수 있다. 예로서, 프리-프로그램 동작에서는 프로그램 검증 동작을 수행하지 않을 수도 있다.
오퍼레이션 S120의 판단 결과 프로그램 커맨드가 수행될 메모리 장치의 선택 워드라인 WLn에 인접한 하위 어드레스 WLn-1에 유효한 데이터가 저장되어 있거나 또는 오퍼레이션 S130에 따른 프리-프로그램 동작을 마친 후에 메모리 시스템은 프로그램 커맨드에 따라서 선택 워드라인 WLn에 데이터를 라이트하는 프로그램 동작을 수행한다(S140).
도 19는 본 발명에 따른 메모리 장치의 프로그램 방법의 흐름도의 다른 예를 보여준다.
우선, 호스트로부터의 요구에 기초하여 메모리 시스템은 메모리 장치의 선택 워드라인 WLn에서 수행될 프로그램 커맨드 처리를 위한 준비를 한다(S210).
다음으로, 메모리 시스템은 프로그램 커맨드가 수행될 메모리 장치의 선택 워드라인 WLn이 워드라인 WL1과 동일한지 판단한다(S220). 여기에서, 워드라인 WL1은 메모리 블록이 소거된 후에 프로그램 커맨드에 따라서 첫 번째로 프로그램 되는 워드라인을 의미한다.
오퍼레이션 S220의 판단 결과 프로그램 커맨드가 수행될 메모리 장치의 워드라인이 WL1인 경우에, 메모리 시스템은 워드라인 WLn-1에 데이터를 라이트하는 프리-프로그램 동작을 수행한다(S230). 예로서, 프리-프로그램 동작은 도 19의 오퍼레이션 S130과 동일하게 수행할 수 있다.
오퍼레이션 S220의 판단 결과 프로그램 커맨드가 수행될 메모리 장치의 선택 워드라인이 WL1이 아닌 경우 또는 오퍼레이션 S230에 따른 프리-프로그램 동작을 마친 후에 메모리 시스템은 프로그램 커맨드에 따라서 선택 워드라인 WLn에 데이터를 라이트하는 프로그램 동작을 수행한다(S240).
도 20은 본 발명에 따른 메모리 장치의 프로그램 방법의 흐름도의 또 다른 예를 보여준다.
우선, 호스트로부터의 요구에 기초하여 메모리 시스템은 메모리 장치의 선택 워드라인 WLn에서 수행될 프로그램 커맨드 처리를 위한 준비를 한다(S310).
다음으로, 메모리 시스템은 프리 프로그램 모드가 인에이블 되어 있는지를 판단한다(S320). 예로서, 메모리 블록 별 프로그램/소거 사이클 회수가 초기 설정된 임계 값을 초과하는 경우에 해당 메모리 블록에 대하여 프리 프로그램 모드 인에이블 상태로 설정할 수 있다. 다른 예로서, 테스트 공정 또는 사용자 환경에서 프리 프로그램 모드를 인에이블 상태로 설정할 수도 있다.
오퍼레이션 S320의 판단 결과 프리 프로그램 모드가 인에이블 되어 있는 경우에, 메모리 시스템은 프로그램 커맨드가 수행될 메모리 장치의 워드라인 WLn에 인접한 하위 워드라인 WLn-1에 유효한 데이터가 저장되어 있는지를 판단한다(S330).
오퍼레이션 S330의 판단 결과 프로그램 커맨드가 수행될 메모리 장치의 워드라인 WLn에 인접한 하위 어드레스 WLn-1에 유효한 데이터가 저장되어 있지 않은 경우에, 메모리 시스템은 워드라인 WLn-1에 데이터를 라이트하는 프리-프로그램 동작을 수행한다(S340). 예로서, 프리-프로그램 동작은 도 19의 오퍼레이션 S130과 동일하게 수행할 수 있다.
오퍼레이션 S320의 판단 결과 프리 프로그램 모드가 디스에이블되어 있거나, 오퍼레이션 S330의 판단 결과 프로그램 커맨드가 수행될 메모리 장치의 워드라인 WLn에 인접한 하위 어드레스 WLn-1에 유효한 데이터가 저장되어 있는 경우, 또는 오퍼레이션 S130에 따른 프리-프로그램 동작을 마친 후에 메모리 시스템은 프로그램 커맨드에 따라서 선택 워드라인 WLn에 데이터를 라이트하는 프로그램 동작을 수행한다(S350).
도 21은 본 발명에 따른 메모리 장치의 프로그램 방법의 흐름도의 또 다른 예를 보여준다.
우선, 호스트로부터의 요구에 기초하여 메모리 시스템은 메모리 장치의 선택 워드라인 WLn에서 수행될 프로그램 커맨드 처리를 위한 준비를 한다(S410).
다음으로, 메모리 시스템은 프리 프로그램 모드가 인에이블 되어 있는지를 판단한다(S420). 예로서, 메모리 블록 별 프로그램/소거 사이클 회수가 초기 설정된 임계 값을 초과하는 경우에 해당 메모리 블록에 대하여 프리 프로그램 모드 인에이블 상태로 설정할 수 있다. 다른 예로서, 테스트 공정 또는 사용자 환경에서 프리 프로그램 모드를 인에이블 상태로 설정할 수도 있다.
오퍼레이션 S320의 판단 결과 프리 프로그램 모드가 인에이블 되어 있는 경우에, 메모리 시스템은 프로그램 커맨드가 수행될 메모리 장치의 워드라인 WLn이 워드라인 WL1과 동일한지 판단한다(S430). 여기에서, 워드라인 WL1은 메모리 블록이 소거된 후에 프로그램 커맨드에 따라서 첫 번째로 프로그램 되는 워드라인을 의미한다.
오퍼레이션 S430의 판단 결과 프로그램 커맨드가 수행될 메모리 장치의 워드라인이 WL1인 경우에, 메모리 시스템은 워드라인 WLn-1에 데이터를 라이트하는 프리-프로그램 동작을 수행한다(S440). 예로서, 프리-프로그램 동작은 도 19의 오퍼레이션 S130과 동일하게 수행할 수 있다.
오퍼레이션 S420의 판단 결과 프리 프로그램 모드가 디스에이블되어 있거나, 오퍼레이션 S430의 판단 결과 프로그램 커맨드가 수행될 메모리 장치의 워드라인이 WL1이 아닌 경우 또는 오퍼레이션 S440에 따른 프리-프로그램 동작을 마친 후에 메모리 시스템은 프로그램 커맨드에 따라서 선택 워드라인 WLn에 데이터를 라이트하는 프로그램 동작을 수행한다(S450).
도 22는 본 발명의 실시예들에 따른 메모리 시스템을 메모리 카드 시스템(1000)에 적용한 예를 나타내는 블록도이다.
도 22를 참조하면, 메모리 카드 시스템(1000)은 호스트(1100) 및 메모리 카드(1200)를 포함할 수 있다. 호스트(1100)는 호스트 컨트롤러(1110) 및 호스트 접속부(1120)를 포함할 수 있다. 메모리 카드(1200)는 카드 접속부(1210), 메모리 컨트롤러(1220) 및 메모리 장치(1230)를 포함할 수 있다. 메모리 컨트롤러(1220) 및 메모리 장치(1230)는 도 1 또는 도 2에 도시된 메모리 컨트롤러(20A 또는 20B) 및 메모리 장치(10A 또는 10B)가 적용될 수 있다.
호스트(1100)는 메모리 카드(1200)에 데이터를 기입하거나, 메모리 카드(1200)에 저장된 데이터를 독출할 수 있다. 호스트 컨트롤러(1110)는 커맨드(CMD), 호스트(1100) 내의 클럭 발생기(미도시)에서 발생한 클럭 신호(CLK) 및 데이터(DATA)를 호스트 접속부(1120)를 통해 메모리 카드(1200)로 전송할 수 있다.
메모리 컨트롤러(1220)는 카드 접속부(1210)를 통해 수신된 커맨드에 응답하여, 메모리 컨트롤러(1220) 내에 있는 클럭 발생기(미도시)에서 발생한 클럭 신호에 동기하여 데이터를 메모리 장치(1230)에 저장할 수 있다. 메모리 장치(1230)는 호스트(1100)로부터 전송된 데이터를 저장할 수 있다.
메모리 카드(1230)는 컴팩트 플래시 카드(CFC: Compact Flash Card), 마이크로 드라이브(Microdrive), 스마트 미디어 카드(SMC: Smart Media Card) 멀티미디어 카드(MMC: Multimedia Card), 보안 디지털 카드(SDC: Security Digital Card), 메모리 스틱(Memory Stick), 및 USB 플래시 메모리 드라이버 등으로 구현될 수 있다.
도 23은 본 발명의 실시 예들에 따른 메모리 시스템을 포함하는 컴퓨팅 시스템(2000)을 나타내는 블록도이다.
도 23을 참조하면, 컴퓨팅 시스템(2000)은 메모리 시스템(2100), 프로세서(2200), RAM(2300), 입출력 장치(2400) 및 전원 장치(2500)를 포함할 수 있다.
메모리 시스템(2100)은 메모리 장치(2110) 및 메모리 컨트롤러(2120)를 포함한다. 메모리 장치(2110) 및 메모리 컨트롤러(2120)는 도 1 또는 도 2에 도시된 메모리 장치(10A 또는 10B) 및 메모리 컨트롤러(20A 또는 20B)가 적용될 수 있다.
한편, 도 23에는 도시되지 않았지만, 컴퓨팅 시스템(2000)은 비디오 카드, 사운드 카드, 메모리 카드, USB 장치 등과 통신하거나, 또는 다른 전자 기기들과 통신할 수 있는 포트(port)들을 더 포함할 수 있다. 컴퓨팅 시스템(2000)은 퍼스널 컴퓨터로 구현되거나, 노트북 컴퓨터, 휴대폰, PDA(personal digital assistant) 및 카메라 등과 같은 휴대용 전자 장치로 구현될 수 있다.
프로세서(2200)는 특정 계산들 또는 태스크(task)들을 수행할 수 있다. 실시예에 따라, 프로세서(2200)는 마이크로프로세서(micro-processor), 중앙 처리 장치(Central Processing Unit; CPU)일수 있다. 프로세서(2200)는 어드레스 버스(address bus), 제어 버스(control bus) 및 데이터 버스(data bus) 등과 같은 버스(2600)를 통하여 RAM(2300), 입출력 장치(2400) 및 메모리 시스템(2100)과 통신을 수행할 수 있다. 실시 예에 따라, 프로세서(2200)는 주변 구성요소 상호연결(Peripheral Component Interconnect; PCI) 버스와 같은 확장 버스에도 연결될 수 있다.
RAM(2300)은 컴퓨팅 시스템(2000)의 동작에 필요한 데이터를 저장할 수 있다. 예를 들어, RAM(2300)은 디램(DRAM), 모바일 디램, 에스램(SRAM), 피램(PRAM), 에프램(FRAM), 알램(RRAM) 및/또는 엠램(MRAM)으로 구현될 수 있다.
입출력 장치(2400)는 키보드, 키패드, 마우스 등과 같은 입력 수단 및 프린터, 디스플레이 등과 같은 출력 수단을 포함할 수 있다. 전원 장치(2500)는 컴퓨팅 시스템(2000)의 동작에 필요한 동작 전압을 공급할 수 있다.
도 24는 본 발명의 실시 예들에 따른 메모리 시스템을 SSD 시스템(3000)에 적용한 예를 나타내는 블록도이다.
도 24를 참조하면, SSD 시스템(3000)은 호스트(3100) 및 SSD(3200)를 포함할 수 있다. SSD(3200)는 신호 커넥터(signal connector)를 통해 호스트(3100)와 신호를 주고 받으며, 전원 커넥터(power connector)를 통해 전원을 입력 받는다. SSD(3200)는 메모리 컨트롤러(3210), 보조 전원 장치(3220) 및 복수의 메모리 장치들(3230, 3240, 3250)을 포함할 수 있다. 메모리 컨트롤러(3210) 및 복수의 메모리 장치들(3230, 3240, 3250)은 도 1 또는 도 2에 도시된 메모리 컨트롤러(20A 또는 20B) 및 메모리 장치(10A 또는 10B)가 적용될 수 있다.
본 발명은 방법, 장치, 시스템 등으로서 실행될 수 있다. 소프트웨어로 실행될 때, 본 발명의 구성 수단들은 필연적으로 필요한 작업을 실행하는 코드 세그먼트들이다. 프로그램 또는 코드 세그먼트들은 프로세서 판독 가능 매체에 저장될 수 있다. 프로세서 판독 가능 매체는 정보를 저장할 수 있는 어떠한 매체도 포함한다. 프로세서 판독 가능 매체의 예로는 전자 회로, 반도체 메모리 소자, ROM, 플래시 메모리, 이레이져블 ROM(EROM; Erasable ROM), 플로피 디스크, 광 디스크, 하드디스크 등이 있다.
본 발명은 도면에 도시된 실시 예를 참고로 설명되었으나 이는 예시적인 것에 불과하며, 본 기술 분야의 통상의 지식을 가진 자라면 이로부터 다양한 변형 및 균등한 다른 실시 예가 가능하다는 점을 이해할 것이다. 따라서, 본 발명의 진정한 기술적 보호 범위는 첨부된 특허청구범위의 기술적 사상에 의하여 정해져야 할 것이다.
100A, 100B: 메모리 시스템
10A, 10B: 메모리 장치
20A, 20B: 메모리 컨트롤러
11: 메모리 셀 어레이
12-1A, 21: 프리-프로그램 관리부
12, 12A: 제어 로직 13: 전압 생성부
14: 로우 디코더 15: 페이지 버퍼
210A, 210B: 프로세서 220A, 220B: RAM
220-1: 포스트 프로그램 관리용 프로그램 코드(PPM)
230: 호스트 인터페이스 240: 메모리 인터페이스
250: 버스

Claims (10)

  1. 프로그램 커맨드가 수행될 선택 워드라인에 인접한 워드라인의 메모리 셀들에 유효한 데이터가 저장되어 있는지를 판단하는 단계;
    상기 선택 워드라인에 인접한 워드라인의 메모리 셀들에 유효한 데이터가 저장되어 있지 않은 경우에, 상기 선택 워드라인에 라이트 될 데이터를 확인하여, 상기 라이트 될 데이터에 기초하여 상기 선택 워드라인에 인접한 워드라인에서 프리-프로그램 동작을 수행하는 단계; 및
    상기 프리-프로그램 동작을 상기 선택 워드라인에 인접한 워드라인에 수행하고 나서 상기 프로그램 커맨드에 기초하여 상기 선택 워드라인에서 프로그램 동작을 수행하는 단계를 포함함을 특징으로 하는 메모리 장치의 프로그램 방법.
  2. 제1항에 있어서, 상기 프로그램 커맨드가 메모리 장치의 소거 처리된 메모리 블록에서의 첫 번째 프로그램 동작을 수행하기 위한 프로그램 커맨드인 경우에 상기 선택 워드라인에 인접한 워드라인의 메모리 셀들에 유효한 데이터가 저장되어 있지 않은 것으로 판단하는 것을 특징으로 하는 메모리 장치의 프로그램 방법.
  3. 제1항에 있어서, 상기 프로그램 커맨드가 수행될 선택 워드라인이 메모리 블록에 포함된 셀 스트링의 메인 메모리 셀과 접지 선택 트랜지스터 사이에 하나 이상의 더미 메모리 셀이 배치된 구조에서 상기 더미 메모리 셀에 인접한 메인 메모리 셀이 접속된 워드라인인 경우에 상기 선택 워드라인에 인접한 워드라인의 메모리 셀들에 유효한 데이터가 저장되어 있지 않은 것으로 판단하는 것을 특징으로 하는 메모리 장치의 프로그램 방법.
  4. 제3항에 있어서, 상기 셀 스트링의 메인 메모리 셀에 인접한 더미 메모리 셀이 접속된 워드라인에서 프리-프로그램 동작을 수행하는 것을 특징으로 하는 메모리 장치의 프로그램 방법.
  5. 제1항에 있어서, 상기 프리-프로그램 동작은 상기 선택 워드라인에 라이트 될 데이터와 동일한 데이터를 상기 선택 워드라인에 인접한 워드라인에 라이트하는 동작을 수행하는 것을 특징으로 하는 메모리 장치의 프로그램 방법.
  6. 제1항에 있어서, 상기 프리-프로그램 동작은 한번의 프로그램 펄스를 이용하여 수행되는 것을 특징으로 하는 메모리 장치의 프로그램 방법.
  7. 제1항에 있어서, 상기 프리-프로그램 동작에 따라서 상기 선택 워드라인에 인접한 워드라인에 라이트 되는 데이터는 상기 선택 워드라인에 라이트 될 2 페이지 이상의 데이터를 조합하여 생성한 단일 페이지 데이터로 결정하는 것을 특징으로 하는 메모리 장치의 프로그램 방법.
  8. 복수개의 워드라인들 및 비트 라인들에 접속되는 메모리 셀 어레이를 포함하는 비휘발성 메모리 장치; 및
    호스트로부터 수신되는 프로그램 커맨드에 기초하여 상기 비휘발성 메모리 장치의 동작을 제어하는 메모리 컨트롤러를 포함하고,
    상기 프로그램 커맨드가 수행될 상기 비휘발성 메모리 장치의 선택 워드라인에 인접한 워드라인의 메모리 셀들에 유효한 데이터가 저장되어 있지 않은 경우에, 상기 선택 워드라인에 라이트 될 데이터를 확인하여, 상기 라이트 될 데이터에 기초하여 상기 선택 워드라인에 인접한 워드라인에서 프리-프로그램 동작을 수행하고 나서, 상기 프로그램 커맨드에 따른 프로그램 동작을 상기 선택 워드라인에 수행하는 것을 특징으로 하는 메모리 시스템.
  9. 제8항에 있어서, 상기 프로그램 커맨드가 상기 비휘발성 메모리 장치의 소거 처리된 메모리 블록에서의 첫 번째 프로그램 동작을 수행하기 위한 프로그램 커맨드인 경우에 상기 선택 워드라인에 인접한 더미 워드라인에서 상기 프리-프로그램 동작을 수행하는 것을 특징으로 하는 메모리 시스템.
  10. 제9항에 있어서, 상기 더미 워드라인에 라이트 되는 데이터는 상기 선택 워드라인에 라이트 될 데이터와 동일한 것을 특징으로 하는 메모리 시스템.
KR1020160023629A 2016-02-26 2016-02-26 메모리 장치의 프로그램 방법 및 이를 적용하는 메모리 시스템 KR102444238B1 (ko)

Priority Applications (3)

Application Number Priority Date Filing Date Title
KR1020160023629A KR102444238B1 (ko) 2016-02-26 2016-02-26 메모리 장치의 프로그램 방법 및 이를 적용하는 메모리 시스템
US15/425,315 US10163513B2 (en) 2016-02-26 2017-02-06 Program method of memory device and memory system using the same
CN201710109311.5A CN107369470B (zh) 2016-02-26 2017-02-27 存储设备的编程方法和使用其的存储系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020160023629A KR102444238B1 (ko) 2016-02-26 2016-02-26 메모리 장치의 프로그램 방법 및 이를 적용하는 메모리 시스템

Publications (2)

Publication Number Publication Date
KR20170101000A KR20170101000A (ko) 2017-09-05
KR102444238B1 true KR102444238B1 (ko) 2022-09-16

Family

ID=59679770

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020160023629A KR102444238B1 (ko) 2016-02-26 2016-02-26 메모리 장치의 프로그램 방법 및 이를 적용하는 메모리 시스템

Country Status (3)

Country Link
US (1) US10163513B2 (ko)
KR (1) KR102444238B1 (ko)
CN (1) CN107369470B (ko)

Families Citing this family (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10522229B2 (en) 2017-08-30 2019-12-31 Micron Technology, Inc. Secure erase for data corruption
KR102591011B1 (ko) * 2018-02-26 2023-10-19 에스케이하이닉스 주식회사 메모리 시스템 및 메모리 시스템의 동작 방법
US11205485B2 (en) 2018-03-30 2021-12-21 Samsung Electronics Co., Ltd. Three-dimensional NAND flash memory device having improved data reliability by varying program intervals, and method of operating the same
KR102434986B1 (ko) 2018-03-30 2022-08-22 삼성전자주식회사 데이터 신뢰성이 개선된 메모리 장치 및 이의 동작방법
KR20200021815A (ko) * 2018-08-21 2020-03-02 에스케이하이닉스 주식회사 메모리 컨트롤러, 이를 포함하는 메모리 시스템 및 이의 동작 방법
CN109240619A (zh) * 2018-09-05 2019-01-18 山东大学 提高三维nand闪存存储器可靠性的数据写入方法
KR102643672B1 (ko) * 2018-12-19 2024-03-06 에스케이하이닉스 주식회사 반도체 장치 및 그 동작 방법
KR20200136747A (ko) 2019-05-28 2020-12-08 에스케이하이닉스 주식회사 메모리 장치, 메모리 장치를 포함하는 메모리 시스템 및 메모리 시스템의 동작 방법
KR102689985B1 (ko) * 2019-06-13 2024-08-01 에스케이하이닉스 주식회사 메모리 시스템, 메모리 컨트롤러 및 그 저장 방법
KR20200144389A (ko) * 2019-06-18 2020-12-29 삼성전자주식회사 스토리지 장치 및 그것의 액세스 방법
US20220076752A1 (en) * 2020-09-09 2022-03-10 Macronix International Co., Ltd. Memory device and operation method therefor
US12046305B2 (en) * 2022-02-04 2024-07-23 Sandisk Technologies Llc Pre-position dummy word line to facilitate write erase capability of memory apparatus
US20240103742A1 (en) * 2022-09-28 2024-03-28 Sandisk Technologies Llc Non-volatile memory with programmable resistance non-data word line
TWI826161B (zh) * 2022-12-02 2023-12-11 群聯電子股份有限公司 記憶體管理方法、記憶體儲存裝置及記憶體控制電路單元

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100650466B1 (ko) 2004-11-12 2006-11-29 가부시끼가이샤 도시바 반도체 기억 장치의 데이터 기입 방법
US20080205147A1 (en) 2007-02-27 2008-08-28 Micron Technology, Inc. Local self-boost inhibit scheme with shielded word line
US20090135656A1 (en) 2006-12-14 2009-05-28 Samsung Electronics Co., Ltd. Non-volatile semiconductor memory device with dummy cells and method of programming the same
KR100939427B1 (ko) * 2007-12-27 2010-01-28 주식회사 하이닉스반도체 불휘발성 메모리 소자의 프로그램 방법

Family Cites Families (21)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20020048259A (ko) 2000-12-18 2002-06-22 박종섭 플래시 메모리 셀의 포스트 프로그램 방법
KR20040095926A (ko) 2003-04-29 2004-11-16 주식회사 하이닉스반도체 셀어레이의 누설 전류를 줄일 수 있는 메모리 장치
JP2005276345A (ja) 2004-03-25 2005-10-06 Nec Electronics Corp 不揮発性記憶装置及び不揮発性記憶装置の検証方法
JP2006059481A (ja) 2004-08-23 2006-03-02 Renesas Technology Corp 半導体記憶装置
KR100705219B1 (ko) * 2004-12-29 2007-04-06 주식회사 하이닉스반도체 난드 플래시 메모리 소자의 프로그램 방법
US7561469B2 (en) * 2006-03-28 2009-07-14 Micron Technology, Inc. Programming method to reduce word line to word line breakdown for NAND flash
KR100896190B1 (ko) 2007-06-11 2009-05-12 삼성전자주식회사 불휘발성 메모리 장치의 소거 방법
JP4660520B2 (ja) * 2007-09-03 2011-03-30 株式会社東芝 不揮発性半導体記憶装置およびその駆動方法
KR101226685B1 (ko) 2007-11-08 2013-01-25 삼성전자주식회사 수직형 반도체 소자 및 그 제조 방법.
KR20090100677A (ko) 2008-03-20 2009-09-24 삼성전자주식회사 더미 워드 라인들을 선택하는 불휘발성 메모리 장치 및그것의 동작 방법
KR20110001102A (ko) 2009-06-29 2011-01-06 주식회사 하이닉스반도체 불휘발성 메모리 소자의 프로그램 동작 방법
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 삼성전자주식회사 비휘발성 메모리 장치, 그것의 채널 부스팅 방법, 그것의 프로그램 방법 및 그것을 포함하는 메모리 시스템
KR20120133232A (ko) 2011-05-31 2012-12-10 에스케이하이닉스 주식회사 플래시 메모리 장치
KR20120134941A (ko) 2011-06-03 2012-12-12 삼성전자주식회사 선택 워드라인의 위치에 따라 더미 워드라인을 제어하는 비휘발성 메모리 장치, 이의 동작 방법, 및 상기 비휘발성 메모리 장치를 포함하는 장치들
KR20130072519A (ko) * 2011-12-22 2013-07-02 에스케이하이닉스 주식회사 반도체 메모리 장치 및 이의 동작 방법
KR102054223B1 (ko) 2012-07-23 2019-12-10 삼성전자주식회사 더미비트라인을 가진 반도체 메모리 장치
KR102106866B1 (ko) * 2013-01-29 2020-05-06 삼성전자주식회사 멀티레벨 불휘발성 메모리 장치 및 프로그램 방법
KR102190399B1 (ko) 2013-10-11 2020-12-11 삼성전자주식회사 신뢰성을 보장할 수 있는 불휘발성 메모리 장치의 동작 방법 및 상기 방법을 수행하는 메모리 시스템

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100650466B1 (ko) 2004-11-12 2006-11-29 가부시끼가이샤 도시바 반도체 기억 장치의 데이터 기입 방법
US20090135656A1 (en) 2006-12-14 2009-05-28 Samsung Electronics Co., Ltd. Non-volatile semiconductor memory device with dummy cells and method of programming the same
US20080205147A1 (en) 2007-02-27 2008-08-28 Micron Technology, Inc. Local self-boost inhibit scheme with shielded word line
KR100939427B1 (ko) * 2007-12-27 2010-01-28 주식회사 하이닉스반도체 불휘발성 메모리 소자의 프로그램 방법

Also Published As

Publication number Publication date
CN107369470A (zh) 2017-11-21
CN107369470B (zh) 2022-09-06
US10163513B2 (en) 2018-12-25
US20170249995A1 (en) 2017-08-31
KR20170101000A (ko) 2017-09-05

Similar Documents

Publication Publication Date Title
KR102444238B1 (ko) 메모리 장치의 프로그램 방법 및 이를 적용하는 메모리 시스템
KR102683414B1 (ko) 비휘발성 메모리 장치 및 그것의 프로그램 방법
KR102321501B1 (ko) 불휘발성 메모리 장치 및 그것을 포함하는 스토리지 장치의 동작 방법
KR102285994B1 (ko) 불휘발성 메모리 시스템 및 메모리 컨트롤러의 동작 방법
KR101891164B1 (ko) 프로그램 스케줄러를 포함하는 플래시 메모리 장치
KR102530071B1 (ko) 페이지 버퍼를 포함하는 불휘발성 메모리 장치 및 그 동작방법
KR102329800B1 (ko) 메모리 장치 및 메모리 장치의 에지 워드라인 관리 방법
CN111258793B (zh) 存储器控制器及其操作方法
KR102554416B1 (ko) 메모리 장치의 내부 상태 출력 장치 및 이를 적용하는 메모리 시스템
KR102452994B1 (ko) 반도체 메모리 장치 및 그 동작 방법
US9910607B2 (en) Method of managing a memory, and a memory system
KR20160109906A (ko) 비휘발성 메모리 장치 및 비휘발성 메모리 장치의 프로그램 방법
KR20150103932A (ko) 불휘발성 메모리 시스템 및 그것의 동작 방법
US9589640B2 (en) Data storage device including nonvolatile memory device and operating method thereof
KR20210034274A (ko) 비휘발성 메모리 장치의 구동 방법 및 이를 수행하는 비휘발성 메모리 장치
KR102131060B1 (ko) 불휘발성 메모리 장치의 읽기 및 쓰기 동작 방법
JP2023039918A (ja) メモリ装置及びその動作方法
KR20150061098A (ko) 메모리 시스템 및 상기 메모리 시스템의 프로그래밍 방법
KR102601211B1 (ko) 빠른 재사용 메모리 블록 검출 방법 및 이를 이용한 메모리 블록 관리 방법
KR102375365B1 (ko) 비휘발성 메모리 장치, 그것의 프로그램 방법, 및 그것을 포함하는 저장 장치
KR20220138961A (ko) 메모리 장치 및 메모리 장치의 동작 방법
KR20220107578A (ko) 메모리 장치 및 그 동작 방법
KR20220023263A (ko) 메모리 장치 및 그 동작 방법
KR20210094696A (ko) 비휘발성 메모리 장치, 스토리지 장치, 및 그것의 프로그램 방법
US11508439B2 (en) Memory device having a control logic to control program operations and method of operating the same

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant