KR100761374B1 - Method and Apparatus for controlling flash memory - Google Patents

Method and Apparatus for controlling flash memory Download PDF

Info

Publication number
KR100761374B1
KR100761374B1 KR1020050127855A KR20050127855A KR100761374B1 KR 100761374 B1 KR100761374 B1 KR 100761374B1 KR 1020050127855 A KR1020050127855 A KR 1020050127855A KR 20050127855 A KR20050127855 A KR 20050127855A KR 100761374 B1 KR100761374 B1 KR 100761374B1
Authority
KR
South Korea
Prior art keywords
flash memory
data
interface unit
host
control signal
Prior art date
Application number
KR1020050127855A
Other languages
Korean (ko)
Other versions
KR20070066539A (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 엠텍비젼 주식회사
Priority to KR1020050127855A priority Critical patent/KR100761374B1/en
Publication of KR20070066539A publication Critical patent/KR20070066539A/en
Application granted granted Critical
Publication of KR100761374B1 publication Critical patent/KR100761374B1/en

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/10Program control for peripheral devices
    • G06F13/102Program control for peripheral devices where the programme performs an interfacing function, e.g. device driver
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/14Handling requests for interconnection or transfer
    • G06F13/16Handling requests for interconnection or transfer for access to memory bus
    • G06F13/1668Details of memory controller
    • G06F13/1673Details of memory controller using buffers
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C7/00Arrangements for writing information into, or reading information out from, a digital store
    • G11C7/10Input/output [I/O] data interface arrangements, e.g. I/O data control circuits, I/O data buffers
    • G11C7/1006Data managing, e.g. manipulating data before writing or reading out, data bus switches or control circuits therefor

Abstract

본 발명은 멀티 플레인 오퍼레이션(multi plane operation)을 지원할 수 있는 플래시 메모리 제어 방법 및 장치에 관한 것으로서, 호스트와 제어신호 및 데이터를 송수신하는 호스트 인터페이스부와, 플래시 메모리를 제어하는 제어신호를 생성하고 플래시 메모리와 제어 신호 및 데이터를 송수신하는 플래시 메모리 인터페이스부와, 상기 호스트 인터페이스부를 통해 수신되는 데이터를 저장하는 적어도 2개의 버퍼를 포함하는 버퍼부를 포함하되, 상기 버퍼부는 상기 호스트 인터페이스부의 제어신호에 의해 상기 호스트 인터페이스부로터 수신되는 데이터를 상기 적어도 2개의 버퍼 중 어느 하나에 저장하는 동시에 상기 적어도 2개의 버퍼 중 다른 하나에 저장되어 있는 데이터를 상기 플래시 메모리 인터페이스부로 전송하는 것을 특징으로 하는플래시 메모리 제어 장치를 제공한다.The present invention relates to a flash memory control method and apparatus capable of supporting multi-plane operation, comprising: a host interface unit for transmitting and receiving control signals and data with a host, and generating and flashing a control signal for controlling a flash memory. And a buffer including a flash memory interface for transmitting and receiving a memory, a control signal, and data, and at least two buffers for storing data received through the host interface, wherein the buffer is controlled by the control signal of the host interface. And storing the data received from the host interface unit in any one of the at least two buffers and simultaneously transmitting the data stored in the other one of the at least two buffers to the flash memory interface unit. It provides a re-control device.

플래시 메모리 제어 장치, 멀티 플레인 Flash memory controller, multiplane

Description

플래시 메모리 제어 방법 및 장치{Method and Apparatus for controlling flash memory} Method and device for controlling flash memory {Method and Apparatus for controlling flash memory}

도 1은 멀티 플레인 구조의 플래시 메모리의 구성을 예시적으로 나타낸 도면,1 is a diagram illustrating a configuration of a flash memory having a multi-plane structure by way of example;

도 2는 본 발명의 바람직한 일 실시예에 따른 플래시 메모리 제어장치의 구성을 나타낸 블록도,2 is a block diagram showing the configuration of a flash memory controller according to an embodiment of the present invention;

도 3은 본 발명의 바람직한 일 실시예에 따른 플래시 메모리 제어 장치를 사용하여 플래시 메모리에서 데이터를 기록하는 경우를 나타낸 타이밍도,3 is a timing diagram illustrating a case in which data is written from a flash memory using a flash memory control apparatus according to an exemplary embodiment of the present invention;

도 4는 본 발명의 다른 실시예에 따른 플래시 메모리 제어 장치의 구성을 나타낸 블록도이다.4 is a block diagram showing a configuration of a flash memory control apparatus according to another embodiment of the present invention.

<도면의 주요 부분에 대한 부호의 설명> <Explanation of symbols for main parts of the drawings>

201… 호스트 인터페이스부,201... Host interface unit,

203… 버퍼부,203... Buffer,

205… 제1 버퍼,205... First buffer,

207… 제2 버퍼,207... Second buffer,

209… 플래시 메모리 인터페이스부,209... Flash memory interface,

210… 플래시 메모리 제어 장치,210... Flash memory controller,

220… 호스트,220... Host,

230…플래시 메모리.230... Flash memory.

본 발명은 플래시 메모리 제어 방법 및 장치에 관한 것으로서, 특히 멀티 플레인 오퍼레이션(multi plane operation)을 지원할 수 있는 플래시 메모리 제어 방법 및 장치에 관한 것이다. The present invention relates to a flash memory control method and apparatus, and more particularly, to a flash memory control method and apparatus capable of supporting multi-plane operation.

플래시 메모리(flash memory)는 전원이 인가되지 않아도 내용이 지워지지 않는 비휘발성 메모리로서 높은 안정성, 큰 용량 그리고 상대적으로저렴한 가격 등으로 인하여 각종 장치에 널리 사용되고 있다. 또한, 핸드폰, PDA 등과 같은 모바일 기기와 각종 어플리케이션들이 광범위하게 사용됨에 따라 대용량의 데이터를 빠른 시간에 저장할 수 있도록 하는 플래시 메모리 및 이를 제어하는 제어 장치가 요청되고 있다.Flash memory is a nonvolatile memory whose contents are not erased even when power is not applied, and is widely used in various devices due to high stability, large capacity, and relatively low cost. In addition, as mobile devices and various applications such as mobile phones and PDAs are widely used, there is a demand for a flash memory and a control device for controlling the same.

한편, 종래의 플래시 메모리는 모든 물리블록들이 단일 플레인(single plane)에 배치되었다. 이러한 단일 플레인 구조의 플래시 메모리에서는, 전기적 소거의 경우에는 한 번에 하나의 물리 블록에 대해서만, 기록과 판독의 경우에는 한 번에 한 물리 페이지에 대해서만 명령의 수행이 가능하였다. On the other hand, in the conventional flash memory, all physical blocks are arranged in a single plane. In such a single plane flash memory, instructions can be executed for only one physical block at a time for electrical erasure and only one physical page at a time for writing and reading.

이러한 단일 플레인 구조의 플래시 메모리의 단점을 보완하기 위하여 최근 멀티 플레인(multi plane) 구조의 플래시 메모리가 제안되고 있다. 멀티 플레인 구조의 플래시 메모리는 물리블록들을 복수개의 플레인으로 분산 배치하고, 서로 다른 플레인에 위치한 물리블록들 또는 물리페이지들에 대해 동시에 소거, 기록 또는 판독 등의 작업을 수행할 수 있다는 장점이 있다.In order to make up for the shortcomings of flash memory having a single plane structure, a flash memory having a multi plane structure has recently been proposed. A flash memory having a multi-plane structure has an advantage of distributing physical blocks in a plurality of planes and simultaneously performing operations such as erasing, writing, or reading on physical blocks or physical pages located in different planes.

도 1은 이러한 멀티 플레인 구조의 플래시 메모리의 구성을 예시적으로 나타낸 도면이다. 1 is a diagram exemplarily illustrating a configuration of a flash memory having such a multi-plane structure.

도 1의 플래시 메모리는 4개의 플레인을 가지며, 각각의 플레인에는 4,096개의 물리 블록이 존재하며, 각 물리 블록은 32개의 페이지로 구성된다. 각 플레인은 각각 별도의 페이지 레지스터를 포함하여, 플래시 메모리 인터페이스부로부터 수신되는 플레인 별 데이터를 각각의 페이지 레지스터에 저장해 두고 있다가 각 플레인에 대한 데이터 수신이 종료되면 동시에 각 플레인 레지스터로부터 해당 페이지 또는 블록에 데이터 기록 등의 작업을 동시에 수행할 수 있다.The flash memory of FIG. 1 has four planes, each plane has 4,096 physical blocks, and each physical block is composed of 32 pages. Each plane contains a separate page register, which stores the plane-specific data received from the flash memory interface unit in each page register, and at the same time, when data reception for each plane is finished, the corresponding page or block from each plane register You can also simultaneously perform operations such as recording data.

그러나, 이러한 멀티 플레인 구조의 플래시 메모리를 제대로 지원하기 위해서는 플래시 메모리 제어장치의내부 버퍼의 크기를 증가시켜야 하는데 이는 메모리의 크기를 증가시키게 된다는 문제점과, 설계상의 복잡성이 증가한다는 문제점이 있어서, 종래 사용되는 플래시 메모리 제어 장치는 멀티 플레인 구조를 제대로 지원하지 못하거나 소프트웨어적인 제어 방법을 제공하는 데 불과하여 장치에 부담을 주는 경우가 대부분이다.However, in order to properly support the flash memory of the multi-plane structure, the size of the internal buffer of the flash memory controller must be increased, which increases the size of the memory and increases the complexity of the design. In most cases, the flash memory control device does not properly support a multi-plane structure or merely provides a software control method to burden the device.

본 발명은 상술한 문제점을 해결하기 위한 것으로서, 간단하고 저렴한 구성으로 멀티 플레인 오퍼레이션을 지원할 수 있는 플래시 메모리 제어 방법 및 장치를 제공하는 것을 목적으로 한다.An object of the present invention is to provide a flash memory control method and apparatus capable of supporting a multi-plane operation with a simple and inexpensive configuration.

상술한 목적들을 달성하기 위하여, 본 발명은 복수개의 플레인을 구비하는 플래시 메모리를 제어하는 장치에 있어서, 호스트와 제어신호 및 데이터를 송수신하는호스트 인터페이스부 플래시 메모리를 제어하는 제어신호를 생성하고 플래시 메모리와 제어 신호 및 데이터를 송수신하는 플래시 메모리 인터페이스부 및 상기 호스트 인터페이스부를 통해 수신되는 데이터를 저장하는 적어도 2개의 버퍼를 포함하는 버퍼부를 포함하되, 상기 버퍼부는 상기 호스트 인터페이스부의 제어신호에 의해 상기 호스트 인터페이스부로터 수신되는 데이터를 상기 적어도 2개의 버퍼 중 어느 하나에 저장하는 동시에 상기 적어도 2개의 버퍼 중 다른 하나에 저장되어 있는 데이터를 상기 플래시 메모리 인터페이스부로 전송하는 것을 특징으로 하는플래시 메모리 제어 장치를 제공한다.In order to achieve the above objects, the present invention provides a device for controlling a flash memory having a plurality of planes, the control signal for controlling the host interface unit flash memory for transmitting and receiving control signals and data with the host and flash memory And a buffer unit including a flash memory interface unit for transmitting and receiving a control signal and data and at least two buffers for storing data received through the host interface unit, wherein the buffer unit is configured to control the host interface by a control signal of the host interface unit. The flash memory system may further include storing data received in one of the at least two buffers and simultaneously transmitting data stored in the other of the at least two buffers to the flash memory interface unit. It provides an apparatus.

여기에서, 상기 호스트 인터페이스부가 호스트로부터 수신하는 제어신호는 멀티 플레인(multi plane)의 개수에 대한 정보, 멀티 플레인 오퍼레이션(multi plane operation)의 종류에 대한 정보 및 멀티 플레인 오퍼레이션을 수행할 플래시 메모리의 어드레스 정보를 포함할 수 있다.Here, the control signal received by the host interface unit from the host information on the number of multi-plane (multi plane), information on the type of multi-plane operation (multi plane operation) and the address of the flash memory to perform the multi-plane operation May contain information.

또한, 상기 플래시 메모리 인터페이스부는 상기 호스트 인터페이스로부터의 제어신호에 의해 상기 버퍼부의 적어도 2개의 버퍼 중 어느 하나로부터 데이터를 수신하여 플래시 메모리로 전송하는 과정을 상기 멀티 플레인의 개수에 해당하는 횟수만큼 순차적으로 수행할 수 있다.The flash memory interface unit may sequentially receive data from any one of at least two buffers of the buffer unit by the control signal from the host interface and transmit the data to the flash memory as many times as the number of the multiplanes. Can be done.

또한, 상기 버퍼부의 적어도 2개의 버퍼 각각은 데이터를 가지고 있는 경우 가득 참 신호(Full)를, 데이터를 가지고 있지 않은 경우 비어 있음 신호(Empty)를, 상기 호스트 인터페이스부 및 상기 플래시 메모리 인터페이스부로 전송하도록 구성할 수 있다.In addition, each of the at least two buffers of the buffer unit transmits a full signal (Full) when it has data and an empty signal (Empty) when it does not have data to the host interface unit and the flash memory interface unit. Can be configured.

바람직한 실시예에 있어서, 상기 버퍼부에 포함되는 적어도 2개의 버퍼는 싱글 포트(single port) 메모리일 수 있으며, 상기 플래시 메모리는 NAND형 플래시 메모리일 수 있다.In a preferred embodiment, at least two buffers included in the buffer unit may be a single port memory, and the flash memory may be a NAND type flash memory.

본 발명의 다른 측면에 의하면, 복수개의 플레인을 구비하는 플래시 메모리를 제어하는 장치에 있어서, 호스트와 제어신호 및 데이터를 송수신하는 호스트 인터페이스부 플래시 메모리를 제어하는 제어신호를 생성하고 플래시 메모리와 데이터를 송수신하는플래시 메모리 인터페이스부 및 상기 호스트 인터페이스부를 통해 수신되는 데이터를 저장하는 버퍼부를 포함하되, 상기 버퍼부는 상기 호스트 인터페이스부의 제어신호에 의해 상기 호스트 인터페이스부로터 수신되는 데이터를 저장하는 동시에 미리 저장된 데이터를 상기 플래시 메모리 인터페이스부로 전송하는 것을 특징으로 하는플래시 메모리 제어 장치를 제공한다.According to another aspect of the present invention, in the apparatus for controlling a flash memory having a plurality of planes, generating a control signal for controlling the flash memory and the host interface unit for transmitting and receiving a control signal and data with the host and the flash memory and data A flash memory interface unit for transmitting and receiving and a buffer unit for storing data received through the host interface unit, wherein the buffer unit stores the data received from the host interface unit by the control signal of the host interface unit and at the same time stored in advance It provides a flash memory control device characterized in that the transmission to the flash memory interface unit.

여기에서, 상기 호스트 인터페이스부가 호스트로부터 수신하는 제어신호는 멀티 플레인(multi plane)의 개수에 대한 정보, 멀티 플레인 오퍼레이션(multi plane operation)의 종류에 대한 정보 및 멀티 플레인 오퍼레이션을 수행할 플래시 메모리의 어드레스 정보를 포함할 수 있다.Here, the control signal received by the host interface unit from the host information on the number of multi-plane (multi plane), information on the type of multi-plane operation (multi plane operation) and the address of the flash memory to perform the multi-plane operation May contain information.

또한, 상기 버퍼부는 듀얼 포트 메모리이며, 상기 플래시 메모리는 NAND형 플래시 메모리일 수 있다.The buffer unit may be a dual port memory, and the flash memory may be a NAND type flash memory.

본 발명의 다른 측면에 의하면, 적어도 2개의 버퍼를 포함하는 플래시 메모리 제어 장치에서 복수개의 플레인을 구비하는 플래시 메모리를 제어하는 방법에 있어서, 호스트로부터 제어 신호 및 데이터를 수신하고 수신된 데이터를 상기 적어도 2개의 버퍼 중 어느 하나가 가득 찰 때까지 저장하고, 상기 적어도 2개의 버퍼 중 어느 하나에 저장된 데이터를 플래시 메모리로 전송하는 동시에 상기 적어도 2개의 버퍼 중 다른 하나에 호스트로부터 수신되는 데이터를 저장하는 과정을 상기 호스트로부터 수신되는 제어 신호에 포함된 멀티 플레인의 개수에 해당하는 횟수만큼 반복하는 것을 특징으로 하는 플래시 메모리 제어 방법을 제공한다. According to another aspect of the present invention, a method of controlling a flash memory having a plurality of planes in a flash memory control device including at least two buffers, the method comprising: receiving a control signal and data from a host and receiving the received data; Storing the data received from the host in another one of the at least two buffers while transmitting data stored in any one of the at least two buffers to a flash memory until one of the two buffers is full; A method of controlling a flash memory, the method comprising repeating a number of times corresponding to the number of multi-planes included in a control signal received from the host.

본 발명의 또 다른 측면에 의하면, 버퍼를 포함하는 플래시 메모리 제어 장치에서 복수개의 플레인을 구비하는 플래시 메모리를 제어하는 방법에 있어서, 호스트로부터 제어 신호 및 데이터를 수신하고 수신된 데이터를 상기 버퍼에 순차적으로저장하는 동시에 저장된 데이터를 순차적으로 플래시 메모리로 전송하는 과정을 상기 호스트로부터 수신되는 제어 신호에 포함된 멀티 플레인의 개수에 해당하는 횟수만큼 반복하는 것을 특징으로 하는 플래시 메모리 제어 방법을 제공한다.According to another aspect of the present invention, a method of controlling a flash memory having a plurality of planes in a flash memory control device including a buffer, the method comprising: receiving a control signal and data from a host and sequentially receiving the received data into the buffer A method of controlling a flash memory, the method comprising: repeating a process of sequentially storing the data and simultaneously transmitting the stored data to the flash memory, the number of times corresponding to the number of multi-planes included in the control signal received from the host.

이어서, 첨부한 도면들을 참조하여 본 발명의 바람직한 실시예들을 상세히 설명한다. Next, preferred embodiments of the present invention will be described in detail with reference to the accompanying drawings.

도 2는 본 발명의 바람직한 일 실시예에 따른 플래시 메모리 제어장치의 구성을 나타낸 블록도이다.2 is a block diagram illustrating a configuration of a flash memory control apparatus according to an exemplary embodiment of the present invention.

도 2를 참조하면, 플래시 메모리 제어 장치(210)는 호스트 인터페이스부(201), 버퍼부(203) 및 플래시 메모리 인터페이스부(205)를 포함하며, 호스트(220) 및 플래시 메모리(230)와 연결되어 제어 신호 및 데이터를 송수신한다.Referring to FIG. 2, the flash memory controller 210 includes a host interface 201, a buffer 203, and a flash memory interface 205, and is connected to the host 220 and the flash memory 230. To transmit and receive control signals and data.

상기 호스트 인터페이스부(201)는 호스트(220)와 연결되어 호스트(220)로부터 제어 신호 및 데이터를 송수신하며, 후술하는 바와 같이 버퍼부(203)로 데이터를 전송하여 저장하도록 한다. The host interface 201 is connected to the host 220 to transmit and receive control signals and data from the host 220, and transmit and store data to the buffer unit 203 as described below.

호스트(220)로부터 수신되는 제어 신호는 다음과 같은 정보를 포함할 수 있다. 즉, 플래시 메모리에 대하여 수행할 멀티 플레인 오퍼레이션(multi plane operation)의 종류(예컨대, 기록/읽기/소거 등)에 대한 정보, 플래시 메모리에서 멀티 플레인 오퍼레이션을 수행할 플레인의 개수에 대한 정보인 멀티 플레인의 개수 정보 및 멀티 플레인 오퍼레이션을 수행할 플래시 메모리의 어드레스 정보를 적어도 포함할 수 있다.The control signal received from the host 220 may include the following information. That is, multiplane, which is information on the type of multi-plane operation (for example, write / read / erase, etc.) to be performed on the flash memory, and information about the number of planes to perform multi-plane operation on the flash memory. It may include at least the number information and the address information of the flash memory to perform the multi-plane operation.

상기 플래시 메모리 인터페이스부(209)는 플래시 메모리를 제어하는 제어신호를 생성하고 또한 상기 호스트 인터페이스부(201)로부터의 제어신호에 의해 후술하는 바와 같이 버퍼부(203)로부터 데이터를 수신하여 플래시 메모리와 데이터 및 제어신호를 송수신한다.The flash memory interface unit 209 generates a control signal for controlling the flash memory and receives data from the buffer unit 203 as described later by the control signal from the host interface unit 201 and the flash memory. Send and receive data and control signals.

상기 두 개의 인터페이스부는 서로 독립적으로 동작할 수 있다. 즉 호스트 인터페이스부(201)가 동작하는 동안에 플래시 메모리 인터페이스부(209)가 동작을 할 수도 있고, 경우에 따라서는 플래시 메모리 인터페이스부(205)는 동작하지 않을 수도 있다. The two interface units may operate independently of each other. That is, the flash memory interface unit 209 may operate while the host interface unit 201 operates, and in some cases, the flash memory interface unit 205 may not operate.

상기 버퍼부(203)는 물리적으로 구분되는 적어도 2개의 버퍼를 포함하며, 상기 호스트 인터페이스부(201)를 통해 호스트(220)로부터 수신되는 데이터를 저장하였다가 플래시 메모리 인터페이스부(209)로 전송하는 기능을 수행한다. 도 2에서는, 2개의 버퍼 즉, 제1 버퍼(205) 및 제2 버퍼(207)로 구성된 경우를 나타내었으며, 상기 제1 버퍼(205) 및 제2 버퍼(207)는 하나의 포트를 통해 입/출력이 이루어지는 싱글 포트(single port) 메모리를 사용한다.The buffer unit 203 includes at least two physically separated buffers, and stores data received from the host 220 through the host interface unit 201 and transmits the data to the flash memory interface unit 209. Perform the function. In FIG. 2, two buffers, that is, a first buffer 205 and a second buffer 207 are shown. The first buffer 205 and the second buffer 207 are input through one port. Use a single port of memory for output.

이러한 구성의 플래시 메모리 제어장치(210)는 다음과 같이 동작한다.The flash memory controller 210 of such a configuration operates as follows.

우선, 호스트 인터페이스부(201)는 호스트(220)로부터 제어 신호 및 데이터를 전송받는다. 여기에서, 제어신호는 앞서 설명한 바와 같이, 플래시 메모리에 대하여 수행할 멀티 플레인 오퍼레이션(multi plane operation)의 종류(예컨대, 기록/읽기/소거 등)에 대한 정보, 플래시 메모리에서 멀티 플레인 오퍼레이션을 수행할 플레인의 개수에 대한 정보인 멀티 플레인의 개수 정보 및 멀티 플레인 오퍼레이션을 수행할 플래시 메모리의 어드레스 정보를 적어도 포함한다.First, the host interface unit 201 receives control signals and data from the host 220. Herein, as described above, the control signal includes information on the type (eg, write / read / erase) of a multi-plane operation to be performed on the flash memory, and perform the multi-plane operation on the flash memory. And at least information on the number of planes, which is information on the number of planes, and address information of a flash memory to perform a multi-plane operation.

호스트 인터페이스부(201)는 수신한 데이터를 버퍼부(203) 중 예컨대 제 1 버퍼(205)에 저장하고, 멀티 플레인 오퍼레이션의 종류, 멀티 플레인의 개수 및 플래시 메모리의 어드레스 정보를 플래시 메모리 인터페이스부(209)로 전송한다.The host interface 201 stores the received data in, for example, the first buffer 205 of the buffer unit 203, and stores information on the type of the multi-plane operation, the number of the multi-planes, and the address information of the flash memory. 209).

이 때, 멀티 플레인의 개수가 2 이상의 복수인 경우, 호스트 인터페이스부(201)는 호스트(220)로부터 입력되는 데이터를 제1 버퍼(205)에 우선 기록하고 제1 버퍼(205)가 가득 차면 제2 버퍼(207)에 순차적으로기록한다. 마찬가지로 제2 버퍼(207)가 가득 차면 제1 버퍼(205)로 다시 기록하는 과정을 반복한다. 후술하는 바와 같이, 제1 버퍼(205) 및 제2 버퍼(207)는 플래시 메모리 인터페이스부(209)로 순차적으로 번갈아 데이터를 전송하므로 어느 하나의 버퍼가 호스트 인터페이스부(201)로부터 데이터를 입력받는 동안에는 다른 버퍼는 데이터를 플래시 메모리 인터페이스부(209)로 전송하므로데이터가 겹칠 염려는 없다.In this case, when the number of multi-planes is two or more, the host interface unit 201 first writes data input from the host 220 to the first buffer 205, and if the first buffer 205 is full, 2 are sequentially written to the buffer 207. Similarly, when the second buffer 207 is full, the process of writing back to the first buffer 205 is repeated. As will be described later, the first buffer 205 and the second buffer 207 sequentially transfer data to the flash memory interface unit 209 so that any one buffer receives data from the host interface unit 201. In the meantime, another buffer transfers data to the flash memory interface 209 so that the data does not have to overlap.

플래시 메모리 인터페이스부(209)는 호스트 인터페이스부(201)로부터 수신되는 제어 신호에 포함된 멀티 플레인의 개수에 해당하는 횟수동안 제1 버퍼(205) 및 제2 버퍼(207)에서 데이터를 수신하면서 수신된 데이터 및 해당 어드레스를 플래시 메모리로 전송하는 과정을 반복한다. 플래시 메모리 인터페이스부(209)는 앞서 설명한 바와 같이 우선 제1 버퍼(205)에 데이터가 저장되어 있으므로 제1 버퍼(205)로부터 제1 버퍼(205)가 빌 때까지 데이터를 읽어 들이고 제1 버퍼(205)가 비면 제2 버퍼(207)에서 데이터를 읽어 들이는 과정을 반복한다.The flash memory interface unit 209 receives data while receiving data from the first buffer 205 and the second buffer 207 for a number of times corresponding to the number of multiplanes included in the control signal received from the host interface unit 201. The process of transferring the data and the corresponding address to the flash memory is repeated. As described above, since the data is stored in the first buffer 205, the flash memory interface unit 209 reads data from the first buffer 205 until the first buffer 205 is empty, and then the first buffer ( When 205 is empty, the process of reading data from the second buffer 207 is repeated.

플래시 메모리 인터페이스부(209)는 멀티 플레인의 개수에 해당하는 횟수동안 데이터를 수신하여 플래시 메모리로 전송하고, 플래시 메모리는 제어 신호에 포함되어 있는 멀티 플레인 오퍼레이션의 종류에 대응하는 작업을 동시에 수행하게 된다.The flash memory interface unit 209 receives data for a number corresponding to the number of multiplanes and transmits the data to the flash memory, and the flash memory simultaneously performs a task corresponding to the type of multiplane operation included in the control signal. .

한편, 버퍼부(203)의 제1 버퍼(205) 및 제2 버퍼(207)는 자신이 데이터를 가지고 있는지를 나타내는 신호 예컨대 가득 참(Full) 또는 비어있음(Empty) 신호를 호스트 인터페이스부(201) 및 플래시 메모리 인터페이스부(209)로 전송하도록 할 수 있다. Meanwhile, the first buffer 205 and the second buffer 207 of the buffer unit 203 provide a signal indicating whether they have data, for example, a full or empty signal, to the host interface unit 201. ) And the flash memory interface unit 209.

이 경우, 호스트 인터페이스부(201)는 버퍼부(403)의 제1 버퍼(205)로부터 가득 참(Full) 신호를 수신하면, 제2 버퍼(207)로 데이터를 전송하기 시작하고, 마찬가지로 제2 버퍼(207)에 데이터가 가득 차면 제2 버퍼(207)는 호스트 인터페이스부(201)로 가득 참(Full) 신호를 전송하여 다음 버퍼(제1 버퍼)로 데이터를 전송하도록 한다. In this case, when the host interface unit 201 receives a full signal from the first buffer 205 of the buffer unit 403, the host interface unit 201 starts to transmit data to the second buffer 207, and similarly, the second signal is transmitted to the second buffer 207. When the data in the buffer 207 is full, the second buffer 207 transmits a full signal to the host interface 201 to transmit the data to the next buffer (first buffer).

한편, 플래시 메모리 인터페이스부(209)는 제2 버퍼(207)로 데이터가 기록되는 동안 제1 버퍼(205)로부터 데이터를 수신하며 제1 버퍼(205)는 데이터 전송이 완료되면 비어있음(Empty) 신호를 플래시 메모리 인터페이스부(209)로 전송하여 다음 버퍼(제2 버퍼)에서 데이터를 읽도록 한다.Meanwhile, the flash memory interface unit 209 receives data from the first buffer 205 while data is written to the second buffer 207 and the first buffer 205 is empty when the data transfer is completed. The signal is transmitted to the flash memory interface unit 209 to read data from the next buffer (second buffer).

이러한 과정을 멀티 플레인의 개수만큼의 횟수 동안 반복함으로써, 버퍼에서의 시간 손실 없이 플래시 메모리에 대한 멀티 오퍼레이션을 효과적으로 지원할 수 있게 된다.By repeating this process for as many times as the number of multiplanes, it is possible to effectively support multi-operation for the flash memory without losing time in the buffer.

도 3은 본 발명의 바람직한 일 실시예에 따른 플래시 메모리 제어 장치를 사용하여 플래시 메모리에서 데이터를 기록하는 경우를 나타낸 타이밍도이다.3 is a timing diagram illustrating a case in which data is written from a flash memory using a flash memory control apparatus according to an exemplary embodiment of the present invention.

도 3은 플레인이 2개인 플래시 메모리에서 데이터를 기록하는 경우에 대한 것으로서, NFL_REB 신호는 쓰기 가능(Read Enable)을 나타내는 신호이고, NFL_IO[7:0] 신호는 입출력 포트를 나타내는 신호이다. 3 illustrates a case of writing data in a flash memory having two planes, wherein an NFL_REB signal is a signal indicating read enable, and an NFL_IO [7: 0] signal is a signal indicating an input / output port.

도 3에 도시한 바와 같이, NFL_IO[7:0]신호에 의해 우선 제1 플레인에 대하여 데이터를 전송하고 해당 오퍼레이션을 수행한다. 이 오퍼레이션의 종류는 앞서 설명한 바와 같이 호스트(220)로부터 호스트 인터페이스부(201)를 통해 수신된다. 이 오퍼레이션이 예컨대 기록 명령인 경우 제1 플레인의 플레인 레지스터에 데이터를 기록한다.As shown in FIG. 3, data is first transmitted to a first plane by an NFL_IO [7: 0] signal, and a corresponding operation is performed. The type of this operation is received from the host 220 through the host interface unit 201 as described above. If this operation is, for example, a write command, the data is written to the plane register of the first plane.

다음으로, 약간의 지연시간(310) 후 마찬가지로 제 2플레인에 대하여 데이터를 전송하고 해당 오퍼레이션을 수행하는데, 기록 명령인 경우 제2 플레인의 플레인 레지스터에 데이터를 기록하고 이 작업이 완료되면 제1 플레인 및 제2 플레인의 각각의 어드레스에 시간(320)에서 멀티 플레인 오퍼레이션을 동시에 수행하게 된다.Next, after some delay time 310, data is transmitted to the second plane and the corresponding operation is performed. In the case of the write command, the data is written to the plane register of the second plane, and when the operation is completed, the first plane is completed. And simultaneously perform multiplane operations at time 320 for each address of the second plane.

도 4는 본 발명의 다른 실시예에 따른 플래시 메모리 제어 장치의 구성을 나타낸 블록도이다.4 is a block diagram showing a configuration of a flash memory control apparatus according to another embodiment of the present invention.

도 4의 실시예는 도 2에서 설명한 구성과 기본적으로 동일하되, 버퍼부(403)의 구성에서만 차이가 있다. 즉, 도 4의 버퍼부(403)는 도 2에서와 같이 복수개의 버퍼로 구성하는 것이 아니라 물리적으로 단일한 버퍼를 사용한다는 점을 특징으로 한다.4 is basically the same as the configuration described with reference to FIG. 2, but differs only in the configuration of the buffer unit 403. That is, the buffer unit 403 of FIG. 4 is characterized by using a single physical buffer rather than a plurality of buffers as shown in FIG.

다만, 물리적으로 단일한 버퍼를 사용하므로 멀티 플레인 오퍼레이션을 충분히 지원하기 위해서는 버퍼부(403)는 입/출력 포트가 분리되어 FIFO(First in First out)가 가능한 듀얼 포트 메모리를 사용하는 것이 바람직하다. 즉, 입력 포트를 통해 호스트 인터페이스부(201)로부터 데이터가 입력되는 동시에 출력 포트를 통해 플래시 메모리 인터페이스부(209)로 데이터를 전송하는 것이 가능한 메모리를 사용한다.However, since a single physical buffer is used, it is preferable that the buffer unit 403 uses a dual port memory capable of first in first out (FIFO) by separating input / output ports to fully support a multi-plane operation. That is, a memory capable of transmitting data to the flash memory interface unit 209 through the output port while simultaneously receiving data from the host interface unit 201 through the input port is used.

이상에서, 본 발명의 바람직한 실시예들을 참조하여 설명하였으나 본 발명은 상기 실시예에 한정되는 것이 아니며 첨부한 청구범위 및 도면을 참조하여 여러가지 형태의 변형, 수정 실시가 가능함은 물론이다.In the above, the present invention has been described with reference to preferred embodiments, but the present invention is not limited to the above embodiments, and various forms of modification and modification can be made with reference to the appended claims and drawings.

예컨대, 상기 실시예는 낸드(NAND)형 플래시 메모리에 주로 사용될 수 있으나 멀티 플레인 오퍼레이션을 지원한다면 낸드형 플래시 메모리 이외의 다른 플래시 메모리에도 그대로 적용될 수 있을 것이다.For example, the above embodiment may be mainly used for a NAND flash memory, but may be applied to other flash memories other than the NAND flash memory if the multi-plane operation is supported.

본 발명에 의하면, 간단하고 저렴한 구성으로 멀티 플레인 오퍼레이션을 지원할 수 있는 플래시 메모리 제어 방법 및 장치를 제공할 수 있다. According to the present invention, it is possible to provide a flash memory control method and apparatus capable of supporting a multi-plane operation with a simple and inexpensive configuration.

Claims (12)

복수개의 플레인을 구비하는 플래시 메모리를 제어하는 장치에 있어서,An apparatus for controlling a flash memory having a plurality of planes, 호스트와 제어신호 및 데이터를 송수신하는 호스트 인터페이스부-여기서, 상기 제어신호는 멀티 플레인의 개수에 대한 정보를 포함함-; A host interface unit for transmitting and receiving a control signal and data with a host, wherein the control signal includes information on the number of multiplanes; 플래시 메모리를 제어하는 제어신호를 생성하고 플래시 메모리와 제어 신호 및 데이터를 송수신하는 플래시 메모리 인터페이스부; 및A flash memory interface unit generating a control signal for controlling the flash memory and transmitting and receiving a control signal and data with the flash memory; And 상기 호스트 인터페이스부를 통해 수신되는 데이터를 저장하는 적어도 2개의 버퍼를 포함하는 버퍼부A buffer unit including at least two buffers for storing data received through the host interface unit 를 포함하되,Including but not limited to: 상기 버퍼부는 상기 호스트 인터페이스부의 제어신호에 의해 상기 호스트 인터페이스부로터 수신되는 데이터를 상기 적어도 2개의 버퍼 중 어느 하나에 저장하는 동시에 상기 적어도 2개의 버퍼 중 다른 하나에 저장되어 있는 데이터를 상기 플래시 메모리 인터페이스부로 전송하고,The buffer unit stores data received from the host interface unit in one of the at least two buffers according to a control signal of the host interface unit and simultaneously stores data stored in another one of the at least two buffers. Transfer to wealth, 상기 플래시 메모리 인터페이스부는 상기 호스트 인터페이스부로부터의 제어신호에 의해 상기 버퍼부의 적어도 2개의 버퍼 중 어느 하나로부터 데이터를 수신하여 플래시 메모리로 전송하는 과정을 상기 호스트 인터페이스부로부터의 제어 신호에 포함된 멀티 플레인의 개수에 해당하는 횟수만큼 순차적으로 수행하는 것The flash memory interface unit may receive a data from any one of at least two buffers of the buffer unit by a control signal from the host interface unit and transmit the data to a flash memory in a control signal from the host interface unit. Sequentially performing the number of times corresponding to 을 특징으로 하는 플래시 메모리 제어 장치.Flash memory control device characterized in that. 제1항에 있어서, The method of claim 1, 상기 호스트 인터페이스부가 호스트로부터 수신하는 제어신호는 멀티 플레인 오퍼레이션(multi plane operation)의 종류에 대한 정보 및 멀티 플레인 오퍼레이션을 수행할 플래시 메모리의 어드레스 정보The control signal received by the host interface unit from the host includes information on the type of multi-plane operation and address information of the flash memory to perform the multi-plane operation. 를 더 포함하는 것을 특징으로 하는 플래시 메모리 제어 장치.Flash memory control device further comprises. 삭제delete 제1항에 있어서, The method of claim 1, 상기 버퍼부의 적어도 2개의 버퍼 각각은 데이터를 가지고 있는 경우 가득 참 신호(Full)를, 데이터를 가지고 있지 않은 경우 비어 있음 신호(Empty)를, 상기 호스트 인터페이스부 및 상기 플래시 메모리 인터페이스부로 전송하는 것Each of the at least two buffers of the buffer unit transmits a full signal (Full) when it has data and an empty signal (Empty) when it does not have data to the host interface unit and the flash memory interface unit. 을 특징으로 하는 플래시 메모리 제어 장치. Flash memory control device characterized in that. 제1항에 있어서, The method of claim 1, 상기 버퍼부에 포함되는 적어도 2개의 버퍼는 싱글 포트(single port) 메모리인 것 At least two buffers included in the buffer unit are single port memory. 을 특징으로 하는 플래시 메모리 제어 장치. Flash memory control device characterized in that. 제1항에 있어서, The method of claim 1, 상기 플래시 메모리는 NAND형 플래시 메모리인 것Said flash memory being a NAND type flash memory 을 특징으로 하는 플래시 메모리 제어 장치. Flash memory control device characterized in that. 복수개의 플레인을 구비하는 플래시 메모리를 제어하는 장치에 있어서,An apparatus for controlling a flash memory having a plurality of planes, 호스트와 제어신호 및 데이터를 송수신하는 호스트 인터페이스부-여기서, 상기 제어 신호는 멀티 플레인의 개수에 대한 정보를 포함함-; A host interface for transmitting and receiving control signals and data with a host, wherein the control signal includes information on the number of multiplanes; 플래시 메모리를 제어하는 제어신호를 생성하고 플래시 메모리와 데이터를 송수신하는 플래시 메모리 인터페이스부; 및A flash memory interface unit generating a control signal for controlling the flash memory and transmitting and receiving data with the flash memory; And 상기 호스트 인터페이스부를 통해 수신되는 데이터를 저장하는 버퍼부A buffer unit for storing data received through the host interface unit 를 포함하되,Including but not limited to: 상기 버퍼부는 상기 호스트 인터페이스부의 제어신호에 의해 상기 호스트 인터페이스부로터 수신되는 데이터를 저장하는 동시에 미리 저장된 데이터를 상기 플래시 메모리 인터페이스부로 전송하고,The buffer unit stores data received from the host interface unit by a control signal of the host interface unit and simultaneously transmits data stored in advance to the flash memory interface unit. 상기 플래시 메모리 인터페이스부는 상기 호스트 인터페이스부로부터의 제어신호에 의해 상기 버퍼부로부터 전송되는 데이터를 플래시 메모리로 전송하는 과정을 상기 호스트 인터페이스로부터의 제어 신호에 포함된 멀티 플레인의 개수에 해당하는 횟수만큼 순차적으로 수행하는 것The flash memory interface unit sequentially transmits the data transmitted from the buffer unit to the flash memory by the control signal from the host interface unit as many times as the number of multiplanes included in the control signal from the host interface. To do with 을 특징으로 하는 플래시 메모리 제어 장치.Flash memory control device characterized in that. 제7항에 있어서, The method of claim 7, wherein 상기 호스트 인터페이스부가 호스트로부터 수신하는 제어신호는 멀티 플레인 오퍼레이션(multi plane operation)의 종류에 대한 정보 및 멀티 플레인 오퍼레이션을 수행할 플래시 메모리의 어드레스 정보The control signal received by the host interface unit from the host includes information on the type of multi-plane operation and address information of the flash memory to perform the multi-plane operation. 를 포함하는 것을 특징으로 하는 플래시 메모리 제어 장치.Flash memory control device comprising a. 제7항에 있어서, The method of claim 7, wherein 상기 버퍼부는 듀얼 포트 메모리인 것The buffer unit being a dual port memory 을 특징으로 하는 플래시 메모리 제어 장치. Flash memory control device characterized in that. 제7항에 있어서, The method of claim 7, wherein 상기 플래시 메모리는 NAND형 플래시 메모리인 것Said flash memory being a NAND type flash memory 을 특징으로 하는 플래시 메모리 제어 장치. Flash memory control device characterized in that. 적어도 2개의 버퍼를 포함하는 플래시 메모리 제어 장치에서 복수개의 플레인을 구비하는 플래시 메모리를 제어하는 방법에 있어서,A method of controlling a flash memory having a plurality of planes in a flash memory control device including at least two buffers, the method comprising: 호스트로부터 제어 신호 및 데이터를 수신하고 수신된 데이터를 상기 적어도 2개의 버퍼 중 어느 하나가 가득 찰 때까지 저장하고, 상기 적어도 2개의 버퍼 중 어느 하나에 저장된 데이터를 플래시 메모리로 전송하는 동시에 상기 적어도 2개의 버퍼 중 다른 하나에 호스트로부터 수신되는 데이터를 저장하는 과정을 상기 호스트로부터 수신되는 제어 신호에 포함된 멀티 플레인의 개수에 해당하는 횟수만큼 반복하는 것 Receive control signals and data from a host and store the received data until either one of the at least two buffers is full, and transmit data stored in any one of the at least two buffers to a flash memory simultaneously Repeating the process of storing data received from the host in one of four buffers corresponding to the number of multiplanes included in the control signal received from the host 을 특징으로 하는 플래시 메모리 제어 방법. Flash memory control method characterized in that. 버퍼를 포함하는 플래시 메모리 제어 장치에서 복수개의 플레인을 구비하는 플래시 메모리를 제어하는 방법에 있어서,In the flash memory control device including a buffer for controlling a flash memory having a plurality of planes, 호스트로부터 제어 신호 및 데이터를 수신하고 수신된 데이터를 상기 버퍼에 순차적으로 저장하는 동시에 저장된 데이터를 순차적으로 플래시 메모리로 전송하는 과정을 상기 호스트로부터 수신되는 제어 신호에 포함된 멀티 플레인의 개수에 해당하는 횟수만큼 반복하는 것 Receiving a control signal and data from the host and sequentially storing the received data in the buffer, and simultaneously transmitting the stored data to the flash memory corresponding to the number of multi-planes included in the control signal received from the host Repeating a number of times 을 특징으로 하는 플래시 메모리 제어 방법.Flash memory control method characterized in that.
KR1020050127855A 2005-12-22 2005-12-22 Method and Apparatus for controlling flash memory KR100761374B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020050127855A KR100761374B1 (en) 2005-12-22 2005-12-22 Method and Apparatus for controlling flash memory

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020050127855A KR100761374B1 (en) 2005-12-22 2005-12-22 Method and Apparatus for controlling flash memory

Publications (2)

Publication Number Publication Date
KR20070066539A KR20070066539A (en) 2007-06-27
KR100761374B1 true KR100761374B1 (en) 2007-09-27

Family

ID=38365589

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020050127855A KR100761374B1 (en) 2005-12-22 2005-12-22 Method and Apparatus for controlling flash memory

Country Status (1)

Country Link
KR (1) KR100761374B1 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20110054788A (en) * 2009-11-18 2011-05-25 삼성전자주식회사 Apparatus and method for storing data using non-volatile buffer

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101027687B1 (en) * 2009-09-17 2011-04-12 주식회사 하이닉스반도체 Solid State Storage System for Controlling Write Operation and Method of Controlling the Same
KR102242957B1 (en) * 2019-06-03 2021-04-21 주식회사 원세미콘 High speed NAND memory system and high speed NAND memory package device
KR102543920B1 (en) * 2021-02-05 2023-06-20 엘아이지넥스원 주식회사 Icp type acceleration measurement module and method therefof

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20020092261A (en) * 2002-08-31 2002-12-11 지인정보기술 주식회사 Management Scheme for Flash Memory with the Multi-Plane Architecture
US20050144363A1 (en) 2003-12-30 2005-06-30 Sinclair Alan W. Data boundary management
KR20050078233A (en) * 2004-01-30 2005-08-04 가부시끼가이샤 도시바 Non-volatile semiconductor memory device
KR20050101838A (en) * 2004-04-20 2005-10-25 매그나칩 반도체 유한회사 Compact flash card

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20020092261A (en) * 2002-08-31 2002-12-11 지인정보기술 주식회사 Management Scheme for Flash Memory with the Multi-Plane Architecture
US20050144363A1 (en) 2003-12-30 2005-06-30 Sinclair Alan W. Data boundary management
KR20050078233A (en) * 2004-01-30 2005-08-04 가부시끼가이샤 도시바 Non-volatile semiconductor memory device
KR20050101838A (en) * 2004-04-20 2005-10-25 매그나칩 반도체 유한회사 Compact flash card

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20110054788A (en) * 2009-11-18 2011-05-25 삼성전자주식회사 Apparatus and method for storing data using non-volatile buffer
KR101627322B1 (en) 2009-11-18 2016-06-03 삼성전자주식회사 Apparatus and Method for storing data using non-volatile buffer

Also Published As

Publication number Publication date
KR20070066539A (en) 2007-06-27

Similar Documents

Publication Publication Date Title
US8521945B2 (en) Portable data storage using SLC and MLC flash memory
US8144515B2 (en) Interleaved flash storage system and method
KR100673013B1 (en) Memory controller and data processing system with the same
KR101507194B1 (en) Serial interface nand
US7937523B2 (en) Memory system with nonvolatile semiconductor memory
KR102514772B1 (en) Nonvolatile memory device capable of performing asynchronous operations, nonvolatile memory system including the same, and operation performing method of the same
US20040193782A1 (en) Nonvolatile intelligent flash cache memory
KR100758301B1 (en) Memory card and method storing data thereof
KR20080017982A (en) Flash memory system and program method thereof
CN102096647A (en) Multi-chip memory system and related data transfer method
CN101568904A (en) High speed fanned out system architecture and input/output circuits for non-volatile memory
CN104981873A (en) System and method of reading data from memory concurrently with sending write data to the memory
US8369163B2 (en) Memory device for reducing programming time
US7831755B2 (en) Method and system for interfacing a plurality of memory devices using an MMC/SD protocol
KR20200060758A (en) Memory addressing methods and associated controllers, memory devices and hosts
US20130054885A1 (en) Multiport memory element and semiconductor device and system including the same
KR100761374B1 (en) Method and Apparatus for controlling flash memory
US8151144B2 (en) Memory card, nonvolatile memory, controller, and method for managing writing errors for nonvolatile memories
CN112256203B (en) Writing method, device, equipment, medium and system of FLASH memory
CN110874190A (en) Flash memory controller and method
WO2007114676A1 (en) Device having shared memory and method for providing access status information by shared memory
KR100685324B1 (en) A system for accessing nand flash memory at random using dual-port dram and a controller thereof
KR101175250B1 (en) NAND Flash Memory device and controller thereof, Write operation method
US20080005417A1 (en) Method for speedy delivery of data between processors and digital processing apparatus having shared memory
US20090043945A1 (en) Non-Volatile Memory System and Method for Reading Data Therefrom

Legal Events

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

Payment date: 20120710

Year of fee payment: 6

FPAY Annual fee payment

Payment date: 20130826

Year of fee payment: 7

FPAY Annual fee payment

Payment date: 20140827

Year of fee payment: 8

FPAY Annual fee payment

Payment date: 20150728

Year of fee payment: 9

FPAY Annual fee payment

Payment date: 20170829

Year of fee payment: 11

FPAY Annual fee payment

Payment date: 20180823

Year of fee payment: 12

FPAY Annual fee payment

Payment date: 20190826

Year of fee payment: 13