JP2009536767A - フラッシュインタフェースを有するハードディスクドライブを含む適応記憶システム - Google Patents

フラッシュインタフェースを有するハードディスクドライブを含む適応記憶システム Download PDF

Info

Publication number
JP2009536767A
JP2009536767A JP2009509862A JP2009509862A JP2009536767A JP 2009536767 A JP2009536767 A JP 2009536767A JP 2009509862 A JP2009509862 A JP 2009509862A JP 2009509862 A JP2009509862 A JP 2009509862A JP 2009536767 A JP2009536767 A JP 2009536767A
Authority
JP
Japan
Prior art keywords
lpdd
hpdd
data
disk drive
read data
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP2009509862A
Other languages
English (en)
Other versions
JP2009536767A5 (ja
Inventor
スタルジャ、サハット
ヤン、ユン
Original Assignee
マーベル ワールド トレード リミテッド
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by マーベル ワールド トレード リミテッド filed Critical マーベル ワールド トレード リミテッド
Publication of JP2009536767A publication Critical patent/JP2009536767A/ja
Publication of JP2009536767A5 publication Critical patent/JP2009536767A5/ja
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/0625Power saving in storage systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/26Power supply means, e.g. regulation thereof
    • G06F1/32Means for saving power
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/26Power supply means, e.g. regulation thereof
    • G06F1/32Means for saving power
    • G06F1/3203Power management, i.e. event-based initiation of a power-saving mode
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/26Power supply means, e.g. regulation thereof
    • G06F1/32Means for saving power
    • G06F1/3203Power management, i.e. event-based initiation of a power-saving mode
    • G06F1/3206Monitoring of events, devices or parameters that trigger a change in power modality
    • G06F1/3215Monitoring of peripheral devices
    • G06F1/3221Monitoring of peripheral devices of disk drive devices
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/26Power supply means, e.g. regulation thereof
    • G06F1/32Means for saving power
    • G06F1/3203Power management, i.e. event-based initiation of a power-saving mode
    • G06F1/3234Power saving characterised by the action undertaken
    • G06F1/325Power saving in peripheral device
    • G06F1/3268Power saving in hard disk drive
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/08Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
    • G06F12/0802Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
    • G06F12/0866Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches for peripheral storage systems, e.g. disk cache
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/14Handling requests for interconnection or transfer
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0629Configuration or reconfiguration of storage systems
    • G06F3/0632Configuration or reconfiguration of storage systems by initialisation or re-initialisation of storage systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0629Configuration or reconfiguration of storage systems
    • G06F3/0634Configuration or reconfiguration of storage systems by changing the state or mode of one or more devices
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0638Organizing or formatting or addressing of data
    • G06F3/0644Management of space entities, e.g. partitions, extents, pools
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0655Vertical data movement, i.e. input-output transfer; data movement between one or more hosts and one or more storage devices
    • G06F3/0656Data buffering arrangements
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/0671In-line storage system
    • G06F3/0673Single storage device
    • G06F3/068Hybrid storage device
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/0671In-line storage system
    • G06F3/0683Plurality of storage devices
    • G06F3/0685Hybrid storage combining heterogeneous device types, e.g. hierarchical storage, hybrid arrays
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B19/00Driving, starting, stopping record carriers not specifically of filamentary or web form, or of supports therefor; Control thereof; Control of operating function ; Driving both disc and head
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2212/00Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
    • G06F2212/22Employing cache memory using specific memory technology
    • G06F2212/222Non-volatile memory
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2212/00Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
    • G06F2212/22Employing cache memory using specific memory technology
    • G06F2212/224Disk storage
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D30/00Reducing energy consumption in communication networks
    • Y02D30/50Reducing energy consumption in communication networks in wire-line communication networks, e.g. low power modes or reduced link rate

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Human Computer Interaction (AREA)
  • Power Sources (AREA)
  • Memory System Of A Hierarchy Structure (AREA)

Abstract

多種のデータ記憶システムは、低電力ディスクドライブを利用してデータを高電力ディスクドライブへキャッシュし、消費電力およびアクセス時間を低減する。ディスクドライブの幾らかは、フラッシュメモリインタフェースなどの不揮発性半導体メモリインタフェースを介してホストデバイスと通信してよい。
【選択図】 図2A

Description

本願は、2006年8月11日出願の米国出願番号第11/503,016、2006年7月31日出願の米国仮出願番号第60/820,867、および2006年5月10日出願の米国仮出願番号第60/799,151の恩恵を享受しており、2004年6月10日出願の米国特許出願番号第10/865,368の一部継続出願であり、2005年12月29日出願の米国特許出願第11/322,447の一部継続出願であり、2005年5月5日出願の米国仮出願番号第60/678,249の恩恵を享受しており、2004年2月13日出願の米国特許出願番号10/779,544に関しており、2004年6月10日出願の米国特許出願番号第10/865,732に関している。これら出願の開示の全体をここに参照として組み込む。
本発明は、データ記憶システムに関しており、より具体的には、低電力データ記憶システムに関する。
ラップトップコンピュータは、ライン電力およびバッテリ電力両方を利用して給電される。ラップトップコンピュータのプロセッサ、グラフィックプロセッサ、メモリおよびディスプレイは、動作中に大量の電力を消費する。ラップトップコンピュータの重要な限界は、ラップトップが再充電なしにバッテリを利用して動作することができる時間量に関する。ラップトップコンピュータの比較的高い電力損失量は、通常、比較的短いバッテリ寿命に対応している。
図1Aを参照すると、キャッシュのようなメモリ7を有するプロセッサ6を含むコンピュータアーキテクチャ4の一例が示されている。プロセッサ6は、入力/出力(I/O)インタフェース8と通信する。ランダムアクセスメモリ(RAM)10のような揮発性メモリ9および/または他の適切な電子データ記憶装置も、インタフェース8と通信する。グラフィックプロセッサ11およびキャッシュのようなメモリ12が、グラフィック処理の速度および性能を増進させる。
キーボード13のような一以上のI/Oデバイスおよびポインティングデバイス14(マウスおよび/または他の適切なデバイス)がインタフェース8と通信する。直径が1.8"より大きい一以上のプラッタを有するハードディスクドライブのような高電力ディスクドライブ(HPDD)15が不揮発性メモリを提供しており、データを記憶し、インタフェース8と通信する。HPDD15は動作中、典型的に比較的高い電力量を消費する。バッテリで動作しているとき、HPDD15を頻繁に利用すると、バッテリ寿命は大幅に縮まる。コンピュータアーキテクチャ4はさらに、ディスプレイ16、音声スピーカなどの音声出力デバイス17、および/または18で概して識別される他の入力/出力デバイスを含む。
図1Bを参照すると、例示的なコンピュータアーキテクチャ20は、処理チップセット22とI/Oチップセット24とを含む。例えば、コンピュータアーキテクチャは、ノースブリッジ/サウスブリッジアーキテクチャ(ノースブリッジチップセットに対応する処理チップセットとサウスブリッジチップセットに対応するI/Oチップセットとを有する)あるいは他の類似したアーキテクチャであってよい。処理チップセット22は、システムバス27を介してプロセッサ25とグラフィックプロセッサ26と通信する。処理チップセット22は、外部DRAMあるいは他のメモリのような揮発性メモリ28、周辺部材相互接続(PCI)バス30、および/またはレベル2キャッシュ32の相互作用を制御する。レベル1キャッシュ33および34は、各々プロセッサ25および/またはグラフィックプロセッサ26と関連付けられてよい。代替的実施形態においては、アクセラレイティッド・グラフィックス・ポート(AGP)は、グラフィックプロセッサ26の代わりに、および/またはそれに加えて、処理チップセット22と通信する。処理チップセット22は典型的に、しかしいつもではないが、多数のチップを利用して実装される。PCIスロット36は、PCIバス30とインタフェースする。
I/Oチップセット24は、入力/出力(I/O)の基本形態を管理する。I/Oチップセット24は、ユニバーサルシリアルバス(USB)40、音声デバイス41、キーボード(KBD)、および/またはポインティングデバイス42、および基本入力/出力システム(BIOS)43と、業界標準アーキテクチャ(ISA)バス44を介して通信する。処理チップセット22と違って、I/Oチップセット24は典型的に、(しかしいつもではないが)、単一のチップを利用して実装されるが、それは、PCIバス30に接続される。ハードディスクドライブのようなHPDD50もまた、I/Oチップセット24と通信する。HPDD50は、プロセッサ25が実行するWindowsXP(登録商標)Windows2000(登録商標)、LinuxおよびMAC(登録商標)に基づくOSなどの、フルフィーチャのオペレーティングシステム(OS)を記憶する。
高電力/低電力モードを備えるデバイス用のディスクドライブシステムは、低電力ディスクドライブ(LPDD)を有する。高電力のディスクドライブ(HPDD)である。LPDDおよびHPDDのうち少なくともいずれかは、不揮発性半導体メモリインタフェースを介してデバイスと通信する。
他の特徴として、制御モジュールは、LPDD内の最稀使用ブロック(LUB)を識別し、データ記憶要求およびデータ取得要求のうち少なくともいずれかが受信された場合、低電力モード中にLUBをHPDDに選択的に転送するLUBモジュールを含む。書き込みデータの記憶要求中に、LPDD上に書き込みデータ用に十分な容量が利用可能である場合制御モジュールが書き込みデータをLPDDに転送する。LPDD上に書き込みデータ用に十分な容量が利用可能でない場合、制御モジュールは、HPDDに電力供給して、LUBをLPDDからHPDDへ転送し、書き込みデータをLPDDに転送する。LPDD上に書き込みデータ用に十分な容量が利用可能でない場合、制御モジュールは、書き込みデータがLUBの前に利用される可能性があるか否かを判定する適応記憶モジュールを含む。書き込みデータがLUBの後に利用される可能性が高い場合、制御モジュールは書き込みデータをHPDD上に記憶する。書き込みデータがLUBの前に利用される可能性が高い場合、制御モジュールはHPDDに電力供給して、LUBをLPDDからHPDDに転送して、その後、書き込みデータをLPDDに転送する。
他の特徴としては、読み出しデータの取得要求中に、読み出しデータがLPDDに記憶されている場合制御モジュールは、読み出しデータをLPDDから取得する。制御モジュールは、読み出しデータがLPDDに配置されない場合読み出しデータが一度利用される可能性が高いかどうかを判定する適応記憶モジュールを含み、読み出しデータが一度利用される可能性が高い場合、制御モジュールは読み出しデータをHPDDから取得する。適応記憶モジュールにより、読み出しデータが一度を超える回数利用される可能性が高いと判定された場合、LPDD上に読み出しデータ用に十分な容量が利用可能である場合、制御モジュールは読み出しデータをHPDDからLPDDへ転送する。適応記憶モジュールが、読み出しデータが一度を超える回数利用される可能性が高いと判定した場合、LPDD上に読み出しデータ用に十分な容量が利用可能でない場合、制御モジュールはLUBをLPDDからHPDDへ転送し、読み出しデータをHPDDからLPDDへ転送する。LPDD上に読み出しデータ用に十分な容量が利用可能である場合、制御モジュールは、読み出しデータをHPDDからLPDDへ転送する。LPDD上に読み出しデータ用に十分な容量が利用可能でない場合、制御モジュールは、LUBをLPDDからHPDDへ転送し、読み出しデータをHPDDからLPDDへ転送する。読み出しデータがLPDDに配置されない場合、制御モジュールは読み出しデータをHPDDから取得する。
他の特徴としては、HPDDは1.8"より大きい直径を有する一以上のプラッタを含み、LPDDは1.8"以下の直径を有する一以上のプラッタを含む。HPDDおよびLPDDは不揮発性半導体メモリインタフェースを介してデバイスと通信する。LPDDおよびHPDDと通信する制御モジュールをさらに備え、低電力モードでの書き込みデータの記憶要求中に、制御モジュールは、LPDD上に書き込みデータ用に十分な容量が利用可能であるか否かを判定し、十分な容量が利用可能である場合、書き込みデータをLPDDへ転送する。HPDDおよびLPDDは不揮発性半導体メモリインタフェースを介してデバイスと通信する。十分な容量が利用可能でない場合、制御モジュールは、書き込みデータをHPDDに記憶する。制御モジュールは、高電力モード中にLPDDからHPDDへデータファイルを転送してLPDD上で利用可能なディスク容量を増加するLPDD維持モジュールをさらに含む。LPDD維持モジュールは、古さ、サイズ、および低電力モードで将来利用される可能性のうち少なくとも一つに基づいて、データファイルを転送する。
他の特徴としては、HPDDは1.8"より大きい直径を有する一以上のプラッタを含み、LPDDは1.8"以下の直径を有する一以上のプラッタを含む。
高電力モードおよび低電力モードを有するデバイス用のディスクドライブシステムを操作する方法であって、低電力ディスクドライブ(LPDD)と、高電力ディスクドライブ(HPDD)とを提供することと、LPDDとHPDDとデバイスとを、不揮発性半導体メモリインタフェースを介して通信させることと、を含む、方法が提供される。
他の特徴としては、方法は、LPDD内のLUBを識別することと、データ記憶要求およびデータ取得要求のうち少なくともいずれかが受信された場合、低電力モード中にLUBをHPDDに選択的に転送することとをさらに含む。方法は、書き込みデータの記憶要求中に、LPDD上に書き込みデータ用に十分な容量が利用可能である場合書き込みデータをLPDDに転送することをさらに含む。方法は、LPDD上に書き込みデータ用に十分な容量が利用可能でない場合、HPDDに電力供給して、LUBをLPDDからHPDDへ転送し、書き込みデータをLPDDに転送することをさらに含む。方法は、LPDD上に書き込みデータ用に十分な容量が利用可能でない場合、書き込みデータがLUBの前に利用される可能性があるか否かを判定することをさらに含む。方法は、書き込みデータがLUBの後に利用される可能性が高い場合、書き込みデータをHPDD上に記憶することをさらに含む。方法は、書き込みデータがLUBの前に利用される可能性が高い場合、HPDDに電力供給して、LUBをLPDDからHPDDに転送して、その後、書き込みデータをLPDDに転送することをさらに含む。方法は、読み出しデータの取得要求中に、読み出しデータがLPDDに記憶されている場合、読み出しデータをLPDDから取得することをさらに含む。方法は、読み出しデータがLPDDに配置されない場合読み出しデータが一度利用される可能性が高いかどうかを判定することと、読み出しデータが一度利用される可能性が高い場合、読み出しデータをHPDDから取得することと、をさらに含む。
他の特徴としては、方法は、読み出しデータが一度を超える回数利用される可能性が高い場合、LPDD上に読み出しデータ用に十分な容量が利用可能である場合、読み出しデータをHPDDからLPDDへ転送することをさらに含む。方法は、読み出しデータが一度を超える回数利用される可能性が高いと判定した場合、LPDD上に読み出しデータ用に十分な容量が利用可能でない場合、LUBをLPDDからHPDDへ転送し、読み出しデータをHPDDからLPDDへ転送することをさらに含む。方法は、LPDD上に読み出しデータ用に十分な容量が利用可能である場合、読み出しデータをHPDDからLPDDへ転送することをさらに含む。方法は、LPDD上に読み出しデータ用に十分な容量が利用可能でない場合、LUBをLPDDからHPDDへ転送し、読み出しデータをHPDDからLPDDへ転送することをさらに含む。方法は、読み出しデータがLPDDに配置されない場合、読み出しデータをHPDDから取得することをさらに含む。HPDDおよびLPDDは不揮発性半導体メモリインタフェースを介してデバイスと通信する。方法は、LPDD上に書き込みデータ用に十分な容量が利用可能であるか否かを判定し、低電力モードでの書き込みデータの記憶要求中に十分な容量が利用可能である場合、書き込みデータをLPDDへ転送することをさらに含む。
他の特徴としては、HPDDおよびLPDDは不揮発性半導体メモリインタフェースを介してデバイスと通信する。方法は、十分な容量が利用可能でない場合、書き込みデータをHPDDに記憶することをさらに含む。方法は、高電力モード中にLPDDからHPDDへデータファイルを転送してLPDD上で利用可能なディスク容量を増加することをさらに含む。方法は、古さ、サイズ、および低電力モードで将来利用される可能性のうち少なくとも一つに基づいて、データファイルを転送することをさらに含む。
高電力/低電力モードを備えるデバイス用のディスクドライブシステムは、メモリインタフェース用に不揮発性半導体メモリインタフェース手段、低電力ディスクドライブ(LPDD)、および高電力のディスクドライブ(HPDD)を備え、LPDDおよびHPDDのうち少なくともいずれかは、不揮発性半導体メモリインタフェース手段を介してデバイスと通信する。
他の特徴としては、制御手段は、LPDD内の最稀使用ブロック(LUB)を識別する手段を含む。制御手段は、データ記憶要求およびデータ取得要求のうち少なくともいずれかが受信された場合、低電力モード中にLUBをHPDDに選択的に転送する。書き込みデータの記憶要求中に、LPDD上に書き込みデータ用に十分な容量が利用可能である場合制御手段は書き込みデータをLPDDに転送する。LPDD上に書き込みデータ用に十分な容量が利用可能でない場合、制御手段は、HPDDに電力供給して、LUBをLPDDからHPDDへ転送し、書き込みデータをLPDDに転送する。LPDD上に書き込みデータ用に十分な容量が利用可能でない場合、制御手段は、書き込みデータがLUBの前に利用される可能性があるか否かを決定する適応記憶手段を含む。書き込みデータがLUBの後に利用される可能性が高い場合、制御手段は書き込みデータをHPDD上に記憶する。書き込みデータがLUBの前に利用される可能性が高い場合、制御手段はHPDDに電力供給して、LUBをLPDDからHPDDに転送して、その後、書き込みデータをLPDDに転送する。読み出しデータの取得要求中に、読み出しデータがLPDDに記憶されている場合制御手段は、読み出しデータをLPDDから取得する。制御手段は、読み出しデータがLPDDに配置されない場合読み出しデータが一度利用される可能性が高いかどうかを判定する適応記憶手段を含み、読み出しデータが一度利用される可能性が高い場合、制御手段は読み出しデータをHPDDから取得する。
他の特徴としては、適応記憶手段により、読み出しデータが一度を超える回数利用される可能性が高いと判定された場合、LPDD上に読み出しデータ用に十分な容量が利用可能である場合、制御手段は読み出しデータをHPDDからLPDDへ転送する。適応記憶手段が、読み出しデータが一度を超える回数利用される可能性が高いと判定した場合、LPDD上に読み出しデータ用に十分な容量が利用可能でない場合、制御手段はLUBをLPDDからHPDDへ転送し、読み出しデータをHPDDからLPDDへ転送する。LPDD上に読み出しデータ用に十分な容量が利用可能である場合、制御手段は、読み出しデータをHPDDからLPDDへ転送する。LPDD上に読み出しデータ用に十分な容量が利用可能でない場合、制御手段は、LUBをLPDDからHPDDへ転送し、読み出しデータをHPDDからLPDDへ転送する。読み出しデータがLPDDに配置されない場合、制御手段は読み出しデータをHPDDから取得する。HPDDは1.8"より大きい直径を有する一以上のプラッタを含み、LPDDは1.8"以下の直径を有する一以上のプラッタを含む。
HPDDおよびLPDDは不揮発性半導体メモリインタフェース手段を介してデバイスと通信する。LPDDおよびHPDDと通信する制御手段をさらに備え、低電力モードの書き込みデータの記憶要求中に、制御手段は、LPDD上に書き込みデータ用に十分な容量が利用可能であるか否かを判定し、十分な容量が利用可能である場合、書き込みデータをLPDDへ転送する。HPDDおよびLPDDは不揮発性半導体メモリインタフェース手段を介してデバイスと通信する。十分な容量が利用可能でない場合、制御手段は、書き込みデータをHPDDに記憶する。制御手段は、高電力モード中にLPDDからHPDDへデータファイルを転送してLPDD上で利用可能なディスク容量を増加するLPDD維持手段をさらに含む。
他の特徴としては、LPDD維持手段は、古さ、サイズ、および低電力モードで将来利用される可能性のうち少なくとも一つに基づいて、データファイルを転送する。HPDDは1.8"より大きい直径を有する一以上のプラッタを含み、LPDDは1.8"以下の直径を有する一以上のプラッタを含む。
低電力モードおよび高電力モードを有するデバイス用のデータ記憶システムは、不揮発性半導体メモリインタフェースを有するLPハードディスクドライブ(HDD)を含む低電力(LP)不揮発性メモリを含む。LP HDDは、不揮発性半導体メモリインタフェースを介してデバイスと通信する。高電力(HP)不揮発性メモリはデバイスと通信する。
他の特徴として、キャッシュ制御モジュールは、LPおよびHP不揮発性メモリと通信し、適応記憶モジュールを含む。書き込みデータがLPおよびHP不揮発性メモリのいずれかに書き込まれる場合、適応記憶モジュールは、LPおよびHP不揮発性メモリのいずれかを選択する適応記憶決定を生成する。HP不揮発性メモリは、不揮発性半導体メモリインタフェースを介してデバイスと通信するHP HDDを含む。適応決定は、書き込みデータの前の利用、書き込みデータのサイズ、書き込みデータの最終利用日、および書き込みデータの手動上書きステータスに関連付けられた電力モードのうち少なくともいずれかに基づく。LP HDDは、1.8"以下の直径を有する一以上のプラッタを含む。HP不揮発性メモリは、1.8"より大きい直径を有する一以上のプラッタを含むハードディスクドライブを含む。
他の特徴として、キャッシュ制御モジュールは、LPおよびHP不揮発性メモリと通信し、駆動電力低減モジュールを含む。低電力モード中に読み出しデータがHP不揮発性メモリから読み出される場合、および読み出しデータが連続アクセスデータファイルを含む場合、駆動電力低減モジュールは、HP不揮発性メモリからLP不揮発性メモリへ読み出しデータのセグメントの転送のバースト期間を計算する。HP不揮発性メモリは、不揮発性半導体メモリインタフェースを介して、デバイスと通信するHP HDDを含む。駆動電力低減モジュールは、低電力モード中に読み出しデータの再生中の消費電力を低減するバースト期間を選択する。HP不揮発性メモリは、高電力ディスクドライブ(HPDD)を含む。バースト期間は、LP HDDのスピンアップ時間、HPDDのスピンアップ時間、LP HDDの消費電力、HPDDの消費電力、読み出しデータの再生長、およびLP HDDの容量のうち少なくとも一つに基づく。
他の特徴としては、オペレーティングシステムは、LPおよびHP不揮発性メモリと通信し、駆動電力低減モジュールを含む。読み出しデータが低電力モード中にHP不揮発性メモリから読み出され、読み出しデータが連続アクセスデータファイルを含む場合、駆動電力低減モジュールは、HP不揮発性メモリからLP不揮発性メモリへ読み出しデータのセグメントを転送するバースト期間を計算する。HP不揮発性メモリは、不揮発性半導体メモリインタフェースと通信するHP HDDを含む。駆動電力低減モジュールは、低電力モード中に、読み出しデータの再生中の消費電力を低減するバースト期間を選択する。HP不揮発性メモリは、高電力ディスクドライブ(HPDD)を含む。バースト期間は、LP HDDのスピンアップ時間、HPDDのスピンアップ時間、LP HDDの消費電力、HPDDの消費電力、読み出しデータの再生長、およびLP HDDの容量のうち少なくとも一つに基づく。
他の特徴としては、ホスト制御モジュールは、LPおよびHP不揮発性メモリと通信し、適応記憶モジュールを含む。書き込みデータがLPおよびHP不揮発性メモリのいずれかに書き込まれる場合、適応記憶モジュールは、LPおよびHP不揮発性メモリのいずれかを選択する適応記憶決定を生成する。HP不揮発性メモリは、不揮発性半導体メモリインタフェースと通信するHP HDDを含む。適応決定は、書き込みデータの前の利用、書き込みデータのサイズ、書き込みデータの最終利用日、および書き込みデータの手動上書きステータスに関連付けられた電力モードのうち少なくともいずれかに基づく。
他の特徴としては、ホスト制御モジュールは、LPおよびHP不揮発性メモリと通信し、駆動電力低減モジュールを含む。読み出しデータが低電力モード中にHP不揮発性メモリから読み出され、読み出しデータが連続アクセスデータファイルを含む場合、駆動電力低減モジュールは、HP不揮発性メモリからLP不揮発性メモリへ読み出しデータのセグメントを転送するバースト期間を計算する。HP不揮発性メモリは、不揮発性半導体メモリインタフェースと通信するHP HDDを含む。駆動電力低減は、低電力モード中に、読み出しデータの再生中の消費電力を低減するバースト期間を選択する。HP不揮発性メモリは高電力ディスクドライブ(HPDD)を有する。バースト期間は、LP HDDのスピンアップ時間、HPDDのスピンアップ時間、LP HDDのスピンアップ時間、HPDDの消費電力、読み出しデータの再生長、およびLP HDDの容量のうち少なくとも一つに基づく。
他の特徴においては、オペレーティングシステムは、LPおよびHP不揮発性メモリと通信し、適応記憶モジュールを含む。書き込みデータがLPおよびHP不揮発性メモリのいずれかに書き込まれる場合、適応記憶モジュールは、LPおよびHP不揮発性メモリのいずれかを選択する適応記憶決定を生成する。HP不揮発性メモリは、不揮発性半導体メモリインタフェースと通信するHP HDDを含む。適応決定は、書き込みデータの前の利用、書き込みデータのサイズ、書き込みデータの最終利用日、および書き込みデータの手動上書きステータスに関連付けられた電力モードのうち少なくともいずれかに基づく。
低電力モードおよび高電力モードを有するデバイス用のデータ記憶システムを操作する方法は、不揮発性半導体メモリインタフェースを有し該不揮発性半導体メモリインタフェースを介してデバイスと通信するLPハードディスクドライブ(HDD)を含む低電力(LP)不揮発性メモリを提供することと、高電力(HP)不揮発性メモリを提供することと、LP不揮発性メモリおよびHP不揮発性メモリの少なくともいずれかを、デバイスの選択された電力モードに基づいて選択することとを含む。
他の特徴としては、方法は、書き込みデータがLPおよびHP不揮発性メモリのいずれかに書き込まれる場合に、LPおよびHP不揮発性メモリのいずれかを選択する適応記憶決定を生成する。HP不揮発性メモリは、不揮発性半導体メモリインタフェースを介してデバイスと通信するHP HDDを含む。適応決定は、書き込みデータの前の利用、書き込みデータのサイズ、書き込みデータの最終利用日、および書き込みデータの手動上書きステータスに関連付けられた電力モードのうち少なくともいずれかに基づく。方法は、低電力モード中に、読み出しデータがHP不揮発性メモリから読み出され、読み出しデータが連続アクセスデータファイルを含む場合に、HP不揮発性メモリからLP不揮発性メモリへ読み出しデータのセグメントを転送するバースト期間を計算することを含む。HP不揮発性メモリは、不揮発性半導体メモリインタフェースを介してデバイスと通信するHP HDDを含む。方法は、低電力モード中に、読み出しデータの再生中に消費電力を低減するバースト期間を選択することを含む。HP不揮発性メモリは、高電力ディスクドライブ(HPDD)を含む。
他の特徴としては、バースト期間は、LP HDDのスピンアップ時間、HPDDのスピンアップ時間、LP HDDの消費電力、HPDDの消費電力、読み出しデータの再生長、およびLP HDDの容量に基づく。方法は、読み出しデータが低電力モード中にHP不揮発性メモリから読み出され、読み出しデータが連続アクセスデータファイルを含む場合、HP不揮発性メモリからLP不揮発性メモリへ読み出しデータのセグメントを転送するバースト期間を計算することを含む。HP不揮発性メモリは、不揮発性半導体メモリインタフェースと通信するHP HDDを含む。方法は、低電力モード中に読み出しデータの再生中の消費電力を低減するバースト期間を選択することを含む。HP不揮発性メモリは、高電力ディスクドライブ(HPDD)を含む。バースト期間は、LP HDDのスピンアップ時間、HPDDのスピンアップ時間、LP HDDの消費電力、HPDDの消費電力、読み出しデータの再生長、LP HDDの容量のうち少なくとも一つに基づく。
低電力および高電力モードを有するデバイス用のデータ記憶システムは、インタフェース用の不揮発性半導体メモリインタフェース手段を有するLPハードディスクドライブ(HDD)を含むデータを記憶する低電力(LP)不揮発性記憶手段と、デバイスと通信するデータを記憶する高電力(HP)不揮発性記憶手段と、を含み、LP HDDは不揮発性半導体メモリインタフェース手段を介してデバイスと通信する。
他の特徴としては、キャッシュ制御用のキャッシュ制御手段は、LPおよびHP不揮発性記憶手段と通信し、書き込みデータがLPおよびHP不揮発性手段のいずれかに書き込まれる場合にLPおよびHP不揮発性手段のいずれかを選択する適応記憶決定を生成する適応記憶手段を含む。HP不揮発性記憶手段は、不揮発性半導体メモリインタフェース手段を介してデバイスと通信するHP HDDを含む。適応決定は、書き込みデータの前の利用、書き込みデータのサイズ、書き込みデータの最終利用日、および書き込みデータの手動上書きステータスに関連付けられた電力モードのうち少なくともいずれかに基づく。LP HDDは、1.8"以下の直径を有する一以上のプラッタを含み、HP不揮発性記憶手段は、1.8"より大きい直径を有する一以上のプラッタを含むハードディスクドライブを含む。
他の特徴としては、キャッシュ制御手段は、LPおよびHP不揮発性記憶手段と通信し、低電力モード中にHP不揮発性記憶手段から読み出しデータを読み出し、読み出しデータが連続アクセスデータファイルを含む場合に、HP不揮発性記憶手段からLP不揮発性記憶手段へ読み出しデータのセグメントを転送するバースト期間を計算する駆動電力低減手段を含む。HP不揮発性記憶手段は、不揮発性半導体メモリインタフェース手段を介してデバイスと通信するHP HDDを含む。駆動電力低減手段は、低電力モード中に読み出しデータを再生中に消費電力を低減するバースト期間を選択する。HP不揮発性記憶手段は高電力ディスクドライブ(HPDD)を含む。バースト期間は、LP HDDのスピンアップ時間、HPDDのスピンアップ時間、LP HDDの消費電力、HPDDの消費電力、読み出しデータの再生長、およびLP HDDの容量のいずれかに基づく。
他の特徴としては、オペレーティングシステムは、読み出しデータが低電力モード中にHP不揮発性記憶手段から読み出され、読み出しデータが連続アクセスデータファイルを含む場合、LPおよびHP不揮発性記憶手段と通信し、読み出しデータのセグメントをHP不揮発性記憶手段からLP不揮発性記憶手段へ転送するバースト期間を計算する駆動電力低減手段と通信する。HP不揮発性記憶手段は、不揮発性半導体メモリインタフェース手段と通信するHP HDDを含む。駆動電力低減手段は、低電力モード中に読み出しデータを再生中の消費電力を低減するバースト期間を選択する。HP不揮発性記憶手段は高電力ディスクドライブ(HPDD)を含む。バースト期間は、LP HDDのスピンアップ時間、HPDDのスピンアップ時間、LP HDDの消費電力、HPDDの消費電力、読み出しデータの再生長、およびLP HDDの容量の少なくともいずれかに基づく。
他の特徴としては、制御用のホスト制御手段は、LPおよびHP不揮発性記憶手段と通信し、書き込みデータがLPおよびHP不揮発性記憶手段のいずれかに書き込まれる場合にLPおよびHP不揮発性記憶手段のいずれかを選択する適応記憶決定を生成する適応記憶手段を含む。HP不揮発性記憶手段は、不揮発性半導体メモリインタフェース手段と通信するHP HDDを含む。適応決定は、書き込みデータの前の利用、書き込みデータのサイズ、書き込みデータの最終利用日、および書き込みデータの手動上書きステータスに関連付けられた電力モードのうち少なくともいずれかに基づく。
他の特徴としては、制御用ホスト制御手段は、LPおよびHP不揮発性記憶手段と通信し、低電力モード中にHP不揮発性既往手段から読み出しデータを読み出し、読み出しデータが連続アクセスデータファイルを含む場合に、HP不揮発性記憶手段からLP不揮発性記憶手段へ読み出しデータのセグメントを転送するバースト期間を計算する駆動電力低減手段を含む。HP不揮発性記憶手段は、不揮発性半導体メモリインタフェース手段と通信するHP HDDを含む。駆動電力低減手段は、低電力モード中に読み出しデータの再生中の消費電力を低減するバースト期間を選択する。HP不揮発性記憶手段は高電力ディスクドライブ(HPDD)を含む。バースト期間は、LP HDDのスピンアップ時間、HPDDのスピンアップ時間、LP HDDの消費電力、HPDDの消費電力、読み出しデータの再生長、およびLP HDDの容量のうち少なくとも一つに基づく。
他の特徴としては、オペレーティングシステムは、LPおよびHP不揮発性記憶手段と通信し、書き込みデータがLPおよびHP不揮発性記憶手段に書き込まれる場合、LPおよびHP不揮発性記憶手段のいずれかを選択する適応記憶決定を生成する適応記憶決定を含む。HP不揮発性記憶手段は、不揮発性半導体メモリインタフェース手段と通信するHP HDDを含む。適応決定は、書き込みデータの前の利用、書き込みデータのサイズ、書き込みデータの最終利用日、および書き込みデータの手動上書きステータスに関連付けられた電力モードのうち少なくともいずれかに基づく。
低電力および高電力モードで動作するデバイスは、揮発性メモリ、不揮発性半導体メモリインタフェースを有する低電力(LP)ハードディスクドライブ(HDD)、および不揮発性半導体メモリインタフェースを有する高電力HDDのうち少なくともいずれかを含む不揮発性メモリ、およびデバイスシステムの仮想メモリを増やすべくファイルをページングする不揮発性メモリの少なくとも一部を指定することのできる仮想メモリ調節モジュールを含むオペレーティングシステムを含む。
処理デバイスは、高電力および低電力モードを有し、処理デバイスと通信し、高電力モード中に処理デバイスが実行する第1のオペレーティングシステムを記憶する第1の不揮発性メモリと、低電力モード中に処理デバイスが実行する第2のオペレーティングシステムを記憶する処理デバイスと通信する第2の不揮発性メモリと、を含み、第2の不揮発性メモリは、不揮発性半導体メモリインタフェースを有する低電力(LP)ハードディスクドライブ(HDD)を含む。
他の特徴としては、第1の不揮発性メモリは、不揮発性半導体メモリインタフェースと通信し、第1のオペレーティングシステムを記憶する高電力HDDを含む。一次処理デバイスは、第1の不揮発性メモリと通信し、高電力モード中に第1のオペレーティングシステムを実行する。二次処理デバイスは、第2の不揮発性メモリと通信し、低電力モードで第2のオペレーティングシステムを実行する。第1のオペレーティングシステムはフルフィーチャのオペレーティングシステムであり、第2のオペレーティングシステムは制限的なフィーチャのオペレーティングシステムである。一次グラフィック処理デバイスは、高電力モード中に第1の不揮発性メモリと通信しフルフィーチャのグラフィック処理をサポートし、二次グラフィック処理デバイスは第2の不揮発性メモリと通信し、低電力モード中に制限的なフィーチャのグラフィック処理をサポートする。フルフィーチャのオペレーティングシステムおよび制限的なフィーチャのオペレーティングシステムは共通のデータフォーマットを共有する。
低電力および高電力モードで動作するデバイスは、データを記憶する揮発性データ記憶手段、インタフェース用の不揮発性半導体メモリインタフェース手段を有する低電力(LP)ハードディスクドライブ(HDD)およびインタフェース用の不揮発性半導体メモリインタフェース手段を有する高電力(HDD)、およびデバイスシステムの仮想記憶装置を増やすべくファイルをページングする不揮発記憶手段の少なくとも一部を指定することのできる仮想記憶調節手段を含むオペレーティングシステムを含む。
高電力および低電力モードを有する処理デバイスは、処理デバイスと通信するデータを記憶し、高電力モード中に処理デバイスが実行する第1のオペレーティングシステムを記憶する第1の不揮発性記憶手段と、低電力モード中に処理デバイスと通信し、処理デバイスが実行する第2のオペレーティングシステムを記憶するデータを記憶する第2の不揮発性記憶手段と、を含み、第2の不揮発性記憶手段は、インタフェース用に不揮発性半導体メモリインタフェースを有する低電力(LP)ハードディスクドライブ(HDD)を含む。
他の特徴としては、第1の不揮発性記憶手段は、不揮発性半導体メモリインタフェース手段と通信し、第1のオペレーティングシステムを記憶する高電力(HP)HDDを含む。一次処理手段は、高電力モード中に第1のオペレーティングシステムを実行する第1の不揮発性記憶手段と通信する。二次処理手段は、低電力モード中に第2のオペレーティングシステムを実行する第2の不揮発性記憶手段と通信する。第1のオペレーティングシステムはフルフィーチャのオペレーティングシステムであり、第2のオペレーティングシステムは制限的なフィーチャのオペレーティングシステムである。
他の特徴としては、一次グラフィック処理手段は、高電力モード中にフルフィーチャのグラフィック処理をサポートする第1の不揮発性記憶手段と通信する。二次グラフィック処理手段は、低電力モード中に制限的なフィーチャのグラフィック処理をサポートする第2の不揮発性記憶手段と通信する。フルフィーチャのオペレーティングシステムおよび制限的なフィーチャのオペレーティングシステムは、共通のデータフォーマットを共有する。
低電力および高電力モードを有するデバイスの操作方法は、不揮発性半導体メモリインタフェースを有する低電力(LP)ハードディスクドライブ(HDD)および不揮発性半導体メモリインタフェースを有する高電力HDDの少なくともいずれかを含む揮発性メモリおよび不揮発性メモリを提供することと、デバイスの仮想メモリを増やすべくオペレーティングシステムを利用してファイルをページングする不揮発性メモリの少なくとも一部を指定することと、を含む。
高電力および低電力モードを有する処理デバイスの操作方法は、処理デバイスと通信する第1の不揮発性メモリを提供することと、第1の不揮発性メモリに第1のオペレーティングシステムを記憶することと、高電力モード中に処理デバイスを利用して第1のオペレーティングシステムを実行することと、処理デバイスと通信する第2の不揮発性メモリを提供することと、第2の不揮発性メモリに第2のオペレーティングシステムを記憶することと、低電力モード中に処理デバイスを利用して第2のオペレーティングを実行することと、を含む。第2の不揮発性メモリは、不揮発性半導体メモリインタフェースを有する低電力(LP)ハードディスクドライブ(HDD)を含む。
他の特徴としては、第1の不揮発性メモリは、不揮発性半導体メモリインタフェースと通信し、第1のオペレーティングシステムを記憶する高電力(HP)HDDを含む。方法は、高電力モード中に第1の不揮発性メモリと通信し、第1のオペレーティングシステムを実行する一次処理デバイスを提供することと、低電力モード中に第2の不揮発性メモリと通信し、第2のオペレーティングシステムを実行する二次処理デバイスを提供することと、を含む。第1のオペレーティングシステムはフルフィーチャのオペレーティングシステムであり、第2のオペレーティングシステムは制限的なオペレーティングシステムである。方法は、高電力モード中に、第1の不揮発性メモリと通信し、フルフィーチャのグラフィック処理をサポートする一次グラフィック処理デバイスを提供することと、低電力モード中に、第2の不揮発性メモリと通信し、制限的なフィーチャのグラフィック処理をサポートする二次グラフィック処理デバイスを提供することと、を含む。方法は、フルフィーチャのオペレーティングシステムと制限的なフィーチャのオペレーティングシステムの間で共通のデータフォーマットを共有することを含む。
前述の実装例のいずれにおいても、不揮発性半導体メモリインタフェースを有するHDDは、不揮発性半導体メモリインタフェースを含み、不揮発性半導体メモリインタフェースは、制御モジュールと通信するインタフェース信号線を含む。バッファメモリは、制御モジュールから、およびLPDDから受信するデータを記憶する。フラッシュ制御機は、不揮発性半導体メモリインタフェースを介してインタフェース信号線を利用してLPDDのデータ転送プロトコルをエミュレートする。メモリラッパは、インタフェース制御機およびバッファマネージャと通信する。メモリラッパは、制御モジュールおよびHDDのデータ転送レートによりバッファメモリを制御する。
他の特徴としては、フラッシュ制御機は、HDDのランダム読み出しを実装すべくインタフェース信号線を制御し、HDDのランダム書き込みを実装すべくインタフェース信号線を制御する。フラッシュ制御機は、HDDの連続読み出しを実装すべくインタフェース信号線を制御し、HDDの連続書き込みを実装すべくインタフェース信号線を制御する。フラッシュ制御機は、制御モジュールおよびHDD間のコマンド転送を実装すべくインタフェース信号線を制御する。
他の特徴としては、フラッシュ制御機は、HDDコマンド一式を、対応するフラッシュメモリコマンド一式にマッピングする。レジスタメモリは、処理バスを介してインタフェース制御機およびHDDプロセッサと通信する。レジスタメモリは、HDDプロセッサと制御モジュールとがプログラムするコマンドを記憶する。フラッシュ制御機は、バッファメモリにHDDからの読み出しデータを記憶して、制御モジュールおよびHDD間のデータ転送レートの差異を補償して、制御モジュールにデータ準備信号を送り、メモリバッファにデータがあることを示す。フラッシュ制御機は、バッファメモリに制御モジュールからの書き込みデータを記憶して、制御モジュールおよびHDD間のデータ転送レートの差異を補償して、制御モジュールにデータ準備信号を送り、メモリバッファにデータがあることを示す。不揮発性半導体メモリインタフェースは、NAND型の不揮発性半導体メモリインタフェースである。
他の特徴としては、不揮発性半導体メモリインタフェースは、フラッシュメモリインタフェースを含む。不揮発性半導体メモリインタフェース手段は、フラッシュメモリインタフェースを含む。
本発明の利用可能なさらなる領域は、以後の詳細な記載から明らかになるだろう。詳細な記載および特定の例示は、本発明の好適な実施形態を示してはいるが、例示目的のみであり、本発明の範囲を制限する意図はない。
本発明は、詳細な記載および添付図面から完全に理解される。
先行技術によるコンピュータアーキテクチャの一例を示す。
高電力モードで動作する一次プロセッサ、一次グラフィックプロセッサ、および一次揮発性メモリを有し、且つ一次プロセッサと通信し、低電力モードで動作し、低電力モードで主要揮発性メモリを利用する二次プロセッサおよび二次グラフィックプロセッサを有する、本発明による第一の例示的コンピュータアーキテクチャを示す。
図2Aと類似した本発明による、二次プロセッサおよび/または二次グラフィックプロセッサに接続された二次揮発性メモリを含む第二の例示的コンピュータアーキテクチャを示す。
図2Aと類似した本発明による、二次プロセッサおよび/または二次グラフィックプロセッサに関連付けられた埋め込み揮発性メモリを含む第三の例示的コンピュータアーキテクチャを示す。
高電力モードで動作する一次プロセッサ、一次グラフィックプロセッサ、および一次揮発性メモリを有し、且つ、処理チップセットと通信し、低電力モードで動作し、低電力モードで一次揮発性メモリを利用する、二次プロセッサおよび二次グラフィックプロセッサを有する、本発明による第四の例示的アーキテクチャを示す。
図3Aに類似した本発明による、二次プロセッサおよび/または二次グラフィックプロセッサに接続された二次揮発性メモリを含む第五の例示的コンピュータアーキテクチャを示す。
図3Aに類似した本発明による、二次プロセッサおよび/または二次グラフィックプロセッサに関連付けられた埋め込み揮発性メモリを含む第六の例示的コンピュータアーキテクチャを示す。
I/Oチップセットと通信し、低電力モードで動作し、低電力モードで一次揮発性メモリを利用する、二次プロセッサおよび二次グラフィックプロセッサを有する本発明による第七の例示的アーキテクチャを示す。
図4Aに類似した本発明による、二次プロセッサおよび/または二次グラフィックプロセッサに接続された二次不揮発性メモリを含む第八の例示的コンピュータアーキテクチャを示す。
図4Aに類似した本発明による、二次プロセッサおよび/または二次グラフィックプロセッサに関連付けられた埋め込み揮発性メモリを含む第九の例示的コンピュータアーキテクチャを示す。
図2A−4Cのコンピュータアーキテクチャの、本発明によるキャッシング階層を示す。
最稀使用ブロック(LUB)モジュールを含み、低電力ディスクドライブ(LPDD)および高電力ディスクドライブ(HPDD)間でデータ記憶および転送を管理する、駆動制御モジュールの機能ブロック図である。
図6の駆動制御モジュールが行うステップを示すフローチャートである。
図6の駆動制御モジュールが行う代替的ステップを示すフローチャートである。
図6の駆動制御モジュールが行う代替的ステップを示すフローチャートである。
適応記憶制御モジュールを含み、LPDDおよびHPDD間でデータ記憶および転送を制御するキャッシュ制御モジュールを示す。
適応記憶制御モジュールを含み、LPDDおよびHPDD間でデータ記憶および転送を制御するオペレーティングシステムを示す。
適応記憶制御モジュールを含み、LPDDおよびHPDD間でデータ記憶および転送を制御するホスト制御モジュールを示す。
図8A−8Cの適応記憶制御モジュールが行うステップを示す。
低電力モードでプログラムあるいはファイルが利用される可能性を決定する一方法を示す例示的表である。
ディスクドライブ電力低減モジュールを含むキャッシュ制御モジュールを示す。
ディスクドライブ電力低減モジュールを含むオペレーティングシステムを示す。
ディスクドライブ電力低減モジュールを含むホスト制御モジュールを示す。
図11A−11Cのディスクドライブ電力低減モジュールが行うステップを示す。
低電力ディスクドライブ(LPDD)および高電力ディスクドライブ(HPDD)を含むマルチディスクドライブシステムを示す。
図13のマルチディスクシステムの他の例示的実装を示す。
コンピュータの仮想メモリを増やすフラッシュメモリあるいは低電力ディスクドライブ(LPDD)などの低電力不揮発性メモリの利用を示す。
オペレーティングシステムによる、図18の仮想メモリの割当・利用ステップを示す。
先行技術によるRedundant Array of Independent Disks(RAID)systemの機能ブロック図である。
X個のHPDDを含むディスクアレイおよびY個のLPDDを含むディスクアレイを有する、本発明による例示的RAIDシステムの機能ブロック図である。
XおよびYがZに等しい、図22AのRAIDシステムの機能ブロック図である。
X個のHPDDを含むディスクアレイと通信するY個のLPDDを含むディスクアレイを有する、本発明による別の例示的RAIDシステムの機能ブロック図である。
XおよびYがZに等しい、図23AのRAIDシステムの機能ブロック図である。
Y個のLPDDを含むディスクアレイと通信するX個のHPDDを含むディスクアレイを有する、本発明による別の例示的RAIDシステムの機能ブロック図である。
XおよびYがZに等しい、図24AのRAIDシステムの機能ブロック図である。
先行技術によるネットワークアタッチャブルストレージ(NAS)システムの機能ブロック図である。
図22A、22B、23A、23B、24A、および/または、24BのRAIDシステム、および/または図6−17のマルチドライブシステムを含む、本発明によるネットワークアタッチャブルストレージ(NAS)システムの機能ブロック図である。
フラッシュメモリおよびディスクドライブインタフェース制御機を含むディスクドライブ制御機の機能ブロック図である。
図27のインタフェース制御機の機能ブロック図である。
フラッシュインタフェースを有するマルチディスクドライブシステムの機能ブロック図である。
図30のマルチディスクドライブが行うステップを示すフローチャートである。
以下の好適な実施形態の記載は、単に性質上例示的であり、本発明、その用途あるいは利用を制限する目的は全くない。明瞭化を目的として、同じ参照番号を図面で利用して類似した部材を識別している。ここで利用されるモジュールおよび/またはデバイスという用語は、一以上のソフトウェアあるいはファームウェアプログラムを実行する特定用途向け集積回路(ASIC)、電子回路、プロセッサ(共有、専用、あるいはグループ)およびメモリ、組み合わせの論理回路、および/または、記載された機能を提供する他の適切な部材のことを言う。
ここで利用される「高電力モード」という用語は、ホストプロセッサおよび/またはホストプロセッサの一次グラフィックプロセッサのことを言う。「低電力モード」という用語は、二次プロセッサおよび二次グラフィックプロセッサが動作可能な場合の一次プロセッサおよび/または一次グラフィックプロセッサの低電力ハイバーネートモード、オフモード、および/または非応答モードのことを言う。「オフモード」とは、一次および二次プロセッサ両方がオフの場合の状況を言う。
「低電力ディスクドライブ」あるいはLPDDという用語は、直径が1.8"以下である一以上のプラッタを有するディスクドライブおよび/またはマイクロドライブのことを言う。「高電力ディスクドライブ」あるいはHPDDという用語は、直径が1.8"より大きい一以上のプラッタを有するハードディスクドライブのことを言う。LPDDは典型的にHPDDよりも低い記憶容量を有し、電力損失量が少ない。さらにLPDDはHPDDより高い速度で回転する。例えば、LPDDは10,000〜20,000RPM以上の回転速度を達成できる。
不揮発性メモリインタフェース(IF)を有するHDDという用語は、ホストの標準半導体インタフェースを介したホストデバイスに接続可能なハードディスクドライブのことを言う。たとえば、半導体メモリインタフェースは、フラッシュインタフェースであってよい。
不揮発性メモリIFを有するHDDは、不揮発性メモリインタフェースプロトコルを利用して不揮発性メモリインタフェースを介してホストと通信する。ホストおよび不揮発性メモリインタフェースを有するHDDが利用する不揮発性メモリインタフェースは、フラッシュインタフェースを有するフラッシュメモリ、NANDフラッシュインタフェースを有するNANDフラッシュあるいは他の種類の半導体メモリインタフェースを含みうる。不揮発性メモリIFを有するHDDは、LPDDおよび/またはHPDDでありうる。不揮発性メモリIFを有するHDDは図27および図28を参照しながら以下で詳述する。フラッシュIFを有するHDDの動作に関するさらなる詳細は、2005年12月29日出願の米国特許出願番号第11/322,447に記載されているので、その全体をここに参照として組み込む。以下に述べる実装それぞれにおいて、LPDDは、不揮発性メモリIFを有するHDD(HPDDおよび/またはLPDDとして実装される)を利用して実装されうる。その代わり、不揮発性メモリIFを有するHDDが、開示されているLPDDおよび/またはHPDDに加えて利用されるLPDDおよび/またはHPDDであってよい。
本発明によるコンピュータアーキテクチャは、一次プロセッサ、一次グラフィックプロセッサ、および一次メモリ(図1Aおよび1Bとの関連で記載された)を含むが、これらは高電力モードで動作する。二次プロセッサおよび二次グラフィックプロセッサは、低電力モードで動作する。二次プロセッサおよび二次グラフィックプロセッサは、コンピュータの多種の部材に接続されてよいが、それは以下で説明する。一次不揮発性メモリは、低電力モードで二次プロセッサおよび二次グラフィックプロセッサにより利用されてよい。また、DRAMなどの二次揮発性メモリ、および/または、埋め込みDRAMなどの埋め込み二次揮発性メモリが利用されてよいし、これも以下で説明する。
一次プロセッサおよび一次グラフィックプロセッサは、高電力モードで動作する際に、比較的高電力を損失する。一次プロセッサおよび一次グラフィックプロセッサは、外部メモリを比較的大量に要するフルフィーチャのオペレーティングシステム(OS)を実行する。一次プロセッサおよび一次グラフィックプロセッサは、複雑な計算および高度なグラフィックを含む高性能動作をサポートする。フルフィーチャのオペレーティングシステム(OS)は、WindowsXP(登録商標)などのWindows(登録商標)に基づくOS、Linuxに基づくOS、MAC(登録商標)に基づくOSなどであってよい。フルフィーチャのOSはHPDD15および/または50に記憶される。
二次プロセッサおよび二次グラフィックプロセッサは、低電力モードで損失電力量が少ない(一次プロセッサおよび一次グラフィックプロセッサより少ない)。二次プロセッサおよび二次グラフィックプロセッサは、外部揮発性メモリを比較的少量要する制限的なフィーチャのオペレーティングシステム(OS)を操作する。二次プロセッサおよび二次グラフィックプロセッサも、一次プロセッサと同じOSを利用してよい。例えば、フルフィーチャのOSの規模縮小版を利用してよい。二次プロセッサおよび二次グラフィックプロセッサは、より低い性能動作、より低い計算レート、およびあまり高度ではないグラフィックをサポートしてよい。例えば、制限的なフィーチャのOSはWindowsCE(登録商標)あるいは任意の他の適切な制限的なフィーチャのOSであってよい。制限的なフィーチャのOSは、フラッシュメモリなどの不揮発性メモリ、不揮発性メモリIFを有するHDD、HPDD、および/またはLPDDに記憶されるのが望ましい。好適な実施形態においては、フルフィーチャおよび制限的なフィーチャのOSが共通のデータフォーマットを利用して複雑性を低減する。
一次プロセッサおよび/または一次グラフィックプロセッサは、比較的小さいフィーチャサイズの製造プロセスを利用して実装されるトランジスタを含む。一実装例においては、これらトランジスタは高度なCMOS製造プロセスを利用して実装される。一次プロセッサおよび/または一次グラフィックプロセッサに実装されるトランジスタは、比較的高い待機時リーク、比較的短いチャネル、および高速への適応性を有する。一次プロセッサおよび一次グラフィックプロセッサは、主として動的論理を利用することが望ましい。つまり、それらはシャットダウンできないことが望ましい。トランジスタは約20%未満、好適には約10%未満のデューティサイクルで切り替えられるが、他のデューテイサイクルを利用してもよい。
比較すると、二次プロセッサおよび二次グラフィックプロセッサは、好適には、一次プロセッサおよび/または一次グラフィックプロセッサに利用されるプロセスより大きいフィーチャサイズを有する製造プロセスで実装されるトランジスタを含む。一実装例においては、これらトランジスタは、標準的なCMOS製造プロセスを利用して実装される。二次プロセッサおよび二次グラフィックプロセッサに実装されるトランジスタは、比較的低い待機時リーク、比較的長いチャネル、および低速への適応性を有する。二次プロセッサおよび二次グラフィックプロセッサは、主として動的論理ではなくて静的論理を利用することが望ましい。トランジスタは約80%を超える、好適には約90%を超えるデューティサイクルで切り替えられるが、他のデューテイサイクルを利用してもよい。
一次プロセッサおよび一次グラフィックプロセッサは、高電力モードで動作する際に比較的高電力を損失する。二次プロセッサおよび二次グラフィックプロセッサは、低電力モードで動作する際に、これより低い電力を損失する。しかし低電力モードでは、コンピュータアーキテクチャは、高電力モードよりも、より少ないフィーチャおよび計算、およびより複雑性の少ないグラフィックをサポートすることができる。当業者であれば理解するように、本発明によればコンピュータアーキテクチャを実装するのには多くの方法がある。故に当業者であれば、図2A−4Cを参照しながら以下で説明するアーキテクチャが本質的に例示的にすぎず、制限的ではないことを理解する。
図2Aを参照すると、第1の例示的コンピュータアーキテクチャ60が示されている。一次プロセッサ6、揮発性メモリ9、および一次グラフィックプロセッサ11は、高電力モードでインタフェース8と通信し複雑なデータおよびグラフィック処理をサポートする。二次プロセッサ62および二次グラフィックプロセッサ64は、低電力モードでインタフェース8と通信し複雑性の少ないデータおよびグラフィック処理をサポートする。LPDD66および/またはフラッシュメモリおよび/または不揮発性メモリIF69を有するHDDなどのオプションとしての不揮発性メモリ65は、低電力および/または高電力モードでインタフェース8と通信し低電力不揮発性データ記憶を提供する。不揮発性メモリIFを有するHDDは、LPDDおよび/またはHPDDであってよい。HPDD15は、高電力・高容量の不揮発性メモリを提供する。低電力モードで不揮発性メモリ65および/またはHPDD15を利用して、制限的なフィーチャのOSおよび/または他のデータおよびファイルを記憶する。
本実施形態においては、二次プロセッサ62および二次グラフィックプロセッサ64は、低電力モードで動作中に、揮発性メモリ9(あるいは一次メモリ)を利用する。その目的のために、インタフェース8の少なくとも一部に低電力モードで電力を供給して、一次メモリとの通信をサポートする、および/または低電力モードで電力供給される部材間の通信をサポートする。例えば、キーボード13、ポインティングデバイス14、および一次ディスプレイ16は低電力モード中に電力供給され利用されうる。図2A−4Cとの関連で説明する実施形態全てにおいては、低電力モードで、機能の限られた二次ディスプレイ(モノクロのディスプレイ)および/または、二次入力/出力デバイスを提供および利用してよい。
図2Bを参照すると、図2Aのアーキテクチャに類似した第二の例示的コンピュータアーキテクチャ70が示されている。本実施形態においては、二次プロセッサ62および二次グラフィックプロセッサ64は、二次揮発性メモリ74および/または76と通信する。二次揮発性メモリ74および76は、DRAMあるいは他の適切なメモリであってよい。低電力モードで、二次プロセッサ62および二次グラフィックプロセッサ64は、図2Aに示され説明された一次揮発性メモリ9に加えて、および/またはそれに代えて、二次揮発性メモリ74および/または76をそれぞれ利用する。
図2Cを参照すると、図2Aに類似した第三の例示的コンピュータアーキテクチャ80が示されている。二次プロセッサ62および/または二次グラフィックプロセッサ64は、埋め込み不揮発性メモリ84および86をそれぞれ含む。低電力モードで、二次プロセッサ62および二次グラフィックプロセッサ64は、一次揮発性メモリに加えて、および/またはそれに代えて、それぞれ、埋め込み揮発性メモリ84および/または86を利用する。一実施形態においては、埋め込み揮発性メモリ84および86が埋め込みDRAM(eDRAM)であるが、他の種類の埋め込み揮発性メモリを利用することもできる。
図3Aを参照すると、本発明の第四の例示的コンピュータアーキテクチャ100が示されている。一次プロセッサ25、一次グラフィックプロセッサ26、および一次揮発性メモリ28は、高電力モードで処理チップセット22と通信し複雑なデータおよびグラフィック処理をサポートする。二次プロセッサ104および二次グラフィックプロセッサ108は、コンピュータが低電力モードの場合に、複雑性の少ないデータおよびグラフィック処理をサポートする。本実施形態においては、二次プロセッサ104および二次グラフィックプロセッサ108は、低電力モードで動作中に一次揮発性メモリ28を利用する。その目的のために、処理チップセット22は全体的に、および/または部分的に、低電力モードで電力供給されてそれらの間の通信を促進する。HPDD50は、低電力モードで電力供給されて高電力揮発性メモリを提供してもよい。低電力不揮発性メモリ109(LPDD110および/またはフラッシュメモリおよび/または不揮発性メモリIF113を含むHDD)は、処理チップセット22、I/Oチップセット24あるいは他の位置に接続され、制限的なフィーチャのオペレーティングシステムを低電力モード用に記憶してよい。不揮発性メモリIFを有するHDDはLPDDおよび/またはHPDDでありうる。
処理チップセット22は全体的に、および/または部分的に電力供給されて、HPDD50、LPDD110、および/または低電力モードで利用される他の部材の動作をサポートしてよい。例えば、低電力モードでキーボードおよび/またはポインティングデバイス42および一次ディスプレイを利用してよい。
図3Bを参照すると、図3Aに類似した第五の例示的コンピュータアーキテクチャ150が示されている。二次揮発性メモリ154および158が二次プロセッサ104および/または二次グラフィックプロセッサ108にそれぞれ接続されている。低電力モードで、二次プロセッサ104および二次グラフィックプロセッサ108は、一次揮発性メモリ28の代わりに、および/またはそれに加えて、二次揮発性メモリ154および158をそれぞれ利用する。処理チップセット22および一次揮発性メモリ28は、所望であれば低電力モードでシャットダウンできる。二次揮発性メモリ154および158は、DRAMあるいは他の適切なメモリでありうる。
図3Cを参照すると、図3Aに類似した第六の例示的コンピュータアーキテクチャ170が示されている。二次プロセッサ104および/または二次グラフィックプロセッサ108は、それぞれ、埋め込みメモリ174および176を含む。低電力モードで、二次プロセッサ104および二次グラフィックプロセッサ108は、一次揮発性メモリ28の代わりに、および/またはそれに加えて、埋め込みメモリ174および176を利用する。一実施形態においては、埋め込み揮発性メモリ174および176は埋め込みDRAM(eDRAM)であるが、他の種類の埋め込みメモリを利用することもできる。
図4Aを参照すると、本発明による第七の例示的コンピュータアーキテクチャ190が示されている。二次プロセッサ104および二次グラフィックスプロセッサ108は、低電力モードで、I/Oチップセット24と通信し一次揮発性メモリ28を揮発性メモリとして利用する。処理チップセット22は、低電力モードにおいて、一次揮発性メモリ28へのアクセスを許可すべく、全体的におよび/または部分的に電力供給され続ける。
図4Bを参照すると、図4Aに類似した第八の例示的コンピュータアーキテクチャ200が示されている。二次揮発性メモリ154および158は、それぞれ二次プロセッサ104および二次グラフィックプロセッサ108に接続され、低電力モードで、一次揮発性メモリ28の代わりに、および/またはそれに加えて利用される。処理チップセット22および一次揮発性メモリ28は低電力モードでシャットダウンされることができる。
図4Cを参照すると、図4Aに類似した第九の例示的コンピュータアーキテクチャ210が示されている。埋め込み揮発性メモリ174および176が、それぞれ、二次揮発性メモリ28に加えて、および/またはそれの代わりに、二次プロセッサ104および/または二次グラフィックプロセッサ108に提供される。本実施形態において、処理チップセット22および一次揮発性メモリ28は低電力モードでシャットダウンされることができる。
図5を参照すると、図2A−4Cに示したコンピュータアーキテクチャのキャッシング階層250が示されている。HP不揮発性メモリHPDD50は、キャッシング階層250の最低レベル254に配置される。HPDD50がディセーブルの場合レベル254は利用されてもされなくてもよく、低電力モードでHPDD50がイネーブルの場合には利用される。LPDD110、フラッシュメモリ、および/または不揮発性メモリIF113を有するHDDのようなLP不揮発性メモリは、キャッシング階層250の次のレベル258に配置される。構成に応じて、一次揮発性メモリ、二次揮発性メモリ、および/または二次埋め込みメモリのような外部揮発性メモリは、キャッシング階層250の次のレベル262である。レベル2あるいは二次キャッシュは、キャッシング階層250の次のレベル266を有する。レベル1キャッシュは、キャッシング階層250の次のレベル268である。CPU(一次および/または二次)は、キャッシング階層の最終レベル270である。一次および二次グラフィックプロセッサも同様の階層を利用する。
本発明によるコンピュータアーキテクチャは、複雑性の少ない処理およびグラフィックをサポートする低電力モードを提供する。その結果、コンピュータの電力損失が大幅に低減される。ラップトップアプリケーションにおいてはバッテリ寿命が延長される。
図6を参照すると、マルチディスクドライブシステムの駆動制御モジュール300あるいはホスト制御モジュールは、最稀使用ブロック(LUB)モジュール304、適応記憶モジュール306、および/または、LPDD維持モジュール308を含む。駆動制御モジュール300は、ハードディスクドライブのような高電力ディスクドライブ(HPDD)310と、一部にはLUB情報に基づくマイクロドライブのような低電力ディスクドライブ(LPDD)312との間の記憶およびデータ転送を制御する。駆動制御モジュール300は、高電力および低電力モードにおいて、HPDDとLPDDとの間のデータ記憶および転送を管理することで、消費電力を低減する。図6から分かるように、不揮発性メモリIF317を有するHDDをLPDDとして利用して、および/またはLPDDに加えて利用してよい。駆動制御モジュール300は、ホスト不揮発性メモリIF315およびホスト313を介して、不揮発性メモリIF317を有するHDDと通信する。駆動制御モジュール300は、ホスト313と、および/またはホスト不揮発性メモリIF315と統合されてよい。
最稀使用ブロックモジュール304は、LPDD312内の最稀使用データブロックの経過を追う。低電力モードでは、最稀使用ブロックモジュール304は、必要なときに置き換えることができるよう、LPDD312内の最稀使用データブロックを識別する(ファイルおよび/またはプログラムなどの)。制限的フィーチャのオペレーティングシステムのみに関するファイル、LPDD312に記憶されることが手動で設定されるブロック、および/または、低電力モードのみで動作するその他のファイルおよびプログラムなどの、ある種のデータブロックあるいはファイルを最稀使用ブロック監視から免除してもよい。以下に説明するように、また別の基準を利用して上書きするデータブロックを選択してもよい。
データ記憶要求中の低電力モードにおいて、適応記憶モジュール306は、書き込みデータが、最稀使用ブロックの前に利用される可能性が高いか否かを判定する。適応記憶モジュール306は、読み出しデータが、データ取得要求中の低電力モードで一度利用される可能性があるか否かも判定する。LPDD維持モジュール308は、高電力モードにおいておよび/または以下で説明する他の状況において、LPDDから古いデータ(aged data)をHPDDへ転送する。
図7Aを参照すると、駆動制御モジュール300が行うステップが示されている。制御はステップ320から始まる。ステップ324で、駆動制御モジュール300は、データ記憶要求があるか否か判定する。ステップ324の判定が肯定的な場合、駆動制御モジュール300は、ステップ328で、LPDD312で十分な容量があるかどうかを判定する。ないということであれば、駆動制御モジュール300は、ステップ330でHPDD310に電力供給する。ステップ334で、駆動制御モジュール300は、最稀使用データブロックをHPDD310に転送する。ステップ336では、駆動制御モジュール300は、LPDD312上に十分な容量があるかどうかを判定する。ないということであれば、制御はステップ334にループする。さもなければ、駆動制御モジュール300は、ステップ340を継続し、HPDD310をオフにする。ステップ344において、記憶されるデータ(例えば、ホストから)がLPDD312に転送される。
ステップ324の判定が否定的である場合、駆動制御モジュール300はステップ350を継続し、データ取得要求があるか否かを判断する。ないということであれば、制御はステップ324へ戻る。さもなければ、制御はステップ354を継続し、データがLPDD312に配置されているか否かを判断する。ステップ354の判定が肯定的だった場合、駆動制御モジュール300は、ステップ356でLPDD312からデータを取得し、ステップ324を継続する。さもなければ、駆動制御モジュール300は、ステップ360でHPDD310に電力供給する。ステップ364で、駆動制御モジュール300は、LPDD312上に十分な容量が、要求したデータ用にあるか否かを判断する。ないということであれば、駆動制御モジュール300は、ステップ366で最稀使用データブロックをHPDD310に転送し、ステップ364を継続する。ステップ364の判定が肯定的だった場合、ステップ368で、駆動制御モジュール300は、LPDD312にデータを転送し、LPDD312からデータを取得する。ステップ370で、LPDD312へのデータ転送が完了している場合、制御はHPDD310をオフにする。
図7Bを参照すると、図7Aに示すものに類似した変形例であるアプローチを利用しており、適応記憶モジュール306が行う一以上の適応ステップを含む。ステップ328でLPDD上に十分な容量がある場合、制御は、ステップ372で、最稀使用ブロックあるいは最稀使用ブロックモジュールが識別したブロックの前に、記憶すべきデータが利用される可能性があるか否かを判定する。ステップ372の判定が否定的だった場合、駆動制御モジュール300は、ステップ374でHPDDにデータを記憶して、制御はステップ324を継続する。こうすることで、LPDDに最稀使用ブロック(一または複数)を転送するために消費される電力が節約される。ステップ372の判定が肯定的だった場合、図7Aに関して説明したように、制御はステップ330を継続する。
データ取得要求中、ステップ354の判定が否定的だった場合、制御はステップ376を継続し、データが一度利用される可能性があるか否かを判定する。ステップ376の判定が肯定的だった場合、駆動制御モジュール300は、ステップ378でHPDDからデータを取得して、ステップ324を継続する。こうすることで、データをLPDDに転送するために消費される電力が節約される。ステップ376の判定が否定的だった場合、制御はステップ360を継続する。理解されうるように、データが一度利用される可能性がある場合、LPDDにデータを移す必要はない。しかしHPDDの電力損失は避けられない。
図7Cを参照すると、より簡単な形式の制御をも、低電力動作中に行うことができる。さらに、高電力および/または低電力モードにおいて維持ステップを行うこともできる(LPDD維持モジュール308を利用して)。ステップ328において、LPDD上に十分な容量がある場合、ステップ344でデータがLPDDに転送され、制御はステップ324に戻る。さもなければ、ステップ328の判定が否定的である場合、ステップ380でデータはHPDDに記憶され、制御はステップ324に戻る。理解されうるように、図7Cに示すアプローチは、容量が十分ある場合に、LPDDを利用して、LPDDの容量が足りない場合に、HPDDを利用する。当業者であれば、図7A−7Dのステップを様々に組み合わせてハイブリッドな方法を利用することもできることが理解しよう。
図7Dにおいて、高電力モードに戻ると、および/または、LPDDに記憶されている未利用あるいは低利用ファイルを削除するその他のときに、駆動制御モジュール300により、維持ステップが行われる。この維持ステップは、低電力モードで、利用中に定期的に、ディスクがフルであるイベントなどのイベントの発生時に、および/または他の機会にも、行うこともできる。制御はステップ390から始まる。ステップ392において、制御は、高電力モードの利用中か否かを判定する。そうでないということであれば、制御はステップ7Dへループバックする。ステップ392の判定が肯定的な場合、制御は、ステップ394で最終モードが低電力モードであるか否かを判定する。そうでないということであれば、制御はステップ392へ戻る。ステップ394の判定が否定的である場合、制御は、ステップ396で、古いあるいは低利用ファイルをLPDDからHPDDに移すなどの維持を行う。どのファイルを将来利用する可能性があるか、などの適応的な決定を、例えば上述の、あるいは図8A−10との関連で以下に記す基準を利用して、さらに行ってもよい。
図8Aおよび8Bを参照すると、記憶制御システム400‐1、400‐2、および400‐3が示されている。図8Aで、記憶制御システム400‐1は、適応記憶制御モジュール414を有するキャッシュ制御モジュール410を含む。適応記憶制御モジュール414は、ファイルおよび/またはプログラムの利用を監視して、それらが低電力モードあるいは高電力モードで利用される可能性が高いかを判定する。キャッシュ制御モジュール410は、一以上のデータバス416と通信し、これらが今度はL1キャッシュ、L2キャッシュ、DRAMなどの揮発性RAM、および/または他の揮発性電子データ記憶装置などの揮発性メモリ422と通信する。バス416は、さらに、低電力不揮発性メモリ424(フラッシュメモリ、不揮発性メモリIFを有するHDD、および/またはLPDD)および/またはHPDD426などの高電力不揮発性メモリ426とも通信しうる。図8Bにおいて、フルフィーチャの、および/または制限的なフィーチャのオペレーティングシステム430が、適応記憶制御モジュール414を含むとして示されている。適切なインタフェースおよび/または制御機(不図示)が、データバスとHPDDおよび/またはLPDDとの間に配置される。
図8Cで、ホスト制御モジュール440は、適応記憶制御モジュール414を含む。ホスト制御モジュール440は、LPDD426'およびハードディスクドライブ426'と通信する。ホスト制御モジュール440は、駆動制御モジュール、集積デバイス電子(IDE)、ATA、シリアルATA(SATA)、あるいは他の制御機であってよい。図8Cから分かるように、不揮発性メモリIF431を有するHDDを、LPDDとして利用することができうる、および/またはLPDDに加えて利用することができうる。ホスト制御モジュール440は、不揮発性メモリIF431を有するHDDと、ホスト不揮発性メモリIF429を介して通信する。ホスト制御モジュール440は、ホスト不揮発性メモリIF429と統合してよい。
図9を参照すると、図8A‐8Cの記憶制御システムが行うステップが示されている。図9において、制御はステップ460から始まる。ステップ462では、制御は、不揮発性メモリへのデータ記憶要求があるか否かを判定する。ないということであれば、制御はステップ462へループバックする。さもなければ、適応記憶制御モジュール414は、ステップ464で、データが低電力モードで利用される可能性があるか否かを判定する。ステップ464の判定が否定的である場合、ステップ468でデータがHPDDに記憶される。ステップ464の判定が肯定的である場合、ステップ474でデータが不揮発性メモリ444に記憶される。
図10を参照すると、低電力モードでデータブロックが利用される可能性があるか否かを判定する方法の一例が示されている。表490は、データブロック記述子フィールド492、低電力カウンタフィールド493、高電力カウンタフィールド494、サイズフィールド495、最終利用フィールド496、および/または手動上書きフィールド497を含む。特定のプログラムあるいはファイルが低電力あるいは高電力モードで利用される場合、カウンタフィールド493および/または494が増加される。プログラムあるいはファイルのデータ記憶が不揮発性メモリに必要な場合、表492にアクセスされる。閾値である百分率および/または値を評価に利用することができる。例えば、ファイルあるいはプログラムが80パーセントを越える確率で低電力モードにおいて利用される場合、該ファイルは、フラッシュメモリなどの低電力不揮発性メモリ、不揮発性メモリIFを有するHDD、および/またはマイクロドライブに記憶してよい。閾値に見合わない場合、ファイルあるいはプログラムが高電力不揮発性メモリに記憶される。
これで分かるように、所定のサンプル数の後、および/または任意の他の基準により、カウンタは定期的にリセットされてよい(つまり、ローリングウィンドウを提示する)。さらに、可能性は、重み付けされてもよく、さもなければ修正されてもよく、および/またはサイズフィールド495により置き換えられてもよい。つまりファイルサイズが大きくなると、LPDDで制限された容量のせいで、要求される閾値が増加させられる。
利用の可能性の判定のさらなる修正は、最終利用フィールド496が記録しているファイルが最後に利用されてからの時間を基にして行われてよい。最後に利用された日付および/または時間を閾値として、可能性判定の際の一要因として利用してよい。図10には表を示したが、利用される一以上のフィールドを、他の位置および/または他のデータ構造に記憶してもよい。アルゴリズムおよび/または重み付けされた二以上のフィールドのサンプリングを利用してもよい。
手動上書きフィールド497を利用することで、ユーザおよび/またはオペレーティングシステムは、利用判定の可能性を上書きすることができる。例えば、手動上書きフィールドは、LステータスをLPDDのデフォルト記憶に利用することができ、HステータスをHPDDのデフォルト記憶に利用することができ、および/またはAステータスを自動記憶判定(上述の通り)に利用することができる。他の手動上書き分類を定義してもよい。上述の基準に加えて、LPDDで動作しているコンピュータの現在の電力レベルを利用して判定を調節してもよい。当業者であれば、ファイルあるいはプログラムが高電力あるいは低電力モードで利用される可能性を判定する方法には、本発明の教示の範囲内で他の方法もあることを理解しよう。
図11Aおよび11Bを参照すると、駆動電力低減システム500‐1、500‐2、および500‐3(総称して500)が示されている。駆動電力低減システム500は、音声および/またはビデオファイルなどであるが、それらに限定されないより大きな連続アクセスファイルのセグメントを低電力不揮発性メモリに、定期的にあるいは他の基準に基づいてバーストする。図11Aにおいては、駆動電力低減システム500‐1は、駆動電力低減制御モジュール522を有するキャッシュ制御モジュール520を含む。キャッシュ制御モジュール520は、L1キャッシュ、L2キャッシュなどの揮発性メモリ530、DRAMなどの揮発性RAM、および/または他の揮発性電子データ記憶装置、フラッシュメモリなどの不揮発性メモリ534、不揮発性メモリIFを有するHDD、および/またはLPDD、およびHPDD538と通信する一以上のデータバス526と通信する。図11Bにおいては、駆動電力低減システム500‐2は、駆動電力低減制御モジュール522を有する、フルフィーチャの、および/または制限的フィーチャの、オペレーティングシステム542を含む。適切なインタフェースおよび/または制御機(不図示)がデータバスおよびHPDDおよび/またはLPDD間に配置される。
図11Cにおいては、駆動電力低減システム500‐3は、適応記憶制御モジュール522を有するホスト制御モジュール560を含む。ホスト制御モジュール560は一以上のデータバス564と通信し、これらデータバス564は、LPDD534'とハードディスクドライブ538'と通信する。ホスト制御モジュール560は、駆動制御モジュール、集積デバイス電子(Integrated Device Electronics)(IDE)、ATA、シリアルATA(SATA)および/または他の制御機あるいはインタフェースであってよい。図11Cから分かるように、不揮発性メモリIF531を有するHDDを、LPDDとして、および/またはLPDDに加えて、利用することができる。ホスト制御モジュール560は、ホスト不揮発性メモリIF529を介して、不揮発性メモリIF531を有するHDDと通信する。ホスト制御モジュール560は、ホスト不揮発性メモリIF529と統合されてよい。
図12を参照すると、図11A−11Cの駆動電力低減システム500が行うステップが示されている。制御はステップ582から始まる。ステップ584において、制御は、システムが低電力モードにあるか否かを判定する。そうでないということであれば、制御はステップ584にループバックする。ステップ586の判定が肯定的であれば、制御は、大きなデータブロックアクセスが典型的にHPDDから要求されているか否かを判定するステップ586を継続する。ないということであれば、制御はステップ584にループバックする。ステップ586の判定が肯定的である場合、制御は、データブロックアクセスが連続しているか否かを判定するステップ590を継続する。ないということであれば、制御は584にループバックする。ステップ590の判定が肯定的である場合、制御はステップ594を継続し、再生長を判定する。ステップ598において、制御は、高電力不揮発性メモリから低電力不揮発性メモリへのデータ転送の頻度およびバースト期間を判定する。
一実施形態においては、バースト期間および頻度は消費電力を低減するよう最適化される。バースト期間および頻度は、HPDDおよび/またはLPDDのスピンアップ時間に基づいているのが望ましく、不揮発性メモリの容量、再生レート、HPDDおよび/またはLPDDのスピンアップおよび安定状態消費電力、および/または連続データブロックの再生長に基づいているのが望ましい。
例えば、高電力不揮発性メモリは、動作中に1‐2Wを消費するHPDDであり、4‐10秒のスピンアップ時間を有し、容量は典型的に20Gbより大きい。低電力不揮発性メモリは動作中に0.3‐0.5Wを消費するマイクロドライブであり、1‐3秒のスピンアップ時間を有し、容量は1‐6Gbである。これで分かるように、上述の性能値および/または容量は、他の実装例においては異なってくる。HPDDはマイクロドライブへのデータ転送レートが1Gb/sであってよい。再生レートは10Mb/sであってよい(例えばビデオファイル用に)。これで分かるように、バースト期間にHPDDの転送レートを掛け合わせた値は、マイクロドライブの容量を超えてはならない。バースト間の期間は、スピンアップ時間にバースト期間を足し合わせた値より大きくなくてはならない。これらパラメタにおいては、システムの消費電力を最適化できる。低電力モードにおいては、HPDDが映画などのビデオ全体を再生するべく動作する場合、かなりの量の電力が消費される。上述の方法を利用すると、HPDDからLPDDへデータ転送を、固定間隔に並んだ多数のバーストセグメント間で非常に早いレートで(例えば100×再生レート)選択的に行いHPDDをシャットダウンすることで、電力損失を大幅に低減することができる。50%を超える電力節約が容易に達成されうる。
図13を参照すると、駆動制御モジュール650および一以上のHPDD644および一以上のLPDD648を含む本発明によるマルチディスクドライブシステム640が示されている。駆動制御モジュール650は、ホスト制御モジュール651を介してホストデバイスと通信する。ホストへは、マルチディスクドライブシステム640が効果的にHPDD644およびLPDD648を単一のディスクドライブとして操作して、複雑性を低減し、性能を向上させ、消費電力を低減するが、これを以下で詳述する。ホスト制御モジュール651はIDE、ATA、SATA、および/または他の制御モジュールあるいはインタフェースでありうる。
図14を参照すると、一実装例においては、ドライブ駆動モジュール650は、LPDDおよび/またはHPDDの一方あるいは両方を制御するのに利用されるハードディスク制御機(HDC)653を含む。バッファ656は、HPDDおよび/またはLPDDの制御に関するデータを記憶し、および/またはデータをHPDDおよび/またはLPDDへ積極的にバッファ、あるいはそれらから積極的にバッファして、データブロックサイズを最適化することでデータ転送レートを増加する。プロセッサ657は、HPDDおよび/またはLPDDの動作に関する処理を行う。
HPDD648は、磁界を記憶する磁気コーティングを有する一以上のプラッタ652を含む。プラッタ652は、概略が654として示されているスピンドルモータにより回転する。一般的に、スピンドルモータ654は、読み出し/書き込み動作中に固定スピードでプラッタ652を回転させる。一以上の読み出し/書き込みアーム658は、プラッタ652に対して動き、プラッタ652へデータ書き込み、および/またはプラッタ652からデータ読み出しを行う。HPDD648はLPDDより大きなプラッタを有するので、HPDDをスピンアップしてHPDDを一定の速度に維持するのに、スピンドル654はより大きな電力を必要とする。通常、スピンアップ時間はHPDDについても、より高くなる。
読み出し/書き込みデバイス659は、読み出し/書き込みアーム658の遠隔端付近に配置される。読み出し/書き込みアーム659は、磁界を発生するインダクタなどの書き込み部材を含む。読み出し/書き込みデバイス659は、さらに、プラッタ652上の磁界を感知する読み出し部材(磁気抵抗(MR)部材などの)を含む。プリアンプ回路660はアナログの読み出し/書き込み信号を増幅する。
データを読み出す場合、プリアンプ回路660は、読み出し部材からの低レベル信号を増幅し、増幅された信号を読み出し/書き込みチャネルデバイスへ出力する。データ書き込み中、書き込み電流が発生し、読み出し/書き込みデバイス659の書き込み部材から流れ、切り替えられて正極あるいは負極の磁界を発生する。正極あるいは負極は、プラッタ652に記憶され、データを表すのに利用される。LPDD644はさらに、一以上のプラッタ662、スピンドルモータ664、一以上の読み出し/書き込みアーム668、読み出し/書き込みデバイス669、およびプリアンプ回路670を含む。
HDC653は、ホスト制御モジュール651と通信し、第一のスピンドル/ボイスコイルモータ(VCM)ドライバ672、第一の読み出し/書き込みチャネル回路674、第二のスピンドル/VCMドライバ676、第二の読み出し/書き込みチャネル回路678と通信する。ホスト制御モジュール651および駆動制御モジュール650は、システムオンチップ(SOC)684により実装できる。理解されうるように、スピンドルVCMドライバ672および676および/または読み出し/書き込みチャネル回路674および678を組み合わせてもよい。スピンドル/VCMドライバ672および676は、それぞれプラッタ652および662を回転するスピンドルモータ654および664を制御する。スピンドル/VCMドライバ672および676は、さらに、例えばボイスコイルアクチュエータ、ステッパモータあるいは任意の他の適切なアクチュエータを利用して、読み出し/書き込みアーム658および668を配置する制御信号をそれぞれ生成する。
図15−17を参照すると、マルチディスクドライブシステムの他の変形例が示されている。図15では、駆動制御モジュール650は、一以上のLPDD682への外部接続を提供する直接インタフェース680を含みうる。一実装例においては、直接インタフェースは周辺部材相互接続(PCI)バス、PCIエクスプレス(PCIX)バス、および/または任意の他の適切なバスあるいはインタフェースである。
図16においては、ホスト制御モジュール651は、LPDD644およびHPDD648の両方と通信する。低電力駆動制御モジュール650LPおよび高電力ディスクドライブ制御モジュール650HPは、直接ホスト制御モジュールと通信する。LPおよび/またはHPドライブ制御モジュールのうちゼロ、1、あるいは両方がSOCとして実装されてもよい。図16から分かるように、不揮発性メモリIF695を有するHDDをLPDDとして、および/またはLPDDに加えて利用することができる。ホスト制御モジュール651は、ホスト不揮発性メモリIF693を介して、不揮発性メモリIF695を有するHDDと通信する。ホスト制御モジュール651は、ホスト不揮発性メモリIF693と統合されてよい。
図17においては、直接インタフェース680との通信をサポートするインタフェース690を含む例示的LPDD682が示されている。上述の通り、インタフェース680および690は、周辺部材相互接続(PCI)バス、PCIエクスプレス(PCIX)バス、および/または任意の他の適切なバスあるいはインタフェースであってよい。LPDD682は、HDC692、バッファ694、および/またはプロセッサ696を含む。LPDD682はさらに上述のように、スピンドル/VCMドライバ676、読み出し/書き込みチャネル回路678、プラッタ662、スピンドルモータ665、読み出し/書き込みアーム668、読み出し部材669、およびプリアンプ670を含む。また、HDC653、バッファ656およびプロセッサ658は組み合わせられて両方のドライブに利用することができる。同様にスピンドル/VCMドライバと読み出しチャネル回路もオプションとして組み合わせられてよい。図13−17の実施形態では、LPDDを積極的にバッファリングするで性能が向上されている。例えば、バッファを利用して、ホストデータバス上の最適速度用にデータブロックサイズが最適化される。
従来のコンピュータシステムでは、ページングファイルは、オペレーティングシステムが、コンピュータの揮発性メモリに収まらないプログラムおよび/またはデータファイルの部分を保持するのに利用するHPDDあるいはHP不揮発性メモリ上の隠しファイルである。ページングファイルおよび物理メモリ、あるいはRAMは、コンピュータの仮想メモリを定義する。オペレーティングシステムは、必要に応じてデータをページングファイルからメモリへ転送し、揮発性メモリからページングファイルへデータを戻して、新たなデータ用のスペースを設ける。ページにグファイルはスワップファイルとも称される。
図18−20においては、本発明は、LPDDなどのLP不揮発性メモリ、不揮発性メモリIFを有するHDD、および/またはフラッシュメモリを利用して、コンピュータシステムの仮想メモリを増やす。図18においては、オペレーティングシステム700は、ユーザに仮想メモリ702を定義させる。動作中、オペレーティングシステム700は、一以上のバス704を介して仮想メモリ702をアドレスする。仮想メモリ702は、揮発性メモリ708および、フラッシュメモリのようなLP不揮発性メモリ710、不揮発性メモリIFを有するHDD、および/またはLPDDを含む。
図19を参照すると、オペレーティングシステムは、ユーザに、幾らかのあるいは全てのLP不揮発性メモリ710をページングメモリとして割り当てさせ、仮想メモリを増やす。ステップ720から制御が始まる。ステップ724では、オペレーティングシステムは、さらなるページングメモリが要求されているか否かを判定する。そうでないということであれば、制御はステップ724へループバックする。さもなければ、オペレーティングシステムは、ステップ728でファイル利用をページングするLP不揮発性メモリの一部を割り当て、仮想メモリを増やす。
図20で、オペレーティングシステムは、さらにあるLP不揮発性メモリをページングメモリとして利用する。制御はステップ740から始まる。ステップ744で、制御は、オペレーティングシステムがデータ書き込み動作を要求しているか否かを判定する。判定が肯定的であれば、制御はステップ748を継続し、揮発性メモリの容量が超えているか否かを判定する。超えていないということであれば、揮発性メモリがステップ750で書き込み動作用に利用される。ステップ748の判定が肯定的である場合、ステップ754でLP不揮発性メモリのページングファイルにデータが記憶される。ステップ744の判定が否定的である場合、制御はステップ760を継続し、データ読み出しが要求されているか否かを判定する。判定が否定的であった場合、制御はステップ744にループバックする。さもなければ、制御は、アドレスがRAMアドレスに対応しているかをステップ764で判定する。ステップ764の判定が肯定的だった場合、制御は、ステップ764で揮発性メモリからデータを読み出して、ステップ744を継続する。ステップ764の判定が否定的だった場合、制御は、ステップ770でLP不揮発性メモリのページングファイルからデータを読み出し、ステップ744を継続する。
理解されるように、仮想メモリのサイズを増やすのにフラッシュメモリのようなLP不揮発性メモリ、不揮発性メモリIFを有するHDD、および/またはLPDDを利用することで、HPDDを利用するシステムに比較してコンピュータ性能が上がる。さらに、消費電力は、ページングファイルにHPDDを利用するシステムより低い。HPDDは、増加したサイズによりさらなるスピンアップ時間を要するが、これにより、フラッシュメモリと比較してデータアクセス時間が増え、スピンアップレイテンシ、および/または不揮発性メモリIFを有するLPDDあるいはLPDD HDDがなく、サインアップタイムが短く電力損失量が少ない。
図21を参照すると、ディスクアレイ808と通信する一以上のサーバおよび/またはクライアント804を含むRedundant Array of Independent Disks(RAID)システム800が示されている。一以上のサーバおよび/またはクライアント804が、ディスクアレイ制御機812および/またはアレイ管理モジュール814を含む。ディスクアレイ制御機812および/アレイ管理モジュール814は、データを受信して、該データに論理→物理へのアドレスマッピングを行い、ディスクアレイ808へ送る。ディスクアレイは典型的に複数のHPDD816を含む。
多数のHPDD816は、耐故障性(リダンダンシ)および/または向上したデータアクセスレートを提供する。RAIDシステム800は、ディスクアレイ808が一つの大きなハードディスクのように多数のHPDD個々にアクセスする方法を提供する。集合的に、ディスクアレイ808は、数百のGbから数10〜数100のTbのデータ記憶を提供しうる。データはさまざまな方法で多数のHPDD816に記憶され、一つのドライブが故障した場合に全てのデータを失う危険性を低減し、データアクセス時間を向上させる。
データをHPDD816に記憶する方法は、典型的にRAIDレベルと称されている。RAIDレベル0あるいはディスクストリップを含む様々なRAIDレベルがある。RAIDレベル0のシステムにおいては、データは多数のドライブにわたるブロックに書き込まれ、一つのドライブにデータブロックを書き込みあるいは読み出しを行わせ、同時に次のものが次のブロックを検索する。ディスクストライピングの利点には、より高いアクセスレートおよびアレイ容量の完全利用が含まれる。その不利点は、耐故障性がないことである。あるドライブが故障すると、アレイの全コンテンツがアクセス不能となる。
RAIDレベル1あるいはディスクミラーリングによって、ひとたびに二回各ドライブに書き込むことでリダンダンシが提供される。あるドライブが故障すると、他のドライブが正確なデータの複製を有し、RAIDシステムが、ユーザアクセスに関してラプスのないミラードライブを利用するよう切り替える。不利点には、データアクセス速度が向上しないこと、および要求されるドライブ数(2N)の増加によりコストが高くなること、が挙げられる。しかし、RAIDレベル1によれば、HPDDのいずれかが故障した場合、アレイ管理ソフトウェアが単に全てのアプリケーション要求を生存HPDDに方向付けるので、データは最善に保護されるようになる。
RAIDレベル3は、誤り補正/回復用に、パリティ専用のさらなるドライブを有する多数のドライブにわたりデータをストライプする。RAIDレベル5は、ストライピングおよび誤り回復用のパリティを提供する。RAIDレベル5においては、パリティブロックがアレイドライブ間で分配され、これは、より均衡のとれたアクセスロードをドライブにわたり提供する。パリティ情報は、あるドライブが故障した場合にデータを回復するのに利用される。不利点は、比較的遅い書き込みサイクル(2読み出しおよび2書き込みが、各書き込みブロックについて必要となる)である。アレイ容量はN−1であり、最小でも3つのドライブが必要となる。
RAIDレベル0+1は、パリティを伴わないストリッピングおよびミラーリングに関する。利点は、速いデータアクセス(RAIDレベル0のように)、および単一のドライブ耐故障性(RAIDレベル1のように)である。RAIDレベル0+1は、依然として、二倍のディスク数を要する(RAIDレベル1のように)。理解されるように、他のRAIDレベルがあってよく、および/または、アレイ808にデータを記憶する方法があってよい。
図22Aおよび22Bを参照すると、本発明によるRAIDシステム834‐1は、X個のHPDDを含む一つのディスクアレイ836、およびY個のLPDDを含む一つのディスクアレイ838を含む。一以上のクライアントおよび/またはサーバ840が、ディスクアレイ制御機842および/またはアレイ管理モジュール844を含む。別個のデバイス842および844が示されているが、これらデバイスは所望であれば統合されてもよい。理解されるように、Xは2以上であり、Yは1以上である。XはYより大きくても小さくてもよく、および/または、Yと等しくてもよい。例えば、図22BではX=Y=ZであるRAIDシステム834‐1'が示されている。
図23A、23B、24A、および24Bを参照すると、RAIDシステム834‐2および834‐3が示されている。図23Aでは、LPDDディスクアレイ838は、サーバ/クライアント840と通信し、HPDDディスクアレイ836はLPDDディスクアレイ838と通信する。RAIDシステム834‐2は、LPDDディスクアレイ838を選択的に囲む(circumvent)管理バイパス経路を含みうる。理解されるように、Xは2以上であり、Yは1以上である。XはYより大きくても小さくてもよく、および/または、Yと等しくてもよい。例えば、図23BではX=Y=ZであるRAIDシステム834‐2'が示されている。図24Aでは、HPDDディスクアレイ836は、サーバ/クライアント840と通信し、LPDDディスクアレイ838は、HPDDディスクアレイ836と通信する。RAIDシステム834‐2は、LPDDディスクアレイ838を選択的に囲む点線846が示す管理バイパス経路を含みうる。理解されるように、Xは2以上であり、Yは1以上である。XはYより大きくても小さくてもよく、および/または、Yと等しくてもよい。例えば、図24BではX=Y=ZであるRAIDシステム834‐3'が示されている。利用されるストラテジには、図23A−24Bのライトスルー(write through)および/またはライトバック(write back)が含まれうる。
アレイ管理モジュール844および/またはディスク制御機842は、LPDDディスクアレイ838を利用して、HPDDディスクアレイ836の消費電力を減らす。典型的に、図21に示す従来のRAIDシステムのHPDDディスクアレイ808は、動作中に常時維持されて、要求されたデータアクセス時間をサポートする。理解されるように、HPDDディスクアレイ808は比較的大量の電力を損失する。さらに、大量のデータがHPDDディスクアレイ808に記憶されるので、HPDDのプラッタは、典型的に可能な限り大きく、これにより、読み出し/書き込みアームが平均的により遠くに動くので、より高い容量のスピンドルモータが必要となり、データアクセス時間が増える。
本発明によると、図6−17との関連で記載された技術は、図22Bに示されるRAIDシステム834に選択的に利用されることで、消費電力およびデータアクセス時間を低減する。図22Aおよび図23A−24Bには示していないが、本発明による他のRAIDシステムでもこれら技術を利用してよい。つまり、消費電力およびデータアクセス時間を減らすべくLPDDディスクアレイ838上に選択的にデータを記憶することで、ディスクアレイ制御機842および/またはアレイ管理制御機844により、図6および7A−7Dに記載されたLUBモジュール304、適応記憶モジュール306および/またはLPDD維持モジュールが選択的に実装される。図8A−8C、9、10に記載されている適応的記憶制御モジュール414は、さらに、ディスクアレイ制御機842および/またはアレイ管理制御機844に選択的に実装され、消費電力および/またはアクセス時間を低減する。図11A−11C、および12に記載した駆動電力低減モジュール522も、さらに、ディスクアレイ制御機842および/またはアレイ管理制御機844に実装されえ、消費電力およびデータアクセス時間を減少しうる。さらに、図13−17のマルチドライブシステムおよび/または直接インタフェースを、HPDDディスクアレイ836の一以上のHPDDとともに実装して、機能性を上げ、消費電力およびアクセス時間を低減してよい。
図25を参照すると、記憶デバイス854、記憶リクエスタ858、ファイルサーバ862、および通信システム866を含む先行技術によるネットワークアタッチドストレージ(NAS)システム850が示されている。記憶デバイス854は、典型的に、ディスクドライブ、RAIDシステム、テープ駆動機構、テープライブラリ、光ドライブ、ジュークボックス、および任意の他の共有用記憶デバイスを含む。記憶デバイス854は、好ましくはオブジェクト指向デバイスであるが、それに限られない。記憶デバイス854は、リクエスタ858がデータ記憶および取得するI/Oインタフェースを含みうる。リクエスタ858は、典型的に、記憶デバイス854を共有する、および/またはそれに直接アクセスするサーバおよび/またはクライアントを含む。
ファイルサーバ862は、要求認証および資源配置などの管理およびセキュリティ機能を行う。記憶デバイス854は、管理方向付けにファイルサーバ862を頼っており、一方でリクエスタ858は、ファイルサーバ862が責任を負う範囲において、記憶管理を免除される。より小さなシステムにおいては、専用ファイルサーバは望ましくない場合もある。このような場合、リクエスタがNASシステム850の動作を監督する責任を負ってもよい。このような次第で、管理モジュール870および872を含むファイルサーバ862およびリクエスタ858が示されており、一、あるいはその他の、および/または両方が提供されてよい。通信システム866は、NASシステム850の部材が通信する物理インフラストラクチャである。ネットワークおよびチャンネル両方の特性を有し、ネットワーク全ての部材を接続し典型的にチャネルでみられる低レイテンシを有することが望ましい。
NASシステム850に電源供給されると、記憶デバイス854は、互いに識別しあうか、あるいはファイルサーバ862などの共通の参照点、一以上のリクエスタ858、および/または通信システム866に識別する。通信システム866は典型的にこれに利用されるべきネットワーク管理技術を提供するが、これら技術は通信システムに関連する媒体に接続することでアクセス可能である。記憶デバイス854およびリクエスタ858は媒体にログする。オペレーティング構成の決定が望まれる部材はいずれも全ての他の部材を識別するのに媒体サービスを利用してよい。ファイルサーバ862からは、リクエスタ858はアクセスできる記憶デバイス854の存在を知り、記憶デバイス854は別のデバイスの位置を知る必要がある場合あるいはバックアップのような管理サービスを呼び出す必要がある場合、どこにいけばよいか知る。同様にファイルサーバ862は、媒体サービスから記憶デバイス854の存在を知ることができる。特定のインストレーションのセキュリティによって、リクエスタは幾らかの機器へのアクセスを否定されてよい。アクセス可能な記憶デバイス一式から、その後ファイル、データベース、および利用可能な空き容量を識別することができる。
同時に、各NAS部材は、知りたい特別な考慮点を何でもファイルサーバ862に識別してもよい。任意のデバイスレベルサービス属性を、他の全ての部材がその存在を知ることができるよう、ファイルサーバ862にひとたび通信しておくことができる。例えばリクエスタは、スタートアップの後、さらなる記憶容量の導入を知らされたいであろうし、これはリクエスタがファイルサーバ862へログするときに、属性によりトリガされる。ファイルサーバ862はこの処理を、新たな記憶デバイスが構成に追加されればいつでも自動的にすることができ、さらに、重要な特徴を知らせることを含んでもよい(例えば、RAID5であり、ミラーされている、などの特徴)。
リクエスタがファイルを開かねばならない場合、記憶デバイス854へ直接行くことができる場合があり、許可および配置情報を知るべくファイルサーバに行かねばならない場合もある。ファイルサーバ854が記憶装置へのアクセスを制御する範囲は、インストレーションのセキュリティ要件の関数である。
図26を参照すると、記憶デバイス904、リクエスタ908、ファイルサーバ912、および通信システム916を含む本発明によるネットワークアタッチドストレージ(NAS)システム900が示されている。記憶デバイス904は、図6−19に関して上述したRAIDシステム834、および/またはマルチディスクドライブシステム930を含む。記憶デバイス904は、典型的に、ディスクドライブ、RAIDシステム、テープ駆動機構、テープライブラリ、光ドライブ、ジュークボックス、および任意の他の共有用記憶デバイスを含みうる。理解されうるように、向上したRAIDシステムおよび/またはマルチディスクドライブシステム930を利用すると、NASシステム900の消費電力およびデータアクセス時間が低減される。
図27を参照すると、不揮発性メモリおよびディスクドライブインタフェース制御機を含むディスクドライブ制御機が示されている。つまり、図27のHDDは、不揮発性メモリインタフェース(以下、不揮発性メモリインタフェース(IF)を有するHDDと称する)を有する。図27のデバイスは、HDDが、ホストデバイスの既存の不揮発性メモリインタフェース(IF)に接続され、さらなる不揮発性記憶装置を提供することを可能とする。
ディスクドライブ制御機1100は、ホスト1102とディスクドライブ1104と通信する。不揮発性メモリIFを有するHDDは、ディスクドライブ制御機1100およびディスクドライブ1104を含む。ディスクドライブ1104は典型的にATA、ATA−CE、あるいはIDEといった種類のインタフェースを有する。さらにディスクドライブ制御機1100に連結されるのが、補助不揮発性メモリ1106であり、ここにはディスクドライブ制御機用のファームウェアコードが記憶される。この場合、ホスト1102は、単一のブロックとして示されているが典型的に、関連部材として、市販の不揮発性メモリデバイスに接続する種類の、工業規格の不揮発性メモリスロット(コネクタ)を含み、これがホストの標準の不揮発性メモリ制御機に接続される。このスロットは典型的にMMC(Multi Media Card)、SD(Secure Data)、SDとMMCとの組み合わせであるSD/MMC、HS−MMC(High Speed−MMC)、SDとHS−MMCとの組み合わせであるSD/HS−MMC、およびMemory Stickなどの、標準的な種類であってよい。このリストは限定的ではない。
典型的なアプリケーションは、不揮発性メモリインタフェースを介して埋め込み不揮発性メモリと通信するMP3音楽プレーヤあるいは携帯電話ハンドセットなどの携帯コンピュータあるいは家庭用電子機器である。不揮発性メモリインタフェースは、フラッシュインタフェース、NANDフラッシュインタフェースおよび/または他の適切な不揮発性半導体メモリインタフェースを含んでよい。本開示では、不揮発性半導体メモリ、ハードディスクドライブあるいは他の種類のディスクドライブが、不揮発性半導体メモリを置き換え、インタフェース信号を利用するものとして提供される。開示される方法は、ディスクドライブ用の不揮発性メモリのようなインタフェースを提供し、これにより、通常であればフラッシュメモリしか受け付けないようなホストシステムにディスクドライブを組み込むことを容易にする。ディスクドライブが記憶デバイスとしてフラッシュメモリにより勝る利点は、特定のコストにおける大幅に大きな記憶容量である。
ホスト不揮発性メモリ制御機ファームウェアおよびソフトウェアに、ほんの最小限の変更を行うことで、開示されたインタフェース制御機を利用してディスクドライブを組み込むことができる。さらに、最小限の追加コマンドは必要である。利点であるのは、ホストおよびディスクドライブ間で転送される論理ブロック数という意味で、特定の読み出しあるいは書き込み動作用にオープンエンドのデータ転送があることである。さらに、ディスクドライブのセクタカウント数をホストが提供する必要がないことである。
ある実施形態においては、ディスクドライブ1104は小さいフォームファクタ(SFF)ハードディスクドライブを有し、これは典型的には650×15×70mmの物理サイズを有する。このようなSSFハードディスクドライブの典型的なデータ転送レートは、1秒あたり25メガバイトである。
図27のディスクドライブ制御機1100の機能を以下に詳述する。ディスクドライブ制御機1100はインタフェース制御機1110を有し、これはホストシステム1102に、14ラインのバスを有するフラッシュメモリ制御機として提示する。インタフェース制御機1110はさらに、ホスト1102とバッファマネージャ1112との間で、ホストコマンド解釈およびデータフロー制御という機能を行う。バッファマネージャ回路1112は、インタフェース制御機1100と同じチップの一部として、あるいは別個のチップ上に含まれうるSRAMあるいはDRAMバッファ1118であってよい実際のバッファ(メモリ)を、メモリ制御機1116を介して制御する。バッファマネージャは、以下に詳述するバッファフィーチャを提供する。
バッファマネージャ1112はさらに、トラックフォーマット生成および欠陥管理という機能を行うprocessor Interface/Servo and ID−Less/Defect Manager(MPIF/SAIL/DM)回路1122に接続される。MPIF/SAIL/DM回路1122は、Advanced High Performance Bus(AHB)1126に接続される。AHBバス1126に接続されるのは、ラインキャッシュ1128、およびプロセッサ1130であり、Tightly Coupled Memory(TCM)1134がプロセッサ1130に関連付けられる。プロセッサ1130は、埋め込みプロセッサあるいはマイクロプロセッサにより実装されうる。ラインキャッシュ1128の目的は、コード実行レイテンシを低減することである。外部フラッシュメモリ1106に連結されてもよい。
ディスクドライブ制御機1100の残りのブロックは、ディスクドライブをサポートする機能を行い、サーボ制御機1140、ディスクフォーマッタおよび誤り訂正回路1142、および、ディスクドライブ1104のプレアンプリフィケーション回路に接続する読み出しチャネル回路1144を含む。8ライン(0‐7)を有する14ラインの並列バスは、双方向入力/出力(I/O)データを搬送しうる。残りのラインは、コマンドCLE、ALE、/CE、/RE、/WE、およびR/Bをそれぞれ搬送しうる。
図28を参照すると、図27のインタフェース制御機がより詳細に示されている。インタフェース制御機1110は、フラッシュ制御機(flash_ctl)ブロック1150、フラッシュレジスタ(flash_reg)ブロック1152、フラッシュFIFOラッパ(flash_fifo_wrapper)ブロック1154、およびフラッシュシステム同期(flash_sys_syn)ブロック1156を含む。
フラッシュレジスタブロック1152はレジスタアクセスに利用される。それは、プロセッサ1130およびホスト1102がプログラムしたコマンドを記憶する。フラッシュ制御機1150のフラッシュステートマシン(不図示)は、ホスト1102から入力コマンドをデコードし、ディスクドライブ制御機1100に制御を提供する。フラッシュFIFOラッパ1154は、32×32の双方向非同期FIFOが実装しうるFIFOを含む。バッファマネージャインタフェース(BM IF)を介してバッファマネージャ1112からデータを転送・受信するためにデータを生成し信号を制御する。FIFOの転送方向は、フラッシュレジスタ1152に記憶されるコマンドにより制御されてよい。フラッシュシステム同期ブロック1156は、インタフェース制御機とバッファマネージャインタフェースとの間の制御信号を同期させる。フラッシュFIFOラッパ1154に対してカウンタクリアパルス(clk2_clr)も生成する。
フラッシュ制御機1150は、LPDDのランダムな読み出しを実装するインタフェース信号ラインを制御してもよい。フラッシュ制御機1150は、LPDDのランダムな書き込みを実装するインタフェース信号ラインを制御してもよい。フラッシュ制御機1150は、LPDDの連続読み取りを実装するインタフェース信号ラインを制御し、LPDDの連続書き込みを実装するインタフェース信号ラインを制御してもよい。フラッシュ制御機1150は、制御モジュールとLPDDとの間のコマンド転送を実装するインタフェース信号ラインを制御してよい。フラッシュ制御機1150は、対応するフラッシュメモリコマンド一式にLPDDコマンド一式をマップしてよい。
レジスタメモリ1152は、プロセッサバスを介してインタフェース制御機およびLPDDプロセッサと通信する。レジスタメモリ1152は、LPDDプロセッサおよび制御モジュールがプログラムしたコマンドを記憶する。フラッシュ制御機1150は、バッファメモリのLPDDからの読み取りデータを記憶して制御モジュールおよびLPDD間のデータ転送レートの差異を補償し、メモリバッファにデータがあることを示唆するために制御モジュールにデータ準備信号を送信してよい。
フラッシュ制御機1150は、制御モジュールおよびLPDD間のデータ転送レートの差異を補償するべくバッファメモリの制御モジュールからの書き込みデータを記憶してよい。フラッシュ制御機1150は、メモリバッファにデータがあることを示唆するために制御モジュールにデータ準備信号を送信してよい。
図29を参照すると、フラッシュインタフェースを有するマルチディスクドライブシステムの機能ブロック図が大体1200として示されている。前述の説明は、フラッシュインタフェースをともなう一つのディスクドライブの利用に関していたが(低電力あるいは高電力ディスクドライブ)、フラッシュインタフェースを介して多数のディスクドライブを接続することができる。より具体的には、フラッシュインタフェース1200を有するマルチディスクドライブシステムは、ホスト1202のフラッシュインタフェースと通信するホストフラッシュインタフェース1206を含む。ホストフラッシュインタフェース1202は上述の通り動作する。駆動制御モジュール1208は、HPDD1220およびLPDD1222のうちのゼロ、1、あるいは両方を選択的に操作する。低電力および高電力モードの動作に関する上述の制御技術は、駆動制御モジュール1208が行うことができる。幾らかの実装例においては、ホストフラッシュインタフェース1206は、ホストの電力モードを感知する、および/またはホスト1202の電力モードを識別する情報を受信する。
図30を参照すると、図30のマルチディスクドライブが行うステップのフローチャートが示されている。ステップ1230から制御が始まる。ステップ1232において、制御は、ホストがONであるか否かを決定する。ステップ1232の判定が肯定的である場合、制御は、ステップ1234でホストが高電力モードにあるか否かを判定する。ステップ1234の判定が肯定的である場合、制御は、必要に応じてステップ1236でLPDD1222および/またはHPDD1220に電力供給する。ステップ1234の判定が否定的である場合、制御は、ステップ1238でホストが低電力モードにあるか否かを判定する。ステップ1238の判定が肯定的である場合、制御はステップ1240でHPDDの電力供給を止め、LPDDを必要に応じて操作して電力維持する。制御はステップ1238から(もし判定が否定的である場合)、ステップ1240そしてステップ1232と継続する。
理解されうるように、上述のフラッシュインタフェースを有するHDDは、上述のフラッシュインタフェースを有するマルチディスクドライブを利用することができる。さらに、LPDDおよびHPDDを有するシステムについて上述した制御技術の任意のものを、図29に示したフラッシュインタフェースを有するマルチディスクドライブで利用することができる。LPDDあるいはHPDDは、上述の実施形態の任意のものにおいて、任意の種類の低電力不揮発性メモリで置き換えられてよい。例えば、LPDDあるいはHPDDは、フラッシュメモリに例示されるがそれに限定されない任意の適切な不揮発性固体メモリに置き換えられてよい。同様に、上述の実施形態の任意のものにおいて、低電力不揮発性メモリは、低電力ディスクドライブに置き換えられてよい。フラッシュメモリは幾らかの実施形態で上述されたが、任意の種類の不揮発性半導体メモリを利用することができる。
当業者であれば、上述の記載から、本発明の広い教示が多種の形式で実装できることを理解しよう。従って、本発明は特定の例示により記載されたが、本発明の真の範囲はそのように限定されるべきではない、というのは、当業者には図面、明細書、および以下の請求項から他の変形例が明らかだからである。

Claims (44)

  1. 高電力モードおよび低電力モードを有するデバイス用のディスクドライブシステムであって、
    低電力ディスクドライブ(LPDD)と、
    高電力ディスクドライブ(HPDD)と、を備え、
    前記LPDDおよび前記HPDDのうち少なくとも一つは、不揮発性半導体メモリインタフェースを介して前記デバイスと通信する、ディスクドライブシステム。
  2. 前記LPDD内の最稀使用ブロック(LUB)を識別し、データ記憶要求およびデータ取得要求のうち少なくともいずれかが受信された場合、前記低電力モード中に前記LUBを前記HPDDに選択的に転送するLUBモジュールを含む制御モジュールをさらに備える、請求項1に記載のディスクドライブシステム。
  3. 書き込みデータの前記記憶要求中に、前記LPDD上に前記書き込みデータ用に十分な容量が利用可能である場合、前記制御モジュールは前記書き込みデータを前記LPDDに転送する、請求項2に記載のディスクドライブシステム。
  4. 前記LPDD上に前記書き込みデータ用に十分な容量が利用可能でない場合、前記制御モジュールは、前記HPDDに電力供給して、前記LUBを前記LPDDから前記HPDDへ転送し、前記書き込みデータを前記LPDDに転送する、請求項2に記載のディスクドライブシステム。
  5. 前記LPDD上に前記書き込みデータ用に十分な容量が利用可能でない場合、前記制御モジュールは、前記書き込みデータが前記LUBの前に利用される可能性があるか否かを判定する適応記憶モジュールを含む、請求項2に記載のディスクドライブシステム。
  6. 前記書き込みデータが前記LUBの後に利用される可能性がある場合、前記制御モジュールは前記書き込みデータを前記HPDD上に記憶する、請求項5に記載のディスクドライブシステム。
  7. 前記書き込みデータが前記LUBの前に利用される可能性がある場合、前記制御モジュールは前記HPDDに電力供給して、前記LUBを前記LPDDから前記HPDDに転送して、その後、前記書き込みデータを前記LPDDに転送する、請求項5に記載のディスクドライブシステム。
  8. 読み出しデータの前記取得要求中に、前記読み出しデータが前記LPDDに記憶されている場合、前記制御モジュールは、前記読み出しデータを前記LPDDから取得する、請求項2に記載のディスクドライブシステム。
  9. 前記制御モジュールは、前記読み出しデータが前記LPDDに配置されない場合、前記読み出しデータが一度利用される可能性があるかどうかを判定する適応記憶モジュールを含み、前記読み出しデータが一度利用される可能性がある場合、前記制御モジュールは前記読み出しデータを前記HPDDから取得する、請求項8に記載のディスクドライブシステム。
  10. 前記適応記憶モジュールが、前記読み出しデータが一度を超える回数利用される可能性があると判定した場合で、前記LPDD上に前記読み出しデータ用に十分な容量が利用可能である場合、前記制御モジュールは前記読み出しデータを前記HPDDから前記LPDDへ転送する、請求項9に記載のディスクドライブシステム。
  11. 前記適応記憶モジュールが、前記読み出しデータが一度を超える回数利用される可能性があると判定した場合で、前記LPDD上に前記読み出しデータ用に十分な容量が利用可能でない場合、前記制御モジュールは前記LUBを前記LPDDから前記HPDDへ転送し、前記読み出しデータを前記HPDDから前記LPDDへ転送する、請求項9に記載のディスクドライブシステム。
  12. 前記LPDD上に前記読み出しデータ用に十分な容量が利用可能である場合、前記制御モジュールは、前記読み出しデータを前記HPDDから前記LPDDへ転送する、請求項8に記載のディスクドライブシステム。
  13. 前記LPDD上に前記読み出しデータ用に十分な容量が利用可能でない場合、前記制御モジュールは、前記LUBを前記LPDDから前記HPDDへ転送し、前記読み出しデータを前記HPDDから前記LPDDへ転送する、請求項8に記載のディスクドライブシステム。
  14. 前記読み出しデータが前記LPDDに配置されない場合、前記制御モジュールは前記読み出しデータを前記HPDDから取得する、請求項8に記載のディスクドライブシステム。
  15. 前記HPDDは1.8"より大きい直径を有する一以上のプラッタを含み、前記LPDDは1.8"以下の直径を有する一以上のプラッタを含む、請求項1に記載のディスクドライブシステム。
  16. 前記HPDDおよび前記LPDDは前記不揮発性半導体メモリインタフェースを介して前記デバイスと通信する、請求項1に記載のディスクドライブシステム。
  17. 前記LPDDおよび前記HPDDと通信する制御モジュールをさらに備え、前記低電力モードでの書き込みデータの記憶要求中に、前記制御モジュールは、前記LPDD上に前記書き込みデータ用に十分な容量が利用可能であるか否かを判定し、十分な容量が利用可能である場合、前記書き込みデータを前記LPDDへ転送する、請求項1に記載のディスクドライブシステム。
  18. 前記HPDDおよび前記LPDDは前記不揮発性半導体メモリインタフェースを介して前記デバイスと通信する、請求項17に記載のディスクドライブシステム。
  19. 十分な容量が利用可能でない場合、前記制御モジュールは、前記書き込みデータを前記HPDDに記憶する、請求項17に記載のディスクドライブシステム。
  20. 前記制御モジュールは、前記高電力モード中に前記LPDDから前記HPDDへデータファイルを転送して前記LPDD上で利用可能なディスク容量を増加するLPDD維持モジュールをさらに含む、請求項17に記載のディスクドライブシステム。
  21. 前記LPDD維持モジュールは、古さ、サイズ、および前記低電力モードで将来利用される可能性のうち少なくとも一つに基づいて、前記データファイルを転送する、請求項20に記載のディスクドライブシステム。
  22. 前記HPDDは1.8"より大きい直径を有する一以上のプラッタを含み、前記LPDDは1.8"以下の直径を有する一以上のプラッタを含む、請求項17に記載のディスクドライブシステム。
  23. 高電力モードおよび低電力モードを有するデバイス用のディスクドライブシステムを操作する方法であって、
    低電力ディスクドライブ(LPDD)と、高電力ディスクドライブ(HPDD)とを提供することと、
    前記LPDDおよび前記HPDDのうち少なくとも一つと前記デバイスとを、不揮発性半導体メモリインタフェースを介して通信させることと、を含む、方法。
  24. 前記LPDD内のLUBを識別することと、
    データ記憶要求およびデータ取得要求のうち少なくともいずれかが受信された場合、前記低電力モード中に前記LUBを前記HPDDに選択的に転送することと、をさらに含む、請求項23に記載の方法。
  25. 書き込みデータの前記記憶要求中に、前記LPDD上に前記書き込みデータ用に十分な容量が利用可能である場合、前記書き込みデータを前記LPDDに転送することをさらに含む、請求項24に記載の方法。
  26. 前記LPDD上に前記書き込みデータ用に十分な容量が利用可能でない場合、前記HPDDに電力供給して、前記LUBを前記LPDDから前記HPDDへ転送し、前記書き込みデータを前記LPDDに転送することをさらに含む、請求項24に記載の方法。
  27. 前記LPDD上に前記書き込みデータ用に十分な容量が利用可能でない場合、前記書き込みデータが前記LUBの前に利用される可能性があるか否かを判定することをさらに含む、請求項24に記載の方法。
  28. 前記書き込みデータが前記LUBの後に利用される可能性がある場合、前記書き込みデータを前記HPDD上に記憶することをさらに含む、請求項27に記載の方法。
  29. 前記書き込みデータが前記LUBの前に利用される可能性がある場合、前記HPDDに電力供給して、前記LUBを前記LPDDから前記HPDDに転送して、その後、前記書き込みデータを前記LPDDに転送することをさらに含む、請求項27に記載の方法。
  30. 読み出しデータの前記取得要求中に、前記読み出しデータが前記LPDDに記憶されている場合、前記読み出しデータを前記LPDDから取得することをさらに含む、請求項24に記載の方法。
  31. 前記読み出しデータが前記LPDDに配置されない場合、前記読み出しデータが一度利用される可能性があるかどうかを判定することと、
    前記読み出しデータが一度利用される可能性がある場合、前記読み出しデータを前記HPDDから取得することと、をさらに含む、請求項30に記載の方法。
  32. 前記読み出しデータが一度を超える回数利用される可能性がある場合で、前記LPDD上に前記読み出しデータ用に十分な容量が利用可能である場合、前記読み出しデータを前記HPDDから前記LPDDへ転送することをさらに含む、請求項31に記載の方法。
  33. 前記読み出しデータが一度を超える回数利用される可能性があると判定した場合で、前記LPDD上に前記読み出しデータ用に十分な容量が利用可能でない場合、前記LUBを前記LPDDから前記HPDDへ転送し、前記読み出しデータを前記HPDDから前記LPDDへ転送することをさらに含む、請求項31に記載の方法。
  34. 前記LPDD上に前記読み出しデータ用に十分な容量が利用可能である場合、前記読み出しデータを前記HPDDから前記LPDDへ転送することをさらに含む、請求項31に記載の方法。
  35. 前記LPDD上に前記読み出しデータ用に十分な容量が利用可能でない場合、前記LUBを前記LPDDから前記HPDDへ転送し、前記読み出しデータを前記HPDDから前記LPDDへ転送することをさらに含む、請求項31に記載の方法。
  36. 前記読み出しデータが前記LPDDに配置されない場合、前記読み出しデータを前記HPDDから取得することをさらに含む、請求項31に記載の方法。
  37. 前記HPDDおよび前記LPDDは前記不揮発性半導体メモリインタフェースを介して前記デバイスと通信する、請求項23に記載の方法。
  38. 前記LPDD上に前記書き込みデータ用に十分な容量が利用可能であるか否かを判定し、前記低電力モードでの書き込みデータの記憶要求中に十分な容量が利用可能である場合、前記書き込みデータを前記LPDDへ転送することをさらに含む、請求項23に記載の方法。
  39. 前記HPDDおよび前記LPDDは前記不揮発性半導体メモリインタフェースを介して前記デバイスと通信する、請求項38に記載の方法。
  40. 十分な容量が利用可能でない場合、前記書き込みデータを前記HPDDに記憶することをさらに含む、請求項38に記載の方法。
  41. 前記高電力モード中に前記LPDDから前記HPDDへデータファイルを転送して前記LPDD上で利用可能なディスク容量を増加することをさらに含む、請求項38に記載の方法。
  42. 古さ、サイズ、および前記低電力モードで将来利用される可能性のうち少なくとも一つに基づいて、前記データファイルを転送することをさらに含む、請求項41に記載の方法。
  43. 前記不揮発性半導体メモリインタフェースはフラッシュメモリインタフェースを含む、請求項1に記載のディスクドライブシステム。
  44. 前記不揮発性半導体メモリインタフェースはフラッシュメモリインタフェースを含む、請求項23に記載の方法。
JP2009509862A 2006-05-10 2007-05-10 フラッシュインタフェースを有するハードディスクドライブを含む適応記憶システム Pending JP2009536767A (ja)

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
US79915106P 2006-05-10 2006-05-10
US82086706P 2006-07-31 2006-07-31
US11/503,016 US7702848B2 (en) 2004-06-10 2006-08-11 Adaptive storage system including hard disk drive with flash interface
PCT/US2007/011326 WO2007133646A2 (en) 2006-05-10 2007-05-10 Adaptive storage system including hard disk drive with flash interface

Publications (2)

Publication Number Publication Date
JP2009536767A true JP2009536767A (ja) 2009-10-15
JP2009536767A5 JP2009536767A5 (ja) 2010-06-03

Family

ID=38694479

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2009509862A Pending JP2009536767A (ja) 2006-05-10 2007-05-10 フラッシュインタフェースを有するハードディスクドライブを含む適応記憶システム

Country Status (6)

Country Link
US (2) US7702848B2 (ja)
EP (1) EP2016476B1 (ja)
JP (1) JP2009536767A (ja)
KR (1) KR101379940B1 (ja)
TW (1) TWI426444B (ja)
WO (1) WO2007133646A2 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2012063280A1 (en) 2010-11-09 2012-05-18 Hitachi, Ltd. Structual fabric of a storage apparatus for mounting storage devices

Families Citing this family (40)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20070083785A1 (en) * 2004-06-10 2007-04-12 Sehat Sutardja System with high power and low power processors and thread transfer
US7788427B1 (en) 2005-05-05 2010-08-31 Marvell International Ltd. Flash memory interface for disk drive
US20080140921A1 (en) * 2004-06-10 2008-06-12 Sehat Sutardja Externally removable non-volatile semiconductor memory module for hard disk drives
US7617359B2 (en) * 2004-06-10 2009-11-10 Marvell World Trade Ltd. Adaptive storage system including hard disk drive with flash interface
US7730335B2 (en) 2004-06-10 2010-06-01 Marvell World Trade Ltd. Low power computer with main and auxiliary processors
US20070094444A1 (en) * 2004-06-10 2007-04-26 Sehat Sutardja System with high power and low power processors and thread transfer
US7702848B2 (en) * 2004-06-10 2010-04-20 Marvell World Trade Ltd. Adaptive storage system including hard disk drive with flash interface
US7634615B2 (en) * 2004-06-10 2009-12-15 Marvell World Trade Ltd. Adaptive storage system
US7401238B2 (en) * 2005-07-28 2008-07-15 Cassatt Corporation System and method for causing an idle image to execute on an application node of a distributed computing system when instructed to power down
US20080263324A1 (en) 2006-08-10 2008-10-23 Sehat Sutardja Dynamic core switching
US8560760B2 (en) * 2007-01-31 2013-10-15 Microsoft Corporation Extending flash drive lifespan
US7657572B2 (en) 2007-03-06 2010-02-02 Microsoft Corporation Selectively utilizing a plurality of disparate solid state storage locations
EP2229100A4 (en) * 2007-12-07 2013-05-15 Allen Vanguard Corp DEVICE AND METHOD FOR MEASURING DATA FOR ANALYSIS OF INJURIES
US8375190B2 (en) * 2007-12-11 2013-02-12 Microsoft Corporation Dynamtic storage hierarachy management
JP5207792B2 (ja) * 2008-02-19 2013-06-12 キヤノン株式会社 情報処理装置及び情報処理方法
US8407697B2 (en) * 2008-06-09 2013-03-26 International Business Machines Corporation Application mobility using virtual real memory services
US20100325352A1 (en) * 2009-06-19 2010-12-23 Ocz Technology Group, Inc. Hierarchically structured mass storage device and method
EP2273365A1 (en) * 2009-06-26 2011-01-12 Thomson Licensing Combined memory and storage device in an apparatus for data processing
US8245060B2 (en) * 2009-10-15 2012-08-14 Microsoft Corporation Memory object relocation for power savings
KR101090407B1 (ko) * 2009-12-24 2011-12-06 주식회사 팍스디스크 듀얼 메모리 영역을 관리하는 반도체 스토리지 시스템의 제어 방법
WO2011128867A1 (en) 2010-04-15 2011-10-20 Ramot At Tel Aviv University Ltd. Multiple programming of flash memory without erase
US8447925B2 (en) 2010-11-01 2013-05-21 Taejin Info Tech Co., Ltd. Home storage device and software including management and monitoring modules
US8990494B2 (en) 2010-11-01 2015-03-24 Taejin Info Tech Co., Ltd. Home storage system and method with various controllers
US9235500B2 (en) * 2010-12-07 2016-01-12 Microsoft Technology Licensing, Llc Dynamic memory allocation and relocation to create low power regions
US9977732B1 (en) * 2011-01-04 2018-05-22 Seagate Technology Llc Selective nonvolatile data caching based on estimated resource usage
US9183135B2 (en) * 2011-01-21 2015-11-10 Micron Technology, Inc. Preparation of memory device for access using memory access type indicator signal
US9477597B2 (en) 2011-03-25 2016-10-25 Nvidia Corporation Techniques for different memory depths on different partitions
US8701057B2 (en) 2011-04-11 2014-04-15 Nvidia Corporation Design, layout, and manufacturing techniques for multivariant integrated circuits
US9529712B2 (en) * 2011-07-26 2016-12-27 Nvidia Corporation Techniques for balancing accesses to memory having different memory types
WO2013108132A2 (en) 2012-01-20 2013-07-25 Marvell World Trade Ltd. Cache system using solid state drive
CN103246559B (zh) * 2012-02-10 2016-12-14 联想(北京)有限公司 应用处理方法和电子设备
EP2859456A4 (en) * 2012-06-08 2016-06-15 Hewlett Packard Development Co INCREASING MEMORY CAPACITY FOR A KEY VALUE CACHE
US10528116B2 (en) 2013-03-14 2020-01-07 Seagate Technology Llc Fast resume from hibernate
US9600413B2 (en) * 2013-12-24 2017-03-21 Intel Corporation Common platform for one-level memory architecture and two-level memory architecture
US10474569B2 (en) 2014-12-29 2019-11-12 Toshiba Memory Corporation Information processing device including nonvolatile cache memory and processor
CN105824570B (zh) * 2015-01-04 2018-11-23 致伸科技股份有限公司 可降低耗电的硬盘装置以及降低硬盘装置耗电的方法
US10055144B1 (en) * 2016-03-30 2018-08-21 Amazon Technologies, Inc. Configurable storage drive
CN107861891A (zh) * 2017-11-14 2018-03-30 郑州天迈科技股份有限公司 用于公交车载硬盘的音视频数据存取方法
US11573737B2 (en) * 2020-03-02 2023-02-07 Silicon Motion, Inc. Method and apparatus for performing disk management of all flash array server
US11790947B1 (en) 2022-05-03 2023-10-17 Seagate Technology Llc Idle power saving for actuator device

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH05134820A (ja) * 1991-11-14 1993-06-01 Seiko Epson Corp 情報処理装置
JPH06266511A (ja) * 1993-03-15 1994-09-22 Canon Electron Inc Icカードインターフェイス付きディスク装置
JP2005353080A (ja) * 2004-06-10 2005-12-22 Marvell World Trade Ltd 適応記憶システム

Family Cites Families (70)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4425615A (en) 1980-11-14 1984-01-10 Sperry Corporation Hierarchical memory system having cache/disk subsystem with command queues for plural disks
US5150465A (en) 1988-11-30 1992-09-22 Compaq Computer Corporation Mode-selectable integrated disk drive for computer
US5293500A (en) 1989-02-10 1994-03-08 Mitsubishi Denki K.K. Parallel processing method and apparatus
DE69033438T2 (de) 1989-04-13 2000-07-06 Sandisk Corp Austausch von fehlerhaften Speicherzellen einer EEprommatritze
US5440749A (en) 1989-08-03 1995-08-08 Nanotronics Corporation High performance, low cost microprocessor architecture
US5455913A (en) 1990-05-14 1995-10-03 At&T Global Information Solutions Company System and method for transferring data between independent busses
US5485595A (en) * 1993-03-26 1996-01-16 Cirrus Logic, Inc. Flash memory mass storage architecture incorporating wear leveling technique without using cam cells
GB2286267A (en) 1994-02-03 1995-08-09 Ibm Energy-saving cache control system
US5596708A (en) * 1994-04-04 1997-01-21 At&T Global Information Solutions Company Method and apparatus for the protection of write data in a disk array
US5659718A (en) * 1994-08-19 1997-08-19 Xlnt Designs, Inc. Synchronous bus and bus interface device
JPH0883148A (ja) 1994-09-13 1996-03-26 Nec Corp 磁気ディスク装置
GB9419246D0 (en) 1994-09-23 1994-11-09 Cambridge Consultants Data processing circuits and interfaces
US5815726A (en) * 1994-11-04 1998-09-29 Altera Corporation Coarse-grained look-up table architecture
US5768164A (en) 1996-04-15 1998-06-16 Hewlett-Packard Company Spontaneous use display for a computing system
US6006320A (en) 1996-07-01 1999-12-21 Sun Microsystems, Inc. Processor architecture with independent OS resources
US5937423A (en) 1996-12-26 1999-08-10 Intel Corporation Register interface for flash EEPROM memory arrays
US6035408A (en) 1998-01-06 2000-03-07 Magnex Corp. Portable computer with dual switchable processors for selectable power consumption
EP0974908A2 (en) * 1998-07-24 2000-01-26 Interuniversitair Microelektronica Centrum Vzw Optimized virtual memory management for dynamic data types
US6282614B1 (en) 1999-04-15 2001-08-28 National Semiconductor Corporation Apparatus and method for reducing the power consumption of a microprocessor with multiple levels of caches
US6457135B1 (en) 1999-08-10 2002-09-24 Intel Corporation System and method for managing a plurality of processor performance states
KR100490934B1 (ko) 1999-08-25 2005-05-27 시게이트 테크놀로지 엘엘씨 디스크 드라이브의 지능형 파워 관리
US6501999B1 (en) 1999-12-22 2002-12-31 Intel Corporation Multi-processor mobile computer system having one processor integrated with a chipset
US6631474B1 (en) 1999-12-31 2003-10-07 Intel Corporation System to coordinate switching between first and second processors and to coordinate cache coherency between first and second processors during switching
US6496915B1 (en) 1999-12-31 2002-12-17 Ilife Solutions, Inc. Apparatus and method for reducing power consumption in an electronic data storage system
US6594724B1 (en) * 2000-03-30 2003-07-15 Hitachi Global Storage Technologies Netherlands B.V. Enhanced DASD with smaller supplementary DASD
US6628469B1 (en) * 2000-07-11 2003-09-30 International Business Machines Corporation Apparatus and method for low power HDD storage architecture
US6631469B1 (en) 2000-07-17 2003-10-07 Intel Corporation Method and apparatus for periodic low power data exchange
KR100353731B1 (ko) 2000-11-01 2002-09-28 (주)니트 젠 일회성 지문템플릿을 이용한 사용자 인증시스템 및 방법
US6785767B2 (en) 2000-12-26 2004-08-31 Intel Corporation Hybrid mass storage system and method with two different types of storage medium
US6986066B2 (en) 2001-01-05 2006-01-10 International Business Machines Corporation Computer system having low energy consumption
US20020129288A1 (en) 2001-03-08 2002-09-12 Loh Weng Wah Computing device having a low power secondary processor coupled to a keyboard controller
US7231531B2 (en) 2001-03-16 2007-06-12 Dualcor Technologies, Inc. Personal electronics device with a dual core processor
US20030153354A1 (en) 2001-03-16 2003-08-14 Cupps Bryan T. Novel personal electronics device with keypad application
US7184003B2 (en) 2001-03-16 2007-02-27 Dualcor Technologies, Inc. Personal electronics device with display switching
US6976180B2 (en) 2001-03-16 2005-12-13 Dualcor Technologies, Inc. Personal electronics device
US6725336B2 (en) 2001-04-20 2004-04-20 Sun Microsystems, Inc. Dynamically allocated cache memory for a multi-processor unit
TWI234074B (en) * 2001-05-03 2005-06-11 Kwok-Yan Leung Device and method for protecting data records in recording media
US6925529B2 (en) 2001-07-12 2005-08-02 International Business Machines Corporation Data storage on a multi-tiered disk system
US6859856B2 (en) 2001-10-23 2005-02-22 Flex P Industries Sdn. Bhd Method and system for a compact flash memory controller
US8181118B2 (en) 2001-11-28 2012-05-15 Intel Corporation Personal information device on a mobile computing platform
US6804632B2 (en) 2001-12-06 2004-10-12 Intel Corporation Distribution of processing activity across processing hardware based on power consumption considerations
US6639827B2 (en) 2002-03-12 2003-10-28 Intel Corporation Low standby power using shadow storage
KR100441608B1 (ko) 2002-05-31 2004-07-23 삼성전자주식회사 낸드 플래시 메모리 인터페이스 장치
US7269752B2 (en) 2002-06-04 2007-09-11 Lucent Technologies Inc. Dynamically controlling power consumption within a network node
US7082495B2 (en) * 2002-06-27 2006-07-25 Microsoft Corporation Method and apparatus to reduce power consumption and improve read/write performance of hard disk drives using non-volatile memory
US6775180B2 (en) 2002-12-23 2004-08-10 Intel Corporation Low power state retention
US7254730B2 (en) 2003-02-14 2007-08-07 Intel Corporation Method and apparatus for a user to interface with a mobile computing device
AU2003900764A0 (en) 2003-02-20 2003-03-06 Secure Systems Limited Bus bridge security system and method for computers
JP2006523882A (ja) 2003-04-14 2006-10-19 コーニンクレッカ フィリップス エレクトロニクス エヌ ヴィ ユニバーサルなドライブ装置のためのフォーマットマッピング方式
US7221331B2 (en) 2003-05-05 2007-05-22 Microsoft Corporation Method and system for auxiliary display of information for a computing device
US7240228B2 (en) 2003-05-05 2007-07-03 Microsoft Corporation Method and system for standby auxiliary processing of information for a computing device
US7069388B1 (en) 2003-07-10 2006-06-27 Analog Devices, Inc. Cache memory data replacement strategy
US7925298B2 (en) 2003-09-18 2011-04-12 Vulcan Portals Inc. User interface for a secondary display module of a mobile electronic device
US20050066209A1 (en) 2003-09-18 2005-03-24 Kee Martin J. Portable electronic device having high and low power processors operable in a low power mode
US7500127B2 (en) 2003-09-18 2009-03-03 Vulcan Portals Inc. Method and apparatus for operating an electronic device in a low power mode
US7017059B2 (en) 2003-12-12 2006-03-21 Cray Canada Inc. Methods and apparatus for replacing cooling systems in operating computers
US20070055841A1 (en) 2003-12-16 2007-03-08 Real Enterprise Solutions Development B.V. Memory allocation in a computer system
US20060031510A1 (en) * 2004-01-26 2006-02-09 Forte Internet Software, Inc. Methods and apparatus for enabling a dynamic network of interactors according to personal trust levels between interactors
US7136973B2 (en) 2004-02-04 2006-11-14 Sandisk Corporation Dual media storage device
US7421602B2 (en) 2004-02-13 2008-09-02 Marvell World Trade Ltd. Computer with low-power secondary processor and secondary display
US7702848B2 (en) 2004-06-10 2010-04-20 Marvell World Trade Ltd. Adaptive storage system including hard disk drive with flash interface
US7730335B2 (en) 2004-06-10 2010-06-01 Marvell World Trade Ltd. Low power computer with main and auxiliary processors
US7574541B2 (en) 2004-08-03 2009-08-11 Lsi Logic Corporation FIFO sub-system with in-line correction
US7437581B2 (en) 2004-09-28 2008-10-14 Intel Corporation Method and apparatus for varying energy per instruction according to the amount of available parallelism
US20060069848A1 (en) 2004-09-30 2006-03-30 Nalawadi Rajeev K Flash emulation using hard disk
US20060075185A1 (en) 2004-10-06 2006-04-06 Dell Products L.P. Method for caching data and power conservation in an information handling system
US7882299B2 (en) 2004-12-21 2011-02-01 Sandisk Corporation System and method for use of on-chip non-volatile memory write cache
TWI252983B (en) * 2004-12-29 2006-04-11 Inventec Corp Multi-channel serial ATA control system and control card thereof
US20060218324A1 (en) 2005-03-25 2006-09-28 Matsushita Electrical Industrial Co., Ltd Systems and methods for flexible data transfers in SDIO and/or MMC
US7492368B1 (en) 2006-01-24 2009-02-17 Nvidia Corporation Apparatus, system, and method for coalescing parallel memory requests

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH05134820A (ja) * 1991-11-14 1993-06-01 Seiko Epson Corp 情報処理装置
JPH06266511A (ja) * 1993-03-15 1994-09-22 Canon Electron Inc Icカードインターフェイス付きディスク装置
JP2005353080A (ja) * 2004-06-10 2005-12-22 Marvell World Trade Ltd 適応記憶システム
JP2006012126A (ja) * 2004-06-10 2006-01-12 Marvell World Trade Ltd 適応記憶システム
JP2006059323A (ja) * 2004-06-10 2006-03-02 Marvell World Trade Ltd 適応記憶システム

Non-Patent Citations (6)

* Cited by examiner, † Cited by third party
Title
CSNC200750988005; 清水 隆雄: '電子立国:電子秘術' エレクトロニクスライフ 第12月号, 19941201, 第20-21頁, 日本放送出版協会 *
CSND200000132011; '500円玉大のハードディスク誕生' mobile media magazine 第6巻,第11号, 19981013, 第60-61頁, 株式会社シーメディア *
CSND200001358014; 江戸川: 'ノートファクトリー' 日経Win PC 第5巻,第9号, 19990901, 第210-213頁, 日経BP社 *
JPN6012015432; '500円玉大のハードディスク誕生' mobile media magazine 第6巻,第11号, 19981013, 第60-61頁, 株式会社シーメディア *
JPN6012015433; 清水 隆雄: '電子立国:電子秘術' エレクトロニクスライフ 第12月号, 19941201, 第20-21頁, 日本放送出版協会 *
JPN6012015434; 江戸川: 'ノートファクトリー' 日経Win PC 第5巻,第9号, 19990901, 第210-213頁, 日経BP社 *

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2012063280A1 (en) 2010-11-09 2012-05-18 Hitachi, Ltd. Structual fabric of a storage apparatus for mounting storage devices
US8462502B2 (en) 2010-11-09 2013-06-11 Hitachi, Ltd. Structural fabric of a storage apparatus for mounting storage devices

Also Published As

Publication number Publication date
WO2007133646A2 (en) 2007-11-22
US7702848B2 (en) 2010-04-20
US7636809B2 (en) 2009-12-22
WO2007133646A3 (en) 2008-02-14
US20070226409A1 (en) 2007-09-27
KR20090018079A (ko) 2009-02-19
US20060277360A1 (en) 2006-12-07
KR101379940B1 (ko) 2014-04-01
TWI426444B (zh) 2014-02-11
TW200821908A (en) 2008-05-16
WO2007133646B1 (en) 2008-04-17
EP2016476A2 (en) 2009-01-21
EP2016476B1 (en) 2019-07-10

Similar Documents

Publication Publication Date Title
KR101379940B1 (ko) 플래시 인터페이스를 갖는 하드 디스크 드라이브를 포함한 적응 저장 시스템
US7617359B2 (en) Adaptive storage system including hard disk drive with flash interface
US8874948B2 (en) Apparatuses for operating, during respective power modes, transistors of multiple processors at corresponding duty cycles
US7634615B2 (en) Adaptive storage system
US20070094444A1 (en) System with high power and low power processors and thread transfer
US20070083785A1 (en) System with high power and low power processors and thread transfer
EP1855181A2 (en) System with high power and low power processors and thread transfer

Legal Events

Date Code Title Description
A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20100416

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20100416

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20120208

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20120327

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20120625

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20121009

A711 Notification of change in applicant

Free format text: JAPANESE INTERMEDIATE CODE: A711

Effective date: 20200407