【手続補正書】
【提出日】令和1年8月16日(2019.8.16)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
ソリッドステートドライブ（ＳＳＤ）のための、コントローラによって実行されるデータ重複排除の方法であって、前記方法は、
前記コントローラによって、中央処理装置（ＣＰＵ）から、データのブロックに対する署名を受信するステップと、
前記コントローラによって、前記署名が署名ライブラリ内の情報と一致するかを判定するステップと、
前記コントローラから前記ＣＰＵに、前記判定の結果を示す信号を送信するステップと
を含み、
前記署名が署名ライブラリ内の前記情報と一致する場合、前記信号は、前記データのブロックが前記ＳＳＤ上に既に格納されていることを示す第１の値を有し、さらに、前記署名が前記署名ライブラリ内の前記情報と一致しない場合、前記信号は、前記第１の値とは異なる第２の値を有する、方法。
【請求項２】
前記方法は、さらに、
前記コントローラによって、前記ＣＰＵから、前記署名に関連付けられたアドレスを受信するステップであって、前記コントローラは、前記署名ライブラリ内のエントリにインデックス付けするために前記アドレスを用いる、ステップと、
前記コントローラによって、前記署名が前記署名ライブラリ内の前記エントリにある前記情報と一致するかを判定するステップとを含む、
請求項１に記載の方法。
【請求項３】
前記信号は、１つのバイナリビットを含み、前記１つのバイナリビットは、前記署名が前記署名ライブラリ内の情報と一致する場合、前記第１の値であり、前記署名が前記署名ライブラリ内の情報と一致しない場合、前記第２の値である、
請求項１に記載の方法。
【請求項４】
前記署名が前記署名ライブラリ内の情報と一致する場合、前記方法はさらに、前記データのブロックに関連付けられたカウンタをインクリメントするステップを含む、
請求項１に記載の方法。
【請求項５】
前記署名が前記署名ライブラリ内の情報と一致しない場合、前記方法はさらに、
前記データのブロックを受信し、前記データのブロックを前記ＳＳＤに書き込むステップと、
前記署名を前記署名ライブラリに追加し、前記データのブロックに関連付けられたカウンタをインクリメントするステップとを含む、
請求項１に記載の方法。
【請求項６】
前記コントローラは、前記署名と前記署名ライブラリ内の情報とを比較する重複排除プロセッサを備える、
請求項１に記載の方法。
【請求項７】
前記重複排除プロセッサは、前記署名と前記署名ライブラリ内の情報とのビット単位での比較を実行する複数のゲートを備える、
請求項６に記載の方法。
【請求項８】
前記ＳＳＤは、ＳＡＴＡ（Ｓｅｒｉａｌ  Ａｄｖａｎｃｅｄ  Ｔｅｃｈｎｏｌｏｇｙ  Ａｔｔａｃｈｍｅｎｔ）ＳＳＤである、
請求項１に記載の方法。
【請求項９】
中央処理装置（ＣＰＵ）及びソリッドステートドライブ（ＳＳＤ）を備えるサーバによって実行されるデータ重複排除方法であって、前記ＳＳＤは、コントローラを備え、前記方法は、
クライアントから、データのブロックに対する署名を受信するステップと、
前記署名に基づいてアドレスを判定するステップと、
前記コントローラで、前記アドレスを使用して、署名ライブラリ内のエントリを特定するステップと、
前記コントローラで、前記署名と前記署名ライブラリ内の前記エントリにある情報とを比較するステップと、
前記コントローラで、前記署名が前記情報と一致するか否かを示す信号を生成するステップとを含み、前記署名と前記情報とが一致する場合、前記データのブロックが前記ＳＳＤに既に格納されており、前記署名と前記情報とが一致しない場合、前記方法はさらに、
前記クライアントにシグナリングするステップと、
前記シグナリングへの応答として前記クライアントからの前記データのブロックを受信するステップと、
前記データのブロックを前記ＳＳＤに書き込むステップと
を含む、方法。
【請求項１０】
前記信号は、１つのバイナリビットを含み、前記１つのバイナリビットは、前記署名と前記情報とが一致する場合、第１の値であり、前記署名と前記情報とが一致しない場合、第２の値である、
請求項９に記載の方法。
【請求項１１】
前記署名と前記情報とが一致する場合、前記方法はさらに、前記データのブロックに関連付けられたカウンタをインクリメントするステップを含む、
請求項９に記載の方法。
【請求項１２】
前記署名と前記情報とが一致しない場合、前記方法はさらに、前記署名を前記署名ライブラリに追加し、前記データのブロックに関連付けられたカウンタをインクリメントするステップを含む、
請求項９に記載の方法。
【請求項１３】
前記コントローラは、複数の排他的ＯＲ（ＸＯＲ）ゲートを備え、前記複数のゲートの各ゲートは、前記署名からのビット値と前記署名ライブラリ内の前記情報からの各ビット値とを比較する、
請求項９に記載の方法。
【請求項１４】
前記ＳＳＤは、ＳＡＴＡ（Ｓｅｒｉａｌ  Ａｄｖａｎｃｅｄ  Ｔｅｃｈｎｏｌｏｇｙ  Ａｔｔａｃｈｍｅｎｔ）ＳＳＤである、
請求項９に記載の方法。
【請求項１５】
ソリッドステートドライブ（ＳＳＤ）であって、
複数のストレージエレメントと、
前記ストレージエレメントに接続されるコントローラとを備え、
前記コントローラは、中央処理装置（ＣＰＵ）から、データのブロックに対する署名及び前記署名に基づくアドレスを受信するように動作可能であり、前記署名は、前記ＣＰＵによって前記データのブロックのソースから受信され、
前記コントローラは、前記署名と署名ライブラリ内のエントリにある情報とを比較するため、前記署名が前記情報と一致するか否かを示す信号を生成するため、そして、前記信号を前記ＣＰＵに送信するために、前記アドレスを用いて前記署名ライブラリ内のエントリを特定するように動作可能であり、
前記コントローラはさらに、前記署名が前記署名ライブラリ内の前記情報と一致しないことを示す信号への応答として前記データのブロックが受信されるとき、前記データのブロックを、前記複数のストレージエレメントに属するストレージエレメントに書き込むように動作可能である、ＳＳＤ。
【請求項１６】
前記信号は、１つのバイナリビットを含み、前記１つのバイナリビットは、前記署名と前記情報とが一致する場合、第１の値であり、前記署名と前記情報とが一致しない場合、第２の値である、
請求項１５に記載のＳＳＤ。
【請求項１７】
前記署名と前記情報とが一致する場合、前記データのブロックに関連付けられたカウンタがインクリメントされる、
請求項１５に記載のＳＳＤ。
【請求項１８】
前記署名と前記情報とが一致しない場合、前記署名は、前記署名ライブラリに追加され、前記データのブロックに関連付けられたカウンタがインクリメントされる、
請求項１５に記載のＳＳＤ。
【請求項１９】
前記コントローラは、前記署名と前記情報とを比較する重複排除プロセッサを備え、前記重複排除プロセッサは、複数の排他的ＯＲ（ＸＯＲ）ゲートを含み、前記複数のゲートの各ゲートは、前記署名からのビット値と前記署名ライブラリからの前記情報からの各ビット値とを比較する、
請求項１５に記載のＳＳＤ。
【請求項２０】
前記ＳＳＤは、ＳＡＴＡ（Ｓｅｒｉａｌ  Ａｄｖａｎｃｅｄ  Ｔｅｃｈｎｏｌｏｇｙ  Ａｔｔａｃｈｍｅｎｔ）ＳＳＤであり、前記ストレージエレメントは、ＮＡＮＤダイを含む、
請求項１５に記載のＳＳＤ。