JPWO2009001519A1 - メモリコントローラ、不揮発性記憶装置、アクセス装置、及び不揮発性記憶システム - Google Patents

メモリコントローラ、不揮発性記憶装置、アクセス装置、及び不揮発性記憶システム Download PDF

Info

Publication number
JPWO2009001519A1
JPWO2009001519A1 JP2009520299A JP2009520299A JPWO2009001519A1 JP WO2009001519 A1 JPWO2009001519 A1 JP WO2009001519A1 JP 2009520299 A JP2009520299 A JP 2009520299A JP 2009520299 A JP2009520299 A JP 2009520299A JP WO2009001519 A1 JPWO2009001519 A1 JP WO2009001519A1
Authority
JP
Japan
Prior art keywords
memory
nonvolatile memory
mode
read
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.)
Pending
Application number
JP2009520299A
Other languages
English (en)
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.)
Panasonic Corp
Panasonic Holdings Corp
Original Assignee
Panasonic Corp
Matsushita Electric Industrial 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 Panasonic Corp, Matsushita Electric Industrial Co Ltd filed Critical Panasonic Corp
Publication of JPWO2009001519A1 publication Critical patent/JPWO2009001519A1/ja
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C16/00Erasable programmable read-only memories
    • G11C16/02Erasable programmable read-only memories electrically programmable
    • G11C16/06Auxiliary circuits, e.g. for writing into memory
    • G11C16/34Determination of programming status, e.g. threshold voltage, overprogramming or underprogramming, retention
    • G11C16/349Arrangements for evaluating degradation, retention or wearout, e.g. by counting erase cycles

Landscapes

  • Techniques For Improving Reliability Of Storages (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

寿命パラメータ生成部128が不揮発性記憶装置110の寿命に係る寿命パラメータを生成する。寿命時期が近くなると、モード切替部129が読み書き制御部124の読み書きモードをリライタブルモードからライトワンスモードに切り替えるとともに、アクセス装置100にライトワンスモードに切り替わったことを通知する。こうすれば不揮発性メモリを内蔵した機器が使用できなくなる時期を簡便にユーザが認識でき、しかも寿命が尽きる直前で書き込みが一度しかできないライトワンスモードに自動的に切り換えることができる。

Description

本発明は、不揮発性メモリを備えた半導体メモリカード等の不揮発性記憶装置、前記不揮発性メモリを制御するメモリコントローラ、前記不揮発性記憶装置をアクセスするアクセス装置、及び前記不揮発性記憶装置にアクセス装置を構成要件として加えた不揮発性記憶システムに関する。
書き換え可能な不揮発性メモリを備えた不揮発性記憶装置は、半導体メモリカードを中心にその需要が広まっている。半導体メモリカードは、光ディスクやテープメディアなどと比較して非常に高価格ではあるが、小型・軽量・耐震性・取り扱いの簡便さ等のメリットにより、デジタルスティルカメラや携帯電話などのポータブル機器の記録媒体としてその需要が広まっている。この半導体メモリカードは、不揮発性の主記憶メモリとしてフラッシュメモリを備え、それを制御するメモリコントローラを有している。メモリコントローラは、デジタルスティルカメラやパーソナルコンピュータ本体等のアクセス装置からの読み書き指示に応じて、フラッシュメモリに対して読み書き制御を行う。またポータブルオーディオでは、半導体メモリカードを記憶装置として用いるものだけでなく、ポータブルオーディオ本体内にフラッシュメモリを実装したものもある。また、近年ではこのような民生用途だけでなく、例えば放送局向けのプロ用動画記録機器にも半導体メモリカードが使用されている。
半導体メモリカードやポータブルオーディオなどの製品に内蔵されたフラッシュメモリは、記憶単位であるメモリセルアレイへの書き込みや消去に比較的長い時間を必要とするため、複数のメモリセルを一括して消去したり書き込んだりできる構造となっている。フラッシュメモリは複数の物理ブロックから構成され、各物理ブロックは複数のページを含む。消去は物理ブロック単位で、書き込みはページ単位で行われる。
近年フラッシュメモリは、大容量化と低コスト化への要望に対応して、多値NANDフラッシュメモリのように1つのメモリセルに2ビットの情報が記憶できる品種が主流となってきている。このような多値NANDフラッシュメモリは、メモリセルの信頼性確保が難しいため、書き替え保証回数が低い。従来の2値NANDフラッシュメモリの書き替え保証回数は例えば10万回であったのに対して、多値NANDフラッシュメモリのそれは例えば1万回であり、約10分の1まで低下している。更に言えば、1万回の書き替え回数を保証できるフラッシュメモリを製造すること自体も難しくなっている。
フラッシュメモリの書き替え保証回数は、半導体メモリカードの寿命、及びポータブルオーディオなどの機器自体の寿命に直結している。従来、不揮発性記憶装置やポータブルオーディオなどの機器を使用するユーザは、これらの機器の寿命が半永久的なものと考えていた。しかし書換保証回数が制限されるフラッシュメモリを搭載した製品を使用する場合、特に頻繁にデータを書き替えるユーザにおいては、寿命を考慮した使い方、あるいは製品寿命を意識した製品選択が重要となってくる。
従来、この課題に対応するために、例えば特許文献1や特許文献2に示すように、ユーザがメモリの寿命を認識できる不揮発性記憶システムが提案されている。これらの文献によれば、書き替え寿命のある不揮発性メモリへの書き替え回数をユーザに表示することにより、該不揮発性メモリの寿命の目安をユーザが認識できるようになっている。
特開平07―141899号公報 特開2001−195316号公報
しかしながら、前述した従来技術においては、ユーザが不揮発性メモリの書き替え保証回数を事前に認識している必要があり。容易に寿命の目安が認識できるものとはいえなかった。
プロ用動画記録機器のように業務用としてデータを記録するシステムにおいて、このような問題点は、特に顕著である。言い換えれば、半導体メモリカードを記録媒体とするプロ用動画記録機器においては、メモリカードの寿命を正確に認識し、寿命に達すると交換することが重要となる。例えば、書き替え保証回数が1万回のフラッシュメモリを含み容量が4GBの不揮発性記憶装置において、25Mバイト/秒の記録レートで毎日2時間ずつ撮影した場合、式(1)により1日で4GBの全領域に対して約44回の書き替えが発生する。
(2×3600秒/日)÷(4GB÷25MB/秒)=約44回/日・・・(1)
従って式(2)により約227日で半導体メモリカードの寿命が尽きるという目安がつく。
1万回÷44回/日=約227日 ・・・(2)
しかし、1日あたりの使用時間数や使用日数を確実に管理することは非常に面倒である。
そこで、本発明は、不揮発性記憶装置あるいはポータブルオーディオなどの不揮発性メモリを内蔵した機器の上記問題点を解消するものである。本発明はこれらの機器が使用できなくなる時期をユーザが簡便に認識でき、しかも寿命が尽きる直前で書き込みが一度しかできないモード(以下、ライトワンスモードという)に自動的に切換えることのできるメモリコントローラ、不揮発性記憶装置、及び不揮発性記憶システムを提供することを目的とする。
この課題を解決するために、本発明のメモリコントローラは、外部からのアクセス指示に応じて不揮発性メモリへのデータの書き込み及び前記不揮発性メモリからのデータの読み出しを行うメモリコントローラであって、前記不揮発性メモリの任意のアドレスにデータの読み書きを行うリライタブルモード、及び各アドレスに対してデータの最後の書き込みを行うライトワンスモードを含む複数の読み書き制御モードを備え、前記不揮発性メモリに対してデータの読み書き制御を行う読み書き制御部と、前記不揮発性メモリのメモリ不良の発生容量及びメモリ書換回数の少なくともいずれかに係る寿命パラメータを生成する寿命パラメータ生成部と、前記寿命パラメータ生成部によって生成された寿命パラメータが所定の閾値を超えたときに、前記読み書き制御モードをリライタブルモードからライトワンスモードに切り替えるとともに、該読み書き制御モードを特定する制御モード情報を外部に出力するモード切替部と、を具備するものである。
ここで前記寿命パラメータは、前記不揮発性メモリのメモリ不良の許容容量に対する前記不揮発性メモリのメモリ不良の発生容量の比、メモリ不良の発生容量がメモリ不良の許容容量に到達する予測時間、前記不揮発性メモリの全容量に対するメモリ不良の発生容量の比、メモリ不良を許容する残容量に関するパラメータ、及び前記不揮発性メモリの書換保証回数に対する該不揮発性メモリの書換回数の比のうちの少なくとも1つとしてもよい。
ここで前記不揮発性メモリは、複数の物理ブロックを含んで構成されるものであり、前記不揮発性メモリのメモリ不良の許容容量及び発生容量は、前記不揮発性メモリの物理ブロック数を単位としてもよい。
ここで前記モード切替部は、ライトワンスモードにおいて前記不揮発性メモリの全てのアドレスにデータを書き込んだときにデータの読み出しのみを可能とするリードオンリモードに切替えるようにしてもよい。
この課題を解決するために、本発明の不揮発性記憶装置は、外部からのアクセス指示に応じてデータの書き込み及び読み出しを行う不揮発性記憶装置であって、前記不揮発性記憶装置は、不揮発性メモリと、前記不揮発性メモリへのデータの書き込み及び前記不揮発性メモリからのデータの読み出しを行うメモリコントローラと、を具備し、前記メモリコントローラは、前記不揮発性メモリの任意のアドレスにデータの読み書きを行うリライタブルモード、及び各アドレスに対してデータの最後の書き込みを行うライトワンスモードを含む複数の読み書き制御モードを備え、前記不揮発性メモリに対してデータの読み書き制御を行う読み書き制御部と、前記不揮発性メモリのメモリ不良の発生容量及びメモリ書換回数の少なくともいずれかに係る寿命パラメータを生成する寿命パラメータ生成部と、前記寿命パラメータ生成部によって生成された寿命パラメータが所定の閾値を超えたときに、前記読み書き制御モードをリライタブルモードからライトワンスモードに切り替えるとともに、該読み書き制御モードを特定する制御モード情報を外部に出力するモード切替部と、を具備するものである。
ここで前記寿命パラメータは、前記不揮発性メモリのメモリ不良の許容容量に対する前記不揮発性メモリのメモリ不良の発生容量の比、メモリ不良の発生容量がメモリ不良の許容容量に到達する予測時間、前記不揮発性メモリの全容量に対するメモリ不良の発生容量の比、メモリ不良を許容する残容量に関するパラメータ、及び前記不揮発性メモリの書換保証回数に対する該不揮発性メモリの書換回数の比のうちの少なくとも1つとしてもよい。
ここで前記不揮発性メモリは、複数の物理ブロックを含んで構成されるものであり、前記不揮発性メモリのメモリ不良の許容容量及び発生容量は、前記不揮発性メモリの物理ブロック数を単位としてもよい。
ここで前記モード切替部は、ライトワンスモードにおいて前記不揮発性メモリの全てのアドレスにデータを書き込んだときにデータの読み出しのみを可能とするリードオンリモードに切替えるようにしてもよい。
この課題を解決するために、本発明の不揮発性記憶システムは、アクセス装置と、前記アクセス装置からのアクセス指示に応じて、データの書き込み及び読み出しを行う不揮発性記憶装置とを有する不揮発性記憶システムであって、前記不揮発性記憶装置は、不揮発性メモリと、前記不揮発性メモリへのデータの書き込み及び前記不揮発性メモリからのデータの読み出しを行うメモリコントローラと、を具備し、前記メモリコントローラは、前記不揮発性メモリの任意のアドレスにデータの読み書きを行うリライタブルモード、及び各アドレスに対してデータの最後の書き込みを行うライトワンスモードを含む複数の読み書き制御モードを備え、前記不揮発性メモリに対してデータの読み書き制御を行う読み書き制御部と、前記不揮発性メモリのメモリ不良の発生容量及びメモリ書換回数の少なくともいずれかに係る寿命パラメータを生成する寿命パラメータ生成部と、前記寿命パラメータ生成部によって生成された寿命パラメータが所定の閾値を超えたときに、前記読み書き制御モードをリライタブルモードからライトワンスモードに切り替えるとともに、該読み書き制御モードを特定する制御モード情報を外部に出力するモード切替部と、を具備するものである。
ここで前記寿命パラメータは、前記不揮発性メモリのメモリ不良の許容容量に対する前記不揮発性メモリのメモリ不良の発生容量の比、メモリ不良の発生容量がメモリ不良の許容容量に到達する予測時間、前記不揮発性メモリの全容量に対するメモリ不良の発生容量の比、メモリ不良を許容する残容量に関するパラメータ、及び前記不揮発性メモリの書換保証回数に対する該不揮発性メモリの書換回数の比のうちの少なくとも1つとしてもよい。
ここで前記不揮発性メモリは、複数の物理ブロックを含んで構成されるものであり、前記不揮発性メモリのメモリ不良の許容容量及び発生容量は、前記不揮発性メモリの物理ブロック数を単位としてもよい。
ここで前記モード切替部は、ライトワンスモードにおいて前記不揮発性メモリの全てのアドレスにデータを書き込んだときにデータの読み出しのみを可能とするリードオンリモードに切替えるようにしてもよい。
この課題を解決するために、本発明のアクセス装置は、不揮発性メモリを有する不揮発性記憶装置と接続して使用するアクセス装置であって、前記不揮発性記憶装置から出力される読み書き制御モード情報に基づいて、前記読み書き制御モード情報の特定する読み書き制御モードがライトワンスモードに切り替わった後に前記不揮発性記憶装置をフォーマットする制御部と、を具備するものである。
ここで前記アクセス装置は、前記読み書き制御モード情報を表示する表示回路を有するようにしてもよい。
ここで前記不揮発性記憶装置から出力される読み書き制御モード情報及び寿命パラメータを受信する受信部を有するようにしてもよい。
本発明によれば、不揮発性メモリのメモリ不良の発生容量もしくはメモリ書換回数によって不揮発性記憶装置の寿命に係る寿命パラメータを生成し、寿命時期が近くなると、モード切替部が不揮発性記憶装置の読み書きモードをリライタブルモードからライトワンスモードに切り替えるとともにアクセス装置にライトワンスモードに切り替わったことを通知する。それによりユーザはライトワンスモードに切り替わった事を認識することができるので、不揮発性記憶装置に永久保存すべきデータを記録するなどの対処ができる。
図1Aは本発明の実施の形態に於ける不揮発性記憶システムの不揮発性記憶装置を示すブロック図である。 図1Bは本発明の実施の形態に於ける不揮発性記憶システムのアクセス装置を示すブロック図である。 図2はパラメータ1確定部125に含まれるメモリ種別テーブルを示すメモリマップである。 図3は論理アドレス空間と物理アドレス空間との対応を示すメモリマップである。 図4はメモリセルアレイ142を構成する物理ブロックを示す説明図である。 図5は物理ブロックの構成を示す説明図である。 図6は読み書き制御部124に含まれる物理領域管理テーブルを示すメモリマップである。 図7は読み書き制御部124に含まれる論理物理変換テーブルを示すメモリマップである。 図8は寿命パラメータ保持ブロックの構成を示す説明図である。 図9はパラメータP2の時間推移を示すグラフである。 図10は通常動作時の処理を示すフローチャートである。 図11Aはデータの書き込み概略処理を示すフローチャートである。 図11Bはデータの書き込み概略処理を示すフローチャートである。 図12Aはデータの書き込み時にエラーがない場合を表す説明図である。 図12Bはデータの書き込み時にエラーがある場合を表す説明図である。 図12Cはデータの書き込み時にエラーがある場合を表す説明図である。 図13はデータ書き込みの詳細処理を示すフローチャートである。
符号の説明
100 アクセス装置
101 受信部
102 制御回路
103 表示回路
104 タイマ回路
110 不揮発性記憶装置
120 メモリコントローラ
121 ホストインターフェース
122 バッファ
123 メモリインターフェース
124 読み書き制御部
125 パラメータ1確定部
126 パラメータ2算定部
127 寿命パラメータ加工部
128 寿命パラメータ生成部
129 モード切替部
130 CPU部
140 不揮発性メモリ
141 レジスタ
142 メモリセルアレイ
143 制御回路
144 IDコード
145 通常領域
146 レジスタ領域
147 システム領域
148 スペア領域
149 寿命パラメータ保持ブロック
図1Aは、本発明の実施の形態における不揮発性記憶システムの不揮発性記憶装置、図1Bはそのアクセス装置を示すブロック図である。図1A,図1Bにおいて、不揮発性記憶システムは、アクセス装置100と不揮発性記憶装置110を含んで構成される。アクセス装置100と不揮発性記憶装置110とは、バス1により接続される。不揮発性記憶装置110は、メモリコントローラ120と不揮発性メモリ140を含む。メモリコントローラ120と不揮発性メモリ140とは、バス2を介して接続される。
メモリコントローラ120は、ホストインターフェース121、バッファ122、メモリインターフェース123、読み書き制御部124、パラメータ1確定部125、パラメータ2算出部126、寿命パラメータ加工部127、モード切替部129、CPU部130を含む。なお、パラメータ1確定部125、パラメータ2算出部126、寿命パラメータ加工部127をまとめて寿命パラメータ生成部128とする。
ホストインターフェース121はアクセス装置100から、データの書き込みや読み出しに係るコマンド、論理アドレスおよびデータを受信したり、データの読み出し時にデータをアクセス装置100に送信するブロックである。
バッファ122は、バス1のテータ転送レートとバス2のデータ転送レートの相違を吸収するために用いられる。そのサイズは、後述する不揮発性メモリ140内のレジスタ141のサイズの2倍の容量、ここでは4kバイトとする。
メモリインターフェース123はバッファ122に一時記憶されたデータを不揮発性メモリ140に書き込んだり、不揮発性メモリ140に記憶されたデータをバッファ122に読み出すためのブロックである。
CPU部130は、メモリコントローラ120の全体を制御するブロックである。
読み書き制御部124は、アクセス装置100からのコマンドに基づいて不揮発性メモリ140にデータを書き込み及び読み出すものである。読み書き制御部124は物理領域管理テーブルと論理物理変換テーブルを記憶する揮発性のRAMを有している。物理領域管理テーブルは、不揮発性メモリ140の各物理ブロックの使用状態を示すものであり、論理物理変換テーブルは、論理アドレスを物理アドレスに変換するものであり、これらのテーブルの詳細については後述する。読み書き制御部124は、リライタブルモードとライトワンスモードとリードオンリモードの3つの読み書き制御モードを有する。ここでリライタブルモードとは、書き込み又は読み出し等のコマンドに基づいてアクセス装置100から受信した任意の論理アドレスに対し不揮発性メモリ140の物理アドレスを割り当て、データを書き込み、読み出したり消去し、データの更新の際には元の物理アドレスに書き込まれているデータを消去するモードである。このモードは、光ディスクにおいて例えばCD−RWやCD−RAMの書き込み方法に対応するモードである。又ライトワンスモードとは、各物理アドレスに対してデータの最後の書き込みを行い、データの消去を行わず、読み出しは任意のアドレスより行えるモードである。このモードは、光ディスクにおいて例えばCD−Rの書き込み方法に対応するモードである。リードオンリモードとは、読み出しコマンドに基づいてデータの読み出しのみを行うモードである。また読み書き制御部124は又後述する寿命パラメータ保持部に保持されている寿命パラメータをアクセス装置100からの指示に応じて外部に出力する機能を有している。
パラメータ1確定部125は、不揮発性メモリ140のIDコード144を参照して、不揮発性メモリ140の容量に応じて許容不良ブロック数であるパラメータP1を確定するブロックである。パラメータ1確定部125は図2に示すようにROMなどのメモリに不揮発性メモリの種別情報テーブルを含んでいる。種別情報テーブルは不揮発性メモリの種類を示すIDコードについて、全容量、物理ブロックサイズや書換保証回数を示すテーブルである。書換保証回数は不揮発性メモリ製造メーカの出荷試験によって決められるものであり、不揮発性メモリの書換保証回数の値は様々である。パラメータ1確定部125はこのテーブルに基づいて算出した許容される不良ブロック数をパラメータP1として保持する。
パラメータ2算出部126は、現在の不揮発性メモリ140へのデータの書き込みにおいてエラーとなった物理ブロック数をパラメータP2としてカウントするブロックである。
寿命パラメータ加工部127はタイマ回路を内蔵しており、パラメータP1,P2を後述するように第1〜第5の寿命パラメータに加工するブロックである。このタイマ回路は不揮発性記憶装置110に電源が投入されている間は、常に時間を計数しているものとする。
モード切替部129は、現在の読み書き制御モードを保持する揮発性の内部レジスタを有しており、寿命パラメータに応じて読み書き制御モードを切替えるものである。モード切替部129は切替えのための閾値をROMに保持している。モード切替部129は最初は読み書き制御モードをリライタブルモードとし、その後ライトワンスモードとし、ライトワンスモードにおいて書き込む余地がなくなったときにリードオンリモードに切換えるものとする。また、いずれのモードであるかをアクセス装置100に出力する機能も有する。
一方不揮発性メモリ140は、レジスタ141、メモリセルアレイ142、及び制御回路143を有する。レジスタ141は後述する書き込み単位であるページのサイズと等しいサイズを有する揮発性RAMであり、メモリインターフェース123から転送されたデータを一時保持する。メモリセルアレイ142は例えば1Gバイトの容量を有するフラッシュメモリであり、複数の物理ブロックから構成される。
制御回路143は不揮発性メモリ140を識別するためのIDコード144を保持するとともに、メモリインターフェース123から転送された書き込み命令や物理アドレスに基づいてレジスタ141とメモリセルアレイの制御を行う回路である。IDコード144は不揮発性メモリ140の種類を識別できるコードであって、フラッシュメモリの製造時にあらかじめ制御回路143のROM等に記憶されている。なお、IDコード144はメモリセルアレイ142内の一部の領域に予め書き込んでおくようにしても構わない。
図3はメモリセルアレイ142の構成を示す図である。図3に示すようにメモリアレイ142は例えば1GBの容量を有するものとし、PB0x0〜PB0xfff(0xは16進数を示す)までの4096の物理ブロックから構成される。各物理ブロックは図4に示すように物理ページ番号PPN0〜127までの128ページから構成される。そのうちデータ領域は1ページ当たり2kバイトとする。その他1ページ当たり64バイトの管理領域を有する。各ページのデータ領域には、通常アクセス装置100から転送されたデータが記憶される。管理領域にはエラー訂正用のECCコードなどが記憶される。物理ブロックは消去の単位であり、ページは書き込みの単位である。各物理ブロックのデータ領域サイズは256kバイトとなる。レジスタ141のサイズは、ページ分の容量に合わせて2kバイトとする。
図5はこの不揮発性メモリ140の論理アドレス空間と物理アドレス空間との対応を示すメモリマップを示す図である。ここで物理アドレス空間は前述のように4096ブロックで構成され、このうち3815ブロック分の通常領域145、10ブロック分のレジスタ領域146、129ブロック分のシステム領域147、及び82ブロック分のスペア領域148を有している。これらの領域は後述する初期化処理によって形成される。レジスタ領域146内には寿命パラメータ保持ブロック149が設けられる。寿命パラメータ保持ブロック149は後述する寿命パラメータを保持する寿命パラメータ保持部である。
システム領域147内の物理ブロックには図6に示す物理領域管理テーブル(1kバイト分)と図7に示す論理物理変換テーブル(6kバイト分)を記憶させる。物理領域管理テーブルは各物理ブロック番号PBNに対応して各物理ブロックのブロックステータス、即ち有効ブロック、不良ブロック、消去済みブロックを夫々00,10,11の2ビットで示すものである。又論理物理変換テーブルは論理ブロック番号LBNを物理ブロック番号PBNに変換するためのテーブルである。これらのテーブルは電源投入時に読み書き制御部124のRAMにコピーされる。
アクセス装置100は、不揮発性記憶装置110へのデータの書き込みおよび読み出しを行う装置であり、図1Bに示すように、その内部に受信部101、制御回路102と表示回路103と、タイマ回路104を含む。受信部101は読み書き制御モードや寿命パラメータ保持ブロック149が保持する寿命パラメータを受信するブロックである。制御回路102はタイマ回路104に接続され、表示回路103への表示指示や受信部101に受信指示を転送する回路である。表示回路103は不揮発性記憶装置110に読み書き制御モードや寿命に係る情報を表示する回路である。
本実施の形態の不揮発性記憶システムについて、初期状態、電源立ち上げ時の初期化処理、モード切替処理、通常動作時のデータ書き込み処理にわけて説明する。
[初期状態]
まず、不揮発性記憶装置110の出荷前において、メーカ側で処理する初期化の内容について説明する。図5はアクセス装置100が管理する論理アドレス空間と、不揮発性記憶装置110の物理アドレス空間との対応を表しており、物理アドレス空間よりも論理アドレス空間の方が狭い空間となっている。不揮発性記憶装置110の出荷前には、あらかじめ不揮発性メモリ140の全領域の書き替え試験により不良ブロックを調べる。この時点で見つかった不良ブロックを「初期不良ブロック」といい、物理領域管理テーブルの対応する物理ブロック番号のブロックステータスを、後の行程で不良ブロックに設定できるように、不良ブロックの物理ブロック番号を保持しておく。
次に、初期化処理では全領域を消去した後、図5のシステム領域147にセキュア情報などのシステム情報を記憶させる。図6に示す物理領域管理テーブルや図7に示す論理物理変換テーブルをシステム領域147内の不良ブロックではない物理ブロックに記憶させる。なお、物理領域管理テーブルにおいて不良ブロックのブロックステータスを値10に設定し、不良ブロックではない物理ブロックのブロックステータスは値11に設定しておく。論理物理変換テーブルの各行には0xfffを設定しておく。又レジスタ領域146に不揮発性記憶装置(半導体メモリカード)としての属性情報、例えばカード容量などを記憶させる。
レジスタ領域146やシステム領域147のサイズは、不揮発性記憶装置の品種によって異なるが、本実施の形態においては、レジスタ領域146を10ブロック分(2560kバイト分)、システム領域147として129ブロック分(33024kバイト分)とする。
通常領域145は、アクセス装置100から送出された画像や音楽データなどのいわゆるファイルデータと、ファイルデータを管理する為の管理情報(FAT情報など)を記憶する領域である。ファイルデータと管理情報を総称して単にデータとする。スペア領域148は、各領域への書き込みにおいて不良ブロックが発生した際に、該不良ブロックの代替先として確保された領域である。スペア領域148は全領域のサイズに対して2%以上の容量を確保することが好ましい。その理由は、フラッシュメモリメーカによる書き替え保証の回数の規定に基づく。例えばこの保証回数が1万回とは、1万回書き替えによって発生する不良ブロックサイズが全領域のサイズの2%未満であることを意味する。本実施の形態においては、スペア領域148として式(3)から、切り上げ処理により82ブロック個を確保した。
(1Gバイト/256kバイト)×2%≒82ブロック ・・・(3)
但し、不揮発性記憶装置の品種によっては、レジスタ領域146やシステム領域147のサイズが比較的大きなものもあり、スペア領域148は82ブロックより小さくなる場合がある。
さて書き換えを繰り返すと、スペア領域148を全て使い果たし、不揮発性記憶装置としてデータの記録ができなくなる。この時期を管理するために、レジスタ領域146の最終の物理ブロックに寿命パラメータ保持ブロック149を設ける。寿命パラメータ保持ブロック149はアクセス装置100からみると、論理アドレス空間の最終論理ブロック番号、即ちLBN=3824に配置される。したがって、初期化処理では図7に示す論理物理変換テーブルの論理ブロック番号LBNが3824の位置には、物理ブロック番号PBNとして3824(16進数で0xefd)を記憶させておく。
図8は寿命パラメータ保持ブロック149を示す図である。この物理ブロックでは、物理ページ番号0x0に寿命パラメータを記憶する。物理ページ番号0x0の下位バイト、即ちバイト番号0から昇順に、パラメータP1、パラメータP2、スペアブロック使用率、寿命残時間パラメータ、不良ブロック率、及びスペア空きブロック数を配置する。これらのパラメータを総称して寿命パラメータという。
パラメータP1は不良ブロックの許容容量、即ちスペア領域の物理ブロック数であり、この場合は82ブロック個となる。一方、パラメータP2は不良ブロックの発生数、即ちその時点で発生している不良ブロック数である。本実施の形態においては、不良ブロック数は初期化状態で例えば1個であるとする。パラメータP1とパラメータP2の値は、図8に示すように寿命パラメータ保持ブロックの物理ページ番号0のバイト番号0と1に記憶される。
初期化処理では更に、レジスタ領域146に読み書き制御部124の読み書き制御モードをリライタブルモードとして登録しておく。
[電源立ち上げ時の初期化処理]
次にユーザが使用するときに電源をオンとしたときの初期化処理について説明する。アクセス装置100の電源の立ち上げにより、バス1を通じて不揮発性記憶装置110も電源が立ち上がり、不揮発性記憶装置110は初期化処理に移行する。初期化処理において、CPU部130はメモリインターフェース123を介してシステム領域147に記憶されている物理領域管理テーブルと論理物理変換テーブルを、読み書き制御部124内部の揮発性RAMに一時保持する。以降、データの読み出しや書き込みにおいては、読み書き制御部124内のRAMに一時記憶されたこれらのテーブルを用いて、物理アドレスを決定する。また、各テーブルの更新がなされた場合は、電源遮断対策のため、その都度不揮発性メモリ140に書き戻す。
次に、パラメータ1確定部125はメモリインターフェース123を介してIDコード144を読み出し、図2に示すメモリ種別テーブルを参照する。例えばIDコードが0x4の場合は、不揮発性メモリ140は、容量が1Gバイトで、物理ブロックサイズが256kバイトで、書換保証回数が1万回のものである。パラメータ1確定部125は式(3)を実行することにより、スペア領域のブロック数、即ち82ブロックをパラメータP1として算出し、パラメータ1確定部125内に保持しておく。
次に、モード切替部129は、その内部レジスタにレジスタ領域146の読み書き制御のモード情報を読み出してアクセス装置100に通知する。アクセス装置100内の制御回路102は受信部101を介して読み書き制御モード情報を受信し、表示回路103にリライタブルモードかライトワンスモードかリードオンリモードかを表示する。なおアクセス装置100は、レジスタ領域146を直接読み出すことにより、現在の読み書きの制御モードが何であるかを認識するようにしても構わない。
次に、CPU部130は、バッファ122を全クリアし、ホストインターフェース121を介してアクセス装置100に対して初期化が完了したことを通知する。
パラメータ2算出部126は、物理領域管理テーブルを参照し、ブロックステータスが値10のブロック、即ち不良ブロックの個数をカウントし、カウント値をパラメータP2としてパラメータ2算出部126内に保持しておく。出荷直後であって前述のように不良ブロック数が1であるとすると、パラメータP2は値1となる。
寿命パラメータ加工部127は、寿命パラメータとして下記の5種類のパラメータを生成する。尚、本実施の形態ではこの5種類の全てを実行してもよく、そのうちの一部のみを実行してもよい。又、寿命パラメータは電源立上時だけでなく物理ブロックにエラーが生じた場合に実行される。
(1)パラメータP1,P2
第1のパラメータは、不揮発性メモリ140のメモリ不良の許容容量、即ちスペア領域148の物理ブロック数であるパラメータP1と、不揮発性メモリ140のメモリ不良の発生容量、即ち実際に不良ブロックとなった物理ブロック数であるパラメータP2そのものである。寿命パラメータ加工部127は、パラメータ1確定部125が内部に保持しているパラメータP1を読み出し、寿命パラメータ保持ブロック149の物理ページ番号0のバイト番号0に記憶させる。なお前述したように、出荷前の工程においてパラメータP1を寿命パラメータ保持ブロック149に記憶しておけば、ここでの書き込みは不要となる。次に寿命パラメータ加工部127は、パラメータ2算出部126が内部に保持しているパラメータP2を読み出し、寿命パラメータ保持ブロック149の物理ページ番号0のバイト番号1に記憶させる。つまり第1のパラメータの生成処理では、寿命パラメータ加工部127は、単にパラメータP1とパラメータP2をそれぞれパラメータ1確定部125とパラメータ2算出部126から読み出し、ブロック149に書き込むだけの処理を行う。
(2)スペアブロック使用率
第2のパラメータは、メモリ不良を許容するスペア領域の物理ブロック数に対して、現在の不良ブロックに代えて使用している物理ブロック数の使用率を表す。寿命パラメータ加工部127は、式(4)によってスペアブロック使用率を求め、この使用率をブロック149の物理ページ番号0のバイト番号2に記憶する。
スペアブロック使用率=P2/P1 ・・・(4)
スペアブロック使用率は、不揮発性メモリのメモリ不良の許容容量に対するメモリ不良の発生容量の比に関するパラメータとなっている。
(3)寿命残時間パラメータ
第3のパラメータは、不揮発性記憶装置110の寿命の予測残り時間を表す。寿命パラメータ加工部127は、以下の式(5)によって寿命残時間パラメータを求める。ここでTnは、出荷時を起点として不良ブロック数n個に到達するまでの積算通電時間である。Tnは寿命パラメータ加工部127が内蔵するタイマ回路によって計数される。vnは不良ブロック数n個に到達するまでの速度、即ち単位時間当たりの発生不良ブロック数(個/秒)であり、Vmは不良ブロック発生平均速度である。
寿命残時間パラメータ=(P1−P2)/Vm ・・・(5)
m=(v1+v2+・・・+vn)/n
n=n/Tn
図9は時間の経過によるパラメータP2の増加及びこれに基づいて算出される速度を示す。現在の発生不良ブロック数がn個とすると、平均速度でパラメータP1の不良ブロック数に達するまでの時間が寿命残時間パラメータとなる。
寿命パラメータ加工部127は、不揮発性メモリ140へのデータ書き込みにおいてエラーが発生し、物理領域管理テーブルに不良ブロックの登録をした際に、式(5)を実行し、不良ブロック発生平均速度を算出する。v1〜vn,Vm及びTnは逐次不揮発性メモリのシステム領域の一部の領域に保持しておく。こうして求めた寿命残時間パラメータをブロック149の物理ページ番号0のバイト番号3に記憶させる。
(4)不良ブロック率
第4のパラメータは不良ブロックの比率を示すパラメータである。寿命パラメータ加工部127は、以下の式(6)を実行することによって不良ブロック率を求める。
不良ブロック率=P2/全物理ブロック数 ・・・(6)
この不良ブロック率はブロック149の物理ページ番号0のバイト番号5に保持される。不良ブロック率は不揮発性メモリの全容量に対するメモリ不良の発生容量の比に関するパラメータとなっている。この不良ブロック率が0.02となれば、この不揮発性記憶装置の寿命が尽きたこととなる。
(5)スペア空きブロック数
第5のパラメータとしてスペア空きブロック数を定義する。メモリ不良は不揮発性メモリ140に不良ブロックがあったときに、代替ブロックとしてスペア領域148のブロックが用いられる。従ってこのスペア領域148の空きブロック数が少なくなれば、残容量が少なくなって寿命に近づき劣化していることとなる。従ってメモリ不良のスペア領域148の残容量に対応する空きブロック数を1つの寿命パラメータとすることができる。これはスペア領域148の空きブロック数を直接計数してもよい。又これに代えてスペアブロック数P1とスペア領域のブロックを使用しているパラメータP2を用いて、以下の式(7)により算出することができる。
スペア空きブロック数=P1−P2 ・・・(7)
スペア空きブロック数が0となれば、この不揮発性記憶装置の寿命が尽きたこととなる。
[通常動作時の処理]
次に、図10を用いて、通常動作時の処理について説明する。図10において、アクセス装置100からアクセス指示、即ちデータの書き込み、読み出し、消去のいずれかのコマンドを受信すると(S100)、CPU部130は制御を読み書き制御部124に移し、アクセス指示の種別判断を行う(S101,S104)。データ消去コマンドの場合は(S101)、指定された論理アドレスに対応する物理ブロックのデータを消去し(S102)、物理領域管理テーブルのその物理ブロックのブロックステータスを消去済みブロックに変更する(S103)。データ書き込みコマンドの場合は(S104)、後述するデータ書き込み処理を行う(S105)。データ書き込み指示でない場合、即ちデータ読み出しコマンドの場合は、指定された論理アドレスに対応する物理ブロックからデータを読み出す(S106)。
次に、図11A,図11Bを用いて、データ書き込みの概略処理について説明する。読み書き制御部124は、モード切替部129の内部レジスタを参照することにより、読み書き制御モードの判別を行う(S201)。読み書き制御モードがリライタブルモードの場合はS202に移行し、リライタブルモードでない場合は図11BのS221に移行する。リライタブルモードの場合は、読み書き制御部124は、後述するように不揮発性メモリ140に新規データを書き込む(S202)。そして、論理物理変換テーブルにおいて新規データの論理ブロック番号LBNの記憶位置に記録された物理ブロック番号PBNを参照し、物理領域管理テーブルの該PBNの記憶位置のブロックステータスが値00(有効ブロック)となっていれば旧データがあると認識し(S203)、旧データが記録された物理ブロック、即ち該PBNに対応する物理ブロックを消去する(S204)。さらに、物理領域管理テーブルにおいて該PBNの記憶位置のブロックステータスを値11(消去済みブロック)に変更する(S205)。旧データが無い場合は、S206に移行する。
次いで、物理領域管理テーブルにおいて、データを書き込んだブロックのPBNの記憶位置のブロックステータスが値00(有効ブロック)となるように更新する(S206)。又、論理物理変換テーブルにおいて、新規データのLBNの記憶位置に、新規データ書き込み先PBNを記録することにより更新する(S207)。そして更新した2つのテーブルを不揮発性メモリ140に書き戻す(S208)。その後寿命パラメータに基づきライトワンスモードへの切替が必要かどうかの判定を行い(S209)、必要な場合は、モード切替部129は読み書き制御モードをライトワンスモードに設定し(S210)、ライトワンスモードであることをアクセス装置100に通知する(S211)。S209において切替えが必要でなければ処理を終える。
一方S201において読み書き制御モードがリライタブルモードでないと判定されると、図11Bに示すS221において、ライトワンスモードかリードオンリモードかの判定を行う。ライトワンスモードの場合は、前述したリライタブルモードの場合と同様に新規データを書き込み(S222)、物理領域管理テーブルと論理物理変換テーブルを更新して不揮発性メモリ140に書き戻す(S223〜S225)。
そしてS226において消去ブロックが残っているかどうかを判断する。消去ブロックが残っていれば処理を終え、消去ブロックがなければモード切替部129は読み書き制御モードをリードオンリモードに設定する(S227)。そしてS228においてリードオンリモードをアクセス装置100に通知して処理を終える。S222から始まるライトワンスモードでの書き込みはリライタブルモードと比較すると、S203〜S205に示した旧データの消去処理を行わない点と、動作モードの切替え処理、即ちS226〜S228の内容が異なっている。
ここで、S209においてリライタブルモードからライトワンスモードへの切替が必要かどうかの判定基準について説明する。モード切替部129は以下の(A)〜(D)のいずれかの判定基準を備えるものとする。
(A)スペアブロック使用率に基づく判定
スペアブロック使用率とモード切替部129内のROMに予め設定された閾値Aとの比較を行い、スペアブロック使用率が閾値A以上であれば、読み書き制御部124をリライタブルモードからライトワンスモードに切り替える。ここで、閾値Aの値の決め方について説明する。モード切替後は、ライトワンスモードでの読み書き処理となるので、不揮発性メモリ140の通常領域145に一通り書き込む際に発生すると予想される不良ブロック数をXとすると、式(4)を参照して、閾値Aは式(8)で与えられる。Xの値は、不揮発性記憶装置110の製造工程において、不良ブロック発生確率を試験することによって決めればよい。
閾値A=(P1−X)/P1 ・・・(8)
このようにしてXを適宜設定することにより、閾値Aは例えば0.95のように定めることができる。
(B)寿命残時間パラメータに基づく判定
寿命残時間パラメータとモード切替部129内のROMに予め設定された閾値Bとの比較を行い、寿命残時間パラメータが閾値B以下であれば、読み書き制御部124をリライタブルモードからライトワンスモードに切替える。ここで、閾値Bの値の決め方について説明する。モード切替後は、ライトワンスモードでの読み書き処理となるので、不揮発性メモリ140の通常領域145に一通り書き込む際に発生すると予想される不良ブロック数をXとすると、式(5)を参照して閾値Bは式(9)で与えられる。Xの値は、不揮発性記憶装置110の製造工程において、不良ブロック発生確率を試験することによって決めればよい。
閾値B=X/Vm ・・・(9)
m=(v1+v2+・・・+vn)/n
n=n/Tn
(C)不良ブロック率に基づく判定
不良ブロック率とモード切替部129内のROMに予め設定された閾値Cとの比較を行い、不良ブロック率が閾値C以上であれば、読み書き制御部124をリライタブルモードからライトワンスモードに切り替える。ここで、閾値Cの値の決め方について説明する。モード切替後は、ライトワンスモードでの読み書き処理となるので、不揮発性メモリ140の通常領域145に一通り書き込む際に発生すると予想される不良ブロック数をXとすると、式(6)を参照して閾値Cは式(10)で与えられる。Xの値は、不揮発性記憶装置110の製造工程において、不良ブロック発生確率を試験することによって決めればよい。
閾値C=(P1−X)/全物理ブロック数 ・・・(10)
このようにしてXを適宜設定することにより、閾値Cは例えば0.95のように定めることができる。
(D)スペア空きブロック数に基づく判定
スペア空きブロック数とモード切替部129内のROMに予め設定された閾値Dとの比較を行い、スペア空きブロック数が閾値D以下であれば、読み書き制御部124をリライタブルモードからライトワンスモードに切替える。ここで、閾値Dの値の決め方について説明する。モード切替後は、ライトワンスモードでの読み書き処理となるので、不揮発性メモリ140の通常領域145に一通り書き込む際に発生すると予想される不良ブロック数をXとすると、式(7)を参照して閾値Dは式(11)で与えられる。Xの値は、不揮発性記憶装置110の製造工程において、不良ブロック発生確率を試験することによって決めればよい。
閾値D=X ・・・(11)
尚上述した(A)〜(D)の判定はいずれか1つのみを用いてもよく、複数の判定を組み合わせてモードを切替えるようにしてもよい。複数の判定の組み合わせの場合、その論理和であってもよく、その論理積によって切替えるようにしてもよい。
次に、S202,S222におけるリライタブルモードでのデータ書き込み処理について説明する。ここではアクセス装置100が2kバイト分のデータを書き込む場合について、不良ブロックが発生する場合を含めて説明する。なお論理ブロック番号LBN=0に2kバイト分のデータが既に書き込まれており、同じ論理ブロックに2kバイト分のデータを書き込む場合を例にして説明する。図12Aは、書き込みエラーが発生しない場合、図12Bは1回の書き込みエラーがある場合、図12Cは2回の書き込みエラーがある場合について示した説明図である。又図13はその動作を示すフローチャートである。
図12Aにおいて、物理ブロックPB0x10のページ0に2kバイト分のデータが書き込まれている。その後、アクセス装置100から同じ論理ブロックアドレスLBN0に対して続く2kバイト分のデータの書き込み指示がなされる。不揮発性記憶装置は、ホストインターフェース121を介して2kバイト分のデータを受信し、バッファ122に保持する。読み書き制御部124は内部に保持した論理物理変換テーブルの論理ブロック番号LBN0に対応する物理アドレスを参照する。この論理アドレスには物理ブロックPB0x10の物理ブロック番号(PBN=16)が記憶されており、物理領域管理テーブルのPBN=16のメモリ位置のブロックステータスは値00、即ち有効ブロックに設定されているとする。
読み書き制御部124は、物理ブロックPB0x10を旧ブロックとし、物理領域管理テーブルに基づき1つの消去済みブロック、例えば物理ブロックPB0x25を新ブロックとして取得し、書き込みを開始する。
まず図12Aの矢印Aに示すように、旧ブロックである物理ブロックPB0x10のページ0に既に記憶されている2kバイト分のデータを、物理ブロックPB0x25のページ0に退避する。次いで読み書き制御部124はバッファ122に一時記憶された2kバイト分のデータと、物理ブロックPB0x25のページ1に対応する物理アドレスをメモリインターフェース123に転送し、レジスタ141を介して、物理ブロックPB0x25のページ1に新たに2kバイト分のデータを書き込む。図12Aの矢印Bはこの書き込みを示す。退避処理Aや書き込み処理Bにおいて、読み書き制御部124は、不揮発性メモリ140から書き込みステータスを受信し、エラーがない場合は正常終了となる。
図12B及び図12Cは書き込みステータスにエラーがある場合の状態を示す。図12Bは再書き込みよって正常終了した場合、図12Cは再書き込みにおいてもエラーが発生したため、それ以上の再書き込みを断念して、アクセス装置100にエラーをかえす場合である。これらの処理について、図13のフローチャートを用いて説明する。なお、簡単のため退避処理については説明を省略し、書き込みのみに着目して説明する。
図13において、前述したように、読み書き制御部124が物理領域管理テーブルを参照することにより消去済みの物理ブロックPB0x25を取得し(S300)、物理ブロックPB0x25のページ1に2kバイト分のデータを書き込む(S301)。書き込み後に不揮発性メモリ140から書き込みステータスを受信し、エラーがあるかどうかを判定する(S302)。エラーがなければ、読み書き制御部124が物理領域管理テーブルの物理ブロックPB0x25のブロックステータスを有効、即ち値00とし、また論理物理変換テーブルの指定された論理ブロックアドレスに物理ブロック番号を登録して、正常終了する(S303)。エラーがあれば、読み書き制御部124は物理領域管理テーブルを参照してスペア領域148の消去済みの物理ブロック、例えばPB0xff0を取得する(S304)。そしてS305において物理ブロックPB0xff0のページ0に退避データを書き込み(矢印C)、ページ1に2kバイト分のデータを書き込む(矢印D)。書き込み後に不揮発性メモリ140から書き込みステータスを受信し、エラーがあるかどうかを判定する(S306)。エラーがあれば、アクセス装置100にエラーをかえし、異常終了する(S307)。エラーがなければ、パラメータP2をインクリメントし、各寿命パラメータを更新する(S308)。次いで読み書き制御部124が物理領域管理テーブルの物理ブロックPB0xff0のブロックステータスを有効、即ち値00とし、また論理物理変換テーブルの対応する論理アドレスに物理ブロック番号を登録する(S309)。さらに、読み書き制御部124が物理領域管理テーブルの物理ブロックPB0x25のブロックステータスを不良ブロック、即ち値10として、正常終了する(S310)。
S308の処理について、詳細に説明する。S308において、読み書き制御部124が寿命パラメータ生成部128に対してパラメータP2のインクリメント指示を転送すると、パラメータ2算出部126は、寿命パラメータ保持ブロック149に保持されたパラメータP2を読み出し、その値を1インクリメントする。さらに、寿命パラメータ加工部127が、インクリメントされたパラメータP2に基づき、第2〜第5の寿命パラメータを更新し、寿命パラメータとパラメータP2を寿命パラメータ保持ブロック149に書き戻す。
次にアクセス装置100は、寿命パラメータ保持ブロック149内の寿命パラメータの読み出しコマンドを不揮発性記憶装置110に与えると、不揮発性記憶装置110は寿命パラメータ保持ブロック149のデータを読み出し、ホストインターフェースを介してアクセス装置100に出力する。アクセス装置100は受信部101によってこのデータを受信し、表示回路103は転送された寿命パラメータを表示する。なお、寿命パラメータとして、パラメータP1とP2、スペアブロック使用率、寿命予測時期パラメータ、不良ブロック率、及びスペア空きブロック数があるが、アクセス装置100は、これらを全て表示してもよいし、選択的に表示してもよい。また、これらのパラメータをアクセス装置100側で加工して表示してもよい。また、アクセス装置100が寿命パラメータ保持ブロック内の寿命パラメータを参照するタイミングは、任意のタイミング、例えば電源立ち上げ後の初期化時であってもよく、あるいは定期的なタイミングでよい。
また、アクセス装置100側が、パラメータP1に対応する情報、即ち不揮発性記憶装置110のメモリ不良の許容容量に関する情報を予め把握している場合は、アクセス装置100はパラメータP2のみを逐次参照することで、不揮発性記憶装置110の寿命を認識することが可能となる。このような場合とは、例えば、規格上で不良ブロックの発生率を2%と規定し、初期化時に不揮発性記憶装置110の容量(例えば1Gバイト)を認識するようにすれば、アクセス装置100側がこれらの情報に基づいて各寿命パラメータを計算することが可能となる。
なお、メモリコントローラ120内に不揮発性メモリを設け、そこに寿命パラメータを記憶させるようにしてもよい。また不揮発性メモリ140は、フラッシュメモリ以外の不揮発性メモリ、例えば抵抗変化型メモリなどの不揮発性RAMでもよい。またパラメータP1やパラメータP2は物理ブロック数を単位としたパラメータであったが、ページ数やバイト数など、メモリ容量に関する単位であれば何でも良い。また表示回路103は、寿命パラメータのみを表示する特別の表示回路でなくてもよい。例えばデジタルスティルカメラのように標準装備されているLCDモニターに表示させるようにしてもよい。
ライトワンスモードへの切り替え後のアクセス装置100の処理について説明する。前述したS211の処理、即ち不揮発性記憶装置110からアクセス装置100にライトワンスモードの通知がなされると、アクセス装置100は書き込み処理を中断し、アクセス装置100内の制御回路102は、ライトワンスモードに切り替わった事を表示回路103に表示する。ユーザは不揮発性記憶装置110がライトワンスモードに切り替わったと認識できる。その後は、例えば永久保存すべきデータ等の重要な情報のみを記録し、消去済みブロックがなくなるまでデータ書き込むことができる。書き込みを終えてリードオンリモードになった後は、再生専用のメモリカードとして永く使用することができる。ここで、永久保存すべきデータ等の重要な情報のみを記録する方法として、アクセス装置100は不揮発性記憶装置110に対してフォーマット即ち通常領域を全てを消去してから書き込むようにしてもよく、フォーマットせずに通常領域の一部の領域に対して消去を指示するようにしてもよい。いずれかの方法はユーザが選択すればよい。いずれにしても、アクセス装置100はライトワンスモードに切り替わったと認識した直後は、初期化処理に移行し、ユーザの選択により、制御回路102は不揮発性記憶装置の一部又は全部の領域に対してフォーマットを行う。
以上のように、本実施の形態に示す不揮発性記憶システムによれば、寿命パラメータ生成部128が生成するメモリ不良に係る寿命パラメータに基づき、モード切替部129が不揮発性記憶装置110の寿命時期が近くなったと判断すると、不揮発性記憶装置110の読み書き制御モードをリライタブルモードからライトワンスモードに切り替えるとともにアクセス装置100にライトワンスモードに切り替わったことを通知する。それによりユーザはライトワンスモードに切り替わった事を認識することができるので、不揮発性記憶装置110に永久保存すべきデータを記録するなどの対処ができる。
なお、不揮発性メモリ140のスペア領域の容量に対するメモリ不良の発生率などを不揮発性記憶装置110の寿命の判断基準としたが、不揮発性メモリ140の書換保証回数に対する実際の書換回数の比率を基準としても構わない。但し、不揮発性メモリの書換保証回数はあくまで保証値であって実力値ではない。実力値は不揮発性メモリの種類によって大きなひらきがある。例えば、書換保証回数が1万回であっても実力的には10万回の書き換えにも耐えうる不揮発性メモリもある。従って、メモリ不良の発生率を寿命の判断基準にして読み書き制御モードを切替えるようにした方が正確にモード切替ができるシステムと言える。
また、ポータブルオーディオ本体内に不揮発性メモリを実装したシステムなどにおいては、アクセス装置100はポータブルオーディオ本体内のアクセス用の回路モジュールであり、また不揮発性記憶装置110はポータブルオーディオ本体内の不揮発性メモリを含むメモリモジュールに対応する。本発明はこのような形態を含んだものであってもよい。
本発明にかかる不揮発性記憶システムは、不揮発性記憶装置の寿命を判断でき、さらに寿命直前でリライタブルモードからライトワンスモードに自動的に切り替える方法を提案したものであり、半導体メモリカード等の種々の不揮発性記憶装置やこれを使用した静止画記録再生装置や動画記録再生装置、あるいは携帯電話において有益である。

Claims (15)

  1. 外部からのアクセス指示に応じて不揮発性メモリへのデータの書き込み及び前記不揮発性メモリからのデータの読み出しを行うメモリコントローラであって、
    前記不揮発性メモリの任意のアドレスにデータの読み書きを行うリライタブルモード、及び各アドレスに対してデータの最後の書き込みを行うライトワンスモードを含む複数の読み書き制御モードを備え、前記不揮発性メモリに対してデータの読み書き制御を行う読み書き制御部と、
    前記不揮発性メモリのメモリ不良の発生容量及びメモリ書換回数の少なくともいずれかに係る寿命パラメータを生成する寿命パラメータ生成部と、
    前記寿命パラメータ生成部によって生成された寿命パラメータが所定の閾値を超えたときに、前記読み書き制御モードをリライタブルモードからライトワンスモードに切り替えるとともに、該読み書き制御モードを特定する制御モード情報を外部に出力するモード切替部と、を具備するメモリコントローラ。
  2. 前記寿命パラメータは、
    前記不揮発性メモリのメモリ不良の許容容量に対する前記不揮発性メモリのメモリ不良の発生容量の比、メモリ不良の発生容量がメモリ不良の許容容量に到達する予測時間、前記不揮発性メモリの全容量に対するメモリ不良の発生容量の比、メモリ不良を許容する残容量に関するパラメータ、及び前記不揮発性メモリの書換保証回数に対する該不揮発性メモリの書換回数の比のうちの少なくとも1つである請求項1に記載のメモリコントローラ。
  3. 前記不揮発性メモリは、複数の物理ブロックを含んで構成されるものであり、
    前記不揮発性メモリのメモリ不良の許容容量及び発生容量は、前記不揮発性メモリの物理ブロック数を単位とする請求項1に記載のメモリコントローラ。
  4. 前記モード切替部は、ライトワンスモードにおいて前記不揮発性メモリの全てのアドレスにデータを書き込んだときにデータの読み出しのみを可能とするリードオンリモードに切替える請求項1に記載のメモリコントローラ。
  5. 外部からのアクセス指示に応じてデータの書き込み及び読み出しを行う不揮発性記憶装置であって、
    前記不揮発性記憶装置は、
    不揮発性メモリと、
    前記不揮発性メモリへのデータの書き込み及び前記不揮発性メモリからのデータの読み出しを行うメモリコントローラと、を具備し、
    前記メモリコントローラは、
    前記不揮発性メモリの任意のアドレスにデータの読み書きを行うリライタブルモード、及び各アドレスに対してデータの最後の書き込みを行うライトワンスモードを含む複数の読み書き制御モードを備え、前記不揮発性メモリに対してデータの読み書き制御を行う読み書き制御部と、
    前記不揮発性メモリのメモリ不良の発生容量及びメモリ書換回数の少なくともいずれかに係る寿命パラメータを生成する寿命パラメータ生成部と、
    前記寿命パラメータ生成部によって生成された寿命パラメータが所定の閾値を超えたときに、前記読み書き制御モードをリライタブルモードからライトワンスモードに切り替えるとともに、該読み書き制御モードを特定する制御モード情報を外部に出力するモード切替部と、を具備する不揮発性記憶装置。
  6. 前記寿命パラメータは、
    前記不揮発性メモリのメモリ不良の許容容量に対する前記不揮発性メモリのメモリ不良の発生容量の比、メモリ不良の発生容量がメモリ不良の許容容量に到達する予測時間、前記不揮発性メモリの全容量に対するメモリ不良の発生容量の比、メモリ不良を許容する残容量に関するパラメータ、及び前記不揮発性メモリの書換保証回数に対する該不揮発性メモリの書換回数の比のうちの少なくとも1つである請求項5に記載の不揮発性記憶装置。
  7. 前記不揮発性メモリは、複数の物理ブロックを含んで構成されるものであり、
    前記不揮発性メモリのメモリ不良の許容容量及び発生容量は、前記不揮発性メモリの物理ブロック数を単位とする請求項5に記載の不揮発性記憶装置。
  8. 前記モード切替部は、ライトワンスモードにおいて前記不揮発性メモリの全てのアドレスにデータを書き込んだときにデータの読み出しのみを可能とするリードオンリモードに切替える請求項5に記載の不揮発性記憶装置。
  9. アクセス装置と、前記アクセス装置からのアクセス指示に応じて、データの書き込み及び読み出しを行う不揮発性記憶装置とを有する不揮発性記憶システムであって、
    前記不揮発性記憶装置は、
    不揮発性メモリと、
    前記不揮発性メモリへのデータの書き込み及び前記不揮発性メモリからのデータの読み出しを行うメモリコントローラと、を具備し、
    前記メモリコントローラは、
    前記不揮発性メモリの任意のアドレスにデータの読み書きを行うリライタブルモード、及び各アドレスに対してデータの最後の書き込みを行うライトワンスモードを含む複数の読み書き制御モードを備え、前記不揮発性メモリに対してデータの読み書き制御を行う読み書き制御部と、
    前記不揮発性メモリのメモリ不良の発生容量及びメモリ書換回数の少なくともいずれかに係る寿命パラメータを生成する寿命パラメータ生成部と、
    前記寿命パラメータ生成部によって生成された寿命パラメータが所定の閾値を超えたときに、前記読み書き制御モードをリライタブルモードからライトワンスモードに切り替えるとともに、該読み書き制御モードを特定する制御モード情報を外部に出力するモード切替部と、を具備する不揮発性記憶システム。
  10. 前記寿命パラメータは、
    前記不揮発性メモリのメモリ不良の許容容量に対する前記不揮発性メモリのメモリ不良の発生容量の比、メモリ不良の発生容量がメモリ不良の許容容量に到達する予測時間、前記不揮発性メモリの全容量に対するメモリ不良の発生容量の比、メモリ不良を許容する残容量に関するパラメータ、及び前記不揮発性メモリの書換保証回数に対する該不揮発性メモリの書換回数の比のうちの少なくとも1つである請求項9に記載の不揮発性記憶システム。
  11. 前記不揮発性メモリは、複数の物理ブロックを含んで構成されるものであり、
    前記不揮発性メモリのメモリ不良の許容容量及び発生容量は、前記不揮発性メモリの物理ブロック数を単位とする請求項9に記載の不揮発性記憶システム。
  12. 前記モード切替部は、ライトワンスモードにおいて前記不揮発性メモリの全てのアドレスにデータを書き込んだときにデータの読み出しのみを可能とするリードオンリモードに切替える請求項9に記載の不揮発性記憶システム。
  13. 不揮発性メモリを有する不揮発性記憶装置と接続して使用するアクセス装置であって、
    前記不揮発性記憶装置から出力される読み書き制御モード情報に基づいて、前記読み書き制御モード情報の特定する読み書き制御モードがライトワンスモードに切り替わった後に前記不揮発性記憶装置をフォーマットする制御部と、を具備するアクセス装置。
  14. 前記アクセス装置は、前記読み書き制御モード情報を表示する表示回路を有する請求項13に記載のアクセス装置。
  15. 前記不揮発性記憶装置から出力される読み書き制御モード情報及び寿命パラメータを受信する受信部を有する請求項13又は14に記載のアクセス装置。
JP2009520299A 2007-06-22 2008-06-12 メモリコントローラ、不揮発性記憶装置、アクセス装置、及び不揮発性記憶システム Pending JPWO2009001519A1 (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
JP2007165384 2007-06-22
JP2007165384 2007-06-22
PCT/JP2008/001501 WO2009001519A1 (ja) 2007-06-22 2008-06-12 メモリコントローラ、不揮発性記憶装置、アクセス装置、及び不揮発性記憶システム

Publications (1)

Publication Number Publication Date
JPWO2009001519A1 true JPWO2009001519A1 (ja) 2010-08-26

Family

ID=40185346

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2009520299A Pending JPWO2009001519A1 (ja) 2007-06-22 2008-06-12 メモリコントローラ、不揮発性記憶装置、アクセス装置、及び不揮発性記憶システム

Country Status (3)

Country Link
US (1) US20110264842A1 (ja)
JP (1) JPWO2009001519A1 (ja)
WO (1) WO2009001519A1 (ja)

Families Citing this family (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8327066B2 (en) * 2008-09-30 2012-12-04 Samsung Electronics Co., Ltd. Method of managing a solid state drive, associated systems and implementations
JP5473623B2 (ja) * 2010-01-15 2014-04-16 キヤノン株式会社 データ記録装置及びその制御方法
JP5523128B2 (ja) 2010-02-03 2014-06-18 キヤノン株式会社 記録装置及びその制御方法
JP5406750B2 (ja) * 2010-02-03 2014-02-05 キヤノン株式会社 記録装置及びその制御方法
JP5455689B2 (ja) * 2010-02-03 2014-03-26 キヤノン株式会社 記録装置及び方法
JP5002719B1 (ja) * 2011-03-10 2012-08-15 株式会社東芝 情報処理装置、外部記憶装置、ホスト装置、中継装置、制御プログラム及び情報処理装置の制御方法
US8638600B2 (en) 2011-04-22 2014-01-28 Hewlett-Packard Development Company, L.P. Random-access memory with dynamically adjustable endurance and retention
US20120272036A1 (en) * 2011-04-22 2012-10-25 Naveen Muralimanohar Adaptive memory system
EP2745203B1 (en) * 2011-08-19 2016-09-21 Kabushiki Kaisha Toshiba Information processing apparatus
US9064579B2 (en) 2012-07-16 2015-06-23 Kabushiki Kaisha Toshiba Semiconductor memory apparatus, data transmission device, and recording method
US9317211B2 (en) * 2014-05-02 2016-04-19 Avago Technologies General Ip (Singapore) Pte. Ltd. System and method of life management for low endurance SSD NAND devices used as secondary cache
WO2016117026A1 (ja) * 2015-01-20 2016-07-28 株式会社日立製作所 ストレージシステム
JP2018097817A (ja) * 2016-12-16 2018-06-21 富士通株式会社 情報処理装置、情報処理方法及びプログラム
JP2018106791A (ja) 2016-12-28 2018-07-05 東芝メモリ株式会社 抵抗変化型メモリ装置の制御方法
US10318416B2 (en) * 2017-05-18 2019-06-11 Nxp B.V. Method and system for implementing a non-volatile counter using non-volatile memory
CN113467703B (zh) * 2020-03-31 2024-06-14 杭州海康存储科技有限公司 存储介质的管理方法、装置及设备
JP2022143789A (ja) 2021-03-18 2022-10-03 株式会社東芝 磁気ディスク装置

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001291394A (ja) * 2000-03-31 2001-10-19 Sharp Corp 半導体記憶装置およびその救済方法
JP2004348332A (ja) * 2003-05-21 2004-12-09 Matsushita Electric Ind Co Ltd コンピュータ装置、当該コンピュータ装置を備える部品実装装置、記憶装置の寿命診断方法、及びハードディスクドライブユニットの寿命診断用プログラム
JP2008015769A (ja) * 2006-07-05 2008-01-24 Hitachi Ltd ストレージシステム及び書き込み分散方法

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7778077B2 (en) * 2006-05-15 2010-08-17 Sandisk Corporation Non-volatile memory system with end of life calculation

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001291394A (ja) * 2000-03-31 2001-10-19 Sharp Corp 半導体記憶装置およびその救済方法
JP2004348332A (ja) * 2003-05-21 2004-12-09 Matsushita Electric Ind Co Ltd コンピュータ装置、当該コンピュータ装置を備える部品実装装置、記憶装置の寿命診断方法、及びハードディスクドライブユニットの寿命診断用プログラム
JP2008015769A (ja) * 2006-07-05 2008-01-24 Hitachi Ltd ストレージシステム及び書き込み分散方法

Also Published As

Publication number Publication date
US20110264842A1 (en) 2011-10-27
WO2009001519A1 (ja) 2008-12-31

Similar Documents

Publication Publication Date Title
JPWO2009001519A1 (ja) メモリコントローラ、不揮発性記憶装置、アクセス装置、及び不揮発性記憶システム
US8037232B2 (en) Data protection method for power failure and controller using the same
US8296501B2 (en) Memory management method for non-volatile memory and controller using the same
US8065469B2 (en) Static wear leveling
US8452913B2 (en) Semiconductor memory device and method of processing data for erase operation of semiconductor memory device
US8484409B2 (en) Nonvolatile memory controller with logical defective cluster table
US20170039141A1 (en) Mapping table updating method, memory storage device and memory control circuit unit
TWI436369B (zh) 記憶裝置之使用壽命量測方法及系統內編程碼置換方法、及其資料儲存系統
US8332696B2 (en) Defect management method for storage medium and system thereof
US8392797B2 (en) Error correcting controller, flash memory chip system, and error correcting method thereof
US9213629B2 (en) Block management method, memory controller and memory stoarge apparatus
US9141476B2 (en) Method of storing system data, and memory controller and memory storage apparatus using the same
US9177656B2 (en) Data writing method, memory storage device and memory controlling circuit unit
US20090091978A1 (en) Wear leveling method and controller using the same
US20120278535A1 (en) Data writing method, memory controller, and memory storage apparatus
US10564862B2 (en) Wear leveling method, memory control circuit unit and memory storage apparatus
JP2008305061A (ja) メモリコントローラ、不揮発性記憶装置、及び不揮発性記憶システム
US7921340B2 (en) Nonvolatile memory device, nonvolatile memory system, and defect management method for nonvolatile memory device
US20100199060A1 (en) Memory controller, nonvolatile memory module, access module, and nonvolatile memory system
JP2011059907A (ja) 端末装置及びそれに用いる不揮発メモリ管理方法並びにそのプログラム
US9760456B2 (en) Memory management method, memory storage device and memory control circuit unit
JP2008097132A (ja) メモリコントローラ、不揮発性記憶装置、及び不揮発性記憶システム
CN111583976B (zh) 数据写入方法、存储器控制电路单元以及存储器存储装置
JP2009134514A (ja) メモリコントローラ、不揮発性記憶装置、及び不揮発性記憶システム
US11687444B2 (en) Data managing method. memory controlling circuit unit and memory storage device

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20110428

RD03 Notification of appointment of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7423

Effective date: 20120207

RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20120210

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20130129

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20130528