(57)【要約】      （修正有）【課題】ソリッドステートドライブのパフォーマンス最適化方法を提供する。【解決手段】ソリッドステートドライブのパフォーマンス最適化方法は、キュー深度の使用比率を判定するため、ソリッドステートドライブのキュー深度を検出し、キュー深度の使用比率が第１の閾値比率よりも高いとき、ソリッドステートドライブのアクセス速度を増加させるため、ソリッドステートドライブのアクセス速度が増加可能か否かを判定し、キュー深度の使用比率が第２の閾値比率よりも低いとき、ソリッドステートドライブのアクセス速度を減少させるため、ソリッドステートドライブのアクセス速度が減少可能か否かを判定する。【選択図】図２
2020187740.tif 000002
【特許請求の範囲】
【請求項１】
キュー深度の使用比率を判定するため、ソリッドステートドライブの前記キュー深度を検出することと、
前記キュー深度の前記使用比率が第１の閾値比率よりも高いとき、前記ソリッドステートドライブのアクセス速度を増加させるため、前記ソリッドステートドライブの前記アクセス速度が増加可能か否かを判定することと、
前記キュー深度の前記使用比率が第２の閾値比率よりも低いとき、前記ソリッドステートドライブの前記アクセス速度を減少させるため、前記ソリッドステートドライブの前記アクセス速度が減少可能か否かを判定することと
を含む、
ソリッドステートドライブのパフォーマンス最適化方法。
【請求項２】
ソリッドステートドライブコントローラの動作温度を検出することと、
前記キュー深度の前記使用比率が前記第１の閾値比率と前記第２の閾値比率との間にあり、前記動作温度が、所定温度＋所定値である所定の温度条件以下のとき、前記ソリッドステートドライブの前記アクセス速度を維持し、
前記キュー深度の前記使用比率が前記第１の閾値比率と前記第２の閾値比率との間にあり、前記動作温度が前記所定の温度条件よりも高いとき、前記ソリッドステートドライブの前記アクセス速度を増加させるため、前記ソリッドステートドライブの前記アクセス速度が増加可能か否かを判定すること
を更に含む、
請求項１に記載のソリッドステートドライブのパフォーマンス最適化方法。
【請求項３】
前記キュー深度の前記使用比率が前記第２の閾値比率よりも低いとき、前記ソリッドステートドライブコントローラの前記動作温度を検出し、前記動作温度を前記所定温度とすることを更に含む、
請求項２に記載のソリッドステートドライブのパフォーマンス最適化方法。
【請求項４】
前記ソリッドステートドライブの前記キュー深度を検出する前に、
前記ソリッドステートドライブにおいてアクセスされるデータの種類に応じて前記ソリッドステートドライブの前記アクセス速度を判定することを更に含む、
請求項１に記載のソリッドステートドライブのパフォーマンス最適化方法。
【請求項５】
前記ソリッドステートドライブの前記アクセス速度を増加させるため、前記ソリッドステートドライブの前記アクセス速度が増加可能か否かを判定するステップが、
ソリッドステートドライブコントローラの動作周波数が所定の最大周波数に達しているとき、前記ソリッドステートドライブコントローラの前記動作周波数を維持することと、
前記ソリッドステートドライブコントローラの前記動作周波数が前記所定の最大周波数よりも低いとき、前記ソリッドステートドライブコントローラの前記動作周波数を所定の増加比率に応じて増加させることと
を更に含む、
請求項１に記載のソリッドステートドライブのパフォーマンス最適化方法。
【請求項６】
前記ソリッドステートドライブの前記アクセス速度を減少させるため、前記ソリッドステートドライブの前記アクセス速度が減少可能か否かを判定するステップが、
ソリッドステートドライブコントローラの動作周波数が所定の最小周波数に達しているとき、前記ソリッドステートドライブコントローラの前記動作周波数を維持することと、
前記ソリッドステートドライブコントローラの前記動作周波数が前記所定の最小周波数よりも高いとき、前記ソリッドステートドライブコントローラの前記動作周波数を所定の減少比率に応じて減少させることと
を更に含む、
請求項１に記載のソリッドステートドライブのパフォーマンス最適化方法。
【請求項７】
前記ソリッドステートドライブの前記アクセス速度を増加させるステップが、前記ソリッドステートドライブのメモリのメモリ周波数を増加させることを更に含み、
前記ソリッドステートドライブの前記アクセス速度を減少させるステップが、前記ソリッドステートドライブの前記メモリの前記メモリ周波数を減少させることを更に含む、
請求項１に記載のソリッドステートドライブのパフォーマンス最適化方法。
【請求項８】
自動パフォーマンス最適化オプションを含むユーザインターフェイスを表示し、外部制御命令を受け取ることと、
前記外部制御命令が前記自動パフォーマンス最適化オプションを選択するものであるとき、前記キュー深度の前記使用比率を判定するため、前記ソリッドステートドライブの前記キュー深度を検出するステップを実行することと
を更に含む、
請求項１に記載のソリッドステートドライブのパフォーマンス最適化方法。
【請求項９】
前記ユーザインターフェイスが手動設定オプションを含み、
前記外部制御命令が前記手動設定オプションを選択するものであるとき、前記外部制御命令に応じて前記ソリッドステートドライブの前記アクセス速度の増加設定又は減少設定を設定することを更に含む、
請求項８に記載のソリッドステートドライブのパフォーマンス最適化方法。
【請求項１０】
前記増加設定が前記第１の閾値比率と所定の増加比率とを含み、前記減少設定が前記第２の閾値比率と所定の減少比率とを含む、
請求項９に記載のソリッドステートドライブのパフォーマンス最適化方法。
【請求項１１】
ソリッドステートドライブであって、
ソリッドステートドライブコントローラと、
前記ソリッドステートドライブコントローラに連接され、キュー深度の使用比率を判定するため、前記ソリッドステートドライブの前記キュー深度を検出する、パフォーマンス最適化ファームウェアと
を含み、
前記キュー深度の前記使用比率が第１の閾値比率よりも高いとき、前記ソリッドステートドライブのアクセス速度を増加させるため、前記パフォーマンス最適化ファームウェアが前記ソリッドステートドライブの前記アクセス速度が増加可能か否かを判定し、
前記キュー深度の前記使用比率が第２の閾値比率よりも低いとき、前記ソリッドステートドライブの前記アクセス速度を減少させるため、前記パフォーマンス最適化ファームウェアが前記ソリッドステートドライブの前記アクセス速度が減少可能か否かを判定する、
ソリッドステートドライブ。
【請求項１２】
前記パフォーマンス最適化ファームウェアが前記ソリッドステートドライブコントローラの動作温度を検出し、
前記キュー深度の前記使用比率が前記第１の閾値比率と前記第２の閾値比率との間にあり、前記動作温度が、所定温度＋所定値である所定の温度条件以下のとき、前記パフォーマンス最適化ファームウェアが前記ソリッドステートドライブの前記アクセス速度を維持し、
前記キュー深度の前記使用比率が前記第１の閾値比率と前記第２の閾値比率との間にあり、前記動作温度が前記所定の温度条件より高いとき、前記パフォーマンス最適化ファームウェアが、前記ソリッドステートドライブの前記アクセス速度を増加させるため、前記ソリッドステートドライブの前記アクセス速度が増加可能か否かを判定する、
請求項１１に記載のソリッドステートドライブ。
【請求項１３】
前記キュー深度の前記使用比率が前記第２の閾値比率よりも低いとき、前記パフォーマンス最適化ファームウェアが前記ソリッドステートドライブコントローラの前記動作温度を検出し、前記動作温度を前記所定温度とする、
請求項１２に記載のソリッドステートドライブ。
【請求項１４】
前記ソリッドステートドライブの前記キュー深度を検出する前に、前記パフォーマンス最適化ファームウェアが、前記ソリッドステートドライブにおいてアクセスされるデータの種類に応じて前記ソリッドステートドライブの前記アクセス速度を判定する、
請求項１１に記載のソリッドステートドライブ。
【請求項１５】
前記ソリッドステートドライブコントローラの動作周波数が所定の最大周波数に達しているとき、前記パフォーマンス最適化ファームウェアが前記ソリッドステートドライブコントローラの前記動作周波数を維持し、
前記ソリッドステートドライブコントローラの前記動作周波数が所定の最大周波数よりも低いとき、前記パフォーマンス最適化ファームウェアが所定の増加比率に応じて前記ソリッドステートドライブコントローラの前記動作周波数を増加させる、
請求項１１に記載のソリッドステートドライブ。
【請求項１６】
前記ソリッドステートドライブコントローラの動作周波数が所定の最小周波数に達しているとき、前記パフォーマンス最適化ファームウェアが前記ソリッドステートドライブコントローラの前記動作周波数を維持し、
前記ソリッドステートドライブコントローラの前記動作周波数が所定の最小周波数よりも高いとき、前記パフォーマンス最適化ファームウェアが所定の減少比率に応じて前記ソリッドステートドライブコントローラの前記動作周波数を減少させる、
請求項１１に記載のソリッドステートドライブ。
【請求項１７】
メモリを更に含み、
前記パフォーマンス最適化ファームウェアが前記ソリッドステートドライブの前記アクセス速度を増加させる動作が、前記メモリのメモリ周波数を増加させることを更に含み、
前記パフォーマンス最適化ファームウェアが前記ソリッドステートドライブの前記アクセス速度を減少させる動作が、前記メモリの前記メモリ周波数を減少させることを更に含む、
請求項１１に記載のソリッドステートドライブ。
【請求項１８】
前記パフォーマンス最適化ファームウェアがユーザインターフェイスを更に含み、前記ユーザインターフェイスが自動パフォーマンス最適化オプションを含み、前記パフォーマンス最適化ファームウェアが外部制御命令を受け取り、
前記外部制御命令が前記自動パフォーマンス最適化オプションを選択するものであるとき、前記パフォーマンス最適化ファームウェアが、前記キュー深度の前記使用比率を判定するため、前記ソリッドステートドライブの前記キュー深度を検出する動作を実行する、
請求項１１に記載のソリッドステートドライブ。
【請求項１９】
前記ユーザインターフェイスが手動設定オプションを含み、前記外部制御命令が前記手動設定オプションを選択するものであるとき、前記パフォーマンス最適化ファームウェアが、前記外部制御命令に応じて前記ソリッドステートドライブの前記アクセス速度の増加設定又は減少設定を設定する、
請求項１８に記載のソリッドステートドライブ。
【請求項２０】
前記増加設定が第１の閾値比率と所定の増加比率とを含み、前記減少設定が前記第２の閾値比率と所定の減少比率とを含む、
請求項１９に記載のソリッドステートドライブ。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明はハードドライブ及びハードドライブの最適化方法に関するものであり、特に、ソリッドステートドライブ及びソリッドステートドライブのパフォーマンス最適化方法に関する。
【背景技術】
【０００２】
データ記憶装置の進化に伴い、ソリッドステートドライブ（ＳＳＤ）は、高速データアクセスを提供できるという理由から、現在、主流な記憶装置となっている。しかし、従来のＳＳＤは、製造時に製造元により予め設定された、固定されたアクセス速度で動作する。例えば、ユーザがＳＳＤを購入して使用するとき、ユーザはＳＳＤを固定のアクセス速度で操作できるのみである。換言すると、現在のＳＳＤの使用状態に関わらず、ＳＳＤのアクセス速度と電力消費は変わらないことから、従来のＳＳＤはある特定のアクセス状況において良好な動作パフォーマンスを効果的に維持することができない。このため、以下に解決のための複数の例示的な実施形態を提供する。
【発明の概要】
【発明が解決しようとする課題】
【０００３】
本発明は、ソリッドステートドライブの動作パフォーマンスを自動的に最適化するため、ソリッドステートドライブの現在の使用状態に応じてソリッドステートドライブのアクセス速度を対応して調整するよう適応された、ソリッドステートドライブ及びソリッドステートドライブのパフォーマンス最適化方法を対象とする。
【課題を解決するための手段】
【０００４】
本発明は、次のステップを含む、ソリッドステートドライブのパフォーマンス最適化方法を提供する。ソリッドステートドライブのキュー深度が検出され、キュー深度の使用比率が判定される。キュー深度の使用比率が第１の閾値比率よりも高いとき、ソリッドステートドライブのアクセス速度を増加させるため、ソリッドステートドライブのアクセス速度を増加可能か否かが判定される。キュー深度の使用比率が第２の閾値比率よりも低いとき、ソリッドステートドライブのアクセス速度を減少させるため、ソリッドステートドライブのアクセス速度を減少可能か否かが判定される。
【０００５】
本発明は、ソリッドステートコントローラとパフォーマンス最適化ファームウェアとを含むソリッドステートドライブを提供する。パフォーマンス最適化ファームウェアは、ソリッドステートコントローラと連接される。パフォーマンス最適化ファームウェアは、キュー深度の使用比率を判定するため、ソリッドステートドライブのキュー深度を検出するよう構成される。パフォーマンス最適化ファームウェアは、キュー深度の使用比率が第１の閾値比率よりも高いとき、ソリッドステートドライブのアクセス速度を増加させるため、ソリッドステートドライブのアクセス速度が増加可能か否かを判定する。パフォーマンス最適化ファームウェアは、キュー深度の使用比率が第２の閾値比率よりも低いとき、ソリッドステートドライブのアクセス速度を減少させるため、ソリッドステートドライブのアクセス速度を減少可能か否かを判定する。
【発明の効果】
【０００６】
上記に基づき、本発明のソリッドステートドライブ及びソリッドステートドライブのパフォーマンス最適化方法は、ＳＳＤのキュー深度の使用比率を自動的に判定することで、ソリッドステートドライブのアクセス速度を対応して調整するよう適応されている。このため、本発明のソリッドステートドライブ及びソリッドステートドライブのパフォーマンス最適化方法は、ソリッドステートドライブの動作パフォーマンスを効果的に最適化できる。
【０００７】
上記をより理解し易くするため、以下にいくつかの実施形態が図面を伴い詳細に説明される。
【０００８】
添付の図面は、本発明の更なる理解を提供するために含まれており、本明細書に包含され、本明細書の一部を構成する。図面は、本発明の実施形態を表し、説明と併せて、本発明の原理を説明する役割を担う。
【図面の簡単な説明】
【０００９】
【図１】本発明の１つの実施形態によるコンピュータシステムの機能ブロック図である。
【図２】本発明の１つの実施形態による、ソリッドステートドライブのパフォーマンス最適化方法を表すフロー図である。
【図３Ａ】本発明のもう１つの実施形態による、ソリッドステートドライブのパフォーマンス最適化方法を表すフロー図である。
【図３Ｂ】本発明のもう１つの実施形態による、ソリッドステートドライブのパフォーマンス最適化方法を表すフロー図である。
【図４】本発明の１つの実施形態による、ユーザインターフェイスの動作フローを表す。
【発明を実施するための形態】
【００１０】
本明細書全文（請求項を含む）にて用いられる用語「連接」は、如何なる直接又は間接的な接続をも言及している。例えば、第１の装置が第２の装置に連接されると説明されている場合、第１の装置が第２の装置と直接連接される、又は、第１の装置がその他の装置又は接続手段を介し第２の装置と間接的に連接されると解釈される。更に、可能な限り、図面と明細書において同一の符号が用いられる部品／部材／工程は、同一又は同様の部分を言及する。同一の符号が用いられる、又は異なる実施形態において同一の用語が用いられる部品／部材／工程は、関連する説明を相互参照できる。
【００１１】
図１は、本発明の１つの実施形態によるコンピュータシステムの機能ブロック図である。図１を参照し、コンピュータシステム１０は、ソリッドステートドライブ（ＳＳＤ）１００とプロセッサ２００とを含む。ＳＳＤ１００は、ＳＳＤコントローラ１１０と、メモリ１２０と、パフォーマンス最適化ファームウェア１３０とを含む。ＳＳＤコントローラ１１０は、メモリ１２０と連接される。メモリ１２０は、ＮＡＮＤ型フラッシュメモリといったフラッシュメモリであってよいが、本発明はこれに限定されない。本実施形態において、ＳＳＤ１００は、例えば、コンピュータのマザーボードに取り付けられ、プロセッサ２００と連接される。このため、コンピュータが起動されると、プロセッサ２００はＳＳＤ１００を作動させアクセスでき、プロセッサ２００は、ＳＳＤ１００の動作パフォーマンスを自動的に最適化するため、パフォーマンス最適化ファームウェア１３０を読み出し実行できる。本実施形態において、パフォーマンス最適化ファームウェア１３０は、例えば、ＳＳＤ１００のメモリに予め書かれているか、ＳＳＤ１００のその他のメモリに予め格納されてよく、本発明により限定されない。１つの実施形態においては、パフォーマンス最適化ファームウェア１３０はアプリケーションプログラム（ＡＰＰ）であってもよく、ＳＳＤ１００以外のその他の記憶部に格納されてよい。
【００１２】
図２は、本発明の１つの実施形態による、ソリッドステートドライブのパフォーマンス最適化方法を表すフロー図である。図１と図２を参照し、本実施形態のパフォーマンス最適化方法は、少なくとも、ＳＳＤ１００を最適化するためパフォーマンス最適化ファームウェア１３０を読み出し実行する図１の実施形態のコンピュータシステム１００に適応されている。ステップＳ２１０において、プロセッサ２００はＳＳＤ１００のキュー深度を検出し、キュー深度の使用比率を判定する。ステップＳ２２０において、キュー深度の使用比率が第１の閾値比率よりも高いとき、ＳＳＤ１００のアクセス速度を増加させるため、プロセッサ２００はＳＳＤ１００のアクセス速度を増加可能か否か判定する。ステップＳ２３０において、キュー深度の使用比率が第２の閾値比率よりも低いとき、ＳＳＤ１００のアクセス速度を減少させるため、プロセッサ２００はＳＳＤ１００のアクセス速度を減少可能か否か判定する。このため、本実施形態のコンピュータシステム１０は、ＳＳＤ１００のパフォーマンスを効果的に最適化できる。
【００１３】
具体的には、本実施形態のプロセッサ２００は、キュー深度値を取得するため、ＳＳＤコントローラ１１０を読み出し、キュー深度値に応じてＳＳＤ１００の現在の使用状態を推定できる。加えて、キュー深度は、現時点でのＳＳＤ１００のアクセス動作の総数を表してよい。換言すると、本実施形態のパフォーマンス最適化方法は、ＳＳＤ１００のリアルタイムでのアクセス状態に応じてＳＳＤ１００のアクセス速度を動的に調整するものである。１つの実施形態において、キュー深度の使用比率が第１の閾値比率よりも高いことは、キュー深度の総使用数が５０％より高いことを言及し、キュー深度の使用比率が第２の閾値比率よりも低いことは、キュー深度の総使用数が１０％未満であることを言及してよい。例えば、プロセッサ２００がＳＳＤ１００は現在、高アクセス状態で動作していると判断すると、プロセッサ２００は、アクセス速度を加速させるため、ＳＳＤ１００のアクセス速度を自動的に増加させてよい。プロセッサ２００がＳＳＤ１００は現在、低アクセス状態で動作していると判断すると、プロセッサ２００は、電力消費を抑えるため、ＳＳＤ１００のアクセス速度を自動的に減少させてよい。
【００１４】
上述したＳＳＤ１００のアクセス速度を増加又は減少させることは、例えば、ＳＳＤ１００のアクセス速度を増加又は減少させるため、ＳＳＤコントローラ１１０及び／又はメモリ１２０の動作周波数を増加又は減少させることを言及しうる。更に、１つの実施形態において、プロセッサ２００がＳＳＤ１００のアクセス状態を判定する前に、プロセッサ２００はＳＳＤ１００において現在アクセスされているデータの種類に応じて、前もってＳＳＤ１００のアクセス速度を判定してよい。例えば、プロセッサ２００が、現在アクセスされているデータの種類が、画像編集プログラム又はゲームプログラムといった、大きなデータ量のファイルデータであると判定したとき、プロセッサ２００はＳＳＤ１００の動作周波数をより高い周波数にプリセットしてよい。或いは、プロセッサ２００が、現在アクセスされているデータの種類が、画像ファイル又は音楽ファイルといった、小さなデータ量のファイルデータであると判定したとき、プロセッサ２００はＳＳＤ１００の動作周波数をより低い周波数にプリセットしてよい。次いで、プロセッサ２００は、例えば、上記ステップＳ２１０〜Ｓ２３０を実行するため、ＳＳＤ１００のキュー深度を検出する。
【００１５】
図３Ａと図３Ｂは、本発明のもう１つの実施形態によるソリッドステートドライブのパフォーマンス最適化方法を表すフロー図である。図１、図３Ａ、図３Ｂを参照し、本実施形態のパフォーマンス最適化方法は、少なくとも、プロセッサ２００がＳＳＤ１００を最適化するためパフォーマンス最適化ファームウェア１３０を読み出し実行する図１の実施形態のコンピュータシステム１０に適応される。更に、図２の実施形態と比較し、本実施形態のパフォーマンス最適化方法は更に、ＳＳＤ１００の温度に応じてアクセス速度を調整する。ステップＳ３１０において、プロセッサ２００はＳＳＤ１００の自動パフォーマンス最適化を実行する。ステップＳ３２０において、プロセッサ２００は、ＳＳＤ１００のキュー深度ＱＥを検出し、キュー深度ＱＥの使用比率を判定する。
【００１６】
キュー深度ＱＥが第２の閾値比率ＴＲ２より低いとき（ＱＥ＜ＴＲ２）、プロセッサ２００はステップＳ３３０を実行する。ステップＳ３３０において、プロセッサ２００は、ＳＳＤコントローラ１１０により測定された現在の動作温度Ｔを検出し、現在の動作温度Ｔを所定温度Ｔ’として設定する。次いで、ステップＳ３６０において、プロセッサ２００は、ＳＳＤ１００の現在のアクセス速度が減少可能か否かを判定する。もし減少不可であれば、ＳＳＤコントローラ１１０及び／又はメモリ１２０の現在の動作周波数が所定の最小周波数に達していることを表す。ステップＳ３６１において、プロセッサ２００はＳＳＤコントローラ１１０及び／又はメモリ１２０の動作周波数を維持する。もし減少可能ならば、ＳＳＤコントローラ１１０及び／又はメモリ１２０の現在の動作周波数が所定の最小周波数よりも高いことを表す。ステップＳ３６２において、プロセッサ２００は、所定の減少比率（例えば、１０％減少）に応じてＳＳＤコントローラ１１０及び／又はメモリ１２０の現在の動作周波数を減少させる。換言すると、ＳＳＤ１００が現在、低アクセス状態であるとき、プロセッサ２００は、ＳＳＤ１００のアクセス速度を減少させるため、ＳＳＤコントローラ１１０及び／又はメモリ１２０の動作周波数を更に減少させてよい。加えて、ステップＳ３３０の目的を更に説明する。ＳＳＤ１００が動作し始めたばかりのときＳＳＤ１００のキュー深度ＱＥの使用比率は低いはずであることから、ステップＳ３３０において、プロセッサ２００は、後続の判定のための温度判定基準としての役割を果たすよう、ＳＳＤ１００の現在の動作温度（初期動作温度として扱われてよい）を予め記録してよい。
【００１７】
キュー深度ＱＥが第１の閾値比率ＴＲ１よりも大きいとき（ＱＥ＞ＴＲ１）、プロセッサ２００はステップＳ３５０を実行する。ステップＳ３５０において、プロセッサ２００は、ＳＳＤ１００の現在のアクセス速度が増加可能か否かを判定する。もし増加不可であれば、ＳＳＤコントローラ１１０及び／又はメモリ１２０の現在の動作周波数が所定の最大周波数に達していることを表す。ステップＳ３５１において、プロセッサ２００はＳＳＤコントローラ１１０の動作周波数を維持する。もし増加可能ならば、ＳＳＤコントローラ１１０及び／又はメモリ１２０の現在の動作周波数が所定の最大周波数よりも低いことを表す。ステップＳ３５２において、プロセッサ２００は、所定の増加比率（例えば、１０％増加）に応じてＳＳＤコントローラ１１０及び／又はメモリ１２０の現在の動作周波数を増加させる。換言すると、ＳＳＤ１００が現在、高アクセス状態にあるとき、プロセッサ２００は、ＳＳＤ１００の現在のアクセス速度を増加させるため、ＳＳＤコントローラ１１０及び／又はメモリ１２０の動作周波数を更に増加させる。
【００１８】
キュー深度ＱＥが第１の閾値比率ＴＲ１と第２の閾値比率ＴＲ２との間にあるとき（ＴＲ１≧ＱＥ≧ＴＲ２）、プロセッサ２００は、ＳＳＤ１００の現在の動作温度Ｔを更に判定する。現在の動作温度Ｔが所定の温度条件以下のとき（Ｔ≦Ｔ’＋ｔ１）、プロセッサ２００はステップＳ３４１を実行する。ステップＳ３４１において、プロセッサ２００はＳＳＤコントローラ１１０及び／又はメモリ１２０の動作周波数を維持する。現在の動作温度Ｔが所定の温度条件よりも高いとき（Ｔ＞Ｔ’＋ｔ１）、プロセッサ２００はステップＳ３７０を実行する。ステップＳ３７０において、プロセッサ２００は、ＳＳＤ１００の現在のアクセス速度が増加可能か否かを判定する。もし増加不可であれば、ＳＳＤコントローラ１１０及び／又はメモリ１２０の現在の動作周波数が所定の最大周波数に達していることを表す。ステップＳ３７１において、プロセッサ２００はＳＳＤコントローラ１１０の動作周波数を維持する。もし増加可能ならば、ＳＳＤコントローラ１１０及び／又はメモリ１２０の現在の動作周波数が所定の最大周波数よりも低いことを表す。ステップＳ３７２において、プロセッサ２００はＳＳＤコントローラ１１０及び／又はメモリ１２０の現在の動作周波数を増加させる。換言すると、ＳＳＤ１００の通常のアクセス状態において、ＳＳＤコントローラ１１０により測定された現在の動作温度が低いとき、プロセッサ２００はＳＳＤ１００のアクセス速度を維持する、逆に、ＳＳＤコントローラ１１０により測定された現在の動作温度が高いとき、ＳＳＤ１００は長時間の大きなデータアクセス量のモードで動作していることを表し、プロセッサ２００はＳＳＤ１００のアクセス速度を増加させるため、ＳＳＤコントローラ１１０及び／又はメモリ１２０の動作周波数を増加させてよい。
【００１９】
更に、上述した所定の温度条件は、例えば、所定温度Ｔ’＋所定値ｔ１を言及しうる。更に、１つの実施形態において、所定値ｔ１は２０℃であってよいが、本発明はこれに限定されない。加えて、もう１つの様態によると、ＳＳＤ１００のキュー深度ＱＥの使用比率が低くなると、ＳＳＤコントローラ１００により測定された現在の動作温度がまだ高くとも（完全な冷却が未達成）、プロセッサ２００は、ＳＳＤ１００のアクセス速度を減少させるか否かを判定するため、ステップＳ３３０とＳ３６０を実行してよい。例えば、本実施形態のパフォーマンス最適化方法は、ＳＳＤ１００の現在のアクセス状態に応じてアクセス速度を増加させるか否か、又は電力消費を減少させるか否かを判定することにより、ＳＳＤ１００のアクセス速度を動的に調整してよい。加えて、本実施形態のパフォーマンス最適化方法は更に、ＳＳＤコントローラ１１０により測定された温度に応じてアクセス速度を調整してよい。
【００２０】
図４は、本発明の１つの実施形態によるユーザインターフェイスの動作フローを表す。図４を参照し、本実施形態のユーザインターフェイスの動作フローは、少なくとも、プロセッサ２００がパフォーマンス最適化ファームウェア１３０を読み出し実行する図１の実施形態のコンピュータシステム１０に適応され、コンピュータシステム１０は本実施形態の動作フローを実行する。ステップＳ４１０において、コンピュータシステム１０が起動又はブートされると、プロセッサ２００はディスプレイを介しユーザインターフェイスを表示するため、パフォーマンス最適化ファームウェア１３０を実行する。ユーザインターフェイスは２つのオプションを表示してよく、２つのオプションは手動設定オプションと自動パフォーマンス最適化オプションであってよい。ステップＳ４２０において、コンピュータシステム１０は、マウス又はキーボードといった入力装置を介し、外部制御命令を受け取ってよい。ステップＳ４３０において、プロセッサ２００は、外部制御命令が自動パフォーマンス最適化オプションを選択するものか、又は手動設定オプションを選択するものかを判定してよい。外部制御命令が自動パフォーマンス最適化オプションを選択するものであるとき、プロセッサ２００はステップＳ４４０を実行する。ステップＳ４４０において、プロセッサ２００は、図２、又は図３Ａと図３Ｂの実施形態に示されるようなパフォーマンス最適化方法を実行するため、自動パフォーマンス最適化オプションを実行する。ただし、外部制御命令が手動設定オプションを選択するものであるとき、プロセッサ２００は、外部制御命令（ユーザの更なる設定）に応じて、ＳＳＤ１００のアクセス速度の増加設定又は減少設定を設定する。例えば、増加設定は、上述した実施形態における第１の閾値比率と所定の増加比率を含み、減少設定は、上述した実施形態における第２の閾値比率と所定の減少比率を含んでよい。このため、本実施形態のユーザインターフェイスの動作フローは、ユーザにＳＳＤ１００のアクセス速度を柔軟に調整する機能を提供する。
【００２１】
まとめると、本発明のソリッドステートドライブ及びソリッドステートドライブのパフォーマンス最適化方法は、ＳＳＤのキュー深度の使用比率を自動的に判定し、ＳＳＤの動作温度を検出するよう適応され、これによりＳＳＤの使用比率と動作温度に応じてＳＳＤのアクセス速度を対応して調整する。このため、本発明のＳＳＤ及びＳＳＤのパフォーマンス最適化方法は、ＳＳＤの動作パフォーマンスを最適化して、アクセス速度増加又はアクセス速度減少を効果的に達成することができる。
【００２２】
当業者にとって、本発明の範囲又は精神から逸脱することなく、開示された実施形態に対し様々な改変及び変更を行うことができることは明らかであろう。上記を鑑み、本発明は、以下の特許請求の範囲及びそれらの均等物の範囲内にあるという条件で、改変及び変形を網羅することが意図される。
【産業上の利用可能性】
【００２３】
本発明のソリッドステートドライブ及びソリッドステートドライブのパフォーマンス最適化方法は、データ記憶装置の設定及び製造に適用できる。
【符号の説明】
【００２４】
１０：コンピュータシステム
１００：ソリッドステートドライブ（ＳＳＤ）
１１０：ＳＳＤコントローラ
１２０：メモリ
１３０：パフォーマンス最適化ファームウェア
２００：プロセッサ
Ｓ２１０〜Ｓ２３０、Ｓ３１０〜Ｓ３７２、Ｓ４１０〜Ｓ４５０：ステップ
【図１】
2020187740.tif 000003
【図２】
2020187740.tif 000004
【図３Ａ】
2020187740.tif 000005
【図３Ｂ】
2020187740.tif 000006
【図４】
2020187740.tif 000007
【外国語明細書】
2020187740000001.pdf