KR102147104B1 - 적응형 기록 동작들을 갖는 비―휘발성 메모리(nvm) - Google Patents

적응형 기록 동작들을 갖는 비―휘발성 메모리(nvm) Download PDF

Info

Publication number
KR102147104B1
KR102147104B1 KR1020130109709A KR20130109709A KR102147104B1 KR 102147104 B1 KR102147104 B1 KR 102147104B1 KR 1020130109709 A KR1020130109709 A KR 1020130109709A KR 20130109709 A KR20130109709 A KR 20130109709A KR 102147104 B1 KR102147104 B1 KR 102147104B1
Authority
KR
South Korea
Prior art keywords
memory cells
pulses
write operation
ramp rate
voltage
Prior art date
Application number
KR1020130109709A
Other languages
English (en)
Other versions
KR20140035843A (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 엔엑스피 유에스에이, 인코포레이티드
Publication of KR20140035843A publication Critical patent/KR20140035843A/ko
Application granted granted Critical
Publication of KR102147104B1 publication Critical patent/KR102147104B1/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/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)
  • Computer Hardware Design (AREA)
  • Read Only Memory (AREA)

Abstract

메모리 어레이(201)의 메모리 셀들(202) 상에서 기록 동작을 수행하는 방법은 제 1 미리 결정된 램프 레이트에 따라 기록 동작의 제 1 복수의 펄스들(402)을 메모리 셀들 상에 인가하는 단계로서, 제 1 복수의 펄스들은 미리 결정된 수의 펄스들인, 상기 인가 단계; 메모리 셀들의 서브세트의 임계 전압과 임시 검증 전압을 비교하는 단계; 메모리 셀들의 서브세트의 임의의 임계 전압이 임시 검증 전압과의 비교에 실패하는 경우, 제 1 미리 결정된 램프 레이트에 비해 증가된 램프 레이트를 가지는 제 2 미리 결정된 램프 레이트에 따라 제 2 복수의 펄스들(406)을 메모리 셀들 상에 인가함으로써 기록 동작을 계속하는 단계를 포함한다.

Description

적응형 기록 동작들을 갖는 비―휘발성 메모리(NVM){NON-VOLATILE MEMORY (NVM) WITH ADAPTIVE WRITE OPERATIONS}
본 발명은 일반적으로 비-휘발성 메모리들(NVM들)에 관한 것이고, 특히, 적응형 기록 동작들을 포함하는 NVM들에 관한 것이다.
통상적인 비-휘발성 메모리들(NVM들)은 프로그램/소거 사이클들의 수가 증가함에 따라 전하 트래핑으로 인해 프로그램 및 소거와 같은 기록 동작들을 수행하기가 더욱 어려워지는 경향이 있다. 기록시의 감속은 상당해질 수 있고 일부 시스템의 성능 저하를 유발한다. 이것은 과도 소거가 일부 비트 셀들을 높은 누설 상태로 두는 소프트 프로그래밍을 포함하는 기록 처리의 임의 부분에서 상당해질 수 있다. 소프트 프로그래밍은 그 후에 임계 전압을 약간 증가시켜 높은 누설 상태로부터 NVM 셀들을 제거하기 위해 이용된다. 기록의 터널링 부분은 소거에 전형적이지만, 프로그래밍에도 또한 이용될 수 있다. 어떤 경우든, 정규 프로그래밍, 소거, 또는 소프트 프로그래밍이든 간에 기록 속도는 전하 트래핑에 의해 부정적인 영향을 받을 수 있다. 정규 프로그램, 소거 및 소프트 프로그램 동작들의 각각을 포함한 각각의 기록 동작은 통상적으로 관련 고전압 펄스들의 크기를, 비트 셀들의 신뢰도와 기록 성능 사이의 트레이드오프인 레이트로 램프 업(ramp up)시킨다. 현재의 기록 동작들은 반도체 기술의 다른 양태들에 대해 발생하고 있는 스케일링의 레이트를 유지하기 위해 분투하고 있다. 메모리 셀들의 기술 및 형상의 크기가 더 작아지고 동작 온도들이 증가함에 따라, 기록 시간들은 관리되어야 할 과제이다.
따라서, 상기에 제기된 문제들을 하나 이상 개선하는 기록 동작들에 대한 필요성이 존재한다.
메모리 어레이(201)의 메모리 셀들(202) 상에서 기록 동작을 수행하는 방법은 제 1 미리 결정된 램프 레이트에 따라 기록 동작의 제 1 복수의 펄스들(402)을 메모리 셀들 상에 인가하는 단계로서, 제 1 복수의 펄스들은 미리 결정된 수의 펄스들인, 상기 인가 단계; 메모리 셀들의 서브세트의 임계 전압과 임시 검증 전압을 비교하는 단계; 메모리 셀들의 서브세트의 임의의 임계 전압이 임시 검증 전압과의 비교에 실패하는 경우, 제 1 미리 결정된 램프 레이트에 비해 증가된 램프 레이트를 가지는 제 2 미리 결정된 램프 레이트에 따라 제 2 복수의 펄스들(406)을 메모리 셀들 상에 인가함으로써 기록 동작을 계속하는 단계를 포함한다.
본 개시내용의 이득들, 특징들 및 이점들은 다음의 기술 및 첨부 도면들에 관해 더욱 양호하게 이해될 것이다.
도 1은 하나의 실시예에 따른 비-휘발성 메모리(NVM)를 포함하는 집적 회로의 블록도.
도 2는 NVM 어레이 및 NVM 제어기를 구비한 도 1의 NVM의 더욱 상세한 블록도.
도 3은 도 2의 NVM 제어기에 의해 일반적으로 제어된 도 2의 NVM 어레이 상의 기록 동작의 흐름도.
도 4는 도 3의 흐름도를 이해하는데 유용한 전압 그래프.
도 5는 도 3의 흐름도를 이해하는데 유용한 제 1 분포 그래프.
도 6은 도 3의 흐름도를 이해하는데 유용한 제 2 분포 그래프.
도 7은 도 3의 흐름도를 이해하는데 유용한 제 3 분포 그래프.
도 8은 소거 동작인 기록 동작을 보여주는 더욱 상세한 흐름도.
도 9는 프로그램 동작인 기록 동작을 보여주는 더욱 상세한 흐름도.
하나의 양태에서, 비-휘발성 메모리는 전하 트래핑과의 문제들과 같은 프로그램/소거 사이클들 동안에 발생하는 기록을 수행하는데 있어서의 어려움들을 극복해야 하는 경우에 기록 펄스의 램프 레이트가 증가되는 기록 동작을 가진다. 초기 램프 레이트에 따라 기록 펄스들을 처음 이용한 후에, 메모리 셀들은 이들이 너무 느린 레이트로 이동하고 있는지를 알기 위해 테스트된다. 그렇지 않은 경우, 메모리 셀들은 기록 펄스를 위한 정규 램프 레이트에 따라 성공적으로 기록될 때까지 계속 기록된다. 한편 메모리 셀들이 너무 느리게 이동중인 경우, 기록은 계속되지만 정규 램프 레이트에 비해 증가된 레이트로 램핑되는 기록 펄스를 이용한다. 이것은 NVM 셀들이 성공적으로 기록되거나 기록이 너무 오래 걸려 종료될 때까지 계속된다. 이것은 정규 램프 레이트가 불필요하게 높으면서 프로그램/소거 사이클들의 카운트가 아직 커지지 않은 경우에 비해 기록으로 인한 손상을 감소시키는 효과를 가진다. 대신에, 커지는 프로그램/소거 사이클들의 카운트의 결과로서 셀 저하 또는 전하 트래핑으로 인해 너무 길어지는 기록 동작을 예상하여, 기록 펄스는 기록 시간 명세를 충족시키기 위해 더욱 급속히 램핑된다. 이것은 프로그램/소거 사이클 카운트가 커지기 전의 시간 동안 더 느린 정규 램프 레이트로의 손상을 감소시킴으로써 기록에 대한 실패 지점에 도달하기 전에 프로그램/소거 사이클들의 전체 카운트를 증가시킬 뿐만 아니라, 기록 동작에서 비트 셀 이동 속도를 모니터링한 것에 자동적 및 적응적으로 기초하여 증가된 램프 레이트로 스위칭함으로써 프로그램/소거 사이클 카운트가 커진 후의 기록 성능을 개선시킨다.
도 1은 하나의 실시예에 따라 비-휘발성 메모리(NVM)(103)를 포함하는 집적 회로(100)의 블록도이다. 예시된 실시예에서, 집적 회로(IC)(100)는 버스 등과 같은, 다중 신호들 또는 비트들과의 적합한 인터페이스(105)를 통해 NVM(103)에 결합된 적어도 하나의 처리기(101)를 포함하는 시스템 온 칩(SOC) 등을 구현할 수 있다. IC(100)는 다른 메모리 디바이스들(도시되지 않음), 다른 기능성 모듈들(도시되지 않음), 및 입력, 출력 또는 입력/출력(I/O) 포트들 또는 핀들 등(도시되지 않음)과 같은 외부 인터페이스들과 같은 다른 회로들, 모듈들 또는 디바이스들을 포함할 수 있다. 하나의 대안적인 실시예에서, NVM(103)은 임의의 다른 디바이스들 없이 단독으로 IC(100) 상에 내장된다. 또 다른 대안적인 실시예에서, 처리기(101), NVM(103) 및 인터페이스(105)는 IC(100) 상의 더 큰 시스템의 일부이다.
도 2는 인터페이스(105)에 결합된 하나의 실시예에 따른 NVM(103)의 더욱 상세한 블록도이다. NVM(103)은 NVM 어레이(201), NVM 어레이(201)에 결합된 로우 디코더(203), NVM 어레이(201)에 결합된 컬럼 로직(205), 및 인터페이스(105), NVM 어레이(201), 컬럼 로직(205), 및 로우 디코더(203)에 결합된 NVM 제어기(207)를 포함한다. 컬럼 로직(205)은 컬럼 디코더 및 감지 증폭기들(도시되지 않음)을 내장하고, 각각의 인터페이스가 다수의 신호들 또는 비트들과 함께 도시된다. NVM 제어기(207)는 인터페이스(105) 또는 다른 인터페이스들을 통해 통신될 때 처리기(들)(101)에 응답하여, 로우 디코더(203) 및 컬럼 로직(205)을 통해 NVM 어레이(201)의 절차를 제어한다. NVM 제어기(207)는 로우 어드레스를 로우 디코더(203)에 컬럼 어드레스를 컬럼 로직(205)에 제공함으로써 NVM 어레이(201) 내의 메모리 셀들에 액세스한다. 데이터는 컬럼 로직(205)을 통해 NVM 어레이(201)에 기록되거나 그로부터 판독된다. NVM 제어기(207)는 또한 소스 및 웰 전압들(well voltages)을 (대응하는 스위치들 및 제어기들을 통해, 도시되지 않음) NVM 어레이(201)에 구동한다.
NVM 제어기(207) 내에는 전하 펌프들(209), 임계 전압(Vt) 모니터(211), 프로그램 램프 레이트 제어 로직(213) 및 소거 램프 레이트 제어 로직(215)이 도시된다. 전하 펌프들(209)은 소거 게이트 전압을 제공하는 음전하 펌프, 프로그램 게이트 전압 및 소거 p웰 전압을 제공하는 양전하 펌프, 및 프로그램 드레인 전압을 제공하는 드레인 펌프를 포함할 수 있다. 미리 규정된 Vt 검증 판독 레벨의 컬럼 로직(205)으로부터의 출력 데이터는 Vt 모니터(211)에 제공된다. Vt 모니터(211), 프로그램 램프 레이트 제어 로직(213), 및 소거 램프 레이트 제어 로직(215)은 미리 결정된 수의 프로그램/소거 펄스들 후에 중간 Vt 검증 판독을 모니터링함으로써 프로그램 램프 레이트 및 소거 램프 레이트를 적응적으로 조정한다.
NVM 어레이(201)는, 각각의 메모리 블록이 예를 들면, 16 킬로바이트(kB), 32 kB, 64 kB, 128 kB, 256 kB 등과 같은 선택된 블록 크기를 가지는 메모리 셀들의 하나 이상의 블록들을 내장한다. NVM 어레이(201)의 메모리 셀들은 p웰(PW) 및 n웰(NW)을 포함하는 분리된 웰들과 함께 게이트 (G) 단자, 드레인 (D) 단자 및 소스 (S) 단자를 통상적으로 가진다. 하나의 실시예에서, 각각의 메모리 블록은 메모리 셀들의 로우들 및 컬럼들로 구성된다. 메모리 셀들의 각각의 로우의 게이트 단자는 로우 디코더(203)에 결합된 다수의 워드 라인들의 대응하는 라인에 결합된다. 메모리 셀들의 각각의 컬럼의 드레인 단자는 컬럼 로직(205)에 결합된 다수의 비트 라인들의 대응하는 라인에 결합된다. 각각의 메모리 셀의 소스 단자 및 웰들(PW 및 NW)은 NVM 제어기(207)에 의해 구동되거나 제어된다.
도시된 바와 같이, NVM 어레이(201)는, 프로그램 및 소거 절차들이 적응적으로 조정가능하거나 구성가능한 램프 레이트를 가지고 수행되게 허용하도록 구성되는 적어도 하나의 메모리 블록(202)을 포함한다.
NVM 어레이(201)의 메모리 셀들은 반도체 구성들, 적층된 실리콘-금속 나노 결정들 등과 같은 여러 구성들 중 어느 하나에 따라 구현될 수 있다. 하나의 실시예에서, 각각의 메모리 셀은 실리콘 기판 등 상에서 구현된다. 하나의 실시예에서, 각각의 메모리 셀의 p웰은 n웰을 구비한 P 기판으로부터 분리된다. n+ 형 도핑된 영역들(도시되지 않음)의 쌍은 각각의 메모리 셀의 드레인 및 소스 단자들을 형성하는 p웰에 형성된다. 각각의 메모리 셀은 또한 p웰 상에 형성된 산화물 층(도시되지 않음), 산화물 층 상에 제공된 플로팅 게이트(도시되지 않음), 플로팅 게이트 상에 제공된 유전체 층(도시되지 않음), 및 게이트 단자를 형성하는 유전체 층 상에 제공된 제어 게이트(도시되지 않음)를 포함하는, 적층된 게이트 구조 등을 포함한다. 본 명세서에 기술된 바와 같이 FN 소거 펄스들 동안을 제외하고 n웰은 일반적으로 소스 전압 Vdd에 결합되고 p웰은 일반적으로 그라운드 전압 Vss에 결합된다. Vdd의 전압 레벨은 특정 구현에 의존한다.
하나의 실시예에서, 전압 펄스가 본 명세서에 더 기술된 바와 같이 소거 및 프로그램 절차들 동안 메모리 셀에 인가될 때, 메모리 셀의 p웰 및 n웰은 램프 펄스 전압을 집합적으로 수신하기 위해 결합되거나, 함께 구동된다. "소거 펄스(erase pulse)"는 게이트 단자가 선택된 소거 펄스 전압으로 구동되고 p웰 및 n웰이 성공적으로 증가하는 소거 램프 펄스 전압을 집합적으로 수신하는 메모리 블록(202)의 각각의 메모리 셀에 인가된다고 말해진다. 따라서, 메모리 셀들에 인가된 각각의 소거 펄스는 게이트 단자에 인가된 소거 펄스 전압 및 메모리 셀들 중 적어도 하나의 웰 접속에 인가된 소거 램프 펄스 전압을 포함한다. "프로그램 펄스(program pulse)"는 게이트 단자가 램핑된 프로그램 게이트 전압으로 구동되고 드레인 단자가 선택된 프로그램 드레인 전압으로 구동되는 메모리 블록(202)의 메모리 셀의 그룹에 인가된다고 말해진다. 프로그램 펄스들은 메모리 셀들의 그룹이 프로그래밍될 때까지 메모리 셀들의 그룹에 인가될 것이고, 이러한 절차는 전체 메모리 블록이 프로그래밍될 때까지 메모리 블록의 다른 메모리 셀들에 대해서도 반복될 수 있다. 소프트 프로그램 펄스는 프로그램 펄스와 유사하지만 하부 게이트 전압을 가진다. 기록 동작은 프로그램, 소거, 또는 소프트 프로그램 동작일 수 있고 기록 펄스는 소거 펄스, 소프트 프로그램 펄스, 또는 프로그램 펄스일 수 있다.
본 개시내용은, 게이트 단자들이 비교적 고정된 크기를 가진 소거 펄스 전압을 수신하는 동안 소거 램프 펄스 전압이 메모리 셀들의 p웰들 및 n웰들에 인가되는 일 예시적인 NVM 기술을 이용하여 기술된다. NVM 기술들 등을 이용하는 것들과 같은 대안적인 실시예들에서, 소거 램프 펄스 전압은 게이트 단자 등과 같이, 소거되는 메모리 셀들의 상이한 단자 또는 접속부에 대신 인가된다.
본 개시내용은 또한, 드레인 단자들이 비교적 고정된 크기를 가진 상이한 프로그램 펄스를 수신하는 동안 램핑된 프로그램 펄스 전압이 메모리 셀들의 게이트에 인가되는 일 예시적인 NVM 기술을 이용하여 기술된다. 다른 NVM 기술들 등을 이용하는 것들과 같은 대안적인 실시예들에서, 프로그램 전압들은 프로그래밍되는 메모리 셀의 상이한 접속부 또는 단자에 대신 인가된다. 이것은 소프트 프로그래밍에 적용할 수 있지만 펄스는 하부 레벨로 게이트에 인가된다.
도 3은 도 2의 NVM 어레이(201) 내의 메모리 블록(202)에 대해 도 2의 NVM 제어기(207)에 의해 일반적으로 제어된 기록 동작을 수행하는 방법이고 단계들(302, 304, 306, 308, 310, 312, 314, 및 316)을 포함하는 방법(300)의 흐름도이다. 방법(300)에 관한 일부 상세들은 도 4, 도 5, 도 6, 및 도 7에 도시된다. 단계(302)에서, 기록 펄스가 메모리 블록(202)에 인가되어 기록 동작을 시작한다. 단계(304)에서, 기록 펄스를 수신하는 메모리 셀들이 검증 전압에 따라 임계 전압에 도달하는지의 여부에 대한 결정이 이루어진다. 이들 메모리 셀들 전부가 이 임계 전압에 도달하는 경우, 단계(306)에 표시된 바와 같이 기록 동작이 완료된다. 이들 메모리 셀들 중 하나 이상이 검증 전압에 따라 임계 전압에 도달하지 않는 경우, 단계(308)에서, 램프 레이트 변경이 필요한지의 여부를 결정하기 위해 미리 결정된 수의 기록 펄스들이 인가되었는지의 여부에 관한 결정이 존재한다. 대답이 아니오인 경우, 단계(314)에서 최대 수의 펄스들이 인가되었는지의 여부에 관한 결정이 이루어진다. 최대 수가 인가된 경우, 단계(316)에서 표시된 바와 같이 기록 동작은 실패했다. 최대 수가 인가되지 않은 경우, 단계(302)에 대해 도시된 바와 같이 또 다른 기록 펄스가 인가된다. 처리는, 단계(304)에서 결정된 바와 같이 기록되는 NVM 셀들이 모두 통과하거나 단계(308)에서의 램프 레이트 결정이 램프 레이트가 결정되는 것을 의미하는 "예"일 때까지 이러한 방식을 계속한다. 일례로서, 램프 레이트 결정 지점은 시작으로부터 미리 결정된 수의 펄스들에 있을 수 있다. 이 "예" 지점까지, 기록 펄스는 도 4에 도시된 바와 같이 초기 램프 레이트를 따랐다. 도 4의 예에서, 제 1 레벨(403)에서 복수의 기록 펄스들이 존재하고 제 2 레벨(405)에서 또 다른 수의 기록 펄스들이 존재한다.
램프 레이팅 변경을 결정할 때가 되면, 단계(310)에서 기록되는 모든 NVM 셀들이 임시 레벨로 성공적으로 기록되는지의 여부에 관한 결정이 이루어진다. 도 5 및 도 6은 소거 동작인 기록 동작의 예에 대한 2개의 가능성들을 도시한다. 도 5에는 기록되는 NVM 셀들의 초기 분포로서의 분포(502) 및 램프 레이트 변경에 대한 결정시의 임시 분포가 도시된다. 성공적으로 기록, 이 경우에서 소거되기 위해, 기록되는 모든 NVM 셀들은 단계(304)의 소거 검증에 의해 결정된 바와 같이 상당히 낮은 임계 전압을 가지는 것으로 검증되었다. 도 5에서, NVM 메모리 셀들 중 어느 것도 충분히 기록되지 않았다. 또한 단계(310)에 표시된 바와 같이 하위 요건이 충족되었는지의 여부에 관한 다른 테스트가 존재한다. 이러한 하위 요건은 비교적 다수의 프로그램/소거 사이클들 후에 기록되는 NVM 셀들이 성능 저하된 것처럼 거동하는지를 결정하기 위한 것이다. 이러한 경우, 기록되는 모든 NVM 셀들은 전체 분포가 도 5의 그래프에 도시된 바와 같이 임시 검증 지점의 좌측에 있어야 하는 임계 전압들을 충분히 변경시켰기 때문에 이 거동을 가지지 않는다. 따라서, 상황이 도 5에 도시된 바와 같이 단계(308)의 램프 레이트 결정 지점에 도달되었을 때일 때, 단계(310)에서의 결정은 임시 임계 전압 요건이 충족되었고 테스트가 통과로 간주된다는 것이다. 그 후에, 기록 처리는 기록 펄스를 위해 도 4에 도시된 바와 같이 정규 램프 레이트(404)로 계속된다. 이러한 정규 램프 레이트(404)의 예에서, 다음 레벨들은 레벨들(405, 407, 409)이고, 최종적으로 408의 피크 전압이다. 초기 램프 레이트(402)와의 조합시 정규 램프 레이트(404)에 대한 다음 레벨로의 각각의 전이는 동일 수의 기록 펄스들로 분리된다. 즉, 정규 램프 레이트는 초기 램프 레이트와 동일하다. 피크 전압(408)에서 타임 아웃되기 전에 가능한 펄스들의 수는 임의의 다른 레벨들의 펄스들의 수의 약 2배인 것으로 나타나지만, 이것은 비례적이지 않고 차는 그보다 훨씬 더 클 가능성이 있다. 실제 수는 프로그램/소거 사이클들의 수로 특정 저하 특성에 기초하여 실험적으로 결정된다.
한편, 도 6에 도시된 가능성은 NVM 셀들 중 일부가 임시 검증의 좌측으로 이동할 만큼 임계 전압이 충분히 변경되지 않았다는 것이다. 이것은 다수의 프로그램/소거 사이클들로 인해 성능 저하가 존재하였고 기록 동작을 성공적으로 완료하기 위해 기록 동작을 위한 증가된 램프 레이트가 바람직하다는 것을 나타낸다. 따라서, 단계(310)에서, 결정은 임시 Vt 요건이 통과되지 않고 단계(312)에서 기록 펄스에 대한 증가된 램프 레이트가 호출된다는 것이다. 이것은 다음 기록 펄스가 레벨(407)에 있음을 보여주는 증가된 램프 레이트(406)로서 도 4에 도시된다. 필요시, 기록 펄스는 더 증가되고 다음 레벨로의 각각의 증가는 정규 램프 레이트(404)에 대한 펄스들의 수의 약 절반의 레이트에 있다. 따라서, NVM 셀들이 많은 프로그램/소거 사이클들로 인한 성능 저하를 경험했음이 검출될 때, 기록 펄스는 증가된 레이트에서 램핑된다. 한가지 결과는, 피크 전압(408)에 더 신속하게 도달되고 기록 펄스에 대한 증가된 램프 레이트를 호출하는 이들 NVM 셀들에 대해 더 높은 비율의 기록 사이클이 더 높은 전압에 있을 것이라는 것이다. 이때 타임 아웃(410)에 최종적으로 도달될 때, 기록 동작은 실패했다. 그에 앞서, 최종 결과는 도 7에 도시될 것이며, 여기서 기록되는 모든 NVM 셀들은 도 5 내지 도 7의 예에서는 소거 동작인 기록 동작을 통과할 것이다. 소거 동작은 흔히 NVM 셀들의 일부가 과도 소거되도록 유발할 것이고 이들 과도 소거된 셀들에 대해 소프트 프로그래밍이 필요할 것이다.
도 8에는 기록 동작이 소거 동작일 때를 도시하고 방법(300)보다 더 많은 상세들을 제공하는 방법(800)이 도시된다. 소거 동작은 단계들(802 내지 814)을 포함하는 선-프로그램 절차(pre-program procedure), 단계들(816 내지 838)을 포함하는 소거 절차, 및 단계들(840 내지 854)을 소프트 프로그램 절차를 포함할 수 있다.
선-프로그래밍 절차 동안, 단계(802)는 메모리 블록(202)에서 현재 로우 및 컬럼 어드레스를 제 1 어드레스로 초기화하는 단계를 포함할 수 있다. 단계(804)에서, 프로그램(PGM) 검증 테스트가 메모리 블록(202)에서의 현재 어드레스에 대해 수행된다. 개별 메모리 셀들 또는 메모리 셀들의 서브세트들에 대해 프로그래밍 및 검증이 수행될 수 있지만, 프로그래밍 및 검증은 통상적으로, 각각의 페이지가 128 비트들 등과 같이 선택된 수의 메모리 셀들 또는 비트들을 포함하는 페이지마다 기초하여 수행된다. 프로그래밍 펄스는 최대 18개의 비트들과 같은 다수의 메모리 셀들 또는 비트들에 한번에 인가될 수 있다. 선프로그램 검증 테스트 동안, 현재 어드레스에서의 각각의 메모리 셀의 Vt는 프로그램 검증 임계(PVT) 전압과 비교된다. 현재 어드레스에서의 임의의 메모리 셀의 Vt가 PVT 전압 아래인 경우, 최대 수의 프로그램 펄스들이 인가되었는지의 여부를 결정하기 위해 동작은 단계(806)로 진행한다. 최대 수의 프로그램 펄스들이 인가되지 않은 경우, 다음 프로그램 펄스를 PVT 아래에서 메모리 셀들에 인가하기 위해 동작은 단계(808)로 진행하고 그 후에 단계(804)로 진행한다.
단계(806)가 최대 수의 프로그램 펄스들이 인가되었다고 결정하는 경우, 단계(810)는 소거 동작이 실패하였다고 표시한다.
단계(804)로 돌아가서, 프로그램 검증 절차가 현재 어드레스에서 통과된 경우(즉, 어드레스에서의 모든 메모리 셀들의 Vt가 PVT 전압, 예를 들면, 6V 이상인 경우), 단계(812)는 최종 어드레스가 프로그래밍되었는지의 여부를 결정한다. 최종 어드레스가 프로그래밍되지 않은 경우, 단계(814)는 현재 어드레스를 증분하고 동작을 단계(804)로 돌려준다. 그렇지 않고, 최종 어드레스가 프로그래밍된 경우, 동작은 단계(816)로 계속된다. 동작은 메모리 블록(202)의 각각의 메모리 셀의 Vt가 적어도 PVT일 때까지 부가의 프로그램 펄스들을 인가함으로써 단계들(804 및 808) 사이에서 루프(loop)한다.
선-프로그램 절차가 완료된 후에, 동작은 소거 절차의 단계(816)로 진행한다. 단계(816)는 메모리 블록(202)에 대해 정규 램프 레이트를 이용하여 소거 절차가 수행되도록 디폴트하는 단계를 포함할 수 있다. 단계(818)는 이 어드레스를 메모리 블록(202)의 제 1 어드레스로 초기화하는 단계를 포함할 수 있다. 어떤 경우든, 이것은 소거 동작의 초기 부분에 대해 소거 펄스에 대한 정규 램프 레이트를 이용한다. 이것은 도 4에 도시된 초기 램프 레이트(402)와 유사하다.
단계(820)는 메모리 블록(202)이 소거 메트릭(erase metric)을 충족하는지의 여부를 결정하기 위해 메모리 블록(202)의 메모리 셀들에 대해 소거(ERS) 검증 테스트를 수행할 수 있다. 소거 펄스가 통상적으로, 전체 메모리 블록(202) 또는 메모리 블록(202)의 서브세트에 인가될 벌크 동작이면, 소거 검증은 통상적으로 페이지마다 기초하여 수행되며, 여기서 각각의 페이지는 128 비트들 등과 같은 선택된 수의 메모리 셀들 또는 비트들을 포함한다. 소거 검증 테스트 동안, 메모리 셀들의 각각의 Vt는 소거 검증 임계(EVT) 전압(메모리 셀들의 각각에 대한 소거 메트릭을 표현)과 비교될 수 있다. 메모리 블록(202)의 임의의 메모리 셀의 Vt가 EVT 전압, 예를 들면, 3.5V보다 위인 경우, 동작은 단계(822)로 진행하여, 현재 소거 펄스가 선택된 임시 펄스인지의 여부를 결정한다. 이것은 도 3에 도시된 방법(300)의 단계(308)와 유사하다. 임시 펄스 수는 특정 NVM 기술에 대해 미리 결정된다. 예를 들면, 하나의 NVM 기술에서, 소거 절차 동안의 p웰 전압은 4.2v로부터 8.5v로 램핑할 것이다. 따라서, 선택된 임시 펄스는 전압이 효율적인 소거 절차들을 위해 미리 결정된 레벨보다 위지만, 인가될 최대 소거 전압보다 낮을 수 있는 것일 수 있다.
현재 소거 펄스가 선택된 임시 펄스가 아닌 경우, 단계(824)는 최대 수의 소거 펄스들이 인가되었는지의 여부를 결정한다. 최대 수의 소거 펄스들이 인가되지 않은 경우, 단계(826)는 다음 소거 펄스를 인가하고 제어는 단계(820)로 돌아간다.
단계(822)로 다시 돌아가서, 현재 소거 펄스가 선택된 임시 펄스인 경우, 단계(828)는 Vt 모니터(211)에 의해 제 1 판독 페이지 상에서 Vt의 임시 소거 검증 판독을 수행한다. 이것은 도 3에 도시된 방법(300)의 단계(310)와 유사하다. 제 1 판독 페이지에서의 모든 비트들이 명시된 전압보다 낮은 Vt 전압을 가진다고 단계(830)가 결정하는 경우, 검증 판독은 통과되었고 제어는 다음 소거 펄스를 인가하기 위해 단계(826)로 이전된다. 램프 레이트는 도 4에 도시된 정규 램프 레이트(404)와 유사한 정규 램프 레이트에서 계속된다. 단계(830)가 검증 판독이 통과되지 않았다고 결정하는 경우 예를 들면, 제 1 판독 페이지에서의 모든 비트들이 미리 결정된 임시 검증 판독 Vt 레벨 아래에 있는 것은 아니고, 단계(832)는 소거 펄스의 램프 레이트의 증가를 가능하게 한다. 또한, 이것은 증가된 램프 레이트가 소거를 위해 이용되고 있다는 이용자들에 대한 표시기로서 증가된 램프 레이트 플래그를 설정하기가 유익할 수 있다. 이것은 도 3에 도시된 방법(300)의 단계(312) 및 도 4에 도시된 증가된 램프 레이트(406)와 유사하다. 그 후에 소거 절차는 증가된 램프 레이트에서 단계(832)로부터 단계(826)로 이전한다.
단계(820)를 다시 참조하면, 선택된 판독 페이지 또는 어드레스에 대해 소거 검증이 통과된 경우, 예를 들면, 메모리 블록(202)에서의 선택된 판독 페이지의 임의의 메모리 셀의 Vt가 EVT 전압 위에 있지 않은 경우, 동작은 단계(836)로 진행하여, 최종 어드레스가 소거 검증되었는지의 여부를 결정한다. 최종 어드레스가 소거 검증되지 않은 경우, 단계(838)는 어드레스를 증분하고, 절차를 단계(820)에 이전한다. 절차는 메모리 블록(202)의 각각의 메모리 셀의 Vt가 EVT 아래일 때까지 부가의 소거 펄스들을 인가함으로써 단계들(820 내지 832)을 통해 루프한다. 단계(824)가 최대 수의 소거 펄스들이 인가되었다고 결정하는 경우, 처리(834)는 소거 동작이 실패했다고 표시한다.
도 8에 도시된 방법(800)의 실시예는 2개의 상이한 램프 레이트들 사이에서 소거 램프 레이트를 적응적으로 조정하도록 셋 업(set up)된다. 소거 절차(800)는 다수의 임시 소거 펄스들 및 임시 검증 판독 레벨들을 확인함으로써 비트 셀 성능 저하를 더 관리하기 위해 2개보다 많은 램프 레이트들을 다루도록 구성될 수 있다.
소거 절차가 완료된 후에, 소프트 프로그램 절차가 메모리 블록(202)에 대해 개시되어 과도-소거된 메모리 셀들의 Vt를 소프트 프로그램 검증 전압 임계(SPVT)와 EVT 사이의 원하는 전압 범위 내에 둔다. 소프트 프로그램 절차는 통상적으로 페이지마다 기초하여 수행되고, 여기서 각각의 페이지는 128 셀들 등과 같은 선택된 수의 메모리 셀들을 포함한다. 소프트 프로그램 펄스는 한번에 다수의 메모리 셀들에 인가될 수 있다. 하나의 실시예에서, 소프트 프로그램 펄스들은 한번에 최대 36개의 메모리 셀들까지 인가될 수 있다. 소프트 프로그램 펄스는 통상적으로 하위 전압, 더 짧은 펄스 지속구간, 또는 둘의 조합을 가진 것과 같이, 프로그램 펄스만큼 강하지 않다. 소프트 프로그램 절차는 그 어드레스를 메모리 블록(202)의 제 1 어드레스로 초기화하는 단계를 포함할 수 있는 단계(840)에서 시작한다. 동작은 단계(842)로 진행하여, 소프트 프로그램(SFT PGM) 검증 테스트를 수행하고, 여기서 현재 어드레스에서의 각각의 메모리 셀의 Vt는 SPVT 전압과 비교된다. 현재 어드레스에서의 임의의 메모리 셀의 Vt가 SPVT 전압 아래인 경우, 동작은 단계(850)로 진행하여, 최대 수의 소프트 프로그램 펄스들이 인가되었는지의 여부를 결정한다. 최대 수의 소프트 프로그램 펄스들이 인가되지 않은 경우, 동작은 단계(854)로 진행하여, 현재 어드레스에서 소프트 프로그램 검증 판독을 실패한 메모리 셀들에 소프트 프로그램 펄스를 인가한다. 소프트 프로그램 펄스는 Vt를 EVT 아래에 남아있는 동안 SPVT 위로 증가시키기 위해 선택된 전압 레벨 및 지속구간을 가진다. 절차는 단계(842)로 돌아가서, 현재 어드레스에서의 각각의 메모리 셀의 Vt가 SPVT 아래에 있는지의 여부를 결정하고, 절차는 메모리 블록(202)의 각각의 메모리 셀의 Vt가 SPVT와 EVT 전압들 사이에 있을 때까지 부가의 소프트 프로그램 펄스들을 인가함으로써 단계들(842 및 854) 사이를 루프한다.
단계(850)가 최대 수의 소프트 프로그램 펄스들이 인가되었다고 결정하는 경우, 단계(852)는 소거 동작이 실패했다고 표시한다.
단계(842)를 참조하면, 소프트 프로그램 검증 절차가 통과된 경우(즉, Vt가 SPVT 전압 이상인 경우), 단계(844)는 최종 어드레스가 소프트 프로그램 검증되었는지의 여부를 결정한다. 최종 어드레스가 소프트 프로그램 검증되지 않은 경우, 단계(848)는 그 어드레스를 증분하고 절차를 단계(842)로 돌려준다. 그렇지 않고, 최종 어드레스가 소프트 프로그래밍 검증된 경우, 절차는 단계(846)로 넘어가서 소거 동작이 통과되었다고 표시한다. 일 대안으로서, 소프트 프로그래밍은 또한 도 9에 도시된 프로그래밍 방법에 관해 프로그래밍 펄스에 대한 램프 레이트 변경을 포함할 수 있다.
도 9는 일반적으로 도 2의 NVM 제어기(207)에 의해 실행되고 제어되는 메모리 블록(202)의 적어도 일부를 프로그래밍하기 위한 및 유사하게 소프트 프로그래밍하기 위한 방법(900)의 실시예의 흐름도이다. 어떤 경우든, 단계는 도 4에 도시된 램프 레이트(402)와 유사한 정규 램프 레이트에서 처음으로 램핑되는 소거 펄스로 시작한다. 단계(904)는 메모리 블록(202)에 기록될 데이터 및 제 1 메모리 셀 어드레스를 NVM 제어기(207)에 제공하는 단계를 포함할 수 있다.
단계(906)는 메모리 셀이 프로그램 메트릭을 충족하는지의 여부를 결정하기 위해 메모리 블록(202)의 현재 메모리 셀에 대한 프로그램 검증 테스트를 수행할 수 있다. 프로그램 검증 테스트 동안, 현재 어드레스에서의 각각의 메모리 셀의 Vt는 프로그램 검증 임계(PVT) 전압(프로그램 메트릭을 표현)과 비교될 수 있다. 현재 어드레스에서의 임의의 메모리 셀의 Vt가 PVT 전압 아래인 경우, 동작은 단계(910)로 진행하여, 현재 프로그램 펄스가 선택된 임시 프로그램 펄스인지의 여부를 결정한다. 선택된 임시 프로그램 펄스는 프로그램 절차 동안 인가되는 최대 수의 펄스들보다 적지만, 메모리 셀이 통상적으로 정규 동작 동안, 예를 들면, 대규모 누설 없이, PVT를 충족시키는 펄스 수 이상인 펄스이다. 이것은 도 3에 도시된 방법(300)의 단계(308)와 유사하다.
현재 프로그램 펄스가 선택된 임시 프로그램 펄스가 아닌 경우, 단계(912)는 최대 수의 프로그램 펄스가 인가되었는지의 여부를 결정한다. 최대 수의 프로그램 펄스들이 인가되지 않은 경우, 단계(914)는 다음 프로그램 펄스를 인가하고 단계(906)로 이전한다.
단계(910)를 다시 참조하면, 현재 프로그램 펄스가 선택된 임시 프로그램 펄스인 경우, 단계(916)는, 이전 메모리 어드레스가 프로그래밍되고 있는지를 검출하는 저하된 성능으로 인해 증가된 램프 레이트가 이미 인에이블되었다고 표시하기 위해 증가된 램프 레이트 플래그가 설정되었는지의 여부를 결정한다. 증가된 램프 레이트 플래그가 설정된 경우, 단계(916)는 단계(912)로 제어를 이전한다. 증가된 램프 레이트 플래그가 설정되지 않은 경우, 단계(916)는 단계(918)로 제어를 이전한다.
단계(918)는 Vt 모니터(211)에 의해 Vt의 임시 프로그램 검증 판독을 수행하는 단계를 포함할 수 있다. 단계(920)가 프로그래밍되는 페이지의 모든 비트들이 특정 전압보다 높은 Vt 전압을 가진다는 점에서 임시 프로그램 검증 Vt 판독이 통과된다고 결정하는 경우, 제어는 단계(914)로 이전되어 다음 프로그램 펄스를 인가하고 도 4에 도시된 정규 램프 레이트(404)와 유사한 정규 램프 레이트를 이용하여 프로그래밍이 계속된다. 단계(920)가 검증 Vt 판독이 통과되지 않았다고 결정하는 경우, 단계(922)는 증가된 램프 레이트를 가능하게 하고 증가된 램프 레이트 플래그를 설정하고 프로그램 펄스의 램프 레이트는 도 4에 도시된 증가된 램프 레이트(406)와 유사하게 증가된다.
단계(906)를 다시 참조하면, 프로그램 검증이 통과된 경우, 동작은 단계(908)로 진행하여, 최종 어드레스가 프로그래밍되었는지의 여부를 결정한다. 최종 어드레스가 프로그래밍된 경우, 단계(909)는 메모리 셀들의 그룹에 대한 프로그램 동작이 통과되었다고 표시한다. 최종 어드레스가 프로그래밍되지 않은 경우, 단계(908)는 동작을 단계(904)에 이전한다. 동작은 메모리 블록(202)의 각각이 메모리 셀의 Vt가 적어도 PVT일 때까지 부가의 프로그램 펄스들을 인가함으로써 단계들(904 내지 914)을 통해 루프한다.
도 9에 도시된 방법(900)의 실시예는 2개의 상이한 램프 레이트들 사이의 프로그램 램프 레이트를 적응적으로 조정하도록 셋 업된다. 프로그램 절차(900)는 다수의 임시 프로그램 펄스들을 확인하고 부가의 증가된 램프 레이트 플래그들을 이용함으로써 2개보다 많은 램프 레이트들을 다루도록 구성될 수 있다. 방법(900)은 소프트 프로그래밍에서의 이용을 위해 용이하게 적응될 수 있다. 소프트 프로그래밍을 위해, 램프 레이트 변경이 있어야 하는지를 결정하는 특정 지점이 존재한다. 이 지점은 소프트 프로그래밍을 위해 선택되고 단계(910)에서 검출된다. 프로그래밍 진행이 다수의 이전 프로그램/소거 사이클들로 인해 성능 저하를 표시한 경우를 표시하는 프로그래밍 상태가 존재한다. 이 기준들은 단계(920)에서 이용된다. 결정에 기초하여, 단계(922)에서의 램프 레이트는 정규 램프 레이트로 계속되거나 증가된 램프 레이트로 변경된다.
이제, 프로그램, 소프트 프로그램, 및/또는 소거 동작 동안 메모리 셀 Vt 이동을 모니터링함으로써 기록 펄스 램프 레이트를 적응적으로 조정하는 시스템들 및 방법들이 개시되었음을 알아야 한다. 즉, 메모리 셀들이 너무 느리게 이동했고 임시 검증 Vt 확인을 실패했을 때, 기록 펄스의 램프 레이트는 전하 트래핑으로 인해 기록 시간의 감속을 줄이기 위해 증가된다. 이것은 NVM의 수명의 제 1 부분 동안의 피크 전압 또는 피크 전압에서의 적어도 더 적은 시간을 회피함으로써 NVM 셀들에 대한 손상을 감소하도록 허용하고, 오로지 이후에 특정 기록 시간을 충족시키기 위해 램프 레이트가 증가한다.
특히, 메모리 어레이의 메모리 셀들에 대한 기록 동작을 수행하는 방법은 제 1 미리 결정된 램프 레이트에 따라 메모리 셀들에 대한 기록 동작의 제 1 복수의 펄스들을 인가하는 단계를 포함하고, 제 1 복수의 펄스들은 미리 결정된 수의 펄스들이다. 상기 방법은 또한 메모리 셀들의 서브세트의 임계 전압과 임시 검증 전압과의 비교를 수행하는 단계를 포함한다. 방법은 또한 메모리 셀들의 서브세트의 임의의 임계 전압이 임시 검증 전압과의 비교에 실패하는 경우, 제 1 미리 결정된 램프 레이트에 비해 증가된 램프 레이트를 가지는 제 2 미리 결정된 램프 레이트에 따라 제 2 복수의 펄스들을 메모리 셀들 상에 인가함으로써 기록 동작을 계속하는 단계를 포함한다. 상기 방법은 또한 메모리 셀들의 서브세트의 각각의 임계 전압이 임시 검증 전압과의 비교를 통과하는 경우, 제 1 미리 결정된 램프 레이트에 따라 제 2 복수의 펄스들을 메모리 셀들 상에 인가함으로써 기록 동작을 계속하는 단계를 포함할 수 있다. 상기 방법은 기록 동작을 수행하는 단계가 소거 절차를 수행하는 단계를 포함하는 것을 또 다른 특성으로 가질 수 있다. 상기 방법은 제 1 복수의 펄스들의 인가 및 제 2 복수의 펄스들의 인가가 메모리 셀들의 모든 메모리 셀 상에서 수행되는 것을 또 다른 특성으로 가질 수 있다. 상기 방법은 제 1 복수의 펄스들의 각각의 펄스 및 제 2 복수의 펄스들의 각각의 펄스를 인가한 후에, 메모리 셀들의 서브세트의 임계 전압과 소거 검증 전압과의 비교를 수행하고, 메모리 셀들의 서브세트의 각각의 임계 전압이 소거 검증 전압과의 비교를 통과하는 경우, 메모리 셀들 상에서 기록 동작의 소프트-프로그램 절차를 계속하는 것을 또 다른 특성으로 가질 수 있다. 상기 방법은 메모리 셀들이 복수의 페이지들로 배열되고, 복수의 메모리 셀들로서 각각의 페이지 및 메모리 셀들의 서브세트가 복수의 페이지들 중 제 1 페이지로서 더 특징지워지는 것을 또 다른 특성으로 가질 수 있다. 상기 방법은 제 1 미리 결정된 램프 레이트가 제 1 전압 증분을 이용하고 제 2 미리 결정된 램프 레이트가 제 1 전압 증분보다 큰 제 2 전압 증분을 이용하는 것을 또 다른 특성으로 가질 수 있다. 상기 방법은 제 1 미리 결정된 램프 레이트가 제 1 복수의 펄스들에 대한 제 1 펄스 폭을 이용하고, 제 2 미리 결정된 램프 레이트가 제 1 펄스 폭보다 작은 제 2 복수의 펄스들에 대한 제 2 펄스 폭을 이용하는 것을 또 다른 특성으로 가질 수 있다. 상기 방법은 기록 동작을 수행하는 단계가 프로그램 절차 또는 소프트-프로그램 절차를 수행하는 단계를 포함하는 것을 또 다른 특성으로 가질 수 있다. 상기 방법은 제 1 복수의 펄스들의 각각의 펄스 및 제 2 복수의 펄스들의 각각의 펄스를 인가한 후에, 메모리 셀들의 서브세트의 임계 전압과 프로그램 검증 전압과의 비교를 수행하는 것을 또 다른 특성으로 가질 수 있고, 기록 동작의 제 1 복수의 펄스들을 메모리 셀들 상에 인가하는 단계는 또한 임계 전압이 프로그램 검증 전압과의 비교에 실패한 메모리 셀들의 서브세트의 메모리 셀들에만 제 1 복수의 펄스들이 인가된다는 것이 특징지워지고, 기록 동작의 제 2 복수의 펄스들을 메모리 셀들 상에 인가하는 단계는 또한 임계 전압이 프로그램 검증 전압과의 비교에 실패한 메모리 셀들의 서브세트의 메모리 셀들에만 제 2 복수의 펄스들이 인가된다는 것이 특징지워진다. 상기 방법은 제 2 복수의 펄스들이 제 2 미리 결정된 수의 펄스들이고, 상기 방법은 또한 메모리 셀들의 서브세트의 임계 전압과 제 2 임시 검증 전압과의 비교를 수행하는 단계; 메모리 셀들의 서브세트의 임의의 임계 전압이 제 2 임시 검증 전압과의 비교에 실패하는 경우, 제 2 미리 결정된 램프 레이트에 비해 증가된 램프 레이트를 가지는 제 3 미리 결정된 램프 레이트에 따라 제 3 복수의 펄스들을 메모리 셀들 상에 인가함으로써 기록 동작을 계속하는 단계; 및 메모리 셀들의 서브세트의 각각의 임계 전압이 제 2 임시 검증 전압과의 비교를 통과하는 경우, 제 1 또는 제 2 미리 결정된 램프 레이트에 따라 제 4 복수의 펄스들을 메모리 셀들 상에 인가함으로써 기록 동작을 계속하는 단계를 포함할 수 있는 것을 또 다른 특성으로 가질 수 있다.
또한, 메모리 어레이의 메모리 셀들 상에서 기록 동작을 수행하는 방법이 개시된다. 상기 방법은 기록 동작의 소거 절차에서, 제 1 미리 결정된 램프 레이트에 따라 미리 결정된 수의 펄스들을 메모리 셀들의 서브세트에 인가하는 단계를 포함한다. 상기 방법은 또한 메모리 셀들의 서브세트 중 적어도 하나의 메모리 셀의 임계 전압이 임시 검증 전압보다 큰지를 결정하는 단계를 포함한다. 상기 방법은 또한 복수의 부가 펄스들을 메모리 셀들의 서브세트의 각각의 메모리 셀 상에 인가하는 단계를 포함한다. 상기 방법은 또한, 메모리 셀들의 서브세트 중 적어도 하나의 메모리 셀의 임계 전압이 임시 검증 전압보다 큰 경우, 제 1 미리 결정된 램프 레이트에 비해 증가된 램프 레이트를 가지는 제 2 미리 결정된 램프 레이트에 따라 복수의 부가 펄스들이 인가되는 단계를 포함한다. 상기 방법은 또한, 메모리 셀들의 서브세트의 각각의 메모리 셀의 임계 전압이 임시 검증 전압보다 크지 않은 경우, 제 1 미리 결정된 램프 레이트에 따라 복수의 부가 펄스들이 인가되는 단계를 포함한다. 상기 방법은 소거 절차 후에, 메모리 셀들 상에서 소프트-프로그램 절차를 수행함으로써 기록 동작을 계속하는 단계를 추가로 포함할 수 있는 것을 또 다른 특성으로 가질 수 있다. 상기 방법은 기록 동작의 소거 절차에서, 미리 결정된 수의 펄스들의 각각의 펄스 및 복수의 부가 펄스들의 각각의 펄스를 인가한 후에, 메모리 셀들의 서브세트의 임계 전압과 소거 검증 전압을 비교하는 단계, 및 메모리 셀들의 서브세트의 모든 메모리 셀의 임계 전압이 소거 검증 전압보다 낮은 경우, 메모리 셀들 상에서 기록 동작의 소프트-프로그램 절차를 계속하는 단계를 추가로 포함할 수 있는 것을 또 다른 특성으로 가질 수 있다. 상기 방법은 메모리 셀들이 복수의 페이지들로 배열되고, 복수의 메모리 셀들로서의 각각의 페이지 및 메모리 셀들의 서브세트는 또한 복수의 페이지들 중 제 1 페이지로서 특징지워지는 것을 또 다른 특성으로 가질 수 있다. 상기 방법은 제 1 미리 결정된 램프 레이트는 제 1 전압 증분을 이용하고 제 2 미리 결정된 램프 레이트는 제 1 전압 증분보다 큰 제 2 전압 증분을 이용하는 것을 또 다른 특성으로 가질 수 있다. 상기 방법은 제 1 미리 결정된 램프 레이트는 제 1 펄스 폭을 이용하고 제 2 미리 결정된 램프 레이트는 제 1 펄스 폭보다 작은 제 2 펄스 폭을 이용하는 것을 또 다른 특성으로 가질 수 있다.
또한, 비-휘발성인 메모리 셀들의 어레이를 포함하는 비-휘발성 메모리(NVM) 시스템이 개시된다. NVM 시스템은 또한 어레이에 결합된 제어기를 포함하고, 제어기는 기록 동작 동안, 제 1 미리 결정된 램프 레이트에 따라 기록 동작의 제 1 복수의 펄스들을 어레이에 인가하고, 제 1 복수의 펄스들은 미리 결정된 수의 펄스들이고, 어레이의 서브세트의 임계 전압을 임시 검증 전압과 비교하고, 서브세트의 임의의 메모리 셀의 임계 전압이 임시 검증 전압과의 비교에 실패하는 경우, 제어기는 제 1 미리 결정된 램프 레이트에 비해 증가된 램프 레이트를 가지는 제 2 미리 결정된 램프 레이트에 따라 제 2 복수의 펄스들을 어레이에 인가함으로써 기록 동작을 계속한다. NVM 시스템은 서브세트의 각각의 메모리 셀의 임계 전압이 임시 검증 전압과의 비교를 통과하는 경우, 제어기는 제 1 미리 결정된 램프 레이트에 따라 제 3 복수의 펄스들을 메모리 셀들 상에 인가함으로써 기록 동작을 계속하는 것을 또 다른 특성으로 가질 수 있다. NVM 시스템은 기록 동작은 프로그램 절차, 소프트-프로그램 절차, 및 소거 절차 중 적어도 하나를 포함하는 것을 또 다른 특성으로 가질 수 있다.
따라서, 본 명세서에 기재된 아키텍처가 예시적일 뿐이고, 실제로 동일한 기능성을 달성하는 많은 다른 아키텍처들이 구현될 수 있음이 이해되어야 한다. 추상적이지만 확고하게, 동일한 기능성을 달성하기 위한 구성요소들의 배치는 원하는 기능성이 달성되도록 효과적으로 "연관(associated)"된다. 따라서 특정 기능성을 달성하도록 조합된 본 명세서의 임의의 2개의 구성요소들은 아키텍처들 또는 중간 구성요소들에 상관없이 원하는 기능성이 달성되도록 서로 "연관되는" 것으로 보일 수 있다. 또한, 이렇게 연관된 임의의 2개의 구성요소들은 또한, 원하는 기능성을 달성하기 위해 서로 "동작가능하게 접속(operably connected)"되거나 "동작가능하게 결합(operably coupled)"되는 것으로 보일 수 있다.
또한 예를 들면, 하나의 실시예에서, 본 명세서에 개시된 시스템들의 예시된 요소들은 단일 집적 회로 상에 또는 동일 디바이스 내에 위치된 회로이다. 대안적으로, 시스템들은 서로 접속된 임의 수의 개별 집적 회로 또는 개별 디바이스들을 포함할 수 있다. 또한 예를 들면, 시스템 또는 그 일부들은 물리적 회로의 소프트 또는 코드 표현들 또는 물리적 회로로 변환가능한 논리적 표현들일 수 있다. 이와 같이, 시스템은 임의의 적합한 유형의 하드웨어 기술 언어로 구현될 수 있다.
또한, 당업자들은 상술된 동작들의 기능성 간의 경계들이 예시적일 뿐임을 알 것이다. 다수의 동작들의 기능성은 단일 동작으로 조합될 수 있고/있거나 단일 동작의 기능성은 부가의 동작들로 배분될 수 있다. 또한, 대안적인 실시예들은 특정 동작의 다수의 예들을 포함할 수 있고, 동작들의 순서는 다양한 다른 실시예들에서 변경될 수 있다.
본 개시내용은 그의 특정 양호한 버전들에 관해 매우 상세히 기술되었지만, 다른 버전들 및 변형들이 가능하고 고려된다. 당업자들은 이들이 첨부된 특허청구범위에 의해 규정된 개시내용의 사상 및 범위를 벗어나지 않고 본 개시내용의 동일 목적들을 실행하기 위해 다른 구조들을 설계하거나 수정하기 위한 기초로서 개시된 개념 및 특정 실시예들을 용이하게 이용할 수 있음을 알아야 한다.
101: 처리기(들) 103: NVM
201: NVM 어레이 203: 로우 디코더
205: 컬럼 로직 207: NVM 제어기
209: 전하 펌프들 211: Vt 모니터
213: 프로그램 램프 레이트 제어 로직
215: 소거 램프 레이트 제어 로직

Claims (20)

  1. 메모리 어레이의 메모리 셀들 상에서 기록 동작을 수행하는 방법에 있어서:
    제 1 미리 결정된 램프 레이트(ramp rate)에 따라 기록 동작의 제 1 복수의 펄스들을 상기 메모리 셀들 상에 인가하는 단계로서, 상기 제 1 복수의 펄스들은 미리 결정된 수의 펄스들인, 상기 인가 단계;
    상기 메모리 셀들의 서브세트의 임계 전압과 임시 검증 전압(interim verify voltage)과의 비교를 수행하는 단계;
    상기 메모리 셀들의 임의의 서브세트의 임계 전압이 상기 임시 검증 전압과의 상기 비교에 실패하는 경우, 상기 제 1 미리 결정된 램프 레이트에 비해 증가된 램프 레이트를 가지는 제 2 미리 결정된 램프 레이트에 따라 제 2 복수의 펄스들을 상기 메모리 셀들 상에 인가함으로써 기록 동작을 계속하는 단계; 및
    상기 메모리 셀들의 서브세트의 각각의 임계 전압이 상기 임시 검증 전압과의 비교를 통과하는 경우, 상기 제 1 미리 결정된 램프 레이트에 따라 제 2 복수의 펄스들을 상기 메모리 셀들 상에 인가함으로써 기록 동작을 계속하는 단계를 포함하는, 메모리 어레이의 메모리 셀들 상에서 기록 동작을 수행하는 방법.
  2. 제 1 항에 있어서,
    기록 동작을 수행하는 단계는 소거 절차를 수행하는 단계를 포함하는, 메모리 어레이의 메모리 셀들 상에서 기록 동작을 수행하는 방법.
  3. 제 2 항에 있어서,
    상기 제 1 복수의 펄스들의 인가 및 상기 제 2 복수의 펄스들의 인가는 상기 메모리 셀들의 모든 메모리 셀 상에서 수행되는, 메모리 어레이의 메모리 셀들 상에서 기록 동작을 수행하는 방법.
  4. 제 3 항에 있어서,
    상기 제 1 복수의 펄스들의 각각의 펄스 및 상기 제 2 복수의 펄스들의 각각의 펄스를 인가한 후에, 상기 메모리 셀들의 서브세트의 임계 전압과 소거 검증 전압과의 비교를 수행하는 단계, 및 상기 메모리 셀들의 서브세트의 각각의 임계 전압이 상기 소거 검증 전압과의 상기 비교를 통과하는 경우, 상기 메모리 셀들 상에서 기록 동작의 소프트-프로그램 절차를 계속하는 단계를 포함하는, 메모리 어레이의 메모리 셀들 상에서 기록 동작을 수행하는 방법.
  5. 제 1 항에 있어서,
    상기 메모리 셀들은 복수의 페이지들로 배열되고, 각 페이지는 복수의 상기 메모리 셀들로서 특징지워지고, 상기 메모리 셀들의 서브세트는 또한 상기 복수의 페이지들 중 제 1 페이지로서 특징지워지는, 메모리 어레이의 메모리 셀들 상에서 기록 동작을 수행하는 방법.
  6. 제 1 항에 있어서,
    상기 제 1 미리 결정된 램프 레이트는 제 1 전압 증분을 이용하고, 상기 제 2 미리 결정된 램프 레이트는 상기 제 1 전압 증분보다 큰 제 2 전압 증분을 이용하는, 메모리 어레이의 메모리 셀들 상에서 기록 동작을 수행하는 방법.
  7. 제 1 항에 있어서,
    상기 제 1 미리 결정된 램프 레이트는 상기 제 1 복수의 펄스들에 대한 제 1 펄스 폭을 이용하고, 상기 제 2 미리 결정된 램프 레이트는 상기 제 1 펄스 폭보다 작은 상기 제 2 복수의 펄스들에 대한 제 2 펄스 폭을 이용하는, 메모리 어레이의 메모리 셀들 상에서 기록 동작을 수행하는 방법.
  8. 제 1 항에 있어서,
    기록 동작을 수행하는 단계는 프로그램 절차 또는 소프트-프로그램 절차를 수행하는 단계를 포함하는, 메모리 어레이의 메모리 셀들 상에서 기록 동작을 수행하는 방법.
  9. 제 8 항에 있어서,
    상기 제 1 복수의 펄스들의 각각의 펄스 및 상기 제 2 복수의 펄스들의 각각의 펄스를 인가한 후에, 상기 메모리 셀들의 서브세트의 임계 전압과 프로그램 검증 전압과의 비교를 수행하는 단계를 포함하고,
    기록 동작의 제 1 복수의 펄스들을 상기 메모리 셀들 상에 인가하는 단계는 또한 상기 제 1 복수의 펄스들이, 임계 전압이 상기 프로그램 검증 전압과의 상기 비교에 실패한 상기 메모리 셀들의 서브세트의 메모리 셀들에만 인가되는 것을 특징으로 하고,
    기록 동작의 제 2 복수의 펄스들을 상기 메모리 셀들 상에 인가하는 단계는 또한 상기 제 2 복수의 펄스들이, 임계 전압이 상기 프로그램 검증 전압과의 상기 비교에 실패한 상기 메모리 셀들의 서브세트의 메모리 셀들에만 인가되는 것을 특징으로 하는, 메모리 어레이의 메모리 셀들 상에서 기록 동작을 수행하는 방법.
  10. 제 1 항에 있어서,
    상기 제 2 복수의 펄스들은 제 2 미리 결정된 수의 펄스들이고,
    상기 방법은 또한:
    상기 메모리 셀들의 서브세트의 임계 전압과 제 2 임시 검증 전압과의 비교를 수행하는 단계;
    상기 메모리 셀들의 임의의 서브세트의 임계 전압이 상기 제 2 임시 검증 전압과의 상기 비교에 실패하는 경우, 상기 제 2 미리 결정된 램프 레이트에 비해 증가된 램프 레이트를 가지는 제 3 미리 결정된 램프 레이트에 따라 제 3 복수의 펄스들을 상기 메모리 셀들 상에 인가함으로써 상기 기록 동작을 계속하는 단계; 및
    상기 메모리 셀들의 서브세트의 각각의 임계 전압이 상기 제 2 임시 검증 전압과의 상기 비교를 통과하는 경우, 상기 제 1 또는 상기 제 2 미리 결정된 램프 레이트에 따라 제 4 복수의 펄스들을 상기 메모리 셀들 상에 인가함으로써 상기 기록 동작을 계속하는 단계를 포함하는, 메모리 어레이의 메모리 셀들 상에서 기록 동작을 수행하는 방법.
  11. 비-휘발성 메모리(NVM) 시스템에 있어서:
    비-휘발성인 메모리 셀들의 어레이; 및
    상기 어레이에 결합된 제어기를 포함하고, 상기 제어기는 기록 동작 동안, 제 1 미리 결정된 램프 레이트에 따라 상기 기록 동작의 제 1 복수의 펄스들을 상기 어레이에 인가하고, 상기 제 1 복수의 펄스들은 미리 결정된 수의 펄스들이고, 상기 어레이의 서브세트의 임계 전압을 임시 검증 전압과 비교하고, 상기 서브세트의 임의의 메모리 셀의 임계 전압이 상기 임시 검증 전압과의 상기 비교에 실패하는 경우, 상기 제어기는 상기 제 1 미리 결정된 램프 레이트에 비해 증가된 램프 레이트를 가지는 제 2 미리 결정된 램프 레이트에 따라 제 2 복수의 펄스들을 상기 어레이에 인가함으로써 상기 기록 동작을 계속하고,
    상기 서브세트의 각각의 메모리 셀의 임계 전압이 상기 임시 검증 전압과의 상기 비교를 통과하는 경우, 상기 제어기는 상기 제 1 미리 결정된 램프 레이트에 따라 제 3 복수의 펄스들을 상기 메모리 셀들 상에 인가함으로써 상기 기록 동작을 계속하는, 비-휘발성 메모리(NVM) 시스템.
  12. 제 11 항에 있어서,
    상기 기록 동작은 프로그램 절차, 소프트-프로그램 절차, 및 소거 절차 중 적어도 하나를 포함하는, 비-휘발성 메모리(NVM) 시스템.
  13. 삭제
  14. 삭제
  15. 삭제
  16. 삭제
  17. 삭제
  18. 삭제
  19. 삭제
  20. 삭제
KR1020130109709A 2012-09-14 2013-09-12 적응형 기록 동작들을 갖는 비―휘발성 메모리(nvm) KR102147104B1 (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US13/616,169 2012-09-14
US13/616,169 US9082510B2 (en) 2012-09-14 2012-09-14 Non-volatile memory (NVM) with adaptive write operations

Publications (2)

Publication Number Publication Date
KR20140035843A KR20140035843A (ko) 2014-03-24
KR102147104B1 true KR102147104B1 (ko) 2020-08-24

Family

ID=49123731

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020130109709A KR102147104B1 (ko) 2012-09-14 2013-09-12 적응형 기록 동작들을 갖는 비―휘발성 메모리(nvm)

Country Status (6)

Country Link
US (1) US9082510B2 (ko)
EP (1) EP2709109A2 (ko)
JP (1) JP6265666B2 (ko)
KR (1) KR102147104B1 (ko)
CN (1) CN103680622B (ko)
TW (1) TWI613657B (ko)

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20140026141A (ko) * 2012-08-24 2014-03-05 에스케이하이닉스 주식회사 반도체 메모리 장치 및 이의 동작 방법
US9224494B2 (en) * 2014-01-10 2015-12-29 Sandisk Technologies Inc. Erase speed adjustment for endurance of non-volatile storage
US9792999B2 (en) * 2015-10-30 2017-10-17 SK Hynix Inc. Adaptive scheme for incremental step pulse programming of flash memory
CN110838330B (zh) * 2018-08-17 2021-08-24 北京兆易创新科技股份有限公司 一种存储器的擦除方法和系统
JP6741811B1 (ja) * 2019-03-07 2020-08-19 力晶積成電子製造股▲ふん▼有限公司Powerchip Semiconductor Manufacturing Corporation 不揮発性半導体記憶装置の消去制御回路及び方法、並びに不揮発性半導体記憶装置
TWI733626B (zh) * 2020-07-07 2021-07-11 旺宏電子股份有限公司 記憶體裝置之操作方法
JP7181984B1 (ja) * 2021-12-09 2022-12-01 ウィンボンド エレクトロニクス コーポレーション 半導体装置および消去方法

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7023737B1 (en) 2005-08-01 2006-04-04 Sandisk Corporation System for programming non-volatile memory with self-adjusting maximum program loop
JP2007323716A (ja) 2006-05-31 2007-12-13 Renesas Technology Corp 半導体集積回路
US20090323429A1 (en) 2008-06-27 2009-12-31 Dana Lee Programming algorithm to reduce disturb with minimal extra time penalty
KR101012129B1 (ko) * 2005-08-01 2011-02-07 샌디스크 코포레이션 자기 조정 최대 프로그램 루프에 의한 비휘발성 메모리의프로그래밍

Family Cites Families (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FR2768846B1 (fr) * 1997-09-19 1999-12-24 Sgs Thomson Microelectronics Procede et circuit de generation de la tension de programmation et d'effacement dans une memoire non volatile
US5991201A (en) 1998-04-27 1999-11-23 Motorola Inc. Non-volatile memory with over-program protection and method therefor
IT1303204B1 (it) * 1998-11-27 2000-10-30 St Microelectronics Srl Metodo di programmazione di celle di memoria non volatile ad elevataprecisione, con velocita' di programmazione ottimizzata.
KR100414146B1 (ko) * 2000-06-27 2004-01-13 주식회사 하이닉스반도체 플래쉬 메모리 소자의 소거 방법
DE60139670D1 (de) * 2001-04-10 2009-10-08 St Microelectronics Srl Verfahren zur Programmierung nichtflüchtiger Speicherzellen mit Programmier- und Prüfalgorithmus unter Verwendung treppenförmiger Spannungsimpulse mit variablem Stufenabstand
US7177199B2 (en) 2003-10-20 2007-02-13 Sandisk Corporation Behavior based programming of non-volatile memory
US7079424B1 (en) 2004-09-22 2006-07-18 Spansion L.L.C. Methods and systems for reducing erase times in flash memory devices
US7173859B2 (en) 2004-11-16 2007-02-06 Sandisk Corporation Faster programming of higher level states in multi-level cell flash memory
KR100748553B1 (ko) * 2004-12-20 2007-08-10 삼성전자주식회사 리플-프리 고전압 발생회로 및 방법, 그리고 이를 구비한반도체 메모리 장치
US7295478B2 (en) * 2005-05-12 2007-11-13 Sandisk Corporation Selective application of program inhibit schemes in non-volatile memory
ITRM20050310A1 (it) * 2005-06-15 2006-12-16 Micron Technology Inc Convergenza a programmazione selettiva lenta in un dispositivo di memoria flash.
JP4282636B2 (ja) * 2005-06-22 2009-06-24 株式会社東芝 不揮発性半導体記憶装置とそのデータ書き込み方法
US7656710B1 (en) * 2005-07-14 2010-02-02 Sau Ching Wong Adaptive operations for nonvolatile memories
US7230854B2 (en) * 2005-08-01 2007-06-12 Sandisk Corporation Method for programming non-volatile memory with self-adjusting maximum program loop
KR100811274B1 (ko) * 2006-12-28 2008-03-07 주식회사 하이닉스반도체 낸드형 플래쉬 메모리소자의 데이터 소거방법
ITRM20070167A1 (it) * 2007-03-27 2008-09-29 Micron Technology Inc Non-volatile multilevel memory cell programming
US8310870B2 (en) * 2010-08-03 2012-11-13 Sandisk Technologies Inc. Natural threshold voltage distribution compaction in non-volatile memory
US8737138B2 (en) * 2010-11-18 2014-05-27 Micron Technology, Inc. Memory instruction including parameter to affect operating condition of memory
US8345485B2 (en) 2011-02-09 2013-01-01 Freescale Semiconductor, Inc. Erase ramp pulse width control for non-volatile memory
US8605507B2 (en) * 2012-01-12 2013-12-10 Macronix International Co., Ltd. Flash programming technology for improved margin and inhibiting disturbance

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7023737B1 (en) 2005-08-01 2006-04-04 Sandisk Corporation System for programming non-volatile memory with self-adjusting maximum program loop
KR101012129B1 (ko) * 2005-08-01 2011-02-07 샌디스크 코포레이션 자기 조정 최대 프로그램 루프에 의한 비휘발성 메모리의프로그래밍
JP2007323716A (ja) 2006-05-31 2007-12-13 Renesas Technology Corp 半導体集積回路
US20090323429A1 (en) 2008-06-27 2009-12-31 Dana Lee Programming algorithm to reduce disturb with minimal extra time penalty

Also Published As

Publication number Publication date
TW201415467A (zh) 2014-04-16
CN103680622A (zh) 2014-03-26
JP6265666B2 (ja) 2018-01-24
JP2014059945A (ja) 2014-04-03
TWI613657B (zh) 2018-02-01
KR20140035843A (ko) 2014-03-24
US20140078829A1 (en) 2014-03-20
US9082510B2 (en) 2015-07-14
CN103680622B (zh) 2019-04-19
EP2709109A2 (en) 2014-03-19

Similar Documents

Publication Publication Date Title
KR102147104B1 (ko) 적응형 기록 동작들을 갖는 비―휘발성 메모리(nvm)
KR101220797B1 (ko) 불휘발성 반도체 기억 장치
JP4902002B1 (ja) 不揮発性半導体記憶装置
US8345485B2 (en) Erase ramp pulse width control for non-volatile memory
US7616496B2 (en) Charge trap type non-volatile memory device and program method thereof
US8369158B2 (en) Erase operations and apparatus for a memory device
JP5058461B2 (ja) フラッシュメモリのための選択的消去方法
US8432752B2 (en) Adaptive write procedures for non-volatile memory using verify read
KR100909720B1 (ko) 소거 속도가 느린 메모리 셀들을 보상하도록 워드라인 조건들을 변경함으로써 비휘발성 메모리를 소거하는 방법
US8023330B2 (en) Method of erasing a nonvolatile memory device
WO2006071559A1 (en) Word line compensation in non-volatile memory erase operations
US9129700B2 (en) Systems and methods for adaptive soft programming for non-volatile memory using temperature sensor
US9082493B2 (en) Adaptive erase methods for non-volatile memory
US20130135937A1 (en) Programming memory cells using smaller step voltages for higher program levels
US8509001B2 (en) Adaptive write procedures for non-volatile memory
JP3974778B2 (ja) 不揮発性半導体メモリ装置およびそのデータ消去方法
US20230343397A1 (en) Burst programming of a nand flash cell
EP2369593B1 (en) Channel hot electron injection programming method and related device

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