KR101209921B1 - 반도체 저장 장치 기반 고속 캐시 저장 시스템 - Google Patents

반도체 저장 장치 기반 고속 캐시 저장 시스템 Download PDF

Info

Publication number
KR101209921B1
KR101209921B1 KR1020120065925A KR20120065925A KR101209921B1 KR 101209921 B1 KR101209921 B1 KR 101209921B1 KR 1020120065925 A KR1020120065925 A KR 1020120065925A KR 20120065925 A KR20120065925 A KR 20120065925A KR 101209921 B1 KR101209921 B1 KR 101209921B1
Authority
KR
South Korea
Prior art keywords
network
controller
storage
cache
coupled
Prior art date
Application number
KR1020120065925A
Other languages
English (en)
Inventor
조병철
Original Assignee
주식회사 태진인포텍
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 주식회사 태진인포텍 filed Critical 주식회사 태진인포텍
Application granted granted Critical
Publication of KR101209921B1 publication Critical patent/KR101209921B1/ko

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/14Handling requests for interconnection or transfer
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/08Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
    • G06F12/0802Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
    • G06F12/0806Multiuser, multiprocessor or multiprocessing cache systems
    • G06F12/0813Multiuser, multiprocessor or multiprocessing cache systems with a network or matrix configuration
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • 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

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Mathematical Physics (AREA)
  • Memory System Of A Hierarchy Structure (AREA)

Abstract

본 발명의 실시예들은 SSD 기반 고속 캐시 저장 시스템을 제공한다. 특히, 통상적인 실시예에서, 네트워크 캐시 컴포넌트(NCC: Network Cache Component)는 고속 캐시 저장소 풀(HCSP: high-speed cache storage pool)에 연결된다. 상기 NCC는 일반적으로, 데이터 저장을 위한 반도체 저장 장치(SSD: Semiconductor Storage Device) 메모리 디스크 유닛 세트; SSD 메모리 유닛 세트에 연결되는 네트워크 캐시 컨트롤러; 네트워크 캐시 컨트롤러에 연결되는 네트워크 트래픽 분석 컴포넌트; 네트워크 트래픽 분석 컴포넌트에 연결되는 네트워크 인터페이스; 네트워크 캐시 컨트롤러에 연결되는 일반 저장소 컨트롤러; 및 일반 저장소 컨트롤러에 연결되는 일반 저장소 인터페이스;를 포함한다. 더욱이, 상기 HCSP는 통상적으로, 캐시 서버, 내부 인터페이스, 및 서로 연결되는 일반 저장소 시스템;을 포함한다.

Description

반도체 저장 장치 기반 고속 캐시 저장 시스템{SEMICONDUCTOR STORAGE DEVICE-BASED HIGH-SPEED CACHE STORAGE SYSTEM}
본 발명의 실시예는 PCI-익스프레스(PCI-e) 타입의 반도체 저장 장치(SSD)에 관한 것이다. 특히, 본 발명의 실시예는 SSD 기반의 고속 캐시 저장 시스템에 관한 것이다.
관련 출원의 상호 참조
본 출원은 2010.04.13.자로 출원되고, "SEMICONDUCTOR STORAGE DEVICE"로 명명되었으며, 공통 소유되고, 동시 계류중인 미국 출원 번호 12/758,937의 일부 실시예에 관련되며, 이의 모든 내용이 여기에 참조로서 병합된다. 또한 본 출원은 2010.06.16.자로 출원되고, "SEMICONDUCTOR STORAGE DEVICE BASED CACHE MANAGER"로 명명되었으며, 공통 소유되고, 동시 계류중인 미국 출원 번호 12/816,508의 일부 실시예에 관련되며, 이의 모든 내용이 여기에 참조로서 병합된다. 또한 본 출원은 2011.02.17.자로 출원되고, "SEMICONDUCTOR STORAGE DEVICE-BASED CACHE STORAGE SYSTEM"으로 명명되었으며, 공통 소유되고, 동시 계류중인 미국 출원 번호 13/029,476의 일부 실시예에 관련되며, 이의 모든 내용이 여기에 참조로서 병합된다.
더 많은 컴퓨터 저장에 대한 필요가 증가함에 따라, 보다 효율적인 솔루션이 추구되고 있다. 알려진 바와 같이, 데이터 저장 매체로서는, 기계적 방식으로 데이터를 저장/판독하는 다양한 하드 디스크 솔루션이 존재한다. 불행하게도, 하드 디스크와 관련된 데이터 프로세싱 속도는 종종 느려진다. 또한, 기존 솔루션들은 아직도, 데이터 저장 매체와 호스트 간의 인터페이스로서 고속 데이터 입력/출력 성능을 갖는 메모리의 데이터 프로세싱 속도를 따라잡지 못하는 인터페이스를 사용하고 있다. 따라서, 기존 영역에는, 메모리 디스크의 성능이 적절히 활용되지 못하는 문제점이 존재한다.
본 발명의 실시예들은 SSD 기반 고속 캐시 저장 시스템을 제공한다.
특히, 통상적인 실시예에서, 네트워크 캐시 컴포넌트(NCC: Network Cache Component)는 고속 캐시 저장소 풀(HCSP: high-speed cache storage pool)에 연결된다. 상기 NCC는 일반적으로, 데이터 저장을 위한 반도체 저장 장치(SSD: Semiconductor Storage Device) 메모리 디스크 유닛 세트; SSD 메모리 유닛 세트에 연결되는 네트워크 캐시 컨트롤러; 네트워크 캐시 컨트롤러에 연결되는 네트워크 트래픽 분석 컴포넌트; 네트워크 트래픽 분석 컴포넌트에 연결되는 네트워크 인터페이스; 네트워크 캐시 컨트롤러에 연결되는 일반 저장소 컨트롤러; 및 일반 저장소 컨트롤러에 연결되는 일반 저장소 인터페이스;를 포함한다. 더욱이, 상기 HCSP는 통상적으로, 캐시 서버; 내부 인터페이스; 및 서로 연결되는 일반 저장소 시스템;을 포함한다.
본 발명의 제 1 실시예는 네트워크 캐시 컴포넌트(NCC)를 제공하는 것으로, 데이터를 저장하기 위한 반도체 저장 장치(SSD) 메모리 디스크 유닛 세트; 상기 SSD 메모리 유닛 세트에 연결되는 네트워크 캐시 컨트롤러; 상기 네트워크 캐시 컨트롤러에 연결되는 네트워크 트래픽 분석 컴포넌트; 상기 네트워크 트래픽 분석 컴포넌트에 연결되는 네트워크 인터페이스; 상기 네트워크 캐시 컨트롤러에 연결되는 일반 저장소 컨트롤러; 및 상기 일반 저장소 컨트롤러에 연결되는 일반 저장소 인터페이스;를 포함한다.
본 발명의 제 2 실시예는 네트워크 캐시 저장 시스템을 제공하는 것으로, 저장소 네트워크에 연결되는 고속 캐시 저장소 풀(HCSP); 상기 HCSP에 연결되며 데이터 저장을 위한 반도체 저장 장치(SSD) 메모리 디스크 유닛 세트를 포함하는 네트워크 캐시 컴포넌트(NCC); 상기 SSD 메모리 유닛 세트에 연결되는 네트워크 캐시 컨트롤러; 상기 네트워크 캐시 컨트롤러에 연결되는 네트워크 트래픽 분석 컴포넌트; 상기 네트워크 트래픽 분석 컴포넌트에 연결되는 네트워크 인터페이스; 상기 네트워크 캐시 컨트롤러에 연결되는 일반 저장소 컨트롤러; 및 상기 일반 저장소 컨트롤러에 연결되는 일반 저장소 인터페이스;를 포함한다.
본 발명의 제 3 실시예는 네트워크 캐시 컴포넌트(NCC)를 형성하기 위한 방법을 제공하는 것으로, 데이터 저장을 위한 반도체 저장 장치(SSD) 메모리 디스크 유닛 세트를 상기 SSD 메모리 유닛 세트에 연결되어 있는 네트워크 캐시 컨트롤러에 연결하는 단계; 상기 네트워크 캐시 컨트롤러에 네트워크 트래픽 분석 컴포넌트를 연결하는 단계; 상기 네트워크 트래픽 분석 컴포넌트에 네트워크 인터페이스를 연결하는 단계; 상기 네트워크 캐시 컨트롤러에 일반 저장소 컨트롤러를 연결하는 단게; 및 상기 일반 저장소 컨트롤러에 일반 저장소 인터페이스를 연결하는 단계;를 포함한다.
시스템(610)은, 단일의 저장 장치의 사용을 위하여 최적화 되고; 캐시 서버(612)의 성능을 개선 시키며(예를 들면, 저장 네트워크 분석을 위하여 시간을 소비할 필요가 없다); 저장 네트워크를 수립할 필요를 제거시킨다(예를 들면, 기존의 저장 네트워크가 사용될 수 있다).
본 발명의 이러한 특징들 및 다른 특징들이 첨부되는 도면들과 함께 본 발명의 다양한 실시예에 대한 이하의 상세한 설명들로부터 보다 쉽게 이해될 것이다.
도 1은 본 발명의 일 실시예에 따른 PCI-익스프레스(PCI-e) 타입 저장장치의 구성을 개략적으로 설명하는 도면이다.
도 2는 본 발명의 일 실시예에 따른 도 1의 고속 SSD의 개략도이다.
도 3은 본 발명의 일 실시예에 따른 도 1의 컨트롤러 유닛의 구성을 개략적으로 설명하는 도면이다.
도 4는 본 발명의 일 실시예에 따른 고속 캐시 저장 시스템의 개략도이다.
도 5는 본 발명의 일 실시예에 따른 SSD 기반 고속 (네트워크) 캐시 저장 시스템의 개략도이다.
도면들은 크기는 조정될 필요가 없다. 도면들은 본 발명의 구체적인 파라미터들을 나타내지 않고, 단지 개략적으로만 나타낼 뿐이다. 도면들은 단지 본 발명의 통상적인 실시예를 도시하며, 따라서 본 발명의 범위를 제한하는 것으로 이해되어서는 안된다. 도면에서, 유사한 참조번호는 유사한 구성요소를 나타낸다.
이하 예시적인 실시예를 도시하는 첨부 도면을 참조하여 예시적인 실시예가 보다 완전하게 설명될 것이다. 그러나, 본 개시는 많은 다른 형태로 실시될 수도 있으며, 이하의 예시적인 실시예에 제한되는 것으로 이해되어서는 안된다. 오히려, 이러한 예시적인 실시예들은 본 개시가 완전하고 완벽해짐과 동시에 당업자에게 본 개시의 범위가 완전히 전달될 수 있도록 제공된다. 상세한 설명에서, 잘 알려진 구성 및 기술들에 대한 상세한 설명은 나타내어지는 실시예의 불필요한 불명확성을 피하게 위해 생략된다.
여기에 사용되는 용어는 특정 실시예를 설명하기 위한 목적으로만 사용되며 본 개시를 제한하지 않는다. 여기에 사용되는 단수형 "일", "하나", 및 "그" 는 문맥이 명확히 다른 것을 나타내지 않는 이상, 복수형을 포함하는 것이다. 또한, "일", "하나" 등의 용어 사용은 양의 한정을 의미하지 않고, 오히려 참조되는 항목이 적어도 하나 존재한다는 것을 의미한다. 본 명세서에서 사용되는 "포함한다" 및/또는 "포함하는", 또는 "구성된다" 및/또는 "구성되는"이라는 용어는 기술되는 특징, 영역, 정수, 단계, 동작, 구성요소, 및/또는 컴포넌트의 존재를 명시하며, 일 이상의 다른 특징, 영역, 정수, 단계, 동작, 구성요소, 컴포넌트, 및 또는 이의 그룹들의 존재 또는 추가를 불가능하게 하는 것이 아니다. 또한, 여기에 사용되는 RAID라는 용어는 복수 배열 독립 디스크(초기에는, 복수 배열 저가 디스크)를 의미한다. 일반적으로, RAID 기술은 다중 하드 디스크의 상이한 공간에 동일한 데이터를 (따라서, 불필요하게) 저장하는 방법이다. 다중 디스크에 데이터를 배치시킴으로써, I/O(Input/Output) 동작이 성능을 향상시키는 균형적인 방법으로 오버랩될 수 있다. 다중 디스크가 평균 고장 간격(MTBF: Mean Time Between Failure)을 증가시키기 때문에, 불필요하게 저장되는 데이터 또한 내고장성을 증가시킨다. SSD라는 용어는 반도체 저장 장치를 의미한다. DDR이라는 용어는 더블 데이터 레이트(Double Data Rate)를 의미한다. 그리고, HDD라는 용어는 하드 디스크 드라이브를 의미한다.
다르게 정의되지 않는 이상, 여기에 사용된 (기술적 및 과학적 용어들을 포함하는) 모든 용어는 당업자에 의해 보통 이해되는 것과 동일한 의미를 갖는다. 보통 사용되는 사전에서 정의되는 것들과 같은 용어들은 관련 기술 및 본 개시의 문맥에서의 의미와 일치하는 의미를 갖는 것으로 해석되고, 여기에 명확히 정의되지 않는 이상 이상화시키는 의미 또는 전체적으로 형식적인 의미로 해석되지 않음이 이해될 것이다.
이하 일 실시예에 따른 PCI-익스프레스(PCI-e) 타입의 저장 장치가 첨부 도면을 참조로 상세히 설명될 것이다.
본 발명의 실시예들은 SSD 기반 고속 캐시 저장 시스템을 제공한다. 특히, 통상적인 실시예에서, 네트워크 캐시 컴포넌트(NCC: Network Cache Component)는 고속 캐시 저장소 풀(HCSP: high-speed cache storage pool)에 연결된다. 상기 NCC는 일반적으로, 데이터 저장을 위한 반도체 저장 장치(SSD: Semiconductor Storage Device) 메모리 디스크 유닛 세트; SSD 메모리 유닛 세트에 연결되는 네트워크 캐시 컨트롤러; 네트워크 캐시 컨트롤러에 연결되는 네트워크 트래픽 분석 컴포넌트; 네트워크 트래픽 분석 컴포넌트에 연결되는 네트워크 인터페이스; 네트워크 캐시 컨트롤러에 연결되는 일반 저장소 컨트롤러; 및 일반 저장소 컨트롤러에 연결되는 일반 저장소 인터페이스;를 포함한다. 더욱이, 상기 HCSP는 통상적으로, 캐시 서버; 내부 인터페이스; 및 서로 연결되는 일반 저장소 시스템;을 포함한다.
PCI-익스프레스(PCI-e) 타입의 저장 장치는 PCI-익스프레스 인터페이스를 통한 호스트와 메모리 디스크 사이의 데이터 통신 시 호스트와 메모리 디스크 사이에 전송/수신되는 데이터 신호의 동기화를 조절함으로써 호스트에 대해 저속 데이터 프로세싱 속도를 지원하고, 동시에 메모리 디스크에 대한 고속 데이터 프로세싱 속도를 지원하며, 이에 의해 기존 인터페이스 환경에서 최대의 고속 데이터 프로세싱을 가능하게 하는 성능을 지원한다. PCI-익스프레스 기술이 통상적인 실시예에서 활용될 것임에도, 다른 변형들이 가능함이 사전에 이해된다. 예를 들어, 본 발명은 SAS/SATA 인터페이스를 활용하는 SAS/SATA 타입 저장 장치가 제공되는 SAS(Small Computer System Interface)/SATA(Serial Advanced Technology Advancement) 기술을 활용할 수 있다.
도 1을 참조하면, 본 발명의 일 실시예에 따른 PCI-익스프레스 타입, RAID 컨트롤 반도체 저장 장치(예를 들면, 직렬로 접속되는 컴퓨터 장치를 위한 저장을 제공함)의 구성을 개략적으로 설명하는 도면이 도시된다. 도시되는 바와 같이, 도 1은, 복수의 휘발성 반도체 메모리/메모리 유닛(여기에서 고속 SSD 메모리 디스크 유닛(100)으로 지칭됨)를 갖는 복수의 메모리 디스크; SSD 메모리 디스크 유닛(100)에 연결되는 RAID 컨트롤러(800); SSD 메모리 디스크 유닛과 호스트 사이를 인터페이스하는 인터페이스 유닛(200)(예를 들면, PCI-익스프레스 호스트); 컨트롤러 유닛(300); PCI-익스프레스 호스트 인터페이스 유닛을 통해 호스트로부터 전송되는 전력을 사용하여 소정 전력을 유지하기 위해 충전되는 보조 전력 소스 유닛(400); PCI-익스프레스 호스트 인터페이스 유닛을 통해 호스트로부터 전송되는 전력이 차단되거나 호스트로부터 전송되는 전력에 에러가 발생할 때, PCI-익스프레스 호스트 인터페이스 유닛을 통해 호스트로부터 컨트롤러 유닛(300), SSD 메모리 디스크 유닛(100), 백업 저장 유닛, 및 백업 컨트롤 유닛으로 전송되는 전력을 공급하고, 보조 전력 소스 유닛으로부터 전력을 수신하며 컨트롤러 유닛을 통해 SSD 메모리 디스크 유닛에 전력을 공급하는 전력 소스 컨트롤 유닛(500); SSD 메모리 디스크 유닛의 데이터를 저장하는 백업 저장 유닛(600A-B); 및 호스트로부터의 명령에 따라서, 또는 호스트로부터 전송되는 전력에 에러가 발생할 때, SSD 메모리 디스크 유닛에 저장된 데이터를 백업 저장 유닛에 백업하는 백업 컨트롤 유닛(700); 및 상기 SSD 메모리 디스크 유닛(100), 컨트롤러(300), 및 내부 백업 컨트롤러(700)에 연결되는 독립 디스크(RAID) 컨트롤러의 과잉(redundant) 어레이로 구성되는, SSD 메모리 디스크 유닛(100)(여기에서 SSD 메모리 디스크 유닛, SSD, 및/또는 SSD 메모리 디스크 유닛으로 지칭됨)을 포함하는, 본 발명의 일 실시예에 따른 RAID 컨트롤 PCI-익스프레스 타입 저장 장치(110)를 도시한다.
SSD 메모리 디스크 유닛(100)은 고속 데이터 입력/출력을 위한 복수의 휘발성 반도체 메모리(예를 들면, DDR, DDR2, DDR3, SDRAM 등)를 포함하는 복수의 메모리 디스크로 구성되고, 컨트롤러(300)의 컨트롤에 따라 데이터를 입력 및 출력한다. 메모리 디스크 유닛(100)은 메모리 디스크가 병렬로 배열되는 구성을 가질 수도 있다.
PCI-익스프레스 호스트 인터페이스 유닛(200)은 호스트와 SSD 메모리 디스크 유닛(100) 사이를 인터페이스한다. 호스트는 PCI-익스프레스 인터페이스 및 전력 소스 공급 장치를 포함하는 컴퓨터 시스템 또는 이와 유사한 것일 수 있다.
컨트롤러 유닛(300)은 PCI-익스프레스 호스트 인터페이스 유닛(200)과 SSD 메모리 디스크 유닛(100) 사이에 전송/수신되는 데이터 신호의 동기화를 조정하여 PCI-익스프레스 호스트 인터페이스 유닛(200)과 SSD 메모리 디스크 유닛(100) 간의 데이터 전송/수신 속도를 컨트롤한다.
도시되는 바와 같이, PCI-e 타입 RAID 컨트롤러(800)가 임의의 수의 SSD 메모리 디스크 유닛(100)에 직접적으로 연결될 수 있다. 특히, 이는 SSD 메모리 디스크 유닛(100)의 최적화된 컨트롤을 허용한다. 특히, RAID 컨트롤러(800)의 사용은,
1. 전류 백업/복구 동작을 지원한다.
2. 이하를 수행함으로써 추가적이고 향상된 백업 기능을 제공한다.
a) 내부 백업 컨트롤러(700)는 백업을 판단한다(사용자의 요청 순서 또는 상태 모니터가 전력 공급 문제를 검출한다);
b) 내부 백업 컨트롤러(700)는 SSD 메모리 디스크 유닛으로의 데이터 백업을 요청한다;
c) 내부 백업 컨트롤러(700)는 내부 백업 장치에 데이터 백업을 즉시 할 것을 요청한다;
d) 내부 백업 컨트롤러(700)는 SSD 메모리 디스크 유닛 및 내부 백업 컨트롤러에 대한 백업 상태를 모니터한다;
e) 내부 백업 컨트롤러(700)는 내부 백업 컨트롤러의 상태 및 엔드 동작(end-op)을 리포트한다;
3. 이하를 수행함으로써 추가적이고 향상된 복구 기능을 제공한다.
a) 내부 백업 컨트롤러(700)는 복구를 판단한다(사용자의 요청 순서 또는 상태 모니터가 전력 공급 문제를 검출한다);
b) 내부 백업 컨트롤러(700)는 SSD 메모리 디스크 유닛으로의 데이터 복구를 요청한다;
c) 내부 백업 컨트롤러(700)는 내부 백업 장치에 데이터 복구를 즉시 할 것을 요청한다;
d) 내부 백업 컨트롤러(700)는 SSD 메모리 디스크 유닛 및 내부 백업 컨트롤러에 대한 복구 상태를 모니터한다;
e) 내부 백업 컨트롤러(700)는 내부 백업 컨트롤러의 상태 및 엔드 동작(end-op)을 리포트한다.
도 2를 참조하면, 고속 SSD(100)의 구성을 개략적으로 설명하는 도면이 도시된다. 도시되는 바와 같이, SSD 메모리 디스크 유닛(100)은, 호스트 인터페이스(202)(예를 들면, PCI-익스프레스 호스트)(도 1의 인터페이스(200), 또는 도시되는 바와 같은 이격 인터페이스일 수 있음); 백업 컨트롤 모듈(700)과 인터페이스하는 직접 메모리 액세스(DMA: Direct Memory Access) 컨트롤러(302); ECC 컨트롤러(304); 및 고속 저장소로 사용되는 메모리(602)의 일 이상의 블록(604)을 제어하는 메모리 컨트롤러(306)를 포함한다. 또한, DMA 컨트롤러에 결합되는 백업 컨트롤러(700) 및 백업 컨트롤러(700)에 결합되는 백업 저장 유닛(600A)이 도시된다.
일반적으로, DMA는 컴퓨터 내에서 특정 하드웨어 서브시스템이 중앙 프로세싱 유닛의 독립적인 판독 및/또는 쓰기를 위해 시스템 메모리에 액세스할 수 있도록 하는 모던 컴퓨터 및 마이크로프로세서의 특징이다. 많은 하드웨어 시스템은 디스크 드라이브 컨트롤러, 그래픽 카드, 네트워크 카드 및 사운드 카드를 포함하는 DMA를 사용한다. 또한, DMA는 멀티 코어 프로세서, 특히 멀티프로세서 시스템 온 칩에서의 인트라 칩 데이터 전송에 사용되며, 여기서 이의 프로세싱 엘리먼트는 (주로 스크래치패드 메모리로 지칭되는) 로컬 메모리를 포함하여 구현되고, DMA는 로컬 메모리와 메인 메모리 사이에서 데이터를 전송하는 데에 사용된다. DMA 채널을 갖는 컴퓨터는 DMA 채널이 없는 컴퓨터에 비해 매우 적은 CPU 오버헤드를 갖고 장치로/로부터 데이터를 전송할 수 있다. 유사하게, 멀티 코어 프로세서 내의 프로세싱 엘리먼트는 프로세서 타임을 점유하지 않고 로컬 메모리로/로부터 데이터를 전송할 수 있고, 연산 및 데이터 전송을 동시에 할 수 있다.
DMA 없이, 병렬 장치와의 통신을 위한 프로그램 입력/출력(PIO) 모드, 또는 멀티 코어 칩의 경우에서 로드/저장 명령을 사용하면, CPU는 통상적으로 판독 또는 쓰기 동작의 전체 소요시간 동안 완전히 점유되고, 이에 따라 다른 업무를 수행하는 데에 이용될 수 없게 된다. DMA를 포함하면, CPU는 전송을 개시하고, 전송이 진행되는 동안 다른 동작을 할 수 있으며, 일단 동작이 완료되면 DMA 컨트롤러로부터 인터럽트를 수신한다. 이는 특히 동시 동작에서의 지연 없음이 중요한 요소인 실시간 연산 애플리케이션에서 유용하다.
도 3을 참조하면, 도 1의 컨트롤러 유닛(300)이, SSD 메모리 디스크 유닛(100)의 데이터 입력/출력을 제어하는 메모리 컨트롤 모듈(310); PCI-익스프레스 호스트 인터페이스 유닛(200)을 통해 호스트로부터 수신되는 명령에 따라, 메모리 컨트롤 모듈(310)을 제어하여 SSD 메모리 디스크 유닛(100)에 데이터를 저장하거나, SSD 메모리 디스크 유닛(100)으로부터 데이터를 판독하여 호스트로 해당 데이터를 제공하는 DMA(Direct Memory Access) 컨트롤 모듈(320); DMA 컨트롤 모듈(320)의 제어에 따라 데이터를 버퍼하는 버퍼(330); DMA 컨트롤 모듈(320)의 제어에 의해 SSD 메모리 디스크 유닛(100)으로부터 판독되는 데이터에 대응되는 데이터 신호가 DMA 컨트롤 모듈(320) 및 메모리 컨트롤 모듈(310)을 통해 수신될 때, 데이터 신호의 동기화를 조절하여 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) 간에 전송/수신되는 데이터를 프로세스한다.
도 4를 참조하면, 캐시 기반 저장 시스템(410)이 도시된다. 도시되는 바와 같이, 저장 시스템(410)은 데이터 캐시(416), (예를 들면, 도 1의 인터페이스(200)와 유사한) 네트워크 인터페이스(414), 및 저장 유닛(418A-N) 세트에 결합되는 (예를 들면, 도 1 및 도 3의 컨트롤러(300)와 유사한) 저장 컨트롤러(412)를 포함한다. 본 발명의 실시예들은 네트워크 기반 캐시 시스템을 제공한다.
도 5를 참조하면, 본 발명에 따른 SSD 기반 네트워크 캐시 저장 시스템(610)이 도시된다. 도시된 바와 같이, 시스템(610)은, 네트워크 캐시 컴포넌트(NCC, 622)에 연결(또는 통합)되는 고속 저장소 풀(HCSP, 614A-N)을 포함한다. 더 도시되는 바와 같이, HCSP(614A-N)는 하나 또는 그 이상의 저장소 네트워크(612)(예를 들면, SAS 또는 NAS)에 연결을 제공하는데, 스스로도 저장소 서버 세트(618A-N)에 연결된다. 어쨌든 더 도시되는 것처럼, HCSP(614A-N) 각각은 통상적으로 일반 저장소 시스템(620)에 연결되는 캐시 서버(618) 및 내부 인터페이스(616)(예를 들면, PCI 익스프레스, 기가비트 이더넷, 광섬유 채널, 사용자 정의 인터페이스 등)를 포함한다. 더욱이, NCC(622)는 통상 네트워크 캐시 컨트롤러(628)(예를 들면 상기에 설명된 컨트롤러(300)와 유사한)에 연결되는 고속 SSD 메모리 디스크 유닛(100)을 포함한다. 네트워크 캐시 컨트롤러(628)는 네트워크 트래픽 분석 컴포넌트(626)에 연결되는데, 스스로도 네트워크 인터페이스(624)에 연결된다. 네트워크 인터페이스(624)는 저장소 네트워크(614)와 같은 네트워크를 위하여 인터페이스 기능을 제공한다. 일반적으로, NCC(622)는 SSD 메모리 디스크 유닛(100)이 서버(618A-N) 및/또는 일반 저장소 시스템(614)에서 데이터 아이템을 위한 캐시 메모리로 사용되는 것을 허용한다. 이러한 방법으로, 네트워크 트래픽 분석 컴포넌트(622)는, 네트워크(614)를 통하는 및/또는 NCC(622) 내에서의 트래픽이, SSD 메모리 디스크 유닛(100)으로부터의 데이터 아이템의 개선된 성능, 저장, 액세스, 및/또는 검색을 위해 분석될 수 있도록 한다. 이와 상관 없이, 더 도시되는 바와 같이, 일반 저장소 컨트롤러(632)는 네트워크 캐시 컨트롤러(628)에 연결되고, 일반 저장소 인터페이스(630)는 일반 저장소 컨트롤러(632)에 연결된다.
무엇보다도, 시스템(610)은, 단일의 저장 장치의 사용을 위하여 최적화 되고; 캐시 서버(612)의 성능을 개선 시키며(예를 들면, 저장 네트워크 분석을 위하여 시간을 소비할 필요가 없다); 저장 네트워크를 수립할 필요를 제거시킨다(예를 들면, 기존의 저장 네트워크가 사용될 수 있다).
다시 도 1을 참조하면, 보조 전력 소스 유닛(400)은 재충전 가능한 배터리 등으로 구성되며, 정상적으로 충전되어 PCI-익스프레스 호스트 인터페이스 유닛(200)을 통해 호스트로부터 전송되는 전력을 사용하여 소정 전력을 유지하고 전력 소스 컨트롤 유닛(500)의 컨트롤에 따라 전력 소스 컨트롤 유닛(500)에 충전된 전력을 공급할 수 있다.
전력 소스 컨트롤 유닛(500)은 PCI-익스프레스 호스트 인터페이스 유닛(200)을 통해 호스트로부터 컨트롤러 유닛(300), SSD 메모리 디스크 유닛(100), 백업 저장 유닛(600A-B) 및 백업 컨트롤 유닛(700)으로 전송되는 전력을 공급한다.
또한, PCI-익스프레스 호스트 인터페이스 유닛(200)을 통해 호스트로부터 전송되는 전력이 차단됨에 따라 호스트의 전력 소스에 에러가 발생하거나, 호스트로부터 전송되는 전력이 임계값을 벗어날 때, 전력 소스 컨트롤 유닛(500)은 보조 전력 소스 유닛(400)으로부터 전력을 수신하고 컨트롤러 유닛(300)을 통해 SSD 메모리 디스크 유닛(100)으로 전력을 공급한다.
백업 저장 유닛(600A-B)은 하드 디스크와 같은 저속 비휘발성 저장 장치로 구성되며 SSD 메모리 디스크 유닛(100)의 데이터를 저장한다.
백업 컨트롤 유닛(700)은 백업 저장 유닛(600A-B)의 데이터 입력/출력을 컨트롤함으로써 백업 저장 유닛(600A-B)에 SSD 메모리 디스크 유닛(100)에 저장된 데이터를 백업하고, 호스트로부터의 지시에 따라서, 또는 호스트로부터 전송되는 전력이 임계값을 벗어남에 따라 호스트의 전력 소스에 에러가 발생할 때, 백업 저장 유닛(600A-B)에 SSD 메모리 디스크 유닛(100)에 저장된 데이터를 백업한다.
직렬 접속 소형 컴퓨터 시스템 인터페이스/직렬 고급 기술 접속(PCI-익스프레스) 타입의 저장 장치는 PCI-익스프레스 인터페이스를 통한 호스트와 메모리 디스크 사이의 데이터 통신 시 호스트와 메모리 디스크 사이에 전송/수신되는 데이터 신호의 동기화를 조절함으로써 호스트에 대해 저속 데이터 프로세싱 속도를 지원하고, 동시에 메모리 디스크에 대한 고속 데이터 프로세싱 속도를 지원하며, 이에 의해 기존 인터페이스 환경에서 최대의 고속 데이터 프로세싱을 가능하게 하는 성능을 지원한다.
예시적인 실시예가 도시되고 설명되었으며, 당업자는 형태적으로 및 상세적으로 다양한 변형들이 첨부된 특허청구범위에 의해 규정되는 본 개시의 사상 및 범위를 벗어나지 않는 범위 내에서 가능하다는 것을 이해할 것이다. 또한, 다양한 수정들이 이루어져 필수적 범위를 벗어나지 않는 범위 내에서 특정 상황 또는 물질이 본 개시의 시사에 적용될 수 있다. 따라서, 본 개시는 본 개시를 실시하기 위해 고려된 최선의 형태로서 개시된 예시적인 특정 실시예에 제한되지 않으며, 본 개시는 첨부되는 특허청구범위의 범위 내에 속하는 모든 실시예들을 포함한다.
본 발명의 다양한 실시예에 대한 이상의 설명은 설명의 목적을 위해 표현되었다. 이는 본 발명을 제한하고 개시된 특정 형태에 제한하는 것이 아니며, 용이하게, 많은 수정 및 변형이 가능하다. 당업자에게 자명한 이러한 수정 및 변형은 첨부되는 특허청구범위에 의해 규정되는 본 발명의 범위 내에 속한다.
100: SSD 메모리 디스크 유닛
200: 인터페이스 유닛
300: 컨트롤러
400: 보조 전력 소스 유닛
500: 전력 소스 컨트롤 유닛
600A-B: 백업 저장 유닛
700: 백업 컨트롤 유닛
800: RAID 컨트롤러

Claims (19)

  1. 네트워크 캐시 컴포넌트(NCC)로서,
    데이터 저장을 위한 반도체 저장 장치(SSD) 메모리 디스크 유닛 세트;
    상기 SSD 메모리 유닛 세트에 연결되는 네트워크 캐시 컨트롤러;
    상기 네트워크 캐시 컨트롤러에 연결되는 네트워크 트래픽 분석 컴포넌트;
    상기 네트워크 트래픽 분석 컴포넌트와 상기 네트워크 캐시 컨트롤러에 연결되며, 네트워크 인터페이스를 위한 네트워크 인터페이스;
    상기 네트워크 캐시 컨트롤러에 연결되는 일반 저장소 컨트롤러; 및
    상기 일반 저장소 컨트롤러에 연결되며, 일반 저장소와의 인터페이스를 위한 일반 저장소 인터페이스;를 포함하는 네트워크 캐시 컴포넌트.
  2. 제 1 항에 있어서,
    고속 캐시 저장소 풀(HCSP)을 더 포함하는 네트워크 캐시 컴포넌트.
  3. 제 2 항에 있어서, 상기 HCSP는,
    캐시 서버 및 일반 저장소 시스템을 포함하는, 네트워크 캐시 컴포넌트.
  4. 제 3 항에 있어서,
    상기 HCSP는 상기 캐시 서버 및 일반 저장소 시스템에 연결되는 내부 인터페이스를 더 포함하는 네트워크 캐시 컴포넌트.
  5. 제 2 항에 있어서, 상기 HCSP는 저장소 네트워크에 연결되는 네트워크 캐시 컴포넌트.
  6. 제 5 항에 있어서, 상기 저장소 네트워크는 저장소 서버 세트에 연결되는 네트워크 캐시 컴포넌트.
  7. 제 1 항에 있어서, 상기 SSD 메모리 유닛 세트는,
    호스트 인터페이스 유닛;
    상기 호스트 인터페이스 유닛에 연결되는 DMA 컨트롤러;
    상기 DMA 컨트롤러에 연결되는 ECC 컨트롤러;
    상기 ECC 컨트롤러에 연결되는 메모리 컨트롤러; 및
    적어도 하나의 메모리 블록을 가지며 상기 메모리 컨트롤러에 연결되는 메모리 어레이;를 포함하는 네트워크 캐시 컴포넌트.
  8. 네트워크 캐시 저장 시스템으로서,
    저장소 네트워크에 연결되는 고속 캐시 저장소 풀(HCSP); 및
    상기 HCSP에 연결되는 네트워크 캐시 컴포넌트(NCC)를 포함하며,
    상기 NCC는,
    데이터 저장을 위한 반도체 저장 장치(SSD) 메모리 디스크 유닛 세트;
    상기 SSD 메모리 유닛 세트에 연결되는 네트워크 캐시 컨트롤러;
    상기 네트워크 캐시 컨트롤러에 연결되는 네트워크 트래픽 분석 컴포넌트;
    상기 네트워크 트래픽 분석 컴포넌트와 상기 네트워크 캐시 컨트롤러에 연결되며, 네트워크 인터페이스를 위한 네트워크 인터페이스;
    상기 네트워크 캐시 컨트롤러에 연결되는 일반 저장소 컨트롤러; 및
    상기 일반 저장소 컨트롤러에 연결되며, 일반 저장소와의 인터페이스를 위한 일반 저장소 인터페이스;를 포함하는 네트워크 캐시 저장 시스템.
  9. 제 8 항에 있어서,
    상기 저장소 네트워크는 저장소 서버 세트에 연결되는 네트워크 캐시 저장 시스템.
  10. 제 8 항에 있어서, 상기 HCSP는,
    캐시 서버 및 일반 저장소 시스템을 포함하는 네트워크 캐시 저장 시스템.
  11. 제 10 항에 있어서, 상기 HCSP는 상기 캐시 서버 및 일반 저장소 시스템에 연결되는 내부 인터페이스를 더 포함하는 네트워크 캐시 저장 시스템.
  12. 제 8 항에 있어서, 상기 SSD 메모리 디스크 유닛 세트는,
    호스트 인터페이스 유닛;
    상기 호스트 인터페이스 유닛에 연결되는 DMA 컨트롤러;
    상기 DMA 컨트롤러에 연결되는 ECC 컨트롤러;
    상기 ECC 컨트롤러에 연결되는 메모리 컨트롤러; 및
    적어도 하나의 메모리 블록을 가지며 상기 메모리 컨트롤러에 연결되는 메모리 어레이;를 포함하는 네트워크 캐시 저장 시스템.
  13. 삭제
  14. 삭제
  15. 삭제
  16. 삭제
  17. 삭제
  18. 삭제
  19. 삭제
KR1020120065925A 2011-06-21 2012-06-20 반도체 저장 장치 기반 고속 캐시 저장 시스템 KR101209921B1 (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US13/164,984 US8924630B2 (en) 2011-06-21 2011-06-21 Semiconductor storage device-based high-speed cache storage system
US13/164,984 2011-06-21

Publications (1)

Publication Number Publication Date
KR101209921B1 true KR101209921B1 (ko) 2012-12-11

Family

ID=47362944

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020120065925A KR101209921B1 (ko) 2011-06-21 2012-06-20 반도체 저장 장치 기반 고속 캐시 저장 시스템

Country Status (3)

Country Link
US (1) US8924630B2 (ko)
KR (1) KR101209921B1 (ko)
WO (1) WO2012177057A2 (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101399414B1 (ko) 2013-06-28 2014-07-01 고려대학교 산학협력단 캐시를 사용한 네트워크 트래픽 분석 장치 및 방법

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9619180B2 (en) 2013-07-29 2017-04-11 Silicon Graphics International Corp. System method for I/O acceleration in hybrid storage wherein copies of data segments are deleted if identified segments does not meet quality level threshold
US9923965B2 (en) 2015-06-05 2018-03-20 International Business Machines Corporation Storage mirroring over wide area network circuits with dynamic on-demand capacity
US9923784B2 (en) 2015-11-25 2018-03-20 International Business Machines Corporation Data transfer using flexible dynamic elastic network service provider relationships
US10177993B2 (en) 2015-11-25 2019-01-08 International Business Machines Corporation Event-based data transfer scheduling using elastic network optimization criteria
US10581680B2 (en) 2015-11-25 2020-03-03 International Business Machines Corporation Dynamic configuration of network features
US9923839B2 (en) 2015-11-25 2018-03-20 International Business Machines Corporation Configuring resources to exploit elastic network capability
US10057327B2 (en) 2015-11-25 2018-08-21 International Business Machines Corporation Controlled transfer of data over an elastic network
US10216441B2 (en) 2015-11-25 2019-02-26 International Business Machines Corporation Dynamic quality of service for storage I/O port allocation

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20060004957A1 (en) * 2002-09-16 2006-01-05 Hand Leroy C Iii Storage system architectures and multiple caching arrangements
US20090182836A1 (en) * 2008-01-16 2009-07-16 Aviles Joaquin J System and method for populating a cache using behavioral adaptive policies
KR100928438B1 (ko) * 2008-11-24 2009-11-25 주식회사 태진인포텍 Sas/sata 타입의 스토리지 장치

Family Cites Families (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101681282A (zh) * 2006-12-06 2010-03-24 弗森多系统公司(dba弗森-艾奥) 用于共享的、前端、分布式raid的装置、系统和方法
US7890690B2 (en) * 2007-06-07 2011-02-15 International Business Machines Corporation System and method for dual-ported flash memory
WO2009088435A1 (en) * 2007-12-31 2009-07-16 Netapp, Inc. System and method for automatic storage load balancing in virtual server environments
US8719485B2 (en) * 2008-06-27 2014-05-06 Marvell World Trade Ltd. Solid-state disk with wireless functionality
US20100017650A1 (en) * 2008-07-19 2010-01-21 Nanostar Corporation, U.S.A Non-volatile memory data storage system with reliability management
US7941591B2 (en) * 2008-07-28 2011-05-10 CacheIQ, Inc. Flash DIMM in a standalone cache appliance system and methodology
US9042237B2 (en) * 2009-12-14 2015-05-26 At&T Intellectual Property I, L.P. Identifying network performance alert conditions
US8443263B2 (en) * 2009-12-30 2013-05-14 Sandisk Technologies Inc. Method and controller for performing a copy-back operation
US8595411B2 (en) * 2009-12-30 2013-11-26 Sandisk Technologies Inc. Method and controller for performing a sequence of commands
KR101541040B1 (ko) * 2010-03-12 2015-08-03 엘에스아이 코포레이션 플래시 메모리들을 위한 ldpc 소거 디코딩
US8447925B2 (en) * 2010-11-01 2013-05-21 Taejin Info Tech Co., Ltd. Home storage device and software including management and monitoring modules
JP5720210B2 (ja) * 2010-12-02 2015-05-20 富士通株式会社 アクセス制御装置、誤り訂正制御方法およびストレージ装置
US20120215957A1 (en) * 2011-02-17 2012-08-23 Byungcheol Cho Semiconductor storage device-based cache storage system
US8694719B2 (en) * 2011-06-24 2014-04-08 Sandisk Technologies Inc. Controller, storage device, and method for power throttling memory operations
US9128721B2 (en) * 2012-12-11 2015-09-08 Apple Inc. Closed loop CPU performance control
US9043499B2 (en) * 2013-02-05 2015-05-26 Cleversafe, Inc. Modifying a dispersed storage network memory data access response plan

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20060004957A1 (en) * 2002-09-16 2006-01-05 Hand Leroy C Iii Storage system architectures and multiple caching arrangements
US20090182836A1 (en) * 2008-01-16 2009-07-16 Aviles Joaquin J System and method for populating a cache using behavioral adaptive policies
KR100928438B1 (ko) * 2008-11-24 2009-11-25 주식회사 태진인포텍 Sas/sata 타입의 스토리지 장치

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101399414B1 (ko) 2013-06-28 2014-07-01 고려대학교 산학협력단 캐시를 사용한 네트워크 트래픽 분석 장치 및 방법

Also Published As

Publication number Publication date
US8924630B2 (en) 2014-12-30
US20120331221A1 (en) 2012-12-27
WO2012177057A3 (en) 2013-04-04
WO2012177057A2 (en) 2012-12-27

Similar Documents

Publication Publication Date Title
KR101243999B1 (ko) 반도체 저장소 장치를 위한 알람 기반 백업 및 복구
KR101209921B1 (ko) 반도체 저장 장치 기반 고속 캐시 저장 시스템
KR101244000B1 (ko) 랜덤 액세스 메모리용 하이브리드 시스템 아키텍쳐
KR101134069B1 (ko) 멀티 레벨 raid 구조를 위한 하이브리드 저장 시스템
US20130086315A1 (en) Direct memory access without main memory in a semiconductor storage device-based system
KR101209915B1 (ko) Raid 기반 저장소 컨트롤 보드 및 그 구동 방법
KR101541132B1 (ko) 크로스 바운더리 하이브리드 및 다이나믹 저장 장치 및 메모리 상황 인식 캐시 시스템
KR101317760B1 (ko) 반도체 저장 장치 기반 시스템용 동적 랜덤 액세스 메모리
KR101196878B1 (ko) 하이브리드 raid 컨트롤러
KR101512741B1 (ko) 반도체 저장 장치를 위한 네트워크 사용 가능 raid 컨트롤러
KR101209917B1 (ko) 고속 비휘발성 호스트 인터페이스를 가지는 복수 배열 독립 디스크 컨트롤 반도체 저장 장치 기반 시스템
KR20130047680A (ko) 비대칭 데이터 소스 간의 비동기 데이터 시프트 및 백업
KR101209922B1 (ko) 반도체 저장 장치 기반 시스템용 적응형 캐시
US20110252250A1 (en) Semiconductor storage device memory disk unit with multiple host interfaces
US20110252177A1 (en) Semiconductor storage device memory disk unit with programmable host interface
KR101212809B1 (ko) 복수의 호스트 인터페이스를 갖는 반도체 저장 장치 메모리 디스크 유닛 및 그 구동 방법
KR101316917B1 (ko) 블록 수준 장치 드라이버를 포함하는 디스크 입/출력 레이어 아키텍쳐
KR101317763B1 (ko) 반도체 저장 장치 기반 데이터 복구
KR101209914B1 (ko) 프로그램 가능한 호스트 인터페이스를 갖는 반도체 저장 장치 메모리 디스크 유닛
KR20120094868A (ko) 반도체 저장 장치 기반 캐시 저장 시스템
KR101209913B1 (ko) Fpga 및 메모리 모듈 사이의 임피던스 매칭
KR101512742B1 (ko) 향상된 밴드폭을 위한 복수의 호스트 인터페이스 유닛을 갖는 반도체 저장 장치 및 이에 따른 반도체 저장 장치 기반 시스템

Legal Events

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

Payment date: 20151203

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20161205

Year of fee payment: 5

FPAY Annual fee payment

Payment date: 20180903

Year of fee payment: 6

R401 Registration of restoration
FPAY Annual fee payment

Payment date: 20181224

Year of fee payment: 7

R401 Registration of restoration