[go: up one dir, main page]
More Web Proxy on the site http://driver.im/

KR100914646B1 - 멀티-플레인 구조의 플래시 메모리 관리 방법 - Google Patents

멀티-플레인 구조의 플래시 메모리 관리 방법 Download PDF

Info

Publication number
KR100914646B1
KR100914646B1 KR1020020052349A KR20020052349A KR100914646B1 KR 100914646 B1 KR100914646 B1 KR 100914646B1 KR 1020020052349 A KR1020020052349 A KR 1020020052349A KR 20020052349 A KR20020052349 A KR 20020052349A KR 100914646 B1 KR100914646 B1 KR 100914646B1
Authority
KR
South Korea
Prior art keywords
physical
group
flash memory
page
page group
Prior art date
Legal status (The legal status 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 status listed.)
Expired - Fee Related
Application number
KR1020020052349A
Other languages
English (en)
Other versions
KR20020092261A (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 지인정보기술 주식회사
Priority to KR1020020052349A priority Critical patent/KR100914646B1/ko
Publication of KR20020092261A publication Critical patent/KR20020092261A/ko
Application granted granted Critical
Publication of KR100914646B1 publication Critical patent/KR100914646B1/ko
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/0223User address space allocation, e.g. contiguous or non contiguous base addressing
    • G06F12/023Free address space management
    • G06F12/0238Memory management in non-volatile memory, e.g. resistive RAM or ferroelectric memory
    • G06F12/0246Memory management in non-volatile memory, e.g. resistive RAM or ferroelectric memory in block erasable memory, e.g. flash memory
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2212/00Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
    • G06F2212/72Details relating to flash memory management
    • G06F2212/7201Logical to physical mapping or translation of blocks or pages

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Memory System (AREA)
  • Read Only Memory (AREA)

Abstract

본 발명은 멀티-플레인 구조를 가진 플래시 메모리의 플래시 변환 계층의 설계 방법에 관한 것이다. 본 발명에 따른 플래시 변환 계층에 서는, 각각의 플레인이 복수 개의 물리블록을 포함하는 복수 개의 플레인이 제공되고, 복수 개의 플레인 각각에서 하나씩 선택된 물리블록을 포함하는 물리블록그룹이 제공된다. 또한, 물리블록은 복수 개의 물리페이지를 포함하고, 동일한 물리블록그룹에 포함된 물리블록들 각각에서 하나씩 선택된 물리페이지를 포함하는 물리페이지그룹이 제공된다. 각 물리블록그룹은 동시에 전기적 소거가 가능하고, 각 물리페이지그룹은 동시에 기록 또는 판독이 가능하다.
멀티-플레인, 물리블록그룹, 물리페이지그룹, 사상 테이블, 쓰기블록그룹

Description

멀티-플레인 구조의 플래시 메모리 관리 방법 {Management Scheme for Flash Memory with the Multi-Plane Architecture}
도 1은 종래 기술에 따른 플래시 메모리의 구조를 도시한 도면.
도 2는 종래 기술에 따른 플래시 메모리의 물리페이지 구조를 도시한 도면.
도 3은 멀티-플레인 구조의 플래시 메모리의 구성도.
도 4는 본 발명의 실시예에 따른 플래시 메모리의 구조를 도시한 도면.
도 5는 본 발명의 실시예에 따른 물리페이지의 구조를 도시한 도면.
도 6은 본 발명의 실시예에 따른 사상 테이블을 도시한 도면.
도 7은 본 발명의 실시예에 따라, 플래시 메모리의 쓰기 연산에 관한 동작을 나타내는 흐름도.
도 8은 본 발명의 실시예에 따라, 페이지그룹버퍼의 내용을 플래시 메모리에 기록하는 방법을 보다 상세히 도시한 흐름도.
도 9는 본 발명의 실시예에 따라, 플래시 메모리의 읽기 연산에 관한 동작을 나타내는 흐름도.
<도면의 주요부분에 대한 부호의 설명>
41 : 물리블록그룹
42 : 물리페이지그룹
43 : 마스터블록그룹
44 : 사상영역
45 : 데이터영역
본 발명은 NAND형 플래시 메모리(NAND-type Flash Memory)를 위한 플래시 변환 계층(Flash Translation Layer)의 설계 방법에 관한 것으로, 특히 멀티-플레인 구조를 갖춘 NAND형 플래시 메모리의 특성에 최적화된 플래시 변환 계층의 설계 방법에 관한 것이다.
플래시 메모리는 전기적으로 데이터의 소거와 프로그램이 가능한 고집적 비휘발성 메모리로서, 데이터의 기록 및 삭제가 자유로운 램(RAM)의 장점과 전원의 공급 없이도 저장된 데이터를 보존하는 롬(ROM)의 장점을 동시에 지니고 있어 최근 디지털 카메라, PDA, MP3 플레이어 등 휴대용 전자기기의 저장매체로 널리 채택되고 있다.
그러나, 기존의 다른 저장매체와는 달리, 플래시 메모리에서는 이전에 기록된 데이터를 변경하기 위해 전기적 소거 및 재기록 과정이 필요하다. 즉, 초기 상태에 플래시 메모리의 각 셀(cell)은 1의 값을 가지는데, 소정의 위치에 데이터를 기록하기 위해 한 셀의 값을 1에서 0으로 전환하는 것은 가능하나, 이를 0에서 1로 복구하는 것은 불가능하다. 따라서, 소정의 위치에 기록된 데이터의 내용을 변경하기 위해서는 해당 위치를 포함하는 일정량의 메모리 블록을 전기적 소거를 통해 1로 재초기화 한 후 변경된 내용을 재기록해야 한다.
플래시 변환 계층(Flash Translation Layer)은, 상기와 같은 특성을 지닌 플래시 메모리를 하드 디스크와 같은 블록 디바이스로 사용할 수 있도록 중재하는 소프트웨어이다. 플래시 변환 계층은 가상의 블록 디바이스 상의 논리적인 위치와 플래시 메모리 상의 물리적인 위치 간의 사상(mapping)정보를 유지하면서, 소정의 논리적인 위치에 대해 쓰기/읽기 연산이 요청되면, 상기 사상정보를 이용하여 논리적인 위치를 물리적인 위치로 변환하는 역할을 수행한다. 특히, 논리적인 위치에 대해 데이터를 변경하는 쓰기 연산이 요청되는 경우, 논리적인 위치에 대응하는 물리적인 위치를 전기적으로 소거한 후 재기록하거나 또는 논리적인 위치를 다른 물리적인 위치로 재사상하는 역할을 수행한다.
전형적인 NAND형 플래시 메모리의 구조를 도 1에 도시하였다. 도 1에 도시된 바와 같이, 플래시 메모리는 복수 개의 일정 크기의 물리블록(11)으로 분할된다. 각 물리블록(11)은 고유의 물리블록번호 (0,1,2, ..., n-1)를 가지고 있어 개별적으로 지정 가능하며 전기적 소거의 단위로 사용된다. 또한, 각 물리블록(11)은 복수 개의 일정 크기의 물리페이지(12)로 분할된다. 각 물리페이지(12)는 소속된 물리블록(11)의 오프셋으로 접근 가능하며 기록과 판독의 단위로 사용된다. 물리블록의 크기와 물리페이지의 크기는 NAND형 플래시 제품마다 다르게 정해질 수 있는데, 일례로 전체 용량이 16 Mbytes이면서 블록의 크기가 16 Kbytes이고 페이지 의 크기가 512 bytes인 플래시 메모리는 1,024개의 물리블록으로 구성되며 각 물리블록은 32개의 물리페이지로 구성된다.
그런데, 종래의 기술에서는 플래시 메모리의 모든 물리블록들이 단일 메모리 플레인 상에 배치되었다. 이러한 단일-플레인 구조의 플래시 메모리에서는, 전기적 소거의 경우에는 한번에 한 물리블록에 대해서만, 기록과 판독의 경우에는 한번에 한 물리페이지에 대해서만 명령의 수행이 가능하였다.
상기와 같은 단일-플레인 구조를 갖춘 플래시 메모리를 위해, 미국 특허 제 5,602,987호에는 샌디스크 코오퍼레이션(SanDisk Co.) 사에 의해 제안된 플래시 변환 계층이 개시되어 있다. 도 2는 상기의 특허에 개시된 플래시 메모리의 물리페이지(12)의 구조를 도시한 것으로서, 데이터(21) 및 상기 데이터(21)와 연관된 부가정보(22)가 동일한 물리페이지 내에 저장되도록 설계되었다. 그 이유는 종래의 기술에 따른 플래시 메모리의 구조에서는 기록과 판독이 단일 물리페이지에 대해서만 수행되므로, 데이터(21)와 부가정보(22)를 동일한 물리페이지 내에 위치하게 하여 한번의 명령으로 기록 또는 판독하는 것이 효율적이기 때문이다.
또한, 미국 특허 제 5,937,425호에는 엠-시스템스 플래시 디스크 파이오니어스 리미티드(M-Systems Flash Disk Pioneers Ltd.) 사에 의해 제안된 플래시 변환 계층이 개시되어 있다. 상기의 특허에 개시된 플래시 변환 계층에서는 가상의 블록 디바이스 상의 한 섹터를 플래시 메모리 상의 한 물리페이지에 기록하기 위해, (a) 상기 섹터를 포함하는 논리블록을 배치시키는 단계; (b) 상기 논리블록에 대응하는 물리블록의 기록 가능한 물리페이지를 배치시키는 단계; (c) 상기 섹터의 내 용을 상기 기록 가능한 물리페이지에 기록하는 단계를 포함하는 방법을 제공하였다.
그러나, 상기와 같은 플래시 변환 계층들은 단일-플레인 구조가 지원하는 단일 명령 수행 기능을 기반으로 하여 설계된 것으로, 멀티-플레인 구조를 갖춘 플래시 메모리에 적용될 경우 최적화된 성능을 발휘하지 못하는 문제점이 있었다.
멀티-플레인 구조의 플래시 메모리에서는 물리블록들이 하나 이상의 메모리 플레인 상에 분산 배치되고, 서로 다른 플레인 상에 위치한 물리블록들 또는 물리페이지들에 대해 동시에 명령의 수행이 가능하다. 따라서, 멀티-플레인 구조가 지원하는 동시 명령 수행 기능을 활용하여 최적의 성능을 발휘할 수 있도록 설계된 새로운 플래시 변환 계층이 요구된다.
상기의 문제점을 해결하기 위해 본 발명의 목적은 멀티-플레인 구조를 갖춘 플래시 메모리에 최적화된 플래시 변환 계층을 제공하는 것이다.
본 발명의 목적은 동시에 복수 개의 물리블록에 대해 전기적 소거 명령을 수행하고, 동시에 복수 개의 물리페이지에 대해 기록/판독 명령을 수행함으로써, 향상된 메모리 대역폭을 최대한 이용하는 플래시 메모리 관리 방법을 제공하는 것이다.
본 발명의 목적은 동시에 기록 또는 판독이 가능한 복수 개의 물리페이지들을 그룹화한 단위로 사상을 수행함으로써, 기록과 판독을 효과적으로 수행함과 동시에 사상에 필요한 공간 오버헤드를 최소화하는 플래시 메모리 관리 방법을 제공 하는 것이다.
본 발명의 목적은 데이터 및 상기 데이터와 연관된 부가정보가 반드시 동일한 물리페이지 내에 저장되어야 한다는 제약을 극복하면서도 성능의 저하 없이 플래시 메모리 쓰기/읽기 연산을 구현하는 플래시 메모리 관리 방법을 제공하는 것이다.
본 발명의 목적은 사상 테이블의 갱신을 소정의 시점에 한꺼번에 수행함으로써, 불필요한 플래시 메모리의 접근을 최소화하는 플래시 메모리 관리 방법을 제공하는 것이다.
본 발명의 목적은 물리블록의 전기적 소거를 소정의 시점에 한꺼번에 수행함으로써, 불필요한 플래시 메모리의 접근을 최소화하는 플래시 메모리 관리 방법을 제공하는 것이다.
본 발명의 일면에 따르면, 멀티-플레인 구조를 갖춘 플래시 메모리의 구성 방법에 있어서, 각각의 플레인이 복수 개의 물리블록을 포함하는 복수 개의 플레인을 제공하는 단계; 및 상기 복수 개의 플레인 각각에서 하나씩 선택된 물리블록들을 포함하는 물리블록그룹을 제공하는 단계를 포함하는 플래시 메모리의 구성 방법이 제공된다.
이하, 첨부된 도면을 참조하여 본 발명의 바람직한 실시예에 따른 플래시 변환 계층에 대하여 상세히 설명한다.
도 3은 멀티-플레인 구조를 갖춘 NAND형 플래시 메모리의 일반적인 구조를 도시한 것이다. 도 3에서 보는 바와 같이, n개의 메모리 플레인 상에 플래시 메모리의 물리블록들이 균등하게 분산 배치되어 있고, 각 물리블록은 복수 개의 물리페이지를 포함하고 있다. 각 플레인마다 별도의 페이지 레지스터(page register)가 구비되어 있어서, 각 플레인으로부터 하나씩의 물리블록 또는 물리페이지를 선택하여 최대 n개의 물리블록 또는 물리페이지에 대해 동시에 전기적 소거 또는 기록/판독 명령을 수행할 수 있다.
도 3은 4개의 플레인 상에 4,096개의 물리블록이 위치하고, 각 물리블록은 32개의 물리페이지를 포함하는 플래시 메모리의 실시예를 도시하고 있으나, 본 발명은 멀티-플레인 구조를 갖춘 여하한 구성의 NAND형 플래시 메모리에도 적용될 수 있음이 명백하다. 이하, 도 3에 도시한 실시예를 기반으로 하여 본 발명을 설명한다.
도 4는 본 발명의 바람직한 실시예에 따른 플래시 메모리의 구조를 도시한 것이다. 도 4에서 보는 바와 같이, 본 발명의 실시예에서는 플래시 메모리 상에 복수 개의 물리블록그룹(BG; Block Group)(41)을 설정한다. “물리블록그룹”이라 함은 전기적 소거가 동시에 가능한 물리블록들의 집합을 의미하는 것으로, 물리블록그룹번호에 의해 개별적으로 지정될 수 있다. 4개의 플레인으로 구성된 플래시 메모리가 4,096개의 물리블록으로 분할되어 있는 경우, 하나의 물리블록그룹(41)은 각각 다른 플레인 상에 위치한 4개의 물리블록으로 구성되며, 물리블록그룹 0번부터 물리블록그룹 1,023번까지 총 1,024개의 물리블록그룹이 형성된다.
또한, 본 발명의 실시예에서는 각 물리블록그룹(41) 내에 복수 개의 물리페 이지그룹(42)을 설정한다. “물리페이지그룹”이라 함은 동시에 기록 또는 판독이 가능한 물리페이지들의 집합을 의미하는 것으로, 물리페이지그룹번호에 의해 개별적으로 지정될 수 있다. 4개의 플레인으로 구성된 플래시 메모리 상에 1,024개의 물리블록그룹이 설정되어 있으며 각 물리블록그룹 내에 32개의 물리페이지그룹이 설정되어 있는 경우, 한 물리페이지그룹(42)은 각각 다른 플레인 상에 위치한 4개의 물리페이지로 구성되며, 물리페이지그룹 0번부터 물리페이지그룹 32,767번까지 총 32,768개의 물리페이지그룹이 형성된다.
도 4에 도시한 멀티-플레인 구조 상에서, 본 발명에 따른 플래시 메모리는 마스터 블록그룹(43); 사상 영역(44); 데이터 영역(45)으로 구성된다.
마스터 블록그룹(43)은 물리블록그룹 0번에 위치하며, 사상 영역(44)과 데이터 영역(45)의 위치와 크기를 지정하는 테이블을 가지고 있다. 본 발명에 따른 일실시예로서, 불량 블록(bad block)이 존재하는 경우 불량 블록에 대한 정보를 마스터 블록그룹(43)에 기록하여 적절히 배제하는 기능을 구현할 수 있다.
사상 영역(44)은 물리블록그룹 1번부터 위치하고 그 크기는 플래시 메모리의 용량에 의해 결정된다. 사상 영역(44)은 가상의 블록 디바이스 상의 논리적인 위치와 플래시 메모리 상의 물리적인 위치 간의 사상정보를 기록하는 사상 테이블을 가지고 있다. 플래시 메모리가 n개의 플레인으로 구성되는 경우, 상기 가상의 블록 디바이스 상의 논리적인 위치는 연속된 섹터를 n개씩 그룹화한 각 논리페이지그룹이 되고, 상기 플래시 메모리 상의 물리적인 위치는 물리페이지를 n개씩 그룹화한 각 물리페이지그룹이 된다. 상기 논리페이지그룹은 임의의 물리페이지그룹에 동적으로 대응될 수 있다.
도 5는 본 발명의 바람직한 실시예에 따른 물리페이지그룹(42)의 구조를 도시한 것이다. 도 5에 도시된 바와 같이, 한 물리페이지그룹(42) 내에는 각 물리페이지마다 데이터와 부가정보가 저장되는데, 본 발명에 따른 플래시 메모리의 구조에서는 종래의 단일-플레인 구조의 플래시 메모리와 달리, 데이터 및 상기 데이터와 연관된 부가정보가 반드시 동일한 물리페이지 내에 저장되어야 한다는 제약을 받지 않는다. 왜냐하면, 멀티-플레인 구조에서는 기록 또는 판독이 한 물리페이지그룹에 속한 물리페이지들에 대해 동시에 가능하므로, 데이터와 부가정보가 동일한 물리페이지그룹 내에 저장되기만 하면 되기 때문이다. 즉, 플레인 0번에 위치한 데이터(51)와 연관된 부가정보는 플레인 0번의 부가정보(52), 플레인 1번의 부가정보(53), 플레인 2번의 부가정보(54), 또는 플레인 3번의 부가정보(55) 중 어느 하나에 선택적으로 저장될 수 있다.
도 6은 사상 테이블의 일례를 도시한 것으로, 도 6에서 보는 바와 같이, 사상 테이블은 각 논리페이지그룹이 어떤 물리페이지그룹에 대응되는지를 나타낸다. 사상 테이블의 각 엔트리는 논리페이지그룹번호로 색인되며, -1 또는 대응되는 물리페이지그룹번호를 가지고 있다. 논리페이지그룹 내의 각 섹터는 대응되는 물리페이지그룹 내의 플레인 0번에 위치한 물리페이지부터 차례대로 대응된다.
사상 테이블을 검색함으로써 논리페이지그룹번호(0,1,2,3,...)를 물리페이지그룹번호(P0,P1,P2,P3, ...)로 변환하는 것 이외에도, 미사용 중인 물리페이지그룹과 미사용 중인 물리블록그룹을 검출할 수 있다.
도 4에서의 데이터 영역(45)은 사상 영역(44)에 연이은 물리블록그룹부터 위치하고 그 크기는 플래시 메모리의 용량에 의해 결정된다. 데이터 영역의 각 물리페이지그룹은 미사용 중이거나 또는 대응하는 논리페이지그룹의 내용을 가지고 있다.
“쓰기블록그룹(WBG; Writing Block Group)”이라 함은 현재 기록이 진행 중인 물리블록그룹을 의미하는 것으로, 초기 상태에서 쓰기블록그룹은 데이터 영역(45)의 첫 번째 물리블록그룹으로 지정된다. 이 때, 첫 번째 기록 명령이 요청되면, 쓰기블록그룹의 첫 번째 물리페이지그룹을 배치시키고, 첫 번째 물리페이지그룹에 속한 물리페이지들에 대해 동시에 기록 명령을 수행한다. 또한, 두 번째 기록 명령이 요청되면, 상기 쓰기블록그룹의 두 번째 물리페이지그룹을 배치시키고, 두 번째 물리페이지그룹에 속한 물리페이지들에 대해 동시에 기록 명령을 수행한다. 상기와 같은 방법으로, 일련의 기록 명령들에 대해 상기 쓰기블록그룹 내의 최초의 미사용 중인 물리페이지그룹을 차례대로 배치시킨다. 여러 번의 기록 명령을 수행하여 상기 쓰기블록그룹에 더 이상의 미사용 중인 물리페이지그룹이 없으면, 임의의 미사용 중인 물리블록그룹을 새로운 쓰기블록그룹으로 선정하고, 상기 새로운 쓰기블록그룹에 속한 물리블록들을 동시에 전기적으로 소거한다. 다음에 요청되는 기록 명령에 대해서는 상기 새로운 쓰기블록그룹의 첫 번째 물리페이지그룹을 배치시킨다.
일실시예로서, 상기 쓰기블록그룹에 더 이상의 미사용 중인 물리페이지그룹 이 없으면, 상기 쓰기블록그룹에 기록된 모든 논리페이지그룹들에 대해 상기 쓰기블록그룹 내의 해당 물리페이지그룹에 대응되도록 한꺼번에 사상 테이블을 갱신하는 단계를 포함할 수 있다.
또 다른 실시예로서, 미사용 중인 물리블록그룹의 개수가 소정의 임계치에 도달하면, 사용 중인 물리블록그룹 중에서 유효한 물리페이지그룹을 가장 적게 포함하는 물리블록그룹을 선정하고, 상기 물리블록그룹으로부터 유효한 물리페이지그룹들만 상기 새로운 쓰기블록그룹으로 이동시키고, 상기 물리블록그룹을 미사용 중인 물리블록그룹으로 회수하는 단계를 더 포함할 수 있다. 이 때, 상기 회수된 물리블록그룹에 대한 전기적 소거는 즉시 수행하지 않으며, 상기 회수된 물리블록그룹이 새로운 쓰기블록그룹으로 선정되는 시점에 수행한다.
이하, 본 발명에 따른 플래시 메모리의 동작을 도 7, 도 8, 도 9를 참조하여 설명한다. “페이지그룹버퍼”는 RAM 상에 위치하는 한 페이지그룹 크기의 버퍼를 의미하는 것으로, 일련의 섹터들에 대해 플래시 메모리 쓰기가 요청되면 동일한 논리페이지그룹에 속한 섹터들을 합하여 동시에 기록 명령을 수행하기 위해 사용된다.
도 7은 플래시 메모리의 쓰기 연산에 관한 동작을 나타내는 흐름도이다. 이하, 도 7을 참조하여, 각 단계별로 수행되는 과정들을 상세히 설명하기로 한다.
처음의 단계(101)에서는 일련의 섹터들에 대해 플래시 메모리 쓰기 요청을 수신한다. 상기 쓰기 요청에 응답하여, 단계(102)에서는 각 섹터 s에 대해, 섹터 s를 포함하는 논리페이지그룹을 결정한다. 논리페이지그룹의 결정을 위하여, 섹터 s의 섹터번호에 대한 간단한 연산으로 소속된 논리페이지그룹번호를 산출할 수 있다. 단계(103)에서는 상기 결정된 논리페이지그룹번호가 상기 페이지그룹버퍼에 이미 저장되어 있던 섹터들이 속한 논리페이지그룹번호와 동일한지 여부를 판단하게 된다. 판단 결과, 동일하지 않을 경우, 단계(104)에서는 기저장되어 있던 페이지그룹버퍼의 내용을 플래시 메모리에 기록하고 페이지그룹버퍼를 비운 뒤 단계(105)로 진행하게 된다. 단계(105)에서는 섹터 s의 내용을 페이지그룹버퍼 내의 해당 오프셋에 저장한다. 또한, 단계(103)에서 이미 페이지그룹버퍼가 비어 있는 경우에도 단계(105)가 바로 수행된다. 단계(106)에서는 쓰기 연산을 수행할 섹터가 더 남아 있는지를 판단한다. 만약, 더 남아 있으면 단계(102)로 되돌아가서 다음 섹터에 대해 기록 과정을 되풀이하고, 그렇지 않으면 단계(107)로 진행한다. 단계(107)에서는 상기 페이지그룹버퍼의 내용을 최종적으로 플래시 메모리에 기록하고 나서 쓰기 연산을 종료한다.
도 8은 도 7의 단계(104)와 단계(107)에서 페이지그룹버퍼의 내용을 플래시 메모리에 기록하는 방법을 보다 상세히 도시한 흐름도이다. 먼저, 단계(201)에서는 쓰기블록그룹(WBG) 내의 최초의 미사용 중인 물리페이지그룹을 배치시키고, 페이지그룹버퍼의 내용을 물리페이지그룹에 속한 물리페이지들에 동시에 기록한다. 이어서, 단계(202)에서는 현재의 WBG가 가득 찼는지를 판단하고, 만약 쓰기블록그룹에 미사용 중인 물리페이지그룹이 더 이상 없으면 단계(203)로 진행하고, 그렇지 않으면 플래시 메모리 기록을 종료하고 도 7의 쓰기 연산으로 복귀한다. 다음으로 단계(203)에서는, 쓰기블록그룹에 기록된 모든 논리페이지그룹들에 대해 상기 쓰기 블록그룹 내의 해당 물리페이지그룹에 대응되도록 한꺼번에 사상 테이블을 갱신한다. 단계(204)에서는 임의의 미사용 중인 물리블록그룹(BG)을 새로운 쓰기블록그룹으로 선정하고, 상기 새로운 쓰기블록그룹에 속한 물리블록들을 동시에 전기적으로 소거한다. 상기 임의의 미사용 중인 물리블록그룹은 사상 테이블을 검색함으로써 검출할 수 있다.
앞서 설명한 또 다른 실시예로서, 단계(205)에서는 미사용 중인 물리블록그룹의 개수가 소정의 임계치(threshold)에 도달했으면 단계(206)로 진행하고, 그렇지 않으면 플래시 메모리 기록을 종료하고 도 7의 쓰기 연산으로 복귀한다. 단계(206)에서는 사용 중인 물리블록그룹 중에서 유효한 물리페이지그룹을 가장 적게 포함하는 물리블록그룹을 선정한다. 상기 유효한 물리페이지그룹을 가장 적게 포함하는 물리블록그룹은 사상 테이블을 검색함으로써 검출할 수 있다. 단계(207)에서 상기 선정된 물리블록그룹으로부터 유효한 물리페이지그룹들만 상기 새로운 쓰기블록그룹으로 이동시키고, 상기 선정된 물리블록그룹을 미사용 중인 물리블록그룹으로 회수한다. 그리고 나서, 플래시 메모리 기록을 종료하고 도 7의 쓰기 연산으로 복귀한다.
도 9는 플래시 메모리의 읽기 연산에 관한 동작을 나타내는 흐름도이다. 이하, 도 9를 참조하여, 각 단계별로 수행되는 과정들을 상세히 설명하기로 한다.
먼저, 단계(301)에서는 일련의 섹터들에 대해 플래시 메모리 읽기 요청을 수신한다. 이어서, 단계(302)에서는 각 섹터 s에 대해, 섹터 s를 포함하는 논리페이지그룹을 결정한다. 이 단계에서는 섹터 s의 섹터번호에 대한 간단한 연산으로 소 속된 논리페이지그룹번호를 산출할 수 있다. 단계(303)에서는 일차적으로 쓰기블록그룹(WBG)에서 상기 논리페이지그룹에 대응되는 물리페이지그룹을 검색한다. 검색 결과, 대응되는 물리페이지그룹이 존재하는 경우에는 단계(305)에서 해당 물리페이지를 판독하고, 만약 물리페이지그룹이 존재하지 않는 경우에는 사상 테이블에서 상기 논리페이지그룹에 대응되는 물리페이지그룹을 검색하는 단계(304)를 추가로 거치게 된다. 단계(305)에서는 상기 물리페이지그룹에서 섹터 s에 해당하는 물리페이지의 데이터와 상기 데이터와 연관된 부가정보를 동시에 판독한다. 마지막으로, 단계(306)에서는 읽기 연산을 수행할 섹터가 더 남아 있는지를 판단하여, 만약 더 남아 있으면 단계(302)로 되돌아가서 다음 섹터에 대하여 판독 과정을 되풀이하고, 그렇지 않으면 읽기 연산을 종료한다.
한편, 본 발명의 상세한 설명에서는 구체적인 실시예에 관하여 설명하였으나, 본 발명의 범위에서 벗어나지 않는 한도 내에서는 여러 가지 변형이 가능함은 물론이다. 예컨대, 본 발명이 속하는 기술분야의 당업자는, 본 발명의 실시예가 페이지그룹 단위로 사상을 수행하는 것에 국한되지 않고, 2개 이상의 페이지그룹을 그룹화하여 사상을 수행함으로써 사상 테이블의 크기를 축소하는 것에도 적용 가능함을 쉽게 알 수 있을 것이다. 또한, 본 발명에서는 NAND형 플래시 메모리에 대한 실시예를 기술하고 있지만, 멀티-플레인 구조를 가지는 다른 종류의 플래시 메모리에도 본 발명의 원리를 적용할 수 있을 것이다.
그러므로, 본 발명의 범위는 설명된 실시예에 국한되어 정해져서는 안되며, 후술하는 특허청구의 범위뿐 아니라 이 특허청구의 범위와 균등한 것들에 의해 정 해져야 한다.
상술한 바와 같이, 본 발명에 따르면 플래시 메모리가 n개의 플레인으로 구성되어 있는 경우 최대 n개의 물리블록 또는 물리페이지에 대해 동시에 명령을 수행하는 기능을 활용함으로써 최대 n배의 성능이 향상된 플래시 변환 계층을 구현할 수 있다.
또한, 본 발명에 따르면 데이터 및 상기 데이터와 연관된 부가정보가 반드시 동일한 물리페이지 내에 저장되어야 한다는 제약을 극복하면서도 성능의 저하 없이 플래시 메모리 쓰기/읽기 연산을 구현할 수 있다.
또한, 본 발명에 따르면 사상 테이블의 갱신은 한 물리페이지그룹의 기록이 수행될 때마다 매번 수행되지 않으며, 쓰기블록그룹 내의 모든 물리페이지그룹들의 기록이 완료되는 시점에 상기 쓰기블록그룹에 기록된 모든 논리페이지그룹들에 대해 한꺼번에 수행됨으로써, 불필요한 플래시 메모리의 접근을 최소화할 수 있는 효과를 얻을 수 있다.
마지막으로, 본 발명에 따르면 미사용 중으로 회수된 물리블록그룹에 대한 전기적 소거는 즉시 수행되지 않으며, 상기 회수된 물리블록그룹이 새로운 쓰기블록그룹으로 선정되는 시점에 수행된다. 따라서, 이것 역시 불필요한 플래시 메모리의 접근을 최소화할 수 있게 된다.

Claims (20)

  1. 멀티-플레인 구조를 갖춘 플래시 메모리의 구성 방법에 있어서,
    각각의 플레인이 복수 개의 물리블록을 포함하는 복수 개의 플레인을 제공하는 단계;
    상기 복수 개의 플레인 각각에서 하나씩 선택된 물리블록들을 포함하는 물리블록그룹을 제공하는 단계;
    상기 물리블록그룹에 포함된 상기 물리블록들 각각이 복수 개의 물리페이지를 포함하고, 상기 물리블록그룹에 포함된 상기 물리블록들 각각에서 하나씩 선택된 물리페이지들을 포함하는 물리페이지그룹을 제공하는 단계;
    복수 개의 논리페이지그룹을 제공하는 단계; 및
    상기 물리페이지그룹과 상기 논리페이지그룹 간의 사상정보를 포함하는 사상 테이블을 제공하는 단계
    를 포함하는 플래시 메모리의 구성 방법.
  2. 제1항에 있어서, 각각의 물리블록그룹에 포함된 상기 물리블록들은 동시에 전기적으로 소거가 가능한 플래시 메모리의 구성 방법.
  3. 삭제
  4. 제1항에 있어서, 상기 각각의 물리페이지는 데이터와 부가정보를 포함하고, 상기 데이터에 연관된 상기 부가정보는 상기 물리페이지가 위치하는 물리페이지그룹에 포함된 임의의 물리페이지에 저장되는 플래시 메모리 구성 방법.
  5. 제1항에 있어서, 상기 물리페이지그룹에 포함된 상기 물리페이지들은 동시에 판독이 가능한 플래시 메모리의 구성 방법.
  6. 제1항에 있어서, 상기 물리페이지그룹에 포함된 상기 물리페이지들은 동시에 기록이 가능한 플래시 메모리의 구성 방법.
  7. 기록 데이터를 플래시 메모리에 기록하는 방법에 있어서,
    램(RAM: Random Access Memory)에 페이지그룹버퍼를 제공하는 단계;
    상기 기록 데이터에 대응하는 논리페이지그룹번호를 결정하는 단계;
    상기 결정된 논리페이지그룹 번호가 상기 페이지그룹버퍼에 저장된 저장 데이터에 대응하는 논리페이지그룹번호와 동일하지 않으면, 상기 저장 데이터를 상기 플래시 메모리에 기록하고 상기 기록 데이터를 상기 페이지그룹버퍼에 저장하는 단계; 및
    상기 결정된 논리페이지그룹번호가 페이지그룹버퍼에 저장된 데이터에 대응하는 논리페이지그룹번호와 동일하거나 상기 페이지그룹버퍼가 비어 있으면, 상기 기록 데이터를 상기 페이지그룹버퍼에 저장하는 단계
    를 포함하는 플래시 메모리 기록 방법.
  8. 데이터를 플래시 메모리에 기록하는 방법에 있어서,
    상기 플래시 메모리는 복수 개의 물리블록그룹으로 분할되고, 상기 물리블록그룹은 복수 개의 물리블록으로 구성되고, 상기 물리블록그룹은 복수 개의 물리페이지그룹으로 분할되고, 상기 물리페이지그룹은 복수 개의 물리페이지로 구성되며, 상기 물리페이지그룹의 사상정보를 포함하는 사상 테이블을 포함하고,
    램(RAM:Random Access Memory)에 페이지그룹버퍼를 제공하는 단계;
    상기 데이터를 상기 페이지그룹버퍼에 저장하는 단계; 및
    상기 페이지그룹버퍼에 저장된 상기 데이터를 상기 플래시 메모리에 기록하는 단계를 포함하고,
    상기 페이지그룹버퍼에 저장된 상기 데이터를 상기 플래시 메모리에 기록하는 단계는,
    소정의 물리블록그룹인 쓰기블록그룹을 선정하는 단계;
    상기 쓰기블록그룹 내의 최초의 미사용 중인 물리페이지그룹을 배치시키고, 상기 페이지그룹버퍼의 내용을 상기 물리페이지그룹에 속한 물리페이지들에 기록하는 단계;
    상기 쓰기블록그룹에 기록된 모든 논리페이지그룹들에 대해 상기 쓰기블록그룹 내의 해당 물리페이지그룹에 대응되도록 사상 테이블을 갱신하는 단계; 및
    임의의 미사용 중인 물리블록그룹을 새로운 쓰기블록그룹으로 선정하고, 상기 새로운 쓰기블록그룹에 속한 물리블록들을 동시에 전기적으로 소거하는 단계
    를 포함하는 플래시 메모리 기록 방법.
  9. 제8항에 있어서, 미사용 중인 물리블록그룹의 개수가 소정의 임계치에 도달하면, 사용 중인 물리블록그룹 중에서 유효한 물리페이지그룹을 가장 적게 포함하는 물리블록그룹을 선정하고, 상기 선정된 물리블록그룹으로부터 유효한 물리페이지그룹들만 상기 새로운 쓰기블록그룹으로 이동시키고, 상기 선정된 물리블록그룹을 미사용 중인 물리블록그룹으로 회수하는 단계
    를 더 포함하는 플래시 메모리 기록 방법.
  10. 제8항에 있어서, 상기 쓰기블록그룹에 미사용 중인 물리페이지그룹이 더 남아 있거나 또는 미사용 중인 물리블록그룹의 개수가 소정의 임계치에 미달되면, 상기 페이지그룹버퍼의 내용을 상기 플래시 메모리에 기록하는 단계를 종료하는 플래시 메모리 기록 방법.
  11. 제8항에 있어서, 상기 사상 영역의 갱신은, 상기 쓰기블록그룹 내의 모든 물리페이지그룹들의 기록이 완료되는 시점에 상기 쓰기블록그룹에 기록된 모든 논리페이지그룹들에 대해 한꺼번에 수행되는 플래시 메모리 기록 방법.
  12. 제8항에 있어서, 상기 미사용 중으로 회수된 물리블록그룹에 대한 전기적 소거는, 상기 회수된 물리블록그룹이 새로운 쓰기블록그룹으로 선정되는 시점에 수행되는 플래시 메모리 기록 방법.
  13. 논리페이지그룹의 내용이 기록되는 데이터 영역과, 상기 데이터 영역에 기록된 논리페이지그룹에 대한 사상정보를 가지는 사상 영역을 포함하는 플래시 메모리의 판독 방법에 있어서,
    상기 플래시 메모리는 복수 개의 물리블록그룹으로 분할되고, 상기 물리블록그룹은 복수 개의 물리블록으로 구성되고, 상기 물리블록그룹은 복수 개의 물리페이지그룹으로 분할되고, 상기 물리페이지그룹은 복수 개의 물리페이지로 구성되며,
    일련의 섹터들에 대한 플래시 메모리 읽기 요청을 수신하는 단계와;
    상기 읽기 요청에 응답하여 상기 섹터를 포함하는 논리페이지그룹을 산출하는 단계;
    쓰기블록그룹에서 상기 논리페이지그룹이 대응되는 물리페이지그룹을 검색하는 단계; 및
    상기 대응되는 물리페이지그룹을 판독하는 단계
    를 포함하는 플래시 메모리 판독 방법.
  14. 제13항에 있어서, 상기 검색 결과 대응되는 물리페이지그룹이 존재하지 않으면, 상기 사상 테이블에서 상기 논리페이지그룹에 대응되는 물리페이지그룹을 검색 하고, 상기 대응되는 물리페이지그룹을 판독하는 단계를 더 포함하는 플래시 메모리 판독 방법.
  15. 삭제
  16. 삭제
  17. 삭제
  18. 삭제
  19. 삭제
  20. 제1항, 제2항, 및 제4항 내지 제6항 중에서 어느 한 항의 방법을 실행하기 위한 프로그램이 기록된 컴퓨터 판독 가능한 기록 매체.
KR1020020052349A 2002-08-31 2002-08-31 멀티-플레인 구조의 플래시 메모리 관리 방법 Expired - Fee Related KR100914646B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020020052349A KR100914646B1 (ko) 2002-08-31 2002-08-31 멀티-플레인 구조의 플래시 메모리 관리 방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020020052349A KR100914646B1 (ko) 2002-08-31 2002-08-31 멀티-플레인 구조의 플래시 메모리 관리 방법

Publications (2)

Publication Number Publication Date
KR20020092261A KR20020092261A (ko) 2002-12-11
KR100914646B1 true KR100914646B1 (ko) 2009-08-28

Family

ID=27728081

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020020052349A Expired - Fee Related KR100914646B1 (ko) 2002-08-31 2002-08-31 멀티-플레인 구조의 플래시 메모리 관리 방법

Country Status (1)

Country Link
KR (1) KR100914646B1 (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9484104B2 (en) 2014-03-04 2016-11-01 Samsung Electronics Co., Ltd. Nonvolatile memory system with block managing unit and method of operating the same

Families Citing this family (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100457812B1 (ko) * 2002-11-14 2004-11-18 삼성전자주식회사 플래시 메모리, 그에 따른 플래시 메모리 액세스 장치 및방법
US7089349B2 (en) * 2003-10-28 2006-08-08 Sandisk Corporation Internal maintenance schedule request for non-volatile memory system
KR100526190B1 (ko) 2004-02-06 2005-11-03 삼성전자주식회사 플래시 메모리의 재사상 방법
KR100684942B1 (ko) 2005-02-07 2007-02-20 삼성전자주식회사 복수의 사상 기법들을 채용한 적응형 플래시 메모리 제어장치 및 그것을 포함한 플래시 메모리 시스템
KR100630537B1 (ko) 2005-08-09 2006-10-02 주식회사 하이닉스반도체 듀얼 페이지 프로그램 기능을 가지는 플래시 메모리 장치의페이지 버퍼 회로 및 그 프로그램 동작 방법
KR100714873B1 (ko) * 2005-09-06 2007-05-07 삼성전자주식회사 비휘발성 메모리에서 데이터 갱신 방법 및 이를 위한 장치
KR100761374B1 (ko) * 2005-12-22 2007-09-27 엠텍비젼 주식회사 플래시 메모리 제어 방법 및 장치
KR100843135B1 (ko) * 2006-11-20 2008-07-02 삼성전자주식회사 비휘발성 메모리 관리 방법 및 장치
KR101468026B1 (ko) * 2007-05-14 2014-12-02 삼성전자주식회사 메모리 셀 프로그래밍 방법 및 반도체 장치
KR100924021B1 (ko) * 2007-10-02 2009-10-28 주식회사 휴원 플래시 메모리의 사상 관리 방법
KR100908542B1 (ko) 2007-12-24 2009-07-20 주식회사 하이닉스반도체 불휘발성 메모리 소자 및 그 프로그램 방법
KR101022001B1 (ko) * 2008-12-08 2011-03-17 주식회사 이스트후 플래시 메모리 시스템 및 플래시 메모리의 관리 방법
KR20100107609A (ko) 2009-03-26 2010-10-06 삼성전자주식회사 저항성 메모리 장치, 이를 포함하는 메모리 시스템 및 저항성 메모리 장치의 기입 방법

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0420339A2 (en) * 1989-09-29 1991-04-03 Koninklijke Philips Electronics N.V. Multi-plane random access memory system
JPH0562485A (ja) * 1991-09-05 1993-03-12 Hitachi Building Syst Eng & Service Co Ltd 制御装置の消去可能な読出し専用メモリの書換装置
KR970003248A (ko) * 1995-06-30 1997-01-28 김주용 플래쉬 메모리소자의 소거방법
US5937425A (en) * 1997-10-16 1999-08-10 M-Systems Flash Disk Pioneers Ltd. Flash file system optimized for page-mode flash technologies
KR20030054907A (ko) * 2001-12-26 2003-07-02 주식회사 하이닉스반도체 멀티 플레인 블럭 어드레스 레지스터

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0420339A2 (en) * 1989-09-29 1991-04-03 Koninklijke Philips Electronics N.V. Multi-plane random access memory system
JPH0562485A (ja) * 1991-09-05 1993-03-12 Hitachi Building Syst Eng & Service Co Ltd 制御装置の消去可能な読出し専用メモリの書換装置
KR970003248A (ko) * 1995-06-30 1997-01-28 김주용 플래쉬 메모리소자의 소거방법
US5937425A (en) * 1997-10-16 1999-08-10 M-Systems Flash Disk Pioneers Ltd. Flash file system optimized for page-mode flash technologies
KR20030054907A (ko) * 2001-12-26 2003-07-02 주식회사 하이닉스반도체 멀티 플레인 블럭 어드레스 레지스터

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9484104B2 (en) 2014-03-04 2016-11-01 Samsung Electronics Co., Ltd. Nonvolatile memory system with block managing unit and method of operating the same

Also Published As

Publication number Publication date
KR20020092261A (ko) 2002-12-11

Similar Documents

Publication Publication Date Title
US6034897A (en) Space management for managing high capacity nonvolatile memory
US7624239B2 (en) Methods for the management of erase operations in non-volatile memories
US7783845B2 (en) Structures for the management of erase operations in non-volatile memories
EP1228510B1 (en) Space management for managing high capacity nonvolatile memory
US5953737A (en) Method and apparatus for performing erase operations transparent to a solid state storage system
EP1410399B1 (en) Method and apparatus for decreasing block write operation times performed on nonvolatile memory
JP4058322B2 (ja) メモリカード
US6081878A (en) Increasing the memory performance of flash memory devices by writing sectors simultaneously to multiple flash memory devices
US8386698B2 (en) Data accessing method for flash memory and storage system and controller using the same
JP4399008B2 (ja) 不揮発性メモリおよびマルチストリーム更新追跡を伴う方法
JP4787266B2 (ja) スクラッチパッドブロック
US8250286B2 (en) Block management method, and storage system and controller using the same
US20080270680A1 (en) Controller for Non-Volatile Memories and Methods of Operating the Memory Controller
JP2008524710A (ja) 不揮発性メモリならびにスクラッチパッドおよび更新ブロックのための改良されたインデックス付けを伴う方法
JP2007517335A (ja) 不揮発性メモリおよびブロック管理システムを伴う方法
KR100914646B1 (ko) 멀티-플레인 구조의 플래시 메모리 관리 방법
JP2003058417A (ja) 記憶装置
JP4888333B2 (ja) フラッシュディスク装置
US20050204115A1 (en) Semiconductor memory device, memory controller and data recording method

Legal Events

Date Code Title Description
PA0109 Patent application

Patent event code: PA01091R01D

Comment text: Patent Application

Patent event date: 20020831

PG1501 Laying open of application
A201 Request for examination
PA0201 Request for examination

Patent event code: PA02012R01D

Patent event date: 20070829

Comment text: Request for Examination of Application

Patent event code: PA02011R01I

Patent event date: 20020831

Comment text: Patent Application

E902 Notification of reason for refusal
PE0902 Notice of grounds for rejection

Comment text: Notification of reason for refusal

Patent event date: 20080926

Patent event code: PE09021S01D

AMND Amendment
E601 Decision to refuse application
PE0601 Decision on rejection of patent

Patent event date: 20090327

Comment text: Decision to Refuse Application

Patent event code: PE06012S01D

Patent event date: 20080926

Comment text: Notification of reason for refusal

Patent event code: PE06011S01I

AMND Amendment
J201 Request for trial against refusal decision
PJ0201 Trial against decision of rejection

Patent event date: 20090421

Comment text: Request for Trial against Decision on Refusal

Patent event code: PJ02012R01D

Patent event date: 20090327

Comment text: Decision to Refuse Application

Patent event code: PJ02011S01I

Appeal kind category: Appeal against decision to decline refusal

Decision date: 20090526

Appeal identifier: 2009101003623

Request date: 20090421

PB0901 Examination by re-examination before a trial

Comment text: Amendment to Specification, etc.

Patent event date: 20090421

Patent event code: PB09011R02I

Comment text: Request for Trial against Decision on Refusal

Patent event date: 20090421

Patent event code: PB09011R01I

Comment text: Amendment to Specification, etc.

Patent event date: 20081125

Patent event code: PB09011R02I

B701 Decision to grant
PB0701 Decision of registration after re-examination before a trial

Patent event date: 20090526

Comment text: Decision to Grant Registration

Patent event code: PB07012S01D

Patent event date: 20090522

Comment text: Transfer of Trial File for Re-examination before a Trial

Patent event code: PB07011S01I

GRNT Written decision to grant
PR0701 Registration of establishment

Comment text: Registration of Establishment

Patent event date: 20090824

Patent event code: PR07011E01D

PR1002 Payment of registration fee

Payment date: 20090825

End annual number: 3

Start annual number: 1

PG1601 Publication of registration
FPAY Annual fee payment

Payment date: 20120824

Year of fee payment: 4

PR1001 Payment of annual fee

Payment date: 20120824

Start annual number: 4

End annual number: 4

FPAY Annual fee payment

Payment date: 20130826

Year of fee payment: 5

PR1001 Payment of annual fee

Payment date: 20130826

Start annual number: 5

End annual number: 5

FPAY Annual fee payment

Payment date: 20150825

Year of fee payment: 7

PR1001 Payment of annual fee

Payment date: 20150825

Start annual number: 7

End annual number: 7

FPAY Annual fee payment

Payment date: 20160825

Year of fee payment: 8

PR1001 Payment of annual fee

Payment date: 20160825

Start annual number: 8

End annual number: 8

FPAY Annual fee payment

Payment date: 20170825

Year of fee payment: 9

PR1001 Payment of annual fee

Payment date: 20170825

Start annual number: 9

End annual number: 9

LAPS Lapse due to unpaid annual fee
PC1903 Unpaid annual fee

Termination category: Default of registration fee

Termination date: 20190604