JP4536785B2 - 情報処理装置、該情報処理装置で行われるデータ記憶を制御する制御部およびデータ記憶の制御方法 - Google Patents

情報処理装置、該情報処理装置で行われるデータ記憶を制御する制御部およびデータ記憶の制御方法 Download PDF

Info

Publication number
JP4536785B2
JP4536785B2 JP2008023195A JP2008023195A JP4536785B2 JP 4536785 B2 JP4536785 B2 JP 4536785B2 JP 2008023195 A JP2008023195 A JP 2008023195A JP 2008023195 A JP2008023195 A JP 2008023195A JP 4536785 B2 JP4536785 B2 JP 4536785B2
Authority
JP
Japan
Prior art keywords
data
power supply
unit
volatile memory
block
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.)
Expired - Fee Related
Application number
JP2008023195A
Other languages
English (en)
Other versions
JP2009187062A (ja
Inventor
貞之 大山
孝典 石井
進之介 松田
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.)
Fujitsu Ltd
Original Assignee
Fujitsu 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 Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP2008023195A priority Critical patent/JP4536785B2/ja
Priority to US12/362,630 priority patent/US8838918B2/en
Publication of JP2009187062A publication Critical patent/JP2009187062A/ja
Application granted granted Critical
Publication of JP4536785B2 publication Critical patent/JP4536785B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • 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/30Means for acting in the event of power-supply failure or interruption, e.g. power-supply fluctuations
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/14Error detection or correction of the data by redundancy in operation
    • G06F11/1402Saving, restoring, recovering or retrying
    • G06F11/1415Saving, restoring, recovering or retrying at system level
    • G06F11/1441Resetting or repowering
    • 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/0614Improving the reliability 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/0646Horizontal data movement in storage systems, i.e. moving data in between storage devices or systems
    • G06F3/065Replication mechanisms
    • 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/0689Disk arrays, e.g. RAID, JBOD
    • 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

Description

本発明は、ライトバックキャッシュを行う情報処理装置、該情報処理装置で行われるデータ記憶を制御する制御部およびデータ記憶の制御方法に関するものである。
従来、ディスクアレイ装置は、自装置に対してリード/ライトアクセスを行ったホストコンピュータの待ち時間を短くするため、ライトバックキャッシュを行っている。
ライトバックキャッシュとは、具体的には、装置内のMPU(Micro Processing Unit)がHDD(Hard Disk Drive)にデータを書き込む前に、高速なアクセスが可能であるキャッシュメモリに該データを一旦書き込み、後に空いた時間を利用してキャッシュメモリからHDDに書き込む処理動作を指す。
なお、キャッシュメモリは揮発性メモリであるので、停電などで電源供給が途絶えてしまった場合、キャッシュメモリに書き込まれたままのデータについては、消失させることなくどこかに退避させる必要がある。ライトバックキャッシュでは、HDDに書き込まれずにキャッシュメモリに残ったままのキャッシュデータの安全性を確保することは重要である。
特に、ホストコンピュータからのリード/ライトアクセス高速化のために大容量のキャッシュメモリを搭載したディスクアレイ装置は、多くのキャッシュデータをキャッシュメモリに書き込む。そのため、上記の安全性の確保がさらに重要になってくる。
そこで、特許文献1では、以下の手法が開示されている。つまり、停電が発生して装置が完全に電力を失う前に、キャッシュメモリ内に蓄積されたユーザデータを不揮発性メモリであるフラッシュメモリに保存する。そして、停電が復旧すれば、フラッシュメモリからキャッシュメモリにキャッシュデータを復元するという手法である。
特表2004−531814号公報
ところで、フラッシュメモリに保存したバックアップデータについては、停電が復旧してキャッシュメモリに復元した後、次回の停電に備えて消去処理を行う必要がある。フラッシュメモリは初期状態からでないとデータの書き込みができないためである。
ここで問題となるのは、消去処理途中に再度停電が発生したにもかかわらず、消去した分のデータをバックアップせずにディスクアレイ装置を終了してしまうと、該データが完全に消失し、キャッシュメモリに復元できなくなるということである。
特許文献1で開示された手法をディスクアレイ装置に用いた場合、当然、大容量のフラッシュメモリが必要となり、停電時、該フラッシュメモリには多くのバックアップデータが書き込まれる。その場合、フラッシュメモリの消去処理に数十秒〜数分かかることがあり、その間に停電が発生してしまう可能性も高くなるので、消去データの安全性を確保することも重要である。
そこで、その対策の一つとして、停電により主電源の電力供給がなくなれば、バッテリの電力供給によって残りの消去処理を完了させてフラッシュメモリを書き込み可能とし、さらに、キャッシュメモリに復元したキャッシュデータを再度バックアップすることが考えられる。しかし、この処理動作には多くの電力が必要となるので、バッテリのコストが高くなるという課題があった。
また、他の対策として考えられるのが、フラッシュメモリを2面持ち、消去処理を行う対象は前回停電時にバックアップデータを書き込んだフラッシュメモリとし、次回停電発生時のバックアップに備える方法である。こうすることで、仮にフラッシュメモリの消去処理中に停電が発生しても、今回バックアップ先としたフラッシュメモリに対してはそもそも消去処理を行っていないので、バックアップデータについては保存されており問題はない。しかし、フラッシュメモリを2面持つことでコストが高くなるという課題があった。
そこで、本発明は、上述した従来技術における問題点を解消し、課題を解決するためになされたものであり、フラッシュメモリなどバックアップ先となる不揮発メモリの消去データの安全性を、コストを低くして確保できる情報処理装置を提供することを目的とする。
上述した課題を解決し、目的を達成するため、この装置は、外部電源に接続される主電源ユニットと、前記主電源ユニットによる電源供給が途絶えた場合に、電源供給を代行するバッテリユニットと、前記主電源ユニットもしくは前記バッテリユニットによる電源供給でデータ記憶制御を行う制御部と、を有する情報処理装置であって、前記制御部は、データを一時的に記憶する揮発メモリと、前記揮発メモリに記憶されたデータの退避先である不揮発メモリと、前記不揮発メモリへのデータ記憶状況を管理する不揮発メモリ管理テーブルと、前記主電源ユニットによる電源供給が途絶えた場合に、前記揮発メモリに記憶されるデータを前記不揮発メモリに退避させるとともに、前記データ記憶状況を更新するデータ退避処理部と、前記主電源ユニットによる電源供給が回復すると、前記不揮発メモリに退避させたデータを前記揮発メモリに書き戻すデータ復元処理部と、前記データ復元処理部によるデータの書き戻しが完了すると、前記不揮発メモリに退避させたデータを消去しつつ、前記データ記憶状況を更新するデータ消去処理部と、を備え、前記データ退避処理部は、前記データ消去処理部による消去処理時に前記主電源ユニットによる電源供給が途絶えた場合には、前記不揮発メモリ管理テーブルに基づいて、前記不揮発メモリから消去した分のデータを前記揮発メモリから前記不揮発メモリに退避させることを要件とする。
開示の装置では、不揮発メモリ管理テーブルにて不揮発メモリへのデータ記憶状況を管理しておく。不揮発メモリの消去処理中に停電などが起こった場合には、不揮発メモリ管理テーブルを参照し、データ記憶状況に基づいて不揮発メモリから消去した分のデータを、揮発メモリから不揮発メモリに再度退避させる。こうすることによって、不揮発メモリの消去データの安全性を、コストを低くして確保するという効果を奏する。
以下に添付図面を参照して、本発明に係るディスクアレイ装置の好適な実施例について詳細に説明する。
図1は、実施例1に係るディスクアレイ装置の概要構成を示す図である。同図に示すように、ディスクアレイ装置10は、ホストコンピュータ200に接続されて補助記憶装置となるものであり、MPU100と、ホストインタフェース110と、ディスクインタフェース120と、キャッシュメモリ130と、バックアップコントローラ140と、フラッシュメモリ150と、電源ユニット160と、バッテリユニット170と、複数のハードディスク180A1〜180Anと、を備える。
MPU100は、ホストコンピュータ200からホストインタフェース110を介してデータを受信すると、一旦キャッシュメモリ130に書き込み、直ちにホストコンピュータ200に書き込みの完了を通知する。
その後、MPU100は、空き時間を利用してキャッシュメモリ130に書き込んだキャッシュデータを読み出し、ディスクインタフェース120を介して複数のハードディスク180A1〜180Anに書き込む。このライトバックキャッシュにより、ホストコンピュータ200の待ち時間を短くしている。
ところで、キャッシュメモリ130は揮発性メモリであるので、書き込まれたデータは、電力供給がなくなった時点で失われる。そのため、ディスクアレイ装置10は、停電が発生して電源ユニット160からの電力供給が途絶えてしまった場合には、バッテリユニット170による電力供給に切り替え、キャッシュメモリ130内に蓄積されたユーザデータを不揮発性メモリであるフラッシュメモリ150に保存するバックアップを行っている。
具体的には、電源ユニット160は、外部電源からの電力供給が途絶えることで停電を検知すると、MPU100に停電発生を通知するとともに、バッテリユニット170に電力供給を指示する。
停電発生の通知を受けたMPU100は、バックアップコントローラ140にバックアップ処理を指示する。
MPU100からの指示を受けたバックアップコントローラ140は、バックアップを行い、キャッシュメモリ130に書き込まれたデータをフラッシュメモリ150に書き込むと、バックアップの完了をMPU100に通知する。
MPU100は、バックアップコントローラ140からのバックアップ完了の通知を受けてディスクアレイ装置10の作動を終了する。
その後、ディスクアレイ装置10に電源が投入されると、MPU100は、バックアップコントローラ140にキャッシュデータの復元処理を指示し、ディスクアレイ装置10を停電発生前の状態で起動できるようにする。
このように、MPU100は、停電発生後にディスクアレイ装置10を終了した場合と、終了指示を受け付けてディスクアレイ装置10を正規に終了した場合とで、異なる処理動作を行っている。
以下では、図2を用いて、ディスクアレイ装置10の起動から終了までを詳細に説明する。図2は、ディスクアレイ装置10の各部の処理動作を説明するフローチャートであり、同図に示す処理フローは、ディスクアレイ装置10の電源投入時に繰り返し実行される。
まず、MPU100は、前回、通常の終了処理を行ったか否かを装置内部状態より判定する(ステップS110)。
通常の終了処理を行っていた場合には(ステップS110肯定)、MPU100は、装置を起動し(ステップS120)、ホストコンピュータ200の補助記憶装置としての通常処理を行う(ステップS130)。なお、通常処理中には、上述したライトバックキャッシュによってキャッシュメモリ130にユーザデータが蓄積される。
そして、MPU100は、通常処理を行う最中に停電が発生した場合には(ステップS210肯定)、バックアップコントローラ140を第一保存モードで作動させる(ステップS220)。
第一保存モードとなったバックアップコントローラ140は、通常処理中にMPU100によってキャッシュメモリ130に書き込まれているデータをフラッシュメモリ150にバックアップする(ステップS230)。
そして、MPU100は、バックアップコントローラ140がバックアップを終えると、ディスクアレイ装置10を停電時の終了処理で終了する(ステップS240)。
ステップS130に戻って、MPU100は、通常処理中に停電が発生することなく終了指示を受け付けると(ステップS210否定かつステップS250肯定)、ディスクアレイ装置10を通常時の終了処理で終了する(ステップS260)。
ステップS110に戻って、MPU100は、通常の終了処理を行っていなかった(ステップS240参照)場合には(ステップS110否定)、バックアップコントローラ140を復元モードで作動させる(ステップS140)。
復元モードとなったバックアップコントローラ140は、フラッシュメモリ150のバックアップデータをキャッシュメモリ130に復元する(ステップS150)。復元を終えると、バックアップコントローラ140は、次回停電時のバックアップに備え、フラッシュメモリ150のバックアップデータの消去を開始する(ステップS160)。
そして、MPU100は、バックアップデータの消去途中に停電が発生することなく、バックアップコントローラ140によるバックアップデータの消去が完了すると(ステップS170肯定)、装置を起動し(ステップS120)、通常処理を行う(ステップS130)。
ところが、MPU100は、バックアップコントローラ140がバックアップデータを消去中に停電が発生した場合には(ステップS170否定かつステップS180肯定)、フラッシュメモリ150から消去してしまった分のデータをキャッシュメモリ130から書き戻すため、バックアップコントローラ140を第二保存モードで作動させる(ステップS190)。
第二保存モードとなったバックアップコントローラ140は、フラッシュメモリ150から消去してしまった分のデータをフラッシュメモリ150に書き戻す(ステップS200)。
そして、MPU100は、バックアップコントローラ140がデータの書き戻しを終えると、ディスクアレイ装置10を停電時の終了処理で終了する(ステップS240)。
以上のフローチャートで説明した各部の処理動作で、特に、第二保存モードとなったバックアップコントローラ140の処理動作が本発明に係るディスクアレイ装置10の特徴部分である。以下では、バックアップコントローラ140の処理動作について詳細に説明していく。
その前に、キャッシュメモリ130(MPU100およびバックアップコントローラ140からのアクセスを受ける)およびフラッシュメモリ150(バックアップコントローラ140のみにアクセスされる)内のデータが書き込まれる領域について説明を行う。
図3に示すように、キャッシュメモリ130は、MPU100からアクセスされる全領域のうち、特に、「LBLK_0」から「LBLK_A」までの論理ブロック番号が割り当てられる領域に対して、バックアップコントローラ140からのアクセスも受ける。つまり、MPU100は、この「LBLK_0」から「LBLK_A」までの論理ブロック番号が割り当てられる領域にユーザデータを格納して上述のライトバックキャッシュを実現しており、該領域がバックアップ対象となる。
また、同図に示すように、フラッシュメモリ150は、データの消去単位(ブロック)ごとにアクセスされ、各ブロックには物理ブロック番号(「BLK_0」から「BLK_N(N>Aが望ましい)」が割り当てられる。そして、フラッシュメモリ150は、キャッシュデータの書き込み先となった空きブロックに対し、バックアップコントローラ140からのアクセスを受ける。例えば、フラッシュメモリ150は、バックアップコントローラ140によって、物理ブロック番号「BLK_0」が割り当てられた領域に、論理ブロック番号「LBLK_0」が割り当てられた領域のキャッシュデータを書き込まれる。
なお、フラッシュメモリ150のブロックは、使用不可能な欠陥ブロックになることがあるため、バックアップコントローラ140は、停電が発生するたびに書き込み可能な空きブロックの検索を行う。したがって、仮に欠陥ブロック(例えば、図3では物理ブロック番号「BLK_1」や物理ブロック番号「BLK_2」)が発生し、キャッシュデータのバックアップ先が別の空きブロックで代替されることがあっても、MPU100は、そのことを意識することなく、同一の論理ブロック番号でキャッシュメモリ130にアクセスできる。論物変換テーブルは、空きブロックの検索の際にバックアップコントローラ140によって作成かつ利用され、論理ブロック番号と物理ブロック番号の対応関係を記憶するものである。
バックアップコントローラ140の処理動作の説明を始める。まず、バックアップコントローラ140を構成する各部の説明を行う。
図4は、バックアップコントローラ140の構成を示す図である。同図に示すように、バックアップコントローラ140は、DMA(Direct Memory Access)コントローラ20と、ブロックアクセス要求カウンタ30と、フラッシュメモリ管理テーブル40と、フラッシュメモリコントローラ50と、ブロック消去要求カウンタ60と、を備える。
DMAコントローラ20は、MPU100のローカルバスに接続され、キャッシュメモリ130に対するデータの読み書きを行う。具体的には、ブロックアクセス要求カウンタ30から論理ブロック番号を指示されると、対応するキャッシュメモリ130の領域にアクセスする。
ブロックアクセス要求カウンタ30は、MPU100からの指示で論理ブロック番号をカウントアップし、DMAコントローラ20にアクセス指示を行う。
フラッシュメモリ管理テーブル40は、物理ブロック管理テーブル41、論理ブロック管理テーブル42および消去ブロック管理テーブル43から構成される。
物理ブロック管理テーブル41は、図3で説明した論物変換テーブルの一つであり、論理ブロック番号を(「LBLK_0」〜「LBLK_A」)、物理ブロック番号(「BLK_0」〜「BLK_N」のうちいずれか)に変換するためのテーブルである(図5参照)。
論理ブロック管理テーブル42は、同じく、図3で説明した論物変換テーブルの一つであり、物理ブロック番号(「BLK_0」〜「BLK_N」のうちいずれか)を、論理ブロック番号(「LBLK_0」〜「LBLK_A」)に変換するためのテーブルである(図6参照)。
消去ブロック管理テーブル43は、フラッシュメモリ150の各ブロックの状態を示すフラグを格納したテーブルである(図7参照)。フラグとしては、例えば、E(消去済み)、N(未消去:データ格納中)、B(消去処理中)、I(使用不可能)などがある。なお、I(使用不可能)は、フラッシュメモリ150のブロック故障により、該ブロックが使用できないことを示す。
フラッシュメモリコントローラ50は、フラッシュメモリ150に接続され、フラッシュメモリ150に対するデータの読み書き、または、消去を行う。例えば、ブロック消去要求カウンタ60から物理ブロック番号を指示されると、対応するフラッシュメモリ150の領域にアクセスしてデータを消去する。
ブロック消去要求カウンタ60は、MPU100からの指示で物理ブロック番号をカウントアップし、フラッシュメモリコントローラ50にデータの消去指示を行う。
次に、停電時の各部の処理動作を具体的に説明する。停電になると、ブロックアクセス要求カウンタ30は、停電発生の通知を受けたMPU100の指示により、第一保存モードで作動する(図2ステップS220参照)。
第一保存モードで作動するブロックアクセス要求カウンタ30は、論理ブロック番号を、逐次、「LBLK_0」から「LBLK_A」までDMAコントローラ20およびフラッシュメモリ管理テーブル40に通知する(図8の丸を参照)。
DMAコントローラ20は、通知された論理ブロック番号に対応するキャッシュメモリ130の領域からキャッシュデータを読み出し、読み出したキャッシュデータをフラッシュメモリコントローラ50に転送する(図8の三角を参照)。
フラッシュメモリコントローラ50は、フラッシュメモリ管理テーブル40に論理ブロック番号が通知されるたびに、消去ブロック管理テーブル43を参照し、フラッシュメモリ150で現在空きブロックとなっているブロックの物理ブロック番号で、最も若い番号を検索する。
図7を用いて説明すると、最初に、論理ブロック番号「LBLK_0」が通知された場合には、E(消去済み)が対応付けられた物理ブロック番号で、最も若い物理ブロック番号である「BLK_0」が検索される。
また、フラッシュメモリコントローラ50は、通知された論理ブロック番号と、検索した物理ブロック番号と、を対応付けて物理ブロック管理テーブル41に格納するとともに、逆の対応関係を論理ブロック管理テーブル42に格納する。
ところで、フラッシュメモリコントローラ50は、DMAコントローラ20からキャッシュデータが逐次転送されており(図8の三角を参照)、検索した物理ブロック番号に基づいて、キャッシュデータをフラッシュメモリ150に書き込む。その際、フラッシュメモリコントローラ50は、消去ブロック管理テーブル43で、現にキャッシュデータを書き込んだブロックの物理ブロック番号に対応するフラグをEからN(未消去:データ格納中)に変更する。
図9を用いて説明すると、フラッシュメモリコントローラ50は、最初に物理ブロック番号「BLK_0」を検索し、該物理ブロック番号に対応するブロックにデータを書き込んだので、物理ブロック番号「BLK_0」に対応付けられたフラグをEからNに変更する。
その後、フラッシュメモリ管理テーブル40に論理ブロック番号「LBLK_1」が通知された場合には、Eが対応付けられた最も若い物理ブロック番号「BLK_3」が検索され(「BLK_0」にはすでにEが対応付けられている)、同様に、次には物理ブロック番号「BLK_4」が検索される(図8の三角を参照)。
ブロックアクセス要求カウンタ30によって、論理ブロック番号が「LBLK_A」までカウントアップされると、バックアップ対象のキャッシュデータが全てフラッシュメモリ150に書き込まれ、バックアップ処理が完了するので、MPU100は、ディスクアレイ装置10の作動を終了する。
次に、停電が復旧し、ディスクアレイ装置10に電源が投入され、電源ユニット160が電力供給を開始したときの各部の処理動作を具体的に説明する。
ディスクアレイ装置10に電源が投入されると、MPU100は、通常の終了処理を行っていないことを装置内部状態より判断しブロックアクセス要求カウンタ30を復元モードで作動させる(図2ステップS140参照)。なお、このとき、バッテリユニット170は、外部電源からの電力供給によって、蓄電手段であるバッテリの充電を開始する。
復元モードで作動するブロックアクセス要求カウンタ30は、論理ブロック番号を、逐次、「LBLK_0」から「LBLK_A」までDMAコントローラ20およびフラッシュメモリ管理テーブル40に通知する(図10の丸を参照)。
フラッシュメモリコントローラ50は、フラッシュメモリ管理テーブル40に論理ブロック番号が通知されるたびに、物理ブロック管理テーブル41を参照し、通知された論理ブロック番号を物理ブロック番号に変換する(図10の四角を参照)。
図5を用いて説明すると、最初に通知される論理ブロック番号「LBLK_0」が通知された場合には、フラッシュメモリコントローラ50は、物理ブロック番号「BLK_0」に変換する。
そして、フラッシュメモリコントローラ50は、変換した物理ブロック番号が割り当てられたブロックからバックアップデータを読み出し、DMAコントローラ20に転送する(図10の黒三角を参照)。
このようにDMAコントローラ20は、フラッシュメモリコントローラ50からバックアップデータが逐次転送されており(図10の黒三角を参照)、ブロックアクセス要求カウンタ30から通知された論理ブロック番号に基づいて、バックアップデータをキャッシュメモリ130に書き込む。
ブロックアクセス要求カウンタ30が論理ブロック番号を最後の「LBLK_A」までカウントアップすると、バックアップデータが全てキャッシュメモリ130に書き込まれるので、キャッシュデータの復元処理が完了する。
復元処理中、バッテリユニット170によるバッテリの充電が行われており、MPU100は、キャッシュメモリ130の復元が完了しても次の処理に移行せず、バッテリユニット170からバッテリの充電完了が通知されるまで待機する。
したがって、バッテリユニット170は、バッテリの充電が完了すると、MPU100に充電完了を通知する(図11のN1参照)。MPU100は、この通知を受けてブロック消去要求カウンタ60を作動させる。
ブロック消去要求カウンタ60は、フラッシュメモリ管理テーブル40を参照し、物理ブロック番号を、最も若い番号からフラッシュメモリコントローラ50に通知する(図11の四角を参照)。
また、ブロック消去要求カウンタ60は、消去ブロック管理テーブル43で、通知した物理ブロック番号に対応するフラグをNからB(消去処理中)に変更する。
図12を用いて説明すると、ブロック消去要求カウンタ60は、最初に通知した物理ブロック番号「BLK_0」に対応するフラグをNからBに変更する。
フラッシュメモリコントローラ50は、通知された物理ブロック番号に対応するフラッシュメモリ150のブロックからデータを消去し始める。そして、フラッシュメモリコントローラ50は、データの消去処理が完了すると、ブロック消去要求カウンタ60に消去完了の通知を行う(図11のR1参照)。
通知を受けたブロック消去要求カウンタ60は、消去ブロック管理テーブル43で、通知した物理ブロック番号に対応するフラグをBからE(消去済み)に変更し、次に若い番号の物理ブロック番号をフラッシュメモリコントローラ50に通知する。
図13を用いて説明すると、ブロック消去要求カウンタ60は、最初に通知した物理ブロック番号「BLK_0」に対応するフラグをBからEに変更する。そして、ブロック消去要求カウンタ60は、次に若い番号の物理ブロック番号「BLK_3」をフラッシュメモリコントローラ50に通知する。
フラッシュメモリコントローラ50は、このように、ブロック消去要求カウンタ60から逐次物理ブロック番号が通知されるので、同様に、通知された物理ブロック番号に対応するブロックのデータの消去を開始し、データの消去処理が完了すれば、ブロック消去要求カウンタ60に消去完了の通知を行う。
その後、ブロック消去要求カウンタ60が物理ブロック番号を最後までカウントアップすると、フラッシュメモリ150のバックアップデータが全て消去されるので、消去ブロック管理テーブル43は、例えば、図7に示した状態に戻る。
なお、ブロック消去要求カウンタ60は、最後の物理ブロック番号を通知し、該物理ブロック番号に対応するフラグをBからEに変更すると、MPU100に消去処理の完了を通知する。通知を受けたMPU100は、装置を起動し、ホストコンピュータ200の補助記憶装置として通常処理を行う(図2ステップS120およびステップS130参照)。
しかし、ブロック消去要求カウンタ60によって最後の物理ブロック番号がカウントアップされるまでの間に、停電が発生してしまう場合がある(図2のフローチャートで説明すれば、ステップS170否定かつステップS180肯定となった場合)。その際の各部の処理を以下に具体的に説明する。
MPU100は、ブロック消去要求カウンタ60から消去処理の完了が通知される前に、電源ユニット160から停電発生を通知されると、ブロック消去要求カウンタ60の作動を停止する。そして、MPU100は、フラッシュメモリコントローラ50がブロック消去要求カウンタ60に対して行った消去完了の通知を取得すると、ブロックアクセス要求カウンタ30を第二保存モードで作動させる。
第二保存モードで作動するブロックアクセス要求カウンタ30は、フラッシュメモリ管理テーブル40の消去ブロック管理テーブル43からフラグ「B」に対応する物理ブロック番号を検索する。
そして、ブロックアクセス要求カウンタ30は、検索した物理ブロック番号を論理ブロック管理テーブル42によって論理ブロック番号に変換し、この論理ブロック番号までカウントアップすることを決定する。
なお、検索した物理ブロック番号に対応するブロックのデータは消去処理が完了しているので(MPU100は、フラッシュメモリコントローラ50がブロック消去要求カウンタ60に対して行った消去完了の通知を取得してからブロックアクセス要求カウンタ30を第二保存モードで作動させるため)、ブロックアクセス要求カウンタ30は、対応するフラグをBからEに変更する。
そして、ブロックアクセス要求カウンタ30は、論理ブロック番号を、「LBLK_0」から、決定した論理ブロック番号まで、DMAコントローラ20およびフラッシュメモリ管理テーブル40に通知する。
DMAコントローラ20は、通知された論理ブロック番号に対応するキャッシュメモリ130の領域からキャッシュデータを読み出し、読み出したキャッシュデータをフラッシュメモリコントローラ50に転送する。
フラッシュメモリコントローラ50は、フラッシュメモリ管理テーブル40に論理ブロック番号が通知されるたびに、消去ブロック管理テーブル43を参照し、フラッシュメモリ150で現在空きブロックとなっているブロックの物理ブロック番号で、最も若い番号を検索する。
また、フラッシュメモリコントローラ50は、通知された論理ブロック番号と、検索した物理ブロック番号との対応関係を、物理ブロック管理テーブル41や論理ブロック管理テーブル42に格納することとなるが、前回停電時に格納した論理ブロック番号と同一のものが存在するので、その場合には更新を行う。
ところで、フラッシュメモリコントローラ50は、DMAコントローラ20からキャッシュデータが逐次転送されており、検索した物理ブロック番号に基づいて、キャッシュデータをフラッシュメモリ150に書き込む。その際、フラッシュメモリコントローラ50は、消去ブロック管理テーブル43で、現にキャッシュデータを書き込んだブロックの物理ブロック番号に対応するフラグをEからN(未消去:データ格納中)に変更する。
ブロックアクセス要求カウンタ30によって、上記した所定の論理ブロック番号までカウントアップされると、フラッシュメモリ150から消去してしまったバックアップデータが全てフラッシュメモリ150に書き込まれるので、MPU100は、ディスクアレイ装置10の作動を終了する。
以上が停電発生時、停電復旧時およびフラッシュメモリ150消去中における停電発生時のバックアップコントローラ140の処理動作の説明である。なお、図15に示すように、ディスクアレイ装置10は、複数のハードディスク180A1〜180Anを除く各部が現用系と予備系で構成されたものであってもよい。
[実施例1の効果]
上記したように、実施例1によれば、消去ブロック管理テーブル43にてフラッシュメモリ150へのデータ記憶状況を管理しておく。フラッシュメモリ150の消去処理中に停電が起こった場合には、消去ブロック管理テーブル43を参照し、データ記憶状況に基づいてフラッシュメモリ150から消去した分のデータを、キャッシュメモリ130からフラッシュメモリ150に再度退避させる。こうすることによって、フラッシュメモリ150の消去データの安全性を、コストを低くして確保することが可能となる。
実施例1では、MPU100は、キャッシュメモリ130の復元が完了しても次の処理に移行せず、バッテリユニット170からバッテリの充電完了が通知されるまで待機していた。
しかし、本発明によれば、フラッシュメモリ150の消去中に停電が発生しても、消去処理を中断し、フラッシュメモリ150から消去してしまった分のデータをキャッシュメモリ130から書き戻すことができる。
その場合、フラッシュメモリ150の消去が開始されて間もなく停電が発生した場合には、書き戻すべきデータは少なく、書き戻すのに必要なエネルギーも少ない。なお、最も多くのエネルギーが必要とされるのは、フラッシュメモリ150の消去が完了する間際に停電が発生した場合である。
したがって、バッテリの充電完了を待たずに消去処理へ移行し、仮にデータ消去対象のブロックに対するデータ消去を開始した直後に停電が発生したとしても、該ブロックに対するデータ消去を完了し、さらに、消去してしまった分のデータを書き戻すだけの充電量に達した各時点で、該ブロックの物理ブロック番号を通知していってもよい。
図14は、実施例2に係るバックアップコントローラ140の構成を示す図である。同図に示すように、バックアップコントローラ140は、実施例1と同様、DMAコントローラ20と、ブロックアクセス要求カウンタ30と、フラッシュメモリ管理テーブル40と、フラッシュメモリコントローラ50と、ブロック消去要求カウンタ60と、を備え、実施例1とは異なり、充電量変換テーブル70を備える。
充電量変換テーブル70は、バッテリユニット170より通知される充電量から、消去可能なブロック数を算出し、ブロック消去要求カウンタ60に通知する。例えば、充電量変換テーブル70は、仮に2番目にデータ消去対象となったブロックに対するデータ消去が開始された直後に停電が発生したとしても、各部の処理動作によって、該ブロックに対するデータ消去が完了し、さらに、消去済みの1番目のブロックのデータおよび2番目のブロックのデータが書き戻されるだけの充電量がバッテリユニット170より通知されると、ブロック数「2」を算出する。
以下では、キャッシュデータの復元処理が完了してからの各部の処理動作を、実施例1と同様な部分については省略して説明する。
MPU100は、キャッシュメモリ130の復元が完了すると、バッテリの充電完了の通知を待たず、ただちにブロック消去要求カウンタ60を作動させる。
ブロック消去要求カウンタ60は、充電量変換テーブル70を参照して消去可能なブロック数を取得する。消去可能なブロック数が「1」以上であれば、ブロック消去要求カウンタ60は、物理ブロック番号を、最も若い番号からフラッシュメモリコントローラ50に通知する。
そして、ブロック消去要求カウンタ60は、ブロック消去要求カウンタ60から消去完了の通知があれば、同じく充電量変換テーブル70を参照して消去可能なブロック数を取得する。今度は、ブロック消去要求カウンタ60は、消去可能なブロック数が「2」以上であれば、次に若い(2番目に若い)番号の物理ブロック番号をフラッシュメモリコントローラ50に通知する。
以降同様に、ブロック消去要求カウンタ60は、消去完了が通知されるたびに充電量変換テーブル70を参照し、消去可能なブロック数がx以上であれば、x番目に若い番号の物理ブロック番号をフラッシュメモリコントローラ50に通知していく。なお、消去可能なブロック数が必要数以上なければ、充電量変換テーブル70を監視し、必要数以上になった時点で物理ブロック番号をフラッシュメモリコントローラ50に通知する。
[実施例2の効果]
上記したように、実施例2によれば、バッテリ充電と、フラッシュメモリの消去とを同時進行させることで、ディスクアレイ装置に電源を投入してから装置が起動するまでの時間を短縮することが可能となる。
以上の実施例1〜2を含む実施形態に関し、更に以下の付記を開示する。
(付記1)外部電源に接続される主電源ユニットと、前記主電源ユニットによる電源供給が途絶えた場合に、電源供給を代行するバッテリユニットと、前記主電源ユニットもしくは前記バッテリユニットによる電源供給でデータ記憶制御を行う制御部と、を有する情報処理装置であって、
前記制御部は、
データを一時的に記憶する揮発メモリと、
前記揮発メモリに記憶されたデータの退避先である不揮発メモリと、
前記不揮発メモリへのデータ記憶状況を管理する不揮発メモリ管理テーブルと、
前記主電源ユニットによる電源供給が途絶えた場合に、前記揮発メモリに記憶されるデータを前記不揮発メモリに退避させるとともに、前記データ記憶状況を更新するデータ退避処理部と、
前記主電源ユニットによる電源供給が回復すると、前記不揮発メモリに退避させたデータを前記揮発メモリに書き戻すデータ復元処理部と、
前記データ復元処理部によるデータの書き戻しが完了すると、前記不揮発メモリに退避させたデータを消去しつつ、前記データ記憶状況を更新するデータ消去処理部と、
を備え、
前記データ退避処理部は、前記データ消去処理部による消去処理時に前記主電源ユニットによる電源供給が途絶えた場合には、前記不揮発メモリ管理テーブルに基づいて、前記不揮発メモリから消去した分のデータを前記揮発メモリから前記不揮発メモリに退避させることを特徴とする情報処理装置。
(付記2)前記不揮発メモリ管理テーブルは、前記不揮発メモリにおいてデータの消去単位となるブロックごとにデータ記憶状況を管理するものであって、
前記データ退避処理部は、前記データ退避時に前記不揮発メモリ管理テーブルの該当ブロックに対してデータ格納中フラグを設定し、
前記データ消去処理部は、前記データ消去時に前記不揮発メモリ管理テーブルの該当ブロックに対してデータ消去済フラグを設定することを特徴とする付記1に記載の情報処理装置。
(付記3)前記データ退避処理部は、前記データ消去処理部による消去処理時に前記主電源ユニットによる電源供給が途絶えた場合には、前記不揮発メモリ管理テーブルから前記データ消去済フラグが設定されたブロック情報を取得し、該ブロック情報に対応するブロックに該当データを再度退避させることを特徴とする付記2に記載の情報処理装置。
(付記4)前記データ消去処理部は、前記バッテリユニットの充電状況に応じてデータを消去することを特徴とする付記2または3に記載の情報処理装置。
(付記5)主電源ユニットもしくはバッテリユニットからの電源供給で作動する情報処理装置で行われるデータ記憶を制御する制御部であって、
データを一時的に記憶する揮発メモリと、
前記揮発メモリに記憶されたデータの退避先である不揮発メモリと、
前記不揮発メモリへのデータ記憶状況を管理する不揮発メモリ管理テーブルと、
前記主電源ユニットによる電源供給が途絶えた場合に、前記揮発メモリに記憶されるデータを前記不揮発メモリに退避させるとともに、前記データ記憶状況を更新するデータ退避処理部と、
前記主電源ユニットによる電源供給が回復すると、前記不揮発メモリに退避させたデータを前記揮発メモリに書き戻すデータ復元処理部と、
前記データ復元処理部によるデータの書き戻しが完了すると、前記不揮発メモリに退避させたデータを消去しつつ、前記データ記憶状況を更新するデータ消去処理部と、
を備え、
前記データ退避処理部は、前記データ消去処理部による消去処理時に前記主電源ユニットによる電源供給が途絶えた場合には、前記不揮発メモリ管理テーブルに基づいて、前記不揮発メモリから消去した分のデータを前記揮発メモリから前記不揮発メモリに退避させることを特徴とする制御部。
(付記6)前記不揮発メモリ管理テーブルは、前記不揮発メモリにおいてデータの消去単位となるブロックごとにデータ記憶状況を管理するものであって、
前記データ退避処理部は、前記データ退避時に前記不揮発メモリ管理テーブルの該当ブロックに対してデータ格納中フラグを設定し、
前記データ消去処理部は、前記データ消去時に前記不揮発メモリ管理テーブルの該当ブロックに対してデータ消去済フラグを設定することを特徴とする付記5に記載の制御部。
(付記7)前記データ退避処理部は、前記データ消去処理部による消去処理時に前記主電源ユニットによる電源供給が途絶えた場合には、前記不揮発メモリ管理テーブルから前記データ消去済フラグが設定されたブロック情報を取得し、該ブロック情報に対応するブロックに該当データを再度退避させることを特徴とする付記6に記載の制御部。
(付記8)前記データ消去処理部は、前記バッテリユニットの充電状況に応じてデータを消去することを特徴とする付記6または7に記載の制御部。
(付記9)主電源ユニットもしくはバッテリユニットからの電源供給で作動する情報処理装置で行われるデータ記憶の制御方法であって、
前記主電源ユニットによる電源供給が途絶えた場合に、揮発メモリに記憶されるデータを不揮発メモリに退避させるとともに、所定のテーブルで管理される前記不揮発メモリへのデータ記憶状況を更新するデータ退避ステップと、
前記主電源ユニットによる電源供給が回復すると、前記不揮発メモリに退避させたデータを前記揮発メモリに書き戻すデータ復元ステップと、
前記不揮発メモリに退避させたデータを消去しつつ、前記データ記憶状況を更新するデータ消去ステップと、
前記データ消去ステップ時に前記主電源ユニットによる電源供給が途絶えた場合には、前記データ記憶状況に基づいて、前記不揮発メモリから消去した分のデータを前記揮発メモリから前記不揮発メモリに退避させる再退避ステップと、
を含んだことを特徴とする制御方法。
(付記10)前記データ記憶状況の更新は、前記所定のテーブル内で、前記不揮発メモリにおいてデータの消去単位となるブロックごとに行われるものであって、
前記データ退避ステップにおいて、前記データ退避時に前記所定のテーブルの該当ブロックに対してデータ格納中フラグを設定し、
前記データ消去ステップにおいて、前記データ消去時に前記所定のテーブルの該当ブロックに対してデータ消去済フラグを設定することを特徴とする付記9に記載の制御方法。
(付記11)前記データ退避ステップにおいて、前記データ消去ステップ時に前記主電源ユニットによる電源供給が途絶えた場合には、前記所定のテーブルから前記データ消去済フラグが設定されたブロック情報を取得し、該ブロック情報に対応するブロックに該当データを再度退避させることを特徴とする付記10に記載の制御方法。
(付記12)前記データ消去ステップにおいて、前記バッテリユニットの充電状況に応じてデータを消去することを特徴とする付記9または10に記載の制御方法。
以上のように、本発明に係る情報処理装置、該情報処理装置で行われるデータ記憶を制御する制御部およびデータ記憶の制御方法は、ライトバックキャッシュでデータ記憶をする場合に有用であり、バックアップ先となる不揮発メモリの消去データの安全性を、コストを低くして確保することに適する。
実施例1に係るディスクアレイ装置の概要構成を示す図である。 ディスクアレイ装置10の各部の処理動作を説明するフローチャートである。 キャッシュメモリ130およびフラッシュメモリ150内のデータが書き込まれる領域を説明するための図である。 バックアップコントローラ140の構成を示す図である。 物理ブロック管理テーブルの具体例を示す図である。 論理ブロック管理テーブルの具体例を示す図である。 消去ブロック管理テーブルの具体例を示す図である。 停電時の各部の処理動作を説明するための図である。 消去ブロック管理テーブルの更新を説明するための図である。 停電が復旧して電源が投入されたときの各部の処理動作を説明するための図である。 復元が完了してフラッシュメモリの消去処理を行う際の各部の処理動作を説明するための図である。 消去ブロック管理テーブルの更新を説明するための図である。 消去ブロック管理テーブルの更新を説明するための図である。 実施例2に係るバックアップコントローラ140の構成を示す図である。 ディスクを除く各部を冗長構成としたディスクアレイ装置の概要構成を示す図である。
符号の説明
10 ディスクアレイ装置
20 DMAコントローラ
30 ブロックアクセス要求カウンタ
40 フラッシュメモリ管理テーブル
50 フラッシュメモリコントローラ
60 ブロック消去要求カウンタ
70 充電量変換テーブル
100 MPU
110 ホストインタフェース
120 ディスクインタフェース
130 キャッシュメモリ
140 バックアップコントローラ
150 フラッシュメモリ
160 電源ユニット
170 バッテリユニット
180A1〜180An ハードディスク
200 ホストコンピュータ

Claims (6)

  1. 外部電源に接続される主電源ユニットと、前記主電源ユニットによる電源供給が途絶えた場合に、電源供給を代行するバッテリユニットと、前記主電源ユニットもしくは前記バッテリユニットによる電源供給でデータ記憶制御を行う制御部と、を有する情報処理装置であって、
    前記制御部は、
    データを一時的に記憶する揮発メモリと、
    前記揮発メモリに記憶されたデータの退避先である不揮発メモリと、
    前記不揮発メモリへのデータ記憶状況を管理する不揮発メモリ管理テーブルと、
    前記主電源ユニットによる電源供給が途絶えた場合に、前記揮発メモリに記憶されるデータを前記不揮発メモリに退避させるとともに、前記データ記憶状況を更新するデータ退避処理部と、
    前記主電源ユニットによる電源供給が回復すると、前記不揮発メモリに退避させたデータを前記揮発メモリに書き戻すデータ復元処理部と、
    前記データ復元処理部によるデータの書き戻しが完了すると、前記不揮発メモリに退避させたデータを消去しつつ、前記データ記憶状況を更新するデータ消去処理部と、
    を備え、
    前記データ退避処理部は、前記データ消去処理部による消去処理時に前記主電源ユニットによる電源供給が途絶えた場合には、前記不揮発メモリ管理テーブルに基づいて、前記不揮発メモリから消去した分のデータを前記揮発メモリから前記不揮発メモリに退避させることを特徴とする情報処理装置。
  2. 前記不揮発メモリ管理テーブルは、前記不揮発メモリにおいてデータの消去単位となるブロックごとにデータ記憶状況を管理するものであって、前記不揮発メモリにおけるデータの消去単位となるブロックごとに、該ブロックについてのデータ記憶状況を示すフラグ情報を記憶し、
    前記データ退避処理部は、前記データ退避時に、前記データの退避先となる前記不揮発メモリのブロックに対応する、前記不揮発メモリ管理テーブル中のフラグ情報に対してデータ格納中フラグを設定し、
    前記データ消去処理部は、前記データ消去時に、前記データを消去する前記不揮発メモリのブロックに対応する、前記不揮発メモリ管理テーブル中のフラグ情報に対してデータ消去済フラグを設定することを特徴とする請求項1に記載の情報処理装置。
  3. 前記不揮発メモリ管理テーブルは、さらに、前記不揮発メモリにおけるデータの消去単位となるブロックを識別するためのブロック情報を記憶し、
    前記データ退避処理部は、前記データ消去処理部による消去処理時に前記主電源ユニットによる電源供給が途絶えた場合には、前記不揮発メモリ管理テーブルから前記データ消去済フラグが設定されたフラグ情報に対応するブロック情報を取得し、該ブロック情報に対応する前記不揮発メモリのブロックに該当データを再度退避させることを特徴とする請求項2に記載の情報処理装置。
  4. 前記データ消去処理部は、前記バッテリユニットの充電状況に応じてデータを消去することを特徴とする請求項2または3に記載の情報処理装置。
  5. 主電源ユニットもしくはバッテリユニットからの電源供給で作動する情報処理装置で行われるデータ記憶を制御する制御部であって、
    データを一時的に記憶する揮発メモリと、
    前記揮発メモリに記憶されたデータの退避先である不揮発メモリと、
    前記不揮発メモリへのデータ記憶状況を管理する不揮発メモリ管理テーブルと、
    前記主電源ユニットによる電源供給が途絶えた場合に、前記バッテリユニットからの電源供給で前記揮発メモリに記憶されるデータを前記不揮発メモリに退避させるとともに、前記データ記憶状況を更新するデータ退避処理部と、
    前記主電源ユニットによる電源供給が回復すると、前記不揮発メモリに退避させたデータを前記揮発メモリに書き戻すデータ復元処理部と、
    前記データ復元処理部によるデータの書き戻しが完了すると、前記不揮発メモリに退避させたデータを消去しつつ、前記データ記憶状況を更新するデータ消去処理部と、
    を備え、
    前記データ退避処理部は、前記データ消去処理部による消去処理時に前記主電源ユニットによる電源供給が途絶えた場合には、前記バッテリユニットからの電源供給で前記不揮発メモリ管理テーブルに基づいて、前記不揮発メモリから消去した分のデータを前記揮発メモリから前記不揮発メモリに退避させることを特徴とする制御部。
  6. 主電源ユニットもしくはバッテリユニットからの電源供給で作動する情報処理装置で行われるデータ記憶の制御方法であって、
    前記主電源ユニットによる電源供給が途絶えた場合に、前記バッテリユニットからの電源供給で揮発メモリに記憶されるデータを不揮発メモリに退避させるとともに、所定のテーブルで管理される前記不揮発メモリへのデータ記憶状況を更新するデータ退避ステップと、
    前記主電源ユニットによる電源供給が回復すると、前記不揮発メモリに退避させたデータを前記揮発メモリに書き戻すデータ復元ステップと、
    前記不揮発メモリに退避させたデータを消去しつつ、前記データ記憶状況を更新するデータ消去ステップと、
    前記データ消去ステップ時に前記主電源ユニットによる電源供給が途絶えた場合には、前記バッテリユニットからの電源供給で前記データ記憶状況に基づいて、前記不揮発メモリから消去した分のデータを前記揮発メモリから前記不揮発メモリに退避させる再退避ステップと、
    を含んだことを特徴とする制御方法。
JP2008023195A 2008-02-01 2008-02-01 情報処理装置、該情報処理装置で行われるデータ記憶を制御する制御部およびデータ記憶の制御方法 Expired - Fee Related JP4536785B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2008023195A JP4536785B2 (ja) 2008-02-01 2008-02-01 情報処理装置、該情報処理装置で行われるデータ記憶を制御する制御部およびデータ記憶の制御方法
US12/362,630 US8838918B2 (en) 2008-02-01 2009-01-30 Information processing apparatus and data backup method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2008023195A JP4536785B2 (ja) 2008-02-01 2008-02-01 情報処理装置、該情報処理装置で行われるデータ記憶を制御する制御部およびデータ記憶の制御方法

Publications (2)

Publication Number Publication Date
JP2009187062A JP2009187062A (ja) 2009-08-20
JP4536785B2 true JP4536785B2 (ja) 2010-09-01

Family

ID=40932825

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2008023195A Expired - Fee Related JP4536785B2 (ja) 2008-02-01 2008-02-01 情報処理装置、該情報処理装置で行われるデータ記憶を制御する制御部およびデータ記憶の制御方法

Country Status (2)

Country Link
US (1) US8838918B2 (ja)
JP (1) JP4536785B2 (ja)

Families Citing this family (24)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5444698B2 (ja) * 2008-11-25 2014-03-19 カシオ計算機株式会社 データ処理装置及びプログラム
JP4696171B2 (ja) 2009-05-19 2011-06-08 富士通株式会社 記憶装置、データ保存方法およびデータ保存プログラム
JP4712102B2 (ja) * 2009-05-26 2011-06-29 富士通株式会社 記憶装置、データ処理方法およびデータ処理プログラム
JP4930555B2 (ja) * 2009-07-09 2012-05-16 富士通株式会社 制御装置、制御方法およびストレージシステム
JP4930556B2 (ja) * 2009-07-09 2012-05-16 富士通株式会社 退避処理装置、退避処理方法およびストレージシステム
JP5397609B2 (ja) * 2009-09-01 2014-01-22 日本電気株式会社 ディスクアレイ装置
JP5712535B2 (ja) * 2010-09-17 2015-05-07 富士通株式会社 ストレージ装置、制御部およびストレージ装置制御方法
US20130086315A1 (en) * 2011-10-04 2013-04-04 Moon J. Kim Direct memory access without main memory in a semiconductor storage device-based system
KR101392174B1 (ko) * 2011-11-09 2014-05-09 한양대학교 산학협력단 소거 대상 블록의 매핑 테이블을 저장하는 플래시 메모리 제어장치 및 방법
US9372694B2 (en) * 2012-03-29 2016-06-21 Semiconductor Energy Laboratory Co., Ltd. Reducing data backup and recovery periods in processors
JP6011153B2 (ja) * 2012-08-22 2016-10-19 富士通株式会社 ストレージシステム、ストレージ制御方法およびストレージ制御プログラム
KR20140052109A (ko) * 2012-10-11 2014-05-07 한국전자통신연구원 대용량 플로우 검출 장치 및 방법
JP5695112B2 (ja) * 2013-03-18 2015-04-01 富士通テン株式会社 データ記憶装置、データの記憶方法および車載用制御装置
JP6036618B2 (ja) * 2013-09-13 2016-11-30 カシオ計算機株式会社 電子機器及びプログラム
CN105512056A (zh) * 2014-09-24 2016-04-20 中兴通讯股份有限公司 数据保存方法、装置及终端
US20160306697A1 (en) * 2015-02-13 2016-10-20 Kabushiki Kaisha Toshiba Magnetic disk device and method for saving management information
CN106293503B9 (zh) 2015-06-23 2019-06-28 株式会社东芝 磁盘装置及控制方法
KR20170074264A (ko) * 2015-12-21 2017-06-30 에스케이하이닉스 주식회사 메모리 시스템 및 메모리 시스템의 동작방법
JP6784033B2 (ja) * 2016-02-24 2020-11-11 日本電気株式会社 方法、キャッシュシステム及びデータ監視部
US10379979B2 (en) * 2017-05-31 2019-08-13 Western Digital Technologies, Inc. Power fail handling using stop commands
JP6715297B2 (ja) * 2018-09-11 2020-07-01 キオクシア株式会社 半導体記憶装置の制御方法
US10915404B2 (en) 2018-11-02 2021-02-09 Arm Limited Persistent memory cleaning
CN111309131A (zh) * 2020-01-18 2020-06-19 东莞肯博尔电子科技有限公司 一种电子计算机的微型服务器储存的安全保障系统
CN115220639A (zh) * 2021-04-15 2022-10-21 伊姆西Ip控股有限责任公司 管理存储系统的方法、电子设备和计算机程序产品

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH07114500A (ja) * 1993-10-19 1995-05-02 Matsushita Electric Ind Co Ltd 不揮発性メモリ記憶装置
JPH1185629A (ja) * 1997-07-15 1999-03-30 Fujitsu Ltd フラッシュ・メモリの管理方式
JP2000222292A (ja) * 1999-02-04 2000-08-11 Nec Saitama Ltd フラッシュメモリを利用したデータ管理方法
JP2001154926A (ja) * 1999-11-25 2001-06-08 Nec Shizuoka Ltd フラッシュメモリを用いる記憶方法及び記憶制御プログラムを記録した記録媒体
JP2002366420A (ja) * 2001-06-08 2002-12-20 Nec Corp 不揮発性記憶装置及びその書き換え制御方法
JP2004531814A (ja) * 2001-04-19 2004-10-14 インターナショナル・ビジネス・マシーンズ・コーポレーション ライトバック・キャッシュ情報の信頼性を改善するための方法および装置
JP2005025401A (ja) * 2003-06-30 2005-01-27 Sharp Corp メモリ管理装置およびこれを備えたicカード

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5799200A (en) * 1995-09-28 1998-08-25 Emc Corporation Power failure responsive apparatus and method having a shadow dram, a flash ROM, an auxiliary battery, and a controller
US6948026B2 (en) * 2001-08-24 2005-09-20 Micron Technology, Inc. Erase block management
US7003620B2 (en) * 2002-11-26 2006-02-21 M-Systems Flash Disk Pioneers Ltd. Appliance, including a flash memory, that is robust under power failure
US7533215B2 (en) * 2005-09-15 2009-05-12 Intel Corporation Distributed and packed metadata structure for disk cache
US7421552B2 (en) * 2006-03-17 2008-09-02 Emc Corporation Techniques for managing data within a data storage system utilizing a flash-based memory vault
JP2008059443A (ja) * 2006-09-01 2008-03-13 Hitachi Ltd 記憶システムおよびバックアップ方法
US7865679B2 (en) * 2007-07-25 2011-01-04 AgigA Tech Inc., 12700 Power interrupt recovery in a hybrid memory subsystem

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH07114500A (ja) * 1993-10-19 1995-05-02 Matsushita Electric Ind Co Ltd 不揮発性メモリ記憶装置
JPH1185629A (ja) * 1997-07-15 1999-03-30 Fujitsu Ltd フラッシュ・メモリの管理方式
JP2000222292A (ja) * 1999-02-04 2000-08-11 Nec Saitama Ltd フラッシュメモリを利用したデータ管理方法
JP2001154926A (ja) * 1999-11-25 2001-06-08 Nec Shizuoka Ltd フラッシュメモリを用いる記憶方法及び記憶制御プログラムを記録した記録媒体
JP2004531814A (ja) * 2001-04-19 2004-10-14 インターナショナル・ビジネス・マシーンズ・コーポレーション ライトバック・キャッシュ情報の信頼性を改善するための方法および装置
JP2002366420A (ja) * 2001-06-08 2002-12-20 Nec Corp 不揮発性記憶装置及びその書き換え制御方法
JP2005025401A (ja) * 2003-06-30 2005-01-27 Sharp Corp メモリ管理装置およびこれを備えたicカード

Also Published As

Publication number Publication date
US20090198931A1 (en) 2009-08-06
JP2009187062A (ja) 2009-08-20
US8838918B2 (en) 2014-09-16

Similar Documents

Publication Publication Date Title
JP4536785B2 (ja) 情報処理装置、該情報処理装置で行われるデータ記憶を制御する制御部およびデータ記憶の制御方法
US9996278B2 (en) Memory device, control method for the memory device, and controller
US10031698B2 (en) Method of wear leveling for data storage device
US8762661B2 (en) System and method of managing metadata
US8621144B2 (en) Accelerated resume from hibernation in a cached disk system
US7774390B2 (en) Apparatus for collecting garbage block of nonvolatile memory according to power state and method of collecting the same
US20150331624A1 (en) Host-controlled flash translation layer snapshot
JP5808854B2 (ja) ストレージシステム及びストレージ方法
JP4930555B2 (ja) 制御装置、制御方法およびストレージシステム
US10838629B2 (en) Solid state device with fast boot after ungraceful shutdown
US20100235565A1 (en) Apparatus and method to protect metadata against unexpected power down
JP2010211734A (ja) 不揮発性メモリを用いた記憶装置
JP4930556B2 (ja) 退避処理装置、退避処理方法およびストレージシステム
WO2023116346A1 (zh) 异常掉电下Trim数据的恢复方法、系统及固态硬盘
JP5183662B2 (ja) メモリ制御装置及びメモリ制御方法
TW202209124A (zh) 於斷電保護備份失敗後支援唯讀模式之固態硬碟
JP2002099390A (ja) ディスク制御装置
JP2008059007A (ja) 半導体記憶装置
KR20110041843A (ko) 하이브리드 저장장치 및 그 동작방법
CN117539692B (zh) 一种zns固态硬盘数据集管理命令实现方法
JP2010146056A (ja) データ記憶装置、及び、その故障回復方法
CN117931091A (en) Abnormal power failure processing method, device, equipment, medium and product
JP6036618B2 (ja) 電子機器及びプログラム
KR101377291B1 (ko) 블록 해제 정보를 사용하여 로그 데이터를 저장하는 시스템 및 방법
CN111723411A (zh) 一种固态硬盘异常下电时写缓存的处理方法、系统及装置

Legal Events

Date Code Title Description
A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20100126

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20100329

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20100615

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20100616

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130625

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Ref document number: 4536785

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130625

Year of fee payment: 3

LAPS Cancellation because of no payment of annual fees