[go: up one dir, main page]

JP2008176785A - ハイブリッドハードディスクドライブ、ハイブリッドハードディスクドライブを内蔵するコンピュータシステム、そしてハイブリッドハードディスクドライブのフラッシュメモリdma回路 - Google Patents

ハイブリッドハードディスクドライブ、ハイブリッドハードディスクドライブを内蔵するコンピュータシステム、そしてハイブリッドハードディスクドライブのフラッシュメモリdma回路 Download PDF

Info

Publication number
JP2008176785A
JP2008176785A JP2008002564A JP2008002564A JP2008176785A JP 2008176785 A JP2008176785 A JP 2008176785A JP 2008002564 A JP2008002564 A JP 2008002564A JP 2008002564 A JP2008002564 A JP 2008002564A JP 2008176785 A JP2008176785 A JP 2008176785A
Authority
JP
Japan
Prior art keywords
flash memory
hard disk
disk drive
user data
hybrid hard
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
JP2008002564A
Other languages
English (en)
Inventor
Hanshaku Ryu
範錫 柳
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Samsung Electronics Co Ltd
Original Assignee
Samsung Electronics Co Ltd
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 Samsung Electronics Co Ltd filed Critical Samsung Electronics Co Ltd
Publication of JP2008176785A publication Critical patent/JP2008176785A/ja
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; 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 OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; 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 OR CALCULATING; 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
    • G06F13/20Handling requests for interconnection or transfer for access to input/output bus
    • G06F13/28Handling requests for interconnection or transfer for access to input/output bus using burst mode transfer, e.g. direct memory access DMA, cycle steal
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; 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 OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2212/00Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
    • G06F2212/46Caching storage objects of specific type in disk cache
    • G06F2212/466Metadata, control data
    • 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

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Techniques For Improving Reliability Of Storages (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Memory System Of A Hierarchy Structure (AREA)

Abstract

【課題】ハイブリッドハードディスクドライブ、ハイブリッドハードディスクドライブを内蔵するコンピュータシステム、そしてハイブリッドハードディスクドライブのフラッシュメモリDMA回路を提供する。
【解決手段】フラッシュメモリを備えるハイブリッドハードディスクドライブ。フラッシュメモリは、ユーザデータを保存するメインメモリ領域及びユーザデータの伝送に必要な付加情報を保存するスペアメモリ領域を備える。また、フラッシュメモリとのインターフェースをハードウェアとして提供するハイブリッドハードディスクドライブのフラッシュメモリDMA回路。これにより、速いブート時間及び少ない電力消耗を具現しつつもフラッシュメモリとのインターフェーシングによるオーバーヘッドを低減させることができる。
【選択図】図1

Description

本発明は半導体装置に係り、特に、フラッシュメモリのスペアメモリ領域にユーザデータ伝送のための付加情報を保存し、フラッシュメモリとのインターフェーシングをハードウェアで具現することによって、コンピュータのブート時間及び電力消耗を減らしつつもフラッシュメモリとのインターフェーシングによるオーバーヘッドを低減できるハイブリッドハードディスクドライブ(hybrid Hard Disk Drive(HDD))、ハイブリッドHDDを内蔵するコンピュータシステム、そしてハイブリッドHDDのフラッシュメモリDMA(Direct Memory Access)回路に関する。
従来技術によるHDDは、ディスクを回転させつつデータを記録/再生するために、電源が供給された後にディスクが一定の速度で動作するまで安定化に必要な時間が要求される。また、ディスクを回転させるための多くの電力が要求される。
特に、マルチメディアコンテンツの保存及び伝送を伴うモバイルディバイスの使用が順次に増加する勢いで低電力化及び速いブートタイムはディバイスの必須なフィーチャーとして要求される。
このような要求に応じて、フラッシュメモリを内蔵するハイブリッドHDDの商用化が問題化となっている。フラッシュメモリは機械的な動作を伴わないために電力消耗が少なく、さらに速いシステムブートを行える。
ハイブリッドHDDは、フラッシュメモリと他のディバイスとのデータ伝送のためのインターフェーシングが要求される。例えば、ハイブリッドHDDは、フラッシュメモリに保存されているユーザデータのアドレスを表すLBA(Logical Block Address)とのマッピングのためのマッピングテーブルなどが要求される。
ところが、このようなインターフェーシング、すなわち、前記例でのマッピングテーブルをソフトウェア(アルゴリズム)を利用して処理する場合、ユーザデータの保存及び伝送によるオーバーヘッドが大きい。このようにフラッシュメモリを内蔵するハイブリッドHDDの使用は、フラッシュメモリとのインターフェーシングによるオーバーヘッドによってシステム性能を低下させる。
したがって、フラッシュメモリを備えるハイブリッドHDD及びハイブリッドHDDを内蔵するコンピュータシステムで最適化されたフラッシュメモリ構造及びDMA回路が要求される。
本発明が解決しようとする技術的課題は、フラッシュメモリを備えることによって速いブート時間及び少ない電力消耗を具現しつつも、フラッシュメモリとのインターフェーシングによるオーバーヘッドを低減できるハイブリッドHDD、ハイブリッドHDDを内蔵するコンピュータシステム、そしてハイブリッドHDDのフラッシュメモリDMA回路を提供するところにある。
前記技術的課題を解決するための本発明の実施形態によるハイブリッドHDDは、フラッシュメモリを備える。
前記フラッシュメモリは、ユーザデータを保存するメインメモリ領域及び前記ユーザデータの伝送に必要な付加情報を保存するスペアメモリ領域を備える。前記フラッシュメモリは、キャッシュメモリとして使われる。
前記付加情報は、前記ユーザデータの前記フラッシュメモリでのアドレスを表すLBAについての情報及び有効セクター数についての情報のうち少なくとも一つ以上の情報を含む。
前記ユーザデータはセクター単位またはページ単位で伝送される。前記スペアメモリ領域は、前記ユーザデータがセクター単位で伝送される場合、前記メインメモリ領域の各セクターに対応するLBAを保存する。この時、前記スペアメモリ領域は、前記メインメモリ領域の512バイトのセクターについての付加情報を保存するために16バイトの空間を割り当てる。
前記スペアメモリ領域は、前記ユーザデータがページ単位で伝送される場合、前記メインメモリ領域の各ページに対応するLBAを保存する。前記スペアメモリ領域は、前記メインメモリ領域の2キロバイトのページについての付加情報を保存するために64バイトの空間を割り当てる。前記ページは、512バイトの大きさを持つセクター4つを含む。
前記有効セクター数は、前記伝送単位であるセクターまたはページに含まれるセクターとして、前記メインメモリ領域に有効に保存されるセクターの数を表す。前記フラッシュメモリは、NANDフラッシュメモリである。
前記技術的課題を解決するための本発明の実施形態によるコンピュータシステムは、ホストコンピュータ及びハイブリッドHDDを備える。
前記ハイブリッドHDDは、フラッシュメモリ及びディスクを備える。前記フラッシュメモリは、ユーザデータを保存するメインメモリ領域及び前記ユーザデータの伝送に必要な付加情報を保存するスペアメモリ領域を備える。
前記コンピュータシステムは、前記フラッシュメモリとのインターフェースをハードウェアとして提供するフラッシュメモリDMA回路をさらに備える。前記フラッシュメモリDMA回路は、前記ホストコンピュータのインターフェース回路、前記ディスクのインターフェース回路及び前記フラッシュメモリのインターフェース回路と連結される。
前記コンピュータシステムはバッファメモリをさらに備えることができる。この時、前記フラッシュメモリDMA回路は、前記バッファメモリのインターフェース回路と連結される。前記バッファメモリは、SRAMまたはDRAMでありうる。
前記技術的課題を解決するための本発明の実施形態によるハイブリッドHDDのフラッシュメモリDMA回路は、フラッシュメモリとのインターフェースをハードウェアとして提供する。
前記フラッシュメモリDMA回路は、前記ユーザデータのインターフェーシングを行うユーザデータ処理器及び前記付加情報のインターフェーシングを行うスペアデータ処理器を備える。
前記ユーザデータ処理器は、前記ユーザデータの伝送の同期化のためのユーザデータFIFO及び前記ユーザデータの大きさが前記フラッシュメモリのページより小さい場合、前記ページの残りの領域にFFパターンを書き込むFFパターン生成手段を備える。
前記スペアデータ処理器は、前記ユーザデータのアドレスを表すLBAとのマッピングのためのマッピングテーブル処理手段及び前記ユーザデータのエラー検出及び訂正のためのエラー検出及び訂正手段を備える。
前記マッピングテーブル処理手段は、伝送しようとする最初のセクターLBAであるstart LBA、伝送されたセクター数及び有効セクター数のうち少なくとも一つ以上を保存するレジスタを備える。前記エラー検出及び訂正手段は、CRC(Cycle Redundancy Check)エラー検出コードを利用する。
前記フラッシュメモリDMA回路は、ホストコンピュータのインターフェース回路、ディスクのインターフェース回路及び前記フラッシュメモリのインターフェース回路と連結される。前記フラッシュメモリDMA回路は、前記ホストコンピュータ、前記ディスク及び前記フラッシュメモリとのデータ伝送のためのデータアドレス及び大きさを保存するレジスタを備えることができる。
前記フラッシュメモリDMA回路は、バッファメモリのインターフェース回路と連結される。前記フラッシュメモリDMA回路は、前記バッファメモリとのデータ伝送のためのデータアドレス及び大きさを保存するレジスタを備えることができる。
本発明と本発明の動作上の利点及び本発明の実施によって達成される目的を十分に理解するためには、本発明の望ましい実施形態を例示する添付図面及び図面に記載された内容を参照せねばならない。
本発明によるハイブリッドHDD、ハイブリッドHDDを内蔵するコンピュータシステム、そして、ハイブリッドHDDのフラッシュメモリDMA回路は、ユーザデータの伝送に必要な付加情報を保存するスペアメモリ領域を含むフラッシュメモリを備え、フラッシュメモリとのインターフェースをハードウェアとして提供するフラッシュメモリDMA回路を備えることによって、速いブート時間及び少ない電力消耗を具現しつつもフラッシュメモリとのインターフェーシングによるオーバーヘッドを低減させることができる。
以下、添付した図面を参照して本発明の望ましい実施形態を説明することによって、本発明を詳細に説明する。各図面に提示された同じ参照符号は同じ部材を表す。
図1は、ハイブリッドHDDを内蔵したコンピュータシステムを概略的に示すブロック図である。
図1を参照すれば、ハイブリッドHDDを内蔵したコンピュータシステム1000は、ホストコンピュータ200及びハイブリッドHDD 100を備える。ハイブリッドHDD 100は、フラッシュメモリ140及びディスク120を備える。
この時、フラッシュメモリ140は、NANDフラッシュメモリ、特にワンNANDフラッシュメモリ(One NAND type flash memory)でありうる。フラッシュメモリ140は、キャッシュメモリとして使われうる。フラッシュメモリがキャッシュメモリとして使われる場合、ハイブリッドHDDは、フラッシュメモリのLBAに対するマッピングテーブル情報を持っていなければならない。
ホストコンピュータ200のOSは、ディスク120へのデータ接近とフラッシュメモリ140へのデータ接近とがいずれも可能である。また、ホストコンピュータ200のOSは、ハイブリッドHDD 100の長所である速いブート時間を具現するために、コンピュータシステム1000の電源が遮断される前にブートデータなどをフラッシュメモリ140に移行させねばならない。
以下では、図1のハイブリッドHDDのフラッシュメモリ構造及びフラッシュメモリとのインターフェーシングを行うフラッシュメモリDMA回路についてさらに詳細に記述する。
図2は、ユーザデータをセクター単位で伝送する図1のフラッシュメモリ構造を示すブロック図である。図3は、ユーザデータをページ単位で伝送する図1のフラッシュメモリ構造を示すブロック図である。
図2及び図3を参照すれば、本発明の実施形態によるハイブリッドHDDのフラッシュメモリ140は、ユーザデータを保存するメインメモリ領域142及び前記ユーザデータの伝送に必要な付加情報を保存するスペアメモリ領域144を備える。前記付加情報は、前記ユーザデータの前記フラッシュメモリでのアドレスを表すLBAについての情報及び有効セクター数についての情報でありうる。
前記ユーザデータは、セクター単位またはページ単位で伝送される。この時、ユーザデータの伝送とは、図1のコンピュータシステムの各構成要素200、120とフラッシュメモリ140とのデータ伝送を意味する。図2及び図3のフラッシュメモリ140は、512バイトのセクターまたは2キロバイトのページ単位で前記ユーザデータを保存または伝送する。
図2は、前述したようにユーザデータがセクター単位で伝送される場合のフラッシュメモリを示す。図2のスペアメモリ領域144は、メインメモリ領域142の512バイトのセクターについての付加情報を保存するために16バイトの空間を割り当てることができる。
図2は、伝送しようとする最初のセクターのLBAであるstart LBAが3であり、伝送セクター数が5つである場合のフラッシュメモリの保存状態を図示する。start LBA及び伝送セクター数は、後述するフラッシュメモリDMA回路のスペアデータ処理器に含まれるレジスタに保存されうる。
図2のスペアメモリ領域144は、メインメモリ領域142の各セクターSector1〜Sector5に対応するLBAを保存する。各セクターSector1〜Sector5のLBAは、start LBA値に、伝送されたセクター数を加算した値になる。
例えば、図2のスペアメモリ領域144は、第1セクターSector1に対するLBA(“3”)をstart LBA値(“3”)として保存する。そして、図2のスペアメモリ領域144は、第2セクターSector2に対して第1セクターのLBA値(“3”)に、伝送されたセクター数(“1”)を加算したLBA(“4”)を保存する。同じ方法で、図2のスペアメモリ領域144は、第5セクターSector5に対するLBA(“7”)まで保存する。
この時、前記それぞれのセクターに含まれるセクターとして、メインメモリ領域に有効に保存されるセクターの数を表す有効セクター数は、“0”または“1”の値を持つことができる。ただし、図2は、5個のセクターが連続的に有効にメインメモリ領域に保存される場合であるところ、各セクターに対する有効セクター数はいずれも“1”の値を持つ。
図3は、前述したようにユーザデータがページ単位で伝送される場合のフラッシュメモリを示す。図3のスペアメモリ領域144は、メインメモリ領域142の2キロバイトのページについての付加情報を保存するために、64バイトの空間を割り当てることができる。
図3は、伝送しようとする最初のページの最初のセクターのLBAであるstart LBAが3であり、18個のセクターを5個のページに伝送する場合のフラッシュメモリの保存状態を図示する。図3のフラッシュメモリ140の各ページPage1〜Page5は、それぞれ512バイトの大きさを持つセクター4つを含む。ただし、本発明の他の実施形態によるフラッシュメモリのページサイズは2Kbyte以上であるか、4つ以上のセクターを含むことができる。
図3のスペアメモリ領域144は、メインメモリ領域142の各ページPage1〜Page5に対応するLBAを保存する。この時、各ページPage1〜Page5に対応するLBAは、各ページの最初のセクターのLBAである。この時、LBAは、図2と同じくstart LBA値に伝送されたセクター数を加算した値になるので、図3のページPage1〜Page5がそれぞれ4個のセクターを備える場合、連続したページに対応するLBAは“4”の差を持つ。
例えば、図3のスペアメモリ領域144は、第1ページPage1に対するLBA(“3”)をstart LBA値(“3”)として保存する。そして、図3のスペアメモリ領域144は、第2ページPage2に対して第1ページに対するLBA(“3”)に伝送されたセクター数(“4”)を加算したLBA(“7”)を保存する。同じ方法で、図3のスペアメモリ領域144は、第5ページPage5に対するLBA(“19”)まで保存する。
この時、前記それぞれのページに含まれるセクターとして、メインメモリ領域に有効に保存されるセクターの数を表す有効セクター数は、“0”ないし“4”の値を持つことができる。ただし、図3は、18個のセクターが連続的に有効にメインメモリ領域に保存される場合であるところ、第1ページないし第4ページに対する有効セクター数はいずれも“4”の値を持ち、第5ページに対する有効セクター数は“2”の値を持つ。
図3のスペアメモリ領域と異なって本発明の他の実施形態によるフラッシュメモリのスペアメモリ領域は、各ページに対するLBAとして含むセクターのLBAをいずれも保存することもできる。例えば、図3の第1ページのLBAは、“3”、“4”、“5”及び“6”に保存することができる。
図2及び図3のフラッシュメモリを持つハイブリッドHDDまたはこれを内蔵する図1のコンピュータシステムは、フラッシュメモリとのインターフェースをハードウェアとして提供するフラッシュメモリDMA回路をさらに備えることができる。
図4は、図1のコンピュータシステムでのフラッシュメモリDMA回路と他の構成要素との連結関係を示す図面である。
図4を参照すれば、フラッシュメモリDMA回路400は、ホストコンピュータのインターフェース回路200−2、ディスクのインターフェース回路120−2及びフラッシュメモリのインターフェース回路140−2と連結される。この時、フラッシュメモリDMA回路400は、ホストコンピュータ200、ディスク120及びフラッシュメモリ140とのデータ伝送のためのデータアドレス及び大きさを保存するレジスタ(図示せず)を共通に、または各構成要素それぞれに対して備えることができる。
また、フラッシュメモリDMA回路400は、バッファメモリのインターフェース回路300−2とも連結されうる。バッファメモリ300は、SRAMまたはDRAMでありうる。この時、フラッシュメモリDMA回路400は、バッファメモリ300とのデータ伝送のためのデータアドレス及び大きさを保存するレジスタ(図示せず)をさらに備えることができる。コンピュータシステム1000がバッファメモリ300を備える場合、フラッシュメモリDMA回路400は、ホストコンピュータ200から伝送されるデータをフラッシュメモリ140に直ちに書き込むか、バッファメモリ300を利用してデータの順序を改めて書き込むことができる。
図5は、図4のフラッシュメモリDMA回路をさらに詳細に示すブロック図である。
図5を参照すれば、フラッシュメモリDMA回路400は、前記ユーザデータのインターフェーシングを行うユーザデータ処理器420及び前記付加情報のインターフェーシングを行うスペアデータ処理器440を備える。
ユーザデータ処理器420は、ユーザデータFIFO 422及びFFパターン生成手段424を備える。ユーザデータFIFO 422は、前記ユーザデータの伝送の同期化のために使われる。すなわち、ユーザデータFIFO 422は、図5の各インターフェース間の速度差を緩和するために使われる。FFパターン生成手段424は、前記ユーザデータの大きさが前記フラッシュメモリのページより小さい場合、前記ページの残りの領域にFFパターンを書き込む。フラッシュメモリはページ単位でデータが書き込まれるためである。
スペアデータ処理器440は、マッピングテーブル処理手段444とエラー検出及び訂正手段442とを備える。マッピングテーブル処理手段444は、前記ユーザデータのアドレスを表すLBAとのマッピングをインターフェーシングする。マッピングテーブル処理手段444は、伝送しようとする最初のセクターのLBAであるstart LBA、伝送されたセクター数及び有効セクター数のうち少なくとも一つ以上を保存するレジスタを備えることができる。
エラー検出及び訂正手段442は、前記ユーザデータのエラー検出及び訂正動作を行う。本発明の実施形態によるエラー検出及び訂正手段442は、CRCエラー検出コードを利用する。従来のワンNANDフラッシュメモリでのエラー検出及び訂正は、1ビット訂正及び2ビット検出レベルのECC(Error Correction Code)を使用する。したがって、突然な電源遮断による3ビット以上のエラーが発生する場合にはデータが割れる現象が発生しうる。
しかし、本発明の実施形態によるフラッシュメモリDMA回路は、32ビットCRC回路を支援することによって、複数のエラービットが発生しても検出できる。さらに、32ビットCRC回路を支援する本発明の実施形態によるフラッシュメモリDMA回路を備えるフラッシュメモリは、従来の突然の電源遮断に備えた追加的な書き込み動作を行う必要がないので、フラッシュメモリの書き込み性能を改善できる。
このように本発明の実施形態によるハイブリッドHDD、ハイブリッドHDDを内蔵するコンピュータシステム、そして、ハイブリッドHDDのフラッシュメモリDMA回路は、ユーザデータの伝送に必要な付加情報を保存するスペアメモリ領域を含むフラッシュメモリを備え、フラッシュメモリとのインターフェースをハードウェアとして提供するフラッシュメモリDMA回路を備えることによって、ハイブリッドHDDの長所を取りつつ、フラッシュメモリとのインターフェーシングによるオーバーヘッドを低減させることができる。
以上のように図面と明細書で最適の実施形態が開示された。ここで特定の用語が使われたが、これは単に本発明を説明するための目的で使われたものであり、意味限定や特許請求の範囲に記載された本発明の範囲を制限するために使われたものではない。したがって、当業者ならば、これより多様な変形及び均等な他の実施形態が可能であるという点を理解できるであろう。したがって、本発明の真の技術的保護範囲は特許請求の範囲の技術的思想により決まらねばならない。
本発明は、HDD関連の技術分野に好適に用いられる。
ハイブリッドHDDを内蔵したコンピュータシステムを概略的に示すブロック図である。 ユーザデータをセクター単位で伝送する図1のフラッシュメモリ構造を示すブロック図である。 ユーザデータをページ単位で伝送する図1のフラッシュメモリ構造を示すブロック図である。 図1のコンピュータシステムでのフラッシュメモリDMA回路と他の構成要素との連結関係を示す図面である。 図4のフラッシュメモリDMA回路をさらに詳細に示すブロック図である。
符号の説明
100 ハイブリッドHDD
120 ディスク
140 フラッシュメモリ
200 ホストコンピュータ
1000 コンピュータシステム

Claims (25)

  1. フラッシュメモリを内蔵するハイブリッドハードディスクドライブにおいて、
    前記フラッシュメモリは、
    メインメモリ領域と、
    スペアメモリ領域と、を備え、
    前記スペアメモリ領域は、
    前記メインメモリ領域に保存されるユーザデータの伝送に必要な付加情報を保存することを特徴とするハイブリッドハードディスクドライブ。
  2. 前記フラッシュメモリは、
    キャッシュメモリとして使われることを特徴とする請求項1に記載のハイブリッドハードディスクドライブ。
  3. 前記付加情報は、
    前記ユーザデータの前記フラッシュメモリでのアドレスを表すLBAについての情報及び有効セクター数についての情報のうち少なくとも一つ以上の情報を含むことを特徴とする請求項1に記載のハイブリッドハードディスクドライブ。
  4. 前記ユーザデータは、
    セクター単位またはページ単位で伝送されることを特徴とする請求項3に記載のハイブリッドハードディスクドライブ。
  5. 前記スペアメモリ領域は、
    前記ユーザデータがセクター単位で伝送される場合、前記メインメモリ領域の各セクターに対応するLBAを保存することを特徴とする請求項4に記載のハイブリッドハードディスクドライブ。
  6. 前記スペアメモリ領域は、
    前記ユーザデータがページ単位で伝送される場合、前記メインメモリ領域の各ページに対応するLBAを保存することを特徴とする請求項4に記載のハイブリッドハードディスクドライブ。
  7. 前記有効セクター数は、
    前記伝送単位であるセクターまたはページに含まれるセクターとして、前記メインメモリ領域に有効に保存されるセクターの数を表すことを特徴とする請求項4に記載のハイブリッドハードディスクドライブ。
  8. 前記フラッシュメモリは、
    NANDフラッシュメモリであることを特徴とする請求項1に記載のハイブリッドハードディスクドライブ。
  9. ホストコンピュータと、
    フラッシュメモリ及びディスクを備えるハイブリッドハードディスクドライブを備えるコンピュータシステムにおいて、
    前記フラッシュメモリは、
    ユーザデータを保存するメインメモリ領域と、
    前記ユーザデータの伝送に必要な付加情報を保存するスペアメモリ領域と、を備えることを特徴とするコンピュータシステム。
  10. 前記コンピュータシステムは、
    前記フラッシュメモリとのインターフェースをハードウェアとして提供するフラッシュメモリDMA回路をさらに備えることを特徴とする請求項9に記載のコンピュータシステム。
  11. 前記フラッシュメモリDMA回路は、
    前記ホストコンピュータのインターフェース回路、前記ディスクのインターフェース回路及び前記フラッシュメモリのインターフェース回路と連結されることを特徴とする請求項10に記載のコンピュータシステム。
  12. 前記コンピュータシステムは、
    バッファメモリをさらに備えることを特徴とする請求項10に記載のコンピュータシステム。
  13. 前記フラッシュメモリDMA回路は、
    前記バッファメモリのインターフェース回路と連結されることを特徴とする請求項12に記載のコンピュータシステム。
  14. 前記バッファメモリは、
    SRAMまたはDRAMであることを特徴とする請求項12に記載のコンピュータシステム。
  15. 前記フラッシュメモリは、
    NANDフラッシュメモリであることを特徴とする請求項9に記載のコンピュータシステム。
  16. ユーザデータを保存するメインメモリ領域と、
    前記ユーザデータの伝送に必要な付加情報を保存するスペアメモリ領域を備えるフラッシュメモリを内蔵するハイブリッドハードディスクドライブにおいて、
    前記フラッシュメモリとのインターフェースをハードウェアとして提供することを特徴とするフラッシュメモリDMA回路。
  17. 前記フラッシュメモリDMA回路は、
    前記ユーザデータのインターフェーシングを行うユーザデータ処理器と、
    前記付加情報のインターフェーシングを行うスペアデータ処理器と、を備えることを特徴とする請求項16に記載のフラッシュメモリDMA回路。
  18. 前記ユーザデータ処理器は、
    前記ユーザデータの伝送の同期化のためのユーザデータFIFOと、
    前記ユーザデータの大きさが前記フラッシュメモリのページより小さい場合、前記ページの残りの領域にFFパターンを書き込むFFパターン生成手段と、を備えることを特徴とする請求項17に記載のフラッシュメモリDMA回路。
  19. 前記スペアデータ処理器は、
    前記ユーザデータのアドレスを表すLBAのためのマッピングテーブル処理手段と、
    前記ユーザデータのエラー検出及び訂正のためのエラー検出及び訂正手段と、を備えることを特徴とする請求項17に記載のフラッシュメモリDMA回路。
  20. 前記マッピングテーブル処理手段は、
    伝送しようとする最初のセクターのLBAであるstart LBA、伝送されたセクター数及び有効セクター数のうち少なくとも一つ以上を保存するレジスタを備えることを特徴とする請求項19に記載のフラッシュメモリDMA回路。
  21. 前記エラー検出及び訂正手段は、
    CRCエラー検出コードを利用することを特徴とする請求項19に記載のフラッシュメモリDMA回路。
  22. 前記フラッシュメモリDMA回路は、
    ホストコンピュータのインターフェース回路、ディスクのインターフェース回路及び前記フラッシュメモリのインターフェース回路と連結されることを特徴とする請求項16に記載のフラッシュメモリDMA回路。
  23. 前記フラッシュメモリDMA回路は、
    前記ホストコンピュータ、前記ディスク及び前記フラッシュメモリのうち少なくとも一つ以上とのデータ伝送のためのデータアドレス及び大きさを保存するレジスタを備えることを特徴とする請求項22に記載のフラッシュメモリDMA回路。
  24. 前記フラッシュメモリDMA回路は、
    バッファメモリのインターフェース回路と連結されることを特徴とする請求項22に記載のフラッシュメモリDMA回路。
  25. 前記フラッシュメモリDMA回路は、
    前記バッファメモリとのデータ伝送のためのデータアドレス及び大きさを保存するレジスタを備えることを特徴とする請求項24に記載のフラッシュメモリDMA回路。
JP2008002564A 2007-01-16 2008-01-09 ハイブリッドハードディスクドライブ、ハイブリッドハードディスクドライブを内蔵するコンピュータシステム、そしてハイブリッドハードディスクドライブのフラッシュメモリdma回路 Pending JP2008176785A (ja)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020070004970A KR100881187B1 (ko) 2007-01-16 2007-01-16 하이브리드 하드 디스크 드라이브, 하이브리드 하드 디스크드라이브를 내장하는 컴퓨터 시스템, 그리고 하이브리드하드 디스크 드라이브의 플래시 메모리 dma 회로

Publications (1)

Publication Number Publication Date
JP2008176785A true JP2008176785A (ja) 2008-07-31

Family

ID=39642376

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2008002564A Pending JP2008176785A (ja) 2007-01-16 2008-01-09 ハイブリッドハードディスクドライブ、ハイブリッドハードディスクドライブを内蔵するコンピュータシステム、そしてハイブリッドハードディスクドライブのフラッシュメモリdma回路

Country Status (5)

Country Link
US (1) US20080177938A1 (ja)
JP (1) JP2008176785A (ja)
KR (1) KR100881187B1 (ja)
CN (1) CN101236524A (ja)
TW (1) TW200836167A (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2010176306A (ja) * 2009-01-28 2010-08-12 Toshiba Corp 情報処理装置およびデータ記憶装置
KR101546707B1 (ko) * 2014-02-04 2015-08-24 한국과학기술원 하이브리드 메인 메모리 기반의 메모리 접근 관리방법

Families Citing this family (50)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8745311B2 (en) * 2008-03-31 2014-06-03 Spansion Llc Flash memory usability enhancements in main memory application
US8327066B2 (en) 2008-09-30 2012-12-04 Samsung Electronics Co., Ltd. Method of managing a solid state drive, associated systems and implementations
KR101663667B1 (ko) * 2009-02-03 2016-10-07 삼성전자주식회사 플래시 메모리의 주소 매핑에 의한 데이터 관리 방법 및 장치
US8255774B2 (en) 2009-02-17 2012-08-28 Seagate Technology Data storage system with non-volatile memory for error correction
US8042075B2 (en) 2009-03-25 2011-10-18 International Business Machines Corporation Method, system and application for sequential cofactor-based analysis of netlists
US8171219B2 (en) * 2009-03-31 2012-05-01 Intel Corporation Method and system to perform caching based on file-level heuristics
KR101702390B1 (ko) 2009-04-09 2017-02-06 삼성전자주식회사 컴퓨터 시스템의 부팅 방법
EP2452266A4 (en) * 2009-07-07 2013-12-04 Lsi Corp SYSTEMS AND METHODS FOR PROGRESSIVE NON-VOLATILE STORAGE
JP2011095916A (ja) * 2009-10-28 2011-05-12 Canon Inc 電子機器
US9110594B2 (en) * 2009-11-04 2015-08-18 Seagate Technology Llc File management system for devices containing solid-state media
US8700949B2 (en) 2010-03-30 2014-04-15 International Business Machines Corporation Reliability scheme using hybrid SSD/HDD replication with log structured management
US8688897B2 (en) 2010-05-28 2014-04-01 International Business Machines Corporation Cache memory management in a flash cache architecture
US8341339B1 (en) 2010-06-14 2012-12-25 Western Digital Technologies, Inc. Hybrid drive garbage collecting a non-volatile semiconductor memory by migrating valid data to a disk
US8959284B1 (en) 2010-06-28 2015-02-17 Western Digital Technologies, Inc. Disk drive steering write data to write cache based on workload
US9146875B1 (en) 2010-08-09 2015-09-29 Western Digital Technologies, Inc. Hybrid drive converting non-volatile semiconductor memory to read only based on life remaining
US9058280B1 (en) 2010-08-13 2015-06-16 Western Digital Technologies, Inc. Hybrid drive migrating data from disk to non-volatile semiconductor memory based on accumulated access time
US8639872B1 (en) 2010-08-13 2014-01-28 Western Digital Technologies, Inc. Hybrid drive comprising write cache spanning non-volatile semiconductor memory and disk
US9268499B1 (en) 2010-08-13 2016-02-23 Western Digital Technologies, Inc. Hybrid drive migrating high workload data from disk to non-volatile semiconductor memory
US8775720B1 (en) 2010-08-31 2014-07-08 Western Digital Technologies, Inc. Hybrid drive balancing execution times for non-volatile semiconductor memory and disk
US8683295B1 (en) 2010-08-31 2014-03-25 Western Digital Technologies, Inc. Hybrid drive writing extended error correction code symbols to disk for data sectors stored in non-volatile semiconductor memory
US8782334B1 (en) 2010-09-10 2014-07-15 Western Digital Technologies, Inc. Hybrid drive copying disk cache to non-volatile semiconductor memory
US8825976B1 (en) 2010-09-28 2014-09-02 Western Digital Technologies, Inc. Hybrid drive executing biased migration policy during host boot to migrate data to a non-volatile semiconductor memory
US8825977B1 (en) 2010-09-28 2014-09-02 Western Digital Technologies, Inc. Hybrid drive writing copy of data to disk when non-volatile semiconductor memory nears end of life
US8670205B1 (en) 2010-09-29 2014-03-11 Western Digital Technologies, Inc. Hybrid drive changing power mode of disk channel when frequency of write data exceeds a threshold
US8699171B1 (en) 2010-09-30 2014-04-15 Western Digital Technologies, Inc. Disk drive selecting head for write operation based on environmental condition
US8429343B1 (en) 2010-10-21 2013-04-23 Western Digital Technologies, Inc. Hybrid drive employing non-volatile semiconductor memory to facilitate refreshing disk
US8427771B1 (en) 2010-10-21 2013-04-23 Western Digital Technologies, Inc. Hybrid drive storing copy of data in non-volatile semiconductor memory for suspect disk data sectors
US8612798B1 (en) 2010-10-21 2013-12-17 Western Digital Technologies, Inc. Hybrid drive storing write data in non-volatile semiconductor memory if write verify of disk fails
US8560759B1 (en) 2010-10-25 2013-10-15 Western Digital Technologies, Inc. Hybrid drive storing redundant copies of data on disk and in non-volatile semiconductor memory based on read frequency
US9069475B1 (en) 2010-10-26 2015-06-30 Western Digital Technologies, Inc. Hybrid drive selectively spinning up disk when powered on
US8630056B1 (en) 2011-09-12 2014-01-14 Western Digital Technologies, Inc. Hybrid drive adjusting spin-up profile based on cache status of non-volatile semiconductor memory
US8909889B1 (en) 2011-10-10 2014-12-09 Western Digital Technologies, Inc. Method and apparatus for servicing host commands by a disk drive
US8977803B2 (en) 2011-11-21 2015-03-10 Western Digital Technologies, Inc. Disk drive data caching using a multi-tiered memory
US9268701B1 (en) 2011-11-21 2016-02-23 Western Digital Technologies, Inc. Caching of data in data storage systems by managing the size of read and write cache based on a measurement of cache reliability
US8977804B1 (en) 2011-11-21 2015-03-10 Western Digital Technologies, Inc. Varying data redundancy in storage systems
US8904091B1 (en) 2011-12-22 2014-12-02 Western Digital Technologies, Inc. High performance media transport manager architecture for data storage systems
US10303618B2 (en) * 2012-09-25 2019-05-28 International Business Machines Corporation Power savings via dynamic page type selection
US8959281B1 (en) 2012-11-09 2015-02-17 Western Digital Technologies, Inc. Data management for a storage device
US9430376B2 (en) 2012-12-26 2016-08-30 Western Digital Technologies, Inc. Priority-based garbage collection for data storage systems
KR101420963B1 (ko) * 2013-01-15 2014-07-17 홍익대학교 산학협력단 컴퓨팅 시스템 및 방법
KR101369408B1 (ko) * 2013-03-15 2014-03-04 주식회사 디에이아이오 스토리지 시스템 및 이의 데이터 전송 방법
US9141176B1 (en) 2013-07-29 2015-09-22 Western Digital Technologies, Inc. Power management for data storage device
US9070379B2 (en) 2013-08-28 2015-06-30 Western Digital Technologies, Inc. Data migration for data storage device
US8917471B1 (en) 2013-10-29 2014-12-23 Western Digital Technologies, Inc. Power management for data storage device
US9323467B2 (en) 2013-10-29 2016-04-26 Western Digital Technologies, Inc. Data storage device startup
US9268487B2 (en) * 2014-03-24 2016-02-23 Western Digital Technologies, Inc. Method and apparatus for restricting writes to solid state memory when an end-of life condition is reached
CN105045721A (zh) * 2015-07-23 2015-11-11 浪潮电子信息产业股份有限公司 一种数据一致性校验的方法和装置
US10809942B2 (en) * 2018-03-21 2020-10-20 Micron Technology, Inc. Latency-based storage in a hybrid memory system
US10705963B2 (en) * 2018-03-21 2020-07-07 Micron Technology, Inc. Latency-based storage in a hybrid memory system
CN115509961A (zh) * 2018-06-25 2022-12-23 慧荣科技股份有限公司 实体存储对照表产生装置及方法

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH10154101A (ja) * 1996-11-26 1998-06-09 Toshiba Corp データ記憶システム及び同システムに適用するキャッシュ制御方法
US6243795B1 (en) 1998-08-04 2001-06-05 The Board Of Governors For Higher Education, State Of Rhode Island And Providence Plantations Redundant, asymmetrically parallel disk cache for a data storage system
JP4017177B2 (ja) * 2001-02-28 2007-12-05 スパンション エルエルシー メモリ装置
US7170706B2 (en) * 2002-08-29 2007-01-30 Freescale Semiconductor, Inc. Hard disk system with non-volatile IC based memory for storing data
JP3983650B2 (ja) * 2002-11-12 2007-09-26 株式会社日立製作所 ハイブリッドストレージ、および、それを用いた情報処理装置
JP4496790B2 (ja) 2004-01-26 2010-07-07 ソニー株式会社 データ記憶装置及び方法、並びに記録再生システム
US7322002B2 (en) * 2004-05-26 2008-01-22 Micron Technology, Inc. Erasure pointer error correction

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2010176306A (ja) * 2009-01-28 2010-08-12 Toshiba Corp 情報処理装置およびデータ記憶装置
KR101546707B1 (ko) * 2014-02-04 2015-08-24 한국과학기술원 하이브리드 메인 메모리 기반의 메모리 접근 관리방법

Also Published As

Publication number Publication date
KR20080067548A (ko) 2008-07-21
TW200836167A (en) 2008-09-01
KR100881187B1 (ko) 2009-02-05
CN101236524A (zh) 2008-08-06
US20080177938A1 (en) 2008-07-24

Similar Documents

Publication Publication Date Title
JP2008176785A (ja) ハイブリッドハードディスクドライブ、ハイブリッドハードディスクドライブを内蔵するコンピュータシステム、そしてハイブリッドハードディスクドライブのフラッシュメモリdma回路
US20120151127A1 (en) Method of storing data in a storing device including a volatile memory device
US10769066B2 (en) Nonvolatile memory device, data storage device including the same and operating method thereof
CN107632939B (zh) 用于存储装置的映射表
KR102781499B1 (ko) 손상된 메타 데이터를 처리하는 스토리지 장치 및 상기 스토리지 장치의 동작 방법
TWI515565B (zh) 直接記憶體存取的方法及其固態磁碟機、電腦程式產品
US20190243558A1 (en) Two-level system main memory
US8938601B2 (en) Hybrid memory system having a volatile memory with cache and method of managing the same
US8135902B2 (en) Nonvolatile semiconductor memory drive, information processing apparatus and management method of storage area in nonvolatile semiconductor memory drive
US8250403B2 (en) Solid state disk device and related data storing and reading methods
US11269765B2 (en) Operating method of controller and memory system
US20070079065A1 (en) Advanced dynamic disk memory module
US20150052415A1 (en) Data storage device, operating method thereof and data processing system including the same
JP2007183961A (ja) ハードディスクドライブキャッシュメモリ及び再生デバイス
US20180089088A1 (en) Apparatus and method for persisting blocks of data and metadata in a non-volatile memory (nvm) cache
KR102168193B1 (ko) 초과 공급 메모리 장치들을 통합하기 위한 시스템 및 방법
US10684953B2 (en) Data storage apparatus capable of varying map cache buffer size
US9372741B2 (en) Data storage device and operating method thereof
JP2019023936A (ja) 記憶装置及びメモリシステム
JP2017033500A (ja) 記憶装置およびデータ退避方法
US20130173855A1 (en) Method of operating storage device including volatile memory and nonvolatile memory
US9158678B2 (en) Memory address management system and method
US7886310B2 (en) RAID control method and core logic device having RAID control function
KR20100111992A (ko) 플래시 메모리 저장 장치 및 그것을 포함한 컴퓨팅 시스템
US12332800B2 (en) Transparent host memory buffer