JP2005149224A - ディスクアレイ装置,raid用パリティデータ生成回路およびガロア体乗算回路 - Google Patents
ディスクアレイ装置,raid用パリティデータ生成回路およびガロア体乗算回路 Download PDFInfo
- Publication number
- JP2005149224A JP2005149224A JP2003386997A JP2003386997A JP2005149224A JP 2005149224 A JP2005149224 A JP 2005149224A JP 2003386997 A JP2003386997 A JP 2003386997A JP 2003386997 A JP2003386997 A JP 2003386997A JP 2005149224 A JP2005149224 A JP 2005149224A
- Authority
- JP
- Japan
- Prior art keywords
- data
- parity
- circuit
- index table
- conversion
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/08—Error detection or correction by redundancy in data representation, e.g. by using checking codes
- G06F11/10—Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's
- G06F11/1076—Parity data used in redundant arrays of independent storages, e.g. in RAID systems
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11B—INFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
- G11B20/00—Signal processing not specific to the method of recording or reproducing; Circuits therefor
- G11B20/10—Digital recording or reproducing
- G11B20/18—Error detection or correction; Testing, e.g. of drop-outs
- G11B20/1833—Error detection or correction; Testing, e.g. of drop-outs by adding special lists or symbols to the coded information
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2211/00—Indexing scheme relating to details of data-processing equipment not covered by groups G06F3/00 - G06F13/00
- G06F2211/10—Indexing scheme relating to G06F11/10
- G06F2211/1002—Indexing scheme relating to G06F11/1076
- G06F2211/1054—Parity-fast hardware, i.e. dedicated fast hardware for RAID systems with parity
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2211/00—Indexing scheme relating to details of data-processing equipment not covered by groups G06F3/00 - G06F13/00
- G06F2211/10—Indexing scheme relating to G06F11/10
- G06F2211/1002—Indexing scheme relating to G06F11/1076
- G06F2211/1057—Parity-multiple bits-RAID6, i.e. RAID 6 implementations
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Signal Processing (AREA)
- Quality & Reliability (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Error Detection And Correction (AREA)
- Detection And Correction Of Errors (AREA)
Abstract
【解決手段】ガロア体乗算を、ガロア体乗算表1−11から生成した索引テーブル情報によってデータ変換を行うことで実現し、RAID6用のデータを生成する。ガロア体乗算表1−11の縦方向の索引と横方向の索引との異なる方向から索引したものを使用して索引テーブル情報の不一致をあらかじめ検査するテーブルチェック回路1−14を用い、乗算を行うデータ1−2およびパリティ1−3を複数に分解し、それぞれ異なる索引テーブル情報を割り当てることにより、縦索引テーブル作成回路1−9および横索引テーブル作成回路1−10自身のチェックが行われる。
【選択図】図1
Description
Array of Independent Disks)用パリティデータ生成回路およびガロア体乗算回路に関し、特に高信頼性や高性能が求められるRAID6のディスクアレイ装置,RAID用パリティデータ生成回路およびガロア体乗算回路に関する。
Galois field)(24)を用いて、RAID6を実現するようにしたRAID装置が公知である(特許文献1参照)。以下、拡大ガロア体を、適宜、単にガロア体という。
n個のデータ列をD0,D1,D2,…,D(n−1)としたとき、その2つのパリティデータPおよびパリティデータQは、以下の2式を使用する。
P=D0+D1+D2+…+D(n−1)
Q=D0+2D1+3D2+…+nD(n−1)
X4+X+1=0
の根を考えると、0,1の何れの元を代入しても根が存在しない。そこで、このような規約多項式の根の1つをαと定義し体を拡大してみる。
α4=α+1
の関係式が得られ、αで表わされる4次以上の関係式は全て4次以下に置換することができる。
2 α2
3 α3
4 α4=α+1
5 α5=α2+α
6 α6=α3+α2
7 α7=α4+α3=α3+α+1
8 α8=α4+α2+α=α2+1
9 α9=α3+α
A α10=α4+α2=α2+α+1
B α11=α3+α2+α
C α12=α4+α3+α2=α3+α2+α+1
D α13=α4+α3+α2+α=α3+α2+1
E α14=α4+α3+α=α3+1
F α15=α4+α+1
α7+α14=α21=α6=α3+α2
となり、15種類の中の式α6に納まる。この関係式からデータの種類1〜Fで一巡するので、α16=αとなり、1にもどる。
E(0)=D(0)+D(1)+D(2)+D(3)+D(4)+D(5)+D(6)+D(7)+D(10)+D(12)+D(20)+D(21)+D(22)+D(23)+D(24)+D(25)+D(26)+D(27)+D(32)+D(36)+D(40)+D(44)+D(52)+D(54)+D(58)+D(60)
E(1)=D(0)+D(1)+D(2)+D(3)+D(4)+D(7)+D(10)+D(13)+D(28)+D(29)+D(30)+D(31)+D(33)+D(37)+D(41)+D(45)+D(48)+D(49)+D(50)+D(51)+D(52)+D(53)+D(54)+D(55)+D(58)+D(61)
E(2)=D(4)+D(6)+D(7)+D(10)+D(14)+D(16)+D(17)+D(18)+D(19)+D(20)+D(21)+D(22)+D(23)+D(34)+D(38)+D(42)+D(46)+D(48)+D(49)+D(50)+D(51)+D(52)+D(55)+D(58)+D(59)+D(62)
E(3)=D(4)+D(6)+D(10)+D(11)+D(15)+D(16)+D(17)+D(18)+D(19)+D(24)+D(25)+D(26)+D(27)+D(28)+D(29)+D(30)+D(31)+D(35)+D(39)+D(43)+D(47)+D(52)+D(54)+D(55)+D(58)+D(63)
E(4)=D(0)+D(5)+D(8)+D(9)+D(11)+D(16)+D(20)+D(24)+D(28)+D(32)+D(33)+D(34)+D(35)+D(36)+D(37)+D(38)+D(39)+D(44)+D(45)+D(46)+D(47)+D(48)+D(52)+D(53)+D(56)+D(59)
E(5)=D(1)+D(4)+D(5)+D(9)+D(11)+D(12)+D(13)+D(14)+D(15)+D(17)+D(21)+D(25)+D(29)+D(40)+D(41)+D(42)+D(43)+D(44)+D(45)+D(46)+D(47)+D(49)+D(53)+D(56)+D(57)+D(59)
E(6)=D(2)+D(5)+D(8)+D(9)+D(10)+D(11)+D(12)+D(13)+D(14)+D(15)+D(18)+D(22)+D(26)+D(30)+D(32)+D(33)+D(34)+D(35)+D(50)+D(53)+D(57)+D(59)+D(60)+D(61)+D(62)+D(63)
E(7)=D(3)+D(5)+D(8)+D(11)+D(19)+D(23)+D(27)+D(31)+D(36)+D(37)+D(38)+D(39)+D(40)+D(41)+D(42)+D(43)+D(51)+D(53)+D(56)+D(57)+D(58)+D(59)+D(60)+D(61)+D(62)+D(63)
R1の変換コード=”00”
R2の変換コード=”00”
R3の変換コード=”00”
R4の変換コード=”34”
R5の変換コード=”a4”
R6の変換コード=”94”
R7の変換コード=”54”
R8の変換コード=”8a”
R9の変換コード=”89”
R10の変換コード=”85”
R11の変換コード=”8c”
R12の変換コード=”0c”
R13の変換コード=”b7”
R14の変換コード=”0a”
R15の変換コード=”c0”
R0の変換コード=”00”
R1の変換コード=”00”
R2の変換コード=”00”
R3の変換コード=”00”
R4の変換コード=”31”
R5の変換コード=”a1”
R6の変換コード=”91”
R7の変換コード=”51”
R8の変換コード=”2a”
R9の変換コード=”29”
R10の変換コード=”25”
R11の変換コード=”2c”
R12の変換コード=”03”
R13の変換コード=”a0”
R14の変換コード=”de”
R15の変換コード=”30”
となることから、変換コードは”17”が得られる。
E(0)=D(0)+D(1)+D(2)+D(3)+D(4)+D(5)+D(6)+D(7)+D(10)+D(12)+D(20)+D(21)+D(22)+D(23)+D(24)+D(25)+D(26)+D(27)+D(32)+D(36)+D(40)+D(44)+D(52)+D(54)+D(58)+D(60)
E(1)=D(0)+D(1)+D(2)+D(3)+D(4)+D(7)+D(10)+D(13)+D(28)+D(29)+D(30)+D(31)+D(33)+D(37)+D(41)+D(45)+D(48)+D(49)+D(50)+D(51)+D(52)+D(53)+D(54)+D(55)+D(58)+D(61)
E(2)=D(4)+D(6)+D(7)+D(10)+D(14)+D(16)+D(17)+D(18)+D(19)+D(20)+D(21)+D(22)+D(23)+D(34)+D(38)+D(42)+D(46)+D(48)+D(49)+D(50)+D(51)+D(52)+D(55)+D(58)+D(59)+D(62)
E(3)=D(4)+D(6)+D(10)+D(11)+D(15)+D(16)+D(17)+D(18)+D(19)+D(24)+D(25)+D(26)+D(27)+D(28)+D(29)+D(30)+D(31)+D(35)+D(39)+D(43)+D(47)+D(52)+D(54)+D(55)+D(58)+D(63)
E(4)=D(0)+D(5)+D(8)+D(9)+D(11)+D(16)+D(20)+D(24)+D(28)+D(32)+D(33)+D(34)+D(35)+D(36)+D(37)+D(38)+D(39)+D(44)+D(45)+D(46)+D(47)+D(48)+D(52)+D(53)+D(56)+D(59)
E(5)=D(1)+D(4)+D(5)+D(9)+D(11)+D(12)+D(13)+D(14)+D(15)+D(17)+D(21)+D(25)+D(29)+D(40)+D(41)+D(42)+D(43)+D(44)+D(45)+D(46)+D(47)+D(49)+D(53)+D(56)+D(57)+D(59)
E(6)=D(2)+D(5)+D(8)+D(9)+D(10)+D(11)+D(12)+D(13)+D(14)+D(15)+D(18)+D(22)+D(26)+D(30)+D(32)+D(33)+D(34)+D(35)+D(50)+D(53)+D(57)+D(59)+D(60)+D(61)+D(62)+D(63)
E(7)=D(3)+D(5)+D(8)+D(11)+D(19)+D(23)+D(27)+D(31)+D(36)+D(37)+D(38)+D(39)+D(40)+D(41)+D(42)+D(43)+D(51)+D(53)+D(56)+D(57)+D(58)+D(59)+D(60)+D(61)+D(62)+D(63)
E(i)=R0(i)+R1(i)+R2(i)+R3(i)+R4(i)+R5(i)+R6(i)+R7(i)+R8(i)+R9(i)+R10(i)+R11(i)+R12(i)+R13(i)+R14(i)+R15(i)
R0(0)=D(0)+D(1)+D(2)+D(3)
R0(1)=D(0)+D(1)+D(2)+D(3)
R0(2)=0
R0(3)=0
R0(4)=D(0)
R0(5)=D(1)
R0(6)=D(2)
R0(7)=D(3)
R1(0)=D(4)+D(5)+D(6)+D(7)
R1(1)=D(4)+D(7)
R1(2)=D(4)+D(6)+D(7)
R1(3)=D(4)+D(6)
R1(4)=D(5)
R1(5)=D(4)+D(5)
R1(6)=D(5)
R1(7)=D(5)
R2(0)=D(10)
R2(1)=D(10)
R2(2)=D(10)
R2(3)=D(10)+D(11)
R2(4)=D(8)+D(9)+D(11)
R2(5)=D(9)+D(11)
R2(6)=D(8)+D(9)+D(10)+D(11)
R2(7)=D(8)+D(11)
R3(0)=D(12)
R3(1)=D(13)
R3(2)=D(14)
R3(3)=D(15)
R3(4)=0
R3(5)=D(12)+D(13)+D(14)+D(15)
R3(6)=D(12)+D(13)+D(14)+D(15)
R3(7)=0
R4(0)=0
R4(1)=0
R4(2)=D(16)+D(17)+D(18)+D(19)
R4(3)=D(16)+D(17)+D(18)+D(19)
R4(4)=D(16)
R4(5)=D(17)
R4(6)=D(18)
R4(7)=D(19)
R5(0)=D(20)+D(21)+D(22)+D(23)
R5(1)=0
R5(2)=D(20)+D(21)+D(22)+D(23)
R5(3)=0
R5(4)=D(20)
R5(5)=D(21)
R5(6)=D(22)
R5(7)=D(23)
R6(0)=D(24)+D(25)+D(26)+D(27)
R6(1)=0
R6(2)=0
R6(3)=D(24)+D(25)+D(26)+D(27)
R6(4)=D(24)
R6(5)=D(25)
R6(6)=D(26)
R6(7)=D(27)
R7(0)=0
R7(1)=D(28)+D(29)+D(30)+D(31)
R7(2)=0
R7(3)=D(28)+D(29)+D(30)+D(31)
R7(4)=D(28)
R7(5)=D(29)
R7(6)=D(30)
R7(7)=D(31)
R8(0)=D(32)
R8(1)=D(33)
R8(2)=D(34)
R8(3)=D(35)
R8(4)=D(32)+D(33)+D(34)+D(35)
R8(5)=0
R8(6)=D(32)+D(33)+D(34)+D(35)
R8(7)=0
R9(0)=D(36)
R9(1)=D(37)
R9(2)=D(38)
R9(3)=D(39)
R9(4)=D(36)+D(37)+D(38)+D(39)
R9(5)=0
R9(6)=0
R9(7)=D(36)+D(37)+D(38)+D(39)
R10(0)=D(40)
R10(1)=D(41)
R10(2)=D(42)
R10(3)=D(43)
R10(4)=0
R10(5)=D(40)+D(41)+D(42)+D(43)
R10(6)=0
R10(7)=D(40)+D(41)+D(42)+D(43)
R11(0)=D(44)
R11(1)=D(45)
R11(2)=D(46)
R11(3)=D(47)
R11(4)=D(44)+D(45)+D(46)+D(47)
R11(5)=D(44)+D(45)+D(46)+D(47)
R11(6)=0
R11(7)=0
R12(0)=0
R12(1)=D(48)+D(49)+D(50)+D(51)
R12(2)=D(48)+D(49)+D(50)+D(51)
R12(3)=0
R12(4)=D(48)
R12(5)=D(49)
R12(6)=D(50)
R12(7)=D(51)
R13(0)=D(54)
R13(1)=D(52)+D(53)+D(54)+D(55)
R13(2)=D(52)+D(55)
R13(3)=D(52)+D(54)+D(55)
R13(4)=D(52)+D(53)
R13(5)=D(53)
R13(6)=D(53)
R13(7)=D(53)
R14(0)=D(58)
R14(1)=D(58)
R14(2)=D(58)+D(59)
R14(3)=D(58)
R14(4)=D(59)
R14(5)=D(56)+D(57)+D(59)
R14(6)=D(57)+D(59)
R14(7)=D(56)+D(57)+D(58)+D(59)
R15(0)=D(60)
R15(1)=D(61)
R15(2)=D(62)
R15(3)=D(63)
R15(4)=0
R15(5)=0
R15(6)=D(60)+D(61)+D(62)+D(63)
R15(7)=D(60)+D(61)+D(62)+D(63)
R0'(0-7)=R(0-7)+S(0-7)
S(0-7)=R(0-7)+R0'(0-7)
2 システムメモリ
3 ホスト側システムバス
4 ホスト側IO制御装置
5 ディスクアレイ装置
6 RAIDコントローラ
7 RAID用キャッシュメモリ
8 アレイ側システムバス
9 IO制御回路
10 ハードディスク装置
11 命令処理回路
12 データ転送制御回路
13 RAID用パリティデータ生成回路
1−1 転送データ
1−2 データ
1−3 パリティ
1−4 乗算係数
1−5 上位データ変換回路
1−6 下位データ変換回路
1−7 下位パリティ反転回路
1−8 上位パリティ反転回路
1−9 縦索引テーブル作成回路
1−10 横索引テーブル作成回路
1−11 ガロア体乗算表
1−12 データ
1−13 パリティ
1−14 テーブルチェック回路
1−15 パリティチェック回路
1−16 XOR回路
1−17 バッファ
1−18 RAID用パリティデータ
1−19 パリティ
3−5 パリティ用変換表
3−6 データ用変換表
3−7 パリティ用変換表
3−8〜3−11 セレクタ
3−12 パリティ用縦反転テーブル
3−13 データ用縦変換テーブル
3−14 データ用横変換テーブル
3−15 パリティ用横反転テーブル
4−2〜4−9 データ
4−10〜4−17 セレクタ
4−20〜4−27 RAID用パリティデータ
5−4〜5−7 パリティ
5−16〜5−23 セレクタ
5−24〜5−27 XOR回路
5−30〜5−33 パリティ
6−1 データ変換用テーブルチェック回路
6−2 パリティ反転用テーブルチェック回路
6−4 比較回路
6−7 比較回路
7−2〜7−5 ビット
7−7 ビット
7−8〜7−9 XOR回路
7−10〜7−14 XOR論理結果
8−7 偶数データ変換回路
8−8 奇数データ変換回路
8−9 偶数パリティ反転回路
8−10 奇数パリティ反転回路
8−21 ガロア体乗算回路
11−3 ECC
11−7 ECC変換回路
11−13 ECC
11−15 ECCチェック回路
11−21 ガロア体乗算回路
11−22 ECC変換表
11−23 索引テーブル作成回路
11−19 ECC
12−0〜12−15 変換表
13−0〜13−15 セレクタ
14−0〜14−15 変換テーブル
15−0〜15−15 データ
16−0〜16−15 セレクタ
17−0〜17−15 XOR回路
18−0〜18−15 出力
Claims (45)
- GF(24)のガロア体の乗算により作成された縦横が対称となるガロア体乗算表を用いてデータの変換を行い、前記ガロア体乗算表から横方向の索引テーブル情報および縦方向の索引テーブル情報を抜き出し、両索引テーブル情報を比較することにより回路の故障を検出することを特徴とするディスクアレイ装置。
- 前記索引テーブル情報として、乗算を行うデータ用の索引テーブル情報と、該データに付随するチェックコード用の索引テーブル情報との2種類を生成することを特徴とする請求項1記載のディスクアレイ装置。
- 前記索引テーブル情報のビット単位のXOR論理を演算し、ゼロの値以外であることを検出することにより回路の故障を検出することを特徴とする請求項1または請求項2記載のディスクアレイ装置。
- ガロア体の乗算を行うデータを複数に分解し、前記縦方向の索引テーブル情報を使って変換を行う分解データと、前記横方向の索引テーブル情報を使って変換を行う分解データとに分けて処理を行うことを特徴とする請求項1ないし請求項3のいずれかに記載のディスクアレイ装置。
- ガロア体の乗算を行うデータに付随するチェックコードを複数に分解し、前記縦方向の索引テーブル情報を使って変換を行う分解チェックコードと、前記横方向の索引テーブル情報を使って変換を行う分解チェックコードとに分けて処理を行うことを特徴とする請求項2ないし請求項4のいずれかに記載のディスクアレイ装置。
- 分解データを横方向の索引テーブル情報を使って変換を行う場合には該分解データに対する分解チェックコードを縦方向の索引テーブル情報を使って変換を行い、分解データを縦方向の索引テーブル情報を使って変換を行う場合には該分解データに対する分解チェックコードを横方向の索引テーブル情報を使って変換を行うことにより、対になっている分解データと分解チェックコードとをそれぞれが異なる索引テーブル情報を使って変換することを特徴とする請求項5記載のディスクアレイ装置。
- 前記縦方向の索引テーブル情報がデータ用縦変換テーブルであり、前記横方向の索引テーブル情報がデータ用横変換テーブルであることを特徴とする請求項1記載のディスクアレイ装置。
- 前記縦方向の索引テーブル情報がデータ用縦変換テーブルおよびチェックコード用縦反転テーブルであり、前記横方向の索引テーブル情報がデータ用横変換テーブルおよびチェックコード用横反転テーブルであることを特徴とする請求項2ないし請求項7のいずれかに記載のディスクアレイ装置。
- 前記チェックコードが、前記データに対するパリティであることを特徴とする請求項2ないし請求項8のいずれかに記載のディスクアレイ装置。
- 前記チェックコードが、前記データに対するECCであることを特徴とする請求項2ないし請求項8のいずれかに記載のディスクアレイ装置。
- GF(24)のガロア体の乗算により作成された縦横が対称となるガロア体乗算表を用いてデータの変換を行い、前記ガロア体乗算表から横方向の索引テーブル情報および縦方向の索引テーブル情報を抜き出し、両索引テーブル情報を比較することにより回路の故障を検出することを特徴とするRAID用パリティデータ生成回路。
- 前記索引テーブル情報として、乗算を行うデータ用の索引テーブル情報と、該データに付随するチェックコード用の索引テーブル情報との2種類を生成することを特徴とする請求項11記載のRAID用パリティデータ生成回路。
- 前記索引テーブル情報のビット単位のXOR論理を演算し、ゼロの値以外であることを検出することにより回路の故障を検出することを特徴とする請求項11または請求項12記載のRAID用パリティデータ生成回路。
- ガロア体の乗算を行うデータを複数に分解し、前記縦方向の索引テーブル情報を使って変換を行う分解データと、前記横方向の索引テーブル情報を使って変換を行う分解データとに分けて処理を行うことを特徴とする請求項11ないし請求項13のいずれかに記載のRAID用パリティデータ生成回路。
- ガロア体の乗算を行うデータに付随するチェックコードを複数に分解し、前記縦方向の索引テーブル情報を使って変換を行う分解チェックコードと、前記横方向の索引テーブル情報を使って変換を行う分解チェックコードとに分けて処理を行うことを特徴とする請求項12ないし請求項14のいずれかに記載のRAID用パリティデータ生成回路。
- 分解データを横方向の索引テーブル情報を使って変換を行う場合には該分解データに対する分解チェックコードを縦方向の索引テーブル情報を使って変換を行い、分解データを縦方向の索引テーブル情報を使って変換を行う場合には該分解データに対する分解チェックコードを横方向の索引テーブル情報を使って変換を行うことにより、対になっている分解データと分解チェックコードとをそれぞれが異なる索引テーブル情報を使って変換することを特徴とする請求項15記載のRAID用パリティデータ生成回路。
- 前記ガロア体乗算回路が、ガロア体乗算表と、該ガロア体乗算表を乗算係数を用いて縦方向から索引して縦方向の索引テーブル情報を生成する縦索引テーブル作成回路と、該ガロア体乗算表を乗算係数を用いて横方向から索引して横方向の索引テーブル情報を生成する横索引テーブル作成回路と、生成された索引テーブル情報が正しいものであるかどうかをチェックするテーブルチェック回路と、生成された索引テーブル情報からデータを上位データ部および下位データ部に分けてRAID用のデータに変換する上位データ変換回路および下位データ変換回路と、生成された索引テーブル情報からデータに対するパリティを上位パリティ部および下位パリティ部に分けてRAID用のデータに対するパリティに変換する上位パリティ反転回路および下位パリティ反転回路とを有することを特徴とする請求項11ないし請求項16のいずれかに記載のRAID用パリティデータ生成回路。
- 前記ガロア体乗算回路が、ガロア体乗算表と、該ガロア体乗算表を乗算係数を用いて縦方向から索引して縦方向の索引テーブル情報を生成する縦索引テーブル作成回路と、該ガロア体乗算表を乗算係数を用いて横方向から索引して横方向の索引テーブル情報を生成する横索引テーブル作成回路と、生成された索引テーブル情報が正しいものであるかどうかをチェックするテーブルチェック回路と、生成された索引テーブル情報からデータを偶数データ位置および奇数データ位置に分けてRAID用のデータに変換する偶数データ変換回路および奇数データ変換回路と、生成された索引テーブル情報からデータに対するパリティを偶数パリティ位置および奇数パリティ位置に分けてRAID用のデータに対するパリティに変換する偶数パリティ反転回路および奇数パリティ反転回路とを有することを特徴とする請求項11ないし請求項16のいずれかに記載のRAID用パリティデータ生成回路。
- 前記ガロア体乗算回路が、ガロア体乗算表と、該ガロア体乗算表を乗算係数を用いて縦方向から索引して縦方向の索引テーブル情報を生成する縦索引テーブル作成回路と、該ガロア体乗算表を乗算係数を用いて横方向から索引して横方向の索引テーブル情報を生成する横索引テーブル作成回路と、生成された索引テーブル情報が正しいものであるかどうかをチェックするテーブルチェック回路と、生成された索引テーブル情報からデータを上位データ部および下位データ部に分けてRAID用のデータに変換する上位データ変換回路および下位データ変換回路と、データに対するECCをRAID用のデータに対するECCに変換するECC変換回路とを有することを特徴とする請求項11ないし請求項16のいずれかに記載のRAID用パリティデータ生成回路。
- 前記縦方向の索引テーブル情報がデータ用縦変換テーブルであり、前記横方向の索引テーブル情報がデータ用横変換テーブルであることを特徴とする請求項11記載のRAID用パリティデータ生成回路。
- 前記縦方向の索引テーブル情報がデータ用縦変換テーブルおよびチェックコード用縦反転テーブルであり、前記横方向の索引テーブル情報がデータ用横変換テーブルおよびチェックコード用横反転テーブルであることを特徴とする請求項12ないし請求項18のいずれかに記載のRAID用パリティデータ生成回路。
- 前記チェックコードが、前記データに対するパリティであることを特徴とする請求項12ないし請求項16のいずれかに記載のRAID用パリティデータ生成回路。
- 前記チェックコードが、前記データに対するECCであることを特徴とする請求項12ないし請求項16のいずれかに記載のRAID用パリティデータ生成回路。
- データ用変換表およびパリティ用変換表を有するガロア体乗算表と、
前記ガロア体乗算表を乗算係数を用いて縦方向から索引してパリティ用縦反転テーブルおよびデータ用縦変換テーブルを生成する縦索引テーブル作成回路と、
前記ガロア体乗算表を乗算係数を用いて横方向から索引してデータ用横変換テーブルおよびパリティ用横反転テーブルを生成する横索引テーブル作成回路と、
前記縦索引テーブル作成回路で生成されたデータ用縦変換テーブルをデータの上位データ部の各分解データで選択してガロア体の乗算結果を得る上位データ変換回路と、
前記横索引テーブル作成回路で生成されたデータ用横変換テーブルをデータの下位データ部の各分解データで選択してガロア体の乗算結果を得る下位データ変換回路と、
パリティの上位パリティ部の各分解パリティと、前記横索引テーブル作成回路で生成されたパリティ用横反転テーブルをデータの上位データ部の各分解データで選択したガロア体の乗算結果とをXOR論理した上位パリティ部の反転結果を得る上位パリティ反転回路と、
パリティの下位パリティ部の各分解パリティと、前記縦索引テーブル作成回路で生成されたパリティ用縦反転テーブルをデータの上位データ部の各分解データで選択したガロア体の乗算結果とをXOR論理した下位パリティの反転結果を得る下位パリティ反転回路と、
前記縦索引テーブル作成回路で生成されたデータ用縦変換テーブルと前記横索引テーブル作成回路で生成されたデータ用横変換テーブルとを比較してチェックするデータ変換用テーブルチェック回路と、
前記縦索引テーブル作成回路で生成されたパリティ用縦反転テーブルと前記横索引テーブル作成回路で生成されたパリティ用横反転テーブルとを比較してチェックするパリティ反転用テーブルチェック回路と、
前記縦索引テーブル作成回路で生成されたデータ用縦変換テーブルまたは前記横索引テーブル作成回路で生成されたデータ用横変換テーブルの各ビット列のXOR論理がゼロであることをチェックする第1のテーブルゼロチェック回路と、
前記縦索引テーブル作成回路で生成されたパリティ用縦反転テーブルまたは前記横索引テーブル作成回路で生成されたパリティ用横反転テーブルのビット列のXOR論理がゼロであることをチェックする第2のテーブルゼロチェック回路と、
前記上位データ変換回路および前記下位データ変換回路で生成されたデータおよび前記上位パリティ反転回路および前記下位パリティ反転回路で生成されたパリティを用いてデータのパリティをチェックするパリティチェック回路と、
前記上位データ変換回路および前記下位データ変換回路で生成されたデータおよび前記上位パリティ反転回路および前記下位パリティ反転回路で生成されたパリティに対してXOR論理演算を行うXOR回路と、
前記XOR回路での演算結果をRAID用パリティデータとして蓄積するバッファと
を有することを特徴とするRAID用パリティデータ生成回路。 - データ用変換表およびパリティ用変換表を有するガロア体乗算表と、
前記ガロア体乗算表を乗算係数を用いて縦方向から索引してパリティ用縦反転テーブルおよびデータ用縦変換テーブルを生成する縦索引テーブル作成回路と、
前記ガロア体乗算表を乗算係数を用いて横方向から索引してデータ用横変換テーブルおよびパリティ用横反転テーブルを生成する横索引テーブル作成回路と、
前記縦索引テーブル作成回路で生成されたデータ用縦変換テーブルをデータの偶数データ位置の各分解データで選択してガロア体の乗算結果を得る偶数データ変換回路と、
前記横索引テーブル作成回路で生成されたデータ用横変換テーブルをデータの奇数データ位置の各分解データで選択してガロア体の乗算結果を得る奇数データ変換回路と、
パリティの上位パリティ部の各分解パリティと、前記横索引テーブル作成回路で生成されたパリティ用横反転テーブルをデータの偶数データ位置の各分解データで選択したガロア体の乗算結果とをXOR論理した偶数パリティの反転結果を得る偶数パリティ反転回路と、
パリティの下位パリティ部の各分解パリティと、前記縦索引テーブル作成回路で生成されたパリティ用縦反転テーブルをデータの奇数データ位置の各分解データで選択したガロア体の乗算結果とをXOR論理した奇数パリティの反転結果を得る奇数パリティ反転回路と、
前記縦索引テーブル作成回路で生成されたデータ用縦変換テーブルと前記横索引テーブル作成回路で生成されたデータ用横変換テーブルとを比較してチェックするデータ変換用テーブルチェック回路と、
前記縦索引テーブル作成回路で生成されたパリティ用縦反転テーブルと前記横索引テーブル作成回路で生成されたパリティ用横反転テーブルとを比較してチェックするパリティ反転用テーブルチェック回路と、
前記縦索引テーブル作成回路で生成されたデータ用縦変換テーブルまたは前記横索引テーブル作成回路で生成されたデータ用横変換テーブルの各ビット列のXOR論理がゼロであることをチェックする第1のテーブルゼロチェック回路と、
前記縦索引テーブル作成回路で生成されたパリティ用縦反転テーブルまたは前記横索引テーブル作成回路で生成されたパリティ用横反転テーブルのビット列のXOR論理がゼロであることをチェックする第2のテーブルゼロチェック回路と、
前記上位データ変換回路および前記下位データ変換回路で生成されたデータおよび前記上位パリティ反転回路および前記下位パリティ反転回路で生成されたパリティを用いてデータのパリティをチェックするパリティチェック回路と、
前記上位データ変換回路および前記下位データ変換回路で生成されたデータおよび前記上位パリティ反転回路および前記下位パリティ反転回路で生成されたパリティに対してXOR論理演算を行うXOR回路と、
前記XOR回路での演算結果をRAID用パリティデータとして蓄積するバッファと
を有することを特徴とするRAID用パリティデータ生成回路。 - データ用変換表およびパリティ用変換表を有するガロア体乗算表と、
データの各分解データに対応するECC変換表と、
前記ガロア体乗算表を乗算係数を用いて縦方向から索引してパリティ用縦反転テーブルおよびデータ用縦変換テーブルを生成する縦索引テーブル作成回路と、
前記ガロア体乗算表を乗算係数を用いて横方向から索引してデータ用横変換テーブルおよびパリティ用横反転テーブルを生成する横索引テーブル作成回路と、
前記ECC変換表を乗算係数を用いて索引してECC用変換テーブルを生成するECC索引テーブル作成回路と、
前記縦索引テーブル作成回路で生成されたデータ用縦変換テーブルをデータの上位データ部の各分解データで選択してガロア体の乗算結果を得る上位データ変換回路と、
前記横索引テーブル作成回路で生成されたデータ用横変換テーブルをデータの下位データ部の各分解データで選択してガロア体の乗算結果を得る下位データ変換回路と、
前記ECC索引テーブル作成回路で生成されたECC変換テーブルをデータの各分解データで選択してデータに対するECCをRAID用のデータに対するECCに変換するECC変換回路と、
前記縦索引テーブル作成回路で生成されたデータ用縦変換テーブルと前記横索引テーブル作成回路で生成されたデータ用横変換テーブルとを比較してチェックするデータ変換用テーブルチェック回路と、
前記縦索引テーブル作成回路で生成されたパリティ用縦反転テーブルと前記横索引テーブル作成回路で生成されたパリティ用横反転テーブルとを比較してチェックするパリティ反転用テーブルチェック回路と、
前記縦索引テーブル作成回路で生成されたデータ用縦変換テーブルまたは前記横索引テーブル作成回路で生成されたデータ用横変換テーブルの各ビット列のXOR論理がゼロであることをチェックする第1のテーブルゼロチェック回路と、
前記縦索引テーブル作成回路で生成されたパリティ用縦反転テーブルまたは前記横索引テーブル作成回路で生成されたパリティ用横反転テーブルのビット列のXOR論理がゼロであることをチェックする第2のテーブルゼロチェック回路と、
前記上位データ変換回路および前記下位データ変換回路で生成されたデータならびに前記ECC変換回路で生成されたECCを用いてデータに対するECCをチェックするECCチェック回路と、
前記上位データ変換回路および前記下位データ変換回路で生成されたデータおよび前記ECC変換回路で生成されたECCに対してXOR論理演算を行うXOR回路と、
前記XOR回路での演算結果をRAID用パリティデータとして蓄積するバッファと
を有することを特徴とするRAID用パリティデータ生成回路。 - ガロア体乗算表と、該ガロア体乗算表を乗算係数を用いて縦方向から索引して縦方向の索引テーブル情報を生成する縦索引テーブル作成回路と、該ガロア体乗算表を乗算係数を用いて横方向から索引して横方向の索引テーブル情報を生成する横索引テーブル作成回路と、生成された索引テーブル情報からデータを上位データ部および下位データ部に分けてRAID用のデータに変換する上位データ変換回路および下位データ変換回路と、生成された索引テーブル情報からデータに対するパリティを上位パリティ部および下位パリティ部に分けてRAID用のデータに対するパリティに変換する上位パリティ反転回路および下位パリティ反転回路とを有することを特徴とするガロア体乗算回路。
- ガロア体乗算表と、該ガロア体乗算表を乗算係数を用いて縦方向から索引して縦方向の索引テーブル情報を生成する縦索引テーブル作成回路と、該ガロア体乗算表を乗算係数を用いて横方向から索引して横方向の索引テーブル情報を生成する横索引テーブル作成回路と、生成された索引テーブル情報からデータを偶数データ位置および奇数データ位置に分けてRAID用のデータに変換する偶数データ変換回路および奇数データ変換回路と、生成された索引テーブル情報からデータに対するパリティを偶数パリティ位置および奇数パリティ位置に分けてRAID用のデータに対するパリティに変換する偶数パリティ反転回路および奇数パリティ反転回路とを有することを特徴とするガロア体乗算回路。
- ガロア体乗算表と、該ガロア体乗算表を乗算係数を用いて縦方向から索引して縦方向の索引テーブル情報を生成する縦索引テーブル作成回路と、該ガロア体乗算表を乗算係数を用いて横方向から索引して横方向の索引テーブル情報を生成する横索引テーブル作成回路と、生成された索引テーブル情報からデータを上位データ部および下位データ部に分けてRAID用のデータに変換する上位データ変換回路および下位データ変換回路と、データに対するECCをRAID用のデータに対するECCに変換するECC変換回路とを有することを特徴とするガロア体乗算回路。
- データ用変換表およびパリティ用変換表を有するガロア体乗算表と、
前記ガロア体乗算表を乗算係数を用いて縦方向から索引してパリティ用縦反転テーブルおよびデータ用縦変換テーブルを生成する縦索引テーブル作成回路と、
前記ガロア体乗算表を乗算係数を用いて横方向から索引してデータ用横変換テーブルおよびパリティ用横反転テーブルを生成する横索引テーブル作成回路と、
前記縦索引テーブル作成回路で生成されたデータ用縦変換テーブルをデータの上位データ部の各分解データで選択してガロア体の乗算結果を得る上位データ変換回路と、
前記横索引テーブル作成回路で生成されたデータ用横変換テーブルをデータの下位データ部の各分解データで選択してガロア体の乗算結果を得る下位データ変換回路と、
パリティの上位パリティ部の各分解パリティと、前記横索引テーブル作成回路で生成されたパリティ用横反転テーブルをデータの上位データ部の各分解データで選択したガロア体の乗算結果とをXOR論理した上位パリティ部の反転結果を得る上位パリティ反転回路と、
パリティの下位パリティ部の各分解パリティと、前記縦索引テーブル作成回路で生成されたパリティ用縦反転テーブルをデータの上位データ部の各分解データで選択したガロア体の乗算結果とをXOR論理した下位パリティの反転結果を得る下位パリティ反転回路と
を有することを特徴とするガロア体乗算回路。 - データ用変換表およびパリティ用変換表を有するガロア体乗算表と、
前記ガロア体乗算表を乗算係数を用いて縦方向から索引してパリティ用縦反転テーブルおよびデータ用縦変換テーブルを生成する縦索引テーブル作成回路と、
前記ガロア体乗算表を乗算係数を用いて横方向から索引してデータ用横変換テーブルおよびパリティ用横反転テーブルを生成する横索引テーブル作成回路と、
前記縦索引テーブル作成回路で生成されたデータ用縦変換テーブルをデータの偶数データ位置の各分解データで選択してガロア体の乗算結果を得る偶数データ変換回路と、
前記横索引テーブル作成回路で生成されたデータ用横変換テーブルをデータの奇数データ位置の各分解データで選択してガロア体の乗算結果を得る奇数データ変換回路と、
パリティの上位パリティ部の各分解パリティと、前記横索引テーブル作成回路で生成されたパリティ用横反転テーブルをデータの偶数データ位置の各分解データで選択したガロア体の乗算結果とをXOR論理した偶数パリティの反転結果を得る偶数パリティ反転回路と、
パリティの下位パリティ部の各分解パリティと、前記縦索引テーブル作成回路で生成されたパリティ用縦反転テーブルをデータの奇数データ位置の各分解データで選択したガロア体の乗算結果とをXOR論理し奇数パリティの反転結果を得る奇数パリティ反転回路と
を有することを特徴とするガロア体乗算回路。 - データ用変換表およびパリティ用変換表を有するガロア体乗算表と、
データの各分解データに対応するECC変換表と、
前記ガロア体乗算表を乗算係数を用いて縦方向から索引してパリティ用縦反転テーブルおよびデータ用縦変換テーブルを生成する縦索引テーブル作成回路と、
前記ガロア体乗算表を乗算係数を用いて横方向から索引してデータ用横変換テーブルおよびパリティ用横反転テーブルを生成する横索引テーブル作成回路と、
前記ECC変換表を乗算係数を用いて索引してECC用変換テーブルを生成するECC索引テーブル作成回路と、
前記縦索引テーブル作成回路で生成されたデータ用縦変換テーブルをデータの上位データ部の各分解データで選択してガロア体の乗算結果を得る上位データ変換回路と、
前記横索引テーブル作成回路で生成されたデータ用横変換テーブルをデータの下位データ部の各分解データで選択してガロア体の乗算結果を得る下位データ変換回路と、
前記ECC索引テーブル作成回路で生成されたECC変換テーブルをデータの各分解データで選択してデータに対するECCをRAID用のデータに対するECCに変換するECC変換回路と
を有することを特徴とするガロア体乗算回路。 - GF(24)のガロア体の乗算により作成された縦横が対称となるガロア体乗算表を用いてデータの変換を行い、前記ガロア体乗算表から横方向の索引テーブル情報および縦方向の索引テーブル情報を抜き出し、両索引テーブル情報を比較することにより回路の故障を検出することを特徴とするRAID用パリティデータ生成方法。
- 前記索引テーブル情報として、乗算を行うデータ用の索引テーブル情報と、該データに付随するチェックコード用の索引テーブル情報との2種類を生成することを特徴とする請求項33記載のRAID用パリティデータ生成方法。
- 前記索引テーブル情報のビット単位のXOR論理を演算し、ゼロの値を検出することを特徴とする請求項33または請求項34記載のRAID用パリティデータ生成方法。
- ガロア体の乗算を行うデータを複数に分解し、前記縦方向の索引テーブル情報を使って変換を行う分解データと、前記横方向の索引テーブル情報を使って変換を行う分解データとに分けて処理を行うことを特徴とする請求項33ないし請求項35のいずれかに記載のRAID用パリティデータ生成方法。
- ガロア体の乗算を行うデータに付随するチェックコードを複数に分解し、前記縦方向の索引テーブル情報を使って変換を行う分解チェックコードと、前記横方向の索引テーブル情報を使って変換を行う分解チェックコードとに分けて処理を行うことを特徴とする請求項34ないし請求項36のいずれかに記載のRAID用パリティデータ生成方法。
- 分解データを横方向の索引テーブル情報を使って変換を行う場合には該分解データに対する分解チェックコードを縦方向の索引テーブル情報を使って変換を行い、分解データを縦方向の索引テーブル情報を使って変換を行う場合には該分解データに対する分解チェックコードを横方向の索引テーブル情報を使って変換を行うことにより、対になっている分解データと分解チェックコードとをそれぞれが異なる索引テーブル情報を使って変換することを特徴とする請求項37記載のRAID用パリティデータ生成方法。
- ガロア体乗算表を乗算係数を用いて縦方向から索引して縦方向の索引テーブル情報を生成する工程と、前記ガロア体乗算表を乗算係数を用いて横方向から索引して横方向の索引テーブル情報を生成する工程と、生成された索引テーブル情報が正しいものであるかどうかをチェックする工程と、生成された索引テーブル情報からデータを上位データ部および下位データ部に分けてRAID用のデータに変換する工程と、生成された索引テーブル情報からデータに対するパリティを上位パリティ部および下位パリティ部に分けてRAID用のデータに対するパリティに変換する工程とを含むことを特徴とする請求項33ないし請求項38のいずれかに記載のRAID用パリティデータ生成方法。
- ガロア体乗算表を乗算係数を用いて縦方向から索引して縦方向の索引テーブル情報を生成する工程と、前記ガロア体乗算表を乗算係数を用いて横方向から索引して横方向の索引テーブル情報を生成する工程と、生成された索引テーブル情報が正しいものであるかどうかをチェックする工程と、生成された索引テーブル情報からデータを偶数データ位置および奇数データ位置に分けてRAID用のデータに変換する工程と、生成された索引テーブル情報からデータに対するパリティを偶数パリティ位置および奇数パリティ位置に分けてRAID用のデータに対するパリティに変換する工程とを含むことを特徴とする請求項33ないし請求項38のいずれかに記載のRAID用パリティデータ生成方法。
- ガロア体乗算表を乗算係数を用いて縦方向から索引して縦方向の索引テーブル情報を生成する工程と、前記ガロア体乗算表を乗算係数を用いて横方向から索引して横方向の索引テーブル情報を生成する工程と、生成された索引テーブル情報が正しいものであるかどうかをチェックする工程と、生成された索引テーブル情報からデータをRAID用のデータに変換する工程と、データに対するECCをRAID用のデータに対するECCに変換する工程とを含むことを特徴とする請求項33ないし請求項38のいずれかに記載のRAID用パリティデータ生成方法。
- 前記縦方向の索引テーブル情報がデータ用縦変換テーブルであり、前記横方向の索引テーブル情報がデータ用横変換テーブルであることを特徴とする請求項33記載のRAID用パリティデータ生成方法。
- 前記縦方向の索引テーブル情報がデータ用縦変換テーブルおよびチェックコード用縦反転テーブルであり、前記横方向の索引テーブル情報がデータ用横変換テーブルおよびチェックコード用横反転テーブルであることを特徴とする請求項34ないし請求項41のいずれかに記載のRAID用パリティデータ生成方法。
- 前記チェックコードが、前記データに対するパリティであることを特徴とする請求項33ないし請求項38のいずれかに記載のRAID用パリティデータ生成方法。
- 前記チェックコードが、前記データに対するECCであることを特徴とする請求項33ないし請求項38のいずれかに記載のRAID用パリティデータ生成方法。
Priority Applications (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2003386997A JP4288486B2 (ja) | 2003-11-17 | 2003-11-17 | ディスクアレイ装置,raid用パリティデータ生成回路およびガロア体乗算回路 |
US10/989,439 US7437658B2 (en) | 2003-11-17 | 2004-11-17 | Disk array device, parity data generating circuit for RAID and Galois field multiplying circuit |
US12/190,306 US7681111B2 (en) | 2003-11-17 | 2008-08-12 | Disk array device, parity data generating circuit for RAID and Galois field multiplying circuit |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2003386997A JP4288486B2 (ja) | 2003-11-17 | 2003-11-17 | ディスクアレイ装置,raid用パリティデータ生成回路およびガロア体乗算回路 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2005149224A true JP2005149224A (ja) | 2005-06-09 |
JP4288486B2 JP4288486B2 (ja) | 2009-07-01 |
Family
ID=34567433
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2003386997A Expired - Fee Related JP4288486B2 (ja) | 2003-11-17 | 2003-11-17 | ディスクアレイ装置,raid用パリティデータ生成回路およびガロア体乗算回路 |
Country Status (2)
Country | Link |
---|---|
US (2) | US7437658B2 (ja) |
JP (1) | JP4288486B2 (ja) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2008186400A (ja) * | 2007-01-31 | 2008-08-14 | Fujitsu Ltd | Raid装置及びガロア体を用いたデータ復元装置 |
JP2012509523A (ja) * | 2008-11-19 | 2012-04-19 | エルエスアイ コーポレーション | Raid情報のメモリ効率検査 |
Families Citing this family (20)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7392428B2 (en) * | 2004-11-19 | 2008-06-24 | International Business Machines Corporation | Method and system for recovering from abnormal interruption of a parity update operation in a disk array system |
US20060123312A1 (en) * | 2004-11-19 | 2006-06-08 | International Business Machines Corporation | Method and system for increasing parallelism of disk accesses when restoring data in a disk array system |
US7290199B2 (en) * | 2004-11-19 | 2007-10-30 | International Business Machines Corporation | Method and system for improved buffer utilization for disk array parity updates |
US20060123271A1 (en) * | 2004-11-19 | 2006-06-08 | International Business Machines Corporation | RAID environment incorporating hardware-based finite field multiplier for on-the-fly XOR |
US7392458B2 (en) * | 2004-11-19 | 2008-06-24 | International Business Machines Corporation | Method and system for enhanced error identification with disk array parity checking |
US7343546B2 (en) * | 2004-12-23 | 2008-03-11 | Intel Corporation | Method and system for syndrome generation and data recovery |
US7689890B2 (en) * | 2005-04-21 | 2010-03-30 | Dell Products L.P. | System and method for handling write commands to prevent corrupted parity information in a storage array |
TWI285313B (en) * | 2005-06-22 | 2007-08-11 | Accusys Inc | XOR circuit, RAID device capable of recover a plurality of failures and method thereof |
TWI309364B (en) * | 2005-09-02 | 2009-05-01 | Infortrend Technology Inc | Method and controller for processing data multiplication in raid system |
US7607068B2 (en) | 2006-08-31 | 2009-10-20 | Intel Corporation | Apparatus and method for generating a Galois-field syndrome |
US7738657B2 (en) | 2006-08-31 | 2010-06-15 | Intel Corporation | System and method for multi-precision division |
US7797612B2 (en) * | 2006-12-29 | 2010-09-14 | Intel Corporation | Storage accelerator |
JP4358869B2 (ja) * | 2007-02-21 | 2009-11-04 | 富士通株式会社 | ストレージ制御装置、ストレージ制御方法 |
US8359514B2 (en) * | 2008-08-15 | 2013-01-22 | Micron Technology, Inc. | Data and error correction code mixing device and method |
US8150031B2 (en) * | 2008-12-19 | 2012-04-03 | Intel Corporation | Method and apparatus to perform redundant array of independent disks (RAID) operations |
JP5278115B2 (ja) * | 2009-03-31 | 2013-09-04 | 日本電気株式会社 | 冗長符号生成方法及び装置、データ復元方法及び装置、並びにraid記憶装置 |
US8347169B1 (en) * | 2010-03-01 | 2013-01-01 | Applied Micro Circuits Corporation | System and method for encoding using common partial parity products |
CN102521067B (zh) * | 2011-12-01 | 2013-07-24 | 华中科技大学 | 优化部分条带写性能的raid-6编码和重构方法 |
WO2014170984A1 (ja) | 2013-04-18 | 2014-10-23 | 株式会社日立製作所 | ストレージシステム及び記憶制御方法 |
CN104461373B (zh) * | 2013-09-16 | 2018-01-09 | 杭州宏杉科技股份有限公司 | 一种raid数据处理方法及装置 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH09218877A (ja) * | 1996-02-13 | 1997-08-19 | Fujitsu Ltd | データ圧縮装置及び復元装置の辞書検索登録方法 |
JP2000259359A (ja) * | 1999-03-04 | 2000-09-22 | Toshiba Corp | Raid装置および記録媒体 |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5499253A (en) * | 1994-01-05 | 1996-03-12 | Digital Equipment Corporation | System and method for calculating RAID 6 check codes |
US6148430A (en) * | 1998-05-15 | 2000-11-14 | Quantum Corporation | Encoding apparatus for RAID-6 system and tape drives |
JP2000172520A (ja) * | 1998-12-04 | 2000-06-23 | Fujitsu Ltd | ガロア体演算プロセッサ |
US7003715B1 (en) * | 2001-03-30 | 2006-02-21 | Cisco Technology, Inc. | Galois field multiply accumulator |
US7133889B2 (en) * | 2001-09-20 | 2006-11-07 | Stmicroelectronics, Inc. | Flexible galois field multiplier |
US6823425B2 (en) * | 2001-10-23 | 2004-11-23 | Ivivity, Inc. | System and method for implementing advanced RAID using a set of unique matrices as coefficients |
-
2003
- 2003-11-17 JP JP2003386997A patent/JP4288486B2/ja not_active Expired - Fee Related
-
2004
- 2004-11-17 US US10/989,439 patent/US7437658B2/en active Active
-
2008
- 2008-08-12 US US12/190,306 patent/US7681111B2/en active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH09218877A (ja) * | 1996-02-13 | 1997-08-19 | Fujitsu Ltd | データ圧縮装置及び復元装置の辞書検索登録方法 |
JP2000259359A (ja) * | 1999-03-04 | 2000-09-22 | Toshiba Corp | Raid装置および記録媒体 |
Non-Patent Citations (1)
Title |
---|
JAMES S. PLANK: "A Tutorial onReed-Solomon Coding for Fault-Tolerance in RAID-like Systems", SOFTWARE-PRACTICE AND EXPERIENCE, vol. VOL.27(9), JPN7008007714, 30 September 1999 (1999-09-30), US, pages 1001 - 1007, ISSN: 0001162326 * |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2008186400A (ja) * | 2007-01-31 | 2008-08-14 | Fujitsu Ltd | Raid装置及びガロア体を用いたデータ復元装置 |
JP2012509523A (ja) * | 2008-11-19 | 2012-04-19 | エルエスアイ コーポレーション | Raid情報のメモリ効率検査 |
JP2014041664A (ja) * | 2008-11-19 | 2014-03-06 | Lsi Corp | Raid情報のメモリ効率検査 |
TWI498725B (zh) * | 2008-11-19 | 2015-09-01 | Lsi Corp | 檢查獨立磁碟冗餘陣列(raid)資訊之方法及系統 |
Also Published As
Publication number | Publication date |
---|---|
US20050108613A1 (en) | 2005-05-19 |
US7437658B2 (en) | 2008-10-14 |
US7681111B2 (en) | 2010-03-16 |
JP4288486B2 (ja) | 2009-07-01 |
US20090024879A1 (en) | 2009-01-22 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP4288486B2 (ja) | ディスクアレイ装置,raid用パリティデータ生成回路およびガロア体乗算回路 | |
CN104160452B (zh) | 用于存储数据和对擦除进行纠正的方法、系统和装置 | |
US8522122B2 (en) | Correcting memory device and memory channel failures in the presence of known memory device failures | |
US6041430A (en) | Error detection and correction code for data and check code fields | |
JP4036338B2 (ja) | 誤りバイト数を制限したバイト内複数スポッティバイト誤り訂正・検出方法及び装置 | |
US7797609B2 (en) | Apparatus and method for merging data blocks with error correction code protection | |
US7398449B1 (en) | Encoding 64-bit data nibble error correct and cyclic-redundancy code (CRC) address error detect for use on a 76-bit memory module | |
Fu et al. | On hamming product codes with type-II hybrid ARQ for on-chip interconnects | |
EP1828899B1 (en) | Method and system for syndrome generation and data recovery | |
US7350126B2 (en) | Method for constructing erasure correcting codes whose implementation requires only exclusive ORs | |
US8484506B2 (en) | Redundant array of independent disks level 5 (RAID 5) with a mirroring functionality | |
US20050188292A1 (en) | Method and apparatus for encoding special uncorrectable errors in an error correction code | |
US5856987A (en) | Encoder and decoder for an SEC-DED-S4ED rotational code | |
JP4836608B2 (ja) | 半導体記憶装置 | |
JPS63115239A (ja) | エラ−検査訂正回路 | |
EP0793174B1 (en) | Error detection and correction method and apparatus for computer memory | |
US20050149834A1 (en) | (18, 9) Error correction code for double error correction and triple error detection | |
JP2010122828A (ja) | 誤り判定回路及び共有メモリシステム | |
JPS6349245B2 (ja) | ||
JP5353655B2 (ja) | エラー検出・訂正符号生成回路及びその制御方法 | |
Wang et al. | Reliable and secure memories based on algebraic manipulation correction codes | |
US20020188909A1 (en) | Symbol level error correction codes which protect against memory chip and bus line failures | |
JP2732862B2 (ja) | データ伝送試験装置 | |
JP2023552994A (ja) | プログラム可能な誤り訂正コードの符号化及び復号論理 | |
JP2006323434A (ja) | データ処理装置及びそのメモリ訂正方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20080116 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20080317 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20081022 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20081222 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20090304 |
|
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20090317 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 4288486 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120410 Year of fee payment: 3 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120410 Year of fee payment: 3 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130410 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130410 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20140410 Year of fee payment: 5 |
|
LAPS | Cancellation because of no payment of annual fees |