JP4637524B2 - メモリカード - Google Patents

メモリカード Download PDF

Info

Publication number
JP4637524B2
JP4637524B2 JP2004218019A JP2004218019A JP4637524B2 JP 4637524 B2 JP4637524 B2 JP 4637524B2 JP 2004218019 A JP2004218019 A JP 2004218019A JP 2004218019 A JP2004218019 A JP 2004218019A JP 4637524 B2 JP4637524 B2 JP 4637524B2
Authority
JP
Japan
Prior art keywords
address
memory
memory card
conversion table
data
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
JP2004218019A
Other languages
English (en)
Other versions
JP2006039886A (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.)
Renesas Electronics Corp
Original Assignee
Renesas Electronics Corp
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 Renesas Electronics Corp filed Critical Renesas Electronics Corp
Priority to JP2004218019A priority Critical patent/JP4637524B2/ja
Publication of JP2006039886A publication Critical patent/JP2006039886A/ja
Application granted granted Critical
Publication of JP4637524B2 publication Critical patent/JP4637524B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Landscapes

  • Techniques For Improving Reliability Of Storages (AREA)

Description

本発明は、メモリカードのデータ書き込み技術に関し、特に、不揮発性半導体メモリを用いたメモリカードにおけるデータ書き込みに適用して有効な技術に関するものである。
パーソナルコンピュータや多機能端末機などの記憶装置として、たとえば、マルチメディアカードやCF(Compact Flash)カードなどのメモリカードが広く普及している。
近年の高性能化の要求に伴って、メモリカードに搭載される半導体メモリとして、たとえば、電気的に一括消去、書き換えが可能であり、大容量のデータを保持できるフラッシュメモリなどの不揮発性メモリが用いられている。
メモリカードの書き込み技術においては、フラッシュメモリに、ホストから指定された論理アドレス毎にフラッシュメモリのメモリ領域の物理アドレスが対応づけられたアドレス変換テーブルと、該フラッシュメモリにおけるメモリ領域毎に、消去可/消去不可をそれぞれ示した空き情報フラグが対応付けされている消去テーブルとをそれぞれ備え、データの書き換えに際して該消去テーブルを参照して空き情報フラグに応ずる物理アドレスのメモリ領域を消去、ならびに書き込み対象とするものがある(たとえば、特許文献1参照)。
特開2004−127185号公報
ところが、上記のようなメモリカードにおけるデータの書き込み技術では、次のような問題点があることが本発明者により見い出された。
フラッシュメモリは、デバイスの特性から、データ書き込み/消去を繰り返すと、ある一定の割合で書き込み/消去ができなくなるブロック(セクタ)が発生する。
前述のように、アドレス変換テーブルと消去テーブルとをフラッシュメモリに格納して管理する場合、データの書き込み毎にアドレス変換テーブル、および消去テーブルが更新されることになり、メモリセルへのストレスが発生し、フラッシュメモリの性能低下を招いてしまう恐れがある。
また、メモリカードのコントローラによってアドレス変換テーブル、および消去テーブルを管理する場合には、コントローラに搭載されるRAM(Random Access Memory)などにそれらテーブルが展開されることになるが、メモリカードの記憶容量が大きくなるに伴いそれらのテーブルの容量も大きくなり、それらのテーブルをフラッシュメモリに格納するのではなく電源投入後の所定のタイミングで作成する場合、又はそれらのテーブルの更新をする場合に、それらのテーブルの作成・更新処理時間が長くなってしまうという問題がある。
さらに、メモリカードの記憶容量が大きくなるに伴いフラッシュメモリに格納するそれらのテーブルのサイズが大きくなり、コントローラのRAMにテーブルが展開されることにより、それらのテーブルを展開するために必要な該RAMのデータ容量も大きくなり、メモリカードの高コスト化を招いてしまうという問題がある。
本発明の目的は、データ書き込みの際に発生する消去テーブルの更新による不揮発性メモリセルへのストレスを大幅に低減し、メモリカードの信頼性、および書き込み性能を向上させる技術を提供することにある。
本発明の前記ならびにその他の目的と新規な特徴は、本明細書の記述および添付図面から明らかになるであろう。
本願において開示される発明のうち、代表的なものの概要を簡単に説明すれば、次のとおりである。
本発明は、複数の不揮発性メモリセルを有し、所定の情報を格納可能な不揮発性半導体メモリと、外部から発行されたコマンドに基づいて不揮発性半導体メモリの動作指示を行うコントローラとを備えたメモリカードであって、該メモリカードは、不揮発性半導体メモリにおけるメモリ領域の物理アドレス毎に論理アドレスを対応付けし、メモリ領域におけるアドレス割り当て済み領域のアドレスを登録可能なアドレス変換テーブルと、アドレス未割り当て領域のアドレスが登録された消去テーブルとを有し、該アドレス変換テーブルが格納されるアドレス変換テーブルに登録されているメモリ領域のアドレスと、該消去テーブルに登録されているアドレスとは重複して登録されない(ノンオーバラップ)ように制御され、コントローラは、データの書き込み時において、消去テーブルからデータの書き込み先のアドレスを取得してデータを書き込み、書き込み先のアドレスをアドレス変換テーブルに登録して更新し、消去テーブルに、更新前のデータが書き込まれたアドレスを登録するものである。
また、本願のその他の発明の概要を簡単に示す。
本発明のメモリカードは、前記アドレス変換テーブルが、不揮発性半導体メモリに作成され、前記消去テーブルは、揮発性半導体メモリに作成されるものである。
また、本発明のメモリカードは、前記コントローラが、消去テーブルをメモリカードのリセット処理時に作成するものである。
さらに、本発明のメモリカードは、前記消去テーブルに登録されているメモリ領域がプレイレーズが可能であるものである。
また、本発明のメモリカードは、メモリ領域の不良ブロックアドレスを不良登録テーブルに登録して管理するものである。
さらに、本発明のメモリカードは、前記アドレス変換テーブル、および消去テーブルに格納されるアドレスが、不揮発性半導体メモリの物理ブロックアドレス、またはオフセットアドレスのいずれかよりなるものである。
また、本発明のメモリカードは、前記アドレス変換テーブルが、不揮発性半導体メモリのメモリ領域における不良ブロックアドレスを管理する不良登録テーブルの格納先アドレスを有するものである。
さらに、本発明のメモリカードは、前記アドレス変換テーブルによって管理されるアドレス割り当て済み領域が、複数のブロック(一括消去の最小単位)、または複数のページ(書き込みの最小単位)から構成されるデータブロックよりなり、アドレス変換テーブルは、データブロックにおけるブロック毎、あるいはページ毎に代表アドレスをそれぞれ登録するものである。
本願において開示される発明のうち、代表的なものによって得られる効果を簡単に説明すれば以下のとおりである。
(1)消去テーブルの更新による不揮発性半導体メモリの性能低下を抑えることができる。
(2)上記(1)により、メモリカードの信頼性を向上させることができるとともに、該メモリカードの長寿命化を図ることができる。
以下、本発明の実施の形態を図面に基づいて詳細に説明する。なお、実施の形態を説明するための全図において、同一の部材には原則として同一の符号を付し、その繰り返しの説明は省略する。
図1は、本発明の一実施の形態による記憶システムのブロック図、図2は、図1の記憶システムを構成するメモリカードに設けられたコントローラのブロック図、図3は、図1の記憶システムを構成するメモリカードに設けられたフラッシュメモリにおけるメモリアレイの構成例を示す説明図、図4は、図3のメモリセルアレイにおけるアドレス変換テーブル領域に格納されるアドレス変換テーブルの一例を示す説明図、図5は、図2のコントローラに設けられたRAMに格納される消去テーブルの作成例を示す説明図、図6は、図1のメモリカードのリセット処理における消去テーブルの作成シーケンスを示すフローチャート、図7は、図1のメモリカードにおける書き込み動作を示すフローチャート、図8は、図7の書き込み処理時においてエラーが発生した際の不良ブロックの登録処理を示すフローチャートである。
本実施の形態において、記憶システムは、図1に示すように、コントローラ4とフラッシュメモリ3に例示される不揮発性メモリとからメモリカード1が構成され、メモリカード1の外部にホスト機器2が接続可能なようにされている。メモリカード1は、デジタルビデオカメラ、携帯電話、携帯音楽プレーヤやパーソナルコンピュータなどのホスト機器2の外部記憶メディアとして用いられる。
フラッシュメモリ3は、電気的にデータの書き換え、消去が可能な不揮発性半導体メモリからなる。ここでは、フラッシュメモリ3が1個の半導体メモリよりなる構成としたが、該半導体メモリは1つ以上であればよい。
コントローラ4は、図2に示すように、ホスト側インタフェース5、MPU(MicroProcessing Unit)6、バッファインタフェース7、データバッファ8、フラッシュメモリ3に接続される記憶部側インタフェース9、テーブル制御部10、およびRAM(揮発性半導体メモリ)11などから構成されている。
コントローラ4は、ホスト機器2と接続可能とされており、フラッシュメモリ3の制御を司り、該フラッシュメモリ3に格納されたプログラムやデータなどを読み出してホスト機器2へ出力し、またはホスト機器2から入力されたプログラムやデータの書き込み動作指示を行う。
ホスト側インタフェース5は、ホスト機器2とMPU6とのインタフェースである。MPU6は、コントローラ4におけるすべての制御を司る。バッファインタフェース7は、MPU6とデータバッファ8とのインタフェースである。
また、データバッファ8は、たとえば、SRAM(Static Random Access Memory)などの揮発性メモリからなり、MPU6に設けられたCPUのワークエリアとして用いられる。記憶部側インタフェース9は、MPU6とフラッシュメモリ3とのインタフェースであり、エラー検出/訂正回路を備える。
テーブル制御部10は、フラッシュメモリ3内におけるアドレス変換テーブルの最新データの格納先の検索、アドレス変換テーブル/消去テーブルの読み出し/、更新、アドレス変換テーブル内のアドレス情報の検索、アドレス変換テーブル/消去テーブルのデータ作成、およびアドレス変換などを行う。
RAM11は揮発性メモリからなり、アドレステーブル変換テーブル管理部12、アドレス変換テーブル格納部13、消去テーブル管理部14、消去テーブル格納部15、システムデータ管理部16、ならびにシステムデータ格納部17などを備える。
アドレス変換テーブル管理部12は、フラッシュメモリ3の格納先、アドレス変換テーブルの状態を管理する。アドレス変換テーブル格納部13は、フラッシュメモリ3から読み出したアドレス変換テーブルにおける任意のデータを格納する。アドレス変換テーブル格納部13にはフラッシュメモリ3に格納されているアドレス変換テーブルの全てを読み出して格納しておく必要はなく、その一部のみを格納しておき、格納されているアドレス変換テーブルに登録されていない論理アドレスについてホスト機器2から要求があった場合に、対応するアドレス変換テーブルを読み出すようにする。
消去テーブル管理部14は、消去可能なデータブロックのアドレス情報を選択するポインタ、および消去テーブルの状態を管理する。消去テーブル格納部15は、作成した消去テーブルを格納する。
システムデータ管理部16は、アドレス変換テーブル/消去テーブル以外のシステムデータを管理する。システムデータ格納部17は、アドレス変換テーブル/消去テーブル以外のシステムデータを格納する。システムデータ管理部16、およびシステムデータ格納部17に管理/格納されるシステムデータは、たとえば、不良登録テーブルなどがある。
図3は、フラッシュメモリ3におけるメモリアレイMAの構成例を示す説明図である。
メモリアレイMAは、たとえば、2つのバンクBank0,Bank1に分割した2バンク構成からなる。これらバンクBank0,Bank1には、記憶の最小単位である不揮発性メモリセルが規則正しくアレイ状に並べられており、データの消去は、複数のメモリセル群を一括して消去する。不揮発性メモリセルは、たとえばAG−AND(Assist Gate AND)型からなる。
ここでは、消去の最小単位を「ブロック」、書き込みの最小単位を「ページ」とする。また、アドレス変換テーブル/消去テーブルによるアドレスの管理単位を「データブロック」とし、図3においてはバンクBank0とバンクBank1の相対的に同位置となる2つのブロックをあわせてデータブロックとして表しているが、その管理単位は、それぞれバンク毎の1つのブロック毎、またはページ毎としてもよい。
メモリアレイMAは、ユーザ領域UR、不良登録領域FR、アドレス変換テーブル領域AR、およびシステムデータ領域SRによって構成されている。
ユーザ領域URは、ユーザのアクセスが可能であり、ユーザデータなどを格納する領域である。このユーザ領域URは、アドレス割り当て済みの領域とアドレス未割り当て領域とよりなる。
このアドレス割り当て済みの領域とは、たとえばユーザデータ等の格納の有無とは別に、メモリカード全体の仕様として定められた容量分の領域に対して予め論理アドレスと対応する物理アドレスとを割り当てておく領域であり、アドレス未割り当て領域とは不良ブロックの代替が発生することを見込んでメモリカード全体の仕様として定められた容量以上に有する領域であって、予め論理アドレスに対応して物理アドレスを割り当てていない領域である。
又は予め論理アドレスに対応する物理アドレスを割り当てることはせず、ホスト機器2からのデータの格納要求がある毎に、外部からのデータ格納要求による論理アドレスとそのデータを格納した物理アドレスとを割り当て、外部からのデータの格納要求などにより論理アドレスに対して物理アドレスを割り当てられているか否かにより決定される領域である。外部からの他の要求としては、ホスト機器のOS(オペレーティングシステム)に対応したフォーマット要求であってもよい。
ここで、予めアドレスを割り当てる、とは、たとえば、メモリカード1のベンダーからの出荷段階を基準として、ベンダーによりアドレスを割り当てる処理を行うか、若しくはメモリカード1を使用するユーザの手元においてアドレスを割り当てる処理を行う、のいずれのタイミングであるかを表している。
アドレスを割り当てるタイミングがいずれであったとしても、フラッシュメモリ3にはメモリカード全体の仕様として定められた容量分の領域と、容量以上の領域とを有するようにされ、コントローラ4はフラッシュメモリ3がメモリカード1の全体の仕様として定められた容量以上の領域を有することで、本願発明におけるアドレス管理をすることが可能となる。
不良登録領域FR、アドレス変換テーブル領域AR、およびシステムデータ領域SRは、ユーザによるアクセスが不可となった領域である。
不良登録領域FRは、不良登録テーブルを格納する領域である。不良登録テーブルは、ユーザ領域URにおけるアドレス未割り当て領域の不良ブロックアドレスを管理するテーブルである。
この不良登録領域FRは、固定の領域とはなっておらず、ユーザ領域URの任意の領域に設けられ、該不良登録領域FRは、アドレス変換テーブルに登録されるアドレスによって管理される。
このように、不良登録領域FRを固定せずにアドレス変換テーブルによって管理することによって、ユーザ領域UR内で該不良登録領域が任意に変更されることになり、不揮発性メモリセルのディスターブストレスを低減させることができる。
アドレス変換テーブル領域ARは、アドレス変換テーブルを格納する領域である。
アドレス変換テーブルは、ホスト機器2からの論理アドレスをユーザ領域URにおける物理アドレス変換するテーブルであり、このアドレス変換テーブルには、ユーザ領域URのアドレス割り当て済み領域のアドレスと不良登録領域FRのアドレスがそれぞれ登録されている。
システムデータ領域SRは、たとえば、CSD(Card Specific data:カード特性レジスタ)、CID(Card Identification Number:カードIDレジスタ)などのメモリカードにおけるシステムデータを格納する領域である。
図4は、アドレス変換テーブル領域ARに格納されるアドレス変換テーブルの一例を示す説明図である。
アドレス変換テーブルは、図4(a)に示すように、ブロック毎に作成されたテーブルブロックTBから構成されている。テーブルブロックTBは、データ部Dと管理部Kとより構成される。
データ部Dは、たとえば、ブロック内のページ数が2で、該ブロックのデータ部を8分割したカラムアドレスCA00〜CA07のデータが格納される。管理部Kは、対応するブロックの管理情報を格納する領域である。図4では、管理部Kがページ毎に1つずつ設けられた構成としたが、該管理部Kは、ブロックに1つ設ける構成としてもよい。
データ部Dは、各々のカラムアドレスCA00〜C07に論理アドレスに対応する物理アドレスが格納されており、データDに格納されたアドレス情報には、ECC(Error Correcting Code)がそれぞれ付加されている。
データ部Dに格納されるアドレス情報は、図4(a)では論理アドレスLBA0x0000に対応する物理アドレスとしてBank0のブロックアドレス0x0002を登録し、論理アドレスLBA0x0001に対応する物理アドレスとしてBank1のブロックアドレス0x0003を登録してあるが、図3の例ではBank0とBank1の2ブロックをあわせて1つのデータブロックを構成していることから、一方のバンクBank0(図3)側のみブロックアドレスを論理アドレスと対応付けて登録、則ち論理アドレスLBA0x0000に対応する物理アドレスとしてブロックアドレス0x0002のみを登録してもよい。
また、管理部Kは、図4(b)に示すように、カラムアドレスCA00〜C03のページに対応する第1管理部K1とカラムアドレスCA04〜C07のページに対応する第2管理部K2とからなる。
第1管理部K1は、良ブロックコードBC、識別コードSC、管理情報KJ1、リンク先アドレスLA、ECC格納部EC1、および管理情報KJ2からなり、第2管理部K2は、管理情報KJ3、ECC格納部EC2、ならびに管理情報KJ4から構成されている。
良ブロックコードBCは、そのページ、あるいはブロックが使用可能であるか否かを識別するコードである。識別コードSCは、格納されているデータの属性を示すコードである。
リンク先アドレスLAは、バンクBank0とペアで使用するバンクBank1側のブロックアドレスが格納されている。その他の管理情報KJ1〜KJ4は、そのページ、もしくはブロックの属性や情報などを示すコードが格納され、ECC格納部EC1,EC2には、良ブロックコードBC、管理情報KJ1〜KJ3を保護するECC(冗長コード)が格納される。
図5は、消去テーブルの作成例を示す説明図である。
テーブル制御部10は、RAM11の消去テーブル格納部15において、各々のビットアサインにユーザ領域URのブロックアドレスをそれぞれ割り付け、各ブロックアドレス毎に消去フラグ(たとえば、消去可の場合’0’、消去不可の場合’1’)を入力する。
始めに、消去フラグを入力する前は、すべての消去フラグが消去可’0’となっており、アドレス変換テーブルに登録されているアドレス割り当て済みのブロックアドレスについて、消去不可(’1’)の消去フラグを作成する。その後、不良登録テーブルから、不良ブロックのブロックアドレスについて、同様に消去不可(’1’)の消去フラグを作成する。
そして、作成された消去フラグに基づいて、消去可(’0’)になっているブロックアドレスのみをとりだして消去テーブルを作成する。この時、データの書き換え点を示すポインタ(開始点)Pが任意に設定される。
データの書き換えが発生した場合、消去テーブルのポインタPが示しているブロックアドレス(図中’0x000A’)に対して書き込みを行い、替わりに書き込み以前にデータを格納していたブロックアドレス(図中’0x0002’)を登録する。
その後、消去テーブルのポインタPは、次のブロックアドレス(図中’0x000E’)を指すように再設定される。ポインタPは、終端のブロックアドレスまで到達すると、先頭のブロックアドレスまで戻り、以後、同様に循環する。
ポインタPの設定、および再設定については、例えば乱数により設定するようにしてもよい。ポインタPを常に消去テーブルの先頭に設定するようにすると、たとえば消去テーブルに登録するアドレスを昇順とした場合は比較的若いアドレスの領域の書換頻度が高くなり、メモリアレイMA内のアドレスにより書換回数に偏りを生じることとなる。乱数によりポインタPを設定/再設定することで、メモリアレイMA内のアドレスによる書換回数の偏りを抑えることが可能となる。乱数の発生はMPU6によりソフトウェアにより、又は乱数発生回路を有するように構成すればよい。
また、この消去テーブルに登録されているアドレス未割り当ての領域は、ホストからのコマンド要求があった際、あるいはメモリカード1がアイドル状態の際にMPU6によりプレイレーズが可能となっている。
次に、本実施の形態におけるメモリカード1のリセット処理における消去テーブルの作成シーケンスについて、図6のフローチャートを用いて説明する。
まず、パワーオンリセットが解除され、MPU6が始動すると、プログラムパッチなどのシステムの基本情報がロードされる(ステップS101)。その後、テーブル制御部10は、アドレス変換テーブルの管理部K(図4)を読み出し、アドレス変換テーブルにおける各テーブルブロックが最新であるか(そのページ、あるいはブロックが使用可能であるか)を検索する(ステップS102)。
その後、アドレス変換テーブルにおける最新のテーブルブロックを読み出し(ステップS103)、登録されているアドレス割り当て済みのブロックアドレスについて消去不可(’1’)の消去フラグに更新する。
続いて、アドレス変換テーブルから、不良登録テーブルの格納先を獲得し、不良登録テーブルを読み出し(ステップS104)、該不良登録テーブルに登録されているブロックアドレスについて消去不可(’1’)の消去フラグに更新する。以上の消去フラグ更新の処理によって、消去テーブルを作成し(ステップS105)、該消去テーブルを消去テーブル格納部15に格納した後、残りのリセット処理を行い終了となる。
次に、メモリカード1における書き込み動作について、図7のフローチャートを用いて説明する。
まず、ホスト機器2から書き込み要求があると、テーブル制御部10は、図6において作成した消去テーブルから、アドレス未割り当てのブロックアドレスを検索する(ステップS201)。本例では、図5に示したように、未割り当てのブロックアドレスの候補がポインタPによって指されている。
ステップS201の処理において、未割り当てのブロックアドレスがない場合には(ステップS102)、MPU6は、ホスト機器2に対してエラー通知を行い(ステップS203)、処理を終了する。
また、ステップS201の処理において、未割り当てのブロックアドレスが存在する場合、テーブル制御部10は、RAM11のアドレス変換テーブル格納部13(図2)にホスト機器2から要求された論理アドレスに対応するアドレス変換テーブルがアドレス変換テーブル格納部13に格納されているか、否かを検索する(ステップS204)。
ステップS204の処理において、対応するアドレス変換テーブルが格納されていない場合には、テーブル制御部10は、対応するアドレス変換テーブルをフラッシュメモリ3のアドレス変換テーブル領域ARから読み出す(ステップS205)。
ステップS204の処理において、対応するアドレス変換テーブルがない場合、またはステップ205の処理後、消去テーブルにおけるアドレス未割り当てのブロックアドレスに該当する管理部Kのデータをアドレス変換テーブルから読み出して(ステップS206)ブロック状態をチェックする。
そして、書き込みデータの格納場所がブロック境界か否かを判断する(ステップS207)。ブロック境界でない場合には、アドレス割り当て済みの旧データブロックの管理部Kを読み出し(ステップS208)、該データブロックのデータをフラッシュメモリ3内のバッファに一時的に待避させる(ステップS209)。ここでは、フラッシュメモリ3にデータ待避用のバッファを備えているものとした場合である。
ステップS207の処理において、書き込みデータの格納場所がブロック境界の場合、またはステップS208の処理後、データを書き込む未割り当てのデータブロックの消去、およびフラッシュメモリ3のバッファへのデータ書き込みを行う(ステップS210)。
続いて、未割り当てのデータブロックにデータ書き込みを行った後(ステップS211)、RAM11、およびフラッシュメモリ3に格納されているアドレス変換テーブルをそれぞれ更新(ステップS212)し、続いてRAM11における消去テーブルを更新して(ステップS213)書き込み処理が終了となる。
次に、書き込み処理などにおいてエラーが発生した際の不良ブロックの登録処理について、図8のフローチャートを用いて説明する。
まず、書き込み処理でエラーが発生すると(ステップS301)、消去テーブルの検索を行い、新たにデータを書き込むデータブロックを検索し(ステップS302)、検索した新たなデータブロックに対してデータの書き込み処理(図7)を行う(ステップS303)。
その後、たとえば、良セクタコードに不良かを示すフラグを書き込み、エラーが発生したデータブロックを不良化する(ステップS304)。そして、不良登録テーブルをフラッシュメモリ3から読み出す(ステップS305)。
続いて、不良化したデータブロックのアドレスを不良登録テーブルに登録して更新した後(ステップS306)、RAM11、およびフラッシュメモリ3のアドレス変換テーブルをそれぞれ更新し(ステップS307)、該不良登録テーブルの更新に伴う消去テーブルの更新を行う(ステップS307)。この時、消去テーブルにおけるポインタPの指すエントリには、そのエントリに格納されていたデータブロックが不良化したことを示す値を格納した後、消去テーブルにおけるポインタPは、次のアドレスに移動することになる。
それにより、本実施の形態によれば、アドレス変換テーブルと不良登録テーブルとから消去テーブルを作成するので、該消去テーブルの作成処理時間を大幅に短縮することができるとともに、消去テーブルの管理を容易にすることができる。
また、消去テーブルをRAM11において管理するので、消去テーブルの更新によるフラッシュメモリ3の書き換え回数を大幅に低減することが可能となり、該フラッシュメモリ3の性能低下を抑えることができ、メモリカードの信頼性を高めることができる。
また、本実施の形態では、アドレス変換テーブル管理部12、消去テーブル管理部14、および消去テーブル格納部15を、MPU6に外部接続されたRAM11に設けた構成としたが、たとえば、図9に示すように、MPU6内にRAM(揮発性半導体メモリ)11aを設け、該RAM11aにアドレス変換テーブル管理部12、消去テーブル管理部14、消去テーブル格納部15、ならびにシステムデータ格納部17を備える構成としてもよい。また、図9において、フラッシュメモリ3(図1)がアクセスするアドレス変換テーブル格納部13、およびシステムデータ格納部17は、外部RAMに設けられる構成とする。
これにより、RAM11aへのアクセスを高速化することができ、消去テーブルの作成処理時間などをより大幅に短縮することができる。
また、図10は、アドレス変換テーブル領域AR(図3)に格納されるアドレス変換テーブルの他の例を示す説明図である。
この場合、アドレス変換テーブルにおける第1管理部K1、および第2管理部K2にCAコードCDがそれぞれ備えられ、その他構成は、図4に示すアドレス変換テーブルと同様の構成となっている。このCAコードCADには、カラムアドレスCA00〜CA07のうち、どこまでのカラムアドレスがアドレス割り当て済みであるかが登録される。
第1管理部K1のCAコードCADは、カラムアドレスCA00〜CA03に対応するフラグがたてられるCANo.’00’〜’03’を有し、第2管理部K2のCAコードCADは、カラムアドレスCA04〜CA07に対応するフラグがたてられるCANo.’04’〜’07’を有する。
たとえば、カラムアドレスCA00〜CA02にデータが格納されている(アドレス割り当て済み)場合、図示するように、第1管理部K1におけるCAコードCADには、CANo.’00’〜’02’にそれぞれフラグがたてられることになる。
それにより、管理部KのCAコードCADを読み出すことによって、データが格納されているカラムアドレスをより短時間で検索することができる。
図11は、RAMメモリアレイ部MArを備えたフラッシュメモリ(不揮発性半導体メモリ)3aの構成例を示したブロック図である。
この場合、フラッシュメモリ3aは、テーブル制御部10、I/O(Input/Output)インタフェース18、シーケンサ、バッファ、電源回路、デコーダなどからなる周辺回路19、およびメモリアレイなどから構成される。
メモリアレイは、不揮発性メモリセルからなるメモリアレイMAと、揮発性メモリセルからなるRAMメモリアレイ部MArとから構成され、該RAMメモリアレイ部MArに、アドレス変換テーブル管理部12、アドレス変換テーブル格納部13、消去テーブル管理部14、消去テーブル格納部15、システムデータ管理部16、ならびにシステムデータ格納部17などの備える構成からなる。
このように、テーブル制御部10、およびアドレス変換テーブル、消去テーブルなどの格納管理をフラッシュメモリ3aで行うことができるので、コントローラ4の制御負荷を低減することができる。
以上、本発明者によってなされた発明を実施の形態に基づき具体的に説明したが、本発明は前記実施の形態に限定されるものではなく、その要旨を逸脱しない範囲で種々変更可能であることはいうまでもない。
たとえば、前記実施の形態においては、不良登録領域FR(図3)の領域を固定せずに、アドレス変換テーブルによって管理する構成としたが、図12に示すように、フラッシュメモリ3におけるメモリアレイMAのユーザ領域UR以外の任意領域に不良登録領域FRを固定して備えるようにしてもよい。
本発明のメモリカードにおけるデータの書き込み制御技術は、不揮発性半導体メモリの性能低下を抑える技術に適している。
本発明の一実施の形態による記憶システムのブロック図である。 図1の記憶システムを構成するメモリカードに設けられたコントローラのブロック図である。 図1の記憶システムを構成するメモリカードに設けられたフラッシュメモリにおけるメモリアレイの構成例を示す説明図である。 図3のメモリセルアレイにおけるアドレス変換テーブル領域に格納されるアドレス変換テーブルの一例を示す説明図である。 図2のコントローラに設けられたRAMに格納される消去テーブルの作成例を示す説明図である。 図1のメモリカードのリセット処理における消去テーブルの作成シーケンスを示すフローチャートである。 図1のメモリカードにおける書き込み動作を示すフローチャートである。 図7の書き込み処理時においてエラーが発生した際の不良ブロックの登録処理を示すフローチャートである。 図2のコントローラにおける他の構成例を示すブロック図である。 本発明の一実施の形態によるアドレス変換テーブル領域に格納されるアドレス変換テーブルの他の例を示す説明図である。 本発明の一実施の形態によるフラッシュメモリの他の構成例を示すブロック図である。 本発明の一実施の形態によるフラッシュメモリにおけるメモリアレイの他の構成例を示す説明図である。
符号の説明
1 メモリカード
2 ホスト機器
3,3a フラッシュメモリ(不揮発性半導体メモリ)
4 コントローラ
5 ホスト側インタフェース
6 MPU
7 バッファインタフェース
8 データバッファ
9 記憶部側インタフェース
10 テーブル制御部
11,11a RAM(揮発性半導体メモリ)
12 アドレステーブル変換テーブル管理部
13 アドレス変換テーブル格納部
14 消去テーブル管理部
15 消去テーブル格納部
16 システムデータ管理部
17 システムデータ格納部
18 I/Oインタフェース
19 周辺回路
MA メモリアレイ
MAr RAMメモリアレイ部
Bank0,Bank1 バンク
UR ユーザ領域
FR 不良登録領域
AR アドレス変換テーブル領域
SR システムデータ領域
TB テーブルブロック
D データ部
K 管理部
K1 第1管理部
K2 第2管理部
BC 良ブロックコード
SC 識別コード
KJ1〜KJ4 管理情報
LA リンク先アドレス
EC1,EC2 ECC格納部
P ポインタ

Claims (8)

  1. 複数の不揮発性メモリセルを有し、所定の情報を格納可能な不揮発性半導体メモリと、
    外部から発行されたコマンドに基づいて前記不揮発性半導体メモリへの動作指示を行うコントローラとを備えたメモリカードであって、
    前記メモリカードは、
    前記不揮発性半導体メモリにおけるメモリ領域の物理アドレス毎に外部から供給される論理アドレスを対応付けし、前記メモリ領域におけるアドレス割り当て済み領域のアドレスを登録可能なアドレス変換テーブルと、
    アドレス未割り当て領域のアドレスが登録された消去テーブルとを有し、
    前記アドレス変換テーブルに登録されているメモリ領域のアドレスと、前記消去テーブルに登録されているアドレスとはノンオーバラップとされ、
    前記コントローラは、
    データの書き込み時において、前記消去テーブルからデータの書き込み先のアドレスを取得してデータを書き込み、前記書き込み先のアドレスを前記アドレス変換テーブルに登録して更新し、前記消去テーブルに、更新前のデータが書き込まれたアドレスを登録することを特徴とするメモリカード。
  2. 請求項1記載のメモリカードにおいて、
    前記アドレス変換テーブルは、前記不揮発性半導体メモリに作成され、
    前記消去テーブルは、揮発性半導体メモリに作成されることを特徴とするメモリカード。
  3. 請求項1または2記載のメモリカードにおいて、
    前記コントローラは、前記消去テーブルを前記メモリカードのリセット処理時に作成することを特徴とするメモリカード。
  4. 請求項1〜3のいずれか1項に記載のメモリカードにおいて、
    前記消去テーブルに登録されている前記メモリ領域は、プレイレーズが可能であることを特徴とするメモリカード。
  5. 請求項1〜4のいずれか1項に記載のメモリカードにおいて、
    メモリ領域の不良ブロックアドレスを登録する不良登録テーブルを有するメモリカード。
  6. 請求項1〜5のいずれか1項に記載のメモリカードにおいて、
    前記アドレス変換テーブル、および消去テーブルに格納されるアドレスは、前記不揮発性半導体メモリの物理ブロックアドレス、またはオフセットアドレスのいずれかであることを特徴とするメモリカード。
  7. 請求項1〜6のいずれか1項に記載のメモリカードにおいて、
    前記アドレス変換テーブルは、前記メモリ領域における不良ブロックアドレスを管理する不良登録テーブルの格納先アドレスを有することを特徴とするメモリカード。
  8. 請求項1〜7のいずれか1項に記載のメモリカードにおいて、
    前記アドレス変換テーブルにおいて管理されるアドレス割り当て済み領域が、複数のブロック、または複数のページから構成されるデータブロックよりなり、前記アドレス変換テーブルは、前記データブロックにおける前記ブロック毎、あるいは前記ページ毎に代表アドレスをそれぞれ登録することを特徴とするメモリカード。
JP2004218019A 2004-07-27 2004-07-27 メモリカード Expired - Fee Related JP4637524B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2004218019A JP4637524B2 (ja) 2004-07-27 2004-07-27 メモリカード

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2004218019A JP4637524B2 (ja) 2004-07-27 2004-07-27 メモリカード

Publications (2)

Publication Number Publication Date
JP2006039886A JP2006039886A (ja) 2006-02-09
JP4637524B2 true JP4637524B2 (ja) 2011-02-23

Family

ID=35904831

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2004218019A Expired - Fee Related JP4637524B2 (ja) 2004-07-27 2004-07-27 メモリカード

Country Status (1)

Country Link
JP (1) JP4637524B2 (ja)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007133541A (ja) * 2005-11-09 2007-05-31 Tokyo Electron Device Ltd 記憶装置、メモリ管理装置、メモリ管理方法及びプログラム
JP2008123314A (ja) * 2006-11-14 2008-05-29 Nec Electronics Corp 半導体記憶装置への情報記録方法及び情報記録システム

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO1999030239A1 (fr) * 1997-12-05 1999-06-17 Tokyo Electron Limited Memoire et procede d'acces
JP2004127185A (ja) * 2002-10-07 2004-04-22 Renesas Technology Corp メモリカード
JP2004126945A (ja) * 2002-10-02 2004-04-22 Matsushita Electric Ind Co Ltd 記憶装置及びその制御方法

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO1999030239A1 (fr) * 1997-12-05 1999-06-17 Tokyo Electron Limited Memoire et procede d'acces
JP2004126945A (ja) * 2002-10-02 2004-04-22 Matsushita Electric Ind Co Ltd 記憶装置及びその制御方法
JP2004127185A (ja) * 2002-10-07 2004-04-22 Renesas Technology Corp メモリカード

Also Published As

Publication number Publication date
JP2006039886A (ja) 2006-02-09

Similar Documents

Publication Publication Date Title
US6161163A (en) Method of writing, erasing, and controlling memory for memory device
RU2243588C2 (ru) Энергонезависимое устройство памяти, устройство записи и способ записи
JP4058322B2 (ja) メモリカード
US5953737A (en) Method and apparatus for performing erase operations transparent to a solid state storage system
JP4611024B2 (ja) ブロック内のページをグループ化する方法及び装置
JP4832521B2 (ja) フラッシュメモリメディアにおけるデータ管理方法
JP4772214B2 (ja) 不揮発性記憶装置及びその書き換え制御方法
US20070016719A1 (en) Memory device including nonvolatile memory and memory controller
US7007140B2 (en) Storage device, storage device controlling method, and program
JP2009512022A (ja) フラッシュメモリの管理
JP4373943B2 (ja) メモリコントローラ、フラッシュメモリシステム及びフラッシュメモリの制御方法
JPH08328762A (ja) 半導体ディスク装置及びそのメモリ管理方法
US20140181378A1 (en) Control device, control method, and program
JP2008524705A (ja) スクラッチパッドブロック
JPWO2006093201A1 (ja) メモリモジュール、メモリコントローラ、不揮発性記憶装置、不揮発性記憶システム、及びメモリの読み書き方法
JP2007164318A (ja) 記憶装置
JP4235646B2 (ja) メモリコントローラおよびフラッシュメモリシステム
JP4637524B2 (ja) メモリカード
JP2004326523A (ja) 書き換え可能な不揮発性メモリを備えた記憶装置及び記憶装置用不揮発性メモリの制御方法
JP4433792B2 (ja) メモリコントローラ及びメモリコントローラを備えるフラッシュメモリシステム、並びに、フラッシュメモリの制御方法
US20090055574A1 (en) NAND Flash Memory Device And Related Method Thereof
JP2008112455A (ja) メモリカード
JP3934659B1 (ja) メモリコントローラ及びフラッシュメモリシステム
JP5694212B2 (ja) 管理情報生成方法およびメモリシステム
JP2012037971A (ja) メモリコントローラ及びメモリコントローラを備える不揮発性メモリシステム、並びに不揮発性メモリの制御方法

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20070718

A711 Notification of change in applicant

Free format text: JAPANESE INTERMEDIATE CODE: A712

Effective date: 20100528

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20101026

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: 20101102

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: 20101124

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

Free format text: PAYMENT UNTIL: 20131203

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

S531 Written request for registration of change of domicile

Free format text: JAPANESE INTERMEDIATE CODE: R313531

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

LAPS Cancellation because of no payment of annual fees