KR20150073109A - 데이터 저장 디바이스 및 그 데이터 유지 방법 - Google Patents

데이터 저장 디바이스 및 그 데이터 유지 방법 Download PDF

Info

Publication number
KR20150073109A
KR20150073109A KR1020140183536A KR20140183536A KR20150073109A KR 20150073109 A KR20150073109 A KR 20150073109A KR 1020140183536 A KR1020140183536 A KR 1020140183536A KR 20140183536 A KR20140183536 A KR 20140183536A KR 20150073109 A KR20150073109 A KR 20150073109A
Authority
KR
South Korea
Prior art keywords
block
temperature
controller
blocks
recording
Prior art date
Application number
KR1020140183536A
Other languages
English (en)
Inventor
지에-신 치엔
헝-타 슈
Original Assignee
실리콘 모션 인코포레이티드
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 실리콘 모션 인코포레이티드 filed Critical 실리콘 모션 인코포레이티드
Publication of KR20150073109A publication Critical patent/KR20150073109A/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/0614Improving the reliability of storage systems
    • G06F3/0619Improving the reliability of storage systems in relation to data integrity, e.g. data losses, bit errors
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0638Organizing or formatting or addressing of data
    • G06F3/064Management of blocks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0653Monitoring storage devices or systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/0671In-line storage system
    • G06F3/0673Single storage device
    • G06F3/0679Non-volatile semiconductor memory device, e.g. flash memory, one time programmable memory [OTP]
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C16/00Erasable programmable read-only memories
    • G11C16/02Erasable programmable read-only memories electrically programmable
    • G11C16/06Auxiliary circuits, e.g. for writing into memory
    • G11C16/10Programming or data input circuits
    • G11C16/107Programming all cells in an array, sector or block to the same state prior to flash erasing
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C7/00Arrangements for writing information into, or reading information out from, a digital store
    • G11C7/04Arrangements for writing information into, or reading information out from, a digital store with means for avoiding disturbances due to temperature effects

Abstract

예시적인 실시예는 플래시 메모리, 온도 센서 및 제어기를 포함하는 데이터 저장 디바이스를 제공한다. 온도 센서는 주위 온도를 검출한다. 제어기는 온도 센서를 판독하여 미리 결정된 시간에 현재 온도 파라미터를 획득하고, 블록들의 복수의 기록 온도를 현재 온도 파라미터와 하나씩 비교하고, 블록들 중 적어도 하나의 제1 블록에 저장된 데이터를 블록들 중 적어도 하나의 제3 블록에 기록하며, 여기서 제1 블록은 기록 온도 중 적어도 하나의 제1 기록 온도에 대응하고, 제1 기록 온도와 현재 온도 파라미터 사이의 차이는 미리 결정된 값을 초과한다.

Description

데이터 저장 디바이스 및 그 데이터 유지 방법{DATA STORAGE DEVICE AND DATA MAINTENANCE METHOD THEREOF}
관련 출원에 대한 상호 참조
본 출원은, 전체 내용이 본 명세서에 병합된, 대만 특허 출원 제102147386호(출원일: 2013년 12월 20일)의 우선권을 주장한다.
기술 분야
본 발명은 메모리 디바이스에 적용되는 데이터 유지 방법에 관한 것으로, 보다 상세하게는 플래시 메모리를 자동적으로 모니터링할 수 있는 데이터 유지 방법에 관한 것이다.
플래시 메모리는 전기적 방법을 사용하여 데이터를 소거하고 프로그래밍하는 비-휘발성 데이터 저장 디바이스로 고려된다. 일례로서 NAND 플래시를 고려하면, 이 NAND 플래시는 종종 메모리 카드, USB 플래시 디바이스, 솔리드 스테이트 디바이스, eMMC 및 다른 용도에 사용된다.
NAND 플래시와 같은 플래시 메모리는 다수의 블록 구조를 사용하여 데이터를 저장하는데, 여기서 플래시 메모리는 플로팅 게이트 트랜지스터에 의해 구성된다. 플로팅 게이트 트랜지스터의 플로팅 게이트는 데이터를 저장하기 위해 전자 전하를 캐치(catch)할 수 있다. 그러나, 플로팅 게이트는 플래시 메모리의 그 동작 및 각종 환경적 파라미터로 인해 전자 전하를 손실할 수 있어서, 판독 및 기록 에러를 초래할 수 있다.
첨부 도면을 참조하여 이하 실시예에 상세한 설명이 제공된다.
예시적인 실시예는 데이터 저장 디바이스를 제공한다. 데이터 저장 디바이스는 플래시 메모리, 온도 센서 및 제어기를 포함한다. 플래시 메모리는 복수의 블록을 구비한다. 온도 센서는 주위 온도를 검출하고 온도 파라미터를 생성하도록 배열된다. 제어기는 온도 센서를 판독하여 미리 결정된 시간에 현재 온도 파라미터를 획득하고, 블록들의 복수의 기록 온도를 현재 온도 파라미터와 하나씩 비교하며, 및 블록들 중 적어도 하나의 제1 블록에 저장된 데이터를 블록들 중 적어도 하나의 제3 블록에 기록하도록 구성되고, 여기서 제1 블록은 기록 온도들 중 적어도 하나의 제1 기록 온도에 대응하고, 제1 기록 온도와 현재 온도 파라미터 사이의 차이는 미리 결정된 값을 초과한다.
다른 예시적인 실시예는 복수의 블록을 구비하는 플래시 메모리의 데이터 저장 디바이스에 적용되는 데이터 유지 방법을 제공한다. 데이터 유지 방법은 블록들에 대응하는 복수의 기록 온도와 현재 온도 파라미터 사이의 복수의 차이들이 미리 결정된 시간에 미리 결정된 값을 초과하는지의 여부를 결정하는 단계로서, 여기서 상기 기록 온도는 데이터가 상기 대응하는 블록에 기록되는 동안의 온도인 것인, 상기 결정하는 단계; 및 상기 기록 온도들 중 제1 기록 온도에 대응하는 블록들 중 적어도 하나의 제1 블록의 데이터를 제어기에 의해 블록들 중 적어도 하나의 제3 블록에 기록하는 단계를 포함하고, 여기서 상기 제1 기록 온도와 상기 현재 온도 파라미터 사이의 차이는 미리 결정된 값을 초과한다.
본 발명은 이후 상세한 설명 및 첨부 도면을 참조하여 이후 상세한 설명을 판독하여 보다 완전히 이해될 수 있을 것이다:
도 1은 예시적인 실시예의 전자 시스템의 일 실시예를 도시한 개략도;
도 2는 예시적인 실시예에 따른 데이터 유지 방법의 흐름도;
도 3은 다른 예시적인 실시예에 따른 데이터 유지 방법의 흐름도;
도 4는 또 다른 예시적인 실시예에 따른 데이터 유지 방법의 흐름도.
이하 설명은 본 발명을 수행하는 최상의 형태이다. 이 상세한 설명은 본 발명의 일반 원리를 예시하기 위하여 이루어진 것일 뿐 발명을 제한하려고 의도된 것이 전혀 아니다. 본 발명의 범위는 첨부된 청구범위에 의하여 결정된다.
도 1은 예시적인 실시예의 전자 시스템의 일 실시예를 도시한 개략도이다. 전자 시스템(100)은 호스트(120) 및 데이터 저장 디바이스(140)를 포함한다. 데이터 저장 디바이스(140)는 제어기(160), 플래시 메모리(180) 및 온도 센서(190)를 포함한다. 나아가, 데이터 저장 디바이스(140)는 호스트(120)로부터 수신된 커맨드에 응답하여 동작할 수 있다. 제어기(160)는 컴퓨팅 유닛(162), 비-휘발성 메모리(164)(예를 들어, 판독 전용 메모리), 랜덤 액세스 메모리(165) 및 타이밍 디바이스(166)를 포함한다. 비-휘발성 메모리(164)에 저장된 프로그램 코드 및 데이터는 펌웨어를 구성하며, 컴퓨팅 유닛(162)에 의해 수행되는 것에 의해, 제어기(160)가 펌웨어에 의해 플래시 메모리(180)를 제어할 수 있다. 예를 들어, 제어기(160)는 호스트 디바이스(120)로부터 수신된 커맨드에 따라 플래시 메모리(180)에 액세스하고 예시적인 실시예의 유지 과정(maintenance procedure)을 자동적으로 수행할 수 있다. 실시예들 중 하나에서, 유지 과정은 배경에서 반복적으로 수행되는 것이 주목된다. 예를 들어, 제어기(160)는 아이들(idle) 상태에 있을 때 유지 과정만을 수행하고, 수신된 커맨드에 대응하는 동작이 종료할 때까지 호스트(120)로부터 커맨드를 수신할 때 유지 과정을 중지한다. 플래시 메모리(180)는 복수의 블록을 구비하고, 각 블록은 복수의 페이지를 구비한다. 타이밍 디바이스(166)는 데이터 저장 디바이스(180)가 전력온(power on)된 시간, 및 과정들 사이의 시간 기간(time period) 등을 레코드하도록 배열된다. 온도 센서(190)는 데이터 저장 디바이스(140)의 주위 온도를 검출하고, 주위 온도의 변동에 응답하여 온도 파라미터를 생성하도록 배열된다. 이 실시예에서, 온도 센서(190)는 데이터 저장 디바이스(140)의 플래시 메모리(180)에 인접하여 구현되고 플래시 메모리(180)의 주위 온도를 검출하도록 배열되지만, 이들로 제한되지 않는다. 다른 실시예에서, 온도 센서(190)는 데이터 저장 디바이스(140)의 외부에 구현되어 데이터 저장 디바이스(140)의 주위 온도를 검출하도록 배열될 수 있다.
더욱이, 플래시 메모리(180)는 적어도 하나의 파라미터 테이블(parameter table) 및 적어도 하나의 스캔 상태 테이블(scan condition table)을 저장하도록 더 배열된다. 일 실시예에서, 파라미터 테이블은 상이한 주위 온도에 대응하는 시간 범위(time span)를 저장하도록 배열되고, 여기서 이 시간 범위는 현재 유지 과정과 그 다음 유지 과정 사이의 시간 간격을 결정하도록 배열되지만, 이들로 제한되지 않는다. 다른 실시예에서, 파라미터 테이블은 상이한 주위 온도에 대응하는 시간 범위, 상이한 에러 비트 값, 소거된 블록의 상이한 개수, 데이터 저장 디바이스(140)가 호스트(120)에 의해 액세스된 마지막 시기의 상이한 시간들, 데이터 저장 디바이스(140)가 전력 온된(powered on) 후 상이한 시간 범위, 및/또는 블록이 소거된 횟수를 더 포함하고, 여기서 저장된 시간 범위는 그 다음 유지 과정을 인에이블하도록 배열된다. 스캔 상태 테이블은 업데이트된 블록의 상이한 에러 비트 값 및/또는 상이한 수들에 대응하는 스캔 상태를 저장하도록 배열된다. 예를 들어, 스캔 상태는 에러 비트 값의 임계값일 수 있으나, 이들로 제한되지 않는다. 다른 실시예에서, 스캔 상태는 상이한 ECC 코드일 수 있다. 다른 실시예에서, 플래시 메모리(180)는 파라미터 함수 및 스캔 상태 함수를 저장하도록 배열된다. 이 실시예에서, 이전의 유지 과정과 그 다음 유지 과정 사이에 시간 범위는 파라미터 함수에 의해 결정된다. 예를 들어, 파라미터 함수는 상이한 주위 온도 값으로부터 현재 유지 과정과 그 다음 유지 과정 사이에 시간 범위를 계산하지만, 이들로 제한되지 않는다. 다른 실시예에서, 파라미터 함수는 상이한 주위 온도, 상이한 에러 비트 값, 업데이트된 블록의 수, 데이터 저장 디바이스(140)가 호스트(120)에 의해 액세스된 마지막 시기의 각종 시간, 데이터 저장 디바이스(140)가 전력 온된 후 상이한 시간 범위들, 및/또는 블록이 소거된 상이한 횟수에 따라 현재 유지 과정과 그 다음 유지 과정 사이에 시간 범위를 계산하도록 더 배열된다. 더욱이, 스캔 상태 함수는 상이한 에러 비트 값 및/또는 업데이트된 블록의 수에 따라 상이한 스캔 상태를 결정하도록 더 배열된다. 더 높은 주위 온도, 더 높은 에러 비트 값, 더 높은 업데이트된 블록의 수, 데이터 저장 디바이스(140)가 전력 온된 더 긴 시간, 및 블록이 소거된 더 높은 횟수는 현재 유지 과정과 그 다음 유지 과정 사이에 더 짧은 시간 범위를 구비하는 것이 주목된다. 업데이트된 블록의 더 높은 에러 비트 값 및 더 높은 수는 에러 비트 값의 더 낮은 임계값에 대응한다.
일 실시예에서, 제어기(160)는 데이터 저장 디바이스(140)가 전력 온된 때로부터 미리 결정된 기간 후에 제1 유지 과정을 수행하도록 배열된다. 이 실시예에서, 미리 결정된 기간은 미리 결정된 시간이지만, 이들로 제한되지 않는다. 예를 들어, 미리 결정된 기간은 4 분 또는 5 분이지만, 이들로 제한되지 않는다. 제1 유지 과정에서, 제어기(160)는 온도 센서(190)를 판독하여 제1 온도 파라미터를 획득하고, 제1 미리 결정된 상태에 따라 블록들에 제1 블록 스캔을 수행하여 각 블록에 대응하는 복수의 제1 에러 비트 값을 획득하는 제1 시간 범위를 결정한다. 일 실시예에서, 제1 미리 결정된 상태는 제1 온도 파라미터를 포함하지만, 이들로 제한되지 않는다. 다른 실시예에서, 제1 미리 결정된 상태는 데이터 저장 디바이스(140)가 호스트(120)에 의해 액세스된 마지막 시기의 시간, 데이터 저장 디바이스(140)가 전력 온된 시간, 및/또는 블록이 소거된 횟수를 더 포함할 수 있다. 제어기(160)는 파라미터 테이블 또는 파라미터 함수에 따라 제1 유지 과정에서 제1 시간 범위를 결정하여, 제어기(160)는 제1 유지 과정이 종료된 때로부터 제1 시간 범위 후에 제2 유지 과정을 수행할 수 있다. 제1 미리 결정된 상태의 파라미터는 현재 검출된 파라미터인 것이 주목된다. 그리하여, 제1 유지 과정의 파라미터들은 제2 유지 과정의 파라미터와는 상이할 수 있고, 제2 유지 과정의 파라미터는 제3 유지 과정의 파라미터와 상이할 수 있다. 일부 상태에서, 상이한 유지 과정은 동일한 파라미터를 구비할 수 있다. 예를 들어, 블록이 제2 유지 과정 및 제3 유지 과정에서 소거된 횟수는 호스트(120)가 제2 유지 과정과 제3 유지 과정 사이에서 플래시 메모리(180)의 블록을 소거하지 않을 때와 동일한 횟수이다. 역으로 블록이 제2 유지 과정에서 소거된 횟수는 호스트(120)가 제2 유지 과정과 제3 유지 과정 사이에서 플래시 메모리(180)의 블록을 소거할 때 블록이 제3 유지 과정에서 소거된 횟수와 상이하다. 제어기(160)는 최저 하나의 블록에 대응하는 제1 에러 비트 값이 에러 비트 값의 미리 결정된 임계값을 초과할 때 적어도 하나의 블록을 업데이트하도록 더 배열되는 것이 주목된다. 이 실시예에서, 에러 비트 값의 미리 결정된 임계값은 미리 결정된 임계값이지만, 이들로 제한되지 않는다.
다른 실시예에서, 미리 결정된 기간에서, 제어기(160)는 온도 센서(190)를 판독하여 미리 결정된 시간 간격에서 현재 온도 파라미터를 획득하고, 현재 온도 파라미터에 따라 제1 유지 과정을 시작하도록 배열된 시간을 조절하도록 더 배열된다. 즉, 제어기(160)는 온도 센서(190)를 판독하여 데이터 저장 디바이스(140)가 전력 온된 때로부터 미리 결정된 시간 간격에서 현재 온도 파라미터를 획득하고, 현재 온도 파라미터에 따라 파라미터 테이블 또는 파라미터 함수에서 이를 조회하여 제1 유지 과정을 시작하도록 배열된 시간을 결정하도록 배열되고, 여기서 미리 결정된 시간 간격의 범위는 미리 결정된 기간보다 더 짧다. 예를 들어, 미리 결정된 기간은 1 초 또는 2 초 등일 수 있으나, 이들로 제한되지 않는다. 제1 유지 과정을 시작하도록 배열된 결정된 시간이 미리 결정된 기간 미만일 때, 제어기(160)는 제1 유지 과정을 시작하도록 배열된 결정 시간에 따라 미리 결정된 기간을 조절하도록 더 배열된다. 예를 들어, 미리 결정된 기간은 5 분일 수 있고, 각 미리 결정된 시간 간격의 범위는 2 초이다. 제어기(160)는 온도 센서(190)를 판독하여 데이터 저장 디바이스(140)가 전력 온된 후 5분 동안 매 2초마다 현재 온도 파라미터를 획득하고, 현재 온도 파라미터에 따라 제1 유지 과정을 인에이블하도록 배열된 시간을 결정하도록 배열된다. 예를 들어, 제어기(160)가 제1 유지 과정이 데이터 저장 디바이스(140)에 전력 온된 때로부터 6분(미리 결정된 기간보다 더 긴 시간) 후 시작되어야 하는 것으로 결정할 때, 제어기(160)는 결정된 시간(6 분)을 무시하고 온도 센서(190)를 판독하는 단계 및 미리 결정된 기간이 종료될 때까지 매 2초마다 시간 범위를 결정하는 단계를 반복한다. 제어기(160)는 제1 유지 과정이 데이터 저장 디바이스(140)에 전력 온된 때로부터 3 분(미리 결정된 기간보다 더 짧은 시간) 후 시작되어야 하는 것으로 결정할 때, 제어기(160)는 미리 결정된 기간을 3 분으로 조절하고 온도 센서(190)를 판독하는 단계 및 미리 결정된 기간이 종료될 때까지 매 2초마다 시간 범위를 결정하는 단계를 반복한다. 즉, 제어기(160)는 데이터 저장 디바이스(140)가 전력 온된 때로부터 3분 후에 제1 유지 과정을 수행하고 이와 같이 계속된다.
제어기(160)는 제1 유지 과정이 종료된 때로부터 제1 시간 범위 후에 제2 유지 과정을 수행하도록 더 배열된다. 제2 유지 과정에서, 제어기(160)는 온도 센서(190)를 판독하여 제2 온도 파라미터를 획득하고, 제2 미리 결정된 상태 및 제1 이력 레코드에 따라 제3 유지 과정을 수행하는 제2 시간 범위를 결정하고, 제1 이력 레코드에 따라 블록들에 제2 블록 스캔을 수행하는 에러 비트 값에 대한 제1 임계값을 결정한다. 일 실시예에서, 제2 미리 결정된 상태는 제2 온도 파라미터를 포함하고, 제1 이력 레코드는 제1 에러 비트 값, 및 블록이 제1 유지 과정 동안 소거된 횟수를 포함하지만, 이들로 제한되지 않는다. 다른 실시예에서, 제2 미리 결정된 상태는 데이터 저장 디바이스(140)가 호스트(120)에 의해 액세스된 마지막 시기의 시간, 데이터 저장 디바이스(140)가 전력 온된 시간, 및/또는 블록이 소거된 횟수를 더 포함할 수 있다. 제어기(160)는 파라미터 테이블 또는 파라미터 함수에 따라 제2 유지 과정에서 제2 시간 범위를 결정하고, 제2 유지 과정이 종료된 때로부터 제2 시간 범위 후에 제3 유지 과정을 수행할 수 있다. 제1 미리 결정된 상태의 파라미터들은 현재 검출된 파라미터들이고, 제3 유지 과정 및 제2 유지 과정의 동작들은 동일한 것으로 이해된다. 유사하게, 제3 유지 과정은 제4 유지 과정을 시작하도록 배열된 시간을 결정하는 제3 시간 범위를 결정하고, 블록에 제3 블록 스캔을 수행하는 에러 비트 값에 대한 제2 임계값을 결정할 수 있다. 제4 유지 과정 및 제2 유지 과정의 동작들은 동일하고 이와 같이 계속된다. 제어기(160)는 블록의 제2 에러 비트 값이 에러 비트 값의 제1 임계값을 초과할 때 블록을 업데이트하도록 더 배열되는 것으로 이해된다.
제어기(160)는 블록 스캔의 결과(예를 들어, 에러 비트 값 및/또는 업데이트된 블록의 수), 또는 블록이 유지 과정을 제공하기 위해 플래시 메모리(180)의 적어도 하나의 특정 블록에서 소거된 횟수(소거 카운트)를 저장할 수 있으나, 이들로 제한되지 않는다는 것이 주목된다. 블록 스캔에서, 제어기(160)는 플래시 메모리(180)의 각 블록을 스캔하여 각 블록에 대응하는 에러 비트 값을 획득하도록 배열된다. 보다 구체적으로, 제어기(160)는 플래시 메모리(180)의 각 블록을 판독하고 각 블록의 에러 정정(ECC)의 에러 비트 값을 획득하도록 배열된다. 다음으로, 제어기(160)는 대응하는 에러 비트 값이 임계값, 예를 들어, 에러 비트 값의 미리 결정된 임계값, 에러 비트 값의 제1 임계값, 및 에러 비트 값의 제2 임계값 등을 초과할 때 블록을 업데이트하도록 더 배열된다. 에러 비트 값의 임계값은 에러 정정(ECC)에 의해 정정될 수 있는 에러 비트 값의 최대 값 미만인 것으로 이해된다. 예를 들어, 데이터는 에러 비트가 43 비트 미만일 때 에러 정정(ECC)에 의해 정정될 수 있고, 에러 비트 값의 임계값은 35 비트 또는 38 비트일 수 있으나, 이들로 제한되지 않는다. 이 기술 분야에 통상의 지식을 가진 자라면 에러 정정(ECC)에 의해 정정될 수 있는 에러 비트 값의 최대 값에 따라 에러 비트 값의 미리 결정된 임계값을 결정할 수 있다.
다른 실시예에서, 제어기(160)는 미리 결정된 시간에 테이블-체크-유지 과정(table-checking-maintenance procedure)을 수행하도록 배열된다. 테이블-체크-유지 과정에서, 제어기(160)는 온도 센서(190)를 판독하여 현재 온도 파라미터를 획득하고, 블록의 복수의 기록 온도를 현재 온도 파라미터와 하나씩 비교하도록 구성된다. 다음으로, 제어기(160)는 블록들 중 적어도 하나의 제1 블록에 저장된 데이터를 블록들 중 적어도 하나의 제3 블록에 기록하도록 더 구성되고, 여기서 제1 블록의 제1 기록 온도와 현재 온도 파라미터 사이의 차이는 미리 결정된 값을 초과한다. 즉, 제어기(160)는 블록의 기록 온도와 현재 온도 파라미터 사이의 차이가 미리 결정된 값을 초과할 때 블록에 판독 리프레쉬 또는 판독 퇴거(retirement) 과정을 수행하여 블록에 저장된 데이터를 다른 블록으로 이동시키도록 더 구성된다.
테이블-체크-유지 과정을 수행하도록 배열된 미리 결정된 시간은, 제어기(160)가 아이들 상태에 있을 동안이거나, 제어기(160)가 아이들 상태에 있는 시간 간격이거나, 또는 제어기(160)가 기록 동작 또는 판독 동작을 종료하는 동안이지만, 이들로 제한되지 않는 것으로 이해된다. 예를 들어, 시간 간격은 1 초, 2 초, 3 초, 1 분 또는 10 분 등일 수 있으나, 이들로 제한되지 않는다. 더욱이, 제어기(160)가 테이블-체크-유지 과정에서 호스트(120)로부터 커맨드를 수신할 때, 제어기(160)는 테이블-체크-유지 과정의 현재 상태의 파라미터를 플래시 메모리(180) 또는 랜덤 액세스 메모리(165)에 저장하고, 호스트(120)로부터 수신된 커맨드가 종료된 후 저장된 파라미터에 따라 테이블-체크-유지 과정을 계속 수행한다. 다른 실시예에서, 테이블-체크-유지 과정을 수행하도록 배열된 미리 결정된 시간은 제1 유지 과정, 제2 유지 과정 또는 제3 유지 과정을 따라간다. 일 실시예에서, 테이블-체크-유지 과정은 제1 유지 과정, 제2 유지 과정 및/또는 제3 유지 과정에 포함될 수 있으나, 이들로 제한되지 않는다.
더욱이, 플래시 메모리(180)의 각 블록은 물리 블록 및 논리 블록을 구비하고, 제어기(160) 및 플래시 메모리(180)는 대응하는 논리 블록에 의해 물리 블록을 찾아(locate)낼 수 있는데, 여기서 플래시 메모리(180)는 논리 블록 및 물리 블록의 매핑 관계를 저장하도록 배열된 논리-대-물리 매핑 테이블(logical-to-physical mapping table)을 더 포함한다.
일 실시예에서, 기록 온도는 논리 블록의 관계에 따라 레코드된다. 예를 들어, 플래시 메모리(180)는 기록 온도와 논리 블록 사이의 관계를 저장하도록 배열된 기록 온도 대응 테이블(write temperature correspondence table)을 더 포함한다. 나아가, 제어기(160)는 기록 온도 대응 테이블로부터 논리 블록의 기록 온도를 획득하고, 논리-대-물리 매핑 테이블에 따라 논리 블록에 대응하는 물리 블록을 찾아서, 물리 블록의 기록 온도를 발견할 수 있도록 구성되지만, 이들로 제한되지 않는다. 다른 실시예에서, 기록 온도 대응 테이블은 물리 블록의 기록 온도를 저장하도록 배열된다.
더욱이, 제어기(160)는, 기록 온도 대응 테이블을 랜덤 액세스 메모리(165)에 로딩하고, 제어기(160)가 아이들 상태에 있거나 또는 기록 온도 대응 테이블가 변하는 동안 랜덤 액세스 메모리(165)에 저장된 기록 온도 대응 테이블에 의하여 플래시 메모리(180)에 저장된 기록 온도 대응 테이블을 업데이트하도록 구성되지만, 이들로 제한되지 않는다.
이 실시예에서, 제어기(160)는 데이터가 타깃 블록의 기록 온도로서 기능하도록 타깃 블록에 기록될 때 주위 온도 중 하나의 온도를 취하고, 타깃 블록의 기록 온도를 기록 온도 대응 테이블에 기록하도록 더 구성된다는 것이 주목된다. 더욱이, 일 실시예에서, 블록의 기록 온도를 저장하도록 배열된 컬럼은 대응하는 블록이 데이터를 구비하지 않을 때 미리 결정된 파라미터에 의해 기입되어, 제어기(160)가 블록이 미리 결정된 파라미터에 따라 기록되었는지의 여부를 결정할 수 있으나, 이들로 제한되지 않는다. 다른 실시예에서, 기록 온도를 저장하도록 배열된 컬럼은 블록이 데이터를 가지지 않을 때 데이터가 블록에 마지막으로 기록된 때의 기록 온도에 의해 기입될 수 있다.
더욱이, 제어기(160)는 블록의 기록 온도와 현재 온도 파라미터 사이의 차이가 미리 결정된 값을 초과할 때 블록의 데이터를 다른 블록으로 이동시킨 후 논리-대-물리 매핑 테이블을 업데이트하여, 미리 결정된 값만큼 현재 온도 파라미터를 초과하거나 이보다 미만인 기록 온도를 가지는 블록의 논리 블록을 다른 블록의 물리 블록에 매핑할 수 있도록 더 구성된다.
도 2는 예시적인 실시예에 따른 데이터 유지 방법의 흐름도이다. 데이터 유지 방법은 도 1의 데이터 저장 디바이스(140)에 적용된다. 공정은 단계(S202)에서 시작한다.
단계(S202)에서, 제어기(160)는 데이터 저장 디바이스(140)가 전력 온된 때로부터 미리 결정된 기간 후 제1 유지 과정을 수행하도록 배열된다. 이 실시예에서, 미리 결정된 기간은 미리 결정된 시간이지만, 이들로 제한되지 않는다. 예를 들어, 미리 결정된 기간은 4 분 또는 5 분일 수 있으나, 이들로 제한되지 않는다. 제1 유지 과정에서, 제어기(160)는 온도 센서(190)를 판독하여 제1 온도 파라미터를 획득하고, 제1 미리 결정된 상태에 따라 블록에 제1 블록 스캔을 수행하는 제1 시간 범위를 결정하여 각 블록에 대응하는 복수의 제1 에러 비트 값을 획득한다. 일 실시예에서, 제1 미리 결정된 상태는 제1 온도 파라미터를 포함하지만, 이들로 제한되지 않는다. 다른 실시예에서, 제1 미리 결정된 상태는 데이터 저장 디바이스(140)가 호스트(120)에 의해 액세스된 마지막 시기의 시간, 데이터 저장 디바이스(140)가 전력 온된 시간, 및/또는 블록이 소거된 횟수를 더 포함할 수 있다. 제어기(160)는 파라미터 테이블 또는 파라미터 함수에 따라 제1 유지 과정에서 시간 범위를 결정하는 것에 의해, 제어기(160)는 제1 유지 과정이 종료된 때로부터 결정된 시간 범위 후 그 다음 유지 과정을 수행할 수 있고, 그 다음 유지 과정은 제1 유지 과정, 제2 유지 과정 및 제3 유지 과정 등을 포함할 수 있다. 제1 미리 결정된 상태의 파라미터는 현재 검출된 파라미터인 것으로 이해된다. 제어기(160)는 적어도 하나의 블록에 대응하는 제1 에러 비트 값이 에러 비트 값의 미리 결정된 임계값을 초과할 때 적어도 하나의 블록을 업데이트하도록 더 배열되는 것으로 이해된다. 이 실시예에서, 에러 비트 값의 미리 결정된 임계값은 미리 결정된 임계값이지만, 이들로 제한되지 않는다.
다음으로, 시간 범위 후, 제어기(160)는 그 다음 유지 과정을 수행하기 시작한다. 예를 들어, 제어기(160)는 제1 유지 과정이 종료된 때로부터 단계(S202)에 의해 결정된 시간 범위 후 제2 유지 과정을 수행한다. 제일 먼저, 단계(S204)에서, 제어기(160)는 온도 센서(190)를 판독하여 현재 온도 파라미터를 획득한다. 나아가, 제어기(160)는 이력 레코드에 따라 현재 미리 결정된 상태 및 그 다음 유지 과정을 실행하는 다른 시간 범위를 결정하고, 이력 레코드에 따라 에러 비트 값에 대한 임계값을 결정한다. 일 실시예에서, 미리 결정된 상태는 현재 온도 파라미터를 포함하고, 이력 레코드는 이전의 블록 스캔의 에러 비트 값 및 이전의 유지 과정에서 업데이트된 블록의 수를 포함하지만, 이들로 제한되지 않는다. 다른 실시예에서, 현재 미리 결정된 상태는 데이터 저장 디바이스(140)가 호스트(120)에 의해 액세스된 마지막 시기의 시간, 데이터 저장 디바이스(140)가 전력 온된 시간, 및/또는 블록이 소거된 횟수를 더 포함할 수 있다. 현재 유지 과정에서, 제어기(160)는 파라미터 테이블 또는 파라미터 함수에 따른 시간 범위를 결정함으로써 제어기(160)는 현재 유지 과정이 종료된 때로부터 결정된 시간 범위 후 그 다음 유지 과정을 수행할 수 있다.
다음으로, 단계(S206)에서, 제어기(160)는 에러 비트 값의 임계값에 따라 블록에 블록 스캔을 수행하고, 제어기(160)는 블록에 블록 스캔을 수행하여 각 블록에 대응하는 에러 비트 값을 획득하는 동작, 및 대응하는 에러 비트 값이 에러 비트 값의 임계값을 초과하는 경우 블록을 업데이트하는 동작을 수행하도록 배열된다. 다음으로, 공정은 단계(S204)로 리턴한다.
도 3은 본 발명의 다른 실시예에 따른 액세스 제한 방법의 흐름도이다. 데이터 유지 방법은 도 1의 데이터 저장 디바이스(140)에 적용된다. 공정은 단계(S300)에서 시작한다. 도 3의 데이터 유지 방법은 단계(S300)를 제외하고는 도 2의 데이터 유지 방법과 유사하다는 것이 주목된다. 그리하여, 단계(S302-S306)의 상세는 단계(S202-S206)의 것이 참조될 수 있다.
단계(S300)에서, 제어기(160)는 온도 센서(190)를 판독하여 데이터 저장 디바이스(140)가 전력 온된 때로부터 미리 결정된 시간 간격으로 현재 온도 파라미터를 획득하고, 현재 온도 파라미터에 따라 미리 결정된 기간을 조절하도록 배열되고, 여기서 미리 결정된 기간은 제1 유지 과정을 시작하도록 배열된다. 즉, 제어기(160)는 온도 센서(190)를 판독하여 데이터 저장 디바이스(140)가 전력 온된 때로부터 미리 결정된 시간 간격으로 현재 온도 파라미터를 획득하고, 현재 온도 파라미터에 따라 파라미터 테이블 또는 파라미터 함수에서 이를 조회하여 제1 유지 과정을 시작하도록 배열된 시간을 결정하도록 배열되고, 여기서 미리 결정된 시간 간격의 범위는 미리 결정된 기간보다 더 짧다. 예를 들어, 미리 결정된 기간은 1 초 또는 2 초 등일 수 있으나, 이들로 제한되지 않는다. 제1 유지 과정을 시작하도록 배열된 결정된 시간이 미리 결정된 기간 미만일 때, 제어기(160)는 제1 유지 과정을 시작하도록 배열된 결정된 시간에 따라 미리 결정된 기간을 조절하도록 더 배열된다. 예를 들어, 미리 결정된 기간은 5 분일 수 있고, 각 미리 결정된 시간 간격의 범위는 2 초이다. 제어기(160)는 온도 센서(190)를 판독하여 데이터 저장 디바이스(140)가 전력 온된 후 5분 동안 매 2초마다 현재 온도 파라미터를 획득하고, 현재 온도 파라미터에 따라 제1 유지 과정을 인에이블하도록 배열된 시간을 결정하도록 배열된다. 예를 들어, 제어기(160)가 제1 유지 과정이 데이터 저장 디바이스(140)에 전력이 온된 때로부터 6 분(미리 결정된 기간보다 더 긴 시간) 후에 시작되어야 하는 것으로 결정하면, 제어기(160)는 결정된 시간(6 분)을 무시하고, 온도 센서(190)를 판독하는 단계, 및 미리 결정된 기간이 종료될 때까지 매 2초마다 시간 범위를 결정하는 단계를 반복한다. 제어기(160)가 제1 유지 과정이 데이터 저장 디바이스(140)에 전력이 온된 때로부터 3 분(미리 결정된 기간보다 더 짧은 시간) 후 시작되어야 하는 것으로 결정한 경우, 제어기(160)는 미리 결정된 기간을 3 분으로 조절하고, 온도 센서(190)를 판독하는 단계, 및 미리 결정된 기간이 종료될 때까지 매 2초마다 시간 범위를 결정하는 단계를 반복한다. 즉, 제어기(160)는 데이터 저장 디바이스(140)가 전력 온된 때로부터 3분 후 제1 유지 과정을 수행하고 이와 같이 계속한다.
도 4는 또 다른 예시적인 실시예에 따른 데이터 유지 방법의 흐름도이다. 데이터 유지 방법은 도 1의 데이터 저장 디바이스(140)에 적용된다. 데이터 유지 방법은 미리 결정된 시간에 테이블-체크-유지 과정(단계 S400~S408)을 수행하도록 배열된다. 테이블-체크-유지 과정을 수행하도록 배열된 미리 결정된 시간은 제어기(160)가 아이들 상태이거나, 제어기(160)가 아이들 상태에 있는 시간 간격이거나, 또는 제어기(160)가 기록 동작 또는 판독 동작을 종료하는 동안이지만, 이들로 제한되지 않는다는 것이 주목된다. 예를 들어, 시간 간격은 1 초, 2 초, 3 초, 1 분 또는 10 분 등일 수 있으나, 이들로 제한되지 않는다. 더욱이, 제어기(160)가 테이블-체크-유지 과정에서 호스트(120)로부터 커맨드를 수신할 때, 제어기(160)는 테이블-체크-유지 과정의 현재 상태의 파라미터를 플래시 메모리(180) 또는 랜덤 액세스 메모리(165)에 저장하고, 호스트(120)로부터 수신된 커맨드가 종료된 후 저장된 파라미터에 따라 테이블-체크-유지 과정을 계속 수행한다. 다른 실시예에서, 테이블-체크-유지 과정을 수행하도록 배열된 미리 결정된 시간은 제1 유지 과정, 제2 유지 과정 또는 제3 유지 과정을 따른다. 일 실시예에서, 테이블-체크-유지 과정은 제1 유지 과정, 제2 유지 과정 및/또는 제3 유지 과정에 포함될 수 있다. 공정은 단계(S400)에서 시작한다.
단계(S400)에서, 제어기(160)는 온도 센서(190)를 판독하여 현재 온도 파라미터를 획득하도록 구성된다.
다음으로, 단계(S402)에서, 제어기(160)는 블록의 기록 온도 및 현재 온도 파라미터가 미리 결정된 값을 하나씩 초과하는지의 여부를 결정하도록 구성된다. 일 실시예에서, 미리 결정된 값은 50섭씨온도(degree Celsius)일 수 있으나, 이들로 제한되지 않는다. 다른 실시예에서, 미리 결정된 값은 30 내지 100섭씨온도의 임의의 유리수 값일 수 있다. 일 실시예에서, 제어기(160)는 시퀀스에서 기록 온도 대응 테이블의 논리 블록에 대응하는 기록 온도 각각을 판독하고, 판독 기록 온도 및 현재 온도 파라미터를 하나씩 비교하도록 구성된다. 현재 온도 파라미터와 판독 기록 온도 사이의 차이가 미리 결정된 값을 초과하는 경우, 공정은 단계(S404)로 진행하고, 그렇지 않은 경우, 공정은 단계(S408)로 진행한다.
단계(S404)에서, 제어기(160)는 미리 결정된 값만큼 현재 온도 파라미터를 초과하거나 그 미만인 기록 온도를 가지는 원래의 블록의 데이터를 다른 물리 블록에 기록하도록 구성된다.
다음으로, 단계(S406)에서, 제어기(160)는 논리-대-물리 매핑 테이블 및 기록 온도 대응 테이블을 조절하도록 구성된다. 보다 구체적으로, 제어기(160)는 원래의 블록의 논리 블록을, 원래의 블록의 데이터에 의해 기록된 물리 블록에 매핑하는 논리-대-물리 매핑 테이블을 조절하도록 구성된다. 더욱이, 제어기(160)는 단계(S404)에서 데이터가 물리 블록에 기록될 때 기록 온도에 의해 원래의 논리 블록의 기록 온도를 업데이트하는 기록 온도 대응 테이블을 조절하도록 구성된다.
다음으로, 단계(S408)에서, 제어기(160)는 기록 온도 대응 테이블에 저장된 논리 블록의 기록 온도 전부가 현재 온도 파라미터와 비교되었는지의 여부를 결정하도록 구성된다. 논리 블록의 기록 온도 전부가 현재 온도 파라미터와 비교되면, 공정은 단계(S408)에서 종료하고, 그렇지 않은 경우, 공정은 단계(S402)로 리턴한다.
데이터 저장 디바이스(140) 및 데이터 유지 방법은 데이터가 각 블록에 기록되는 동안의 온도를 레코드하고 이에 따라 블록을 업데이트할 수 있다.
데이터 송신 방법 또는 그 특정 측면 또는 부분은 유형적인 매체, 예를 들어, 플로피 디스켓, CD-ROMS, 하드 드라이브 또는 임의의 다른 기계-판독가능한 저장 매체에 매립된 프로그램 코드(즉, 실행가능한 명령) 형태를 취할 수 있고, 여기서 프로그램 코드는 컴퓨터와 같은 기계에 로딩되고 이 기계에 의해 실행되는 경우, 이 기계는 본 방법을 실행하는 장치가 된다. 본 방법은 일부 송신 매체, 예를 들어, 전기 배선 또는 케이블, 광섬유 또는 임의의 다른 송신 형태로 송신되는 프로그램 코드 형태로 구현될 수 있고, 여기서 프로그램 코드가 컴퓨터와 같은 기계에 수신되고 로딩되어 이 기계에 의해 실행될 때, 이 기계는 개시된 방법을 실행하는 장치가 된다. 일반 목적 프로세서에서 구현될 때, 프로그램 코드는 프로세서와 결합하여 응용 특정 논리 회로와 유사하게 동작하는 고유한 장치를 제공한다.
본 발명은 바람직한 실시예에 대하여 예시적으로 설명되었으나, 본 발명은 개시된 실시예로 제한되지 않는 것으로 이해된다. 이와 반대로, (이 기술 분야에 통상의 지식을 가진 자에게는 명백한 바와 같이) 각종 변형 및 유사한 배열을 커버하는 것으로 의도된다. 그리하여, 첨부된 청구범위는 모든 변형 및 유사한 배열을 포함하도록 최광의로 해석되어야 한다.

Claims (15)

  1. 데이터 저장 디바이스로서,
    복수의 블록을 구비하는 플래시 메모리;
    주위 온도를 검출하고, 따라서 온도 파라미터를 생성하도록 배열된 온도 센서; 및
    상기 온도 센서를 판독하여 미리 결정된 시간에 현재 온도 파라미터를 획득하고, 상기 블록들의 복수의 기록 온도를 상기 현재 온도 파라미터와 하나씩 비교하며, 상기 블록들 중 적어도 하나의 제1 블록에 저장된 데이터를 상기 블록들 중 적어도 하나의 제3 블록에 기록하도록 구성된 제어기를 포함하되,
    상기 제1 블록은 상기 기록 온도의 적어도 하나의 제1 기록 온도에 대응하고, 상기 제1 기록 온도와 상기 현재 온도 파라미터 사이의 차이는 미리 결정된 값을 초과하는 것인 데이터 저장 디바이스.
  2. 제1항에 있어서, 상기 블록들 각각은 물리 블록 및 논리 블록을 구비하고, 상기 기록 온도는 상기 블록들의 논리 블록에 각각 대응하는 것인 데이터 저장 디바이스.
  3. 제2항에 있어서, 상기 플래시 메모리는 상기 기록 온도 및 상기 논리 블록의 관계를 저장하도록 배열된 기록 온도 대응 테이블을 더 포함하는 것인 데이터 저장 디바이스.
  4. 제3항에 있어서, 상기 제어기는 상기 데이터가 상기 제3 블록의 기록 온도로서 기능하도록 상기 제3 블록에 기록될 때 주위 온도 중 하나의 온도를 취하고, 상기 제3 블록의 기록 온도를 상기 기록 온도 대응 테이블에 기록하도록 더 구성된 것인 데이터 저장 디바이스.
  5. 제3항에 있어서, 상기 플래시 메모리는 논리-대-물리 매핑 테이블(logical-to-physical mapping table)을 더 포함하고, 상기 제어기는 상기 논리-대-물리 매핑 테이블을 업데이트하여, 상기 제1 블록의 논리 블록이 상기 제3 블록의 상기 물리 블록에 매핑되도록 더 구성되는 것인 데이터 저장 디바이스.
  6. 제1항에 있어서, 상기 미리 결정된 시간은 상기 제어기가 아이들 상태에 있는 동안인 것인 데이터 저장 디바이스.
  7. 제1항에 있어서, 상기 미리 결정된 시간은 상기 제어기가 아이들 상태에 있는 동안의 시간 간격인 것인 데이터 저장 디바이스.
  8. 제1항에 있어서, 상기 미리 결정된 시간은 상기 제어기가 기록 동작 또는 판독 동작을 종료하는 동안인 것인 데이터 저장 디바이스.
  9. 플래시 메모리의 데이터 저장 디바이스에 적용되는 데이터 유지 방법으로서, 상기 플래시 메모리는 복수의 블록을 구비하고, 상기 데이터 유지 방법은,
    상기 블록들에 대응하는 복수의 기록 온도와 현재 온도 파라미터 사이의 복수의 차이가 미리 결정된 시간에 미리 결정된 값을 초과하는지의 여부를 결정하는 단계로서, 상기 기록 온도는 데이터가 상기 대응하는 블록에 기록되는 동안의 온도인 것인, 상기 결정하는 단계; 및
    상기 기록 온도들 중 제1 기록 온도에 대응하는 상기 블록들 중 적어도 하나의 제1 블록의 데이터를, 제어기에 의하여, 상기 블록들 중 적어도 하나의 제3 블록에 기록하는 단계를 포함하되,
    상기 제1 기록 온도와 상기 현재 온도 파라미터 사이의 차이는 상기 미리 결정된 값을 초과하는 것인 데이터 유지 방법.
  10. 제9항에 있어서, 상기 블록 각각은 물리 블록 및 논리 블록을 구비하고, 상기 기록 온도는 상기 블록들의 논리 블록에 각각 대응하는 것인 데이터 유지 방법.
  11. 제10항에 있어서, 상기 데이터가 상기 제3 블록의 기록 온도로서 기능하도록 상기 제3 블록에 기록될 때의 온도를 취하는 단계, 및 상기 제3 블록의 상기 기록 온도를 기록 온도 대응 테이블에 기록하는 단계를 더 포함하는 데이터 유지 방법.
  12. 제11항에 있어서, 상기 제1 블록의 논리 블록을 상기 제3 블록의 물리 블록에 매핑하도록 배열된 논리-대-물리 매핑 테이블을 더 포함하는 데이터 유지 방법.
  13. 제9항에 있어서, 상기 미리 결정된 시간은 상기 제어기가 아이들 상태에 있는 동안인 것인 데이터 유지 방법.
  14. 제9항에 있어서, 상기 미리 결정된 시간은 상기 제어기가 아이들 상태에 있는 동안의 시간 간격인 것인 데이터 유지 방법.
  15. 제9항에 있어서, 상기 미리 결정된 시간은 상기 제어기가 기록 동작 또는 판독 동작을 종료하는 동안인 데이터 유지 방법.
KR1020140183536A 2013-12-20 2014-12-18 데이터 저장 디바이스 및 그 데이터 유지 방법 KR20150073109A (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
TW102147386 2013-12-20
TW102147386A TWI517181B (zh) 2013-12-20 2013-12-20 資料儲存裝置及其資料維護方法

Publications (1)

Publication Number Publication Date
KR20150073109A true KR20150073109A (ko) 2015-06-30

Family

ID=53400062

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020140183536A KR20150073109A (ko) 2013-12-20 2014-12-18 데이터 저장 디바이스 및 그 데이터 유지 방법

Country Status (4)

Country Link
US (1) US20150178001A1 (ko)
KR (1) KR20150073109A (ko)
CN (1) CN104731522A (ko)
TW (1) TWI517181B (ko)

Families Citing this family (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106201347B (zh) * 2016-07-04 2019-07-26 联想(北京)有限公司 信息处理方法及固态硬盘
TWI602116B (zh) * 2017-03-07 2017-10-11 Silicon Motion Inc 資料儲存裝置及其資料維護方法
CN109375869A (zh) * 2018-09-17 2019-02-22 至誉科技(武汉)有限公司 实现数据可靠读写的方法以及系统、存储介质
CN109445982A (zh) * 2018-09-17 2019-03-08 至誉科技(武汉)有限公司 实现数据可靠读写的数据存储装置
CN109358979B (zh) * 2018-09-17 2021-10-12 至誉科技(武汉)有限公司 温差均衡方法在数据纠错中的应用、系统及存储介质
CN109284201A (zh) * 2018-09-17 2019-01-29 至誉科技(武汉)有限公司 温度均衡数据恢复方法以及系统、存储介质
CN110007874B (zh) * 2019-04-15 2022-07-05 深圳大学 一种三维闪存的数据写入方法、装置及可读存储介质
CN111158604B (zh) * 2019-12-31 2022-02-11 西南科技大学 一种闪存颗粒阵列的物联网时间序列数据存储与检索方法
CN112035060B (zh) * 2020-08-17 2024-04-26 合肥康芯威存储技术有限公司 一种存储介质的错误检测方法、系统及存储系统
CN113643746B (zh) * 2021-07-02 2023-09-26 深圳市宏旺微电子有限公司 闪存数据的分析方法、装置、终端设备及存储介质
KR20230033414A (ko) * 2021-09-01 2023-03-08 삼성전자주식회사 메모리 장치의 구동 방법 및 이를 수행하는 메모리 장치
US20240028248A1 (en) * 2022-07-19 2024-01-25 Micron Technology, Inc. Cross-temperature mitigation in a memory system

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7827450B1 (en) * 2006-11-28 2010-11-02 Marvell International Ltd. Defect detection and handling for memory based on pilot cells
CN201210325Y (zh) * 2008-06-13 2009-03-18 航天信息股份有限公司 移动存储设备
US8472274B2 (en) * 2011-03-02 2013-06-25 Apple Inc. Using temperature sensors with a memory device
US8787105B2 (en) * 2012-05-10 2014-07-22 Nanya Technology Corporation Dynamic random access memory with multiple thermal sensors disposed therein and control method thereof

Also Published As

Publication number Publication date
US20150178001A1 (en) 2015-06-25
TW201526019A (zh) 2015-07-01
CN104731522A (zh) 2015-06-24
TWI517181B (zh) 2016-01-11

Similar Documents

Publication Publication Date Title
KR20150073109A (ko) 데이터 저장 디바이스 및 그 데이터 유지 방법
TWI569273B (zh) 非揮發性記憶體裝置讀取干擾管理方法
KR101594124B1 (ko) 비휘발성 램, 이를 포함하는 솔리드 스테이트 드라이브, 및 이를 포함하는 컴퓨터 시스템
CN107452421B (zh) 固态储存装置及其状态预测方法
US9019770B2 (en) Data reading method, and control circuit, memory module and memory storage apparatus and memory module using the same
US9129698B2 (en) Solid state storage device and sensing voltage setting method thereof
TWI555023B (zh) 快閃記憶體更新方法以及快閃記憶體控制器
CN104572489B (zh) 磨损均衡方法及装置
TWI437568B (zh) 改善運作在寬溫度範圍之快閃記憶儲存裝置特性的方法
US8873323B2 (en) Method of executing wear leveling in a flash memory device according to ambient temperature information and related flash memory device
US9086954B2 (en) Data storing method, memory controller and memory storage apparatus
US9368226B2 (en) Data storage device and method for restricting access thereof
US8593884B2 (en) Data storage system and a data retention method thereof
US9824777B2 (en) Storage system managing run-time bad cells
US20160188213A1 (en) Memory management method, memory storage device and memory controlling circuit unit
US20170160938A1 (en) Data storage device and mode-detection method thereof
JP2020042890A (ja) メモリシステムおよびメモリシステムの制御方法
KR101677532B1 (ko) 데이터 저장 디바이스 및 이의 액세스 제한 방법
TWI508068B (zh) 管理快閃記憶體中所儲存之資料的方法,及相關的記憶裝置與控制器
JP6267497B2 (ja) 半導体メモリの制御装置及び不安定メモリ領域の検出方法
EP3783614B1 (en) Nonvolatile memory device including a fast read page and a storage device including the same
CN110083496B (zh) 非易失存储设备的掉电时间估计方法和装置
CN117037872A (zh) 存储器组件的基于温度的媒体管理
KR20120122569A (ko) 반도체 메모리 시스템 및 그 구동 방법
KR20120069953A (ko) 비휘발성 메모리 장치 및 그의 제어 방법

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E601 Decision to refuse application