KR20090036545A - 메모리 디바이스 내의 왜곡 추정 및 상쇄 - Google Patents

메모리 디바이스 내의 왜곡 추정 및 상쇄 Download PDF

Info

Publication number
KR20090036545A
KR20090036545A KR1020087029297A KR20087029297A KR20090036545A KR 20090036545 A KR20090036545 A KR 20090036545A KR 1020087029297 A KR1020087029297 A KR 1020087029297A KR 20087029297 A KR20087029297 A KR 20087029297A KR 20090036545 A KR20090036545 A KR 20090036545A
Authority
KR
South Korea
Prior art keywords
voltage level
memory cell
analog memory
data
analog
Prior art date
Application number
KR1020087029297A
Other languages
English (en)
Other versions
KR101375955B1 (ko
Inventor
오피르 살비
나프탈리 솜메르
에얄 구르기
아리엘 메이스로스
Original Assignee
아노비트 테크놀로지스 리미티드
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 아노비트 테크놀로지스 리미티드 filed Critical 아노비트 테크놀로지스 리미티드
Publication of KR20090036545A publication Critical patent/KR20090036545A/ko
Application granted granted Critical
Publication of KR101375955B1 publication Critical patent/KR101375955B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C5/00Details of stores covered by group G11C11/00
    • G11C5/14Power supply arrangements, e.g. power down, chip selection or deselection, layout of wirings or power grids, or multiple supply levels
    • 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/26Sensing or reading circuits; Data output circuits
    • 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
    • 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/1012Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's in individual solid state devices using codes or arrangements adapted for a specific type of error
    • G06F11/1016Error in accessing a memory location, i.e. addressing error
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C7/00Arrangements for writing information into, or reading information out from, a digital store

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Quality & Reliability (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Power Engineering (AREA)
  • Read Only Memory (AREA)
  • Semiconductor Memories (AREA)
  • Transmitters (AREA)
  • Dc Digital Transmission (AREA)

Abstract

메모리(28)를 오퍼레이팅하는 방법은 각각의 제1전압 레벨로 한 그룹의 메모리의 아날로그 메모리 셀(32)에 데이터를 저장하는 단계를 포함한다. 데이터를 저장한 후, 각각의 아날로그 메모리 셀로부터 제2전압 레벨이 판독된다. 제2전압 레벨은 제2전압 레벨을 각각의 제1전압 레벨과 상이하게 만드는 크로스 커플링 간섭에 영향을 받는다. 아날로그 메모리 셀 간의 크로스 커플링 간섭을 정량화하는 크로스 커플링 계수가 제2전압 레벨을 프로세싱함으로써 추정된다. 상기 아날로그 메모리 셀 그룹에 저장된 데이터는 추정된 크로스 커플링 계수를 사용하여 복구된다.
데이터 저장 장치, 메모리, 아날로그 메모리 셀, 메모리 신호 프로세서, 제1전압 레벨, 제2전압 레벨, 크로스 커플링 간섭, 하드 디시전, 크로스 커플링 계수 추정, 왜곡 레벨, 교란 레벨.

Description

메모리 디바이스 내의 왜곡 추정 및 상쇄{DISTORTION ESTIMATION AND CANCELLATION IN MEMORY DEVICES}
본 출원은 2006년 5월 12일에 출원된 미국 가특허출원 제60/747,106호, 2006년 11월 28일에 출원된 미국 가특허출원 제60/867,399호, 2006년 1월 4일에 출원된 미국 가특허출원 제60/806,533호, 2006년 11월 27일에 출원된 미국 가특허출원 제60/827,067호, 2007년 1월 16일에 출원된 미국 가특허출원 제60/885,024호, 및 2007년 1월 24일에 출원된 미국 가특허출원 제60/886,429호의 우선권을 주장한다.
본 발명은 일반적으로 메모리 디바이스에 관한 것이고, 더욱 상세하게는 메모리 디바이스 내의 왜곡을 추정하고 보상하는 방법 및 시스템에 관한 것이다.
플래시 메모리 및 디램(DRAM)과 같은, 몇몇 타입의 메모리 디바이스는 데이터를 저장하기 위해 아날로그 메모리 셀 어레이를 사용한다. 플래시 메모리 디바이스는, 예컨대, 'Bez et al.'의, 2003년 4월, "Introduction to Flash Memory", 'Proceedings of the IEEE', 볼륨 91, 넘버 4, 페이지 489-502에 서술되어 있다.
이러한 메모리 디바이스에서, 각각의 아날로그 메모리 셀은 셀에 저장된 정보를 나타내는 임의의 전하량을 보유하는 트랜지스터를 포함하는 것이 전형적이다. 특정 셀에 기록된 전하는 그 셀의 "임계전압", 즉, 셀이 전류를 통전하기 위해 셀 에 인가되어야 하는 전압에 영향을 준다.
일반적으로 단일레벨 셀(SLC) 디바이스라 하는, 몇몇 메모리 디바이스는 각각의 메모리 셀에 단일 비트의 정보를 저장한다. 전형적으로, 그 셀의 가능한 임계전압 범위는 두 영역으로 나눠진다. 제1영역에 속하는 전압값은 "0"비트 값을 나타내고, 제2영역에 속하는 전압은 "1"비트를 나타낸다. 멀티레벨 셀(MLC)이라 하는, 고밀도 디바이스는 메모리 셀마다 둘 이상의 비트를 저장한다. 멀티-레벨 셀에서, 임계전압의 범위는 두 개 이상의 영역으로 나누어지고, 각각의 영역은 하나의 비트 이상을 나타낸다.
멀티레벨 플래시 셀 및 디바이스는, 예컨대, 'Eitan et al.'의, "Multilevel Flash Cells and thier Trade-Offs", 'Proceedings of the 1996 IEEE International Electron Devices Meeting(IEDM)', 뉴욕, 페이지 169-172에 서술되어 있다. 이 문서는 공통 그라운드, DINOR, AND, NOR, 및 NAND 셀과 같은, 몇가지 종류의 멀티레벨 플래시 셀을 비교한다.
'Eitan et al.'은 "Can NROM, a 2-bit, Trapping Storage NVM Cell, Give a Real Challenge to Floating Gate Cells?", 'Proceedings of the 1999 International Conference on Solid State Devices and Materials(SSDM)', 일본 도쿄, 1999년 9월 21-24일, 페이지 522-524에 니트라이드 롬(NROM)이라 불리는 다른 타입의 아날로그 메모리 셀을 설명하였다. NROM 셀은 또한 'Maayan et al.'의, , "A 512 Mb NROM Flash Data Storage Memory with 8 MB/s Data Rate", 'Proceedings of the 2002 IEEE International Solid-State Circuit Conference(ISSCC 2002) 캘 리포니아주 샌프란시스코, 2002년 2월 3-7일, 페이지 100-101에 서술되어 있다.
다른 예시적인 타입의 아날로그 메모리 셀은 강자성체 램(FRAM) 셀, 자성 램(MRAM) 셀, 전하 트랩 플래시(CTF), 및 상변화 램(PRAM, 상변화 메모리, PCM이라고도 함) 셀이다. FRAM, MRAM, 및 PRAM 셀은, 예컨대, 'Kim an Koh'의, "Future Memory Technology including Emeging New Memories", 'Proceedings of the 24th International Conference on Microelectronics(MIEL), 세르비아 몬테네그로 니스, 2004년 5월 16-19일, 볼륨 1, 페이지 377-384에 서술되어 있다.
아날로그 메모리 셀로부터 판독된 임계전압 값은 종종 왜곡된다. 이러한 왜곡은 이웃한 메모리 셀로부터의 전기장 커플링, 어레이 내의 다른 셀의 메모리 액세스 오퍼레이션에 의해 발생되는 교란 노이즈, 및 디바이스 에이징에 의해 발생되는 임계전압 드리프트와 같은, 다양한 이유로 인한 것이다. 몇몇 일반적인 왜곡 메카니즘은 상기 언급된, 'Bez et al.'의 아티클에 서술되어 있다. 또한, 왜곡 효과는 'Lee et al.'의, "Effects of Floating Gate Interference on NAND Flash Memory Cell Operation", 'IEEE Electron Device Letters', (23:5), 2002년 5월, 페이지 264-266에 서술되어 있다.
미국특허 제5,867,429호는 고밀도 플래시 이이피롬 셀 어레이의 플로팅게이트 사이의 전기장 커플링을 보상하는 방법을 설명한다. 본 발명에 따라, 셀의 판독은 판독되는 셀과 필드-커플링된 모든셀의 상태는 제1판독하는 함으로써 보상된다. 그 다음, 각각의 커플링된 셀의 상태, 또는 플로팅 게이트 전압에 관한 값은 셀간의 커플링 비율에 의해 곱해진다. 각각의 셀에 대한 상태 사이의 브레이크포 인트는 인접한 셀로부터 연결된 전압을 보상하는 크기만큼 조절된다.
본 발명의 실시예는 메모리를 오퍼레이팅하는 방법으로서,
상기 메모리의 한 그룹의 아날로그 메모리 셀에 한 세트의 가능한 값으로부터 선택된, 각각의 제1전압 레벨로 데이터를 저장하는 단계;
상기 데이터를 저장하는 단계 후, 상기 아날로그 메모리 셀로부터, 제2전압 레벨이 상기 각각의 제1전압 레벨과 상이하게 하는 크로스 커플링 간섭에 의해 영향을 받는 각각의 제2전압 레벨을 판독하는 단계;
각각이, 상기 제1전압 레벨의 상기 가능한 값 중 각각의 값에 대응하는, 각각의 하드 디시전을 유도하도록 상기 제2전압 레벨을 프로세싱하는 단계;
상기 제2전압 레벨 및 상기 각각의 하드 디시전을 기초로, 상기 아날로그 메모리 셀 중 상기 크로스 커플링 간섭을 정량화하는, 크로스 커플링 계수를 추정하는 단계; 및
상기 추정된 크로스 커플링 계수를 사용하여 상기 반독된 제2전압 레벨로부터 상기 그룹의 아날로그 메모리 셀에 저장된 상기 데이터를 복구하는 단계를 포함하는 메모리를 오퍼레이팅하는 방법을 제공한다.
몇몇 실시예에서, 상기 크로스 커플링 계수를 추정하는 단계는 블록 추정 프로세스를 사용하여 상기 각각의 하드 디시전 및 상기 제2전압 레벨을 프로세싱하는 단계를 포함한다. 대안으로서, 상기 크로스 커플링 계수를 추정하는 단계는 상기 크로스 커플링 계수로 수렴하는 순차적 추정 프로세스를 사용하여 상기 각각의 하드 디시전 및 상기 제2전압 레벨을 순차적으로 스캐닝하는 단계를 포함한다. 상기 크로스 커플링 계수를 추정하는 단계는 상기 판독된 제2전압 레벨과 상기 각각의 하드 디시전 사이의 거리 메트릭스를 감소시키는 추정 프로세스를 적용하는 단계를 포함할 수 있다.
한 실시예에서, 본 방법은 상기 제1아날로그 메모리 셀로부터 판독된 상기 제2전압 레벨을 기초로, 그리고 상기 제2아날로그 메모리 셀로부터 판독된 상기 제2전압 레벨을 기초로 상기 메모리 내 제2아날로그 메모리 셀에 대하여 제1아날로그 메모리 셀에 의해 발생된 크로스 커플링 간섭을 평가하는 단계를 포함한다.
다른 실시예에서, 상기 데이터를 복구하는 단계는 디시전-피드백 균등화(DFE) 프로세스, 최대값 귀납(MAP) 추정 프로세스, 및 최대 확률 시퀀스 추정(MLSE) 프로세스 중 하나를 사용하여 상기 제2전압 레벨로부터 상기 크로스 커플링 간섭을 상쇄시키는 단계를 포함한다. 또 다른 실시예에서, 상기 크로스 커플링 계수를 추정하는 단계, 및 상기 데이터를 복구하는 단계는 제1프로세싱 단계에서 크로스 커플링 계수를 추정하는 단계, 및 제1프로세싱 단계에 후속하는 제2프로세싱 단계에서 상기 추정된 크로스 커플링 간섭을 상쇄시키는 단계를 포함한다. 또 다른 실시예에서, 상기 크로스 커플링 계수를 추정하는 단계, 및 상기 데이터를 복구하는 단계는 제2프로세싱 단계의 후속 인스탠스 동안 추정된 크로스 커플링 계수를 사용하는 단계, 및 데이터를 복구하는 것에 실패했을 때에만 제1프로세싱 단계를 반복하는 단계를 포함한다.
개시된 실시예에서, 상기 데이터를 저장하는 단계는 에러 보정 코드(ECC)를 사용하여 데이터를 인코딩하는 단계, 상기 데이터를 복구하는 단계는 추정된 크로스 커플링 계수를 기초로 에러 보정 메트릭스를 계산하는 단계, 및 에러 보정 메트릭스를 사용하여 ECC를 디코딩하는 단계를 포함한다.
본 발명의 한 실시예에 따라, 메모리를 오퍼레이팅하는 방법으로서,
메모리 셀의 한 서브셋이 연관된 왜곡을 가진, 메모리의 아날로그 메모리 셀 내에 각각의 제1전압 레벨로 데이터를 저장하는 단계;
상기 데이터를 저장하는 단계 후, 상기 연관된 왜곡으로 인해 제1전압 레벨과 상이한 각각의 제2전압 레벨을 상기 서브셋 내의 하나 이상의 아날로그 메모리 셀로부터 판독하는 단계;
상기 제2전압 레벨 내 각각의 왜곡 레벨을 추정하기 위해 하나 이상의 상기 아날로그 메모리 셀로부터 판독된 상기 제2전압 레벨을 프로세싱하는 단계;
상기 서브셋 내의 다른 아날로그 메모리 셀로부터 제2전압 레벨을 판독하는 단계;
상기 서브셋 내의 하나 이상의 아날로그 메모레 셀의 추정된 각각의 왜곡 레벨을 기초로 다른 아날로그 메모리 셀로부터 판독된 제2전압 레벨 내의 왜곡 레벨을 예측하는 단계;
예측된 왜곡 레벨을 사용하여 다른 메모리 셀로부터 판독된 제2전압 레벨을 보정하는 단계; 및
보정된 제2전압 레벨을 기초로 다른 메모리 셀에 저장된 데이터를 복구하는 단계를 포함하는 방법이 제공된다.
몇몇 실시예에서, 상기 메모리 셀의 서브셋은 공통의 비트 라인에 위치된 메모리 셀, 공통의 워드 라인에 위치된 메모리 셀, 공통의 회로를 가진 메모리 셀, 서로 인접하게 위치된 메모리 셀로 구성된 한 그룹의 서브셋 타입으로부터 선택된 적어도 하나의 서브셋 타입을 포함한다.
한 실시예에서, 상기 제2전압 레벨을 프로세싱하는 단계는 서브셋 내 하나 이상의 아날로그 메모르 셀로부터 판독된 제2전압 레벨 내 왜곡 레벨을 나타내는 단일 값만 캐싱하는 단계를 포함하고, 상기 왜곡 레벨을 예측하는 단계는 상기 캐싱된 단일 값을 기초로 예측된 왜곡 레벨을 계산하는 단계를 포함한다. 다른 실시예에서, 상기 왜곡을 예측하는 단계는 메모리 셀의 서브셋에 공통인 왜곡 파라미터를 트래킹하는 단계, 및 데이터 구조 내에 왜곡 파라미터를 저장하는 단계를 포함한다.
또한, 본 발명의 한 실시예에 따라, 메모리를 오퍼레이팅하는 방법으로서,
메모리의 한 그룹의 아날로그 메모리 셀 내의 각각의 제1전압 레벨로 데이터를 저장하는 단계;
메모리 내 제1아날로그 메모리 셀 상에서 메모리 액세스 오퍼레이션을 실행하는 단계;
상기 메모리 액세스 오퍼레이션을 실행하는 단계에 응답하여, 상기 메모리 내 제2아날로그 메모리 셀로부터 제2전압 레벨을 판독하는 단계;
상기 제1아날로그 메모리 셀에서 메모리 액세스 오퍼레이션을 실행하는 단계에 의해 발생된 제2전압 레벨 내의 교란(disturbance) 레벨을 추정하기 위해 제2전압 레벨을 프로세싱하는 단계;
상기 추정된 교란 레벨을 사용하여 제2전압 레벨을 보정하는 단계; 및
보정된 제2전압 레벨을 기초로 제2아날로그 메모리 셀에 저장된 데이터를 복구하는 단계를 포함하는 방법이 제공된다.
몇몇 실시예에서, 메모리 액세스 오퍼레이션은 프로그래밍 오퍼레이션, 판독 오퍼레이션, 및 삭제 오퍼레이션으로 구성된 한 그룹의 오퍼레이션으로부터 선택된 적어도 하나의 오퍼레이션을 포함한다. 상기 제2전압 레벨을 프로세싱하는 단계 및 보정하는 단계는 추정된 교란 레벨를 소정의 레벨과 비교하는 단계, 및 추정된 교란 레벨이 소정의 레벨을 초과할 때만 제2전압 레벨을 보정하는 단계를 포함할 수 있다. 한 실시예에서, 상기 제2전압 레벨을 보정하는 단계는 제2아날로그 메모리 셀에 저장된 데이터를 재-프로그래밍하는 단계를 포함한다. 다른 실시예에서, 상기 제2전압 레벨을 보정하는 단계는 제2아날로그 메모리 셀과 상이한 다른 아날로그 메모리 셀에 제2아날로그 메모리 셀에 저장된 데이터를 복사하는 단계를 포함한다. 대안으로서, 상기 제2전압 레벨을 보정하는 단계는 제2메모리 셀에 데이터를 저장하기 위해 사용된 제1전압 레벨을 증가시키는 단계를 포함할 수 있다. 상기 제2전압 레벨을 프로세싱하는 단계는 데이터를 저장하고 판독하지 않는 아이들(idle) 기간 동안 수행될 수 있다.
개시된 실시예에서, 상기 제2전압 레벨을 판독하는 단계는 각각의 복수의 제2메모리 셀로부터 복수의 제2전압 레벨을 판독하는 단계를 포함하고, 상기 제2전압 레벨을 프로세싱하는 단계는 삭제된 레벨에서 메모리 액세스 오퍼레이션으로 의해 프로그래밍된 레벨로 전이된 다수의 제2메모리 셀을 평가하는 단계를 포함한다. 다른 실시예에서, 상기 데이터를 저장하는 단계는 복수의 그룹의 아날로그 메모리 셀 내에 순차적 순서로 데이터를 저장하는 단계를 포함하고, 상기 제2전압 레벨을 판독하는 단계는 상기 메모리 셀 그룹을 역순으로 판독하는 단계를 포함하고, 그리고 상기 제2전압을 프로세싱하는 단계는 제1메모리 셀 전에 판독된 그룹 내의 메모리 셀의 제2전압에 응답하여 제1메모리 셀에 발생된 교란 레벨을 추정하는 단계를 포함한다.
또한, 본 발명의 한 실시예에 따라, 메모리를 오퍼레이팅하기 위한 방법으로서,
메모리의 한 그룹의 아날로그 메모리 셀 내에 각각의 제1전압 레벨로 데이터를 저장하는 단계;
상기 데이터를 저장하는 단계 후, 적어도 일부가 상기 각각의 제1전압 레벨과 상이한 각각의 제2전압 레벨을 아날로그 메모리 셀로부터 판독하는 단계;
타겟 아날로그 메모리 셀로부터 판독된 제2전압 레벨에 대하여 잠재적으로 왜곡을 일으키는 아날로그 메모리 셀의 서브셋을 식별하는 단계;
데이터가 아날로그 메모리 셀에 저장된 각각의 시간과 데이터가 타겟 아날로그 메모리 셀에 저장된 시간 사이의 관계를 기초로 상기 서브셋을 복수의 클래스로 분류하는 단계;
각각의 클래스에 대하여, 클래스 내의 아날로그 메모리 셀에 의해 타겟 메모리 셀 내의 제2전압 레벨에 발생된 각각의 왜곡을 추정하는 단계;
하나 이상의 클래스 각각에 대하여 추정된 각각의 왜곡을 사용하여 타겟 아날로그 메모리 셀로부터 판독된 제2전압 레벨을 보정하는 단계; 및
보정된 제2전압 레벨을 기초로 타겟 아날로그 메모리 셀에 저장된 데이터를 복구하는 단계를 포함하는 방법이 제공된다.
몇몇 실시예에서, 상기 데이터를 저장하는 단계, 및 상기 제2전압 레벨을 판독하는 단계는 프로그램 및 검증(P&V) 프로세스를 적용하는 단계를 포함한다. 한 실시예에서, 아날로그 메모리 셀을 분류하는 단계는 데이터가 타겟 아날로그 메모리 셀 보다 더 최근에 저장된 서브셋 내의 아날로그 메모리 셀을 식별하는 단계를 포함하고, 상기 제2전압 레벨을 보정하는 단계는 식별된 아날로그 메모리 셀 내의 왜곡만 기초로 하여 타겟 아날로그 메모리 셀로부터 판독된 제2전압 레벨을 보정하는 단계를 포함한다. 대안의 실시예에서, 상기 아날로그 메모리 셀을 분류하는 단계는 데이터가 타겟 아날로그 메모리 셀 보다 더 최근에 저장된 서브셋 내의 아날로그 메모리 셀을 포함하는 제1클래스, 데이터가 타겟 아날로그 메모리 셀 보다 이전에 저장된 서브셋 내의 아날로그 메모리 셀을 포함하는 제2클래스, 및 데이터가 타겟 아날로그 메모리 셀에 데이터를 저장함과 동시에 저장된 서브셋 내의 아날로그 메모리 셀을 포함한 제3클래스를 정의하는 단계를 포함한다.
다른 실시예에서, 상기 제2전압 레벨을 판독하는 단계, 상기 왜곡을 추정하는 단계, 및 상기 제2전압 레벨을 보정하는 단계는 제1레졸루션으로 타겟 아날로그 메모리 셀로부터 판독된 제2전압 레벨을 프로세싱하는 단계, 및 제1레졸루션 보다 더 거친(coarser) 제2레졸루션으로 서브셋 내의 아날로그 메모리 셀로부터 판독된 제2전압 레벨을 프로세싱하는 단계를 포함한다. 또 다른 실시예에서, 상기 데이터를 저장하는 단계는 데이터가 아날로그 메모리 셀에 저장된 시간의 지시를 저장하는 단계를 포함하고, 상기 아날로그 메모리 셀을 분류하는 단계는 저장된 지시를 요청하는 단계를 포함한다. 또 다른 실시예에서, 상기 왜곡을 추정하는 단계는 아날로그 메모리 셀의 프로그래밍 시간, 아날로그 메모리 셀에 저장된 데이터, 타겟 메모리 셀에 대한 아날로그 메모리 셀의 위치, 및 타겟 메모리 셀이 겪은 최근 프로그래밍-삭제 사이클의 횟수로 구성된 한 그룹의 파라미터로부터 선택된 적어도 하나의 파라미터에 응답하여 왜곡의 레벨을 추정하는 단계를 포함한다.
또한, 본 발명의 한 실시예에 따라, 메모리를 오퍼레이팅하는 방법으로서,
메모리에 저장하기 위한 데이터를 수신하는 단계;
아날로그 메모리 셀이 상기 데이터를 나타내는 각각의 물리적 크기 값을 저장하게 하기 위해 메모리의 한 그룹의 아날로그 메모리 셀을 프로그래밍하기 위한 각각의 제1전압을 결정하는 단계;
결정된 제1전압 레벨을 사용하여 상기 그룹 내의 아날로그 메모리 셀을 프로그래밍하는 단계;
아날로그 메모리 셀을 프로그래밍하는 단계 후, 각각의 아날로그 메모리 셀로부터 제2전압 레벨을 판독하는 단계; 및
제2전압 레벨로부터 데이터를 복구하는 단계를 포함하는 방법이 제공된다.
몇몇 실시예에서, 상기 제1전압 레벨을 결정하는 단계는 타겟 아날로그 메모리 셀에 데이터를 저장할 때 하나 이상의 다른 아날로그 메모리 셀에 저장된 물리적 크기값에 의해 발생된 왜곡을 추정하는 단계, 및 추정된 왜곡에 응답하여 타겟 아날로그 메모리 셀을 프로그래밍하는데 사용된 제1전압 레벨을 미리 보정하는 단계를 포함한다. 다른 실시예에서, 상기 데이터를 복구하는 단계는 판독된 제2전압 레벨을 기초로 제2전압 레벨을 판독할 때 하나 이상의 다른 아날로그 메모리 셀에 저장된 물리적 크기값에 의해 타겟 아날로그 메모리 셀에 저장된 물리적 크기값에 대해 발생되는 왜곡을 추정하는 단계, 추정된 왜곡을 사용하여 타겟 아날로그 메모리 셀로부터 판독된 제2전압 레벨을 보정하는 단계, 및 보정된 제2전압 레벨을 기초로 타겟 아날로그 메모리 셀에 저장된 데이터를 복구하는 단계를 포함한다.
상기 아날로그 메모리 셀을 프로그래밍하는 단계는 프로그래밍된 제1전압 레벨을 검증하는 단계를 포함할 수 있다. 몇몇 실시예에서, 물리적 크기는 전하를 포함한다.
또한, 본 발명의 한 실시예에 따라, 메모리를 오퍼레이팅하는 방법으로서,
메모리의 한 그룹의 아날로그 메모리 셀에 각각의 제1전압 레벨로 데이터를 저장하는 단계;
데이터를 저장한 후, 적어도 일부분이 각각의 제1전압 레벨과 상이한 각각의 제2전압 레벨을 상기 그룹내의 아날로그 메모리 셀로부터 판독하는 단계;
아날로그 메모리 셀로부터 판독된 제2전압 레벨 내의 왜곡 레벨을 추정하는 단계; 및
추정된 왜곡 레벨이 소정의 왜곡 기준을 위반한 때, 메모리의 아날로그 메모리 셀에 상기 데이터를 재-프로그래밍하는 단계를 포함하는 방법이 제공된다.
또한, 본 발명의 한 실시예에 따라, 메모리를 오퍼레이팅하는 방법으로서,
메모리의 한 그룹의 아날로그 메모리 셀 내에 각각의 제1전압 레벨로 데이터를 저장하는 단계;
데이터를 저장한 후, 적어도 일부분이 각각의 제1전압 레벨과 상이한 각각의 제2전압 레벨을 아날로그 메모리 셀로부터 판독하는 단계;
타겟 아날로그 메모리 셀로부터 판독된 제2전압 레벨을 잠재적으로 왜곡시키는 아날로그 메모리 셀의 서브셋을 식별하는 단계;
타겟 메모리 셀이 프로그래밍되는 제1타임 인스탠스에서 타겟 메모리 셀에 대하여 상기 서브셋 내의 메모리 셀에 의해 발생된 제1왜곡 레벨과, 타겟 메모리 셀이 판독되는 제2타임 이스탠스에서 타겟 메모리 셀에 대하여 상기 서브셋 내의 메모리 셀에 의해 발생된 제2왜곡 레벨 사이의 차이를 추정하는 단계; 및
추정된 차이를 사용하여 타겟 메모리 셀로부터 판독된 제2전압 레벨을 보정하는 단계를 포함하는 메모리를 오퍼레이팅하는 방법이 제공된다.
또한, 본 발명의 한 실시예에 따라, 메모리를 오퍼레이팅하는 방법으로서,
메모리의 한 그룹의 아날로그 메모리 셀 내에 각각의 제1전압 레벨로 데이터를 저장하는 단계;
데이터를 저장한 후, 적어도 일부분이 각각의 제1전압 레벨과 상이한 각각의 제2전압 레벨을 아날로그 메모리 셀로부터 판독하는 단계;
제2전압 레벨이 각각의 제1전압 레벨과 상이하게 하는 크로스 커플링 간섭에 의해 영향을 받는 각각의 제2전압 레벨을 아날로그 메모리 셀로부터 판독하는 단계;
제2전압 레벨을 프로세싱함으로서 아날로그 메모리 셀 간의 크로스 커플링 간섭을 정량화하는 크로스 커플링 계수를 추정하는 단계; 및
추정된 크로스 커플링 계수를 사용하여 판독된 제2전압 레벨로부터 아날로그 메모리 셀의 상기 그룹 내에 저장된 데이터를 복구하는 단계를 포함하는 메모리를 오퍼레이팅하는 방법이 제공된다.
몇몇 실시예에서, 메모리 내의 제2아날로그 메모리 셀에 대하여 제1아날로그 메모리 셀에 의해 발생된 크로스 커플링 간섭은 제1아날로그 메모리 셀로부터 판독된 제2전압 레벨, 및 제2아날로그 메모리 셀로부터 판독된 제2전압레벨을 기초로 하여 평가된다.
또한, 본 발명의 한 실시예에 따라, 데이터 저장 장치로서,
복수의 아날로그 메모리 셀을 포함한 메모리와 통신하도록 동작하는 인터페이스; 및
인터페이스에 연결된 메모리 신호 프로세서(MSP)를 포함하고, 상기 MSP는 메모리의 한 그룹의 아날로그 메모리 셀에, 한 세트의 가능한 값으로부터 선택된 각각의 제1전압 레벨로 데이터를 저장하고, 제2전압 레벨을 각각의 제1전압 레벨과 상이하게 만드는 크로스 커플링 간섭에 의해 영향을 받는, 각각의 제2전압 레벨을, 상기 데이터를 저장한 후, 아날로그 메모리 셀로부터 판독하고, 각각이 제1전압 레벨의 가능한 값 중 각각의 값에 대응하는, 각각의 하드 디시전을 유도하도록 제2전압 레벨을 프로세싱하고, 제2전압 레벨 및 각각의 하드 디시전을 기초로, 아날로그 메모리 셀 간의 상기 크로스 커플링 간섭을 정량화하는 크로스 커플링 계수를 추정하고, 그리고 추정된 크로스 커플링 계수를 사용하여 제2전압 레벨로부터 아날로그 메모리 셀 그룹에 저장된 상기 데이터를 복구하도록 배열되어 있는 데이터 저장 장치가 제공된다.
또한, 본 발명의 한 실시예에 따라, 데이터 저장 장치로서,
한 서브셋의 메모리 셀이 연관된 왜곡을 가진, 복수의 아날로그 메모리 셀을 포함하는 메모리와 통신하도록 동작하는 인터페이스; 및
상기 인터페이스에 연결된 MSP를 포함하고, 상기 MSP는 아날로그 메모리 셀에 각각의 제1전압 레벨로 데이터를 저장하고, 연관된 왜곡으로 인해 제1전압 레벨과 상이한 각각의 제2전압 레벨을, 상기 데이터를 저장한 후, 상기 서브셋 내의 하나 이상의 아날로그 메모리 셀로부터 판독하고, 제2전압 레벨 내의 각각의 왜곡 레벨을 추정하기 위해 하나 이상의 아날로그 메모리 셀로부터 판독된 제2전압 레벨을 프로세싱하고, 서브셋 내의 다른 아날로그 메모리 셀로부터 제2전압 레벨을 판독하고, 상기 서브셋 내의 하나 이상의 아날로그 메모리 셀의 추정된 각각의 왜곡 레벨을 기초로 상기 다른 아날로그 메모리 셀로부터 판독된 제2전압 레벨 내의 왜곡 레벨을 예측하고, 상기 예측된 왜곡 레벨을 사용하여 상기 다른 메모리 셀로부터 판독된 상기 제2전압 레벨을 보정하고, 그리고 상기 보정된 제2전압 레벨을 기초로 상기 다른 메모리 셀에 저장된 데이터를 복구하도록 배열되어 있는 데이터 저장 장치가 제공된다.
또한, 본 발명의 한 실시예에 따라, 데이터 저장 장치로서,
복수의 아날로그 메모리 셀을 포함하는 메모리와 통신하도록 동작하는 인터페이스; 및
상기 인터페이스에 연결된 MSP를 포함하고, 상기 MSP는 한 그룹의 아날로그 메모리 셀에 각각의 제1전압 레벨로 데이터를 저장하고, 메모리 내의 제1아날로그 메모리 셀에서 메모리 액세스 오퍼레이션을 수행하고, 메모리 내의 제2아날로그 메모리 셀로부터 제2전압 레벨을, 메모리 액세스 오퍼레이션을 수행하는 것에 응답하여, 판독하고, 제1아날로그 메모리 셀에서 메모리 액세스 오퍼레이션을 수행하여 발생되는 제2전압 레벨 내의 교란 레벨을 추정하도록 제2전압 레벨을 프로세싱하고, 추정된 교란 레벨을 사용하여 제2전압 레벨을 보정하고, 그리고 보정된 제2전압 레벨을 기초로 제2아날로그 메모리 셀에 저장된 상기 데이터를 복구하도록 배열되어 있는 데이터 저장 장치가 제공된다.
또한, 본 발명의 한 실시예에 따라, 데이터 저장 장치로서,
복수의 아날로그 메모리 셀을 포함하는 메모리와 통신하도록 동작하는 인터페이스; 및
상기 인터페이스에 연결된 MSP를 포함하고, 상기 MSP는 한 그룹의 아날로그 메모리 셀 내에 각각의 제1전압 레벨로 데이터를 저장하고, 각각의 제1전압 레벨과 적어도 일부 상이한 각각의 제2전압 레벨을, 상기 데이터를 저장한 후, 아날로그 메모리 셀로부터 판독하고, 타겟 아날로그 메모리 셀로부터 판독된 제2전압 레벨에 잠재적으로 왜곡을 일으키는 한 서브셋의 아날로그 메모리 셀을 식별하고, 데이터가 아날로그 메모리 셀에 저장된 시간과 데이터가 상기 타겟 아날로그 메모리 셀에 저장된 시간 사이의 관계를 기초로 상기 서브셋 내의 아날로그 메모리 셀을 복수의 클래스로 분류하고, 상기 클래스 내의 상기 아날로그 메모리 셀에 의해 타겟 메모리 셀 내의 제2전압 레벨에 발생된 각각의 왜곡을, 각각의 클래스에 대하여, 추정하고, 각각의 하나 이상의 클래스에 대하여 추정된 각각의 왜곡을 사용하여 타겟 아날로그 메모리 셀로부터 판독된 제2전압 레벨을 보정하고, 그리고 보정된 제2전압 레벨을 기초로 타겟 아날로그 메모리 셀에 저장된 데이터를 복구하도록 배열되어 있는 데이터 저장 장치가 제공된다.
또한, 본 발명의 한 실시예에 따라, 데이터 저장 장치로서,
복수의 아날로그 메모리 셀을 포함하는 메모리와 통신하도록 동작하는 인터페이스; 및
상기 인터페이스에 연결되어 있는 MSP를 포함하고, 상기 MSP는 메모리에 저장할 데이터를 수신하고, 아날로그 메모리 셀을 데이터를 나타내는 각각의 물리적 크기값을 저장하게 만들도록 한 그룹의 아날로그 메모리 셀을 프로그래밍하기 위한 각각의 제1전압 레벨을 결정하고, 제1전압 레벨을 사용하여 상기 그룹 내의 아날로그 메모리 셀을 프로그래밍하고, 각각의 아날로그 메모리 셀로부터 제2전압 레벨을, 상기 아날로그 메모리 셀을 프로그래밍한 후, 판독하고, 그리고 제2전압 레벨로부터 데이터를 복구하도록 배열되어 있는 데이터 저장 장치가 제공된다.
또한, 본 발명의 한 실시예에 따라, 데이터 저장 장치로서,
복수의 아날로그 메모리 셀을 포함하는 메모리와 통신하도록 배열되어 있는 인터페이스; 및
상기 인터페이스에 연결된 MSP를 포함하고, 상기 MSP는 한 그룹의 아날로그 메모리 셀에 각각의 제1전압 레벨로 데이터를 저장하고, 각각의 제1전압 레벨과 적어도 일부 상이한 제2전압 레벨을, 상기 데이터를 저장한 후, 상기 그룹 내의 아날로그 메모리 셀로부터 판독하고, 아날로그 메모리 셀로부터 판독된 제2전압 레벨 내의 왜곡 레벨을 추정하고, 그리고 상기 추정된 왜곡 레벨이 소정의 왜곡 기준을 위반한 때, 상기 그룹 내의 상기 아날로그 메모리 셀에 상기 데이터를 재-프로그래밍하도록 배열되어 있는 데이터 저장 장치가 제공된다.
또한, 본 발명의 한 실시예에 따라, 데이터 저장 장치로서,
복수의 아날로그 메모리 셀을 포함하는 메모리와 통신하도록 동작하는 인터페이스; 및
상기 인터페이스에 연결된 MSP를 포함하고, 상기 MSP는 상기 메모리의 한 그룹의 아날로그 메모리 셀에 각각의 제1전압 레벨로 데이터를 저장하고, 각각의 제1전압 레벨과 적어도 일부 상이한 각각의 제2전압 레벨을, 상기 데이터를 저장한 후, 아날로그 메모리 셀로부터 판독하고, 타겟 아날로그 메모리 셀로부터 판독된 제2전압 레벨에 잠재적으로 왜곡을 발생시키는 한 서브셋의 아날로그 메모리 셀을 식별하고, 타겟 메모리 셀이 프로그래밍된 제1시간 인스탠스에서 타겟 메모리 셀에 상기 서브셋 내의 메모리 셀에 의해 발생된 제1왜곡 레벨과, 타겟 메모리 셀이 판독되는 제2시간 인스탠스에서 타겟 메모리 셀에 상기 서브셋 내의 메모리 셀에 의해 발생된 제2왜곡 레벨 사이의 차이를 추정하고, 그리고 추정된 차이를 사용하여 타겟 메모리 셀로부터 판독된 제2전압 레벨을 보정하도록 배열되어 있는 데이터 저장 장치가 제공된다.
또한, 본 발명의 한 실시예에 따라, 데이터 저장 장치로서,
복수의 아날로그 메모리 셀을 포함하는 메모리와 통신하도록 동작하는 인터페이스; 및
상기 인터페이스에 연결된 MSP를 포함하고, 상기 MSP는 각각의 제1전압 레벨로 메모리의 한 그룹의 아날로그 메모리 셀에 데이터를 저장하고, 제2전압 레벨을 상기 각각의 제1전압 레벨과 상이하게 만드는 크로스 커플링 간섭에 의해 영향을 받는 각각의 제2전압 레벨을, 상기 데이터를 저장한 후, 아날로그 메모리 셀로부터 판독하고, 제2전압 레벨을 프로세싱에 의한 아날로그 메모리 셀 간의 크로스 커플링 간섭을 정량화하는 크로스 커플링 계수를 추정하고, 그리고 추정된 크로스 커플링 계수를 사용하여 판독된 제2전압 레벨로부터 아날로그 메모리 셀 그룹에 저장된 데이터를 복구하도록 배열되어 있는 데이터 저장 장치가 제공된다.
또한, 본 발명의 한 실시예에 따라, 데이터 저장 장치로서,
복수의 아날로그 메모리 셀을 포함하는 메모리; 및
상기 메모리에 연결된 MSP를 포함하고, 상기 MSP는 한 세트의 가능한 값으로부터 선택된 각각의 제1전압 레벨로 한 그룹의 아날로그 메모리 셀에 데이터를 저장하고, 제2전압 레벨을 상기 각각의 제1전압 레벨과 상이하게 만드는 크로스 커플링 간섭에 의해 영향을 받는 각각의 제2전압 레벨을, 상기 데이터를 저장한 후, 상기 아날로그 메모리 셀로부터 판독하고, 각각이 제1전압 레벨의 가능한 값 간의 각각의 값에 대응하는 각각의 하드 디시전을 유도하도록 제2전압 레벨을 프로세싱하고, 제2전압 레벨 및 각각의 하드 디시전을 기초로, 상기 아날로그 메모리 셀 간의 크로스 커플링 간섭을 정량화하는 크로스 커플링 계수를 추정하고, 그리고 크로스 커플링 계수를 사용하여 제2전압 레벨로부터 아날로그 메모리 셀 그룹에 저장된 데이터를 복구하도록 배열되어 있는 데이터 저장 장치가 제공된다.
또한, 본 발명의 한 실시예에 따라, 데이터 저장 장치로서,
한 서브셋의 메모리 셀이 연관된 왜곡을 가진 복수의 아날로그 메모리 셀을 포함하는 메모리; 및
상기 메모리에 연결된 MSP를 포함하고, 상기 MSP는 한 그룹의 아날로그 메모리 셀에 각각의 제1전압 레벨로 데이터를 저장하고, 왜곡으로 인해 제1전압 레벨과 상이한 각각의 제2전압 레벨을, 상기 데이터를 저장한 후, 한 칼럼의 어레이 내의 하나 이상의 아날로그 메모리 셀로부터 판독하고, 제2전압 레벨 내의 각각의 왜곡 레벨을 추정하기 위해 상기 하나 이상의 아날로그 메모리 셀로부터 판독된 제2전압 레벨을 프로세싱하고, 상기 칼럼 내의 다른 아날로그 메모리 셀로부터 제2전압 레벨을 판독하고, 상기 칼럼 내의 상기 하나 이상의 아날로그 메모리 셀의 추정된 각각의 왜곡 레벨을 기초로 상기 다른 아날로그 메모리 셀로부터 판독된 제2전압 레벨을 예측하고, 예측된 왜곡 레벨을 사용하여 상기 다른 메모리 셀로부터 판독된 제2전압 레벨을 보정하고, 그리고 보정된 제2전압 레벨을 기초로 상기 다른 메모리 셀에 저장된 데이터를 복구하도록 배열되어 있는 데이터 저장 장치가 제공된다.
또한, 본 발명의 한 실시예에 따라, 데이터 저장 장치로서,
복수의 아날로그 메모리 셀을 포함하는 메모리; 및
상기 메모리에 연결된 MSP를 포함하고, 상기 MSP는 한 그룹의 아날로그 메모리 셀에 각각의 제1전압 레벨로 데이터를 저장하고, 메모리 내의 제1아날로그 메모리 셀에서 메모리 액세스 오퍼레이션을 실행하고, 메모리 내의 제2아날로그 메모리 셀로부터 제2전압 레벨을, 상기 메모리 액세스 오퍼레이션을 수행하는 것이 응답하여, 판독하고, 제1아날로그 메모리 셀에서 메모리 액세스 오퍼레이션을 실행하여 발생되는 제2전압 레벨 내의 교란 레벨을 추정하기 위해 제2전압 레벨을 프로세싱하고, 추정된 교란 레벨을 사용하여 제2전압 레벨을 보정하고, 그리고 보정된 제2전압 레벨을 기초로 제2아날로그 메모리 셀에 저장된 상기 데이터를 복구하도록 배열되어 있는 데이터 저장 장치가 제공된다.
또한, 본 발명의 한 실시예에 따라, 데이터 저장 장치로서,
복수의 아날로그 메모리 셀을 포함하는 메모리; 및
상기 메모리에 연결된 MSP를 포함하고, 상기 MSP는 한 그룹의 아날로그 메모리 셀에 각각의 제1전압 레벨로 데이터를 저장하고, 제1전압 레벨과 적어도 일부 상이한 각각의 제2전압 레벨을, 상기 데이터를 저장한 후, 아날로그 메모리 셀로부터 판독하고, 타겟 아날로그 메모리 셀로부터 판독된 제2전압 레벨을 잠재적으로 왜곡시키는 한 서브셋의 아날로그 메모리 셀을 식별하고, 데이터가 아날로그 메모리 셀에 저장된 각각의 시간과, 데이터가 타겟 아날로그 메모리 셀에 저장된 시간 사이의 관계를 기초로 상기 서브셋을 복수의 클래스로 분류하고, 상기 클래스 내의 아날로그 메모리 셀에 의해 타겟 메모리 셀 내의 제2전압 레벨에 발생된 각각의 왜곡을, 각각의 상기 클래스에 대하여, 추정하고, 각각의 하나 이상의 클래스에 대하여 추정된 각각의 왜곡을 사용하여 타겟 아날로그 메모리 셀로부터 판독된 제2전압 레벨을 보정하고, 그리고 보정된 제2전압 레벨을 기초로 타겟 아날로그 메모리 셀에 저장된 데이터를 복구하도록 배열되어 있는 데이터 저장 장치가 제공된다.
또한, 본 발명의 한 실시예에 따라, 데이터 저장 장치로서,
복수의 아날로그 메모리 셀을 포함하는 메모리; 및
상기 메모리에 연결된 MSP를 포함하고, 상기 MSP는 메모리에 저장할 데이터를 수신하고, 아날로그 메모리 셀을 데이터를 나타내는 각각의 물리적 크기값을 저장하게 하도록 한 그룹의 아날로그 메모리 셀을 프로그래밍하기 위한 각각의 제1전압 레벨을 결정하고, 제1전압 레벨을 사용하여 상기 그룹 내의 아날로그 메모리 셀을 프로그래밍하고, 각각의 아날로그 메모리 셀로부터 제2전압 레벨을, 상기 아날로그 메모리 셀을 프로그래밍한 후, 판독하고, 그리고 제2전압 레벨로부터 데이터를 복구하도록 배열되어 있는 데이터 저장 장치가 제공된다.
또한, 본 발명의 한 실시예에 따라, 데이터 저장 장치로서,
복수의 아날로그 메모리 셀을 포함하는 메모리; 및
상기 메모리에 연결된 MSP를 포함하고, 상기 MSP는 한 그룹의 아날로그 메모리 셀에 각각의 제1전압 레벨로 데이터를 저장하고, 각각의 제1전압 레벨과 적어도 일부 상이한 제2전압 레벨을, 상기 데이터를 저장한 후, 상기 그룹 내의 아날로그 메모리 셀로부터 판독하고, 아날로그 메모리 셀로부터 판독된 제2전압 레벨 내의 왜곡 레벨을 추정하고, 그리고 추정된 왜곡 레벨이 소정의 왜곡 기준을 위반한 때, 상기 그룹 내의 아날로그 메모리 셀에 데이터를 재-프로그래밍하도록 배열되어 있는 데이터 저장 장치가 제공된다.
또한, 본 발명의 한 실시예에 따라, 데이터 저장 장치로서,
복수의 아날로그 메모리 셀을 포함하는 메모리; 및
상기 메모리에 연결된 MSP를 포함하고, 상기 MSP는 메모리의 한 그룹의 아날로그 메모리 셀에 각각의 제1전압 레벨로 데이터를 저장하고, 각각의 제1전압 레벨과 적어도 일부 상이한 각각의 제2전압 레벨을, 상기 데이터 저장 후, 아날로그 메모리 셀로부터 판독하고, 타겟 아날로그 메모리 셀로부터 판독된 제2전압 레벨을 잠재적으로 왜곡시키는 한 서브셋의 아날로그 메모리 셀을 식별하고, 타겟 메모리 셀이 프로그래밍되는 제1시간 인스탠스에서 타겟 메모리 셀에 상기 서브셋 내의 메모리 셀에 의해 발생된 제1왜곡 레벨과, 타겟 메모리 셀이 판독되는 제2시간 인스탠스에서 타겟 메모리 셀에 상기 서브셋 내의 메모리 셀에 의해 발생된 제2왜곡 레벨 사이의 차이를 추정하고, 그리고 추정된 차이를 사용하여 타겟 메모리 셀로부터 판독된 제2전압 레벨을 보정하도록 배열되어 있는 데이터 저장 장치가 제공된다.
또한, 본 발명의 한 실시예에 따라, 데이터 저장 장치로서,
복수의 아날로그 메모리 셀을 포함하는 메모리; 및
상기 메모리에 연결된 MSP를 포함하고, 상기 MSP는 각각의 제1전압 레벨로 메모리의 한 그룹의 아날로그 메모리 셀에 데이터를 저장하고, 제2전압 레벨을 각각의 제1전압 레벨과 상이하게 만드는 크로스 커플링 간섭에 의해 영향을 받는 각각의 제2전압 레벨을, 상기 데이터 저장 후, 아날로그 메모리 셀로부터 판독하고, 제2전압 레벨 프로세싱하는 것에 의한 아날로그 메모리 셀 간에 크로스 커플링 간섭을 정량화하는 크로스 커플링 계수를 추정하고, 그리고 추정된 크로스 커플링 계수를 사용하여 판독된 제2전압 레벨로부터 상기 아날로그 메모리 셀 그룹에 저장된 데이터를 복구하도록 배열되어 있는 데이터 저장 장치가 제공된다.
또한, 본 발명의 한 실시예에 따라, 데이터 저장 장치로서,
복수의 아날로그 메모리 셀을 포함하는 메모리와 통신하도록 동작하는 인터페이스; 및
상기 인터페이스에 연결되어 있는 MSP를 포함하고, 상기 MSP는 아날로그 메모리 셀로부터 판독되도록, 한 세트의 가능한 값으로부터 선택된 각각의 제1전압 레벨로 한 그룹의 아날로그 메모리 셀에 데이터를 저장하도록, 데이터를 저장한 후, 제2전압 레벨을 각각의 제1전압 레벨과 상이하게 하는 크로스 커플링 간섭에 의해 영향을 받는 각각의 제2전압 레벨을 아날로그 메모리 셀로부터 판독하도록, 각각이 제1전압 레벨의 가능한 값 중 각각의 값에 대응하는, 각각의 하드 디시전을 유도하도록 제2전압 레벨을 프로세싱하도록, 제2전압 레벨 및 각각의 하드 디시전을 기초로, 아날로그 메모리 셀 간의 크로스 커플링 간섭을 정량화하는 크로스 커플링 계수를 추정하도록, 그리고 추정된 크로스 커플링 계수를 사용하여 제2전압 레벨로부터 아날로그 메모리 셀의 상기 그룹 내에 저장된 된 MSP를 포함하는 데이터를 복구하도록 배열되어 있는 데이터 저장 장치가 제공된다.
본 발명은 아래의 실시예의 상세한 설명과 도면을 참조하여 더욱 완전히 이해될 것이다.
도 1은 본 발명의 한 실시예에 따른 메모리 신호 프로세싱 시스템을 개략적으로 도시하는 블록 다이어그램이고;
도 2는 본 발명의 한 실시예에 따른, 메모리 셀 어레이를 개략적으로 도시하는 다이어그램이고;
도 3-8은 본 발명의 실시예에 따른, 메모리 셀 어레이 내의 왜곡을 추정하고 상쇄시키는 방법을 개략적으로 도시하는 플로우 차트이고; 그리고
도 9는 본 발명의 실시예에 따른, 메모리 셀 어레이 내의 데이터를 리프래싱하는 방법을 개략적으로 도시하는 플로우 차트이다.
개요
본 발명의 실시예는 아날로그 메모리 셀의 어레이 내의 왜곡을 추정하고 보상하는 방법 및 시스템을 제공한다. 아래에서 서술된 실시예에서, 데이터는 한 어레이의 아날로그 메모리 셀에 기록된 전하 레벨로 저장된다. 전하 레벨은 셀의 각각의 임계 전압을 결정한다. 메모리 신호 프로세서(MSP)는 메모리 셀로부터 전압 레벨을 판독하고, 메모리 셀에 포함된 왜곡의 레벨을 적응 추정한다. MSP는 전형적으로 왜곡이 보정된, 상쇄된, 또는 보상된 보정 전압을 산출한다. 메모리 셀에 저장된 데이터는 보정 전압을 사용하여 복구된다.
몇몇 예시적인 왜곡 추정 및 상쇄 방법이 설명된다. 몇몇 방법은 디시전-다이렉티드이다, 즉 하드-디시전 슬라이싱 프로세스의 출력을 사용한다. 몇몇 경우에, 왜곡 추정 프로세스는 피간섭 셀이 프로그래밍되는 시간에 대하여, 잠재적 간 섭 셀이 프로그래밍된 시간을 고려한다. 다른 방법은 메모리 어레이의 동일 칼럼(비트 라인)에 위치한 다른 셀의 왜곡을 기초로 특성 셀 내의 왜곡을 예측한다. 몇몇 개시된 방법은 왜곡이 발생된 시간에 어레이 내의 다른 셀에서의 오퍼레이션에 의해 발생된 교란 노이즈를 보정한다.
몇몇 실시예에서, 메모리 셀은 P&V 프로세스를 사용하여 프로그래밍되고, MSP는 프로그래밍 시간에, 또는 프로그래밍 시간 및 메모리 셀을 판독하는 시간에, 왜곡을 보상한다.
왜곡을 보상하는 것에 부가적으로 또는 대안으로서, MSP는 추정된 왜곡에 응답하여 다른 타입의 액션을 취할 수 있다. 예를 들어, MSP는 추정된 왜곡이 최대 허용 레벨을 초과한 때 데이터를 리플레쉬(즉, 재-프로그램)할 수 있다.
본 명세서에 서술된 왜곡 추정 및 보상 방법은 몇가지 방법으로 메모리 디바이스의 데이터 저장 성능을 향상시기키 위해 사용될 수 있다. 예를 들어, 데이터를 복구할 때 달성되는 에러 확률은 감소될 수 있고, 달성가능한 저장 용량은 증가될 수 있고, 그리고/또는 달성가능한 데이터 보유 기간이 연장될 수 있다. 개선된 성능은 결국 비용 및 메모리 디바이스의 복잡도를 줄이고, 그리고/또는 프로그래밍 속도를 증가시키기 위해 사용될 수 있다. 이러한 향상은 왜곡에 특히 민감한 MLC 디바이스에서 특히 유효하다.
시스템 설명
도 1은 본 발명의 한 실시예에 따른, 메모리 신호 프로세싱 시스템(20)을 개략으로 도시하는 블록 다이어그램이다. 시스템(20)은 컴퓨팅 디바이스, 셀룰러 폰, 또는 다른 통신 단말기, 제거가능한 메모리 모듈("디스크-온-키" 디바이스), 디지털 카메라, 음악 및 다른 미디어 플레이어, 및/또는 데이터가 저장되고 추출되는 임의의 다른 디스템 디바이스와 같은, 다양한 호스트 시스템 및 디바이스에 사용될 수 있다.
시스템(20)은 메모리 셀 어레이(28)에 데이터를 저장하는 메모리 디바이스(24)를 포함한다. 메모리 어레이는 복수의 아날로그 메모리 셀(32)을 포함한다. 본 명세서 및 청구항에서, "아날로그 메모리 셀"은 전압 또는 전하와 같은, 물리적 파라미터의 연속적인 아날로그 값을 유지하는 임의의 메모리 셀을 설명하기 위해 사용된다. 어레이(28)는, 예컨대, NAND, NOR, 및 CTF 플래시 셀, PCM, NROM, FRAM, MRAM, 및 DRAM 셀과 같은 임의의 종류의 아날로그 메모리 셀을 포함할 수 있다. 셀에 저장된 전하 레벨, 및/또는 셀에 기록되고 판독되는 아날로그 전압은 본 명세서에서 아날로그 값이라 통칭한다.
메모리 디바이스(24) 내에 저장하기 위한 데이터는 디바이스에 제공되고, 데이터 버퍼(36)에 캐싱된다. 그 다음, 그 데이터는 아날로그 전압으로 변환되고, 그 기능이 아래에 더욱 상세하게 서술된, 판독/기록(R/W) 유닛(40)을 사용하여 기록된다. 어레이(28)로부터 데이터를 판독할 때, 유닛(40)은 전하, 및 그러므로 메모리 셀(32)의 아날로그 전압을 디지털 샘플로 변환한다. 각각의 샘플은 한 레졸루션의 하나 이상의 비트를 가진다. 샘플은 버퍼(36)에 캐싱된다. 메모리 디바이스(24)의 오퍼레이션 및 타이밍은 컨트롤 로직(48)에 의해 관리된다.
데이터를 메모리 디바이스(24)에 저장하고, 그로부터 추출하는 것은 메모리 신호 프로세서(MSP)(52)에 의해 수행된다. 아래에 상세하게 서술된 바와 같이, MSP(52)는 메모리 셀 어레이(28) 내의 다양한 왜곡 효과를 추정하고 감소시키기 위한 독창적인 방법을 사용한다.
몇몇 실시예에서, MSP(52)는 ECC를 사용하여 디바이스(24)에 기록될 데이터를 인코딩하고, 디바이스(24)에서 데이터를 판독할 때 ECC를 디코딩하는 인코더/디코더(64)를 포함한다. 신호 프로세싱 유닛(60)은 디바이스(24)에 기록되고 추출될 데이터를 프로세싱한다. 더욱 상세하게, 유닛(60)은 셀(32)로부터 판독된 전압에 영향을 주는 왜곡을 추정한다. 유닛(60)은 추정된 왜곡의 효과를 보상하거나, 줄일 수 있다. 대안으로서, 유닛(60)은 아래에 서술된 바와 같이, 추정된 왜곡을 기초로 다른 타입의 액션을 취할 수도 있다.
MSP(52)는 데이터를 저장하고 디바이스(24)와 인터페이싱하기 위해 유닛(60)에 의해 사용되는 데이터 버퍼(72)를 포함한다. MSP(52)는 또한 MSP와 호스트 사이에 인터페이스를 형성하는 입/출력(I/O) 버퍼(56)를 포함한다. 컨트롤러(76)는 MSP(52)의 오퍼레이션 및 타이밍을 관리한다. 신호 프로세싱 유닛(60) 및 컨트롤러(76)는 적합한 소프트웨어, 또는 하드웨어 및 소프트웨어 엘리먼트의 조합을 실행하는 마이크로프로세서를 포함할 수 있다.
도 1의 구성은 명료함을 위해 간단히 도시된 한 예시적인 시스템 구성이다. 임의의 다른 적합한 구성이 또한 사용될 수 있다. 다양한 인터페이스, 어드레싱 회로, 타이밍 및 시퀀싱 회로, 데이터 스크램블링 회로, 및 디버깅 회로 등과 같이, 본 발명의 원리를 이해하는데 필수적이지 않은 엘리먼트는 명료함을 위해 도면 에서 생략되었다.
도 1에 도시된 예시적인 시스템 구성에서, 메모리 디바이스(24), 및 MSP(52)는 두 개의 개별 집적회로(ICs)로 구현된다. 그러나, 대안의 실시예에서, 메모리 디바이스 및 MSP는 하나의 IC, 또는 시스템온칩(SoC)에 집적될 수 있다. 몇몇 실시예에서, 하나의 MSP(52)는 복수의 메모리 디바이스(24)에 연결될 수 있다. 다른 대안으로서, MSP(52)의 일부 또는 모든 기능은 소프트웨어로 구현될 수 있고, 호스트 시스템의 프로세서 또는 다른 엘리먼트에 의해 수행될 수 있다. 시스템(20)의 임의의 실시예의 추가적인 아키텍처 형태는 미국 가특허출원 제60/867,399호, 및 2007년 5월 10일 출원된 "Combined Distortion Estimation and Error Correction Coding for Memory Devices"란 제목의 PCT 특허출원에 더욱 상세하게 서술되어 있다.
전형적인 기록 오퍼레이션에서, 메모리 디바이스(24)에 기록될 데이터는 호스트로부터 수신되고, I/O 버퍼(56)에 캐싱된다. 인코더/디코더(64)는 데이터를 인코딩하고, 인코딩된 데이터는 데이터 버퍼(72)를 통해 메모리 디바이스(24)로 전송된다. 이 데이터는 프로그래밍을 위해 메모리 디바이스로 전송되기 전에 MSP(52)에 의해 미리 프로세싱될 수 있다. 디바이스(24)에서 데이터는 버퍼(36)에 임시로 저장된다. R/W 유닛(40)은 데이터를 아날로그 값으로 변환하고, 그 데이터를 어레이(28)의 적절한 셀(32)에 기록한다.
전형적인 판독 오퍼레이션에서, R/W 유닛(40)은 적합한 메모리셀(32)로부터 아날로그 전압 값을 판독하고, 그 전압을 소프트 디지털 샘플로 변환한다. 샘플은 버퍼(36)에 캐싱되고 MSP(52)의 버퍼(72)로 전송된다. 몇몇 실시예에서, MSP(52)의 유닛(60)은 전압 샘플을 데이터 비트로 변환한다. 상술된 바와 같이, 가능한 임계 전압의 범위는 하나 이상의 데이터 비트의 임의의 조합을 나타내는, 둘 이상의 영역으로 분할된다. 메모리 셀을 판독할 때, 유닛(60)은 전형적으로 판독된 샘플의 크기를 판독된 전압이 속하고, 그러므로 데이터 비트가 셀에 저장된 영역을 결정하기 위해, 한 세트의 디시전 임계값으로 샘플링한다. 데이터 블록은 버퍼(72)로부터 유닛(60)으로 전송되고, 인코더/디코더(64)는 이 블록의 ECC를 디코딩한다. 디코딩된 데이터는 I/O 버퍼(56)를 통해 호스트로 전송된다. 몇몇 실시예에서, ECC 디코더는 소프트 디코더를 포함하고, 유닛(60)은 전압 샘플을 ECC를 디코딩하기 위해 사용되는 소프트 디코딩 메트릭스로 변환한다.
부가적으로, 신호 프로세싱 유닛(60)은 판독된 샘플에 존재하는 왜곡을 아래 서술된 방법을 사용하여 추정한다. 몇몇 실시예에서, MSP(52)는 데이터를 메모리 셀에 저장하기 전에 스크램블링하고, 왜곡 추정 성능을 향상시키기 위해, 메모리 셀로부터 판독된 데이터를 디스클램블링한다.
메모리 어레이 구조 및 왜곡 메카니즘
도 2는 본 발명의 한 실시예에 다른, 메모리 셀 어레이(28)를 개략적으로 도시하는 다이어그램이다. 도 2는 특정한 어레이 구조로 연결된 플래시 메모리 셀을 도시하지만, 본 발명은 또한 다른 타입의 메모리 셀, 및 다른 어레이 구조에 적용가능한다. 몇몇 예시적인 셀 타입 및 어레이 구조는 상술된 배경기술에 인용된 참조문헌에 서술되어 있다.
어레이(28) 의 메모리 셀(32)은 복수의 로우 및 칼럼을 가진 그리드로 배열되고, 각각의 셀(32)은 플로팅게이트 모스(MOS) 트랜지스터를 포함한다. 임의의 크기의 전하(전자 또는 홀)는 트랜지스터의 게이트, 소스, 및 드레인에 적합한 전압 레벨을 인가함으로써 특정 셀에 저장될 수 있다. 셀에 저장된 값은 트랜지스터를 도전시키도록 트랜지스터의 게이트에 인가될 필요가 있는 최소 전압으로 정의된, 그 셀의 임계 전압을 측정함으로써 판독될 수 있다. 판독된 임계 전압은 셀에 저장된 전하에 비례한다.
도 2의 예시적인 구조에서, 각각의 로우 내의 트랜지스터의 게이트는 워드 라인(80)에 의해 연결된다. 각각의 칼럼 내의 트랜지스터의 소스는 비트 라인(84)에 의해 연결된다. 몇몇 NOR 셀 디바이스와 같은, 몇몇 실시예에서, 소스는 비트 라인에 직접 연결된다. 몇몇 NAND 셀 디바이스와 같은, 대안의 실시예에서, 비트 라인은 플로팅 게이트 셀의 스트링에 연결된다.
전형적으로, R/W 유닛(40)은 특정 셀(32)의 임계 전압을 그것의 게이트에(즉, 셀이 연결된 워드 라인에) 다양한 전압 레벨을 인가하고, 그 셀의 드레인 전류가 특정 임계값을 초과하는지를(즉, 트랜지스터가 도전상태인지) 체크함으로써 판독한다. 유닛(40)은 일반적으로 셀이 연결된 워드 라인에 상이한 전압 값의 한 시퀀스를 적용하고, 드레인 전류가 임계값을 초과하는 최저 게이트 전압을 결정한다. 전형적으로, 유닛(40)은 또한 페이지라 하는, 전체 로우의 셀을 동시에 판독한다.
몇몇 실시예에서, 유닛(40)은 셀의 비트 라인을 특정 전압 레벨로 미리 충 전함으로서, 드레인 전류를 측정한다. 게이트 전압이 원하는 값으로 설정된 후, 드레인 전류는 비트 라인 전압을 셀을 통해 방전시킨다. 유닛(40)은 게이트 전압이 인가된 후 수 밀리초의 비트 라인 전압을 측정하고, 그 비트 라인 전압을 임계값과 비교한다. 몇몇 실시예에서, 각각의 비트 라인(84)은 비트 라인 전류를 증폭하고, 그것을 전압으로 변환하는 각각의 센스 증폭기에 연결된다. 증폭된 전류는 비교기를 사용하여 임계값과 비교된다.
상술된 전압 판독 방법은 한 예시적인 방법이다. 대안으로서, R/W 유닛(40)은 셀(32)의 임계 전압을 판독하는 다른 임의의 적합한 방법을 사용할 수 있다. 예를 들어, 유닛(40)은 비트 라인 전압을 디지털 샘플로 변환하는 하나 이상의 아날로그 투 디지털 변환기(ADCs)를 포함할 수 있다.
메모리 셀 어레이는 전형적으로 복수의 페이지, 즉 동시에 프로그래밍되고 판독되는 메모리 셀의 그룹으로 분할된다. 몇몇 실시예에서, 각각의 페이지는 그 어레이의 전체 로우를 포함한다. 대안의 실시예에서, 각각의 로우는 둘 이상의 페이지로 분할될 수 있다. 셀의 삭제는 통상적으로 복수의 페이지를 포함하는 블록으로 수행된다. 전형적인 메모리 디바이스는 수천 개의 삭제 블록을 포함할 수 있다. 전형적인 삭제 블록은 128 페이지이고, 각각의 수천 셀을 포함하지만, 다른 블록 크기가 또한 사용될 수 있다.
메모리 셀에 저장된 전하 레벨, 및 셀로부터 판독된 전압은 어레이(28) 내의 상이한 왜곡 메카니즘에 의해 발생된 다양한 타입의 왜곡을 포함할 수 있다. 몇몇 왜곡 메카니즘은 셀에 저장되는 실제 전하에 영향을 주고, 다른 메카니즘은 센싱되 는 전압을 왜곡시킨다. 예를 들어, 어레이 내의 인접 셀간의 전기적 크로스 커플링은 특정 셀 내의 임계 전압을 변경할 수 있다. 이러한 영향을 크로스 커플링 왜곡이라 한다. 다른 예로서, 전기 전하는 시간이 흐를수록 셀에서 누수된다. 이러한 에이징 효과의 결과로, 셀의 임계 전압은 최초 기록된 값에서 시간이 흐를수록 드리프트될 수 있다.
통상적으로 왜곡 노이즈라 하는, 다른 타입의 왜곡은 다른 셀 내의 의도하지 않은 전하 변화를 일으키는, 어레이 내의 임의의 셀 상의 메모리 액세스 오퍼레이션(예컨대, 판독, 기록, 또는 삭제 오퍼레이션)에 의해 발생된다. 또 다른 예로서, 특정 셀의 소스-드레인 전류는 백 패턴 의존(BPD)이라 하는 영향을 통해 인접한 셀, 예컨대, 동일한 NAND 셀 스트링 내의 다른 셀, 내의 전하에 의해 영향을 받을 수 있다.
왜곡 추정 및 상쇄 방법
메모리 셀(32) 내의 왜곡은 메모리 디바이스의 성능, 예컨대, 데이터를 복구할 때 에러 확률, 달성가능한 저장 용량, 및 달성가능한 데이터 보유 기간을 저하시킨다. 성능 저하는 특히 데이터를 나타내는 상이한 전압 레벨 간의 차이가 비교적 작은 MLC에서 심하다. 많은 경우에서, 왜곡 레벨은 시간에 따라, 그리고 셀마다 다르다. 그러므로, 조절가능한 방법으로 왜곡을 추정하고, 추정된 왜곡에 따라 동작하는 것이 매우 유리할 것이다.
MSP(52)는 셀(32) 내의 왜곡을 추정하고, 추정된 왜곡 레벨을 사용하여 그 왜곡을 상쇄시키거나 보정하는 다양한 방법을 적용할 수 있다. 왜곡을 보정하는 것에 부가적으로 또는 대안으로서, MSP는 추정된 왜곡을 기초로 다른 타입의 액션을 수행할 수 있다.
예를 들어, MSP는 데이터 리프레쉬 디시전을 수행하기 위해 추정된 왜곡을 사용할 수 있다. 전형적은 구현방법에서, MSP는 다양한 메모리 셀 그룹, 예컨대, 메모리 페이지의 왜곡 레벨을 추정한다. 특정 페이지 내의 왜곡이 특정의 허용 임계 값을 초과한 때, MSP는 그 데이터를 리프래싱(즉, 재-프로그램)한다.
다른 예로서, MSP는 특정 셀 또는 그룹의 셀 내의 달성가능한 저장 용량을 평가하기 위해 추정된 왜곡을 사용할 수 있다. 달성가능한 저장 용량을 기초로, MSP는 전압 레벨, 및/또는 메모리 셀에 데이터를 저장하기 위해 사용된 ECC의 수를 조절할 수 있다. 그러므로, MSP는 시간에 따라 변하는 저장 용량을 매칭시키기 위해, 데이터가 메모리 셀 내에 저장된 밀도를 조절가능하게 변경할 수 있다. 메모리 디바이스의 저장 밀도를 조절하기 위해 왜곡 추정을 사용하는 몇몇 형태는 2007년 5월 10일 출원된 "Memory Device with Adaptive Capacity"란 제목의 PCT 특허출원에 서술되어 있다.
또 다른 예로서, MSP는 디시전 임계값, 즉, 가능한 셀 전압의 범위를 추정된 왜곡을 기초로 디시전 영역으로 분할하는 임계값을 변경할 수 있다. MSP는 디시전 레벨을 최소화하거나, 디코딩 에러 확률을 최소화하거나, 또는 임의의 다른 적합한 성능 조건을 충족시키기 위해 디시전 임계값을 조절할 수 있다. MSP는 또한 ECC를 디코딩하기 위해 ECC 디코더에 의해 사용되는, 로그 확률비(LLR)과 같은, ECC 디코딩 메트릭스를 변경할 수 있다. 이러한 방법은, 예컨대, 상기 언급된, PCT 출원 "Combined Distortion Estimation and Error Correction Coding for Memory Devices"에 서술되어 있다.
도 3-8은 본 발명의 실시예에 따른, 메모리 셀 어레이(28) 내의 왜곡을 추정하고 상쇄시키는 방법을 개략적으로 도시하는 플로우 차트이다. 아래 설명에서, MSP는 페이지 단위로 메모리 셀을 판독하고 왜곡 레벨을 추정하는 것으로 가정한다. 그러나, 대안의 실시예에서, MSP는 임의의 다른 그룹의 메모리 셀을 판독하고 프로세싱할 수 있다. 예를 들어, MSP는 전체 삭제 블록, 또는 심지어 단일 셀을 프로세싱할 수 있다.
도 3은 본 발명의 한 실시예에 따른, 크로스 커플링 왜곡을 추정하고 상쇄하는 방법을 개략적으로 도시하는 플로우 차트이다. 플래시 메모리와 같은, 몇몇 경우에, 크로스 커플링 왜곡은 주변 셀에 저장된 전하에 의해 발생되는 전기장의 전자기적 커플링에 의해 발생된다. NROM 메모리 셀과 같은, 다른 경우에, 크로스 커플링 왜곡은 다른 이유, 예컨대, 공유하는 그라운드 선에 의한 메모리 셀의 소스 전압의 상승에 의해 발생될 수 있다.
크로스 커플링에 의해 영향을 받는, 임의의 메모리 셀, i로부터 판독된 전압은 일반적으로 다음과 같다:
Figure 112008082412436-PCT00001
여기서, g(ci)는 모든 잠재적 간섭 셀이 삭제된 때 셀로부터 판독된 전압을 타나내고, ci는 셀, i 내의 전하 레벨을 나타내고, f(ci, Ci)는 셀 전하가 ci일 때 커플링 효과를 나타내고, Ci는 이웃 셀의 전하 레벨 세트를 나타내고, j≠i이다.
몇몇 실제적인 경우에, 크로스 커플링은 다음과 같은 선형 함수를 사용하여 모델링 될 수 있다:
Figure 112008082412436-PCT00002
여기서, kji는 셀, j에서 셀, i로의 크로스 커플링 계수, 즉 크로스 커플링의 세기를 나타낸다. 이 계수 값은 때때로 셀의 전하 레벨에 의존할 수 있다.
다른 경우에, 임의의 간섭 셀에 의해 발생된 크로스 커플링은 간섭 셀 및 간섭받는 셀 모두의 전하 레벨에 의존한다. 이러한 경우에, 식 [2]는 다음과 같다:
Figure 112008082412436-PCT00003
크로스 커플링 계수 값은 일반적으로 메모리 셀마다 다를 수 있고, 또한 온도, 인가 전압, 및 다른 조건에 따라 다를 수 있다.
도 3의 방법은 판독 단계(90)에서, 한 페이지의 메모리 셀로부터 전압을 판독하는 MSP(52)와 함께 시작한다. 각각의 판독된 전압은 둘 이상의 피트의 레졸루션을 가진 소프트 샘플, 즉 디지털 값으로 표현된다. MSP는 판독된 전압 값으로부터 하드 디시전을 생성한다. 즉, MSP는, 셀마다, 그 셀에 기록된 것에 가장 가까운 노미널 전압 레벨을 결정한다. MSP는 각각의 판독된 전압을 상이한 비트 조합을 나타내는 상이한 노미널 전압값과 비교할 수 있고, 판독된 전압과 가장 가까운 노미널 전압 레벨을 결정한다. 이 오퍼레이션을 종종 하드 슬라이싱이라 한다.
MSP는 계수 추정 단계(94)에서, 판독된 전압 레벨 및 대응 하드 디시전을 기초로 크로스 커플링 계수를 추정한다. 대부분 실제적인 경우에, 대다수의 하드 디시전은 셀에 기록된 정확한 비트 조합을 반영하고, 소수의 하드 디시전만이 에러를 가진다. 하드 디시전의 에러확률이 데이터를 신뢰성있게 복구할 만큼 충분하지 못할 수도 있으나, 전형적으로 신뢰성 있는 계수 추정에 충분하다.
MSP는 크로스 커플링 계수의 값을 추정하기 위한 임의의 적합한 추정 방법을 사용할 수 있다. 많은 실제 경우에, 이 계수값은 프로세싱되는 셀 그룹에 대하여 실질적으로 일정하다. 이러한 경우에, MSP는 전체 세트의 소프 전압 샘플 및 대응 하드 디시전을 사용하여 계수를 추정하는, 공지된 다양한 블록 추정 기술을 사용할 수 있다.
대안으로써, MSP는 전압 샘플 및 하드 디시전을 순차적으로, 예컨대, 한 샘플씩 프로세싱하고, 크로스 커플링 계수의 원하는 값으로 변환하는 공지된 다양한 순차적 추정 방법을 사용할 수 있다. 순차적 추정 방법은, 예를 들어, 최소평균제곱(LMS) 프로세스, 반복적 최소제곱(RLS) 프로세스, 칼만 필터링 프로세스, 또는 임의의 다른 적합한 프로세스를 포함할 수 있다.
몇몇 실시예에서, 추정 프로세스는 판독된 전압과 대응 하드 디시전 사이의 거리 메트릭스(예컨대, 유클리드 거리)를 줄일 것을 시도한다.
예를 들어, LMS 프로세스를 사용한 때, MSP는 다음 식을 반복적으로 계산한다:
Figure 112008082412436-PCT00004
여기서, t는 프로세싱된 샘플과 하드 디시전을 따라 진행하는 증가 인덱스를 나타낸다(예컨대, 샘플 인덱스).
Figure 112008082412436-PCT00005
은 반복, t에서, 크로스 커플링 계수, kji의 추정된 값을 나타낸다. μ는 수정의 이터레이션 스텝 크기를 나타내고,
Figure 112008082412436-PCT00006
는 반복, t에서 셀, j로부터 판독된 전압 샘플을 나타낸다.
Figure 112008082412436-PCT00007
는,
Figure 112008082412436-PCT00008
, 즉 반복, t에서 판독된 전압과 대응 하드 디시전(노미널 전압) 사이의 차이로 정의된다. 크로스 커플링계수가 셀의 전하 레벨을 곱하는 식 [2]와 달리, 식 4에서는 크로스 커플링 계수가 셀 전압을 곱함을 알아야 한다.
몇몇 실시예에서, kji의 값은 셀, j를 프로그래밍함으로써 발생된 셀 전압, vi의 변화를 측정함으로써 그 셀의 프로그래밍 동안 추정될 수 있다.
MSP는 크로스 커플링 보상 단계(98)에서, 추정된 크로스 커플링 계수를 기초로 판독된 전압 내의 크로스 커플링 왜곡을 보상한다. MSP는 전형적으로 크로스 커플링 왜곡의 레벨이 감소된, 보정 전압을 산출한다. 예를 들어, MSP는 상이한 간섭 셀로부터 발생하고 임의의 판독된 전압에 영향을 주는 추정된 크로스 커플링 왜곡 컴포넌트를 더하고, 그 셀 전압에서 그 합을 뺄 수 있다. 이러한 오퍼레이션을 때때로 선형 균등화라 한다.
MSP는 대안으로서 공지된 바와 같이, 디시전 피드백 균등화(DFE)를 적용함으로써 크로스 커플링 왜곡을 상쇄할 수 있다. 대안의 실시예에서, MSP는 공지된 비 터비(Viterbi) 알고리즘을 사용하는 것과 같은, 감소된 최대확률 시퀀스 추정(MLSE) 프로세스를 사용하여 크로스 커플링 왜곡을 상쇄할 수 있다. 또 다른 대안으로서, MSP는 최대값 귀납(MAP) 추정 프로세스 또는 추정된 크로스 커플링 계수를 기초로 크로스 커플링 왜곡을 보상하는 임의의 다른 적합한 방법을 사용할 수 있다.
MSP는 보정 전압을 사용하여 메모리 셀에 저장된 데이터를 복구한다. 몇몇 실시예에서, MSP는 두 경로로 판독된 전압을 프로세싱한다(즉, 판독된 전압 값을 두번 스캔한다). 제1경로에서, MSP는 크로스 커플링 계수를 추정한다. 제2경로에서, MSP는 판독된 전압을 보정하고, 추정된 계수를 사용하여 데이터를 복구한다. 두-경로 프로세싱은, 예컨대, 그 셀이 상이한 온도, 인가 전압, 또는 다른 조건에서 기록된 것과 같은 이유로, 상이한 블록 또는 페이지의 메모리 셀이 상이한 크로스 커플링 계수 값을 가진 때, 이점을 가진다.
대안의 실시예에서, MSP는 먼저 단일 경로에서 계수 추정 및 데이터 복구를 실행한다. 그 다음, MSP는 (예컨대, ECC에 의해 보정되지 않은 에러를 검출함으로써) 복구된 데이터의 퀄리티를 추정하고, 데이터 복구 퀄리티가 매우 낮은 경우에 제2경로를 수행한다. 이러한 기술은 평균 프로세싱 지연 또는 프로세싱 파워를 거의 변경하지 않고, 계수가 시간에 따라 변하는 경우에 이점을 가진다.
앞서 언급한 바와 같이, 몇몇 실시예에서, MSP는 비랜덤 데이터가 추정 정확도를 저하시키는 것을 방지하기 위해, 메모리 셀에 기록되기 전에 데이터를 스크램블한다.
몇몇 왜곡 메카니즘에서, 특정 메모리 셀 내의 왜곡 레벨은 동일한 비트 라인을 따라 위치한 다른 셀의 왜곡 레벨과 연관된다. 예를 들어, 몇몇 NAND 플래시 메모리에서, 각각의 비트 라인을 따른 셀은 스트링이라 불리는, 16 또는 32개의 셀 그룹 내에서 서로 연결되어 있다. 특정 셀로부터 판독된 전압은 종종 그 스트링 내의 다른 셀의 전압에 의존한다. 이러한 효과를 일반적으로 백 패턴 의존(BPD)이라 한다. 다른 예로서, 센스 증폭기에 의해 발생되는 파라미터 변화 및 다른 왜곡은 또한 한 비트 라인을 따른 상이한 셀에 연관될 수 있다.
다른 시나리오에서, 특정 메모리 셀 내의 왜곡 레벨은 동일한 워드 라인을 따라 위치한 다른 셀의 왜곡 레벨과 연관될 수 있다. 예를 들어, 동일한 페이지 내의 다른 셀과 비교하여, 특정 셀이 프로그래밍되기 위해 상당히 더 긴 시간을 요구하는 것을 고려하라. 이러한 페이지가 프로그래밍될 때, 대부분의 셀은 특정 횟수의 P&V 반복 후 의도된 전하 레벨에 도달하지만, "느린" 셀 내의 전하 레벨은 여전히 원하는 레벨과 차이가 있다. 그러므로, 느린 셀의 소스-드레인 전류는 매우 낮다. 느린 셀은 추가적인 P&V 반복을 사용하여 계속 프로그래밍되고, 그 전류가 상승한다. 증가된 전류는 그라운드 라인 상의 강하된 전압을 증가시키고, 페이지 내의 다른 셀의 소스 드레인 전류를 증가시킨다. 그 결과 그 페이지 내의 다른 셀의 임계 전압이 강하한다.
도 4의 설명은 비트 라인을 따른 연관된 왜곡을 언급하고 있으나, 도 4의 방법은 또한 워드 라인을 따라 연관된 왜곡을 예측하고 보상하기 위해 사용될 수 있다. 다른 대안으로서, 본 방법은 임의의 그룹 내의 셀의 왜곡 레벨이 어레이 내에 서 서소 인접하기 위치된 셀, 및 공통 인가 전압(Vcc) 라인, 그라운드 라인, 또는 파워 서플라이 회로를 가진 셀과 같이, 서로 연관되어 있는 임의의 다른 왜곡 메카니즘을 예측하고 보정하기 위해 사용될 수 있다.
임의의 비트 라인을 따른 셀의 왜곡 레벨이 연관되어 있을 때, 왜곡 레벨은 때때로 다음과 같이 모델링될 수 있다:
Figure 112008082412436-PCT00009
여기서, e(n,m)은 칼럼(비트 라인), m 및 로우(페이지), n에서의 셀 내 왜곡 레벨을 나타낸다. c(i,m)은 i번째 페이지의 m번째 비트 라인에서 셀로부터 판독된 전압을 나타낸다. fi 및 gi는 각각 이전 페이지 및 후속 페이지 내의 동일한 비트라인을 따른 셀에 대한 페이지, i의 전압의 의존성을 정의하는 함수를 나타낸다. 식[5]는 페이지가 순차적으로 프로세싱됨을 가정한다.
도 4는 본 발명의 한 실시예에 따른, 비트 라인 연관 왜곡을 예측하고 상쇄시키기 위한 반복적인 방법을 개략적으로 도시하는 플로우 차트이다. 본 방법은 왜곡 레코딩 단계(102)에서, 이전에 판독된 메모리 셀의 왜곡 레벨을 레코딩한 MSP와 함께 시작한다. MSP는 가능하다면 ECC 디코딩 후, 판독된 전압과 예상된 노미널 전압을 비교하는 것과 같은, 임의의 방법을 사용하여 왜곡 레벨을 계산할 수 있다.
MSP는 타겟 판독 시스템(106)에서, 타겟 셀이라 불리는, 특정 메모리 셀의 전압을 판독한다. 그 다음, MSP는 예측 단계(110)에서, 동일한 비트라인을 따른 다른 셀의 레코딩된 왜곡값, 및 이들 셀로부터 판독된 전압을 기초로 타겟 셀 내의 왜곡 레벨을 예측한다. MSP는, 예컨대, 상기 식 [5]을 사용하여 왜곡 레벨을 예측할 수 있다.
MSP는 보정 단계(114)에서 추정된 왜곡 레벨을 사용하여 타겟 셀로부터 판독된 전압을 보정한다. 그 다음, MSP는 디코딩 단계(118)에서 보정 전압을 기초로 타겟 셀에 저장된 데이터를 디코딩한다. ECC 디코더가 소프트웨어 디코더를 포함한 때, MSP는 대안으로서, 추정된 왜곡 레벨을 기초로, 그 셀에 저장된 비트의 소프트 ECC 메트릭스(예컨대, LLR)를 보정할 수 있다. 이러한 보정 방법은, 예컨대, 앞서 언급된, PCT 출원, "Combined Distortion Estimation and Error Correction Coding for Memory Devices"에 서술되어 있다.
도 4의 설명은 명료함을 위해 단일 타겟 셀을 다루고 있으나, 예측 및 보정 프로세스는 전형적으로 페이지가 메모리로부터 판독되는 것처럼, 복수의 메모리 셀에서 병렬로 수행된다.
메모리 효율을 증가시키기 위해, MSP는 각각의 이전에 판독된 셀의 왜곡 레벨을 레코딩하고 저장하는 대신에, 각각의 비트 라인에 대하여 하나의 왜곡값만 저장할 수 있다. 저장된 값,
Figure 112008082412436-PCT00010
은 n번째 페이지를 판독한 후, e(n, m)의 추정된 값을 나타낸다. 판독된 제1페이지에 대하여,
Figure 112008082412436-PCT00011
는 전형적으로 영(zero)으로 초기화된다.
n번째 페이지를 디코딩할 때, MSP는 다음 식을 사용하여
Figure 112008082412436-PCT00012
의 값을 갱신 한다:
Figure 112008082412436-PCT00013
여기서,
Figure 112008082412436-PCT00014
은 n번째 패이지에 대한 소정의 스텝 크기를 나타낸다. c(n,m)은 n번째 페이지의 m번째 비트의 셀로부터 판독된 전압을 나타낸다.
Figure 112008082412436-PCT00015
는 디코더 출력을 기초로 하는 셀의 노미널 전압을 나타낸다. 페이지, n+1를 판독할 때, MSP는
Figure 112008082412436-PCT00016
을 계산함으로써
Figure 112008082412436-PCT00017
을 기초로 왜곡을 예측할 수 있다. 보정 전압(예컨대,
Figure 112008082412436-PCT00018
)은 데이터를 디코딩하는데 사용된다.
상술된 방법은 가변 이득, 바이어스, 또는 센스 증폭기의 다른 가변 파라미터를 예측하고 보정하는데 특히 유효할 수 있다. 이러한 파라미터는 또한 특정 전압 레벨 분포 또는 모든 전압 레벨의 결합 분포의 확장 또는 가변 바이어스를 포함한다.
본 방법이 한 어레이의 NAND 플래시 셀 내의 BPD 왜곡을 보정하기 위해 사용된 때, 예컨대, 셀이 오버 프로그래밍되기 때문에, 대부분의 왜곡에 영향을 주는 특정 셀이 존재할 수 있다. 이러한 경우에, 본 반복적 방법은
Figure 112008082412436-PCT00019
의 값이 리셋임을 나타내는 셀이 식별될 때까지, NAND 셀 스트링 상에서 반복될 수 있다. 전형적으로 NAND 셀 스트링마다 수행되는 BPD 왜곡을 보정하는 것과 달리, 센스 증폭기 변동은 전체 비트 라인마다 트래킹되고 수행된다.
몇몇 실시예에서, MSP(52)는 비트 라인, 워드 라인, 또는 다른 연관 셀 그룹 마다 트래킹되는 파라미터를 보유한 표 또는 다른 데이터 구조를 유지한다.
상술된 바와 같이, 몇몇 메모리 실은 왜곡 노이즈, 즉, 어레이 내의 다른 셀에서 실행되는 오퍼레이션에 의해 발생된 왜곡에 의해 영향을 받을 수 있다. 몇몇 실시예에서, MSP(52)는 간섭받는 셀이 판독될 때가 아니라, 왜곡 노이즈가 생성된 시점에 왜곡 노이즈를 보정한다.
도 5는 본 발명의 한 실시예에 따른, 교란 노이즈를 보정하는 방법을 개략적으로 도시하는 플로우 차트이다. 본 방법은 교란 발생 오퍼레이션 단계(122)에서, 교란 노이즈가 몇몇 메모리 셀에 영향을 줄 수 있는 메모리 액세스 오퍼레이션을 수행하는 MSP(52)와 함께 시작한다. 메모리 액세스 오퍼레이션은, 예컨대, 프로그래밍, 판독, 또는 삭제 오퍼레이션을 포함할 수 있다. MSP는 잠재적인 피교란 셀을 판독하는 단계(126)에서, 메모리 액세스 오퍼레이션에 의해 교란될 수 있는 메모리 셀로부터의 전압을 판독한다.
MSP는 교란 추정 단계(130)에서, 잠재적인 피교란 셀 내의 교란 노이즈의 레벨을 평가한다. MSP는 이러한 목적을 위한 임의의 적합한 왜곡 추정 방법을 사용할 수 있다. 예를 들어, MSP는 그 셀로부터 판독된 전압이 하드 슬라이싱에 의해 결정된 각각의 노미널 전압 레벨, 또는 셀로부터 판독된 전에 ECC 디코딩을 적용함으로써 결정된 노미널 전압 레벨과 비교되는, 디시전-다이렉티드 방법을 사용할 수 있다.
몇몇 경우에, 교란 노이즈는 이웃 페이지 내의 일부의 삭제된 셀 내의 전하 레벨을 평가할 수 있다. 이러한 경우에, MSP는 잠재적으로 교란받을 페이지 내의 삭제된 셀(즉, 삭제된 셀을 검출하는데 통상적으로 사용되는 임계 레벨과 상이한, 그 전압이 특정 임계 레벨 아래인 셀)의 개수를 카운팅함으로써 교란 레벨을 평가한다. MSP는 잠재적으로 왜곡하는 메모리 액세스 오퍼레이션 전후에 삭제된 셀의 개수를 비교할 수 있고, 두 결과 간의 차이로부터 교란의 레벨을 평가할 수 있다.
MSP는 높은 교란 검사 단계(134)에서, 추정된 교란 레벨이 소정의 임계값을 초과하는지를 검사한다. 교란 레벨이 높은 것으로 간주되면, MSP는 교란 보정 단계(138)에서, 그 잠재적 피교란 셀 내의 교란 노이즈를 보정한다. 예를 들어, MSP는 동일한 셀 내의 데이터를 리프레쉬하거나, 다른 셀 내(예컨대, 다른 페이지 내)의 데이터를 재-프로그래밍하거나, 또는 기존의 프로그래밍된 셀에 전하를 추가할 수 있다. MSP는 또한 더 강력한 ECC를 사용하여 데이터를 인코딩하고, 다른 페이지에 새로-인코딩된 데이터를 저장할 수 있다. 그렇지 않다면, 즉, 교란 레벨이 허용가능한 것으로 간주되면, 본 방법은, 종료 단계(142)에서 종료한다.
매 판독, 기록, 및 삭제 오퍼레이션 후, 도 5의 프로세스를 수행하는 몇몇 경우에서, 프로세싱 시간을 상당히 증가시킬 수 있다. 그러므로, 몇몇 실시예에서, MSP는 시스템이 아이들(idle)인 시간 동안 도 5의 방법을 수행한다.
도 6은 본 발명의 대안의 실시예에 따라, 교란 노이즈를 보정하는 다른 방법을 개략적으로 도시하는 플로우차트이다. 본 방법은 교란 노이즈가 타겟 셀 보다 더 최근에 프로그래밍된 셀에 의해 임의의 타겟 셀에 대하여 영향을 받는다는 사실을 기초로 한다. 간략함을 위해, 타겟 셀보다 더 최근에 프로그래밍된 셀을 타겟 셀 보다 "더 젊다"고 한다. 타겟 셀보다 먼저 프로그래밍된 셀을 "더 늙은" 셀이라 한다.
본 방법은 잠재적 간섭 셀을 식별하는 단계(146)에서, 타겟 셀에 대하여 잠재적으로 교란 노이즈를 발생시키는 셀을 식별하는 MSP(52)와 함께 시작한다. 그 다음, MSP는 더 젊은 셀 식별 단계(150)에서, 타겟 셀 보다 젊은 잠재적 간섭 셀을 식별하고 표시한다. 몇몇 실시예에서, MSP는 각각의 페이지가 프로그래밍된 시간의 지시를, 종종 그 데이터와 함께 페이지의 일부로서 저장한다. MSP는 셀이 타겟 셀 보다 젊은지를 결정하기 위해 저장된 지시를 요청한다.
메모리 페이지가 순차적인 순서로 기록된 때, MSP는 타겟 셀에 대하여 더 높은 번호의 페이지내의 셀을 더 젊은 것으로 간주할 수 있다. 대안으로서, 메모리 페이지가 순차적인 순서로 기록되지 않은 때, MSP는 각각의 페이지에 이웃 페이지에 관한 그것의 상대 나이를 나타내는 변수를 저장할 수 있다. 이 변수는 그 페이지가 프로그래밍된 때 설정되고 저장된다. 예를 들어, 이 변수는 삭제 블록에서 지금까지 프로그래밍된 페이지의 횟수를 카운트하는 카운터 값을 포함할 수 있다. 대안으로서, 이 변수는 이웃한 페이지가 현 페이지가 프로그래밍된 때 프로그래밍되거나 삭제되었는지를 나타내는 각각의 이웃한 페이지에 대한 불(Boolean) 플래그를 포함할 수 있다. 다른 대안으로서, MSP는 타겟 셀보다 더 젊은 잠재적 간섭 셀을 결정하는 임의의 다른 적합한 방법을 사용할 수 있다.
MSP(52)가 간섭 셀을 판독하는 단계(154)에서, 표시된 셀(즉, 타겟 셀보다 더 젊은 잠재적 간섭 셀)의 전압을 판독한다. MSP는 간섭 셀을 재판독하고, 그리 고/또는 잠재적 간섭 셀에 저장된 데이터를 신뢰성있게 디코딩하기 위해 ECC 디코더를 사용한다. MSP는 또한 타겟 셀 판독 단계(158)에서, 타겟 셀의 전압을 판독한다. 몇몇 실시예에서, 타겟 셀의 전압은 각각의 셀에 저장된 데이터 비트의 개수보다 더 많은 개수의 비트를 가진 ADC를 사용하는 것과 같이, 높은 레졸루션으로 판돌된다. 표시된 셀은 때때로 감소된 레졸루션으로 판독될 수 있다.
MSP는 교란 영향 추정 단계(162)에서, 더 젊은 잠재적 간섭 셀에 의해 타겟 셀이 영향을 받는 교란 노이즈의 레벨을 추정한다. 추정된 교란 레벨은 잠재적 피간섭 셀의 상대 나이(age), 잠재적 간섭 셀에 저장된 전압 값 및/또는 데이터, 타겟 셀에 대한 잠재적 간섭 셀의 위치(예컨대, 이웃한 페이지에 위치하거나, 다음 이웃 페이지에 위치하는 등), 피간섭 셀의 최근 프로그래밍-삭제 사이클의 횟수, 및/또는 임의의 다른 정보 및 기준에 따를 수 있다. 교란 레벨의 효과적인 추정은 상기 파라미터에 대한 조건부 평균값이다.
MSP는 교란 상쇄 단계(166)에서, 추정된 교란 레벨를 보상한다. 예를 들어, MSP는 보정 전압을 산출하기 위해, 타겟 셀로부터 판독된 전압에서 추정된 교란 레벨을 뺄 수 있다. 보정 전압은 타겟 셀에 저장된 데이터를 디코딩하거나, ECC 디코더 메트릭스를 수정하기 위해 사용된다.
상기 내용이 명료함을 위해 단일 타겟을 다루고 있으나, 도 6의 프로세스는, 페이지가 메모리로부터 판독될 때, 복수의 타겟 메모리 셀에 대하여 병렬로 수행될 수 있다.
몇몇 실시예에서, 메모리 셀은 P&V 프로세스를 사용하여 프로그래밍될 수 있 고, MSP(52)는 그 셀을 프로그래밍할 때 왜곡 보상을 적용한다. 몇몇 실시예에서, MSP는 메모리 셀의 프로그래밍 및 판독 동안 왜곡 보상을 적용한다.
P&V 프로세스는 일반적으로 메모리 셀을 프로그래밍하기 위해 사용된다. 전형적인 P&V 프로세스에서, 셀은 펄스마다 전압 레벨이 상승하는 한 시퀀스의 전압 펄스를 적용함으로써 프로그래밍된다. 프로그래밍된 전압 레벨은 각각의 펄스 후 판독(검증)되고, 이 반복은 원하는 레벨이 도달될 때까지 계속된다. P&V 프로세스는, 예컨대, ~'Jung et al.'의, "A 117㎟ 3.3V Only 128Mb Multilevel NAND Flash Memory for Mass Storage Applications", 'IEEE Journal of Solid State Circuits', (11:31), 1996년 11월, 페이지 1575-1583, 및 "Lee et al.'의, "Effects of Floating Gate Interference on NAND Flash Memory Cell Operation", 'IEEE Electron Device Letters', (23:5), 2002년 5월, 페이지 265-266에 서술되어 있다.
도 7은 본 발명의 다른 실시예에 따른, 메모리 셀 어레이(28) 내 왜곡의 추정 및 상쇄 방법을 개략적으로 도시하는 플로우차트이다. 셀로부터 판독된 전압이 원하는 값에 도달하였는지를 검증하는, 몇몇 공지된 P&V 프로세스와 달리, 도 7의 방법은 메모리 셀에 저장된 전하가 저장된 데이터를 나타내는, 원하는 전하에 도달하게 한다.
판독된 전압 대신에 셀에 저장된 전하 레벨을 검증하는 것은 왜곡 레벨이 기록 시간과 판독 시간 사이의 차이일 수 있기 때문에, 이점이 있다. 본 방법은 임의의 왜곡 타입 또는 메카니즘을 보상하기 위해 사용될 수 있다.
본 방법은 MSP(52)가 임의의 페이지를 프로그래밍하고자 할 때 개시한다. 프로그래밍될 페이지 내의 주어진 타겟 셀에 대하여, MSP는 잠재적 간섭 셀 판독 단계(170)에서, 그 타겟 셀에 대하여 잠재적으로 왜곡을 일으키는 셀을 판독한다(몇몇 경우에, MSP는 셀이 최근에 프로그래밍되었기 때문에 그 값을 이미 가지고 있어, 셀을 판독할 필요가 없다). MSP는 왜곡 계산 단계(174)에서, 타겟 셀에 대하여 잠재적 간섭 셀에 의해 발생된 왜곡을 추정한다. MSP는 왜곡 레벨을 추정하기 위해, 상술된 다양한 추정 프로세스와 같은, 임의의 적합한 방법을 사용할 수 있다.
MSP는 추정된 왜곡을 기초로, 타겟 셀을 프로그래밍하기 위한 미리 보정된 전압값을 계산한다. 전형적으로, MSP는 셀에 저장하고자 하는 노미널 전압 레벨로부터 추정된 왜곡값을 뺌으로써 보정 전압을 산출한다.
MSP는 미리 보정된 프로그래밍 단계(178)에서, P&V 프로세스를 사용하여 타겟 셀을 미리 보정된 전압으로 프로그래밍한다. 그 결과, 타겟 셀에 저장된 전하 레벨은, 기록 시점에 존재하는 왜곡을 상쇄시키기 위해 미리 보정되기 때문에, 그 셀에 기록된 데이터를 순수하게 반영한다.
셀이 프로그래밍되고 오랜시간 뒤에 발생할 수 있는, 타겟 셀을 판독할 때, MSP는 셀 판독 단계(182)에서, 타겟 셀 및 잠재적 간섭 셀을 판독한다. MSP는 왜곡 재추정 단계(186)에서, 잠재적 간섭 셀에 의해 판독시 타겟 셀에 발생되는 왜곡을 재추정한다. MSP는 왜곡 레벨을 재추정하기 위해, 상술된 다양한 추정 프로세스와 같은, 임의의 적합한 방법을 사용할 수 있다.
상술된 바와 같이, 타겟 셀은 오래전에 프로그래밍되었고, 온도 및 서플라이 전압과 같은 오퍼레이팅 환경은 변경될 수 있다. 또한, 추가적인 잠재적 간섭 셀은 타겟 셀이 프로그래밍된 후 판독되거나, 프로그래밍되거나, 또는 삭제될 수 있다. 그러므로, 단계(186)에서 계산된 왜곡 레벨은 단계(174)에서 계산된 왜곡 레벨과 상당히 상이할 수 있다.
MSP는 보정 단계(190)에서, 재추정된 왜곡값을 기초로 타겟 셀로부터 판독된 전압을 보정한다. 보정 전압은 타겟 셀로부터 데이터를 디코딩하기 위해 사용된다. 셀 데이터를 디코딩하는 것은, 간섭 셀의 전압을 판독할 때 왜곡을 줄이기 위해, 디시전-다이렉티드 방식으로, 반복적으로 수행될 수 있다.
도 7의 방법에서, 왜곡은 셀을 기록할 때 및 판독할 때 모두 보정되고, 각각의 보정은 현재 존재하는 실제 왜곡 레벨을 사용한다. 그러므로, 본 방법은 주지된 P&V 프로세스에 비해, 오퍼레이팅 환경의 변화, 및 후속 프로그래밍 오퍼레이션에 대한 내성이 강하고, 더 안정하다.
몇몇 실시예에서, 왜곡 보정은 프로그래밍동안 적용되고, 그 셀은 제2왜곡 보정없이 판독된다. 이러한 실시예에서, 도 7의 방법의 단계(182-190)는 생략되고, MSP는 아직 프로그래밍되지 않은 셀로부터의 간섭을 고려해야 한다.
도 8은 본 발명의 한 실시예에 따른, 타겟 메모리 셀 내의 왜곡을 추정하기 위한 또 다른 방법을 개략적으로 도시하는 플로우 차트이다. 도 8의 방법은 타겟 셀 보다 이전에 프로그래밍된 셀에 의해 발생되는 왜곡이 타겟 셀 보다 더 최근에 프로그래밍된 셀에 의해 발생되는 왜곡과 상이할 수 있다는 사실을 사용한다.
다른 가정은 어레이가 상술된 바와 같이, P&V 프로세스를 사용하여 프로그래밍되었다는 것이다. 상술된 'Jung et al.'의 아티클과 같은, 몇몇 공지된 P&V 프로세스에서, 임의의 페이지 내의 각각의 셀은 0...M-1로 지정된 M개의 전압 레벨 중 하나로 프로그래밍되고, 여기서 레벨 0은 삭제된 레벨이다. P&V 프로세스는 M개의 단계로 페이지를 프로세싱한다. 단계, i에서, 일 시퀀스의 전압 펄스는 프로그래밍된 레벨이 i 이상이어야 하는 셀에 인가된다. 각각의 펄스 후, 프로세스는 상이한 셀의 전압을 판독하고, 그들의 원하는 레벨에 도달한 셀에 펄스 공급을 중단한다.
몇몇 실시예에서, 주어진 타겟 셀에 대하여, MSP는 프로그래밍 시간에 따라 잠재적 간섭 셀을 분류한다(상술된 바와 같이, MSP는 각각의 페이지가 프로그래밍된 시간의 지시를 저장할 수 있고, 이 분류 프로세스에서 저장된 지시를 사용한다). D1으로 지정된, 한 서브셋의 셀은 타겟 셀이 프로그래밍된 시간에 P&V 프로세스에 의해 아직 완전히 프로그래밍되지 않은, 잠재적 간섭 셀을 포함한다. 클래스, D1 내의 셀은 타겟 셀이 프로그래밍된 때, 삭제된 레벨이거나, 부분적으로 프로그래밍되어 있지만, 그 이후에 프로그래밍되었을 수 있다.
몇몇 프로그래밍 스킴에서, 셀은 수 개의 스테이지로 프로그래밍된다. 예를 들어, 4-레벨 셀의 몇몇 프로그래밍 방법에서, 최소유효비트(LSB), 및 최대유효비트(MSB)는 두 개별 단계에서 기록된다. 한 예시적인 방법은 'Takeuchi et al.'의, "A Multipage Cell Architecture for High-Speed Programming Multilevel NAND Flash Memories", 'IEEE Journal of Solid-State Circuits', (33:8), 1998년 8월, 페이지 1228-1238에 서술되어 있다. 이러한 방법에서, 셀은 임의의 시점에 중간 레벨로 프로그래밍될 수 있고, 미래의 프로그래밍 단계가 그 셀을 그 최종적인 프로그래밍된 값으로 가져간다. 이러한 프로그래밍 방법이 사용된 때, 클래스, D1은 타겟 셀이 프로그래밍된 때 삭제된 레벨이거나, 중간 프로그레밍 레벨인 셀을 포함하는 것으로 확장되지만, 그 이후 그 최종값으로 프로그래밍되었을 수 있다.
D2로 지정된, 다른 서브셋의 셀(32)은 타겟 셀이 프로그래밍된 시간에 이미 프로그래밍된, 잠재적 간섭 셀을 포함한다. 이들 셀로부터 타겟셀로의 간섭은 타겟 셀이 프로그래밍될 때 이미 존재하였기 때문에, P&V 프로세스는 이미, 적어도 부분적으로, 이러한 간섭에 대하여 보상하였다. D3로 지정된, 제3클래스의 셀은 타겟 셀과 동시에 프로그래밍된 잠재적 간섭 셀, 즉, 타겟 셀과 동일한 페이지 상에 있는 셀을 포함한다.
MSP(52)는 상이한 클래스의 잠재적 간섭 셀에 따라, 타겟 셀에 대한 왜곡을 추정할 수 있다. n 및 m은 각각 어레이(28) 내의 타겟 셀의 로우 및 칼럼 번호를 나타낸다. xn,m은 P&V 프로세스를 사용하여 기록된 후 타겟 셀의 전압을 나타낸다. xi,j는 타겟 셀 전압이 그것의 마지막 프로그래밍 반복을 후속하여 검증된 시점에 로우, i, 및 칼럼, j에 위치한 셀의 전압을 나타낸다. yn,m은 왜곡으로 인해, xn,m과 상이한, 타겟 셀로부터 판독된 셀 전압 값을 나타낸다.
yn,m에 존재하는 전체 왜곡은 다음과 같다:
Figure 112008082412436-PCT00020
여기서, hn,m,i,j는 로우, n, 및 칼럼, m의 타겟 셀에 대한, 로우, i, 및 칼럼, j의 간섭 셀로부터의 크로스 커플링 간섭 계수를 나타낸다. 상기 식[7]은 선형 왜곡 모델을 나타내지만, 비선형 모델 또한 사용될 수 있다.
클래스, D2내의 셀은 타겟 셀이 프로그래밍된 때 이미 프로그래밍되어 있고, 이들 셀에 의해 발생되는 왜곡은 이미 P&V 프로세스가 타겟 셀을 프로그래밍한 때 이미 존재하였다. P&V 프로세스는 타겟 셀이 프로그래밍된 때 이 왜곡에 대하여 이미 (적어도 부분적으로) 보상하였다. 그럼에도 불구하고, 이 보정은 타겟 셀이 프로그래밍된 시점에 보정되었고, 에이징, 전하누수, 및 타겟 셀이 판독되는 시간과 시간 사이에 발생될 수 있는 다른 효과를 고려하지 않았다. 상기 식[7]의 제2항에서
Figure 112008082412436-PCT00021
는 타겟 셀이 프로그래밍된 시간에 간섭 셀 내에 존재하는 전압의 추정값이다.
몇몇 실시예에서,
Figure 112008082412436-PCT00022
는 이들 셀의 출력에 ECC 디코딩을 적용함으로써 추정될 수 있다. ECC는 셀에 기록된 비트 세트를 복구함으로써, 심한 누수로 인해 발생된 에러와 같은, 심한 에러를 보정하는데 도움을 줄 수 있다. 대안으로서, 식[7]의 제2항의
Figure 112008082412436-PCT00023
는 전압 레벨이 yi,j인 셀에 대한 누설 에러를 추정하는
Figure 112008082412436-PCT00024
(또는
Figure 112008082412436-PCT00025
)와 같은, yi,j의 메모리없는 함수, 또는
Figure 112008082412436-PCT00026
의 메모리없는 함수를 사용하여 추정될 수 있다.
클래스, D3에 속하는 셀인, 식[7]의 제3항은 본질적으로 타겟 셀보다 낮거나 같은 레벨로 프로그래밍된 D3 셀에 의해 발생되는 왜곡을 보상하는 P&V 프로세스의 사용을 가정한다. 타겟 셀과 동일한 페이지 상의 잠재적 간섭 셀이 더 높은 레벨로 프로그래밍될 때, 이러한 프로그래밍은 타겟 셀이 완전히 프로그래밍된 후, P&V 프로세스의 이후 경로에서 수행되는 것이 전형적이다. 그러므로, 타겟 셀 보다 높은 레벨을 가진 D3 셀에 의해 발생되는 왜곡의 상당 부분은 타겟 셀이 프로그래밍되는 시점에 존재하지 않을 것이고, P&V 프로세스는 이러한 왜곡의 이러한 부분은 보상할 수 없을 것이다. 식[7]의 제3항은 'Jung et al."의 아티클에 서술된 프로세스와 같이, 주어진 셀의 모든 비트를 단일 오퍼레이션으로 프로그래밍하는 P&V 프로세스를 사용할 때 특히 효과적이다. 'Takeuchi et al.'의 아티클에 서술된 방법과 같은, 복수의 단계에서 셀에 상이한 데이터 비트를 프로그래밍하는 P&V를 사용할 때, 식[7]의 제3항은 생략될 수 있다.
도 8의 방법은 MSP(52)가 전압 판독 단계(194)에서, 어레이(28)의 메모리 셀(32)로부터 전압을 판독하는 단계와 함께 개시한다. 전압은 타겟 셀의 전압 및 타겟셀에 잠재적으로 간섭을 일으키는 셀의 전압을 모두 포함한다. 본 예에서, 어레이(28)의 페이지는 순차적 순서로, 즉, 로우 바이 로우로 판독되지만, 다른 판독 구성이 또한 사용될 수 있다.
MSP는, 프로그램 시간 추정 단계(196)에서, 타겟 셀이 프로그래밍된 시점에 타겟 셀 및 잠재적 간섭 셀의 값(예컨대, 전하 레벨)을 추정한다. 이 추정은 타겟 셀 및 잠재적 간섭 셀로부터 판독된 전압, 타겟 셀 및 잠재적 간섭 셀의 프로그래밍 순서, 셀이 겪은 삭제 사이클의 횟수, 인가 전압 및 온도 등과 같은 환경 파라미터와 같은 팩터를 고려할 수 있다.
그 다음, MSP는 기록-판독 차이 추정 단계(198)에서, 타겟 셀이 프로그래밍된 시점과 타겟 셀이 판독된 시점에에 발생되는 추정된 왜곡 레벨 사이의 차이를 추정한다. MSP는 차이를 추정하기 위해 식[7]을 사용할 수 있다. MSP는 보정 단계(200)에서, 추정된 차이를 사용하여(예컨대, 타겟 셀로부터 판독된 전압에서 이 차이를 뺌으로써, 또는 ECC 메트릭스를 수정하여) 왜곡을 보상한다.
몇몇 P&V 프로세스에서, 페이지는 순차적 순서로, 낮은 번호의 페이지에서 높은 번호의 페이지로, 메모리에 기록된다. 그러므로, 셀, xn,m이 프로그래밍될 때, 페이지, i≤n 내의 셀은 이미 프로그래밍된 것이고, P&V 프로세스는 이러한 셀에 의한 왜곡을 보상한 것으로 가정될 수 있다.
몇몇 실시예에서, MSP(52)는 페이지가 기록된 순서의 역순으로, 즉, 높은 번호의 페이지부터 낮은 번호의 페이지로 페이지를 판독한다. 페이지, n을 판독할 때, MSP는 각각의 셀 칼럼, m에 대하여, 왜곡 메트릭스, Mm(n)를 계산한다:
Figure 112008082412436-PCT00027
여기서, N은 삭제 블록 내의 로우(워드 라인)의 개수를 나타내고, Xi,j는 로우 i, 및 칼럼, j에서의 셀로부터 판독된 전압을 나타낸다. 왜곡은 본 삭제 블록 내의 셀에만 영향을 미치는 것으로 가정한다. MSP는
Figure 112008082412436-PCT00028
을 계산함으로써, 현재 페이지로부터 판독된 전압에서 왜곡 메트릭스를 상쇄한다. 함수, f로서 사용될 수 있는 예시적인 함수는
Figure 112008082412436-PCT00029
또는
Figure 112008082412436-PCT00030
을 포함할 수 있다.
대안의 실시예에서, MSP는 셀의 전체 블록을 동시에 프로세싱한다. 프로그래밍될 데이터, 및 크로스 커플링 계수, hn,m,i,j를 사용하여, MSP는 프로그래밍된 값과 판독된 값 사이의 에러를 계산하고, 이 에러를 보상한다.
도 8의 예시적인 방법은 특정 P&V 프로세스 구현을 다루고 있으나, 본 방법은, 필요한 수정을 가하여, 임의의 다른 적합한 P&V 프로세스와 함께 사용될 수 있다. 개시된 실시예를 기초로 다른 타입의 P&V 프로세스와 함께 사용하기 위한 본 방법의 변형은 당업자들에게 명백할 것이다.
왜곡 추정값을 기초로 한 데이터 리프레싱
몇몇 실시예에서, MSP(52)는 추정된 왜곡 레벨을 기초로 메모리 어레이(28)에 저장된 데이터를 리프레싱한다(즉, 재-프로그래밍한다).
도 9는 본 발명의 실시예에 따른, 메모리 셀 어레이에 저장된 데이터를 리플레싱하는 방법을 개략적으로 도시하는 플로우 차트이다. 본 방법은 페이지 판독 단계(210)에서, 어레이(28)로부터 메모리 페이지를 판독하는 MSP(52)와 함께 개시한다. MSP는 페이지 왜곡 추정 단계(214)에서, 판독된 페이지 내의 왜곡 레벨을 추정한다. MSP는 이러한 목적으로, 상술된 방법과 같은, 임의의 적합한 왜곡 추정 방법을 사용할 수 있다.
MSP는 왜곡 레벨 검사 단계(218)에서, 그 왜곡 레벨이 허용가능한지를 검사한다. 예를 들어, MSP는 추정된 왜곡 레벨을 최대 허용가능한 왜곡 레벨을 나타내는 소정의 임계값과 비교할 수 있다. 최대 허용가능한 왜곡 레벨은 전형적으로, 임계치에 도달된 때, 디코딩된 데이터가 여전히 에러가 없을 확률이 높도록 선택된다. 이러한 조건은 리프레싱된 데이터가 거의 에러가 없음을 보장한다.
왜곡 레벨이 허용가능하면, 본 방법은 페이지 판독 단계(210)로 되돌아가고, MSP는 메모리 페이지를 판독하고 검사하는 것을 계속한다.
한편, MSP가 메모리 페이지 내의 왜곡 레벨이 허용가능한 레벨 보다 더 높다고 판단하면, MSP는 재-프로그래밍 단계(222)에서, 페이지의 데이터를 재-프로그래밍한다. 그 다음, 본 방법은 페이지 판독 단계(210)로 되돌아간다.
재-프로그래밍이 왜곡 레벨에 관계없이, 주기적으로 수행되는 몇몇 공지된 메모리 리플레싱 방법과 달리, 도 9의 방법은 필요할 때만 데이터를 재-프로그래밍한다. 그러므로, 재-프로그래밍 오퍼레이션의 빈도는 공지된 방법 보다 감소된다. 전형적으로 도 9의 방법은 시스템(20)의 정상 오퍼레이션과 함께 결합된다. 즉, MSP는 전용의 판독 오퍼레이션을 수행하지 않고, 리프레싱의 필요 여부를 평가하기 위해, 노멀 페이지 판독 및/또는 왜곡 추정 오퍼레이션을 사용한다.
본 명세서에 서술된 실시예들은 멀티레벨 셀(MLC)로부터 데이터를 추출하는 것을 주로 다루고 있으나, 본 발명의 원리는 단일레벨 셀(SLC)과 함께 사용될 수도 있다. 본 명세서에 서술된 실시예는 솔리드 스테이트 메모리 디바이스로부터 데이터를 추출하는 것을 주로 다루고 있으나, 본 발명의 원리는 하드 디스크 드라이브(HDD), 및 다른 데이터 저장 매체 및 디바이스에 데이터를 저장하고 추출하기 위해 또한 사용될 수 있다.
그러므로, 상술된 실시예는 예시의 방법으로 인용되었고, 본 발명은 상기 특정하게 도시되고 서술된 내용으로 제한되지 않음을 이해해야 한다. 그보다는, 본 발명의 범위는 상술된 다양한 피처의 조합 및 하위조합을 포함함은 물론, 종래 기술에 개시되지 않았고, 본 명세서를 읽은 당업자들에게 가능한 이들의 변형 및 수정을 모두 포함한다.

Claims (86)

  1. 메모리를 오퍼레이팅하는 방법으로서,
    상기 메모리의 한 그룹의 아날로그 메모리 셀에, 한 세트의 가능한 값으로부터 선택된, 각각의 제1전압 레벨로 데이터를 저장하는 단계;
    상기 데이터를 저장하는 단계 후, 상기 각각의 제1전압 레벨과 상이한 제2전압레벨을 발생시키는 크로스 커플링 간섭에 의해 영향을 받는, 각각의 제2전압 레벨을 상기 아날로그 메모리 셀로부터 판독하는 단계;
    각각이 상기 제1전압 레벨의 상기 가능한 값 중 각각의 값에 대응하는, 각각의 하드 디시전을 유도하도록 상기 제2전압 레벨을 프로세싱하는 단계;
    상기 제2전압 레벨 및 상기 각각의 하드 디시전을 기초로, 상기 아날로그 메모리 셀 간의 상기 크로스 커플링 간섭을 정량화하는 크로스 커플링 계수를 추정하는 단계; 및
    상기 추정된 크로스 커플링 계수를 사용하여 상기 판독된 제2전압 레벨로부터 상기 아날로그 메모리 셀 그룹에 저장된 상기 데이터를 복구하는 단계를 포함하는 것을 특징으로 하는 메모리를 오퍼레이팅하는 방법.
  2. 제 1 항에 있어서, 상기 크로스 커플링 계수를 추정하는 단계는 블록 추정 프로세스를 사용하여 상기 제2전압 레벨 및 상기 각각의 하드 디시전을 프로세싱하는 단계를 포함하는 것을 특징으로 하는 메모리를 오퍼레이팅하는 방법.
  3. 제 1 항에 있어서, 상기 크로스 커플링 계수를 추정하는 단계는 상기 크로스 커플링 계수로 수렴하는 순차적 추정 프로세스를 사용하여 상기 제2전압 레벨 및 상기 각각의 하드 디시전을 순차적으로 스캐닝하는 단계를 포함하는 것을 특징으로 하는 메모리를 오퍼레이팅하는 방법.
  4. 제 1 항에 있어서, 상기 크로스 커플링 계수를 추정하는 단계는 상기 판독된 제2전압 레벨 및 상기 각각의 하드 디시전 사이의 거리 메트릭스를 감소시키는 추정 프로세스를 적용하는 단계를 포함하는 것을 특징으로 하는 메모리를 오퍼레이팅하는 방법.
  5. 제 1 항에 있어서, 상기 메모리 내의 제2아날로그 셀에 제1아날로그 메모리 셀에 의해 발생된 크로스 커플링 간섭을, 상기 제1아날로그 메모리 셀로부터 판독된 상기 제2전압 레벨, 및 상기 제2아날로그 메모리 셀로부터 판독된 상기 제2전압 레벨을 모두 기초로 하여, 평가하는 단계를 더 포함하는 것을 특징으로 하는 메모리를 오퍼레이팅하는 방법.
  6. 제 1 항에 있어서, 상기 데이터를 복구하는 단계는 선형 균등화 프로세스, 디시전-피드백 균등화(DFE) 프로세스, 최대값 귀납(MAP) 추정 프로세스, 및 최대 확률 시퀀스 추정(MLSE) 프로세스 중 하나를 사용하여 상기 제2전압 레벨로부터 상 기 크로스 커플링 간섭을 제거하는 단계를 포함하는 것을 특징으로 하는 메모리를 오퍼레이팅하는 방법.
  7. 제 1 항에 있어서, 상기 크로스 커플링 계수를 추정하는 단계, 및 상기 데이터를 복구하는 단계는 제1프로세싱 단계에서 상기 크로스 커플링 계수를 추정하는 단계, 및 상기 제1프로세싱 단계에 후속하는 제2프로세싱 단계에서, 상기 추정된 크로스 커플링 간섭을 상쇄시키는 단계를 포함하는 것을 특징으로 하는 메모리를 오퍼레이팅하는 방법.
  8. 제 7 항에 있어서, 상기 크로스 커플링 계수를 추정하는 단계, 및 상기 데이터를 복구하는 단계는 상기 제2프로세싱 단계의 후속 인스탠스 동안 상기 추정된 크로스 커플링 계수를 사용하는 단계, 및 상기 데이터의 복구에 실패했을 때에만 상기 제1프로세싱 단계를 반복하는 단계를 포함하는 것을 특징으로 하는 메모리를 오퍼레이팅하는 방법.
  9. 제 1 항에 있어서, 상기 데이터를 저장하는 단계는 에러 보정 코드(ECC)를 사용하여 상기 데이터를 인코딩하는 단계는 포함하고, 상기 데이터를 복구하는 단계는 상기 추정된 크로스 커플링 계수를 기초로하는 에러 보정 메트릭스를 계산하는 단계, 및 상기 에러 보정 메트릭스를 사용하여 상기 ECC를 디코딩하는 단계를 포함하는 것을 특징으로 하는 메모리를 오퍼레이팅하는 방법.
  10. 메모리를 오퍼레이팅하는 방법으로서,
    상기 메모리 셀의 한 서브셋이 연관된 왜곡을 가진, 상기 메모리의 아날로그 메모리 셀 내의 각각의 제1전압 레벨로 데이터를 저장하는 단계;
    상기 데이터를 저장하는 단계 후, 상기 서브셋 내의 하나 이상의 상기 아날로그 메모리 셀로부터, 상기 연관된 왜곡으로 인해 상기 제1전압 레벨과 상이한 각각의 제2전압 레벨을 판독하는 단계;
    상기 제2전압 레벨 내의 각각의 왜곡 레벨을 추정하도록 상기 하나 이상의 아날로그 메모리 셀로부터 판독된 상기 제2전압 레벨을 프로세싱하는 단계;
    상기 서브셋 내의 다른 아날로그 메모리 셀로부터 제2전압 레벨을 판독하는 단계;
    상기 서브셋 내의 상기 하나 이상의 아날로그 메모리 셀의 상기 추정된 각각의 왜곡 레벨을 기초로, 상기 다른 아날로그 메모리 셀로부터 판독된 상기 제2전압 레벨 내의 왜곡 레벨을 예측하는 단계;
    상기 예측된 왜곡 레벨을 사용하여, 상기 다른 메모리 셀로부터 판독된 상기 제2전압 레벨을 보상하는 단계; 및
    상기 보정된 제2전압 레벨을 기초로 상기 다른 메모리 셀에 저장된 상기 데이터를 복구하는 단계를 포함하는 것을 특징으로 하는 메모리 를 오퍼레이팅하는 방법.
  11. 제 10 항에 있어서, 상기 서브 셋의 메모리 셀은 공통 비트 라인에 위치된 메모리 셀, 공통 워드 라인에 위치된 메모리 셀, 공통 회로를 가진 메모리 셀, 및 서로 인접하여 위치된 셀로 구성된 한 그룹의 서브셋 타입으로부터 선택된 적어도 하나의 서브셋 타입을 포함하는 것을 특징으로 하는 메모리를 오퍼레이팅하는 방법.
  12. 제 10 항에 있어서, 상기 제2전압 레벨을 프로세싱하는 단계는 상기 서브셋 내의 상기 하나 이상의 아날로그 메모리 셀로부터 판독된 상기 제2전압 레벨 내의 상기 왜곡 레벨을 나타내는 단일값만 캐싱하는 단계를 포함하고, 상기 왜곡 레벨을 예측하는 단계는 상기 캐싱된 단일값을 기초로 상기 예측된 왜곡 레벨을 계산하는 단계를 포함하는 것을 특징으로 하는 메모리를 오퍼레이팅하는 방법.
  13. 제 10 항에 있어서, 상기 왜곡을 예측하는 단계는 상기 메모리 셀의 서브셋에 공통인 왜곡 파라미터를 트래킹하는 단계, 및 상기 왜곡 파라미터를 하나의 데이터 구조에 저장하는 단계를 포함하는 것을 특징으로 하는 메모리를 오퍼레이팅하는 방법.
  14. 메모리를 오퍼레이팅하는 방법으로서,
    상기 메모리의 한 그룹의 아날로그 메모리 셀에 각각의 제1전압 레벨로 데이터를 저장하는 단계;
    상기 메모리 내의 제1아날로그 메모리 셀에서 메모리 액세스 오퍼레이션을 실행하는 단계;
    상기 메모리 액세스 오퍼레이션을 실행하는 단계에 응답하여, 상기 메모리 내의 제2아날로그 메모리 셀로부터 제2전압 레벨을 판독하는 단계;
    상기 제1아날로그 메모리 셀에서 상기 매모리 액세스 오퍼레이션을 실행함으로써 발생되는 상기 제2전압 레벨 내의 교란 레벨을 추정하기 위해 상기 제2전압 레벨을 프로세싱하는 단계;
    상기 추정된 교란 레벨을 사용하여 상기 제2전압 레벨을 보정하는 단계; 및
    상기 보정된 제2전압 레벨을 기초로 상기 제2아날로그 메모리 셀에 저장된 상기 데이터를 복구하는 단계를 포함하는 것을 특징으로 하는 메모리를 오퍼레이팅하는 방법.
  15. 제 14 항에 있어서, 상기 메모리 액세스 오퍼레이션은 프로그래밍 오퍼레이션, 판독 오퍼레이션, 및 삭제 오퍼레이션으로 구성된 한 그룹의 오퍼레이션으로부터 선택된 적어도 하나의 오퍼레이션을 포함하는 것을 특징으로 하는 메모리를 오퍼레이팅하는 방법.
  16. 제 14 항에 있어서, 상기 제2전압 레벨을 프로세싱하는 단계 및 제2전압 레벨을 보정하는 단계는 상기 추정된 교란 레벨을 소정의 레벨과 비교하는 단계, 및 상기 추정된 교란 레벨이 상기 소정의 레벨을 초과한 때에만 상기 제2전압 레벨을 보정하는 단계를 포함하는 것을 특징으로 하는 메모리를 오퍼레이팅하는 방법.
  17. 제 14 항에 있어서, 상기 제2전압 레벨을 보정하는 단계는 상기 제2아날로그 메모리 셀에 저장된 상기 데이터를 재-프로그래밍하는 단계를 포함하는 것을 특징으로 하는 메모리를 오퍼레이팅하는 방법.
  18. 제 14 항에 있어서, 상기 제2전압 레벨은 상기 제2아날로그 메모리 셀과 상이한 다른 아날로그 메모리 셀에 상기 제2아날로그 메모리 셀에 저장된 데이터를 복사하는 단계를 포함하는 것을 특징으로 하는 메모리를 오퍼레이팅하는 방법.
  19. 제 14 항에 있어서, 상기 제2전압 레벨을 보정하는 단계는 상기 제2메모리 셀에 데이터를 저장하기 위해 사용되는 제1전압 레벨을 증가시키는 단계를 포함하는 것을 특징으로 하는 메모리를 오퍼레이팅하는 방법.
  20. 제 14 항에 있어서, 상기 제2전압 레벨을 프로세싱하는 단계는 상기 데이터를 저장하거나 판독하지 않는 아이들(idle) 기간 동안 실행되는 것을 특징으로 하는 메모리를 오퍼레이팅하는 방법.
  21. 제 14 항에 있어서, 상기 제2전압 레벨을 판독하는 단계는 각각의 복수의 제2메모리 셀로부터 복수의 제2전압 레벨을 판독하는 단계를 포함하고, 상기 제2전 압 레벨을 프로세싱하는 단계는 상기 메모리 액세스 오퍼레이션으로 인해 삭제된 레벨에서 프로그래밍된 레벨로 전이된 상기 제2메모리 셀의 개수를 평가하는 단계를 포함하는 것을 특징으로 하는 메모리를 오퍼레이팅하는 방법.
  22. 제 14 항에 있어서, 상기 데이터를 저장하는 단계는 복수의 그룹의 상기 아날로그 메모리 셀에 순차적인 순서로 상기 데이터를 저장하는 단계를 포함하고, 상기 제2전압 레벨을 판독하는 단계는 상기 메모리 셀의 그룹으로부터 역순으로 판독하는 단계를 포함하고, 상기 제2전압 레벨을 프로세싱하는 단계는 상기 제1메모리 셀 이전에 판독된 상기 그룹 내의 상기 메모리 셀의 상기 제2전압에 응답하여 상기 제1메모리에 발생된 상기 교란 레벨을 추정하는 단계를 포함하는 것을 특징으로 하는 메모리를 오퍼레이팅하는 방법.
  23. 메모리를 오퍼레이팅하는 방법으로서,
    상기 메모리의 한 그룹의 아날로그 메모리 셀에 각각의 제1전압으로 데이터를 저장하는 단계;
    상기 데이터를 저장하는 단계 후, 상기 아날로그 메모리 셀로부터 상기 각각의 제1전압 레벨과 적어도 일부 상이한 각각의 제2전압 레벨을 판독하는 단계;
    상기 데이터가 상기 아날로그 메모리 셀에 저장된 각각의 시간과 상기 데이터가 상기 타겟 아날로그 메모리 셀에 저장된 시간 사이의 관계를 기초로 상기 서브셋 내의 상기 아날로그 메모리 셀을 복수의 클래스로 분류하는 단계;
    상기 클래스 내의 상기 아날로그 메모리 셀에 의해 상기 타겟 메모리 셀 내의 상기 제2전압 레벨에 발생되는 각각의 왜곡을, 상기 클래스 각각에 대하여, 추정하는 단계;
    하나 이상의 상기 클래스 각각에 대하여 상기 추정된 각각의 왜곡을 사용하여 상기 타겟 아날로그 메모리 셀로부터 판독된 상기 제2전압 레벨을 보정하는 단계; 및
    상기 보정된 제2전압 레벨을 기초로 상기 타겟 아날로그 메모리 셀에 저장된 상기 데이터를 복구하는 단계를 포함하는 것을 특징으로 하는 메모리를 오퍼레이팅하는 방법.
  24. 제 23 항에 있어서, 상기 데이터를 저장하는 단계, 및 상기 제2전압 레벨을 판독하는 단계는 프로그램 및 검증(P&V) 프로세스를 적용하는 단계를 포함하는 것을 특징으로 하는 메모리를 오퍼레이팅하는 방법.
  25. 제 23 항에 있어서, 상기 아날로그 메모리 셀을 분류하는 단계는 상기 데이터가 상기 타겟 아날로그 메모리 셀 보다 더 최근에 저장된 서브셋 내의 상기 아날로그 메모리 셀을 식별하는 단계를 포함하고, 상기 제2전압 레벨을 보정하는 단계는 상기 식별된 아날로그 메모리 셀 내의 상기 왜곡만 기초로 하여 상기 타겟 아날로그 메모리 셀로부터 판독된 상기 제2전압 레벨을 보정하는 단계를 포함하는 것을 특징으로 하는 메모리를 오퍼레이팅하는 방법.
  26. 제 23 항에 있어서, 상기 아날로그 메모리 셀을 분류하는 단계는 상기 데이터가 상기 타겟 아날로그 메모리 셀 보다 더 최근에 저장된 서브셋 내의 상기 아날로그 메모리 셀을 포함하는 제1클래스, 상기 데이터가 상기 타겟 아날로그 메모리 셀 보다 먼저 저장된 서브셋 내의 상기 아날로그 메모리 셀을 포함하는 제2클래스, 및 상기 데이터가 상기 타겟 아날로그 메모리 셀에 데이터를 저장함과 동시에 저장된 서브셋 내의 상기 아날로그 메모리 셀을 포함하는 제3클래스를 정의하는 단계를 포함하는 것을 특징으로 하는 메모리를 오퍼레이팅하는 방법.
  27. 제 23 항에 있어서, 상기 제2전압 레벨을 판독하는 단계, 상기 왜곡을 추정하는 단계, 및 상기 제2전압 레벨을 보정하는 단계는 상기 타겟 아날로그 메모리 셀로부터 판독된 상기 제2전압 레벨을 제1레졸루션으로 프로세싱하는 단계, 및 상기 서브셋 내의 상기 아날로그 메모리 셀로부터 판독된 상기 제2전압 레벨을 상기 제1레졸루션보다 더 거친 제2레졸루션으로 프로세싱하는 단계를 포함하는 것을 특징으로 하는 메모리를 오퍼레이팅하는 방법.
  28. 제 23 항에 있어서, 상기 데이터를 저장하는 단계는 상기 데이터가 상기 아날로그 메모리 셀에 저장된 시간의 지시를 저장하는 단계를 포함하고, 상기 아날로그 메모리 셀을 분류하는 단계는 상기 저장된 지시를 질문하는 단계를 포함하는 것을 특징으로 하는 메모리를 오퍼레이팅하는 방법.
  29. 제 23 항에 있어서, 상기 왜곡을 추정하는 단계는 상기 아날로그 메모리 셀의 프로그래밍 시간, 상기 아날로그 메모리 셀에 저장된 상기 데이터, 상기 타겟 메모리 셀에 대한 상기 아날로그 메모리 셀의 위치, 상기 타겟 메모리 셀이 겪은 최근 프로그래밍-삭제 사이클의 횟수로 구성된 한 그룹의 파라미터로부터 선택된 적어도 하나의 파라미터에 응답하여 상기 왜곡 레벨을 추정하는 단계를 포함하는 것을 특징으로 하는 메모리를 오퍼레이팅하는 방법.
  30. 메모리를 오퍼레이팅하는 방법으로서,
    상기 메모리에 저장할 데이터를 수신하는 단계;
    상기 아날로그 메모리 셀이 상기 데이터를 나타내는 각각의 물리적 크기값을 저장하게 하기 위해 상기 메모리의 한 그룹의 아날로그 메모리 셀을 프로그래밍하기 위한 각각의 제1전압 레벨을 결정하는 단계;
    상기 결정된 제1전압 레벨을 사용하여 상기 그룹 내의 상기 아날로그 메모리 셀을 프로그래밍하는 단계;
    상기 아날로그 메모리 셀을 프로그래밍하는 단계 후, 상기 각각의 아날로그 메모리 셀로부터 제2전압 레벨을 판독하는 단계; 및 상기 제2전압 레벨로부터 상기 데이터를 복구하는 단계를 포함하는 것을 특징으로 하는 메모리를 오퍼레이팅하는 방법.
  31. 제 30 항에 있어서, 상기 제1전압 레벨을 결정하는 단계는 타겟 아날로그 메모리 셀에 저장된 상기 물리적 크기값에 발생되는 왜곡을, 상기 타겟 아날로그 메모리 셀에 상기 데이터를 저장할 때 하나 이상의 다른 아날로그 메모리 셀에 저장된 상기 물리적 크기값에 의해, 추정하는 단계를 포함하고, 상기 추정된 왜곡값에 응답하여 상기 타겟 아날로그 메모리 셀을 프로그래밍하기 위해 사용되는 제1전압 레벨을 미리 보정하는 단계를 포함하는 것을 특징으로 하는 메모리를 오퍼레이팅하는 방법.
  32. 제 30 항에 있어서, 상기 데이터를 복구하는 단계는 타겟 아날로그 메모리 셀에 저장된 상기 물리적 크기값에 발생되는 왜곡을 상기 판독된 제2전압 레벨을 기초로 상기 제2전압 레벨을 판독할 때 하나 이상의 다른 아날로그 메모리 셀에 저장된 상기 물리적 크기값에 의해 추정하는 단계, 상기 추정된 왜곡값을 사용하여 상기 타겟 아날로그 메모리 셀로부터 판독된 제2전압을 보정하는 단계, 및 상기 보정된 제2전압 레벨을 기초로 상기 타겟 아날로그 메모리 셀에 저장된 상기 데이터를 복구하는 단계를 포함하는 것을 특징으로 하는 메모리를 오퍼레이팅하는 방법.
  33. 제 30 항에 있어서, 상기 아날로그 메모리 셀을 프로그래밍하는 단계는 상기 프로그래밍된 제1전압 레벨을 검증하는 단계를 포함하는 것을 특징으로 하는 메모리를 오퍼레이팅하는 방법.
  34. 제 30 항에 있어서, 상기 물리적 크기는 전하를 포함하는 것을 특징으로 하는 메모리를 오퍼레이팅하는 방법.
  35. 메모리를 오퍼레이팅하는 방법으로서,
    상기 메모리의 한 그룹의 아날로그 메모리 셀에 각각의 제1전압 레벨로 데이터를 저장하는 단계;
    상기 데이터를 저장하는 단계 후, 상기 각각의 제1전압과 적어도 일부 상이한 제2전압 레벨을 상기 그룹 내의 상기 아날로그 메모리 셀로부터 판독하는 단계;
    상기 아날로그 메모리 셀로부터 판독된 상기 제2전압 레벨 내의 왜곡 레벨을 추정하는 단계; 및
    상기 추정된 왜곡 레벨이 소정의 왜곡 기준을 위반한 때, 상기 메모리의 상기 아날로그 메모리 셀에 상기 데이터를 재-프로그래밍하는 단계를 포함하는 것을 특징으로 하는 메모리를 오퍼레이팅하는 방법.
  36. 제 35 항에 있어서, 상기 소정의 왜곡 기준은 최대 허용가능한 왜곡 레벨을 정의하는 임계값을 포함하는 것을 특징으로 하는 메모리를 오퍼레이팅하는 방법.
  37. 메모리를 오퍼레이팅하는 방법으로서,
    상기 메모리의 한 그룹의 아날로그 메모리 셀에 각각의 제1전압 레벨로 데이터를 저장하는 단계;
    상기 데이터를 저장하는 단계 후, 상기 각각의 제1전압 레벨과 적어도 일부 상이한 각각의 제2전압 레벨을 상기 아날로그 메모리 셀로부터 판독하는 단계;
    상기 타겟 메모리 셀이 프로그래밍된 제1시간 인스탠스에서 상기 타겟 메모리 셀에 상기 서브셋 내의 상기 메모리 셀에 의해 발생된 제1왜곡 레벨과, 상기 타겟 메모리 셀이 판독된 제2시간 인스탠스에서 상기 타겟 메모리 셀에 상기 서브셋 내의 상기 메모리 셀에 의해 발생된 제2왜곡 레벨 사이의 차이를 추정하는 단계; 및
    상기 추정된 차이를 사용하여 상기 타겟 메모리 셀로부터 판독된 상기 제2전압 레벨을 보정하는 단계를 포함하는 것을 특징으로 하는 메모리를 오퍼레이팅하는 방법.
  38. 메모리를 오퍼레이팅하는 방법으로서,
    상기 메모리의 한 그룹의 아날로그 메모리 셀에 각각의 제1전압 레벨로 데이터를 저장하는 단계;
    상기 데이터를 저장하는 단계 후, 제2전압 레벨을 상기 각각의 제1전압 레벨과 상이하게 만드는 크로스 커플링 간섭에 의해 영향을 받는, 각각의 제2전압 레벨을 상기 아날로그 메모리 셀로부터 판독하는 단계;
    상기 제2전압 레벨을 프로세싱함으로써 상기 아날로그 메모리 셀 간의 상기 크로스 커플링 간섭을 정량화하는 크로스 커플링 계수를 추정하는 단계; 및
    상기 추정된 크로스 커플링 계수를 사용하여 상기 판독된 제2전압 레벨로부 터 상기 아날로그 메모리 셀의 그룹 내에 저장된 상기 데이터를 복구하는 단계를 포함하는 것을 특징으로 하는 메모리를 오퍼레이팅하는 방법.
  39. 제 38 항에 있어서, 상기 메모리 내의 제2아날로그 메모리 셀에 제1아날로그 메모리 셀에 의해 발생된 상기 크로스 커플링 간섭을, 상기 제1아날로그 메모리 셀로부터 판독된 상기 제2전압 레벨, 및 상기 제2아날로그 메모리 셀로부터 판독된 상기 제2전압 레벨을 모두 기초로 하여, 평가하는 단계를 더 포함하는 것을 특징으로 하는 메모리를 오퍼레이팅 하는 방법.
  40. 데이터 저장 장치로서,
    복수의 아날로그 메모리 셀을 포함한 메모리와 통신하도록 동작하는 인터페이스; 및
    상기 인터페이스에 연결된 메모리 신호 프로세서(MSP)를 포함하고, 상기 MSP는 상기 메모리의 한 그룹의 아날로그 메모리 셀에 한 세트의 가능한 값으로부터 선택된 각각의 제1전압 레벨로 데이터를 저장하고, 제2전압 레벨을 상기 각각의 제1전압 레벨과 상이하게 만드는 크로스 커플링 간섭에 의해 영향을 받는, 각각의 제2전압 레벨을, 상기 데이터를 저장한 후, 상기 아날로그 메모리 셀로부터 판독하고, 각각이 상기 제1전압 레벨의 상기 가능한 값 중 각각의 값에 대응하는, 각각의 하드 디시전을 유도하도록 상기 제2전압 레벨을 프로세싱하고, 상기 제2전압 레벨 및 상기 각각의 하드 디시전을 기초로, 상기 아날로그 메모리 셀 간의 상기 크로스 커플링 간섭을 정량화하는 크로스 커플링 계수를 추정하고, 그리고 상기 추정된 크로스 커플링 계수를 사용하여 상기 제2전압 레벨로부터 상기 아날로그 메모리 셀 그룹에 저장된 상기 데이터를 복구하도록 배열되어 있는 것을 특징으로 하는 데이터 저장 장치.
  41. 제 40 항에 있어서, 상기 MSP는 블록 추정 프로세스를 사용하여 상기 제2전압 레벨 및 상기 각각의 하드 디시전을 프로세싱함으로써 상기 크로스 커플링 계수를 추정하도록 배열되어 있는 것을 특징으로 하는 데이터 저장 장치.
  42. 제 40 항에 있어서, 상기 MSP는 상기 크로스 커플링 계수로 수렴하는 순차적 추정 프로세스를 사용하여 상기 제1전압 레벨 및 상기 각각의 하드 디시전을 순차적으로 스캐닝함으로써 상기 크로스 커플링 계수를 추정하도록 배열되어 있는 것을 특징으로 하는 데이터 저장 장치.
  43. 제 40 항에 있어서, 상기 MSP는 상기 판독된 제2전압 레벨과 상기 각각의 하드 디시전 사이의 거리 메트릭스를 감소시키는 추정 프로세스를 적용하도록 배열되어 있는 것을 특징으로 하는 데이터 저장 장치.
  44. 제 40 항에 있어서, 상기 MSP는 제2아날로그 메모리 셀에 제1아날로그 메모리 셀에 의해 발생된 상기 크로스 커플링 간섭을, 상기 제1아날로그 메모리 셀로부 터 판독된 제2전압 레벨, 및 상기 제2아날로그 메모리 셀로부터 판독된 상기 제2전압 레벨을 모두 기초로 하여, 평가하도록 배열되어 있는 것을 특징으로 하는 데이터 저장 장치.
  45. 제 40 항에 있어서, 상기 MSP는 선형 균등화 프로세스, 디시전-피드백 균등화(DFE) 프로세스, 최대값 귀납(MAP) 추정 프로세스, 및 최대 확률 시퀀스 추정(MLSE) 프로세스 중 하나를 사용하여 상기 제2전압 레벨로부터 상기 크로스 커플링 간섭을 상쇄하도록 배열되어 있는 것을 특징으로 하는 데이터 저장 장치.
  46. 제 40 항에 있어서, 제1프로세싱 단계에서 상기 크로스 커플링 계수를 추정하고, 상기 제1프로세싱 단계에 후속하는 제2프로세싱 단계에서 상기 추정된 크로스 커플링 간섭을 상쇄시키도록 배열되어 있는 것을 특징으로 하는 데이터 저장 장치.
  47. 제 46 항에 있어서, 상기 MSP는 상기 제2프로세싱 단계의 후속 인스탠스 동안 상기 추정된 크로스 커플링 계수를 사용하고, 상기 데이터를 복구하는데 실패한 때에만 상기 제1프로세싱 단계를 반복하도록 배열되어 있는 것을 특징으로 하는 데이터 저장 장치.
  48. 제 40 항에 있어서, 상기 MSP는 상기 데이터를 저장하기 전에 에러 보정 코 드(ECC)를 사용하여 상기 데이터를 인코딩하고, 상기 추정된 크로스 커플링 계수를 기초로 에러 보정 메트릭스를 계산하고, 그리고 상기 에러 보정 메트릭스를 사용하여 상기 ECC를 디코딩함으로써 상기 데이터를 복구하도록 배열되어 있는 것을 특징으로 하는 데이터 저장 장치.
  49. 데이터 저장 장치로서,
    한 서브셋의 상기 메모리 셀이 연관된 왜곡을 가진, 복수의 아날로그 메모리 셀을 포함하는 메모리와 통신하도록 동작하는, 인터페이스; 및
    상기 인터페이스에 연결된 메모리 신호 프로세서(MSP)를 포함하고, 상기 MSP는 상기 아날로그 메모리 셀에 각각의 제1전압 레벨로 데이터를 저장하고, 상기 연관된 왜곡으로 인해 상기 제1전압 레벨과 상이한 각각의 제2전압 레벨을, 상기 데이터를 저장한 후, 상기 서브셋 내의 하나 이상의 상기 아날로그 메모리 셀로부터 판독하고, 상기 제2전압 레벨 내의 각각의 왜곡 레벨을 추정하기 위해 상기 하나 이상의 상기 아날로그 메모리 셀로부터 판독된 상기 제2전압 레벨을 프로세싱하고, 상기 서브셋 내의 다른 아날로그 메모리 셀로부터 제2전압 레벨을 판독하고, 상기 서브셋 내의 상기 하나 이상의 상기 아날로그 메모리 셀의 상기 추정된 각각의 왜곡 레벨을 기초로 상기 다른 아날로그 메모리 셀로부터 판독된 상기 제2전압 레벨 내의 왜곡 레벨을 예측하고, 상기 예측된 왜곡 레벨을 사용하여 상기 다른 메모리 셀로부터 판독된 상기 제2전압 레벨을 보정하고, 그리고 상기 보정된 제2전압 레벨을 기초로 상기 다른 메모리 셀에 저장된 상기 데이터를 복구하도록 배열되어 있는 것을 특징으로 하는 데이터 저장 장치.
  50. 제 49 항에 있어서, 상기 메모리 셀의 서브셋은 공통 비트 라인에 위치된 메모리 셀, 공통 워드 라인에 위치된 메모리 셀, 공통의 회로를 가진 메모리 셀, 및 서로 인접하게 위치된 메모리 셀로 구성된 한 그룹의 서브셋 타입으로부터 선택된 적어도 하나의 서브셋 타입을 포함하는 것을 특징으로 하는 데이터 저장 장치.
  51. 제 49 항에 있어서, 상기 MSP는 상기 서브셋 내의 상기 하나 이상의 상기 아날로그 메모리 셀로부터 판독된 상기 제2전압 레벨 내의 상기 왜곡 레벨을 나타내는 단일 값만 캐싱하고, 상기 캐싱된 단일 값을 기초로 상기 예측된 왜곡 레벨을 계산하도록 배열되어 있는 것을 특징으로 하는 데이터 저장 장치.
  52. 제 49 항에 있어서, 상기 MSP는 상기 메모리 셀의 서브셋에 공통인 왜곡 파라미터를 트래킹하고, 상기 왜곡 파라미터를 데이터 구조에 저장하도록 배열되어 있는 것을 특징으로 하는 데이터 저장 장치.
  53. 데이터 저장 장치로서,
    복수의 아날로그 메모리 셀을 포함하는 메모리와 통신하도록 동작하는 인터페이스; 및
    상기 인터페이스에 연결된 메모리 신호 프로세서(MSP)를 포함하고, 상기 MSP 는 한 그룹의 상기 아날로그 메모리 셀에 각각의 제1전압 레벨로 데이터를 저장하고, 상기 메모리 내의 제1아날로그 메모리 셀에서 메모리 액세스 오퍼레이션을 수행하고, 상기 메모리 내의 제2아날로그 메모리 셀로부터 제2전압 레벨을, 상기 메모리 액세스 오퍼레이션을 수행하는 것에 응답하여, 판독하고, 상기 제1아날로그 메모리 셀에서 상기 메모리 액세스 오퍼레이션을 수행하여 발생되는 상기 제2전압 레벨 내의 교란 레벨을 추정하도록 상기 제2전압 레벨을 프로세싱하고, 상기 추정된 교란 레벨을 사용하여 상기 제2전압 레벨을 보정하고, 그리고 상기 보정된 제2전압 레벨을 기초로 상기 제2아날로그 메모리 셀에 저장된 상기 데이터를 복구하도록 배열되어 있는 것을 특징으로 하는 데이터 저장 장치.
  54. 제 53 항에 있어서, 상기 메모리 액세스 오퍼레이션은 프로그래밍 오퍼레이션, 판독 오퍼레이션, 및 삭제 오퍼레이션으로 구성된 한 그룹의 오퍼레이션으로부터 선택된 적어도 하나의 오퍼레이션을 포함하는 것을 특징으로 하는 데이터 저장 장치.
  55. 제 53 항에 있어서, 상기 MSP는 상기 추정된 교란 레벨을 소정의 레벨과 비교하고, 상기 추정된 교란 레벨이 상기 소정의 레벨을 초과한 때만 상기 제2전압 레벨을 보정하도록 배열되어 있는 것을 특징으로 하는 데이터 저장 장치.
  56. 제 53 항에 있어서, 상기 MSP는 상기 제2아날로그 메모리 셀에 저장된 상기 데이터를 재-프로그래밍함으로써 상기 제2전압 레벨을 보정하도록 배열되어 것을 특징으로 하는 데이터 저장 장치.
  57. 제 53 항에 있어서, 상기 MSP는 상기 제2아날로그 메모리 셀에 저장된 상기 데이터를 상기 제2아날로그 메모리 셀과 상이한 다른 아날로그 메모리 셀에 복사하도록 배열되어 있는 것을 특징으로 하는 데이터 저장 장치.
  58. 제 53 항에 있어서, 상기 MSP는 상기 제2메모리에 상기 데이터를 저장하기 위해 사용된 제1전압 레벨을 증가시키도록 배열되어 있는 것을 특징으로 하는 데이터 저장 장치.
  59. 제 53 항에 있어서, 상기 MSP는 상기 데이터를 저장하고 판독하지 않는 때 아이들 기간 동안 상기 제2전압 레벨을 프로세싱하도록 배열되어 있는 것을 특징으로 하는 데이터 저장 장치.
  60. 제 53 항에 있어서, 상기 MSP는 각각의 복수의 제2메모리 셀로부터 복수의 제2전압 레벨을 판독하고, 상기 메모리 액세스 오퍼레이션 동안 삭제된 레벨에서 프로그래밍된 레벨로 전이된 상기 제2메모리 셀의 개수를 평가하도록 배열되어 있는 것을 특징으로 하는 데이터 저장 장치.
  61. 제 53 항에 있어서, 상기 MSP는 복수의 그룹의 상기 아날로그 메모리에 순차적으로 상기 데이터를 저장하고, 역순으로 상기 메모리 셀 그룹을 판독하고, 그리고 상기 제1메모리 셀 이전에 판독된 그룹 내에 상기 메모리 셀의 상기 제2전압에 응답하여 상기 제1메모리 셀에 발생된 교란 레벨을 추정하도록 배열되어 있는 것을 특징으로 하는 데이터 저장 장치.
  62. 데이터 저장 장치로서,
    복수의 아날로그 메모리 셀을 포함하는 메모리와 통신하도록 동작하는 인터페이스; 및
    상기 인터페이스에 연결된 메모리 신호 프로세서(MSP)를 포함하고, 상기 MSP는 한 그룹의 상기 아날로그 메모리 셀 내에 각각의 제1전압 레벨로 데이터를 저장하고, 상기 각각의 제1전압 레벨과 적어도 일부 상이한 각각의 제2전압 레벨을, 상기 데이터를 저장한 후, 상기 아날로그 메모리 셀로부터 판독하고, 타겟 아날로그 메모리 셀로부터 판독된 제2전압 레벨에 잠재적으로 왜곡을 일으키는 한 서브셋의 아날로그 메모리 셀을 식별하고, 데이터가 상기 아날로그 메모리 셀에 저장된 시간과 데이터가 상기 타겟 아날로그 메모리 셀에 저장된 시간 사이의 관계를 기초로 상기 서브셋을 복수의 클래스로 상기 아날로그 메모리 셀을 분류하고, 상기 클래스 내의 상기 아날로그 메모리 셀에 의해 상기 타겟 메모리 셀 내의 제2전압 레벨에 발생된 각각의 왜곡을, 각각의 클래스에 대하여, 추정하고, 각각의 하나 이상의 상기 클래스에 대하여 상기 추정된 각각의 왜곡을 사용하여 상기 타겟 아날로그 메모 리 셀로부터 판독된 상기 제2전압 레벨을 보정하고, 그리고 상기 보정된 제2전압 레벨을 기초로 상기 타겟 아날로그 메모리 셀에 저장된 데이터를 복구하도록 배열되어 있는 것을 특징으로 하는 데이터 저장 장치.
  63. 제 62 항에 있어서, 상기 MSP는 프로그램 및 검증(P&V) 프로세스를 적용함으로써 상기 데이터를 저장하고, 상기 제2전압 레벨을 판독하도록 배열되어 있는 것을 특징으로 하는 데이터 저장 장치.
  64. 제 62 항에 있어서, 상기 MSP는 상기 데이터가 상기 타겟 메모리 셀 보다 더 최근에 저장된 서브셋 내의 상기 아날로그 메모리 셀을 식별하고, 상기 식별된 아날로그 메모리 셀 내의 왜곡만 기초로 하여 상기 타겟 아날로그 메모리 셀로부터 판독된 제2전압 레벨을 보정하도록 배열되어 있는 것을 특징으로 하는 데이터 저장 장치.
  65. 제 62 항에 있어서, 상기 MSP는 상기 데이터가 상기 타겟 아날로그 메모리 셀보다 더 최근에 저장된 서브셋 내의 상기 아날로그 메모리 셀을 포함하는 제1클래스, 상기 데이터가 상기 타겟 아날로그 메모리 셀 보다 이전에 저장된 상기 서브셋 내의 상기 아날로그 메모리 셀을 포함하는 제2클래스, 및 상기 데이터가 상기 타겟 아날로그 메모리 셀에 상기 데이터를 저장함과 동시에 저장된 상기 서브셋 내의 상기 아날로그 메모리 셀을 포함하는 제3클래스를 정의하도록 배열되어 있는 것 을 특징으로 하는 데이터 저장 장치.
  66. 제 62 항에 있어서, 상기 MSP는 상기 타겟 아날로그 메모리 셀로부터 판독된 제2전압 레벨을 제1레졸루션으로 프로세싱하고, 상기 제1레졸루션 보다 더 거친 제2레졸루션으로 상기 서브셋 내의 상기 아날로그 메모리 셀로부터 판독된 상기 제2전압 레벨을 프로세싱하도록 배열되어 있는 것을 특징으로 하는 데이터 저장 장치.
  67. 제 62 항에 있어서, 상기 MSP는 상기 데이터 저장시 상기 데이터가 상기 아날로그 메모리 셀에 저장된 시간의 지시를 저장하고, 상기 아날로그 메모리 셀을 분류하기 위해 상기 저장된 지시를 질문하도록 배열되어 있는 것을 특징으로 하는 데이터 저장 장치.
  68. 제 62 항에 있어서, 상기 MSP는 상기 아날로그 메모리 셀의 프로그래밍 시간, 상기 아날로그 메모리 셀에 저장된 상기 데이터, 상기 타겟 메모리 셀에 대한 상기 아날로그 메모리 셀의 위치, 및 상기 타겟 메모리 셀이 격은 최근의 프로그램-삭제 사이클의 횟수로 구성된 한 그룹의 파라미터로부터 선택된 적어도 하나의 파라미터에 응답하여 상기 왜곡을 추정하도록 배열되어 있는 것을 특징으로 하는 데이터 저장 장치.
  69. 데이터 저장 장치로서,
    복수의 아날로그 메모리 셀을 포함하는 메모리와 통신하도록 동작하는 인터페이스; 및
    상기 인터페이스에 연결되어 있는 메모리 신호 프로세서(MSP)를 포함하고, 상기 MSP는 상기 메모리에 저장할 데이터를 수신하고, 상기 아날로그 메모리 셀을 상기 데이터를 나타내는 각각의 물리적 크기값을 저장하게 만들도록 한 그룹의 상기 아날로그 메모리 셀을 프로그래밍하기 위한 각각의 제1전압 레벨을 결정하고, 상기 제1전압 레벨을 사용하여 상기 그룹 내의 상기 아날로그 메모리 셀을 프로그래밍하고, 상기 각각의 아날로그 메모리 셀로부터 제2전압 레벨을, 상기 아날로그 메모리 셀을 프로그래밍한 후, 판독하고, 그리고 상기 제2전압 레벨로부터 상기 데이터를 복구하도록 배열되어 있는 것을 특징으로 하는 데이터 저장 장치.
  70. 제 69 항에 있어서, 상기 MSP는 상기 아날로그 메모리 셀에 상기 데이터를 저장할 때 하나 이상의 다른 아날로그 메모리 셀에 저장된 상기 물리적 크기값에 의해 타겟 아날로그 메모리 셀에 저장된 상기 물리적 크기값에 발생된 왜곡을 추정하고, 상기 추정된 왜곡에 응답하여 상기 타겟 아날로그 메모리 셀을 프로그래밍하기 위해 사용되는 제1전압 레벨을 미리 보정하도록 배열되어 있는 것을 특징으로 하는 데이터 저장 장치.
  71. 제 69 항에 있어서, 상기 MSP는 상기 판독된 제2전압 레벨을 기초로 상기 제2전압 레벨을 판독할 때 하나 이상의 다른 아날로그 메모리 셀에 저장된 상기 물리적 크기값에 의해 타겟 아날로그 메모리 셀에 저장된 상기 물리적 크기값에 발생된 왜곡을 추정하고, 상기 추정된 왜곡을 사용하여 상기 타겟 아날로그 메모리 셀로부터 판독된 제2전압 레벨을 보정하고, 그리고 상기 보정된 제2전압 레벨을 기초로 상기 타겟 아날로그 메모리 셀에 저장된 상기 데이터를 복구하도록 배열되어 있는 것을 특징으로 하는 데이터 저장 장치.
  72. 제 69 항에 있어서, 상기 MSP는 상기 각각의 아날로그 메모리 셀을 프로그래밍할 때 상기 프로그래밍된 제1전압 레벨을 검증하도록 배열되어 있는 것을 특징으로 하는 데이터 저장 장치.
  73. 제 69 항에 있어서, 상기 물리적 크기값은 전하를 포함하는 배열되어 있는 것을 특징으로 하는 데이터 저장 장치.
  74. 데이터 저장 장치로서,
    복수의 아날로그 메모리 셀을 포함하는 메모리와 통신하도록 배열되어 있는 인터페이스; 및
    상기 인터페이스에 연결된 메모리 신호 프로세서(MSP)를 포함하고, 상기 MSP는 한 그룹의 상기 아날로그 메모리 셀에 각각의 제1전압 레벨로 데이터를 저장하고, 상기 각각의 제1전압 레벨과 적어도 일부 상이한 제2전압 레벨을, 상기 데이터 를 저장한 후, 상기 그룹 내의 상기 아날로그 메모리 셀로부터 판독하고, 상기 아날로그 메모리 셀로부터 판독된 상기 제2전압 레벨 내의 왜곡 레벨을 추정하고, 그리고 상기 추정된 왜곡 레벨이 소정의 왜곡 기준을 위반한 때, 상기 그룹 내의 상기 아날로그 메모리 셀에 상기 데이터를 재-프로그래밍하도록 배열되어 있는 것을 특징으로 하는 데이터 저장 장치.
  75. 제 74 항에 있어서, 상기 소정의 왜곡 기준은 최대 허용가능한 왜곡 레벨을 정의하는 임계값을 포함하는 것을 특징으로 하는 데이터 저장 장치.
  76. 데이터 저장 장치로서,
    복수의 아날로그 메모리 셀을 포함하는 메모리와 통신하도록 동작하는 인터페이스; 및
    상기 인터페이스에 연결된 메모리 신호 프로세서(MSP)를 포함하고, 상기 MSP는 상기 메모리의 한 그룹의 상기 아날로그 메모리 셀에 각각의 제1전압 레벨로 데이터를 저장하고, 상기 각각의 제1전압 레벨과 적어도 일부 상이한, 각각의 제2전압 레벨을, 상기 데이터를 저장한 후, 상기 아날로그 메모리 셀로부터 판독하고, 타겟 아날로그 메모리 셀로부터 판독된 제2전압 레벨에 잠재적으로 왜곡을 발생시키는 한 서브셋의 상기 아날로그 메모리 셀을 식별하고, 상기 타겟 메모리 셀이 프로그래밍된 제1시간 인스탠스에서 상기 타겟 메모리 셀에 상기 서브셋 내의 상기 메모리 셀에 의해 발생된 제1왜곡 레벨과, 상기 타겟 메모리 셀이 판독되는 제2시 간 인스탠스에서 상기 타겟 메모리 셀에 상기 서브셋 내의 상기 메모리 셀에 의해 발생된 제2왜곡 레벨 사이의 차이를 추정하고, 그리고 상기 추정된 차이를 사용하여 상기 타겟 메모리 셀로부터 판독된 상기 제2전압 레벨을 보정하도록 배열되어 있는 것을 특징으로 하는 데이터 저장 장치.
  77. 데이터 저장 장치로서,
    복수의 아날로그 메모리 셀을 포함하는 메모리와 통신하도록 동작하는 인터페이스; 및
    상기 인터페이스에 연결된 메모리 신호 프로세서(MSP)를 포함하고, 상기 MSP는 각각의 제1전압 레벨로 상기 메모리의 한 그룹의 상기 아날로그 메모리 셀에 데이터를 저장하고, 제2전압 레벨을 상기 각각의 제1전압 레벨과 상이하게 만드는 크로스 커플링 간섭에 의해 영향을 받는 각각의 제2전압 레벨을, 상기 데이터를 저장한 후, 상기 아날로그 메모리 셀로부터 판독하고, 상기 제2전압 레벨을 프로세싱에 의한 상기 아날로그 메모리 셀 간의 상기 크로스 커플링 간섭을 정량화하는 크로스 커플링 계수를 추정하고, 그리고 상기 추정된 크로스 커플링 계수를 사용하여 상기 판독된 제2전압 레벨로부터 상기 아날로그 메모리 셀 그룹에 저장된 상기 데이터를 복구하도록 배열되어 있는 것을 특징으로 하는 데이터 저장 장치.
  78. 제 77 항에 있어서, 상기 MSP는 상기 메모리 내의 제2아날로그 메모리 셀에 제1아날로그 메모리 셀에 의해 발생된 상기 크로스 커플링 간섭을, 상기 제1아날로 그 메모리 셀로부터 판독된 상기 제2전압 레벨 및 상기 제2아날로그 메모리 셀로부터 판독된 상기 제2전압 레벨을 모두 기초로 하여, 평가하도록 배열되어 있는 것을 특징으로 하는 데이터 저장 장치.
  79. 데이터 저장 장치로서,
    복수의 아날로그 메모리 셀을 포함하는 메모리; 및
    상기 메모리에 연결된 메모리 신호 프로세서(MSP)를 포함하고, 상기 MSP는 한 세트의 가능한 값으로부터 선택된 각각의 제1전압 레벨로 한 그룹의 상기 아날로그 메모리 셀에 데이터를 저장하고, 제2전압 레벨을 상기 각각의 제1전압 레벨과 상이하게 만드는 크로스 커플링 간섭에 의해 영향을 받는 각각의 제2전압 레벨을, 상기 데이터를 저장한 후, 상기 아날로그 메모리 셀로부터 판독하고, 각각이 상기 제1전압 레벨의 상기 가능한 값 간의 각각의 값에 대응하는 각각의 하드 디시전을 유도하도록 상기 제2전압 레벨을 프로세싱하고, 상기 제2전압 레벨 및 상기 각각의 하드 디시전을 기초로, 상기 아날로그 메모리 셀 간의 상기 크로스 커플링 간섭을 정량화하는 크로스 커플링 계수를 추정하고, 그리고 상기 크로스 커플링 계수를 사용하여 상기 제2전압 레벨로부터 상기 아날로그 메모리 셀 그룹에 저장된 상기 데이터를 복구하도록 배열되어 있는 것을 특징으로 하는 데이터 저장 장치.
  80. 데이터 저장 장치로서,
    한 서브셋의 메모리 셀이 연관된 왜곡을 가진 복수의 아날로그 메모리 셀을 포함하는 메모리; 및
    상기 메모리에 연결된 메모리 신호 프로세서(MSP)를 포함하고, 상기 MSP는 한 그룹의 상기 아날로그 메모리 셀에 각각의 제1전압 레벨로 데이터를 저장하고, 왜곡으로 인해 상기 제1전압 레벨과 상이한 각각의 제2전압 레벨을, 상기 데이터를 저장한 후, 한 칼럼의 어레이 내의 하나 이상의 상기 아날로그 메모리 셀로부터 판독하고, 상기 제2전압 레벨 내의 각각의 왜곡 레벨을 추정하기 위해 상기 하나 이상의 상기 아날로그 메모리 셀로부터 판독된 상기 제2전압 레벨을 프로세싱하고, 상기 칼럼 내의 다른 아날로그 메모리 셀로부터 제2전압 레벨을 판독하고, 상기 칼럼 내의 상기 하나 이상의 상기 아날로그 메모리 셀의 상기 추정된 각각의 왜곡 레벨을 기초로 상기 다른 아날로그 메모리 셀로부터 판독된 상기 제2전압 레벨을 예측하고, 상기 예측된 왜곡 레벨을 사용하여 상기 다른 메모리 셀로부터 판독된 상기 제2전압 레벨을 보정하고, 그리고 상기 보정된 제2전압 레벨을 기초로 상기 다른 메모리 셀에 저장된 상기 데이터를 복구하도록 배열되어 있는 것을 특징으로 하는 데이터 저장 장치.
  81. 데이터 저장 장치로서,
    복수의 아날로그 메모리 셀을 포함하는 메모리; 및
    상기 메모리에 연결된 메모리 신호 프로세서(MSP)를 포함하고, 상기 MSP는 한 그룹의 상기 아날로그 메모리 셀에 각각의 제1전압 레벨로 데이터를 저장하고, 상기 메모리 내의 제1아날로그 메모리 셀에서 메모리 액세스 오퍼레이션을 실행하 고, 상기 메모리 내의 제2아날로그 메모리 셀로부터 제2전압 레벨을, 상기 메모리 액세스 오퍼레이션을 수행하는 것이 응답하여, 판독하고, 상기 제1아날로그 메모리 셀에서 상기 메모리 액세스 오퍼레이션을 실행하여 발생되는 상기 제2전압 레벨 내의 교란 레벨을 추정하기 위해 상기 제2전압 레벨을 프로세싱하고, 상기 추정된 교란 레벨을 사용하여 상기 제2전압 레벨을 보정하고, 그리고 상기 보정된 제2전압 레벨을 기초로 상기 제2아날로그 메모리 셀에 저장된 상기 데이터를 복구하도록 배열되어 있는 것을 특징으로 하는 데이터 저장 장치.
  82. 데이터 저장 장치로서,
    복수의 아날로그 메모리 셀을 포함하는 메모리; 및
    상기 메모리에 연결된 메모리 신호 프로세서(MSP)를 포함하고, 상기 MSP는 한 그룹의 상기 아날로그 메모리 셀에 각각의 제1전압 레벨로 데이터를 저장하고, 상기 제1전압 레벨과 적어도 일부 상이한 각각의 제2전압 레벨을, 상기 데이터를 저장한 후, 상기 아날로그 메모리 셀로부터 판독하고, 타겟 아날로그 메모리 셀로부터 판독된 제2전압 레벨을 잠재적으로 왜곡시키는 한 서브셋의 상기 아날로그 메모리 셀을 식별하고, 상기 데이터가 상기 아날로그 메모리 셀에 저장된 각각의 시간과, 상기 데이터가 상기 타겟 아날로그 메모리 셀에 저장된 시간 사이의 관계를 기초로 상기 서브셋을 복수의 클래스로 분류하고, 상기 클래스 내의 상기 아날로그 메모리 셀에 의해 상기 타겟 메모리 셀 내의 제2전압 레벨에 발생된 각각의 왜곡을, 각각의 상기 클래스에 대하여, 추정하고, 각각의 하나 이상의 상기 클래스에 대하여 상기 추정된 각각의 왜곡을 사용하여 상기 타겟 아날로그 메모리 셀로부터 판독된 상기 제2전압 레벨을 보정하고, 그리고 상기 보정된 제2전압 레벨을 기초로 상기 타겟 아날로그 메모리 셀에 저장된 상기 데이터를 복구하도록 배열되어 있는 것을 특징으로 하는 데이터 저장 장치.
  83. 데이터 저장 장치로서,
    복수의 아날로그 메모리 셀을 포함하는 메모리; 및
    상기 메모리에 연결된 메모리 신호 프로세서(MSP)를 포함하고, 상기 MSP는 상기 메모리에 저장할 데이터를 수신하고, 상기 아날로그 메모리 셀을 상기 데이터를 나타내는 각각의 물리적 크기값을 저장하게 만드기 위해 한 그룹의 상기 아날로그 메모리 셀을 프로그래밍하기 위한 각각의 제1전압 레벨을 결정하고, 상기 제1전압 레벨을 사용하여 상기 그룹 내의 상기 아날로그 메모리 셀을 프로그래밍하고, 상기 각각의 아날로그 메모리 셀로부터 제2전압 레벨을, 상기 아날로그 메모리 셀을 프로그래밍한 후, 판독하고, 그리고 상기 제2전압 레벨로부터 상기 데이터를 복구하도록 배열되어 있는 것을 특징으로 하는 데이터 저장 장치.
  84. 데이터 저장 장치로서,
    복수의 아날로그 메모리 셀을 포함하는 메모리; 및
    상기 메모리에 연결된 메모리 신호 프로세서(MSP)를 포함하고, 상기 MSP는 한 그룹의 상기 아날로그 메모리 셀에 각각의 제1전압 레벨로 데이터를 저장하고, 상기 각각의 제1전압 레벨과 적어도 일부 상이한 제2전압 레벨을, 상기 데이터를 저장한 후, 상기 그룹 내의 상기 아날로그 메모리 셀로부터 판독하고, 상기 아날로그 메모리 셀로부터 판독된 상기 제2전압 레벨 내의 왜곡 레벨을 추정하고, 그리고 상기 추정된 왜곡 레벨이 소정의 왜곡 기준을 위반한 때, 상기 그룹 내의 상기 아날로그 메모리 셀에 상기 데이터를 재-프로그래밍하도록 배열되어 있는 것을 특징으로 하는 데이터 저장 장치.
  85. 데이터 저장 장치로서,
    복수의 아날로그 메모리 셀을 포함하는 메모리; 및
    상기 메모리에 연결된 메모리 신호 프로세서(MSP)를 포함하고, 상기 MSP는 상기 메모리의 한 그룹의 상기 아날로그 메모리 셀에 각각의 제1전압 레벨로 데이터를 저장하고, 상기 각각의 제1전압 레벨과 적어도 일부 상이한 각각의 제2전압 레벨을, 상기 데이터 저장 후, 상기 아날로그 메모리 셀로부터 판독하고, 타겟 아날로그 메모리 셀로부터 판독된 제2전압 레벨을 잠재적으로 왜곡시키는 한 서브셋의 상기 아날로그 메모리 셀을 식별하고, 상기 타겟 메모리 셀이 프로그래밍되는 제1시간 인스탠스에서 상기 타겟 메모리 셀에 상기 서브셋 내의 상기 메모리 셀에 의해 발생된 제1왜곡 레벨과, 상기 타겟 메모리 셀이 판독되는 제2시간 인스탠스에서 상기 타겟 메모리 셀에 상기 서브셋 내의 상기 메모리 셀에 의해 발생된 제2왜곡 레벨 사이의 차이를 추정하고, 그리고 상기 추정된 차이를 사용하여 상기 타겟 메모리 셀로부터 판독된 상기 제2전압 레벨을 보정하도록 배열되어 있는 것을 특징 으로 하는 데이터 저장 장치.
  86. 데이터 저장 장치로서,
    복수의 아날로그 메모리 셀을 포함하는 메모리; 및
    상기 메모리에 연결된 메모리 신호 프로세서(MSP)를 포함하고, 상기 MSP는 각각의 제1전압 레벨로 상기 메모리의 한 그룹의 상기 아날로그 메모리 셀에 데이터를 저장하고, 제2전압 레벨을 상기 각각의 제1전압 레벨과 상이하게 만드는 크로스 커플링 간섭에 의해 영향을 받는 각각의 제2전압 레벨을, 상기 데이터 저장 후, 상기 아날로그 메모리 셀로부터 판독하고, 상기 제2전압 레벨 프로세싱하는 것에 의한 상기 아날로그 메모리 셀 간에 상기 크로스 커플링 간섭을 정량화하는 크로스 커플링 계수를 추정하고, 그리고 상기 추정된 크로스 커플링 계수를 사용하여 상기 판독된 제2전압 레벨로부터 상기 아날로그 메모리 셀 그룹에 저장된 상기 데이터를 복구하도록 배열되어 있는 것을 특징으로 하는 데이터 저장 장치.
KR1020087029297A 2006-05-12 2007-05-10 메모리 디바이스 내의 왜곡 추정 및 상쇄 KR101375955B1 (ko)

Applications Claiming Priority (13)

Application Number Priority Date Filing Date Title
US74710606P 2006-05-12 2006-05-12
US60/747,106 2006-05-12
US80653306P 2006-07-04 2006-07-04
US60/806,533 2006-07-04
US82706706P 2006-09-27 2006-09-27
US60/827,067 2006-09-27
US86739906P 2006-11-28 2006-11-28
US60/867,399 2006-11-28
US88502407P 2007-01-16 2007-01-16
US60/885,024 2007-01-16
US88642907P 2007-01-24 2007-01-24
US60/886,429 2007-01-24
PCT/IL2007/000576 WO2007132453A2 (en) 2006-05-12 2007-05-10 Distortion estimation and cancellation in memory devices

Publications (2)

Publication Number Publication Date
KR20090036545A true KR20090036545A (ko) 2009-04-14
KR101375955B1 KR101375955B1 (ko) 2014-03-18

Family

ID=38694297

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020087029297A KR101375955B1 (ko) 2006-05-12 2007-05-10 메모리 디바이스 내의 왜곡 추정 및 상쇄

Country Status (4)

Country Link
US (4) US8050086B2 (ko)
KR (1) KR101375955B1 (ko)
CN (3) CN103208309B (ko)
WO (1) WO2007132453A2 (ko)

Families Citing this family (257)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8645793B2 (en) 2008-06-03 2014-02-04 Marvell International Ltd. Statistical tracking for flash memory
WO2007132458A2 (en) * 2006-05-12 2007-11-22 Anobit Technologies Ltd. Memory device programming using combined shaping and linear spreading
US8239735B2 (en) 2006-05-12 2012-08-07 Apple Inc. Memory Device with adaptive capacity
KR101375955B1 (ko) 2006-05-12 2014-03-18 애플 인크. 메모리 디바이스 내의 왜곡 추정 및 상쇄
KR101202537B1 (ko) 2006-05-12 2012-11-19 애플 인크. 메모리 디바이스를 위한 결합된 왜곡 추정 및 에러 보정 코딩
WO2007132452A2 (en) 2006-05-12 2007-11-22 Anobit Technologies Reducing programming error in memory devices
WO2008026203A2 (en) 2006-08-27 2008-03-06 Anobit Technologies Estimation of non-linear distortion in memory devices
US7818653B2 (en) 2006-09-28 2010-10-19 Sandisk Corporation Methods of soft-input soft-output decoding for nonvolatile memory
US7805663B2 (en) * 2006-09-28 2010-09-28 Sandisk Corporation Methods of adapting operation of nonvolatile memory
US7904783B2 (en) * 2006-09-28 2011-03-08 Sandisk Corporation Soft-input soft-output decoder for nonvolatile memory
WO2008053473A2 (en) 2006-10-30 2008-05-08 Anobit Technologies Ltd. Memory cell readout using successive approximation
US7975192B2 (en) 2006-10-30 2011-07-05 Anobit Technologies Ltd. Reading memory cells using multiple thresholds
US7827450B1 (en) 2006-11-28 2010-11-02 Marvell International Ltd. Defect detection and handling for memory based on pilot cells
US7924648B2 (en) 2006-11-28 2011-04-12 Anobit Technologies Ltd. Memory power and performance management
US8316206B2 (en) 2007-02-12 2012-11-20 Marvell World Trade Ltd. Pilot placement for non-volatile memory
US7706182B2 (en) 2006-12-03 2010-04-27 Anobit Technologies Ltd. Adaptive programming of analog memory cells using statistical characteristics
WO2008068747A2 (en) 2006-12-03 2008-06-12 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
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
US7808834B1 (en) 2007-04-13 2010-10-05 Marvell International Ltd. Incremental memory refresh
US8001320B2 (en) 2007-04-22 2011-08-16 Anobit Technologies Ltd. Command interface for memory devices
US8429493B2 (en) 2007-05-12 2013-04-23 Apple Inc. Memory device with internal signap 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
US8259497B2 (en) 2007-08-06 2012-09-04 Apple Inc. Programming schemes for multi-level analog memory cells
US8031526B1 (en) 2007-08-23 2011-10-04 Marvell International Ltd. Write pre-compensation for nonvolatile memory
US8189381B1 (en) 2007-08-28 2012-05-29 Marvell International Ltd. System and method for reading flash memory cells
US8085605B2 (en) 2007-08-29 2011-12-27 Marvell World Trade Ltd. Sequence detection for flash memory with inter-cell interference
US8174905B2 (en) 2007-09-19 2012-05-08 Anobit Technologies Ltd. Programming orders for reducing distortion in arrays of multi-level analog memory cells
US8650352B2 (en) 2007-09-20 2014-02-11 Densbits Technologies Ltd. Systems and methods for determining logical values of coupled flash memory cells
WO2009095902A2 (en) 2008-01-31 2009-08-06 Densbits Technologies Ltd. Systems and methods for handling immediate data errors in flash memory
US7751237B2 (en) 2007-09-25 2010-07-06 Sandisk Il, Ltd. Post-facto correction for cross coupling in a flash memory
US7773413B2 (en) 2007-10-08 2010-08-10 Anobit Technologies Ltd. Reliable data storage in analog memory cells in the presence of temperature variations
US8000141B1 (en) 2007-10-19 2011-08-16 Anobit Technologies Ltd. Compensation for voltage drifts in analog memory cells
US8068360B2 (en) 2007-10-19 2011-11-29 Anobit Technologies Ltd. Reading analog memory cells using built-in multi-threshold commands
US8527819B2 (en) 2007-10-19 2013-09-03 Apple Inc. Data storage in analog memory cell arrays having erase failures
US8694715B2 (en) * 2007-10-22 2014-04-08 Densbits Technologies Ltd. Methods for adaptively programming flash memory devices and flash memory systems incorporating same
WO2009053962A2 (en) * 2007-10-22 2009-04-30 Densbits Technologies Ltd. Systems and methods for averaging error rates in non-volatile devices and storage systems
WO2009053961A2 (en) * 2007-10-25 2009-04-30 Densbits Technologies Ltd. Systems and methods for multiple coding rates in flash devices
KR101509836B1 (ko) 2007-11-13 2015-04-06 애플 인크. 멀티 유닛 메모리 디바이스에서의 메모리 유닛의 최적화된 선택
ITRM20070621A1 (it) 2007-11-28 2009-05-29 Micron Technology Inc Compensazione dell'effetto della configurazione a ritroso in un dispositivo di memorizzazione.
US8225181B2 (en) 2007-11-30 2012-07-17 Apple Inc. Efficient re-read operations from memory devices
WO2009072101A2 (en) * 2007-12-05 2009-06-11 Densbits Technologies Ltd. Apparatus and methods for generating row-specific reading thresholds in flash memory
WO2009072103A2 (en) * 2007-12-05 2009-06-11 Densbits Technologies Ltd. Flash memory apparatus and methods using a plurality of decoding stages including optional use of concatenated bch codes and/or designation of 'first below' cells
WO2009072105A2 (en) 2007-12-05 2009-06-11 Densbits Technologies Ltd. A low power chien-search based bch/rs decoding system for flash memory, mobile communications devices and other applications
US8209588B2 (en) 2007-12-12 2012-06-26 Anobit Technologies Ltd. Efficient interference cancellation in analog memory cell arrays
WO2009074978A2 (en) * 2007-12-12 2009-06-18 Densbits Technologies Ltd. Systems and methods for error correction and decoding on multi-level physical media
US8276051B2 (en) * 2007-12-12 2012-09-25 Densbits Technologies Ltd. Chien-search system employing a clock-gating scheme to save power for error correction decoder and other applications
US8456905B2 (en) 2007-12-16 2013-06-04 Apple Inc. Efficient data storage in multi-plane memory devices
US8327246B2 (en) * 2007-12-18 2012-12-04 Densbits Technologies Ltd. Apparatus for coding at a plurality of rates in multi-level flash memory systems, and methods useful in conjunction therewith
US8085586B2 (en) 2007-12-27 2011-12-27 Anobit Technologies Ltd. Wear level estimation in analog memory cells
US8255758B2 (en) * 2008-01-21 2012-08-28 Apple Inc. Decoding of error correction code using partial bit inversion
US8156398B2 (en) 2008-02-05 2012-04-10 Anobit Technologies Ltd. Parameter estimation based on error correction code parity check equations
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
US8179719B1 (en) 2008-03-10 2012-05-15 Marvell International Ltd. Systems and methods for improving error distributions in multi-level cell memory systems
EP2266036B9 (en) * 2008-03-11 2016-05-18 Agere Systems, Inc. Methods and apparatus for storing data in a multi-level cell flash memory device with cross-page sectors, multi-page coding and per-page coding
US8059457B2 (en) 2008-03-18 2011-11-15 Anobit Technologies Ltd. Memory device with multiple-accuracy read commands
US8493783B2 (en) 2008-03-18 2013-07-23 Apple Inc. Memory device readout using multiple sense times
US8400858B2 (en) 2008-03-18 2013-03-19 Apple Inc. Memory device with reduced sense time readout
US8972472B2 (en) 2008-03-25 2015-03-03 Densbits Technologies Ltd. Apparatus and methods for hardware-efficient unbiased rounding
US8327242B1 (en) 2008-04-10 2012-12-04 Apple Inc. High-performance ECC decoder
US9594679B2 (en) * 2008-05-01 2017-03-14 Sandisk Il Ltd. Flash cache flushing method and system
KR101506655B1 (ko) * 2008-05-15 2015-03-30 삼성전자주식회사 메모리 장치 및 메모리 데이터 오류 관리 방법
US8797795B2 (en) * 2008-07-01 2014-08-05 Lsi Corporation Methods and apparatus for intercell interference mitigation using modulation coding
US8498151B1 (en) 2008-08-05 2013-07-30 Apple Inc. Data storage in analog memory cells using modified pass voltages
US7924613B1 (en) 2008-08-05 2011-04-12 Anobit Technologies Ltd. Data storage in analog memory cells with protection against programming interruption
US8332725B2 (en) * 2008-08-20 2012-12-11 Densbits Technologies Ltd. Reprogramming non volatile memory portions
US8169825B1 (en) 2008-09-02 2012-05-01 Anobit Technologies Ltd. Reliable data storage in analog memory cells subjected to long retention periods
US8949684B1 (en) 2008-09-02 2015-02-03 Apple Inc. Segmented data storage
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
CN102203876B (zh) 2008-09-30 2015-07-15 Lsi公司 用于存储器器件的软数据生成的方法和装置
US8239734B1 (en) 2008-10-15 2012-08-07 Apple Inc. Efficient data storage in storage device arrays
US8713330B1 (en) 2008-10-30 2014-04-29 Apple Inc. Data scrambling in 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
US8291297B2 (en) * 2008-12-18 2012-10-16 Intel Corporation Data error recovery in non-volatile memory
US8174857B1 (en) 2008-12-31 2012-05-08 Anobit Technologies Ltd. Efficient readout schemes for analog memory cell devices using multiple read threshold sets
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
US7995387B2 (en) 2009-01-30 2011-08-09 Sandisk Il Ltd. System and method to read data subject to a disturb condition
US8374026B2 (en) 2009-01-30 2013-02-12 Sandisk Il Ltd. System and method of reading data using a reliability measure
US8228701B2 (en) 2009-03-01 2012-07-24 Apple Inc. Selective activation of programming schemes in analog memory cell arrays
US8266503B2 (en) 2009-03-13 2012-09-11 Fusion-Io Apparatus, system, and method for using multi-level cell storage in a single-level cell mode
US8261158B2 (en) * 2009-03-13 2012-09-04 Fusion-Io, Inc. Apparatus, system, and method for using multi-level cell solid-state storage as single level cell solid-state storage
US8429498B1 (en) 2009-03-25 2013-04-23 Apple Inc. Dual ECC decoder
US8259506B1 (en) 2009-03-25 2012-09-04 Apple Inc. Database of memory read thresholds
US8832354B2 (en) 2009-03-25 2014-09-09 Apple Inc. Use of host system resources by memory controller
US8819385B2 (en) 2009-04-06 2014-08-26 Densbits Technologies Ltd. Device and method for managing a flash memory
US8458574B2 (en) * 2009-04-06 2013-06-04 Densbits Technologies Ltd. Compact chien-search based decoding apparatus and method
US8238157B1 (en) * 2009-04-12 2012-08-07 Apple Inc. Selective re-programming of analog memory cells
US8341501B2 (en) * 2009-04-30 2012-12-25 International Business Machines Corporation Adaptive endurance coding of non-volatile memories
US8566510B2 (en) * 2009-05-12 2013-10-22 Densbits Technologies Ltd. Systems and method for flash memory management
US8935589B2 (en) * 2009-06-02 2015-01-13 Silicon Motion, Inc. Controller and data access method for flash memories
TWI415130B (zh) * 2009-06-02 2013-11-11 Silicon Motion Inc 快閃記憶體之控制器以及於快閃記憶體存取資料的方法
US8453038B2 (en) 2009-06-30 2013-05-28 Apple Inc. Chien search using multiple basis representation
US8479080B1 (en) 2009-07-12 2013-07-02 Apple Inc. Adaptive over-provisioning in memory systems
US8601352B1 (en) 2009-07-30 2013-12-03 Apple Inc. Efficient LDPC codes
US8130544B2 (en) 2009-08-17 2012-03-06 Skymedi Corporation Method of reducing bit error rate for a flash memory
US8868821B2 (en) * 2009-08-26 2014-10-21 Densbits Technologies Ltd. Systems and methods for pre-equalization and code design for a flash memory
US8305812B2 (en) 2009-08-26 2012-11-06 Densbits Technologies Ltd. Flash memory module and method for programming a page of flash memory cells
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
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
US8495465B1 (en) 2009-10-15 2013-07-23 Apple Inc. Error correction coding over multiple memory pages
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
US8626988B2 (en) 2009-11-19 2014-01-07 Densbits Technologies Ltd. System and method for uncoded bit error rate equalization via interleaving
US8176234B2 (en) * 2009-12-04 2012-05-08 International Business Machines Corporation Multi-write coding of non-volatile memories
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
US8607124B2 (en) 2009-12-24 2013-12-10 Densbits Technologies Ltd. System and method for setting a flash memory cell read threshold
US7990767B2 (en) * 2009-12-30 2011-08-02 Sandisk Il Ltd. Flash memory system having cross-coupling compensation during read operation
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
US8661184B2 (en) 2010-01-27 2014-02-25 Fusion-Io, Inc. Managing non-volatile media
US8315092B2 (en) 2010-01-27 2012-11-20 Fusion-Io, Inc. Apparatus, system, and method for determining a read voltage threshold for solid-state storage media
US8854882B2 (en) 2010-01-27 2014-10-07 Intelligent Intellectual Property Holdings 2 Llc Configuring storage cells
US8380915B2 (en) 2010-01-27 2013-02-19 Fusion-Io, Inc. Apparatus, system, and method for managing solid-state storage media
US8700970B2 (en) 2010-02-28 2014-04-15 Densbits Technologies Ltd. System and method for multi-dimensional decoding
US9245653B2 (en) 2010-03-15 2016-01-26 Intelligent Intellectual Property Holdings 2 Llc Reduced level cell mode for non-volatile memory
US8775913B2 (en) 2010-03-31 2014-07-08 Lsi Corporation Methods and apparatus for computing soft data or log likelihood ratios for received values in communication or storage systems
US8504885B2 (en) 2010-03-31 2013-08-06 Lsi Corporation Methods and apparatus for approximating a probability density function or distribution for a received value in communication or storage systems
US8429500B2 (en) 2010-03-31 2013-04-23 Lsi Corporation Methods and apparatus for computing a probability value of a received value in communication or storage systems
US9104610B2 (en) 2010-04-06 2015-08-11 Densbits Technologies Ltd. Method, system and medium for analog encryption in a flash memory
US8527840B2 (en) 2010-04-06 2013-09-03 Densbits Technologies Ltd. System and method for restoring damaged data programmed on a flash device
US8745317B2 (en) 2010-04-07 2014-06-03 Densbits Technologies Ltd. System and method for storing information in a multi-level cell memory
US9099169B1 (en) 2010-04-27 2015-08-04 Tagmatech, Llc Memory device and method thereof
US8339873B1 (en) 2010-04-27 2012-12-25 Bruce Lee Morton Memory device and method thereof
US9021177B2 (en) 2010-04-29 2015-04-28 Densbits Technologies Ltd. System and method for allocating and using spare blocks in a flash 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
US8539311B2 (en) 2010-07-01 2013-09-17 Densbits Technologies Ltd. System and method for data recovery in multi-level cell memories
US8510639B2 (en) 2010-07-01 2013-08-13 Densbits Technologies Ltd. System and method for multi-dimensional encoding and decoding
US8467249B2 (en) 2010-07-06 2013-06-18 Densbits Technologies Ltd. Systems and methods for storing, retrieving, and adjusting read thresholds in flash memory storage system
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
US8645794B1 (en) 2010-07-31 2014-02-04 Apple Inc. Data storage in analog memory cells 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
KR101678888B1 (ko) * 2010-08-06 2016-12-07 삼성전자주식회사 비휘발성 메모리 장치의 데이터 판독 방법
US8493781B1 (en) 2010-08-12 2013-07-23 Apple Inc. Interference mitigation using individual word line erasure operations
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
US8508995B2 (en) 2010-09-15 2013-08-13 Densbits Technologies Ltd. System and method for adjusting read voltage thresholds in memories
US8499227B2 (en) 2010-09-23 2013-07-30 Micron Technology, Inc. Memory quality monitor based compensation method and apparatus
US8243511B2 (en) 2010-09-27 2012-08-14 Seagate Technology Llc Reuse of information from memory read operations
US9021181B1 (en) 2010-09-27 2015-04-28 Apple Inc. Memory management for unifying memory cell conditions by using maximum time intervals
US8627175B2 (en) 2010-09-27 2014-01-07 Seagate Technology Llc Opportunistic decoding in memory systems
US8769374B2 (en) 2010-10-13 2014-07-01 International Business Machines Corporation Multi-write endurance and error control coding of non-volatile memories
US8467237B2 (en) 2010-10-15 2013-06-18 Micron Technology, Inc. Read distribution management for phase change memory
US9063878B2 (en) 2010-11-03 2015-06-23 Densbits Technologies Ltd. Method, system and computer readable medium for copy back
KR101177458B1 (ko) * 2010-11-08 2012-08-27 숭실대학교산학협력단 플래시 메모리 장치에서 발생하는 커플링 잡음 전압 산출 장치 및 방법
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
US8649215B2 (en) * 2010-12-22 2014-02-11 HGST Netherlands B.V. Data management in flash memory using probability of charge disturbances
US8599609B2 (en) * 2010-12-22 2013-12-03 HGST Netherlands B.V. Data management in flash memory using probability of charge disturbances
US9898361B2 (en) 2011-01-04 2018-02-20 Seagate Technology Llc Multi-tier detection and decoding in flash memories
US9292377B2 (en) 2011-01-04 2016-03-22 Seagate Technology Llc Detection and decoding in flash memories using correlation of neighboring bits and probability based reliability values
KR101497254B1 (ko) * 2011-02-18 2015-02-27 미쓰비시덴키 가부시키가이샤 메모리 진단 장치 및 메모리 진단 방법 및 프로그램이 기록된 기록 매체
US10079068B2 (en) 2011-02-23 2018-09-18 Avago Technologies General Ip (Singapore) Pte. Ltd. Devices and method for wear estimation based memory management
US8879317B2 (en) 2011-03-01 2014-11-04 Sandisk Technologies Inc. System and method of decoding data from memory based on sensing information and decoded data of neighboring storage elements
US9502117B2 (en) * 2011-03-14 2016-11-22 Seagate Technology Llc Cell-level statistics collection for detection and decoding in flash memories
US8693258B2 (en) 2011-03-17 2014-04-08 Densbits Technologies Ltd. Obtaining soft information using a hard interface
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
US9372792B1 (en) 2011-05-12 2016-06-21 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
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
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
US20120297116A1 (en) 2011-05-16 2012-11-22 Anobit Technologies Sparse programming of analog memory cells
US8667211B2 (en) 2011-06-01 2014-03-04 Densbits Technologies Ltd. System and method for managing a non-volatile memory
US8588003B1 (en) 2011-08-01 2013-11-19 Densbits Technologies Ltd. System, method and computer program product for programming and for recovering from a power failure
US9449692B2 (en) 2011-08-03 2016-09-20 Micron Technology, Inc. Functional data programming and reading in a memory
WO2013030866A1 (en) * 2011-08-29 2013-03-07 Hitachi, Ltd. Semiconductor storage device comprising electrically rewritable nonvolatile semiconductor memory
US8553468B2 (en) 2011-09-21 2013-10-08 Densbits Technologies Ltd. System and method for managing erase operations in a non-volatile memory
US9053809B2 (en) * 2011-11-09 2015-06-09 Apple Inc. Data protection from write failures in nonvolatile memory
US8947941B2 (en) 2012-02-09 2015-02-03 Densbits Technologies Ltd. State responsive operations relating to flash memory cells
US8996788B2 (en) 2012-02-09 2015-03-31 Densbits Technologies Ltd. Configurable flash interface
US9583425B2 (en) * 2012-02-15 2017-02-28 Maxim Integrated Products, Inc. Solder fatigue arrest for wafer level package
WO2013147797A1 (en) * 2012-03-29 2013-10-03 Intel Corporation Method and apparatus for treatment of state confidence data retrieved from a non-volatile memory array
US9001575B2 (en) 2012-03-30 2015-04-07 Micron Technology, Inc. Encoding program bits to decouple adjacent wordlines in a memory device
US8996793B1 (en) 2012-04-24 2015-03-31 Densbits Technologies Ltd. System, method and computer readable medium for generating soft information
US9105314B2 (en) 2012-04-27 2015-08-11 Micron Technology, Inc. Program-disturb decoupling for adjacent wordlines of a memory device
US8910000B2 (en) 2012-05-17 2014-12-09 Micron Technology, Inc. Program-disturb management for phase change memory
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
US8804415B2 (en) 2012-06-19 2014-08-12 Fusion-Io, Inc. Adaptive voltage range management in non-volatile memory
US9235466B2 (en) * 2012-07-03 2016-01-12 Samsung Electronics Co., Ltd. Memory devices with selective error correction code
WO2014006147A1 (de) * 2012-07-04 2014-01-09 Hexagon Technology Center Gmbh Optischer positionsgeber mit analogem speicher
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
US9136001B2 (en) 2012-10-22 2015-09-15 Apple Inc. Signal-to-Noise Ratio (SNR) estimation in analog memory cells based on optimal read thresholds
US9159407B2 (en) * 2012-10-22 2015-10-13 Apple Inc. Soft readout from analog memory cells in the presence of read threshold errors
US9368225B1 (en) 2012-11-21 2016-06-14 Avago Technologies General Ip (Singapore) Pte. Ltd. Determining read thresholds based upon read error direction statistics
US9069659B1 (en) 2013-01-03 2015-06-30 Densbits Technologies Ltd. Read threshold determination using reference read threshold
US9530515B2 (en) * 2013-03-13 2016-12-27 Sandisk Technologies Llc Determining read voltages for reading memory
US8990668B2 (en) * 2013-03-14 2015-03-24 Western Digital Technologies, Inc. Decoding data stored in solid-state memory
KR102067611B1 (ko) 2013-03-15 2020-01-20 삼성전자주식회사 메모리 컨트롤러의 동작 방법과 상기 메모리 컨트롤러를 포함하는 장치들
US9122403B2 (en) * 2013-05-20 2015-09-01 Apple Inc. Distortion cancellation in 3-D non-volatile memory
CN104217761B (zh) * 2013-05-31 2018-12-14 慧荣科技股份有限公司 数据储存装置及其错误校正方法
US9136876B1 (en) 2013-06-13 2015-09-15 Densbits Technologies Ltd. Size limited multi-dimensional decoding
KR102120823B1 (ko) * 2013-08-14 2020-06-09 삼성전자주식회사 비휘발성 메모리 장치의 독출 시퀀스 제어 방법 및 이를 수행하는 메모리 시스템
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
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
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
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
JP6262063B2 (ja) * 2014-03-18 2018-01-17 東芝メモリ株式会社 不揮発性メモリおよび書き込み方法
US9490023B2 (en) * 2014-03-19 2016-11-08 Apple Inc. Mitigation of retention drift in charge-trap non-volatile memory
US9542262B1 (en) 2014-05-29 2017-01-10 Avago Technologies General Ip (Singapore) Pte. Ltd. Error correction
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
US9690697B2 (en) * 2014-07-10 2017-06-27 Kabushiki Kaisha Toshiba Memory controller, storage device and memory control method
US9710326B2 (en) * 2014-07-28 2017-07-18 SK Hynix Inc. Encoder by-pass with scrambler
GB2530043A (en) 2014-09-10 2016-03-16 Ibm Device and method for storing data in a plurality of multi-level cell memory chips
US20160077913A1 (en) * 2014-09-11 2016-03-17 Kabushiki Kaisha Toshiba Method of controlling nonvolatile memory
US9524211B1 (en) 2014-11-18 2016-12-20 Avago Technologies General Ip (Singapore) Pte. Ltd. Codeword management
US10449614B2 (en) 2014-12-18 2019-10-22 Illinois Tool Works Inc. Systems and methods for solid state sensor measurements of welding cables
US10084481B2 (en) 2014-12-18 2018-09-25 Apple Inc. GLDPC soft decoding with hard decision inputs
US10682722B2 (en) * 2014-12-18 2020-06-16 Illinois Tool Works Inc. Systems and methods for measuring characteristics of a welding cable with a low power transceiver
KR102262909B1 (ko) * 2014-12-18 2021-06-10 에스케이하이닉스 주식회사 메모리 시스템 동작 방법
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
TWI557560B (zh) * 2015-02-12 2016-11-11 慧榮科技股份有限公司 資料儲存裝置以及資料讀取方法
CN106297883B (zh) * 2015-06-05 2020-01-07 群联电子股份有限公司 解码方法、存储器存储装置及存储器控制电路单元
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
JP6657634B2 (ja) * 2015-07-24 2020-03-04 ソニー株式会社 符号化装置、メモリシステム、通信システムおよび符号化方法
FR3039922B1 (fr) * 2015-08-06 2018-02-02 Stmicroelectronics (Rousset) Sas Procede d'ecriture dans une memoire du type eeprom et dispositif de memoire correspondant
KR102312404B1 (ko) * 2015-09-07 2021-10-13 에스케이하이닉스 주식회사 저장 장치 및 이의 동작 방법
US9954558B1 (en) 2016-03-03 2018-04-24 Avago Technologies General Ip (Singapore) Pte. Ltd. Fast decoding of data stored in a flash memory
US10895932B1 (en) * 2016-05-10 2021-01-19 Apple Inc. Drift invariant processing
KR20180062513A (ko) * 2016-11-30 2018-06-11 에스케이하이닉스 주식회사 반도체 장치, 그를 포함하는 반도체 시스템 및 그 반도체 시스템의 구동 방법
KR102683257B1 (ko) * 2017-01-17 2024-07-11 에스케이하이닉스 주식회사 메모리 시스템 및 메모리 시스템의 동작방법
DE102017103347B4 (de) * 2017-02-17 2023-07-20 Infineon Technologies Ag Verarbeitung von daten in speicherzellen eines speichers
JP2018156711A (ja) 2017-03-21 2018-10-04 東芝メモリ株式会社 メモリコントローラおよびデータ読み出し方法
US10146460B1 (en) 2017-06-01 2018-12-04 Apple Inc. Programming schemes for avoidance or recovery from cross-temperature read failures
CN109215715B (zh) * 2017-07-05 2020-06-26 中国科学院微电子研究所 一种闪存存储电路的抗总剂量辐照加固方法
CN109300500B (zh) * 2017-07-25 2020-06-16 旺宏电子股份有限公司 存储器装置的数据管理方法与***
US10607709B1 (en) * 2018-09-13 2020-03-31 Toshiba Memory Corporation System and method for efficient read-flow by inter-cell interference decoupling for NAND flash memories
US10848182B2 (en) 2018-09-13 2020-11-24 Apple Inc. Iterative decoding with early termination criterion that permits errors in redundancy part
US10566972B1 (en) 2019-04-02 2020-02-18 Apple Inc. Analog switches immune to power sequence
EP3966592A1 (en) * 2019-05-06 2022-03-16 Koninklijke Philips N.V. Methods and systems for encoding and decoding radio frequency data
US11546366B2 (en) 2019-05-08 2023-01-03 International Business Machines Corporation Threat information sharing based on blockchain
CN112053724B (zh) * 2019-06-06 2023-07-18 群联电子股份有限公司 存储器控制方法、存储器存储装置及存储器控制电路单元
WO2021152338A1 (en) * 2020-01-28 2021-08-05 Micron Technology, Inc. Analog storage using memory device
US11513893B2 (en) * 2020-12-21 2022-11-29 Intel Corporation Concurrent compute and ECC for in-memory matrix vector operations
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
US11513887B1 (en) * 2021-08-23 2022-11-29 Apple Inc. Cancelation of cross-coupling interference among memory cells
US20230176767A1 (en) * 2021-12-03 2023-06-08 Hewlett-Packard Development Company, L.P. Interfacing with memory devices
CN114705973B (zh) * 2022-06-01 2022-11-11 北京航空航天大学杭州创新研究院 非侵入式的复杂环境集成电路老化监测方法
US20230393755A1 (en) * 2022-06-02 2023-12-07 Micron Technology, Inc. Managing error compensation using charge coupling and lateral migration sensitivity
US20240055050A1 (en) * 2022-08-09 2024-02-15 Micron Technology, Inc. Managing compensation for cell-to-cell coupling and lateral migration in memory devices based on a sensitivity metric

Family Cites Families (531)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3668631A (en) 1969-02-13 1972-06-06 Ibm Error detection and correction system with statistically optimized data recovery
US3668632A (en) 1969-02-13 1972-06-06 Ibm Fast decode character error detection and correction system
US4910706A (en) 1972-09-11 1990-03-20 Hyatt Gilbert P Analog memory for storing digital information
US4058851A (en) 1976-10-18 1977-11-15 Sperry Rand Corporation Conditional bypass of error correction for dual memory access time selection
JPS6051749B2 (ja) 1979-08-31 1985-11-15 富士通株式会社 エラ−訂正方式
US4556961A (en) 1981-05-26 1985-12-03 Tokyo Shibaura Denki Kabushiki Kaisha Semiconductor memory with delay means to reduce peak currents
US4413339A (en) 1981-06-24 1983-11-01 Digital Equipment Corporation Multiple error detecting and correcting system employing Reed-Solomon codes
JPS59106152A (ja) * 1982-12-10 1984-06-19 Nec Corp 半導体装置
US4608687A (en) 1983-09-13 1986-08-26 International Business Machines Corporation Bit steering apparatus and method for correcting errors in stored data, storing the address of the corrected data and using the address to maintain a correct data condition
EP0148488B1 (en) 1983-12-23 1992-03-18 Hitachi, Ltd. Semiconductor memory having multiple level storage structure
EP0157607B1 (en) * 1984-04-02 1993-02-10 The Board Of Trustees Of The Leland Stanford Junior University Analog data storage system
JPS618796A (ja) 1984-06-20 1986-01-16 Nec Corp ダイナミツクメモリ
US4654847A (en) 1984-12-28 1987-03-31 International Business Machines Apparatus for automatically correcting erroneous data and for storing the corrected data in a common pool alternate memory array
US4899342A (en) 1988-02-01 1990-02-06 Thinking Machines Corporation Method and apparatus for operating multi-unit array of memories
JPH01201736A (ja) 1988-02-08 1989-08-14 Mitsubishi Electric Corp マイクロコンピュータ
US5287469A (en) * 1988-12-27 1994-02-15 Nec Corporation Electrically erasable and programmable non-volatile memory (EEPROM), wherein write pulses can be interrupted by subsequently received read requests
US5077722A (en) * 1989-01-06 1991-12-31 Convex Computer Corporation Disk drive insertion and removal interlock
US4993029A (en) * 1989-03-13 1991-02-12 International Business Machines Corporation Method and apparatus for randomizing data in a direct access storage device
US5276649A (en) * 1989-03-16 1994-01-04 Mitsubishi Denki Kabushiki Kaisha Dynamic-type semiconductor memory device having staggered activation of column groups
DE69034191T2 (de) 1989-04-13 2005-11-24 Sandisk Corp., Sunnyvale EEPROM-System mit aus mehreren Chips bestehender Blocklöschung
US5163021A (en) * 1989-04-13 1992-11-10 Sundisk Corporation Multi-state EEprom read and write circuits and techniques
US5172338B1 (en) 1989-04-13 1997-07-08 Sandisk Corp Multi-state eeprom read and write circuits and techniques
US5200959A (en) 1989-10-17 1993-04-06 Sundisk Corporation Device and method for defect handling in semi-conductor memory
US5126808A (en) * 1989-10-23 1992-06-30 Advanced Micro Devices, Inc. Flash EEPROM array with paged erase architecture
US5182752A (en) 1990-06-29 1993-01-26 Digital Equipment Corporation Method and apparatus for transferring data between a data bus and a data storage device
US5218569A (en) 1991-02-08 1993-06-08 Banks Gerald J Electrically alterable non-volatile memory with n-bits per memory cell
US5191584A (en) * 1991-02-20 1993-03-02 Micropolis Corporation Mass storage array with efficient parity calculation
US5272669A (en) 1991-02-20 1993-12-21 Sundisk Corporation Method and structure for programming floating gate memory cells
KR960002006B1 (ko) 1991-03-12 1996-02-09 가부시끼가이샤 도시바 2개의 기준 레벨을 사용하는 기록 검증 제어기를 갖는 전기적으로 소거 가능하고 프로그램 가능한 불휘발성 메모리 장치
GB2256735B (en) 1991-06-12 1995-06-21 Intel Corp Non-volatile disk cache
US6230233B1 (en) 1991-09-13 2001-05-08 Sandisk Corporation Wear leveling techniques for flash EEPROM systems
US5237535A (en) 1991-10-09 1993-08-17 Intel Corporation Method of repairing overerased cells in a flash memory
US5182558A (en) 1991-10-25 1993-01-26 Halliburton Geophysical Services, Inc. System for generating correction signals for use in forming low distortion analog signals
US5388064A (en) * 1991-11-26 1995-02-07 Information Storage Devices, Inc. Programmable non-volatile analog voltage source devices and methods
US6222762B1 (en) 1992-01-14 2001-04-24 Sandisk Corporation Multi-state memory
US5657332A (en) * 1992-05-20 1997-08-12 Sandisk Corporation Soft errors handling in EEPROM devices
US5532962A (en) * 1992-05-20 1996-07-02 Sandisk Corporation Soft errors handling in EEPROM devices
JP2816512B2 (ja) 1992-07-27 1998-10-27 三菱電機株式会社 半導体記憶装置
US5479170A (en) 1992-10-16 1995-12-26 California Institute Of Technology Method and apparatus for long-term multi-valued storage in dynamic analog memory
US5416782A (en) * 1992-10-30 1995-05-16 Intel Corporation Method and apparatus for improving data failure rate testing for memory arrays
US5473753A (en) 1992-10-30 1995-12-05 Intel Corporation Method of managing defects in flash disk memories
US5416646A (en) * 1992-11-12 1995-05-16 Kabushiki Kaisha Toshiba Data recording and reproducing apparatus having read/write circuit with programmable parameter means
US5761402A (en) * 1993-03-08 1998-06-02 Hitachi, Ltd. Array type disk system updating redundant data asynchronously with data access
US5784377A (en) 1993-03-09 1998-07-21 Hubbell Incorporated Integrated digital loop carrier system with virtual tributary mapper circuit
US5365484A (en) * 1993-08-23 1994-11-15 Advanced Micro Devices, Inc. Independent array grounds for flash EEPROM array with paged erase architechture
US6091639A (en) 1993-08-27 2000-07-18 Kabushiki Kaisha Toshiba Non-volatile semiconductor memory device and data programming method
US5446854A (en) 1993-10-20 1995-08-29 Sun Microsystems, Inc. Virtual memory computer apparatus and address translation mechanism employing hashing scheme and page frame descriptor that support multiple page sizes
GB2289779B (en) 1994-05-24 1999-04-28 Intel Corp Method and apparatus for automatically scrubbing ECC errors in memory via hardware
US5583889A (en) 1994-07-08 1996-12-10 Zenith Electronics Corporation Trellis coded modulation system for HDTV
JPH0877694A (ja) 1994-09-05 1996-03-22 Yamaha Corp 操作子装置
US5508958A (en) 1994-09-29 1996-04-16 Intel Corporation Method and apparatus for sensing the state of floating gate memory cells by applying a variable gate voltage
DE69423104T2 (de) 1994-10-31 2000-07-20 Stmicroelectronics S.R.L., Agrate Brianza Fehlernachweis- und Korrekturverfahren in einem mehrstufigen Speicher und Speicher für dieses Verfahren
US5694356A (en) * 1994-11-02 1997-12-02 Invoice Technology, Inc. High resolution analog storage EPROM and flash EPROM
US5533190A (en) 1994-12-21 1996-07-02 At&T Global Information Solutions Company Method for maintaining parity-data consistency in a disk array
US5541886A (en) 1994-12-27 1996-07-30 Intel Corporation Method and apparatus for storing control information in multi-bit non-volatile memory arrays
US5838832A (en) 1995-04-03 1998-11-17 Iterated Systems, Inc. Method and system for representing a data set with a data transforming function and data mask
JP3807744B2 (ja) 1995-06-07 2006-08-09 マクロニクス インターナショナル カンパニイ リミテッド 可変プログラムパルス高及びパルス幅によるページモードフラッシュメモリ用自動プログラミングアルゴリズム
US5860106A (en) 1995-07-13 1999-01-12 Intel Corporation Method and apparatus for dynamically adjusting power/performance characteristics of a memory subsystem
US5801985A (en) 1995-07-28 1998-09-01 Micron Technology, Inc. Memory system having programmable control parameters
US5799200A (en) 1995-09-28 1998-08-25 Emc Corporation Power failure responsive apparatus and method having a shadow dram, a flash ROM, an auxiliary battery, and a controller
US5687114A (en) * 1995-10-06 1997-11-11 Agate Semiconductor, Inc. Integrated circuit for storage and retrieval of multiple digital bits per nonvolatile memory cell
KR0169412B1 (ko) 1995-10-16 1999-02-01 김광호 불휘발성 반도체 메모리 장치
US5742752A (en) * 1995-12-29 1998-04-21 Symbios Logic Inc. Method for performing a RAID stripe write operation using a drive XOR command set
US5675540A (en) 1996-01-22 1997-10-07 Micron Quantum Devices, Inc. Non-volatile memory system having internal data verification test mode
US5682352A (en) * 1996-02-08 1997-10-28 Invoice Technology, Inc. Digital testing of analog memory devices
US5867114A (en) * 1996-02-29 1999-02-02 Mitel Corporation Method and apparatus for performing data compression
US5748534A (en) * 1996-03-26 1998-05-05 Invox Technology Feedback loop for reading threshold voltage
US5748533A (en) * 1996-03-26 1998-05-05 Invoice Technology, Inc. Read circuit which uses a coarse-to-fine search when reading the threshold voltage of a memory cell
US5726934A (en) * 1996-04-09 1998-03-10 Information Storage Devices, Inc. Method and apparatus for analog reading values stored in floating gate structures
US6073204A (en) 1997-04-23 2000-06-06 Micron Technology, Inc. Memory system having flexible architecture and method
US5815439A (en) 1996-04-30 1998-09-29 Agate Semiconductor, Inc. Stabilization circuits and techniques for storage and retrieval of single or multiple digital bits per memory cell
US5946716A (en) 1996-05-30 1999-08-31 Hewlett-Packard Company Sectored virtual memory management system and translation look-aside buffer (TLB) for the same
JP3202600B2 (ja) * 1996-06-27 2001-08-27 日本電気株式会社 磁気ディスク装置
US6009016A (en) 1996-07-09 1999-12-28 Hitachi, Ltd. Nonvolatile memory system semiconductor memory and writing method
JP3976839B2 (ja) 1996-07-09 2007-09-19 株式会社ルネサステクノロジ 不揮発性メモリシステムおよび不揮発性半導体メモリ
US6134631A (en) 1996-08-19 2000-10-17 Hyundai Electronics America, Inc. Non-volatile memory with embedded programmable controller
US6148360A (en) * 1996-09-20 2000-11-14 Intel Corporation Nonvolatile writeable memory with program suspend command
US5864569A (en) * 1996-10-18 1999-01-26 Micron Technology, Inc. Method and apparatus for performing error correction on data read from a multistate memory
US5764568A (en) 1996-10-24 1998-06-09 Micron Quantum Devices, Inc. Method for performing analog over-program and under-program detection for a multistate memory cell
AU4996697A (en) 1996-12-20 1998-07-17 Intel Corporation Nonvolatile writeable memory with fast programming capability
US6279069B1 (en) 1996-12-26 2001-08-21 Intel Corporation Interface for flash EEPROM memory arrays
KR100213094B1 (ko) 1997-02-21 1999-08-02 윤종용 영상 개선장치를 위한 히스토그램 및 cdf 추출방법 및 그 회로
US5798966A (en) * 1997-03-31 1998-08-25 Intel Corporation Flash memory VDS compensation techiques to reduce programming variability
KR100323554B1 (ko) 1997-05-14 2002-03-08 니시무로 타이죠 불휘발성반도체메모리장치
US5912906A (en) 1997-06-23 1999-06-15 Sun Microsystems, Inc. Method and apparatus for recovering from correctable ECC errors
US6212654B1 (en) * 1997-07-22 2001-04-03 Lucent Technologies Inc. Coded modulation for digital storage in analog memory devices
US5930167A (en) * 1997-07-30 1999-07-27 Sandisk Corporation Multi-state non-volatile flash memory capable of being its own two state write cache
US6360346B1 (en) * 1997-08-27 2002-03-19 Sony Corporation Storage unit, method of checking storage unit, reading and writing method
US5909449A (en) 1997-09-08 1999-06-01 Invox Technology Multibit-per-cell non-volatile memory with error detection and correction
JP4039532B2 (ja) 1997-10-02 2008-01-30 株式会社ルネサステクノロジ 半導体集積回路装置
US6041430A (en) 1997-11-03 2000-03-21 Sun Microsystems, Inc. Error detection and correction code for data and check code fields
US5867429A (en) * 1997-11-19 1999-02-02 Sandisk Corporation High density non-volatile flash memory without adverse effects of electric field coupling between adjacent floating gates
US6442585B1 (en) 1997-11-26 2002-08-27 Compaq Computer Corporation Method for scheduling contexts based on statistics of memory system interactions in a computer system
US6034891A (en) 1997-12-01 2000-03-07 Micron Technology, Inc. Multi-state flash memory defect management
US6467062B1 (en) 1997-12-10 2002-10-15 Mordecai Barkan Digital data (multi-bit) storage with discrete analog memory cells
US6040993A (en) * 1998-02-23 2000-03-21 Macronix International Co., Ltd. Method for programming an analog/multi-level flash EEPROM
US5969986A (en) * 1998-06-23 1999-10-19 Invox Technology High-bandwidth read and write architectures for non-volatile memories
US6026042A (en) 1998-04-10 2000-02-15 Micron Technology, Inc. Method and apparatus for enhancing the performance of semiconductor memory devices
US6397364B1 (en) * 1998-04-20 2002-05-28 Mordecai Barkan Digital data representation for multi-bit data storage and transmission
US6009014A (en) 1998-06-03 1999-12-28 Advanced Micro Devices, Inc. Erase verify scheme for NAND flash
US6178466B1 (en) * 1998-06-12 2001-01-23 Unisys Corporation System for maximizing bandpass on an interface directly coupling two units where the interface has independently operative data and address interconnections, and computer sysem employing same.
US6208542B1 (en) 1998-06-30 2001-03-27 Sandisk Corporation Techniques for storing digital data in an analog or multilevel memory
EP0987715B1 (en) 1998-09-15 2005-02-09 STMicroelectronics S.r.l. Method for maintaining the memory of non-volatile memory cells
US5995417A (en) * 1998-10-20 1999-11-30 Advanced Micro Devices, Inc. Scheme for page erase and erase verify in a non-volatile memory array
US6490200B2 (en) 2000-03-27 2002-12-03 Sandisk Corporation Non-volatile memory with improved sensing and method therefor
JP2000132987A (ja) 1998-10-28 2000-05-12 Neucore Technol Inc 不揮発性半導体メモリ装置
JP2000173289A (ja) * 1998-12-10 2000-06-23 Toshiba Corp エラー訂正可能なフラッシュメモリシステム
US6240458B1 (en) * 1998-12-22 2001-05-29 Unisys Corporation System and method for programmably controlling data transfer request rates between data sources and destinations in a data processing system
US6956779B2 (en) 1999-01-14 2005-10-18 Silicon Storage Technology, Inc. Multistage autozero sensing for a multilevel non-volatile memory integrated circuit system
US6975539B2 (en) 1999-01-14 2005-12-13 Silicon Storage Technology, Inc. Digital multilevel non-volatile memory system
US6282145B1 (en) 1999-01-14 2001-08-28 Silicon Storage Technology, Inc. Array architecture and operating methods for digital multilevel nonvolatile memory integrated circuit system
US7031214B2 (en) 1999-01-14 2006-04-18 Silicon Storage Technology, Inc. Digital multilevel memory system having multistage autozero sensing
US6405323B1 (en) 1999-03-30 2002-06-11 Silicon Storage Technology, Inc. Defect management for interface to electrically-erasable programmable read-only memory
JP3620992B2 (ja) 1999-04-23 2005-02-16 株式会社 沖マイクロデザイン 半導体記憶装置
US6166962A (en) 1999-06-24 2000-12-26 Amic Technology, Inc. Circuit and method for conditioning flash memory array
US6480948B1 (en) 1999-06-24 2002-11-12 Cirrus Logic, Inc. Configurable system memory map
EP1067547A1 (en) 1999-06-28 2001-01-10 Hewlett-Packard Company Data set recovery by codeword overlay
US6708257B2 (en) 1999-07-12 2004-03-16 Koninklijke Philips Electronics N.V. Buffering system bus for external-memory access
DE60037417D1 (de) * 1999-07-28 2008-01-24 Sony Corp Aufnahmesystem, daten-aufnahmevorrichtung, speicher-vorrichtung, und daten-aufnahmeverfahren
EP1074995B1 (en) * 1999-08-03 2005-10-26 STMicroelectronics S.r.l. Method for programming multi-level non-volatile memories by controlling the gate voltage
US7457897B1 (en) 2004-03-17 2008-11-25 Suoer Talent Electronics, Inc. PCI express-compatible controller and interface for flash memory
JP3888808B2 (ja) 1999-08-16 2007-03-07 富士通株式会社 Nand型不揮発性メモリ
US6553510B1 (en) 1999-09-02 2003-04-22 Micron Technology, Inc. Memory device including redundancy routine for correcting random errors
US6405342B1 (en) 1999-09-10 2002-06-11 Western Digital Technologies, Inc. Disk drive employing a multiple-input sequence detector responsive to reliability metrics to improve a retry operation
US6141261A (en) * 1999-12-31 2000-10-31 Patti; Robert DRAM that stores multiple bits per storage cell
US6304486B1 (en) 1999-12-20 2001-10-16 Fujitsu Limited Sensing time control device and method
JP2001184881A (ja) 1999-12-28 2001-07-06 Toshiba Corp 不揮発性半導体メモリの読み出し回路
JP3877121B2 (ja) 2000-01-19 2007-02-07 沖電気工業株式会社 半導体記憶装置
US7847833B2 (en) 2001-02-07 2010-12-07 Verisign, Inc. Digital camera device providing improved methodology for rapidly taking successive pictures
US6532556B1 (en) 2000-01-27 2003-03-11 Multi Level Memory Technology Data management for multi-bit-per-cell memories
US6259627B1 (en) 2000-01-27 2001-07-10 Multi Level Memory Technology Read and write operations using constant row line voltage and variable column line load
US6363008B1 (en) 2000-02-17 2002-03-26 Multi Level Memory Technology Multi-bit-cell non-volatile memory with maximized data capacity
US6219276B1 (en) 2000-02-25 2001-04-17 Advanced Micro Devices, Inc. Multilevel cell programming
US6615307B1 (en) * 2000-05-10 2003-09-02 Micron Technology, Inc. Flash with consistent latency for read operations
JP2001291344A (ja) 2000-04-04 2001-10-19 Hitachi Ltd 光ディスク装置およびそのデータ再生方法
JP2003534680A (ja) * 2000-04-04 2003-11-18 コムテック テレコミュニケーションズ コーポレイション 強化型ターボプロダクト符号復号器システム
US6774808B1 (en) * 2000-05-17 2004-08-10 Dell Products L.P. Electromechanical lock for components
US6622277B1 (en) 2000-06-05 2003-09-16 Tyco Telecommunications(Us)Inc. Concatenated forward error correction decoder
US7032154B2 (en) 2000-06-05 2006-04-18 Tyco Telecommunications (Us) Inc. Concatenated forward error correction decoder
DE10193104T1 (de) 2000-06-27 2003-03-13 Seagate Technology Llc Verfahren und Vorrichtung zum Codieren mit ungleichem Schutz in magnetischen Aufzeichnungskanälen mit verketteten Fehlerkorrekturcodes
US6292394B1 (en) 2000-06-29 2001-09-18 Saifun Semiconductors Ltd. Method for programming of a semiconductor memory cell
US7065147B2 (en) 2000-07-12 2006-06-20 Texas Instruments Incorporated System and method of data communication using turbo trellis coded modulation combined with constellation shaping with or without precoding
JP2002042495A (ja) * 2000-07-21 2002-02-08 Mitsubishi Electric Corp 冗長救済回路、方法および半導体装置
JP3595495B2 (ja) 2000-07-27 2004-12-02 Necマイクロシステム株式会社 半導体記憶装置
US6396742B1 (en) 2000-07-28 2002-05-28 Silicon Storage Technology, Inc. Testing of multilevel semiconductor memory
US6301151B1 (en) * 2000-08-09 2001-10-09 Information Storage Devices, Inc. Adaptive programming method and apparatus for flash memory analog storage
US7113432B2 (en) 2000-09-14 2006-09-26 Sandisk Corporation Compressed event counting technique and application to a flash memory system
US6538922B1 (en) 2000-09-27 2003-03-25 Sandisk Corporation Writable tracking cells
EP1199725B1 (en) * 2000-10-13 2010-10-06 STMicroelectronics Srl Method for storing and reading data in a multibit nonvolatile memory with a non-binary number of bits per cell
US7107480B1 (en) 2000-12-22 2006-09-12 Simpletech, Inc. System and method for preventing data corruption in solid-state memory devices after a power failure
US6349056B1 (en) 2000-12-28 2002-02-19 Sandisk Corporation Method and structure for efficient data verification operation for non-volatile memories
US6469931B1 (en) * 2001-01-04 2002-10-22 M-Systems Flash Disk Pioneers Ltd. Method for increasing information content in a computer memory
US6687155B2 (en) * 2001-01-11 2004-02-03 Oki Electric Industry Co., Ltd. Analog storage semiconductor memory that uses plural write voltages and plural read voltages having different voltage levels
WO2002058069A2 (en) * 2001-01-17 2002-07-25 Honeywell International Inc. Enhanced memory module architecture
US6466476B1 (en) * 2001-01-18 2002-10-15 Multi Level Memory Technology Data coding for multi-bit-per-cell memories having variable numbers of bits per memory cell
US6775792B2 (en) 2001-01-29 2004-08-10 Snap Appliance, Inc. Discrete mapping of parity blocks
JP3875570B2 (ja) 2001-02-20 2007-01-31 株式会社東芝 半導体記憶装置のデータ書き込み方法及び半導体記憶装置
US6738289B2 (en) 2001-02-26 2004-05-18 Sandisk Corporation Non-volatile memory with improved programming and method therefor
JP3829088B2 (ja) 2001-03-29 2006-10-04 株式会社東芝 半導体記憶装置
ATE492076T1 (de) 2001-04-04 2011-01-15 Quellan Inc Verfahren und system zum decodieren von mehrpegelsignalen
US6757193B2 (en) 2001-05-31 2004-06-29 Macronix International Co., Ltd. Coding method of multi-level memory cell
WO2002100112A1 (en) 2001-06-03 2002-12-12 Seelive Ltd. System and method for rapid video compression
US6731557B2 (en) 2001-06-21 2004-05-04 Stmicroelectronics S.R.L. Method of refreshing an electrically erasable and programmable non-volatile memory
US7343330B1 (en) 2001-06-26 2008-03-11 Boesjes Eimar M Systems and methods for acquisition, evaluation, inventory, distribution, and/or re-sale of pre-owned recorded data products
US6522580B2 (en) * 2001-06-27 2003-02-18 Sandisk Corporation Operating techniques for reducing effects of coupling between storage elements of a non-volatile memory operated in multiple data states
GB2378277B (en) 2001-07-31 2003-06-25 Sun Microsystems Inc Multiple address translations
US6809964B2 (en) * 2001-08-30 2004-10-26 Micron Technology, Inc. Nonvolatile semiconductor memory device capable of transferring data internally without using an external bus
US6717847B2 (en) 2001-09-17 2004-04-06 Sandisk Corporation Selective operation of a multi-state non-volatile memory system in a binary mode
US6456528B1 (en) * 2001-09-17 2002-09-24 Sandisk Corporation Selective operation of a multi-state non-volatile memory system in a binary mode
US7170802B2 (en) 2003-12-31 2007-01-30 Sandisk Corporation Flexible and area efficient column redundancy for non-volatile memories
US6643169B2 (en) 2001-09-18 2003-11-04 Intel Corporation Variable level memory
US6678192B2 (en) 2001-11-02 2004-01-13 Sandisk Corporation Error management for writable tracking storage units
US6560152B1 (en) 2001-11-02 2003-05-06 Sandisk Corporation Non-volatile memory with temperature-compensated data read
US7139325B1 (en) 2001-12-07 2006-11-21 Applied Micro Circuits Corporation System and method for five-level non-causal channel equalization
US6870770B2 (en) 2001-12-12 2005-03-22 Micron Technology, Inc. Method and architecture to calibrate read operations in synchronous flash memory
US6907497B2 (en) 2001-12-20 2005-06-14 Kabushiki Kaisha Toshiba Non-volatile semiconductor memory device
US6418060B1 (en) * 2002-01-03 2002-07-09 Ememory Technology Inc. Method of programming and erasing non-volatile memory cells
US6621739B2 (en) 2002-01-18 2003-09-16 Sandisk Corporation Reducing the effects of noise in non-volatile memories through multiple reads
US6542407B1 (en) 2002-01-18 2003-04-01 Sandisk Corporation Techniques of recovering data from memory cells affected by field coupling with adjacent memory cells
JP2003257192A (ja) 2002-03-06 2003-09-12 Mitsubishi Electric Corp 半導体記憶装置および不揮発性半導体記憶装置
US6851018B2 (en) 2002-03-27 2005-02-01 Hewlett-Packard Development Company, L.P. Exchanging operation parameters between a data storage device and a controller
KR100476888B1 (ko) 2002-04-04 2005-03-17 삼성전자주식회사 온도보상기능을 가진 멀티비트 플래쉬메모리
US6707748B2 (en) 2002-05-07 2004-03-16 Ritek Corporation Back up power embodied non-volatile memory device
US6751766B2 (en) * 2002-05-20 2004-06-15 Sandisk Corporation Increasing the effectiveness of error correction codes and operating multi-level memory systems by using information about the quality of the stored data
FR2842344A1 (fr) * 2002-07-11 2004-01-16 St Microelectronics Sa Procede de commande d'une memoire electronique non volatile et dispositif associe
US6781880B2 (en) * 2002-07-19 2004-08-24 Micron Technology, Inc. Non-volatile memory erase circuitry
US6941412B2 (en) 2002-08-29 2005-09-06 Sandisk Corporation Symbol frequency leveling in a storage system
US6781877B2 (en) 2002-09-06 2004-08-24 Sandisk Corporation Techniques for reducing effects of coupling between storage elements of adjacent rows of memory cells
US6983428B2 (en) * 2002-09-24 2006-01-03 Sandisk Corporation Highly compact non-volatile memory and method thereof
US6987693B2 (en) 2002-09-24 2006-01-17 Sandisk Corporation Non-volatile memory and method with reduced neighboring field errors
FR2845227B1 (fr) 2002-10-01 2005-01-14 Telediffusion De France Tdf Procede de reception d'un signal module selon une technique de codage multi-niveaux, procede de decodage, dispositif de reception, systeme de codage-decodage et applications correspondant
US8412879B2 (en) 2002-10-28 2013-04-02 Sandisk Technologies Inc. Hybrid implementation for error correction codes within a non-volatile memory system
US20040083334A1 (en) 2002-10-28 2004-04-29 Sandisk Corporation Method and apparatus for managing the integrity of data in non-volatile memory system
US6963505B2 (en) 2002-10-29 2005-11-08 Aifun Semiconductors Ltd. Method circuit and system for determining a reference voltage
US7136304B2 (en) * 2002-10-29 2006-11-14 Saifun Semiconductor Ltd Method, system and circuit for programming a non-volatile memory array
US6992932B2 (en) 2002-10-29 2006-01-31 Saifun Semiconductors Ltd Method circuit and system for read error detection in a non-volatile memory array
US7218255B1 (en) 2002-12-04 2007-05-15 Marvell International Ltd. Methods and apparatus for improving minimum Hamming weights of a sequence
US7073103B2 (en) 2002-12-05 2006-07-04 Sandisk Corporation Smart verify for multi-state memories
US6882567B1 (en) 2002-12-06 2005-04-19 Multi Level Memory Technology Parallel programming of multiple-bit-per-cell memory cells on a continuous word line
US7158058B1 (en) 2002-12-09 2007-01-02 Marvell International Ltd. Method and apparatus for generating a seed set in a data dependent seed selector
US6829167B2 (en) 2002-12-12 2004-12-07 Sandisk Corporation Error recovery for nonvolatile memory
US6836435B2 (en) 2002-12-13 2004-12-28 Freescale Semiconductor, Inc. Compaction scheme in NVM
DE10300781B4 (de) * 2003-01-11 2014-02-06 Qimonda Ag Speicherbaustein, Testsystem und Verfahren zum Testen eines oder mehrerer Speicherbausteine
JP2004253038A (ja) 2003-02-19 2004-09-09 Renesas Technology Corp 半導体記憶装置
US7469049B1 (en) 2003-03-04 2008-12-23 Marvell International Ltd. Data dependent scrambler with reduced overhead
WO2004084305A1 (ja) 2003-03-19 2004-09-30 Fujitsu Limited 半導体装置及びその製造方法、並びに撮像装置
US7093062B2 (en) * 2003-04-10 2006-08-15 Micron Technology, Inc. Flash memory data bus for synchronous burst read page
US7002821B2 (en) * 2003-04-11 2006-02-21 Gerpheide George E Zero drift analog memory cell, array and method of operation
JP3878573B2 (ja) 2003-04-16 2007-02-07 株式会社東芝 不揮発性半導体記憶装置
JP3913704B2 (ja) 2003-04-22 2007-05-09 株式会社東芝 不揮発性半導体記憶装置及びこれを用いた電子装置
US6975542B2 (en) * 2003-05-08 2005-12-13 Micron Technology, Inc. NAND flash memory with improved read and verification threshold uniformity
JP2004348817A (ja) 2003-05-20 2004-12-09 Sharp Corp 半導体記憶装置、そのページバッファリソース割当方法及び回路、コンピュータシステム並びに携帯電子機器
CN100394571C (zh) 2003-05-20 2008-06-11 富士通株式会社 Lsi插件及lsi元件的试验方法和半导体器件的制造方法
US6845052B1 (en) 2003-05-30 2005-01-18 Macronix International Co., Ltd. Dual reference cell sensing scheme for non-volatile memory
US7254690B2 (en) 2003-06-02 2007-08-07 S. Aqua Semiconductor Llc Pipelined semiconductor memories and systems
US7372731B2 (en) * 2003-06-17 2008-05-13 Sandisk Il Ltd. Flash memories with adaptive reference voltages
US7023735B2 (en) * 2003-06-17 2006-04-04 Ramot At Tel-Aviv University Ltd. Methods of increasing the reliability of a flash memory
US6988175B2 (en) 2003-06-30 2006-01-17 M-Systems Flash Disk Pioneers Ltd. Flash memory management method that is resistant to data corruption by power loss
US6903972B2 (en) 2003-07-30 2005-06-07 M-Systems Flash Disk Pioneers Ltd. Different methods applied for archiving data according to their desired lifetime
WO2005010638A2 (en) 2003-07-30 2005-02-03 M-Systems Flash Disk Pioneers Ltd. Method and system for optimizing reliability and performance of programming data in non-volatile memory devices
US7471552B2 (en) 2003-08-04 2008-12-30 Ovonyx, Inc. Analog phase change memory
JP2005092923A (ja) 2003-09-12 2005-04-07 Renesas Technology Corp 半導体記憶装置
US7064980B2 (en) 2003-09-17 2006-06-20 Sandisk Corporation Non-volatile memory and method with bit line coupled compensation
US7197594B2 (en) 2003-09-23 2007-03-27 Infineon Technologies Flash Gmbh & Co. Kg Circuit, system and method for encoding data to be stored on a non-volatile memory array
US7057958B2 (en) 2003-09-30 2006-06-06 Sandisk Corporation Method and system for temperature compensation for memory cells with temperature-dependent behavior
US7012835B2 (en) 2003-10-03 2006-03-14 Sandisk Corporation Flash memory data correction and scrub techniques
US6930925B2 (en) * 2003-10-14 2005-08-16 Atmel Corporation Suspend-resume programming method for flash memory
US7356755B2 (en) 2003-10-16 2008-04-08 Intel Corporation Error correction for multi-level cell memory with overwrite capability
US7177199B2 (en) * 2003-10-20 2007-02-13 Sandisk Corporation Behavior based programming of non-volatile memory
US7301807B2 (en) * 2003-10-23 2007-11-27 Sandisk Corporation Writable tracking cells
US7433697B2 (en) 2003-10-24 2008-10-07 Broadcom Corporation Synchronized UWB piconets for Simultaneously Operating Piconet performance
KR100542701B1 (ko) 2003-11-18 2006-01-11 주식회사 하이닉스반도체 낸드 플래시 메모리 소자의 문턱전압 측정 방법
US20090193184A1 (en) 2003-12-02 2009-07-30 Super Talent Electronics Inc. Hybrid 2-Level Mapping Tables for Hybrid Block- and Page-Mode Flash-Memory System
US20090204872A1 (en) 2003-12-02 2009-08-13 Super Talent Electronics Inc. Command Queuing Smart Storage Transfer Manager for Striping Data to Raw-NAND Flash Modules
JP4319532B2 (ja) 2003-12-03 2009-08-26 富士フイルム株式会社 帯状体の加熱方法および帯状体加熱装置
KR100646940B1 (ko) 2003-12-15 2006-11-17 주식회사 하이닉스반도체 낮은 첨두 전류치를 가지는 리프레시 제어기
US7363420B2 (en) 2003-12-15 2008-04-22 Nortel Networks Limited Method and file structures for managing data on a flash disk
US7657706B2 (en) * 2003-12-18 2010-02-02 Cisco Technology, Inc. High speed memory and input/output processor subsystem for efficiently allocating and using high-speed memory and slower-speed memory
US7631138B2 (en) 2003-12-30 2009-12-08 Sandisk Corporation Adaptive mode switching of flash memory address mapping based on host usage characteristics
US6937520B2 (en) * 2004-01-21 2005-08-30 Tsuyoshi Ono Nonvolatile semiconductor memory device
US7372730B2 (en) 2004-01-26 2008-05-13 Sandisk Corporation Method of reading NAND memory to compensate for coupling between storage elements
US7151692B2 (en) * 2004-01-27 2006-12-19 Macronix International Co., Ltd. Operation scheme for programming charge trapping non-volatile memory
US7068539B2 (en) 2004-01-27 2006-06-27 Sandisk Corporation Charge packet metering for coarse/fine programming of non-volatile memory
US7002843B2 (en) 2004-01-27 2006-02-21 Sandisk Corporation Variable current sinking for coarse/fine programming of non-volatile memory
US6937511B2 (en) * 2004-01-27 2005-08-30 Macronix International Co., Ltd. Circuit and method for programming charge storage memory cells
US7139198B2 (en) 2004-01-27 2006-11-21 Sandisk Corporation Efficient verification for coarse/fine programming of non-volatile memory
US7210077B2 (en) 2004-01-29 2007-04-24 Hewlett-Packard Development Company, L.P. System and method for configuring a solid-state storage device with error correction coding
US7266069B2 (en) 2004-02-06 2007-09-04 Via Technologies, Inc., Method and apparatus for retry calculation in an optical disk device
US7177200B2 (en) 2004-02-10 2007-02-13 Msystems Ltd. Two-phase programming of a flash memory
US7716413B2 (en) 2004-02-15 2010-05-11 Sandisk Il Ltd. Method of making a multi-bit-cell flash memory
KR100525004B1 (ko) * 2004-02-26 2005-10-31 삼성전자주식회사 멀티레벨 셀(Multi-level cell)플래쉬메모리장치 및 이의 프로그램 방법
US20050213393A1 (en) 2004-03-14 2005-09-29 M-Systems Flash Disk Pioneers, Ltd. States encoding in multi-bit flash cells for optimizing error rate
US7310347B2 (en) * 2004-03-14 2007-12-18 Sandisk, Il Ltd. States encoding in multi-bit flash cells
US7071849B2 (en) * 2004-04-04 2006-07-04 Guobiao Zhang Fractional-Bit Systems
US7020017B2 (en) 2004-04-06 2006-03-28 Sandisk Corporation Variable programming of non-volatile memory
EP1603138A1 (fr) 2004-04-15 2005-12-07 STMicroelectronics SA Mémoire non volatile comprenant des moyens de brouillage de la lecture de cellules mémoire
US7325090B2 (en) 2004-04-29 2008-01-29 Sandisk Il Ltd. Refreshing data stored in a flash memory
DE102004021267B4 (de) 2004-04-30 2008-04-17 Infineon Technologies Ag Verfahren zum Testen eines Speicherbausteins und Prüfanordnung
CN100407178C (zh) 2004-05-19 2008-07-30 松下电器产业株式会社 存储器控制电路、非易失性存储装置及存储器控制方法
US7231474B1 (en) 2004-06-01 2007-06-12 Advanced Micro Devices, Inc. Serial interface having a read temperature command
US7447970B2 (en) 2004-06-16 2008-11-04 Seagate Technology, Inc. Soft-decision decoding using selective bit flipping
US7190614B2 (en) * 2004-06-17 2007-03-13 Macronix International Co., Ltd. Operation scheme for programming charge trapping non-volatile memory
KR100546415B1 (ko) 2004-06-25 2006-01-26 삼성전자주식회사 메모리 장치의 파워 노이즈를 방지하는 직렬 웨이크 업 회로
US7665007B2 (en) 2004-06-30 2010-02-16 Seagate Technology, Llc Retrial and reread methods and apparatus for recording channels
US7196644B1 (en) 2004-07-01 2007-03-27 Seagate Technology Llc Decoupling of analog input and digital output
US7042766B1 (en) * 2004-07-22 2006-05-09 Spansion, Llc Method of programming a flash memory device using multilevel charge storage
US7817469B2 (en) * 2004-07-26 2010-10-19 Sandisk Il Ltd. Drift compensation in a flash memory
US7180775B2 (en) 2004-08-05 2007-02-20 Msystems Ltd. Different numbers of bits per cell in non-volatile memory devices
US7797609B2 (en) 2004-08-19 2010-09-14 Unisys Corporation Apparatus and method for merging data blocks with error correction code protection
EP1785998A1 (en) * 2004-08-30 2007-05-16 Spansion LLC Semiconductor device, semiconductor device testing method, and data writing method
US7200062B2 (en) 2004-08-31 2007-04-03 Micron Technology, Inc. Method and system for reducing the peak current in refreshing dynamic random access memory devices
US7254763B2 (en) 2004-09-01 2007-08-07 Agere Systems Inc. Built-in self test for memory arrays using error correction coding
JP2006115145A (ja) 2004-10-14 2006-04-27 Nec Electronics Corp 復号装置及び復号方法
US7409623B2 (en) 2004-11-04 2008-08-05 Sigmatel, Inc. System and method of reading non-volatile computer memory
JP4261462B2 (ja) 2004-11-05 2009-04-30 株式会社東芝 不揮発性メモリシステム
US7493457B2 (en) 2004-11-08 2009-02-17 Sandisk Il. Ltd States encoding in multi-bit flash cells for optimizing error rate
JP4410188B2 (ja) 2004-11-12 2010-02-03 株式会社東芝 半導体記憶装置のデータ書き込み方法
US7441067B2 (en) 2004-11-15 2008-10-21 Sandisk Corporation Cyclic flash memory wear leveling
KR100694418B1 (ko) 2004-11-15 2007-03-12 주식회사 하이닉스반도체 메모리 장치의 병렬 압축 테스트 회로
US7173859B2 (en) 2004-11-16 2007-02-06 Sandisk Corporation Faster programming of higher level states in multi-level cell flash memory
US7392428B2 (en) 2004-11-19 2008-06-24 International Business Machines Corporation Method and system for recovering from abnormal interruption of a parity update operation in a disk array system
JP4734906B2 (ja) 2004-12-07 2011-07-27 ソニー株式会社 情報処理装置、情報記録媒体、および情報処理方法、並びにコンピュータ・プログラム
JP4786171B2 (ja) 2004-12-10 2011-10-05 株式会社東芝 半導体記憶装置
US7120051B2 (en) 2004-12-14 2006-10-10 Sandisk Corporation Pipelined programming of non-volatile memories using early data
US7420847B2 (en) 2004-12-14 2008-09-02 Sandisk Corporation Multi-state memory having data recovery after program fail
US7558839B1 (en) 2004-12-14 2009-07-07 Netapp, Inc. Read-after-write verification for improved write-once-read-many data storage
KR100664933B1 (ko) 2004-12-15 2007-01-04 삼성전자주식회사 비휘발성 저장장치에 멀티미디어 데이터를 블록 단위로저장하는 방법 및 장치
US7849381B2 (en) 2004-12-21 2010-12-07 Sandisk Corporation Method for copying data in reprogrammable non-volatile memory
US7409473B2 (en) 2004-12-21 2008-08-05 Sandisk Corporation Off-chip data relocation
US7437653B2 (en) 2004-12-22 2008-10-14 Sandisk Corporation Erased sector detection mechanisms
US7230851B2 (en) * 2004-12-23 2007-06-12 Sandisk Corporation Reducing floating gate to floating gate coupling effect
US7308525B2 (en) 2005-01-10 2007-12-11 Sandisk Il Ltd. Method of managing a multi-bit cell flash memory with improved reliablility and performance
US7130210B2 (en) 2005-01-13 2006-10-31 Spansion Llc Multi-level ONO flash program algorithm for threshold width control
KR100604930B1 (ko) * 2005-01-19 2006-07-28 삼성전자주식회사 디스크 드라이브의 어드레스 변환 방법 및 그 방법을사용하는 디스크 드라이브
US7725779B2 (en) 2005-01-25 2010-05-25 Ternarylogic Llc Multi-valued scrambling and descrambling of digital data on optical disks and other storage media
US7421598B2 (en) * 2005-02-09 2008-09-02 International Business Machines Corporation Dynamic power management via DIMM read operation limiter
US7221592B2 (en) 2005-02-25 2007-05-22 Micron Technology, Inc. Multiple level programming in a non-volatile memory device
US7379368B2 (en) 2005-02-25 2008-05-27 Frankfurt Gmbh, Llc Method and system for reducing volatile DRAM power budget
US7224604B2 (en) 2005-03-14 2007-05-29 Sandisk Il Ltd. Method of achieving wear leveling in flash memory using relative grades
US7574555B2 (en) 2005-03-18 2009-08-11 Emc Corporation Memory system having daisy chained memory controllers
US7627712B2 (en) 2005-03-22 2009-12-01 Sigmatel, Inc. Method and system for managing multi-plane memory devices
US7430138B2 (en) 2005-03-31 2008-09-30 Sandisk Corporation Erasing non-volatile memory utilizing changing word line conditions to compensate for slower erasing memory cells
JP2006286118A (ja) * 2005-04-01 2006-10-19 Matsushita Electric Ind Co Ltd 閾値電圧制御機能を有する不揮発性記憶装置
US7187585B2 (en) * 2005-04-05 2007-03-06 Sandisk Corporation Read operation for non-volatile storage that includes compensation for coupling
US7196946B2 (en) 2005-04-05 2007-03-27 Sandisk Corporation Compensating for coupling in non-volatile storage
US7196928B2 (en) * 2005-04-05 2007-03-27 Sandisk Corporation Compensating for coupling during read operations of non-volatile memory
KR100680479B1 (ko) 2005-04-11 2007-02-08 주식회사 하이닉스반도체 비휘발성 메모리 장치의 프로그램 검증 방법
KR100754894B1 (ko) 2005-04-20 2007-09-04 삼성전자주식회사 더미 메모리 셀을 가지는 낸드 플래시 메모리 장치
US7596707B1 (en) * 2005-05-06 2009-09-29 Sun Microsystems, Inc. System and method for efficient power throttling in multiprocessor chip
US7370261B2 (en) 2005-05-09 2008-05-06 International Business Machines Corporation Convolution-encoded raid with trellis-decode-rebuild
US7269066B2 (en) 2005-05-11 2007-09-11 Micron Technology, Inc. Programming memory devices
US7793037B2 (en) 2005-05-31 2010-09-07 Intel Corporation Partial page scheme for memory technologies
US7353361B2 (en) 2005-06-06 2008-04-01 International Business Machines Corporation Page replacement policy for systems having multiple page sizes
ITRM20050310A1 (it) 2005-06-15 2006-12-16 Micron Technology Inc Convergenza a programmazione selettiva lenta in un dispositivo di memoria flash.
US7239557B2 (en) 2005-06-17 2007-07-03 Micron Technology, Inc. Program method with optimized voltage level for flash memory
US7193898B2 (en) * 2005-06-20 2007-03-20 Sandisk Corporation Compensation currents in non-volatile memory read operations
JP4282636B2 (ja) 2005-06-22 2009-06-24 株式会社東芝 不揮発性半導体記憶装置とそのデータ書き込み方法
KR100719368B1 (ko) 2005-06-27 2007-05-17 삼성전자주식회사 플래시 메모리 장치의 적응적 프로그램 방법 및 장치
KR100694968B1 (ko) 2005-06-30 2007-03-14 주식회사 하이닉스반도체 비휘발성 메모리 장치와 그것의 멀티-페이지 프로그램,독출 및 카피백 프로그램 방법
KR100609621B1 (ko) * 2005-07-19 2006-08-08 삼성전자주식회사 메모리 블락별로 레이턴시 제어가 가능한 동기식 반도체메모리 장치
JP4728726B2 (ja) 2005-07-25 2011-07-20 株式会社東芝 半導体記憶装置
KR100712596B1 (ko) 2005-07-25 2007-04-30 삼성전자주식회사 플래시 메모리 장치의 리페어 및 트리밍 방법 및 장치
US7660183B2 (en) * 2005-08-01 2010-02-09 Rambus Inc. Low power memory device
US7502921B2 (en) 2005-08-02 2009-03-10 Sandisk Corporation Situation sensitive memory performance
JP2007059024A (ja) 2005-08-26 2007-03-08 Micron Technol Inc 温度補償された読み出し・検証動作をフラッシュ・メモリにおいて生成するための方法及び装置
US7292476B2 (en) 2005-08-31 2007-11-06 Micron Technology, Inc. Programming method for NAND EEPROM
US7853749B2 (en) 2005-09-01 2010-12-14 Cypress Semiconductor Corporation Flash drive fast wear leveling
JP2007066459A (ja) 2005-09-01 2007-03-15 Matsushita Electric Ind Co Ltd 不揮発性半導体記憶装置及びその書き換え方法
US7752382B2 (en) 2005-09-09 2010-07-06 Sandisk Il Ltd Flash memory storage system and method
KR100705220B1 (ko) 2005-09-15 2007-04-06 주식회사 하이닉스반도체 프로그램 속도를 증가시키기 위한 플래시 메모리 장치의소거 및 프로그램 방법
JP4410178B2 (ja) * 2005-09-22 2010-02-03 富士通株式会社 Raid装置におけるライトバック方法
US7631245B2 (en) 2005-09-26 2009-12-08 Sandisk Il Ltd. NAND flash memory controller exporting a NAND interface
US7328384B1 (en) 2005-09-29 2008-02-05 Xilinx, Inc. Method and apparatus using device defects as an identifier
US7661054B2 (en) 2005-09-30 2010-02-09 Intel Corporation Methods and arrangements to remap degraded storage blocks
US7644347B2 (en) 2005-09-30 2010-01-05 Intel Corporation Silent data corruption mitigation using error correction code with embedded signaling fault detection
US7529905B2 (en) 2005-10-13 2009-05-05 Sandisk Corporation Method of storing transformed units of data in a memory system having fixed sized storage blocks
US7681109B2 (en) 2005-10-13 2010-03-16 Ramot At Tel Aviv University Ltd. Method of error correction in MBC flash memory
CN101529525B (zh) 2005-10-17 2016-03-30 特拉维夫大学拉莫特有限公司 每单元多位的闪速存储器的概率错误校正
US7526715B2 (en) 2005-10-17 2009-04-28 Ramot At Tel Aviv University Ltd. Probabilistic error correction in multi-bit-per-cell flash memory
US7954037B2 (en) 2005-10-25 2011-05-31 Sandisk Il Ltd Method for recovering from errors in flash memory
KR100660544B1 (ko) 2005-10-25 2006-12-22 삼성전자주식회사 신뢰성을 향상시킬 수 있는 플래시 메모리 장치
US7301817B2 (en) * 2005-10-27 2007-11-27 Sandisk Corporation Method for programming of multi-state non-volatile memory using smart verify
US7379330B2 (en) 2005-11-08 2008-05-27 Sandisk Corporation Retargetable memory cell redundancy methods
US8218546B2 (en) 2005-11-10 2012-07-10 Broadcom Corporation Interleaved processing of dropped packets in a network device
US7289344B2 (en) 2005-11-10 2007-10-30 Sandisk Corporation Reverse coupling effect with timing information for non-volatile memory
US7739472B2 (en) 2005-11-22 2010-06-15 Sandisk Corporation Memory system for legacy hosts
US7497181B2 (en) 2005-11-30 2009-03-03 Autotether, Inc Sailboat safety system for a person falling overboard
US20070143531A1 (en) 2005-12-15 2007-06-21 Atri Sunil R Power loss recovery for bit alterable memory
US20070143378A1 (en) 2005-12-21 2007-06-21 Gorobets Sergey A Non-volatile memories with adaptive file handling in a directly mapped file storage system
US7349260B2 (en) 2005-12-29 2008-03-25 Sandisk Corporation Alternate row-based reading and writing for non-volatile memory
US7310255B2 (en) 2005-12-29 2007-12-18 Sandisk Corporation Non-volatile memory with improved program-verify operations
KR100684907B1 (ko) 2006-01-09 2007-02-22 삼성전자주식회사 파워 업 시에 피크 전류를 줄이는 멀티 칩 패키지
KR100683858B1 (ko) 2006-01-12 2007-02-15 삼성전자주식회사 고온 스트레스로 인한 읽기 마진의 감소를 보상할 수 있는플래시 메모리의 프로그램 방법
KR100683856B1 (ko) 2006-01-12 2007-02-15 삼성전자주식회사 고온 스트레스로 인한 읽기 마진의 감소를 보상할 수 있는플래시 메모리의 프로그램 방법
US7783955B2 (en) 2006-01-18 2010-08-24 Sandisk Il Ltd. Method for implementing error-correction codes in flash memory
US7844879B2 (en) 2006-01-20 2010-11-30 Marvell World Trade Ltd. Method and system for error correction in flash memory
US8055979B2 (en) 2006-01-20 2011-11-08 Marvell World Trade Ltd. Flash memory with coding and signal processing
KR100732631B1 (ko) 2006-02-01 2007-06-27 삼성전자주식회사 전하 손실로 인해 감소된 읽기 마진을 보상할 수 있는플래시 메모리 장치의 프로그램 방법
US7400532B2 (en) 2006-02-16 2008-07-15 Micron Technology, Inc. Programming method to reduce gate coupling interference for non-volatile memory
US7408810B2 (en) 2006-02-22 2008-08-05 Micron Technology, Inc. Minimizing effects of program disturb in a memory device
US20070208904A1 (en) 2006-03-03 2007-09-06 Wu-Han Hsieh Wear leveling method and apparatus for nonvolatile memory
US7436733B2 (en) 2006-03-03 2008-10-14 Sandisk Corporation System for performing read operation on non-volatile storage with compensation for coupling
US7388781B2 (en) 2006-03-06 2008-06-17 Sandisk Il Ltd. Multi-bit-per-cell flash memory device with non-bijective mapping
US7929549B1 (en) 2006-03-06 2011-04-19 Advanced Micro Devices, Inc. Method and apparatus for scrambling data for control of high-speed bidirectional signaling
US7810017B2 (en) 2006-03-20 2010-10-05 Micron Technology, Inc. Variable sector-count ECC
US8091009B2 (en) 2006-03-23 2012-01-03 Broadcom Corporation Symbol by symbol map detection for signals corrupted by colored and/or signal dependent noise
US7561469B2 (en) 2006-03-28 2009-07-14 Micron Technology, Inc. Programming method to reduce word line to word line breakdown for NAND flash
US7680987B1 (en) 2006-03-29 2010-03-16 Emc Corporation Sub-page-granular cache coherency using shared virtual memory mechanism
US7551492B2 (en) 2006-03-29 2009-06-23 Mosaid Technologies, Inc. Non-volatile semiconductor memory with page erase
KR100763353B1 (ko) 2006-04-26 2007-10-04 삼성전자주식회사 인접하는 메모리셀과의 커플링 노이즈를 저감시키는불휘발성 반도체 메모리 장치
US7433231B2 (en) 2006-04-26 2008-10-07 Micron Technology, Inc. Multiple select gates with non-volatile memory cells
US8560829B2 (en) 2006-05-09 2013-10-15 Broadcom Corporation Method and system for command interface protection to achieve a secure interface
DE102006021731B4 (de) 2006-05-10 2015-07-30 Peri Gmbh Verfahren zur Herstellung eines Gitterträgers aus Holz für den Baubereich
KR100766241B1 (ko) 2006-05-10 2007-10-10 주식회사 하이닉스반도체 플래쉬 메모리 소자의 프로그램 방법
WO2007132458A2 (en) 2006-05-12 2007-11-22 Anobit Technologies Ltd. Memory device programming using combined shaping and linear spreading
WO2007132452A2 (en) 2006-05-12 2007-11-22 Anobit Technologies Reducing programming error in memory devices
KR101375955B1 (ko) * 2006-05-12 2014-03-18 애플 인크. 메모리 디바이스 내의 왜곡 추정 및 상쇄
US8239735B2 (en) 2006-05-12 2012-08-07 Apple Inc. Memory Device with adaptive capacity
KR101202537B1 (ko) 2006-05-12 2012-11-19 애플 인크. 메모리 디바이스를 위한 결합된 왜곡 추정 및 에러 보정 코딩
US7568135B2 (en) 2006-05-15 2009-07-28 Apple Inc. Use of alternative value in cell detection
US7613043B2 (en) 2006-05-15 2009-11-03 Apple Inc. Shifting reference values to account for voltage sag
US7551486B2 (en) * 2006-05-15 2009-06-23 Apple Inc. Iterative memory cell charging based on reference cell value
US8185711B2 (en) * 2006-05-16 2012-05-22 Samsung Electronics Co., Ltd. Memory module, a memory system including a memory controller and a memory module and methods thereof
US7882320B2 (en) 2006-05-23 2011-02-01 Dataram, Inc. Multi-processor flash memory storage device and management system
US7457163B2 (en) 2006-06-01 2008-11-25 Sandisk Corporation System for verifying non-volatile storage using different voltages
US7440331B2 (en) 2006-06-01 2008-10-21 Sandisk Corporation Verify operation for non-volatile storage using different voltages
US7450421B2 (en) 2006-06-02 2008-11-11 Sandisk Corporation Data pattern sensitivity compensation using different voltage
US7310272B1 (en) 2006-06-02 2007-12-18 Sandisk Corporation System for performing data pattern sensitivity compensation using different voltage
US7952922B2 (en) 2006-06-06 2011-05-31 Micron Technology, Inc. Method for programming a non-volatile memory device to reduce floating-gate-to-floating-gate coupling effect
US20070291571A1 (en) 2006-06-08 2007-12-20 Intel Corporation Increasing the battery life of a mobile computing system in a reduced power state through memory compression
US7342831B2 (en) 2006-06-16 2008-03-11 Sandisk Corporation System for operating non-volatile memory using temperature compensation of voltages of unselected word lines and select gates
US7486561B2 (en) 2006-06-22 2009-02-03 Sandisk Corporation Method for non-real time reprogramming of non-volatile memory to achieve tighter distribution of threshold voltages
US7742351B2 (en) 2006-06-30 2010-06-22 Semiconductor Energy Laboratory Co., Ltd. Semiconductor device and electronic device
US7721059B2 (en) 2006-07-06 2010-05-18 Nokia Corporation Performance optimization in solid-state media
US7885119B2 (en) 2006-07-20 2011-02-08 Sandisk Corporation Compensating for coupling during programming
US7894269B2 (en) 2006-07-20 2011-02-22 Sandisk Corporation Nonvolatile memory and method for compensating during programming for perturbing charges of neighboring cells
KR100744013B1 (ko) 2006-07-31 2007-07-30 삼성전자주식회사 플래시 메모리 장치 및 그것의 소거 방법
US7567461B2 (en) 2006-08-18 2009-07-28 Micron Technology, Inc. Method and system for minimizing number of programming pulses used to program rows of non-volatile memory cells
WO2008026203A2 (en) 2006-08-27 2008-03-06 Anobit Technologies Estimation of non-linear distortion in memory devices
US20080052446A1 (en) 2006-08-28 2008-02-28 Sandisk Il Ltd. Logical super block mapping for NAND flash memory
US7280398B1 (en) 2006-08-31 2007-10-09 Micron Technology, Inc. System and memory for sequential multi-plane page memory operations
KR100771883B1 (ko) 2006-09-06 2007-11-01 삼성전자주식회사 멀티-레벨 불휘발성 메모리 장치 및 프로그램 방법
US7593259B2 (en) 2006-09-13 2009-09-22 Mosaid Technologies Incorporated Flash multi-level threshold distribution scheme
JP4331189B2 (ja) 2006-09-20 2009-09-16 株式会社東芝 不揮発性半導体メモリ
US7904783B2 (en) 2006-09-28 2011-03-08 Sandisk Corporation Soft-input soft-output decoder for nonvolatile memory
US7761624B2 (en) 2006-09-28 2010-07-20 Virident Systems, Inc. Systems and apparatus for main memory with non-volatile type memory modules, and related technologies
US7573744B2 (en) 2006-09-29 2009-08-11 Kabushiki Kaisha Toshiba Semiconductor memory device having different capacity areas
KR100764749B1 (ko) 2006-10-03 2007-10-08 삼성전자주식회사 멀티-칩 패키지 플래시 메모리 장치 및 그것의 카피 백방법
US7365671B1 (en) 2006-10-10 2008-04-29 Seagate Technology Llc Communication channel with undersampled interpolative timing recovery
US7594093B1 (en) 2006-10-12 2009-09-22 Foundry Networks, Inc. Virtual memory mapping for efficient memory usage
WO2008053473A2 (en) 2006-10-30 2008-05-08 Anobit Technologies Ltd. Memory cell readout using successive approximation
KR100771521B1 (ko) 2006-10-30 2007-10-30 삼성전자주식회사 멀티 레벨 셀을 포함하는 플래시 메모리 장치 및 그것의데이터 쓰기 방법
US7975192B2 (en) 2006-10-30 2011-07-05 Anobit Technologies Ltd. Reading memory cells using multiple thresholds
US8145941B2 (en) 2006-10-31 2012-03-27 Hewlett-Packard Development Company, L.P. Detection and correction of block-level data corruption in fault-tolerant data-storage systems
US7468911B2 (en) 2006-11-02 2008-12-23 Sandisk Corporation Non-volatile memory using multiple boosting modes for reduced program disturb
US7558109B2 (en) 2006-11-03 2009-07-07 Sandisk Corporation Nonvolatile memory with variable read threshold
KR100789406B1 (ko) 2006-11-03 2007-12-28 삼성전자주식회사 플래시 메모리 시스템 및 그것의 가비지 컬렉션 방법
US7508710B2 (en) 2006-11-13 2009-03-24 Sandisk Corporation Operating non-volatile memory with boost structures
US7924648B2 (en) 2006-11-28 2011-04-12 Anobit Technologies Ltd. Memory power and performance management
WO2008068747A2 (en) 2006-12-03 2008-06-12 Anobit Technologies Ltd. Automatic defect management in memory devices
US7706182B2 (en) 2006-12-03 2010-04-27 Anobit Technologies Ltd. Adaptive programming of analog memory cells using statistical characteristics
US7900102B2 (en) 2006-12-17 2011-03-01 Anobit Technologies Ltd. High-speed programming of memory devices
US7593263B2 (en) 2006-12-17 2009-09-22 Anobit Technologies Ltd. Memory device with reduced reading latency
US7539062B2 (en) 2006-12-20 2009-05-26 Micron Technology, Inc. Interleaved memory program and verify method, device and system
CN100576357C (zh) 2006-12-21 2009-12-30 中芯国际集成电路制造(上海)有限公司 减小存储单元写入扰乱的方法
US8370561B2 (en) 2006-12-24 2013-02-05 Sandisk Il Ltd. Randomizing for suppressing errors in a flash memory
US8127200B2 (en) 2006-12-24 2012-02-28 Sandisk Il Ltd. Flash memory device and system with randomizing for suppressing errors
US7570520B2 (en) 2006-12-27 2009-08-04 Sandisk Corporation Non-volatile storage system with initial programming voltage based on trial
DE112006004187B4 (de) 2006-12-27 2015-09-10 Intel Corporation Verfahren, nicht-flüchtige Speichervorrichtung und Computersystem zum initiativen Abnutzungsausgleich für einen nicht-flüchtigen Speicher
WO2008083131A2 (en) 2006-12-27 2008-07-10 Sandisk Corporation Method for programming with initial programming voltage based on trial
US7440324B2 (en) 2006-12-29 2008-10-21 Sandisk Corporation Apparatus with alternating read mode
US7616498B2 (en) 2006-12-29 2009-11-10 Sandisk Corporation Non-volatile storage system with resistance sensing and compensation
US7590002B2 (en) 2006-12-29 2009-09-15 Sandisk Corporation Resistance sensing and compensation for non-volatile storage
US7619918B2 (en) 2006-12-29 2009-11-17 Intel Corporation Apparatus, method, and system for flash memory
US7564722B2 (en) 2007-01-22 2009-07-21 Micron Technology, Inc. Memory system and method having volatile and non-volatile memory devices at same hierarchical level
US7751240B2 (en) 2007-01-24 2010-07-06 Anobit Technologies Ltd. Memory device with negative thresholds
US8151166B2 (en) 2007-01-24 2012-04-03 Anobit Technologies Ltd. Reduction of back pattern dependency effects in memory devices
JP4498370B2 (ja) 2007-02-14 2010-07-07 株式会社東芝 データ書き込み方法
WO2008111058A2 (en) 2007-03-12 2008-09-18 Anobit Technologies Ltd. Adaptive estimation of memory cell read thresholds
JP2008251138A (ja) 2007-03-30 2008-10-16 Toshiba Corp 不揮発性半導体メモリ、不揮発性半導体メモリの制御方法、不揮発性半導体メモリシステム、及びメモリカード
WO2008124760A2 (en) 2007-04-10 2008-10-16 Sandisk Corporation Non-volatile memory and method for predictive programming
US8904552B2 (en) 2007-04-17 2014-12-02 Samsung Electronics Co., Ltd. System and method for protecting data information stored in storage
US8001320B2 (en) 2007-04-22 2011-08-16 Anobit Technologies Ltd. Command interface for memory devices
US8332574B2 (en) 2007-04-30 2012-12-11 Sandisk Il Ltd. Method for efficient storage of metadata in flash memory
US8234545B2 (en) 2007-05-12 2012-07-31 Apple Inc. Data storage with incremental redundancy
US8429493B2 (en) 2007-05-12 2013-04-23 Apple Inc. Memory device with internal signap processing unit
US7899987B2 (en) 2007-05-15 2011-03-01 Sandisk Il Ltd. File storage in a computer system with diverse storage media
US7656734B2 (en) 2007-06-29 2010-02-02 Sandisk 3D Llc Methods and apparatus for extending the effective thermal operating range of a memory
US8065583B2 (en) 2007-07-06 2011-11-22 Micron Technology, Inc. Data storage with an outer block code and a stream-based inner code
US8051358B2 (en) 2007-07-06 2011-11-01 Micron Technology, Inc. Error recovery storage along a nand-flash string
US7925936B1 (en) 2007-07-13 2011-04-12 Anobit Technologies Ltd. Memory device with non-uniform programming levels
US7898863B2 (en) 2007-08-01 2011-03-01 Micron Technology, Inc. Method, apparatus, and system for improved read operation in memory
US8259497B2 (en) 2007-08-06 2012-09-04 Apple Inc. Programming schemes for multi-level analog memory cells
US20090043831A1 (en) 2007-08-11 2009-02-12 Mcm Portfolio Llc Smart Solid State Drive And Method For Handling Critical Files
KR101498673B1 (ko) 2007-08-14 2015-03-09 삼성전자주식회사 반도체 드라이브, 그것의 데이터 저장 방법, 그리고 그것을포함한 컴퓨팅 시스템
KR101393622B1 (ko) 2007-08-30 2014-05-13 삼성전자주식회사 멀티 비트 플래시 메모리 장치를 포함하는 시스템 및그것의 데이터 처리 방법
US7869273B2 (en) 2007-09-04 2011-01-11 Sandisk Corporation Reducing the impact of interference during programming
WO2009037691A2 (en) 2007-09-19 2009-03-26 Anobit Technologies Programming orders for reducing distortion in arrays of multi-level analog memory cells
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
US8650352B2 (en) 2007-09-20 2014-02-11 Densbits Technologies Ltd. Systems and methods for determining logical values of coupled flash memory cells
TWI372396B (en) 2007-09-28 2012-09-11 Phison Electronics Corp Method of protecting data for power failure and controller using the same
US7894263B2 (en) 2007-09-28 2011-02-22 Sandisk Corporation High voltage generation and control in source-side injection programming of non-volatile memory
US7773413B2 (en) 2007-10-08 2010-08-10 Anobit Technologies Ltd. Reliable data storage in analog memory cells in the presence of temperature variations
US7639532B2 (en) 2007-10-10 2009-12-29 Micron Technology, Inc. Non-equal threshold voltage ranges in MLC NAND
US8527819B2 (en) 2007-10-19 2013-09-03 Apple Inc. Data storage in analog memory cell arrays having erase failures
US8000141B1 (en) 2007-10-19 2011-08-16 Anobit Technologies Ltd. Compensation for voltage drifts in analog memory cells
US8068360B2 (en) 2007-10-19 2011-11-29 Anobit Technologies Ltd. Reading analog memory cells using built-in multi-threshold commands
WO2009053962A2 (en) 2007-10-22 2009-04-30 Densbits Technologies Ltd. Systems and methods for averaging error rates in non-volatile devices and storage systems
WO2009053963A2 (en) 2007-10-22 2009-04-30 Densbits Technologies Ltd. Methods for adaptively programming flash memory devices and flash memory systems incorporating same
WO2009053961A2 (en) 2007-10-25 2009-04-30 Densbits Technologies Ltd. Systems and methods for multiple coding rates in flash devices
US7895242B2 (en) 2007-10-31 2011-02-22 Microsoft Corporation Compressed storage management
KR101509836B1 (ko) 2007-11-13 2015-04-06 애플 인크. 멀티 유닛 메모리 디바이스에서의 메모리 유닛의 최적화된 선택
US7633798B2 (en) 2007-11-21 2009-12-15 Micron Technology, Inc. M+N bit programming and M+L bit read for M bit memory cells
US8046542B2 (en) 2007-11-21 2011-10-25 Micron Technology, Inc. Fault-tolerant non-volatile integrated circuit memory
US7945825B2 (en) 2007-11-25 2011-05-17 Spansion Isreal, Ltd Recovery while programming non-volatile memory (NVM)
US8225181B2 (en) 2007-11-30 2012-07-17 Apple Inc. Efficient re-read operations from memory devices
WO2009072103A2 (en) 2007-12-05 2009-06-11 Densbits Technologies Ltd. Flash memory apparatus and methods using a plurality of decoding stages including optional use of concatenated bch codes and/or designation of 'first below' cells
WO2009072101A2 (en) 2007-12-05 2009-06-11 Densbits Technologies Ltd. Apparatus and methods for generating row-specific reading thresholds in flash memory
WO2009072105A2 (en) 2007-12-05 2009-06-11 Densbits Technologies Ltd. A low power chien-search based bch/rs decoding system for flash memory, mobile communications devices and other applications
US20090150894A1 (en) 2007-12-10 2009-06-11 Ming Huang Nonvolatile memory (NVM) based solid-state disk (SSD) system for scaling and quality of service (QoS) by parallelizing command execution
US8209588B2 (en) 2007-12-12 2012-06-26 Anobit Technologies Ltd. Efficient interference cancellation in analog memory cell arrays
WO2009074978A2 (en) 2007-12-12 2009-06-18 Densbits Technologies Ltd. Systems and methods for error correction and decoding on multi-level physical media
US8276051B2 (en) 2007-12-12 2012-09-25 Densbits Technologies Ltd. Chien-search system employing a clock-gating scheme to save power for error correction decoder and other applications
US8185685B2 (en) 2007-12-14 2012-05-22 Hitachi Global Storage Technologies Netherlands B.V. NAND flash module replacement for DRAM module
US8456905B2 (en) 2007-12-16 2013-06-04 Apple Inc. Efficient data storage in multi-plane memory devices
US8327246B2 (en) 2007-12-18 2012-12-04 Densbits Technologies Ltd. Apparatus for coding at a plurality of rates in multi-level flash memory systems, and methods useful in conjunction therewith
US8245101B2 (en) 2007-12-27 2012-08-14 Sandisk Enterprise Ip Llc Patrol function used in flash storage controller to detect data errors
US8085586B2 (en) 2007-12-27 2011-12-27 Anobit Technologies Ltd. Wear level estimation in analog memory cells
US8301912B2 (en) 2007-12-31 2012-10-30 Sandisk Technologies Inc. System, method and memory device providing data scrambling compatible with on-chip copy operation
US8156398B2 (en) 2008-02-05 2012-04-10 Anobit Technologies Ltd. Parameter estimation based on error correction code parity check equations
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
US8059457B2 (en) 2008-03-18 2011-11-15 Anobit Technologies Ltd. Memory device with multiple-accuracy read commands
US7733712B1 (en) 2008-05-20 2010-06-08 Siliconsystems, Inc. Storage subsystem with embedded circuit for protecting against anomalies in power signal from host
US7877522B2 (en) 2008-05-27 2011-01-25 Sandisk Il Ltd. Method of monitoring host activity
US8621144B2 (en) 2008-06-26 2013-12-31 Intel Corporation Accelerated resume from hibernation in a cached disk system
US7808831B2 (en) 2008-06-30 2010-10-05 Sandisk Corporation Read disturb mitigation in non-volatile memory
US8797795B2 (en) 2008-07-01 2014-08-05 Lsi Corporation Methods and apparatus for intercell interference mitigation using modulation coding
US8037380B2 (en) 2008-07-08 2011-10-11 International Business Machines Corporation Verifying data integrity of a non-volatile memory system during data caching process
US20100017650A1 (en) 2008-07-19 2010-01-21 Nanostar Corporation, U.S.A Non-volatile memory data storage system with reliability management
US7930515B2 (en) 2008-07-29 2011-04-19 International Business Machines Corporation Virtual memory management
US8498151B1 (en) 2008-08-05 2013-07-30 Apple Inc. Data storage in analog memory cells using modified pass voltages
US7924613B1 (en) 2008-08-05 2011-04-12 Anobit Technologies Ltd. Data storage in analog memory cells with protection against programming interruption
US7876611B2 (en) 2008-08-08 2011-01-25 Sandisk Corporation Compensating for coupling during read operations in non-volatile storage
US20100057976A1 (en) 2008-08-26 2010-03-04 Menahem Lasser Multiple performance mode memory system
US8130552B2 (en) 2008-09-11 2012-03-06 Sandisk Technologies Inc. Multi-pass programming for memory with reduced data storage requirement
US8000135B1 (en) 2008-09-14 2011-08-16 Anobit Technologies Ltd. Estimation of memory cell read thresholds by sampling inside programming level distribution intervals
US20100083247A1 (en) 2008-09-26 2010-04-01 Netapp, Inc. System And Method Of Providing Multiple Virtual Machines With Shared Access To Non-Volatile Solid-State Memory Using RDMA
TWI467369B (zh) 2008-10-01 2015-01-01 A Data Technology Co Ltd 混合密度記憶體系統及其控制方法
JP2010108568A (ja) 2008-10-31 2010-05-13 Toshiba Corp 磁気ディスク装置
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
US9141475B2 (en) 2008-11-23 2015-09-22 Sandisk Technologies Methods for tag-grouping of blocks in storage devices
KR101066746B1 (ko) 2008-12-08 2011-09-22 주식회사 하이닉스반도체 페이지 버퍼 회로 및 이를 구비한 불휘발성 메모리 소자와 그 동작 방법
TWI387023B (zh) 2008-12-25 2013-02-21 Silicon Motion Inc 防止迴焊過程中資料遺失之方法及使用該方法之記憶體裝置
US8438455B2 (en) 2008-12-31 2013-05-07 Intel Corporation Error correction in a solid state disk
US8248831B2 (en) 2008-12-31 2012-08-21 Apple Inc. Rejuvenation of analog memory cells
US8244960B2 (en) 2009-01-05 2012-08-14 Sandisk Technologies Inc. Non-volatile memory and method with write cache partition management methods
US8040744B2 (en) 2009-01-05 2011-10-18 Sandisk Technologies Inc. Spare block management of non-volatile memories
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
US20100287217A1 (en) 2009-04-08 2010-11-11 Google Inc. Host control of background garbage collection in a data storage device
TWI400707B (zh) 2009-07-09 2013-07-01 Phison Electronics Corp 快閃記憶體邏輯區塊管理方法及其控制電路與儲存系統
KR20120059506A (ko) 2009-08-25 2012-06-08 샌디스크 아이엘 엘티디 플래시 저장 디바이스로의 데이터 복원
US8014094B1 (en) 2009-08-31 2011-09-06 Western Digital Technologies, Inc. Disk drive expediting defect scan when quality metric exceeds a more stringent threshold
KR20120062738A (ko) 2009-08-31 2012-06-14 샌디스크 아이엘 엘티디 플래쉬 저장 디바이스로의 데이터 프리로드
US8402217B2 (en) 2009-09-15 2013-03-19 Marvell International Ltd. Implementing RAID in solid state memory
US8179717B2 (en) 2009-09-29 2012-05-15 Sandisk Technologies Inc. Maintaining integrity of preloaded content in non-volatile memory during surface mounting
KR20110048304A (ko) 2009-11-02 2011-05-11 삼성전자주식회사 솔더 리플로우에서 코드 데이터의 손실을 방지할 수 있는 방법과 그 장치들
US8301828B2 (en) 2010-06-02 2012-10-30 Conexant Systems, Inc. Systems and methods for reliable multi-level cell flash storage

Also Published As

Publication number Publication date
US20120026789A1 (en) 2012-02-02
US20120026788A1 (en) 2012-02-02
CN103208309A (zh) 2013-07-17
CN103280239A (zh) 2013-09-04
WO2007132453A2 (en) 2007-11-22
US9292381B2 (en) 2016-03-22
KR101375955B1 (ko) 2014-03-18
CN103258572A (zh) 2013-08-21
US8050086B2 (en) 2011-11-01
CN103280239B (zh) 2016-04-06
US20080198650A1 (en) 2008-08-21
WO2007132453A3 (en) 2009-04-16
US20140157084A1 (en) 2014-06-05
CN103258572B (zh) 2016-12-07
CN103208309B (zh) 2016-03-09
US8599611B2 (en) 2013-12-03
US8570804B2 (en) 2013-10-29

Similar Documents

Publication Publication Date Title
KR101375955B1 (ko) 메모리 디바이스 내의 왜곡 추정 및 상쇄
US8156403B2 (en) Combined distortion estimation and error correction coding for memory devices
US10056135B2 (en) Programming schemes for multi-level analog memory cells
US8060806B2 (en) Estimation of non-linear distortion in memory devices
CN101496110B (zh) 存储设备中的失真估计和消除
US8369141B2 (en) Adaptive estimation of memory cell read thresholds
US9898361B2 (en) Multi-tier detection and decoding in flash memories
US7697326B2 (en) Reducing programming error in memory devices
US8151166B2 (en) Reduction of back pattern dependency effects in memory devices
KR101274950B1 (ko) 조절가능한 용량을 가진 메모리 디바이스
JP4999921B2 (ja) メモリ素子用の歪み推定と誤り訂正符号化の組み合せ
KR20130045243A (ko) 이웃의 상태 정보에 근거하는 온도 보상을 갖는 비휘발성 저장

Legal Events

Date Code Title Description
A201 Request for examination
N231 Notification of change of applicant
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20170220

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20180219

Year of fee payment: 5

FPAY Annual fee payment

Payment date: 20200218

Year of fee payment: 7