KR20110080155A - 컴퓨터 시스템 및 복수 배열 독립 디스크(raid) 기록 캐시 서브-어셈블리 - Google Patents

컴퓨터 시스템 및 복수 배열 독립 디스크(raid) 기록 캐시 서브-어셈블리 Download PDF

Info

Publication number
KR20110080155A
KR20110080155A KR1020117009754A KR20117009754A KR20110080155A KR 20110080155 A KR20110080155 A KR 20110080155A KR 1020117009754 A KR1020117009754 A KR 1020117009754A KR 20117009754 A KR20117009754 A KR 20117009754A KR 20110080155 A KR20110080155 A KR 20110080155A
Authority
KR
South Korea
Prior art keywords
raid
write cache
assembly
memory
computer system
Prior art date
Application number
KR1020117009754A
Other languages
English (en)
Other versions
KR101475113B1 (ko
Inventor
로버트 씨 엘리오트
요셉 이 포스터
시아마크 타발레이
Original Assignee
휴렛-팩커드 디벨롭먼트 컴퍼니, 엘.피.
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 휴렛-팩커드 디벨롭먼트 컴퍼니, 엘.피. filed Critical 휴렛-팩커드 디벨롭먼트 컴퍼니, 엘.피.
Publication of KR20110080155A publication Critical patent/KR20110080155A/ko
Application granted granted Critical
Publication of KR101475113B1 publication Critical patent/KR101475113B1/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/0804Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches with main memory updating
    • 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2212/00Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
    • G06F2212/20Employing a main memory using a specific memory technology
    • G06F2212/202Non-volatile memory
    • G06F2212/2022Flash memory

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Memory System Of A Hierarchy Structure (AREA)
  • Techniques For Improving Reliability Of Storages (AREA)

Abstract

적어도 일부 실시예에서, 컴퓨팅 시스템은 프로세서 및 프로세서 외부의 통신 버스를 포함한다. 컴퓨팅 시스템은 또한 통신 버스에 결합된 복수 배열 독립 디스크(RAID) 기록 캐시 서브-어셈블리를 포함하고, RAID 기록 캐시 서브-어셈블리는 비휘발성 메모리를 갖는다.

Description

컴퓨터 시스템 및 복수 배열 독립 디스크(RAID) 기록 캐시 서브-어셈블리{REDUNDANT ARRAY OF INDEPENDENT DISKS(RAID) WRITE CACHE SUB-ASSEMBLY}
본 발명은 복수 배열 독립 디스크(Redundant Array of Independent Disks; RAID) 기록 캐시 서브-어셈블리에 관한 것이다.
복수 배열 독립 디스크(RAID) 기술은, 다수의 작고 저가의 디스크 드라이브들을, 하나의 크고 고가의 디스크 드라이브의 성능을 초과하는 성능을 산출하는 어레이로 조합한다. RAID는 리던던시(redundancy), 낮은 반응시간(latency), 높은 대역폭 및 데이터 회복 가능성 등의 이점을 제공한다. RAID 어레이는 컴퓨터에게 하나 이상의 논리 스토리지 유닛 또는 가상 디스크 드라이브로 보인다.
RAID에 대한 2 개의 기존 접근법: 하드웨어-기반 RAID 및 소프트웨어-기반 RAID가 존재한다. 하드웨어-기반 RAID는 호스트로부터 독립적으로 드라이브를 관리하고, 하나 이상의 가상 디스크들을 호스트에 제공한다. 일반적으로, 하드웨어-기반 RAID는 디스크 드라이브와 호스트 사이에 인터페이스하는 RAID 제어기 카드를 채용한다. 하드웨어-기반 RAID의 이점은, 호스트 프로세서 오버헤드를 최소화하고, 호스트 시스템 메모리 오버헤드를 최소화하고, 비휘발성 RAID 기록 캐시를 제공하는 것을 포함한다. 그러나, 하드웨어-기반 RAID는 많은 소비자들에게 원하지 않는 지출을 부과한다.
소프트웨어-기반 RAID는 호스트에서 다양한 RAID 레벨을 구현한다. 소프트웨어-기반 RAID는 비싸지 않고, 고성능을 제공할 수 있다. 그러나, 이것은 호스트 프로세서 및 시스템 메모리 오버헤드를 요구한다. 또한, 소프트웨어-기반 RAID가 휘발성 시스템 메모리에 의존하기 때문에, 기록 트랜잭션이 완료 전에 (예를 들면, 전력 실패에 의해) 중단되면, 데이터가 분실될 수 있다.
본 발명의 예시적인 실시예의 상세한 설명을 위해, 첨부한 도면에 대해 참조가 이루어질 것이다.
도 1은 실시예에 따른 복수 배열 독립 디스크(RAID) 시스템을 예시하는 도면.
도 2는 실시예에 따른 컴퓨터 시스템을 예시하는 도면.
도 3(a) 및 도 3(b)는 실시예에 따른 RAID 기록 캐시 카드들 또는 서브-어셈블리들을 예시하는 도면.
도 4는 실시예에 따른 방법을 도시한 도면.
특정 시스템 구성요소들을 나타내기 위해 다음의 기재 및 청구항들에서 특정 용어들이 사용된다. 컴퓨터 회사들이 상이한 명칭으로 구성요소를 나타낼 수 있다는 것을 당업자는 이해할 것이다. 본 문헌은 명칭이 상이하지만 기능이 동일한 구성요소를 구별하도록 의도되지 않는다. 다음의 논의 및 청구항에서, 용어들 “포함” 및 “구비”는 제한이 없는 방식으로 사용되고, 따라서 “포함하지만 이에 제한되지 않는 것”을 의미하도록 해석되어야 한다. 또한, 용어 “결합” 또는 “결합들”은 간접, 직접, 광학 또는 무선 접속 중 어느 하나를 의미하도록 의도된다. 따라서, 제 1 장치가 제 2 장치에 결합한다면, 접속은 직접적인 접속, 다른 장치들 및 접속들을 통한 간접적인 접속, 광학 접속, 또는 무선 접속을 통한 것일 수 있다. 용어 “시스템”은 2 개 이상의 하드웨어 및/또는 소프트웨어 구성요소의 집합체를 나타내고, 전자 장치 또는 장치들 또는 그의 서브-시스템을 나타내는데 사용될 수 있다. 또한, 용어 “소프트웨어”는 소프트웨어를 저장하는데 사용되는 매체와 상관없이 프로세서 상에서 실행할 수 있는 임의의 실행 가능한 코드를 포함한다. 따라서, 비휘발성 메모리에 저장되고, 때때로 “임베딩된 펌웨어”로서 지칭되는 코드는 소프트웨어의 정의 내에 포함된다.
다음의 논의는 본 발명의 다양한 실시예에 관한 것이다. 하나 이상의 이들 실시예들이 바람직할 수 있지만, 개시된 실시예는 청구항을 포함하여 본 개시의 범위를 제한하는 것으로 해석 또는 사용되어서는 안 된다. 또한, 다음의 기재가 넓은 응용 범위를 갖고, 임의의 실시예의 논의가 단지 예시적인 실시예인 것으로 여겨지고, 청구항을 포함하여 본 개시의 범위가 실시예로 제한된다는 것을 시사하도록 의도되지 않는다는 것을 당업자는 이해할 것이다.
본 개시의 실시예는 RAID 제어기 카드가 없는 복수 배열 독립 디스크(RAID)기능을 제공한다. 적어도 일부 실시예에서, 소프트웨어-기반 RAID는 비휘발성 RAID 기록 캐시를 주변 통신 버스(예를 들면, PCle(Peripheral Component Interconnenct Express) 버스)에 제공함으로써 개선된다. 도 1은 다양한 실시예에 따른 RAID 시스템(100)을 예시한다. 도시된 바와 같이, RAID 시스템(100)은 복수의 디스크들(112a-112n)을 지원하기 위하기 위해 RAID 제어기 카드 기능(102)을 제공한다. RAID 제어기 카드 기능(102)은, 이에 제한되지 않지만, RAID 레벨 프로세싱 로직(104), 비휘발성 기록 캐시(106), 디스크 인터페이스(108), 및 메모리-대-메모리 인터페이스(110)를 포함한다. 통상적인 RAID 제어기 카드를 구현하는 것 이외에, 실시예들은 본원에 상술된 바와 같이 기능(102)을 컴퓨터 시스템의 다른 구성요소에 분배한다.
실시예에 따라, 기능(120)은 스트라이핑(striping) 및 데이터 미러링(data mirroring)과 같은 공지된 RAID 동작들을 지원한다. 스트라이핑은 데이터를 균일한 크기의 블록들로 분할하고, 디스크(112a-112n) 중 적어도 일부에 걸쳐 블록들을 확장하는 것을 수반한다. 디스크(112a-112n)의 판독/기록 헤드들이 동시에 활성이면, 스트라이핑은 데이터 전송 속도를 개선할 수 있다. 일반적으로, 데이터 미러링은 데이터 리던던시(data redundancy)를 제공한다. RAID-0, RAID-1, RAID-5 및 RAID-6는 데이터 리던던시 방식의 예이다.
도 2는 실시예에 따른 컴퓨터 시스템(200)을 예시한다. 도시된 바와 같이, 컴퓨터 시스템(200)은 듀얼 프로세서 인터페이스를 통해 접속된 CPU(202a 및 202b)를 포함한다. 대안적인 실시예에서, 부가적이거나 더 적은 CPU들이 구현될 수 있다. CPU의 수와 상관없이, CPU들 중 적어도 하나(예를 들면, CPU 202b)는 상술된 RAID 동작을 지원하기 위해 RAID 레벨 프로세싱 로직(104)을 포함한다. RAID 레벨 프로세싱 로직은 하드웨어, 펌웨어 및/또는 소프트웨어를 포함할 수 있다. 적어도 일부 실시예에서, RAID 레벨 프로세싱 로직(104)은 소프트웨어-기반 RAID 기능에 대응한다.
CPU(202B)는 듀얼 데이터 레이트 3(DDR-3)와 같은 메모리 모듈 프로토콜을 통해 복수의 듀얼 인라인 메모리 모듈(DIMMs)(210a-210d)과 통신한다. 또한, 다른 메모리 모듈 프로토콜이 사용될 수 있다. 도시된 바와 같이, CPU(202B)는 또한 PCle(Peripheral Component Interconnenct Express) 인터페이스일 수 있는 주변 인페이스(208)를 포함한다. 그러한 경우에, 주변 인터페이스(208) 및 컴퓨터 시스템(200)의 다양한 내부 또는 외부 구성요소 간의 통신은 PCle 프로토콜에 기초한다.
일부 실시예에서, 주변 인터페이스(208)는 디스크 인터페이스(108)를 갖는 사우스 브리지(South Bridge)(220)에 결합한다. 그러한 실시예에서, 주변 인터페이스(208) 및 사우스 브리지(220) 간의 통신은 PCle 프로토콜 또는 다른 프로토콜에 기초할 수 있다. 또한, 사우스 브리지(220) 및 디스크(112a-112n) 간의 통신은 SAS(Serial Attached SCSI) 프로토콜, SATA(Serial ATA) 프로토콜, USB(Universal Serial Bus) 프로토콜, 또는 디스크 인터페이스(108)에 의해 구현된 또 다른 통신 프로토콜에 기초할 수 있다.
주변 인터페이스(208)는 또한 RAID 기록 캐시 카드 또는 서브-어셈블리(230)에 결합한다(즉, 구성요소는 카드 또는 다른 위치 상에서 어셈블리될 수 있음). 도시된 바와 같이, RAID 기록 캐시 카드 또는 서브-어셈블리(230)는 비휘발성 기록 캐시(106)에 결합된 프로토콜 컨버터 로직(232)을 포함한다. 프로토콜 컨버터 로직(232)은, 비휘발성 기록 캐시(106)에 저장하기 위해 주변 인터페이스(208)로부터 수신된 통신 버스 데이터를 메모리 모듈 데이터로 변환한다. 예로서, 프로토콜 컨버터 로직(232)은 PCle 제너레이션 3 데이터를 DDR-3 데이터로 변환할 수 있고, 그 역도 가능하다. 실시예에 따라, 비휘발성 기록 캐시(106)는 DRAM(Dynamic Random Access Memory), 전원(예를 들면, 배터리) 및, 일부 실시예에서, 플래시 메모리를 포함한다.
비휘발성 기록 캐시(106)에 의해 제공되는 기록 캐싱은, 캐시로의 기록이 디스크로의 기록보다 빠르고 RAID 시스템(예를 들면, RAID 시스템(100))의 I/O 성능을 개선하기 위한 비용-효율적인 방법이라는 원리에 기초한다. 기록 트랜잭션에서, 기록 데이터는 캐시에 기록되고, 기록 트랜잭션은 기록을 발행한 호스트에 "완료"로서 확인 응답된다. 나중에, 캐싱된 기록은 디스크에 기록 또는 플러싱될 수 있다. 호스트가 "완료" 확인 응답을 수신할 때, 데이터가 디스크에 영구적으로 저장된 것으로 가정된다. I/O 구성요소들이 전력을 상실하면, 기록 캐싱은 부정확한 데이터로 하여금 애플리케이션들에 전달되도록 할 수 있고, 전력이 복구될 때 데이터베이스에 오류를 일으킬 수 있다. 그러한 문제점을 개선하거나 제거하기 위해, 비휘발성 기록 캐시(106)는, 컴퓨터 시스템(200)이 크래시 또는 전력 손실로부터 복구할 때 진행 중인 기록을 완료하기 위해 사용될 수 있는 정보를 저장한다.
도 3(a)는 다양한 실시예에 따른 RAID 기록 캐시 카드 또는 서브-어셈블리(230A)를 예시한다. 도시된 바와 같이, RAID 기록 캐시 카드 또는 서브-어셈블리(230A)는 프로토콜 컨버터 로직(232) 및 메모리-대-메모리 인터페이스(110)를 갖는 제어 로직(302)(예를 들면, ASIC(Application Specific Integrated Circuit) 또는 다른 반도체 장치)을 포함한다. 일부 실시예에서, 제어 로직(302)은 FPGA(Field Programmable Gate Array)에 대응한다. 또한, 메모리-대-메모리 인터페이스(110)는 DMA(Direct Memory Access) 인터페이스에 대응할 수 있다. 일부 실시예에서, CPU(202B)는 메모리-대-메모리 인터페이스(110)의 적어도 일부를 포함하거나, 부가적이거나 대안적인 메모리-대-메모리 인터페이스를 제공한다.
RAID 기록 캐시 카드 또는 서브-어셈블리(230A)는 또한, 컴퓨터 시스템(200)이 고장나거나 전력을 상실할지라도 제어 로직(302) 및/또는 DRAM(304)에 전력을 제공하는 배터리(306) 및 DRAM(304)을 포함한다. 함께, DRAM(304) 및 배터리(308)는 배터리 백업형 DRAM 또는, 더욱 일반적으로, 일부 비휘발성 저장소를 나타낸다. 컴퓨터 시스템(200)이 복구될 때, DRAM(304)에 저장된 정보는, 컴퓨터 시스템(200)이 고장나거나 전력을 상실할 때 진행 중인 RAID 기록을 완결하는데 사용될 수 있다.
도 3(b)는 실시예에 따른 RAID 기록 캐시 카드 또는 서브-어셈블리(230B)를 예시한다. 도시된 바와 같이, RAID 기록 캐시 카드 또는 서브-어셈블리(230B)는 프로토콜 컨버터 로직(232) 및 메모리-대-메모리 인터페이스(110)(예를 들면, DMA 인터페이스)를 갖는 제어 로직(302)을 포함한다. 일부 실시예에서, CPU(202B)는 메모리-대-메모리 인터페이스(110)의 적어도 일부 또는 부가적이거나 대안적인 메모리-대-메모리 인터페이스(110)를 제공한다.
RAID 기록 캐시 카드 또는 서브-어셈블리(230B)는 또한 DRAM(304), 플래시 메모리(308) 및 전원(310)(예를 들면, 배터리 또는 커패시터)을 포함한다. 전원(310)은, 컴퓨터 시스템(200)이 고장나거나 전력을 상실할지라도 전력을 제어 로직(302), DRAM(304) 및/또는 플래시 메모리(308)에 제공한다. 함께, DRAM(304), 플래시 메모리(308) 및 전원(310)은 비휘발성 저장소를 나타낸다. 일부 실시예에서, 컴퓨터 시스템(200)의 고장 또는 전력 상실의 검출 시에, 전원(310)은 데이터가 메모리-대-메모리 인터페이스(110)를 통해 DRAM(304)에서 플래시 메모리(308)로 전송되도록 한다. 컴퓨터 시스템(200)이 복구될 때, 데이터는 다시 플래시 메모리(308)에서 DRAM(304)로 전송되고, 컴퓨터 시스템(200)이 고장나거나 전력을 상실할 때, DRAM(304)에 저장된 정보는 진행 중인 기록을 완결하는데 사용될 수 있다.
도 4는 실시예에 따른 방법(400)을 예시한다. 도시된 바와 같이, 방법(400)은 블록(402)에서 시작하고, 통신 버스 프로토콜에서 메모리 모듈 프로토콜로 데이터를 변환함으로써 계속된다(블록 404). 데이터는 비휘발성 RAID 기록 캐시에 저장되고(블록 406), 방법(400)은 블록(408)에서 종료된다. 적어도 일부 실시예에서, 방법(400)은 또한 비휘발성 RAID 기록 캐시에 대한 메모리-대-메모리 동작을 수행하는 단계를 더 포함할 수 있다. 예로서, 방법(400)은, 컴퓨팅 시스템 캐시가 고장나거나 전력을 상실할 때를 결정하고, 응답하여, 데이터를 DRAM에서 플래시 메모리로 전송하는 단계를 수반할 수 있다. DRAM 및 플래시 메모리는 RAID 기록 캐시 카드 또는 서브-어셈블리의 일부일 수 있다.
상기 논의는 본 발명의 원리 및 다양한 실시예의 예시인 것으로 여겨진다. 상기 개시가 완전히 이해되면, 다양한 변동 및 수정이 당업자에게 명백해질 것이다. 다음의 특허청구범위는 그러한 모든 변동 및 수정을 포괄하도록 해석되도록 의도된 것이다.

Claims (15)

  1. 프로세서와,
    상기 프로세서에 결합된 디스크 인터페이스와,
    상기 프로세서 외부의 통신 버스와,
    상기 통신 버스에 결합된 복수 배열 독립 디스크(Redundant Array of Independent Disks; RAID) 기록 캐시 서브-어셈블리를 포함하고, 상기 RAID 기록 캐시 서브-어셈블리는 비휘발성 저장소를 가지는
    컴퓨터 시스템.
  2. 제 1 항에 있어서,
    상기 비휘발성 저장소는 배터리 백업형 DRAM(battery-backed Dynamic Random Access Memory)를 포함하는
    컴퓨터 시스템.
  3. 제 1 항에 있어서,
    상기 비휘발성 저장소는 DRAM(Dynamic Random Access Memory), 전원 및 플래시 메모리를 포함하는
    컴퓨터 시스템.
  4. 제 3 항에 있어서,
    상기 RAID 기록 캐시 서브-어셈블리는, 상기 컴퓨터 시스템이 전력을 상실할 때 데이터를 DRAM에서 플래시 메모리로 전송하기 위한 DMA(Direct Memory Access) 로직 및 배터리를 더 포함하는
    컴퓨터 시스템.
  5. 제 1 항에 있어서,
    상기 프로세서와 연관된 칩셋을 더 포함하고,
    상기 칩셋은 RAID 디스크 드라이브와 통신하기 위한 로직을 포함하는
    컴퓨터 시스템.
  6. 제 1 항에 있어서,
    상기 프로세서는 적어도 일부 RAID 제어기 동작을 수행하는
    컴퓨터 시스템.
  7. 제 1 항에 있어서,
    상기 RAID 기록 캐시 서브-어셈블리는, 데이터를 상기 통신 버스의 프로토콜에서 DRAM 프로토콜로 변환하고 그 역도 가능한 로직을 더 포함하는
    컴퓨터 시스템.
  8. 제 1 항에 있어서,
    상기 통신 버스는 PCI-Express 버스에 대응하고, 상기 RAID 기록 캐시 서브-어셈블리는 PCI-Express 호환 가능한 카드를 포함하는
    컴퓨터 시스템.
  9. 통신 버스 프로토콜과 메모리 모듈 프로토콜 사이에서 데이터를 변환하기 위한 로직과,
    상기 로직에 결합된 비휘발성 RAID 기록 캐시를 포함하는
    복수 배열 독립 디스크(RAID) 기록 캐시 서브-어셈블리.
  10. 제 9 항에 있어서,
    상기 비휘발성 RAID 기록 캐시는 배터리 백업형 DRAM을 포함하는
    RAID 기록 캐시 서브-어셈블리.
  11. 제 9 항에 있어서,
    상기 비휘발성 RAID 기록 캐시는 플래시 메모리 및 전원을 포함하는
    RAID 기록 캐시 서브-어셈블리.
  12. 제 9 항에 있어서,
    상기 배터리 백업형 RAID 기록 캐시에 대한 메모리-대-메모리 동작을 수행하기 위한 DMA 인터페이스를 더 포함하는
    RAID 기록 캐시 서브-어셈블리.
  13. 통신 버스 프로토콜에서 메모리 모듈 프로토콜로 데이터를 변환하는 단계와,
    상기 데이터를 비휘발성 RAID 기록 캐시에 저장하는 단계를 포함하는
    복수 배열 독립 디스크(RAID) 기록 캐시 서브-어셈블리에 대한 방법.

  14. 제 13 항에 있어서,
    상기 비휘발성 RAID 기록 캐시에 대한 메모리-대-메모리 동작을 수행하는 단계를 더 포함하는
    RAID 기록 캐시 서브-어셈블리 방법.
  15. 제 13 항에 있어서,
    컴퓨터 시스템이 전력을 상실할 때를 결정하는 단계와,
    응답하여, DRAM에서 플래시 메모리로 데이터를 전송하는 단계를 더 포함하는
    RAID 기록 캐시 서브-어셈블리 방법.
KR1020117009754A 2008-10-30 2008-10-30 컴퓨터 시스템 및 복수 배열 독립 디스크(raid) 기록 캐시 서브-어셈블리 KR101475113B1 (ko)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/US2008/081700 WO2010050947A1 (en) 2008-10-30 2008-10-30 Redundant array of independent disks (raid) write cache sub-assembly

Publications (2)

Publication Number Publication Date
KR20110080155A true KR20110080155A (ko) 2011-07-12
KR101475113B1 KR101475113B1 (ko) 2014-12-22

Family

ID=42129104

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020117009754A KR101475113B1 (ko) 2008-10-30 2008-10-30 컴퓨터 시스템 및 복수 배열 독립 디스크(raid) 기록 캐시 서브-어셈블리

Country Status (6)

Country Link
US (1) US20110225353A1 (ko)
EP (1) EP2350842B1 (ko)
JP (1) JP5426684B2 (ko)
KR (1) KR101475113B1 (ko)
CN (1) CN102203751A (ko)
WO (1) WO2010050947A1 (ko)

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TWI401567B (zh) * 2010-05-07 2013-07-11 Promise Tecnnology Inc 資料儲存系統及其控制方法
US8484408B2 (en) * 2010-12-29 2013-07-09 International Business Machines Corporation Storage system cache with flash memory in a raid configuration that commits writes as full stripes
US20130111103A1 (en) * 2011-10-28 2013-05-02 International Business Corporation High-speed synchronous writes to persistent storage
US9552176B2 (en) 2013-04-12 2017-01-24 Microsoft Technology Licensing, Llc Block storage using a hybrid memory device
US9535828B1 (en) * 2013-04-29 2017-01-03 Amazon Technologies, Inc. Leveraging non-volatile memory for persisting data
JP6380322B2 (ja) * 2015-09-29 2018-08-29 コニカミノルタ株式会社 画像形成装置
CN106528001B (zh) * 2016-12-05 2019-08-23 北京航空航天大学 一种基于非易失性存储器和软件raid的缓存系统

Family Cites Families (21)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3188071B2 (ja) * 1993-10-14 2001-07-16 富士通株式会社 ディスクキャッシュ装置
EP0707267A3 (en) * 1994-10-12 1996-07-03 Ibm Redundant arrangement of disk drives with asymmetrical mirroring and data processing methods for asymmetrical mirroring
US5758187A (en) * 1996-03-15 1998-05-26 Adaptec, Inc. Method for enhancing performance of a RAID 1 read operation using a pair of I/O command blocks in a chain structure
JPH10154065A (ja) * 1996-11-26 1998-06-09 Fujitsu Ltd バス制御装置
US6098114A (en) * 1997-11-14 2000-08-01 3Ware Disk array system for processing and tracking the completion of I/O requests
US6446220B1 (en) * 1998-08-04 2002-09-03 International Business Machines Corporation Updating data and parity data with and without read caches
US6141747A (en) * 1998-09-22 2000-10-31 Advanced Micro Devices, Inc. System for store to load forwarding of individual bytes from separate store buffer entries to form a single load word
US6321298B1 (en) * 1999-01-25 2001-11-20 International Business Machines Corporation Full cache coherency across multiple raid controllers
JP2002099390A (ja) * 2000-09-22 2002-04-05 Toshiba Corp ディスク制御装置
US6687765B2 (en) * 2001-01-16 2004-02-03 International Business Machines Corporation System, method, and computer program for explicitly tunable I/O device controller
US7340555B2 (en) * 2001-09-28 2008-03-04 Dot Hill Systems Corporation RAID system for performing efficient mirrored posted-write operations
US7536495B2 (en) * 2001-09-28 2009-05-19 Dot Hill Systems Corporation Certified memory-to-memory data transfer between active-active raid controllers
US7315911B2 (en) * 2005-01-20 2008-01-01 Dot Hill Systems Corporation Method for efficient inter-processor communication in an active-active RAID system using PCI-express links
US7076606B2 (en) * 2002-09-20 2006-07-11 Quantum Corporation Accelerated RAID with rewind capability
JP4651913B2 (ja) * 2003-02-17 2011-03-16 株式会社日立製作所 記憶装置システム
US7493441B2 (en) * 2005-03-15 2009-02-17 Dot Hill Systems Corporation Mass storage controller with apparatus and method for extending battery backup time by selectively providing battery power to volatile memory banks not storing critical data
US7661002B2 (en) * 2005-08-04 2010-02-09 Dot Hill Systems Corporation Storage controller super capacitor dynamic voltage throttling
US20070101158A1 (en) * 2005-10-28 2007-05-03 Elliott Robert C Security region in a non-volatile memory
US7627714B2 (en) * 2006-08-22 2009-12-01 International Business Machines Corporation Apparatus, system, and method for preventing write starvation in a partitioned cache of a storage controller
JP4437489B2 (ja) * 2006-10-25 2010-03-24 株式会社日立製作所 揮発性キャッシュメモリと不揮発性メモリとを備えたストレージシステム
US20100199039A1 (en) * 2009-01-30 2010-08-05 International Business Machines Corporation Systems and Methods for Optimizing Host Reads and Cache Destages in a Raid System

Also Published As

Publication number Publication date
EP2350842B1 (en) 2015-02-25
CN102203751A (zh) 2011-09-28
US20110225353A1 (en) 2011-09-15
EP2350842A1 (en) 2011-08-03
WO2010050947A1 (en) 2010-05-06
JP2012507784A (ja) 2012-03-29
KR101475113B1 (ko) 2014-12-22
JP5426684B2 (ja) 2014-02-26
EP2350842A4 (en) 2013-01-23

Similar Documents

Publication Publication Date Title
KR101861924B1 (ko) 보호된 데이터로부터 분리된 패리티 데이터 저장
JP5495074B2 (ja) 論理ユニット動作
US7984325B2 (en) Storage control device, data recovery device, and storage system
KR101475113B1 (ko) 컴퓨터 시스템 및 복수 배열 독립 디스크(raid) 기록 캐시 서브-어셈블리
US8250403B2 (en) Solid state disk device and related data storing and reading methods
EP2703991A2 (en) Scalable storage protection
US20150143027A1 (en) Solid state drive with raid functions
US20200073804A1 (en) Nonvolatile memory device, data storage device including the same and operating method thereof
US9842024B1 (en) Flash electronic disk with RAID controller
KR20170092333A (ko) Raid-6 데이터 저장 장치와 이를 포함하는 데이터 처리 시스템
US20210103517A1 (en) Operating method of memory system and host recovering data with write error
US11748025B2 (en) Nonvolatile memory device, data storage device including the same and operating method thereof
US10802958B2 (en) Storage device, its controlling method, and storage system having the storage device
JP2010020648A (ja) 記憶装置
US20150143024A1 (en) Redundant array of independent modules
US11550658B1 (en) Storage system and method for storing logical-to-physical address table entries in a codeword in volatile memory
US7886310B2 (en) RAID control method and core logic device having RAID control function
US9639417B2 (en) Storage control apparatus and control method
US7757130B2 (en) Computer system having raid control function and raid control method
US11650758B2 (en) Data storage device and method for host-initiated cached read to recover corrupted data within timeout constraints
US11385963B1 (en) Usage of data mask in DRAM write
US20240111427A1 (en) Data Storage Device That Detects And Releases Input Queue Bottlenecks
CN115840661A (zh) 从hmb丢失恢复的无dram ssd
WO2023043502A1 (en) Recovery from hmb loss

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
LAPS Lapse due to unpaid annual fee