【事件の表示】
　特願２００６−５４１６９９「ディスクアレイ内の２つのディスク故障に対する保護を提供する一様で対称な二重故障訂正技術」拒絶査定不服審判事件〔平成１７年　６月　９日国際公開、ＷＯ２００５／０５２８５５、平成１９年　８月３０日国内公表、特表２００７−５２４９３０〕について、次のとおり審決する。
【結　論】
　本件審判の請求は、成り立たない。
【理　由】
第１　手続の経緯
　本願は、２００４年１１月２４日（パリ条約による優先権主張２００３年１１月２４日、米国）を国際出願日とする出願であって、平成１８年７月２４日付けで国際出願翻訳文が提出され、平成２０年６月３日付けで拒絶理由通知がなされ、平成２１年５月７日付けで拒絶査定がなされたが、これに対し、平成２１年９月１４日に拒絶査定不服の審判が請求されるとともに、同時に、手続補正がなされたものである。
　
第２　平成２１年９月１４日付けの手続補正についての補正却下の決定
［補正却下の決定の結論］
　平成２１年９月１４日付けの手続補正（以下、「本件補正」という。）を却下する。
［理由］
１．本件補正前及び本件補正後の本願発明
　本件補正は、特許請求の範囲についてするもので、請求項１については、本件補正前に「前記ストレージデバイスが、冗長情報を記憶するために選択された２つのストレージデバイスを含み、残りのストレージデバイスがデータを記憶するように構成され」とあったところを「前記ストレージデバイスのうちの任意の２つのストレージデバイスが、冗長情報を記憶するために選択され、選択されるストレージデバイスが、ストライプごとに自由に異なり、各ストライプの残りのストレージデバイスがデータを記憶するように構成され」と補正するものであるから、本件補正は、少なくとも請求項１については、審判請求書「【請求の理由】（３）本願発明が特許されるべき理由」「
補正について
　
　そこで、本件補正後における特許請求の範囲に記載されている事項により特定される発明が、特許出願の際独立して特許を受けることができるものであるか（特許法第１７条の２第５項において準用する同法第１２６条第５項に規定する要件を満たすか）否かを、請求項１に係る発明（以下、「本願補正発明」という。）について以下検討する。
　本願補正発明は、次のとおりのものである。
　
「【請求項１】
　ストレージシステム内の２以下のストレージデバイスの二重故障訂正を提供するように構成されたシステムであって、
　　多数のストレージデバイスを有するアレイであって、前記ストレージデバイスの数がｐであり、ｐが３以上の素数であり、前記ストレージデバイスのうちの任意の２つのストレージデバイスが、冗長情報を記憶するために選択され、選択されるストレージデバイスが、ストライプごとに自由に異なり、各ストライプの残りのストレージデバイスがデータを記憶するように構成される、多数のストレージデバイスを有するアレイと、
　　前記ストレージデバイスのストレージモジュールであって、前記アレイの行パリティセット（行）及び対角パリティセット（対角）に沿って合計または結合計算を含む冗長ストレージアルゴリズムを使用して、冗長情報を構成し、選択されたストレージデバイス上に記憶するように構成された、前記ストレージデバイスのストレージモジュールと
　を含み、前記２以下のストレージデバイス故障の構成に使用される前記冗長ストレージアルゴリズムは、前記冗長情報又はデータを構成又は再構成するときに、どのストレージデバイスが故障しても、また、ストレージデバイスの役割が何であっても無関係に同じである、システム。」
　
２．引用例
　これに対し、原査定の拒絶の理由に引用された、本願の優先日前に頒布された刊行物である、特開平４−３１０１３７号公報（以下、「引用例」という。）には、図面とともに、次の技術的事項が記載されている。
（イ）「ＤＡＳＤ配列内における最大２個の使用不能ＤＡＳＤのデータ内容のエンコーデイング及び再作成方法及びシステム」（第１頁【発明の名称】欄）、
　
（ロ）「【請求項５】前記データ配列は２次元分布に沿って生成され、該分布は複数ＤＡＳＤ或いは第１次元がＭ個のＤＡＳＤにより形成され、第２次元が各Ｍ個のＤＡＳＤの少なくとも１トラック上の（Ｍ−１）ビットの記録範囲から形成されることを特徴とする請求項３記載の方法。」（第１欄第４３〜４７行）、
　
（ハ）「【０００１】
【産業上の利用分野】本発明は故障独立型直接アクセス記憶装置（ＤＡＳＤ）の配列に関し、更に詳しくはこのＤＡＳＤ配列上に記憶されるデータの保守可用性に関する。」（第３欄第３０〜３４行）、
　
（ニ）「【０００５】同期してアクセスされるＮ個のＤＡＳＤの物理的な配列はＤＡＳＤ配列を構成する。これに関連して、配列のフォーマット及びその後のアクセスが行われ、行或いは列のどちらか一方を基本とする連続する位置へ値を挿入することにより記憶が進行する。オペレーションが列方向に実行されると、それは列メジャー順序“ｃｏｌｕｍｎ　ｍａｊｏｒ　ｏｒｄｅｒ”と称される。同様に、行方向に実行されると、行メジャー順序“ｒｏｗ　ｍａｊｏｒ　ｏｒｄｅｒ”と称される。」（第４欄第１２〜２０行）、
　
（ホ）「【００２０】パリティ・グループの２つの意味上述のＤｕｎｐｈｙの特許で使用されるように、“パリティ・グループ”とは少なくとも（Ｎ＋１）番目のＤＡＳＤを含む（ここにはＮ個のＤＡＳＤに渡るパリティが記憶される）Ｎ個のＤＡＳＤの論理関係を意味する。しかし、この用語はまたデータ・ブロックとパリティ或いは他の代数的にコード化された冗長ブロックとの論理関係も示す。Ｐａｔｔｅｒｓｏｎ　はＲＡＩＤタイプ５ＤＡＳＤ配列において後者の定義を使用している。」（第６欄第４４行〜第７欄第２行）、
　
（ヘ）「【００４２】
【実施例】図１を参照すると、並列パス１１、１３、１５及び１７上において知能的パリティ生成及びストライピング・バッファ（ＰＳＢ）７と結合される、第１及び第２のパリティ・グループにより構成される配列が示されている。ＣＰＵ１及びＣＰＵ２から成るプロセサ配列はデータ及び制御バス９に結合される。
【００４３】プロセサ１或いは３に由来する読み出し及び書き込みコマンドは、標準のアクセス・プロトコル及びメモリ５により共用されるバス９上におけるＰＳＢ７へのデータ転送により、ＤＡＳＤパリティ・グループへのテーブル指向アクセス・パスを形成する。論理ファイルの論理処理はＰＳＢ７により実行される。この点に関し、論理処理はストライピング（データのシリアル／パラレル変換）及びパリティ生成及びチェックを含む。ＤＡＳＤへのパスからは直接にテーブル指向される。原則的には、読み出し或いは書き込み引数内で特定されるアドレスは、配列記憶アドレス・テーブルを介してＰＳＢ７により、ＰＳＢ７とパリティ・グループのＤＡＳＤ上のロケーションとの間の実際の物理的パスに変換される。
【００４４】書き込みコマンドを実行するために、ＰＳＢ７は最初にプロセサからのデータをバッファし、読み出し、そしてＤＡＳＤパリティ・グループからの（Ｍ−１）＊Ｍデータ配列をバッファする。このパリティ・グループ内にはブロックのストライプ或いはインタリーブ要素が書き込まれる。そして、旧データ、旧パリティ、及び新データを考慮しながら新たに指定される対角線及び行パリティを含む配列を繰り返し計算し、次に修正されたデータ配列をＤＡＳＤパリティ・グループ上に再書き込みする。
【００４５】読み出しオペレーションでは、ＰＳＢ７はプロセサからの読み出しコマンドに応答して、書き込みオペレーションの場合と逆のシーケンスを達成する。すなわち、読み出されるべきデータが抽出されなければならないデータ配列が、ＰＳＢ７においてバッファされ、適当な行及び対角線パリティがテストされ、アドレスされたデータがバス９を介して共用メモリ５に転送される。
【００４６】ＤＡＳＤ故障及びホット・スペアリングデータの読み出しアクセス中にＤＡＳＤ故障が発生した場合は、ＰＳＢ７は数多くの代替の中から１つを選択できる。これらには（１）読み出しコマンドの再試行、或いは（２）本発明による残りのＤＡＳＤからのデータの再作成及び置換の一方により、即座に障害を来たしたデータを再生成することが含まれる。
【００４７】読み出しコマンドの発生元となるプロセサ１或いは３に関し、データ読み出し動作の完了後においてのみ故障の発生を知らせることが１つの戦略である。
これはプロセサに対し、Ｐａｒｋ等の場合、同様に、スペアＤＡＳＤをプールから或いは各パリティ・グループに専用に確保されているＤＡＳＤから代用するかを制御させる。使用禁止及び再作成などのプロセサ・コマンドに応答して、ＰＳＢ７はこのスペアへのディレクトリ・パスを故障ＤＡＳＤのテーブル・ディレクトリ・パスに代用するテーブルを使用することにより、故障ＤＡＳＤを指定したスペアＤＡＳＤにより置換する。次に、故障ＤＡＳＤ上のデータが、指定されたスペアＤＡＳＤ上に再作成される。
【００４８】１つの実施例では、ＰＳＢ７はＤＡＳＤ可用性のビット・マップとＤＡＳＤのアドレス・マップを記憶する。また、可用性及びアドレスのマップは各アクセス・コマンドの処理期間中に参照される。このマップへの変更は使用禁止及び再作成コマンドを使用するプロセサに由来する。こうした実施例においては、永久アドレスがスペアＤＡＳＤに対して割り当てられる。故障を知らされた後、プロセサ１或いは３はＤＡＳＤのマップをアドレスできる点が重要である。一方、前述の可用性及びアドレスのマップは各アクセス・コマンドの処理期間中に参照される。このマップへの変更は使用禁止及び再作成コマンドを使用するプロセサに由来する。本実施例においては、スペアＤＡＳＤについて永久アドレスを割り当てている。
【００４９】故障を知らされた後、プロセサは以下を実行できる。
（１）無処理を選択する。
（２）スペアＤＡＳＤのアドレスを最大２個までの故障ＤＡＳＤのアドレスに代用させるコマンドを生成する。
（３）下記で説明される再作成方法により、パリティと残りのデータ用ＤＡＳＤとのモジューロ２加算により、割り当てられたスペア上に最大２つまでの故障ＤＡＳＤの内容を再作成する。
【００５０】ここで、スペア・フォーマットされたＤＡＳＤのオンライン上における他のＤＡＳＤに対するダイナミックな代用は“ホット・スペアリング”と称される。
【００５１】本発明のフロー図
図２を参照すると、本発明による各（Ｍ−１）＊Ｍビットのデータ配列におけるパリティ・エンコーディング・ステップのフローが示されている。基本的には、それぞれ正のスロープのデータ配列対角線及び交差する行より形成されるペアはパリティ・コード化される。これは単に対角線上のビットはモジューロ２でカウントされ、その結果が使用可能なパリティ位置に設定されることを意味する。この対角線のパリティ位置と交差する配列行のビットはモジューロ２でカウントされ、その結果は使用可能なパリティ位置に設定される。この処理はデータ配列がカバーされるまで対角線及び行メジャー順序で繰り返される。
【００５２】最大２つの使用不能なＤＡＳＤからのデータの回復或いは再作成に関する作用の相違は、消去を含むデータ配列が少なくともＭ−２以上のＤＡＳＤからアクセスされる後に生ずる。
【００５３】本発明によるエンコーディング例下記に示すエンコーディング及びデコーディング／再作成の例において、ＤＡＳＤ配列は５つの同期式ＤＡＳＤすなわちＣ１−Ｃ５により構成される。Ｃ１、Ｃ２及びＣ３はデータの記憶用に割り当てられ、Ｃ４及びＣ５は単純パリティを記憶するために確保される。また、この配列はビット・インタリーブされるものと仮定する。このことは３つのビットと２つのパリティ・ビット（Ｍ＝５）が同時にＣ１−Ｃ５から読み出され、また書き込まれることを意味する。従って、Ｍ＝５の場合、データ配列は４＊５次元を有することになる。
【００５４】Ｍが素数ａである（Ｍ−１）＊Ｍデータ配列は下記のようになる。
【００５５】
　　　Ｃ１　Ｃ２　Ｃ３　Ｃ４　Ｃ５
Ｓ１　１　　０　　１　　ｘ　　ｘ
Ｓ２　１　　１　　１　　ｘ　　ｘ
Ｓ３　１　　１　　０　　ｘ　　ｘ
Ｓ４　０　　１　　１　　ｘ　　ｘ
【００５６】別の行及び対角線によるダブル・パリティのエンコーディング
配列は円柱状に循環するものと仮定する。この場合、エンコーディングは行パリティ割当（ジグザグ状エンコーディング）により追従される繰り返し対角線パリティ割当を含む。下記のコーディング作用の読み出しにおいて、作用結果は次の連続する図によって示される。これらの図は正のスロープによる配列方向を取っている（左下から右上に向かう）。
【００５７】ダミー行Ｓ５がトロイダル（ジグザグ）横断線の概念化を容易にするために追加される。
【００５８】
　　　Ｃ１　Ｃ２　Ｃ３　Ｃ４　Ｃ５
Ｓ１　１　　０　　１　　ｘ　　ｘ
Ｓ２　１　　１　　１　　ｘ　　ｘ
Ｓ３　０　　１　　０　　ｘ　　ｘ
Ｓ４　０　　１　　１　　ｘ　　ｘ
Ｓ５　０　　０　　０　　０　　０
ステップ１：第１のパリティ・エンコード位置Ｓ１Ｃ４をインターセプトする第１の対角線Ｓ４Ｃ１に着目し、位置Ｓ１Ｃ４に偶数パリティを挿入する。
【００５９】
　　　Ｃ１　Ｃ２　Ｃ３　Ｃ４　Ｃ５
Ｓ１　１　　０　　１　　０ｄ　ｘ
Ｓ２　１　　１　　１ｄ　ｘ　　ｘ
Ｓ３　０　　１ｄ　０　　ｘ　　ｘ
Ｓ４　０ｄ　１　　１　　ｘ　　ｘ
Ｓ５　０　　０　　０　　０　　０
ステップ２：行Ｓ１の位置Ｓ１Ｃ５に偶数パリティを割り当てる。
【００６０】
　　　Ｃ１　Ｃ２　Ｃ３　Ｃ４　Ｃ５
Ｓ１　１　　０　　１　　０ｄ　０
Ｓ２　１　　１　　１ｄ　ｘ　　ｘ
Ｓ３　０　　１ｄ　０　　ｘ　　ｘ
Ｓ４　０ｄ　１　　１　　ｘ　　ｘ
Ｓ５　０　　０　　０　　０　　０
ステップ３：パリティ・エンコード位置Ｓ１Ｃ５をインターセプトする次の対角線Ｓ４Ｃ２に着目し、位置Ｓ２Ｃ４に偶数パリティを挿入する。
【００６１】
　　　Ｃ１　Ｃ２　Ｃ３　Ｃ４　Ｃ５
Ｓ１　１　　０　　１　　０　　０ｄ
Ｓ２　１　　１　　１　　１ｄ　ｘ
Ｓ３　０　　１ｄ　０　　ｘ　　ｘ
Ｓ４　０　　１　　０ｄ　ｘ　　ｘ
Ｓ５　０　　０　　０　　０　　０
ステップ４：行Ｓ２の位置Ｓ２Ｃ５に偶数パリティを割り当てる。
【００６２】
　　　Ｃ１　Ｃ２　Ｃ３　Ｃ４　Ｃ５
Ｓ１　１　　０　　１　　０　　０ｄ
Ｓ２　１　　１　　１　　１ｄ　ｘ
Ｓ３　０　　１　　０ｄ　ｘ　　ｘ
Ｓ４　０　　１ｄ　１　　ｘ　　ｘ
Ｓ５　０　　０　　０　　０　　０
ステップ５：位置Ｓ２Ｃ５をインターセプトする次の対角線Ｓ４Ｃ３に着目し、位置Ｓ３Ｃ４に偶数パリティを挿入する。
【００６３】
　　　Ｃ１　Ｃ２　Ｃ３　Ｃ４　Ｃ５　Ｃ１　Ｃ２　Ｃ３　Ｃ４　Ｃ５
Ｓ１　１　　０　　１　　０　　０　　１ｄ　０　　１　　０　　０
Ｓ２　１　　１　　１　　１　　０ｄ　１　　１　　１　　１　　０
Ｓ３　０　　１　　０　　０ｄ　ｘ　　０　　１　　０　　０　　ｘ
Ｓ４　０　　１　　１ｄ　ｘ　　ｘ　　０　　１　　１　　ｘ　　ｘ
Ｓ５　０　　０　　０　　０　　０　　０　　０　　０　　０　　０
ステップ６：行Ｓ３の位置Ｓ３Ｃ５に偶数パリティを割り当てる。
【００６４】
　　　Ｃ１　Ｃ２　Ｃ３　Ｃ４　Ｃ５　Ｃ１　Ｃ２　Ｃ３　Ｃ４　Ｃ５
Ｓ１　１　　０　　１　　０　　０　　１ｄ　０　　１　　０　　０
Ｓ２　１　　１　　１　　１　　０ｄ　１　　１　　１　　１　　０
Ｓ３　０　　１　　０　　０ｄ　１　　０　　１　　０　　０　　１
Ｓ４　０　　１　　１ｄ　ｘ　　ｘ　　０　　１　　１　　ｘ　　ｘ
Ｓ５　０　　０　　０　　０　　０　　０　　０　　０　　０　　０
ステップ７：位置Ｓ１Ｃ２をインターセプトする次の対角線Ｓ４Ｃ４に着目し、位置Ｓ４Ｃ４に偶数パリティを挿入する。
【００６５】
　　　Ｃ１　Ｃ２　Ｃ３　Ｃ４　Ｃ５　Ｃ１　Ｃ２　Ｃ３　Ｃ４　Ｃ５
Ｓ１　１　　０　　１　　０　　０　　１　　０ｄ　１　　０　　０
Ｓ２　１　　１　　１　　１　　０　　１ｄ　１　　１　　１　　０
Ｓ３　０　　１　　０　　０　　１ｄ　０　　１　　０　　０　　ｘ
Ｓ４　０　　１　　１　　０ｄ　ｘ　　０　　１　　１　　ｘ　　ｘ
Ｓ５　０　　０　　０　　０　　０　　０　　０　　０　　０　　０
ステップ８：行Ｓ４の位置Ｓ４Ｃ５に偶数パリティを割り当てる。
【００６６】
　　　Ｃ１　Ｃ２　Ｃ３　Ｃ４　Ｃ５　Ｃ１　Ｃ２　Ｃ３　Ｃ４　Ｃ５
Ｓ１　１　　０　　１　　０　　０　　１　　０ｄ　１　　０　　０
Ｓ２　１　　１　　１　　１　　０　　１ｄ　１　　１　　１　　０
Ｓ３　０　　１　　０　　０　　１ｄ　０　　１　　０　　０　　ｘ
Ｓ４　０　　１　　１　　０ｄ　０　　０　　１　　１　　ｘ　　ｘ
Ｓ５　０　　０　　０　　０　　０　　０　　０　　０　　０　　０
これでエンコード完了である。
【００６７】素数配列の場合の処理と同等な処理が、１０＊８配列のような非素数次元配列の処理においても、０により満たされたダミー列を付加することにより達成される。このようにして、１０＊８配列は３列を追加することにより１０＊１１配列に変換される。ここで付加された列においては決してエラーが生じないことが知られている。
【００６８】ダブルＤＡＳＤ故障からのデータ回復この例では、（Ｍ−１）＊Ｍデータ配列は本発明によるコーディング方法によりエンコードされるものとする。
処理を開始するに当たり、最初に選択される対角線は左側に位置する最初の欠損列からそのすぐ左列までと交差する正のスロープの対角線である。
【００６９】ここでＤＡＳＤのＣ２及びＣ５は使用不能と仮定する。
【００７０】
　　　Ｃ１　Ｃ２　Ｃ３　Ｃ４　Ｃ５
Ｓ１　１　　ｘ　　１　　０　　ｘ
Ｓ２　１　　ｘ　　１　　１　　ｘ
Ｓ３　０　　ｘ　　０　　０　　ｘ
Ｓ４　０　　ｘ　　１　　０　　ｘ
ダミー行Ｓ５がトロイダル（ジグザグ）横断線を形成するために追加される。
【００７０】
　　　Ｃ１　Ｃ２　Ｃ３　Ｃ４　Ｃ５　Ｃ１　Ｃ２　Ｃ３　Ｃ４　Ｃ５
Ｓ１　１　　ｘ　　１　　０　　ｘ　　１ｄ　ｘ　　１　　０　　ｘ
Ｓ２　１　　ｘ　　１　　１　　ｘｄ　１　　ｘ　　１　　１　　ｘ
Ｓ３　０　　ｘ　　０　　０ｄ　ｘ　　０　　ｘ　　０　　０　　ｘ
Ｓ４　０　　ｘ　　１ｄ　０　　ｘ　　０　　ｘ　　１　　０　　ｘ
Ｓ５　０　　０ｄ　０　　０　　０　　０　　０　　０　　０　　０
ステップ１は対角線Ｓ４Ｃ３−Ｓ１Ｃ１に着目し、Ｓ２Ｃ５に偶数パリティｐを挿入する。
【００７１】
　　　Ｃ１　Ｃ２　Ｃ３　Ｃ４　Ｃ５　Ｃ１　Ｃ２　Ｃ３　Ｃ４　Ｃ５
Ｓ１　１　　ｘ　　１　　０　　ｘ　　１ｄ　ｘ　　１　　０　　ｘ
Ｓ２　１　　ｘ　　１　　１　　０ｄｐ１　　ｘ　　１　　１　　ｘ
Ｓ３　０　　ｘ　　０　　０ｄ　ｘ　　０　　ｘ　　０　　０　　ｘ
Ｓ４　０　　ｘ　　１ｄ　０　　ｘ　　０　　ｘ　　１　　０　　ｘ
Ｓ５　０　　０ｄ　０　　０　　０　　０　　０　　０　　０　　０
ステップ２は対角線パリティと交差する行Ｓ２に着目し、Ｓ２Ｃ２に偶数パリティｐを挿入する。
【００７２】
　　　Ｃ１　Ｃ２　Ｃ３　Ｃ４　Ｃ５　Ｃ１　Ｃ２　Ｃ３　Ｃ４　Ｃ５
Ｓ１　１　　ｘ　　１　　０　　ｘ　　１　　ｘ　　１ｄ　０　　ｘ
Ｓ２　１　　１ｐ　１　　１　　０　　１　　１ｄｐ１　　１　　０
Ｓ３　０　　ｘ　　０　　０　　ｘ　　０ｄ　ｘ　　０　　０　　ｘ
Ｓ４　０　　ｘ　　１　　０　　ｘｄ　０　　ｘ　　１　　０　　ｘ
Ｓ５　０　　０　　０　　０ｄ　０　　０　　０　　０　　０　　０
ステップ３はＳ２Ｃ２で行２をインターセプトする対角線Ｓ４Ｃ５−Ｓ１Ｃ３に着目し、Ｓ４Ｃ５に偶数パリティｐを挿入する。
【００７３】
　　　Ｃ１　Ｃ２　Ｃ３　Ｃ４　Ｃ５　Ｃ１　Ｃ２　Ｃ３　Ｃ４　Ｃ５
Ｓ１　１　　ｘ　　１　　０　　ｘ　　１　　ｘ　　１ｄ　０　　ｘ
Ｓ２　１　　１　　１　　１　　０　　１　　１ｄ　１　　１　　０
Ｓ３　０　　ｘ　　０　　０　　ｘ　　０ｄ　ｘ　　０　　０　　ｘ
Ｓ４　０　　ｘ　　１　　０　　０ｄｐ０　　ｘ　　１　　０　　０ｐ
Ｓ５　０　　０　　０　　０ｄ　０　　０　　０　　０　　０　　０
ステップ４は対角線パリティをインターセプトする行Ｓ４に着目し、Ｓ４Ｃ２に偶数パリティｐを挿入する。
【００７４】
　　　Ｃ１　Ｃ２　Ｃ３　Ｃ４　Ｃ５　Ｃ１　Ｃ２　Ｃ３　Ｃ４　Ｃ５
Ｓ１　１　　ｘ　　１　　０　　ｘ　　１　　ｘ　　１ｄ　０　　ｘ
Ｓ２　１　　１　　１　　１　　０　　１　　１ｄ　１　　１　　０
Ｓ３　０　　ｘ　　０　　０　　ｘ　　０ｄ　ｘ　　０　　０　　ｘ
Ｓ４　０　　１ｐ　１　　０　　０ｄ　０　　１ｐ　１　　０　　０
Ｓ５　０　　０　　０　　０ｄ　０　　０　　０　　０　　０　　０
ステップ５はＳ４Ｃ２において行Ｓ４をインターセプトする対角線Ｓ４Ｃ２−Ｓ１Ｃ５に着目し、Ｓ１Ｃ５に偶数パリティｐを挿入する。
【００７５】
　　　Ｃ１　Ｃ２　Ｃ３　Ｃ４　Ｃ５　Ｃ１　Ｃ２　Ｃ３　Ｃ４　Ｃ５
Ｓ１　１　　ｘ　　１　　０　　０ｐ　１　　ｘ　　１　　０　　０ｄｐ
Ｓ２　１　　１　　１　　１　　０　　１　　１　　１　　１ｄ　０
Ｓ３　０　　ｘ　　０　　０　　ｘ　　０　　ｘ　　０ｄ　０　　ｘ
Ｓ４　０　　１　　１　　０　　０　　０　　１ｄ　１　　０　　０
Ｓ５　０　　０　　０　　０　　０　　０ｄ　０　　０　　０　　０
ステップ６はＳ１Ｃ５において対角線パリティをインターセプトする行Ｓ１に着目し、Ｓ１Ｃ２に偶数パリティｐを挿入する。
【００７６】
　　　Ｃ１　Ｃ２　Ｃ３　Ｃ４　Ｃ５　Ｃ１　Ｃ２　Ｃ３　Ｃ４　Ｃ５
Ｓ１　１　　０ｐ　１　　０　　０　　１　　０ｐ　１　　０　　０ｄ
Ｓ２　１　　１　　１　　１　　０　　１　　１　　１　　１ｄ　０
Ｓ３　０　　ｘ　　０　　０　　ｘ　　０　　ｘ　　０ｄ　０　　ｘ
Ｓ４　０　　１　　１　　０　　０　　０　　１ｄ　１　　０　　０
Ｓ５　０　　０　　０　　０　　０　　０ｄ　０　　０　　０　　０
ステップ７はＳ１Ｃ２において行Ｓ１をインターセプトする対角線Ｓ４Ｃ４−Ｓ１Ｃ２に着目し、Ｓ３Ｃ５に偶数パリティｐを挿入する。
【００７７】
  　　Ｃ１　Ｃ２　Ｃ３　Ｃ４　Ｃ５　Ｃ１　Ｃ２　Ｃ３　Ｃ４　Ｃ５
Ｓ１　１　　０　　１　　０　　０　　１　　０ｄ　１　　０　　０
Ｓ２　１　　１　　１　　１　　０　　１ｄ　１　　１　　１　　０
Ｓ３　０　　ｘ　　０　　０　　１ｄｐ０　　ｘ　　０　　０　　１ｐ
Ｓ４　０　　１　　１　　０ｄ　０　　０　　１　　１　　０　　０
Ｓ５　０　　０　　０ｄ　０　　０　　０　　０　　０　　０　　０
ステップ８はＳ３Ｃ５において対角線パリティをインターセプトする行Ｓ３に着目し、Ｓ３Ｃ２に偶数パリティｐを挿入する。
【００７８】
  　　Ｃ１　Ｃ２　Ｃ３　Ｃ４　Ｃ５　Ｃ１　Ｃ２　Ｃ３　Ｃ４　Ｃ５
Ｓ１　１　　０　　１　　０　　０　　１　　０ｄ　１　　０　　０
Ｓ２　１　　１　　１　　１　　０　　１ｄ　１　　１　　１　　０
Ｓ３　０　　１ｐ　０　　０　　１ｄ　０　　１ｐ　０　　０　　１
Ｓ４　０　　１　　１　　０ｄ　０　　０　　１　　１　　０　　０
Ｓ５　０　　０　　０ｄ　０　　０　　０　　０　　０　　０　　０
これでデータ回復が完了する。
【００７９】ここでパリティ・エンコードとデータ再作成の唯一の違いは、前者ではＤＡＳＤの最後の２つの列Ｃ４及びＣ５が計算されて書き込まれた値を有するのに対し、後者ではそれがＣ２及びＣ５となる。実際に、エンコーディングは本発明によるデコーディング方法の特定なケースである。」（第１０欄第２８行〜第１９欄第１５行）
（当審注：【００５５】段落のデータ配列は、正しくは次のとおりのものである。
　　　Ｃ１　Ｃ２　Ｃ３　Ｃ４　Ｃ５
Ｓ１　１　　０　　１　　ｘ　　ｘ
Ｓ２　１　　１　　１　　ｘ　　ｘ
Ｓ３　０　　１　　０　　ｘ　　ｘ
Ｓ４　０　　１　　１　　ｘ　　ｘ
、
　また、【００６１】段落のデータ配列は、正しくは次のとおりのものである。
　　　Ｃ１　Ｃ２　Ｃ３　Ｃ４　Ｃ５
Ｓ１　１　　０　　１　　０　　０ｄ
Ｓ２　１　　１　　１　　１ｄ　ｘ
Ｓ３　０　　１　　０ｄ　ｘ　　ｘ
Ｓ４　０　　１ｄ　１　　ｘ　　ｘ
Ｓ５　０　　０　　０　　０　　０
、
　また、【００６２】段落のデータ配列は、正しくは次のとおりのものである。
　　　Ｃ１　Ｃ２　Ｃ３　Ｃ４　Ｃ５
Ｓ１　１　　０　　１　　０　　０ｄ
Ｓ２　１　　１　　１　　１ｄ　０
Ｓ３　０　　１　　０ｄ　ｘ　　ｘ
Ｓ４　０　　１ｄ　１　　ｘ　　ｘ
Ｓ５　０　　０　　０　　０　　０）、
　
（ト）「【図２】交互の行及び対角線を使用するダブル・パリティのエンコーディング、及びダブルＤＡＳＤ故障を有する配列からのデータ回復動作のフロー図である。」（第２２欄第１〜３行）
　
　また、図２には、次のフロー図が記載されている。
　
　
　上記摘記事項（ト）及び図２のフローより、交互の行及び対角線を使用するダブル・パリティのエンコーディングのフローと、ダブルＤＡＳＤ故障を有する配列からのデータ回復動作のフローとが共通のものであることは明らかである。よって、上記引用例記載事項及び図面を総合勘案すると、引用例には、次の発明（以下、「引用発明」という。）が記載されているものと認められる。
　
 「故障独立型の直接アクセス記憶装置（ＤＡＳＤ）の配列において、（Ｍ−１）＊Ｍデータ配列が２次元分布に沿って生成され、該分布は第１次元がＭ個のＤＡＳＤにより形成され、第２次元が各Ｍ個のＤＡＳＤの少なくとも１トラック上の（Ｍ−１）ビットの記録範囲から形成され、Ｍは素数であり、
　パリティ生成は、ストライピング・バッファ（ＰＳＢ）により実行され、各（Ｍ−１）＊Ｍビットのデータ配列におけるパリティ・エンコーディング・ステップでは、ジグザグ状エンコーディング、つまり、対角線上のビットはモジューロ２でカウントされ、その結果が使用可能なパリティ位置に設定され、この対角線のパリティ位置と交差する配列行のビットはモジューロ２でカウントされ、その結果は使用可能なパリティ位置に設定され、この処理はデータ配列がカバーされるまで対角線及び行方向に繰り返し実行されることで、それぞれ正のスロープのデータ配列対角線及び交差する行より形成されるペアはパリティ・コード化され、
　エンコーディング及びデコーディング／再作成の例として、Ｍ＝５の場合、データ配列は４＊５次元を有することになるので、ＤＡＳＤ配列は５つの同期式ＤＡＳＤすなわちＣ１−Ｃ５により構成され、Ｃ１、Ｃ２及びＣ３はデータの記憶用に割り当てられ、Ｃ４及びＣ５はパリティを記憶するために確保され、
　プロセサは、パリティと残りのデータ用ＤＡＳＤとのモジューロ２加算により、最大２つまでの故障ＤＡＳＤの内容を再作成するが、ダブルＤＡＳＤ故障からのデータ回復の例では、ＤＡＳＤのＣ２及びＣ５が使用不能と仮定すると、ダブルＤＡＳＤ故障を有する配列からのデータ回復動作のフローは、交互の行及び対角線を使用するダブル・パリティのエンコーディングのフローと共通で、パリティ・エンコードとデータ再作成の唯一の違いは、前者ではＤＡＳＤの最後の２つの列Ｃ４及びＣ５が計算されて書き込まれた値を有するのに対し、後者ではそれがＣ２及びＣ５となることであって、実際に、エンコーディングは本発明によるデコーディング方法の特定なケースである、
システム。」
　
３．対比
　本願補正発明と引用発明とを比較する。
　引用発明の「故障独立型の直接アクセス記憶装置（ＤＡＳＤ）」及びその「配列」が、それぞれ本願補正発明の「ストレージデバイス」及び「多数のストレージデバイスを有するアレイ」に相当する。
　次に、引用発明の「最大２つまでの故障ＤＡＳＤの内容を再作成」することが、本願補正発明の「２以下のストレージデバイスの二重故障訂正」に相当する。
　次に、引用発明では、「（Ｍ−１）＊Ｍデータ配列」の「第１次元がＭ個のＤＡＳＤにより形成され」、「Ｍは素数であ」って、例えば「Ｍ＝５」であることが、本願補正発明の「前記ストレージデバイスの数がｐであり、ｐが３以上の素数であ」ることに相当する。
　次に、引用発明における「パリティ」が本願補正発明の「冗長情報」に相当する。
　次に、平成１８年７月２４日付け国際出願翻訳文の明細書第【００３５】段落に「行は、各ディスクから１つ一意的に選択されたブロックの集合として定義され、ストライプは、一意的に選択された行のグループとして定義される。一般に、行は、各ディスク上の同じ位置にあるブロックから構成され、ストライプは、連続した行のグループである。」と記載されているから、引用発明における「（Ｍ−１）＊Ｍデータ配列」が、本願補正発明の「ストライプ」に相当する。
　次に、引用発明において、「Ｍ＝５の場合」、「ＤＡＳＤ配列は５つの同期式ＤＡＳＤすなわちＣ１−Ｃ５により構成され、Ｃ１、Ｃ２及びＣ３はデータの記憶用に割り当てられ、Ｃ４及びＣ５はパリティを記憶するために確保され」ているから、引用発明のかかる「ＤＡＳＤ配列」と本願補正発明の「前記ストレージデバイスのうちの任意の２つのストレージデバイスが、冗長情報を記憶するために選択され、選択されるストレージデバイスが、ストライプごとに自由に異なり、各ストライプの残りのストレージデバイスがデータを記憶するように構成される、多数のストレージデバイスを有するアレイ」とは、前記ストレージデバイスのうちの２つのストレージデバイスが、冗長情報を記憶するために選択され、残りのストレージデバイスがデータを記憶するように構成される、多数のストレージデバイスを有するアレイ、である点で一致する。
　次に、引用発明において、「ジグザグ状エンコーディング、つまり、対角線上のビットはモジューロ２でカウントされ、その結果が使用可能なパリティ位置に設定され、この対角線のパリティ位置と交差する配列行のビットはモジューロ２でカウントされ、その結果は使用可能なパリティ位置に設定され、この処理はデータ配列がカバーされるまで対角線及び行方向に繰り返し実行されることで、それぞれ正のスロープのデータ配列対角線及び交差する行より形成されるペア」を「パリティ・コード化」することが、本願補正発明の「前記アレイの行パリティセット（行）及び対角パリティセット（対角）に沿って合計または結合計算を含む冗長ストレージアルゴリズムを使用して、冗長情報を構成」することに相当する。
　次に、引用発明において、「Ｃ１−Ｃ５により構成され」る「５つの同期式ＤＡＳＤ」のうち「Ｃ４及びＣ５」に「パリティを記憶する」ことが、本願補正発明の「冗長情報を」「選択されたストレージデバイス上に記憶する」ことに相当する。
　次に、引用発明において、「パリティ生成は、ストライピング・バッファ（ＰＳＢ）により実行され」るから、引用発明１の「ストライピング・バッファ（ＰＳＢ）」が本願補正発明の「前記ストレージデバイスのストレージモジュール」に相当する。
　次に、引用発明において、「パリティと残りのデータ用ＤＡＳＤとのモジューロ２加算により、最大２つまでの故障ＤＡＳＤの内容を再作成する」ための「フロー」が、本願補正発明の「前記２以下のストレージデバイス故障の構成に使用される前記冗長ストレージアルゴリズム」に相当する。
　そして、引用発明では「ダブルＤＡＳＤ故障からのデータ回復の例では、ＤＡＳＤのＣ２及びＣ５が使用不能と仮定すると、ダブルＤＡＳＤ故障を有する配列からのデータ回復動作のフローは、交互の行及び対角線を使用するダブル・パリティのエンコーディングのフローと共通で、パリティ・エンコードとデータ再作成の唯一の違いは、前者ではＤＡＳＤの最後の２つの列Ｃ４及びＣ５が計算されて書き込まれた値を有するのに対し、後者ではそれがＣ２及びＣ５となることであって、実際に、エンコーディングは本発明によるデコーディング方法の特定なケースである」とされているから、引用発明の「データ再作成」の「計算」フローは、パリティ・エンコードの「ジグザグ状エンコーディング」と同じフローであって、唯一、計算結果が書き込まれる「ＤＡＳＤ」の列が異なるだけであることがわかる。
　よって、引用発明において、「パリティ・エンコード」のフローと「データ再作成」のフローとが共通であることが、本願補正発明１の「前記２以下のストレージデバイス故障の構成に使用される前記冗長ストレージアルゴリズムは、前記冗長情報又はデータを構成又は再構成するときに、どのストレージデバイスが故障しても、また、ストレージデバイスの役割が何であっても無関係に同じである」ことに相当するといえる。
　
  すると、本願補正発明と引用発明とは、次の点で一致する。
　
＜一致点＞
  ストレージシステム内の２以下のストレージデバイスの二重故障訂正を提供するように構成されたシステムであって、
　　多数のストレージデバイスを有するアレイであって、前記ストレージデバイスの数がｐであり、ｐが３以上の素数であり、前記ストレージデバイスのうちの２つのストレージデバイスが、冗長情報を記憶するために選択され、残りのストレージデバイスがデータを記憶するように構成される、多数のストレージデバイスを有するアレイと、
　　前記ストレージデバイスのストレージモジュールであって、前記アレイの行パリティセット（行）及び対角パリティセット（対角）に沿って合計または結合計算を含む冗長ストレージアルゴリズムを使用して、冗長情報を構成し、選択されたストレージデバイス上に記憶するように構成された、前記ストレージデバイスのストレージモジュールと
　を含み、前記２以下のストレージデバイス故障の構成に使用される前記冗長ストレージアルゴリズムは、前記冗長情報又はデータを構成又は再構成するときに、どのストレージデバイスが故障しても、また、ストレージデバイスの役割が何であっても無関係に同じである、システム。
　
　一方で、両者は次の点で相違する。
　
＜相違点＞
　本願補正発明では、「前記ストレージデバイスのうちの任意の２つのストレージデバイスが、冗長情報を記憶するために選択され、選択されるストレージデバイスが、ストライプごとに自由に異なり、各ストライプの残りのストレージデバイスがデータを記憶するように構成される」のに対し、引用発明では、「５つの同期式ＤＡＳＤ」「Ｃ１−Ｃ５により構成され」た「ＤＡＳＤ配列」のうち、「Ｃ４及びＣ５」が「パリティを記憶するために確保」され、残りの「Ｃ１、Ｃ２及びＣ３はデータの記憶用に割り当てられ」ているものの、「（Ｍ−１）＊Ｍデータ配列」（本願補正発明の「ストライプ」に相当する。以下同じ。）ごとに、「パリティ」（冗長情報）を記憶するための２つの「ＤＡＳＤ」（ストレージデバイス）を任意に選択し、選択される「ＤＡＳＤ」（ストレージデバイス）が「データ配列」（ストライプ）ごとに自由に異なり、各「データ配列」（ストライプ）の残りの「ＤＡＳＤ」（ストレージデバイス）が「データの記憶用に割り当てられ」（データを記憶するように構成され）ることは記載されていない点。
　
４．判断
　そこで上記相違点について検討すると、パリティ書き換えのためのディスク要求が集中しないよう、データブロックとそのパリティとからなるグループ（ストライプ）ごとに、任意のディスクにパリティを分散して格納することは、前記引用例１の摘記事項（ホ）に記載された「ＲＡＩＤタイプ５」（一般的には「ＲＡＩＤレベル５」と呼ばれている）に用いられており、また、特開２０００−２５９３５９号公報（第【００２３】段落の「なお、上記構成においては、パリティを特定のディスクに固定したが、グループ単位ごとに任意のディスクにパリティを分散する構成でもよい。」、及び第【００７７】段落の「しかし、各グループごとに個別に異なるディスクにパリティを設定する構成とすれば・・・（中略）・・・ディスク要求が集中することがなくなり、ディスク要求待ちを解消できるメリットがある。」との記載参照。）にも記載されているように、周知技術である。
　よって、引用発明において、上記周知技術を用い、「（Ｍ−１）＊Ｍデータ配列」（ストライプ）ごとに、「パリティ」（冗長情報）を記憶するため」の２つの「ＤＡＳＤ」（ストレージデバイス）を任意に選択し、選択される「ＤＡＳＤ」（ストレージデバイス）が「データ配列」（ストライプ）ごとに自由に異なり、各「データ配列」（ストライプ）の残りの「ＤＡＳＤ」（ストレージデバイス）が「データの記憶用に割り当てられ」（データを記憶するように構成され）るようにすることは、当業者が容易になし得たことである。
　
　また、本願補正発明の作用効果も、引用発明及び周知技術から、当業者が予測し得たものである。
　
　よって、本願補正発明は、引用発明及び周知技術に基づいて当業者が容易に発明をすることができたものである。
　
５．本件補正についてのむすび
　以上のとおり、本願補正発明は、特許法第２９条第２項の規定により、特許出願の際独立して特許を受けることができないものである。
　従って、本件補正は、平成１８年法律第５５号改正附則第３条第１項によりなお従前の例によるとされる同法による改正前の特許法第１７条の２第５項において準用する同法第１２６条第５項の規定に違反するので、同法第１５９条第１項において読み替えて準用する同法第５３条第１項の規定により却下すべきものである。
　
第３  本願発明について
１．本願発明
　平成２１年９月１４日付けの手続補正は上記のとおり却下されたので、本願の請求項１〜６３に係る発明は、平成１８年７月２４日付け国際出願翻訳文提出書の【特許請求の範囲】の請求項１〜６３に記載されたとおりのものであるところ、請求項１に係る発明（以下、「本願発明」という。）は、次のとおりのものである。
「【請求項１】
　ストレージシステム内の２以下のストレージデバイスの二重故障訂正を提供するように構成されたシステムであって、
　　多数のストレージデバイスを有するアレイであって、前記ストレージデバイスの数がｐであり、ｐが３以上の素数であり、前記ストレージデバイスが、冗長情報を記憶するために選択された２つのストレージデバイスを含み、残りのストレージデバイスがデータを記憶するように構成される、多数のストレージデバイスを有するアレイと、
　　前記ストレージデバイスのストレージモジュールであって、前記アレイの行パリティセット（行）及び対角パリティセット（対角）に沿って合計または結合計算を含む冗長ストレージアルゴリズムを使用して、冗長情報を構成し、選択されたストレージデバイス上に記憶するように構成された、前記ストレージデバイスのストレージモジュールと
　を含み、前記２以下のストレージデバイス故障の構成に使用される前記冗長ストレージアルゴリズムは、前記冗長情報又はデータを構成又は再構成するときに、どのストレージデバイスが故障しても、また、ストレージデバイスの役割が何であっても無関係に同じである、システム。」
　
２．引用例
　原査定の拒絶の理由で引用された引用例及びその記載事項は、前記「第２［理由］２．」に記載したとおりである。
　
３．対比・判断
　本願発明は、上記「第２［理由］」で検討した本願補正発明に「前記ストレージデバイスのうちの任意の２つのストレージデバイスが、冗長情報を記憶するために選択され、選択されるストレージデバイスが、ストライプごとに自由に異なり、各ストライプの残りのストレージデバイスがデータを記憶するように構成され」とあったところを「前記ストレージデバイスが、冗長情報を記憶するために選択された２つのストレージデバイスを含み、残りのストレージデバイスがデータを記憶するように構成され」と限定を解除したものに相当する。
　そうすると、本願発明の発明特定事項を全て含み、さらに他の事項を付加したものに相当する本願補正発明が前記「第２［理由］４．」に記載したとおり、引用例に記載された発明及び周知技術に基づいて当業者が容易に発明をすることができたものであるから、本願発明も、同様の理由により、引用例に記載された発明及び周知技術に基づいて当業者が容易に発明をすることができたものである。
　
４．むすび
　以上のとおり、本願の請求項１に係る発明は、特許法第２９条第２項の規定により特許を受けることができないものである。
　したがって、その余の請求項について論及するまでもなく、本願は拒絶すべきものである。
　よって、結論のとおり審決する。