JP2007094765A - メモリシステム - Google Patents
メモリシステム Download PDFInfo
- Publication number
- JP2007094765A JP2007094765A JP2005283389A JP2005283389A JP2007094765A JP 2007094765 A JP2007094765 A JP 2007094765A JP 2005283389 A JP2005283389 A JP 2005283389A JP 2005283389 A JP2005283389 A JP 2005283389A JP 2007094765 A JP2007094765 A JP 2007094765A
- Authority
- JP
- Japan
- Prior art keywords
- address
- block
- defective
- blocks
- alternative
- 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
Links
Images
Landscapes
- For Increasing The Reliability Of Semiconductor Memories (AREA)
- Techniques For Improving Reliability Of Storages (AREA)
Abstract
【課題】正常ブロックによる不良ブロックの代替数を抑制でき、しかも、不良ブロックを確実に救済可能とする。
【解決手段】メモリセルアレイ3は、複数の物理ブロックを含む複数のディストリクトを有している。第1の記憶部5-2は、各ディストリクト内の不良ブロックのアドレスと、不良ブロックを含むディストリクト内の代替ブロックのアドレスとを対応して記憶する。検索回路5-1は、入力されたブロックアドレスに基づき、第1の記憶部5-2内に記憶された不良ブロックのアドレスを検索し、これらが一致した場合、不良ブロックのアドレスに対応した代替ブロックのアドレスを読み出す。アドレス切替回路5-3は、検索回路5-1より代替ブロックのアドレスが供給されたとき、代替ブロックのアドレスを出力し、代替ブロックのアドレスが供給されない場合、入力されたブロックアドレスを出力する。
【選択図】図1
【解決手段】メモリセルアレイ3は、複数の物理ブロックを含む複数のディストリクトを有している。第1の記憶部5-2は、各ディストリクト内の不良ブロックのアドレスと、不良ブロックを含むディストリクト内の代替ブロックのアドレスとを対応して記憶する。検索回路5-1は、入力されたブロックアドレスに基づき、第1の記憶部5-2内に記憶された不良ブロックのアドレスを検索し、これらが一致した場合、不良ブロックのアドレスに対応した代替ブロックのアドレスを読み出す。アドレス切替回路5-3は、検索回路5-1より代替ブロックのアドレスが供給されたとき、代替ブロックのアドレスを出力し、代替ブロックのアドレスが供給されない場合、入力されたブロックアドレスを出力する。
【選択図】図1
Description
本発明は、例えばNAND型フラッシュメモリを用いたメモリシステムに係り、製造時に不良を有するブロック(以下、不良ブロックと称す)を救済可能なメモリシステムに関する。
近時、NAND型フラッシュメモリは大容量化しており、大量の物理ブロックを有している。これら物理ブロックの中には、製造時に不良ブロックが発生することがある。不良ブロックの数が所定数より少ない場合、不良ブロックを正常ブロックに代替することにより、NAND型フラッシュメモリ自体を良品として使用可能としている。
従来、不良ブロックを正常ブロックに代替する方法が種々提案されている。例えばNAND型フラッシュメモリの複数の物理ブロックを複数のグループに分類し、各グループに含まれる不良ブロックの数が所定値以下である場合、互いに異なるグループに属する複数のブロックを仮想的に結合して仮想ブロックを形成する。また、少なくとも1つのグループに含まれる不良ブロックの数が所定値を超えている場合、他のグループに属する物理ブロックにより代替する方法が提案されている(例えば特許文献1、2参照)。
このように、不良ブロックの救済は正常ブロックに代替することによりなされるが、不良ブロックの数が多い場合、代替に使用される正常ブロックの数が多くなり、ユーザの利用可能領域が減少する。
特開2003−15947号公報
特開2003−122630号公報
本発明は、正常ブロックによる不良ブロックの代替数を抑制でき、しかも、不良ブロックを確実に救済できるメモリシステムを提供しようとするものである。
本発明のメモリシステムの第1の態様は、複数の物理ブロックを含む複数のディストリクトを有し、各ディストリクトに含まれる任意の1つの前記ブロックをグループとしてデータを書き込むメモリセルアレイと、前記各ディストリクト内の不良ブロックのアドレスと、前記不良ブロックを含む前記ディストリクト内の代替ブロックのアドレスとを対応して記憶する第1の記憶部と、入力されたブロックアドレスに基づき、前記第1の記憶部内に記憶された不良ブロックのアドレスを検索し、これらが一致した場合、不良ブロックのアドレスに対応した代替ブロックのアドレスを前記第1の記憶部から読み出す検索回路と、前記検索回路より代替ブロックのアドレスが供給されたとき、代替ブロックのアドレスを出力し、代替ブロックのアドレスが供給されない場合、前記入力されたブロックアドレスを出力するアドレス切替回路とを具備している。
本発明のメモリシステムの第2の態様は、複数の物理ブロックを含む複数のディストリクトと、各ディストリクトに対応して設けられた複数の拡張ブロックとを有するメモリセルアレイと、前記各ディストリクト内の不良ブロックのアドレスと、前記不良ブロックを含む前記ディストリクトの前記複数の拡張ブロックのアドレスとを対応して記憶する第1の記憶部と、入力されたブロックアドレスに基づき、前記第1の記憶部内に記憶された不良ブロックのアドレスを検索し、これらが一致した場合、不良ブロックのアドレスに対応した前記拡張ブロックのアドレスを前記第1の記憶部から読み出す検索回路と、前記検索回路より前記拡張ブロックのアドレスが供給されたとき、前記拡張ブロックのアドレスを出力し、前記拡張ブロックのアドレスが供給されない場合、前記入力されたブロックアドレスを出力するアドレス切替回路とを具備している。
本発明によれば、正常ブロックによる不良ブロックの代替数を抑制でき、しかも、不良ブロックを確実に救済できるメモリシステムを提供できる。
以下、本発明の実施の形態について、図面を参照して説明する。
(第1の実施形態)
先ず、第1の実施形態に係る不良ブロックの代替処理とその前提としての代替処理について概略的に説明する。
先ず、第1の実施形態に係る不良ブロックの代替処理とその前提としての代替処理について概略的に説明する。
図2は、第1の実施形態の前提としての代替処理を示している。図2は、NAND型フラッシュメモリが、例えば4つのディストリクトD0、D1、D2、D3を有する場合を示している。各ディストリクトD0〜D3は、それぞれ例えば5つの物理ブロックを有して、各ディストリクトはそれぞれ図示せぬページバッファ回路を有している。尚、ディストリクトは、1つのページバッファ回路により共有される複数の物理ブロックを含む領域であり、プログラムコマンドによりデータが書き込まれる単位をいう。各ディストリクトD0〜D3から1つの物理ブロックが選択され、この選択された4つの物理ブロックにより物理ブロック群PBL0〜PBL4が構成されている。データの書き込み動作として、1つの物理ブロック群に含まれる複数の物理ブロックに対して同時にプログラム動作が可能とされている。このような書き込み動作をマルチディストリクトプログラムと称す。
図2に示す例は、ディストリクトD0に不良ブロックが存在するとき、ディストリクトD0の不良ブロックを含む物理ブロック群を不良物理ブロック群とし、この不良物理ブロック群の正常ブロックにより、他の物理ブロック群の不良ブロックを救済している。すなわち、ディストリクトD0の物理ブロック群PBL1に対応するブロックが不良ブロックである場合、この物理ブロック群PBL1を不良物理ブロック群とし、この物理ブロック群PBL1内の正常ブロックにより、例えばディストリクトD1の物理ブロック群PBL2に対応する不良ブロック、ディストリクトD2の物理ブロック群PBL3に対応するブロックが不良ブロック、及びディストリクトD3の物理ブロック群PBL4に対応する不良ブロックが救済される。つまり、救済する不良ブロックの数に関係なく、ディストリクトD0に不良ブロックが存在する場合、その物理ブロック群は他の物理ブロック群の救済に割り当てられる。このとき、不良物理ブロック群のすべての正常ブロックが他の物理ブロック群の不良ブロックの救済に使用されれば問題ないが、不良物理ブロック群の正常ブロックが他の物理ブロック群の不良ブロックの救済に使用されない場合、その正常ブロックは、データを記憶可能であるにもかかわらず、有効に活用されないこととなる。
そこで、第1の実施形態は、ディストリクトD0に不良ブロックが存在する物理ブロック群を不良物理ブロック群とするという条件を取り外し、柔軟な不良ブロックの救済を実現している。
図3(a)(b)は、第1の実施形態の代替方法を示している。図3(a)において、2つのディストリクトD0、D1は、それぞれ5つの物理ブロックを有している。各ディストリクトD0、D1から1つの物理ブロックが選択され、この選択された2つの物理ブロックにより物理ブロック群PBL0〜PBL4が構成されている。各ディストリクトD0、D1に対応してページバッファ回路が設けられ、これらページバッファ回路を介してディストリクトD0、D1に同時にデータの書き込み、読み出しが可能とされている。各物理ブロックは、データの消去単位であり、この物理ブロック毎にデータが消去される。また、1つの物理ブロックは複数のページから構成され、ページバッファ回路を介してページ単位でデータの書き込み、及び読み出しが行われる。
第1の実施形態は、1つのディストリクト内で不良ブロックを正常ブロックに代替している。すなわち、図3(a)に示すように、ディストリクトD0の物理ブロック群PBL1に不良ブロックがあり、ディストリクトD1の物理ブロック群PBL3に不良ブロックがある場合、図3(b)に示すように、ディストリクトD0の不良ブロックをディストリクトD0の物理ブロック群PBL3の正常ブロックで代替する。このようにすることにより、物理ブロック群PBL3は全て不良ブロックとなるため使用できないが、使用不可能な物理ブロック群1の数を低減できる。このため、図2に示す場合のように、不良物理ブロック群内の正常ブロックが有効に使用されないということを防止でき、不良ブロックを有する物理ブロック群同士で柔軟に不良ブロックを救済することが可能となる。
次に、第1の実施形態の動作について具体的に説明する。
図4は、第1の実施形態に係るメモリカードに搭載されるデバイス類の概略構成を示す斜視図である。
メモリカード1は、PCB(Printed Circuit Board)基板2と、このPCB(Printed Circuit Board)基板2上に配置されたNAND型フラッシュメモリ3及びコントローラ4とにより構成されている。コントローラ4は、CPU(Central Processing Unit)8やROM(Read-Only Memory)9などの機能ブロックを有している。各デバイスの詳細については後述する。なお、NAND型フラッシュメモリ3は、1つのメモリセルに1ビットの情報を記憶する2値メモリであっても良いし、1つのメモリセルに1ビットより多い情報(例えば2ビット)を記憶する多値メモリであっても良い。また、図4に示すメモリカードは、PCB基板2上にNAND型フラッシュメモリ3及びコントローラ4が配置された場合を示している。しかし、NAND型フラッシュメモリ3及びコントローラ4は、同一のLSI(Large-scale Integration)基板上に配置されても良い。
図5は、ホストと上記メモリカードとを含む構成を示すブロック図である。図5において、図4と同一部分には同一符号を付している。
ホスト機器(以下、ホストと称す)20は、接続されるメモリカードをアクセスするためのハードウェア及びソフトウェア(システム)を備えている。
メモリカード1は、ホスト20に接続されたときに電源供給を受けて動作し、ホスト20からのアクセスに応じた処理を行う。このメモリカード1は、前述したようにNAND型フラッシュメモリ3及びコントローラ4を有している。
NAND型フラッシュメモリ3は、消去時のブロックサイズ(消去ブロックサイズ)が例えば256kByteに定められた不揮発性メモリである。このNAND型フラッシュメモリ3は、例えば0.09μmプロセス技術を用いて製作される。即ち、NAND型フラッシュメモリ3のデザインルールは、0.1μm未満となっている。
コントローラ4は、前述したCPU8及びROM9のほかに、メモリインターフェース部5、ホストインタフェース部6、バッファ7、及びRAM(Random Access Memory)10を搭載している。
メモリインターフェース部5は、コントローラ4とNAND型フラッシュメモリ3との間のインターフェース処理を行う。ホストインタフェース部6は、コントローラ4とホスト20との間のインターフェース処理を行う。
バッファ7は、ホスト20から送られてくるデータをNAND型フラッシュメモリ3へ書き込む際に、一定量のデータ(例えば1ページ分)を一時的に記憶したり、NAND型フラッシュメモリ3から読み出されるデータをホスト20へ送り出す際に、一定量のデータを一時的に記憶したりする。
CPU8は、メモリカード1全体の動作を司るものである。このCPU8は、例えばメモリカード1が電源供給を受けた際に、ROM9の中に格納されているファームウェア(制御プログラム)をRAM10上にロードして所定の処理を実行する。すなわち、CPU8は、各種のテーブルをRAM10上に作成したり、ホスト20から書き込みコマンド、読み出しコマンド、消去コマンドを受けてNAND型フラッシュメモリ3上の該当領域をアクセスしたり、バッファ7を通じてデータ転送処理を制御したりする。さらに、CPU8は、後述するように、NAND型フラッシュメモリ3に記憶された代替元アドレス及び代替先アドレスを読み出し、メモリインターフェース部5に設けられたRAMにロードする。
ROM9は、CPU8により使用される制御プログラムなどを格納するメモリである。RAM10は、CPU8の作業エリアとして使用され、制御プログラムや各種のテーブルを記憶する揮発性メモリである。
NAND型フラッシュメモリ3は、さらに、不良ブロックの代替ブロックを示す代替テーブル3−1を有している。この代替テーブル3−1は、代替元アドレスとしての不良ブロックアドレスを記憶する領域3−1aと、代替先アドレスとしての正常ブロックアドレス(後述する拡張ブロックアドレスを含む)を記憶する領域3−1bとを有している。
代替テーブル3−1は、例えばチップのテスト時に生成される。すなわち、NAND型フラッシュメモリ3は、例えば4096個の物理ブロックを有しており、チップのテスト時に不良ブロックが検出された場合、検出された不良ブロックにフラグが付される。この後、例えば図5に示すメモリカードのCPU8は、テスト時に起動され、このフラグを検出することにより不良ブロックを検出する。この検出された不良ブロックのアドレス(物理ブロックアドレス)は、CPU8により、NAND型フラッシュメモリ3に設けられた代替テーブル3−1の代替元アドレス3−1aに記憶する。例えば図3(a)(b)に示す例の場合、CPU8は、不良ブロックとしてディストリクトD0、物理ブロック群PBL1、及びディストリクトD1、物理ブロック群PBL3を検出する。このうち、ディストリクトD0、物理ブロック群PBL1を代替元アドレス3−1aに不良ブロックアドレスとして記憶する。さらに、CPU8は、ディストリクトD0、物理ブロック群PBL3を代替先アドレス3−1bに代替ブロックアドレスとして記憶する。このようにして、代替テーブル3−1が作成される。
図1は、図3に示すメモリインターフェース部5の一例を示している。
メモリインターフェース部5は、アドレス検索回路5−1、RAM5−2、アドレス切替回路5−3を有している。RAM5−2には、代替テーブル3−1のデータが記憶される。すなわち、メモリカード装置の起動時、例えばCPU8は、NAND型フラッシュメモリ3から代替テーブル3−1のデータを読み出し、RAM5−2に設定する。したがって、RAM5−2には、代替元アドレス5−2a、代替先アドレス5−2bが記憶される。
図6は、図1に示すインターフェース部5の動作を示している。
先ず、上記のようにしてNAND型フラッシュメモリ3の代替テーブル3−1からデータが読み出され、RAM5−2に記憶される(S1)。アドレス検索回路5−1は、CPU8から供給される例えば12ビットのブロックアドレス(物理アドレス)を受け、このブロックアドレスに基づき、RAM5−2の代替元アドレスを検索する(S2、S3)。この検索の結果、ブロックアドレスと代替元アドレスが一致した場合、すなわち、CPU8から供給されたブロックアドレスが不良アドレスである場合、代替元アドレスに対応して記憶された代替先アドレスがRAM5−2から読み出され出力される(S4)。一方、上記検索の結果、入力されたブロックアドレスと代替元アドレスが不一致である場合、入力されたブロックアドレスが出力される(S5)。すなわち、アドレス切替回路5−3は、RAM5−2から代替先アドレスが供給された場合、代替先アドレスを出力し、代替元アドレスがない場合、アドレス検索回路5−1から供給されたブロックアドレスを出力する。アドレス切替回路5−3から出力されたブロックアドレスは、NAND型フラッシュメモリ3に供給される。
上記第1の実施形態によれば、不良ブロックを、この不良ブロックを含むディストリクト内の正常ブロックで代替している。このため、ディストリクトD0に不良ブロックが有る場合においても、その不良ブロックを含む物理ブロック群全体が不良物理ブロック群とならない。このため、使用可能な物理ブロック群の数の減少を抑制することができる。
また、書き込み動作は、マルチディストリクトプログラムにより、各ディストリクトから選択された1つの物理ブロックについて同時に実行される。このとき、不良ブロックは不良ブロックを含むディストリクト内の正常ブロックに代替され、この代替された正常ブロックは他のディストリクトの正常ブロックと同時に書き込み動作が実行される。したがって、ディストリクト内に不良ブロックがある場合においても、マルチディストリクトプログラムを行なうことができ、高速な書き込み動作を実現することができる。
(第2の実施形態)
図7(a)(b)は、第2の実施形態を示している。第2の実施形態は、第1の実施形態とNAND型フラッシュメモリ3の構成が相違している。すなわち、図7(a)に示すように、各ディストリクトD0、D1に対応して拡張ブロックEX0、EX1が設けられている。尚、図7(a)(b)において、ページバッファ回路は省略している。
図7(a)(b)は、第2の実施形態を示している。第2の実施形態は、第1の実施形態とNAND型フラッシュメモリ3の構成が相違している。すなわち、図7(a)に示すように、各ディストリクトD0、D1に対応して拡張ブロックEX0、EX1が設けられている。尚、図7(a)(b)において、ページバッファ回路は省略している。
拡張ブロックEX0、EX1は不良ブロックの代替ブロックとして使用される。図7(a)に示すように、ディストリクトD0、D1内に不良ブロックがある場合、そのディストリクトD0、D1に対応する拡張ブロックEX0、EX1に代替される。具体的には、ディストリクトD0、D1を対としてデータを書き込む場合、各ディストリクトは、“4096”の物理ブロックアドレスを有している。つまり、16進で“FFF”である。この12ビットの物理ブロックアドレスのMSB(Most Significant Bit)に、1ビットの拡張ブロックを示すアドレスを付加し、この拡張ブロックアドレスにより、拡張ブロックを指定する。
装置構成としては、図1に示す構成と殆ど同様であるが、代替テーブル3−1のデータ、RAM5−2のデータが異なり、RAM5−2とアドレス切替回路5−3とを接続するバスが12ビットから13ビットに変更される。すなわち、代替テーブル3−1の代替先アドレス3−1bは、不良ブロックを有するディストリクトに対応した拡張ブロックアドレスとなる。例えば、図7(b)に示すように、ディストリクトD0の不良ブロックPBL3に対応して、拡張ブロックEX0が割り当てられ、ディストリクトD1の不良ブロックPBL1に対応して、拡張ブロックEX0が割り当てられた場合、これら拡張ブロックEX0が代替先アドレスとして代替テーブル3−1に記憶される。
メモリカードの起動時、代替テーブル3−1に記憶された代替元アドレス3−1a、及び代替先アドレス3−1bは、CPU8により読み出され、RAM5−2に記憶される。したがって、CPU8から供給されるブロックアドレスとRAM5−2に記憶された代替元アドレスが一致した場合、この代替元アドレスに対応する代替先アドレス、すなわち、拡張ブロックアドレスが読み出され、アドレス切替回路5−3に供給される。一方、上記検索の結果、入力されたブロックアドレスと代替元アドレスが不一致である場合、入力されたブロックアドレスが出力される。すなわち、アドレス切替回路5−3は、RAM5−2から拡張ブロックアドレスが供給された場合、拡張ブロックアドレスを出力し、拡張ブロックアドレスがない場合、アドレス検索回路5−1から供給されたブロックアドレスを出力する。アドレス切替回路5−3から出力されたブロックアドレスは、NAND型フラッシュメモリ3に供給される。
上記第2の実施形態によれば、各ディストリクトD0、D1に対応して拡張ブロックEX0、EX1を設け、これら拡張ブロックEX0、EX1により、対応するディストリクトの不良ブロックを代替している。このため、各ディストリクトD0、D1の正常ブロックを代替ブロックに使用する必要がないため、記憶容量の低減を防止できる。
また、不良ブロックを、この不良ブロックを含むディストリクトに対応する拡張ブロックにより代替している。データの書き込み時、この拡張ブロックは、他のディストリクトの正常ブロックと同時に選択され、書き込み動作が実行される。このため、第1の実施形態と同様に、マルチディストリクトプログラムを使用することができ、高速にデータを書き込むことが可能となる。
尚、ディストリクトD0、D1に対応する拡張ブロックEX0、EX1を全て使用した状態において、さらに不良ブロックがある場合、第1の実施形態と同様に、各ディストリクト内の物理ブロックを代替ブロックとして使用することも可能である。この場合、不良ブロックの救済効率を向上でき、チップの歩留まりを向上できる。
(第3の実施形態)
図8は、第3の実施形態を示している。第3の実施形態は、アドレス検索回路5−1とRAM5−2を変形したものである。NAND型フラッシュメモリ3内の不良ブロックの数が多い場合、RAM5−2内に記憶される代替元アドレス5−2a、代替先アドレス5−2bの数が増加する。このため、検索に時間を要する。
図8は、第3の実施形態を示している。第3の実施形態は、アドレス検索回路5−1とRAM5−2を変形したものである。NAND型フラッシュメモリ3内の不良ブロックの数が多い場合、RAM5−2内に記憶される代替元アドレス5−2a、代替先アドレス5−2bの数が増加する。このため、検索に時間を要する。
そこで、第3の実施形態では、RAM5−2に変えて、RAM5−2より記憶容量の小さい複数のRAM5−2a、5−2b、5−2cを設け、アドレス検索回路5−1により、これらRAM5−2a、5−2b、5−2cを並列に検索する。NAND型フラッシュメモリ3から読み出された代替テーブル3−1内の代替元アドレス、代替先アドレスは、RAM5−2a、5−2b、5−2cに分けて記憶される。
このような構成において、アドレス検索回路5−1にCPU8からブロックアドレスが供給されると、アドレス検索回路5−1は、RAM5−2a、5−2b、5−2cを並列に検索する。RAM5−2a、5−2b、5−2cのいずれかにおいて、入力ブロックアドレスと一致する代替元アドレスが検索されると、この検索された代替元アドレスと対応する代替先アドレスが、RAM5−2a、5−2b、5−2cのいずれかから出力され、アドレス切替回路に供給される。
上記第3の実施形態によれば、記憶容量が比較的小さな複数のRAM5−2a、5−2b、5−2cに代替テーブル3−1に記憶された代替元アドレス、代替先アドレスを分割して記憶させ、アドレス検索回路5−1は、RAM5−2a、5−2b、5−2cを並列に検索している。このため、不良ブロックが増大した場合においても、代替元アドレス、代替先アドレスを高速に検索することができる。
(第4の実施形態)
第1乃至第3の実施形態において、アドレス検索回路5−1によりRAM5−2、5−2a、5−2b、5−2cを検索する時間は、データの書き込み動作の前に行なっていた。しかし、書き込みアドレス入力、代替アドレスの検索、書き込みデータの入力というシーケンスで行なった場合、不良ブロックの代替をしない場合に比べて、代替アドレスの検索に要する時間だけ、書き込み速度が低下する。そこで、第4の実施形態は、代替アドレスの検索に係るオーバーヘッドを削減する。
第1乃至第3の実施形態において、アドレス検索回路5−1によりRAM5−2、5−2a、5−2b、5−2cを検索する時間は、データの書き込み動作の前に行なっていた。しかし、書き込みアドレス入力、代替アドレスの検索、書き込みデータの入力というシーケンスで行なった場合、不良ブロックの代替をしない場合に比べて、代替アドレスの検索に要する時間だけ、書き込み速度が低下する。そこで、第4の実施形態は、代替アドレスの検索に係るオーバーヘッドを削減する。
図9は、第4の実施形態を示している。図9に示すように、代替アドレスの検索は、ダミープログラムコマンド(DPGM)、及びプログラムコマンド(PGM)の前に実行される。すなわち、例えば書き込みデータの入力期間と並列に、代替アドレスが検索される。
図9に示す例の場合、データ入力コマンドDINの発行に続いてディストリクト0に対するアドレス入力、データ入力が行なわれる。この後、DPGM、DINが順次発行され、ディストリクト1に対するアドレス入力、データ入力が行なわれる。続いて、PGMが発行される。このPGMに応じてディストリクト0、1に対するプログラム動作が実行される。この動作に並行して、DPGMの前において、ディストリクト1に対する代替アドレスが検索され、代替アドレスがある場合は、DPGMに続くDINに応じてディストリクト1に対する代替アドレスが入力される。また、PGMの前において、ディストリクト0に対する代替アドレスが検索され、代替アドレスがある場合は、PGMに続くDINに応じてディストリクト0に対する代替アドレスが入力される。各DINに続くアドレス入力において、代替アドレスがアドレス切替回路5−3により選択されて、NAND型フラッシュメモリ3に供給される。
上記第4の実施形態によれば、DPGM又はPGMの発行前で、アドレス切替回路5−3が非動作期間において、次のディストリクトに対応する代替アドレスを検索している。したがって、代替アドレスの検索時間がデータの書き込み時間に影響を与えないため、高速な書き込みを行なうことが可能である。
(第5の実施形態)
図10(a)(b)は、第5の実施形態を示している。近時、記憶容量の増大に伴い、図10(a)に示すように、複数のチップCH1、CH2を積層した積層チップが採用されている。
図10(a)(b)は、第5の実施形態を示している。近時、記憶容量の増大に伴い、図10(a)に示すように、複数のチップCH1、CH2を積層した積層チップが採用されている。
図10(b)に示すように、それぞれ1Gバイトの記憶容量を有するチップCH1、CH2において、チップCH1を例えば0〜900Mバイトを使用可能とし、チップCH2を900Mバイトから1.9Gバイトを使用可能として管理する。各チップの拡張ブロックは、それぞれ例えば64個の不良ブロックを代替可能とし、全体で128個の不良ブロックを代替可能とする。各チップCH1、CH2の代替数は有限であり、代替可能な数の不良ブロックは出荷前に予め代替される。また、メモリカードの使用時に後天的に不良ブロックが発生した場合、この不良ブロックは代替されない。代替できない不良ブロックの数が規定値以上となった場合、そのメモリカードは使用不能となる。
出荷時に、例えばチップCH0の不良ブロックの数が、チップCH1の不良ブロックの数より多く、出荷後、後天的にチップCH0に不良ブロックが発生し、トータルの不良ブロックの数が規定値をオーバーした場合、チップCH1が十分使用可能であるにも拘らず、メモリカードが使用不能となってしまう。
そこで、第5の実施形態では、チップCH0とチップCH1の代替数をほぼ等しくしている。すなわち、チップCH0の不良ブロックをチップCH0の拡張ブロックにより代替し、この代替数が代替テーブルのエントリ数以下で、規定値を超えたとき、チップCH1の不良ブロックを拡張ブロックで代替する。このようにして、チップCH0とCH1の代替数をほぼ等しくする。
図11は、テスト時におけるCPU8の動作を示している。CPU8は、前述したように、出荷前のテスト時にNAND型フラッシュメモリ3の不良ブロックを検出し、代替テーブル3を作成する。第5の実施形態では、このとき、次のような動作が実行される。
先ず、チップCH0の不良ブロックが検出され、チップCH0に関して代替テーブル3−1が作成される(S11)。すなわち、チップCH0の不良ブロックに対応する代替ブロック(拡張ブロック)のブロックアドレスが決定される。この後、代替テーブル3−1のエントリ数に余裕があるかどうか判別される(S12)。すなわち、エントリ数が例えば128個に達したかどうかが判定される。この結果、エントリ数が128個に達している場合は処理が終了される。
一方、エントリ数に余裕がある場合、チップCH0に関する代替数が規定値、例えば64個より小さいかどうかが判別される(S13)。この結果、代替数が規定値より小さい場合、チップCH0に不良ブロックがあるかどうかが判別される(S14)。この結果、チップCH0に不良ブロックがまだある場合、制御がステップS11に移行され、上記動作が繰り返される。
また、ステップS13において、チップCH0の代替数が規定値以上と判別された場合、及びステップS14において、チップCH0に不良ブロックが無いと判別された場合、チップCH1に関する代替テーブル3−1が作成される(S15)。すなわち、チップCH1の不良ブロックに対応する代替ブロック(拡張ブロック)のブロックアドレスが決定される。この後、代替テーブル3−1のエントリ数に余裕があるかどうかが判別される(S16)。この結果、エントリ数が128個に達している場合は処理が終了され、エントリ数に余裕がある場合、制御がステップS11に移行され、上記動作が繰り返される。
このような動作が行なわれることにより、代替数が128個を限度とする代替テーブル3−1がNAND型フラッシュメモリ3内に作成される。この代替テーブル3−1は、メモリカードの起動時にCPU8により読み出され、RAM5−2、又はRAM5−2a、5−2b、5−2cに記憶される。
上記第5の実施形態によれば、チップCH0とチップCH1の代替数をほぼ等しくできる。このため、出荷後、後天的にチップCH0とチップCH1内に不良ブロックが生じた場合においても、不良ブロックの数がチップCH0又はチップCH1に偏ることを防止できる。したがって、各チップの代替不可能な不良ブロックの数が規定値に達するまでの時間を延ばすことが可能であり、メモリカードの耐用年数を延ばすことが可能である。
本発明は、上記各実施形態に限定されるものではなく、発明の要旨を変えない範囲において種々変形実施可能なことは勿論である。
1…メモリカード、3…NAND型フラッシュメモリ、3−1…代替テーブル、5…メモリインターフェース部、5−1…アドレス検索回路、5−2、5−2a、5−2b、5−2c…RAM、5−3…アドレス変換回路、8…CPU、CH1、CH2…チップ、D0、D1…ディストリクト、PBL0〜PBL4…物理ブロック群、EX0、EX1…拡張ブロック。
Claims (5)
- 複数の物理ブロックを含む複数のディストリクトを有し、各ディストリクトに含まれる任意の1つの前記ブロックをグループとしてデータを書き込むメモリセルアレイと、
前記各ディストリクト内の不良ブロックのアドレスと、前記不良ブロックを含む前記ディストリクト内の代替ブロックのアドレスとを対応して記憶する第1の記憶部と、
入力されたブロックアドレスに基づき、前記第1の記憶部内に記憶された不良ブロックのアドレスを検索し、これらが一致した場合、不良ブロックのアドレスに対応した代替ブロックのアドレスを前記第1の記憶部から読み出す検索回路と、
前記検索回路より代替ブロックのアドレスが供給されたとき、代替ブロックのアドレスを出力し、代替ブロックのアドレスが供給されない場合、前記入力されたブロックアドレスを出力するアドレス切替回路と
を具備することを特徴とするメモリシステム。 - 複数の物理ブロックを含む複数のディストリクトと、各ディストリクトに対応して設けられた複数の拡張ブロックとを有するメモリセルアレイと、
前記各ディストリクト内の不良ブロックのアドレスと、前記不良ブロックを含む前記ディストリクトの前記複数の拡張ブロックのアドレスとを対応して記憶する第1の記憶部と、
入力されたブロックアドレスに基づき、前記第1の記憶部内に記憶された不良ブロックのアドレスを検索し、これらが一致した場合、不良ブロックのアドレスに対応した前記拡張ブロックのアドレスを前記第1の記憶部から読み出す検索回路と、
前記検索回路より前記拡張ブロックのアドレスが供給されたとき、前記拡張ブロックのアドレスを出力し、前記拡張ブロックのアドレスが供給されない場合、前記入力されたブロックアドレスを出力するアドレス切替回路と
を具備することを特徴とするメモリシステム。 - 前記第1の記憶部は、複数の記憶部に分割され、各記憶部は、並列に動作することを特徴とする請求項1又は2記載のメモリシステム。
- 前記メモリセルアレイは、複数のメモリチップにより構成され、各チップの前記拡張ブロックによる不良ブロックの代替数は、ほぼ等しいことを特徴とする請求項2記載のメモリシステム。
- 前記第1の記憶部に記憶される前記アドレスは、前記メモリセルアレイの第2の記憶部に記憶され、メモリカードの起動時に前記第2の記憶部から前記第1の記憶部に転送されることを特徴とする請求項1又は2記載のメモリシステム。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2005283389A JP2007094765A (ja) | 2005-09-29 | 2005-09-29 | メモリシステム |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2005283389A JP2007094765A (ja) | 2005-09-29 | 2005-09-29 | メモリシステム |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2007094765A true JP2007094765A (ja) | 2007-04-12 |
Family
ID=37980405
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2005283389A Pending JP2007094765A (ja) | 2005-09-29 | 2005-09-29 | メモリシステム |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2007094765A (ja) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2009146548A (ja) * | 2007-12-18 | 2009-07-02 | Toshiba Corp | 不揮発性半導体記憶装置 |
JP2010086106A (ja) * | 2008-09-30 | 2010-04-15 | Tdk Corp | メモリコントローラ、メモリコントローラを備えるフラッシュメモリシステム、並びにフラッシュメモリの制御方法 |
JP2012003810A (ja) * | 2010-06-17 | 2012-01-05 | Lapis Semiconductor Co Ltd | 半導体メモリ装置 |
JP2014157635A (ja) * | 2014-06-06 | 2014-08-28 | Lapis Semiconductor Co Ltd | 半導体メモリ装置 |
-
2005
- 2005-09-29 JP JP2005283389A patent/JP2007094765A/ja active Pending
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2009146548A (ja) * | 2007-12-18 | 2009-07-02 | Toshiba Corp | 不揮発性半導体記憶装置 |
JP2010086106A (ja) * | 2008-09-30 | 2010-04-15 | Tdk Corp | メモリコントローラ、メモリコントローラを備えるフラッシュメモリシステム、並びにフラッシュメモリの制御方法 |
JP4720891B2 (ja) * | 2008-09-30 | 2011-07-13 | Tdk株式会社 | メモリコントローラ、メモリコントローラを備えるフラッシュメモリシステム、並びにフラッシュメモリの制御方法 |
JP2012003810A (ja) * | 2010-06-17 | 2012-01-05 | Lapis Semiconductor Co Ltd | 半導体メモリ装置 |
US9070482B2 (en) | 2010-06-17 | 2015-06-30 | Lapis Semiconductor Co., Ltd. | Multi-chip package semiconductor memory device |
JP2014157635A (ja) * | 2014-06-06 | 2014-08-28 | Lapis Semiconductor Co Ltd | 半導体メモリ装置 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP4960705B2 (ja) | マルチブロック単位へのブロックの適応決定論的グループ化 | |
JP4844639B2 (ja) | メモリコントローラ及びメモリコントローラを備えるフラッシュメモリシステム、並びにフラッシュメモリの制御方法 | |
US7404031B2 (en) | Memory card, nonvolatile semiconductor memory, and method of controlling semiconductor memory | |
JP4666080B2 (ja) | メモリコントローラ及びメモリコントローラを備えるフラッシュメモリシステム、並びにフラッシュメモリの制御方法 | |
JP2007199905A (ja) | 半導体記憶装置の制御方法 | |
JPWO2005083573A1 (ja) | 半導体メモリ装置 | |
JP4666081B2 (ja) | メモリコントローラ及びメモリコントローラを備えるフラッシュメモリシステム、並びにフラッシュメモリの制御方法 | |
JP5093294B2 (ja) | メモリコントローラ、メモリコントローラを備えるフラッシュメモリシステム、並びにフラッシュメモリの制御方法 | |
CN1264127A (zh) | 具有冗余存储电路的半导体存储器件 | |
KR100757128B1 (ko) | 플래시 메모리를 이용한 메모리 카드 및 그 제어 방법 | |
JP2007094765A (ja) | メモリシステム | |
JP4751037B2 (ja) | メモリカード | |
JP3215919B2 (ja) | メモリ管理 | |
US10783034B2 (en) | Memory system and control method | |
CN1218321C (zh) | 存储器装置 | |
US9009389B2 (en) | Memory management table processing method, memory controller, and memory storage apparatus | |
JP4710918B2 (ja) | メモリコントローラ、メモリコントローラを備えるフラッシュメモリシステム、並びにフラッシュメモリの制御方法 | |
JP4687720B2 (ja) | メモリコントローラ、メモリコントローラを備えるフラッシュメモリシステム、並びにフラッシュメモリの制御方法 | |
JP4241741B2 (ja) | メモリコントローラ及びフラッシュメモリシステム | |
JP3934659B1 (ja) | メモリコントローラ及びフラッシュメモリシステム | |
JP4952741B2 (ja) | メモリコントローラ及びメモリコントローラを備えるフラッシュメモリシステム、並びにフラッシュメモリの制御方法 | |
JP4952742B2 (ja) | メモリコントローラ及びメモリコントローラを備えるフラッシュメモリシステム、並びにフラッシュメモリの制御方法 | |
JP4636046B2 (ja) | メモリコントローラ及びメモリコントローラを備えるフラッシュメモリシステム、並びにフラッシュメモリの制御方法 | |
CN108694130B (zh) | 存储器系统及存储器的管理方法 | |
JP2006048746A (ja) | メモリカード |