KR20110001090A - 불휘발성 메모리 장치 및 이것의 카피백 프로그램 방법 - Google Patents

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

Info

Publication number
KR20110001090A
KR20110001090A KR1020090058481A KR20090058481A KR20110001090A KR 20110001090 A KR20110001090 A KR 20110001090A KR 1020090058481 A KR1020090058481 A KR 1020090058481A KR 20090058481 A KR20090058481 A KR 20090058481A KR 20110001090 A KR20110001090 A KR 20110001090A
Authority
KR
South Korea
Prior art keywords
page
memory block
address
fail
copyback
Prior art date
Application number
KR1020090058481A
Other languages
English (en)
Other versions
KR101044533B1 (ko
Inventor
주병인
Original Assignee
주식회사 하이닉스반도체
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 주식회사 하이닉스반도체 filed Critical 주식회사 하이닉스반도체
Priority to KR1020090058481A priority Critical patent/KR101044533B1/ko
Priority to US12/826,545 priority patent/US20100332898A1/en
Publication of KR20110001090A publication Critical patent/KR20110001090A/ko
Application granted granted Critical
Publication of KR101044533B1 publication Critical patent/KR101044533B1/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/14Error detection or correction of the data by redundancy in operation
    • G06F11/1402Saving, restoring, recovering or retrying
    • G06F11/1415Saving, restoring, recovering or retrying at system level
    • G06F11/1433Saving, restoring, recovering or retrying at system level during software upgrading
    • 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/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
    • G11C16/12Programming voltage switching 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/20Initialising; Data preset; Chip identification
    • 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

Landscapes

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

Abstract

본 발명은 불휘발성 메모리 장치 및 이것의 카피백 프로그램 방법에 관한 것으로, 다수의 페이지를 포함하는 다수의 메모리 블럭과, 상기 다수의 메모리 블럭에 각각 대응하여 카피백 데이터를 전송하는 다수의 페이지 버퍼와, 상기 카피백 데이터를 상기 다수의 페이지 버퍼 중 선택된 페이지 버퍼에 전송하는 컨트롤러, 및 카피백 프로그램 동작시 상기 다수의 페이지 중 페일이 발생한 페일 페이지의 어드레스를 저장하는 레지스터를 포함하는 불휘발성 메모리 장치 및 이것의 카피백 프로그램 방법을 개시한다.
카피백, 어드레스, 블럭, 레지스터

Description

불휘발성 메모리 장치 및 이것의 카피백 프로그램 방법{non volatile memory device and method copyback programming thereof}
본 발명은 불휘발성 메모리 장치 및 이것의 카피백 프로그램 방법에 관한 것으로, 유저의 제어 없이 내부에서 자동 순차적으로 카피백 프로그램을 실행하는 불휘발성 메모리 장치 및 이것의 카피백 프로그램 방법에 관한 것이다.
최근 들어 전기적으로 프로그램(program)과 소거(erase)가 가능하고, 일정 주기로 데이터를 재작성해야하는 리프레시(refresh) 기능이 필요 없는 불휘발성 메모리 장치에 대한 수요가 증가하고 있다.
불휘발성 메모리는 복수의 메모리 셀들이 하나의 스트링을 이루고, 복수의 스트링들은 다시 하나의 메모리 셀 어레이를 이룬다. 종래의 메모리 셀의 구동 방식을 보면, 어느 레벨의 문턱전압을 기준으로 하여 프로그램 및 소거 영역을 정의하는 두 가지 상태의 문턱전압 레벨에 따라 동작을 하였다.
예를 들어, 0V를 기준 전압으로 한다면 0V를 기준으로 양쪽에 하나씩, 즉, 두 가지 상태의 문턱전압 레벨에 의해 프로그램 및 소거 동작을 수행하게 되는데 이를 싱글 레벨 셀(SLC)이라 한다. 이러한 싱글 레벨 셀(SLC)은 기준전압을 기준으로 하여 두 가지의 상태만을 판단하게 되므로 데이터 저장 능력의 정확성이 뛰어나다. 하지만 싱글 레벨 셀(SLC)은 대용량의 데이터를 처리하기에 많은 제약이 따른다.
이를 개선하기 위하여 멀티 레벨 셀(MLC) 방식이 도입되었다. 멀티 레벨 셀은, 물리적으로는 싱글 레벨 셀(SLC)과 같은 구조를 이룬다. 하지만, 논리적인 측면에서는 적어도 네 가지 레벨의 문턱전압 레벨을 가지게 된다. 즉, 기준전압을 기준으로 하여 프로그램 영역과 소거 영역이 나뉘지만, 프로그램 영역에 적어도 세 가지의 다른 문턱 전압 레벨 범위가 정의된다. 따라서, 싱글 레벨 셀(SLC)과 동일한 물리적 구조를 가지고, 적어도 네 가지 데이터 상태를 구동할 수 있으므로 데이터의 처리량이 많아지게 되었다. 즉, 멀티 레벨 셀 방식의 불휘발성 메모리 장치는 2 개의 데이터를 1 개의 메모리 셀에 저장하는 방식을 지원하며, 이에 따른 메모리 셀의 문턱전압 분포 및 바이어스 상태(bias condition) 등에 의한 구동 방식은 싱글 레벨 셀 방식의 불휘발성 메모리 장치의 구동 방식에 비하여 복잡한 방식을 가진다.
이와 같은 불휘발성 메모리 장치의 프로그램 방법 중에 카피백 프로그램 방법이 널리 사용되고 있다. 이는 메모리 셀 어레이 중 특정 페이지에 저장된 데이터를 페이지 단위로 독출하여 페이지 버퍼에 저장하고, 다시 페이지 버퍼에 저장된 데이터를 다른 페이지에 프로그램하는 동작이다. 즉, 특정한 상황에서 외부 데이터 입출력 핀으로 데이터를 출력하는 과정 없이 내부동작으로 한 페이지 간에 데이터를 이동시킨다는 특징을 갖는다. 만약, 카피백 동작을 위한 알고리즘이 없다면 데이터를 페이지 버퍼로 센싱한 후 칩(chip) 외부로 데이터를 다시 읽어서 저장한 후에 또다시 메모리 셀에 저장하는 방법이 필요하다. 또는, 칩 내부에 페이지 버퍼 이외에 잉여의 저장소가 없으면 칩 외부로 데이터를 읽어서 저장해야 하는 번거로움이 따른다.
그러나 종래 기술에 따른 불휘발성 메모리 장치의 카피백 프로그램 방법은 노멀 프로그램 동작시 문제가 발생하였을 경우, 사용자의 명령에 의해 상태 체크 페일 검사(status fail)를 실시하여 페일을 확인하고, 페일이 발생한 블럭에 프로그램된 모든 데이터들을 다른 블럭으로 이동시키기 위하여 카피백 독출 및 카피백 프로그램 명령을 새로 입력하여야 한다.
본 발명이 이루고자 하는 기술적 과제는 프로그램 동작시 선택된 메모리 블럭에 문제가 발생할 경우, 프로그램 상태 체크 페일 검사(status fail), 카피백 독출 동작, 및 카피백 프로그램 동작을 불휘발성 메모리 장치 내부에서 자동 순차적으로 실행할 수 있는 불휘발성 메모리 장치 및 이의 카피백 프로그램 방법을 제공하는 데 있다.
본 발명의 일실시 예에 따른 불휘발성 메모리 장치는 다수의 페이지를 포함하는 다수의 메모리 블럭과, 상기 다수의 메모리 블럭에 각각 대응하여 카피백 데이터를 전송하는 다수의 페이지 버퍼와, 상기 카피백 데이터를 상기 다수의 페이지 버퍼 중 선택된 페이지 버퍼에 전송하는 컨트롤러, 및 카피백 프로그램 동작시 상기 다수의 페이지 중 페일이 발생한 페일 페이지의 어드레스를 저장하는 레지스터를 포함한다.
상기 컨트롤러는 상기 카피백 프로그램 동작시 상기 다수의 메모리 블럭 중 상기 페일이 발생한 상기 페일 페이지를 포함하는 페일 메모리 블럭에 저장된 카피백 데이터를 전송받고, 상기 카피백 데이터를 상기 다수의 메모리 블럭 중 상기 페일 메모리 블럭보다 어드레스가 큰 새로운 메모리 블럭에 대응하는 페이지 버퍼로 전송한다.
본 발명의 일실시 예에 따른 불휘발성 메모리 장치의 카피백 프로그램 방법은 노멀 프로그램 동작시 다수의 메모리 블럭 중 페일이 발생한 메모리 블럭의 페일 페이지 어드레스를 레지스터에 저장하는 단계와, 상기 노멀 프로그램 동작시 저장된 페이지 어드레스를 제1 페이지 어드레스로 초기화시키는 단계와, 상기 페일이 발생한 메모리 블럭의 상기 제1 페이지 어드레스를 선택 어드레스로 하여 해당하는 페이지에 프로그램된 카피백 데이터를 독출하는 단계와, 상기 페일이 발생한 메모리 블럭 외의 정상 메모리 블럭의 상기 제1 페이지 어드레스에 해당하는 페이지에 상기 카피백 데이터를 프로그램하는 단계와, 상기 제1 페이지 어드레스를 증가시켜 상기 제2 페이지 어드레스를 설정하는 단계와, 상기 제2 페이지 어드레스와 상기 페일 페이지 어드레스를 비교하는 단계와, 상기 제2 페이지 어드레스와 상기 페일 페이지 어드레스가 서로 다를 경우 상기 제2 페이지 어드레스를 상기 선택 어드레스로 설정하여 상기 카피백 데이터를 독출하는 단계부터 재실시하는 단계와, 상기 제2 페이지 어드레스와 상기 페일 페이지 어드레스가 서로 동일할 경우 카피백 프로그램 동작을 종료하는 단계를 포함한다.
상기 페일 페이지 어드레스를 저장한 후, 상기 페일이 발생한 메모리 블럭이 상기 다수의 메모리 블럭 중 마지막 메모리 블럭일 경우 프로그램 에러로 판단하여 프로그램 동작을 종료한다.
상기 정상 메모리 블럭은 상기 페일이 발생한 메모리 블럭의 어드레스를 1증가시켜 선택한다.
상기 카피백 데이터를 프로그램하는 단계 이후에, 상기 정상 메모리 블럭의 상태 체크 동작을 실시하고, 상기 상태 체크 동작시 페일로 판단될 경우 카피백 프로그램 동작을 종료하는 단계를 포함한다.
상기 카피백 프로그램 동작은 외부 명령 없이 내부 알고리즘에 의해 자동적으로 실시한다.
본 발명의 일실시 예에 따르면, 프로그램 동작시 선택된 메모리 블럭에 문제가 발생할 경우, 프로그램 상태 체크 페일 검사(status fail), 카피백 독출 동작, 및 카피백 프로그램 동작을 불휘발성 메모리 장치 내부에서 자동 순차적으로 실행함으로써, 사용자의 편의성을 개선할 수 있다.
이하, 첨부된 도면들을 참조하여 본 발명의 일 실시예를 보다 상세히 설명한다. 그러나, 본 발명의 실시예는 여러 가지 다른 형태로 변형될 수 있으며, 본 발명의 범위가 아래에서 상술하는 실시예로 인해 한정되어지는 것으로 해석되어져서는 안되며, 당업계에서 보편적인 지식을 가진 자에게 본 발명을 보다 완전하게 설명하기 위해서 제공되어지는 것으로 해석되는 것이 바람직하다.
도 1은 본 발명의 일실시 예에 따른 불휘발성 메모리 장치의 구성을 나타내 는 구성도이다.
도 1을 참조하면, 불휘발성 메모리 장치는 다수의 페이지(Page<n:0>)를 각각 포함하는 다수의 메모리 블럭(BL0 내지 BLk), 다수의 메모리 블럭(BL0 내지 BLk)에 각각 대응하는 다수의 페이지 버퍼(PB0 내지 PBk), 다수의 페이지 버퍼(PB0 내지 PBk)를 제어하는 컨트롤러(100), 및 카피백 프로그램의 어드레스를 저장하는 레지스터(200)를 포함한다.
다수의 메모리 블럭(BL0 내지 BLk)은 각각 동일하게 구성되며, 각 메모리 블럭(BL0 내지 BLk)은 다수의 메모리 셀들을 포함한다. 다수의 메모리 셀들은 복수개의 메모리 셀들로 구성된 페이지 단위로 구분된다. 불휘발성 메모리 장치는 프로그램 동작시 페이지 단위로 프로그램하고, 독출 동작시 페이지 단위로 독출한다.
다수의 메모리 블럭(BL0 내지 BLk)에 각각 대응하는 다수의 페이지 버퍼(PB0 내지 PBk)는 대응하는 메모리 블럭에 프로그램 데이터를 전송하여 프로그램 동작을 수행한다. 또한 페이지 버퍼는 대응하는 메모리 블럭을 센싱하여 독출 데이터 및 카피백 데이터를 독출한다.
컨트롤러(100)는 프로그램 동작시 다수의 페이지 버퍼(PB0 내지 PBk)에 프로그램 데이터를 전송하고, 독출 동작시 다수의 페이지 버퍼(PB0 내지 PBk)에 의해 센싱된 독출 데이터를 전송받는다. 또한 카피백 동작시 선택된 메모리 블럭에서 센싱된 카피백 데이터를 임시 저장한 후, 다른 메모리 블럭으로 전송한다.
레지스터(200)는 카피백 프로그램 동작시, 선택된 메모리 블럭의 페이지 어드레스를 저장한다.
도 2는 본 발명의 일실시 예에 따른 불휘발성 메모리 장치의 카피백 프로그램 동작을 설명하기 위한 순서도이다.
도 1 및 도 2를 참조하여 본 발명의 일실시 예에 따른 카피백 프로그램 동작을 설명하면 다음과 같다.
1) 프로그램 동작(C210)
외부에서 입력된 프로그램 데이터는 컨트롤러에 의해 다수의 페이지 버퍼(PB0 내지 PBk) 중 선택된 페이지 버퍼(예를 들어 PB0)에 입력된다. 페이지 버퍼(PB0)는 프로그램 데이터를 임시 저장한 후, 이를 대응하는 메모리 블럭(BL0)에 전송한다. 이때 메모리 블럭(BL0)의 다수의 페이지(Page<n:0>) 중 선택된 페이지(예를 들어 Page<n-2>)의 워드라인에 프로그램 전압을 인가하여 노멀 프로그램 동작을 실시한다.
2) 노멀 프로그램 동작의 상태 체크 동작(C220)
노멀 프로그램 동작 후, 프로그램 동작의 이상 유무를 확인하기 위하여 검증 동작을 실시한다. 즉, 선택된 페이지(Page<n-2>)의 검증 동작을 실시하여 프로그램 데이터와 검증 데이터를 비교하여 노멀 프로그램이 정상적으로 되었는지 판별한다. 이때 프로그램 데이터와 검증 데이터가 서로 다른 즉, 노멀 프로그램 동작이 실패한 경우 발생하는 페일 비트를 카운팅한다. 카운팅된 페일 비트수가 ECC 허용 비트수(error correction code)보다 클 경우 페일로 판단하고, 이보다 작을 경우 패스로 판단한다. 패스로 판단될 경우 프로그램 동작을 종료한다.
3) 페이지 어드레스 저장(C230)
상태 체크 동작(C220)시 페일로 판단된 경우, 노멀 프로그램 동작시 선택된 페이지(Page<n-2>)의 어드레스를 레지스터(200)에 저장한다.
4)블럭 어드레스값 체크(C240)
노멀 프로그램 동작을 실시한 선택된 메모리 블럭(BL0)의 어드레스 값을 체크한다. 즉, 선택된 메모리 블럭이 다수의 메모리 블럭(BL0 내지 BLk) 중 마지막 어드레스에 해당하는 메모리 블럭(BLk)인지를 판별한다.
5)프로그램 에러(C250)
블럭 어드레스값 체크(C240) 동작시 선택된 메모리 블럭이 마지막 메모리 블럭(BLk)일 경우, 카피백 데이터를 옮겨 프로그램할 수 있는 메모리 블럭이 없으므로 프로그램 에러로 판단한 후, 동작을 종료한다.
6) 페이지 어드레스 초기화(C260)
블럭 어드레스값 체크(C240) 동작시 선택된 메모리 블럭이 마지막 메모리 블럭(BLk)이 아닐 경우, 컨트롤러(100)에 저장된 페이지 어드레스(예를 들어 Page<n-2>)를 삭제하고 초기화시킨다. 즉 페이지 어드레스를 페이지(Page<0>)로 세팅한다.
7) 카피백 데이터 독출(C270)
선택된 메모리 블럭(BL0)에 저장된 프로그램 데이터를 페이지 버퍼(PB0)을 이용하여 독출한다. 독출된 데이터를 카피백 데이터로 하여 컨트롤러(100)에 저장한다.
8) 블럭 어드레스 증가(C280)
선택된 메모리 블럭(BL0)의 어드레스보다 어드레스가 1 증가한 메모리 블럭(BL1)의 어드레스를 저장한다.
9) 카피백 데이터 프로그램(C290)
컨트롤러(100)에 저장된 카피백 데이터를 메모리 블럭(BL1)에 대응하는 페이지 버퍼(PB1)로 전송하고 이를 초기화 시켜 선택한 페이지(Page<0>)에 프로그램한다.
10) 카피백 데이터 프로그램 상태 체크(C300)
카피백 데이터 프로그램 동작 후, 프로그램 동작의 이상 유무를 확인하기 위하여 검증 동작을 실시한다. 이때 프로그램된 데이터와 카피백 데이터가 서로 다른 즉, 카피백 데이터 프로그램이 실패한 경우 페일로 판단하고, 프로그램된 데이터와 카피백 데이터가 서로 동일할 경우 패스로 판단한다. 페일로 판단될 경우 선택된 메모리 블럭(BL0)과 카피백 프로그램 동작을 실시하는 메모리 블럭(BL1) 모두 페일이 발생한 경우 이므로 프로그램 동작을 종료한다.
11) 페이지 어드레스 및 블럭 어드레스 제어(C310)
카피백 데이터 프로그램 상태 체크(C300) 동작시 패스로 판단된 경우, 페이지 어드레스를 1 증가시켜 새로운 페이지 어드레스(Page<1>)를 저장한다. 이 후, 메모리 블럭 어드레스를 1 감소시킨다. 즉, 메모리 블럭(BL0)에 해당하는 메모리 블럭 어드레스를 저장한다.
12) 페이지 어드레스 체크(C320)
페이지 어드레스 및 블럭 어드레스 제어(C310) 단계에서 어드레스가 증가된 새로운 페이지 어드레스(Page<1>)가 페이지 어드레스 저장(C230)에서 저장한 페이지(Page<n-2>)의 어드레스와 동일한지 체크한다. 이때, 새로운 페이지 어드레스(Page<1>)가 페이지(Page<n-2>)와 동일하지 않다면, 카피백 데이터 독출(C270) 단계부터 재실시하는 것이 바람직하다.
이를 좀더 상세하게 설명하면, 페이지 어드레스를 1 증가시켜 메모리 블럭(BL0)의 페이지(Page<1>)의 카피백 데이터를 독출하고, 이를 다시 메모리 블럭(BL1)의 페이지(Page<1>)에 저장한다. 이 후, 카피백 데이터 프로그램 상태 체크(C300)을 실시한 후, 패스로 판단될 경우 페이지의 어드레스를 증가시켜 새로운 페이지 어드레스(Page<2>)로 저장한다.
상술한 동작을 반족하여 새로운 페이지 어드레스가 레지스터에 저장된 페이지(Page<n-2>)와 동일하게 될 때까지 반복 실시한다. 즉, 노멀 프로그램 동작시 문제가 발생한 페이지(Page<n-2>)보다 먼저 프로그램 동작이 실시된 페이지(Page<0:n-3>)에 해당하는 카피백 데이터를 새로운 메모리 블럭(BL1>)의 페이지(Page<0:n-3>)에 카피백 데이터 프로그램 동작을 실시한다.
상술한 카피백 프로그램 동작은 종래 기술과 다르게 외부(사용자)의 명령 입력 없이 메모리 장치의 내부 알고리즘에 의해 자동 순차적으로 진행되는 것이 바람직하다.
본 발명은 상기에서 서술한 실시예에 한정되는 것이 아니라 서로 다른 다양한 형태로 구현될 수 있으며, 상기의 실시예는 본 발명의 개시가 완전하도록 하며 통상의 지식을 가진 자에게 발명의 범주를 완전하게 알려주기 위해 제공되는 것이다. 따라서, 본 발명의 범위는 본원의 특허 청구 범위에 의해서 이해되어야 한다.
도 1은 본 발명의 일실시 예에 따른 불휘발성 메모리 장치의 구성을 나타내는 구성도이다.
도 2는 본 발명의 일실시 예에 따른 불휘발성 메모리 장치의 카피백 프로그램 동작을 설명하기 위한 순서도이다.

Claims (14)

  1. 다수의 페이지를 포함하는 다수의 메모리 블럭;
    상기 다수의 메모리 블럭에 각각 대응하여 카피백 데이터를 전송하는 다수의 페이지 버퍼;
    상기 카피백 데이터를 상기 다수의 페이지 버퍼 중 선택된 페이지 버퍼에 전송하는 컨트롤러; 및
    카피백 프로그램 동작시 상기 다수의 페이지 중 페일이 발생한 페일 페이지의 어드레스를 저장하는 레지스터를 포함하는 불휘발성 메모리 장치.
  2. 제 1 항에 있어서,
    상기 컨트롤러는 상기 카피백 프로그램 동작시 상기 다수의 메모리 블럭 중 상기 페일이 발생한 상기 페일 페이지를 포함하는 페일 메모리 블럭에 저장된 카피백 데이터를 전송받고, 상기 카피백 데이터를 상기 다수의 메모리 블럭 중 상기 페일 메모리 블럭보다 어드레스가 큰 새로운 메모리 블럭에 대응하는 페이지 버퍼로 전송하는 불휘발성 메모리 장치.
  3. 노멀 프로그램 동작시 다수의 메모리 블럭 중 페일이 발생한 메모리 블럭의 페일 페이지 어드레스를 레지스터에 저장하는 단계;
    상기 노멀 프로그램 동작시 저장된 페이지 어드레스를 제1 페이지 어드레스로 초기화시키는 단계;
    상기 페일이 발생한 메모리 블럭의 상기 제1 페이지 어드레스를 선택 어드레스로 하여 해당하는 페이지에 프로그램된 카피백 데이터를 독출하는 단계;
    상기 페일이 발생한 메모리 블럭 외의 정상 메모리 블럭의 상기 제1 페이지 어드레스에 해당하는 페이지에 상기 카피백 데이터를 프로그램하는 단계;
    상기 제1 페이지 어드레스를 증가시켜 상기 제2 페이지 어드레스를 설정하는 단계;
    상기 제2 페이지 어드레스와 상기 페일 페이지 어드레스를 비교하는 단계;
    상기 제2 페이지 어드레스와 상기 페일 페이지 어드레스가 서로 다를 경우 상기 제2 페이지 어드레스를 상기 선택 어드레스로 설정하여 상기 카피백 데이터를 독출하는 단계부터 재실시하는 단계; 및
    상기 제2 페이지 어드레스와 상기 페일 페이지 어드레스가 서로 동일할 경우 카피백 프로그램 동작을 종료하는 단계를 포함하는 불휘발성 메모리 장치의 카피백 프로그램 방법.
  4. 제 3 항에 있어서,
    상기 페일 페이지 어드레스를 저장한 후, 상기 페일이 발생한 메모리 블럭이 상기 다수의 메모리 블럭 중 마지막 메모리 블럭일 경우 프로그램 에러로 판단하여 프로그램 동작을 종료하는 불휘발성 메모리 소자의 카피백 프로그램 방법.
  5. 제 3 항에 있어서,
    상기 정상 메모리 블럭은 상기 페일이 발생한 메모리 블럭의 어드레스를 1증가시켜 선택하는 불휘발성 메모리 소자의 카피백 프로그램 방법.
  6. 제 3 항에 있어서,
    상기 카피백 데이터를 프로그램하는 단계 이후에,
    상기 정상 메모리 블럭의 상태 체크 동작을 실시하고, 상기 상태 체크 동작시 페일로 판단될 경우 카피백 프로그램 동작을 종료하는 단계를 포함하는 불휘발성 메모리 소자의 카피백 프로그램 방법.
  7. 제 3 항에 있어서,
    상기 카피백 프로그램 동작은 외부 명령 없이 내부 알고리즘에 의해 자동적으로 실시되는 불휘발성 메모리 소자의 카피백 프로그램 방법.
  8. 노멀 프로그램 동작시 다수의 메모리 블럭 중 페일이 발생한 선택 메모리 블럭의 페일 페이지 어드레스를 레지스터에 저장하는 단계;
    상기 선택 메모리 블럭의 제1 페이지에 프로그램된 제1 카피백 데이터를 독출하여 상기 다수의 메모리 블럭 중 상기 선택 메모리 블럭을 제외한 타겟 메모리 블럭의 제1 페이지에 상기 제1 카피백 데이터를 프로그램하는 단계;
    상기 선택 메모리 블럭의 제2 페이지를 선택하고, 선택된 상기 제2 페이지의 어드레스와 상기 레지스터에 저장된 페일 페이지 어드레스를 비교하는 단계; 및
    선택된 상기 제2 페이지의 어드레스와 상기 레지스터에 저장된 페일 페이지 어드레스가 서로 동일할 경우 카피백 동작을 종료하는 불휘발성 메모리 장치의 카피백 프로그램 방법.
  9. 제 8 항에 있어서,
    상기 페일 페이지 어드레스를 레지스터에 저장하는 단계 이 후에,
    상기 노멀 프로그램 동작시 저장된 페이지 어드레스를 상기 제1 페이지 어드레스로 초기화시키는 단계를 더 포함하는 불휘발성 메모리 장치의 카피백 프로그램 방법.
  10. 제 8 항에 있어서,
    선택된 상기 제2 페이지의 어드레스와 상기 레지스터에 저장된 페일 페이지 어드레스가 서로 상이할 경우, 상기 선택 메모리 블럭의 상기 제2 페이지에 프로그램된 제2 카피백 데이터를 독출하여 상기 타겟 메모리 블럭의 제2 페이지에 상기 제2 카피백 데이터를 프로그램하는 단계; 및
    상기 선택 메모리 블럭의 제3 페이지를 선택하고, 선택된 상기 제3 페이지의 어드레스와 상기 레지스터에 저장된 페일 페이지 어드레스를 비교하는 단계하는 단계를 더 포함하는 불휘발성 메모리 장치의 카피백 프로그램 방법.
  11. 제 8 항에 있어서,
    상기 페일 페이지 어드레스를 저장한 후, 상기 페일이 발생한 메모리 블럭이 상기 다수의 메모리 블럭 중 마지막 메모리 블럭일 경우 프로그램 에러로 판단하여 프로그램 동작을 종료하는 불휘발성 메모리 소자의 카피백 프로그램 방법.
  12. 제 8 항에 있어서,
    상기 타겟 메모리 블럭은 상기 선택 메모리 블럭의 어드레스를 1증가시켜 선택하는 불휘발성 메모리 소자의 카피백 프로그램 방법.
  13. 제 8 항에 있어서,
    상기 제1 카피백 데이터를 프로그램하는 단계 이후에,
    상기 타겟 메모리 블럭의 상태 체크 동작을 실시하고, 상기 상태 체크 동작시 페일로 판단될 경우 카피백 프로그램 동작을 종료하는 단계를 포함하는 불휘발성 메모리 소자의 카피백 프로그램 방법.
  14. 제 8 항에 있어서,
    상기 카피백 프로그램 동작은 외부 명령 없이 내부 알고리즘에 의해 자동적으로 실시되는 불휘발성 메모리 소자의 카피백 프로그램 방법.
KR1020090058481A 2009-06-29 2009-06-29 불휘발성 메모리 장치 및 이것의 카피백 프로그램 방법 KR101044533B1 (ko)

Priority Applications (2)

Application Number Priority Date Filing Date Title
KR1020090058481A KR101044533B1 (ko) 2009-06-29 2009-06-29 불휘발성 메모리 장치 및 이것의 카피백 프로그램 방법
US12/826,545 US20100332898A1 (en) 2009-06-29 2010-06-29 Nonvolatile memory device and copyback program method thereof

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020090058481A KR101044533B1 (ko) 2009-06-29 2009-06-29 불휘발성 메모리 장치 및 이것의 카피백 프로그램 방법

Publications (2)

Publication Number Publication Date
KR20110001090A true KR20110001090A (ko) 2011-01-06
KR101044533B1 KR101044533B1 (ko) 2011-06-27

Family

ID=43382099

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020090058481A KR101044533B1 (ko) 2009-06-29 2009-06-29 불휘발성 메모리 장치 및 이것의 카피백 프로그램 방법

Country Status (2)

Country Link
US (1) US20100332898A1 (ko)
KR (1) KR101044533B1 (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20190128794A (ko) * 2018-05-09 2019-11-19 에스케이하이닉스 주식회사 메모리 시스템 및 메모리 시스템의 동작 방법

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR0172366B1 (ko) * 1995-11-10 1999-03-30 김광호 불휘발성 반도체 메모리 장치의 독출 및 프로그램 방법과 그 회로
KR100544175B1 (ko) * 1999-05-08 2006-01-23 삼성전자주식회사 링킹 타입 정보를 저장하는 기록 매체와 결함 영역 처리 방법
KR100437461B1 (ko) * 2002-01-12 2004-06-23 삼성전자주식회사 낸드 플래시 메모리 장치 및 그것의 소거, 프로그램,그리고 카피백 프로그램 방법
JP4563715B2 (ja) * 2003-04-29 2010-10-13 三星電子株式会社 パーシャルコピーバック動作モードを有するフラッシュメモリ装置
KR100572328B1 (ko) * 2004-07-16 2006-04-18 삼성전자주식회사 배드 블록 관리부를 포함하는 플래시 메모리 시스템
KR100837274B1 (ko) * 2006-08-28 2008-06-11 삼성전자주식회사 오토 멀티-페이지 카피백 기능을 갖는 플래시 메모리 장치및 그것의 블록 대체 방법
US7743303B2 (en) * 2007-01-22 2010-06-22 Micron Technology, Inc. Defective memory block remapping method and system, and memory device and processor-based system using same
KR100819102B1 (ko) * 2007-02-06 2008-04-03 삼성전자주식회사 개선된 멀티 페이지 프로그램 동작을 갖는 불휘발성 반도체메모리 장치
US8271515B2 (en) * 2008-01-29 2012-09-18 Cadence Design Systems, Inc. System and method for providing copyback data integrity in a non-volatile memory system

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20190128794A (ko) * 2018-05-09 2019-11-19 에스케이하이닉스 주식회사 메모리 시스템 및 메모리 시스템의 동작 방법

Also Published As

Publication number Publication date
US20100332898A1 (en) 2010-12-30
KR101044533B1 (ko) 2011-06-27

Similar Documents

Publication Publication Date Title
US20200363953A1 (en) Flash memory system
US7203874B2 (en) Error detection, documentation, and correction in a flash memory device
KR100996009B1 (ko) 불휘발성 메모리 소자 및 그 동작 방법
US7697359B2 (en) Flash memory device and refresh method thereof
US10163517B2 (en) Semiconductor memory device and memory system configured to perform tracking read on first memory cells followed by shift read on second memory cells using read voltage correction value determined during the tracking read
US8607120B2 (en) Semiconductor memory device for performing additional ECC correction according to cell pattern and electronic system including the same
US9001587B2 (en) Flash memory and reading method of flash memory
US20130185609A1 (en) Nonvolatile memory system
US10007465B2 (en) Remapping in a memory device
US7782667B2 (en) Method of operating a flash memory device
KR20100137128A (ko) 비휘발성 메모리 장치의 프로그램 방법, 비휘발성 메모리 장치 및 비휘발성 메모리 시스템
JP2009043397A (ja) Nandフラッシュメモリ装置及びそのプログラム方法
TW201931061A (zh) 記憶體系統及其操作方法
KR20090120685A (ko) 불휘발성 메모리 장치의 프로그램 검증 방법
US20170162267A1 (en) Data Storage Device and Data Maintenance Method
KR20100133615A (ko) 불휘발성 메모리 장치의 동작 방법
US11544008B2 (en) Temperature correction in memory sub-systems
US20130159798A1 (en) Non-volatile memory device and operating method thereof
JP2011204298A (ja) 不揮発性半導体メモリ
TWI648743B (zh) 半導體裝置及其操作方法
KR101044533B1 (ko) 불휘발성 메모리 장치 및 이것의 카피백 프로그램 방법
KR20100013962A (ko) 불휘발성 메모리 장치의 프로그램 방법
US10431322B1 (en) Memory system
US8923068B2 (en) Low margin read operation with CRC comparision
US20240265974A1 (en) Memory device, operating method of memory device, and memory system

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
LAPS Lapse due to unpaid annual fee