KR100984494B1 - 플래쉬 메모리에 저장된 데이터를 리프레싱하는 메모리관리방법 및 장치 - Google Patents
플래쉬 메모리에 저장된 데이터를 리프레싱하는 메모리관리방법 및 장치 Download PDFInfo
- Publication number
- KR100984494B1 KR100984494B1 KR1020067019873A KR20067019873A KR100984494B1 KR 100984494 B1 KR100984494 B1 KR 100984494B1 KR 1020067019873 A KR1020067019873 A KR 1020067019873A KR 20067019873 A KR20067019873 A KR 20067019873A KR 100984494 B1 KR100984494 B1 KR 100984494B1
- Authority
- KR
- South Korea
- Prior art keywords
- data
- cell
- memory
- storing
- predetermined
- 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/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/10—Programming or data input circuits
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C11/00—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor
- G11C11/21—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements
- G11C11/34—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices
- G11C11/40—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices using transistors
- G11C11/401—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices using transistors forming cells needing refreshing or charge regeneration, i.e. dynamic cells
- G11C11/406—Management or control of the refreshing or charge-regeneration cycles
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C11/00—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor
- G11C11/21—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements
- G11C11/34—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices
- G11C11/40—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices using transistors
- G11C11/401—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices using transistors forming cells needing refreshing or charge regeneration, i.e. dynamic cells
- G11C11/406—Management or control of the refreshing or charge-regeneration cycles
- G11C11/40622—Partial refresh of memory arrays
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C11/00—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor
- G11C11/56—Digital 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/5621—Digital 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/5628—Programming or writing circuits; Data input 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/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
-
- 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)
- Computer Hardware Design (AREA)
- Read Only Memory (AREA)
Abstract
데이터는 비휘발성 메모리의 하나이상의 셀에 저장되고, 소정 조건에 따라 리프레시된다. 데이터는 인-플레이스 또는 아웃-오브-플레이스에 리프레시된다. 조건은 데이터의 연렬과 관련되어 있다. 대안으로, 데이터는 주기적으로, 또는 시스템이 메모리 부팅을 행하거나 디스마운팅하는 경우, 또는 데이터의 유형에 따라 리프레시된다.
데이터, 메모리의 셀, 리프레시
Description
본 발명은 비휘발성 메모리의 관리에 관한 것으로, 더욱 상세히는 유한 데이터 보유 시간 기간을 갖는 플래쉬 메모리와 같은 메모리를 관리하는 방법에 관한 것이다.
도 1은 플래쉬 메모리와 같은 전기적으로 프로그램가능한 메모리(EPROM)의 셀에, 영비트 또는 일비트인 하나의 비트의 저장을 나타낸다. 사실적인 이유로, EPROM에 데이터를 저장하는 이 프로세스는 EPROM을 "프로그래밍"한다고 칭해진다. 상세히는, 도 1의 주체인 셀은 데이터의 한 비트를 저장하고, 따라서 흔히 싱글-레벨 셀(SLC)이라 불린다. 초기에, 셀은 일 비트를 표현하는 명목 스레시홀드 전압(V 1)을 갖는다. 예로서, 플래쉬 메모리 블록이 소거된 후, 모든 셀은 명목 스레시홀드 전압(V 1)을 갖는다. 셀의 초기화에서 피할 수 없는 부정확도로 인해, 실제 스레시홀드 전압은 분포 곡선(10)에 따라 명목 스레시홀드 전압 근방에 분포된다. 그후, 영 비트를 저장할 각각의 셀에, 셀의 실리콘 기판으로부터 셀의 산화물 층을 통하여 셀의 부동 게이트내로 전자를 주입하기 위해, 셀의 스레시홀드 전압이 영 비트를 나타내는 기준 전압(V 0)을 초과할 때 까지, 프로그래밍 전압 펄스의 트레인이 인가된다. 전자는 양자 역학 터널링 또는 핫 인젝션에 의해 산화물층을 통해 이동하기 때문에, 셀의 구조에서의 비균일성, 및 초기 스레시홀드 전압이 분포곡선(10)에 따라 분포됨으로 인해, 영 비트를 저장하는 셀의 스레시홀드 전압은 분포곡선(12)에 따라 V 0 이상으로 분포된다.
셀은 셀의 스레시홀드 전압을 분포곡선(10) 보다 높지만 V 0보다 낮은 기준 전압(V R)과 비교함에 의해 판독된다. 셀의 스레시홀드 전압이 V R보다 낮으면 셀의 콘텐츠는 일 비트로서 판독된다. 셀의 스레시홀드 전압이 V R 이거나 이보다 높으면 셀의 콘텐츠는 영 비트로서 판독된다.
시간이 지남에 따라, 영 비트를 저장하는 셀의 스레시홀드 전압은 하향으로 드리프팅하는 경향이 있다. 도 1에 도시된 바와 같이, 점선은 상당한 시간의 패시지가 영 비트를 저장하도록 프로그램된 셀의 스레시홀드 전압의 분포를 나타내는 분포곡선(14)이다. V 1, V R 및 V 0는 상기와 같은 스레시홀드 전압의 드리프트에도 불구하고 플래쉬 메모리의 신뢰성을 보존하기 위해 충분히 서로 멀리 떨어져 있도록선택된다.
플래쉬 메모리의 설계자들의 한 목표는 데이터 저장에 있어서 비트 당 코스트를 감소시키는 것이다. 이것은 두 방식으로 달성된다. 첫번째 방법은 여러 셀 을 동일한 반도체 영역내에 채워넣는 제조 공정을 이용하는 것이다. 두번째 방법은 셀 당 한비트 이상을 저장하는 멀티-레벨 셀(MLCs)이다. 코스트를 감소시키는 두 방법 모두 데이터의 보유 시간을 줄인다. 예로서, 멀티 비트는 n 비트를 저장하기 위해, SLC의 두 개의 전압 밴드(V R 보다 높거나 낮은) 대신에, 2n전압 밴드를 정의함에 의해, MLC내에 저장된다. MLC의 전압 밴드는 비교가능한 SLC의 전압 밴드 보다 좁기 때문에, 하나 이상의 영비트를 저장하도록 프로그램된 MLC의 스레시홀드 전압은 비교가능한 SLC의 전압 밴드가 V R 아래로 드리프트하는 것 보다 빨리 다음 밴드로 하향 드리프팅한다.
따라서 메모리의 데이터 보유 시간을 증가시키기 위해 플래쉬 메모리와 같은 비휘발성 메모리를 관리하는 방법을 갖는 것이 매우 유익하다는 것을 알 수 있다.
발명의 요약
본 발명에 따라, (a) 메모리의 적어도 하나의 셀을 저장하는 단계; (b) 소정 조건에 따라, 적어도 하나의 셀에 저장된 데이터를 리프레시하는 단계를 포함하는, 메모리 관리방법이 제공된다.
본 발명에 따라, (a) 적어도 하나의 셀; (b) (i)데이터를 적어도 하나의 셀에 저장하고, (ii) 소정 조건에 따라 데이터를 리프레시하도록, 동작하는 컨트롤러를 포함하는, 메모리 디바이스가 제공된다.
본 발명에 따라, (a) 적어도 하나의 셀을 포함하는 메모리 디바이스; (b) (i)데이터를 적어도 하나의 셀에 저장하고, (ii) 소정 조건에 따라 데이터를 리프레시하도록, 동작하는 컨트롤러를 포함하는, 데이터를 저장하기 위한 시스템이 제공된다.
본 명세서에서는 플래쉬 메모리에 대해 설명되어지만, 본 발명의 범위는 유한 데이터 보유 시간을 갖는 임의의 비휘발성 메모리를 포함한다. 본 발명의 개괄적 아이디어는 반-휘발성 메모리로서 메모리를 취급하는 것이다. 메모리의 셀에 저장된 데이터는 소정 조건에 따라 리프레시된다.
바람직하게는, 데이터의 저장은 저장 날짜에 유효하게 되고, 조건은 저장 날짜를 포함한다. 더욱 바람직하게는, 조건은 저장 날짜 이래로 소정 시간 간격이 경과한 것이라는 것이다. 가장 바람직하게는, 저장 날짜를 나타내는 타임스탬프가 기록되고 조건은 타임스탬프와 메모리를 포함하는 시스템의 클록과 비교함에 의해 테스트된다.
대안으로, 조건은 복수 개의 소정 리프레시 날짜중의 하나의 발생이다. 가장 바람직하게는, 균등하게 이격된 또는 단조 감소하는 시간간격으로 이격된 3개 이상의 리프레시 날짜가 있다.
대안으로, 조건은 메모리를 포함하는 시스템이 부팅되는 것이다.
대안으로, 조건은 메모리를 포함하는 시스템이 디스마운팅되는 것이다.
대안으로, 조건은 저장되는 데이터의 유형과 관련된다.
대안으로, 메모리의 상이한 파티션에 저장된 데이터는 상이한 각각의 리프레시 조건을 갖는다.
바람직하게, 데이터는 제위치(in-place)에 리프레시된다. 대안으로, 데이터는 제위치에서 벗어난 위치(out-of-place)에 리프레시된다.
본 발명의 메모리 디바이스는 적어도 하나의 메모리 셀과 적어도 하나의 메모리 셀에 데이터를 저장하고 소정 조건에 따라 데이터를 리프레시하는 컨트롤러를 포함한다.
본 발명의 데이터 저장 시스템은 적어도 하나의 메모리 셀을 갖춘 메모리 디바이스와 적어도 하나의 메모리 셀에 데이터를 저장하고 소정 조건에 따라 데이터를 리프레시하는 프로세서를 포함한다.
Conley에게 허여된 미국특허 제 6,763,424호에선, 데이터를 플래쉬 메모리의 페이지에 기입하고 또한 타임스탬프를 그 페이지에 기입한다. 그러나, Conley에게 허여된 상기 미국특허에서 타임스탬프를 사용하는 목적은 전체적으로 본 발명에서 타임스탬프를 사용하는 목적과 상이하다. Conley는 페이지의 블록에 저장된 데이터의 일부만이 갱신되는 경우 갱신될 필요가 없는 데이터가 복사되는 것을 방지하기 위해, 단지 데이터가 기입된 순서를 결정하기 위해 사용된다. 한 페이지는 올드 블록에 있고 다른 페이지는 뉴 블록에 있는, 두 개의 페이지들이 공통 논리 주소를 사용한다면, 데이터는 가장 최근에 기입된 페이지로부터 판독된다.
도 1은 SLC 플래쉬 셀에 한 비트를 저장하는 예를 도시한 도.
도 2 및 3은 본 발명의 메모리 디바이스의 하이레벨 블록도.
본 발명은 본 명세서에서 첨부도면을 참조하여 단지 예로서만 설명되었다.
바람직한 실시예의 설명
본 발명은 비휘발성 메모리의 데이터 보유 시간을 증가시키기 위해 명목적으로 비휘발성 메모리를 관리하는 방법에 관한 것이다.
본 발명에 따른 비휘발성 메모리 관리의 원리 및 동작이 첨부 도면 및 하기의 설명을 참조로하여 더욱 잘 이해될 것이다.
본 발명의 일반적 사상은 메모리에 저장된 데이터를 리프레시하는 것이다. 데이터를 "리프레싱"한다는 것은 데이터가, 데이터가 저장된 셀이 현재 저장하고 있는 데이터를 저장하도록 맨처음 프로그램되었을 때 이들 셀들이 있던 상태로 상기 셀들을 복구하거나 메모리를 데이터로 재프로그래밍함에 의해 그것들이 본래 저장되었던 방식으로 데이터를 저장하는 것을 의미한다.
이미 프로그래밍된 셀에 더많은 프로그래밍 전압 펄스를 인가하는 것을 방지하는 제한 예로서, 부분적 페이지 프로그래밍 또는 비순차적 페이지 기입에 관한 제한들을 갖는 플래쉬 메모리의 경우에, 데이터를 리프레시하는 데 있어서 두 개의 옵션이 있다. 제1 옵션은, 데이터가 리프레시되는 셀을 소거하기 위해, 데이터를 상이한 위치 예로서, 휘발성 메모리 또는 또다른 EPROM에 복사하고 복사된 데이터로 소거된 셀을 새롭게 재프로그래밍하는 것이다. 제2 옵션은, 초기에 데이터로 프로그램된 셀로부터의 데이터를 셀의 새로운 세트에 복사하는 것이다. 필요하다면, 플래쉬 메모리의 경우에 하나이상의 블록이 데이터를 수용하기 위해 소거된다. 제1 옵션은 데이터가 맨처음 저장되었던 셀에 데이터가 최종 저장되기 때문에, 데이터를 리프레싱하는 인-플레이스 방법의 한 예이다. 제2 옵션은 데이터를 리프레싱하 는 아웃오브-플레이스 방법의 한 예이다.
데이터가 단일 패스에서 리프레시되는 셀의 갯수는 어떠한 갯수이어도 좋다. 예로서, 플래쉬 메모리의 경우에, 데이터는 한 타임에 한 셀, 한 타임에 한 판독 유닛(NOR 플래쉬 메모리의 경우에 한 바이트; NAND 플래쉬 메모리의 경우에 한 페이지), 한 타임에 한 프로그래밍 유닛(페이지), 또는 한 타임에 한 소거 유닛(블록)으로, 리프레시된다.
데이터를 언제 리프레시할지는 소정 조건에 따라 결정된다. 한 바람직한 조건은 데이터의 연령(age)에 따른 것이다; 리프레시되는 것이 보장되기에 충분히 오래된 데이터는 리프레시된다. 이 조건의 사용을 용이하게 하기 위해, 데이터는 데이터가 프로그래밍되어 있는 날짜의 타임 스탬프와 함께 저장된다. 이 날짜는 본원 명세서에서 데이터의 "저장 날짜"라고 부른다. 데이터는, 메모리를 포함하는 시스템의 시스템 클록에 의해 결정된, 현재 날짜가 소정 연령만큼 데이터의 저장 날짜를 초과하는 경우 리프레시된다. 데이터가 한 타임에 한 페이지 리프레시되는 NAND 플래쉬 메모리에서, 데이터의 각각의 페이지는 "예비 영역" 또는 "여분 영역"이라 불리는 페이지에 가장 편안하게 저장된 자신의 타임 스탬프를 갖고, 상기 영역은 통상적으로 에러 보정 비트와 같은 플래쉬 관리 데이터를 저장하는 데에 사용된다. 데이터의 리프레싱에 뒤이어, 데이터가 리프레시된 날짜는 새로운 타임 스탬프로서 여분 영역에 저장된다. 한 페이지의 데이터가 리프레시되는 경우, 여분 영역의 데이터(저장 날짜이외 것)도 리프레시된다. 그 데이터가 리프레시되는 유닛이 한 페이지 보다 크면, 예로서 데이터가 한 타임에 한 소거 블록이 리프레시되면 타임 스탬프는 유닛의 제1 페이지의 여분 영역에 저장된다.
저장 날짜가 일정한 정밀도로 타임 스탬프에 저장되어지게 하는, 정밀도(precision)(연도 만(year only), 연도 및 월, 연도 및 일자)는 디자인 옵션이다. 저장 날짜의 정밀도와 저장 날짜를 저장하는 데에 필요로 되는 셀의 수 사이에 트레이드오프가 있음을 주목해야 한다. 타임 스탬프 저장 사이즈는 예로서, 저장 날짜 모듈로(modulo) 소정 수를 저장함에 의해 또는 저장 날짜의 검사합(checksum)만을 저장함에 의해 최소화된다.
당업자는 데이터를 리프레싱하기 위한 기타 조건들을 용이하게 상상할 것이다. 예로서, 데이터는 데이터의 저장 날짜와 무관하게, 일정하게 간격을 두고 또는 점진적으로 감소하는 간격(메모리가 수명이 오래됨에 따라 데이터 보유에서의 열화를 보상하기 위해)으로, 주기적으로 리프레시될 수 있다. 이들 주기 날짜는 본 명세서에서 "리프레시 날짜"로 명명된다. 데이터는 메모리를 포함하는 시스템이 부팅을 행하할 때 마다 또는 메모리를 포함하는 시스템이 디스마운팅을 행할 때 마다 리프레시될 수 있다. 데이터 리프레시 조건은 "혼합되고 매치"될 수 있다. 예로서, 소정 스레시홀드 연령 보다 오래된 페이지들만이 메모리를 포함하는 시스템이 부팅을 행하는 경우 리프레시될 수 있다.
데이터를 리프레싱하기 위한 조건은 데이터의 유형에 좌우될 수 있다. 예로서, MP3 노래 또는 MPEG4 비디오 클립과 같은 멀티미디어 데이터의 리프레시 조건은 임계 코드의 리프레시 조건과 상이할 수 있고, 이 임계코드는 멀티미디어 데이터 보다 자주 리프레시된다. 복수의 파티션을 구비한 메모리에서, 각각의 파티션 은 그 자신의 고유한 리프레시 조건을 갖는다. 예로서, 부트 코드 파티션의 데이터는 멀티미디어 파티션의 데이터 보다 더 빈번히 리프레시될 수 있다.
일반적으로, 메모리의 내구성과 데이터의 리프레싱의 빈도간에 트레이드오프가 있다. 예로서, 플래쉬 메모리는 유한 갯수의 소거 사이클에서만 견딜 수 있다. 플래쉬 메모리에 대해 선택된 데이터 리프레시 방법은 플래쉬 메모리의 이러한 특성을 고려해야만 한다. 여기서, 리프레시 조건은 리프레싱되는 데이터의 유형에 좌우될 수 있다. 예로서, 한번 프로그램되고 절대로 또는 거의 변경되지 않은 코드는 빈번하게 변경된 사용자 데이터 보다 더 많은 리프레시 사이클 동안 견딜 수 있다.
도면을 다시 참조하면, 도 2는 호스트(30)에 연결된, 본 발명의 플래쉬 메모리 디바이스(20)의 하이레벨 블록도이다. 도 2는 본 명세서에 완전히 개시된 것처럼 모든 목적에 참조 문헌으로서 통합된, Ban에게 허여된 미국특허 제 5,404,485호의 도 1로부터 응용되었다. 플래쉬 메모리 디바이스(20)는 플래쉬 메모리(24), 컨트롤러(22) 및 랜덤 액세스 메모리(RAM;26)을 포함한다. 미국특허 제 5,404,485호의 "플래쉬 컨트롤(14)"에 해당하는 컨트롤러(22)는 미국특허 제 5,404,485호에 설명된 바와 같이, RAM(26)의 도움으로, 플래쉬 메모리(24)를 관리한다. 컨트롤러(22)는 또한 상기한 바와 같이 플래쉬 메모리(24)에 저장된 데이터의 리프레싱을 지원한다.
도 3은 본 발명의 대안적인 데이터 저장 시스템(50)의 하이레벨 부분 블록도이다. 데이터 저장 시스템(50)은 프로세서(52)와 4개의 메모리 디바이스; RAM(54), 부트 ROM(56), 대용량 디바이스(하드 디스크;58) 및 플래쉬 메모리 디바이스(40)를 포함하는 데, 이들은 모두 공통 버스(60)를 통하여 통신한다. 플래쉬 메모리 디바이스(20)처럼, 플래쉬 메모리 디바이스(40)는 플래쉬 메모리(42)를 포함한다. 플래쉬 메모리 디바이스(20)와 상이하게, 플래쉬 메모리 디바이스(40)는 그 자신의 고유 컨트롤러 및 RAM이 부족하다. 그 대신에, 프로세서(52)는 예로서, 이스라엘 크파 사바의 엠-시스템스 플래쉬 디스크 파이오니어스사의 TrueFFS 드라이버에서의, 방식으로 US 5,404,485호의 방법을 구현하고 소프트웨어 드라이버를 에뮬레이팅함으로써 컨트롤러(22)를 에뮬레이팅한다. 플래쉬 메모리 디바이스는 또한 프로세서(52)가 플래쉬 메모리(42)와 통신할 수 있도록 버스 인터페이스를 포함한다.
본 발명이 제한된 수의 실시예에 대해 설명된 반면에, 본 발명에 대한 다양한 변형, 수정 및 기타 응용이 행해질 수 있음이 인식될 것이다.
Claims (15)
- (a) 메모리에 저장되는 데이터를 수신하는 단계로서, 상기 데이터는 변경되는 데이터와 변경되지 않는 데이터를 포함하는, 단계;(b) 저장날짜에 메모리의 적어도 하나의 셀에 데이터를 저장하는 단계; 및(c) 소정 연령(age)을 포함하는 소정 조건에 따라, 상기 적어도 하나의 셀에 저장된 상기 데이터를 아웃-오브-플레이스(out-of-place) 리프레싱하는 단계;를 포함하고,데이터를 저장하는 단계는 상기 저장날짜를 나타내는 타임스탬프를 적어도 하나의 셀과 연관된 관리 데이터를 저장하기 위해 사용된 예비 영역에 저장하는 단계를 더 포함하며,상기 소정 연령은 상기 데이터에 대한 상기 저장날짜 이후 소정 시간 간격의 경과로써 정의되며, 상기 리프레싱하는 단계는 상기 예비 영역에 저장된 관리 데이터를 리프레싱하는 단계를 더 포함하는 것을 특징으로 하는 비휘발성 메모리 관리 방법.
- 삭제
- 삭제
- 제1항에 있어서,(d) 상기 타임스탬프를 메모리를 포함하는 시스템의 시스템 클록과 비교함으로써 상기 조건을 테스트하는 단계를 더 포함하는 것을 특징으로 하는 비휘발성 메모리 관리 방법.
- 제1항에 있어서, 상기 조건은 복수 개의 소정 리프레시 날짜중의 하나의 발생인 것을 특징으로 하는 비휘발성 메모리 관리 방법.
- 제5항에 있어서, 상기 복수 개의 소정 리프레시 날짜는 적어도 세 개의 균등하게 시간간격을 이룬 날짜를 포함하는 것을 특징으로 하는 비휘발성 메모리 관리 방법.
- 제5항에 있어서, 상기 복수 개의 소정 리프레시 날짜는 단조 감소하는 시간간격을 갖는 적어도 세 개의 날짜를 포함하는 것을 특징으로 하는 비휘발성 메모리 관리 방법.
- 제1항에 있어서, 상기 조건은 메모리를 포함하는 시스템이 부팅을 행하는 것을 특징으로 하는 비휘발성 메모리 관리 방법.
- 제1항에 있어서, 상기 조건은 메모리를 포함하는 시스템이 디스마운팅을 행하는 것을 특징으로 하는 비휘발성 메모리 관리 방법.
- 제1항에 있어서, 상기 조건은 상기 데이터의 유형과 관련되는 것을 특징으로 하는 비휘발성 메모리 관리 방법.
- 제1항에 있어서, 메모리의 상이한 파티션에 저장된 데이터는 상이한 각각의 상기 조건들을 갖는 것을 특징으로 하는 비휘발성 메모리 관리 방법.
- 삭제
- 삭제
- (a) 적어도 하나의 셀; 및(b) (i) 메모리 디바이스에 저장되는 데이터를 식별하고,(ii) 저장날짜에 상기 적어도 하나의 셀에 식별된 데이터를 저장하고, 그리고(iii) 소정 연령(age)을 포함하는 소정 조건에 따라, 상기 데이터를 아웃-오브-플레이스 리프레싱하도록 동작하는,컨트롤러;를 포함하고,데이터를 저장하는 것은 상기 저장날짜를 나타내는 타임스탬프를 적어도 하나의 셀과 연관된 관리 데이터를 저장하기 위해 사용된 예비 영역에 저장하는 것을 더욱 포함하며,상기 소정 연령은 상기 데이터에 대한 상기 저장날짜 이후 소정 시간 간격의 경과로써 정의되며, 상기 리프레싱하는 것은 적어도 하나의 셀과 연관된 상기 예비 영역에 저장된 관리 데이터를 리프레싱하는 것을 더 포함하고,상기 데이터는 변경되는 데이터와 변경되지 않는 데이터를 포함하는 것을 특징으로 하는 메모리 디바이스.
- (a) 적어도 하나의 셀을 포함하는 메모리 디바이스; 및(b) (i) 메모리 디바이스에 저장되는 데이터를 식별하고,(ii) 저장날짜에 상기 적어도 하나의 셀에 식별된 데이터를 저장하고, 그리고(iii) 소정 연령(age)을 포함하는 소정 조건에 따라, 상기 적어도 하나의 셀에 저장된 상기 데이터를 아웃-오브-플레이스 리프레싱하도록 동작하는,프로세서;를 포함하고,데이터를 저장하는 것은 상기 저장날짜를 나타내는 타임스탬프를 적어도 하나의 셀과 연관된 관리 데이터를 저장하기 위해 사용된 예비 영역에 저장하는 것을 더욱 포함하며,상기 소정 연령은 상기 데이터에 대한 상기 저장날짜 이후 소정 시간 간격의 경과로써 정의되고, 상기 리프레싱하는 것은 상기 예비 영역에 저장된 관리 데이터를 리프레싱하는 것을 더 포함하고,상기 데이터는 변경되는 데이터와 변경되지 않는 데이터를 포함하는 것을 특징으로 하는 데이터를 저장하기 위한 시스템.
Applications Claiming Priority (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US56684004P | 2004-04-29 | 2004-04-29 | |
US60/566,840 | 2004-04-29 | ||
US10/973,272 US7325090B2 (en) | 2004-04-29 | 2004-10-27 | Refreshing data stored in a flash memory |
US10/973,272 | 2004-10-27 |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20070010137A KR20070010137A (ko) | 2007-01-22 |
KR100984494B1 true KR100984494B1 (ko) | 2010-09-30 |
Family
ID=35242330
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020067019873A KR100984494B1 (ko) | 2004-04-29 | 2005-04-14 | 플래쉬 메모리에 저장된 데이터를 리프레싱하는 메모리관리방법 및 장치 |
Country Status (4)
Country | Link |
---|---|
US (1) | US7325090B2 (ko) |
EP (2) | EP2320424B1 (ko) |
KR (1) | KR100984494B1 (ko) |
WO (1) | WO2005106886A2 (ko) |
Families Citing this family (157)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20070086244A1 (en) * | 2005-10-17 | 2007-04-19 | Msystems Ltd. | Data restoration in case of page-programming failure |
US7447096B2 (en) * | 2006-05-05 | 2008-11-04 | Honeywell International Inc. | Method for refreshing a non-volatile memory |
CN103280239B (zh) | 2006-05-12 | 2016-04-06 | 苹果公司 | 存储设备中的失真估计和消除 |
US8239735B2 (en) | 2006-05-12 | 2012-08-07 | Apple Inc. | Memory Device with adaptive capacity |
WO2007132457A2 (en) | 2006-05-12 | 2007-11-22 | Anobit Technologies Ltd. | Combined distortion estimation and error correction coding for memory devices |
WO2007132452A2 (en) | 2006-05-12 | 2007-11-22 | Anobit Technologies | Reducing programming error in memory devices |
JP4813264B2 (ja) | 2006-06-14 | 2011-11-09 | 株式会社日立製作所 | ストレージシステム |
US7616508B1 (en) * | 2006-08-10 | 2009-11-10 | Actel Corporation | Flash-based FPGA with secure reprogramming |
WO2008026203A2 (en) * | 2006-08-27 | 2008-03-06 | Anobit Technologies | Estimation of non-linear distortion in memory devices |
US7624329B2 (en) | 2006-08-30 | 2009-11-24 | Freescale Semiconductor, Inc. | Programming a memory device having error correction logic |
US7975192B2 (en) | 2006-10-30 | 2011-07-05 | Anobit Technologies Ltd. | Reading memory cells using multiple thresholds |
US7821826B2 (en) | 2006-10-30 | 2010-10-26 | Anobit Technologies, Ltd. | Memory cell readout using successive approximation |
US7924648B2 (en) | 2006-11-28 | 2011-04-12 | Anobit Technologies Ltd. | Memory power and performance management |
US8151163B2 (en) | 2006-12-03 | 2012-04-03 | Anobit Technologies Ltd. | Automatic defect management in memory devices |
US7900102B2 (en) | 2006-12-17 | 2011-03-01 | Anobit Technologies Ltd. | High-speed programming of memory devices |
US8037266B2 (en) * | 2007-01-02 | 2011-10-11 | Sandisk Il Ltd. | Apparatus and method for archiving digital content |
US8151166B2 (en) | 2007-01-24 | 2012-04-03 | Anobit Technologies Ltd. | Reduction of back pattern dependency effects in memory devices |
US7751240B2 (en) | 2007-01-24 | 2010-07-06 | Anobit Technologies Ltd. | Memory device with negative thresholds |
WO2008111058A2 (en) | 2007-03-12 | 2008-09-18 | Anobit Technologies Ltd. | Adaptive estimation of memory cell read thresholds |
US8001320B2 (en) | 2007-04-22 | 2011-08-16 | Anobit Technologies Ltd. | Command interface for memory devices |
WO2008139441A2 (en) | 2007-05-12 | 2008-11-20 | Anobit Technologies Ltd. | Memory device with internal signal processing unit |
US8234545B2 (en) | 2007-05-12 | 2012-07-31 | Apple Inc. | Data storage with incremental redundancy |
US7925936B1 (en) | 2007-07-13 | 2011-04-12 | Anobit Technologies Ltd. | Memory device with non-uniform programming levels |
US8060798B2 (en) * | 2007-07-19 | 2011-11-15 | Micron Technology, Inc. | Refresh of non-volatile memory cells based on fatigue conditions |
US8259497B2 (en) | 2007-08-06 | 2012-09-04 | Apple Inc. | Programming schemes for multi-level analog memory cells |
US8767450B2 (en) * | 2007-08-21 | 2014-07-01 | Samsung Electronics Co., Ltd. | Memory controllers to refresh memory sectors in response to writing signals and memory systems including the same |
KR20100134375A (ko) * | 2009-06-15 | 2010-12-23 | 삼성전자주식회사 | 리프레쉬 동작을 수행하는 메모리 시스템 |
US8174905B2 (en) | 2007-09-19 | 2012-05-08 | Anobit Technologies Ltd. | Programming orders for reducing distortion in arrays of multi-level analog memory cells |
WO2009095902A2 (en) | 2008-01-31 | 2009-08-06 | Densbits Technologies Ltd. | Systems and methods for handling immediate data errors in flash memory |
WO2009042298A1 (en) * | 2007-09-26 | 2009-04-02 | Rambus Inc. | Flash memory refresh |
US7773413B2 (en) | 2007-10-08 | 2010-08-10 | Anobit Technologies Ltd. | Reliable data storage in analog memory cells in the presence of temperature variations |
US8527819B2 (en) | 2007-10-19 | 2013-09-03 | Apple Inc. | Data storage in analog memory cell arrays having erase failures |
US8068360B2 (en) | 2007-10-19 | 2011-11-29 | Anobit Technologies Ltd. | Reading analog memory cells using built-in multi-threshold commands |
US8000141B1 (en) | 2007-10-19 | 2011-08-16 | Anobit Technologies Ltd. | Compensation for voltage drifts in analog memory cells |
US8694715B2 (en) | 2007-10-22 | 2014-04-08 | Densbits Technologies Ltd. | Methods for adaptively programming flash memory devices and flash memory systems incorporating same |
US8270246B2 (en) | 2007-11-13 | 2012-09-18 | Apple Inc. | Optimized selection of memory chips in multi-chips memory devices |
US8225181B2 (en) | 2007-11-30 | 2012-07-17 | Apple Inc. | Efficient re-read operations from memory devices |
WO2009072104A2 (en) | 2007-12-05 | 2009-06-11 | Densbits Technologies Ltd. | Flash memory device with physical cell value deterioration accommodation and methods useful in conjunction therewith |
JP2009140564A (ja) * | 2007-12-06 | 2009-06-25 | Toshiba Corp | Nand型フラッシュメモリおよびメモリシステム |
US8359516B2 (en) | 2007-12-12 | 2013-01-22 | Densbits Technologies Ltd. | Systems and methods for error correction and decoding on multi-level physical media |
US8209588B2 (en) | 2007-12-12 | 2012-06-26 | Anobit Technologies Ltd. | Efficient interference cancellation in analog memory cell arrays |
US8456905B2 (en) | 2007-12-16 | 2013-06-04 | Apple Inc. | Efficient data storage in multi-plane memory devices |
US8938655B2 (en) * | 2007-12-20 | 2015-01-20 | Spansion Llc | Extending flash memory data retension via rewrite refresh |
US8085586B2 (en) | 2007-12-27 | 2011-12-27 | Anobit Technologies Ltd. | Wear level estimation in analog memory cells |
US8156398B2 (en) | 2008-02-05 | 2012-04-10 | Anobit Technologies Ltd. | Parameter estimation based on error correction code parity check equations |
US20110066792A1 (en) * | 2008-02-10 | 2011-03-17 | Rambus Inc. | Segmentation Of Flash Memory For Partial Volatile Storage |
US7924587B2 (en) | 2008-02-21 | 2011-04-12 | Anobit Technologies Ltd. | Programming of analog memory cells using a single programming pulse per state transition |
US7864573B2 (en) | 2008-02-24 | 2011-01-04 | Anobit Technologies Ltd. | Programming analog memory cells for reduced variance after retention |
US8230300B2 (en) | 2008-03-07 | 2012-07-24 | Apple Inc. | Efficient readout from analog memory cells using data compression |
US8400858B2 (en) | 2008-03-18 | 2013-03-19 | Apple Inc. | Memory device with reduced sense time readout |
US8059457B2 (en) | 2008-03-18 | 2011-11-15 | Anobit Technologies Ltd. | Memory device with multiple-accuracy read commands |
US8972472B2 (en) | 2008-03-25 | 2015-03-03 | Densbits Technologies Ltd. | Apparatus and methods for hardware-efficient unbiased rounding |
US9772936B2 (en) | 2008-07-10 | 2017-09-26 | Micron Technology, Inc. | Data collection and compression in a solid state storage device |
US7719876B2 (en) | 2008-07-31 | 2010-05-18 | Unity Semiconductor Corporation | Preservation circuit and methods to maintain values representing data in one or more layers of memory |
US7995388B1 (en) | 2008-08-05 | 2011-08-09 | Anobit Technologies Ltd. | Data storage using modified voltages |
US7924613B1 (en) | 2008-08-05 | 2011-04-12 | Anobit Technologies Ltd. | Data storage in analog memory cells with protection against programming interruption |
US8949684B1 (en) | 2008-09-02 | 2015-02-03 | Apple Inc. | Segmented data storage |
US8169825B1 (en) | 2008-09-02 | 2012-05-01 | Anobit Technologies Ltd. | Reliable data storage in analog memory cells subjected to long retention periods |
US8000135B1 (en) | 2008-09-14 | 2011-08-16 | Anobit Technologies Ltd. | Estimation of memory cell read thresholds by sampling inside programming level distribution intervals |
US8482978B1 (en) | 2008-09-14 | 2013-07-09 | Apple Inc. | Estimation of memory cell read thresholds by sampling inside programming level distribution intervals |
US9128821B2 (en) | 2008-10-10 | 2015-09-08 | Seagate Technology Llc | Data updating in non-volatile memory |
US8239734B1 (en) | 2008-10-15 | 2012-08-07 | Apple Inc. | Efficient data storage in storage device arrays |
US8261159B1 (en) | 2008-10-30 | 2012-09-04 | Apple, Inc. | Data scrambling schemes for memory devices |
US8208304B2 (en) | 2008-11-16 | 2012-06-26 | Anobit Technologies Ltd. | Storage at M bits/cell density in N bits/cell analog memory cell devices, M>N |
US20100138588A1 (en) * | 2008-12-02 | 2010-06-03 | Silicon Storage Technology, Inc. | Memory controller and a method of operating an electrically alterable non-volatile memory device |
US8397131B1 (en) | 2008-12-31 | 2013-03-12 | Apple Inc. | Efficient readout schemes for analog memory cell devices |
US8248831B2 (en) | 2008-12-31 | 2012-08-21 | Apple Inc. | Rejuvenation of analog memory cells |
US8924661B1 (en) | 2009-01-18 | 2014-12-30 | Apple Inc. | Memory system including a controller and processors associated with memory devices |
US8228701B2 (en) | 2009-03-01 | 2012-07-24 | Apple Inc. | Selective activation of programming schemes in analog memory cell arrays |
US8832354B2 (en) | 2009-03-25 | 2014-09-09 | Apple Inc. | Use of host system resources by memory controller |
US8259506B1 (en) | 2009-03-25 | 2012-09-04 | Apple Inc. | Database of memory read thresholds |
US8458574B2 (en) | 2009-04-06 | 2013-06-04 | Densbits Technologies Ltd. | Compact chien-search based decoding apparatus and method |
US8819385B2 (en) | 2009-04-06 | 2014-08-26 | Densbits Technologies Ltd. | Device and method for managing a flash memory |
US8238157B1 (en) | 2009-04-12 | 2012-08-07 | Apple Inc. | Selective re-programming of analog memory cells |
US8261136B2 (en) * | 2009-06-29 | 2012-09-04 | Sandisk Technologies Inc. | Method and device for selectively refreshing a region of a memory of a data storage device |
US8479080B1 (en) | 2009-07-12 | 2013-07-02 | Apple Inc. | Adaptive over-provisioning in memory systems |
US8995197B1 (en) | 2009-08-26 | 2015-03-31 | Densbits Technologies Ltd. | System and methods for dynamic erase and program control for flash memory device memories |
US9330767B1 (en) | 2009-08-26 | 2016-05-03 | Avago Technologies General Ip (Singapore) Pte. Ltd. | Flash memory module and method for programming a page of flash memory cells |
US8495465B1 (en) | 2009-10-15 | 2013-07-23 | Apple Inc. | Error correction coding over multiple memory pages |
US8730729B2 (en) | 2009-10-15 | 2014-05-20 | Densbits Technologies Ltd. | Systems and methods for averaging error rates in non-volatile devices and storage systems |
US8724387B2 (en) | 2009-10-22 | 2014-05-13 | Densbits Technologies Ltd. | Method, system, and computer readable medium for reading and programming flash memory cells using multiple bias voltages |
US8677054B1 (en) | 2009-12-16 | 2014-03-18 | Apple Inc. | Memory management schemes for non-volatile memory devices |
US9037777B2 (en) | 2009-12-22 | 2015-05-19 | Densbits Technologies Ltd. | Device, system, and method for reducing program/read disturb in flash arrays |
US8694814B1 (en) | 2010-01-10 | 2014-04-08 | Apple Inc. | Reuse of host hibernation storage space by memory controller |
US8572311B1 (en) | 2010-01-11 | 2013-10-29 | Apple Inc. | Redundant data storage in multi-die memory systems |
US8745317B2 (en) | 2010-04-07 | 2014-06-03 | Densbits Technologies Ltd. | System and method for storing information in a multi-level cell memory |
US8694853B1 (en) | 2010-05-04 | 2014-04-08 | Apple Inc. | Read commands for reading interfering memory cells |
US8572423B1 (en) | 2010-06-22 | 2013-10-29 | Apple Inc. | Reducing peak current in memory systems |
US8612669B1 (en) | 2010-06-28 | 2013-12-17 | Western Digital Technologies, Inc. | System and method for performing data retention in solid-state memory using copy commands and validity and usage data |
US8468431B2 (en) | 2010-07-01 | 2013-06-18 | Densbits Technologies Ltd. | System and method for multi-dimensional encoding and decoding |
US8595591B1 (en) | 2010-07-11 | 2013-11-26 | Apple Inc. | Interference-aware assignment of programming levels in analog memory cells |
US9104580B1 (en) | 2010-07-27 | 2015-08-11 | Apple Inc. | Cache memory for hybrid disk drives |
US8767459B1 (en) | 2010-07-31 | 2014-07-01 | Apple Inc. | Data storage in analog memory cells across word lines using a non-integer number of bits per cell |
US8856475B1 (en) | 2010-08-01 | 2014-10-07 | Apple Inc. | Efficient selection of memory blocks for compaction |
US8694854B1 (en) | 2010-08-17 | 2014-04-08 | Apple Inc. | Read threshold setting based on soft readout statistics |
US8964464B2 (en) | 2010-08-24 | 2015-02-24 | Densbits Technologies Ltd. | System and method for accelerated sampling |
US9021181B1 (en) | 2010-09-27 | 2015-04-28 | Apple Inc. | Memory management for unifying memory cell conditions by using maximum time intervals |
US9063878B2 (en) | 2010-11-03 | 2015-06-23 | Densbits Technologies Ltd. | Method, system and computer readable medium for copy back |
US8850100B2 (en) | 2010-12-07 | 2014-09-30 | Densbits Technologies Ltd. | Interleaving codeword portions between multiple planes and/or dies of a flash memory device |
US8990665B1 (en) | 2011-04-06 | 2015-03-24 | Densbits Technologies Ltd. | System, method and computer program product for joint search of a read threshold and soft decoding |
KR20120120795A (ko) | 2011-04-25 | 2012-11-02 | 삼성전자주식회사 | 데이터 저장 시스템 및 그의 데이터 리텐션 방법 |
US9324433B2 (en) * | 2011-04-25 | 2016-04-26 | Microsoft Technology Licensing, Llc | Intelligent flash reprogramming |
CN103392208A (zh) | 2011-04-28 | 2013-11-13 | 株式会社日立制作所 | 半导体存储装置和用于控制半导体存储装置的方法 |
US9110785B1 (en) | 2011-05-12 | 2015-08-18 | Densbits Technologies Ltd. | Ordered merge of data sectors that belong to memory space portions |
US9396106B2 (en) | 2011-05-12 | 2016-07-19 | Avago Technologies General Ip (Singapore) Pte. Ltd. | Advanced management of a non-volatile memory |
US9501392B1 (en) | 2011-05-12 | 2016-11-22 | Avago Technologies General Ip (Singapore) Pte. Ltd. | Management of a non-volatile memory module |
US9372792B1 (en) | 2011-05-12 | 2016-06-21 | Avago Technologies General Ip (Singapore) Pte. Ltd. | Advanced management of a non-volatile memory |
US9195592B1 (en) | 2011-05-12 | 2015-11-24 | Densbits Technologies Ltd. | Advanced management of a non-volatile memory |
US8996790B1 (en) | 2011-05-12 | 2015-03-31 | Densbits Technologies Ltd. | System and method for flash memory management |
US8650353B2 (en) * | 2011-07-01 | 2014-02-11 | Intel Corporation | Apparatus, system, and method for refreshing non-volatile memory |
US9176800B2 (en) | 2011-08-31 | 2015-11-03 | Micron Technology, Inc. | Memory refresh methods and apparatuses |
US8996788B2 (en) | 2012-02-09 | 2015-03-31 | Densbits Technologies Ltd. | Configurable flash interface |
US8947941B2 (en) | 2012-02-09 | 2015-02-03 | Densbits Technologies Ltd. | State responsive operations relating to flash memory cells |
US8996793B1 (en) | 2012-04-24 | 2015-03-31 | Densbits Technologies Ltd. | System, method and computer readable medium for generating soft information |
US8838937B1 (en) | 2012-05-23 | 2014-09-16 | Densbits Technologies Ltd. | Methods, systems and computer readable medium for writing and reading data |
US8879325B1 (en) | 2012-05-30 | 2014-11-04 | Densbits Technologies Ltd. | System, method and computer program product for processing read threshold information and for reading a flash memory module |
US9921954B1 (en) | 2012-08-27 | 2018-03-20 | Avago Technologies General Ip (Singapore) Pte. Ltd. | Method and system for split flash memory management between host and storage controller |
US9368225B1 (en) | 2012-11-21 | 2016-06-14 | Avago Technologies General Ip (Singapore) Pte. Ltd. | Determining read thresholds based upon read error direction statistics |
CN103049713B (zh) * | 2012-12-20 | 2016-12-07 | 华为技术有限公司 | 对存储设备中数据进行巡检的方法、设备及系统 |
US9069659B1 (en) | 2013-01-03 | 2015-06-30 | Densbits Technologies Ltd. | Read threshold determination using reference read threshold |
CN104239220B (zh) * | 2013-06-13 | 2017-11-24 | 华为技术有限公司 | 存储器刷新处理方法和装置 |
US9136876B1 (en) | 2013-06-13 | 2015-09-15 | Densbits Technologies Ltd. | Size limited multi-dimensional decoding |
CN103927128B (zh) * | 2013-07-11 | 2017-03-01 | 威盛电子股份有限公司 | 数据储存装置以及快闪存储器控制方法 |
US9378830B2 (en) | 2013-07-16 | 2016-06-28 | Seagate Technology Llc | Partial reprogramming of solid-state non-volatile memory cells |
US9263158B2 (en) * | 2013-08-16 | 2016-02-16 | Seagate Technology Llc | Determining data retention time in a solid-state non-volatile memory |
US9413491B1 (en) | 2013-10-08 | 2016-08-09 | Avago Technologies General Ip (Singapore) Pte. Ltd. | System and method for multiple dimension decoding and encoding a message |
US9397706B1 (en) | 2013-10-09 | 2016-07-19 | Avago Technologies General Ip (Singapore) Pte. Ltd. | System and method for irregular multiple dimension decoding and encoding |
US9786388B1 (en) | 2013-10-09 | 2017-10-10 | Avago Technologies General Ip (Singapore) Pte. Ltd. | Detecting and managing bad columns |
US9348694B1 (en) | 2013-10-09 | 2016-05-24 | Avago Technologies General Ip (Singapore) Pte. Ltd. | Detecting and managing bad columns |
US9329802B2 (en) | 2013-11-11 | 2016-05-03 | Qualcomm Incorporated | Fail safe refresh of data stored in NAND memory device |
US9536612B1 (en) | 2014-01-23 | 2017-01-03 | Avago Technologies General Ip (Singapore) Pte. Ltd | Digital signaling processing for three dimensional flash memory arrays |
US10120792B1 (en) | 2014-01-29 | 2018-11-06 | Avago Technologies General Ip (Singapore) Pte. Ltd. | Programming an embedded flash storage device |
KR102207217B1 (ko) | 2014-04-30 | 2021-01-25 | 삼성전자주식회사 | 플래시 메모리 장치, 플래시 메모리 시스템 및 이의 동작 방법 |
US9859013B2 (en) * | 2014-05-06 | 2018-01-02 | Sandisk Technologies Llc | Data operations in non-volatile memory |
DE102014208609A1 (de) * | 2014-05-08 | 2015-11-26 | Robert Bosch Gmbh | Refresh eines Speicherbereichs einer nichtflüchtigen Speichereinheit |
US9542262B1 (en) | 2014-05-29 | 2017-01-10 | Avago Technologies General Ip (Singapore) Pte. Ltd. | Error correction |
KR102292172B1 (ko) | 2014-06-23 | 2021-08-25 | 삼성전자주식회사 | 불휘발성 메모리 장치 및 메모리 컨트롤러의 동작 방법 |
US9892033B1 (en) | 2014-06-24 | 2018-02-13 | Avago Technologies General Ip (Singapore) Pte. Ltd. | Management of memory units |
US9584159B1 (en) | 2014-07-03 | 2017-02-28 | Avago Technologies General Ip (Singapore) Pte. Ltd. | Interleaved encoding |
US9972393B1 (en) | 2014-07-03 | 2018-05-15 | Avago Technologies General Ip (Singapore) Pte. Ltd. | Accelerating programming of a flash memory module |
US9449702B1 (en) | 2014-07-08 | 2016-09-20 | Avago Technologies General Ip (Singapore) Pte. Ltd. | Power management |
US9524211B1 (en) | 2014-11-18 | 2016-12-20 | Avago Technologies General Ip (Singapore) Pte. Ltd. | Codeword management |
US10305515B1 (en) | 2015-02-02 | 2019-05-28 | Avago Technologies International Sales Pte. Limited | System and method for encoding using multiple linear feedback shift registers |
KR102275710B1 (ko) | 2015-02-02 | 2021-07-09 | 삼성전자주식회사 | 오버-라이트가 가능한 메모리 장치, 메모리 시스템 및 메모리 시스템의 동작방법 |
US20160306569A1 (en) * | 2015-02-25 | 2016-10-20 | Kabushiki Kaisha Toshiba | Memory system |
US9576649B2 (en) | 2015-03-31 | 2017-02-21 | Seagate Technology Llc | Charge loss compensation through augmentation of accumulated charge in a memory cell |
US10628255B1 (en) | 2015-06-11 | 2020-04-21 | Avago Technologies International Sales Pte. Limited | Multi-dimensional decoding |
US9851921B1 (en) | 2015-07-05 | 2017-12-26 | Avago Technologies General Ip (Singapore) Pte. Ltd. | Flash memory chip processing |
KR102306853B1 (ko) | 2015-11-02 | 2021-10-01 | 삼성전자주식회사 | 호스트 장치가 스토리지 장치를 제어하는 방법 및 호스트 장치와 스토리지 장치를 포함하는 메모리 시스템 |
US9954558B1 (en) | 2016-03-03 | 2018-04-24 | Avago Technologies General Ip (Singapore) Pte. Ltd. | Fast decoding of data stored in a flash memory |
US9881682B1 (en) | 2016-11-23 | 2018-01-30 | Seagate Technology Llc | Fine grained data retention monitoring in solid state drives |
US10176860B1 (en) | 2017-08-29 | 2019-01-08 | Micron Technology, Inc. | Refresh in non-volatile memory |
US11055226B2 (en) * | 2018-06-29 | 2021-07-06 | Intel Corporation | Mitigation of cache-latency based side-channel attacks |
US10777297B2 (en) * | 2018-12-10 | 2020-09-15 | Micron Technology, Inc. | Age-based refresh of firmware |
US11573720B2 (en) * | 2020-08-19 | 2023-02-07 | Micron Technology, Inc. | Open block family duration limited by time and temperature |
US11556416B2 (en) | 2021-05-05 | 2023-01-17 | Apple Inc. | Controlling memory readout reliability and throughput by adjusting distance between read thresholds |
US11847342B2 (en) | 2021-07-28 | 2023-12-19 | Apple Inc. | Efficient transfer of hard data and confidence levels in reading a nonvolatile memory |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6240032B1 (en) | 1997-11-27 | 2001-05-29 | Sharp Kabushiki Kaisha | Non-volatile semiconductor memory allowing user to enter various refresh commands |
US20030021149A1 (en) | 1997-09-08 | 2003-01-30 | So Hock C. | Multi-bit-per-cell flash EEPROM memory with refresh |
Family Cites Families (15)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4977537A (en) * | 1988-09-23 | 1990-12-11 | Dallas Semiconductor Corporation | Dram nonvolatizer |
US5365486A (en) * | 1992-12-16 | 1994-11-15 | Texas Instruments Incorporated | Method and circuitry for refreshing a flash electrically erasable, programmable read only memory |
FR2700040B1 (fr) * | 1992-12-31 | 1995-02-17 | Gemplus Card Int | Carte à puce avec données et programmes protégés contre le vieillissement. |
US5404485A (en) | 1993-03-08 | 1995-04-04 | M-Systems Flash Disk Pioneers Ltd. | Flash file system |
US5511020A (en) * | 1993-11-23 | 1996-04-23 | Monolithic System Technology, Inc. | Pseudo-nonvolatile memory incorporating data refresh operation |
JPH09244961A (ja) * | 1996-03-08 | 1997-09-19 | Mitsubishi Electric Corp | フラッシュata−pcカード |
US6134140A (en) * | 1997-05-14 | 2000-10-17 | Kabushiki Kaisha Toshiba | Nonvolatile semiconductor memory device with soft-programming to adjust erased state of memory cells |
JP4246812B2 (ja) * | 1997-06-12 | 2009-04-02 | パナソニック株式会社 | 半導体回路及びその制御方法 |
US6841821B2 (en) * | 1999-10-07 | 2005-01-11 | Monolithic System Technology, Inc. | Non-volatile memory cell fabricated with slight modification to a conventional logic process and methods of operating same |
US6856568B1 (en) * | 2000-04-25 | 2005-02-15 | Multi Level Memory Technology | Refresh operations that change address mappings in a non-volatile memory |
US6396744B1 (en) * | 2000-04-25 | 2002-05-28 | Multi Level Memory Technology | Flash memory with dynamic refresh |
US6763424B2 (en) | 2001-01-19 | 2004-07-13 | Sandisk Corporation | Partial block data programming and reading operations in a non-volatile memory |
US6931480B2 (en) * | 2001-08-30 | 2005-08-16 | Micron Technology, Inc. | Method and apparatus for refreshing memory to preserve data integrity |
US6738861B2 (en) * | 2001-09-20 | 2004-05-18 | Intel Corporation | System and method for managing data in memory for reducing power consumption |
US6751127B1 (en) * | 2002-04-24 | 2004-06-15 | Macronix International, Co. Ltd. | Systems and methods for refreshing non-volatile memory |
-
2004
- 2004-10-27 US US10/973,272 patent/US7325090B2/en not_active Expired - Lifetime
-
2005
- 2005-04-14 EP EP10178906.3A patent/EP2320424B1/en not_active Ceased
- 2005-04-14 EP EP05730972A patent/EP1741107B1/en not_active Ceased
- 2005-04-14 WO PCT/IL2005/000395 patent/WO2005106886A2/en not_active Application Discontinuation
- 2005-04-14 KR KR1020067019873A patent/KR100984494B1/ko active IP Right Grant
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20030021149A1 (en) | 1997-09-08 | 2003-01-30 | So Hock C. | Multi-bit-per-cell flash EEPROM memory with refresh |
US6240032B1 (en) | 1997-11-27 | 2001-05-29 | Sharp Kabushiki Kaisha | Non-volatile semiconductor memory allowing user to enter various refresh commands |
Also Published As
Publication number | Publication date |
---|---|
US7325090B2 (en) | 2008-01-29 |
EP1741107B1 (en) | 2012-06-13 |
US20050243626A1 (en) | 2005-11-03 |
EP1741107A4 (en) | 2007-09-12 |
WO2005106886A2 (en) | 2005-11-10 |
EP2320424B1 (en) | 2014-05-14 |
KR20070010137A (ko) | 2007-01-22 |
WO2005106886A3 (en) | 2005-12-01 |
EP2320424A1 (en) | 2011-05-11 |
EP1741107A2 (en) | 2007-01-10 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR100984494B1 (ko) | 플래쉬 메모리에 저장된 데이터를 리프레싱하는 메모리관리방법 및 장치 | |
EP2513907B1 (en) | Data transfer flows for on-chip folding | |
EP2513905B1 (en) | Non-volatile memory and method with atomic program sequence and write abort detection | |
US9263142B2 (en) | Programming a memory cell using a dual polarity charge pump | |
US6944063B2 (en) | Non-volatile semiconductor memory with large erase blocks storing cycle counts | |
US8427867B2 (en) | Systems and methods for averaging error rates in non-volatile devices and storage systems | |
US7480762B2 (en) | Erase block data splitting | |
TWI417717B (zh) | 具多流更新之非揮發性記憶體及方法 | |
US7965562B2 (en) | Predictive programming in non-volatile memory | |
US7080192B1 (en) | File storage and erasure in flash memory | |
KR20160137501A (ko) | 고체-상태 비휘발성 메모리 셀들의 부분적 재프로그래밍 | |
WO2011075572A1 (en) | Maintaining updates of multi-level non-volatile memory in binary non-volatile memory | |
US20080253193A1 (en) | Non-Volatile Memory with Predictive Programming | |
US10055267B2 (en) | Block management scheme to handle cluster failures in non-volatile memory | |
US20180203642A1 (en) | Delayed Data Release After Programming To Reduce Read Errors In Memory | |
US20140254263A1 (en) | Write Sequence Providing Write Abort Protection | |
US8750045B2 (en) | Experience count dependent program algorithm for flash memory | |
US8995183B2 (en) | Data retention in nonvolatile memory with multiple data storage formats | |
US9053011B2 (en) | Selective protection of lower page data during upper page write | |
JP2009211188A (ja) | メモリシステム |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A201 | Request for examination | ||
E902 | Notification of reason for refusal | ||
E90F | Notification of reason for final refusal | ||
E701 | Decision to grant or registration of patent right | ||
GRNT | Written decision to grant | ||
FPAY | Annual fee payment |
Payment date: 20130906 Year of fee payment: 4 |
|
FPAY | Annual fee payment |
Payment date: 20150827 Year of fee payment: 6 |
|
FPAY | Annual fee payment |
Payment date: 20160831 Year of fee payment: 7 |
|
FPAY | Annual fee payment |
Payment date: 20180903 Year of fee payment: 9 |