KR101317759B1 - System architecture based on asymmetric raid storage - Google Patents
System architecture based on asymmetric raid storage Download PDFInfo
- Publication number
- KR101317759B1 KR101317759B1 KR1020120071656A KR20120071656A KR101317759B1 KR 101317759 B1 KR101317759 B1 KR 101317759B1 KR 1020120071656 A KR1020120071656 A KR 1020120071656A KR 20120071656 A KR20120071656 A KR 20120071656A KR 101317759 B1 KR101317759 B1 KR 101317759B1
- Authority
- KR
- South Korea
- Prior art keywords
- storage
- raid
- asymmetric
- data
- drives
- Prior art date
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/14—Handling requests for interconnection or transfer
- G06F13/16—Handling requests for interconnection or transfer for access to memory bus
- G06F13/1605—Handling requests for interconnection or transfer for access to memory bus based on arbitration
- G06F13/1652—Handling requests for interconnection or transfer for access to memory bus based on arbitration in a multiprocessor architecture
- G06F13/1657—Access to multiple memories
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0668—Interfaces specially adapted for storage systems adopting a particular infrastructure
- G06F3/0671—In-line storage system
- G06F3/0683—Plurality of storage devices
- G06F3/0689—Disk arrays, e.g. RAID, JBOD
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C7/00—Arrangements for writing information into, or reading information out from, a digital store
- G11C7/10—Input/output [I/O] data interface arrangements, e.g. I/O data control circuits, I/O data buffers
- G11C7/1006—Data managing, e.g. manipulating data before writing or reading out, data bus switches or control circuits therefor
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Human Computer Interaction (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
Description
본 발명의 실시예는, 설정 가능한 비대칭 복수 배열 독립 디스크(RAID) 저장 기반 반도체 저장장치(SSD) 시스템에 관한 것이다. 특히, 본 발명의 실시예는, 사용자 정책 파라미터(user policy parameters)에 기초하여 RAID 구성을 다이나믹하게 적응(adapt)시키도록 설정되는 비대칭 RAID 컨트롤러 (적어도 하나의) 세트에 관한 것이다.Embodiments of the present invention relate to configurable asymmetric multiple array independent disk (RAID) storage based semiconductor storage (SSD) systems. In particular, embodiments of the present invention relate to a set of asymmetric RAID controllers (at least one) that are set up to dynamically adapt a RAID configuration based on user policy parameters.
관련 출원의 상호 참조Cross Reference of Related Application
본 출원은 2010.04.13.자로 출원되고, "SEMICONDUCTOR STORAGE DEVICE"로 명명되었으며, 공통 소유되고, 동시 계류중인 미국 출원 번호 12/758,937의 일부 실시예에 관련된다. 본 출원은 또한 2010.04.20.자로 출원되고, "RAID CONTROLLED SEMICONDUCTOR STORAGE DEVICE"로 명명되었으며, 공통 소유되고, 동시 계류중인 미국 출원 번호 12/763,701의 일부 실시예에 관련된다. 본 출원은 또한 2010.04.20.자로 출원되고, "RAID CONTROLLER FOR A SEMICONDUCTOR STORAGE DEVICE"로 명명되었으며, 공통 소유되고, 동시 계류중인 미국 출원 번호 12/763,688의 일부 실시예에 관련된다. 본 출원은 또한 2010.08.02.자로 출원되고, "HYBRID RAID CONTROLLER"로 명명되었으며, 공통 소유되고, 동시 계류중인 미국 출원 번호 12/848,281의 일부 실시예에 관련된다. 본 출원은 또한 "SYSTEM ARCHITECTURE BASED ON HYBRID RAID STORAGE"로 명명되었으며, 공통 소유되고, 동시 계류중인 대리인 관리번호 TAIL-0004의 일부 실시예에 관련된다(출원번호와 출원일자는 추후 제공될 것이다).This application, filed Apr. 13, 2010, entitled “SEMICONDUCTOR STORAGE DEVICE”, relates to some embodiments of commonly owned and co-pending US application no. 12 / 758,937. This application is also filed on April 20, 2010, entitled “RAID CONTROLLED SEMICONDUCTOR STORAGE DEVICE,” and relates to some embodiments of commonly owned and co-pending US application no. 12 / 763,701. This application is also filed on April 20, 2010, entitled “RAID CONTROLLER FOR A SEMICONDUCTOR STORAGE DEVICE,” and relates to some embodiments of commonly owned and co-pending US application no. 12 / 763,688. This application also relates to some embodiments of US application No. 12 / 848,281, filed Aug. 02, 2010, named “HYBRID RAID CONTROLLER,” and are commonly owned and co-pending. This application is also named "SYSTEM ARCHITECTURE BASED ON HYBRID RAID STORAGE" and relates to some embodiments of a co-owned, co-pending agent control number TAIL-0004 (application number and application date will be provided later).
더 많은 컴퓨터 저장에 대한 필요가 증가함에 따라, 보다 효율적인 솔루션이 추구되고 있다. 알려진 바와 같이, 데이터 저장 매체로서는, 기계적 방식으로 데이터를 저장/판독하는 다양한 하드 디스크 솔루션이 존재한다. 불행하게도, 하드 디스크와 관련된 데이터 프로세싱 속도는 종종 느려진다. 또한, 기존 솔루션들은 아직도, 데이터 저장 매체와 호스트 간의 인터페이스로서 고속 데이터 입력/출력 성능을 갖는 메모리의 데이터 프로세싱 속도를 따라잡지 못하는 인터페이스를 사용하고 있다. 따라서, 기존 영역에는, 메모리 디스크의 성능이 적절히 활용되지 못하는 문제점이 존재한다.As the need for more computer storage increases, more efficient solutions are being sought. As is known, there are various hard disk solutions for storing / reading data in a mechanical manner as data storage media. Unfortunately, the data processing speed associated with hard disks is often slow. In addition, existing solutions still use interfaces that cannot keep up with the data processing speed of memory with high speed data input / output capability as an interface between the data storage medium and the host. Therefore, there is a problem in the existing area that the performance of the memory disk is not properly utilized.
본 발명의 실시예들은 비대칭 RAID 저장 기반 시스템 아키텍쳐를 제공하는 것을 목적으로 한다.Embodiments of the present invention aim to provide an asymmetric RAID storage based system architecture.
본 발명의 실시예들은, 비대칭 RAID 저장 기반 반도체 저장 장치(SSD) 시스템을 제공한다. 특히 본 발명의 실시예들은, 호스트 컴퓨터에 연결되는 RAID 컨트롤러 (적어도 하나의) 세트를 제공한다. 저장 드라이브 세트는 비대칭 RAID 컨트롤러 각각에 연결된다. 각 저장 장치의 구성 및 RAID 방법은 사용자 정책 파라미터에 기초하여 다이나믹하게 적응된다. Embodiments of the present invention provide an asymmetric RAID storage based semiconductor storage device (SSD) system. In particular, embodiments of the present invention provide a set of RAID controllers (at least one) connected to a host computer. The storage drive set is connected to each of the asymmetric RAID controllers. The configuration and RAID method of each storage device is dynamically adapted based on user policy parameters.
본 발명의 제 1 실시예는 설정 가능한 비대칭 복수 배열 독립 디스크(RAID) 저장 기반 반도체 저장 장치(SSD) 시스템 아키텍쳐를 제공하는 것으로, 호스트 컴퓨터에 연결되는 비대칭 RAID 컨트롤러; 및 상기 비대칭 RAID 컨트롤러에 연결되는 저장 드라이브 세트를 포함하며, 상기 비대칭 RAID 컨트롤러는 저장 성능(performance) 파라미터 세트를 평가하고 상기 평가를 기초로 저장 드라이브 세트 각각의 RAID 구성(configuration)을 다이나믹하게 변화시키도록 적응된다.A first embodiment of the present invention provides a configurable asymmetric multiple array independent disk (RAID) storage based semiconductor storage device (SSD) system architecture, comprising: an asymmetric RAID controller coupled to a host computer; And a set of storage drives coupled to the asymmetric RAID controller, wherein the asymmetric RAID controller evaluates a set of storage performance parameters and dynamically changes the RAID configuration of each of the storage drive sets based on the evaluation. Is adapted to.
본 발명의 제 2 실시예는 설정 가능한 비대칭 복수 배열 독립 디스크(RAID) 저장 기반 반도체 저장 장치(SSD) 시스템 아키텍쳐를 제공하기 위한 방법을 제공하는 것으로, 호스트 컴퓨터에 연결되는 비대칭 RAID 컨트롤러; 및 상기 비대칭 RAID 컨트롤러에 연결되는 저장 드라이브 세트를 포함하며, 상기 비대칭 RAID 컨트롤러는 저장 성능(performance) 파라미터 세트를 평가하고 상기 평가를 기초로 저장 드라이브 세트 각각의 RAID 구성(configuration)을 다이나믹하게 변화시키도록 적응된다.A second embodiment of the present invention provides a method for providing a configurable asymmetric multiple array independent disk (RAID) storage based semiconductor storage device (SSD) system architecture, comprising: an asymmetric RAID controller coupled to a host computer; And a set of storage drives coupled to the asymmetric RAID controller, wherein the asymmetric RAID controller evaluates a set of storage performance parameters and dynamically changes the RAID configuration of each of the storage drive sets based on the evaluation. Is adapted to.
본 발명의 제 3 실시예는 RAID 포맷(format) 내에 데이터를 저장하는 것을 컨트롤하기 위한 비대칭 RAID 컨트롤러 및 저장 드라이브 세트를 포함하는 설정 가능한 디스크 배열 시스템을 제공하는 것으로, 상기 비대칭 RAID 컨트롤러는 저장 성능(performance) 파라미터 세트를 평가하고 상기 평가를 기초로 저장 드라이브 세트 각각의 RAID 구성(configuration)을 다이나믹하게 변화시키도록 적응된다.A third embodiment of the present invention provides a configurable disk array system comprising a set of storage drives and an asymmetric RAID controller for controlling the storage of data in a RAID format. performance) is adapted to evaluate the parameter set and to dynamically change the RAID configuration of each of the storage drive sets based on the evaluation.
본 발명의 제 4 실시예는 RAID 포맷(format) 내에 데이터를 저장하는 것을 컨트롤하기 위한 비대칭 RAID 컨트롤러 및 저장 드라이브 세트를 포함하는 설정 가능한 디스크 배열 시스템을 제공하기 위한 방법을 제공하는 것으로, 상기 비대칭 RAID 컨트롤러는 저장 성능(performance) 파라미터 세트를 평가하고 상기 평가를 기초로 저장 드라이브 세트 각각의 RAID 구성(configuration)을 다이나믹하게 변화시키도록 적응된다.A fourth embodiment of the present invention provides a method for providing a configurable disk array system including a set of storage drives and an asymmetric RAID controller for controlling the storage of data in a RAID format. The controller is adapted to evaluate the storage performance parameter set and to dynamically change the RAID configuration of each of the storage drive sets based on the evaluation.
PCI-익스프레스 인터페이스를 통한 호스트와 메모리 디스크 사이의 데이터 통신 시 호스트와 메모리 디스크 사이에 전송/수신되는 데이터 신호의 동기화를 조절함으로써 호스트에 대해 저속 데이터 프로세싱 속도를 지원하고, 동시에 메모리 디스크에 대한 고속 데이터 프로세싱 속도를 지원하며, 이에 의해 기존 인터페이스 환경에서 최대의 고속 데이터 프로세싱을 가능하게 하는 성능을 지원한다.Adjusts the synchronization of data signals transmitted / received between the host and the memory disk when communicating data between the host and the memory disk via the PCI-Express interface, supporting low data processing speeds for the host, while simultaneously providing high speed data to the memory disk. It supports processing speeds, thereby supporting the capability to enable maximum high-speed data processing in existing interface environments.
본 발명의 이러한 특징들 및 다른 특징들이 첨부되는 도면들과 함께 본 발명의 다양한 실시예에 대한 이하의 상세한 설명들로부터 보다 쉽게 이해될 것이다.
도 1은 본 발명의 일 실시예에 따른 PCI-익스프레스(PCI-e) 타입 RAID 컨트롤 저장장치의 구성을 개략적으로 설명하는 도면이다.
도 2는 도 1의 비대칭 RAID 컨트롤러를 설명하는 도면이다.
도 3은 도 1의 고속 SSD의 구성을 개략적으로 설명하는 도면이다.
도 4는 도 1의 컨트롤러 유닛의 구성을 개략적으로 설명하는 도면이다.
도 5a는 종래의 RAID 컨트롤러를 개략적으로 설명하는 도면이다.
도 5b는 비대칭 RAID 컨트롤러를 개략적으로 설명하는 도면이다.
도 6은 비대칭 RAID 데이터 저장 방법의 플로우를 설명하는 도면이다.
도면들은 크기는 조정될 필요가 없다. 도면들은 본 발명의 구체적인 파라미터들을 나타내지 않고, 단지 개략적으로만 나타낼 뿐이다. 도면들은 단지 본 발명의 통상적인 실시예를 도시하며, 따라서 본 발명의 범위를 제한하는 것으로 이해되어서는 안된다. 도면에서, 유사한 참조번호는 유사한 구성요소를 나타낸다.These and other features of the present invention will be more readily understood from the following detailed description of various embodiments of the invention in conjunction with the accompanying drawings.
1 is a view schematically illustrating a configuration of a PCI-etype (PCI-e) type RAID control storage device according to an embodiment of the present invention.
FIG. 2 is a diagram illustrating an asymmetric RAID controller of FIG. 1.
FIG. 3 is a diagram schematically illustrating a configuration of the fast SSD of FIG. 1.
4 is a diagram schematically illustrating a configuration of a controller unit of FIG. 1.
5A is a diagram schematically illustrating a conventional RAID controller.
5B is a diagram schematically illustrating an asymmetric RAID controller.
6 is a diagram illustrating a flow of an asymmetric RAID data storage method.
The drawings do not need to be scaled. The figures do not represent the specific parameters of the invention, but only represent schematically. The drawings illustrate only typical embodiments of the invention and are therefore not to be understood as limiting the scope of the invention. In the drawings, like reference numerals refer to like elements.
이하 예시적인 실시예를 도시하는 첨부 도면을 참조하여 예시적인 실시예가 보다 완전하게 설명될 것이다. 그러나, 본 개시는 많은 다른 형태로 실시될 수도 있으며, 이하의 예시적인 실시예에 제한되는 것으로 이해되어서는 안된다. 오히려, 이러한 예시적인 실시예들은 본 개시가 완전하고 완벽해짐과 동시에 당업자에게 본 개시의 범위가 완전히 전달될 수 있도록 제공된다. 상세한 설명에서, 잘 알려진 구성 및 기술들에 대한 상세한 설명은 나타내어지는 실시예의 불필요한 불명확성을 피하게 위해 생략된다.Exemplary embodiments will now be described more fully with reference to the accompanying drawings, in which exemplary embodiments are shown. However, the present disclosure may be embodied in many other forms and should not be construed as limited to the following example embodiments. Rather, these exemplary embodiments are provided so that this disclosure will be thorough and complete, and will fully convey the scope of the disclosure to those skilled in the art. In the detailed description, detailed descriptions of well-known structures and techniques are omitted to avoid unnecessary ambiguity in the embodiments shown.
여기에 사용되는 용어는 특정 실시예를 설명하기 위한 목적으로만 사용되며 본 개시를 제한하지 않는다. 여기에 사용되는 단수형 "일", "하나", 및 "그" 는 문맥이 명확히 다른 것을 나타내지 않는 이상, 복수형을 포함하는 것이다. 또한, "일", "하나" 등의 용어 사용은 양의 한정을 의미하지 않고, 오히려 참조되는 항목이 적어도 하나 존재한다는 것을 의미한다. 본 명세서에서 사용되는 "포함한다" 및/또는 "포함하는", 또는 "구성된다" 및/또는 "구성되는"이라는 용어는 기술되는 특징, 영역, 정수, 단계, 동작, 구성요소, 및/또는 컴포넌트의 존재를 명시하며, 일 이상의 다른 특징, 영역, 정수, 단계, 동작, 구성요소, 컴포넌트, 및 또는 이의 그룹들의 존재 또는 추가를 불가능하게 하는 것이 아니다. 또한, 여기에 사용되는 RAID라는 용어는 복수 배열 독립 디스크(초기에는, 복수 배열 저가 디스크)를 의미한다. 일반적으로, RAID 기술은 다중 하드 디스크의 상이한 공간에 동일한 데이터를 (따라서, 불필요하게) 저장하는 방법이다. 다중 디스크에 데이터를 배치시킴으로써, I/O(Input/Output) 동작이 성능을 향상시키는 균형적인 방법으로 오버랩될 수 있다. 다중 디스크가 평균 고장 간격(MTBF: Mean Time Between Failure)을 증가시키기 때문에, 불필요하게 저장되는 데이터 또한 내고장성을 증가시킨다. SSD라는 용어는 반도체 저장 장치를 의미한다. 플래시 메모리라는 용어는 더블 데이터 레이트(Double Data Rate)를 의미한다. 그리고, HDD라는 용어는 하드 디스크 드라이브를 의미한다. The terminology used herein is for the purpose of describing particular embodiments only and is not intended to limit the present disclosure. As used herein, the singular forms "a", "an" and "the" are intended to include the plural forms as well, unless the context clearly indicates otherwise. In addition, the use of the terms "one", "one" and the like does not imply a limitation on the quantity, but rather means that at least one of the referenced items exists. As used herein, the terms “comprises” and / or “comprising”, or “consists of” and / or “consists of” refer to features, regions, integers, steps, actions, components, and / or described features. It is intended to specify the presence of a component and not to disable the presence or addition of one or more other features, regions, integers, steps, actions, components, components, and groups thereof. In addition, the term RAID used herein means a plurality of array independent disks (initially, a plurality of array low cost disks). In general, RAID technology is a method of storing the same data (and therefore unnecessarily) in different spaces of multiple hard disks. By placing data on multiple disks, input / output (I / O) operations can overlap in a balanced way to improve performance. Since multiple disks increase the Mean Time Between Failure (MTBF), unnecessarily stored data also increases fault tolerance. The term SSD refers to a semiconductor storage device. The term flash memory refers to a double data rate. The term HDD means a hard disk drive.
다르게 정의되지 않는 이상, 여기에 사용된 (기술적 및 과학적 용어들을 포함하는) 모든 용어는 당업자에 의해 보통 이해되는 것과 동일한 의미를 갖는다. 보통 사용되는 사전에서 정의되는 것들과 같은 용어들은 관련 기술 및 본 개시의 문맥에서의 의미와 일치하는 의미를 갖는 것으로 해석되고, 여기에 명확히 정의되지 않는 이상 이상화시키는 의미 또는 전체적으로 형식적인 의미로 해석되지 않음이 이해될 것이다.Unless defined otherwise, all terms (including technical and scientific terms) used herein have the same meaning as commonly understood by one of ordinary skill in the art. Terms such as those defined in the commonly used dictionaries are to be interpreted to have a meaning consistent with the meanings in the relevant description and context of the present disclosure, and are not to be interpreted as idealizing or as a whole in a formal sense unless expressly defined herein. Will be understood.
이하 일 실시예에 따른 직렬 접속 소형 컴퓨터 시스템 인터페이스(SAS)/직렬 고급 기술 접속(SAIA) 타입과 같은 I/O 표준의 RAID 저장 장치가 첨부 도면을 참조로 상세히 설명될 것이다.Hereinafter, a RAID storage device of an I / O standard, such as a Serial Attached Small Computer System Interface (SAS) / Serial Advanced Technology Access (SAIA) type, according to one embodiment will be described in detail with reference to the accompanying drawings.
상기에서 보여진 것처럼, 본 발명의 실시예들은 비대칭 RAID 저장 기반 시스템 아키텍쳐를 제공한다. 특히 본 발명의 실시예들은, 시스템 보드에 연결되는 비대칭 RAID 컨트롤러를 제공한다. 저장 드라이브 세트가 상기 비대칭 RAID 컨트롤러에 연결된다. 각 저장 장치의 구성 및 RAID 방법은 사용자 정책 파라미터에 기초하여 다이나믹하게(dynamically) 적응된다. As shown above, embodiments of the present invention provide an asymmetric RAID storage based system architecture. In particular, embodiments of the present invention provide an asymmetric RAID controller connected to a system board. A set of storage drives is connected to the asymmetric RAID controller. The configuration and RAID method of each storage device is dynamically adapted based on user policy parameters.
직렬 접속 소형 컴퓨터 시스템 인터페이스(SAS)/ 직렬 고급 기술 접속(SATA) 타입과 같은 I/O 표준 저장 장치는 PCI-익스프레스 인터페이스를 통한 호스트와 메모리 디스크 사이의 데이터 통신 시 호스트와 메모리 디스크 사이에 전송/수신되는 데이터 신호의 동기화를 조절함으로써 호스트에 대해 저속 데이터 프로세싱 속도를 지원하고, 동시에 메모리 디스크에 대한 고속 데이터 프로세싱 속도를 지원하며, 이에 의해 기존 인터페이스 환경에서 최대의 고속 데이터 프로세싱을 가능하게 하는 성능을 지원한다. PCI-익스프레스 기술이 통상적인 실시예에서 활용될 것임에도, 다른 변형들이 가능함이 사전에 이해된다. 예를 들어, 본 발명은 SAS/SATA 인터페이스를 활용하는 SAS/SATA 타입 저장 장치가 제공되는 SAS(Small Computer System Interface)/SATA(Serial Advanced Technology Advancement) 기술을 활용할 수 있다.I / O standard storage devices, such as the Serial Attached Small Computer System Interface (SAS) / Serial Advanced Technology Attachment (SATA) types, transfer between host and memory disks during data communication between the host and memory disks through the PCI-Express interface. By adjusting the synchronization of incoming data signals, it supports low data processing speeds for the host and at the same time high data processing speeds for the memory disk, thereby enabling maximum high speed data processing in the existing interface environment. Support. Although PCI-Express technology will be utilized in conventional embodiments, it is understood in advance that other variations are possible. For example, the present invention may utilize Small Computer System Interface (SAS) / Serial Advanced Technology Advancement (SATA) technology provided with a SAS / SATA type storage device utilizing a SAS / SATA interface.
도 1을 참조하면, 본 발명의 일 실시예에 따른 PCI-익스프레스 타입, RAID 컨트롤 저장 장치(예를 들면, 직렬로 접속되는 컴퓨터 장치를 위한 저장을 제공함)의 구성을 개략적으로 설명하는 도면이 도시된다. 도시되는 바와 같이, 도 1은, 복수의 휘발성 반도체 메모리(여기에서 고속 SSD(100)로 지칭됨)를 갖는 복수의 메모리 디스크; SSD(100)에 결합되는 RAID 컨트롤러(800); 메모리 디스크 유닛과 호스트 사이를 인터페이스하는 인터페이스 유닛(200)(예를 들면, PCI-익스프레스 호스트); 컨트롤러 유닛(300); PCI-익스프레스 호스트 인터페이스 유닛을 통해 호스트로부터 전송되는 전력을 사용하여 소정 전력을 유지하기 위해 충전되는 보조 전력 소스 유닛(400); PCI-익스프레스 호스트 인터페이스 유닛을 통해 호스트로부터 전송되는 전력이 차단되거나 호스트로부터 전송되는 전력에 에러가 발생할 때, PCI-익스프레스 호스트 인터페이스 유닛을 통해 호스트로부터 컨트롤러 유닛, 메모리 디스크 유닛, 백업 저장 유닛, 백업 컨트롤 유닛으로 전송되는 전력을 공급하고, 보조 전력 소스 유닛으로부터 전력을 수신하며 컨트롤러 유닛을 통해 메모리 디스크 유닛에 전력을 공급하는 전력 소스 컨트롤 유닛(500); 메모리 디스크 유닛의 데이터를 저장하는 백업 저장 유닛(600A-B); 및 호스트로부터의 명령에 따라서, 또는 호스트로부터 전송되는 전력에 에러가 발생할 때, 메모리 디스크 유닛에 저장된 데이터를 백업 저장 유닛에 백업하는 백업 컨트롤 유닛(700)을 포함하는, 메모리 디스크 유닛(100)으로 구성되는 본 발명의 일 실시예에 따른 RAID 컨트롤 PCI-익스프레스 타입 저장 장치를 도시한다.Referring to FIG. 1, there is shown a diagram schematically illustrating the configuration of a PCI-Express type, RAID control storage device (e.g., providing storage for a serially connected computer device) in accordance with one embodiment of the present invention. do. As shown, FIG. 1 includes a plurality of memory disks having a plurality of volatile semiconductor memories (herein referred to as high speed SSD 100); A
메모리 디스크 유닛(100)은 고속 데이터 입력/출력을 위한 복수의 휘발성 반도체 메모리/또는 비휘발성 반도체 메모리(예를 들면, 플래시 메모리, 플래시 메모리2, 플래시 메모리3, SDRAM 등)를 포함하는 복수의 메모리 디스크로 구성되고, 컨트롤러(300)의 컨트롤에 따라 데이터를 입력 및 출력한다. 메모리 디스크 유닛(100)은 메모리 디스크가 병렬로 배열되는 구성을 가질 수도 있다.The
PCI-익스프레스 호스트 인터페이스 유닛(200)은 호스트와 메모리 디스크 유닛(100) 사이를 인터페이스한다. 호스트는 PCI-익스프레스 인터페이스 및 전력 소스 공급 장치를 포함하는 컴퓨터 시스템 또는 이와 유사한 것일 수 있다.The PCI-Express
컨트롤 유닛(300)은 PCI-익스프레스 호스트 인터페이스 유닛(200)과 메모리 디스크 유닛(100) 사이에 전송/수신되는 데이터 신호의 동기화를 조정하여 PCI-익스프레스 호스트 인터페이스 유닛(200)과 메모리 디스크 유닛(100) 간의 데이터 전송/수신 속도를 컨트롤한다.The
도시되는 바와 같이, PCI-e 타입 RAID 컨트롤러(800)가 임의의 수의 SSD(100)에 직접적으로 결합될 수 있다. 특히, 이는 SSD(100)의 최적화된 컨트롤을 허용한다. 특히, RAID 컨트롤러(800)의 사용은, As shown, the PCI-e
1. 전류 백업/복구 동작을 지원한다. 1. Supports current backup / recovery operation.
2. 이하를 수행함으로써 추가적이고 향상된 백업 기능을 제공한다. 2. Provide additional and improved backup capabilities by doing the following:
a) 내부 백업 컨트롤러는 백업을 판단한다(사용자의 요청 순서 또는 상태 모니터가 전력 공급 문제를 검출한다); a) the internal backup controller determines the backup (user's request order or status monitor detects a power supply problem);
b) 내부 백업 컨트롤러는 SSD로의 데이터 백업을 요청한다; b) the internal backup controller requests data backup to the SSD;
c) 내부 백업 컨트롤러는 내부 백업 장치에 데이터 백업을 즉시 할 것을 요청한다; c) the internal backup controller requests the internal backup device to immediately back up the data;
d) SSD 및 내부 백업 컨트롤러에 대한 백업 상태를 모니터한다; d) monitor backup status for SSD and internal backup controller;
e) 내부 백업 컨트롤러의 상태 및 엔드 동작(end-op)을 리포트한다;e) report the status and end-op of the internal backup controller;
3. 이하를 수행함으로써 추가적이고 향상된 복구 기능을 제공한다. 3. Provide additional and improved recovery capabilities by doing the following:
a) 내부 백업 컨트롤러는 복구를 판단한다(사용자의 요청 순서 또는 상태 모니터가 전력 공급 문제를 검출한다);a) the internal backup controller determines recovery (user's request order or status monitor detects a power supply problem);
b) 내부 백업 컨트롤러는 SSD로의 데이터 복구를 요청한다; b) the internal backup controller requests data recovery to the SSD;
c) 내부 백업 컨트롤러는 내부 백업 장치에 데이터 복구를 즉시 할 것을 요청한다; c) the internal backup controller requests the internal backup device to immediately recover data;
d) SSD 및 내부 백업 컨트롤러에 대한 복구 상태를 모니터한다; d) monitor recovery status for SSD and internal backup controller;
e) 내부 백업 컨트롤러의 상태 및 엔드 동작(end-op)을 리포트한다.e) Report the status and end-op of the internal backup controller.
도 2를 참조하면, SSD 메모리 디스크 유닛 (적어도 하나의) 세트(100) 및 HDD/플래시 메모리 유닛 세트에 연결되는 도 1 및 2의 비대칭 RAID 컨트롤러(800)가 보다 상세하게 도시된다(도 1에서 유닛(810)으로 총괄적으로 도시됨). 도시되는 바와 같이, 비대칭 RAID 컨트롤러(800)는 일반적으로, 호스트 인터페이스(820); 상기 호스트 인터페이스(820)에 연결되는 디스크 컨트롤러(830); 및 고속 호스트 인터페이스(840)를 포함한다. 디스크 컨트롤러(830)에 또한 연결되는 것은 제 1 디스크 모니터링 유닛(860A)으로, 이는 제 1 디스크 마운트(850A)에 연결된다. 일반적으로, SSD 메모리 디스크 유닛(100)은 제 1 디스크 마운트(850A)에 마운트 되며 제 1 디스크 모니터링 유닛(860A)에 의해 탐지(detect)된다. 또한 디스크 컨트롤러(830)에 연결되는 것은 제 2 디스크 모니터링 유닛(860B)으로서, 이는 제 2 디스크 마운트(850B)에 연결된다. 일반적으로, HDD/플래시 메모리 유닛(110)은 제 2 디스크 마운트(850B)에 마운트 되며 제 2 디스크 모니터링 유닛(860B)에 의해 탐지된다. 디스크 플러그 앤 플레이(PnP 컨트롤러(870))는 제 1 디스크 마운트(850A) 및 제 2 디스크 마운트(850B)와 관련된 기능 및/또는 탐지 기능을 컨트롤한다. 일반적으로, 비대칭 RAID 컨트롤러(800)는 SSD 메모리 디스크 유닛(100) 및 HDD/플래시 메모리 유닛(110)의 작동을 컨트롤한다. 이는 SSD 메모리 디스크 유닛(100) 및 HDD/플래시 메모리 유닛(110)의 탐지, 그로부터의 데이터 검색 및 저장 등을 포함한다. Referring to FIG. 2, the
도 3을 참조하면, 고속 SSD(100)의 구성을 개략적으로 설명하는 도면이 도시된다. 도시되는 바와 같이, SSD 메모리 디스크 유닛(100)은, 호스트 인터페이스(202)(예를 들면 PCI-익스프레스 호스트)(도 1의 인터페이스(200) 또는 도시된 바와 같이 분리된 인터페이스일 수 있는); 백업 컨트롤 모듈(700)과 인터페이스 하는 직접 메모리 액세스(DMA: Direct Memory Access) 컨트롤러(302); ECC 컨트롤러(304); 및 고속 저장에 사용되는 메모리(602)의 하나 또는 그 이상의 블록(604)을 컨트롤하기 위한 메모리 컨트롤러(306); 포함한다.Referring to FIG. 3, a diagram schematically illustrating a configuration of the
도 4를 참조하면, 도 1의 컨트롤러 유닛(300)은, SSD 메모리 디스크 유닛(100)의 데이터 입력/출력을 컨트롤하는 메모리 컨트롤 모듈(310); PCI-익스프레스 호스트 인터페이스 유닛(200)을 통해 수신된 호스트로부터의 지시에 따라, SSD 메모리 디스크 유닛(100)으로부터 데이터를 판독하여 호스트에 해당 데이터를 제공하거나, 메모리 컨트롤 모듈(310)을 컨트롤하여 SSD 메모리 디스크 유닛(100)에 데이터를 저장하는, 직접 메모리 액세스(DMA: Direct Memory Access) 컨트롤 모듈(320); DMA 컨트롤 모듈(320)의 컨트롤에 따라 데이터를 버퍼하는 버퍼(330); DMA 컨트롤 모듈(320)의 컨트롤에 의해 DMA 컨트롤 모듈(320) 및 메모리 컨트롤 유닛(310)을 통해 SSD 메모리 디스크 유닛(100)으로부터 판독된 데이터에 대응되는 데이터 신호를 수신할 때, 데이터 신호의 동기화를 조정하여 PCI-익스프레스 통신 프로토콜에 대응되는 통신 속도로 PCI-익스프레스 호스트 인터페이스 유닛(200)으로 동기화된 데이터 신호를 전송할 수 있도록 하고, PCI-익스프레스 호스트 인터페이스 유닛(200)을 통해 호스트로부터 데이터 신호를 수신할 때, 데이터 신호의 동기화를 조정하여 SSD 메모리 디스크 유닛(100)에 의해 사용되는 통신 프로토콜(예를 들면, PCI, PCI-x 또는 PCI-e 등)에 대응되는 전송 속도로 DMA 컨트롤 모듈(320) 및 메모리 컨트롤 모듈(310)을 통해 SSD 메모리 디스크 유닛(100)으로 동기화된 데이터 신호를 전송할 수 있도록 하는 동기화 컨트롤 모듈(340); 및 동기화 컨트롤 모듈(340) 및 DMA 컨트롤 모듈(320) 사이에서 고속으로 전송/수신되는 데이터를 프로세싱하는 고속 인터페이스 모듈(350)로 구성된다. 여기서, 고속 인터페이스 모듈(350)은 더블 버퍼 구조를 갖는 버퍼 및 원형 큐(queue) 구조를 갖는 버퍼로 구성되고, 데이터를 버퍼링하고 데이터 클록을 조정함으로써 손실 없이 고속으로 동기화 컨트롤 모듈(340)과 DMA 컨트롤 모듈(320) 사이에 전송/수신되는 데이터를 프로세싱한다.Referring to FIG. 4, the
도 5a는 종래의 대칭 및 고정된(static) RAID 컨트롤러 아키텍쳐를 개략적으로 도시한다. RAID는 높은 수준의 성능, 신뢰, 및/또는 더 큰 데이터 볼륨 사이즈를 달성하기 위해 복수 저장 드라이브의 동시적인 사용을 채택하는 기술이다. 이는 저장 관리를 단순화하도록 복수 하드 드라이브를 하나의 저장 볼륨처럼 제시(presenting) 함으로써 달성된다. 도 5a에서, 호스트(410)는 RAID 컨트롤러(412)에 연결된다. 스토리지 A(418)는 인터페이스 A(414)를 경유하여 RAID 컨트롤러(412)에 연결된다. 스토리지 A'(420)는 인터페이스 A'(416)를 경유하여 RAID 컨트롤러(412)에 연결된다. 종래의 RAID 운영(schemes)은 작동을 위한 동일하고 대칭적인 스토리지를 상정한다. 그러한 대칭성은 RAID 성능을 타협한다(compromise). 실제로, 스토리지는 모두 다르며 실제 동작시에는 심지어 더욱 다를 수 있다.5A schematically illustrates a conventional symmetrical and static RAID controller architecture. RAID is a technology that employs simultaneous use of multiple storage drives to achieve high levels of performance, reliability, and / or larger data volume sizes. This is accomplished by presenting multiple hard drives as one storage volume to simplify storage management. In FIG. 5A, host 410 is connected to
도 5b는 본 발명의 일 실시예에 따른 비대칭 RAID 컨트롤러 아키텍쳐를 개략적으로 도시한다. 비대칭 RAID 컨트롤러(432)는 호스트(430)에 연결된다. 스토리지 1(442)은 인터페이스 1(436)을 경유하여 비대칭 RAID 컨트롤러(432)에 연결된다. 스토리지 2(444)는 인터페이스 2(438)를 경유하여 비대칭 RAID 컨트롤러(432)에 연결된다. 스토리지 1(442)을 위한 RAID는 파라미터 세트 1(434)에 의해 컨트롤 된다. 스토리지 2(444)를 위한 RAID는 파라미터 세트 2(440)에 의해 컨트롤 된다. 비대칭 RAID 컨트롤러는 저장에 있어서 최적의 성능을 허가하도록 RAID 구성에 있어서 비대칭성을 허락한다.5B schematically illustrates an asymmetric RAID controller architecture according to one embodiment of the invention.
RAID 내의 데이터는 다양한 데이터 저장 기술, 스트라이핑(striping), 미러링(mirroring), 스트라이핑 패리티(striping parity) 또는 이들의 조합, 을 이용하여 저장될 수 있다. 데이터 미러링은, 중복(redundancy)과 읽기 속도를 제공하도록 동일한 데이터를 두 개의 하드 드라이브에 저장한다. 만일 하나의 드라이브에 문제가 생겨도 다른 드라이브가 여전히 데이터를 가지고 있으므로, 이로서 중복(redundant)이 된다. 데이터 스트라이핑은 데이터를 복수의 하드 드라이브에 분산시킨다. 스트라이핑 단독으로는 내고장성의 관점에서 신뢰할 수 없다. 패리티가 추가된 스트라이핑은 신뢰도의 문제를 해결할 수 있는데 이는 보통의 데이터 스트라이핑처럼 데이터가 복수의 하드 드라이브에 걸쳐 스트라이핑 되지만 패리티가 생성되어 하나 또는 그 이상의 하드 드라이브에 저장되기 때문이다. 패리티 데이터는 배열 내에서 하나 또는 두 개의 하드 드라이브에 문제가 생기면 RAID 볼륨이 재 구성되도록 허락한다. Data in a RAID may be stored using various data storage techniques, striping, mirroring, striping parity, or a combination thereof. Data mirroring stores the same data on two hard drives to provide redundancy and read speeds. If one drive fails, the other drive still has data, which makes it redundant. Data striping spreads data across multiple hard drives. Striping alone is not reliable in terms of fault resistance. Striping with added parity solves the problem of reliability because, like normal data striping, data is striped across multiple hard drives, but parity is created and stored on one or more hard drives. Parity data allows a RAID volume to be rebuilt if one or two hard drives fail in the array.
이러한 기술 각각은 사용자의 목표(goal)에 따라서 이점과 불리한 점을 가진다. RAID 최적화 목표는 사용자가 정한 정책에 기초한다. 데이터 저장 기술이 어떻게 RAID 설정 및 방법에 적용될 것인지에 영향을 미치는, 사용자에 의해 특정되는 파라미터 세트에 의해 사용자 정책은 지배된다. 상기 파라미터 세트는 RAID 하드웨어 파라미터에 관련되며, 대기시간(latency), 용량(capacity), 처리량(throughput), 캐시구성(cache configuration) 및 신뢰성을 포함하나 이에 한정되지 않는다. RAID 컨트롤러는, 파라미터 세트를 평가하고, 사용자가 정한 정책에 기초하여 사용자 목표의 더 나은 최적화를 허락하는 임의의 저장 구성(storage configuration)을 결정한다. Each of these techniques has advantages and disadvantages depending on the user's goal. RAID optimization goals are based on user-defined policies. User policy is governed by a set of parameters specific to the user that affects how data storage techniques will be applied to RAID settings and methods. The parameter set relates to RAID hardware parameters and includes, but is not limited to, latency, capacity, throughput, cache configuration, and reliability. The RAID controller evaluates the parameter set and determines any storage configuration that allows for better optimization of the user's goals based on user-defined policies.
도 6은 비대칭 RAID 데이터 저장 방법의 플로우를 도시한다. 비대칭 RAId 컨트롤러는 접속된(attached) 저장 성능 파라미터를 측정하고 평가한다(단계 S1). RAID 컨트롤러는 대기시간, 용량, 처리량, 및 신뢰성과 같은 비대칭 및 다이나믹 RAID 목표를 달성하기 위해 저장 파라미터를 분석한다(단계 S2). RAID 컨트롤러는 동일한 RAID 구성(설정)(configuration) 하에서 저장 파라미터가 변할 때 RAID 파라미터를 업데이트한다(단계 S3). 만일 RAID 재 구성이 요구된다면(단계 S4), RAID 파라미터 및 목표에 기초하여 RAID가 재 구성(설정)된다(단계 S5). 또한, 모든 디스크의 페일(fail)과 같은 극한 상태 하에서 RAID 컨트롤러는 RAID 구성이 변경되도록 강요한다.6 shows a flow of asymmetric RAID data storage method. The asymmetric RAId controller measures and evaluates the attached storage performance parameter (step S1). The RAID controller analyzes the storage parameters to achieve asymmetric and dynamic RAID targets such as latency, capacity, throughput, and reliability (step S2). The RAID controller updates the RAID parameters when the storage parameters change under the same RAID configuration (step S3). If RAID reconfiguration is required (step S4), RAID is reconfigured (set) based on the RAID parameters and targets (step S5). In addition, under extreme conditions such as the failure of all disks, the RAID controller forces the RAID configuration to change.
RAID 기술인 스트라이핑은 하나의 데이터 집합(single chunk of data)을 취하여 복수의 드라이브에 걸쳐 퍼뜨린다. 스트라이핑이 가지는 이점은 향상된 성능에 있다. 동일한 데이터가 단일의 드라이브에 기록되는 것과 비교하여, 두 배의 양의 데이터가 주어진 타임 프레임 내에 두 개의 드라이브에 기록될 수 있다. 도 5b를 다시 참조하여, 대기시간 저장 파라미터가 스토리지 1 및 스토리지 2에 대해 다르게 설정된 예를 고려하여 본다. 대기시간, 또는 지연은, 지정된 한 지점으로부터 다른 지점까지 데이터의 패킷이 도달하는데 얼마나 걸리는지를 의미한다. 만일, 스토리지 1을 위한 RAID 대기시간 저장 파라미터가 스토리지 2를 위한 대기시간 파라미터 보다 낮다면, 파일이나 블록의 시작 부분은 스토리지 1에 저장되고 그 후 부분은 스토리지 2에 저장되어, 전체적인 대기시간이 감소되도록 스트라이핑이 수행될 수 있다. 스토리지 1을 위한 대기시간 파라미터가 스토리지 2를 위한 것보다 현저하게 낮은 극한 케이스에 있어서, RAID 대기시간은 (부분적인) 스토리지 1의 역할을 스토리지 2의 RAID된 캐시(RAIDed cache)로 변경함으로써 더욱 최적화 될 수 있다. Striping, a RAID technology, takes a single chunk of data and spreads it across multiple drives. The advantage of striping is in improved performance. Compared to the same data being written to a single drive, twice the amount of data can be written to two drives within a given time frame. Referring again to FIG. 5B, consider an example where the latency storage parameter is set differently for storage 1 and storage 2. Latency, or delay, means how long it takes for a packet of data to arrive from one point to another. If the RAID latency storage parameter for storage 1 is lower than the latency parameter for storage 2, the beginning of the file or block is stored in storage 1 and then the part is stored in storage 2, reducing the overall latency. Striping may be performed as desired. In extreme cases where the latency parameters for Storage 1 are significantly lower than for Storage 2, the RAID latency is further optimized by changing the role of (partial) Storage 1 to RAID 2's RAIDed cache. Can be.
또한, 만일 스토리지 1을 위한 RAID 처리량 저장 파라미터가 스토리지 2를 위한 처리량 파라미터보다 높다면, 더 많은 데이터가 스토리지 1에 저장되도록 스트라이핑이 수행될 수 있다. 스토리지 1이 더 많은 부분의 파일 또는 블록을 스토리지 2에 비하여 홀드(hold) 하기 때문에 처리량은 극대화된다. 파일 또는 블록을 로딩할 때, 파일 또는 블록은 모든 블록 및 파일이 완전히 로딩될 때까지 비례해서(proportionally) 로딩된다. In addition, if the RAID throughput storage parameter for storage 1 is higher than the throughput parameter for storage 2, striping may be performed such that more data is stored in storage 1. Throughput is maximized because storage 1 holds more files or blocks than storage 2. When loading a file or block, the file or block is loaded proportionally until all the blocks and files are fully loaded.
스토리지 1을 위한 RAID 용량 저장 파라미터가 스토리지 2를 위한 용량 저장 파라미터에 비해 낮은 경우, RAID 컨트롤러는 데이터를 저장할 때 스트라이핑을 비례적으로 조정한다. 스토리지 1을 위한 RAID 중복(redundancy) 저장 파라미터가 스토리지 2를 위한 동일한 파라미터보다 낮은 경우에는, RAID 컨트롤러는 더 나은 중복을 위하여 더 많은 데이터를 스토리지 2에 할당한다. If the RAID capacity storage parameter for storage 1 is lower than the capacity storage parameter for storage 2, the RAID controller adjusts the striping proportionally when storing data. If the RAID redundancy storage parameter for storage 1 is lower than the same parameter for storage 2, the RAID controller allocates more data to storage 2 for better redundancy.
상기에 열거된 예들은 예시적인 것에 불과하며 제한의 의도로 열거된 것이 아니다. 예를 들어, 저장 장치의 숫자는 두 개 이상일 수 있으며, 임의의 개수의 비슷한(comparable) 스토리지가 있을 때 많은 성능 목표가 달성될 수 있다. 하나의 또는 그 이상의 사용자 목표를 달성하도록 지원하는 사용자가 정한 정책에 기초하여, 임의의 기술 또는 그 기술들의 조합이 RAID 컨트롤러에 의하여 채택될 수 있다.The examples listed above are illustrative only and are not intended to be limiting. For example, the number of storage devices can be two or more, and many performance goals can be achieved when there are any number of comparable storage. Based on user-defined policies that assist in achieving one or more user goals, any technology or combination of technologies may be employed by the RAID controller.
다시 도 1을 참조하면, 보조 전력 소스 유닛(400)은 재충전 가능한 배터리 등으로 구성되며, 정상적으로 충전되어 PCI-익스프레스 호스트 인터페이스 유닛(200)을 통해 호스트로부터 전송되는 전력을 사용하여 소정 전력을 유지하고 전력 소스 컨트롤 유닛(500)의 컨트롤에 따라 전력 소스 컨트롤 유닛(500)에 충전된 전력을 공급할 수 있다.Referring back to FIG. 1, the auxiliary
전력 소스 컨트롤 유닛(500)은 PCI-익스프레스 호스트 인터페이스를 통해 호스트로부터 컨트롤러 유닛(300), 메모리 디스크 유닛(100), 백업 저장 유닛(600) 및 백업 컨트롤 유닛(700)으로 전송되는 전력을 공급한다. The power
또한, PCI-익스프레스 호스트 인터페이스 유닛(200)을 통해 호스트로부터 전송되는 전력이 차단됨에 따라 호스트의 전력 소스에 에러가 발생하거나, 호스트로부터 전송되는 전력이 임계값을 벗어날 때, 전력 소스 컨트롤 유닛(500)은 보조 전력 소스 유닛(400)으로부터 전력을 수신하고 컨트롤러 유닛(300)을 통해 메모리 디스크 유닛(100)으로 전력을 공급한다.In addition, when the power transmitted from the host through the PCI-Express
백업 저장 유닛(600A-B)은 하드 디스크와 같은 저속 비휘발성 저장 장치로 구성되며 메모리 디스크 유닛(100)의 데이터를 저장한다. The
백업 컨트롤 유닛(700)은 백업 저장 유닛(600)의 데이터 입력/출력을 컨트롤함으로써 메모리 디스크 유닛(100)에 저장된 데이터를 백업 저장 유닛(600)에 백업하고 호스트로부터의 지시에 따라서, 또는 호스트로부터 전송되는 전력이 임계값을 벗어남에 따라 호스트의 전력 소스에 에러가 발생할 때, 메모리 디스크 유닛(100)에 저장된 데이터를 백업 저장 유닛(600)에 백업한다. The
예시적인 실시예가 도시되고 설명되었으며, 당업자는 형태적으로 및 상세적으로 다양한 변형들이 첨부된 특허청구범위에 의해 규정되는 본 개시의 사상 및 범위를 벗어나지 않는 범위 내에서 가능하다는 것을 이해할 것이다. 또한, 다양한 수정들이 이루어져 필수적 범위를 벗어나지 않는 범위 내에서 특정 상황 또는 물질이 본 개시의 시사에 적용될 수 있다. 따라서, 본 개시는 본 개시를 실시하기 위해 고려된 최선의 형태로서 개시된 예시적인 특정 실시예에 제한되지 않으며, 본 개시는 첨부되는 특허청구범위의 범위 내에 속하는 모든 실시예들을 포함한다.Illustrative embodiments have been shown and described, and those skilled in the art will understand that various modifications in form and detail are possible without departing from the spirit and scope of the disclosure as defined by the appended claims. In addition, various modifications may be made and specific circumstances or materials may be applied to the teachings of the present disclosure without departing from the essential scope. Accordingly, the present disclosure is not limited to the specific exemplary embodiments disclosed as the best mode contemplated for carrying out the present disclosure, and the disclosure includes all embodiments falling within the scope of the appended claims.
본 발명은 PCI-익스프레스 인터페이스를 통한 호스트와 메모리 디스크 사이의 데이터 통신 시 호스트와 메모리 디스크 사이에 전송/수신되는 데이터 신호의 동기화를 조절함으로써 호스트에 대해 저속 데이터 프로세싱 속도를 지원하고, 동시에 메모리 디스크에 대한 고속 데이터 프로세싱 속도를 지원하며, 이에 의해 기존 인터페이스 환경에서 최대의 고속 데이터 프로세싱을 가능하게 하는 성능을 지원한다.The present invention supports the slow data processing speed for a host by adjusting the synchronization of data signals transmitted / received between the host and the memory disk during data communication between the host and the memory disk via the PCI-Express interface, and simultaneously supporting the memory disk. High-speed data processing speeds are supported, thereby supporting the capability to enable maximum high-speed data processing in existing interface environments.
본 발명의 다양한 실시예에 대한 이상의 설명은 설명의 목적을 위해 표현되었다. 이는 본 발명을 제한하고 개시된 특정 형태에 제한하는 것이 아니며, 용이하게, 많은 수정 및 변형이 가능하다. 당업자에게 자명한 이러한 수정 및 변형은 첨부되는 특허청구범위에 의해 규정되는 본 발명의 범위 내에 속한다.The foregoing description of various embodiments of the invention has been presented for purposes of explanation. It is not intended to be exhaustive or to limit the invention to the precise forms disclosed, and many modifications and variations are possible. Such modifications and variations apparent to those skilled in the art are within the scope of the invention as defined by the appended claims.
100: SSD 메모리 디스크 유닛
200: 인터페이스 유닛
300: 컨트롤러
400: 보조 전력 소스 유닛
500: 전력 소스 컨트롤 유닛
600A-B: 백업 저장 유닛
700: 백업 컨트롤 유닛
800: RAID 컨트롤러100: SSD memory disk unit
200: interface unit
300: controller
400: auxiliary power source unit
500: power source control unit
600A-B: Backup Storage Unit
700: backup control unit
800: RAID controller
Claims (24)
호스트 컴퓨터에 연결되는 비대칭 RAID 컨트롤러; 및
상기 비대칭 RAID 컨트롤러에 연결되고, 이종의 저장 드라이브를 복수 개 가지는 저장 드라이브 세트를 포함하며,
상기 비대칭 RAID 컨트롤러는, 데이터 파일 또는 블록이 외부로부터 상기 저장 드라이브 세트로 저장될 경우, 상기 저장 드라이브 세트들 각각의 대기시간, 처리량 및 용량을 포함하는 저장 성능 파라미터 세트를 평가하고, 상기 저장 드라이브들 중 대기시간 파라미터가 상대적으로 낮은 저장 드라이브에 상기 데이터 파일 또는 블록의 시작부분을 저장하고, 상기 대기시간 파라미터가 상대적으로 높은 저장 드라이브에 상기 데이터 파일 또는 블록의 나머지 부분을 저장하며, 처리량 파라미터 및 용량 파라미터가 각각 상대적으로 높은 저장 드라이브에 더 많은 데이터를 저장하여, 상기 저장 드라이브 세트 각각의 RAID 구성(configuration)이 변경되도록 하는, 설정 가능한 비대칭 복수 배열 독립 디스크(RAID) 저장 기반 반도체 저장 장치(SSD) 시스템 아키텍쳐.A configurable asymmetric multiple array independent disk (RAID) storage based semiconductor storage device (SSD) system architecture,
An asymmetric RAID controller connected to the host computer; And
A storage drive set connected to the asymmetric RAID controller and having a plurality of heterogeneous storage drives,
The asymmetric RAID controller evaluates a set of storage performance parameters including latency, throughput, and capacity of each of the storage drive sets when a data file or block is stored from the outside into the storage drive set, and the storage drives Storing the beginning of the data file or block in a storage drive having a relatively low latency parameter, and storing the remaining portion of the data file or block in a storage drive having a relatively high latency parameter, Configurable asymmetric multiple array independent disk (RAID) storage-based semiconductor storage device (SSD) that stores more data in each storage drive with relatively higher parameters, causing the RAID configuration of each of the storage drive sets to change. System architecture.
사용자로부터 저장 성능 파라미터 세트를 받아들이기 위한 수단; 및
저장 성능 파라미터 세트를 저장하기 위한 수단;을 더 포함하는 설정 가능한 비대칭 복수 배열 독립 디스크(RAID) 저장 기반 반도체 저장 장치(SSD) 시스템 아키텍쳐.The method of claim 1,
Means for accepting a set of storage performance parameters from a user; And
Means for storing a set of storage performance parameters; configurable asymmetric multiple array independent disk (RAID) storage based semiconductor storage device (SSD) system architecture.
상기 저장 성능 파라미터 세트는 상기 저장 드라이버들 각각의 캐시구성 및 신뢰도 중 적어도 하나를 더 포함하는, 설정 가능한 비대칭 복수 배열 독립 디스크(RAID) 저장 기반 반도체 저장 장치(SSD) 시스템 아키텍쳐.The method of claim 1,
And the storage performance parameter set further comprises at least one of a cache configuration and a reliability of each of the storage drivers. 2. The configurable asymmetric multiple array independent disk (RAID) storage based semiconductor storage (SSD) system architecture.
저장 드라이브 세트 각각은 전용(dedicated) 인터페이스를 경유하여 비대칭 RAID 컨트롤러에 연결되는, 설정 가능한 비대칭 복수 배열 독립 디스크(RAID) 저장 기반 반도체 저장 장치(SSD) 시스템 아키텍쳐.The method of claim 1,
A configurable asymmetric multiple array independent disk (RAID) storage-based semiconductor storage device (SSD) system architecture, each of which is a storage drive set connected to an asymmetric RAID controller via a dedicated interface.
상기 비대칭 RAID 컨트롤러는, 기 설정된 상태가 발생할 때 적어도 하나의 저장 드라이브 세트의 RAID 구성을 변경하도록 더 설정되는, 설정 가능한 비대칭 복수 배열 독립 디스크(RAID) 저장 기반 반도체 저장 장치(SSD) 시스템 아키텍쳐.The method of claim 1,
And wherein the asymmetric RAID controller is further configured to change the RAID configuration of at least one set of storage drives when a preset condition occurs. 10. A configurable asymmetric multiple array independent disk (RAID) storage based semiconductor storage device (SSD) system architecture.
데이터 파일 또는 블록이 외부로부터 상기 저장 드라이브 세트로 저장될 경우, 상기 비대칭 RAID 컨트롤러를 이용하여, 상기 저장 드라이브 세트들 각각의 대기시간, 처리량 및 용량을 포함하는 저장 성능 파라미터 세트를 평가하고, 상기 저장 드라이브들 중 대기시간 파라미터가 상대적으로 낮은 저장 드라이브에 상기 데이터 파일 또는 블록의 시작부분을 저장하고, 상기 대기시간 파라미터가 상대적으로 높은 저장 드라이브에 상기 데이터 파일 또는 블록의 나머지 부분을 저장하며, 처리량 파라미터 및 용량 파라미터가 각각 상대적으로 높은 저장 드라이브에 더 많은 데이터를 저장하여, 상기 저장 드라이브 세트 각각의 RAID 구성(configuration)이 변경되도록 하는, 설정 가능한 비대칭 복수 배열 독립 디스크(RAID) 저장 기반 반도체 저장 장치(SSD) 시스템 아키텍쳐를 제공하는 방법.A configurable asymmetric multiple array independent disk (RAD) storage based semiconductor storage device (SSD) system comprising an asymmetric RAID controller connected to a host computer and a set of storage drives connected to the asymmetric RAID controller and having a plurality of heterogeneous storage drives. As a way to provide an architecture,
When a data file or block is stored from the outside into the storage drive set, the asymmetric RAID controller is used to evaluate a storage performance parameter set including latency, throughput and capacity of each of the storage drive sets, and to store the storage drive set. Storing the beginning of the data file or block in a storage drive having a relatively low latency parameter among the drives, storing the remainder of the data file or block in a storage drive having a relatively high latency parameter, a throughput parameter And configurable asymmetric multiple array independent disk (RAID) storage based semiconductor storage device for storing more data in storage drives having relatively high capacity parameters, so that the RAID configuration of each of the storage drive sets is changed. SSD) system How to provide architectures.
사용자로부터 저장 성능 파라미터 세트를 받아들이는 단계; 및
저장 성능 파라미터 세트를 저장하는 단계;를 더 포함하는 설정 가능한 비대칭 복수 배열 독립 디스크(RAID) 저장 기반 반도체 저장 장치(SSD) 시스템 아키텍쳐를 제공하는 방법.The method of claim 7, wherein
Accepting a set of storage performance parameters from a user; And
Storing a set of storage performance parameters; and providing a configurable asymmetric multiple array independent disk (RAID) storage based semiconductor storage device (SSD) system architecture.
상기 저장 성능 파라미터 세트는 상기 저장 드라이버들 각각의 캐시구성 및 신뢰도 중 적어도 하나를 더 포함하는, 설정 가능한 비대칭 복수 배열 독립 디스크(RAID) 저장 기반 반도체 저장 장치(SSD) 시스템 아키텍쳐를 제공하는 방법.The method of claim 7, wherein
And wherein the set of storage performance parameters further comprises at least one of a cache configuration and a reliability of each of the storage drivers.
저장 드라이브 세트 각각은 전용(dedicated) 인터페이스를 경유하여 비대칭 RAID 컨트롤러에 연결되는, 설정 가능한 비대칭 복수 배열 독립 디스크(RAID) 저장 기반 반도체 저장 장치(SSD) 시스템 아키텍쳐를 제공하는 방법.The method of claim 7, wherein
A method of providing a configurable asymmetric multiple array independent disk (RAID) storage based solid state storage device (SSD) system architecture, wherein each set of storage drives is connected to an asymmetric RAID controller via a dedicated interface.
상기 비대칭 RAID 컨트롤러는, 기 설정된 상태가 발생할 때 적어도 하나의 저장 드라이브 세트의 RAID 구성을 변경하도록 더 설정되는, 설정 가능한 비대칭 복수 배열 독립 디스크(RAID) 저장 기반 반도체 저장 장치(SSD) 시스템 아키텍쳐를 제공하는 방법.The method of claim 7, wherein
The asymmetric RAID controller provides a configurable asymmetric multiple array independent disk (RAID) storage based semiconductor storage device (SSD) system architecture that is further configured to change the RAID configuration of at least one storage drive set when a preset condition occurs. How to.
상기 비대칭 RAID 컨트롤러는, 데이터 파일 또는 블록이 외부로부터 상기 저장 드라이브 세트로 저장될 경우, 상기 저장 드라이브 세트들 각각의 대기시간, 처리량 및 용량을 포함하는 저장 성능 파라미터 세트를 평가하고, 상기 저장 드라이브들 중 대기시간 파라미터가 상대적으로 낮은 저장 드라이브에 상기 데이터 파일 또는 블록의 시작부분을 저장하고, 상기 대기시간 파라미터가 상대적으로 높은 저장 드라이브에 상기 데이터 파일 또는 블록의 나머지 부분을 저장하며, 처리량 파라미터 및 용량 파라미터가 각각 상대적으로 높은 저장 드라이브에 더 많은 데이터를 저장하여, 상기 저장 드라이브 세트 각각의 RAID 구성(configuration)이 변경되도록 하는, RAID 포맷(format) 내에 데이터를 저장하는 것을 컨트롤하기 위한 비대칭 RAID 컨트롤러 및 저장 드라이브 세트를 포함하는 설정 가능한 디스크 배열 시스템.A configurable disk array system comprising an asymmetric RAID controller for controlling the storage of data in a RAID format and a set of storage drives having a plurality of heterogeneous storage drives.
The asymmetric RAID controller evaluates a set of storage performance parameters including latency, throughput, and capacity of each of the storage drive sets when a data file or block is stored from the outside into the storage drive set, and the storage drives Storing the beginning of the data file or block in a storage drive having a relatively low latency parameter, and storing the remaining portion of the data file or block in a storage drive having a relatively high latency parameter, An asymmetric RAID controller for controlling the storage of data in a RAID format that stores more data in storage drives each having a relatively higher parameter such that the RAID configuration of each of the storage drive sets is changed; Storage dry Configurable disk array system that includes a set of disks.
사용자로부터 저장 성능 파라미터 세트를 받아들이기 위한 수단; 및
저장 성능 파라미터 세트를 저장하기 위한 수단;을 더 포함하는 RAID 포맷(format) 내에 데이터를 저장하는 것을 컨트롤하기 위한 비대칭 RAID 컨트롤러 및 저장 드라이브 세트를 포함하는 설정 가능한 디스크 배열 시스템.The method of claim 13,
Means for accepting a set of storage performance parameters from a user; And
Means for storing a set of storage performance parameters; a configurable disk array system comprising a set of storage drives and an asymmetric RAID controller for controlling the storage of data in a RAID format.
상기 저장 성능 파라미터 세트는 상기 저장 드라이버들 각각의 캐시구성 및 신뢰도 중 적어도 하나를 더 포함하는, RAID 포맷(format) 내에 데이터를 저장하는 것을 컨트롤하기 위한 비대칭 RAID 컨트롤러 및 저장 드라이브 세트를 포함하는 설정 가능한 디스크 배열 시스템.The method of claim 13,
The set of storage performance parameters includes a set of storage drives and an asymmetric RAID controller for controlling the storage of data in a RAID format, further comprising at least one of cache configuration and reliability of each of the storage drivers. Disk array system.
저장 드라이브 세트 각각은 전용(dedicated) 인터페이스를 경유하여 비대칭 RAID 컨트롤러에 연결되는, RAID 포맷(format) 내에 데이터를 저장하는 것을 컨트롤하기 위한 비대칭 RAID 컨트롤러 및 저장 드라이브 세트를 포함하는 설정 가능한 디스크 배열 시스템.The method of claim 13,
A configurable disk array system comprising an asymmetric RAID controller and a set of storage drives for controlling storage of data in a RAID format, each of the storage drive sets connected to an asymmetric RAID controller via a dedicated interface.
상기 비대칭 RAID 컨트롤러는, 기 설정된 상태가 발생할 때 적어도 하나의 저장 드라이브 세트의 RAID 구성을 변경하도록 더 설정되는, RAID 포맷(format) 내에 데이터를 저장하는 것을 컨트롤하기 위한 비대칭 RAID 컨트롤러 및 저장 드라이브 세트를 포함하는 설정 가능한 디스크 배열 시스템.The method of claim 13,
The asymmetric RAID controller includes an asymmetric RAID controller and a set of storage drives for controlling storage of data in a RAID format that are further set to change the RAID configuration of at least one set of storage drives when a preset condition occurs. A configurable disk array system that contains.
데이터 파일 또는 블록이 외부로부터 상기 저장 드라이브 세트로 저장될 경우, 상기 비대칭 RAID 컨트롤러를 이용하여, 상기 저장 드라이브 세트들 각각의 대기시간, 처리량 및 용량을 포함하는 저장 성능 파라미터 세트를 평가하고, 상기 저장 드라이브들 중 대기시간 파라미터가 상대적으로 낮은 저장 드라이브에 상기 데이터 파일 또는 블록의 시작부분을 저장하고, 상기 대기시간 파라미터가 상대적으로 높은 저장 드라이브에 상기 데이터 파일 또는 블록의 나머지 부분을 저장하며, 처리량 파라미터 및 용량 파라미터가 각각 상대적으로 높은 저장 드라이브에 더 많은 데이터를 저장하여, 상기 저장 드라이브 세트 각각의 RAID 구성(configuration)이 변경되도록 하는, RAID 포맷(format) 내에 데이터를 저장하는 것을 컨트롤하기 위한 비대칭 RAID 컨트롤러 및 저장 드라이브 세트를 포함하는 설정 가능한 디스크 배열 시스템을 제공하기 위한 방법.A method for providing a configurable disk array system comprising an asymmetric RAID controller for controlling the storage of data in a RAID format and a set of storage drives having a plurality of heterogeneous storage drives.
When a data file or block is stored from the outside into the storage drive set, the asymmetric RAID controller is used to evaluate a storage performance parameter set including latency, throughput and capacity of each of the storage drive sets, and to store the storage drive set. Storing the beginning of the data file or block in a storage drive having a relatively low latency parameter among the drives, storing the remainder of the data file or block in a storage drive having a relatively high latency parameter, a throughput parameter And asymmetric RAID for controlling the storage of data in a RAID format that stores more data in storage drives having relatively higher capacity parameters, respectively, such that the RAID configuration of each of the storage drive sets is changed. Controller and low A method for providing a configurable disk array system that includes a set of long drives.
사용자로부터 저장 성능 파라미터 세트를 받아들이는 단계; 및
저장 성능 파라미터 세트를 저장하는 단계;를 더 포함하는 RAID 포맷(format) 내에 데이터를 저장하는 것을 컨트롤하기 위한 비대칭 RAID 컨트롤러 및 저장 드라이브 세트를 포함하는 설정 가능한 디스크 배열 시스템을 제공하기 위한 방법.The method of claim 19,
Accepting a set of storage performance parameters from a user; And
Storing a set of storage performance parameters; a method for providing a configurable disk array system comprising a set of storage drives and an asymmetric RAID controller for controlling the storage of data in a RAID format.
상기 저장 성능 파라미터 세트는 상기 저장 드라이브들 각각의 데이터 저장 성능과 관련되는, RAID 포맷(format) 내에 데이터를 저장하는 것을 컨트롤하기 위한 비대칭 RAID 컨트롤러 및 저장 드라이브 세트를 포함하는 설정 가능한 디스크 배열 시스템을 제공하기 위한 방법.The method of claim 19,
The storage performance parameter set provides a configurable disk array system comprising a set of storage drives and an asymmetric RAID controller for controlling the storage of data in a RAID format associated with the data storage performance of each of the storage drives. How to.
상기 저장 성능 파라미터 세트는 상기 저장 드라이버들 각각의 대기시간, 처리량, 용량, 캐시구성 및 신뢰도 중 적어도 하나를 포함하는, RAID 포맷(format) 내에 데이터를 저장하는 것을 컨트롤하기 위한 비대칭 RAID 컨트롤러 및 저장 드라이브 세트를 포함하는 설정 가능한 디스크 배열 시스템을 제공하기 위한 방법.22. The method of claim 21,
The storage performance parameter set includes an asymmetric RAID controller and storage drive for controlling the storage of data in a RAID format, including at least one of latency, throughput, capacity, cache configuration, and reliability of each of the storage drivers. A method for providing a configurable disk array system comprising a set.
저장 드라이브 세트 각각은 전용(dedicated) 인터페이스를 경유하여 비대칭 RAID 컨트롤러에 연결되는, RAID 포맷(format) 내에 데이터를 저장하는 것을 컨트롤하기 위한 비대칭 RAID 컨트롤러 및 저장 드라이브 세트를 포함하는 설정 가능한 디스크 배열 시스템을 제공하기 위한 방법.The method of claim 19,
Each set of storage drives has a configurable disk array system that includes a set of storage drives and an asymmetric RAID controller for controlling the storage of data within the RAID format, which is connected to the asymmetric RAID controller via a dedicated interface. How to Provide.
상기 비대칭 RAID 컨트롤러는, 기 설정된 상태가 발생할 때 적어도 하나의 저장 드라이브 세트의 RAID 구성을 변경하도록 더 설정되는, RAID 포맷(format) 내에 데이터를 저장하는 것을 컨트롤하기 위한 비대칭 RAID 컨트롤러 및 저장 드라이브 세트를 포함하는 설정 가능한 디스크 배열 시스템을 제공하기 위한 방법.
The method of claim 19,
The asymmetric RAID controller includes an asymmetric RAID controller and a set of storage drives for controlling storage of data in a RAID format that are further set to change the RAID configuration of at least one set of storage drives when a preset condition occurs. Method for providing a configurable disk array system comprising.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020120071656A KR101317759B1 (en) | 2012-07-02 | 2012-07-02 | System architecture based on asymmetric raid storage |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020120071656A KR101317759B1 (en) | 2012-07-02 | 2012-07-02 | System architecture based on asymmetric raid storage |
Publications (1)
Publication Number | Publication Date |
---|---|
KR101317759B1 true KR101317759B1 (en) | 2013-10-11 |
Family
ID=49638343
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020120071656A KR101317759B1 (en) | 2012-07-02 | 2012-07-02 | System architecture based on asymmetric raid storage |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR101317759B1 (en) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20170121451A (en) * | 2016-04-25 | 2017-11-02 | 삼성전자주식회사 | Method of operating a mobile device and a mobile device |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7152142B1 (en) * | 2002-10-25 | 2006-12-19 | Copan Systems, Inc. | Method for a workload-adaptive high performance storage system with data protection |
JP2008310685A (en) * | 2007-06-15 | 2008-12-25 | Hitachi Ltd | Storage system for optimizing performance with redundancy |
-
2012
- 2012-07-02 KR KR1020120071656A patent/KR101317759B1/en active IP Right Grant
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7152142B1 (en) * | 2002-10-25 | 2006-12-19 | Copan Systems, Inc. | Method for a workload-adaptive high performance storage system with data protection |
JP2008310685A (en) * | 2007-06-15 | 2008-12-25 | Hitachi Ltd | Storage system for optimizing performance with redundancy |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20170121451A (en) * | 2016-04-25 | 2017-11-02 | 삼성전자주식회사 | Method of operating a mobile device and a mobile device |
KR102546474B1 (en) * | 2016-04-25 | 2023-06-22 | 삼성전자주식회사 | Method of operating a mobile device and a mobile device |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR101209918B1 (en) | Raid controller with programmable interface for a semiconductor storage device | |
KR101200998B1 (en) | Hybrid raid controller having multi pci bus switching | |
KR101316919B1 (en) | Raid controller for semiconductor storage device and raid controller for semiconductor storage provide method | |
KR101209915B1 (en) | Raid-based storage control board and driving method thereof | |
KR101134069B1 (en) | Hybrid storage system for a multi-level raid architecture | |
KR101204042B1 (en) | Hybrid storage system with mid-plain and the providing method thereof | |
KR101129460B1 (en) | Raid controlling semiconductor storage device and raid controlling semiconductor storage provide method | |
KR20130037181A (en) | Cross-boundary hybrid and dynamic storage and memory context-aware cache system | |
KR101196878B1 (en) | Hybrid raid controller | |
US9311018B2 (en) | Hybrid storage system for a multi-level RAID architecture | |
KR101209916B1 (en) | Raid-based storage control board having fibre channel interface controller and driving method thereof | |
US20120278527A1 (en) | System architecture based on hybrid raid storage | |
KR101200997B1 (en) | Raid controller having multi pci bus switching | |
KR101139495B1 (en) | Switch-based hybrid storage system and the providing method thereof | |
KR101512741B1 (en) | Network-capable RAID controller for a semiconcuctor Storage Device | |
KR101209924B1 (en) | Two-way raid controller with programmable host interface for a semiconductor storage device | |
KR101209923B1 (en) | Two-way raid controller for a semiconductor storage device | |
KR101317759B1 (en) | System architecture based on asymmetric raid storage | |
KR101244001B1 (en) | System architecture based on hybrid raid storage and providing method thereof | |
US9176670B2 (en) | System architecture based on asymmetric raid storage | |
KR101209922B1 (en) | Adaptive cache for a semiconductor storage device-based system | |
KR101420286B1 (en) | Semiconductor storage device based cache manager and the manufacturing method thereof | |
KR101279623B1 (en) | System architecture based on raid controller collaboration | |
WO2013176308A1 (en) | System architecture based on hybrid raid storage | |
KR101512742B1 (en) | Semiconductor storage device having multiple host interface units for increased bandwidth, and semiconductor storage device-based system |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A201 | Request for examination | ||
A302 | Request for accelerated examination | ||
E902 | Notification of reason for refusal | ||
E90F | Notification of reason for final refusal | ||
E701 | Decision to grant or registration of patent right | ||
GRNT | Written decision to grant | ||
FPAY | Annual fee payment |
Payment date: 20181001 Year of fee payment: 6 |