KR20160047667A - 불휘발성 메모리 장치 및 그것의 프로그램 방법 - Google Patents

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

Info

Publication number
KR20160047667A
KR20160047667A KR1020140143583A KR20140143583A KR20160047667A KR 20160047667 A KR20160047667 A KR 20160047667A KR 1020140143583 A KR1020140143583 A KR 1020140143583A KR 20140143583 A KR20140143583 A KR 20140143583A KR 20160047667 A KR20160047667 A KR 20160047667A
Authority
KR
South Korea
Prior art keywords
program
memory cells
voltage
complementary
target state
Prior art date
Application number
KR1020140143583A
Other languages
English (en)
Inventor
문성수
이창섭
이래영
곽소영
Original Assignee
삼성전자주식회사
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 삼성전자주식회사 filed Critical 삼성전자주식회사
Priority to KR1020140143583A priority Critical patent/KR20160047667A/ko
Priority to US14/854,097 priority patent/US20160118126A1/en
Publication of KR20160047667A publication Critical patent/KR20160047667A/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
    • G11C16/12Programming voltage switching circuits
    • 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/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/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
    • G11C2211/00Indexing scheme relating to digital stores characterized by the use of particular electric or magnetic storage elements; Storage elements therefor
    • G11C2211/56Indexing scheme relating to G11C11/56 and sub-groups for features not covered by these groups
    • G11C2211/562Multilevel memory programming aspects
    • G11C2211/5621Multilevel programming verification

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Theoretical Computer Science (AREA)
  • Read Only Memory (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)

Abstract

본 발명에 따른 불휘발성 메모리 장치의 프로그램 방법은, 검증 전압 및 증가형 스텝 펄스를 사용하여 메모리 셀들을 타깃 상태로 프로그램하는 단계, 상기 타깃 상태로 프로그램된 메모리 셀들 중에서 보완 검증 전압보다 낮은 문턱 전압을 갖는 메모리 셀들을 선택하는 단계, 그리고 상기 선택된 메모리 셀들에 보완 프로그램 전압을 인가하는 단계를 포함하되, 상기 보완 검증 전압은 상기 검증 전압과 같거나 높고, 상기 보완 프로그램 전압은 상기 증가형 스텝 펄스들 중에서 상기 메모리 셀들이 상기 타깃 상태로 프로그램 완료된 프로그램 루프에서 제공된 프로그램 전압과 같거나 낮다.

Description

불휘발성 메모리 장치 및 그것의 프로그램 방법{NONVOLATILE MEMORY DEVICE AND PROGRAM METHOD THEREOF}
본 발명은 반도체 메모리 장치에 관한 것으로, 좀 더 구체적으로는 불휘발성 메모리 장치 및 그것의 프로그램 방법에 관한 것이다.
반도체 메모리 장치는 크게 휘발성 반도체 메모리 장치(Volatile semiconductor memory device)와 불휘발성 반도체 메모리 장치(Non-volatile semiconductor memory device)로 구분될 수 있다. 휘발성 반도체 메모리 장치는 읽고 쓰는 속도가 빠르지만 전원 공급이 끊기면 저장된 내용이 사라져 버리는 단점이 있다. 반면에 불휘발성 반도체 메모리 장치는 전원 공급이 중단되더라도 그 내용을 보존한다. 그러므로, 불휘발성 반도체 메모리 장치는 전원이 공급되었는지의 여부에 관계없이 보존되어야 할 내용을 저장하는데 쓰인다.
불휘발성 메모리 장치의 대표적인 예로 플래시 메모리 장치가 있다. 플래시 메모리 장치는 컴퓨터, 휴대폰, PDA, 디지털카메라, 캠코더, 보이스 리코더, MP3 플레이어, 개인용 휴대 단말기(PDA), 휴대용 컴퓨터(Handheld PC), 게임기, 팩스, 스캐너, 프린터 등(이하, '호스트'라 함)과 같은 정보기기들의 음성 및 영상 데이터 저장 매체로서 널리 사용되고 있다.
최근 들어 메모리 장치에 대한 고용량화 요구의 증가에 따라, 하나의 메모리 셀에 멀티 비트를 저장하는 멀티 레벨 셀(Multi-Level Cell: MLC) 또는 멀티-비트 메모리 장치들이 보편화되고 있다. 하지만, 멀티 레벨 셀(MLC)을 채용하는 메모리 장치에서 메모리 셀들의 문턱 전압은 제한된 전압 윈도 내에서 복수의 상태들로 식별되어야 한다. 하지만, 메모리 장치의 특성이나, 시간의 경과, 주위의 온도에 따라 메모리 셀들의 문턱 전압은 변화한다. 따라서, 데이터 신뢰성(Data Integrity)을 높이기 위해 데이터 상태들 각각을 식별하기 위한 다양한 방법들이 사용되고 있다. 그중에 하나가 프로그램 상태들에 대한 산포의 처짐과 퍼짐을 개선하는 방법이 있다. 즉, 서로 다른 데이터를 지시하는 산포들의 처짐 또는 퍼짐을 줄이는 방법이다. 하지만, 이러한 조작은 추가적인 프로그램 시간을 요구하고, 퍼포먼스 저하를 야기한다.
본 발명에서는 불휘발성 메모리 장치의 퍼포먼스의 저하를 최소화하면서도 메모리 셀들의 산포를 개선할 수 있는 프로그램 방법이 제공될 것이다.
본 발명의 목적은 퍼포먼스 저하를 최소화하면서도 메모리 셀들의 산포를 개선할 수 있는 불휘발성 메모리 장치 및 그것의 프로그램 방법을 제공하는 데 있다.
상기 목적을 달성하기 위한 본 발명에 따른 불휘발성 메모리 장치의 프로그램 방법은, 검증 전압 및 증가형 스텝 펄스를 사용하여 메모리 셀들을 타깃 상태로 프로그램하는 단계, 상기 타깃 상태로 프로그램된 메모리 셀들 중에서 보완 검증 전압보다 낮은 문턱 전압을 갖는 메모리 셀들을 선택하는 단계, 그리고 상기 선택된 메모리 셀들에 보완 프로그램 전압을 인가하는 단계를 포함하되, 상기 보완 검증 전압은 상기 검증 전압과 같거나 높고, 상기 보완 프로그램 전압은 상기 증가형 스텝 펄스들 중에서 상기 메모리 셀들이 상기 타깃 상태로 프로그램 완료된 프로그램 루프에서 제공된 프로그램 전압과 같거나 낮다.
상기 목적을 달성하기 위한 본 발명에 따른 불휘발성 메모리 장치는, 복수의 메모리 셀들을 포함하는 셀 어레이, 상기 셀 어레이에 비트 라인들로 연결되며, 선택된 메모리 셀들에 기입될 데이터를 상기 비트 라인들로 전달하는 페이지 버퍼, 상기 선택된 메모리 셀들의 워드 라인에 노말 프로그램 동작시 증가형 프로그램 펄스 및 검증 전압을 제공하고, 보완 프로그램 동작시에는 보완 검증 전압 및 보완 프로그램 전압을 제공하는 전압 발생기, 그리고 상기 선택된 메모리 셀들에 상기 데이터를 상기 노말 프로그램 동작 및 상기 보완 프로그램 동작에 따라 기입하도록 상기 페이지 버퍼 및 상기 전압 발생기를 제어하는 제어 로직을 포함하되, 상기 노말 프로그램 동작시, 상기 페이지 버퍼는 상기 복수의 메모리 셀들이 프로그램되는 타깃 상태들 각각에 대응하는 패스 루프 카운트 정보를 상기 제어 로직에 전달하고, 상기 제어 로직은 상기 패스 루프 카운트 정보를 참조하여 상기 타깃 상태들 중 적어도 하나에 대한 보완 검증 전압 및 보완 프로그램 전압을 결정한다.
상기 목적을 달성하기 위한 다른 실시 예에 따른 불휘발성 메모리 장치의 프로그램 방법은, 증가형 스텝 펄스들을 사용하여 메모리 셀들을 타깃 상태로 프로그램하는 노말 프로그램 동작 단계, 그리고 상기 메모리 셀들 중에서 문턱 전압이 보완 검증 전압보다 낮은 메모리 셀들을 선택하여 보완 프로그램 전압을 인가하는 보완 프로그램 단계를 포함하되, 상기 보완 프로그램 전압은 상기 노말 프로그램에서의 검증 전압과 같거나 높고, 상기 보완 프로그램 전압은 상기 노말 프로그램 동작시 상기 타깃 상태의 패스 루프에서 제공된 프로그램 전압과 같거나 낮다.
이상과 같은 본 발명의 실시 예에 따르면, 산포 개선에 소요되는 프로그램 시간을 최소화하면서도 메모리 셀들의 산포의 확산을 최소화할 수 있는 불휘발성 메모리 장치를 제공할 수 있다. 따라서, 본 발명의 실시 예에 따르면 퍼포먼스의 저하없이 높은 신뢰성을 갖는 불휘발성 메모리 장치를 구현할 수 있다.
도 1은 본 발명의 불휘발성 메모리 장치를 보여주는 블록도이다.
도 2는 도 1의 셀 어레이에 포함되는 메모리 블록(BLK)을 예시적으로 보여주는 도면이다.
도 3은 도 2의 메모리 블록에 포함되는 하나의 메모리 셀의 구조를 개략적으로 보여주는 도면이다.
도 4는 메모리 셀들의 문턱 전압 산포의 처짐과 퍼짐을 예시적으로 보여주는 산포도이다.
도 5는 본 발명의 불휘발성 메모리 장치(100)의 프로그램 방법을 간략히 보여주는 순서도이다.
도 6은 본 발명의 일 실시 예에 의한 효과를 간략히 보여주는 도면이다.
도 7은 도 6의 타깃 상태로 프로그램되는 메모리 셀들의 워드 라인에 인가되는 전압을 보여주는 파형도이다.
도 8a 및 도 8b는 2-비트 멀티 레벨 셀에서의 본 발명의 보완 프로그램 동작을 보여주는 도면들이다.
도 9a 및 도 9b는 2-비트 멀티 레벨 셀에서의 본 발명의 보완 프로그램 동작의 다른 실시 예를 보여주는 도면들이다.
도 10은 본 발명의 보완 프로그램 동작을 위한 셀의 선택 방법을 보여주는 도면이다.
도 11은 3-비트 멀티 레벨 셀(MLC)에서의 보완 프로그램 동작에 의한 문턱 전압 개선 효과를 보여주는 도면이다.
도 12는 도 11의 타깃 상태를 갖는 메모리 셀들에 대한 프로그램 전압을 보여주는 파형도이다.
도 13a 및 도 13b는 3-비트 멀티 레벨 셀(MLC)의 복수의 타깃 상태들 중에서 일부의 타깃 상태들에만 보완 프로그램 동작을 적용하는 실시 예를 보여주는 도면들이다.
도 14a 및 도 14b는 3-비트 멀티 레벨 셀(MLC)의 복수의 타깃 상태들 중에서 일부의 타깃 상태들에 보완 프로그램 동작을 수행하는 다른 실시 예를 보여주는 도면들이다.
도 15는 도 1의 보완 프로그램 테이블(155)에 대한 예를 보여주는 표이다.
도 16은 본 발명의 프로그램 동작을 좀더 구체적으로 보여주는 순서도이다.
도 17a 및 도 17b는 타깃 상태들 각각에 대한 보완 프로그램 횟수를 가변하는 실시 예를 보여주는 타이밍도들이다.
도 18은 본 발명의 실시 예에 따른 효과를 간략히 보여주는 도면이다.
도 19는 본 발명의 실시 예에 따른 솔리드 스테이트 드라이버(SSD)를 예시적으로 보여주는 블록도이다.
도 20은 본 발명의 실시 예에 따른 eMMC를 예시적으로 보여주는 블록도이다.
도 21은 본 발명의 실시 예에 따른 UFS 시스템을 예시적으로 보여주는 블록도이다.
도 22는 본 발명의 실시 예에 따른 컴퓨팅 시스템을 보여주는 블록도이다.
앞의 일반적인 설명 및 다음의 상세한 설명 모두 예시적이라는 것이 이해되어야 하며, 청구된 발명의 부가적인 설명이 제공되는 것으로 여겨져야 한다. 참조 부호들이 본 발명의 바람직한 실시 예들에 상세히 표시되어 있으며, 그것의 예들이 참조 도면들에 표시되어 있다. 가능한 어떤 경우에도, 동일한 참조 번호들이 동일한 또는 유사한 부분을 참조하기 위해서 설명 및 도면들에 사용된다.
이하에서는, 플래시 메모리 장치가 본 발명의 특징 및 기능을 설명하기 위한 불휘발성 메모리 장치의 예로서 사용될 것이다. 하지만, 이 기술 분야에 정통한 사람은 여기에 기재된 내용에 따라 본 발명의 다른 이점들 및 성능을 쉽게 이해할 수 있을 것이다. 본 발명은 다른 실시 예들을 통해 또한, 구현되거나 적용될 수 있을 것이다. 게다가, 상세한 설명은 본 발명의 범위, 기술적 사상 그리고 다른 목적으로부터 상당히 벗어나지 않고 관점 및 응용에 따라 수정되거나 변경될 수 있다.
도 1은 본 발명의 불휘발성 메모리 장치를 보여주는 블록도이다. 도 1을 참조하면, 불휘발성 메모리 장치(100)는 셀 어레이(110), 행 디코더(120), 페이지 버퍼(130), 입출력 버퍼(140), 제어 로직(150) 그리고 전압 발생기(160)를 포함한다.
셀 어레이(110)는 워드 라인들(WLs) 또는 선택 라인들(SSL, GSL)을 통해 행 디코더(120)에 연결된다. 셀 어레이(110)는 비트 라인들(BL0~BLi-1)을 통해서 페이지 버퍼(130)에 연결된다. 셀 어레이(110)는 낸드형으로 구성되는 복수의 셀 스트링들을 포함할 수 있다. 복수의 셀 스트링들은 하나의 메모리 블록(BLK)을 구성할 수 있다. 여기서, 셀 스트링들 각각의 채널은 수직 방향 또는 수평 방향으로 형성될 수 있다.
프로그램 동작시 메모리 셀들은 워드 라인들(WLs) 또는 선택 라인들(SSL, GSL)의 제어에 따라 페이지 단위(예를 들면, 2KByte) 또는 그보다 작은 단위(512Byte)로 선택될 수 있다. 읽기 동작시에도 메모리 셀들은 페이지 단위나 그보다 작은 단위로 선택될 수 있다. 다양한 원인에 의하여 메모리 셀들의 문턱 전압 산포는 프로그램 직후부터 변화하기 시작한다. 이러한 문턱 전압의 변화는 읽기 마진을 감소시키고, 데이터의 신뢰성을 저하시킨다. 본 발명의 프로그램 방법에 따르면, 프로그램 속도와 같은 퍼포먼스의 저하를 최소화하면서도 데이터 신뢰성을 향상시킬 수 있는 문턱 전압의 산포 개선이 가능하다. 이러한 이점은 후술하는 페이지 버퍼(130), 제어 로직(150) 등의 기능 설명을 통해서 자세히 설명될 것이다.
행 디코더(120)는 어드레스(ADD)에 응답하여 셀 어레이(110)의 메모리 블록들 중 어느 하나를 선택할 수 있다. 행 디코더(120)는 선택된 메모리 블록의 워드 라인들(WLs) 중 어느 하나를 선택할 수 있다. 행 디코더(120)는 선택된 워드 라인에 전압 발생기(160)로부터 제공된 프로그램 전압(Vpgm) 또는 검증 전압(Vvfy)을 전달할 수 있다. 프로그램 동작시, 행 디코더(120)는 선택 워드 라인(Selected WL)에 프로그램 전압(Vpgm)과 검증 전압(Vvfy)을, 비선택 워드 라인(Unselected WL)에는 패스 전압(Vpass)을 전달한다. 읽기 동작시, 행 디코더(120)는 선택 워드 라인(Selected WL)에 선택 읽기 전압(Vrd)을, 비선택 워드 라인(Unselected WL)에는 비선택 읽기 전압(Vread)을 전달할 것이다.
페이지 버퍼(130)는 프로그램 동작시에는 기입 드라이버(Write Driver)로 동작하고, 읽기 동작시에는 감지 증폭기(Sense Amplifier)로 동작한다. 프로그램 동작시, 페이지 버퍼(130)는 셀 어레이(110)의 비트 라인들로 프로그램될 데이터에 대응하는 비트 라인 전압을 전달한다. 읽기 동작시, 페이지 버퍼(130)는 선택된 메모리 셀에 저장된 데이터를 비트 라인을 통해서 감지한다. 페이지 버퍼(130)는 감지된 데이터를 래치하여 입출력 버퍼(140)에 전달할 것이다.
메모리 셀들을 프로그램할 때, 증가형 스텝 펄스 프로그램(Incremental Step Pulse Programming: 이하, ISPP) 방식에 따라 워드 라인에 프로그램 전압이 제공될 수 있다. ISPP 방식의 프로그램 동작에서, 프로그램 펄스의 인가와 검증 펄스들의 인가는 하나의 프로그램 루프에서 이루어진다. 복수의 프로그램 루프들을 통해서 선택된 메모리 셀들을 타깃 상태로 프로그램될 수 있다. 본 발명의 페이지 버퍼(130)는 선택된 메모리 셀들이 타깃 상태로 프로그램된 후에도 프로그램 데이터를 초기화하지 않고 유지할 수 있다. 즉, 페이지 버퍼(130)는 타깃 상태에 대응하는 데이터를 내부의 래치나 별도의 기억 소자에 저장할 수 있다. 이러한 기능을 위해서 페이지 버퍼(130)는 상태 버퍼 유닛(135)을 포함할 수 있다.
더불어, 페이지 버퍼(130)는 프로그램 동작시, 선택된 메모리 셀들의 타깃 상태로의 프로그램 패스(Program Pass) 시점에 해당하는 패스 루프 카운트 정보(Pass Loop Count Information: 이하, PLCI)를 제어 로직(150)에 제공할 수 있다. 예를 들면, 페이지 버퍼(130)는 선택된 메모리 셀들 중에 타깃 상태(P1)로 프로그램되는 메모리 셀들이 프로그램 완료된 루프 카운트(Loop count)를 제어 로직(150)에 제공할 수 있을 것이다. 만일, 타깃 상태(P1)로 프로그램되는 메모리 셀들이 프로그램된 루프 카운트가 (L4)라면, 페이지 버퍼(130)는 이러한 패스 루프 카운트 정보(PLCI)를 제어 로직(150)에 전달할 것이다.
제어 로직(150)의 제어에 따라 증가형 스텝 펄스 프로그램(ISPP) 방식으로 선택된 메모리 셀들을 프로그램하는 노말 프로그램 동작(Normal Program Operation)이 수행될 것이다. 그리고 노말 프로그램 동작이 완료된 이후에, 제어 로직(150)의 제어에 따라 보완 프로그램 동작(Supplementary Program Operation)이 수행될 수 있다. 보완 프로그램 동작을 위해서 페이지 버퍼(130)는 상태 버퍼 유닛(135)에 저장된 프로그램 데이터를 사용할 수 있다. 즉, 노말 프로그램 동작이 종료된 후에 특정 메모리 셀들을 선택하여 추가적으로 프로그램할 수 있다. 보완 프로그램 동작을 통해서 타깃 상태에서 상대적으로 낮은 레벨의 문턱 전압을 갖는 메모리 셀들의 문턱 전압이 높아질 수 있다.
여기서, 상태 버퍼 유닛(135)은 페이지 버퍼(130)의 내부에 형성되는 래치와 같은 별도의 소자로 형성될 수도 있다. 또는, 상태 버퍼 유닛(135)은 페이지 버퍼(130)와는 별도로 구비되는 기억 소자를 통해서 구현될 수도 있다. 또는, 상태 버퍼 유닛(135)은 별도의 기억 소자의 추가없이 페이지 버퍼(130)에 포함되는 여분의 래치들을 활용하여 구현될 수도 있을 것이다.
입출력 버퍼(140)는 프로그램 동작시에 입력받은 쓰기 데이터를 페이지 버퍼(130)에 전달한다. 입출력 버퍼(140)는 읽기 동작시에 페이지 버퍼(130)로부터 제공되는 읽기 데이터를 외부로 출력한다. 입출력 버퍼(140)는 입력되는 어드레스(ADD) 또는 명령어(CMDi)를 제어 로직(150)이나 행 디코더(120)에 전달한다.
제어 로직(150)은 외부로부터 전달되는 명령어(CMDi)에 응답하여 페이지 버퍼(130)와 행 디코더(120)를 제어한다. 제어 로직(150)은 프로그램 명령에 응답하여 페이지 버퍼(130)에 로드되는 데이터를 선택된 메모리 셀들에 프로그램하도록 페이지 버퍼(130) 및 전압 발생기(160)를 제어할 수 있다. 더불어, 제어 로직(150)은 노말 프로그램 동작시 페이지 버퍼(130)로부터 제공되는 패스 루프 카운트 정보(PLCI)에 응답하여 보완 프로그램 동작에 필요한 전압을 선택할 수 있다. 제어 로직(150)은 선택된 보완 프로그램 전압 및 보완 검증 전압에 따라 선택된 메모리 셀들에 대한 보완 프로그램을 수행하도록 페이지 버퍼(130) 및 전압 발생기(160)를 제어할 수 있다. 제어 로직(150)은 패스 루프 카운트 정보(PLCI)를 참조하여 보완 프로그램 전압과 보완 검증 전압을 선택하기 위한 보완 프로그램 테이블(155)을 구성할 수 있다. 보완 프로그램 테이블(155)은 퓨즈 박스 또는 다양한 불휘발성 기억 매체를 사용하여 구성할 수 있을 것이다.
전압 발생기(160)는 제어 로직(150)의 제어에 따라 각각의 워드 라인들로 공급될 다양한 워드 라인 전압들과, 메모리 셀들이 형성된 벌크(예를 들면, 웰 영역)로 공급될 전압을 생성한다. 각각의 워드 라인들로 공급될 워드 라인 전압들로는 프로그램 전압(Vpgm), 패스 전압(Vpass), 선택 및 비선택 읽기 전압들(Vrd, Vread) 등이 있다. 전압 발생기(160)는 읽기 동작 및 프로그램 동작시에 선택 라인들(SSL, GSL)에 제공되는 선택 라인 전압(VSSL, VGSL)을 생성할 수 있다.
또한, 전압 발생기(160)는 보완 프로그램 동작을 위해서 메모리 셀들의 워드 라인에 제공되는 보완 프로그램 전압(Vpgm_Si)과 보완 검증 전압(Vvfy_Si)을 생성할 수 있다. 타깃 상태(P2)로 프로그램되는 메모리 셀들에 대한 패스 루프 카운트 정보(PLCI)가 루프 카운트(L8)에 대응하는 경우를 가정하자. 그러면, 타깃 상태(P2)로 프로그램되는 메모리 셀들에 대한 보완 프로그램 동작을 위해서 전압 발생기(160)는 타깃 상태(P2)에 대응하는 검증 전압(Vvfy2)과 같거나 높은 보완 검증 전압(Vvfy_S2)을 생성할 것이다. 그리고 타깃 상태(P2)로 프로그램되는 메모리 셀들에 대한 보완 프로그램 동작을 위해서 전압 발생기(160)는 루프 카운트(L8)의 프로그램 동작에서 제공된 프로그램 전압(Vpgm8)과 같거나 낮은 보완 프로그램 전압(Vpgm_S8)을 생성할 것이다.
이상의 본 발명의 실시 예에 따른 불휘발성 메모리 장치(100)는 보완 프로그램 동작을 통해서 프로그램 속도의 저하가 최소화된 조건으로 문턱 전압의 산포 개선이 가능하다. 즉, 프로그램 완료된 메모리 셀들 중에서 특정 레벨 이하의 문턱 전압을 갖는 메모리 셀들만이 선택적으로 프로그램될 수 있다. 그리고 이렇게 보완 프로그램 동작에 의해서 프로그램된 메모리 셀들은 타깃 상태에 대응하는 문턱 전압 산포의 상한을 넘지 않는 범위에서 프로그램될 수 있다.
도 2는 도 1의 셀 어레이에 포함되는 메모리 블록(BLK)을 예시적으로 보여주는 도면이다. 도 2를 참조하면, 메모리 블록(BLK)은 기판 위에 형성되는 4개의 서브 블록들을 포함할 수 있다. 각각의 서브 블록들은 기판 위에 워드 라인 컷들(WL cut) 사이에 적어도 하나의 접지 선택 라인(GSL), 복수의 워드 라인들(WLs), 적어도 하나의 스트링 선택 라인(SSL)이 판 형태로 적층됨으로써 형성된다. 여기서, 적어도 하나의 스트링 선택 라인(SSL)은 스트링 컷(SSL Cut)으로 분리된다. 한편, 메모리 블록(BLK)은 스트링 선택 라인들을 분리하는 스트링 컷(SSL Cut)을 포함할 수 있다. 하지만, 본 발명의 블록의 구조가 여기에 제한되지 않을 것이다. 본 발명은 메모리 블록은 스트링 컷(SSL Cut)이 존재하지 않는 복수의 스트링 선택 라인을 갖는 구조일 수도 있다.
접지 선택 라인(GSL)과 워드 라인들(WLs) 사이에 적어도 하나의 더미 워드 라인이 판 형태로 적층되거나, 워드 라인들(WLs)과 스트링 선택 라인(SSL) 사이에 적어도 하나의 더미 워드 라인이 판 형태로 적층 될 수 있다. 각각의 워드 라인 컷들은, 도시되지 않았지만 공통 소스 라인(Common Source Line: CSL)을 포함할 수 있다. 실시 예에 있어서, 각각의 워드 라인 컷에 포함된 공통 소스 라인(CSL)은 공통으로 연결된다. 비트 라인에 연결된 필라(Pillar)가 적어도 하나의 접지 선택 라인(GSL), 복수의 워드 라인들(WLs), 적어도 하나의 스트링 선택 라인(SSL)을 관통함으로써, 스트링이 형성된다.
여기서, 워드 라인 컷들 사이의 대상을 서브 블록으로 도시하였는데, 본 발명이 반드시 여기에 국한되지 않는다. 본 발명의 서브 블록은 워드 라인 컷과 스트링 선택 라인 컷 사이의 대상을 서브 블록으로 명명할 수 있다. 본 발명의 실시 예에 따른 메모리 블록(BLK)은 두 개의 워드 라인들이 하나로 병합된 구조, 다른 말로 워드 라인 병합 구조(Merged wordline structure)로 구현될 수 있다.
도 3은 도 2의 메모리 블록에 포함되는 하나의 메모리 셀의 구조를 개략적으로 보여주는 도면이다. 도 3을 참조하면, 전하 트랩 플래시 셀(이하, CTF 셀이라 칭함)은 정보를 저장하기 위한 정보 저장층(116)을 포함한다. 정보 저장층(116)은 채널(111) 상에 순차적으로 적층된 제 1 산화막(112), 전하 트랩층(Charge trap layer)으로서 질화막(113), 그리고 제 2 산화막(114)을 포함한다. CTF 셀의 프로그래밍을 위해서, 프로그램 전압이 제어 게이트(115)에 인가되고 CTF 셀의 채널에 소정 전압(예를 들면, 0V)이 인가될 것이다. 이러한 바이어스 조건에 따르면, 전계가 제어 게이트(115)에서 채널(111) 방향으로 형성되고, 그러한 전계에 의해서 전하들이 채널(111)에서 전하 트랩층(113)으로 이동될 것이다. 따라서, 이러한 바이어스 조건하에서 CTF 셀이 프로그램될 것이다.
CTF 셀의 소거를 위해서, 소정 전압(예를 들면, 0V 또는 그 보다 높은 전압)이 제어 게이트(115)에 인가되고 CTF 셀의 채널(111)에 소거 전압(예를 들면, 20V)이 인가될 것이다. 이러한 바이어스 조건에 따르면, 전계가 벌크에서 제어 게이트 방향으로 형성되며, CTF 셀은 소거될 것이다.
도 3에 있어서, 프로그래밍을 통해 전하 트랩층(113)에 트랩된 전하들의 위치는 예시적이며, 트랩된 전하들의 위치가 CTF 셀의 특성에 따라 변화됨은 잘 이해될 것이다. 프로그래밍을 통해 전하 트랩층(113)에 트랩된 전하들은 시간의 경과에 따라 재배열 현상, 채널(111)로의 유실(도 3에서 수직 방향으로 표시된 화살표 참조), 질화막(113)을 통한 이동(도 3에서 수평 방향으로 표시된 화살표 참조), 등과 같은 다양한 현상들로 인해 감소될 것이다. 이러한 현상은 패스트 전하 손실 현상(Fast Charge Loss Phenomenon)이라 불린다. 패스트 전하 손실 현상이 발생하면, CTF 셀의 문턱 전압은 낮아질 것이다. 나아가, 프로그램된 CTF 셀들의 문턱 전압들의 산포에 대한 처짐(Drooping)과 퍼짐(Spreading)이 발생할 것이다.
상술한 CTF 셀들의 문턱 전압들의 산포에 대한 처짐(Drooping)과 퍼짐(Spreading)은 경과 시간에 따라 다양한 양상으로 발생한다. 주로, 프로그램된 시점으로부터의 경과 시간이 길어질수록 CTF 셀들의 문턱 전압들의 처짐(Drooping)과 퍼짐(Spreading)은 증가한다. 본 발명의 이점은 패스트 전하 손실 현상(Fast Charge Loss Phenomenon) 뿐 아니라 상대적으로 느린 전하 손실 현상에 의한 산포의 열화에 대해서도 해결책을 제공할 수 있음은 잘 이해될 것이다.
도 4는 메모리 셀들의 문턱 전압 산포의 처짐과 퍼짐을 예시적으로 보여주는 산포도이다. 도 4를 참조하면, 프로그램된 직후의 메모리 셀들의 문턱 전압 산포(S1)는 시간의 경과에 따라 문턱 전압 산포(S1')로 변화된다.
프로그램된 CTF 셀들의 문턱 전압들은 프로그램 동작이 수행된 직후에 문턱 전압 산포(S1)의 형태로 분포할 것이다. 프로그램된 CTF 셀들의 문턱 전압들은 프로그램 동작이 수행된 후 특정 시간이 경과한 후에 문턱 전압 산포(S1')를 형성할 것이다. 여기서, 문턱 전압 산포의 하한의 변화 즉 Z의 크기는 산포의 처짐에 해당한다. 그리고 문턱 전압 산포의 확장된 크기(Y-X)는 산포의 퍼짐에 해당한다.
문제는 이러한 산포의 처짐과 퍼짐이 시간에 따라 변화한다는데 있다. 시간에 따라 복수의 문턱 전압 산포들의 퍼짐과 처짐에 의해서 중첩될 수 있다. 본 발명의 보완 프로그램 동작에 따르면, 산포의 처짐과 퍼짐 또는 프로그램 속도 차이에 의해서 하나의 타깃 상태 내에서 하측에 위치하는 메모리 셀들의 문턱 전압을 보완할 수 있다.
도 5는 본 발명의 불휘발성 메모리 장치(100)의 프로그램 방법을 간략히 보여주는 순서도이다. 도 5를 참조하면, 불휘발성 메모리 장치(100)는 프로그램 동작시 외부에서 제공되는 데이터를 노말 프로그램 동작 및 보완 프로그램 동작을 통해서 선택된 메모리 영역에 프로그램할 수 있다.
S110 단계에서, 불휘발성 메모리 장치(100)는 외부로부터 제공되는 프로그램 명령어와 데이터를 수신할 것이다. 물론, 프로그램 명령어와 어드레스(Address)가 제공됨은 잘 이해될 것이다. 데이터는 도 1의 페이지 버퍼(130)에 로드되고 프로그램 명령어는 제어 로직(150)에 제공될 것이다.
S120 단계에서, 불휘발성 메모리 장치(100)는 증가형 스텝 펄스 프로그램(ISPP) 방식을 사용하는 노말 프로그램 동작을 시작할 것이다. 즉, 불휘발성 메모리 장치(100)는 점차적으로 증가하는 프로그램 전압 펄스를 선택된 메모리 셀들에 인가할 것이다. 멀티 레벨 셀(MLC)들을 프로그램하기 위해서는 복수의 타깃 상태들에 대한 복수의 검증 전압들이 매 프로그램 루프에서 제공될 것이다. 그리고 타깃 상태들 각각에 대한 패스 루프 카운트 정보(PLCI)는 제어 로직(150)에 전달될 것이다.
S130 단계에서, 불휘발성 메모리 장치(100)는 선택된 메모리 셀들의 프로그램 완료 여부를 검출할 수 있다. 예를 들면, 불휘발성 메모리 장치(100)는 타깃 상태들 각각에 대한 검증 동작을 수행할 것이다. 그리고 모든 타깃 상태들에 대한 검증 결과가 프로그램 패스로 판정되면, 불휘발성 메모리 장치(100)는 노말 프로그램 동작이 완료된 것으로 판단할 것이다. 노말 프로그램 완료로 판단되면, 절차는 보완 프로그램을 시작하기 위한 S140 단계로 이동할 것이다. 반면, 메모리 셀들의 문턱 전압이 검증 전압보다 낮은 것이 존재하는 경우에는 프로그램 미완료로 판정된다. 따라서, 절차는 S120 단계로 복귀한다.
S140 단계에서, 불휘발성 메모리 장치(100)는 보완 프로그램 동작이 필요한 메모리 셀들을 선택할 수 있다. 예를 들면, 불휘발성 메모리 장치(100)는 프로그램을 위해서 선택된 메모리 셀들 중에서 특정 타깃 상태에 대응하는 메모리 셀들을 선택할 수 있다. 그리고 선택된 타깃 상태의 메모리 셀들 중에서, 문턱 전압이 기준치 미만으로 낮은 셀들만이 보완 프로그램을 위해서 선택될 수 있다. 보완 프로그램의 대상이 되는 메모리 셀들을 선택하기 위하여 보완 검증 전압(Vvfy_Si)이 사용될 수 있을 것이다.
S150 단계에서, 불휘발성 메모리 장치(150)는 보완 프로그램을 위해서 선택된 메모리 셀들에 보완 프로그램 전압을 인가하여 보완 프로그램 동작을 실행한다. 불휘발성 메모리 장치(100)는 선택된 메모리 셀들을 프로그램하기 위해, 노말 프로그램 동작에서 제공된 패스 루프 카운트에 대응하는 프로그램 전압과 같거나 낮은 프로그램 전압을 보완 프로그램 동작시에 제공할 것이다. 보완 프로그램 동작을 통해서 처리된 메모리 셀들의 문턱 전압은 규정된 상한치보다 낮게 상승할 수 있다.
이상에서 설명된 바와 같이 본 발명의 불휘발성 메모리 장치(100)는 노말 프로그램 동작이 완료된 이후에 보완 프로그램 동작을 수행할 수 있다. 따라서, 프로그램 동작에 소요되는 시간의 증가를 최소화하면서도 메모리 셀들의 문턱 전압 산포를 개선할 수 있다.
도 6은 본 발명의 일 실시 예에 의한 효과를 간략히 보여주는 도면이다. 도 6을 참조하면, 2-비트 멀티 레벨 셀에서의 보완 프로그램 동작에 의한 문턱 전압 개선 효과가 도시되어 있다.
도시된 (I) 산포는 노말 프로그램(Normal Program) 동작 이후에 형성되는 메모리 셀들의 문턱 전압의 형태를 보여준다. 여기서, 타깃 상태들(P1, P2, P3) 각각으로 프로그램된 메모리 셀들의 문턱 전압은 앞서 설명된 재배열이나 리텐션 특성, 전하 누설 등의 요인에 따라 감소할 수 있다.
(Ⅱ) 산포는 본 발명의 보완 프로그램(Supplementary Program) 동작을 수행한 후에 형성되는 메모리 셀들의 문턱 전압 산포를 보여준다. 보완 프로그램 동작은 메모리 셀들에 대한 선택 동작과, 선택된 메모리 셀들에 대한 프로그램 실행 동작을 포함한다. 보완 프로그램 동작을 위해서 타깃 상태(P1)의 메모리 셀들 중에서 제 1 보완 검증 전압(Vvfy_S1)보다 낮은 문턱 전압을 갖는 것들이 선택될 수 있다. 그리고 제 1 보완 검증 전압(Vvfy_S1)보다 낮은 문턱 전압을 갖는 메모리 셀들은 보완 프로그램 펄스에 의해서 제 1 보완 검증 전압(Vvfy_S1)보다 높은 문턱 전압으로 프로그램될 것이다. 하지만, 이때 인가되는 제 1 보완 프로그램 전압(Vpgm_S1)의 레벨은 노말 프로그램 동작시 타깃 상태(P1)에 대한 패스 루프(Pass Loop)에서 제공된 프로그램 전압과 같거나 낮게 제공될 것이다. 따라서, 보완 프로그램 동작에 의해서 선택된 메모리 셀들의 문턱 전압은 과도하게 상승하지 못하도록 제어될 수 있다.
더불어, 보완 프로그램 동작을 위해서 타깃 상태(P2)를 타깃 상태로 갖는 메모리 셀들 중에서 제 2 보완 검증 전압(Vvfy_S2)보다 낮은 문턱 전압을 갖는 메모리 셀들이 선택될 수 있다. 그리고 제 2 보완 검증 전압(Vvfy_S2)보다 낮은 문턱 전압을 갖는 메모리 셀들은 보완 프로그램 펄스에 의해서 제 2 보완 검증 전압(Vvfy_S2)보다 높은 문턱 전압으로 프로그램될 것이다. 마찬가지로, 이때 인가되는 제 2 보완 프로그램 전압(Vpgm_S2)의 레벨은 노말 프로그램 동작시 타깃 상태(P2)에 대한 패스 루프(Pass Loop)에서 제공된 프로그램 전압과 같거나 낮게 제공될 것이다. 따라서, 보완 프로그램 동작에 의해서 선택된 메모리 셀들의 문턱 전압은 과도하게 상승하지 못하도록 제어될 수 있다.
보완 프로그램을 위해서 타깃 상태(P3)를 타깃 상태로 갖는 메모리 셀들 중에서 제 3 보완 검증 전압(Vvfy_S3)보다 낮은 문턱 전압을 갖는 메모리 셀들이 선택될 수 있다. 그리고 제 3 보완 검증 전압(Vvfy_S3)보다 낮은 문턱 전압을 갖는 메모리 셀들은 보완 프로그램 펄스에 의해서 제 3 보완 검증 전압(Vvfy_S3)보다 높은 문턱 전압으로 프로그램될 것이다. 하지만, 이때 인가되는 제 3 보완 프로그램 전압(Vpgm_S3)의 레벨은 노말 프로그램 동작시 타깃 상태(P3)에 대한 패스 루프(Pass Loop)에서 제공된 프로그램 전압의 레벨과 같거나 낮게 제공될 것이다. 따라서, 보완 프로그램에 의해서 선택된 메모리 셀들의 문턱 전압은 과도하게 상승하지 못하도록 제어될 수 있다.
도 7은 도 6의 타깃 상태로 프로그램되는 메모리 셀들의 워드 라인에 인가되는 전압을 보여주는 파형도이다. 도 7을 참조하면, 복수의 타깃 상태들(P1, P2, P3) 각각으로 프로그램되는 메모리 셀들은 노말 프로그램 동작에 후속하여 보완 프로그램 동작에 의해서 프로그램된다.
노말 프로그램 동작은 선택된 메모리 셀들에 대한 증가형 스텝 펄스 프로그램(ISPP)의 적용으로 구성된다. 즉, 선택된 메모리 셀들의 워드 라인으로 증가하는 프로그램 펄스들(Vpgm1, Vpgm2, …, VpgmN)이 순차적으로 인가될 것이다. 그리고 매 프로그램 펄스들이 인가된 후에는 복수의 타깃 상태들(P1, P2, P3) 각각에 대응하는 검증 전압들(Vvfy1, Vvfy2, Vvfy3)이 선택된 메모리 셀들의 워드 라인에 인가될 것이다. 노말 프로그램 동작은 복수의 프로그램 루프들에 의해서 수행된다. 하나의 프로그램 펄스의 인가와 검증 전압들(Vvfy1, Vvfy2, Vvfy3)이 인가되는 구간을 하나의 프로그램 루프라 칭하기로 한다.
선택된 메모리 셀들 중에서 타깃 상태(P1)로 프로그램되는 메모리 셀들은 루프 카운트(L4)의 프로그램 루프에 의해서 프로그램 완료된다. 따라서, 루프 카운트(L5)의 프로그램 동작부터는 타깃 상태(P1)로 프로그램되는 메모리 셀들은 프로그램 금지될 것이다. 메모리 셀들 중에서 타깃 상태(P2)로 프로그램되는 메모리 셀들은 루프 카운트(L8)의 프로그램 루프의 실행에 의해서 프로그램 완료된다. 따라서, 루프 카운트(L9)의 프로그램 동작부터는 타깃 상태(P2)로 프로그램되는 메모리 셀들은 프로그램 금지될 것이다. 메모리 셀들 중에서 타깃 상태(P3)로 프로그램되는 메모리 셀들은 루프 카운트(L11)의 프로그램 루프의 실행에 의해서 프로그램 완료된다. 따라서, 루프 카운트(L11)의 프로그램 루프에서 타깃 상태들(P1, P2, P3) 각각에 대한 노말 프로그램 동작은 완료된다.
노말 프로그램 동작에서, 페이지 버퍼(130, 도 1 참조)는 각각의 타깃 상태들(P1, P2, P3)의 프로그램 패스 시점마다 패스 루프 카운트 정보(PLCI)를 제어 로직(150)에 제공할 수 있다. 예를 들면, 페이지 버퍼(130)는 타깃 상태(P1)를 갖는 메모리 셀들이 모두 프로그램 완료되면, 제어 로직(150)에 플래그 신호나 정보를 전송할 수 있다. 페이지 버퍼(130)는 타깃 상태(P2)를 갖는 메모리 셀들이 모두 프로그램 완료되면, 제어 로직(150)에 플래그 신호나 정보를 전송할 수 있다. 페이지 버퍼(130)는 타깃 상태(P3)를 갖는 메모리 셀들이 모두 프로그램 완료되면, 제어 로직(150)에 플래그 신호나 정보를 전송할 수 있다. 각각의 플래그 신호나 정보에 응답하여 제어 로직(150)은 타깃 상태들 각각에 대응하는 패스 루프를 인지하고, 보완 프로그램 동작을 위한 워드 라인 전압을 선택하게 될 것이다.
노말 프로그램 동작에 후속하여 보완 프로그램 동작이 실시된다. 보완 프로그램 동작은 먼저 보완 프로그램의 대상인 메모리 셀들을 선택하는 동작에서 시작된다. 복수의 타깃 상태들(P1, P2, P3) 모두에 대해서 보완 프로그램 동작을 적용하는 경우를 가정하자. 그러면, 먼저 타깃 상태(P1)로 프로그램된 메모리 셀들 중에서 제 1 보완 검증 전압(Vvfy_S1)보다 낮은 문턱 전압을 갖는 메모리 셀들이 선택된 것이다. 그리고 선택된 메모리 셀에는 제 1 보완 프로그램 전압(Vpgm_S1)이 인가된다. 여기서, 제 1 보완 검증 전압(Vvfy_S1)은 제 1 검증 전압(Vvfy1)과 같거나 높고, 제 1 보완 프로그램 전압(Vpgm_S1)은 프로그램 전압(Vpgm4)와 같거나 낮다. 프로그램 전압(Vpgm4)은 타깃 상태(P1)를 갖는 메모리 셀들이 노말 프로그램 동작시에 프로그램 완료된 최종 프로그램 루프에서의 프로그램 전압이다.
이어서, 타깃 상태(P2)로 프로그램된 메모리 셀들 중에서 제 2 보완 검증 전압(Vvfy_S2)보다 낮은 문턱 전압을 갖는 메모리 셀들이 선택된 것이다. 그리고 선택된 메모리 셀에는 제 2 보완 프로그램 전압(Vpgm_S2)이 인가된다. 여기서, 제 2 보완 검증 전압(Vvfy_S2)은 제 2 검증 전압(Vvfy2)과 같거나 높고, 제 2 보완 프로그램 전압(Vpgm_S2)은 프로그램 전압(Vpgm8)과 같거나 낮다. 프로그램 전압(Vpgm8)은 타깃 상태(P2)를 갖는 메모리 셀들이 노말 프로그램 동작시에 프로그램 완료된 최종 프로그램 루프에서의 프로그램 전압이다.
그리고 타깃 상태(P3)로 프로그램된 메모리 셀들 중에서 제 3 보완 검증 전압(Vvfy_S3)보다 낮은 문턱 전압을 갖는 메모리 셀들이 선택된 것이다. 그리고 선택된 메모리 셀에는 제 3 보완 프로그램 전압(Vpgm_S3)이 인가된다. 여기서, 제 3 보완 검증 전압(Vvfy_S3)은 제 3 검증 전압(Vvfy3)과 같거나 높고, 제 3 보완 프로그램 전압(Vpgm_S3)은 프로그램 전압(Vpgm11)과 같거나 낮다. 프로그램 전압(Vpgm11)은 타깃 상태(P3)를 갖는 메모리 셀들이 노말 프로그램 동작시에 프로그램 완료된 최종 프로그램 루프에서의 프로그램 전압이다.
도 8a 및 도 8b는 2-비트 멀티 레벨 셀에서의 본 발명의 보완 프로그램 동작을 보여주는 도면들이다. 도 8a를 참조하면, 보완 프로그램 동작을 위해서 복수의 타깃 상태들(P1, P2, P3) 중에서 어느 하나의 타깃 상태(예를 들면, P3)가 선택될 수 있다. 그리고 선택된 타깃 상태(P3)로 프로그램된 메모리 셀들 중에서 일부가 프로그램될 수 있다.
(I) 산포는 2-비트 멀티 레벨 셀(MLC)의 노말 프로그램(Normal Program) 동작 직후에 형성되는 메모리 셀들의 문턱 전압 산포를 보여준다. 여기서, 타깃 상태들(P1, P2, P3) 각각으로 프로그램된 메모리 셀들의 문턱 전압은 서로 다른 수의 프로그램 펄스의 적용에 의해서 형성될 수 있다. 특히, 상대적으로 빠르게 프로그램되는 고속 셀의 경우에는 적은 수의 프로그램 펄스에 의해서 타깃 상태로 프로그램될 수 있다. 반면, 상대적으로 느리게 프로그램되는 저속 셀의 경우에는 고속 셀에 비해서 상대적으로 많은 수의 프로그램 펄스에 노출되고, 타깃 상태로 프로그램될 수 있다. 따라서, 노말 프로그램 동작에 의해서 형성된 어느 하나의 타깃 상태(예를 들면, P3)는 고속 셀의 산포와 저속 셀의 산포로 분리될 수 있다. 즉, 상대적으로 적은 수의 프로그램 펄스에 노출된 고속 셀은 타깃 산포의 좌측에, 상대적으로 많은 수의 프로그램 펄스에 노출된 저속 셀은 타깃 산포의 우측에 분포하는 것으로 간주될 수 있다.
이러한 고속 셀과 저속 셀의 문턱 전압 산포의 편차는 타깃 상태들(P1, P2, P3)에 따라서 다르게 나타날 수 있을 것이다. 프로그램 시간을 최소화하기 위해서는 고속 셀과 저속 셀의 문턱 전압 편차가 상대적으로 큰 타깃 상태에 대해서만 보완 프로그램을 적용할 수 있을 것이다.
도시된 (Ⅱ) 산포는 어느 하나의 타깃 상태에 대해서만 본 발명의 보완 프로그램(Supplementary Program) 동작을 적용하는 예를 보여준다. 특히, 가장 높은 문턱 전압에 대응하는 타깃 상태(P3)로 프로그램되는 메모리 셀들 중 일부가 선택되어 보완 프로그램 동작을 적용할 수 있다. 보완 프로그램 동작을 위해서 타깃 상태(P3)로 프로그램되는 메모리 셀들 중에서 제 3 보완 검증 전압(Vvfy_S3)보다 낮은 문턱 전압을 갖는 메모리 셀들이 선택될 수 있다. 그리고 제 3 보완 검증 전압(Vvfy_S3)보다 낮은 문턱 전압을 갖는 메모리 셀들은 보완 프로그램 전압에 의해서 제 3 보완 검증 전압(Vvfy_S3)보다 높은 문턱 전압으로 프로그램될 것이다. 하지만, 이때 인가되는 제 3 보완 프로그램 전압(Vpgm_S3)의 레벨은 노말 프로그램 동작시 타깃 상태(P3)에 대한 패스 루프(Pass Loop)에서 제공된 프로그램 전압의 레벨과 같거나 낮게 제공될 것이다. 따라서, 보완 프로그램에 의해서 선택된 메모리 셀들의 문턱 전압은 과도하게 상승하지 못하도록 제어될 수 있다.
도 8b는 도 8a의 문턱 전압 산포를 갖는 메모리 셀들에 대한 프로그램 펄스들을 보여주는 파형도이다. 도 8b를 참조하면, 노말 프로그램 동작에 의해서 복수의 타깃 상태들(P1, P2, P3) 각각으로 프로그램되는 메모리 셀들 중에서 하나의 타깃 상태(P3)에 대응하는 메모리 셀들이 선택된다. 그리고 그 중에서 일부만이 선택되어 보완 프로그램 동작에 의해서 처리될 것이다.
노말 프로그램 동작은 선택된 메모리 셀들에 대한 증가형 스텝 펄스 프로그램(ISPP)의 적용으로 구성된다. 즉, 선택된 메모리 셀들의 워드 라인으로 증가하는 프로그램 펄스들(Vpgm1, Vpgm2, …, VpgmN)이 순차적으로 인가될 것이다. 그리고 매 프로그램 펄스들이 인가된 후에는 복수의 타깃 상태들(P1, P2, P3) 각각에 대응하는 검증 전압들(Vvfy1, Vvfy2, Vvfy3)이 선택된 메모리 셀들의 워드 라인에 인가될 것이다. 노말 프로그램 동작은 복수의 프로그램 루프들에 의해서 수행된다.
선택된 메모리 셀들 중에서 타깃 상태(P1)로 프로그램되는 메모리 셀들은 루프 카운트(L4)의 프로그램 루프에 의해서 프로그램 완료된다. 따라서, 루프 카운트(L5)의 프로그램 동작부터는 타깃 상태(P1)로 프로그램되는 메모리 셀들은 프로그램 금지될 것이다. 메모리 셀들 중에서 타깃 상태(P2)로 프로그램되는 메모리 셀들은 루프 카운트(L8)의 프로그램 루프의 실행에 의해서 프로그램 완료된다. 따라서, 루프 카운트(L9)의 프로그램 동작부터는 타깃 상태(P2)로 프로그램되는 메모리 셀들은 프로그램 금지될 것이다. 메모리 셀들 중에서 타깃 상태(P3)로 프로그램되는 메모리 셀들은 루프 카운트(L11)의 프로그램 루프의 실행에 의해서 프로그램 완료된다. 따라서, 루프 카운트(L11)의 프로그램 루프에서 타깃 상태들(P1, P2, P3) 각각에 대한 노말 프로그램 동작은 완료된다.
노말 프로그램 동작에서, 페이지 버퍼(130, 도 1 참조)는 각각의 타깃 상태들(P1, P2, P3)의 프로그램 패스 시점마다 패스 루프 카운트 정보(PLCI)를 제어 로직(150)에 제공할 수 있다. 예를 들면, 페이지 버퍼(130)는 타깃 상태(P1)를 갖는 메모리 셀들이 모두 프로그램 완료되면, 제어 로직(150)에 플래그 신호나 정보를 전송할 수 있다. 페이지 버퍼(130)는 타깃 상태(P2)를 갖는 메모리 셀들이 모두 프로그램 완료되면, 제어 로직(150)에 플래그 신호나 정보를 전송할 수 있다. 페이지 버퍼(130)는 타깃 상태(P3)를 갖는 메모리 셀들이 모두 프로그램 완료되면, 제어 로직(150)에 플래그 신호나 정보를 전송할 수 있다. 각각의 플래그 신호나 정보에 응답하여 제어 로직(150)은 타깃 상태들 각각에 대응하는 패스 루프를 인지하고, 보완 프로그램 동작을 위한 워드 라인 전압을 선택하게 될 것이다. 하지만, 타깃 상태(P3)에 대응하는 메모리 셀들만을 보완 프로그램 동작에 따라 처리할 경우, 페이지 버퍼(130)는 타깃 상태(P3)의 메모리 셀들이 프로그램 완료되는 루프 카운트 정보만을 제어 로직(150)에 제공할 수도 있을 것이다.
노말 프로그램 동작에 후속하여 보완 프로그램 동작이 실시된다. 보완 프로그램 동작은 먼저 보완 프로그램의 대상인 메모리 셀들을 선택하는 동작부터 시작된다. 하나의 타깃 상태(P3)에 대해서 보완 프로그램을 적용하는 경우, 타깃 상태(P3)로 프로그램된 메모리 셀들 중에서 제 3 보완 검증 전압(Vvfy_S3)보다 낮은 문턱 전압을 갖는 메모리 셀들이 선택된 것이다. 그리고 선택된 메모리 셀에는 제 3 보완 프로그램 전압(Vpgm_S3)이 인가된다. 여기서, 제 3 보완 검증 전압(Vvfy_S3)은 제 3 검증 전압(Vvfy3)과 같거나 높고, 제 3 보완 프로그램 전압(Vpgm_S3)은 프로그램 전압(Vpgm11)과 같거나 낮다. 프로그램 전압(Vpgm11)은 타깃 상태(P3)를 갖는 메모리 셀들이 노말 프로그램 동작시에 프로그램 완료된 최종 프로그램 루프에서의 프로그램 전압이다.
도 9a 및 도 9b는 2-비트 멀티 레벨 셀에서의 본 발명의 보완 프로그램 동작의 다른 실시 예를 보여주는 도면들이다. 도 9a를 참조하면, 보완 프로그램을 위해서 복수의 타깃 상태들(P1, P2, P3) 중에서 두 개의 타깃 상태들(예를 들면, P2와 P3)로 프로그램되는 메모리 셀들이 선택될 수 있다.
(I) 산포는 2-비트 멀티 레벨 셀(MLC)의 노말 프로그램(Normal Program) 동작 직후에 형성되는 메모리 셀들의 문턱 전압 산포를 보여준다. 프로그램 시간을 최소화하기 위해서는 타깃 상태들(P2, P3)에 대해서만 보완 프로그램을 적용할 수 있을 것이다.
도시된 (Ⅱ) 산포는 두 개의 타깃 상태들(P2, P3)로 프로그램된 메모리 셀들에 본 발명의 보완 프로그램(Supplementary Program) 동작을 적용하는 예를 보여준다. 보완 프로그램을 위해서 타깃 상태(P2)로 프로그램되는 메모리 셀들 중에서 제 2 보완 검증 전압(Vvfy_S2)보다 낮은 문턱 전압을 갖는 메모리 셀들이 선택될 수 있다. 그리고 제 2 보완 검증 전압(Vvfy_S2)보다 낮은 문턱 전압을 갖는 메모리 셀들은 보완 프로그램 펄스에 의해서 제 2 보완 검증 전압(Vvfy_S2) 이상의 문턱 전압으로 프로그램될 것이다. 하지만, 이때 인가되는 제 2 보완 프로그램 전압(Vpgm_S2)의 레벨은 노말 프로그램 동작시 타깃 상태(P2)에 대한 패스 루프(Pass Loop)에서 제공된 프로그램 전압과 같거나 낮게 제공될 것이다.
이어서, 보완 프로그램을 위해서 타깃 상태(P3)로 프로그램되는 메모리 셀들 중에서 제 3 보완 검증 전압(Vvfy_S3)보다 낮은 문턱 전압을 갖는 메모리 셀들이 선택될 수 있다. 그리고 제 3 보완 검증 전압(Vvfy_S3)보다 낮은 문턱 전압을 갖는 메모리 셀들은 보완 프로그램 펄스에 의해서 제 3 보완 검증 전압(Vvfy_S3) 이상의 문턱 전압으로 프로그램될 것이다. 하지만, 이때 인가되는 제 3 보완 프로그램 전압(Vpgm_S3)의 레벨은 노말 프로그램 동작시 타깃 상태(P3)에 대한 패스 루프(Pass Loop)에서 제공된 프로그램 전압(Vpgmk)과 같거나 낮게 제공될 것이다.
도 9b는 도 9a의 문턱 전압 산포를 갖는 메모리 셀들에 대한 프로그램 펄스들을 보여주는 파형도이다. 도 9b를 참조하면, 노말 프로그램 동작에 의해서 복수의 타깃 상태들(P1, P2, P3) 각각으로 프로그램되는 메모리 셀들 중에서 두 개의 타깃 상태(P2, P3)에 대응하는 메모리 셀들이 선택된다. 그리고 그 중에서 일부만이 보완 검증 전압들(Vvfy_S2, Vvfy_S3)에 의해서 선택되어 프로그램된다.
노말 프로그램 동작은 선택된 메모리 셀들에 대한 증가형 스텝 펄스 프로그램(ISPP)의 적용으로 구성된다. 즉, 선택된 메모리 셀들의 워드 라인으로 증가하는 프로그램 펄스들(Vpgm1, Vpgm2, …, VpgmN)이 순차적으로 인가될 것이다. 그리고 매 프로그램 펄스들이 인가된 후에는 복수의 타깃 상태들(P1, P2, P3) 각각에 대응하는 검증 전압들(Vvfy1, Vvfy2, Vvfy3)이 선택된 메모리 셀들의 워드 라인에 인가될 것이다. 노말 프로그램 동작은 복수의 프로그램 루프들에 의해서 수행된다.
선택된 메모리 셀들 중에서 타깃 상태(P1)로 프로그램되는 메모리 셀들은 루프 카운트(L4)의 프로그램 루프에 의해서 프로그램 완료된다. 따라서, 루프 카운트(L5)의 프로그램 동작부터는 타깃 상태(P1)로 프로그램되는 메모리 셀들은 프로그램 금지될 것이다. 메모리 셀들 중에서 타깃 상태(P2)로 프로그램되는 메모리 셀들은 루프 카운트(L8)의 프로그램 루프의 실행에 의해서 프로그램 완료된다. 따라서, 루프 카운트(L9)의 프로그램 동작부터는 타깃 상태(P2)로 프로그램되는 메모리 셀들은 프로그램 금지될 것이다. 메모리 셀들 중에서 타깃 상태(P3)로 프로그램되는 메모리 셀들은 루프 카운트(L11)의 프로그램 루프의 실행에 의해서 프로그램 완료된다. 따라서, 루프 카운트(L11)의 프로그램 루프에서 타깃 상태들(P1, P2, P3) 각각에 대한 노말 프로그램 동작은 완료된다.
노말 프로그램 동작에서, 페이지 버퍼(130, 도 1 참조)는 각각의 타깃 상태들(P1, P2, P3)의 프로그램 패스 시점마다 패스 루프 카운트 정보(PLCI)를 제어 로직(150)에 제공할 수 있다. 각각의 플래그 신호나 정보에 응답하여 제어 로직(150)은 타깃 상태들 각각에 대응하는 패스 루프를 인지하고, 보완 프로그램 동작을 위한 워드 라인 전압을 선택하게 될 것이다. 하지만, 타깃 상태들(P2, P3)에 대해서만 보완 프로그램 동작을 적용할 경우, 페이지 버퍼(130)는 타깃 상태(P1)의 메모리 셀들이 프로그램 완료되는 루프 카운트 정보의 제공은 스킵할 수도 있음은 잘 이해될 것이다.
노말 프로그램 동작에 후속하여 보완 프로그램 동작이 실시된다. 보완 프로그램 동작은 먼저 보완 프로그램의 대상인 메모리 셀들을 선택하는 동작부터 시작된다. 타깃 상태(P2)에 대해서 보완 프로그램을 적용하는 경우, 타깃 상태(P2)로 프로그램된 메모리 셀들 중에서 제 2 보완 검증 전압(Vvfy_S2)보다 낮은 문턱 전압을 갖는 메모리 셀들이 선택된 것이다. 그리고 선택된 메모리 셀에는 제 2 보완 프로그램 전압(Vpgm_S2)이 인가된다. 여기서, 제 2 보완 검증 전압(Vvfy_S2)은 제 2 검증 전압(Vvfy2)과 같거나 높고, 제 2 보완 프로그램 전압(Vpgm_S2)은 프로그램 전압(Vpgm8)과 같거나 낮다. 프로그램 전압(Vpgm8)은 타깃 상태(P2)를 갖는 메모리 셀들이 노말 프로그램 동작시에 프로그램 완료된 최종 프로그램 루프에서의 프로그램 전압이다.
이어서, 타깃 상태(P3)에 대해서 보완 프로그램을 적용하는 경우, 타깃 상태(P3)로 프로그램된 메모리 셀들 중에서 제 3 보완 검증 전압(Vvfy_S3)보다 낮은 문턱 전압을 갖는 메모리 셀들이 선택된 것이다. 그리고 선택된 메모리 셀에는 제 3 보완 프로그램 전압(Vpgm_S3)이 인가된다. 여기서, 제 3 보완 검증 전압(Vvfy_S3)은 제 3 검증 전압(Vvfy3)과 같거나 높고, 제 3 보완 프로그램 전압(Vpgm_S3)은 프로그램 전압(Vpgm11)과 같거나 낮다. 프로그램 전압(Vpgm11)은 타깃 상태(P3)를 갖는 메모리 셀들이 노말 프로그램 동작시에 프로그램 완료된 최종 프로그램 루프에서의 프로그램 전압이다.
도 10은 본 발명의 보완 프로그램 동작을 위한 셀의 선택 방법을 보여주는 도면이다. 도 10을 참조하면, 노말 프로그램 동작에 의해서 형성되는 메모리 셀들의 문턱 전압 산포인 타깃 상태(P3)와, 타깃 상태(P3)로 프로그램된 메모리 셀들 중에서 보완 프로그램을 위해서 선택되는 메모리 셀들의 산포가 도시되어 있다.
노말 프로그램이 완료되면, 타깃 상태(P3)로 프로그램되는 메모리 셀들의 문턱 전압은 도시된 바와 같이 형성된다. 노말 프로그램 동작시에 타깃 상태(P3)로 프로그램되는 메모리 셀들에는 증가형 스텝 펄스 프로그램(ISPP)을 위한 펄스와 제 3 검증 전압(Vvfy3)이 제공될 것이다. 어느 하나의 프로그램 루프에서, 프로그램 패스로 검증 결과가 검출되면 선택된 메모리 셀들은 도시된 형태의 산포를 갖게 될 것이다. 여기서, 프로그램 완료된 메모리 셀들 중에서도 제 3 검증 전압(Vvfy3)보다 낮은 문턱 전압을 가지는 셀들이 존재할 수도 있다. 이러한 효과는 고속 재배열과 같은 현상에 의해서 발생할 수 있다. 또는, 과도하게 프로그램 속도가 느린 메모리 셀들을 고려하여 루프 수의 과도한 증가를 차단하기 위한 검증 스킴이 적용될 수 있다. 이러한 검증 방식에 따라 제 3 검증 전압(Vvfy3)보다 낮은 문턱 전압을 가지는 메모리 셀들이 프로그램 패스 이후에도 존재할 수 있을 것이다.
하지만, 본 발명의 보완 프로그램 동작을 위해서 선택되는 메모리 셀들은 제 3 검증 전압(Vvfy3)보다 높은 제 3 보완 검증 전압(Vvfy_S3)이 사용된다. 제 3 보완 검증 전압(Vvfy_S3)은 제 3 검증 전압(Vvfy3)보다 α(α는 0 이상의 실수)만큼 증가된 값으로 결정될 수 있다. 제 3 보완 검증 전압(Vvfy_S3)에 의해서 선택되는 메모리 셀들은 타깃 상태(P3)로 프로그램되긴 했지만, 프로그램 속도가 빨라서 상대적으로 적은 수의 프로그램 루프가 소요된 셀들일 수 있다. 또는, 프로그램 속도가 과도하게 늦어서 적용된 프로그램 루프 수가 상대적으로 큼에도 타깃 산포(P3)의 하측에 위치하는 메모리 셀들이 제 3 보완 검증 전압(Vvfy_S3)에 의해서 선택될 수도 있을 것이다. 하지만, 제 3 보완 검증 전압(Vvfy_S3)에 의해서 선택되는 메모리 셀들의 특성은 상술한 것들에만 국한되지 않음은 잘 이해될 것이다.
이상에서는 타깃 상태(P3)로 프로그램되는 메모리 셀들 중에서 보완 프로그램을 위해서 선택되는 메모리 셀들 및 그것들에 제공되는 보완 검증 전압(Vvfy_S3)이 설명되었다. 하지만, 본 발명은 여기에만 국한되지 않는다. 타깃 상태들(P1, P2)로 프로그램되는 메모리 셀들 중에서도 각각의 상태에 대응하는 보완 검증 전압들(Vvfy_S1, Vvfy_S2)이 선택될 수 있을 것이다. 하지만, 대응하는 타깃 상태의 보완 검증 전압은 타깃 상태에 대응하는 검증 전압보다 높아야 할 것이다.
도 11은 3-비트 멀티 레벨 셀(MLC)에서의 보완 프로그램 동작에 의한 문턱 전압 개선 효과를 보여주는 도면이다. 도 11을 참조하면, 7개의 타깃 상태들(P1, P2, P3, P4, P5, P6, P7)로 프로그램되는 메모리 셀들에 대한 노말 프로그램 동작과 보완 프로그램 동작 후의 산포들이 각각 도시되어 있다.
(I) 산포는 노말 프로그램(Normal Program) 동작 이후에 형성되는 메모리 셀들의 문턱 전압을 보여준다. 메모리 셀들은 복수의 타깃 상태들(P1, P2, P3, P4, P5, P6, P7)로 동시에 프로그램될 것이다. 하지만, 메모리 셀들은 동일한 프로그램 펄스를 워드 라인으로 제공받지만, 프로그램 패스로 검증되는 프로그램 루프 카운트는 타깃 상태들마다 다를 수 있다.
(I) 산포를 형성하는 메모리 셀들에 대한 보완 프로그램 동작을 적용한 결과, 메모리 셀들의 문턱 전압은 (Ⅱ) 산포와 같은 형태를 가질 수 있다. 보완 프로그램을 위해서 타깃 상태(P1)를 타깃 상태로 갖는 메모리 셀들 중에서 제 1 보완 검증 전압(Vvfy_S1 ≥ Vvfy1) 이하의 문턱 전압을 갖는 메모리 셀들이 선택될 수 있다. 그리고 제 1 보완 검증 전압(Vvfy_S1)보다 낮은 문턱 전압을 갖는 메모리 셀들은 보완 프로그램 펄스에 의해서 제 1 보완 검증 전압(Vvfy_S1)보다 높은 문턱 전압으로 프로그램될 것이다. 이때 인가되는 제 1 보완 프로그램 전압(Vpgm_S1)의 레벨은 노말 프로그램 동작시 타깃 상태(P1)에 대한 패스 루프(Pass Loop)에서 제공된 프로그램 전압의 레벨보다 낮게 제공될 것이다.
보완 프로그램 동작을 위해서 타깃 상태(P2)로 프로그램된 메모리 셀들 중에서 제 2 보완 검증 전압(Vvfy_S2 ≥ Vvfy2) 이하의 문턱 전압을 갖는 메모리 셀들이 선택될 수 있다. 그리고 제 2 보완 검증 전압(Vvfy_S2)보다 낮은 문턱 전압을 갖는 메모리 셀들은 보완 프로그램 전압에 의해서 제 2 보완 검증 전압(Vvfy_S2)보다 높은 문턱 전압으로 프로그램될 것이다. 마찬가지로, 이때 인가되는 제 2 보완 프로그램 전압(Vpgm_S2)의 레벨은 노말 프로그램 동작시 타깃 상태(P2)에 대한 패스 루프(Pass Loop)에서 제공된 프로그램 전압(Vpgmj)의 레벨과 같거나 낮게 제공될 것이다. 따라서, 보완 프로그램에 의해서 선택된 메모리 셀들의 문턱 전압은 과도하게 상승하지 못하도록 제어될 수 있다.
타깃 상태들(P3, P4, P5, P6, P7) 각각으로 프로그램된 메모리 셀들의 보완 프로그램 동작도 보완 검증 전압들(Vvfy_S3, Vvfy_S4, Vvfy_S5, Vvfy_S6, Vvfy_S7) 각각을 통해서 선택된다. 그리고 선택된 메모리 셀들의 워드 라인으로는 타깃 상태들 각각에 대응하는 보완 프로그램 전압들(Vpgm_S3, Vpgm_S4, Vpgm_S5, Vpgm_S6, Vpgm_S7)이 인가될 것이다. 보완 검증 전압(Vvfy_Sj, j는 타깃 상태의 번호)은 노말 프로그램 동작에서 제공된 검증 전압(Vvfyj)과 같거나 높게 제공될 것이다. 그리고 보완 프로그램 전압들은 노말 프로그램 동작시 해당 타깃 상태가 프로그램 패스된 루프의 프로그램 펄스 전압과 같거나 낮게 제공될 것이다.
도 12는 도 11의 타깃 상태를 갖는 메모리 셀들에 대한 프로그램 전압을 보여주는 파형도이다. 도 12를 참조하면, 복수의 타깃 상태들(P1, P2, P3, P4, P5, P6, P7) 각각의 문턱 전압으로 프로그램되는 메모리 셀들은 노말 프로그램 동작과 그에 후속하는 보완 프로그램 동작에 의해서 프로그램된다.
노말 프로그램 동작은 선택된 메모리 셀들에 대한 증가형 스텝 펄스 프로그램(ISPP)의 적용으로 구성된다. 즉, 선택된 메모리 셀들의 워드 라인으로 증가하는 프로그램 펄스들(Vpgm1, Vpgm2, …, VpgmN)이 순차적으로 인가될 것이다. 그리고 매 프로그램 펄스들이 인가된 후에는 복수의 타깃 상태들(P1, P2, P3, P4, P5, P6, P7) 각각에 대응하는 검증 전압들(Vvfy1, Vvfy2, Vvfy3, Vvfy4, Vvfy5, Vvfy6, Vvfy7)이 선택된 메모리 셀들의 워드 라인에 인가될 것이다. 노말 프로그램 동작은 복수의 프로그램 루프들에 의해서 수행된다.
선택된 메모리 셀들 중에서 타깃 상태(P1)로 프로그램되는 메모리 셀들은 루프 카운트(L3)의 프로그램 루프에 의해서 프로그램 완료된다. 따라서, 루프 카운트(L4)의 프로그램 동작부터는 타깃 상태(P1)로 프로그램되는 메모리 셀들은 프로그램 금지될 것이다. 메모리 셀들 중에서 타깃 상태(P2)로 프로그램되는 메모리 셀들은 루프 카운트(L7)의 프로그램 루프의 실행에 의해서 프로그램 완료된다. 따라서, 루프 카운트(L8)의 프로그램 동작부터는 타깃 상태(P2)로 프로그램되는 메모리 셀들은 프로그램 금지될 것이다.
도시되지는 않았지만, 메모리 셀들 중에서 타깃 상태들(P3, P4, P5, P6, P7) 각각으로 프로그램되는 메모리 셀들은 증가하는 루프 수에 따라 어느 하나의 루프 카운트에서 프로그램 완료될 것이다. 노말 프로그램 동작에서, 페이지 버퍼(130, 도 1 참조)는 각각의 타깃 상태들(P1, P2, P3, P4, P5, P6, P7)의 프로그램 패스 시점마다 패스 루프 카운트 정보(PLCI)를 제어 로직(150)에 제공할 것이다. 패스 루프 카운트 정보(PLCI)는 플래그 신호나 데이터로 제어 로직(150)에 제공될 것이다. 타깃 상태들 각각에 대응하는 플래그 신호나 정보에 응답하여 제어 로직(150)은 타깃 상태들 각각에 대응하는 패스 루프를 인지하고, 보완 프로그램 동작을 위한 워드 라인 전압을 선택하게 될 것이다.
노말 프로그램 동작이 완료되면, 후속하여 보완 프로그램 동작이 실시된다. 보완 프로그램 동작은 먼저 추가적으로 프로그램될 메모리 셀들을 선택하는 동작에서 시작된다. 복수의 타깃 상태들(P1, P2, P3, P4, P5, P6, P7) 모두에 대해서 보완 프로그램을 적용하는 경우, 먼저 타깃 상태(P1)로 프로그램된 메모리 셀들 중에서 제 1 보완 검증 전압(Vvfy_S1)보다 낮은 문턱 전압을 갖는 메모리 셀들이 선택된 것이다. 그리고 선택된 메모리 셀에는 제 1 보완 프로그램 전압(Vpgm_S1)이 인가된다. 여기서, 제 1 보완 검증 전압(Vvfy_S1)은 제 1 검증 전압(Vvfy1)과 같거나 높고, 제 1 보완 프로그램 전압(Vpgm_S1)은 프로그램 전압(Vpgm3)과 같거나 낮다. 프로그램 전압(Vpgm3)은 타깃 상태(P1)를 갖는 메모리 셀들이 노말 프로그램 동작시에 프로그램 완료된 최종 프로그램 루프에서의 프로그램 전압이다.
이어서, 타깃 상태(P2)로 프로그램된 메모리 셀들 중에서 제 2 보완 검증 전압(Vvfy_S2)보다 낮은 문턱 전압을 갖는 메모리 셀들이 선택된 것이다. 그리고 선택된 메모리 셀에는 제 2 보완 프로그램 전압(Vpgm_S2)이 인가된다. 여기서, 제 2 보완 검증 전압(Vvfy_S2)은 제 2 검증 전압(Vvfy2)과 같거나 높고, 제 2 보완 프로그램 전압(Vpgm_S2)은 프로그램 전압(Vpgm7)과 같거나 낮다. 프로그램 전압(Vpgm7)은 타깃 상태(P2)를 갖는 메모리 셀들이 노말 프로그램 동작시에 프로그램 완료된 최종 프로그램 루프에서의 프로그램 전압이다.
타깃 상태(P3)로 프로그램된 메모리 셀들 중에서 제 3 보완 검증 전압(Vvfy_S3)보다 낮은 문턱 전압을 갖는 메모리 셀들이 선택된 것이다. 그리고 선택된 메모리 셀에는 제 3 보완 프로그램 전압(Vpgm_S3)이 인가된다. 여기서, 제 3 보완 검증 전압(Vvfy_S3)은 제 3 검증 전압(Vvfy3)과 같거나 높을 것이다. 그리고 제 3 보완 프로그램 전압(Vpgm_S3)은 도시되지는 않았지만 노말 프로그램 동작시 타깃 상태(P3)에 대한 프로그램 패스 루프에서 제공된 프로그램 전압과 같거나 낮게 제공될 것이다.
도시된 바와 같이 상술한 방식으로 타깃 상태들(P4, P5, P6, P7) 각각에 대한 보완 프로그램 동작이 실행될 수 있다.
도 13a 및 도 13b는 3-비트 멀티 레벨 셀(MLC)의 복수의 타깃 상태들 중에서 일부의 타깃 상태들에만 보완 프로그램 동작을 적용하는 실시 예를 보여주는 도면들이다.
도 13a를 참조하면, 7개의 타깃 상태들(P1, P2, P3, P4, P5, P6, P7)로 프로그램되는 메모리 셀들 중에서 두 개의 타깃 상태들(P6, P7)에만 보완 프로그램 동작이 적용될 수 있다.
(I) 산포는 노말 프로그램(Normal Program) 동작 이후에 형성되는 메모리 셀들의 문턱 전압을 보여준다. 메모리 셀들은 복수의 타깃 상태들(P1, P2, P3, P4, P5, P6, P7)로 동시에 프로그램될 것이다. 메모리 셀들은 동일한 프로그램 펄스를 워드 라인으로 제공받지만, 프로그램 패스로 검증되는 프로그램 루프 카운트는 타깃 상태들마다 각각 다를 수 있다.
보완 프로그램 동작을 적용한 이후, 메모리 셀들의 문턱 전압은 (Ⅱ) 산포와 같은 형태를 가질 수 있다. 보완 프로그램을 위해서 타깃 상태(P6)로 프로그램된 메모리 셀들 중에서 제 6 보완 검증 전압(Vvfy_S6 ≥ Vvfy6)보다 낮은 문턱 전압을 갖는 메모리 셀들이 선택될 수 있다. 그리고 제 6 보완 검증 전압(Vvfy_S6)보다 낮은 문턱 전압을 갖는 메모리 셀들은 보완 프로그램 펄스에 의해서 제 6 보완 검증 전압(Vvfy_S6)보다 높은 문턱 전압으로 프로그램될 것이다. 이때 인가되는 제 6 보완 프로그램 전압(Vpgm_S6)의 레벨은 노말 프로그램 동작시 타깃 상태(P6)에 대한 패스 루프(Pass Loop)에서 제공된 프로그램 전압과 같거나 낮게 제공될 것이다.
보완 프로그램을 위해서 타깃 상태(P7)로 프로그램된 메모리 셀들 중에서 제 7 보완 검증 전압(Vvfy_S7 ≥ Vvfy7) 이하의 문턱 전압을 갖는 메모리 셀들이 선택될 수 있다. 그리고 제 7 보완 검증 전압(Vvfy_S7)보다 낮은 문턱 전압을 갖는 메모리 셀들은 보완 프로그램 펄스에 의해서 제 7 보완 검증 전압(Vvfy_S7)보다 높은 문턱 전압으로 프로그램될 것이다. 마찬가지로, 이때 인가되는 제 7 보완 프로그램 전압(Vpgm_S7)의 레벨은 노말 프로그램 동작시 타깃 상태(P7)에 대한 패스 루프(Pass Loop)에서 제공된 프로그램 전압과 같거나 낮게 제공될 것이다.
도 13b를 참조하면, 복수의 타깃 상태들(P1, P2, P3, P4, P5, P6, P7) 각각의 문턱 전압으로 프로그램되는 메모리 셀들은 노말 프로그램 동작과 그에 후속하는 보완 프로그램 동작에 의해서 프로그램된다.
노말 프로그램 동작은 선택된 메모리 셀들에 대한 증가형 스텝 펄스 프로그램(ISPP)의 적용으로 구성된다. 즉, 선택된 메모리 셀들의 워드 라인으로 증가하는 프로그램 펄스들(Vpgm1, Vpgm2, …, VpgmN)이 순차적으로 인가될 것이다. 그리고 매 프로그램 펄스들이 인가된 후에는 복수의 타깃 상태들(P1, P2, P3, P4, P5, P6, P7) 각각에 대응하는 검증 전압들(Vvfy1, Vvfy2, Vvfy3, Vvfy4, Vvfy5, Vvfy6, Vvfy7)이 선택된 메모리 셀들의 워드 라인에 인가될 것이다. 노말 프로그램 동작은 복수의 프로그램 루프들에 의해서 수행된다.
노말 프로그램 동작시, 선택된 메모리 셀들 중에서 타깃 상태(P1)로 프로그램되는 메모리 셀들은 루프 카운트(L3)의 프로그램 루프에 의해서 프로그램 완료된다. 따라서, 루프 카운트(L4)의 프로그램 동작부터는 타깃 상태(P1)로 프로그램되는 메모리 셀들은 프로그램 금지될 것이다. 메모리 셀들 중에서 타깃 상태(P2)로 프로그램되는 메모리 셀들은 루프 카운트(L7)의 프로그램 루프의 실행에 의해서 프로그램 완료된다. 따라서, 루프 카운트(L8)의 프로그램 동작부터는 타깃 상태(P2)로 프로그램되는 메모리 셀들은 프로그램 금지될 것이다.
도시되지는 않았지만, 메모리 셀들 중에서 타깃 상태들(P3, P4, P5, P6, P7) 각각으로 프로그램되는 메모리 셀들은 증가하는 루프 수에 따라 어느 하나의 루프 카운트에서 프로그램 완료될 것이다. 노말 프로그램 동작에서, 페이지 버퍼(130, 도 1 참조)는 각각의 타깃 상태들(P1, P2, P3, P4, P5, P6, P7)의 프로그램 패스 시점마다 패스 루프 카운트 정보(PLCI)를 제어 로직(150)에 제공할 것이다. 패스 루프 카운트 정보(PLCI)는 플래그 신호나 데이터로 제어 로직(150)에 제공될 것이다. 타깃 상태들 각각에 대응하는 플래그 신호나 정보에 응답하여 제어 로직(150)은 타깃 상태들 각각에 대응하는 패스 루프를 인지하고, 보완 프로그램 동작을 위한 워드 라인 전압을 선택하게 될 것이다.
노말 프로그램 동작이 완료되면, 후속하여 보완 프로그램 동작(Supplementary PGM)이 실시된다. 보완 프로그램 동작을 위해서 먼저 메모리 셀들의 선택이 수행된다. 복수의 타깃 상태들(P1, P2, P3, P4, P5, P6, P7) 중 일부의 타깃 상태(P6, P7)에 대해서 보완 프로그램을 적용하는 경우, 먼저 타깃 상태(P6)로 프로그램된 메모리 셀들 중에서 제 6 보완 검증 전압(Vvfy_S6)보다 낮은 문턱 전압을 갖는 메모리 셀들이 선택된 것이다. 그리고 선택된 메모리 셀에는 제 6 보완 프로그램 전압(Vpgm_S6)이 인가된다. 여기서, 제 6 보완 검증 전압(Vvfy_S6)은 제 6 검증 전압(Vvfy6)과 같거나 높고, 제 6 보완 프로그램 전압(Vpgm_S6)은 타깃 상태(P6)에 대한 패스 프로그램 전압과 같거나 낮다.
이어서, 타깃 상태(P7)로 프로그램된 메모리 셀들 중에서 제 7 보완 검증 전압(Vvfy_S7)보다 낮은 문턱 전압을 갖는 메모리 셀들이 선택된 것이다. 그리고 선택된 메모리 셀에는 제 7 보완 프로그램 전압(Vpgm_S7)이 인가된다. 여기서, 제 7 보완 검증 전압(Vvfy_S7)은 제 7 검증 전압(Vvfy7)과 같거나 높고, 제 7 보완 프로그램 전압(Vpgm_S7)은 프로그램 전압(VpgmN)과 같거나 낮다. 프로그램 전압(VpgmN)은 타깃 상태(P7)를 갖는 메모리 셀들이 노말 프로그램 동작시에 프로그램 완료된 최종 프로그램 루프에서의 프로그램 전압이다.
도 14a 및 도 14b는 3-비트 멀티 레벨 셀(MLC)의 복수의 타깃 상태들 중에서 일부의 타깃 상태들에 보완 프로그램 동작을 수행하는 다른 실시 예를 보여주는 도면들이다.
도 14a를 참조하면, 7개의 타깃 상태들(P1, P2, P3, P4, P5, P6, P7)로 프로그램되는 메모리 셀들 중에서 네 개의 타깃 상태들(P4, P5, P6, P7)에만 보완 프로그램 동작을 적용할 수 있다.
(I) 산포는 노말 프로그램(Normal Program) 동작 이후에 형성되는 메모리 셀들의 문턱 전압을 보여준다. 메모리 셀들은 복수의 타깃 상태들(P1, P2, P3, P4, P5, P6, P7)로 동시에 프로그램될 것이다. 메모리 셀들은 동일한 프로그램 펄스를 워드 라인으로 제공받지만, 프로그램 패스(Program Pass)로 검증되는 프로그램 루프 카운트는 타깃 상태들마다 각각 다를 수 있다.
보완 프로그램 동작을 적용한 이후, 메모리 셀들의 문턱 전압은 (Ⅱ) 산포와 같은 형태를 가질 수 있다. 보완 프로그램을 위해서 타깃 상태(P4)로 프로그램된 메모리 셀들 중에서 제 4 보완 검증 전압(Vvfy_S4 ≥ Vvfy4)보다 낮은 문턱 전압을 갖는 메모리 셀들이 선택될 수 있다. 그리고 제 4 보완 검증 전압(Vvfy_S4)보다 낮은 문턱 전압을 갖는 메모리 셀들은 보완 프로그램 펄스에 의해서 제 4 보완 검증 전압(Vvfy_S4)보다 높은 문턱 전압으로 프로그램될 것이다. 이때 인가되는 제 4 보완 프로그램 전압(Vpgm_S4)의 레벨은 노말 프로그램 동작시 타깃 상태(P4)에 대한 패스 루프(Pass Loop)에서 제공된 프로그램 전압과 같거나 낮게 제공될 것이다.
보완 프로그램을 위해서 타깃 상태(P5)로 프로그램된 메모리 셀들 중에서 제 5 보완 검증 전압(Vvfy_S5 ≥ Vvfy5)보다 낮은 문턱 전압을 갖는 메모리 셀들이 선택될 수 있다. 그리고 제 5 보완 검증 전압(Vvfy_S5)보다 낮은 문턱 전압을 갖는 메모리 셀들은 보완 프로그램 펄스에 의해서 제 5 보완 검증 전압(Vvfy_S5)보다 높은 문턱 전압으로 프로그램될 것이다. 마찬가지로, 이때 인가되는 제 5 보완 프로그램 전압(Vpgm_S5)의 레벨은 노말 프로그램 동작시 타깃 상태(P5)에 대한 패스 루프(Pass Loop)에서 제공된 프로그램 전압과 같거나 낮게 제공될 것이다.
타깃 상태들(P6, P7)로 프로그램된 메모리 셀들에 대한 보완 프로그램 방법은 앞서 설명된 도 13a 및 도 13b에서 설명된 방법과 실질적으로 동일하다. 따라서, 타깃 상태들(P6, P7)에 대한 보완 프로그램 절차는 생략하기로 한다.
이상에서는 복수의 타깃 상태들 중 적어도 하나의 상태로 프로그램되는 메모리 셀들에 대한 보완 프로그램 방법이 설명되었다. 각각의 도면들에는 하나의 타깃 상태, 두 개의 타깃 상태, 또는 4개의 타깃 상태들에 대한 보완 프로그램 방법이 예시적으로 설명되었다. 하지만, 본 발명의 보완 프로그램 방법은 상술한 예들에만 국한되지 않는다. 즉, 본 발명의 보완 프로그램 방법에 따라 적어도 하나의 임의의 타깃 상태에 대한 보완 프로그램이 가능함은 잘 이해될 것이다.
도 15는 도 1의 보완 프로그램 테이블(155)에 대한 예를 보여주는 표이다. 도 15를 참조하면, 보완 프로그램 테이블(155)에는 각각의 타깃 상태들(P1, P2, P3)에 대해 패스 루프(Pass Loop)들에 대응하는 보완 검증 전압(Vvfy_S) 및 보완 프로그램 전압(Vpgm_S)의 레벨이 정의되어 있다. 패스 루프(Pass Loop)에 대한 정보는 패스 루프 카운트 정보(PLCI)를 통해서 페이지 버퍼(130)로부터 제공될 것이다.
노말 프로그램 동작에서 타깃 상태(P1)로 프로그램되는 메모리 셀들이 루프 카운트(L3)에서 프로그램 완료될 수 있다. 이 경우, 제어 로직(150)은 보완 프로그램 테이블(155)을 참조하여 보완 프로그램 검증 전압(Vvfy1+α1)과 보완 프로그램 전압(Vpgm4-β1)이 선택될 수 있다. 또는, 노말 프로그램 동작에서 타깃 상태(P2)로 프로그램되는 메모리 셀들이 루프 카운트(L5)에서 프로그램 완료될 수 있다. 이 경우, 제어 로직(150)은 보완 프로그램 테이블(155)을 참조하여 보완 프로그램 검증 전압(Vvfy2+α2)과 보완 프로그램 전압(Vpgm5-β2)이 선택될 수 있을 것이다.
보완 프로그램 테이블(155)에 정의된 보완 검증 전압(Vvfy_S)은 노말 프로그램 동작에서 제공된 검증 전압보다 높다. 그리고 보완 프로그램 전압(Vpgm_S)은 대응하는 타깃 상태의 패스 루프에서 제공된 프로그램 전압보다 낮게 제공될 것이다.
도 16은 본 발명의 프로그램 동작을 좀더 구체적으로 보여주는 순서도이다. 도 16을 참조하면, 본 발명의 불휘발성 메모리 장치(100)는 프로그램 동작시 외부에서 제공되는 데이터를 노말 프로그램 동작 및 보완 프로그램 동작을 통해서 선택된 메모리 셀에 프로그램할 수 있다.
S210 단계에서, 불휘발성 메모리 장치(100)는 외부로부터 제공되는 프로그램 명령어와 데이터를 수신할 것이다. 데이터는 도 1의 페이지 버퍼(130)에 로드되고 프로그램 명령어는 제어 로직(150)에 제공될 것이다.
S220 단계에서, 불휘발성 메모리 장치(100)는 증가형 스텝 펄스 프로그램(ISPP)을 사용하는 노말 프로그램 동작을 시작할 것이다. 특히, 불휘발성 메모리 장치(100)는 루프 카운트를 초기값(L1)으로 설정할 것이다. 이후의 루프에서는 점진적으로 카운트업될 것이다.
S230 단계에서, 불휘발성 메모리 장치(100)는 프로그램 전압(Vpgmi, i는 루프 카운트)을 선택된 메모리 셀들에 인가할 것이다. 멀티-레벨 셀들을 프로그램하기 위해서는 복수의 타깃 상태들에 대한 복수의 검증 전압들(Vvfy)이 매 프로그램 루프에서 제공될 것이다. 그리고 타깃 상태들 각각에 대한 패스 루프에 대한 패스 루프 카운트 정보(PLCI)가 제어 로직(150)에 전달될 것이다.
S240 단계에서, 불휘발성 메모리 장치(100)는 타깃 상태들로 프로그램되는 메모리 셀들의 프로그램 완료 여부가 검출된다. 예를 들면, 제 1 검증 전압(Vvfy1)에 의해서 선택된 타깃 상태(P1)로 선택된 메모리 셀들이 프로그램되었는지 검출될 수 있다. 제 2 검증 전압(Vvfy2)에 의해서 선택된 타깃 상태(P2)로 선택된 메모리 셀들이 프로그램되었는지 검출될 수 있다. 제 3 검증 전압(Vvfy3)에 의해서 선택된 타깃 상태(P3)로 선택된 메모리 셀들이 프로그램되었는지 검출될 수 있다. 이러한 방식으로 타깃 상태들에 대한 노말 프로그램 동작의 완료 여부가 검출될 수 있다. 모든 타깃 상태들에 대한 노말 프로그램이 완료되지 못한 경우, 절차는 증가된 프로그램 전압을 적용하기 위한 S250 단계로 이동한다. 반면, 모든 타깃 상태들에 대한 프로그램이 완료된 것으로 판단되면, 절차는 S260 단계로 이동할 것이다.
S250 단계에서, 불휘발성 메모리 장치(100)는 루프 카운트를 증가시킨다. 그리고 S230 단계로 복귀하여 증가된 프로그램 전압에 의한 프로그램 동작이 실행될 것이다.
S260 단계에서, 불휘발성 메모리 장치(100)는 노말 프로그램 동작에서 모든 프로그램 데이터가 기입된 이후에도, 로드된 데이터를 초기화하지 않고 페이지 버퍼(130) 내부의 래치들이나 상태 버퍼 유닛(135)에 저장할 것이다. 더불어, 각각의 타깃 상태들에 대한 패스 루프의 수를 지시하는 루프 카운트 정보가 페이지 버퍼(130)로부터 제어 로직(150)으로 전달될 것이다.
S270 단계에서, 보완 프로그램의 대상이 되는 메모리 셀들이 선택될 것이다. 예를 들면, 불휘발성 메모리 장치(100)는 프로그램을 위해서 선택된 메모리 셀들 중에서 특정 타깃 상태에 대응하는 메모리 셀들을 선택할 수 있다. 그리고 특정 타깃 상태로 프로그램되는 메모리 셀들 중에서, 문턱 전압이 보완 검증 전압보다 낮은 메모리 셀들이 선택될 수 있다.
S280 단계에서, 불휘발성 메모리 장치(100)는 보완 프로그램을 위해서 선택된 메모리 셀들에 보완 프로그램 전압을 인가하여 보완 프로그램 동작을 실행한다. 불휘발성 메모리 장치(100)는 선택된 타깃 상태에 대해서 노말 프로그램 동작에서 제공된 최종 프로그램 펄스보다 낮은 프로그램 전압을 보완 프로그램 동작에서 제공할 것이다. 보완 프로그램을 통해서 메모리 셀들은 프로그램이 되더라도 문턱 전압의 상승은 규정된 상한치보다 낮게 설정될 수 있다.
이상에서 설명된 바와 같이 본 발명의 불휘발성 메모리 장치(100)는 노말 프로그램이 완료된 이후에 보완 프로그램을 수행할 수 있다. 따라서, 프로그램 동작에 소요되는 시간 증가를 최소화하면서도 다양한 요인에 기인한 메모리 셀들의 문턱 전압의 산포 악화를 개선할 수 있다. 여기서, 각각의 타깃 상태에 대한 보완 프로그램은 1회로 한정되는 것으로 설명되었으나, 본 발명은 여기에 국한되지 않는다. 각각의 타깃 상태에 대해서 보완 프로그램의 횟수는 필요에 따라 증가시킬 수 있을 것이다.
도 17a 및 도 17b는 타깃 상태들 각각에 대한 보완 프로그램 횟수를 가변하는 실시 예를 보여주는 타이밍도들이다. 도 17a는 타깃 상태들(P1, P2, P3) 각각에 대해서 보완 프로그램을 2회 실시한 예가 도시되어 있다. 이때, 타깃 상태(P1)에 있어서, 먼저 인가되는 보완 프로그램 전압(Vpgm_S11)이 나중에 인가되는 보완 프로그램 전압(Vpgm_S12)보다 높을 수 있다. 이렇나 설정은 타깃 상태들(P2, P3)에 도 적용될 것이다.
도 17b는 타깃 상태들(P1, P2, P3) 중 어느 하나에만 보완 프로그램을 2회 실시한 예가 도시되어 있다. 이때, 타깃 상태(P3)에 대한 보완 프로그램을 적용할 때 먼저 인가되는 보완 프로그램 전압(Vpgm_S31)이 나중에 인가되는 보완 프로그램 전압(Vpgm_S32)과 같거나 높을 수 있다.
이상의 도 17a 및 도 17b를 통해서 보완 프로그램 동작이 하나의 타깃 상태에 대해서 복수 회 적용될 수 있음이 설명되었다. 도시되지는 않았지만, 하나의 타깃 상태에 대해서 3회 이상의 보완 프로그램 동작이 적용될 수도 있을 것이다. 하나의 타깃 상태에 대한 보완 프로그램 동작의 적용 회수는 퍼포먼스의 악화와의 트래이드-오프(Trade-off)를 고려하여 결정될 수 있을 것이다.
도 18은 본 발명의 실시 예에 따른 효과를 간략히 보여주는 도면이다. 도 18을 참조하면, 3-비트 멀티 레벨 셀들의 보완 프로그램 적용에 따른 문턱 전압 산포의 변화가 시각적으로 도시되어 있다. 7개의 타깃 상태들(P1, P2, P3, P4, P5, P6, P7) 각각은 노말 프로그램 동작에 의해서 점선으로 나타낸 산포들(P1', P2', P3', P4', P5', P6', P7')로 형성될 것이다. 그리고 본 발명의 보완 프로그램을 적용하면, 메모리 셀들의 문턱 전압 산포는 실선으로 도시된 산포들(P1", P2", P3", P4", P5", P6", P7")로 형성될 것이다. 본 발명의 보완 프로그램 동작을 적용하더라도, 실질적으로 소거 상태(E0)에 대응하는 메모리 셀들은 영향을 거의 받지 않음을 알 수 있다.
도 19는 본 발명의 실시 예에 따른 솔리드 스테이트 드라이버(SSD)를 예시적으로 보여주는 블록도이다. 도 19를 참조하면, SSD(1000)는 복수의 불휘발성 메모리 장치들(1100) 및 SSD 제어기(1200)를 포함한다.
불휘발성 메모리 장치들(1100)은 옵션적으로 외부 고전압(Vpp)을 제공받도록 구현될 수 있다. 불휘발성 메모리 장치들(1100) 각각은 도 1에 설명된 불휘발성 메모리 장치로 구현될 수 있다. SSD 제어기(1200)는 복수의 채널들(CH1 ~ CHi, i는 2 이상의 정수)을 통하여 불휘발성 메모리 장치들(1100)에 연결된다.
SSD 제어기(1200)는 적어도 하나의 프로세서(1210), 버퍼 메모리(1220), 에러 정정 회로(1230), 호스트 인터페이스(1250) 및 NVM 인터페이스(1260)를 포함한다.
버퍼 메모리(1220)는 메모리 제어기(1200)의 동작에 필요한 데이터를 임시로 저장할 것이다. 버퍼 메모리(1220)는 데이터 혹은 명령을 저장하는 복수의 메모리 라인들을 포함할 수 있다. 여기서 복수의 메모리 라인들은 캐시 라인들에 다양한 방법으로 맵핑 될 수 있다. 버퍼 메모리(1220)는 페이지 비트맵 정보 및 읽기 카운트 정보를 저장할 수 있다. 페이지 비트맵 정보 혹은 읽기 카운트 정보는 파워-업시 불휘발성 메모리 장치(1100)로부터 읽어오고, 내부 동작에 따라 업데이트 될 수 있다. 업데이트된 페이지 비트맵 정보 혹은 읽기 카운트 정보는 주기적 혹은 비주기적으로 불휘발성 메모리 장치(1100)에 저장될 수 있다.
에러 정정 회로(1230)는 쓰기 동작에서 프로그램될 데이터의 에러 정정 코드 값을 계산하고, 읽기 동작에서 읽혀진 데이터를 에러 정정 코드 값에 근거로 하여 에러 정정하고, 데이터 복구 동작에서 불휘발성 메모리 장치(1100)로부터 복구된 데이터의 에러를 정정할 수 있다. 도시되지 않았지만, 메모리 제어기(1200)를 동작하는 데 필요한 코드 데이터를 저장하는 코드 메모리가 더 포함될 수 있다. 코드 메모리는 불휘발성 메모리 장치로 구현될 수 있다.
호스트 인터페이스(1250)는 외부의 장치와 인터페이스 기능을 제공할 수 있다. 여기서 호스트 인터페이스(1250)는 낸드 플래시 인터페이스일 수 있다. 이 외에도 호스트 인터페이스(1250)는 다양한 인터페이스에 의해 구현될 수 있으며, 복수의 인터페이스들로 구현될 수도 있다. NMV 인터페이스(1260)는 불휘발성 메모리 장치(1100)와 인터페이스 기능을 제공할 수 있다.
본 발명의 실시 예에 따른 SSD(1000)는 보완 프로그램 동작을 수행하는 불휘발성 메모리 장치(1100)를 채용함으로써, 높은 데이터 신뢰성을 제공할 수 있다.
본 발명은 eMMC(embedded multimedia card, moviNAND, iNAND)에도 적용 가능하다. 도 20은 본 발명의 실시 예에 따른 eMMC를 예시적으로 보여주는 블록도이다. 도 20을 참조하면, eMMC(2000)는 적어도 하나의 낸드 플래시 메모리 장치(2100) 및 제어기(2200)를 포함할 수 있다. 낸드 플래시 메모리 장치(2100)는 도 1에서 설명된 불휘발성 메모리 장치로 구현될 수 있다. 메모리 제어기(2200)는 채널을 통하여 낸드 플래시 메모리 장치(2100)에 연결된다.
메모리 제어기(2200)는 적어도 하나의 제어기 코어(2210), 호스트 인터페이스(2250) 및 낸드 인터페이스(2260)를 포함한다. 적어도 하나의 제어기 코어(2210)는 eMMC(2000)의 전반적인 동작을 제어한다. 호스트 인터페이스(2250)는 제어기(2210)와 호스트의 인터페이싱을 수행한다. 낸드 인터페이스(2260)는 낸드 플래시 메모리 장치(2100)와 제어기(2200)의 인터페이싱을 수행한다. 실시 예에 있어서, 호스트 인터페이스(2250)는 병렬 인터페이스(예를 들어, MMC 인터페이스)일 수 있다. 다른 실시 예에 있어서, eMMC(2000)의 호스트 인터페이스(2250)는 직렬 인터페이스(예를 들어, UHS-II, UFS 인터페이스)일 수 있다. 또 다른 실시 예에 있어서, 호스트 인터페이스(2250)는 낸드 인터페이스일 수 있다.
eMMC(2000)는 호스트로부터 전원 전압들(Vcc, Vccq)을 제공받는다. 여기서, 제 1 전원 전압(Vcc, 예를 들어 3.3V)은 낸드 플래시 메모리 장치(2100) 및 낸드 인터페이스(2260)에 제공되고, 제 2 전원 전압(Vccq, 예를 들어 1.8V/3.3V)은 제어기(2200)에 제공된다. 실시 예에 있어서, eMMC(2000)는 외부 고전압(Vpp)을 옵션적으로 제공받을 수 있다.
본 발명의 실시 예에 따른 eMMC(2000)는 퍼포먼스의 저하를 최소화하면서도 높은 데이터 신뢰성을 제공하는 낸드 플래시 메모리 장치(2100)를 채용함으로써 높은 성능과 데이터 신뢰성을 확보할 수 있다.
본 발명은 UFS(uiversal flash storage)에도 적용 가능하다. 도 21은 본 발명의 실시 예에 따른 UFS 시스템을 예시적으로 보여주는 블록도이다. 도 21을 참조하면, UFS 시스템(3000)은 UFS 호스트(3100), 적어도 하나의 임베디드 UFS 장치(3200), 착탈형 UFS 카드(3300)를 포함할 수 있다. UFS 호스트(3100) 및 임베디드 UFS 장치(3200) 사이의 통신 및 UFS 호스트(3100) 및 착탈형 UFS 카드(3300) 사이의 통신은 M-PHY 계층을 통하여 수행될 수 있다.
호스트(3100)는 착탈형 UFS 카드(3400)는 UFS 프로토콜이 아닌 다른 프로토콜에 의해 통신하도록 브릿지(bridge)를 구비할 수 있다. UFS 호스트(3100)와 착탈형 UFS 카드(3400)는 다양한 카드 프로토콜(예를 들어, UFDs, MMC, eMMC SD(secure digital), mini SD, Micro SD 등)에 의해 통신할 수 있다.
도 22는 본 발명의 실시 예에 따른 컴퓨팅 시스템을 보여주는 블록도이다. 도 22를 참조하면, 본 발명에 따른 컴퓨팅 시스템(4000)은 시스템 버스(4700)에 전기적으로 연결되는 네트워크 어댑터(4100), 중앙처리장치(4200), 대용량 저장 장치(4300), 램(4400), 롬(4500) 그리고 사용자 인터페이스(4600)를 포함한다.
네트워크 어댑터(4100)는 컴퓨팅 시스템(4000)과 외부의 네트워크(5000) 간의 인터페이싱을 제공한다. 중앙처리장치(4200)는 램(4400)에 상주하는 운영 체제(Operating System)나 응용 프로그램(Application Program)을 구동하기 위한 제반 연산처리를 수행한다. 대용량 저장 장치(4300)는 컴퓨팅 시스템(4000)에서 필요한 제반 데이터를 저장한다. 예를 들면, 대용량 저장 장치(4300)에는 컴퓨팅 시스템(4000)을 구동하기 위한 운영 체제(Operating System), 응용 프로그램(Application Program), 다양한 프로그램 모듈(Program Module), 프로그램 데이터(Program data) 그리고 유저 데이터(User data) 등이 저장된다.
램(4400)은 컴퓨팅 시스템(4000)의 워킹 메모리로 사용될 수 있다. 부팅시에 램(4400)에는 대용량 저장 장치(4300)로부터 읽혀진 운영 체제(Operating System), 응용 프로그램(Application Program), 다양한 프로그램 모듈(Program Module)과 프로그램들의 구동에 소요되는 프로그램 데이터(Program data)가 로드된다. 롬(4500)에는 부팅시 운영 체제(Operating System)가 구동되기 이전부터 활성화되는 기본적인 입출력 시스템인 바이오스(BIOS: Basic Input/Output System)가 저장된다. 유저 인터페이스(4600)를 통해서 컴퓨팅 시스템(4000)과 사용자 사이의 정보 교환이 이루어진다.
이외에도, 컴퓨팅 시스템(4000)은 배터리(Battery)나 모뎀(Modem) 등을 더 포함할 수 있다. 또한, 비록 도면에는 도시되지 않았지만, 본 발명에 따른 컴퓨팅 시스템(4000)에는 응용 칩셋(Application chipset), 카메라 이미지 프로세서(Camera Image Processor: CIS), 모바일 디램 등이 더 제공될 수 있음은 이 분야의 통상적인 지식을 습득한 자들에게 자명하다.
대용량 저장 장치(4300)는 SSD(Solid State Drive), MMC 카드(Multimedia Card), SD 카드(Secure Digital Card), 마이크로 SD 카드, 메모리 스틱(Memory Stick), ID 카드, PCMCIA 카드, 칩 카드(Chip Card), USB 카드, 스마트 카드(Smart Card), CF 카드(Compact Flash Card) 등으로 구성될 수 있다. 본 발명의 대용량 저장 장치(4300)는 도 1에 도시된 불휘발성 메모리 장치(100)를 포함할 수 있다. 따라서, 프로그램 동작시 대용량 저장 장치(4300)는 보완 프로그램 방식을 적용하여 데이터를 기입할 수 있다.
비록 도면에는 도시되지 않았지만, 본 발명에 따른 컴퓨팅 시스템(4000)에는 응용 칩세트(Application chipset), 카메라 이미지 프로세서(Camera Image Processor: CIS), 모바일 디램, 등이 더 제공될 수 있음은 이 분야의 통상적인 지식을 습득한 자들에게 자명하다.
본 발명에 따른 반도체 장치는 다양한 형태들의 패키지를 이용하여 실장될 수 있다. 예를 들면, 본 발명에 따른 반도체 그리고/또는 컨트롤러는 PoP(Package on Package), BGAs(Ball grid arrays), CSPs(Chip scale packages), PLCC(Plastic Leaded Chip Carrier), PDIP(Plastic Dual In-Line Package), Die in Waffle Pack, Die in Wafer Form, COB(Chip On Board), CERDIP(Ceramic Dual In-Line Package), MQFP(Plastic Metric Quad Flat Pack), TQFP(Thin Quad Flatpack), SOIC(Small Outline Integrated Circuit), SSOP(Shrink Small Outline Package), TSOP(Thin Small Outline), TQFP(Thin Quad Flatpack), SIP(System In Package), MCP(Multi Chip Package), WFP(Wafer-level Fabricated Package), WSP(Wafer-Level Processed Stack Package) 등과 같은 패키지들을 이용하여 실장될 수 있다.
이상에서와 같이 도면과 명세서에서 최적 실시 예가 개시되었다. 여기서 특정한 용어들이 사용되었으나, 이는 단지 본 발명을 설명하기 위한 목적에서 사용된 것이지 의미 한정이나 특허청구범위에 기재된 본 발명의 범위를 제한하기 위하여 사용된 것은 아니다. 그러므로 본 기술 분야의 통상의 지식을 가진 자라면 이로부터 다양한 변형 및 균등한 타 실시 예가 가능하다는 점을 이해할 것이다. 따라서, 본 발명의 진정한 기술적 보호 범위는 첨부된 특허청구범위의 기술적 사상에 의해 정해져야 할 것이다.

Claims (20)

  1. 불휘발성 메모리 장치의 프로그램 방법에 있어서:
    검증 전압 및 증가형 스텝 펄스를 사용하여 메모리 셀들을 타깃 상태로 프로그램하는 단계;
    상기 타깃 상태로 프로그램된 메모리 셀들 중에서 보완 검증 전압보다 낮은 문턱 전압을 갖는 메모리 셀들을 선택하는 단계; 그리고
    상기 선택된 메모리 셀들에 보완 프로그램 전압을 인가하는 단계를 포함하되,
    상기 보완 검증 전압은 상기 검증 전압과 같거나 높고, 상기 보완 프로그램 전압은 상기 증가형 스텝 펄스들 중에서 상기 메모리 셀들이 상기 타깃 상태로 프로그램 완료된 프로그램 루프에서 제공된 프로그램 전압과 같거나 낮은 프로그램 방법.
  2. 제 1 항에 있어서,
    상기 프로그램하는 단계에서, 상기 타깃 상태로 프로그램 완료된 패스 루프 카운트 정보를 생성하는 단계를 포함하는 프로그램 방법.
  3. 제 2 항에 있어서,
    상기 패스 루프 카운트 정보를 참조하여 상기 타깃 상태에 대응하는 보완 검증 전압 또는 보완 프로그램 전압이 결정되는 프로그램 방법.
  4. 제 1 항에 있어서,
    상기 프로그램하는 단계에서, 상기 메모리 셀들에 기입된 데이터는 페이지 버퍼에서 초기화되지 않고 유지되는 프로그램 방법.
  5. 제 1 항에 있어서,
    상기 프로그램하는 단계에서, 상기 메모리 셀들에 기입된 데이터는 상기 불휘발성 메모리 장치의 내부에 구비되는 기억 소자에 저장 및 유지되는 프로그램 방법.
  6. 제 5 항에 있어서,
    상기 선택하는 단계에서, 상기 기억 소자에 저장된 데이터를 참조하여 상기 타깃 상태 및 상기 보완 검증 전압보다 낮은 문턱 전압을 갖는 메모리 셀들이 선택되는 프로그램 방법.
  7. 제 1 항에 있어서,
    상기 타깃 상태로 프로그램된 메모리 셀들 중에서 상기 보완 검증 전압과 같거나 낮은 문턱 전압을 갖는 메모리 셀들을 선택하는 단계를 더 포함하는 프로그램 방법.
  8. 제 7 항에 있어서,
    상기 선택된 메모리 셀들에 상기 보완 프로그램 전압과 다른 레벨의 추가 보완 프로그램 전압을 인가하는 단계를 더 포함하는 프로그램 방법.
  9. 제 8 항에 있어서,
    상기 추가 보완 프로그램 전압은 상기 보완 프로그램 전압과 같거나 낮은 프로그램 방법.
  10. 복수의 메모리 셀들을 포함하는 셀 어레이;
    상기 셀 어레이에 비트 라인들로 연결되며, 선택된 메모리 셀들에 기입될 데이터를 상기 비트 라인들로 전달하는 페이지 버퍼;
    상기 선택된 메모리 셀들의 워드 라인에 노말 프로그램 동작시 증가형 프로그램 펄스 및 검증 전압을 제공하고, 보완 프로그램 동작시에는 보완 검증 전압 및 보완 프로그램 전압을 제공하는 전압 발생기; 그리고
    상기 선택된 메모리 셀들에 상기 데이터를 상기 노말 프로그램 동작 및 상기 보완 프로그램 동작에 따라 기입하도록 상기 페이지 버퍼 및 상기 전압 발생기를 제어하는 제어 로직을 포함하되,
    상기 노말 프로그램 동작시, 상기 페이지 버퍼는 상기 복수의 메모리 셀들이 프로그램되는 타깃 상태들 각각에 대응하는 패스 루프 카운트 정보를 상기 제어 로직에 전달하고, 상기 제어 로직은 상기 패스 루프 카운트 정보를 참조하여 상기 타깃 상태들 중 적어도 하나에 대한 보완 검증 전압 및 보완 프로그램 전압을 결정하는 불휘발성 메모리 장치.
  11. 제 10 항에 있어서,
    상기 제어 로직에 의해서 선택된 제 1 타깃 상태에 대한 보완 검증 전압은 상기 노말 프로그램 동작시 제공된 상기 제 1 타깃 상태에 대응하는 검증 전압보다 높은 불휘발성 메모리 장치.
  12. 제 11 항에 있어서,
    상기 제어 로직에 의해서 선택된 제 1 타깃 상태에 대한 보완 프로그램 전압은, 상기 노말 프로그램 동작시 상기 제 1 타깃 상태의 프로그램 패스 루프에 대응하는 프로그램 전압과 같거나 낮은 불휘발성 메모리 장치.
  13. 제 10 항에 있어서,
    상기 노말 프로그램 동작 이후에도 상기 데이터를 유지하기 위한 상태 버퍼 유닛을 더 포함하는 불휘발성 메모리 장치.
  14. 제 10 항에 있어서,
    상기 노말 프로그램 동작 이후에도 상기 페이지 버퍼는 상기 데이터를 내부의 래치들에 유지하는 불휘발성 메모리 장치.
  15. 제 10 항에 있어서,
    상기 제어 로직은 상기 패스 루프 카운트 정보에 따라 상기 복수의 타깃 상태들 각각에 대응하는 상기 보완 검증 전압 및 상기 보완 프로그램 전압을 제공하기 위한 보완 프로그램 테이블을 구성하는 불휘발성 메모리 장치.
  16. 제 10 항에 있어서,
    상기 메모리 셀들은 채널이 기판에 대해 수직 방향으로 형성되는 수직 구조 낸드형 플래시 메모리 셀들을 포함하는 불휘발성 메모리 장치.
  17. 제 16 항에 있어서,
    상기 메모리 셀들은 전하 트랩형 플래시 메모리 셀들을 포함하는 불휘발성 메모리 장치.
  18. 불휘발성 메모리 장치의 프로그램 방법에 있어서:
    증가형 스텝 펄스들을 사용하여 메모리 셀들을 타깃 상태로 프로그램하는 노말 프로그램 동작 단계; 그리고
    상기 메모리 셀들 중에서 문턱 전압이 보완 검증 전압보다 낮은 메모리 셀들을 선택하여 보완 프로그램 전압을 인가하는 보완 프로그램 단계를 포함하되,
    상기 보완 프로그램 전압은 상기 노말 프로그램에서의 검증 전압과 같거나 높고, 상기 보완 프로그램 전압은 상기 노말 프로그램 동작시 상기 타깃 상태의 패스 루프에서 제공된 프로그램 전압과 같거나 낮은 프로그램 방법.
  19. 제 18 항에 있어서,
    상기 노말 프로그램 단계는 상기 타깃 상태의 패스 루프에 대응하는 루프 카운트 정보를 생성하는 단계를 포함하는 프로그램 방법.
  20. 제 19 항에 있어서,
    상기 루프 카운트 정보를 사용하여 상기 보완 검증 전압 및 상기 보완 프로그램 전압의 레벨을 결정하는 단계를 더 포함하는 프로그램 방법.
KR1020140143583A 2014-10-22 2014-10-22 불휘발성 메모리 장치 및 그것의 프로그램 방법 KR20160047667A (ko)

Priority Applications (2)

Application Number Priority Date Filing Date Title
KR1020140143583A KR20160047667A (ko) 2014-10-22 2014-10-22 불휘발성 메모리 장치 및 그것의 프로그램 방법
US14/854,097 US20160118126A1 (en) 2014-10-22 2015-09-15 Nonvolatile memory devices and program method thereof

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020140143583A KR20160047667A (ko) 2014-10-22 2014-10-22 불휘발성 메모리 장치 및 그것의 프로그램 방법

Publications (1)

Publication Number Publication Date
KR20160047667A true KR20160047667A (ko) 2016-05-03

Family

ID=55792504

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020140143583A KR20160047667A (ko) 2014-10-22 2014-10-22 불휘발성 메모리 장치 및 그것의 프로그램 방법

Country Status (2)

Country Link
US (1) US20160118126A1 (ko)
KR (1) KR20160047667A (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2020139423A1 (en) * 2018-12-27 2020-07-02 Sandisk Technologies Llc Multi-pass programming process for memory device which omits verify test in first program pass

Families Citing this family (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FR3039921B1 (fr) 2015-08-06 2018-02-16 Stmicroelectronics (Rousset) Sas Procede et systeme de controle d'une operation d'ecriture d'une donnee dans une cellule-memoire du type eeprom
JP7148727B2 (ja) * 2019-02-20 2022-10-05 長江存儲科技有限責任公司 メモリシステムをプログラムする方法
CN109979515B (zh) * 2019-03-25 2021-08-31 长江存储科技有限责任公司 一种存储器编程方法及相关装置
KR20200127758A (ko) * 2019-05-03 2020-11-11 에스케이하이닉스 주식회사 스토리지 장치 및 그 동작 방법
CN110136766A (zh) * 2019-05-21 2019-08-16 长江存储科技有限责任公司 一种非易失性存储器及其编程方法
CN111630600B (zh) * 2020-04-15 2021-08-31 长江存储科技有限责任公司 3d nand闪存及其操作方法
KR20220057354A (ko) * 2020-10-29 2022-05-09 삼성전자주식회사 문턱 전압 산포 특성을 향상한 메모리 컨트롤러, 메모리 시스템 및 그 동작 방법
US11688474B2 (en) * 2021-04-19 2023-06-27 Micron Technology, Inc. Dual verify for quick charge loss reduction in memory cells
WO2023070612A1 (en) 2021-10-30 2023-05-04 Yangtze Memory Technologies Co., Ltd. Memory device and program operation thereof
US11836073B2 (en) * 2022-04-27 2023-12-05 Dell Products L.P. Storage device operating data counter system

Family Cites Families (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4537680B2 (ja) * 2003-08-04 2010-09-01 株式会社東芝 不揮発性半導体記憶装置及びその動作方法、製造方法、半導体集積回路及びシステム
US7307887B2 (en) * 2005-12-29 2007-12-11 Sandisk Corporation Continued verification in non-volatile memory write operations
US7525838B2 (en) * 2006-08-30 2009-04-28 Samsung Electronics Co., Ltd. Flash memory device and method for programming multi-level cells in the same
KR100771520B1 (ko) * 2006-10-23 2007-10-30 삼성전자주식회사 플래시 메모리 장치 및 그것의 프로그램 방법
US8000150B2 (en) * 2007-06-19 2011-08-16 Samsung Electronics Co., Ltd. Method of programming memory device
US7800956B2 (en) * 2008-06-27 2010-09-21 Sandisk Corporation Programming algorithm to reduce disturb with minimal extra time penalty
KR101468100B1 (ko) * 2008-09-23 2014-12-04 삼성전자주식회사 불휘발성 메모리 장치 및 그것의 페이지 버퍼
KR101517597B1 (ko) * 2009-03-25 2015-05-07 삼성전자주식회사 불휘발성 메모리 장치 및 그것의 프로그램 전압 생성방법
KR101634340B1 (ko) * 2009-11-03 2016-06-28 삼성전자주식회사 반도체 메모리 장치의 프로그램 방법
KR101775429B1 (ko) * 2011-01-04 2017-09-06 삼성전자 주식회사 비휘발성 메모리 소자 및 이의 프로그램 방법
KR101787612B1 (ko) * 2011-07-12 2017-10-19 삼성전자주식회사 비휘발성 메모리 장치의 데이터 저장 방법 및 구동 방법

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2020139423A1 (en) * 2018-12-27 2020-07-02 Sandisk Technologies Llc Multi-pass programming process for memory device which omits verify test in first program pass
US10811109B2 (en) 2018-12-27 2020-10-20 Sandisk Technologies Llc Multi-pass programming process for memory device which omits verify test in first program pass
US11037640B2 (en) 2018-12-27 2021-06-15 Sandisk Technologies Llc Multi-pass programming process for memory device which omits verify test in first program pass

Also Published As

Publication number Publication date
US20160118126A1 (en) 2016-04-28

Similar Documents

Publication Publication Date Title
KR20160047667A (ko) 불휘발성 메모리 장치 및 그것의 프로그램 방법
KR102179270B1 (ko) 불휘발성 메모리 장치 및 그것의 동작 방법
US9478296B2 (en) Erase method of nonvolatile memory device and storage device employing the same
US9275751B2 (en) Nonvolatile memory device and program method
US9396800B2 (en) Memory system and programming method thereof
US10573378B2 (en) Methods of programming memory devices
US9336866B2 (en) Storage device and a write method thereof
KR101407361B1 (ko) 불휘발성 메모리 장치 및 그것의 프로그램 방법
US9870825B2 (en) Nonvolatile memory device and method of programming the same
US10297299B2 (en) Semiconductor device and operating method thereof
US20230420052A1 (en) Memory system having semiconductor memory device that performs verify operations using various verify voltages
US9343158B2 (en) Methods of programming multi-level cell nonvolatile memory devices and devices so operating
US10497452B2 (en) Semiconductor memory device and method of operating the same
US9466381B2 (en) Semiconductor device
KR102053958B1 (ko) 불휘발성 메모리 장치 및 그것의 재프로그램 방법
CN107808682B (zh) 控制电路、外围电路、半导体存储器件及其操作方法
KR102026177B1 (ko) 셀 스트링의 선택 트랜지스터를 프로그램함으로 데이터를 보호하는 플래시 메모리 장치 및 그것을 포함하는 데이터 저장 장치
US20170069372A1 (en) Semiconductor memory device and memory system
KR20090019296A (ko) 플래시 메모리 장치, 그것의 프로그램 및 소거 방법들,그리고 그것을 포함하는 메모리 시스템 및 컴퓨터 시스템
CN109308931B (zh) 存储装置及其操作方法
US9734912B2 (en) Reprogramming single bit memory cells without intervening erasure
US9202587B2 (en) Nonvolatile memory device, memory system comprising same, and method of programming same
US9318207B2 (en) Nonvolatile semiconductor memory device and method of operating the same
TW202247183A (zh) 記憶體設備及其操作方法
CN110827904A (zh) 存储器装置及其编程方法

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E601 Decision to refuse application