【手続補正書】
【提出日】令和2年1月23日(2020.1.23)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
ソリッドステートドライブ（ＳＳＤ）において、
データのためのストレージと、
前記ストレージにおいてガーベッジコレクションを遂行するガーベッジコレクションロジックと、
遊休区間及びキュー深さ閾値を含むセットから得られる条件を含む構成コマンド及びデータ要請を受信する受信回路と、
前記条件を格納する条件ストレージと、
前記ソリッドステートドライブの状態を判別する状態判別器と、
前記条件と前記ソリッドステートドライブの状態とを比較する比較器と、
前記ソリッドステートドライブの状態が前記条件を満足することを示す前記比較器の少なくとも一部に基づき、前記ストレージにおいて前記ガーベッジコレクションを遂行するように前記ガーベッジコレクションロジックにトリガー信号を伝送するトリガー回路と、
を含み、
ここで、前記トリガー回路は、前記ソリッドステートドライブにおいて入出力要請の間に前記ストレージにおいて前記ガーベッジコレクションを遂行するように動作することを特徴とするソリッドステートドライブ。
【請求項２】
前記条件は、遊休区間を含み、前記状態判別器は、前記ソリッドステートドライブに対する遊休時間を判別し、前記比較器は、前記ソリッドステートドライブに対する前記遊休時間を前記遊休区間と比較することを特徴とする請求項１に記載のソリッドステートドライブ。
【請求項３】
前記条件は、キュー深さ閾値を含み、前記状態判別器は、前記ソリッドステートドライブに対するコマンドキュー深さを判別し、前記比較器は、前記ソリッドステートドライブに対する前記コマンドキュー深さを前記キュー深さ閾値と比較することを特徴とする請求項１に記載のソリッドステートドライブ。
【請求項４】
前記構成コマンドはホストコンピュータから受信され、
前記条件は、前記遊休区間及び前記キュー深さ閾値の両方を含み、前記遊休区間は０単位時間より大きく、
前記状態判別器は、前記ソリッドステートドライブに対する前記遊休時間と前記ソリッドステートドライブに対するコマンドキュー深さを判別するよう動作し、
前記比較器は、前記ソリッドステートドライブに対する前記遊休時間を前記遊休区間と比較し、前記ソリッドステートドライブに対する前記コマンドキュー深さを前記キュー深さ閾値と比較するよう動作することを特徴とする請求項２に記載のソリッドステートドライブ。
【請求項５】
前記トリガー回路は、前記ソリッドステートドライブの状態が前記条件を満足し、そして前記ソリッドステートドライブの自由消去ブロックの数が閾値より低いことを示す前記比較器の少なくとも一部に基づき、前記ガーベッジコレクションロジックが前記ストレージにおいて前記ガーベッジコレクションを遂行するようにトリガーすることを特徴とする請求項４に記載のソリッドステートドライブ。
【請求項６】
前記状態判別器は、複数の深さから前記ソリッドステートドライブに対する前記コマンドキュー深さを判別することを特徴とする請求項４に記載のソリッドステートドライブ。
【請求項７】
前記状態判別器は、前記コマンドキュー深さを前記複数の深さの平均（ａｖｅｒａｇｅ）として計算することを特徴とする請求項６に記載のソリッドステートドライブ。
【請求項８】
前記状態判別器は、前記コマンドキュー深さを前記複数の深さの最大として計算することを特徴とする請求項６に記載のソリッドステートドライブ。
【請求項９】
前記状態判別器は、前記コマンドキュー深さを前記複数の深さの合計として計算することを特徴とする請求項６に記載のソリッドステートドライブ。
【請求項１０】
前記状態判別器は、前記コマンドキュー深さを前記複数の深さの中央値（ｍｅｄｉａｎ）として計算することを特徴とする請求項６に記載のソリッドステートドライブ。
【請求項１１】
前記状態判別器は、前記コマンドキュー深さを前記複数の深さの最小として計算することを特徴とする請求項６に記載のソリッドステートドライブ。
【請求項１２】
前記受信回路により受信された前記構成コマンドを確認し、前記条件を前記条件ストレージに格納し、前記条件に応答する前記ソリッドステートドライブの状態を判別する前記状態判別器を構成するプロセッサをさらに含むことを特徴とする請求項１に記載のソリッドステートドライブ。
【請求項１３】
ガーベッジコレクションを遂行する方法において、
ソリッドステートドライブ（ＳＳＤ）が、
遊休区間及びキュー深さ閾値を含むセットから得られる条件を含む構成コマンドを受信する段階と、
前記条件を前記ソリッドステートドライブに格納する段階と、
前記ソリッドステートドライブにおいて前記条件に基づき前記ガーベッジコレクションを遂行する段階と、を含み、
前記ソリッドステートドライブにおける前記条件に基づく前記ガーベッジコレクションの遂行は、入出力要請の間に前記ソリッドステートドライブにおいて前記ガーベッジコレクションを遂行するように動作する
ことを特徴とするガーベッジコレクションを遂行する方法。
【請求項１４】
前記条件を利用して前記ソリッドステートドライブにおいて前記ガーベッジコレクションを遂行する段階は、
前記ソリッドステートドライブの状態をモニターする段階と、
前記ソリッドステートドライブの状態を前記条件と比較する段階と、
前記条件を満足する前記ソリッドステートドライブの状態の少なくとも一部に基づいて前記ソリッドステートドライブにおいて前記ガーベッジコレクションを遂行する段階と、を含むことを特徴とする請求項１３に記載のガーベッジコレクションを遂行する方法。
【請求項１５】
前記ソリッドステートドライブにおいて前記構成コマンドを受信する段階は、前記遊休区間を含む前記構成コマンドを受信する段階を含み、
前記ソリッドステートドライブの状態をモニターする段階は、前記ソリッドステートドライブに対する遊休時間を追跡する段階を含み、
前記ソリッドステートドライブの状態を前記条件と比較する段階は、前記ソリッドステートドライブに対する前記遊休時間を前記遊休区間と比較する段階を含むことを特徴とする請求項１４に記載のガーベッジコレクションを遂行する方法。
【請求項１６】
前記ソリッドステートドライブにおいて前記構成コマンドを受信する段階は前記キュー深さ閾値を含む前記構成コマンドを受信する段階を含み、
前記ソリッドステートドライブの状態をモニターする段階は、前記ソリッドステートドライブに対するコマンドキュー深さを判別する段階を含み、
前記ソリッドステートドライブの状態を前記条件と比較する段階は、前記キュー深さ閾値を前記ソリッドステートドライブに対する前記コマンドキュー深さと比較する段階を含むことを特徴とする請求項１４に記載のガーベッジコレクションを遂行する方法。
【請求項１７】
前記ソリッドステートドライブにおいて、前記遊休区間と前記キュー深さ閾値を含むセットから得られた前記条件を含む前記構成コマンドを受信する段階は、
前記ソリッドステートドライブにおいて、前記遊休区間と前記キュー深さ閾値を含むセットから得られた前記条件を含む前記構成コマンドをホストコンピュータから受信することを含み、
前記遊休区間は、０単位時間より大きく、
前記ソリッドステートドライブの状態をモニターする段階は、
前記ソリッドステートドライブに対する遊休時間を追跡する段階と、前記ソリッドステートドライブに対する前記キュー深さ閾値を判別する段階と、を含み、
前記ソリッドステートドライブの状態を前記条件と比較する段階は、
前記ソリッドステートドライブに対する前記遊休時間を前記遊休区間と比較する段階と、前記キュー深さ閾値と前記ソリッドステートドライブに対するコマンドキュー深さを比較する段階と、を含むことを特徴とする請求項１４に記載のガーベッジコレクションを遂行する方法。
【請求項１８】
前記ソリッドステートドライブの状態をモニターする段階は、前記ソリッドステートドライブに対する前記コマンドキュー深さを判別する段階を含み、
前記ソリッドステートドライブに対する前記コマンドキュー深さを判別する段階は、
複数のコマンドキューに対する複数の深さを判別する段階と、
前記複数の深さから前記コマンドキュー深さを判別する段階と、を含むことを特徴とする請求項１７に記載のガーベッジコレクションを遂行する方法。
【請求項１９】
前記複数の深さから前記コマンドキュー深さを判別する段階は、前記コマンドキュー深さを前記複数の深さの全ての平均として計算する段階を含むことを特徴とする請求項１８に記載のガーベッジコレクションを遂行する方法。
【請求項２０】
前記複数の深さから前記コマンドキュー深さを判別する段階は、前記コマンドキュー深さを前記複数の深さの全ての最大として計算する段階を含むことを特徴とする請求項１８に記載のガーベッジコレクションを遂行する方法。
【請求項２１】
前記複数の深さから前記コマンドキュー深さを判別する段階は、前記コマンドキュー深さを前記複数の深さの全ての合計として計算する段階を含むことを特徴とする請求項１８に記載のガーベッジコレクションを遂行する方法。
【請求項２２】
前記複数の深さから前記コマンドキュー深さを判別する段階は、前記コマンドキュー深さを前記複数の深さの全ての中央値として計算する段階を含むことを特徴とする請求項１８に記載のガーベッジコレクションを遂行する方法。
【請求項２３】
前記複数の深さから前記コマンドキュー深さを判別する段階は、前記コマンドキュー深さを前記複数の深さの全ての最小として計算する段階を含むことを特徴とする請求項１８に記載のガーベッジコレクションを遂行する方法。
【請求項２４】
前記条件を満足する前記ソリッドステートドライブの状態の少なくとも一部に基づいて、前記ソリッドステートドライブにおいて前記ガーベッジコレクションを遂行する段階は、前記条件を満足する前記ソリッドステートドライブの状態の少なくとも一部に基づく前記ガーベッジコレクションの遂行と、前記ソリッドステートドライブの自由消去ブロックの数が閾値より低いことを含むことを特徴とする請求項１７に記載のガーベッジコレクションを遂行する方法。
【請求項２５】
ホストコンピュータから命令を受信して前記ガーベッジコレクションを遂行する段階をさらに含むことを特徴とする請求項１３に記載のガーベッジコレクションを遂行する方法。
【請求項２６】
有形の（ｔａｎｇｉｂｌｅ）ストレージ媒体を含む物品であって、
有形の非一時的（ｎｏｎ−ｔｒａｎｓｉｔｏｒｙ）ストレージ媒体は、それに格納された命令を含み、前記命令が実行されれば、その結果としてソリッドステートドライブ（ＳＳＤ）において遊休区間及びキュー深さ閾値を含むセットから得られる条件を含む構成コマンドを受信し、
前記ソリッドステートドライブに前記条件を格納し、
前記ソリッドステートドライブにおいてガーベッジコレクションを前記条件に基づいて遂行し、
前記条件に基づく前記ガーベッジコレクションの遂行は、前記ソリッドステートドライブの入出力要請の間に前記ソリッドステートドライブにおいて前記ガーベッジコレクションを遂行するように動作することを特徴とするストレージ媒体を含む物品。
【請求項２７】
前記条件を利用しての前記ソリッドステートドライブにおける前記ガーベッジコレクションの遂行は、
前記ソリッドステートドライブの状態のモニターと、
前記ソリッドステートドライブの状態と前記条件の比較と、
前記条件を満足する前記ソリッドステートドライブの状態の少なくとも一部に基づく、前記ソリッドステートドライブの前記ガーベッジコレクションの遂行と、を含むことを特徴とする請求項２６に記載のストレージ媒体を含む物品。
【請求項２８】
前記ソリッドステートドライブにおいて、前記遊休区間と前記キュー深さ閾値を含むセットから得られた前記条件を含む前記構成コマンドの受信は、
前記ソリッドステートドライブにおいて、ホストコンピュータから前記構成コマンドを受信し、
前記構成コマンドは、前記遊休区間と前記キュー深さ閾値を含む前記条件を含み、
前記遊休区間は、０単位時間より大きく、
前記ソリッドステートドライブの状態のモニターは、
前記ソリッドステートドライブに対する遊休時間の追跡と、
前記ソリッドステートドライブに対するキュー深さの判別を含み、
前記ソリッドステートドライブの状態と前記条件の比較は、
前記ソリッドステートドライブに対する前記遊休時間と前記遊休区間の比較と、
前記キュー深さ閾値と前記ソリッドステートドライブに対するコマンドキュー深さの比較と、を含むことを特徴とする請求項２７に記載のストレージ媒体を含む物品。
【請求項２９】
前記条件を満足する前記ソリッドステートドライブの状態の少なくとも一部に基づく前記ソリッドステートドライブにおける前記ガーベッジコレクションの遂行は、
前記条件を満足する前記ソリッドステートドライブの状態の少なくとも一部に基づく前記ソリッドステートドライブにおける前記ガーベッジコレクションの遂行と、
前記ソリッドステートドライブの自由消去ブロックの数が閾値より低いことを含むことを特徴とする請求項２８に記載のストレージ媒体を含む物品。