KR101534274B1 - 메모리 시스템 및 그것의 프로그램 방법 - Google Patents
메모리 시스템 및 그것의 프로그램 방법 Download PDFInfo
- Publication number
- KR101534274B1 KR101534274B1 KR1020090015932A KR20090015932A KR101534274B1 KR 101534274 B1 KR101534274 B1 KR 101534274B1 KR 1020090015932 A KR1020090015932 A KR 1020090015932A KR 20090015932 A KR20090015932 A KR 20090015932A KR 101534274 B1 KR101534274 B1 KR 101534274B1
- Authority
- KR
- South Korea
- Prior art keywords
- interference
- program
- cell
- programmed
- selected memory
- 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
- G11C16/12—Programming 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/26—Sensing or reading circuits; Data output 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/5642—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/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/34—Determination of programming status, e.g. threshold voltage, overprogramming or underprogramming, retention
Landscapes
- Engineering & Computer Science (AREA)
- Computer Hardware Design (AREA)
- Read Only Memory (AREA)
Abstract
본 발명에 따른 불휘발성 메모리 장치의 프로그램 방법은, 선택된 메모리 셀에 간섭을 제공하는 간섭 셀에 기입될 프로그램 데이터를 참조하여 상기 선택된 메모리 셀의 프로그램 검증 전압을 조정하는 단계; 및 상기 조정된 검증 전압에 따라 상기 선택된 메모리 셀을 프로그램하는 단계를 포함한다.
Description
본 발명은 반도체 메모리 장치에 관한 것으로, 좀 더 구체적으로는 불휘발성 메모리 시스템 및 그것의 프로그램 방법에 관한 것이다.
반도체 메모리 장치는 크게 휘발성 반도체 메모리 장치(Volatile semiconductor memory device)와 불휘발성 반도체 메모리 장치(Non-volatile semiconductor memory device)로 구분된다. 휘발성 반도체 메모리 장치는 읽고 쓰는 속도가 빠르지만 외부 전원 공급이 끊기면 저장된 내용이 사라져 버리는 단점이 있다. 반면에 불휘발성 반도체 메모리 장치는 외부 전원 공급이 중단되더라도 그 내용을 보존한다. 그러므로 불휘발성 반도체 메모리 장치는 전원이 공급되었는지의 여부에 관계없이 보존되어야 할 내용을 기억시키는 데 쓰인다.
불휘발성 메모리들 중에서도 플래시 메모리는 전기적으로 셀의 데이터를 일괄적으로 소거하는 기능을 가지고 있기 때문에 컴퓨터 및 메모리 카드 등에 널리 사용되고 있다. 플래시 메모리는 셀과 비트 라인의 연결 상태에 따라 노어형과 낸드형으로 구분된다. 노어형 플래시 메모리는 1개의 비트 라인에 2개 이상의 셀 트 랜지스터가 병렬로 연결된 형태로서, 채널 핫 일렉트론(Channel Hot Electron) 방식을 사용하여 데이터를 저장하고, F-N 터널링(Fowler-Nordheim tunneling) 방식을 사용하여 데이터를 소거한다. 그리고 낸드형 플래시 메모리는 1개의 비트 라인에 2개 이상의 셀 트랜지스터가 직렬로 연결된 형태로서, F-N 터널링 방식을 사용하여 데이터를 저장 및 소거한다.
플래시 메모리 장치의 메모리 셀들 각각은 1-비트 데이터 또는 멀티-비트 데이터를 저장한다. 하나의 메모리 셀에 1-비트 데이터를 저장하는 경우, 메모리 셀은 2개의 문턱 전압 상태들, 즉 데이터 "1"과 데이터 "0" 중 어느 하나에 대응되는 문턱 전압을 갖는다. 이에 반해서, 하나의 메모리 셀에 2-비트 데이터를 저장하는 경우, 메모리 셀은 4개의 문턱 전압 상태들 중 어느 하나에 속하는 문턱 전압을 갖는다. 또한, 하나의 메모리 셀에 3-비트 데이터를 저장하는 경우, 메모리 셀은 8개의 문턱 전압 상태들 중 어느 하나에 포함되는 문턱 전압을 갖는다. 최근에는, 하나의 메모리 셀에 4-비트 데이터 또는 그 이상의 데이터를 저장하기 위한 다양한 기술들이 활발히 연구되고 있는 실정이다.
본 발명의 목적은 높은 데이터 신뢰성을 제공할 수 있는 불휘발성 메모리 장치 및 그것의 쓰기 방법을 제공하는 데 있다.
상기 목적을 달성하기 위한 본 발명에 따른 불휘발성 메모리 장치의 프로그 램 방법은, 선택된 메모리 셀에 간섭을 제공하는 간섭 셀에 기입될 프로그램 데이터를 참조하여 상기 선택된 메모리 셀의 프로그램 검증 전압을 조정하는 단계; 및 상기 조정된 검증 전압에 따라 상기 선택된 메모리 셀을 프로그램하는 단계를 포함한다.
상기 목적을 달성하기 위한 본 발명의 메모리 시스템은, 불휘발성 메모리 장치; 및 상기 불휘발성 메모리 장치의 선택된 메모리 셀에 간섭을 제공하는 간섭 셀에 기입될 프로그램 데이터를 참조하여 상기 선택된 메모리 셀의 프로그램 검증 전압을 조정하고, 상기 조정된 검증 전압에 따라 상기 선택된 메모리 셀을 프로그램하도록 상기 불휘발성 메모리 장치를 제어하는 메모리 컨트롤러를 포함한다.
이상과 같은 본 발명에 따르면, 불휘발성 메모리에서 하나의 페이지 데이터를 프로그램하는 동작시에 메모리 셀들 간의 간섭을 프로그램의 최적화를 위한 효과로 전환시킬 수 있다. 따라서, 신뢰성 높은 불휘발성 메모리 장치를 제공할 수 있다.
앞의 일반적인 설명 및 다음의 상세한 설명 모두 예시적이라는 것이 이해되어야 하며, 청구된 발명의 부가적인 설명이 제공되는 것으로 여겨져야 한다. 참조 부호들이 본 발명의 바람직한 실시 예들에 상세히 표시되어 있으며, 그것의 예들이 참조 도면들에 표시되어 있다. 가능한 어떤 경우에도, 동일한 참조 번호들이 동일한 또는 유사한 부분을 참조하기 위해서 설명 및 도면들에 사용된다.
이하에서는, 불휘발성 메모리 장치로서 낸드형(NAND type) 플래시 메모리 장치가 본 발명의 특징 및 기능을 설명하기 위한 한 예로서 사용된다. 하지만, 이 기술 분야에 정통한 사람은 여기에 기재된 내용에 따라 본 발명의 다른 이점들 및 성능을 쉽게 이해할 수 있을 것이다. 또한, 산포(Distribution)의 의미는 특정 단위(페이지, 블록, 칩)의 메모리 셀들에서 문턱 전압에 대응하는 메모리 셀들의 수를 의미한다. 본 발명의 기술적 특징을 설명하기 위하여 하나의 페이지 단위의 메모리 셀들을 간섭 셀(Interfering cell)이라는 용어로 정의하였다. 간섭 셀은 인접하거나 동일 페이지의 기타 셀들에 큰 물리적 영향(예를 들면, 커플링 효과)을 주는 메모리 셀을 지칭한다. 실제로는 간섭 셀과 간섭 셀로부터 영향을 받는 선택 셀의 정의는 어디까지나 상대적인 개념이며, 간섭 셀도 다른 메모리 셀들로부터의 물리적 영향에 자유로운 것은 아니다. 간섭 셀 및 선택 셀의 분류 기준은 메모리 장치의 동작 조건이나 프로그램 방법 및 순서, 환경의 변화, 사용자의 의도에 의해서 변경되거나 조정될 수 있다. 본 발명은 다른 실시 예들을 통해 또한, 구현되거나 적용될 수 있을 것이다. 게다가, 상세한 설명은 본 발명의 범위, 기술적 사상 그리고 다른 목적으로부터 상당히 벗어나지 않고 관점 및 응용에 따라 수정되거나 변경될 수 있다. 이하, 본 발명에 따른 실시예를 첨부된 도면을 참조하여 상세히 설명한다.
도 1은 불휘발성 메모리의 셀 어레이(10)를 간략히 보여주는 도면이다. 도 1을 참조하면, 프로그램 동작시에 메모리 셀은 인접하거나 또는 주변에 분포하는 메모리 셀들로부터 간섭을 받는다. 이러한 셀들간의 간섭의 예로 인접 셀들간에 발생 하는 플로팅 게이트의 커플링 효과(Floating gate coupling effect)를 예로 들 수 있다.
커플링 효과에 의해서 메모리 셀(MC1)의 문턱 전압은 원래의 프로그램된 문턱 전압으로부터 일정 수준 시프트(Shift)된다. 프로그램 동작시, 짝수 비트 라인(BLe)에 연결된 메모리 셀(MC1)은 홀수 비트 라인(BLo)에 연결된 메모리 셀들(MC0, MC2, MC3, MC5)로부터의 커플링 효과에 노출된다. 메모리 셀들(MC0, MC2)은 메모리 셀(MC1)과 동일 워드 라인에 연결된 것들이고, 메모리 셀들(MC3, MC5)은 대각선 방향(Diagonal direction)에서 영향을 주는 셀들이다. 이러한 셀들은 비트 라인 간의 커플링을 유발하는 셀들이다. 또한, 메모리 셀(MC4)는 메모리 셀(MC1)과 동일 비트 라인(BLe)에 연결되어 있다. 메모리 셀(MC4)의 프로그램 동작시 메모리 셀(MC1)에 워드 라인 방향으로 커플링 효과를 제공한다.
메모리 셀(MC1)의 문턱 전압 시프트의 일예로 커플링 효과가 예시적으로 설명되었다. 하지만, 커플링 효과뿐만 아니라 메모리 셀들의 문턱 전압은 다양한 원인들로 인하여 시프트된다. 예를 들면, 시간의 경과, 고온 스트레스(Hot Temperature Stress: HTS), 프로그램/소거 사이클(P/E cycle)의 증대에 따른 산화막의 열화 등에 의하여 메모리 셀들의 문턱 전압은 변화(예를 들면, 낮아짐)한다. 또는, 주변 셀들의 프로그램에 따른 프로그램 디스터브(Program disturbance)에 의해 메모리 셀(MC1)의 문턱 전압은 높아질 수 있다.
이상에서 설명된 다양한 요인들로 인해 메모리 셀들의 문턱 전압은 이동한다. 따라서, 불휘발성 메모리 장치의 독출 동작시에는 상술한 문턱 전압의 이동으 로 읽기 마진(Read margin)이 감소하여 이웃하는 두 문턱 전압의 산포들이 겹쳐질 수 있다. 이 경우, 독출된 데이터에는 다수 비트의 에러가 포함될 수 있다. 그러나 본 발명의 프로그램 스킴에 따르면, 메모리 셀들간의 간섭을 최소화할 수 있다.
도 2는 본 발명의 반도체 메모리 장치(100)를 간략히 보여주는 블록도이다. 본 발명의 반도체 메모리 장치(100)는 불휘발성 메모리 장치(120)를 포함하며, 불휘발성 메모리 장치(120)와 호스트(또는, 외부)를 인터페이싱하는 메모리 컨트롤러를 포함한다.
메모리 컨트롤러(110)는 프로그램 동작시에 현재 프로그램되는 메모리 셀들의 프로그램 검증 전압(Program verify voltage)을 상술한 인접한 메모리 셀들에 프로그램될 데이터를 참조하여 결정할 수 있다. 즉, 인접한 메모리 셀들의 타깃 상태를 참조하여, 현재 프로그램될 메모리 셀들이 받게 되는 간섭의 크기를 정량화한다. 정량화된 간섭의 크기에 따라, 메모리 컨트롤러(110)는 현재 프로그램될 메모리 셀들의 프로그램 검증 전압을 타깃 상태에 대응하는 프로그램 검증 전압의 레벨보다 낮게 또는 동일하도록 결정한다. 메모리 컨트롤러(110)는 결정된 프로그램 검증 전압을 발생하도록 불휘발성 메모리 장치(120)에 트리밍 명령(CMDx)을 제공한다.
불휘발성 메모리 장치(120)는 전원이 차단되더라도 저장된 데이터를 유지할 수 있는 불휘발성 메모리 소자를 포함한다. 불휘발성 메모리 장치(120)는 다른 메모리 소자와 비교할 때, 비교적 낮은 단가로 빠른 읽기 속도를 제공할 수 있는 장점이 있다. 그러나 불휘발성 메모리 장치(120)의 메모리 셀들은 덮어쓰기가 자유롭 지 못하다는 단점이 존재한다. 따라서, 데이터를 기입하기 위해서는 소거 동작이 반드시 선행되어야 하며, 기입되는 데이터의 단위보다 소거되는 데이터의 단위가 크다는 특징이 있다. 고집적도 및 대용량화 요구에 따라, 불휘발성 메모리 장치(120)에서 발생하는 메모리 셀들간의 간섭을 줄이기 위한 기술이 절실히 요구되고 있다. 본 발명의 불휘발성 메모리 장치(120)는 메모리 컨트롤러(110)의 제어(예를 들면, CMDx 명령)에 따라 하나의 타깃 상태에 대해서 다양한 레벨의 프로그램 검증 전압(Verify voltage)을 제공할 수 있다.
도 3은 본 발명의 불휘발성 메모리 장치(120, 도 2 참조)를 간략히 보여주는 블록도이다. 도 3을 참조하면, 본 발명의 불휘발성 메모리 장치(120)는 하나의 페이지 데이터를 프로그램할 때, 메모리 셀들간의 간섭을 줄이기 위한 절차에 따라 프로그램 동작을 실행한다. 이러한 동작은 다양한 레벨의 프로그램 검증 전압(Vfyi_j)을 제공하는 전압 발생기(260) 및 제어 로직(250)과 페이지 버퍼(230)에 의해서 구현된다. 좀더 자세히 설명하면 다음과 같다.
셀 어레이(210)는 비트 라인 및 워드 라인에 연결되는 메모리 셀들을 포함한다. 특히, 멀티 레벨 셀(Multi-Level Cell: MLC)은 하나의 셀에 복수 비트들을 저장하기 위하여 다수의 문턱 전압 분포들 중 어느 하나로 프로그램된다. 멀티 레벨 셀은, 제한된 문턱 전압 윈도우(Threshold voltage window) 내에서 저장되는 비트 수(k)에 대응하는 문턱 전압 상태 수(2k)를 포함하기 위하여 조밀하게 프로그램되어야 한다. 따라서, 멀티 레벨 셀의 읽기 마진은 싱글 레벨 셀에 비하여 줄어들 수밖 에 없다. 또한, 메모리 셀은 동일 비트 라인에 연결되는 메모리 셀의 프로그램 동작시에 워드 라인 방향으로 커플링을 받을 수 있다. 또한 메모리 셀은 서로 다른 비트 라인에 연결되는 메모리 셀들로부터 비트 라인 방향으로 커플링을 받을 수 있다.
행 디코더(220)는 일반적으로 행 어드레스(Row Address)에 응답하여 워드 라인을 선택한다. 행 디코더(220)는 전압 발생기(260)로부터 제공되는 각종 워드 라인 전압을 선택된 워드 라인들로 전달한다. 프로그램 동작시, 선택 워드 라인(Selected WL)으로는 프로그램 전압(Vpgm; 약 15~20V)과 검증 전압(Vfyi_j)을, 비선택 워드 라인(Unselected WL)으로는 패스 전압(Vpass)을 전달한다. 독출 동작 시, 행 디코더(220)는 전압 발생기(260)로부터 제공되는 읽기 전압(Vrd)을 선택된 워드 라인으로, 읽기 전압(Vread, 약 5V)를 비선택 워드 라인으로 제공한다.
페이지 버퍼(230)는 동작 모드에 따라 기입 드라이버(Write driver)로서 또는 감지 증폭기(Sense amplifier)로서 동작한다. 예를 들면, 페이지 버퍼(230)는 읽기 동작 모드에서 감지 증폭기로서 그리고 프로그램 동작 모드에서 기입 드라이버로서 동작한다. 본 발명의 페이지 버퍼(230)는 프로그램 동작시 하나의 페이지 단위의 데이터를 로드한다. 즉, 페이지 버퍼(230)는 프로그램될 데이터를 입출력 버퍼(240)로부터 제공받아 내부의 래치에 저장한다. 페이지 버퍼(230)는 로드된 데이터를 프로그램하는 동작시, 프로그램되는 메모리 셀들의 비트 라인으로 접지 전압(예를 들면, 0V)을 제공한다. 그리고 페이지 버퍼(230)는 프로그램 금지(Program inhibit)되는 메모리 셀들의 비트 라인으로 프리차지 전압(예를 들면, Vcc)을 공급 한다.
입출력 버퍼(240)는 입출력 핀(I/O Pin)을 통해서 입력되는 어드레스 또는 프로그램 데이터 등을 일시 저장한다. 입출력 버퍼(240)는 저장된 어드레스를 어드레스 버퍼(미도시됨)로, 프로그램 데이터는 페이지 버퍼(230) 측으로, 그리고 명령어는 명령어 레지스터(미도시됨)로 전달한다. 읽기 동작시, 페이지 버퍼(230)로부터 제공되는 독출 데이터가 입출력 버퍼(240)를 통해서 외부로 출력될 것이다.
제어 로직(250)은 프로그램 동작시, 메모리 컨트롤러(110, 도 2 참조)로부터 제공된 명령어(CMDi)에 따라서 선택된 프로그램 검증 전압(Vfyi_j)을 생성하도록 전압 발생기(260)를 제어한다. 또는, 제어 로직(250) 선택된 프로그램 검증 전압(Vfyi_j)을 생성하도록 전압 발생기(260)의 트리밍 동작을 제어할 수 있다.
전압 발생기(260)는 제어 로직(250)의 제어에 응답하여 불휘발성 메모리 장치(120)의 프로그램을 위한 제반 직류 전압을 제공한다. 특히, 제어 로직(250)의 제어에 따라 다양한 레벨의 검증 전압(Verify voltage)을 제공할 수 있다. 예를 들면, 2-비트 MLC가 인접 셀들로부터 받는 커플링의 크기를 6가지로 분류한 경우를 가정하자. 이 경우, 메모리 셀을 타깃 상태(P2)로 프로그램하기 위해 전압 발생기(260)는 적어도 6가지 레벨의 검증 전압을 생성할 수 있다. 즉, 전압 발생기(260)는 메모리 셀이 받는 커플링의 영향을 보상하기 위한 복수 레벨의 검증 전압(Vfy2_j,단, j= 0,1,2,3,4,5)중 어느 하나를 제공할 수 있다.
이상의 도 3에서 설명된 본 발명의 실시예에 따르면, 본 발명의 불휘발성 메모리 장치(120)는 하나의 페이지가 프로그램되는 메모리 셀들 상호간에 발생하는 커플링이나 간섭을 최소화할 수 있다.
도 4는 도 2의 메모리 컨트롤러(110)에 의한 연산 절차를 간략히 보여주는 순서도이다. 도 4를 참조하여, 하나의 페이지를 프로그램하기 위한 메모리 컨트롤러(110)의 제어 동작이 설명될 것이다.
하나의 페이지 데이터를 프로그램하기 위해서, 메모리 컨트롤러(110)는 현재 프로그램될 페이지의 다음에 프로그램될 적어도 하나 이상의 간섭 페이지 데이터를 확보해야 한다. 메모리 컨트롤러(110)는 현재 프로그램될 페이지(Current program page) 데이터와 현재 프로그램될 페이지 데이터가 프로그램된 메모리 셀들에 간섭을 일으키는 셀들에 저장되는 간섭 페이지(Inteffering page) 데이터를 획득한다. 현재 프로그램될 페이지가 짝수 페이지라면, 현재 프로그램될 페이지와 워드 라인을 공유하는 홀수 페이지(Odd page)에 저장되는 데이터가 포함된다. 그리고, 현재 프로그램되는 메모리 셀들이 연결된 워드 라인(WLn)에 인접한 워드 라인(WLn+1)의 짝수 페이지 데이터 또는 홀수 페이지 데이터일 수도 있다(S110).
간섭 페이지들의 데이터를 참조하여, 메모리 컨트롤러(110)는 현재 프로그램된 메모리 셀들의 문턱 전압이 시프트되는 크기를 결정한다. 그리고 메모리 컨트롤러(110)는 결정된 문턱 전압의 이동의 정도에 따라 현재 프로그램도리 메모리 셀들 각각에 대한 검증 전압을 결정한다(S120).
메모리 컨트롤러(110)는 결정된 검증 전압 레벨을 이용하여 현재 프로그램될 데이터를 선택된 메모리 셀들에 프로그램하도록 불휘발성 메모리 장치(120)를 제어한다. 즉, 메모리 컨트롤러(110)는 프로그램 동작의 실시 이전에 간섭 페이지들의 데이터를 참조하여 결정된 검증 전압으로 트리밍하도록 불휘발성 메모리 장치(120)에 명령어를 제공한다. 검증 전압의 트리밍 이후에, 메모리 컨트롤러(110)는 현재 프로그램될 페이지 데이터를 선택된 메모리 셀들에 프로그램하도록 불휘발성 메모리 장치(120)에 프로그램 데이터 및 프로그램 명령어를 제공한다(S130).
현재 프로그램될 페이지 데이터가 선택된 메모리 셀들에 프로그램되었지만, 메모리 셀들의 문턱 전압은 타깃 상태에 미치지 않았다. 즉, 간섭 페이지 데이터가 선택된 메모리 셀들에 인접한 메모리 셀들에 프로그램된 이후에야 선택된 메모리 셀들의 문턱 전압은 정상적인 타깃 문턱 전압으로 상승하게 될 것이다. 즉, 간섭 셀들에 대한 프로그램 동작이 완료된 이후에야 선택된 메모리 셀들에 대한 프로그램 동작이 완료된다(S140).
상술한 프로그램 방법에 따르면, 간섭 셀들이 주는 커플링과 같은 물리적 영향이 선택된 메모리 셀들의 프로그램을 완료하기 위한 긍정적인 영향으로 변형시키는 방법이 기술되었다. 이러한 방법으로, 하나의 페이지 데이터를 프로그램하는 동작에서 메모리 셀들 상호 간에 미치는 커플링에 의한 에러는 차단될 수 있다.
도 5는 간섭 셀들에 따라 결정되는 각 상태들의 검증 전압을 예시적으로 보여주기 위한 테이블이다. 도 5를 참조하면, 2-비트 멀티 레벨 셀(2-bit MLC)을 채용하는 불휘발성 메모리 장치의 MSB 페이지에 대한 검증 전압이 간섭 셀들의 종류별로 분류되어 있다. 여기서, 커플링이 없는 경우는 간섭 셀이 소거 상태(E0)를 유지하거나 셰도우 프로그램 방식에 있어서 임시 상태(SP2) 프로그램 상태(P2)로 프로그램되는 경우를 예시적으로 정의하였다. 그리고 커플링이 발생하는 경우는 간섭 셀이 소거 상태(E0)에서 프로그램 상태(P1)로 프로그램되고 임시 상태(SP2)에서 프로그램 상태(P3)로 프로그램되는 조건을 포함하도록 하였다. 그러나 분류 방식을 달리하여, 커플링이 발생하는 경우를 소거 상태(E0)로부터 프로그램 상태(P1)로 프로그램되는 조건만이 포함되도록 정의할 수 있음은 자명하다.
여기서, 간섭 셀들의 종류는 간섭 셀들이 프로그램되더라도 선택 메모리 셀들로 커플링을 유발시키지 않는 조건(No coupling), 워드 라인으로부터 커플링을 받는 조건(WL), 하나의 비트 라인으로부터만 커플링을 받는 조건(1-BL), 두 개의 비트 라인들로부터 커플링을 받는 조건(2-BL)들이 도시되어 있다. 그리고, 워드 라인과 하나의 비트 라인으로부터 커플링을 받는 조건(1-BL & WL) 및 워드 라인과 두 개의 비트 라인으로부터 커플링을 받는 조건(2-BL & WL)들을 가정하였다.
먼저, 간섭 셀들이 프로그램되더라도 커플링이 발생하지 않는 조건에서, 선택된 메모리 셀들의 프로그램을 위한 검증 전압은 각 타깃 상태들 각각에 대해 Vfy1_0, Vfy2_0, Vfy3_0로 제공될 것이다. 프로그램 상태(P1)로 프로그램되는 메모리 셀들은 검증 전압(Vfy1_0), 프로그램 상태(P2)로 프로그램되는 메모리 셀들은 검증 전압(Vfy2_0) 그리고 프로그램 상태(P3)로 프로그램되는 메모리 셀들은 검증 전압(Vfy3_0)을 제공받는다.
선택된 메모리 셀들의 워드 라인(WLn)보다 나중에 프로그램되는 인접 워드 라인(WLn+1)의 간섭 셀들로부터만 커플링을 받는 조건에서는 다음과 같은 검증 전압들이 생성될 것이다. 선택된 메모리 셀들에 공급될 검증 전압은 각 타깃 상태들 별로 각각 Vfy1_1, Vfy2_1, Vfy3_1로 제공될 것이다. 프로그램 상태(P1)로 프로그 램되는 메모리 셀들은 검증 전압(Vfy1_1), 프로그램 상태(P2)로 프로그램되는 메모리 셀들은 검증 전압(Vfy2_1) 그리고 프로그램 상태(P3)로 프로그램되는 메모리 셀들은 검증 전압(Vfy3_1)을 제공받는다.
선택 메모리 셀들의 비트 라인에 인접한 비트 라인들로부터만 커플링을 받는 조건은 2가지가 있다. 인접한 어느 하나의 비트 라인에 포함되는 메모리 셀이 간섭 셀이 되는 경우, 프로그램 상태(P1)로 프로그램되는 메모리 셀들은 검증 전압(Vfy1_2), 프로그램 상태(P2)로 프로그램되는 메모리 셀들은 검증 전압(Vfy2_2) 그리고 프로그램 상태(P3)로 프로그램되는 메모리 셀들은 검증 전압(Vfy3_2)을 제공받는다. 반면, 인접한 두 비트 라인 모두에 대응하는 메모리 셀들이 간섭 셀이 되는 경우, 프로그램 상태(P1)로 프로그램되는 메모리 셀들은 검증 전압(Vfy1_3), 프로그램 상태(P2)로 프로그램되는 메모리 셀들은 검증 전압(Vfy2_3) 그리고 프로그램 상태(P3)로 프로그램되는 메모리 셀들은 검증 전압(Vfy3_3)을 제공받는다.
인접한 워드 라인과 비트 라인에 연결된 메모리 셀들이 동시에 간섭 셀들이 되는 경우에도 두 가지의 검증 전압들이 생성된다. 즉, 선택 메모리 셀에 인접한 워드 라인과 어느 하나의 비트 라인에 포함되는 메모리 셀이 간섭 셀이 되는 경우, 프로그램 상태(P1)로 프로그램되는 메모리 셀들은 검증 전압(Vfy1_4), 프로그램 상태(P2)로 프로그램되는 메모리 셀들은 검증 전압(Vfy2_4) 그리고 프로그램 상태(P3)로 프로그램되는 메모리 셀들은 검증 전압(Vfy3_4)을 제공받는다.
반면, 인접한 워드 라인 및 두 개의 인접한 비트 라인 모두에 대응하는 메모리 셀들이 간섭 셀이 되는 경우에는 가장 큰 커플링을 받을 수 있다. 따라서, 프로 그램 상태(P1)으로 프로그램되는 메모리 셀들은 검증 전압(Vfy1_5), 프로그램 상태(P2)로 프로그램되는 메모리 셀들은 검증 전압(Vfy2_5) 그리고 프로그램 상태(P3)로 프로그램되는 메모리 셀들은 검증 전압(Vfy3_5)을 제공받는다. 즉, 가장 낮은 검증 전압들을 제공받는 조건에서 선택 메모리 셀들이 프로그램될 것이다.
지금까지는 짝수-홀수 비트 라인의 선택을 통해서 비트 라인 상호 간의 영향을 차폐하는 셀 어레이 구조에서 본 발명의 실시예들이 설명되었다. 그러나, 본 발명의 장점은 이러한 예들에서만 적용될 뿐 아니라 진보된 비트 라인 구조의 메모리 셀에서도 적용될 수 있다. 즉, 워드 라인 방향의 커플링만 고려해도 되는 경우, 2가지의 검증 전압 그룹이 표에 도시되어 있다. 커플링이 없는 경우와, 인접 워드 라인에 연결된 메모리 셀이 간섭 셀이 되는 경우를 나타내었다. 커플링이 없는 경우는 앞서 설명된 레벨의 검증 전압들과 동일하다(Vfy1_0, Vfy2_0, Vfy3_0). 워드 라인으로부터 커플링을 받는 경우, 각각의 프로그램 상태들에 대응하는 검증 전압들(Vfy1_1, Vfy2_1, Vfy3_1)이 제공될 수 있다.
이상에서는 6가지의 경우의 수를 가정하여 본 발명의 커플링의 크기를 분류하였으나, 본 발명은 이에 국한되지 않는다. 즉, 커플링의 크기는 인접한 간섭 셀의 프로그램 상태에 영향을 받기 때문에, 간섭 셀의 프로그램 상태를 더 세분하여 커플링의 크기를 분류할 수 있을 것이다. 이 경우, 검증 전압의 레벨은 더 세분화될 수 있다.
도 6은 도 5의 테이블에서 정의된 검증 전압을 이용한 프로그램 절차들을 간략히 보여주는 분포도들이다. 도 6을 참조하여 선택된 메모리 셀들이 간섭 셀들의 커플링에 의하여 타깃 상태로 프로그램되는 과정이 설명될 것이다.
분포도 (a)에는 선택된 메모리 셀들에 LSB 페이지가 프로그램된 이후의 문턱 전압 상태들이 도시되어 있다. LSB 페이지의 프로그램에 의해서 메모리 셀들은 소거 상태(E0) 또는 임시 프로그램 상태(SP2′)에 대응하는 문턱 전압 상태를 갖는다.
분포도 (b)에는 본 발명의 방식으로 결정된 검증 전압들(Vfyi′, i=1, 2, 3)을 사용하는 MSB 페이지의 프로그램 동작 및 그에 따라 형성되는 프로그램 상태들(SP1, SP2, SP3)을 간략히 보여준다. 최종 타깃 상태(P3)에 대응하는 메모리 셀들은 검증 전압(Vfy3′)에 의해서 임시 상태(SP2′)로부터 프로그램 상태(SP3)로 프로그램된다. 최종 타깃 상태(P2)에 대응하는 메모리 셀들은 검증 전압(Vfy2′)에 의해서 임시 상태(SP2′)로부터 프로그램 상태(SP2)로 프로그램된다. 최종 타깃 상태(P1)에 대응하는 메모리 셀들은 검증 전압(Vfy1′)에 의해서 소거 상태(E0)로부터 프로그램 상태(SP1)로 프로그램된다.
여기서, 검증 전압(Vfy1′)은 앞서 설명된 도 5의 표에서, 검증 전압들(Vfy1_j, 0≤j≤5의 정수) 중 어느 하나일 것이다. 그리고 검증 전압(Vfy2′)은 검증 전압들(Vfy2_j, 0≤j≤5의 정수) 중 어느 하나일 것이다. 검증 전압(Vfy3′)은 검증 전압들(Vfy3_j, 0≤j≤5의 정수) 중 어느 하나일 것이다.
분포도 (c)에는 간섭 셀들의 프로그램에 의해서 이미 프로그램된 메모리 셀들의 문턱 전압이 상승하는 효과를 간략히 보여준다. 본 발명의 검증 전압들(Vfy1′, Vfy2′, Vfy3′)에 의하여, 이미 선택된 메모리 셀들은 커플링의 영향을 받아 타깃 상태들(P1, P2, P3) 각각으로 프로그램된다.
결국, 간섭 셀들에 의한 커플링이나 제반 물리적 영향은 메모리 셀들에 대한 불완전 프로그램 동작을 보완하는 효과를 제공한다. 따라서, 간섭 셀이 미치는 물리적인 영향은 긍정적인 효과로 역이용 될 수 있을 것이다.
도 7은 3-비트 멀티 레벨 셀의 경우에 대해서 본 발명의 장점을 간략히 보여주는 분포도들이다. 도 7을 참조하면, MSB 페이지의 프로그램 동작시에 대해서만 본 발명의 장점이 적용되는 실시예가 도시되어 있다.
분포도 (a)에는 제 2 페이지(2nd page)가 프로그램된 상태를 보여준다. 즉, 선택된 메모리 셀들의 문턱 전압은 제 2 페이지(2nd page)의 프로그램에 의해서 복수의 임시 상태들(E0, P2′, P4′, P6′) 중 어느 하나에 위치하게 될 것이다.
분포도 (b) 및 분포도 (c)는 제 3 페이지(3rd page)의 프로그램 동작을 단계적으로 보여주는 도면들이다. 특히, 분포도 (b)에서는 간섭 셀들의 커플링의 크기를 고려한 선택 메모리 셀들에 대한 프로그램 절차를 보여준다. 선택 메모리 셀들을 프로그램하는 단계에서, 간섭 셀들로부터 영향을 많이 받는 메모리 셀들은 간섭 셀들로부터 받을 물리적 영향을 감안하여 타깃 상태들에 대응하는 검증 전압보다 낮은 검증 전압들(Vfy1′, Vfy2′, Vfy3′, Vfy4′, Vfy5′, Vfy6′, Vfy7′)에 따라 프로그램될 것이다.
상술한 커플링을 보상하기 위한 검증 전압들에 의해서, 최종 타깃 상태(P1)에 대응하는 메모리 셀들은 검증 전압(Vfy1′)에 의해서 소거 상태(E0)로부터 프로그램 상태(SP1)로 프로그램된다. 최종 타깃 상태(P2)에 대응하는 메모리 셀들은 검 증 전압(Vfy2′)에 의해서 임시 상태(P2′)로부터 프로그램 상태(SP2)로 프로그램된다. 최종 타깃 상태(P3)에 대응하는 메모리 셀들은 검증 전압(Vfy3′)에 의해서 임시 상태(P2′)로부터 프로그램 상태(SP3)로 프로그램된다. 최종 타깃 상태들(P4, P5, P6, P7) 각각으로 프로그램될 메모리 셀들은 검증 전압들(Vfy4′,Vfy5′,Vfy6′,Vfy7′)에 의해서 프로그램 상태들(SP4, SP5, SP6, SP7)로 프로그램된다.
분포도 (b)에서 설명된 메모리 셀들의 프로그램 절차는 전체 기타 셀들이 동시에 프로그램될 수도 있으며, 프로그램 상태들(P2′, P4′, P6′) 각각에 대해서 순차적으로 실시될 수 있다. 예를 들면, 상위 상태에 포함되는 메모리 셀들부터 먼저 진행될 수도 있다. 또는, 타깃 상태들을 그룹화하여 그룹 단위로 기타 셀들이 프로그램될 수 있을 것이다. 프로그램 상태들(P4′, P6′)에 대응하는 메모리 셀들이 먼저 프로그램되고, 프로그램 상태(P2′)에 대응하는 메모리 셀들이 다음에 프로그램되도록 설정될 수 있을 것이다. 여기서, 검증 전압들(Vfy1′, Vfy2′, Vfy3′, Vfy4′, Vfy5′, Vfy6′, Vfy7′)은 간섭 셀들의 프로그램에 따라 받는 물리적 영향의 크기를 고려한 값들이어야 한다.
분포도 (c)에는 간섭 셀들의 프로그램에 의해서 이미 프로그램된 메모리 셀들의 문턱 전압이 상승하는 효과가 도시되어 있다. 본 발명의 검증 전압들(Vfy1′, Vfy2′, Vfy3′, Vfy4′, Vfy5′, Vfy6′, Vfy7′)에 의하여, 선택된 메모리 셀들은 커플링의 영향을 받아 타깃 상태들(P1, P2, P3, P4, P5, P6, P7) 각각으로 프로그램된다.
여기서, 간섭 셀들이 미치는 커플링의 영향은 소거 상태(E0)로부터 프로그램 상태(P1)로 프로그램될 때 가장 크다. 프로그램 상태들(P3, P5, P7)로 프로그램되는 간섭 셀들이 미치는 커플링 영향이 그 다음으로 크다. 프로그램 상태들(P2, P4, P6)으로 프로그램되는 간섭 셀들이 주는 커플링의 영향력은 그 다음이다. 이러한 커플링의 크기를 그룹화하여 검증 전압을 결정하면 보다 간략화된 검증 전압의 크기 설정이 가능하다. 예를 들면, 커플링의 영향을 소거 상태(E0)로부터 프로그램 상태(P1)로 프로그램되는 경우와 나머지 경우로 크게 두 그룹으로 분할하여 본 발명의 검증 전압의 설정을 간략화시킬 수도 있다.
결국, 간섭 셀들에 의한 커플링이나 제반 물리적 영향은 메모리 셀들에 대한 불완전 프로그램 동작을 보완하는 효과를 제공한다. 따라서, 간섭 셀이 미치는 커플링은 긍정적인 효과로 역이용 될 수 있으며, 문턱 전압의 산포 개선에 사용될 수 있을 것이다.
도 8은 2-비트 멀티 레벨 셀들에 대한 프로그램 시퀀스를 셀 어레이에서 간략히 보여주는 도면이다.
앞에서 설명되었지만, 짝수 페이지를 먼저 프로그램하고 이어서 홀수 페이지를 프로그램하는 경우, 상대적으로 짝수 페이지에 포함되는 메모리 셀들이 홀수 페이지에 포함되는 메모리 셀들에 의한 간섭을 더 많이 받게 된다. 따라서, 짝수 페이지의 프로그램 동작시에만 각 타깃 상태들(Pi)에 대한 6가지의 프로그램 검증 전압들(Vfyi_j,단, j= 0,1,2,3,4,5)을 적용할 수 있다. 그리고 홀수 페이지의 프로그램 시에는 비트 라인 방향의 간섭은 무시할 정도이기 때문에 워드 라인 방향의 간섭만을 고려하여 각 타깃 상태들(Pi)에 대한 2가지 프로그램 검증 전압(Vfyi_j,단, j= 0,1)을 적용하도록 설정할 수 있다.
또한, 상술한 도면에서 기술된 프로그램 시퀀스에 따라 프로그램하는 경우, 하나의 블록에서 복수의 페이지 데이터가 연속적으로 프로그램되는 경우에 대한 고려가 필요하다. 즉, 복수의 페이지가 연속적으로 프로그램될 때, 마지막에 프로그램되는 선택 메모리 셀들에 대응하는 간섭 셀들은 더미(Dummy)로 처리할 수 있다. 즉, 연속적으로 프로그램되는 동작에서 최종적으로 프로그램되는 워드 라인의 인접한 상위 워드 라인(하위 워드 라인에서 상위 워드 라인으로 프로그램 절차가 진행되는 경우)은 더미 페이지(Dummy Page)로 지정할 수 있다. 만일, 상위 워드 라인에서 하위 워드 라인 방향으로 프로그램 시퀀스가 진행되는 경우에는, 최종적으로 프로그램되는 워드 라인의 인접한 하위 워드 라인이 더미 페이지로 지정될 것이다.
도 9는 본 발명에 따른 메모리 시스템(300)을 간략히 보여주는 블록도이다. 도 9를 참조하면, 본 발명에 따른 메모리 시스템(300)은 불휘발성 메모리 장치(320)와 메모리 컨트롤러(310)를 포함한다.
불휘발성 메모리 장치(320)는 앞서 설명된 도 1에 도시된 셀 어레이(100)를 갖는 플래시 메모리 장치로 구성될 수 있다. 메모리 컨트롤러(310)는 불휘발성 메모리 장치(320)를 제어하도록 구성될 것이다. 불휘발성 메모리 장치(320)와 메모리 컨트롤러(310)의 결합에 의해 메모리 카드 또는 반도체 디스크 장치(Solid State Disk: SSD)로 제공될 수 있을 것이다. SRAM(311)은 프로세싱 유닛(312)의 동작 메모리로써 사용된다. 호스트 인터페이스(313)는 메모리 시스템(300)과 접속되는 호스트의 데이터 교환 프로토콜을 구비한다. 에러 정정 블록(314)은 불휘발성 메모리 장치(320)로부터 독출된 데이터에 포함되는 에러를 검출 및 정정한다. 메모리 인터페이스(314)는 본 발명의 불휘발성 메모리 장치(320)와 인터페이싱 한다. 프로세싱 유닛(312)은 메모리 컨트롤러(310)의 데이터 교환을 위한 제반 제어 동작을 수행한다. 비록 도면에는 도시되지 않았지만, 본 발명에 따른 메모리 시스템(300)은 호스트(Host)와의 인터페이싱을 위한 코드 데이터를 저장하는 ROM(미도시됨) 등이 더 제공될 수 있음은 이 분야의 통상적인 지식을 습득한 자들에게 자명하다. 불휘발성 메모리 장치(320)는 복수의 플래시 메모리 칩들로 구성되는 멀티-칩 패키지로 제공될 수도 있다. 이상의 본 발명의 메모리 시스템(300)은 에러의 발생 확률이 낮은 고신뢰성의 저장 매체로 제공될 수 있다. 특히, 최근 활발히 연구되고 있는 반도체 디스크 장치(Solid State Disk: 이하 SSD)와 같은 메모리 시스템에서 본 발명의 플래시 메모리 장치가 구비될 수 있다. 이 경우, 메모리 컨트롤러(310)는 USB, MMC, PCI-E, SATA, PATA, SCSI, ESDI, 그리고 IDE 등과 같은 다양한 인터페이스 프로토콜들 중 하나를 통해 외부(예를 들면, 호스트)와 통신하도록 구성될 것이다.
여기서, 메모리 컨트롤러(310)는 상술한 실시예들에 의해서 설명된 방식으로 불휘발성 메모리 장치(320)를 제어한다. 즉, 프로그램 동작시에는 간섭 셀들에 대한 데이터를 획득하여 선택된 메모리 셀들에 대한 검증 전압을 선택한다. 여기서, 메모리 컨트롤러(310)는 커플링이나 간섭의 특성을 보다 정밀하게 추정하기 위해 제조사 및 제품 번호, 공정 파라미터들, 디스터브, 리텐션(Retention), 프로그램-소거 사이클 수(P/E cycle), 파일럿 셀(Pilot cell)로부터 획득한 특성 등을 선택적으로 제공받을 수 있다.
도 10은 앞서 설명된 다양한 실시예들에 따라 프로그램 동작을 수행하는 퓨전 메모리 장치 또는 퓨전 메모리 시스템(400)을 간략히 보여주는 블록도이다. 예를 들면, 퓨전 메모리 장치로서 원낸드 플래시 메모리 장치(400)에 본 발명의 기술적 특징이 적용될 수 있다.
원낸드 플래시 메모리 장치(400)는 서로 다른 프로토콜을 사용하는 장치와의 각종 정보 교환을 위한 호스트 인터페이스(410)와, 메모리 장치를 구동하기 위한 코드를 내장하거나 데이터를 일시적으로 저장하는 버퍼 램(420)과, 외부에서 주어지는 제어 신호와 명령어에 응답하여 읽기와 프로그램 및 모든 상태를 제어하는 제어부(430)와, 명령어와 어드레스, 메모리 장치 내부의 시스템 동작 환경을 정의하는 설정(Configuration) 등의 데이터가 저장되는 레지스터(440) 및 불휘발성 메모리 셀과 페이지 버퍼로 구성된 낸드 플래시 셀 어레이(450)를 포함한다. 호스트로부터의 쓰기 요청에 응답하여 원낸드 플래시 메모리 장치(400)는 간섭 셀들의 물리적 영향을 차단하기 위한 본 발명의 프로그램 절차들에 따라 데이터를 낸드 플래시 셀 어레이(450)에 기입하게 될 것이다.
도 11에는 본 발명에 따른 플래시 메모리 장치(512)를 포함한 컴퓨팅 시스템(500)이 개략적으로 도시되어 있다. 본 발명에 따른 컴퓨팅 시스템(500)은 시스템 버스(560)에 전기적으로 연결된 마이크로프로세서(520), 램(530), 사용자 인터페이스(540), 베이스밴드 칩셋(Baseband chipset)과 같은 모뎀(550) 및 메모리 시스템(510)을 포함한다. 메모리 시스템(510)은 도 8 또는 도 9에 도시된 것과 실질적으로 동일하게 구성될 것이다. 본 발명에 따른 컴퓨팅 시스템(500)이 모바일 장 치인 경우, 컴퓨팅 시스템(500)의 동작 전압을 공급하기 위한 배터리(미도시됨)가 추가적으로 제공될 것이다. 비록 도면에는 도시되지 않았지만, 본 발명에 따른 컴퓨팅 시스템(500)에는 응용 칩셋(Application chipset), 카메라 이미지 프로세서(Camera Image Processor: CIS), 모바일 디램, 등이 더 제공될 수 있음은 이 분야의 통상적인 지식을 습득한 자들에게 자명하다. 메모리 시스템(510)은, 예를 들면, 데이터를 저장하는 데 불휘발성 메모리를 사용하는 SSD(Solid State Drive/Disk)를 구성할 수 있다. 또는, 메모리 시스템(510)은, 퓨전 플래시 메모리(예를 들면, 원낸드 플래시 메모리)로 제공될 수 있다. 본 발명의 컴퓨터 시스템(400)은 인덱스 데이터의 획득을 통한 산포들의 특성 분석, 그리고, 커플링과 같은 문턱 전압의 시프트 영향의 크기에 따른 산포 분리를 통해서 신뢰성 높은 데이터를 메모리 시스템(510)으로부터 제공받을 수 있다. 상술한 인덱스 데이터를 통한 산포들의 특성 분석과 커플링과 같은 문턱 전압의 시프트 영향의 크기에 따른 산포 분리는 메모리 시스템(510)에서 이루어지거나, 컴퓨팅 시스템(500)의 마이크로프로세서(520)의 제어에 따라 실행될 수도 있다. 또는, 효과적인 자원의 활용을 위해서, 메모리 시스템(510)과 마이크로프로세서(520)가 분담하여 상술한 산포들의 특성 분석과 문턱 전압의 시프트 영향의 크기에 따른 산포 분리를 실시할 수 있을 것이다.
본 발명에 따른 플래시 메모리 장치 그리고/또는 메모리 컨트롤러는 다양한 형태들의 패키지를 이용하여 실장될 수 있다. 예를 들면, 본 발명에 따른 플래시 메모리 장치 그리고/또는 메모리 컨트롤러는 PoP(Package on Package), Ball grid arrays(BGAs), Chip scale packages(CSPs), Plastic Leaded Chip Carrier(PLCC), Plastic Dual In-Line Package(PDIP), Die in Waffle Pack, Die in Wafer Form, Chip On Board(COB), Ceramic Dual In-Line Package(CERDIP), Plastic Metric Quad Flat Pack(MQFP), Thin Quad Flatpack(TQFP), Small Outline(SOIC), Shrink Small Outline Package(SSOP), Thin Small Outline(TSOP), Thin Quad Flatpack(TQFP), System In Package(SIP), Multi Chip Package(MCP), Wafer-level Fabricated Package(WFP), Wafer-Level Processed Stack Package(WSP), 등과 같은 패키지들을 이용하여 실장될 수 있다.
이상에서와 같이 도면과 명세서에서 최적 실시예가 개시되었다. 여기서 특정한 용어들이 사용되었으나, 이는 단지 본 발명을 설명하기 위한 목적에서 사용된 것이지 의미 한정이나 특허청구범위에 기재된 본 발명의 범위를 제한하기 위하여 사용된 것은 아니다. 그러므로 본 기술 분야의 통상의 지식을 가진 자라면 이로부터 다양한 변형 및 균등한 타 실시예가 가능하다는 점을 이해할 것이다. 따라서, 본 발명의 진정한 기술적 보호 범위는 첨부된 특허청구범위의 기술적 사상에 의해 정해져야 할 것이다.
도 1은 본 발명의 불휘발성 메모리 셀 어레이를 간략히 보여주는 도면;
도 2는 본 발명의 반도체 메모리 장치를 보여주는 블록도;
도 3은 본 발명의 불휘발성 메모리 장치를 보여주는 블록도;
도 4는 본 발명에 따른 프로그램 절차를 보여주는 순서도;
도 5는 본 발명의 검증 전압 분류 방법을 보여주는 테이블;
도 6은 본 발명의 프로그램 절차의 일예를 문턱 전압 레벨에서 보여주는 분포도;
도 7은 본 발명의 프로그램 절차의 다른 예를 문턱 전압 레벨에서 보여주는 분포도;
도 8은 멀티 레벨 셀의 프로그램 시퀀스를 보여주는 도면;
도 9는 본 발명의 메모리 시스템을 보여주는 블록도;
도 10은 본 발명의 퓨전 메모리 장치를 보여주는 블록도; 그리고
도 11은 본 발명의 컴퓨팅 시스템의 구성을 보여주는 블록도.
Claims (13)
- 불휘발성 메모리 장치의 프로그램 방법에 있어서:선택된 메모리 셀에 간섭을 제공하는 간섭 셀에 기입될 프로그램 데이터를 참조하여 상기 선택된 메모리 셀의 프로그램 검증 전압을 조정하는 단계; 및상기 조정된 검증 전압에 따라 상기 선택된 메모리 셀을 프로그램하는 단계를 포함하되,상기 프로그램 검증 전압은 상기 간섭의 크기에 따라 복수의 레벨로 분류되며, 상기 간섭의 크기는 상기 간섭 셀에 기입될 프로그램 데이터를 통해서 정량화되는 프로그램 방법.
- 제 1 항에 있어서,상기 간섭 셀은 상기 선택된 메모리 셀과 동일한 워드 라인에 연결되며, 서로 다른 페이지 어드레스에 의해서 선택되는 프로그램 방법.
- 제 1 항에 있어서,상기 간섭 셀은 상기 선택된 메모리 셀과 다른 워드 라인에 연결되되, 상기 선택된 메모리 셀과 동일한 비트 라인에 연결되는 것을 특징으로 하는 프로그램 방법.
- 제 1 항에 있어서,상기 간섭 셀은 상기 선택된 메모리 셀과 다른 비트 라인 및 다른 워드 라인에 연결되되, 상기 선택된 메모리 셀의 비트 라인과 인접한 비트 라인들에 포함되 는 프로그램 방법.
- 삭제
- 제 1 항에 있어서,상기 선택된 메모리 셀들이 프로그램된 이후, 상기 간섭 셀들을 프로그램하는 단계를 더 포함하는 프로그램 방법.
- 제 1 항에 있어서,상기 선택된 메모리 셀에 대한 프로그램 검증 전압은 상기 선택된 메모리 셀의 최종 타깃 상태에 대응하는 문턱 전압과 같거나 낮은 것을 특징으로 하는 프로그램 방법.
- 삭제
- 제 1 항에 있어서,상기 선택된 메모리 셀들에 MSB(Most Significant Bit) 페이지가 프로그램될 때 상기 조정된 검증 전압에 따라 프로그램 검증 동작이 수행되는 프로그램 방법.
- 제 9 항에 있어서,상기 간섭 셀에 기입될 프로그램 데이터는 상기 간섭 셀에 기입되는 복수의 페이지 데이터 중 MSB(Most Significant Bit) 페이지 데이터인 것을 특징으로 하는 프로그램 방법.
- 삭제
- 불휘발성 메모리 장치; 및상기 불휘발성 메모리 장치의 선택된 메모리 셀에 간섭을 제공하는 간섭 셀에 기입될 프로그램 데이터를 참조하여 상기 선택된 메모리 셀의 프로그램 검증 전압을 조정하고, 상기 조정된 검증 전압에 따라 상기 선택된 메모리 셀을 프로그램하도록 상기 불휘발성 메모리 장치를 제어하는 메모리 컨트롤러를 포함하되,상기 프로그램 검증 전압은 상기 간섭의 크기에 따라 복수의 레벨로 분류되며, 상기 간섭의 크기는 상기 간섭 셀에 기입될 프로그램 데이터를 통해서 정량화되는 메모리 시스템.
- 삭제
Priority Applications (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020090015932A KR101534274B1 (ko) | 2009-02-25 | 2009-02-25 | 메모리 시스템 및 그것의 프로그램 방법 |
US12/656,083 US8059466B2 (en) | 2009-02-25 | 2010-01-15 | Memory system and programming method thereof |
US13/272,879 US8446773B2 (en) | 2009-02-25 | 2011-10-13 | Memory system and programming method thereof |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020090015932A KR101534274B1 (ko) | 2009-02-25 | 2009-02-25 | 메모리 시스템 및 그것의 프로그램 방법 |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20100096862A KR20100096862A (ko) | 2010-09-02 |
KR101534274B1 true KR101534274B1 (ko) | 2015-07-06 |
Family
ID=42630841
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020090015932A KR101534274B1 (ko) | 2009-02-25 | 2009-02-25 | 메모리 시스템 및 그것의 프로그램 방법 |
Country Status (2)
Country | Link |
---|---|
US (1) | US8059466B2 (ko) |
KR (1) | KR101534274B1 (ko) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11107532B2 (en) | 2019-06-25 | 2021-08-31 | SK Hynix Inc. | Memory device and method of operating memory device |
Families Citing this family (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8259499B2 (en) | 2010-06-29 | 2012-09-04 | Macronix International Co., Ltd. | Method and apparatus of performing an erase operation on a memory integrated circuit |
KR101203256B1 (ko) * | 2010-07-09 | 2012-11-20 | 에스케이하이닉스 주식회사 | 불휘발성 메모리 장치 및 이의 동작 방법 |
US8595591B1 (en) * | 2010-07-11 | 2013-11-26 | Apple Inc. | Interference-aware assignment of programming levels in analog memory cells |
US8537623B2 (en) * | 2011-07-07 | 2013-09-17 | Micron Technology, Inc. | Devices and methods of programming memory cells |
KR20130060687A (ko) * | 2011-11-30 | 2013-06-10 | 삼성전자주식회사 | 멀티 레벨 셀의 프로그램 방법 |
KR101893562B1 (ko) | 2012-01-09 | 2018-10-04 | 삼성전자주식회사 | 불휘발성 메모리 장치 및 그것의 프로그램 방법 |
JP2013196731A (ja) | 2012-03-21 | 2013-09-30 | Toshiba Corp | 不揮発性半導体記憶装置 |
KR101980676B1 (ko) * | 2012-05-25 | 2019-05-22 | 에스케이하이닉스 주식회사 | 메모리 및 그 검증 방법 |
JP6457364B2 (ja) * | 2015-09-11 | 2019-01-23 | 東芝メモリ株式会社 | メモリシステム |
US9792998B1 (en) * | 2016-03-29 | 2017-10-17 | Sandisk Technologies Llc | System and method for erase detection before programming of a storage device |
KR102320045B1 (ko) * | 2017-09-20 | 2021-11-01 | 삼성전자주식회사 | 비휘발성 메모리 장치 및 이의 동작 방법 |
KR102636380B1 (ko) * | 2021-09-10 | 2024-02-15 | 에스케이키파운드리 주식회사 | 임베디드 플래시 메모리 및 그의 동작 방법 |
US11972818B2 (en) | 2022-06-15 | 2024-04-30 | Sandisk Technologies, Llc | Refresh frequency-dependent system-level trimming of verify level offsets for non-volatile memory |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20050004142A (ko) * | 2003-07-04 | 2005-01-12 | 가부시끼가이샤 도시바 | 반도체 기억 장치 및 데이터 기입 방법 |
KR20060052627A (ko) * | 2004-11-12 | 2006-05-19 | 가부시끼가이샤 도시바 | 반도체 기억 장치의 데이터 기입 방법 |
US20060193169A1 (en) * | 2005-02-25 | 2006-08-31 | Micron Technology, Inc. | Multiple level programming in a non-volatile memory device |
KR20080030253A (ko) * | 2006-09-29 | 2008-04-04 | 주식회사 하이닉스반도체 | 플래시 메모리 소자 및 프로그램 방법 |
Family Cites Families (5)
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 |
US7400532B2 (en) * | 2006-02-16 | 2008-07-15 | Micron Technology, Inc. | Programming method to reduce gate coupling interference for non-volatile memory |
KR100769776B1 (ko) * | 2006-09-29 | 2007-10-24 | 주식회사 하이닉스반도체 | 낸드 플래시 메모리 소자의 프로그램 방법 |
US20080192544A1 (en) * | 2007-02-13 | 2008-08-14 | Amit Berman | Error correction coding techniques for non-volatile memory |
KR101530997B1 (ko) * | 2009-06-23 | 2015-06-25 | 삼성전자주식회사 | 셀간 간섭을 집중시키는 불휘발성 메모리 장치의 프로그램 방법 |
-
2009
- 2009-02-25 KR KR1020090015932A patent/KR101534274B1/ko active IP Right Grant
-
2010
- 2010-01-15 US US12/656,083 patent/US8059466B2/en active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20050004142A (ko) * | 2003-07-04 | 2005-01-12 | 가부시끼가이샤 도시바 | 반도체 기억 장치 및 데이터 기입 방법 |
KR20060052627A (ko) * | 2004-11-12 | 2006-05-19 | 가부시끼가이샤 도시바 | 반도체 기억 장치의 데이터 기입 방법 |
US20060193169A1 (en) * | 2005-02-25 | 2006-08-31 | Micron Technology, Inc. | Multiple level programming in a non-volatile memory device |
KR20080030253A (ko) * | 2006-09-29 | 2008-04-04 | 주식회사 하이닉스반도체 | 플래시 메모리 소자 및 프로그램 방법 |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11107532B2 (en) | 2019-06-25 | 2021-08-31 | SK Hynix Inc. | Memory device and method of operating memory device |
US11749345B2 (en) | 2019-06-25 | 2023-09-05 | SK Hynix Inc. | Memory device and method of operating memory device |
Also Published As
Publication number | Publication date |
---|---|
US20100214844A1 (en) | 2010-08-26 |
US8059466B2 (en) | 2011-11-15 |
KR20100096862A (ko) | 2010-09-02 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR101534274B1 (ko) | 메모리 시스템 및 그것의 프로그램 방법 | |
US8270227B2 (en) | Nonvolatile memory device and method of reading same | |
KR101530997B1 (ko) | 셀간 간섭을 집중시키는 불휘발성 메모리 장치의 프로그램 방법 | |
US8365030B1 (en) | Nonvolatile memory devices and error correction methods thereof | |
US8539138B2 (en) | Flash memory device and method of programming flash memory device | |
US8379456B2 (en) | Nonvolatile memory devices having dummy cell and bias methods thereof | |
KR101556779B1 (ko) | 저장 장치의 액세스 방법 | |
US9087608B2 (en) | Method of programming non-volatile memory device and non-volatile memory device using the same | |
KR102106866B1 (ko) | 멀티레벨 불휘발성 메모리 장치 및 프로그램 방법 | |
US8446773B2 (en) | Memory system and programming method thereof | |
US9818477B2 (en) | Methods of programming memory cells in non-volatile memory devices | |
KR101772578B1 (ko) | 불휘발성 메모리 장치의 프로그램 방법 | |
US10453542B2 (en) | Memory device and method of operating the same | |
KR20090066732A (ko) | 반도체 메모리 장치 및 그것의 읽기 페일 분석 방법 | |
KR20090000463A (ko) | 읽기 전압을 최적화할 수 있는 플래시 메모리 장치 및그것의 독출 전압 설정 방법 | |
US20100241929A1 (en) | Semiconductor Memory Device for Performing Additional ECC Correction According to Cell Pattern and Electronic System Including the Same | |
KR20080065832A (ko) | 프로그램 에러를 감소시킬 수 있는 멀티 비트 플래시메모리 장치의 프로그램 방법 | |
EP3061097B1 (en) | Programming scheme for improved voltage distribution in solid-state memory | |
KR20090055314A (ko) | 읽기 디스터번스를 줄일 수 있는 불휘발성 메모리 장치 | |
US20190391758A1 (en) | Semiconductor memory device | |
KR101518039B1 (ko) | 불휘발성 메모리 장치 및 그것의 프로그램 방법 | |
US8218371B2 (en) | Multi-bit flash memory device and method of analyzing flag cells of the same | |
KR101642930B1 (ko) | 더미 셀을 갖는 불휘발성 메모리 장치 및 그것의 프로그램 방법 | |
KR20220156397A (ko) | 메모리 장치 및 그 동작 방법 |
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 | ||
FPAY | Annual fee payment |
Payment date: 20190530 Year of fee payment: 5 |