KR20120088137A - 비휘발성 메모리 장치의 프로그래밍 방법 - Google Patents

비휘발성 메모리 장치의 프로그래밍 방법 Download PDF

Info

Publication number
KR20120088137A
KR20120088137A KR1020110009271A KR20110009271A KR20120088137A KR 20120088137 A KR20120088137 A KR 20120088137A KR 1020110009271 A KR1020110009271 A KR 1020110009271A KR 20110009271 A KR20110009271 A KR 20110009271A KR 20120088137 A KR20120088137 A KR 20120088137A
Authority
KR
South Korea
Prior art keywords
programming
bits
scanning
ecc
data
Prior art date
Application number
KR1020110009271A
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 KR1020110009271A priority Critical patent/KR20120088137A/ko
Publication of KR20120088137A publication Critical patent/KR20120088137A/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/08Error detection or correction by redundancy in data representation, e.g. by using checking codes
    • G06F11/10Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's
    • G06F11/1008Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's in individual solid state devices
    • G06F11/1068Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's in individual solid state devices in sector programmable memories, e.g. flash disk
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C16/00Erasable programmable read-only memories
    • G11C16/02Erasable programmable read-only memories electrically programmable
    • G11C16/06Auxiliary circuits, e.g. for writing into memory
    • G11C16/08Address circuits; Decoders; Word-line control circuits
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C16/00Erasable programmable read-only memories
    • G11C16/02Erasable programmable read-only memories electrically programmable
    • G11C16/06Auxiliary circuits, e.g. for writing into memory
    • G11C16/10Programming or data input circuits
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C29/00Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
    • G11C29/04Detection or location of defective memory elements, e.g. cell constructio details, timing of test signals
    • G11C29/08Functional testing, e.g. testing during refresh, power-on self testing [POST] or distributed testing
    • G11C29/12Built-in arrangements for testing, e.g. built-in self testing [BIST] or interconnection details
    • G11C29/38Response verification devices
    • G11C29/42Response verification devices using error correcting codes [ECC] or parity check

Abstract

비휘발성 메모리 장치의 프로그래밍 방법은, 복수의 메모리 셀 중 프로그래밍된 적어도 하나의 메모리 셀을 지시하는 시작 어드레스 및 종료 어드레스를 기억하는 단계와, 데이터 스캐닝시 시작 어드레스부터 스캐닝 하여 불량 비트 수를 누적하는 단계와, 누적된 상기 불량 비트 수가 ECC(Error Correction Code) 허용 비트 수를 초과할 경우, 프로그래밍 동작을 재수행하는 단계를 포함한다.

Description

비휘발성 메모리 장치의 프로그래밍 방법{METHOD OF PROGRAMMING DATA FOR NON-VOLATILE MEMORY APPARATUS}
본 발명은 비휘발성 메모리 장치에 관한 것으로서, 데이터를 프로그래밍 하는 기술에 관한 것이다.
비휘발성 메모리 장치의 대표적인 난드 플래시 메모리 장치는 데이터를 메모리 셀에 프로그래밍한 이후에, 프로그래밍이 정확하게 수행되었는지 여부를 데이터 스캐닝 동작을 통해서 판별하게 된다. 일반적으로 데이터 스캐닝 동작은 한 페이지에 해당하는 복수의 메모리 셀의 데이터를 페이지 버퍼를 통해서 감지하고 불량 비트 수를 순차적으로 누적한다. 이때, 누적된 불량 비트 수가 ECC(Error Correction Code)로 정정할 수 있는 허용 비트 수를 초과하는 경우, 프로그래밍이 실패한 것으로 간주하고, 재 프로그래밍 동작을 수행하게 된다.
도 1은 일반적인 비휘발성 메모리 장치의 프로그래밍 방법을 나타낸 순서도이다.
도 1을 참조하여, 일반적인 비휘발성 메모리 장치의 프로그래밍 방법을 설명하기로 한다.
우선, 프로그래밍이 시작되면, 프로그래밍 커맨드와, 어드레스와, 데이터가 입력된다(S101,S102,S103).
다음으로, 프로그래밍 전압을 공급하여 데이터를 메모리 셀에 프로그래밍 한다(S104).
다음으로, 어드레스를 증가시키면서, 마지막 어드레스까지 데이터 스캐닝을 하면서 에러 비트를 누적한다(S105,S106,S107).
다음으로, 누적된 불량 비트 수가 ECC(Error Correction Code) 허용 비트 수를 초과할 경우, 프로그래밍 동작을 재수행한다(S108,S109). 반면에, 누적된 불량 비트 수가 ECC(Error Correction Code) 허용 비트 수를 초과하지 않을 경우, 프로그래밍이 성공한 것으로 간주한다.
상술한 바와 같은 일반적인 비휘발성 메모리 장치의 프로그래밍 방법은 데이터 스캐닝을 수행할 때, 하나의 페이지에 해당하는 모든 데이터를 순차적으로 스캐닝한 후에, 누적된 불량 비트 수가 ECC(Error Correction Code) 허용 비트 수를 초과했는지 여부를 판단하게 된다. 따라서 하나의 페이지에 해당하는 메모리 셀의 수가 많을 경우, 데이터 스캐닝 시간이 오래 걸리므로, 프로그래밍 시간이 증가한다.
본 발명은 데이터 스캐닝 시간을 단축시킴으로써, 프로그래밍 시간을 감소시킬 수 있는 비휘발성 메모리 장치의 프로그래밍 방법을 제공한다.
본 발명의 일 실시예에 따르면, 복수의 메모리 셀에 데이터를 프로그래밍 하는 방법에 있어서, 상기 복수의 메모리 셀 중 프로그래밍된 적어도 하나의 메모리 셀을 지시하는 시작 어드레스 및 종료 어드레스를 기억하는 단계; 데이터 스캐닝시 상기 시작 어드레스부터 스캐닝 하여 불량 비트 수를 누적하는 단계; 및 누적된 상기 불량 비트 수가 ECC(Error Correction Code) 허용 비트 수를 초과할 경우, 프로그래밍 동작을 재수행하는 단계;를 포함하는 비휘발성 메모리 장치의 프로그래밍 방법이 제공된다.
도 1은 일반적인 비휘발성 메모리 장치의 프로그래밍 방법을 나타낸 순서도이다.
도 2는 본 발명의 일 실시예에 따른 비휘발성 메모리 장치의 프로그래밍 방법을 나타낸 순서도이다.
이하, 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자가 본 발명의 기술적 사상을 용이하게 실시할 수 있을 정도로 상세히 설명하기 위하여, 본 발명의 실시예를 첨부한 도면을 참조하여 설명하기로 한다.
도 2는 본 발명의 일 실시예에 따른 비휘발성 메모리 장치의 프로그래밍 방법을 나타낸 순서도이다.
도 2를 참조하여, 본 발명의 일 실시예에 따른 비휘발성 메모리 장치의 프로그래밍 방법을 설명하기로 한다.
우선, 프로그래밍이 시작되면 프로그래밍 커맨드가 입력된다(S201).
다음으로, 복수의 메모리 셀 중 프로그래밍된 적어도 하나의 메모리 셀을 지시하는 시작 어드레스 및 종료 어드레스를 기억한다(S10). 즉, 어드레스와 데이터가 입력되면(S202,S204), 시작 어드레스 및 종료 어드레스가 저장되고(S203,S205), 입력된 데이터는 프로그래밍 전압이 공급되면서 메모리 셀에 프로그래밍 된다(206). 이때, 시작 어드레스 및 종료 어드레스는 복수의 메모리 셀을 모두 지시하는 것이 아니라, 복수의 메모리 셀 중 일부 범위만을 지시할 수 있다. 즉, 시작 어드레스 및 종료 어드레스는 하나의 페이지에 해당하는 복수의 메모리 셀을 모두 지시하는 것은 아니고, 페이지에 해당하는 일부의 메모리 셀을 지시할 수 있다.
다음으로, 데이터 스캐닝시 시작 어드레스부터 스캐닝 하여 불량 비트 수를 누적한다(S20). 즉, 저장된 시작 어드레스를 로딩(S207)하고, 데이터가 프로그래밍된 시작 어드레스부터 스캐닝을 시작하면서 불량 비트 수를 누적한다(S208).
다음으로, 누적된 불량 비트 수가 ECC(Error Correction Code) 허용 비트 수를 초과할 경우, 프로그래밍 동작을 재수행한다(S30). 즉, 누적된 불량 비트 수가 ECC(Error Correction Code) 허용 비트 수를 초과하는지 판단(S209)하고, 초과하는 경우 프로그래밍 동작을 다시 수행한다. 이때, 프로그래밍 동작을 재수행하는 단계가 반복될수록 프로그래밍 전압을 점점 상승시킨다(S210).
한편, 누적된 불량 비트 수가 ECC(Error Correction Code) 허용 비트 수를 초과하지 않을 경우, 어드레스를 증가시키면서 스캐닝 하여 불량 비트 수를 누적한다(S40). 누적된 불량 비트 수가 ECC(Error Correction Code) 허용 비트 수를 초과하지 않을 경우, 종료 어드레스까지 어드레스를 증가시키면서 스캐닝 동작을 수행한다(S211,S212).
상술한 바와 같이 본 발명의 일 실시예에 따른 비휘발성 메모리 장치의 프로그래밍 방법은 데이터 스캐닝을 수행할 때, 하나의 페이지에 해당하는 모든 데이터를 순차적으로 스캐닝 하지 않고, 시작 어드레스에서 종료 어드레스까지의 데이터만을 스캐닝 하다가 누적된 불량 비트 수가 ECC(Error Correction Code) 허용 비트 수를 초과하는 순간 다시 프로그래밍 동작을 진행한다. 이와 같은 동작은 종료 어드레스까지 스캐닝 했을 때, 누적된 불량 비트 수가 ECC(Error Correction Code) 허용 비트 수를 초과하지 않을 때 까지 반복적으로 수행되며, 누적된 불량 비트 수가 ECC(Error Correction Code) 허용 비트 수를 초과하지 않을 경우, 프로그래밍이 성공한 것으로 간주한다.
이와 같이 하나의 페이지에 해당하는 복수의 메모리 셀 중 시작 어드레스 및 종료 어드레스에 의해서 지시되는 메모리 셀만을 스캐닝하고, 스캐닝 도중에 누적된 불량 비트 수가 ECC(Error Correction Code) 허용 비트 수를 초과하는 순간 다시 프로그래밍 동작을 수행하므로, 데이터 스캐닝 시간이 단축된다.
이와 같이, 본 발명이 속하는 기술분야의 당업자는 본 발명이 그 기술적 사상이나 필수적 특징을 변경하지 않고서 다른 구체적인 형태로 실시될 수 있다는 것을 이해할 수 있을 것이다. 그러므로 이상에서 기술한 실시예들은 모든 면에서 예시적인 것이며 한정적인 것이 아닌 것으로서 이해해야만 한다. 본 발명의 범위는 상기 상세한 설명보다는 후술하는 특허청구범위에 의하여 나타내어지며, 특허청구범위의 의미 및 범위 그리고 그 등가개념으로부터 도출되는 모든 변경 또는 변형된 형태가 본 발명의 범위에 포함되는 것으로 해석되어야 한다.

Claims (4)

  1. 복수의 메모리 셀에 데이터를 프로그래밍 하는 방법에 있어서,
    상기 복수의 메모리 셀 중 프로그래밍된 적어도 하나의 메모리 셀을 지시하는 시작 어드레스 및 종료 어드레스를 기억하는 단계;
    데이터 스캐닝시 상기 시작 어드레스부터 스캐닝 하여 불량 비트 수를 누적하는 단계; 및
    누적된 상기 불량 비트 수가 ECC(Error Correction Code) 허용 비트 수를 초과할 경우, 프로그래밍 동작을 재수행하는 단계;
    를 포함하는 비휘발성 메모리 장치의 프로그래밍 방법.
  2. 제1항에 있어서,
    누적된 상기 불량 비트 수가 상기 ECC(Error Correction Code) 허용 비트 수를 초과하지 않을 경우, 어드레스를 증가시키면서 스캐닝 하여 불량 비트 수를 누적하는 단계;를 더 포함하는 비휘발성 메모리 장치의 프로그래밍 방법.
  3. 제2항에 있어서,
    누적된 상기 불량 비트 수가 ECC(Error Correction Code) 허용 비트 수를 초과하지 않을 경우, 상기 종료 어드레스까지 어드레스를 증가시키면서 스캐닝 하는 것을 특징으로 하는 비휘발성 메모리 장치의 프로그래밍 방법.
  4. 제1항에 있어서,
    상기 프로그래밍 동작을 재수행하는 단계가 반복될수록 프로그래밍 전압을 점점 상승시키는 것을 특징으로 하는 비휘발성 메모리 장치의 프로그래밍 방법.
KR1020110009271A 2011-01-31 2011-01-31 비휘발성 메모리 장치의 프로그래밍 방법 KR20120088137A (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020110009271A KR20120088137A (ko) 2011-01-31 2011-01-31 비휘발성 메모리 장치의 프로그래밍 방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020110009271A KR20120088137A (ko) 2011-01-31 2011-01-31 비휘발성 메모리 장치의 프로그래밍 방법

Publications (1)

Publication Number Publication Date
KR20120088137A true KR20120088137A (ko) 2012-08-08

Family

ID=46873467

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020110009271A KR20120088137A (ko) 2011-01-31 2011-01-31 비휘발성 메모리 장치의 프로그래밍 방법

Country Status (1)

Country Link
KR (1) KR20120088137A (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105308685A (zh) * 2013-01-25 2016-02-03 桑迪士克技术有限公司 在非易失性多级多个存储器管芯的编程中恢复附近数据

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105308685A (zh) * 2013-01-25 2016-02-03 桑迪士克技术有限公司 在非易失性多级多个存储器管芯的编程中恢复附近数据
CN105308685B (zh) * 2013-01-25 2018-02-02 桑迪士克科技有限责任公司 非易失性存储装置的编程处理和非易失性存储系统

Similar Documents

Publication Publication Date Title
US10061512B2 (en) Data storage device and data writing method thereof
US9881684B2 (en) Semiconductor memory device
US10347330B2 (en) Solid state storage device and reading control method thereof for read retry process with optimal read voltage set
US10096357B2 (en) Data storage device and data writing method thereof
CN106251903B (zh) 存储系统及其操作方法
KR102098266B1 (ko) 반도체 메모리 장치
JP2012137994A (ja) メモリシステムおよびその制御方法
US9086961B2 (en) Repair method and device for abnormal-erase memory block of non-volatile flash memory
JP2007035245A (ja) メモリ装置、欠陥セル救済方法及び内部電圧トリミング方法
JP2012079403A5 (ko)
US9368226B2 (en) Data storage device and method for restricting access thereof
CN105047224B (zh) 读取闪存中所储存的数据的方法与存储器控制器
KR20120070012A (ko) 비휘발성 메모리장치 및 이의 동작방법
US8605505B2 (en) Semiconductor integrated circuit and data read method
TWI602055B (zh) 半導體儲存裝置及其編程方法
US9490024B1 (en) Solid state storage device and reading control method thereof
US20120195118A1 (en) Semiconductor memory apparatus, data programming method thereof, and memory system including the same
TWI533303B (zh) Nonvolatile memory and memory systems
US9378829B2 (en) Non-volatile memory device with an EPLI comparator
KR20120088137A (ko) 비휘발성 메모리 장치의 프로그래밍 방법
JP2013232272A5 (ko)
US20090106513A1 (en) Method for copying data in non-volatile memory system
JP2013232272A (ja) 誤り訂正符号を有する不揮発性メモリシステムの消去
US20100220525A1 (en) Non-volatile memory device and erase and read methods thereof
JP2013131095A (ja) メモリコントローラ、記憶装置およびメモリ制御方法

Legal Events

Date Code Title Description
WITN Withdrawal due to no request for examination