(57)【要約】      （修正有）【課題】フラッシュ・ストレージ・プロセッサを有するハイブリッド型ハードディスク・ドライブを提供する。【解決手段】フラッシュ・ストレージ・コンポーネント２１０とハードディスク集積回路チップ２１４に通信可能に結合され、ホスト・インタフェイス２０８に接続されるハイブリッド型フラッシュ・ストレージ・プロセッサ２０４を含む。集積回路チップ２１４は、ハードディスク・ドライブ２１８に通信可能に結合された読み取り／書き込みチャネル・デバイス、および該チャネル・デバイスに結合されたハードディスク・ドライブ・コントローラを含む。フラッシュ・ストレージ・プロセッサ２０４は、命令がハードディスク・ドライブにアクセスする指令のときには、集積回路チップ２１４に命令を供給し、命令がフラッシュ・ストレージ・コンポーネント２１０にアクセスする指令のときには、フラッシュ・ストレージ・コンポーネント２１０にアクセスする。【選択図】図２
2014167789.tif 000002
【特許請求の範囲】
【請求項１】
装置であって、
フラッシュ・ストレージ・コンポーネントに通信可能に結合すると共に集積回路チップに通信可能に結合するように構成されるフラッシュ・ストレージ・プロセッサであって、前記集積回路チップが、
ハードディスク・ドライブ・アセンブリに通信可能に結合するように構成される読み取り／書き込みチャネル・デバイスと、
読み取り／書き込みチャネル・デバイスに動作可能に結合されたハードディスク・ドライブ・コントローラであって、前記読み取り／書き込みチャネル・デバイスを動作させて、前記ハードディスク・ドライブ・アセンブリに対しデータを格納および抽出するように構成されるハードディスク・ドライブ・コントローラと
を含む、フラッシュ・ストレージ・プロセッサを備えており、
前記フラッシュ・ストレージ・プロセッサは、命令が前記ハードディスク・ドライブ・アセンブリにアクセスする指令を示すときには、前記命令を前記集積回路チップに供給し、前記命令が前記フラッシュ・ストレージ・コンポーネントにアクセスする指令を示すときには、前記フラッシュ・ストレージ・コンポーネントにアクセスするように構成される、装置。
【請求項２】
請求項１記載の装置において、前記フラッシュ・ストレージ・プロセッサは、前記命令が前記ハードディスク・ドライブ・アセンブリにアクセスする指令を示すときには、前記集積回路チップに、電力ダウン状態から電力アップ状態に移行させるように構成される、装置。
【請求項３】
請求項１記載の装置において、前記フラッシュ・ストレージ・プロセッサが、前記ハードディスク・ドライブ・アセンブリまたは前記フラッシュ・ストレージ・コンポーネントの内少なくとも一方に、ＤＥＶＳＬＰ信号に応答して電力ダウン状態に入らせるように構成される、装置。
【請求項４】
請求項１記載の装置において、前記フラッシュ・ストレージ・プロセッサがホスト・デバイスに通信可能に結合されるように構成され、該ホスト・デバイスが前記命令を前記フラッシュ・ストレージ・プロセッサに発出するように構成される、装置。
【請求項５】
請求項４記載の装置において、前記ホスト・デバイスが、少なくとも実質的に同時の命令を前記フラッシュ・ストレージ・プロセッサに発出するように構成され、前記少なくとも実質的に同時の命令の内の少なくとも１つは前記ハードディスク・ドライブ・アセンブリにアクセスするための指令を表し、前記少なくとも実質的に同時の命令の内の少なくとも他の１つは、前記フラッシュ・ストレージ・コンポーネントにアクセスするための指令を示す、装置。
【請求項６】
前記フラッシュ・ストレージ・コンポーネントは、ＮＡＮＤフラッシュ・メモリ・セルのアレイを含む、請求項1記載の装置。
【請求項７】
前記フラッシュ・ストレージ・プロセッサが、媒体回転命令を前記集積回路チップに供給すると共に、前記フラッシュ・メディア命令を並列に処理する、請求項１記載の装置。
【請求項８】
システムであって、
複数の命令を発出するように構成されるホスト・デバイスと、
前記ホスト・デバイスに、フラッシュ・ストレージ・コンポーネントに、および集積回路チップに通信可能に結合されたフラッシュ・ストレージ・プロセッサであって、前記集積回路チップが、
ハードディスク・ドライブ・アセンブリに通信可能に結合される読み取り／書き込みチャネル・デバイスと、
前記読み取り／書き込みチャネル・デバイスに動作可能に結合されるハードディスク・ドライブ・コントローラであって、前記ハードディスク・ドライブ・アセンブリに対しデータを格納および抽出するために、前記読み取り／書き込みチャネル・デバイスを動作させるように構成される、ハードディスク・ドライブ・コントローラと
を含むフラッシュ・ストレージ・プロセッサと
を備え、
前記フラッシュ・ストレージ・プロセッサは、前記複数の命令の内の少なくとも１つの命令が前記ハードディスク・ドライブ・アセンブリにアクセスするための指令を示すときには、前記複数の命令の内の少なくとも１つの命令を前記集積回路チップに供給し、前記複数の命令の内の前記少なくとも１つの命令が前記フラッシュ・ストレージ・コンポーネントにアクセスするための指令を示すときには、前記フラッシュ・ストレージ・コンポーネントにアクセスするように構成される、システム。
【請求項９】
請求項８記載のシステムにおいて、前記フラッシュ・ストレージ・プロセッサは、前記命令が前記ハードディスク・ドライブ・アセンブリにアクセスするための指令を示すときには、前記集積回路チップに、電力ダウン状態から電力アップ状態に移行させるように構成される、システム。
【請求項１０】
請求項８記載のシステムにおいて、前記複数の命令の内の前記少なくとも１つの命令が、データを格納するための書き込み指令またはデータを読み取るための読み取り指令の内の少なくとも一方を示す、システム。
【請求項１１】
請求項８記載のシステムにおいて、前記命令が少なくとも実質的に同時の命令であり、前記少なくとも実質的に同時の命令の内の少なくとも１つが、前記ハードディスク・ドライブ・アセンブリにアクセスするための指令を示し、前記少なくとも実質的に同時の命令の内の少なくとも他の１つが、前記フラッシュ・ストレージ・コンポーネントにアクセスするための指令を示す、システム。
【請求項１２】
請求項８記載のシステムにおいて、前記フラッシュ・ストレージ・プロセッサは、前記ハードディスク・ドライブ・アセンブリまたは前記フラッシュ・ストレージ・コンポーネントの内の少なくとも一方に、ＤＥＶＳＬＰ信号に応答して電力ダウン状態に入らせるように構成される、システム。
【請求項１３】
請求項８記載のシステムにおいて、前記フラッシュ・ストレージ・プロセッサは、シリアルＡＴＡ通信インタフェイスまたは周辺機器相互接続エクスプレス通信インタフェイスの内の少なくとも一方を介して前記ホスト・デバイスに通信可能に結合される、システム。
【請求項１４】
請求項８記載のシステムにおいて、前記フラッシュ・ストレージ・プロセッサは、媒体回転命令を前記集積回路チップに供給すると共に、前記フラッシュ・メディア命令を並列に処理するように構成される、システム。
【請求項１５】
方法であって、
フラッシュ・ストレージ・コンポーネントにおいて、複数のストレージ・コンポーネントの内の少なくとも１つのストレージ・コンポーネントにアクセスするために、命令を受け取るステップであって、前記複数のストレージ・コンポーネントが、少なくとも１つのフラッシュ・ストレージ・コンポーネントおよび少なくとも１つのハードディスク・ドライブ・アセンブリを含む、ステップと、
前記複数のストレージ・コンポーネントの内のどのストレージ・コンポーネントが前記命令に基づいてアクセスされるべきかを判断するステップと、
前記命令が前記少なくとも１つのハードディスク・ドライブ・アセンブリにアクセスする指令を示すときには、前記命令を集積回路チップに供給するステップであって、前記集積回路チップが、前記ハード・ドライブ・アセンブリに通信可能に結合された読み取り／書き込みチャネル・デバイスと、該読み取り／書き込みチャネル・デバイスに動作可能に結合されたハードディスク・ドライブ・コントローラとを含み、該ハードディスク・ドライブ・コントローラが、前記読み取り／書き込みチャネル・デバイスを動作させて、前記少なくとも１つのハードディスク・ドライブ・アセンブリに対しデータを格納および抽出するように構成される、ステップと、
前記命令が前記少なくとも１つのフラッシュ・ストレージ・コンポーネントにアクセスする指令を示すときには、前記少なくとも１つのフラッシュ・ストレージ・コンポーネントにアクセスするステップと
を含む方法。
【請求項１６】
請求項１５記載の方法において、命令を受け取る前記ステップが更に、少なくとも実質的に同時の命令をホスト・デバイスから受け取るステップを含み、前記実質的に同時の命令の内の少なくとも１つが、前記少なくとも１つのフラッシュ・ストレージ・コンポーネントにアクセスする指令を示し、前記実質的に同時の命令の内の少なくとも他の１つは、前記少なくとも１つのハードディスク・ドライブ・アセンブリにアクセスする指令を示す、方法。
【請求項１７】
前記少なくとも１つのフラッシュ・ストレージ・コンポーネントがＮＡＮＤフラッシュ・メモリ・セルのアレイを備える、請求項１５記載の方法。
【請求項１８】
前記集積回路チップに電力ダウン状態から電力オン状態に移行させるステップを更に含む、請求項１５記載の方法。
【請求項１９】
前記命令が、データを格納するための書き込み動作またはデータを読み取るための読み取り動作の内の少なくとも一方を示す、請求項１５記載の方法。
【請求項２０】
請求項１５記載の方法において、命令を受け取る前記ステップが更に、フラッシュ・ストレージ・プロセッサにおいて命令を受け取って、複数のストレージ・コンポーネントの内少なくとも１つのストレージ・コンポーネントにアクセスするステップを含み、前記複数のストレージ・コンポーネントが少なくとも１つのフラッシュ・ストレージ・コンポーネントおよび少なくとも１つのハードディスク・ドライブ・アセンブリを含み、前記命令がホスト・デバイスから発出され、前記ホスト・デバイスが前記フラッシュ・ストレージ・プロセッサに通信可能に結合される、方法。
【発明の詳細な説明】
【技術分野】
【０００１】
[0001]  本発明は、ハードディスク・ドライブ・システムに関し、より具体的には、フラッシュ・ストレージ・プロセッサを有するハイブリッド型ハードディスク・ドライブに関するものである。
【背景技術】
【０００２】
[0002]  パーソナル・コンピュータ、サーバ、モバイル・コンピューティング・デバイス、ネットワーキング・デバイス等のようなコンピューティング・デバイスは、デジタル・データを保持および供給するためのコンピュータ・ストレージ・コンポーネントを含む。コンピュータ・ストレージ・コンポーネントは、デバイスの電源がダウンしているときはデータを保持しない揮発性ストレージ・コンポーネントから、デバイスの電源がダウンしているときでもデータを保持する不揮発性ストレージ・コンポーネントにまで及ぶ。揮発性ストレージ・コンポーネントは、通例、動的ランダム・アクセス・メモリ（ＤＲＡＭ）のようなランダム・アクセス・メモリ・デバイスを含む。ランダム・アクセス・メモリ・デバイスは、デバイスの低レイテンシ特性に因り利用される。不揮発性ストレージ・コンポーネントは、通例、ハードディスク・ドライブおよびフラッシュ・メモリ・デバイスを含む。これらの種別のストレージ・コンポーネントは、長期間持続する(long-term persistent)ストレージ用に利用される。
【０００３】
[0003]  図１は、従来技術のハイブリッド型ハードディスク・ドライブ（ＨＨＤＤ）システム１００を示す。図示のように、システム１００はオンチップ・ハードディスク・ドライブ・システム（チップ上のハードディスク・ドライブ・システム）１０２を含み、シリアルＡＴＡ（ＳＡＴＡ）通信インタフェイス１０６を介してホスト・デバイス１０４に通信可能に結合される。オンチップ・ハードディスク・ドライブ・システム１０２はまた、ハードディスク・ドライブ・アセンブリ（ＨＤＡ）１０８や、更にはＮＡＮＤフラッシュ・メモリ・コントローラ１１０にも通信可能に結合される。ＮＡＮＤフラッシュ・メモリ・コントローラ１１０は、ＮＡＮＤフラッシュ・ストレージ・コンポーネント１１２に通信可能に結合され、また、ＮＡＮＤフラッシュ・ストレージ・コンポーネント１１２の動作を制御するように構成される。ＮＡＮＤフラッシュ・ストレージ・コンポーネント１１２は、アレイ構成内に配置される複数のＮＡＮＤフラッシュ・メモリ・セルを備える。この実装では、オンチップ・ハードディスク・ドライブ・システム１０２は、通例、フラッシュ管理ハードウェアおよびファームウェアを、内部に格納するアルゴリズムと同様に収容して、フラッシュ・ストレージ・コンポーネント１１２内に格納されるデータを判断する。
【発明の概要】
【発明が解決しようとする課題】
【０００４】
オンチップ・ハードディスク・ドライブ・システム１０２は、回転式磁気ストレージ動作およびフラッシュ・ストレージ動作の間でリソース（例えば、バッファ・メモリ、プロセッサ、データ・パス等）を共有することが必要とされる。加えて、図１に示すオンチップ・ハードディスク・ドライブ・システムのようなハイブリッド型を利用可能なオンチップ・ハードディスク・ドライブ・システムは、２つの異なる隣接したストレージ媒体をサポートしなければならない。つまり、オンチップ・ハードディスク・ドライブ・システムへの修正は、異なる（磁気）ヘッドおよび媒体をサポートするために変更が必要とされる場合、またはフラッシュ・ストレージ・コンポーネントに対して変更がなされる場合に要求される。図１に示すハードディスク・ドライブ・システム１００は、各ストレージ媒体にサービス提供するのに２つの独立したハードディスク・ドライブ・システムを必要とする。
【課題を解決するための手段】
【０００５】
[0004]  ハイブリッド型ハードディスク・ドライブにおける動作を制御するにように構成される装置について説明する。１つ以上の実装では、装置は、フラッシュ・ストレージ・コンポーネントを集積回路チップまで通信可能に結合するように構成されるフラッシュ・ストレージ・プロセッサを含む。集積回路チップ（例えば、オンチップ・ハードディスク・ドライブ・システム）は、ハードディスク・ドライブ・アセンブリに通信可能に結合されるように構成される読み取り／書き込みチャネル・デバイス、および当該読み取り／書き込みチャネル・デバイスに動作可能に結合されるハードディスク・ドライブ・コントローラを含む。ハードディスク・ドライブ・コントローラは、読み取り／書き込みチャネル・デバイスを動作させ、ハードディスク・ドライブ・アセンブリ上にデータを格納および抽出するように構成される。フラッシュ・ストレージ・プロセッサは、命令がハードディスク・ドライブ・アセンブリにアクセスするための指令を示すときには、該命令を集積回路チップに供給するように構成され、また、命令がフラッシュ・ストレージ・コンポーネントにアクセスするための指令を示すときには、フラッシュ・ストレージ・コンポーネントにアクセスするように構成される。
【０００６】
[0005]  本摘要は、単純な形態で概念の選択を導入するために設けたものであり、この概念について以下の発明の詳細な説明に更に説明する。本摘要は、特許請求する主題の鍵となる特徴または必須の特徴を特定するのを意図するものではなく、また、特許請求する主題の範囲を決定する際の支援として使用するのを意図するものでもない。
【０００７】
[0006]  添付の図面を参照しながら発明の詳細な説明について説明する。本説明および図面での異なる例における同一の符号が類似または同一の項目を示すのに使用されることもある。
【図面の簡単な説明】
【０００８】
【図１】[0007]  図１は、従来技術のハイブリッド型ハードディスク・ドライブ・システムについてのブロック図である。
【図２】[0008]  図２は、本開示の例示の実施による、ハイブリッド型ハードディスク・ドライブ・システムについてのブロック図である。
【図３】[0009]  図３は、本開示の例示の実施による、例示のオンチップ・ハードディスク・ドライブのコンポーネント、例示のフラッシュ・ストレージ・プロセッサ、および例示のフラッシュ・ストレージ・コンポーネントの内の一部について示すブロック図である。
【図４】[0010]  図４は、本開示による、図２に示したハイブリッド型ディスク・ドライブ・システムのようなハイブリッド型ディスク・ドライブ・システムの動作を制御するための方法の概略図である。
【発明を実施するための形態】
【０００９】
[0011]  図２は、本開示による、ハイブリッド型ハードディスク・ドライブ（ＨＨＤＤ）２０２を含むシステム２００を示す。ハイブリッド型ハードディスク・ドライブ２０２は、以下により詳細に説明するように、システム１００に対して、改良した読み取り性能を提供することができる。図示のように、ハイブリッド型ハードディスク・ドライブ２０２はフラッシュ・ストレージ・プロセッサ２０４（例えば、ハイブリッド型フラッシュ・ストレージ・プロセッサ）を含み、当該プロセッサは、通信インタフェイス２０８を介してホスト・デバイス２０６に通信可能に接続される。一実施形態では、通信インタフェイス２０８は、シリアルＡＴＡ（ＳＡＴＡ）の通信インタフェイスである。別の実施形態では、通信インタフェイス２０８は、周辺機器相互接続エクスプレス（ＰＣＩｅ）の通信インタフェイスである。図示のように、フラッシュ・ストレージ・プロセッサ２０４はまた、通信インタフェイス２１２を介してフラッシュ・ストレージ・コンポーネント２１０に通信可能に接続される。一実施形態では、通信インタフェイス２１２は、オープンＮＡＮＤフラッシュ・インタフェイス（ＯＮＦＩ）プロトコルを利用して、ストレージ・プロセッサ２０４およびフラッシュ・ストレージ・コンポーネント２１０の間で通信する。フラッシュ・ストレージ・プロセッサ２０４はまた、通信インタフェイス２１６を介してオンチップ・ハードディスク・ドライブ・システム（ＨＤＤＳｏＣ）２１４にも通信可能に接続される。オンチップ・ハードディスク・ドライブ・システム２１４は１つ以上の集積回路デバイスを有する集積回路チップを備える。１つ以上の集積回路デバイスは、本明細書および図３において更に詳細に説明するように、ハードディスク・ドライブの制御機能を提供する。一実施形態では、通信インタフェイス２１６は、ＳＡＴＡ通信インタフェイスを含む。システム２００は数多くの実施形態によるオンチップ・ハードディスク・ドライブ・システムを、ファームウェアの修正しつつ、およびファームウェアを修正することなく、利用できるものと考察される。したがって、オンチップ・ハードディスク・ドライブ・システムは、ボリュームおよびコスト面での利益を供するために、ハイブリッド型または非ハイブリッド型ドライブについて再利用することができる。加えて、非ハイブリッド型ドライブは、ハイブリッド型として利用可能なオンチップ・ハードディスク・ドライブ・システムにより負荷を掛けられることにならず、コストを削減する。
【００１０】
[0012]  本明細書においてより詳細に説明するように、フラッシュ・ストレージ・プロセッサ２０４はホスト・デバイス２０６から１つ以上の命令を受け取り、その命令がフラッシュ・ストレージ・コンポーネント２１０にアクセスするための命令であるかについて、即ち、その命令が回転式磁気媒体へのデータの格納を要求しているのかについて判断するように構成される。フラッシュ・ストレージ・プロセッサ２０４は、命令がフラッシュ・ストレージ・コンポーネント２１０に向けられていないと判断する（例えば、命令がフラッシュ・ストレージ・プロセッサ２０４にフラッシュ・ストレージ・コンポーネント２１０へのアクセスをさせない）ときには、フラッシュ・ストレージ・プロセッサ２０４は、更なる処理のためにオンチップ・ハードディスク・ドライブ・システム２１４に命令を供給するように構成される。他の実施形態では、フラッシュ・ストレージ・プロセッサ２０４は、システム２００内で電力を管理するように構成される。例えば、フラッシュ・ストレージ・プロセッサ２０４は、命令がオンチップ・ハードディスク・ドライブ・システム２１４に向けられていると当該プロセッサ２０４が判断するときには、オンチップ・ハードディスク・ドライブ・システム２１４に対し、電力ダウン状態（例えば、オンチップ・ハードディスク・ドライブ・システム２１４の電力ダウン状態、または節電(power conservation)状態にある）から電力オン状態に移行させるように構成される。本開示の実施形態の中には、オンチップ・ハードディスク・ドライブ・システム２１４が所定の時間量にわたりアクセスされないときに、当該オンチップ・ハードディスク・ドライブ・システム２１４は、システム２００内の電力を節約するための電力ダウン状態となる（例えば、オンチップ・ハードディスク・ドライブ・システム２１４に向けられた如何なる命令もホスト・デバイス２０６が発出しないことによる電力ダウン）ものもある。本開示の一実施形態では、フラッシュ・ストレージ・プロセッサ２０４は、ブリッジとして機能して、周辺機器相互接続エクスプレス通信インタフェイスのような様々な通信インタフェイスをサポートするのに利用される。したがって、オンチップ・ハードディスク・ドライブ・システム２１４は、、いずれの追加の修正も必要とすることなく、周辺機器相互接続エクスプレスのハイブリッド型ハードディスク・ドライブ・システムに対する周辺機器相互接続エクスプレス・ホスト間通信を許可する。
【００１１】
[0013]  フラッシュ・ストレージ・プロセッサ２０４は、当該プロセッサ２０４が、発出された命令についてストレージ・コンポーネント２１０にアクセスし、命令が規定する動作を実行する要求を示すことを判断したときに、フラッシュ・ストレージ・コンポーネント２１０にアクセスするように構成される。例えば、発出された命令が読み取り命令（例えば読み取り動作）であるときには、フラッシュ・ストレージ・プロセッサ２０４は、フラッシュ・ストレージ・コンポーネント２１０内に格納されるデータにアクセスおよび検索するように構成される。他の例では、フラッシュ・ストレージ・プロセッサ２０４は、発出された命令が書き込み命令（例えば書き込み動作）であるときには、データにアクセスして、フラッシュ・ストレージ・コンポーネント２１０に書き込むように構成される。
【００１２】
[0014]  図３は、特定の実施形態のハイブリッド型ハードディスク・ドライブ２０２を含むシステム３００を例示する。図３に示すように、フラッシュ・ストレージ・コンポーネント２１０は、行または列に配置される非不揮発性メモリ・セルのようなメモリ・セルのアレイ３０２を含む（例えば、後述するように、各メモリ・セルは、ビット線およびワード線の交差点においてＮＡＮＤデバイスを含む）。様々な実施形態についてＮＡＮＤフラッシュ・メモリ・アレイを参照して主に説明する。しかしながら、当該様々な実施態様はメモリ・アレイ３０２の特定の構造には限定されない。
【００１３】
[0015]  図３に示すように、行復号化回路３０４および列復号化回路３０６が設けられて、メモリ・アレイに供給するアドレス信号を復号化する。メモリアレイ３０２にアクセスする（例えば、メモリ・セルの１つ以上のブロックにアクセスする）ために、アドレス信号が受信および復号化される。フラッシュ・ストレージ・プロセッサ２０４は、フラッシュ・ストレージ・コンポーネント２１０からのデータの出力と同様にして、フラッシュ・ストレージ・コンポーネント２１０に対し、命令、アドレスおよびデータについての入力を管理するように構成される。例えば、フラッシュ・ストレージ・プロセッサ２０４は、行復号化回路３０４および列復号化回路３０６に通信化能に接続されて、復号化の前にアドレス信号をラッチするアドレス・レジスタ３０８を含む。フラッシュ・ストレージ・プロセッサ２０４は、フラッシュ・ストレージ・コンポーネント２０４から受信するデータ信号についてアナログ・デジタル変換を提供するための読み取り／書き込みチャネル・デバイス３０９を動作可能に結合（例えばこれと通信）する。
【００１４】
[0016]  読み取り／書き込みチャネル・デバイス３０９は、サンプル・ホールド回路３１０に通信可能に接続される。サンプル・ホールド回路３１０は、読み取り／書き込みチャネル・デバイス３０９からアナログ電圧レベルとして受け取ったデータをラッチする（例えば、入来および出立データをラッチする）ように構成される。本開示の実施形態の中には、サンプル・ホールド回路３１０は、メモリ・セルに書き込まれることになるデータを表す入来電圧信号、またはメモリ・セルから検知される閾値電圧を示す出立電圧信号のいずれかをサンプルするために、コンデンサまたは他のアナログ・ストレージ・デバイスを含むものもある。サンプル・ホールド回路３１０は更に、より強いデータ信号を外部デバイスに提供するために、サンプルされた電圧の増幅および／またはバッファを提供してもよい。
【００１５】
[0017]  書き込み動作の間、各メモリ・セルの電圧レベルを示す電圧がサンプル・ホールド回路３１０で保持されたレベルに一致するまで、メモリ・アレイ３０２のターゲット・メモリ・セルはプログラム可能である。実施形態では、書き込み動作は差動検知デバイスを用いて実現することができ、保持されたＶｔレベルをターゲット・メモリ・セルの閾値電圧と比較する。例えば、メモリ・セルの閾値電圧を所望の値に到達するかまたは超過するまで増加させるために、プログラミング・パルスをターゲットメモリ・セルに印加することができる。読み取り動作の間は、ターゲット・メモリ・セルにおけるＶｔレベルは、アナログ信号として直接か、またはアナログ信号のデジタル化した表現としてのどちらか（アナログからデジタル／デジタルからアナログ［ＡＤＣ／ＤＡＣ］の機能がメモリアレイの外部にまたはその内部に設けられるかに依存する）により、プロセッサに移すためにサンプル・ホールド回路３１０に通される。
【００１６】
[0018]  セルの閾値電圧は、様々な方法で決定することができる。例えば、ワード線電圧は、ターゲット・メモリ・セルが活性化されるときの位置でサンプルされる。他の例では、高められた電圧は、ターゲット・メモリ・セルの第１のソース／ドレイン側に印加される。そして、閾値電圧は、ターゲット・メモリ・セルの制御ゲート電圧とターゲット・メモリ・セルの他のソース／ドレイン側の電圧との間の差分が採用される。電圧をコンデンサに接続することによって、電荷がコンデンサと共有されて、サンプルされた電圧を格納する。サンプルされた電圧は閾値電圧に等しい必要はないが、その電圧を表す必要があるものと理解される。メモリ・セルの制御ゲートに対し高められた電圧を印加し、またメモリ・セルの制御ゲートに公知の電圧を印加する場合には、メモリ・セルの第２ソース／ドレイン側で生じた電圧をデータ信号とするのがよい。何故ならば、この生じた電圧は、メモリ・セルの閾値電圧を示すものだからである。
【００１７】
[0019]  図２および図３に示すように、オンチップ・ハードディスク・ドライブ・システム２１４はハード・ドライブ・アセンブリ（ＨＤＡ）２１８に通信可能に接続される。ハード・ドライブ・アセンブリ２１８は、磁気層が被覆される１つ以上のハードディスク・プラッタ３０９を含む。ハードディスク・プラッタ３０９は、磁気データの形態でデータを格納するように構成される。より具体的には、磁気層は、１および０の２進数で表現する磁気遷移を格納する。図３に示すように、ハード・ドライブ・アセンブリ２１８は更に、ハードディスク・プラッタ３０９を（例えば、読み取りおよび書き込み動作の間）回転させるように構成されるスピンドル・モータ３１１を含む。上述したとおり、オンチップ・ハードディスク・ドライブ・システム２１４に向けられた命令は、フラッシュ・ストレージ・プロセッサ２０４によってオンチップ・ハードディスク・ドライブ・システム２１４に供給される（例えば、オンチップ・ハードディスク・ドライブ・システム２１４に向けられた命令は、フラッシュ・ストレージ・プロセッサ２０４を介してオンチップ・ハードディスク・ドライブ・システム２１４に通される）。つまり、命令（例えば、ホスト・デバイス２０６によって発出された命令）がシステム２００のオンチップ・ハードディスク・ドライブ・システム２１４部に向けられるときには、フラッシュ・ストレージ・プロセッサ２０４は、通信インタフェイス２０８および通信インタフェイス２１６の間のブリッジとして機能する。
【００１８】
[0020]  オンチップ・ハードディスク・ドライブ・システム２１４はバッファ３１２を含む。このバッファは、オンチップ・ハードディスク・ドライブ・システム２１４の制御に関するデータを格納し、および／または、データをバッファして、データがより大規模なデータ・ブロックとして収集され送信されるのを可能にする。バッファ３１２は、ダイナミック・ランダム・アクセス・メモリ（ＤＲＡＭ）または他のタイプの低レイテンシ・メモリを採用する。特定の実施形態では、バッファ３１２は、回転式磁気アプリケーション用に最適化されたダブル・データ・レート（ＤＤＲ）の同期型ＤＲＡＭを採用する。オンチップ・ハードディスク・ドライブ・システム２１４は更にプロセッサ３１４を含む。プロセッサ３１４は、スピンドル制御処理のような、オンチップ・ハードディスク・ドライブ・システム２１４の動作に関連した処理を実施する。
【００１９】
[0021]  オンチップ・ハードディスク・ドライブ・システム２１４はまた、ストレージ・プロセッサ２０４と通信するハード・ディスク・コントローラ（ＨＤＣ）３１６を含む。ハードディスク・コントローラ３１６はまた、プロセッサ３１４、スピンドル／ボイス・コイル・モータ（ＶＣＭ）ドライバ３１８、および／または読み取り／書き込みチャネル・デバイス３２０とも通信する。このように、プロセッサ３１４は、ハードディスク・コントローラ３１６に通信可能に結合され、ハードディスク・コントローラ３１６から命令を受け取るように構成される。実施形態の中には、ハードディスク・コントローラ３１６は、読み取り／書き込みチャネル・デバイス３２０を動作させて、ハード・ドライブ・アセンブリ２１８にデータを格納および抽出するように構成されるものもある。受け取った命令（例えば、ホスト・デバイス２０６から受け取った命令）に基づいて、プロセッサ３１４は、ハードディスク・コントローラ３１６に対し、ハード・ドライブ・アセンブリ２１８にアクセスさせるように構成される。読み取り／書き込みチャネル・デバイス３２０は、ハード・ドライブ・アセンブリ２１８から受信し／ハード・ドライブ・アセンブリ２１８に送信したデータ信号のアナログ・デジタル変換を提供する。スピンドル／ＶＣＭドライバ３１８は、スピンドル・モータ３１１を制御するように構成される。スピンドル・モータ３１１はプラッタ３０９を所望の速度で回転させる。スピンドル／ＶＣＭドライバ３１８はまた、プラッタ３０９に関して読み取り／書き込みアーム３１９を配置させる制御信号を生成するようにも構成される。したがって、プロセッサ３１４は、スピンドル／ＶＣＭドライバ３１８が読み取り／書き込みアーム３１９への制御信号を発出するように、ハードディスク・コントローラ３１６に指示させることができる。一旦配置されると、データは、読み取り／書き込みチャネル・デバイス３２０を介してハード・ドライブ・プラッタ３０９に読み込まれるか、または書き込まれることができる。図示のように、プリアンプ３２１は、ディスク・プラッタ３０９と読み取り／書き込みチャネル・デバイス３２０の間で通信可能に結合される。読み取り動作の間、プリアンプ３２１は、ディスク・プラッタ３０９からアクセスされる微小な(minute)アナログ信号を増幅させるように構成される。そして、読み取り／書き込みデバイス３２０は、受信したアナログ信号を復号化およびデジタル化して、ディスク・プラッタ３０９に対して書き込まれた元の情報を再生成する。プリアンプ３２１は、書き込み動作の間、読み取り／書き込みチャネル・デバイス３２０からディスク・プラッタ３０９に供給されるデータを増幅させるように構成される。
【００２０】
[0022]  図３に示すように、ホスト・デバイス２０６は、プロセッサ３２２およびメモリ３２４を含む。上述したとおり、ホスト・デバイス２０６は、ハイブリッド型ハードディスク・ドライブ２０２に１つ以上の命令を供給するように構成される。例えば、ホスト・デバイス２０６のプロセッサ３２２は、ハイブリッド型ハード・ディスク・ドライブ２０２に対し、書き込み命令（即ち、書き込み動作、書き込み指令）を発出させ、同様に、データを書込み動作中に格納させるように構成される。他の例では、ホスト・デバイス２０６のプロセッサ３２２は、ハイブリッド型ハードディスク・ドライブ２０２に対し、読み取り命令（すなわち、読み取り動作、読み取り指令）を発出させるように構成される。
発出された命令の目的とする宛先に基づいて、フラッシュ・ストレージ・プロセッサ２０４は、フラッシュ・ストレージ・コンポーネント２１０にアクセスするか、またはオンチップ・ハードディスク・ドライブ・システム２１４に発出された命令を供給する（例えば、ハードディスク・コントローラ３１６に発出された命令を供給して、その結果、ハードディスク・コントローラ３１６は当該発出された命令ごとにハード・ドライブ・アセンブリ２１８にアクセスすることができる）ように構成される。加えて、フラッシュ・ストレージ・プロセッサ２０４は、システム２００のオンチップ・ハードディスク・ドライブ・システム２１４部の電力状態を管理するように構成される。例えば、オンチップ・ハードディスク・ドライブ・システム２１４が所定の時間量の後にアクセスされなかったときには、プロセッサ２０４は、当該オンチップ・ハードディスク・ドライブ・システム２１４に（ハード・ドライブ・アセンブリ２１８と同様に）、電力オン状態から電力ダウン状態に移行させるように構成される。他の例では、プロセッサは命令がオンチップ・ハードディスク・ドライブ・システム２１４に向けれれていると判断したときには、プロセッサ２０４は、オンチップ・ハードディスク・ドライブ・システム２１４に（ハード・ドライブ・アセンブリ２１８と同様に）、電力ダウン状態（例えば、オンチップ・ハードディスク・ドライブ・システム２１４および／またはハード・ドライブ・アセンブリ２１８が電力ダウン状態にある場合）から電力オン状態に移行させるように構成される。
【００２１】
[0023]  ハイブリッド型ハードディスク・ドライブ２０２において、回動式磁気メモリ部（例えば、オンチップ・ハードディスク・ドライブ・システム２１４）およびフラッシュ・メモリ部（例えば、フラッシュ・ストレージ・コンポーネント２１０）は、相互に独立であるものと考察される。つまり、ハイブリッド型ハードディスク・ドライブ２０２は、オンチップ・ハードディスク・ドライブ・システム２１４がホスト・コンピュータ２０６によってアクセスされていないときには電力を節約するように構成される。
加えて、フラッシュ・メモリ部および回転式磁気メモリ部への読み取りおよび書き込み命令は、本開示の独立の構成に因り、（ハードウェアを共有することのない）同時の動作とすることできる。本開示の読み取り性能は、ハード・ドライブ・アセンブリ２１８と比較してより低い読み取り／書き込みレイテンシを有するフラッシュ・メモリ・コンポーネント２１０に因り、図１に示したハードディスク・ドライブ構成のような他のハイブリッド型ハードディスク・ドライブの構成に対し改良することができるものと考察される。本開示の実施形態では、システム２００が利用するホスト・インタフェイス・プロトコルは命令キューをサポートし、プロセッサ２０４が媒体回転要求（例えば命令）をオンチップ・ハードディスク・ドライブ・システム２１４に供給するのを可能にすると共に、フラッシュ媒体要求を並列にサービス提供（例えば処理）する。本開示の他の実施形態では、システム２００は、様々な電力の管理モードをサポートする。例えば、システム２００は、シリアルＡＴＡデバイス・スリープ（ＤｅｖＳｌｅｅｐ）電力の管理モードをサポートするように構成される。より具体的には、フラッシュ・ストレージ・プロセッサ２０４は、ホスト・デバイス２０６によって発出される電力ダウン命令（例えば、ＤＥＶＳＬＰ信号）に基づいて、システム２００内の電力を制御する（例えば、１つ以上のストレージ媒体を電力ダウン状態に入れる）ように構成される。本開示の他の例では、システム２００は周辺機器相互接続エクスプレス電力管理モードをサポートするように構成される。
【００２２】
[0024]  図４は、ハイブリッド型ハードディスク・ドライブの動作を制御するための例示の実施形態の方法４００を示す。図示のように、複数のストレージ・コンポーネントからストレージ・コンポーネント（例えば、フラッシュ・ストレージ・コンポーネント、ハードディスク・ドライブ・アセンブリ）にアクセスするための命令を受け取る（ブロック４０２）。上記により詳細に説明したとおり、ホスト・デバイス２０６は、ハイブリッド型ハードディスク・ドライブ２０２に命令を発出するように構成される。この命令は、フラッシュ・ストレージ・プロセッサ２０４（例えば、ハイブリッド型フラッシュ・ストレージ・プロセッサ）によって受け取られる。例えば、ホスト・デバイス２０６は、読み取りまたは書き込み命令をシステム２００に発出する。命令は、フラッシュ・ストレージ・プロセッサ２０４に向けられた、またはオンチップ・ハードディスク・ドライブ・システム２１４に向けられた１つ以上の指令を示し、プロセッサ２０４またはオンチップ・ハードディスク・ドライブ・システム２１４（例えば、ハードディスク・コントローラ３１６）に、各ストレージ・コンポーネント（フラッシュ・ストレージ・コンポーネント２１０またはハード・ドライブ・アセンブリ２１８）にアクセスさせる。例えば、ホスト・デバイス２０６は、読み取り命令を発出し、メモリ・アレイ３０２内に格納されたデータにアクセスするか、またはハード・ドライブ・アセンブリ２１８に格納されたデータにアクセスする。この例では、読み取り命令は、そこからデータにアクセスするためのストレージ・コンポーネントと格納されたアクセスするデータの位置とを特定するデータを含む。他の例では、ホスト・デバイス２０６は、書き込み命令を発して、メモリ・アレイ３０２にデータを格納するか、ハード・ドライブ・アセンブリ２１８にデータを格納するように構成される。この例では、書き込み命令は、データを書き込む先のストレージ・コンポーネント、データを格納する先の（例えば、書き込む）各ストレージ・コンポーネント内の位置、および特定されたストレージ・コンポーネント内に格納される（例えば、書き込まれる）ことになるデータについて書込むために、ストレージ・コンポーネントを特定するデータを含む。加えて、上記のとおり、ホスト・デバイス２０６は、フラッシュ・ストレージ・コンポーネント２１０に向けられた少なくとも１つの命令およびオンチップ・ハードディスク・システム２１４に向けられた少なくとも１つの他の命令と共に少なくとも実質的に同時の命令を発出するように構成される。
【００２３】
[0025]  決定は、どのストレージ・コンポーネントが命令に基づいてアクセスされることになるかにより行われる（ブロック４０４）。例えば、フラッシュ・ストレージ・プロセッサ２０４は、通信インタフェース２０８を介してホスト・デバイス２０６によって発行された命令を受け取る。フラッシュ・ストレージ・プロセッサ２０４は、発出された命令に基づいてアクセスされることになるストレージ・コンポーネントを決定するように構成される。上記のとおり、命令は、フラッシュ・ストレージ・コンポーネント２１０にアクセスするための読み取り若しくは書き込み動作を示すことができ、または、命令は、ハード・ドライブ・アセンブリ２１８にアクセスするための読み取り若しくは書き込み動作を示すことができる。
【００２４】
[0026]  図４に示すように、命令がハード・ドライブ・アセンブリにアクセスする指令を示すときには、当該命令はオンチップ・ハードディスク・ドライブ・システム（例えば、集積回路チップ）に供給される（ブロック４０６）。命令がオンチップ・ハードディスク・ドライブ・システム２１４に向けられているとフラッシュ・ストレージ・プロセッサ２０４が判断するときには、フラッシュ・ストレージ・プロセッサ２０４は、命令をオンチップ・ハードディスク・ドライブ・システム２１４に供給するように構成される。ハードディスク・コントローラ３１６は、フラッシュ・ストレージ・プロセッサ２０４から受け取った命令に基づいてハード・ドライブ・アセンブリ２１８にアクセスするように構成される。実施の中には、図４に示すように、フラッシュ・ストレージ・プロセッサが、オンチップ・ハードディスク・ドライブ・システムに、電力ダウン状態から電力オン状態に移行させるものもある（ブロック４０８）。上記により詳細に説明したように、フラッシュ・ストレージ・プロセッサ２０４は、オンチップ・ハードディスク・ドライブ・システム２１４に、電力ダウン状態から電力アップ状態に移行させる（命令を発出して電力ダウン状態から電力オン状態に移行する）。そしてその後に、一定の時間量の間、オンチップ・ハードディスク・ドライブ・システム２１４が非活性であること（例えば、オンチップ・ハードディスク・ドライブ・システム２１４に発出される命令が無いこと）のためにオンチップ・ハードディスク・ドライブ・システム２１４が電力ダウンとなることに因り、命令がオンチップ・ハードディスク・ドライブ・システム２１４に供給される。ハードディスク・ドライブ・アセンブリは、受け取った命令に基づいてアクセスされる（ブロック４１０）。ハードディスクコントローラ３１６は、ハード・ドライブ・アセンブリ２１８にアクセスし、発出された命令に基づいて動作を実行させるように構成される。実施形態の中には、ハードディスク・コントローラ３１６は、命令が書き込み動作を示すときに、データをハード・ドライブ・アセンブリ２１８に書き込み、格納させるように構成されるものもある。他の実施形態では、ハードディスク・コントローラ３１６は、命令が読み取り動作を示すときに、データをハード・アセンブリ２１８から読み取らせるように構成される。読み取りデータは、次いで、ホスト・デバイス２０６に供給される。
【００２５】
[0027]  図４に示すように、フラッシュ・ストレージ・コンポーネントは、命令がフラッシュ・ストレージ・コンポーネントにアクセスするための指令を示すときにアクセスされる（ブロック４１２）。フラッシュ・ストレージプロセッサ２０４は、命令がフラッシュ・ストレージ・コンポーネント２１０にアクセスする命令を示すときには、フラッシュ・ストレージ・コンポーネント２１０にアクセスするように構成される。例えば、フラッシュ・ストレージ・プロセッサ２０４は、データをＮＡＮＤメモリ・アレイ（例えばメモリ・アレイ３０２）のようなフラッシュ・ストレージ・コンポーネント２１０に書き込ませ、そして格納させるように構成される。他の例では、フラッシュ・ストレージ・プロセッサ２０４は、命令が読み取り動作であるときには、データをフラッシュ・ストレージ・コンポーネント２１０から読み取らせるように構成される。読み取られたデータは、次いでホスト・デバイス２０６に提供される。
【００２６】
[0028]  本主題を構造上の特徴および／または処理動作に特化して言語で説明してきたものの、添付の特許請求の範囲における主題は、先に説明した特定の特徴または行為に必ずしも限定されないことが理解されるべきである。むしろ、先に説明したの特定の特徴および行為は、請求項を実施する例示の形態として開示されるものである。
【図１】
2014167789.tif 000003
【図２】
2014167789.tif 000004
【図３】
2014167789.tif 000005
【図４】
2014167789.tif 000006
【外国語明細書】
2014167789000001.pdf