KR20090014036A - 읽기 디스터번스로 인한 에러를 방지하는 메모리 시스템 및그 방법 - Google Patents
읽기 디스터번스로 인한 에러를 방지하는 메모리 시스템 및그 방법 Download PDFInfo
- Publication number
- KR20090014036A KR20090014036A KR1020070078262A KR20070078262A KR20090014036A KR 20090014036 A KR20090014036 A KR 20090014036A KR 1020070078262 A KR1020070078262 A KR 1020070078262A KR 20070078262 A KR20070078262 A KR 20070078262A KR 20090014036 A KR20090014036 A KR 20090014036A
- Authority
- KR
- South Korea
- Prior art keywords
- memory
- main page
- page
- flash memory
- read
- Prior art date
Links
Images
Classifications
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C16/00—Erasable programmable read-only memories
- G11C16/02—Erasable programmable read-only memories electrically programmable
- G11C16/06—Auxiliary circuits, e.g. for writing into memory
- G11C16/26—Sensing or reading circuits; Data output circuits
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C16/00—Erasable programmable read-only memories
- G11C16/02—Erasable programmable read-only memories electrically programmable
- G11C16/06—Auxiliary circuits, e.g. for writing into memory
- G11C16/34—Determination of programming status, e.g. threshold voltage, overprogramming or underprogramming, retention
- G11C16/349—Arrangements for evaluating degradation, retention or wearout, e.g. by counting erase cycles
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/14—Handling requests for interconnection or transfer
- G06F13/16—Handling requests for interconnection or transfer for access to memory bus
- G06F13/1668—Details of memory controller
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C16/00—Erasable programmable read-only memories
- G11C16/02—Erasable programmable read-only memories electrically programmable
- G11C16/04—Erasable programmable read-only memories electrically programmable using variable threshold transistors, e.g. FAMOS
- G11C16/0483—Erasable programmable read-only memories electrically programmable using variable threshold transistors, e.g. FAMOS comprising cells having several storage transistors connected in series
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C16/00—Erasable programmable read-only memories
- G11C16/02—Erasable programmable read-only memories electrically programmable
- G11C16/06—Auxiliary circuits, e.g. for writing into memory
- G11C16/34—Determination of programming status, e.g. threshold voltage, overprogramming or underprogramming, retention
- G11C16/3418—Disturbance prevention or evaluation; Refreshing of disturbed memory data
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C16/00—Erasable programmable read-only memories
- G11C16/02—Erasable programmable read-only memories electrically programmable
- G11C16/06—Auxiliary circuits, e.g. for writing into memory
- G11C16/34—Determination of programming status, e.g. threshold voltage, overprogramming or underprogramming, retention
- G11C16/3418—Disturbance prevention or evaluation; Refreshing of disturbed memory data
- G11C16/3431—Circuits or methods to detect disturbed nonvolatile memory cells, e.g. which still read as programmed but with threshold less than the program verify threshold or read as erased but with threshold greater than the erase verify threshold, and to reverse the disturbance via a refreshing programming or erasing step
Landscapes
- Engineering & Computer Science (AREA)
- Microelectronics & Electronic Packaging (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Techniques For Improving Reliability Of Storages (AREA)
- Read Only Memory (AREA)
Abstract
본 발명은 플래시 메모리를 포함하는 메모리 시스템의 독출 방법에 관한 것이다. 본 발명에 따른 메모리 시스템의 독출 방법은 플래시 메모리의 메인 페이지를 독출하고; 상기 메인 페이지의 독출 횟수를 카운트하고; 및 상기 카운트한 독출 횟수가 기준값보다 커지는 경우 상기 메인 페이지를 포함하는 블록의 데이터를 다른 블록에 카피백한다.
Description
본 발명은 메모리 시스템에 관한 것으로, 좀 더 구체적으로는 읽기 디스터번스로 인한 에러를 방지하는 메모리 시스템 및 그 방법에 관한 것이다.
에러 검출 및 정정 기술들은 다양한 원인들로 인해 손상되는 데이터의 효율적인 복구를 제공한다. 예를 들면, 메모리에 데이터를 저장하는 과정에서 다양한 원인들로 인해서 데이터가 손상될 수 있고, 소오스에서 목적지로 데이터가 전송되는 데이터 전송 채널의 불안(perturbations)에 의해서 데이터가 손상될 수 있다.
손상된 데이터를 검출하고 정정하기 위한 다양한 방법들이 제안되고 있다. 잘 알려진 에러 검출 기술들에는 RS 코드(Reed-Solomon code), 헤밍 코드(Hamming code), BCH(Bose-Chaudhuri-Hocquenghem) 코드, CRC(Cyclic Redundancy Code) 코드 등이 있다. 이러한 코드들을 이용하여 손상된 데이터를 검출하고 정정하는 것이 가능하다.
불휘발성 메모리 장치가 사용되는 대부분의 응용 분야에 있어서, 데이터는 오류정정코드(error correcting code: ECC)라 불리는 값 (이하, ECC 데이터라 칭 함)과 함께 플래시 메모리 장치에 저장된다. ECC 데이터는 플래시 메모리 장치의 읽기 동작시 발생하는 에러를 정정하기 위한 것이다. ECC 데이터를 이용하여 정정 가능한 비트 에러 수는 제한되어 있다. 읽기 동작시 생기는 비트 에러는 잘 알려진 블록 대체(block replacement)와 같은 별도의 구제 과정없이 에러 검출 및 정정 기술을 통해 정정될 수 있다.
도 1은 일반적인 플래시 메모리 장치를 보여주는 블록도이고, 도 2는 도 1에 도시된 플래시 메모리 장치의 읽기 동작을 설명하기 위한 타이밍도이다.
일반적으로 플래시 메모리 장치는 메모리 셀 어레이를 포함하며, 메모리 셀 어레이는 복수의 메모리 블록들을 갖는다. 도 1에는 단지 하나의 메모리 블록(BLK0)이 도시되어 있다. 메모리 블록(BLK0)은 비트 라인들에 각각 연결된 스트링들(또는 낸드 스트링이라 불림)을 갖는다. 각 스트링은 스트링 선택 트랜지스터(SST), 접지 선택 트랜지스터(GST), 그리고 선택 트랜지스터들(SST, GST) 사이에 직렬 연결된 메모리 셀들(또는 메모리 셀 트랜지스터들)(MC0∼MCn-1)을 포함한다.
선택 트랜지스터들(SST, GST)의 게이트들은 대응하는 스트링 및 접지 선택 라인들(SSL, GSL)에 각각 연결된다. 메모리 셀 트랜지스터들(MC0∼MCn-1)의 제어 게이트들은 대응하는 워드 라인들(WL0∼WLn-1)에 각각 연결된다. 비트 라인들(BL0, BL1)에는 대응하는 페이지 버퍼들(PB)이 각각 연결되어 있다.
읽기 동작시, 도 2에 도시된 바와 같이, 선택된 워드 라인(예를 들면, WL0)은 0V의 전압으로 구동되고, 비선택된 워드 라인들(예를 들면, WL1~WLn-1)은 읽기 전압(Vread)으로 각각 구동된다. 이때, 스트링 및 접지 선택 라인들(SSL, GSL)은 읽기 전압(Vread)으로 각각 구동된다. 페이지 버퍼들(PB)은 대응하는 비트 라인들(BL0, BL1)로 감지 전류를 공급한다.
비트 라인들(BL0∼BLm-1)의 전압들은 선택된 워드 라인에 연결된 메모리 셀의 셀 상태들에 따라 결정된다. 예를 들면, 선택된 워드 라인에 연결된 메모리 셀이 온 셀인 경우, 비트 라인의 전압은 접지 전압으로 낮아진다. 이에 반해서, 선택된 워드 라인에 연결된 메모리 셀이 오프 셀인 경우, 비트 라인의 전압은 전원 전압으로 높아진다. 이후, 비트 라인들의 전압들이 셀 데이터로서 대응하는 페이지 버퍼들(PB)에 의해서 감지된다.
설명의 편의상, 비선택된 워드 라인에 연결된 메모리 셀은 비선택된 메모리 셀이라 칭하고, 선택된 워드 라인에 연결된 메모리 셀은 선택된 메모리 셀이라 칭한다.
앞서 언급된 바와 같이, 선택된 메모리 셀로부터 셀 데이터를 읽기 위해서는 비선택된 메모리 셀들의 워드 라인들에는 읽기 전압(Vread)이 인가된다. 여기서, 읽기 전압(Vread)은 오프 상태를 갖는 메모리 셀 트랜지스터를 턴 온시키기에 충분히 높은 전압이다.
읽기 동작 동안, 비선택된 메모리 셀 트랜지스터의 제어 게이트에는 읽기 전압(Vread)이 인가된다. 비선택된 메모리 셀 트랜지스터의 기판(또는 벌크)에는 접지 전압이 인가된다. 그리고 비선택된 메모리 셀 트랜지스터의 드레인에는 소정의 전압이 인가된다. 이러한 바이어스 조건은 레벨 차이를 제외하면 프로그램 동작의 바이어스 조건과 유사하다.
이러한 바이어스 조건 하에서, 도 3에 도시된 바와 같이, 읽기 동작 동안 기판에서 비선택된 메모리 셀 트랜지스터의 플로팅 게이트로 전자들이 주입될 수 있다. 즉, 온 상태(또는 소거 상태)를 갖는 비선택된 메모리 셀 트랜지스터가 읽기 동작의 바이어스 조건 하에서 소프트 프로그램되며, 이러한 현상은, 일반적으로, "읽기 디스터번스(read disturbance)"라 불린다.
읽기 디스터번스로 인해서 온 상태(또는 소거 상태)를 갖는 메모리 셀의 문턱 전압이 점차 증가할 수 있다. 도 4의 점선으로 표시된 바와 같이, 온 상태를 갖는 메모리 셀의 문턱 전압은 읽기 동작의 반복에 따라 더욱 증가한다. 이는 온 상태를 갖는 메모리 셀이 오프 셀로 판별되게 한다. 즉, 읽기 디스터번스로 인한 문턱 전압 증가는 읽기 폐일(fail)을 야기할 수 있다.
앞서 언급된 바와 같이, 읽기 동작시 생기는 비트 에러는 잘 알려진 블록 대체와 같은 별도의 구제 과정없이 에러 검출 및 정정 기술을 통해 정정될 수 있다. 읽기 동작이 반복적으로 수행됨에 따라, 읽기 페일이 발생할 확률은, 도 5에 도시된 바와 같이, 점차 증가한다. 에러가 정정된 데이터에 있어서, 다음의 읽기 동작시 추가로 에러가 발생할 확률이 높다.
비트 에러 수가 허용되는 수를 초과하는 경우, 해당 블록은 배드 블록(bad block)으로 처리된다. 그리고 블록 대체 방식으로 알려진 별도의 구제 방식을 통해, 읽혀진 데이터를 포함하는 메모리 블록은 플래시 메모리 장치에 제공되는 여분의 메모리 블록(reserved memory block)으로 대체된다. 여기에서, 배드 블록은 프로그램 및 소거 동작의 반복에 의해 웨어 아웃(wear out)된 것이 아니라, 읽기 디 스터번스에 의한 것이다. 따라서 배드 블록을 소거하고 재활용하면, 배드 블록을 정상적으로 다시 사용할 수 있다.
앞에서 언급한 읽기 디스터번스로 인하여, 블록 내에서 특정한 몇 개의 페이지만을 반복적으로 읽는 경우에는 나머지 페이지의 데이터가 손상되는 문제가 발생된다.
예를 들면, MP3 플레이어를 통해 특정 페이지에 저장된 음악 파일만을 반복적으로 읽는 경우에, 선택되지 않은 나머지 페이지에는 계속적으로 읽기 전압(Vread)이 인가됨으로 인해 읽기 디스터번스 현상이 발생할 수 있다. 그렇지만, 선택된 특정 페이지에서는 읽기 디스터번스 현상이 발생하지 않기 때문에, 선택되지 않은 나머지 페이지에서 발생한 비트 에러가 너무 많아지면 정정하지 못하게 된다.
본 발명은 상술한 기술적 과제를 해결하기 위해 제안된 것으로, 본 발명의 목적은 특정 페이지를 반복해서 읽는 경우에 읽기 디스터번스로 인해 발생하는 비트 에러를 방지하는 메모리 시스템 및 그것의 독출 방법을 제공하는 데 있다.
본 발명에 따른 메모리 시스템의 독출 방법은 상기 플래시 메모리의 메인 페이지를 독출하고; 상기 메인 페이지의 독출 횟수를 증가시키고; 및 상기 독출 횟수가 기준값보다 큰 경우 상기 메인 페이지를 포함하는 블록의 데이터를 다른 블록에 카피백한다.
본 발명에 의하면, 플래시 메모리의 특정 페이지를 반복해서 읽는 경우에, 읽기 디스터번스로 인해 발생하는 에러를 방지하는 효과가 있다.
본 발명은 플래시 메모리를 포함하는 메모리 시스템의 독출 방법에 관한 것이다. 메모리 시스템의 독출 방법은 메모리 시스템의 독출 방법은 상기 플래시 메모리의 메인 페이지를 독출하고; 상기 메인 페이지의 독출 횟수를 증가시키고; 및 상기 독출 횟수가 기준값보다 큰 경우 상기 메인 페이지를 포함하는 블록의 데이터를 다른 블록에 카피백한다.
실시 예로서, 상기 메인 페이지는 상기 블럭 내의 임의의 페이지인 것을 특 징으로 한다.
실시 예로서, 상기 기준값은 사용자에 의하여 설정되는 것을 특징으로 한다.
실시 예로서, 상기 플래시 메모리는 상기 독출 횟수를 저장하는 저장 유닛을 포함하는 것을 특징으로 한다.
실시 예로서, 상기 플래시 메모리를 제어하는 메모리 컨트롤러는 상기 독출 횟수를 저장하는 저장 유닛을 포함하는 것을 특징으로 한다.
실시 예로서, 상기 메모리 컨트롤러 내의 버퍼 메모리는 상기 독출 횟수를 저장하는 저장 유닛을 포함하는 것을 특징으로 한다.
실시 예로서, 상기 카피백 동작은 파워 온(power on) 시에 수행된다.
실시 예로서, 상기 카피백 동작을 완료한 후, 상기 메인 페이지의 독출 횟수를 리셋하는 것을 더 포함한다.
(실시예)
본 발명에 따른 메모리 시스템 및 그것의 독출 방법은 메인 페이지에 대한 반복적인 읽기 동작으로 인해 다른 페이지에서 발생하는 비트 에러에 의한 독출 에러를 방지하기 위한 것이다.
메인 페이지에 읽기 전압이 인가되기 때문에, 다른 페이지와 마찬가지로 메인 페이지도 읽기 디스터번스로 인한 영향을 받게 된다. 따라서, 본 발명에 따른 플래시 메모리 독출 방법은 메인 페이지에 대한 독출 횟수가 기준값 이상이면 메인 페이지를 포함하는 블럭내의 데이터들을 다른 블럭으로 카피백한다.
이하, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자가 본 발명의 기술적 사상을 용이하게 실시할 수 있도록 본 발명의 실시예를 첨부된 도면을 참조하여 설명한다.
도 6은 본 발명에 따른 메모리 시스템을 보여주는 블록도이다. 도 6을 참조하면, 본 발명에 따른 메모리 시스템(100)은 호스트(110), 메모리 컨트롤러(120), 그리고 플래시 메모리(130)를 포함한다.
도 6에서, 메모리 컨트롤러(120) 및 플래시 메모리(130)는 하나의 저장 장치 내에 포함될 수 있다. 이러한 저장 장치에는 USB 메모리 및 메모리 카드(MMC(Multi_Media Card), SD 카드, xD 카드, CF 카드, SIM 카드 등) 등과 같은 이동식 저장 장치도 포함된다. 또한, 이러한 저장 장치는 컴퓨터, 노트북, 디지털 카메라, 휴대폰, MP3 플레이어, PMP(Portable Multimedia Player), 게임기 등과 같은 호스트(110)에 접속되어 사용된다.
본 발명에 따른 메모리 시스템(100)은 호스트(110)가 플래시 메모리(130)의 하나 또는 그 이상의 특정 페이지(이하에서는, 메인 페이지라고 한다.)만을 반복적으로 읽는 경우에, 나머지 페이지(이하에서는, 더미 페이지라고 한다.)에서 발생하는 비트 에러를 방지하기 위한 것이다.
본 발명에 따른 실시예에서 메인 페이지(page_K)와 메인 페이지(page_K)의 독출 동작에 의하여 비트 에러가 발생하는 더미 페이지(page_I)가 도시된다.
이러한 문제는 MP3 플레이어로 메인 페이지의 음악 파일을 반복해서 듣는 경우 또는 게임기를 사용하여 메인 페이지에 저장된 오락 프로그램을 반복해서 사용하는 경우에 주로 발생한다.
메모리 컨트롤러(120)는 호스트(110)의 요청에 따라, 플래시 메모리(130)의 메인 페이지(page_K)를 반복해서 읽는다.
이 경우, 메인 페이지(page_K)의 선택된 셀에는 0V가 인가되고, 나머지 선택되지 않은 셀에는 Vread 전압이 인가된다. 즉, 메인 페이지를 지속적으로 독출함으로 나머지 비선택된 셀들이 소프트 프로그램되는 현상이 발생된다.
소프트 프로그램에 의하여 비트 에러가 발생하면 ECC 회로(124)는 에러를 교정한다. 하지만, ECC 회로(124)의 ECC 알고리즘에 의하여 비트 에러가 교정되지 않는 경우, 본 발명에 따른 플래시 메모리 독출 방법은 비트 에러가 더 발생하기 이전에 소프트 프로그램이 발생한 블럭의 데이터를 다른 블럭으로 카피백(copyback)한다.
여기에서, 카피백이란 읽기 디스터번스 현상에 의해 손상된 페이지의 데이터를 복구하기 위하여, 손상된 페이지를 포함한 메모리 블록의 데이터를 다른 메모리 블록으로 복사하는 것이다.
즉, 본 발명에 따른 플래시 메모리 독출 방법은 메인 페이지에 대한 독출 횟수가 기준값 이상이면 메인 페이지를 포함하는 블럭내의 데이터들을 다른 블럭으로 카피백한다. 예를 들면, 기준값은 사용자(User)에 의하여 설정된다. 사용자는 기준값을 1000회로 설정한다. 메인 페이지에 대한 독출 횟수가 1000회 이상이 되는 경우 본 발명에 따른 플래시 메모리 독출 방법은 메인 페이지를 포함하는 블럭의 데이터를 다른 블럭으로 카피백한다.
도 6에서, 메인 페이지(page_K)와 더미 페이지(page_I)는 하나씩만 도시되어 있으나, 이보다 더 많은 수의 페이지들로 구성될 수도 있음은 자명하다.
도 6을 참조하면, 메모리 컨트롤러(120)는 호스트 인터페이스(121), 플래시 인터페이스(Flash Interface;122), 중앙처리장치(CPU;123), ECC 회로(Error Correction Code;124), ROM(125), 그리고 RAM(126)을 포함한다. 메모리 컨트롤러(120)는 호스트(110)로부터 메인 페이지(page_K)에 대한 읽기 요청을 입력받으면, 메인 페이지(page_K)를 선택하고, 메인 읽기 동작을 실행한다.
메모리 컨트롤러(120)는 메인 페이지(page_K)를 독출할 때마다 메인 페이지(page_K)에 대한 독출 횟수를 카운트한다. 카운트된 독출 횟수는 메모리 컨트롤러(120)의 제어에 응답하여 RAM(126)에 저장된다.
호스트 인터페이스(121)는 호스트(110)와 인터페이스하도록 구성되고, 플래시 인터페이스(122)는 플래시 메모리(130)와 인터페이스 하도록 구성된다. 중앙처리장치(123)는 호스트(110)의 요청에 응답하여 플래시 메모리(130)의 읽기 또는 쓰기 동작 등을 제어하도록 구성된다.
ECC 회로(124)는 플래시 메모리(130)로 전송되는 데이터(메인 데이터)를 이용하여 ECC 데이터를 생성한다. 그렇게 생성된 ECC 데이터는 플래시 메모리(130)의 스페어 영역(spare area)에 저장된다. ECC 회로(124)는 플래시 메모리(130)로부터 읽혀진 데이터의 에러를 검출한다. 만약 검출된 에러가 정정 범위 내이면, ECC 회로(124)는 검출된 에러를 정정한다. 한편, ECC 회로(124)는 메모리 시스템(100)에 따라, 플래시 메모리(130) 내에 위치할 수도 있고, 메모리 컨트롤러(120) 밖에 위치할 수도 있다.
ROM(125)은 부트 코드(Boot code) 등과 같은 데이터를 저장하며, RAM(126)은 버퍼 메모리로 사용된다. RAM(126)은 플래시 메모리(130)로부터 읽혀진 데이터 또는 호스트(110)로부터 제공되는 데이터를 임시 저장한다.
또한, RAM(126)은 플래시 변환 레이어(Flash Translation Layer; FTL)를 저장한다. 플래시 변환 레이어(FTL)는 중앙처리장치(123)에 의해 운용된다.
RAM(126)은 DRAM, SRAM 등으로 구현될 수 있다.
한편, RAM(126)은 읽기 에러 정보를 관리하는 데 필요한 테이블 정보를 저장할 수 있다. 이 테이블 정보는 메타(meta) 데이터로, 중앙처리장치(123) 제어 하에 플래시 메모리(130)의 메타 영역에 저장된다. 이 테이블 정보는 파워 온(Power On) 시에 메타 영역으로부터 RAM(126)으로 복사된다.
계속해서 도 6을 참조하면, 플래시 메모리(130)는 제1 블럭(Block1)과 제2 블럭(Block2)을 포함하는 셀 어레이, 카운트 리코더(133) 및 제어 유닛(134)을 포함한다. 카운트 리코더(Count Recoder;133)는 플래시 메모리(130)의 모든 블럭에 대한 모든 페이지의 독출 횟수를 저장한다. 제어 유닛(134)은 당업자에게 잘 알려진 바와 같이, 로우 디코더, 칼럼 디코더, 페이지 버퍼, 비트 라인 선택 회로, 그리고 데이터 버퍼 등을 포함한다.
셀 어레이는 복수의 메모리 블록으로 구성된다. 도 6에서, 복수의 메모리 블록에는 제1 블럭(Block1)과 제2 블럭(Block2)이 도시되어 있으나, 이보다 더 많은 수의 블록들로 구성될 수도 있음은 자명하다.
제1 블럭(Block1)과 제2 블럭(Block2)은 복수의 페이지(예를 들면, 32 pages, 64 pages)로 구성되며, 각각의 페이지는 하나의 워드 라인(WL)을 공유하는 복수의 메모리 셀(예를 들면, 512B, 2KB)로 구성된다. 낸드 플래시 메모리의 경우에, 소거 동작은 메모리 블록 단위로 수행되며, 읽기 및 쓰기 동작은 페이지 단위로 수행된다. 여기에서, 플래시 메모리(130)는 하나의 메모리 셀에 싱글 비트 데이터(single bit data)를 저장할 수도 있고, 멀티 비트 데이터(multi bit data)를 저장할 수도 있다.
메모리 시스템(100)의 전원이 오프(Off)되는 전에, 메모리 컨트롤러(120)는 램(126)에 저장된 메인 페이지(Page_K)의 독출 횟수를 플래시 메모리(130)의 카운트 리코더(133)에 저장한다.
메모리 시스템(100)의 전원이 온(On)되는 경우 메모리 컨트롤러(120)는 플래시 메모리(130)의 카운트 리코더(133)에 저장된 메인 페이지(Page_K)의 독출 횟수를 램(126)에 로딩한다.
도 7은 도 6에 도시된 메모리 시스템의 독출 방법의 실시 예를 보여주는 순서도이다. 도 6 및 도 7을 참조하면, 먼저, 메모리 시스템(100)의 전원이 온(On)되면, 메모리 컨트롤러(120)는 카운트 리코더(133)에 저장된 모든 블럭의 모든 페이지에 대한 독출 횟수에 관한 정보를 램(126)에 저장한다.
호스트(110)는 플래시 메모리의 메인 페이지(page_K)에 대한 읽기 요청을 한다. 메모리 컨트롤러(도 6 참조, 120)는 호스트의 읽기 요청에 응답하여, 메인 페이지(page_K)에 대한 독출 동작을 수행한다(1).
메모리 컨틀롤러(120)는 메인 페이지(page_K)를 독출할 때마다 메인 페이 지(page_K)에 대한 독출 횟수를 증가한다(2).
메모리 컨틀롤러(120)는 메인 페이지(page_K)의 독출 횟수와 기준값을 비교한다(3).
만약 메인 페이지(page_K)의 독출 횟수가 기준값보다 크다면, 메모리 컨트롤러(120)는 메인 페이지(page_K)를 포함하는 제1 블록(Block1)의 데이터를 제2 블록(Block2)로 카피백하고, 메인 페이지(page_K)의 독출 횟수를 리셋한다(4).
예를 들어, 도 6에 도시된 제1 블록(Block1)의 메인 페이지(page_K)에 손상이 발생한 경우에, 본 발명에 따른 플래시 메모리의 독출 방법은 제1 블록(Block1)의 데이터를 제2 블록(Block2)으로 복사하는 카피백 프로그램 동작을 수행한다.
메모리 시스템(100)의 전원이 온(On)되는 경우 메모리 컨트롤러(120)는 플래시 메모리(130)의 카운트 리코더(133)에 저장된 메인 페이지(Page_K)의 독출 횟수를 램(126)에 로딩한다.
본 발명에 의하면, 메인 페이지를 반복해서 읽는 경우에, 메인 페이지에는 0 V가 인가되고, 더미 페이지에는 읽기 전압(Vread)이 인가된다.
메인 페이지에 읽기 전압이 인가되기 때문에, 다른 페이지와 마찬가지로 메인 페이지도 읽기 디스터번스로 인한 영향을 받게 된다. 이러한 결과로 인해, 본 발명에 따른 플래시 메모리 독출 방법은 메인 페이지에 대한 독출 횟수가 기준값 이상이면 메인 페이지를 포함하는 블럭내의 데이터들을 다른 블럭으로 카피백한다.
따라서, 본 발명은 플래시 메모리의 특정 페이지를 반복해서 읽는 경우 읽기 디스터번스로 인해 발생하는 에러를 방지하는 효과가 있다.
이상에서와 같이 도면과 명세서에서 최적 실시예가 개시되었다. 여기서 특정한 용어들이 사용되었으나, 이는 단지 본 발명을 설명하기 위한 목적에서 사용된 것이지 의미한정이나 특허청구범위에 기재된 본 발명의 범위를 제한하기 위하여 사용된 것은 아니다. 그러므로 본 기술 분야의 통상의 지식을 가진 자라면 이로부터 다양한 변형 및 균등한 타 실시예가 가능하다는 점을 이해할 것이다. 따라서, 본 발명의 진정한 기술적 보호 범위는 첨부된 특허청구범위의 기술적 사상에 의해 정해져야 할 것이다.
도 1은 일반적인 플래시 메모리 장치를 보여주는 블록도.
도 2는 도 1에 도시된 플래시 메모리 장치의 읽기 동작을 설명하기 위한 타이밍도.
도 3은 읽기 디스터번스로 인한 소프트 프로그램 현상을 설명하기 위한 도면.
도 4는 온 셀 및 오프 셀에 대응하는 문턱 전압 분포들을 보여주는 도면.
도 5는 읽기 사이클과 읽기 페일 사이의 상관관계를 보여주는 그래프.
도 6은 본 발명에 따른 메모리 시스템을 보여주는 블록도.
도 7은 도 6에 도시된 메모리 시스템의 독출 방법의 실시 예를 보여주는 순서도.
* 도면의 주요 부분에 대한 부호 설명 *
100; 메모리 시스템 110; 호스트
120; 메모리 컨트롤러 121; 호스트 인터페이스
122; 플래시 인터페이스 123; 중앙처리장치
124; ECC 회로 125; ROM
126; RAM 131; 제1 블록
132; 제2 블록 133; 카운트 리코더
134; 제어 유닛
Claims (20)
- 플래시 메모리를 포함하는 메모리 시스템의 독출 방법에 있어서:상기 플래시 메모리의 메인 페이지를 독출하고;상기 메인 페이지의 독출 횟수를 증가시키고; 및상기 독출 횟수가 기준값보다 큰 경우 상기 메인 페이지를 포함하는 블록의 데이터를 다른 블록에 카피백하는 것을 특징으로 하는 독출 방법.
- 제 1 항에 있어서,상기 메인 페이지는 상기 블럭 내의 임의의 페이지인 것을 특징으로 하는 독출 방법.
- 제 1 항에 있어서,상기 기준값은 사용자에 의하여 설정되는 것을 특징으로 하는 독출 방법.
- 제 1 항에 있어서,상기 플래시 메모리는 상기 독출 횟수를 저장하는 저장 유닛을 포함하는 것을 특징으로 하는 독출 방법.
- 제 1 항에 있어서,상기 플래시 메모리를 제어하는 메모리 컨트롤러는 상기 독출 횟수를 저장하는 저장 유닛을 포함하는 것을 특징으로 하는 독출 방법.
- 제 5 항에 있어서,상기 메모리 컨트롤러 내의 버퍼 메모리는 상기 독출 횟수를 저장하는 저장 유닛을 포함하는 것을 특징으로 하는 독출 방법.
- 제 1 항에 있어서,상기 카피백 동작은 파워 온(power on) 시에 수행되는 독출 방법.
- 제 1 항에 있어서,상기 카피백 동작을 완료한 후, 상기 메인 페이지의 독출 횟수를 리셋하는 것을 더 포함하는 독출 방법.
- 복수의 페이지를 갖는 플래시 메모리; 및상기 플래시 메모리의 동작을 제어하기 위한 메모리 컨트롤러를 포함하되,상기 메모리 컨트롤러는,상기 플래시 메모리의 메인 페이지를 독출하고, 상기 메인 페이지의 독출 횟수를 증가시키고, 상기 독출 횟수가 기준값보다 큰 경우 상기 메인 페이지를 포함하는 블록의 데이터를 다른 블록에 카피백하는 것을 특징으로 하는 메모리 시스템.
- 제 9 항에 있어서,상기 메인 페이지는 상기 블럭 내의 임의의 페이지인 것을 특징으로 하는 메모리 시스템.
- 제 9 항에 있어서,상기 기준값은 사용자에 의하여 설정되는 것을 특징으로 하는 메모리 시스템.
- 제 9 항에 있어서,상기 플래시 메모리는 상기 독출 횟수를 저장하는 저장 유닛을 포함하는 것을 특징으로 하는 메모리 시스템.
- 제 9 항에 있어서,상기 플래시 메모리를 제어하는 메모리 컨트롤러는 상기 독출 횟수를 저장하는 저장 유닛을 포함하는 것을 특징으로 하는 메모리 시스템.
- 제 13 항에 있어서,상기 메모리 컨트롤러 내의 버퍼 메모리는 상기 독출 횟수를 저장하는 저장 유닛을 포함하는 것을 특징으로 하는 메모리 시스템.
- 제 9 항에 있어서,상기 메모리 컨트롤러는 파워 온(power on) 시에 카피백 동작을 실행하는 메모리 시스템.
- 제 9 항에 있어서,상기 메모리 컨트롤러는 상기 카피백 동작을 완료한 후, 상기 메인 페이지의 독출 횟수를 리셋하는 것을 특징으로 하는 메모리 시스템.
- 제 9 항에 있어서,상기 플래시 메모리 및 상기 메모리 컨트롤러는 메모리 카드로 구현되는 것을 특징으로 하는 메모리 시스템.
- 제 9 항에 있어서,상기 메모리는 램과 플래시 메모리를 포함하는 것을 특징으로 하는 메모리 장치.
- 제 18 항에 있어서,상기 메모리 컨트롤러는 전원이 오프되기 전에, 상기 램에 저장된 상기 메인 페이지의 독출 횟수를 상기 플래시 메모리에 저장하는 것을 특징으로 하는 메모리 장치.
- 제 18 항에 있어서,상기 메모리 컨트롤러는 전원이 온되는 경우, 상기 플래시 메모리에 저장된 상기 메인 페이지의 독출 횟수를 상기 램에 저장하는 것을 특징으로 하는 메모리 장치.
Priority Applications (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020070078262A KR20090014036A (ko) | 2007-08-03 | 2007-08-03 | 읽기 디스터번스로 인한 에러를 방지하는 메모리 시스템 및그 방법 |
US12/181,408 US7751238B2 (en) | 2007-08-03 | 2008-07-29 | Memory system protected from errors due to read disturbance and reading method thereof |
JP2008198333A JP5505922B2 (ja) | 2007-08-03 | 2008-07-31 | メモリシステム及びその読み出し方法 |
US12/791,077 US8125825B2 (en) | 2007-08-03 | 2010-06-01 | Memory system protected from errors due to read disturbance and reading method thereof |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020070078262A KR20090014036A (ko) | 2007-08-03 | 2007-08-03 | 읽기 디스터번스로 인한 에러를 방지하는 메모리 시스템 및그 방법 |
Publications (1)
Publication Number | Publication Date |
---|---|
KR20090014036A true KR20090014036A (ko) | 2009-02-06 |
Family
ID=40337962
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020070078262A KR20090014036A (ko) | 2007-08-03 | 2007-08-03 | 읽기 디스터번스로 인한 에러를 방지하는 메모리 시스템 및그 방법 |
Country Status (3)
Country | Link |
---|---|
US (2) | US7751238B2 (ko) |
JP (1) | JP5505922B2 (ko) |
KR (1) | KR20090014036A (ko) |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8656085B2 (en) | 2009-06-29 | 2014-02-18 | Samsung Electronics Co., Ltd. | Flash memory device and method for programming flash memory device |
KR101379883B1 (ko) * | 2012-11-06 | 2014-04-01 | 한국과학기술원 | 플래시 메모리의 소모 전력 감소 방법 및 그 장치 |
US9875035B2 (en) | 2016-02-15 | 2018-01-23 | SK Hynix Inc. | Memory system having a read and copy-back operation and method for the same |
US10388387B2 (en) | 2017-08-11 | 2019-08-20 | SK Hynix Inc. | Memory system and operating method of memory system |
US10671321B2 (en) | 2018-04-19 | 2020-06-02 | SK Hynix Inc. | Data storage device, operation method for preventing read disturbance thereof, and storage system using the same |
US10741254B2 (en) | 2018-10-17 | 2020-08-11 | SK Hynix Inc. | Memory system and operating method thereof |
Families Citing this family (35)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP4776307B2 (ja) * | 2005-08-31 | 2011-09-21 | 株式会社日立製作所 | ストレージシステム、データ転送方法及びプログラム |
US9471418B2 (en) * | 2007-06-19 | 2016-10-18 | Samsung Electronics Co., Ltd. | Memory system that detects bit errors due to read disturbance and methods thereof |
KR100882841B1 (ko) * | 2007-06-19 | 2009-02-10 | 삼성전자주식회사 | 읽기 디스터번스로 인한 비트 에러를 검출할 수 있는메모리 시스템 및 그것의 읽기 방법 |
KR20090014036A (ko) * | 2007-08-03 | 2009-02-06 | 삼성전자주식회사 | 읽기 디스터번스로 인한 에러를 방지하는 메모리 시스템 및그 방법 |
EP2077559B1 (en) * | 2007-12-27 | 2012-11-07 | Hagiwara Solutions Co., Ltd. | Refresh method of a flash memory |
US8031521B1 (en) * | 2008-05-20 | 2011-10-04 | Marvell International Ltd. | Reprogramming non-volatile memory devices for read disturbance mitigation |
JP4703753B2 (ja) * | 2009-09-30 | 2011-06-15 | 株式会社東芝 | 情報処理装置、半導体記憶装置、及びプログラム |
KR101658479B1 (ko) | 2010-02-09 | 2016-09-21 | 삼성전자주식회사 | 불휘발성 메모리 장치, 그것의 동작 방법, 그리고 그것을 포함하는 메모리 시스템 |
US9324440B2 (en) | 2010-02-09 | 2016-04-26 | Samsung Electronics Co., Ltd. | Nonvolatile memory devices, operating methods thereof and memory systems including the same |
KR101691092B1 (ko) | 2010-08-26 | 2016-12-30 | 삼성전자주식회사 | 불휘발성 메모리 장치, 그것의 동작 방법, 그리고 그것을 포함하는 메모리 시스템 |
US9378831B2 (en) | 2010-02-09 | 2016-06-28 | Samsung Electronics Co., Ltd. | Nonvolatile memory devices, operating methods thereof and memory systems including the same |
KR101691088B1 (ko) | 2010-02-17 | 2016-12-29 | 삼성전자주식회사 | 불휘발성 메모리 장치, 그것의 동작 방법, 그리고 그것을 포함하는 메모리 시스템 |
US8923060B2 (en) | 2010-02-17 | 2014-12-30 | Samsung Electronics Co., Ltd. | Nonvolatile memory devices and operating methods thereof |
US8908431B2 (en) | 2010-02-17 | 2014-12-09 | Samsung Electronics Co., Ltd. | Control method of nonvolatile memory device |
JP5788183B2 (ja) | 2010-02-17 | 2015-09-30 | 三星電子株式会社Samsung Electronics Co.,Ltd. | 不揮発性メモリ装置、それの動作方法、そしてそれを含むメモリシステム |
JP2011170956A (ja) | 2010-02-18 | 2011-09-01 | Samsung Electronics Co Ltd | 不揮発性メモリ装置およびそのプログラム方法と、それを含むメモリシステム |
US8792282B2 (en) | 2010-03-04 | 2014-07-29 | Samsung Electronics Co., Ltd. | Nonvolatile memory devices, memory systems and computing systems |
JP5523379B2 (ja) * | 2010-03-18 | 2014-06-18 | 京セラドキュメントソリューションズ株式会社 | 記憶制御装置、画像形成装置および記憶制御方法 |
CN103065678B (zh) * | 2011-10-21 | 2016-01-13 | 点序科技股份有限公司 | 闪速存储器装置及其数据储存方法 |
KR20130136343A (ko) * | 2012-06-04 | 2013-12-12 | 에스케이하이닉스 주식회사 | 반도체 장치 및 그 동작 방법 |
KR102025263B1 (ko) | 2012-10-05 | 2019-09-25 | 삼성전자주식회사 | 메모리 시스템 및 그것의 읽기 교정 방법 |
KR20140045168A (ko) | 2012-10-08 | 2014-04-16 | 삼성전자주식회사 | 불휘발성 메모리 장치, 메모리 시스템 및 불휘발성 메모리 장치의 동작방법 |
KR102025193B1 (ko) * | 2013-02-19 | 2019-09-25 | 삼성전자주식회사 | 메모리 컨트롤러 및 그것의 동작 방법, 메모리 컨트롤러를 포함하는 메모리 시스템 |
WO2014205600A1 (en) * | 2013-06-25 | 2014-12-31 | Micron Technology, Inc. | On demand block management |
KR102164630B1 (ko) | 2013-06-28 | 2020-10-12 | 삼성전자주식회사 | 메모리 컨트롤러 및 상기 메모리 컨트롤러의 동작 방법 |
TWI509624B (zh) * | 2013-07-01 | 2015-11-21 | Asolid Technology Co Ltd | 快閃記憶體裝置、記憶體控制器及快閃記憶體的控制方法 |
KR102242022B1 (ko) | 2013-09-16 | 2021-04-21 | 삼성전자주식회사 | 불휘발성 메모리 및 그것의 프로그램 방법 |
US9230689B2 (en) | 2014-03-17 | 2016-01-05 | Sandisk Technologies Inc. | Finding read disturbs on non-volatile memories |
KR102606490B1 (ko) | 2016-06-30 | 2023-11-30 | 삼성전자주식회사 | 불휘발성 메모리 장치 및 컨트롤러를 포함하는 스토리지 장치 |
US10204693B2 (en) * | 2016-12-31 | 2019-02-12 | Western Digital Technologies, Inc. | Retiring computer memory blocks |
JP6884675B2 (ja) * | 2017-09-20 | 2021-06-09 | 株式会社東芝 | ビデオサーバ、及び放送システム |
US10656995B2 (en) * | 2018-10-03 | 2020-05-19 | Micron Technology, Inc. | Copy-back operations in a memory device |
US10592351B1 (en) * | 2018-10-16 | 2020-03-17 | EMC IP Holding Company LLC | Data restore process using a probability distribution model for efficient caching of data |
US11287998B2 (en) * | 2019-08-02 | 2022-03-29 | Micron Technology, Inc. | Read count scaling factor for data integrity scan |
KR20210030599A (ko) * | 2019-09-10 | 2021-03-18 | 에스케이하이닉스 주식회사 | 데이터를 분산 리드할 수 있는 메모리 시스템 및 메모리 시스템의 동작방법 |
Family Cites Families (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8027194B2 (en) * | 1988-06-13 | 2011-09-27 | Samsung Electronics Co., Ltd. | Memory system and method of accessing a semiconductor memory device |
JPH06110793A (ja) * | 1992-09-30 | 1994-04-22 | Toshiba Corp | 不揮発性半導体記憶装置 |
JP3176019B2 (ja) * | 1995-04-05 | 2001-06-11 | 株式会社東芝 | 不揮発性半導体記憶部を含む記憶システム |
US7318117B2 (en) * | 2004-02-26 | 2008-01-08 | Super Talent Electronics, Inc. | Managing flash memory including recycling obsolete sectors |
JP2003007051A (ja) | 2001-06-27 | 2003-01-10 | Sanyo Electric Co Ltd | メモリおよびその動作方法 |
JP4113423B2 (ja) | 2002-12-04 | 2008-07-09 | シャープ株式会社 | 半導体記憶装置及びリファレンスセルの補正方法 |
JP2006113648A (ja) * | 2004-10-12 | 2006-04-27 | Hitachi Ltd | ディスクアレイ装置 |
US8010764B2 (en) * | 2005-07-07 | 2011-08-30 | International Business Machines Corporation | Method and system for decreasing power consumption in memory arrays having usage-driven power management |
JP2007048191A (ja) * | 2005-08-12 | 2007-02-22 | Renesas Technology Corp | メモリカード |
JP4776307B2 (ja) * | 2005-08-31 | 2011-09-21 | 株式会社日立製作所 | ストレージシステム、データ転送方法及びプログラム |
JP4597829B2 (ja) | 2005-09-27 | 2010-12-15 | パトレネラ キャピタル リミテッド, エルエルシー | メモリ |
US20070115960A1 (en) * | 2005-11-04 | 2007-05-24 | Mediatek Inc. | De-interleaver for data decoding |
TWI350448B (en) * | 2006-12-13 | 2011-10-11 | Compal Electronics Inc | Method for data preservation |
KR20090014036A (ko) * | 2007-08-03 | 2009-02-06 | 삼성전자주식회사 | 읽기 디스터번스로 인한 에러를 방지하는 메모리 시스템 및그 방법 |
-
2007
- 2007-08-03 KR KR1020070078262A patent/KR20090014036A/ko not_active Application Discontinuation
-
2008
- 2008-07-29 US US12/181,408 patent/US7751238B2/en active Active
- 2008-07-31 JP JP2008198333A patent/JP5505922B2/ja active Active
-
2010
- 2010-06-01 US US12/791,077 patent/US8125825B2/en active Active
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8656085B2 (en) | 2009-06-29 | 2014-02-18 | Samsung Electronics Co., Ltd. | Flash memory device and method for programming flash memory device |
KR101379883B1 (ko) * | 2012-11-06 | 2014-04-01 | 한국과학기술원 | 플래시 메모리의 소모 전력 감소 방법 및 그 장치 |
WO2014073747A1 (ko) * | 2012-11-06 | 2014-05-15 | 한국과학기술원 | 플래시 메모리의 소모 전력 감소 방법 및 그 장치 |
US9875035B2 (en) | 2016-02-15 | 2018-01-23 | SK Hynix Inc. | Memory system having a read and copy-back operation and method for the same |
US10388387B2 (en) | 2017-08-11 | 2019-08-20 | SK Hynix Inc. | Memory system and operating method of memory system |
US10671321B2 (en) | 2018-04-19 | 2020-06-02 | SK Hynix Inc. | Data storage device, operation method for preventing read disturbance thereof, and storage system using the same |
US10741254B2 (en) | 2018-10-17 | 2020-08-11 | SK Hynix Inc. | Memory system and operating method thereof |
Also Published As
Publication number | Publication date |
---|---|
US20100241796A1 (en) | 2010-09-23 |
JP2009037619A (ja) | 2009-02-19 |
US20090034328A1 (en) | 2009-02-05 |
US7751238B2 (en) | 2010-07-06 |
JP5505922B2 (ja) | 2014-05-28 |
US8125825B2 (en) | 2012-02-28 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR100882841B1 (ko) | 읽기 디스터번스로 인한 비트 에러를 검출할 수 있는메모리 시스템 및 그것의 읽기 방법 | |
JP5505922B2 (ja) | メモリシステム及びその読み出し方法 | |
US7924628B2 (en) | Operation of a non-volatile memory array | |
JP5138319B2 (ja) | メモリーシステム及び該動作方法。 | |
US9117530B2 (en) | Preserving data from adjacent word lines while programming binary non-volatile storage elements | |
KR101491829B1 (ko) | 읽기 디스터번스를 방지하는 메모리 장치 및 그 방법 | |
KR101944793B1 (ko) | 플래시 메모리를 포함하는 플래시 메모리 시스템 및 그것의 비정상 워드 라인 검출 방법 | |
US9471418B2 (en) | Memory system that detects bit errors due to read disturbance and methods thereof | |
US8607120B2 (en) | Semiconductor memory device for performing additional ECC correction according to cell pattern and electronic system including the same | |
KR20170111375A (ko) | 메모리 시스템 및 그의 동작 방법 | |
KR20150046549A (ko) | 데이터 저장 시스템 및 그것의 동작 방법 | |
US8760921B2 (en) | Storage device and control method of nonvolatile memory | |
US10395753B2 (en) | Semiconductor memory device and programming method thereof | |
US20130061113A1 (en) | Method of correcting errors and memory device using the same | |
US9152497B2 (en) | Data recovery from blocks with gate shorts | |
KR20170090177A (ko) | 메모리 시스템, 반도체 메모리 장치 및 그의 동작 방법 | |
US20160012916A1 (en) | Semiconductor memory device and memory system | |
CN110277132B (zh) | 存储器控制器、其操作方法以及包括其的存储装置 | |
US10084487B2 (en) | Apparatuses and methods for erasure-assisted ECC decoding | |
US11061615B2 (en) | Memory system, memory controller and operating method thereof | |
US11495319B2 (en) | Memory system, memory controller, and method for operating memory system performing integrity check operation on target code when voltage drop is detected | |
KR20100027787A (ko) | 불휘발성 메모리 장치의 동작 방법 | |
JP2015170381A (ja) | 半導体記憶装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A201 | Request for examination | ||
E902 | Notification of reason for refusal | ||
E601 | Decision to refuse application |