JP2009122826A - 半導体記憶装置、半導体記憶装置の制御方法および制御プログラム - Google Patents
半導体記憶装置、半導体記憶装置の制御方法および制御プログラム Download PDFInfo
- Publication number
- JP2009122826A JP2009122826A JP2007294237A JP2007294237A JP2009122826A JP 2009122826 A JP2009122826 A JP 2009122826A JP 2007294237 A JP2007294237 A JP 2007294237A JP 2007294237 A JP2007294237 A JP 2007294237A JP 2009122826 A JP2009122826 A JP 2009122826A
- Authority
- JP
- Japan
- Prior art keywords
- semiconductor memory
- area
- defective block
- block replacement
- capacity
- 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.)
- Withdrawn
Links
Images
Landscapes
- Techniques For Improving Reliability Of Storages (AREA)
- Memory System Of A Hierarchy Structure (AREA)
- Read Only Memory (AREA)
- For Increasing The Reliability Of Semiconductor Memories (AREA)
Abstract
【解決手段】各種データを記憶する第1半導体メモリ領域31および当該第1半導体メモリ領域31内の不良ブロックを代替する第1不良ブロック代替領域32を有するフラッシュメモリ27と、FeRAMで構成され、フラッシュメモリ27のデータの一部をキャッシュとして保持する第2半導体メモリ領域33を有するキャッシュメモリ28と、第2半導体メモリ領域33の一部を、第1半導体メモリ領域31内の不良ブロックを代替する第2不良ブロック代替領域34として管理する。
【選択図】図2
Description
しかしながら、この種の半導体記憶装置は、データの書換え回数に制限があり、通常数万回から数十万回程度で装置寿命となってしまうといった欠点がある。しかも、特定の領域(記憶素子)に書換えが集中すると、さらに寿命が短くなってしまう。このような問題を解消するため、不良ブロックを予め半導体記憶装置内に持たせた予備ブロックに代替することにより装置寿命を延ばす半導体記憶装置が提案されている。
そして、メモリコントローラが、エラーメモリ領域のエラー情報を読み取り、データメモリ領域が正常なときはデータメモリ領域、異常なときは代替メモリ領域へ読み書きを行う。書き込み時においてエラーが発生した場合は、代替メモリ領域の空き領域を捜し、空き領域にデータを書き込むとともに、エラーのあったメモリ領域のエラー情報を更新することにより半導体記憶装置の延命を図る(特許文献1参照)。
一方、フラッシュメモリはある一定容量のデータのまとまりをページとして扱っているため、シーケンシャルアクセスを行う場合には、比較的処理が早いが、ランダムアクセスを行う場合には、SRAMやDRAMなどと比較して比較にならないほど時間がかかる。
さらに書換寿命に関しては、ハードディスクドライブの代替使用を考えた場合には、大きな課題となってしまう。
そこで、本発明の目的は、ハードディスクドライブなどの大容量記憶装置の代替使用に際し、フラッシュメモリの課題を解決しつつ、記憶装置の意味づけを装置寿命かアクセス速度かの最適な状態に設定することができる半導体記憶装置、半導体記憶装置の制御方法および制御プログラムを提供することにある。
上記構成によれば、メモリ管理部は、キャッシュとして機能している第2半導体メモリ領域の一部を第1半導体メモリ領域内の不良ブロックを代替する第2不良ブロック代替領域として管理するので、第2半導体メモリ領域の一部の容量を適宜設定することにより記憶装置の意味づけを装置寿命かアクセス速度かの最適な状態に設定することができる。
また、本発明の第5の態様は、第1ないし第4の態様のいずれかの態様において、前記第1記憶部は、フラッシュメモリとして構成され、前記第2記憶部は、強誘電体メモリとして構成されているので、アクセス速度の向上を図れるとともに、電源遮断時でもキャッシングされたデータが保持される。
上記構成によれば、メモリ管理部は、キャッシュとして機能している第2半導体メモリ領域の一部を第1半導体メモリ領域内の不良ブロックを代替する第2不良ブロック代替領域として管理するので、第2半導体メモリ領域の一部の容量を適宜設定することにより記憶装置の意味づけを装置寿命かアクセス速度かの最適な状態に設定することができる。
上記構成によれば、メモリ管理部は、キャッシュとして機能している第2半導体メモリ領域の一部を第1半導体メモリ領域内の不良ブロックを代替する第2不良ブロック代替領域として管理するので、第2半導体メモリ領域の一部の容量を適宜設定することにより記憶装置の意味づけを装置寿命かアクセス速度かの最適な状態に設定することができる。
図1は、半導体記憶装置を有する情報処理装置の概要構成ブロック図である。
情報処理装置10は、ハードディスク装置の代替として利用される半導体記憶装置11と、半導体記憶装置11が装着されるホスト装置12と、ホスト装置12の周辺機器である表示デバイス13および入力デバイス14と、により構成されている。
半導体記憶装置11は、ホストインターフェース21、CPU(Central Processing Unit)22、RAM(Random Access Memory)24、ROM(Read Only Memory)25、設定情報管理メモリ26(不揮発性メモリ)、フラッシュメモリ27(Flash Memory)およびFeRAMで構成されたキャッシュメモリ(Cache Memory)28を備え、これらは内部バス29に接続されている。このキャッシュメモリ28を構成するFeRAMは、不揮発性メモリであるため、フラッシュメモリと同様の不揮発性メモリであり、電源が遮断されるような状況でもデータは保持されるため、フラッシュメモリ27のキャッシュとして最適である。
さらにキャッシュメモリ28は、記憶媒体としてキャッシュデータを記憶する第2半導体メモリ領域33を有している。この第2半導体メモリ領域33の一部は、フラッシュメモリ27の第1不良ブロック代替領域32の容量が所定容量未満となった場合に、フラッシュメモリ27の第1半導体メモリ領域31内の不良ブロックを代替する第2不良ブロック代替領域34として用いられる。
CPU22は、メモリ管理部として機能しており、半導体記憶装置11が、ハードディスクの代替として用いられることから、ハードディスク用のコマンドを解析してフラッシュメモリ17に読み出し/書き込みデータを割り当てるなどの処理を行う。
ROM25は、半導体記憶装置11がハードディスクとして機能するためのファームウェアを記憶している。このファームウェアには、CPU22が上記の各処理を実現するための制御プログラムの他、通常処理(ホスト装置12とのリード/ライトや、ホスト装置12 からのコマンド送信に対するステータスの返信、電源投入時初期化、電源遮断時の退避処理など)を行うための制御プログラムが記憶されている。
また、フラッシュメモリ27は、データの上書きができないため、データの書換えを行う場合、消去済みブロックに新規データを書き込み、書換え前のデータが書き込まれていたブロックを消去するといった処理を行う。
この場合において、実際のフラッシュメモリ27にはデータの書き込みは行われない。従って、CPU22は、例えば、フラッシュメモリ27がアクセスされておらず、処理に余裕がある場合や、キャッシュメモリ28に更新していないままのデータが多くなり、新たな書込データに対応できなくなるおそれが有る場合に、実際のフラッシュメモリ27にデータの書き込みをライトバック方式で行うこととなる。なお、ライトバック方式に限らず、ライトスルー構成としたり、リードキャッシュとライトキャッシュとを分割して設けたり、それらを動的に変化させたりするように構成することも可能である。
図3は、データ書込処理の処理フローチャートである。
CPU22は、プログラムあるいは外部からの要求によりデータの書換要求がなされると(ステップS11)、当該書換要求にしたがって、アドレス変換テーブル35の内容にしたがって対応するブロックのデータを書換えるべく処理を行う。
具体的には、CPU22は、当該ブロック(物理ブロックアドレス)の書換回数をカウントする(ステップS12)。
次にCPU22は、対応するブロックにおいて書換回数が所定回数以上であるか否かを判別する(ステップS13)。
ステップS13の判別において、当該ブロックにおける書換回数が所定回数未満である場合には(ステップS13;No)、当該ブロックに書換要求にしたがってデータを書き込む書込処理を行い(ステップS14)、処理をステップS16に移行する。
ステップS13の判別において、当該ブロックにおける書換回数が所定回数以上である場合には(ステップS13;Yes)、カウント数が少ないブロックを検索し、当該検索されたブロックへデータを書き込む平滑化処理を行い(ステップS15)、処理をステップS16に移行する。すなわち、第1半導体メモリ領域31の各ブロックへの書換え回数が平滑化するように、ブロックのデータを別ブロックに移動させ、該当するアドレス変換テーブル35を書き換える。
ステップS16の判別において、書込エラーが発生した場合には(ステップS16;Yes)、CPU22は、第1不良ブロック代替領域32に当該書き込みエラーが発生したブロックを代替するための容量が残っているか否かを判別する(ステップS17)。
具体的には、第1不良ブロック代替領域32の使用済みブロック数に基づいてブロックを代替するための容量が残っているか否かを判別している。
この第2不良ブロック代替領域34の容量は、ホスト装置12のコントローラ12Aによりユーザ等が設定することが可能となっている。以下、第2不良ブロック代替領域34の容量設定について具体的に説明する。
第2不良ブロック代替領域34の容量設定を行う場合、コントローラ12Aは、半導体記憶装置11が接続されたことを確認すると、半導体記憶装置11に設定情報を読み出すためのコマンドを発行し、半導体記憶装置11から設定情報を取得する。
そして、ユーザがGUI表示画面上で設定情報を編集することにより第2不良ブロック代替領域34の容量、ひいては、フラッシュメモリ27の参照速度と、半導体記憶装置11の装置寿命の優先度、すなわち、キャッシュメモリ28における第2半導体メモリ領域33の総ブロック数に対する第2不良ブロック代替領域34の総ブロック数の割合を変更する。
なお、当該ブロックの書き替え回数をカウントする平滑化処理の例を述べたが、書換回数によらず、書き込みエラーが生じた場合のみ代替処理するという簡易的な処理であってもよい。
変更作業は、図4に示すような第2不良ブロック代替領域34の容量設定画面50において行う。
容量設定画面50は、中央に記憶容量および装置寿命の優先度を変更するためのスライダバー51を表示し、スライダバー51の下方には、キャッシュメモリ28における第2半導体メモリ領域33の総ブロック数に対する第2不良ブロック代替領域34の総ブロック数の割合を表示するための表示ボックス52が設けられている。
スライダバー51には、等間隔に目盛りがふられており、左側の目盛りは「速度最大化(キャッシュ容量大)」、中央の目盛りは「標準設定」、右側の目盛りは「寿命最大化(キャッシュ容量小)」をそれぞれ示している。つまり、各目盛りを目安にして、入力デバイス14を用いてスライダバーを左右に操作し、キャッシュメモリ28における第2半導体メモリ領域33に対する第2不良ブロック代替領域34の割合を変更する構成となっている。
また、CPU22は、キャッシュメモリ28の一部を第2不良ブロック代替領域34とするに先だって、当該キャッシュメモリ28にキャッシュし、記憶しているデータを対応する第1半導体メモリ領域31あるいは第1不良ブロック代替領域32に書き戻しを行い、データの不整合が生じないようにしている。
これらの結果、本実施形態によれば、書換速度が比較的低速であり、寿命が短いフラッシュメモリの欠点をFeRAMで構成されたキャッシュメモリ28によりカバーすることができる。さらにキャッシュメモリ28における機能と、第2不良ブロック代替領域34としての機能を記憶装置の意味づけに最適な状態、すなわち、アクセス速度の向上か、フラッシュメモリ27の装置寿命の延命かを設定して、ユーザのシステムにとって最適な半導体記憶装置を提供することが可能となる。
また、以上の説明においては、フラッシュメモリ27の寿命に対応する制御については詳細に触れなかったが、コントローラ12Aが装置余命を適宜のタイミングで装置余命を算出し、算出結果を13に表示する構成としてもよい。また、第1不良ブロック代替領域32あるいは第2不良ブロック代替領域34の残容量を算出し、装置余命を報知して、ユーザに第2不良ブロック代替領域34の容量変更を促すことができる。
また、視覚的に報知を行う構成に限らず、音声により報知する構成としてもよい。
また、以上の説明では、予めROMに制御プログラムが格納されている場合について説明したが、プログラムを記録媒体(図示省略)に格納して提供したり、インターネットなどの通信ネットワークを介して提供するように構成したりすることも可能である。記録媒体としては、CD−ROM、フラッシュROM、メモリカード(コンパクトフラッシュ(登録商標)、スマートメディア、メモリースティック等)、光磁気ディスク、デジタルバーサタイルディスクおよびフレキシブルディスク等を利用することができる。
Claims (7)
- 各種データを記憶する第1半導体メモリ領域および当該第1半導体メモリ領域内の不良ブロックを代替する第1不良ブロック代替領域を有する第1記憶部と、
前記第1記憶部のデータの一部をキャッシュとして保持する第2半導体メモリ領域を有する第2記憶部と、
前記第2半導体メモリ領域の一部を、前記第1半導体メモリ領域内の不良ブロックを代替する第2不良ブロック代替領域として管理するメモリ管理部と、
を備えていることを特徴とする半導体記憶装置。 - 請求項1記載の半導体記憶装置において、
前記メモリ管理部は、前記第1不良ブロック代替領域の未使用領域の容量が所定容量以下となった場合に、前記第2半導体メモリ領域の一部を前記第2不良ブロック代替領域とすることを特徴とする半導体記憶装置。 - 請求項2記載の半導体記憶装置において、
前記メモリ管理部は、前記第2半導体メモリ領域の一部を前記第2不良ブロック代替領域とするに先だって、当該第2半導体メモリ領域に記憶しているデータを前記第1半導体メモリ領域あるいは第1不良ブロック代替領域に書き戻しを行うことを特徴とする半導体記憶装置。 - 請求項2または請求項3に記載の半導体記憶装置において、
前記メモリ管理部は、所定のタイミングで、前記第1不良ブロック代替領域の消費ブロック数を検出する消費ブロック数検出部を備えたことを特徴とする半導体記憶装置。 - 請求項1ないし請求項4のいずれかに記載の半導体記憶装置において、
前記第1記憶部は、フラッシュメモリとして構成され、
前記第2記憶部は、強誘電体メモリとして構成されている、
ことを特徴とする半導体記憶装置。 - 各種データを記憶する第1半導体メモリ領域および当該第1半導体メモリ領域内の不良ブロックを代替する第1不良ブロック代替領域を有する第1記憶部と、前記第1記憶部のデータの一部をキャッシュとして保持する第2半導体メモリ領域を有する第2記憶部と、を備えた半導体記憶装置の制御方法であって、
前記第1不良ブロック代替領域の未使用領域の容量が所定容量以下となったか否かを判別する容量判別過程と、
前記容量判別過程において、前記第1不良ブロック代替領域の未使用領域の容量が所定容量以下となったと判別された場合に、前記第2半導体メモリ領域の一部を、前記第1半導体メモリ領域内の不良ブロックを代替する第2不良ブロック代替領域として管理するメモリ管理過程と、
を備えていることを特徴とする半導体記憶装置の制御方法。 - 各種データを記憶する第1半導体メモリ領域および当該第1半導体メモリ領域内の不良ブロックを代替する第1不良ブロック代替領域を有する第1記憶部と、前記第1記憶部のデータの一部をキャッシュとして保持する第2半導体メモリ領域を有する第2記憶部と、を備えた半導体記憶装置をコンピュータにより制御するための制御プログラムであって、
前記第1不良ブロック代替領域の未使用領域の容量が所定容量以下となったか否かを判別させ、
前記第1不良ブロック代替領域の未使用領域の容量が所定容量以下となったと判別された場合に、前記第2半導体メモリ領域の一部を、前記第1半導体メモリ領域内の不良ブロックを代替する第2不良ブロック代替領域として管理させる、
ことを特徴とする制御プログラム。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2007294237A JP2009122826A (ja) | 2007-11-13 | 2007-11-13 | 半導体記憶装置、半導体記憶装置の制御方法および制御プログラム |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2007294237A JP2009122826A (ja) | 2007-11-13 | 2007-11-13 | 半導体記憶装置、半導体記憶装置の制御方法および制御プログラム |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2009122826A true JP2009122826A (ja) | 2009-06-04 |
Family
ID=40814934
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2007294237A Withdrawn JP2009122826A (ja) | 2007-11-13 | 2007-11-13 | 半導体記憶装置、半導体記憶装置の制御方法および制御プログラム |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2009122826A (ja) |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2011090460A (ja) * | 2009-10-21 | 2011-05-06 | Toshiba Corp | データ記憶装置およびデータ記憶装置における制御方法 |
JP2014067224A (ja) * | 2012-09-26 | 2014-04-17 | Nec Corp | 情報処理装置、端末装置、情報処理方法及びプログラム |
US9330791B2 (en) | 2013-11-18 | 2016-05-03 | Samsung Electronics Co., Ltd. | Memory systems and methods of managing failed memory cells of semiconductor memories |
JP2016154031A (ja) * | 2016-04-04 | 2016-08-25 | 株式会社バッファローメモリ | Ssd(ソリッドステートドライブ)装置 |
JP2019023936A (ja) * | 2015-02-02 | 2019-02-14 | 東芝メモリ株式会社 | 記憶装置及びメモリシステム |
CN110874327A (zh) * | 2018-09-04 | 2020-03-10 | 株式会社东芝 | 磁盘装置及其控制方法 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH06250933A (ja) * | 1993-02-26 | 1994-09-09 | Fuji Electric Co Ltd | 情報処理装置および主記憶装置のアクセス制御方法 |
JPH07146820A (ja) * | 1993-04-08 | 1995-06-06 | Hitachi Ltd | フラッシュメモリの制御方法及び、それを用いた情報処理装置 |
JPH1173378A (ja) * | 1997-08-27 | 1999-03-16 | Oki Electric Ind Co Ltd | 半導体ディスク装置の寿命算出方法 |
-
2007
- 2007-11-13 JP JP2007294237A patent/JP2009122826A/ja not_active Withdrawn
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH06250933A (ja) * | 1993-02-26 | 1994-09-09 | Fuji Electric Co Ltd | 情報処理装置および主記憶装置のアクセス制御方法 |
JPH07146820A (ja) * | 1993-04-08 | 1995-06-06 | Hitachi Ltd | フラッシュメモリの制御方法及び、それを用いた情報処理装置 |
JPH1173378A (ja) * | 1997-08-27 | 1999-03-16 | Oki Electric Ind Co Ltd | 半導体ディスク装置の寿命算出方法 |
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2011090460A (ja) * | 2009-10-21 | 2011-05-06 | Toshiba Corp | データ記憶装置およびデータ記憶装置における制御方法 |
JP2014067224A (ja) * | 2012-09-26 | 2014-04-17 | Nec Corp | 情報処理装置、端末装置、情報処理方法及びプログラム |
US9330791B2 (en) | 2013-11-18 | 2016-05-03 | Samsung Electronics Co., Ltd. | Memory systems and methods of managing failed memory cells of semiconductor memories |
JP2019023936A (ja) * | 2015-02-02 | 2019-02-14 | 東芝メモリ株式会社 | 記憶装置及びメモリシステム |
JP2016154031A (ja) * | 2016-04-04 | 2016-08-25 | 株式会社バッファローメモリ | Ssd(ソリッドステートドライブ)装置 |
CN110874327A (zh) * | 2018-09-04 | 2020-03-10 | 株式会社东芝 | 磁盘装置及其控制方法 |
CN110874327B (zh) * | 2018-09-04 | 2023-09-22 | 株式会社东芝 | 磁盘装置及其控制方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US8037232B2 (en) | Data protection method for power failure and controller using the same | |
JP4688584B2 (ja) | ストレージ装置 | |
TWI385669B (zh) | 用於快閃記憶體的平均磨損方法、儲存系統與控制器 | |
JP4948793B2 (ja) | バッドブロック管理部を含むフラッシュメモリシステム | |
US9367451B2 (en) | Storage device management device and method for managing storage device | |
US8055873B2 (en) | Data writing method for flash memory, and controller and system using the same | |
EP2605142B1 (en) | Lba bitmap usage | |
US8055837B2 (en) | Data writing method for non-volatile memory and controller using the same | |
US9063728B2 (en) | Systems and methods for handling hibernation data | |
US8312204B2 (en) | System and method for wear leveling in a data storage device | |
JP5374075B2 (ja) | ディスク装置及びその制御方法 | |
US20100088459A1 (en) | Improved Hybrid Drive | |
US8825946B2 (en) | Memory system and data writing method | |
US9037814B2 (en) | Flash memory management method and flash memory controller and storage system using the same | |
US20170308722A1 (en) | Storage apparatus having nonvolatile memory device, and nonvolatile memory device | |
US9619380B2 (en) | Data writing method, memory control circuit unit and memory storage apparatus | |
US20080025706A1 (en) | Information recording apparatus and control method thereof | |
JP2007293440A (ja) | 不揮発性キャッシュメモリを用いる記憶装置とその制御方法 | |
TWI358021B (en) | Method for managing defect blocks in non-volatile | |
JP2009122826A (ja) | 半導体記憶装置、半導体記憶装置の制御方法および制御プログラム | |
US8156278B2 (en) | Non-volatile data storage system and method thereof | |
US9378130B2 (en) | Data writing method, and memory controller and memory storage apparatus using the same | |
US9009442B2 (en) | Data writing method, memory controller and memory storage apparatus | |
JP2008171103A (ja) | 半導体記憶装置管理システム、半導体記憶装置、半導体記憶装置管理システムの制御方法およびプログラム | |
JPWO2007105688A1 (ja) | メモリコントローラ、不揮発性記憶装置、及び不揮発性記憶システム |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20100901 |
|
RD02 | Notification of acceptance of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7422 Effective date: 20100901 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20120921 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20121002 |
|
A761 | Written withdrawal of application |
Free format text: JAPANESE INTERMEDIATE CODE: A761 Effective date: 20121126 |