KR101845509B1 - 비휘발성 메모리 장치 및 이의 프로그램 방법 - Google Patents

비휘발성 메모리 장치 및 이의 프로그램 방법 Download PDF

Info

Publication number
KR101845509B1
KR101845509B1 KR1020110101434A KR20110101434A KR101845509B1 KR 101845509 B1 KR101845509 B1 KR 101845509B1 KR 1020110101434 A KR1020110101434 A KR 1020110101434A KR 20110101434 A KR20110101434 A KR 20110101434A KR 101845509 B1 KR101845509 B1 KR 101845509B1
Authority
KR
South Korea
Prior art keywords
program
pulse
state
voltage
program pulse
Prior art date
Application number
KR1020110101434A
Other languages
English (en)
Other versions
KR20130037087A (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 KR1020110101434A priority Critical patent/KR101845509B1/ko
Priority to US13/600,361 priority patent/US8934298B2/en
Publication of KR20130037087A publication Critical patent/KR20130037087A/ko
Application granted granted Critical
Publication of KR101845509B1 publication Critical patent/KR101845509B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C11/00Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor
    • G11C11/56Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using storage elements with more than two stable states represented by steps, e.g. of voltage, current, phase, frequency
    • G11C11/5621Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using storage elements with more than two stable states represented by steps, e.g. of voltage, current, phase, frequency using charge storage in a floating gate
    • G11C11/5628Programming or writing circuits; Data input circuits
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C16/00Erasable programmable read-only memories
    • G11C16/02Erasable programmable read-only memories electrically programmable
    • G11C16/04Erasable programmable read-only memories electrically programmable using variable threshold transistors, e.g. FAMOS
    • G11C16/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/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/06Auxiliary circuits, e.g. for writing into memory
    • G11C16/10Programming or data input circuits
    • G11C16/12Programming voltage switching circuits

Landscapes

  • Engineering & Computer Science (AREA)
  • Microelectronics & Electronic Packaging (AREA)
  • Computer Hardware Design (AREA)
  • Read Only Memory (AREA)

Abstract

비휘발성 메모리 장치 및 이의 프로그램 방법이 개시된다. 본 발명의 실시예에 따른 비휘발성 메모리 장치의 프로그램 방법은, 제1 프로그램 상태 내지 제n 프로그램 상태 중 적어도 하나 이상의 대응되는 프로그램 상태로 메모리 셀을 프로그램 하기 위한 제1 프로그램 펄스 및 제2 프로그램 펄스를, 순차적으로 인가하는 비휘발성 메모리 장치의 프로그램 방법으로, 상기 제1 프로그램 상태 내지 상기 제n 프로그램 상태로 프로그램 하고자 하는 메모리 셀이 연결되는 비트 라인에 인히빗(inhibit) 전압을 인가하지 아니하고 상기 제1 프로그램 펄스를 인가하는 단계; 상기 제1 프로그램 상태 내지 상기 제n 프로그램 상태 중 상기 제1 프로그램 펄스에 대응되는 프로그램 상태로 프로그램 하고자 하는 메모리 셀이 연결되는 비트 라인에 상기 인히빗 전압을 인가하는 단계; 및 상기 제2 프로그램 펄스를 인가하는 단계를 구비한다.

Description

비휘발성 메모리 장치 및 이의 프로그램 방법{Nonvolatile memory device and programming method of the same}
 본 발명은 프로그램 동작 시에 전력 소모를 줄일 수 있는 비휘발성 메모리 장치 및 이의 프로그램 방법에 관한 것이다.
고용량에 대한 요구로, 플래시 메모리 장치에서 한 번에 프로그램 되어야 하는 셀의 개수도 증가되고 있다. 이에 따라, 플래시 메모리 장치의 프로그램 동작 시의 전력 소모가 증가되고 있다.
본 발명이 해결하고자 하는 과제는, 프로그램 동작 시에 전력 소모를 줄일 수 있는 비휘발성 메모리 장치 및 이의 프로그램 방법을 제공하는 것이다.
본 발명의 실시예에 따른 비휘발성 메모리 장치의 프로그램 방법은, 제1 프로그램 상태 내지 제n 프로그램 상태 중 적어도 하나 이상의 대응되는 프로그램 상태로 메모리 셀을 프로그램 하기 위한 제1 프로그램 펄스 및 제2 프로그램 펄스를, 순차적으로 인가하는 비휘발성 메모리 장치의 프로그램 방법으로, 상기 제1 프로그램 상태 내지 상기 제n 프로그램 상태로 프로그램 하고자 하는 메모리 셀이 연결되는 비트 라인에 인히빗(inhibit) 전압을 인가하지 아니하고 상기 제1 프로그램 펄스를 인가하는 단계; 상기 제1 프로그램 상태 내지 상기 제n 프로그램 상태 중 상기 제1 프로그램 펄스에 대응되는 프로그램 상태로 프로그램 하고자 하는 메모리 셀이 연결되는 비트 라인에 상기 인히빗 전압을 인가하는 단계; 및 상기 제2 프로그램 펄스를 인가하는 단계를 구비한다.
본 발명의 기술적 사상에 따른 비휘발성 메모리 장치 및 이의 프로그램 방법에 의하면, 전력 소모를 줄일 수 있는 장점이 있다.
본 발명의 상세한 설명에서 인용되는 도면을 보다 충분히 이해하기 위하여 각 도면의 간단한 설명이 제공된다.
도 1은 본 발명의 실시예에 따른 비휘발성 메모리 장치의 프로그램 방법을 나타내는 순서도이다.
도 2는 도 1의 프로그램 방법에 따라 비휘발성 메모리 장치의 워드 라인 및 비트 라인에 인가되는 전압을 나타내는 도면이다.
도 3은 싱글-레벨 셀 플래시 메모리 장치 및 멀티-레벨 셀 플래시 메모리 장치에서의 셀 산포를 나타내는 도면이다.
도 4는 ISPP(Incremental Step Pulse Program) 방식을 설명하기 위한 도면이다.
도 5는 2 비트 멀티-레벨 셀 플래시 메모리 장치에서의 본 발명의 실시예에 따른 프로그램 방법을 나타내는 순서도이다.
도 6은 도 5의 프로그램 방법에 따라 2 비트 멀티-레벨 셀 플래시 메모리 장치의 워드 라인 및 비트 라인에 인가되는 전압을 나타내는 도면이다.
도 7은 본 발명의 실시예에 따른 ISPP(Incremental Step Pulse Program) 방식을 나타내는 도면이다.
도 8 내지 도 10은 본 발명의 실시예에 따른 셀 산포 변화를 보상할 수 있는 다양한 ISPP 방식을 나타내는 도면이다.
도 11은 도 8 내지 도 10에서 보상하고자 하는 셀 산포의 변화를 설명하기 위한 도면이다.
도 12는 본 발명의 다른 실시예에 따른 비휘발성 메모리 장치에서의 프로그램 방법을 나타내는 도면이다.
도 13은 2 비트 멀티-레벨 셀 플래시 메모리 장치에서의 본 발명의 다른 실시예에 따른 프로그램 방법을 나타내는 순서도이다.
도 14는 도 13의 프로그램 방법에 따라 2 비트 멀티-레벨 셀 플래시 메모리 장치의 워드 라인 및 비트 라인에 인가되는 전압을 나타내는 도면이다.
도 15는 3 비트 멀티-레벨 셀 플래시 메모리 장치에서의 셀 산포를 나타내는 도면이다.
도 16은 전력 소모가 많은 비휘발성 메모리 장치에서의 프로그램 방법을 나타내는 도면이다.
도 17은 본 발명의 실시예에 따른 컴퓨팅 시스템을 나타내는 도면이다.
도 18은 본 발명의 실시예에 따른 메모리 카드를 나타내는 도면이다.
도 19는 본 발명의 실시예에 따른 SSD(Solid State Drive)를 나타내는 도면이다.
도 20은 도 19의 SSD를 포함하는 서버 시스템과, 서버 시스템을 포함하는 네트워크 시스템을 나타내는 도면이다.
이하, 첨부된 도면을 참조하여 본 발명의 바람직한 실시예를 상세히 설명하기로 한다.
본 발명의 실시예들은 당해 기술 분야에서 통상의 지식을 가진 자에게 본 발명을 더욱 완전하게 설명하기 위하여 제공되는 것이며, 아래의 실시예들은 여러 가지 다른 형태로 변형될 수 있으며, 본 발명의 범위가 아래의 실시예들로 한정되는 것은 아니다. 오히려, 이들 실시예는 본 개시를 더욱 충실하고 완전하게 하며 당업자에게 본 발명의 사상을 완전하게 전달하기 위하여 제공되는 것이다.
본 명세서에서 사용된 용어는 특정 실시예를 설명하기 위하여 사용되며, 본 발명을 제한하기 위한 것이 아니다. 본 명세서에서 사용된 바와 같이 단수 형태는 문맥상 다른 경우를 분명히 지적하는 것이 아니라면, 복수의 형태를 포함할 수 있다. 또한, 본 명세서에서 사용되는 경우 “포함한다(comprise)” 및/또는 “포함하는(comprising)”은 언급한 형상들, 숫자, 단계, 동작, 부재, 요소 및/또는 이들 그룹의 존재를 특정하는 것이며, 하나 이상의 다른 형상, 숫자, 동작, 부재, 요소 및/또는 그룹들의 존재 또는 부가를 배제하는 것이 아니다. 본 명세서에서 사용된 바와 같이, 용어 “및/또는”은 해당 열거된 항목 중 어느 하나 및 하나 이상의 모든 조합을 포함한다.
본 명세서에서 제1, 제2 등의 용어가 다양한 부재, 영역 및/또는 부위들을 설명하기 위하여 사용되지만, 이들 부재, 부품, 영역, 층들 및/또는 부위들은 이들 용어에 의해 한정되어서는 안됨은 자명하다. 이들 용어는 특정 순서나 상하, 또는 우열의 의미하지 않으며, 하나의 부재, 영역 또는 부위를 다른 부재, 영역 또는 부위와 구별하기 위하여만 사용된다. 따라서, 이하 상술할 제1 부재, 영역 또는 부위는 본 발명의 가르침으로부터 벗어나지 않고서도 제2 부재, 영역 또는 부위를 지칭할 수 있다.
이하, 본 발명의 실시예들은 본 발명의 실시예들을 개략적으로 도시하는 도면들을 참조하여 설명한다. 도면들에 있어서, 예를 들면, 제조 기술 및/또는 공차에 따라, 도시된 형상의 변형들이 예상될 수 있다. 따라서, 본 발명의 실시예는 본 명세서에 도시된 영역의 특정 형상에 제한된 것으로 해석되어서는 아니 되며, 예를 들면 제조상 초래되는 형상의 변화를 포함하여야 한다.
도 1은 본 발명의 실시예에 따른 비휘발성 메모리 장치의 프로그램 방법을 나타내는 순서도이고, 도 2는 도 1의 프로그램 방법에 따라 비휘발성 메모리 장치의 워드 라인 및 비트 라인에 인가되는 전압을 나타내는 도면이다.
도 1을 참조하면, 본 발명의 실시예에 따른 비휘발성 메모리 장치의 프로그램 방법은, 제1 프로그램 상태 내지 제n 프로그램 상태로 프로그램 하고자 하는 메모리 셀이 연결되는 비트 라인(BL1~BLn)에 인히빗(inhibit) 전압(Vinh)을 인가하지 아니하고 제1 프로그램 펄스(PGMPa)를 인가하는 단계(S120), 제1 프로그램 상태 내지 상기 제n 프로그램 상태 중 제1 프로그램 펄스(PGMPa)에 대응되는 프로그램 상태로 프로그램 하고자 하는 메모리 셀이 연결되는 비트 라인(도 2의 예에서, BL1~BLl)에 인히빗 전압(Vinh)을 인가하는 단계(S140) 및 제2 프로그램 펄스(PGMPb)를 인가하는 단계(S160)를 구비한다. 각 단계에 대한 보다 자세한 설명은 후술된다. 이하에서, 제1 프로그램 상태로 프로그램 하고자 하는 메모리 셀이 연결되는 비트 라인을 BL1, 제2 프로그램 상태로 프로그램 하고자 하는 메모리 셀이 연결되는 비트 라인을 BL2 및 제n 프로그램 상태로 프로그램 하고자 하는 메모리 셀이 연결되는 비트 라인을 BLn으로 나타냄을 알려둔다.
본 발명의 실시예에 따른 비휘발성 메모리 장치의 프로그램 방법은 낸드 플래시 메모리 장치(NAND flash memory device, 미도시)에서의 프로그램 방법일 수 있다. 낸드 플래시 메모리 장치는 워드 라인과 비트 라인에 인가되는 전압에 따라 각 메모리 셀이 프로그램 되거나 인히빗(inhibit)된다. 그 밖에, 낸드 플래시 메모리 장치에서 데이터를 특정 메모리 셀에 프로그램 하거나 특정 메모리 셀에 프로그램 된 데이터를 독출하기 위해, 특정 메모리 셀이 위치하는 스트링(string) 내의 다른 메모리 셀 또는 다른 트랜지스터에 인가되는 전압에 대한 제어도 병행되어야 한다. 이에 대한 자세한 설명은 생략한다.
낸드 플래시 메모리 장치는 도 3의 (a)와 같이 각 메모리 셀에 한 비트의 데이터를 프로그램 하여, 각 메모리 셀이 이레이즈 상태(erase state, E) 및 프로그램 상태(program state, P) 중 하나의 상태를 갖는 싱글-레벨 셀 플래시 메모리 장치(single-level cell flash memory device)일 수 있다. 반면, 본 발명의 실시예에 따른 낸드 플래시 메모리 장치는 하나의 메모리 셀에 2비트 이상의 데이터가 저장되는 멀티-레벨 셀 플래시 메모리 장치(multi-level cell flash memory device)일 수 있다. 이 경우, 각 메모리 셀에 프로그램 된, 또는 프로그램 하고자 하는 데이터의 값에 따른 다수의 프로그램 상태가 존재한다. 예를 들어, 하나의 페이지에 k(k는 2 이상의 정수)개의 서로 다른 데이터를 프로그램 할 수 있는 낸드 플래시 메모리 장치의 각 메모리 셀은 이레이즈 상태 및 n(n=2k-1)개의 프로그램 상태 중 하나의 상태를 갖는다. 도 3의 (b)와 같이, 낸드 플래시 메모리 장치의 각 메모리 셀은 이레이즈 상태(E) 및 3개의 프로그램 상태들(P1, P2, P3) 중 하나의 상태를 가질 수 있다. 도 3의 (b)의 이레이즈 상태(E)는 11의 값을 나타낼 수 있고, 프로그램 상태들(P1, P2, P3)은 순서대로 10, 00, 01의 값을 나타낼 수 있다. 다만, 이에 한정되는 것은 아니고 도 3의 (b)의 각 상태는 2비트의 다른 값에 대응될 수 있다.
낸드 플래시 메모리 장치는 페이지(page) 단위로 프로그램을 수행하는데, 도 4와 같이, 하나의 페이지의 모든 메모리 셀을 프로그램 하기 위해 다수의 프로그램 루프(PLOP1~PLOP_max)가 요구될 수 있고, 워드 라인에 인가되는 프로그램 펄스(PGMP1~PGMP_max)의 전압이 각 프로그램 루프마다 순차적으로 증가되는 ISPP(Incremental Step Pulse Program) 방식이 사용될 수 있다. 도 4는 각 프로그램 루프마다 스텝 전압(Vst)만큼 프로그램 펄스가 증가되는 예를 도시한다. 각 프로그램 루프는 프로그램 펄스(PGMP1~PGMP_max)와 해당 프로그램 펄스에 의한 메모리 셀의 상태를 검증하는 검증 펄스(VERP)로 구성될 수 있다. 다만, 하나의 페이지를 프로그램 함에 있어서, 최대로 설정된 최종 프로그램 루프(PLOP_max)가 종료되면 그 검증 결과와 무관하게 해당 페이지에 대한 프로그램은 종료되므로, 최종 프로그램 루프(PLOP_max)에는 검증 펄스가 포함되지 아니할 수 있다.
도 4는 각 프로그램 루프(PLOP1~PLOP_max)마다 하나의 프로그램 펄스(PGMP1~PGMP_max)가 인가되는 경우를 도시하였다. 반면, 본 발명의 실시예에 따른 비휘발성 메모리 장치의 프로그램 방법에서는 각 프로그램 루프마다 다수의 프로그램 펄스를 구비할 수 있다. 도 1 및 도 2는 각 프로그램 루프마다 제1 프로그램 펄스(PGMPa) 및 제2 프로그램 펄스(PGMPb)를 사용하여 다수의 프로그램 상태에 대한 프로그램이 수행되는 예가 도시된다.
다시 도 1 및 도 2를 참조하면, 본 발명의 실시예에 따른 프로그램 방법에서 제1 프로그램 펄스(PGMPa) 및 제2 프로그램 펄스(PGMPb) 각각에 의해, 적어도 하나 이상의 프로그램 상태가 프로그램 된다. 예를 들어, 제1 프로그램 펄스(PGMPa)는 메모리 셀을 제1 프로그램 상태 내지 제l(l은 1 이상 n-1 이하의 정수) 프로그램 상태 중 대응되는 프로그램 상태로 프로그램 하고자 하는 메모리 셀에 대한 프로그램 하기 위해 해당 워드라인에 인가된다. 그리고, 제2 프로그램 펄스(PGMPb)는 메모리 셀을 제l+1 프로그램 상태 내지 제n 프로그램 상태에 대응되는 프로그램 상태로 프로그램 한다.
임의의 프로그램 루프(PLOPi)에서의 프로그램 동작에 대하여 보다 자세히 설명한다. 각 페이지에 대한 프로그램을 위해 최대로 설정된 프로그램 루프의 개수가 j(j는 2 이상의 정수)개라면, i는 1 이상 j 이하의 임의의 정수이다.
먼저 제1 프로그램 펄스(PGMPa)가 워드 라인(WL)에 인가된다(S120). 이때, 프로그램 하고자 하는 메모리 셀이 연결되는 비트 라인(BL1 내지 BLn)에는 인히빗 전압(Vinh)이 인가되지 아니한다. 전술한 바와 같이, 도 2에서, 비트 라인 BL1은 제1 프로그램 상태로 프로그램 하고자 하는 메모리 셀이 연결되는 비트 라인을 나타내고, 비트 라인 BLl은 제l 프로그램 상태로 프로그램 하고자 하는 메모리 셀이 연결되는 비트 라인을 나타내며, 비트 라인 BLn은 제n 프로그램 상태로 프로그램 하고자 하는 메모리 셀이 연결되는 비트 라인을 나타낸다. 인히빗 전압(Vinh)이 인가되지 아니하는 비트 라인에는 접지 전압(Vss)이 인가될 수 있다. 다만, 동일한 프로그램 펄스에 대하여 서로 다른 프로그램 상태로 프로그램 하기 위해, 해당 프로그램 펄스가 인가되는 동안 서로 다른 프로그램 상태로 프로그램 하고자 하는 메모리 셀에 연결되는 비트 라인에서 서로 다른 전압이 인가될 수 있다. 접지 전압이 아닌 소정의 작은 전압 레벨로 비트 라인을 포싱(forcing)하여 낸드 플래시 메모리 장치의 메모리 셀의 문턱 전압을 달리할 수 있다.
제1 프로그램 펄스(PGMPa)가 비활성화 되고 제2 프로그램 펄스(PGMPb)가 인가되기 전에, 제1 프로그램 펄스(PGMPa)에 의해 프로그램 되는 apha리 셀이 연결되는 비트 라인(BL1~BLl, 이하 대응되는 비트 라인이라 한다)에 인히빗 전압(Vinh)이 인가된다(S140). 제1 프로그램 펄스(PGMPa)에 대응되는 비트 라인(BL1~BLl)에 인히빗 전압(Vinh)이 인가되는 동작을 비트 라인 셋업(bit line setup) 동작이라 할 수 있다. 본 발명의 실시예에 따른 프로그램 방법에서, 제1 프로그램 펄스(PGMPa)에 대응되는 비트 라인(BL1~BLl)에 인히빗 전압(Vinh)이 인가되는 동작, 즉 비트 라인 셋업 동작은 도 2의 (a)의 경우와 같이 제1 프로그램 펄스(PGMPa)가 비활성화 된 후 소정 시간(t1)이 경과한 후 수행되거나, 도 2의 (b)의 경우와 같이 제1 프로그램 펄스(PGMPa)가 비활성화 된 후 바로 수행될 수 있다. 도 2의 (a)에서 소정 시간(t1)은 후술되는 도 16에서 인히빗 전압(Vinh)의 전압 레벨을 갖는 비트 라인을 접지 전압(Vss)의 전압 레벨로 다운(down)시키는 비트 라인 리커버리(bit line recovery) 동작을 위해 설정된 시간일 수 있다. 본 발명의 실시예에 따른 프로그램 방법에 의하면 비트 라인 리커버리 동작이 스킵(skip)되므로, 도 2의 (b)와 같이 해당 동작에 대해 설정된 시간을 고려하지 아니하고 바로 다음 동작(비트 라인 셋업)이 수행될 수 있다. 이하에서는 설명의 편의를 위해, 도 2의 (a)와 같이, 제1 프로그램 펄스(PGMPa)가 비활성화 된 후 소정 시간(t1)이 경과된 후에 비트 라인 셋업 동작이 수행되는 경우에 한하여 설명한다.
제1 프로그램 펄스(PGMPa)에 대응되는 비트 라인(BL1~BLl)에 인히빗 전압(Vinh)이 인가된 후, 제2 프로그램 펄스(PGMPb)가 인가된다(S160). 따라서, 제2 프로그램 펄스(PGMPb)는 제1 프로그램 펄스(PGMPa)에 대응되는 비트 라인(BL1~BLl)에 연결되는 메모리 셀의 문턱 전압을 변화시키지 아니하고, 제2 프로그램 펄스(PGMPb)에 대응되는 비트 라인(BLl+1~BLn)에 연결되는 메모리 셀에 한하여 프로그램 동작을 수행할 수 있다. 인히빗 전압(Vinh)이 인가된 비트 라인(BL1~BLl)은 제2 프로그램 펄스(PGMPb)가 비활성화 된 후에는 접지 전압(Vss)의 전압 레벨로 레벨 다운될 수 있다.
이하에서는 도 3의 (b)와 같이, 각 메모리 셀에 2 비트의 데이터가 저장되는 멀티-레벨 셀 플래시 메모리 장치에서의 프로그램 방법을 예를 들어, 본 발명의 실시예에 따른 프로그램 방법을 보다 자세히 설명한다.
도 5는 2 비트 멀티-레벨 셀 플래시 메모리 장치에서의 본 발명의 실시예에 따른 프로그램 방법을 나타내는 순서도이고, 도 6은 도 5의 프로그램 방법에 따라 비휘발성 메모리 장치의 워드 라인 및 비트 라인에 인가되는 전압을 나타내는 도면이다.
도 3의 (b), 도 5 및 도 6을 참조하면, 임의의 프로그램 루프(PLOPi)가 시작되면, 이레이즈 상태(E)를 유지하고자 하는 메모리 셀이 연결되는 비트 라인(BL0)에 인히빗 전압(Vinh)이 인가된다(S510). 다음으로, 제1 프로그램 상태(P1) 내지 제3 프로그램 상태(P3)로 프로그램 하고자 하는 메모리 셀이 연결되는 비트 라인(BL1~BL3)에 인히빗 전압(Vinh)을 인가하지 아니한 상태에서, 해당 워드 라인(WL, 프로그램 하고자 하는 메모리 셀이 연결된 워드 라인)에 제1 프로그램 펄스(PGMPa)가 인가된다(S520). 대신, 제1 프로그램 상태(P1) 내지 제3 프로그램 상태(P3)로 프로그램 하고자 하는 메모리 셀이 연결되는 비트 라인(BL1~BL3)에는 접지 전압(Vss)이 인가될 수 있다.
제1 프로그램 펄스(PGMPa)가 비활성화 된 후에, 제1 프로그램 펄스(PGMPa)에 대응되는, 제1 프로그램 상태(P1)로 프로그램 하고자 하는 메모리 셀이 연결되는 비트 라인(BL1)에 인히빗 전압(Vinh)이 인가된다(S540). 제1 프로그램 펄스(PGMPa)에 의해 메모리 셀은 제1 프로그램 상태(P1)로 프로그램 될 수 있다. 다만, 제1 프로그램 상태(P1)의 패스트 셀(fast cell, 산포 P1의 앞 쪽(문턱 전압이 낮은 쪽)에 위치한 메모리 셀)은 프로그램이 되는 반면, 슬로우 셀(slow cell, 산포 P1의 뒤쪽(문턱 전압이 높은 쪽)에 위치한 메모리 셀)은 프로그램이 되지 아니할 수 있다. 슬로우 셀의 경우, 추가적으로 수행되는 프로그램 루프에서의 제1 프로그램 펄스(PGMPa)에 의해 프로그램 될 수 있다.
계속해서 도 3의 (b), 도 5 및 도 6을 참조하면, 제2 프로그램 상태(P2) 및 제3 프로그램 상태(P3)에 대응되는 제2 프로그램 펄스(PGMPb)가 해당 워드 라인(WL)에 인가된다(S560). 이레이즈 상태(E)의 메모리 셀이 연결되는 비트 라인(BL0) 및 제1 프로그램 상태(P1)로 프로그램 하고자 하는 메모리 셀이 연결되는 비트 라인(BL1)은 제2 프로그램 펄스(PGMPb)가 비활성화 될 때까지 인히빗 전압(Vinh)의 전압 레벨로 유지된다.
이때, 제1 프로그램 상태(P1) 내지 제3 프로그램 상태(P3)는 각각, "10", "00" 및 "01"의 데이터 값에 대한 프로그램 상태일 수 있다. 이 경우, 제1 프로그램 펄스(PGMPa)는 메모리 셀을 "10"으로 프로그램 하기 위해 인가되는 프로그램 펄스이고, 제2 프로그램 펄스(PGMPb)는 메모리 셀을 "00" 및 "01"로 프로그램 하기 위해 인가되는 프로그램 펄스이다.
도 4에서 설명한 바와 같이, 본 발명의 실시예에 따른 프로그램 방법은 각 프로그램 루프마다 제1 프로그램 펄스(PGMPa) 및 제2 프로그램 펄스(PGMPb)의 전압이 증가되는 ISPP 방식을 적용할 수 있다. 이에 대하여 도 7을 통해 좀 더 자세히 설명한다.
도 7은 본 발명의 실시예에 따른 ISPP(Incremental Step Pulse Program) 방식을 나타내는 도면이다.
도 5 내지 도 7을 참조하면, 각 프로그램 루프(PLOP1~PLOP_max)는 제1 프로그램 펄스(PGMPa) 및 제2 프로그램 펄스(PGMPb)를 포함한다. 다만, 최종 프로그램 루프(PLOP_max)를 제외한 각 프로그램 루프에 포함되어야 하는 도 4의 검증 펄스(VERP)는 설명의 편의상 그 도시를 생략하였다.
또한, 도 7의 최종 프로그램 루프(PLOP_max)에는 제1 프로그램 펄스(PGMPa)가 포함되지 아니하는 것으로 도시된다. 이는, 본 발명의 실시예에 따른 프로그램 방법에 의하면, 제1 프로그램 펄스(PGMPa)에 대응되는 프로그램 상태는 최종 프로그램 루프(PLOP_max) 이전에 프로그램이 종료될 수 있기 때문이다. 예를 들어, 도 7의 최종 프로그램 루프(PLOP_max)가 하나의 페이지에 대한 13번째 프로그램 루프라면, 10번째 프로그램 루프가 완료되는 때에, 도 3의 (b) 및 도 6의 제1 프로그램 펄스(PGMPa)에 대응되는 제1 프로그램 상태(P1)로 프로그램 하고자 했던 메모리 셀이 모두, 해당 프로그램 상태를 갖게 될 수 있다. 이 경우, 11번째 프로그램 루프부터는 제1 프로그램 펄스(PGMPa)가 해당 워드 라인에 인가되지 아니할 수 있다.
계속해서 도 5 내지 도 7을 참조하면, 각 프로그램 루프(PLOP1~PLOP_max)마다 제1 프로그램 펄스(PGMPa1~PGMPa3)가 제1 스텝 전압(Vsta)만큼씩 증가한다. 마찬가지로, 각 프로그램 루프(PLOP1~PLOP_max)마다 제2 프로그램 펄스(PGMPb1~PGMPb_max)가 제2 스텝 전압(Vstb)만큼씩 증가한다.
제1 스텝 전압(Vsta) 및 제2 스텝 전압(Vstb)은 같거나 다를 수 있다. 그리고, 제1 프로그램 펄스의 펄스 폭(pwa)과 제2 프로그램 펄스의 펄스 폭(pwb)은 같거나 다를 수 있다.
본 발명의 실시예에 따른 프로그램 방법은 도 7의 프로그램 루프에 따라, 제1 스텝 전압(Vsta) 및 제2 스텝 전압(Vstb)이 증가되는 크기가 달라질 수 있다. 예를 들어, 도 8에 도시되는 바와 같이, x-1번째 프로그램 루프(PLOPx-1)의 제1 프로그램 펄스(PGMPax-1)와 x번째 프로그램 루프(PLOPx)의 제1 프로그램 펄스(PGMPax)의 차이를 나타내는 제1 스텝 전압(Vsta)보다, x번째 프로그램 루프(PLOPx)의 제1 프로그램 펄스(PGMPax)와 x+1번째 프로그램 루프(PLOPx+1)의 제1 프로그램 펄스(PGMPax+1)의 차이를 나타내는 제1 스텝 전압(Vsta')이 더 작을 수 있다. 마찬가지로, x-1번째 프로그램 루프(PLOPx-1)의 제2 프로그램 펄스(PGMPbx-1)와 x번째 프로그램 루프(PLOPx)의 제2 프로그램 펄스(PGMPbx)의 차이를 나타내는 제2 스텝 전압(Vstb)보다, x번째 프로그램 루프(PLOPx)의 제2 프로그램 펄스(PGMPbx)와 x+1번째 프로그램 루프(PLOPx+1)의 제2 프로그램 펄스(PGMPbx+1)의 차이를 나타내는 제2 스텝 전압(Vstb')이 더 작을 수 있다. 도 8은 제1 스텝 전압의 변화(Vsta'-Vsta)와 제2 스텝 전압의 변화(Vstb'-Vstb)가 다른 예를 도시하고 있으나, 같을 수도 있다.
그리고, 본 발명의 실시예에 따른 프로그램 방법은 도 7의 프로그램 루프에 따라, 제1 프로그램 펄스(PGMPa) 및 제2 프로그램 펄스(PGMPb)의 펄스 폭이 달라질 수 있다. 예를 들어, 도 9에 도시되는 바와 같이, x-1번째 프로그램 루프(PLOPx-1)의 제1 프로그램 펄스(PGMPax-1)의 펄스 폭(pwa)보다 x번째 프로그램 루프(PLOPx)의 제1 프로그램 펄스(PGMPax)의 펄스 폭(pwa')이 더 좁을 수 있다. 그리고, x번째 프로그램 루프(PLOPx)의 제1 프로그램 펄스(PGMPax)의 펄스 폭(pwa')보다 x+1번째 프로그램 루프(PLOPx+1)의 제1 프로그램 펄스(PGMPax+1)의 펄스 폭(pwa")이 더 좁을 수 있다. 마찬가지로, x-1번째 프로그램 루프(PLOPx-1)의 제2 프로그램 펄스(PGMPbx-1) 의 펄스 폭(pwb)보다 x번째 프로그램 루프(PLOPx)의 제2 프로그램 펄스(PGMPbx)의 펄스 폭(pwb')이 더 좁을 수 있다. 그리고, x번째 프로그램 루프(PLOPx)의 제2 프로그램 펄스(PGMPbx) 펄스 폭(pwb')보다 x+1번째 프로그램 루프(PLOPx+1)의 제2 프로그램 펄스(PGMPbx+1)의 펄스 폭(pwb")이 더 좁을 수 있다.
도 9는 제1 프로그램 펄스의 펄스 폭의 변화(pwa'-pwa 또는 pwa"-pwa')가 제2 프로그램 펄스의 펄스 폭의 변화(pwb'-pwb 또는 pwb"-pwb')와 동일한 예를 도시하였다(pwa'-pwa = pwb'-pwb, 또는 pwa"-pwa' = pwb"-pwb'). 그러나, 이에 한정되는 것은 아니다. 도 10에 도시되는 바와 같이, 제1 프로그램 펄스의 펄스 폭의 변화(pwa'-pwa 또는 pwa"-pwa')보다 제2 프로그램 펄스의 펄스 폭의 변화(wb'-pwb 또는 pwb"-pwb')가 더 클 수도 있다(pwa'-pwa < pwb'-pwb, 또는 pwa"-pwa' < pwb"-pwb').
도 8 내지 도 10에서 x는, 도 7의 예의 경우, 2 이상 max-1 이하의 정수일 수 있다. 또한, 도 7의 프로그램 루프들 중, 도 8 내지 도 10의 x 번째 프로그램 루프(PLOPx)와 같이, 연속된 프로그램 루프(PLOPx-1, PLOPx+1)와의 관계(스텝 전압 또는 펄스 폭의 변화)를 갖는 프로그램 루프가 적어도 하나 이상 포함될 수 있다. 나아가 본 발명의 실시예에 따른 프로그램 방법에 의하면, 프로그램 펄스가 증가함에 따라 스텝 전압이 작아지면서 또한 동시에 프로그램 펄스의 펄스 폭도 좁아질 수 이다.
이렇듯, 프로그램 루프에 따른 스텝 전압 또는 프로그램 펄스의 펄스 폭을 조절함으로써, 다른 프로그램 펄스에 의해 프로그램 이전에 이미 셀 문턱 전압에 변화가 발생하더라도, 그 변화를 보상할 수 있다.
도 3의 (b) 및 도 6의 예에서, 제1 프로그램 펄스(PGMPa)가 인가되는 때에, 제1 프로그램 펄스(PGMPa)에 대응되는 제1 프로그램 상태(P1)가 아닌, 제2 프로그램 펄스(PGMPb)에 대응되는 제2 프로그램 상태(P2) 또는 제3 프로그램 상태(P3)는 제1 프로그램 상태(P1)보다 메모리 셀의 문턱 전압이 크므로, 제1 프로그램 상태(P1)에 적응적인 제1 프로그램 펄스(PGMPa)에 의하여 프로그램 되지 아니할 수 있다. 다만, 비록 제1 프로그램 펄스(PGMPa)의 영향으로 제2 프로그램 펄스(PGMPb)에 대응되는 제2 프로그램 상태(P2) 또는 제3 프로그램 상태(P3)의 산포가 다소 변화되더라도, 예를 들어, 도 11의 점선과 같이 제2 프로그램 상태(P2) 또는 제3 프로그램 상태(P3)의 산포가 변화되더라도, 전술된 도 8 내지 도 10 등과 같이, 프로그램 루프의 증가에 따른 스텝 전압 또는 프로그램 펄스의 펄스 폭을 변화시켜 산포의 변화를 보상할 수 있다.
도 12는 본 발명의 다른 실시예에 따른 프로그램 방법을 나타내는 도면이다.
도 12를 참조하면, 도 6의 프로그램 방법에서 제1 프로그램 펄스(PGMPa)가 메모리 셀을 제1 프로그램 상태(P1)로 프로그램 하기 위해 워드 라인(WL)에 인가되는 프로그램 펄스이고, 제2 프로그램 펄스(PGMPb)가 메모리 셀을 제2 프로그램 상태(P2) 또는 제3 프로그램 상태(P3)로 프로그램 하기 위해 워드 라인(WL)에 인가되는 프로그램 펄스인 반면, 도 12의 프로그램 방법에서 제1 프로그램 펄스(PGMPa)가 메모리 셀을 제1 프로그램 상태(P1) 또는 제2 프로그램 상태(P2)로 프로그램 하기 위해 워드 라인(WL)에 인가되는 프로그램 펄스이고, 제2 프로그램 펄스(PGMPb)가 메모리 셀을 제3 프로그램 상태(P3)로 프로그램 하기 위해 워드 라인(WL)에 인가되는 프로그램 펄스일 수 있다. 이렇듯, 본 발명의 실시예에 따른 2비트 멀티-레벨 셀 플래시 메모리 장치에서 3개의 프로그램 상태를 프로그램 하는 방법에 의하면, 제1 프로그램 펄스(PGMPa)가 하나의 프로그램 상태(P1)를 형성하고 제2 프로그램 펄스(PGMPb)가 두 개의 프로그램 상태(P2, P3)를 형성하거나, 반대로 제1 프로그램 펄스(PGMPa)가 두 개의 프로그램 상태(P1, P2)를 형성하고 제2 프로그램 펄스(PGMPb)가 하나의 프로그램 상태(P2)를 형성할 수 있다.
도 13은 2비트 멀티-레벨 셀 플래시 메모리 장치에서의 본 발명의 다른 실시예에 따른 프로그램 방법을 나타내는 순서도이고, 도 14는 도 13의 프로그램 방법에 따라 플래시 메모리 장치의 워드 라인 및 비트 라인에 인가되는 전압을 나타내는 도면이다.
도 3의 (b), 도 13 및 도 14를 참조하면, 임의의 프로그램 루프(PLOPi)가 시작되는 ta 시점에서, 이레이즈 상태(E)를 유지하고자 하는 메모리 셀이 연결되는 비트 라인(BL0)에 인히빗 전압(Vinh)이 인가될 수 있다(S1310). 다음으로, 제1 프로그램 상태(P1) 내지 제3 프로그램 상태(P3)로 프로그램 하고자 하는 메모리 셀이 연결되는 비트 라인(BL1~BL3)에 인히빗 전압(Vinh)을 인가하지 않은 상태에서, 해당 워드 라인(WL)에 제1 프로그램 펄스(PGMPa)가 인가된다(S520). 대신, 제1 프로그램 상태(P1) 내지 제3 프로그램 상태(P3)로 프로그램 하고자 하는 메모리 셀이 연결되는 비트 라인(BL1~BL3)에는 접지 전압(Vss)이 인가될 수 있다.
제1 프로그램 펄스(PGMPa)가 비활성화 된 후 소정 시간이 경과된 tb 시점에서, 제1 프로그램 펄스(PGMPa)에 대응되는, 제1 프로그램 상태(P1)로 프로그램 하고자 하는 메모리 셀이 연결되는 비트 라인(BL1)에 인히빗 전압(Vinh)이 인가될 수 있다(S1340). 그리고, 제2 프로그램 상태(P2)에 대응되는 제2 프로그램 펄스(PGMPb)가 워드 라인(WL)에 인가될 수 있다(S1360).
나아가, 본 발명의 다른 실시예에 따른 프로그램 방법은, 제3 프로그램 상태(P3)를, 도 6과 같은 제2 프로그램 펄스(PGMPb)가 아닌, 별도의 제3 프로그램 펄스(PGMPc)를 이용하여 형성할 수 있다. 이를 위해, 본 발명의 다른 실시예에 따른 프로그램 방법은, 제2 프로그램 펄스(PGMPb)가 비활성화 된 후 소정 시간이 경과된 tc 시점에서, 제2 프로그램 펄스(PGMPb)에 대응되는, 제2 프로그램 상태(P2)로 프로그램 하고자 하는 메모리 셀이 연결되는 비트 라인(BL2)에 인히빗 전압(Vinh)을 인가하고(S1370), 제3 프로그램 펄스(PGMPc)를 해당 워드 라인(WL)에 인가하는 단계(S1380)를 더 구비할 수 있다.
각각, ta, tb 및 tc시점에서 인히빗 전압(Vinh)의 전압 레벨을 갖게 된 비트 라인 BL0, BL1및 BL2는 제3 프로그램 펄스(PGMPc)가 비활성화 되는 td 시점까지 그 전압 레벨로 유지된다.
도 13 및 도 14는 2 비트 멀티-레벨 셀 플래시 메모리 장치에서의 프로그램 동작에 한하여 설명하였으나, 3 비트 이상의 멀티-레벨 셀 플래시 메모리 장치에서의 7개 이상의 프로그램 상태를 형성함에 있어서도, 이와 유사하게 동작 될 수 있다. 예를 들어, 도 15와 같은 3 비트 멀티-레벨 셀 플래시 메모리 장치에서, 도 13 및 도 14와 같은 방식으로 워드 라인(WL)에 3개의 프로그램 펄스들(PGMPa, PGMPb, PGMPc)이 순차적으로 인가되고, 프로그램 펄스들(PGMPa, PGMPb, PGMPc)에 각각 대응되는 프로그램 상태가 형성될 수 있다.
다만, 도 15는 도 3의 (b)보다 프로그램 상태가 더 많으므로, 도 3의 (b)에 대한 프로그램 방법을 나타내는 도 13 및 도 14가 각 프로그램 펄스에 의해 하나씩의 프로그램 상태를 형성한 반면, 도 15의 플래시 메모리 장치에 대하여는, 각 프로그램 펄스에 의해 하나 이상의 프로그램 상태가 형성되어야 할 것이다. 예를 들어, 도 14의 제1 프로그램 펄스(PGMPa)에 의해 도 15의 제1 프로그램 상태(P1) 및 제2 프로그램 상태(P2)가 형성되고, 도 14의 제2 프로그램 펄스(PGMPb)에 의해 도 15의 제3 프로그램 상태(P3) 및 제4 프로그램 상태(P4)가 형성되며, 도 14의 제3 프로그램 펄스(PGMPc)에 의해 도 15의 제5 프로그램 상태(P5) 내지 제7 프로그램 상태(P7)가 형성될 수 있다. 다만, 이에 한정되는 것은 아니고 각 프로그램 펄스에 대응되는 프로그램 상태의 개수를 다양하게 설정할 수 있다.
이상에서 살펴본 본 발명의 실시예에 따른 비휘발성 메모리 장치에서의 프로그램 방법에 의하면, 각 프로그램 루프에서 각 비트 라인에 인히빗 전압을 한 번 이하로 인가함으로써, 도 16과 같이, 하나의 프로그램 루프에 포함되는 다수의 프로그램 펄스 각각을 비트 라인에 인가하기 전에, 해당 프로그램 펄스에 대응되는 비트 라인을 제외한 모든 비트 라인에 인히빗 전압을 인가함에 따른 전력 소모를 줄일 수 있다. 또한, 본 발명의 실시예에 따른 비휘발성 메모리 장치에서의 프로그램 방법에 의하면, 각 프로그램 펄스를 인가한 후에 인히빗 전압이 인가된 상태의 비트 라인에 대한 리커버리 동작을 수행하지 아니함으로써, 프로그램을 보다 간단히 수행할 수 있다.
도 17은 본 발명의 실시예에 따른 컴퓨팅 시스템 장치를 나타내는 블럭도이다.
본 발명의 실시예에 따른 컴퓨팅 시스템 장치(CSYS)는 버스(BUS)에 전기적으로 연결된 프로세서(CPU), 사용자 인터페이스(UI) 및 반도체 메모리 시스템(MSYS)을 구비한다. 반도체 메모리 시스템(MSYS)은 메모리 컨트롤러(Ctrl) 및 메모리 장치(MEM)를 포함한다. 메모리 장치(MEM)에는 프로세서(CPU)에 의해서 처리된 또는 처리될 N-비트 데이터(N은 1 또는 그 보다 큰 정수)가, 메모리 컨트롤러(Ctrl)를 통해, 저장될 것이다. 도 17의 반도체 메모리 시스템(MSYS)에 포함되는 메모리 장치(MEM)는 도 1 등의 프로그램 방법으로 프로그램을 수행하여 상기 N-비트 데이터를 저장할 수 있다. 따라서, 도 17의 컴퓨팅 시스템 장치(CSYS)는 메모리 장치(MEM)로의 프로그램에 따른 전력 소모를 줄일 수 있다.
본 발명의 실시예에 따른 컴퓨팅 시스템 장치(CSYS)는 파워 공급 장치(PS)를 더 구비할 수 있다. 또한, 메모리 장치(MEM)가 도 1 등의 프로그램 방법으로 프로그램을 수행하는 플래시 메모리 장치일 경우, 본 발명의 실시예에 따른 컴퓨팅 시스템 장치(CSYS)는 휘발성 메모리 장치(예를 들어, RAM)을 더 구비할 수 있다.
본 발명의 실시예에 따른 컴퓨팅 시스템 장치(CSYS)가 모바일 장치인 경우, 컴퓨팅 시스템의 동작 전압을 공급하기 위한 배터리 및 베이스밴드 칩셋(baseband chipset)과 같은 모뎀이 추가적으로 제공될 수 있다. 또한, 본 발명의 실시예에 따른 컴퓨팅 시스템 장치(CSYS)에는 응용 칩셋(application chipset), 카메라 이미지 프로세서(Camera Image Processor: CIS), 모바일 디램, 등이 더 제공될 수 있음은 이 분야의 통상적인 지식을 습득한 자들에게 자명한 사항인 바, 더 자세한 설명은 생략한다.
도 18은 본 발명의 실시예에 따른 메모리 카드를 나타내는 블럭도이다.
도 18을 참조하면, 본 발명의 실시예에 따른 메모리 카드(MCRD)는, 메모리 컨트롤러(Ctrl) 및 메모리 장치(MEM)를 구비한다. 메모리 컨트롤러(Ctrl)는 입출력 수단(I/O)를 통해 수신되는 외부의 호스트(미도시)의 요청에 응답하여 메모리 장치(MEM)로의 데이터 기입 또는 메모리 장치(MEM)로부터의 데이터 독출을 제어한다. 또한, 메모리 컨트롤러(Ctrl)는 도 18의 메모리 장치(MEM)가 플래시 메모리 장치인 경우, 메모리 장치(MEM)에 대한 소거 동작을 제어한다. 본 발명의 실시예에 따른 메모리 카드(MCRD)의 메모리 컨트롤러(Ctrl)는 상기와 같은 제어 동작을 수행하기 위해, 각각 호스트 및 메모리 장치와의 인터페이스를 수행하는 인터페이스부들(미도시), 및 램(RAM) 등을 구비할 수 있다. 본 발명의 실시예에 따른 메모리 카드(MCRD)의 메모리 장치(MEM)는 도 1 등의 프로그램 방법으로 프로그램을 수행하는 플래시 메모리 장치일 수 있다. 따라서, 도 18의 메모리 카드(MCRD)는 메모리 장치(MEM)로의 프로그램에 따른 전력 소모를 줄일 수 있다.
도 18의 메모리 카드(MCRD)는 컴팩트 플래시 카드(CFC: Compact Flash Card), 마이크로 드라이브(Microdrive), 스마트 미디어 카드(SMC: Smart Media Card) 멀티미디어 카드(MMC: Multimedia Card), 보안 디지털 카드(SDC: Security Digital Card), 메모리 스틱(Memory Stick), 및 USB 플래시 메모리 드라이버 등으로 구현될 수 있다.
도 19는 본 발명의 실시예에 따른 솔리드 스테이트 드라이브(SSD: Solid State Drive)를 나타내는 도면이다.
도 19를 참조하면, 본 발명의 실시예에 따른 SSD는 SSD 컨트롤러(SCTL) 및 메모리 장치(MEM)를 포함한다. SSD 컨트롤러(SCTL)는 버스(BUS)로 연결되는 프로세서(PROS), 램(RAM), 캐쉬 버퍼(CBUF) 및 메모리 컨트롤러(Ctrl)를 구비할 수 있다. 프로세서(PROS)는 호스트(미도시)의 요청(명령, 어드레스, 데이터)에 응답하여 메모리 컨트롤러(Ctrl)가 메모리 장치(MEM)와 데이터를 송수신하도록 제어한다. 본 발명의 실시예에 따른 SSD의 프로세서(PROS) 및 메모리 컨트롤러(Ctrl)는 하나의 ARM 프로세서로 구현될 수도 있다. 프로세서(PROS)의 동작에 필요한 데이터는 램(RAM)에 로딩될 수 있다.
호스트 인터페이스(HOST I/F)는 호스트의 요청을 수신하여 프로세서(PROS)로 전송하거나, 메모리 장치(MEM)로부터 전송된 데이터를 호스트로 전송한다. 호스트 인터페이스(HOST I/F)는 USB(Universal Serial Bus), MMC(Man Machine Communication), PCI-E(Peripheral Component Interconnect-Express), SATA(Serial Advanced Technology Attachment), PATA(Parallel Advanced Technology Attachment), SCSI(Small Computer System Interface), ESDI(Enhanced Small Device Interface), 그리고 IDE(Intelligent Drive Electronics) 등과 같은 다양한 인터페이스 프로토콜로, 호스트와 인터페이스 할 수 있다. 메모리 장치(MEM)로 전송하고자 하거나, 메모리 장치(MEM)로부터 전송된 데이터는 캐쉬 버퍼(CBUF)에 임시로 저장될 수 있다. 캐쉬 버퍼(CBUF)는 SRAM 등일 수 있다.
본 발명의 실시예에 따른 SSD에 구비되는 메모리 장치(MEM)는 도 1 등의 프로그램 방법에 의하여 프로그램이 수행되는 메모리 장치(MEM)일 수 있다. 따라서, 도 19의 SSD에 의하면, 메모리 장치(MEM)로의 프로그램에 따른 전력 소모를 줄일 수 있다.
도 20은 SSD를 포함하는 서버 시스템 및 네트워크 시스템을 나타내는 도면이다.
도 20을 참조하면, 본 발명의 실시예에 따른 네트워크 시스템(NSYS)은 네트워크를 통해 연결되는 서버 시스템(SSYS) 및 다수의 단말들(TEM1~TEMn)을 포함할 수 있다. 본 발명의 실시예에 따른 서버 시스템(SSYS)은 네트워크에 연결되는 다수의 단말들(TEM1~TEMn)로부터 수신되는 요청을 처리하는 서버(SERVER) 및 단말들(TEM1~TEMn)로부터 수신되는 요청에 대응되는 데이터를 저장하는 SSD를 포함하는 구비할 수 있다. 이때, 도 20의 SSD는 도 19의 SSD일 수 있다. 즉, 도 20의 SSD는 SSD 컨트롤러(SCTL) 및 메모리 장치(MEM)를 포함하고, 메모리 장치(MEM)는 도 1 등의 프로그램 방법으로 프로그램을 수행하는 플래시 메모리 장치일 수 있다. 따라서, 도 20의 서버 시스템(SSYS) 및 네트워크 시스템(NSYS)에 의하면, 메모리 장치(MEM)로의 프로그램에 따른 전력 소모를 줄일 수 있다.
이상에서와 같이 도면과 명세서에서 최적 실시예가 개시되었다. 여기서 특정한 용어들이었으나, 이는 단지 본 발명을 설명하기 위한 목적에서 사용된 것이지 의미 한정이나 특허청구범위에 기재된 본 발명의 범위를 제한하기 위하여 사용된 것은 아니다. 그러므로 본 기술분야의 통상의 지식을 가진 자라면 이로부터 다양한 변형 및 균등한 타 실시예가 가능하다는 점을 이해할 것이다. 따라서, 본 발명의 진정한 기술적 보호범위는 첨부된 특허청구범위의 기술적 사상에 의해 정해져야 할 것이다.

Claims (10)

  1. 복수의 프로그램 루프를 포함하는 비휘발성 메모리 장치의 프로그램 방법에 있어서,
    상기 복수의 프로그램 루프 각각에서, 제1 프로그램 상태 내지 제n 프로그램 상태 중 적어도 하나 이상의 대응되는 프로그램 상태로 선택 메모리 셀들을 프로그램 하기 위한 제1 프로그램 펄스 및 제2 프로그램 펄스를 상기 선택 메모리 셀들에 연결된 워드 라인에 순차적으로 인가하는 단계;
    상기 제1 프로그램 펄스가 상기 워드 라인에 인가되는 동안, 상기 선택 메모리 셀들이 연결되는 비트 라인에 프로그램 허용 전압을 인가하는 단계;
    상기 제1 프로그램 펄스의 비활성화 이후 상기 제2 프로그램 펄스가 인가되기 전에, 상기 선택 메모리 셀들 중 상기 제1 프로그램 펄스에 대응되는 프로그램 상태로 프로그램 하고자 하는 제1 선택 메모리 셀이 연결되는 제1 비트 라인에 인히빗 전압을 인가하는 단계; 및
    상기 제1 비트 라인에 상기 인히빗 전압이 인가되는 동안, 상기 제2 프로그램 펄스를 상기 워드 라인에 인가하는 단계를 포함하고,
    상기 복수의 프로그램 루프 각각에서, 상기 제1 비트 라인에는 상기 인히빗 전압이 한 번 인가되는 것을 특징으로 하는 프로그램 방법.
  2. 제1 항에 있어서,
    상기 n은 3이고,
    상기 제1 프로그램 펄스는 상기 제1 프로그램 상태로 메모리 셀을 프로그램 하기 위한 프로그램 펄스이며,
    상기 제2 프로그램 펄스는 상기 제2 프로그램 상태 및 상기 제3 프로그램 상태 중 하나의 프로그램 상태로 메모리 셀을 프로그램 하기 위한 프로그램 펄스인 것을 특징으로 하는 프로그램 방법.
  3. 제1 항에 있어서,
    상기 n은 3이고,
    상기 제1 프로그램 펄스는 상기 제1 프로그램 상태 및 상기 제2 프로그램 상태로 메모리 셀을 프로그램 하기 위한 프로그램 펄스이며,
    상기 제2 프로그램 펄스는 상기 제3 프로그램 상태로 메모리 셀을 프로그램 하기 위한 프로그램 펄스인 것을 특징으로 하는 프로그램 방법.
  4. 제1 항에 있어서,
    상기 제1 프로그램 펄스가 인가되기 전에,
    이레이즈(erase) 상태를 유지하고자 하는 메모리 셀이 연결되는 비트 라인에 상기 인히빗 전압을 인가하는 단계를 더 구비하는 것을 특징으로 하는 프로그램 방법.
  5. 제1 항에 있어서,
    상기 제1 프로그램 펄스를 인가한 후에,
    비트 라인 리커버리(bit line recovery) 동작을 스킵(sikp)하는 것을 특징으로 하는 프로그램 방법.
  6. 제1 항에 있어서,
    상기 제1 프로그램 펄스 및 상기 제2 프로그램 펄스는,
    상기 복수의 프로그램 루프들 마다 순차적으로 스텝 전압만큼 커지는 것을 특징으로 하는 프로그램 방법.
  7. 제6 항에 있어서,
    제a-1 프로그램 루프에서 제a 프로그램 루프로 증가되는 스텝 전압보다 제a 프로그램 루프에서 제a+1 프로그램 루프로 증가되는 스텝 전압이 작거나, 제a 프로그램 루프에서의 상기 제1 프로그램 펄스 및 상기 제2 프로그램 펄스의 펄스 폭이, 제a+1 프로그램 루프에서의 상기 제1 프로그램 펄스 및 상기 제2 프로그램 펄스의 펄스 폭보다 좁은 것을 특징으로 하는 프로그램 방법.
  8. 제7 항에 있어서,
    상기 제a 프로그램 루프 및 상기 제a+1 프로그램 루프에서의 상기 제1 프로그램 펄스의 펄스 폭의 차이가, 상기 제a 프로그램 루프 및 상기 제a+1 프로그램 루프에서의 상기 제2 프로그램 펄스의 펄스 폭의 작은 것을 특징으로 하는 프로그램 방법.
  9. 제1 항에 있어서,
    상기 제2 프로그램 펄스를 인가한 후에,
    상기 제2 프로그램 펄스에 대응되는 프로그램 상태로 프로그램 하고자 하는 메모리 셀이 연결되는 비트 라인에 상기 인히빗 전압을 인가하는 단계; 및
    제n+1 프로그램 상태 내지 제m 프로그램 상태 중 하나로 메모리 셀을 프로그램 하기 위한 제3 프로그램 펄스를 인가하는 단계를 더 구비하는 것을 특징으로 하는 프로그램 방법.
  10. 제9 항에 있어서,
    상기 제1 프로그램 펄스에 대응되는 프로그램 상태로 프로그램 하고자 하는 상기 제1 선택 메모리 셀이 연결되는 상기 제1 비트 라인은 상기 인히빗 전압의 전압 레벨을 유지하는 것을 특징으로 하는 프로그램 방법.
KR1020110101434A 2011-10-05 2011-10-05 비휘발성 메모리 장치 및 이의 프로그램 방법 KR101845509B1 (ko)

Priority Applications (2)

Application Number Priority Date Filing Date Title
KR1020110101434A KR101845509B1 (ko) 2011-10-05 2011-10-05 비휘발성 메모리 장치 및 이의 프로그램 방법
US13/600,361 US8934298B2 (en) 2011-10-05 2012-08-31 Nonvolatile memory device and related programming method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020110101434A KR101845509B1 (ko) 2011-10-05 2011-10-05 비휘발성 메모리 장치 및 이의 프로그램 방법

Publications (2)

Publication Number Publication Date
KR20130037087A KR20130037087A (ko) 2013-04-15
KR101845509B1 true KR101845509B1 (ko) 2018-04-05

Family

ID=48041977

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020110101434A KR101845509B1 (ko) 2011-10-05 2011-10-05 비휘발성 메모리 장치 및 이의 프로그램 방법

Country Status (2)

Country Link
US (1) US8934298B2 (ko)
KR (1) KR101845509B1 (ko)

Families Citing this family (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20140020634A (ko) * 2012-08-10 2014-02-19 에스케이하이닉스 주식회사 반도체 메모리 장치 및 그의 동작 방법
KR102048017B1 (ko) 2013-09-04 2019-12-02 삼성전자주식회사 비휘발성 메모리 장치의 테스트 및 운영 방법
KR102137075B1 (ko) * 2013-09-10 2020-07-23 에스케이하이닉스 주식회사 반도체 메모리 장치 및 그 프로그램 방법
US9396807B2 (en) * 2013-11-11 2016-07-19 Seagate Technology Llc Incremental programming pulse optimization to reduce write errors
US9123414B2 (en) * 2013-11-22 2015-09-01 Micron Technology, Inc. Memory systems and memory programming methods
US9336875B2 (en) 2013-12-16 2016-05-10 Micron Technology, Inc. Memory systems and memory programming methods
US9269432B2 (en) * 2014-01-09 2016-02-23 Micron Technology, Inc. Memory systems and memory programming methods
KR20170073980A (ko) * 2015-12-21 2017-06-29 에스케이하이닉스 주식회사 반도체 메모리 장치 및 그것의 동작 방법
US9886571B2 (en) * 2016-02-16 2018-02-06 Xerox Corporation Security enhancement of customer replaceable unit monitor (CRUM)
KR102429456B1 (ko) * 2016-03-08 2022-08-05 에스케이하이닉스 주식회사 반도체 메모리 장치 및 그것의 동작 방법
JP2018160298A (ja) * 2017-03-22 2018-10-11 東芝メモリ株式会社 記憶装置の制御方法
CN111727477A (zh) * 2020-05-06 2020-09-29 长江存储科技有限责任公司 3d nand闪存的控制方法和控制器
US12051473B2 (en) * 2022-06-28 2024-07-30 Western Digital Technolologies, Inc. Non-volatile memory with precise programming
US20240062814A1 (en) * 2022-08-22 2024-02-22 Taiwan Semiconductor Manufacturing Company, Ltd. Memory device and programming method thereof

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6714457B1 (en) 2001-09-19 2004-03-30 Aplus Flash Technology, Inc. Parallel channel programming scheme for MLC flash memory
KR100706816B1 (ko) 2006-03-10 2007-04-12 삼성전자주식회사 프로그램 속도를 향상시킬 수 있는 불휘발성 메모리 장치및 그것의 프로그램 방법
US20100246262A1 (en) 2007-07-25 2010-09-30 Micron Technology, Inc. Methods and control circuitry for programming memory cells
US20120020155A1 (en) 2010-07-21 2012-01-26 Mosaid Technologies Incorporated Multipage program scheme for flash memory

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6522580B2 (en) * 2001-06-27 2003-02-18 Sandisk Corporation Operating techniques for reducing effects of coupling between storage elements of a non-volatile memory operated in multiple data states
JP3825743B2 (ja) 2002-11-29 2006-09-27 株式会社東芝 不揮発性半導体記憶装置
US7656710B1 (en) * 2005-07-14 2010-02-02 Sau Ching Wong Adaptive operations for nonvolatile memories
KR100801035B1 (ko) * 2006-12-14 2008-02-04 삼성전자주식회사 멀티 레벨 셀의 프로그램 방법, 페이지 버퍼 블록 및 이를포함하는 불휘발성 메모리 장치
KR101532584B1 (ko) 2009-01-30 2015-06-30 삼성전자주식회사 비휘발성 메모리 장치, 및 그의 프로그램 방법
KR101517597B1 (ko) 2009-03-25 2015-05-07 삼성전자주식회사 불휘발성 메모리 장치 및 그것의 프로그램 전압 생성방법
KR101600539B1 (ko) * 2009-04-07 2016-03-08 삼성전자주식회사 불휘발성 메모리 장치의 프로그램 방법

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6714457B1 (en) 2001-09-19 2004-03-30 Aplus Flash Technology, Inc. Parallel channel programming scheme for MLC flash memory
KR100706816B1 (ko) 2006-03-10 2007-04-12 삼성전자주식회사 프로그램 속도를 향상시킬 수 있는 불휘발성 메모리 장치및 그것의 프로그램 방법
US20100246262A1 (en) 2007-07-25 2010-09-30 Micron Technology, Inc. Methods and control circuitry for programming memory cells
US20120020155A1 (en) 2010-07-21 2012-01-26 Mosaid Technologies Incorporated Multipage program scheme for flash memory

Also Published As

Publication number Publication date
US8934298B2 (en) 2015-01-13
US20130088917A1 (en) 2013-04-11
KR20130037087A (ko) 2013-04-15

Similar Documents

Publication Publication Date Title
KR101845509B1 (ko) 비휘발성 메모리 장치 및 이의 프로그램 방법
US8971110B2 (en) Nonvolatile memory device and programming method of the same
US10877687B2 (en) Erasure of multiple blocks in memory devices
KR101961324B1 (ko) 메모리 장치 및 메모리 장치의 파워 관리 방법
TWI374449B (en) Programming and/or erasing a memory device in response to its program and/or erase history
US10446236B1 (en) Memory device and method of operation
CN101635172B (zh) 非易失性存储器件及其编程方法
US8902666B2 (en) Programming method for nonvolatile memory device
CN111382002B (zh) 具有动态ecc电压和频率的方法和系统
CN108257640B (zh) 半导体存储装置及其操作方法
US11056196B2 (en) Methods of enhancing speed of reading data from memory device
US11355206B2 (en) High-voltage shifter with degradation compensation
KR20100033816A (ko) 비휘발성 메모리 장치의 프로그램 방법
US11380401B2 (en) High-voltage shifter with reduced transistor degradation
US11688471B2 (en) Short program verify recovery with reduced programming disturbance in a memory sub-system
US9478280B2 (en) Programmed data verification for a semiconductor memory device
US11508449B2 (en) Detrapping electrons to prevent quick charge loss during program verify operations in a memory device
CN115997253A (zh) 用于存储器装置的多阶段擦除操作
CN115705891A (zh) 具有脉冲步长以促进擦除暂停的存储器真擦除
CN116072192A (zh) 单层级单元存储器编程缩短
CN118155690A (zh) 执行编程操作的存储器装置以及操作存储器装置的方法
CN114639420A (zh) 在存储器子系统中的编程操作期间的增强梯度播种方案
CN116312696A (zh) 预编程和编程阶段期间的偏置电压方案

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