KR101677532B1 - Data storage device and method for restricting access thereof - Google Patents
Data storage device and method for restricting access thereof Download PDFInfo
- Publication number
- KR101677532B1 KR101677532B1 KR1020140098309A KR20140098309A KR101677532B1 KR 101677532 B1 KR101677532 B1 KR 101677532B1 KR 1020140098309 A KR1020140098309 A KR 1020140098309A KR 20140098309 A KR20140098309 A KR 20140098309A KR 101677532 B1 KR101677532 B1 KR 101677532B1
- Authority
- KR
- South Korea
- Prior art keywords
- block
- error bit
- storage device
- data storage
- maintenance process
- Prior art date
Links
Images
Classifications
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C16/00—Erasable programmable read-only memories
- G11C16/02—Erasable programmable read-only memories electrically programmable
- G11C16/06—Auxiliary circuits, e.g. for writing into memory
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C16/00—Erasable programmable read-only memories
- G11C16/02—Erasable programmable read-only memories electrically programmable
- G11C16/06—Auxiliary circuits, e.g. for writing into memory
- G11C16/26—Sensing or reading circuits; Data output circuits
Abstract
본 발명은 플래시 메모리, 온도 센서 및 제어기를 포함하는 데이터 저장 디바이스를 제공한다. 플래시 메모리는 복수의 블록을 구비하고, 각 블록은 복수의 페이지를 구비한다. 온도 센서는 주변 주위 온도를 검출하여 온도 파라미터를 생성한다. 제어기는 데이터 저장 디바이스가 전력 온된 이후 미리 결정된 기간 후에 제1 유지 과정을 수행하도록 배열된다. 제어기는 온도 센서를 판독하여 제1 유지 과정에서 제1 온도 파라미터를 획득하고, 제1 미리 결정된 조건에 따라 제2 유지 과정을 수행하기 위한 제1 시간 범위를 결정하며, 제1 미리 결정된 조건은 제1 온도 파라미터를 포함하고, 제어기는 제1 유지 과정이 완료된 이후 제1 시간 범위 후에 제2 유지 과정을 수행하도록 더 배열된다.The present invention provides a data storage device comprising a flash memory, a temperature sensor and a controller. The flash memory has a plurality of blocks, and each block has a plurality of pages. The temperature sensor detects the ambient temperature and generates temperature parameters. The controller is arranged to perform a first maintenance procedure after a predetermined period of time after the data storage device is powered on. The controller reads the temperature sensor to obtain a first temperature parameter in a first maintenance process and determines a first time range for performing a second maintenance process according to a first predetermined condition, 1 temperature parameter, and the controller is further arranged to perform a second maintenance process after a first time period after the first maintenance process is completed.
Description
관련 출원에 대한 상호 참조Cross-reference to related application
본 출원은 전체 내용이 본 명세서에 참조 문헌으로 병합된 2013년 12월 17일자로 출원된 대만 특허 출원 제102146530호의 우선권을 주장한다. 나아가, 본 출원은 2013년 8월 6일자로 출원된 미국 가출원 제61/862,858호의 이익을 주장한다.This application claims priority from Taiwan Patent Application No. 102146530, filed December 17, 2013, the entire contents of which is incorporated herein by reference. Further, the present application claims the benefit of U.S. Provisional Application No. 61 / 862,858, filed August 6, 2013.
발명의 기술 분야TECHNICAL FIELD OF THE INVENTION
본 발명은 메모리 디바이스에 적용되는 데이터 유지 방법에 관한 것으로, 보다 상세하게는 플래시 메모리를 자동적으로 모니터링할 수 있는 데이터 유지 방법에 관한 것이다.The present invention relates to a data holding method applied to a memory device, and more particularly, to a data holding method capable of automatically monitoring a flash memory.
전기적 방법을 사용하여 자체적으로 소거하고 프로그래밍하는 플래시 메모리는 비휘발성 데이터 저장 디바이스로 고려된다. 일례로서 NAND 플래시를 고려하면, 이것은 종종 메모리 카드, USB 플래시 디바이스, 솔리드 스테이트(solid state) 디바이스, eMMC 및 다른 용도에 사용된다.Flash memory that self-erases and programs using electrical methods is considered a non-volatile data storage device. Considering NAND flash as an example, it is often used for memory cards, USB flash devices, solid state devices, eMMC, and other applications.
NAND 플래시와 같은 플래시 메모리는 데이터를 저장하는데 다수의 블록 구조를 사용하며, 여기서 이 플래시 메모리는 플로팅 게이트 트랜지스터(floating gate transistor)들로 구성된다. 플로팅 게이트 트랜지스터의 플로팅 게이트는 전자 전하(electronic charge)를 포획하여 데이터를 저장할 수 있다. 그러나, 플로팅 게이트는 자체 동작 및 플래시 메모리의 여러 환경적 파라미터로 인해 전자 전하를 손실할 수 있어서, 판독 에러나 기록 에러를 초래할 수 있다.A flash memory, such as a NAND flash, uses a number of block structures to store data, wherein the flash memory is comprised of floating gate transistors. The floating gate of the floating gate transistor can capture electronic charge and store data. However, floating gates can lose electronic charge due to self-operation and various environmental parameters of the flash memory, resulting in read errors or write errors.
첨부 도면을 참조하여 이하 실시예에 상세한 설명이 주어진다.The following detailed description is given with reference to the accompanying drawings.
본 발명은 데이터 저장 디바이스를 제공한다. 데이터 저장 디바이스는 플래시 메모리, 온도 센서 및 제어기를 포함한다. 플래시 메모리는 복수의 블록을 구비하고, 각 블록은 복수의 페이지를 구비한다. 온도 센서는 주변 주위 온도를 검출하고 이에 따라 온도 파라미터를 생성하도록 배열되고, 여기서 온도 파라미터는 검출된 주변 주위 온도에 따라 변한다. 제어기는 데이터 저장 디바이스가 전력 온(power on)된 이후 미리 결정된 기간 후에 제1 유지 과정을 수행하도록 배열되고, 제1 미리 결정된 조건에 따라 제2 유지 과정을 수행하기 위한 제1 시간 범위(time span)를 결정하도록 더 배열되고, 여기서 제어기는 온도 센서를 판독하여 제1 유지 과정에서 제1 온도 파라미터를 획득하고, 제1 미리 결정된 조건은 제1 온도 파라미터를 포함하며, 제어기는 제1 유지 과정이 완료된 이후 제1 시간 범위 후에 제2 유지 과정을 수행하도록 더 배열된다.The present invention provides a data storage device. The data storage device includes a flash memory, a temperature sensor, and a controller. The flash memory has a plurality of blocks, and each block has a plurality of pages. The temperature sensor is arranged to detect the ambient ambient temperature and thereby generate a temperature parameter, wherein the temperature parameter varies with the detected ambient ambient temperature. The controller is arranged to perform a first maintenance process after a predetermined period of time after the data storage device is powered on and is configured to perform a first maintenance process in accordance with a first predetermined condition, ), Wherein the controller reads the temperature sensor to obtain a first temperature parameter in a first maintenance step, the first predetermined condition includes a first temperature parameter, and the controller is further configured to: And to perform a second maintenance process after the first time range after completion.
본 발명은 플래시 메모리의 데이터 저장 디바이스에 적용된 데이터 유지 방법을 더 제공하며, 여기서 플래시 메모리는 복수의 블록을 구비하고, 각 블록은 복수의 페이지를 구비한다. 데이터 유지 방법은 데이터 저장 디바이스가 전력 온된 이후 미리 결정된 기간 후에 제1 유지 과정을 수행하는 단계; 온도 센서를 판독하여 제1 유지 과정에서 제1 온도 파라미터를 획득하는 단계; 제1 유지 과정에서 제1 미리 결정된 조건에 따라 제2 유지 과정을 수행하기 위한 제1 시간 범위를 결정하는 단계로서, 제1 미리 결정된 조건은 제1 온도 파라미터를 포함하는 것인, 상기 결정하는 단계; 및 제1 유지 과정이 완료된 이후 제1 시간 범위 후에 제2 유지 과정을 수행하는 단계를 포함한다.The present invention further provides a data holding method applied to a data storage device of a flash memory, wherein the flash memory has a plurality of blocks, each block having a plurality of pages. The data holding method includes the steps of: performing a first holding process after a predetermined period of time after the data storage device is powered on; Reading a temperature sensor to obtain a first temperature parameter in a first maintenance process; Determining a first time range for performing a second maintenance process in accordance with a first predetermined condition in a first maintenance process, the first predetermined condition comprising a first temperature parameter; ; And performing a second maintenance process after a first time period after the first maintenance process is completed.
본 발명은 첨부 도면을 참조하여 후속 상세한 설명과 예를 판독하는 것에 의해 보다 충분히 이해될 수 있을 것이다:
도 1은 본 발명의 전자 시스템의 일 실시예를 도시한 개략도;
도 2는 본 발명의 일 실시예에 따른 액세스 제한 방법의 흐름도;
도 3은 본 발명의 다른 실시예에 따른 액세스 제한 방법의 흐름도.The invention may be more fully understood by reading the following detailed description and examples with reference to the accompanying drawings, in which:
1 is a schematic diagram illustrating one embodiment of an electronic system of the present invention;
2 is a flow diagram of an access restriction method in accordance with an embodiment of the present invention;
3 is a flow diagram of an access restriction method in accordance with another embodiment of the present invention.
이하 상세한 설명은 본 발명을 수행하는 최상의 모드이다. 본 설명은 본 발명의 일반 원리를 도시하기 위한 것일 뿐이므로 발명을 제한하는 의미로 해석되어서는 안 된다. 본 발명의 범위는 첨부 도면을 참조하여 최상으로 결정된다.The following detailed description is the best mode for carrying out the invention. This description is made to illustrate the general principles of the present invention and should not be construed as limiting the invention. The scope of the present invention is best determined by reference to the accompanying drawings.
도 1은 본 발명의 전자 시스템의 일 실시예를 도시한 개략도이다. 전자 시스템(100)은 호스트(120) 및 데이터 저장 디바이스(140)를 포함한다. 데이터 저장 디바이스(140)는 제어기(160), 플래시 메모리(180) 및 온도 센서(190)를 포함한다. 나아가, 데이터 저장 디바이스(140)는 호스트(120)로부터 수신된 커맨드에 응답하여 동작할 수 있다. 제어기(160)는 컴퓨팅 유닛(162), 비휘발성 메모리(164) (예를 들어, 판독 전용 메모리), 랜덤 액세스 메모리(165) 및 타이밍 디바이스(166)를 포함한다. 비휘발성 메모리(164)에 저장된 프로그램 코드 및 데이터는 펌웨어를 구성할 수 있고, 컴퓨팅 유닛(162)에 의해 수행되어, 제어기(160)가 펌웨어에 의해 플래시 메모리(180)를 제어할 수 있게 한다. 예를 들어, 제어기(160)는 호스트 디바이스(120)로부터 수신된 커맨드에 따라 플래시 메모리(180)에 액세스하여 본 발명의 유지 과정을 자동적으로 수행할 수 있다. 본 실시예들 중 하나에서, 유지 과정은 배경에서 반복적으로 수행되는 것이 주목된다. 예를 들어, 제어기(160)는 아이들(idle)일 때에만 유지 과정을 수행하고, 수신된 커맨드에 대응하는 작업이 완료될 때까지 호스트(120)로부터 커맨드를 수신할 때 유지 과정을 중지시킨다. 플래시 메모리(180)는 복수의 블록을 구비하고, 각 블록은 복수의 페이지를 구비한다. 타이밍 디바이스(166)는 데이터 저장 디바이스(180)가 전력 온된 시간, 및 과정들 사이의 시간 기간 등을 레코드(record)하도록 배열된다. 온도 센서(190)는 데이터 저장 디바이스(140)의 주변 주위 온도를 검출하도록 배열되고, 주변 주위 온도의 변동에 응답하여 온도 파라미터를 생성한다. 이 실시예에서, 온도 센서(190)는 데이터 저장 디바이스(140)의 플래시 메모리(180)에 인접하여 구현되고, 플래시 메모리(180)의 주변 주위 온도를 검출하도록 배열되지만, 이것으로 제한되지 않는다. 다른 실시예에서, 온도 센서(190)는 데이터 저장 디바이스(140) 외부에 구현되고, 데이터 저장 디바이스(140)의 주변 주위 온도를 검출하도록 배열될 수 있다.1 is a schematic diagram showing one embodiment of an electronic system of the present invention. The
나아가, 플래시 메모리(180)는 적어도 하나의 파라미터 테이블 및 적어도 하나의 스캔 조건 테이블을 저장하도록 더 배열된다. 일 실시예에서, 파라미터 테이블은 상이한 주변 주위 온도에 대응하는 시간 범위를 저장하도록 배열되고, 여기서 시간 범위는 현재 유지 과정 및 그 다음 유지 과정 사이의 시간 간격을 결정하도록 배열되지만, 이것으로 제한되지 않는다. 다른 실시예에서, 파라미터 테이블은 상이한 주변 주위 온도, 상이한 에러 비트 값, 상이한 개수의 소거된 블록, 호스트(120)가 데이터 저장 디바이스(140)에 마지막으로 액세스한 상이한 시간, 데이터 저장 디바이스(140)가 전력 온된 후의 상이한 시간 범위, 및/또는 블록이 소거된 횟수에 대응하는 시간 범위를 더 포함하며, 여기서 저장된 시간 범위는 그 다음 유지 과정을 구현하도록 배열된다. 스캔 조건 테이블은 상이한 에러 비트 값 및/또는 상이한 개수의 업데이트된 블록에 대응하는 스캔 조건을 저장하도록 배열된다. 예를 들어, 스캔 조건은 에러 비트 값의 임계값일 수 있으나, 이것으로 제한되지 않는다. 다른 실시예에서, 스캔 조건은 상이한 ECC 코드일 수 있다. 또 다른 실시예에서, 플래시 메모리(180)는 파라미터 함수(function) 및 스캔 조건 함수를 저장하도록 배열된다. 이 실시예에서, 이전의 유지 과정과 그 다음 유지 과정 사이의 시간 범위는 파라미터 함수에 의해 결정된다. 예를 들어, 파라미터 함수는 상이한 주변 주위 온도 값으로부터 현재 유지 과정과 다음 유지 과정 사이의 시간 범위를 계산하지만, 이것으로 제한되지 않는다. 다른 실시예에서, 파라미터 함수는 상이한 주변 주위 온도, 상이한 에러 비트 값, 업데이트된 블록의 개수, 호스트(120)가 데이터 저장 디바이스(140)에 마지막으로 액세스한 상이한 시간, 데이터 저장 디바이스(140)가 전력 온된 후의 상이한 시간 범위 및/또는 블록이 소거된 상이한 횟수에 따라 현재 유지 과정과 다음 유지 과정 사이의 시간 범위를 계산하도록 더 배열된다. 더욱이, 스캔 조건 함수는 상이한 에러 비트 값 및/또는 업데이트된 블록의 개수에 따라 상이한 스캔 조건을 결정하도록 더 배열된다. 더 높은 주변 주위 온도는 더 높은 에러 비트 값을 의미하고, 더 높은 개수의 업데이트된 블록을 의미하고, 데이터 저장 디바이스(140)가 전력 온된 시간이 더 긴 것을 의미하며, 블록이 소거된 횟수가 더 많다는 것은 현재 유지 과정과 다음 유지 과정 사이의 시간 범위가 더 짧다는 것을 의미한다는 것이 주목된다. 더 높은 에러 비트 값 및 더 높은 개수의 업데이트된 블록은 에러 비트 값의 더 낮은 임계값에 대응한다.Further, the
일 실시예에서, 제어기(160)는 데이터 저장 디바이스(140)가 전력 온된 이후 미리 결정된 기간 후에 제1 유지 과정을 수행하도록 배열된다. 이 실시예에서, 미리 결정된 기간은 미리 결정된 시간이지만, 이것으로 제한되지 않는다. 예를 들어, 미리 결정된 기간은 4 분 또는 5 분일 수 있으나, 이것으로 제한되지 않는다. 제1 유지 과정에서, 제어기(160)는 온도 센서(190)를 판독하여 제1 온도 파라미터를 획득하고, 제1 미리 결정된 조건에 따라 블록에 제1 블록 스캔을 수행하여 블록에 각각 대응하는 복수의 제1 에러 비트 값을 획득하기 위한 제1 시간 범위를 결정한다. 일 실시예에서, 제1 미리 결정된 조건은 제1 온도 파라미터를 포함하지만, 이것으로 제한되지 않는다. 다른 실시예에서, 제1 미리 결정된 조건은 호스트(120)가 데이터 저장 디바이스(140)에 마지막으로 액세스한 시간, 데이터 저장 디바이스(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 에러 비트 값이 에러 비트 값의 미리 결정된 임계값을 초과할 때 적어도 하나의 블록을 업데이트하도록 더 배열된다는 것이 주목된다. 이 실시예에서, 에러 비트 값의 미리 결정된 임계값은 미리 결정된 임계값이지만, 이것으로 제한되지 않는다.In one embodiment, the
다른 실시예에서, 미리 결정된 기간에서, 제어기(160)는 온도 센서(190)를 판독하여 미리 결정된 시간 간격에서 현재 온도 파라미터를 획득하고, 현재 온도 파라미터에 따라 제1 유지 과정을 시작하도록 배열된 시간을 조절하도록 더 배열된다. 즉, 제어기(160)는 온도 센서(190)를 판독하여 데이터 저장 디바이스(140)가 전력 온된 이후 미리 결정된 시간 간격에 현재 온도 파라미터를 획득하고, 현재 온도 파라미터에 따라 파라미터 테이블 또는 파라미터 함수를 룩업(look up)하는 것에 의해 제1 유지 과정을 시작하도록 배열된 시간을 결정하도록 배열되며, 여기서 미리 결정된 시간 간격의 범위는 미리 결정된 기간보다 짧다. 예를 들어, 미리 결정된 기간은 1 초 또는 2 초 등일 수 있으나, 이것으로 제한되지 않는다. 제1 유지 과정을 시작하도록 배열된 결정된 시간이 미리 결정된 기간 미만일 때, 제어기(160)는 제1 유지 과정을 시작하도록 배열된 결정된 시간에 따라 미리 결정된 기간을 조절하도록 더 배열된다. 예를 들어, 미리 결정된 기간은 5 분일 수 있고, 각 미리 결정된 시간 간격의 범위는 2 초이다. 제어기(160)는 데이터 저장 디바이스(140)가 전력 온된 후 5분 동안 매 2초 마다 온도 센서(190)를 판독하여 현재 온도 파라미터를 획득하고, 현재 온도 파라미터에 따라 제1 유지 과정을 구현하도록 배열된 시간을 결정하도록 배열된다. 예를 들어, 제어기(160)가 제1 유지 과정이 데이터 저장 디바이스(140)의 전력 온 이후 6분 (미리 결정된 기간보다 더 긴 기간) 후에 시작되어야 하는 것으로 결정할 때, 제어기(160)는 결정된 시간(6 분)을 무시하고, 온도 센서(190)를 판독하는 단계와 미리 결정된 기간이 종료할 때까지 매 2초마다 시간 범위를 결정하는 단계를 반복한다. 제어기(160)가 제1 유지 과정이 데이터 저장 디바이스(140)가 전력 온된 이후 3 분(미리 결정된 기간보다 더 짧은 기간) 후에 시작되어야 하는 것으로 결정할 때, 제어기(160)는 미리 결정된 기간을 3 분으로 조절하고, 온도 센서(190)를 판독하는 단계와 미리 결정된 기간이 종료될 때까지 매 2초마다 시간 범위를 결정하는 단계를 반복한다. 즉, 제어기(160)는 데이터 저장 디바이스(140)가 전력 온된 이후 예를 들어 3분 후에 제1 유지 과정을 수행한다.In another embodiment, in a predetermined time period, the
제어기(160)는 제1 유지 과정이 완료된 이후 제1 시간 범위 후에 제2 유지 과정을 수행하도록 더 배열된다. 제2 유지 과정에서, 제어기(160)는 온도 센서(190)를 판독하여 제2 온도 파라미터를 획득하고, 제2 미리 결정된 조건과 제1 이력 레코드에 따라 제3 유지 과정을 수행하는 제2 시간 범위를 결정하며, 제1 이력 레코드에 따라 블록에 제2 블록 스캔을 수행하기 위한 에러 비트 값의 제1 임계값을 결정한다. 일 실시예에서, 제2 미리 결정된 조건은 제2 온도 파라미터를 포함하고, 제1 이력 레코드는 제1 에러 비트 값 및 블록이 제1 유지 과정 동안 소거된 횟수를 포함하나, 이것으로 제한되지 않는다. 다른 실시예에서, 제2 미리 결정된 조건은 호스트(120)가 데이터 저장 디바이스(140)에 마지막으로 액세스한 시간, 데이터 저장 디바이스(140)가 전력 온된 시간 및/또는 블록이 소거된 횟수를 더 포함할 수 있다. 제어기(160)는 파라미터 테이블 또는 파라미터 함수에 따라 제2 유지 과정에서 제2 시간 범위를 결정하고, 제2 유지 과정이 완료된 이후 제2 시간 범위 후 제3 유지 과정을 수행할 수 있다. 제1 미리 결정된 조건의 파라미터들은 현재 검출된 파라미터들이고, 제3 유지 과정 및 제2 유지 과정의 동작은 동일한 것이 주목된다. 유사하게, 제3 유지 과정은 제4 유지 과정을 시작하도록 배열된 시간을 결정하는 제3 시간 범위를 결정하고, 블록에 제3 블록 스캔을 수행하기 위한 에러 비트 값의 제2 임계값을 결정할 수 있다. 제4 유지 과정 및 제2 유지 과정의 동작은 예를 들어 동일하다. 제어기(160)는 블록의 제2 에러 비트 값이 에러 비트 값의 제1 임계값보다 더 클 때 블록을 업데이트하도록 더 배열되는 것이 주목된다.The
제어기(160)는 블록 스캔의 결과(예를 들어, 에러 비트 값 및/또는 업데이트된 블록의 개수) 또는 유지 과정을 제공하기 위해 플래시 메모리(180)의 적어도 하나의 특정 블록에서 블록이 소거된 횟수(소거 카운트)를 저장할 수 있으나, 이것으로 제한되지 않는다. 블록 스캔에서, 제어기(160)는 플래시 메모리(180)의 각 블록을 스캔하여 각 블록에 대응하는 에러 비트 값을 획득하도록 배열된다. 보다 구체적으로, 제어기(160)는 플래시 메모리(180)의 각 블록을 판독하고 각 블록의 ECC(Error Correction)의 에러 비트 값을 획득하도록 배열된다. 이어서, 제어기(160)는 대응하는 에러 비트 값이 임계값, 예를 들어 에러 비트 값의 미리 결정된 임계값, 에러 비트 값의 제1 임계값, 및 에러 비트 값의 제2 임계값 등을 초과할 때, 블록을 업데이트하도록 더 배열된다. 나아가, 업데이트 과정에서, 제어기(160)는 블록의 데이터를 검색하고, 검색된 데이터를 정정하고, 정정된 데이터를 플래시 메모리(180)의 다른 블록에 저장하도록 배열된다. 에러 비트 값의 임계값은 ECC에 의해 정정될 수 있는 에러 비트 값의 최대값 미만인 것이 주목된다. 예를 들어, 데이터는 에러 비트가 43 비트 미만인 경우 ECC에 의해 정정될 수 있고, 에러 비트 값의 임계값은 35 비트 또는 38 비트일 수 있으나, 이것으로 제한되지 않는다. 기술 분야에 통상의 지식을 가진 자라면 ECC에 의해 정정될 수 있는 에러 비트 값의 최대값에 따라 에러 비트 값의 미리 결정된 임계값을 결정할 수 있을 것이다. 예를 들어, 에러 비트 값의 미리 결정된 임계값은 ECC에 의해 정정될 수 있는 에러 비트 값의 최대값이거나 또는 ECC에 의해 정정될 수 있는 에러 비트 값의 최대값 미만일 수 있다.The
도 2는 본 발명의 일 실시예에 따른 액세스 제한 방법의 흐름도이다. 데이터 유지 방법은 도 1의 데이터 저장 디바이스(140)에 적용된다. 공정은 단계(S202)에서 시작한다.2 is a flow diagram of an access restriction method in accordance with an embodiment of the present invention. The data holding method is applied to the
단계(S202)에서, 제어기(160)는 데이터 저장 디바이스(140)가 전력 온된 이후 미리 결정된 기간 후에 제1 유지 과정을 수행하도록 배열된다. 이 실시예에서, 미리 결정된 기간은 미리 결정된 시간이지만, 이것으로 제한되지 않는다. 예를 들어, 미리 결정된 기간은 4 분 또는 5 분일 수 있으나, 이것으로 제한되지 않는다. 제1 유지 과정에서, 제어기(160)는 온도 센서(190)를 판독하여 제1 온도 파라미터를 획득하고, 제1 미리 결정된 조건에 따라 블록에 제1 블록 스캔을 수행하여 블록에 각각 대응하는 복수의 제1 에러 비트 값을 획득하기 위한 제1 시간 범위를 결정한다. 일 실시예에서, 제1 미리 결정된 조건은 제1 온도 파라미터를 포함하지만, 이것으로 제한되지 않는다. 다른 실시예에서, 제1 미리 결정된 조건은 호스트(120)가 데이터 저장 디바이스(140)에 마지막으로 액세스한 시간, 데이터 저장 디바이스(140)가 전력 온된 시간 및/또는 블록이 소거된 횟수를 더 포함할 수 있다. 제어기(160)는 파라미터 테이블 또는 파라미터 함수에 따라 제1 유지 과정에서 시간 범위를 결정하여, 제어기(160)가 제1 유지 과정이 완료된 이후 결정된 시간 범위 후에 다음 유지 과정을 수행할 수 있게 하고, 다음 유지 과정은 제1 유지 과정, 제2 유지 과정 및 제3 유지 과정 등을 포함할 수 있다. 제1 미리 결정된 조건의 파라미터들은 현재 검출된 파라미터들이라는 것이 주목된다. 제어기(160)는 적어도 하나의 블록에 대응하는 제1 에러 비트 값이 에러 비트 값의 미리 결정된 임계값을 초과할 때 적어도 하나의 블록을 업데이트하도록 더 배열되는 것이 주목된다. 이 실시예에서, 에러 비트 값의 미리 결정된 임계값은 미리 결정된 임계값이지만, 이것으로 제한되지 않는다.In step S202, the
다음에, 시간 범위 후에, 제어기(160)는 다음 유지 과정을 수행하기 시작한다. 예를 들어, 제어기(160)는 제1 유지 과정이 완료된 이후 단계(S202)에서 결정된 시간 범위 후 제2 유지 과정을 수행한다. 제일 먼저, 단계(S204)에서, 제어기(160)는 온도 센서(190)를 판독하여 현재 온도 파라미터를 획득한다. 나아가, 제어기(160)는 현재 미리 결정된 조건 및 이력 레코드에 따라 그 다음 유지 과정을 실행하는 다른 시간 범위를 결정하고, 이력 레코드에 따라 에러 비트 값의 임계값을 결정한다. 일 실시예에서, 미리 결정된 조건은 현재 온도 파라미터를 포함하고, 이력 레코드는 이전의 블록 스캔의 에러 비트 값 및 이전의 유지 과정에서 업데이트된 블록의 개수를 포함하지만, 이것으로 제한되지 않는다. 다른 실시예에서, 현재 미리 결정된 조건은 호스트(120)가 데이터 저장 디바이스(140)에 마지막으로 액세스한 시간, 데이터 저장 디바이스(140)가 전력 온된 시간 및/또는 블록이 소거된 횟수를 더 포함할 수 있다. 현재 유지 과정에서, 제어기(160)는 파라미터 테이블 또는 파라미터 함수에 따라 시간 범위를 결정하여, 제어기(160)가 현재 유지 과정이 완료된 이후 결정된 시간 범위 후에 다음 유지 과정을 수행할 수 있게 한다.Next, after the time range, the
다음에, 단계(S206)에서, 제어기(160)는 에러 비트 값의 임계값에 따라 블록에 블록 스캔을 수행하고, 여기서 제어기(160)는 블록에 블록 스캔을 수행하여 블록에 각각 대응하는 에러 비트 값을 획득하고, 대응하는 에러 비트 값이 에러 비트 값의 임계값을 초과하는 경우 블록을 업데이트하도록 배열된다. 이어서, 공정은 단계(S204)로 리턴한다.Next, in step S206, the
도 3은 본 발명의 다른 실시예에 따른 액세스 제한 방법의 흐름도이다. 데이터 유지 방법은 도 1의 데이터 저장 디바이스(140)에 적용된다. 공정은 단계(S300)에서 시작한다. 도 3의 데이터 유지 방법은 단계(S300)를 제외하고는 도 2의 데이터 유지 방법과 유사하다는 것이 주목된다. 그리하여, 단계(S302-S306)의 상세는 단계(S202-S206)에 대응할 수 있다.3 is a flow diagram of an access restriction method in accordance with another embodiment of the present invention. The data holding method is applied to the
단계(S300)에서, 제어기(160)는 데이터 저장 디바이스(140)가 전력 온된 이후 미리 결정된 시간 간격에서 온도 센서(190)를 판독하여 현재 온도 파라미터를 획득하고, 현재 온도 파라미터에 따라 미리 결정된 기간을 조절하도록 배열되고, 여기서 미리 결정된 기간은 제1 유지 과정을 시작하도록 배열된다. 즉, 제어기(160)는 데이터 저장 디바이스(140)가 전력 온된 이후 미리 결정된 시간 간격에서 온도 센서(190)를 판독하여 현재 온도 파라미터를 획득하고, 현재 온도 파라미터에 따라 파라미터 테이블 또는 파라미터 함수를 룩업하는 것에 의해 제1 유지 과정을 시작하도록 배열된 시간을 결정하도록 배열되고, 여기서 미리 결정된 시간 간격의 범위는 미리 결정된 기간보다 더 짧다. 예를 들어, 미리 결정된 기간은 1 초 또는 2 초 등일 수 있으나, 이것으로 제한되지 않는다. 제1 유지 과정을 시작하도록 배열된 결정된 시간이 미리 결정된 기간 미만인 경우, 제어기(160)는 제1 유지 과정을 시작하도록 배열된 결정된 시간에 따라 미리 결정된 기간을 조절하도록 더 배열된다. 예를 들어, 미리 결정된 기간은 5 분일 수 있고, 각 미리 결정된 시간 간격의 범위는 2 초이다. 제어기(160)는 데이터 저장 디바이스(140)가 전력 온된 이후 5분 동안 매 2초마다 온도 센서(190)를 판독하여 현재 온도 파라미터를 획득하고, 현재 온도 파라미터에 따라 제1 유지 과정을 구현하도록 배열된 시간을 결정하도록 배열된다. 예를 들어, 제어기(160)가 제1 유지 과정이 데이터 저장 디바이스(140)가 전력 온된 이후 6 분(미리 결정된 기간보다 더 긴 시간) 후에 시작되어야 하는 것으로 결정할 때, 제어기(160)는 결정된 시간(6 분)을 무시하고, 온도 센서(190)를 판독하는 단계와 미리 결정된 기간이 종료할 때까지 매 2초마다 시간 범위를 결정하는 단계를 반복한다. 제어기(160)가 제1 유지 과정이 데이터 저장 디바이스(140)가 전력 온된 이후 3 분(미리 결정된 기간보다 더 짧은 기간) 후에 시작되어야 하는 것으로 결정하면, 제어기(160)는 미리 결정된 기간을 3 분으로 조절하고, 온도 센서(190)를 판독하는 단계와 미리 결정된 기간이 종료될 때까지 매 2초마다 시간 범위를 결정하는 단계를 반복한다. 즉, 제어기(160)는 데이터 저장 디바이스(140)가 전력 온된 이후 예를 들어 3분 후에 제1 유지 과정을 수행한다.At step S300, the
상기 설명으로부터 데이터 저장 디바이스(140) 및 데이터 유지 방법은 현재 온도에 따라 블록을 스캔하고 업데이트할 수 있다는 것을 볼 수 있다.From the above it can be seen that the
데이터 송신 방법, 또는 특정 측면 또는 그 일부는 플로피 디스켓, CD-ROMS, 하드 드라이브 또는 임의의 다른 기계-판독가능한 저장 매체와 같은 유형적인 매체에 구현된 프로그램 코드(즉, 실행가능한 명령)의 형태를 취할 수 있고, 여기서 프로그램 코드가 컴퓨터와 같은 기계에 로딩되어 이 기계에 의해 실행될 때, 이 기계는 본 방법을 실행하는 장치가 된다. 본 방법은 일부 송신 매체, 예를 들어 전기 배선(wiring) 또는 케이블(cabling), 광섬유 또는 임의의 다른 송신 형태를 통해 송신된 프로그램 코드의 형태로 구현될 수 있고, 여기서 프로그램 코드가 컴퓨터와 같은 기계에 수신되고 로딩되어 실행될 때, 이 기계는 개시된 방법을 실행하는 장치가 된다. 일반 목적 프로세서에서 구현될 때, 프로그램 코드는 프로세서와 결합하여 응용 특정 로직 회로와 유사하게 동작하는 고유한 장치를 제공한다.(Or executable instructions) embodied in tangible media, such as a floppy diskette, CD-ROMS, hard drive or any other machine-readable storage medium, Where the program code is loaded into a machine such as a computer and executed by the machine, the machine becomes an apparatus executing the method. The method may be implemented in the form of program code transmitted over some transmission medium, e.g., electrical wiring or cabling, fiber optics, or any other form of transmission, wherein the program code is transmitted to a machine Lt; / RTI > is received, loaded, and executed by the device, the machine becomes an apparatus executing the disclosed method. When implemented in a general purpose processor, the program code combines with the processor to provide a unique device that operates similarly to an application specific logic circuit.
본 발명은 예로서 바람직한 실시예 측면에서 설명되었으나, 본 발명은 개시된 실시예로 제한되지 않는다. 이와 반대로, 본 발명은 (이 기술 분야에 통상의 지식을 가진 자에게 자명한) 여러 변형과 유사한 배열을 커버하도록 의도된다. 그리하여, 첨부된 청구범위는 모든 변형과 유사한 배열을 포함하는 최광의로 해석하여야 한다.While the present invention has been described by way of example and in terms of a preferred embodiment, the invention is not limited to the disclosed embodiments. On the contrary, the invention is intended to cover an arrangement similar to various modifications (obvious to those skilled in the art). Thus, the appended claims should be interpreted as being in the best mode, including arrangements similar to all variations.
Claims (16)
복수의 블록을 구비하는 플래시 메모리로서, 각 상기 블록은 복수의 페이지를 구비하는 것인, 상기 플래시 메모리; 및
데이터 저장 디바이스가 전력 온(power on)된 이후 미리 결정된 기간 후에 제1 유지 과정을 수행하도록 배열된 제어기를 포함하되,
상기 제어기는 상기 블록에 제 1블록 스캔을 각각 수행하여 상기 블록에 각각 대응하는 복수의 제1 에러 비트 값을 획득하고, 상기 대응하는 제1 에러 비트 값이 상기 제 1 유지 과정에서 에러 비트 값의 미리 결정된 임계값을 초과할 때 상기 블록을 업데이트하도록 더 배열되고,
또한, 상기 제어기는, 또 다른 유지 과정의 시작 시간을 결정하기 위하여, 상기 제 1 에러 비트 값 및 상기 제 1유지 과정에서 업데이트된 블록의 수에 따라 시간 범위를 결정하도록 더 배열되며,
상기 제어기는 상기 데이터 저장 디바이스가 전력 온된 마지막 시간에 따라 상기 시간 범위를 결정하도록 더 배열된 것인 데이터 저장 디바이스.1. A data storage device,
CLAIMS What is claimed is: 1. A flash memory comprising a plurality of blocks, each block comprising a plurality of pages; And
And a controller arranged to perform a first maintenance process after a predetermined period of time after the data storage device is powered on,
Wherein the controller performs a first block scan on the block to obtain a plurality of first error bit values respectively corresponding to the blocks and if the corresponding first error bit value is greater than or equal to And to update the block when a predetermined threshold is exceeded,
The controller is further arranged to determine a time range according to the first error bit value and the number of blocks updated in the first holding step to determine a start time of another holding procedure,
Wherein the controller is further arranged to determine the time range in accordance with the last time the data storage device was powered on.
주변 주위 온도를 검출하여 온도 파라미터를 생성하도록 배열된 온도 센서를 더 포함하되,
상기 제어기는 상기 온도 센서를 판독하여 상기 제1 유지 과정에서 온도 파라미터를 획득하도록 배열되고, 상기 온도 파라미터에 따라 상기 시간 범위를 결정하도록 더 배열되는 것인, 데이터 저장 디바이스.The method according to claim 1,
Further comprising a temperature sensor arranged to detect a surrounding ambient temperature to produce a temperature parameter,
Wherein the controller is further arranged to read the temperature sensor to obtain a temperature parameter in the first holding step and to determine the time range according to the temperature parameter.
상기 데이터 저장 디바이스가 전력 온된 이후 미리 결정된 기간 후에 제1 유지 과정을 수행하는 단계; 및
상기 제1 유지 과정이 완료된 이후 특정 시간 범위 후에 제2 유지 과정을 수행하는 단계를 포함하되,
상기 제 1유지 과정은
상기 블록에 제1 블록 스캔을 수행하여 상기 블록에 각각 대응하는 복수의 제1 에러 비트 값을 획득하는 단계;
상기 대응하는 제1 에러 비트 값이 에러 비트 값의 미리 결정된 임계값을 초과할 때 상기 블록을 업데이트하는 단계; 및
상기 제 2유지 과정의 시작 시간을 결정하기 위하여, 상기 제 1 에러 비트 값, 상기 데이터 저장 디바이스가 전력 온된 마지막 시간, 및 상기 제 1유지 과정에서 업데이트된 블록의 수에 따라 상기 시간 범위를 결정하는 단계를 포함하는 데이터 유지 방법.A data holding method applied to a data storage device of a flash memory, the flash memory having a plurality of blocks, each block including a plurality of pages,
Performing a first maintenance process after a predetermined period of time after the data storage device is powered on; And
And performing a second maintenance process after a specific time range after the first maintenance process is completed,
The first maintenance process
Performing a first block scan on the block to obtain a plurality of first error bit values respectively corresponding to the blocks;
Updating the block when the corresponding first error bit value exceeds a predetermined threshold value of the error bit value; And
The time range is determined according to the first error bit value, the last time the data storage device is powered on, and the number of blocks updated in the first maintenance process to determine the start time of the second maintenance process The method comprising the steps of:
온도 센서를 판독하여 상기 제1 유지 과정에서 제 1온도 파라미터를 획득하는 단계를 더 포함하되, 상기 시간 범위를 결정하는 단계는 상기 제 1온도 파라미터에 따라 상기 시간 범위를 결정하는 단계를 더 포함하고,
제 1 미리 결정 조건이 상기 제 1 온도 파라미터를 포함하는 것인 데이터 유지방법.10. The method of claim 9,
Further comprising: reading a temperature sensor to obtain a first temperature parameter in the first maintenance step, wherein the determining the time range further comprises determining the time range according to the first temperature parameter ,
Wherein the first predetermined condition includes the first temperature parameter.
온도 센서를 판독하여 상기 미리 결정된 기간 내 미리 결정된 시간 간격에서 현재 온도 파라미터를 획득하는 단계; 및
상기 현재 온도 파라미터에 따라 상기 제1 유지 과정을 시작하도록 배열된 시간을 조절하는 단계를 더 포함하는 데이터 유지 방법.10. The method of claim 9,
Reading a temperature sensor to obtain a current temperature parameter at a predetermined time interval within the predetermined time period; And
And adjusting a time period arranged to start the first maintenance process according to the current temperature parameter.
상기 제 1 에러비트 값 및 상기 제 1유지 과정에서 업데이트된 블록의 수에 따라 에러 비트 값의 제1 임계값을 결정하는 단계;
상기 블록에 제2 블록 스캔을 수행하여 상기 블록의 복수의 제2 에러 비트 값을 획득하는 단계; 및
상기 대응하는 제2 에러 비트 값이 상기 에러 비트 값의 제1 임계값을 초과할 때 상기 블록을 업데이트하는 단계를 더 포함하는 것인 데이터 유지 방법.10. The method according to claim 9,
Determining a first threshold value of an error bit value according to the first error bit value and the number of blocks updated in the first holding step;
Performing a second block scan on the block to obtain a plurality of second error bit values of the block; And
And updating the block when the corresponding second error bit value exceeds a first threshold value of the error bit value.
상기 시간 범위를 결정하는 단계는 호스트가 상기 데이터 저장 디바이스에 액세스한 마지막 시간에 따라 상기 시간 범위를 결정하는 단계를 더 포함하는 것인 데이터 유지 방법.11. The method of claim 10,
Wherein the step of determining the time range further comprises determining the time range according to the last time the host accessed the data storage device.
상기 시간 범위를 결정하는 단계는 상기 블록이 소거된 횟수에 따라 상기 시간 범위를 결정하는 단계를 더 포함하는 것인 데이터 유지 방법.
11. The method of claim 10,
Wherein the determining the time range further comprises determining the time range according to the number of times the block has been erased.
Applications Claiming Priority (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US201361862858P | 2013-08-06 | 2013-08-06 | |
US61/862,858 | 2013-08-06 | ||
TW102146530 | 2013-12-17 | ||
TW102146530A TWI490870B (en) | 2013-08-06 | 2013-12-17 | Data storage device and data maintenance method thereof |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20150017301A KR20150017301A (en) | 2015-02-16 |
KR101677532B1 true KR101677532B1 (en) | 2016-11-18 |
Family
ID=53019470
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020140098309A KR101677532B1 (en) | 2013-08-06 | 2014-07-31 | Data storage device and method for restricting access thereof |
Country Status (2)
Country | Link |
---|---|
KR (1) | KR101677532B1 (en) |
TW (1) | TWI490870B (en) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11461025B2 (en) * | 2020-11-05 | 2022-10-04 | Macronix International Co., Ltd. | Data retention in memory devices |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2008310888A (en) | 2007-06-15 | 2008-12-25 | Panasonic Corp | Non-volatile semiconductor storage device |
JP2009251627A (en) | 2008-04-01 | 2009-10-29 | Panasonic Corp | Memory controller, nonvolatile storage device, and nonvolatile storage system |
JP2011100519A (en) | 2009-11-06 | 2011-05-19 | Toshiba Corp | Memory system |
JP2012221025A (en) | 2011-04-05 | 2012-11-12 | Nec Casio Mobile Communications Ltd | Backup notification system for data held by flash memory, and method and program for the same |
Family Cites Families (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7079422B1 (en) * | 2000-04-25 | 2006-07-18 | Samsung Electronics Co., Ltd. | Periodic refresh operations for non-volatile multiple-bit-per-cell memory |
US6396744B1 (en) * | 2000-04-25 | 2002-05-28 | Multi Level Memory Technology | Flash memory with dynamic refresh |
US7089349B2 (en) * | 2003-10-28 | 2006-08-08 | Sandisk Corporation | Internal maintenance schedule request for non-volatile memory system |
US20090327581A1 (en) * | 2008-06-30 | 2009-12-31 | Coulson Richard L | Nand memory |
US7859932B2 (en) * | 2008-12-18 | 2010-12-28 | Sandisk Corporation | Data refresh for non-volatile storage |
CN102369579B (en) * | 2008-12-30 | 2015-01-14 | 美光科技公司 | Temperature alert and low rate refresh for a non-volatile memory |
US8261136B2 (en) * | 2009-06-29 | 2012-09-04 | Sandisk Technologies Inc. | Method and device for selectively refreshing a region of a memory of a data storage device |
JP5549956B2 (en) * | 2009-12-02 | 2014-07-16 | マイクロン テクノロジー, インク. | Refresh architecture and algorithm for non-volatile memory |
US8656086B2 (en) * | 2010-12-08 | 2014-02-18 | Avocent Corporation | System and method for autonomous NAND refresh |
US8650353B2 (en) * | 2011-07-01 | 2014-02-11 | Intel Corporation | Apparatus, system, and method for refreshing non-volatile memory |
US9176800B2 (en) * | 2011-08-31 | 2015-11-03 | Micron Technology, Inc. | Memory refresh methods and apparatuses |
-
2013
- 2013-12-17 TW TW102146530A patent/TWI490870B/en active
-
2014
- 2014-07-31 KR KR1020140098309A patent/KR101677532B1/en active IP Right Grant
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2008310888A (en) | 2007-06-15 | 2008-12-25 | Panasonic Corp | Non-volatile semiconductor storage device |
JP2009251627A (en) | 2008-04-01 | 2009-10-29 | Panasonic Corp | Memory controller, nonvolatile storage device, and nonvolatile storage system |
JP2011100519A (en) | 2009-11-06 | 2011-05-19 | Toshiba Corp | Memory system |
JP2012221025A (en) | 2011-04-05 | 2012-11-12 | Nec Casio Mobile Communications Ltd | Backup notification system for data held by flash memory, and method and program for the same |
Also Published As
Publication number | Publication date |
---|---|
TWI490870B (en) | 2015-07-01 |
TW201506939A (en) | 2015-02-16 |
KR20150017301A (en) | 2015-02-16 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9368226B2 (en) | Data storage device and method for restricting access thereof | |
US20150178001A1 (en) | Data Storage Device and Data Maintenance Method Thereof | |
US10061512B2 (en) | Data storage device and data writing method thereof | |
KR101594124B1 (en) | Non-volatile ram solid state dirve including the same and computer system including the same | |
US9922706B2 (en) | Solid state storage device using state prediction method | |
US20180096728A1 (en) | Data Storage Device and Voltage Protection Method Thereof | |
CN104572489B (en) | Wear leveling method and device | |
US10042754B2 (en) | User device including a nonvolatile memory device and a data write method thereof | |
US9563249B2 (en) | Data storage device and power-interruption detection method | |
US8775874B2 (en) | Data protection method, and memory controller and memory storage device using the same | |
US20150046637A1 (en) | Data storage device and method for restricting access thereof | |
KR102508868B1 (en) | Refresh management for flash memory | |
US9514848B2 (en) | Solid state drive and associated error check and correction method | |
US20140215130A1 (en) | Clock switching method, memory controller and memory storage apparatus | |
US20180101303A1 (en) | Data Storage Device and Data Writing Method Thereof | |
US10545810B2 (en) | Method and apparatus for monitoring non-volatile memory read errors using background media scan | |
KR101991437B1 (en) | Semiconductor memory device and Operating method thereof | |
JP2010067098A (en) | Information processor, information processing method, and information processing program | |
KR101677532B1 (en) | Data storage device and method for restricting access thereof | |
CN113539345A (en) | Adjusting trim settings to improve memory performance or reliability | |
KR101595557B1 (en) | Data storage device and voltage protection method thereof | |
US10199107B2 (en) | Data storage device and data refresh method thereof | |
CN106611619B (en) | Data storage device and detection method of flash memory | |
JP6267497B2 (en) | Semiconductor memory control device and unstable memory region detection method | |
KR20150045642A (en) | Semiconductor device and operating method thereof |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A201 | Request for examination | ||
AMND | Amendment | ||
E90F | Notification of reason for final refusal | ||
AMND | Amendment | ||
E601 | Decision to refuse application | ||
AMND | Amendment | ||
X701 | Decision to grant (after re-examination) | ||
GRNT | Written decision to grant | ||
FPAY | Annual fee payment |
Payment date: 20190918 Year of fee payment: 4 |