JP4129381B2 - 不揮発性半導体記憶装置 - Google Patents
不揮発性半導体記憶装置 Download PDFInfo
- Publication number
- JP4129381B2 JP4129381B2 JP2002278952A JP2002278952A JP4129381B2 JP 4129381 B2 JP4129381 B2 JP 4129381B2 JP 2002278952 A JP2002278952 A JP 2002278952A JP 2002278952 A JP2002278952 A JP 2002278952A JP 4129381 B2 JP4129381 B2 JP 4129381B2
- Authority
- JP
- Japan
- Prior art keywords
- data
- area
- address
- sector
- management
- 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 - Lifetime
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/0223—User address space allocation, e.g. contiguous or non contiguous base addressing
- G06F12/023—Free address space management
- G06F12/0238—Memory management in non-volatile memory, e.g. resistive RAM or ferroelectric memory
- G06F12/0246—Memory management in non-volatile memory, e.g. resistive RAM or ferroelectric memory in block erasable memory, e.g. flash memory
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/08—Error detection or correction by redundancy in data representation, e.g. by using checking codes
- G06F11/10—Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's
- G06F11/1008—Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's in individual solid state devices
- G06F11/1068—Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's in individual solid state devices in sector programmable memories, e.g. flash disk
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/06—Addressing a physical block of locations, e.g. base addressing, module addressing, memory dedication
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C16/00—Erasable programmable read-only memories
- G11C16/02—Erasable programmable read-only memories electrically programmable
- G11C16/06—Auxiliary circuits, e.g. for writing into memory
- G11C16/10—Programming or data input circuits
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C29/00—Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
- G11C29/70—Masking faults in memories by using spares or by reconfiguring
- G11C29/76—Masking faults in memories by using spares or by reconfiguring using address translation or modifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2212/00—Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
- G06F2212/10—Providing a specific technical effect
- G06F2212/1032—Reliability improvement, data loss prevention, degraded operation etc
- G06F2212/1036—Life time enhancement
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C16/00—Erasable programmable read-only memories
- G11C16/02—Erasable programmable read-only memories electrically programmable
- G11C16/04—Erasable programmable read-only memories electrically programmable using variable threshold transistors, e.g. FAMOS
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C16/00—Erasable programmable read-only memories
- G11C16/02—Erasable programmable read-only memories electrically programmable
- G11C16/06—Auxiliary circuits, e.g. for writing into memory
- G11C16/34—Determination of programming status, e.g. threshold voltage, overprogramming or underprogramming, retention
- G11C16/349—Arrangements for evaluating degradation, retention or wearout, e.g. by counting erase cycles
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C29/00—Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
- G11C29/04—Detection or location of defective memory elements, e.g. cell constructio details, timing of test signals
- G11C2029/0409—Online test
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C29/00—Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
- G11C29/04—Detection or location of defective memory elements, e.g. cell constructio details, timing of test signals
- G11C29/08—Functional testing, e.g. testing during refresh, power-on self testing [POST] or distributed testing
- G11C29/12—Built-in arrangements for testing, e.g. built-in self testing [BIST] or interconnection details
- G11C29/44—Indication or identification of errors, e.g. for repair
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Quality & Reliability (AREA)
- Techniques For Improving Reliability Of Storages (AREA)
- Read Only Memory (AREA)
- Memory System (AREA)
- For Increasing The Reliability Of Semiconductor Memories (AREA)
Description
【発明の属する技術分野】
この発明は、記憶情報を電気的に書込み、消去可能な不揮発性半導体記憶装置に関し、例えばメモリアレイ内の不良領域の代替機能を備え不良アドレスを管理する管理テーブル情報を記憶する領域を有するフラッシュメモリに利用して有効な技術に関するものである。
【0002】
【従来の技術】
フラッシュメモリは、コントロールゲートおよびフローティングゲートを有する2重ゲート構造のMOSFETからなる不揮発性記憶素子をメモリセルに使用しており、フローティングゲートの蓄積電荷量を変えることでMOSFETのしきい値電圧を変化させ情報を記憶するようにしている。
【0003】
フラッシュメモリは、メモリセルへの書込み・消去動作の際にしきい値電圧を変化させるが、現在の製造技術では同一条件で書込み消去を行なってもメモリセルの特性バラツキによってしきい値電圧の変化の仕方にばらつきが生じ、場合によってはしきい値電圧が充分に変化しない不良メモリセルが発生することがある。
【0004】
従来の一般的なフラッシュメモリにおいては、このようにしきい値電圧が充分に変化しない不良メモリセルが発生した時に、不良メモリセルを含む所定の記憶領域を他の正常な記憶領域に置き換える代替機能を備えるとともに、不良アドレスを管理する管理テーブル情報を記憶する領域がメモリアレイ内に設けられることが多い。
【0005】
【発明が解決しようとする課題】
しかしながら、従来のフラッシュメモリは、一般に、不良アドレスを管理する管理テーブル情報の書替え等を外部のコントローラによって行なうようになっている。また、フラッシュメモリは、メモリセルのしきい値電圧のばらつきや経年変化によって読出しデータの信頼性がマスクROMやRAMなどに比べて低いため、フラッシュメモリを使用したシステムを構成する際にECCと呼ばれるエラーのチェックと訂正機能を外部のコントローラに持たせてデータの信頼性を向上させることが行なわれる。そのため、従来のフラッシュメモリは、新たにフラッシュメモリを使用したシステムを開発する際のシステム開発者の負担が大きいという課題があった。
【0006】
また、従来のフラッシュメモリは、不良メモリセルを含む記憶領域が、メモリ上のファイルの位置を管理するテーブルデータやフォーマット情報、アドレス変換情報などシステムにとって重要なデータを記憶するシステム領域として使用されていた場合には、メモリの認識ができなくなったりシステムの正常動作が不能になるおそれがある。
【0007】
この発明の目的は、フラッシュメモリのような電気的に書込み、消去可能な不揮発性半導体記憶装置において、システム開発者の負担を軽減できるようにすることにある。
【0008】
この発明の他の目的は、フラッシュメモリのような電気的に書込み、消去可能な不揮発性半導体記憶装置において、管理テーブルデータやアドレス変換情報などシステムにとって重要なデータが破損してもシステムが動作しなくなるような異常な状態を回避できるようにすることにある。
【0009】
この発明の前記ならびにほかの目的と新規な特徴は、本明細書の記述及び添付図面から明らかになるであろう。
【0010】
【課題を解決するための手段】
本願において開示される発明のうち代表的なものの概要を簡単に説明すれば、下記のとおりである。
【0011】
すなわち、本願の第1の発明は、フラッシュメモリのような電気的に書込み、消去可能な不揮発性半導体記憶装置に、正常な書込みまたは消去が不能な不良メモリセルを含むメモリセル群と不良メモリセルを含まないメモリセル群と置き換える代替処理機能と、各メモリセル群に対するデータ書換え回数を把握して複数のメモリセル群間で書換え回数に極端に大きな差が生じないようにメモリセル群と置き換える書換え回数平均化処理機能と、上記メモリアレイに記憶されたデータの誤りを検出し訂正するエラー訂正機能とを持たせ、上記代替処理機能による第1のアドレス変換情報および上記書換え回数平均化処理機能による第2のアドレス変換情報をそれぞれ上記メモリアレイの所定の領域に記憶し、同一のメモリセル群に関する上記第1のアドレス変換情報および第2のアドレス変換情報を時系列的に複数個記憶するように構成したものである。
【0012】
上記した手段によれば、不揮発性半導体記憶装置が代替処理機能やエラー訂正機能を備えているため外部のコントローラによって代替処理やエラー訂正処理を行なう必要がなくなり、システム開発者の負担が軽減されるとともに、アドレス変換情報が複数個記憶されているため、いずれかのアドレス変換情報が失われても他のアドレス変換情報を代用することでシステムが動作しなくなるような異常な状態を回避できるようになる。
【0013】
また、望ましくは、上記メモリアレイはいずれかのメモリセル群への書込みまたは消去動作の途中で電源が遮断されたときに互いに影響を与え合うことがない領域を2つ以上設け、上記複数個の第1のアドレス変換情報および第2のアドレス変換情報は、2つ以上の領域に順繰りに記憶させるように構成する。これにより、アドレス変換情報を記憶するいずれかの領域のデータが書込みまたは消去動作によって失われても他の領域に記憶されているアドレス変換情報は失われることがなく、システムが動作しなくなるような異常な状態を確実に回避できるようになる。
【0014】
【発明の実施の形態】
以下、本発明の一実施例を、図面を用いて説明する。
【0015】
図1は、本発明を適用して有効な不揮発性半導体記憶装置の一例としてのフラッシュメモリの実施例のブロック図を示す。この実施例のフラッシュメモリは、外部のホストCPUのようなコントローラとの間の信号の入出力を行なうホストインタフェース部101と、該ホストインタフェース部101を制御するインタフェース制御部110と、複数の不揮発性記憶素子(メモリセル)がマトリックス状に配置されたフラッシュ・メモリアレイ121とその周辺回路からなる記憶部120と、不良アドレスの管理などを行なう管理部130とから構成され、これらが単結晶シリコンのような1個の半導体チップ上に形成されている。
【0016】
既存のフラッシュメモリには、外部端子の仕様が異なる複数種類のチップがあり、本実施例のフラッシュメモリは、このうちNAND型と呼ばれる仕様のチップと、AND型と呼ばれる仕様のチップと、SAND(SuperAND)型と呼ばれる仕様のチップのいずれのチップとしても見かけ上動作できるように構成されており、いずれのチップとして動作するかはボンディングオプションすなわちホストインタフェース部101に接続されている所定のボンディングパッドB.Oの設定状態に応じて決定されるようになっている。仕様が異なると外部端子の種類や配置が異なる。
【0017】
特に制限されるものでないが、本実施例では記憶部110のフラッシュ・メモリアレイ121は複数のメモリセルがビット線とソース線との間に並列に接続されたAND型で構成されており、上記ボンディングオプションによる設定でインタフェース部110が「AND」に設定されているときは、インタフェース部110へ入力された外部からのコマンドをそのまま記憶部110へ供給する。
【0018】
インタフェース制御部110は、上記ボンディングオプションによる設定に応じて、インタフェース部110が「NAND」に設定されているときはNAND仕様のコマンドをAND仕様のコマンドに変換し記憶部へ供給するNAND/ANDインタフェース111と、インタフェース部110がSANDに設定されているときはSAND仕様のコマンドを解析して記憶部110と管理部130に対する制御信号を生成するSAND/ANDインタフェース112と、これらのインタフェース111または112を介した信号と管理部130からの信号の記憶部120への選択を行なうインタフェース選択回路113とから構成されている。
【0019】
記憶部120は、不揮発性記憶素子を含むフラッシュ・メモリアレイ部121と、該メモリアレイ部121に対するデータの書込み、消去に必要な電圧を発生する電源回路122と、フラッシュ・メモリアレイ部121に供給されるライトアドレスとライトデータおよびリードアドレスとフラッシュ・メモリアレイ部121から読み出されたリードデータを一時的に保持する2つのバッファメモリ123A,123Bと、不良メモリセルを含む領域を所定の単位(例えば128セクタからなるセグメント)で正常な領域と代替した場合にアドレスの変換を行なう救済回路124と、上記電源回路122に対する起動信号を生成したり上記ホストインタフェース部101を介して入力されたアドレスを救済回路124に供給したりリードデータやライトデータの変換等を行なうAND制御回路125とから構成されている。
【0020】
フラッシュ・メモリアレイ部121には、メモリアレイの他、アドレスをデコードしてワード線を選択するデコーダやビット線の信号を増幅するセンスアンプなどが含まれる。メモリアレイ121を構成するメモリセルは、フローティングゲートとコントロールゲートを有するMOSFETからなり、フローティングゲートに注入される電荷の量に応じてしきい値電圧が変化されることにより情報を記憶するようにされる。また、特に制限されるものでないが、バッファメモリ123A,123BはSRAMにより構成されている。救済回路124によるセグメント単位の代替を行なうか否かはウェハテストの結果に基づいて決定される。
【0021】
管理部130は、インタフェース制御部110と管理部130との間の信号のやり取りを行なう回路ブロック間インタフェース131と、チップ内部の動作を制御するCPUのようなプログラム制御方式のコントローラからなるシーケンサ132と、該シーケンサの動作を制御コードからなるマイクロプログラムのような形式で記憶するシーケンス用ROM133と、シーケンサが使用するレジスタ134と、アドレス変換テーブルを展開したりシーケンサ132の作業領域を提供するワークRAM135と、エラーのチェック及び訂正を行なうECC回路136と、記憶部120とワークRAM135またはECC回路136との間のデータ転送を制御するDMA転送制御回路137とから構成されている。
【0022】
本実施例のフラッシュメモリにおいては、メモリアレイ121は1本のワード線に接続された2112バイトからなるメモリセル群(以下、セクタと称する)を単位として書込みを行なうように構成されている。また、メモリアレイ121は、通常領域と該通常領域内の不良メモリセルを含むセクタを代替する予備領域とに分けて管理するようにされている。そして、この通常領域内のセクタと予備領域内のセクタとを対応付ける不良アドレス管理テーブルが管理部130によって生成されてフラッシュ・メモリアレイ121内に記憶される。また、不良アドレス管理テーブルは通常動作時はワークRAM135に展開されて参照される。外部から入力されたアドレスが不良メモリセルを含むセクタを指定している場合は、この不良アドレス管理テーブルを参照して予備領域内の代替セクタを指定するアドレスに変換され、この変換アドレスによってフラッシュ・メモリアレイ121がアクセスされる。これにより、不良セクタの代替が行なわれる。
【0023】
さらに、本実施例のフラッシュメモリにおいては、2種類の方式で代替処理が行なわれる。図2には、第1方式の代替処理の概念が示されている。この第1方式の代替処理では、フラッシュ・メモリアレイ121は、通常領域と該通常領域内の不良メモリセルを含むセクタを代替する予備領域とに分けられている。各セクタは、本来のデータ(ユーザデータ)を記憶するデータ領域と、当該セクタが不良メモリセルを含んでいるか否かを示すMGMコードやエラー訂正コード等を記憶するセクタ管理情報領域とに分けられている。また、通常領域は各々n個(例えばn=128)のセクタを単位とするN個(例えばN=64)のセグメントにより構成されている。予備領域も通常領域のN個のセグメントに対応してN個のセグメント(ただしセクタ数は可変)により構成され、通常領域内のセグメントは予備領域内のセグメントと1:1で対応されている。
【0024】
管理テーブルのセクタ管理情報は、代替元の不良セクタの位置を示す情報欄ADLと、代替セクタが良セクタまたは不良セクタであるかを示すフラグFLGとからなるエントリENTにより構成される。例えば図2の代替セクタNn+2が不良であった場合には、対応するエントリのフラグに「1」がセットされる。管理テーブルの各エントリには、不良セクタの位置を示す情報が各セグメントの先頭アドレスからのオフセット値OFSとして登録される。また、管理テーブルのセクタ管理情報の各エントリは、予備領域の各セクタと1:1で対応されている。
【0025】
管理部130は、書込み動作の結果、例えば図2の物理アドレス「2」のセクタが不良セクタであったときは、当該セクタが属する通常領域のセグメント0に対応する代替領域のセグメント0の代替セクタ(例えばNn+1)にデータを格納する。データが無事に格納できると、このセクタに対応する管理テーブルのエントリに、代替元のセクタのオフセット値「0002h」を格納するとともに、フラグを「0」にする。また、管理部130は、通常領域のセグメント0内のセクタをアクセスするときは、当該セクタのアドレスからオフセット値を計算し、管理テーブルのセグメント0のエントリを順に参照して不良セクタであるか否かを判定して、不良セクタとして登録されているときは当該エントリに対応する予備領域内のセクタをアクセスする。このとき、アドレス変換が行なわれる。
【0026】
この代替方式は、通常領域をセグメントに分けて管理するため不良アドレス管理テーブルに登録するセクタ位置情報として物理アドレスの代わりにオフセット値とすることができるためテーブルのデータ量すなわちワークRAM135の記憶容量を少なくすることができる。また、管理テーブルの検索時間も短縮することができる。
【0027】
図3には、第2方式の代替処理の概念が示されている。第1方式の代替処理ではフラッシュ・メモリアレイを通常領域と代替領域をそれぞれセグメントに分けているのに対し、第2の代替処理ではセグメントによる分割を行なわずに通常領域全体で生じた不良セクタを1つの代替領域内のいずれかのセクタで代替させるようにしている。この方式では、管理テーブルに登録する不良セクタ位置情報として物理アドレスを使用する必要があるため、テーブルのデータ量すなわちワークRAM135の記憶容量が多くなり、管理テーブルの検索時間も長くなるが、代替領域を効率良く利用できオフセット等の計算も不要であり、代替処理が簡単になるという利点がある。具体的には、第1の方式ではあるセグメントに不良セクタが後から集中して発生したような場合、予備領域のセグメントのサイズの変更が必要になるが、第2の方式ではそのような変更が不要である。
【0028】
なお、上記第1の代替処理と第2の代替処理のいずれかを選択して適用するのではなく、テストの段階で検出された不良セクタの代替処理には第1の代替処理方式を適用し、出荷後の通常使用状態で生じた不良セクタの代替処理には第2の代替処理方式を適用するようにしてもよい。また、図4に示すように、代替領域に最大代替セクタ数可変の代替セグメント領域と最大代替セクタ数固定の代替セグメント領域と予備の代替領域とを設け、テストの段階で検出された不良セクタの代替処理には最大代替セクタ数可変の代替セグメント領域を用いた第1の代替処理方式を適用し、出荷後の通常使用状態で生じる不良セクタの代替処理には途中の段階まで最大代替セクタ数固定の代替セグメント領域を用いた第1の代替処理方式を適用し、代替セグメントのセクタを全て使用し終えたセグメントが発生した場合には予備の代替領域を用いた第2の代替処理方式を適用するようにしてもよい。
【0029】
図5には、通常使用状態で生じる不良セクタの代替処理には途中の段階まで最大代替セクタ数固定の代替セグメント領域を用いた第1の代替処理方式を適用し、代替セグメントのセクタを全て使用し終えたセグメントが発生した場合には予備の代替領域を用いた第2の代替処理方式を適用したフラッシュメモリを用いたシステムにおける管理部の処理手順が示されている。ホストCPUのような外部のコントロールデバイス(以下、外部デバイスと称する)がフラッシュメモリにコマンドとアドレスを送信するとフラッシュメモリがこれを受信して先ず受信した論理アドレスに基づいて対応するセグメントとオフセットを計算する(ステップS1,S2)。
【0030】
次に、不良管理テーブルのセグメント管理情報を参照してアクセスしようとするセクタが不良セクタか否か判定する(ステップS3,S4)。不良セクタであったときはアドレス変換を行なってエントリに対応した代替セグメント内の代替セクタを指定する(ステップS5)。一方、ステップS4の判定で不良セクタでなかったときは、不良管理テーブルの予備代替領域管理情報を参照してアクセスしようとするセクタが不良セクタか否か判定する(ステップS6,S7)。そして、不良セクタであったときはアドレス変換を行なって予備代替領域内の対応する代替セクタを指定する(ステップS8)。
【0031】
一方、ステップS4及びステップS7の判定で不良セクタでなかったときは、そのまま通常領域の対応するセクタを指定する(ステップS9)。その後、指定されたセクタをアクセスしてデータの読出し又は書込みを行なう(ステップS10)。それから、受信コマンドがリードコマンドの時は読み出されたデータを、また受信コマンドがライトコマンドの時は書込み終了を示す信号もしくはステータスを外部デバイスへ送信して終了する(ステップS11)。
【0032】
図6には、通常領域と代替領域の各セクタの構成例が示されている。セクタは、例えば2096バイトのデータ領域と16バイトのセクタ管理領域とに分けられており、このうちデータ領域の構成が図6(A)に、またフラッシュメモリがANDまたはNAND仕様に設定された場合のセクタ管理領域の構成が図6(B)に示されている。図6(C)はフラッシュメモリがSAND仕様に設定された場合のセクタ管理領域の構成である。
【0033】
各セクタのデータ領域は、図6(A)に示されているように、各々512バイトの4つのページ領域Page0〜Page3と各ページ領域に対応されて管理情報を記憶する8バイトの管理領域と、16バイトのエラー訂正コードECC0,ECC1を記憶する領域とから構成される。この実施例のフラッシュメモリにはデータ領域変更コマンドが用意されており、読出しコマンドのみが入力されると512バイトのページ領域Page0〜Page3のデータがチップ外部に読み出される。また、データ領域変更コマンドが入力された後、読出しコマンドが入力されると512バイトのページ領域Page0〜Page3および次の8バイトのデータを含む520バイトのデータがチップ外部に読み出されるようにされている。コマンド用いてデータ単位を替える代わりに、複数のコマンドを用意したり、ボンディングオプションで設定されたモードに応じて読出しのデータ単位が替わるように構成しても良い。また、各ページ領域の後の管理領域には対応するページ領域のデータのECCコードを格納するために使用するようにしても良い。
【0034】
セクタ管理領域は、図6(B)に示されているように、当該セクタが良セクタか否かを示すMGMコードを記憶する領域と、セクタの識別コードを記憶する領域と、管理領域の履歴を管理する管理ヘッダを記憶する領域と、書換え回数平均化処理(WL処理)用の管理情報(配列、消去回数)を記憶する領域と、エラー訂正コードCECC0,CECC1,HECCを記憶する領域とから構成される。SAND仕様に設定された場合のセクタ管理領域は、図6(C)に示されているように、書換え回数平均化処理用の管理情報を記憶する領域がNANDやANDの場合よりも小さくされ、設定回数が記憶される一方、管理ヘッダを記憶する領域が大きくされている。
【0035】
図7および図8には、管理テーブル領域の各セクタの構成例が示されている。このうち図7はセクタの全体構成、図8(A)〜(D)は図7に示されている各領域の詳細構成を示す。管理テーブル領域の各セクタは、図7に示されているように、管理テーブルの領域を示す情報を記憶する領域設定領域と、セグメント単位で置き換えを行なう情報を記憶するスワップ管理領域と、代替セグメントの管理情報を記憶する領域と、予備代替領域の管理情報を記憶する領域と、書換え回数平均化処理用の管理情報を記憶する領域とに分けられている。図7には示されていないが、エラー訂正コードを記憶する領域も最後に設けられている。図8(A)はスワップ管理領域の構成、図8(B)は代替セグメント管理領域の構成、図8(C)は予備代替領域管理領域の構成、図8(D)は書換え回数平均化処理管理領域の構成をそれぞれ示す。
【0036】
次に、書換え回数平均化処理について説明する。
【0037】
従来のフラッシュメモリにおける書換え回数平均化処理は、あるセクタの書換え回数が所定の回数に達したならば書換え回数の最も少ないセクタを探してアドレスの入れ替えを行なうものである。これに対し、本実施例のフラッシュメモリにおける書換え回数平均化処理は、図9に示されているように、フラッシュ・メモリアレイを例えば1024セクタを1つのブロックとするブロック単位で、あるセクタの書換え回数が所定の回数に達したならばそのセクタのデータを隣接するブロックの同一のオフセット位置のセクタに格納するようにアドレスを順次1ブロックずつローテーションさせる処理とされている。
【0038】
具体的には、図9において、例えばブロック0のオフセット1のセクタの所定の書換え回数が、(A)→(B)のようにm(例えばm=1000)に達したならば、(C)に示されているように、ブロック0のオフセット1のセクタのデータBをブロック1のオフセット1のセクタに移して書き込み、ブロック1のオフセット1のセクタのデータGをブロック2のオフセット1のセクタに移して書き込み、ブロック2のオフセット1のセクタのデータJをブロック3のオフセット1のセクタに移して書き込むというように、ブロック間で順次シフトしてデータと書換え回数を格納する。また、上記データ書込み領域のシフトに連動して書換え回数平均化処理管理領域には、各オフセットごとにシフトした回数を書き込んで記憶するようにしている。
【0039】
あるセクタの書換え回数が所定の回数に達したならば書換え回数の最も少ないセクタを探してアドレスの入れ替えを行なうという従来の書換え回数平均化処理は、書換え回数の最も少ないセクタを見つけるまでにかなり時間がかかるとともにアドレス変換テーブルのサイズが大きくなるという欠点がある。これに対し、本実施例のシフト方式の書換え回数平均化処理によれば、データを移すセクタを決定する処理が簡単で短時間に終了するとともに、移転先のアドレスは演算で得ることができるためアドレス変換テーブルが不要になるという利点がある。シフト回数を記憶する書換え回数平均化処理管理領域には数ビットのシフト回数を記憶するだけでよいので、アドレスを記憶する場合よりも記憶領域をはるかに小さくすることができる。
【0040】
次に、ワークRAM135について説明する。
【0041】
本実施例のフラッシュメモリにおいては、電源投入時にメモリアレイ121の管理テーブル領域に格納されているテーブルデータをワークRAM135に読み出して展開し、電源オン中はテーブルデータの更新があってもメモリアレイ121の書換えはせず、電源遮断時にワークRAM135内のデータをメモリアレイ121の管理テーブル領域に格納するように構成されている。しかも、本実施例においては、図10に示されているように、メモリアレイに用意された2つの管理テーブル領域を交互に使用してテーブルデータを格納するとともに、各管理テーブル領域をさらに複数の領域(例えば8個)に分けて、順番に格納するように構成されている。なお、電源オン中にテーブルデータの更新があった場合にはワークRAM上の管理テーブルのデータを書き換えるとともにメモリアレイ121の対応する管理テーブル領域のテーブルデータを書き換えるようにしてもよい。
【0042】
上記のように、フラッシュ・メモリアレイ121の管理テーブル領域に格納されているテーブルデータをワークRAM135に読み出して展開することにより、アクセスアドレスが不良セクタのアドレスか否かの判定および代替セクタのアドレスの取得を短時間に行なうことができる。また、2つの管理テーブル領域に交互にテーブルデータを格納するように構成することにより、書換え中の電源遮断等によって一方の管理テーブル領域のデータがすべて失われても一世代の前の管理テーブルのデータを再現することができる。また、各管理テーブル領域を複数の領域に分けて順番に格納するように構成することにより、管理テーブル領域内での書換え平均化処理が実現され、書換え回数が書換え耐数以上になってデータの信頼性が低下するのを回避することができる。
【0043】
なお、本実施例の場合、テーブルデータは2096バイトの記憶容量を有する1セクタのデータ領域に収まるデータ量であるため、1つの管理テーブル格納領域は1つのセクタに対応され、管理テーブル領域0と1はそれぞれ1ブロックに対応して設けられている。また、図10において、管理ヘッダは各領域に格納されている管理テーブルの時間的な順番を示している。つまり、最も大きな管理ヘッダがついている領域に格納されている管理テーブルが最新のテーブルで、最も小さな管理ヘッダがついている領域に格納されている管理テーブルが最も古いテーブルであることを意味している。従って、シーケンサ132は、フラッシュ・メモリアレイ121内の管理テーブル領域のすべての管理ヘッダを参照してそのうち最も値が大きなテーブルデータを読み出せばそれが最新の管理テーブルとなる。
【0044】
図10には、管理テーブル領域(1)の管理ヘッダ「15」の領域に格納されている管理テーブルをワークRAM135に読み出してフラッシュ・メモリアレイへの書込みに応じて更新し、管理テーブル領域(0)の管理ヘッダ「0」の領域に格納する様子が示されている。ワークRAMに読み出した直後の管理テーブルの管理ヘッダには「15」が記述され、メインアドレス欄には当該テーブルが格納されていたセクタアドレス「2007h」が記述され、予備テーブルアドレス欄には一つの前に管理テーブルが格納されていたセクタアドレス「217Fh」(管理ヘッダ=「14」)が記述されている。
【0045】
そして、このRAM上にロードされた管理テーブルは更新されて、管理テーブルの管理ヘッダは「15」から「16」に変更され、メインテーブルアドレス欄には当該テーブルが次に格納される管理テーブル領域(0)の最も管理ヘッダの値が小さな領域(図10では管理ヘッダ=「0」)のセクタアドレス「2178h」が記述され、予備テーブルアドレス欄には読み出されたときに格納されていたセクタアドレス「2007h」(管理ヘッダ=「15」)が記述される。電源遮断時には、更新後のメインテーブルアドレス欄のセクタアドレスに従ってRAM上の管理テーブルデータが格納される。
【0046】
ここで、予備テーブルなる語を使用しているのは、本実施例の管理テーブル格納方式に従うと、何らかの原因で現在つまり最新の管理テーブルデータが失われたり損傷したりした場合には、1つの前の管理テーブルを読み出して利用することができるためである。1つ前の管理テーブルデータに異常があれば、さらにその1つ前の管理テーブルデータを利用することができる。これによって、システムにとって重要なデータを修復することができ、メモリを認識できなくなったりシステムが起動しなくなったりするような異常な事態が発生するのを極力回避することができるようになる。
【0047】
図11には、ワークRAM135の構成例が示されている。図11に示されているように、ワークRAM135は良セクタコード格納領域GCA、識別コード格納領域DCA、管理ヘッダ格納領域MHA、書換え回数平均化処理の設定格納領域RNA、不良管理テーブル格納領域IMA、書換え回数平均化処理管理テーブル格納領域RMA、シーケンサのワーク領域WKA、読出し時の管理テーブルが格納されていたアドレスを示すメインテーブルアドレス格納領域MAA、前回の読出し時の管理テーブルが格納されていたアドレスを示す予備テーブルアドレス格納領域RAAからなる。
【0048】
ワーク領域WKA以外のデータは電源投入時にフラッシュ・メモリアレイ121から読み出されてワークRAM135の各領域に展開される。動作中に不良セクタが新たに検出された場合における代替処理に伴う不良管理テーブルの更新や、書換え回数が所定の回数に達したセクタが発生した場合における書換え回数平均化処理に伴う管理テーブルの更新は、ワークRAM135上にて行なわれる。メインテーブルアドレスと予備テーブルアドレスの更新は、ワークRAM135のデータをフラッシュ・メモリアレイ121に格納する際に行なわれる。
【0049】
図12には、電源投入時にフラッシュ・メモリアレイ121からワークRAM135へ管理テーブル領域のデータを読み出す処理の手順が示されている。
【0050】
シーケンサ132は、先ずフラッシュ・メモリアレイの管理テーブル領域(0)を検索する(ステップS21)。そして、識別コードを調べて有効な管理テーブルデータがあるか否か判定する(ステップS22)。ここで、管理テーブル領域(0)内に有効な管理テーブルデータがないときは、ステップS33へ移行して管理テーブル領域(1)を検索して、識別コードを調べて有効な管理テーブルデータがあるか否か判定する(ステップS34)。ここで、管理テーブル領域(1)内に有効な管理テーブルデータがないときはエラーとして処理を終了する。
【0051】
一方、ステップS34で管理テーブル領域(1)内に有効な管理テーブルがあったときは、管理ヘッダを参照して管理テーブル領域(1)内で管理ヘッダが最大値であるテーブルのデータをワークRAMへロードし、当該テーブルのアドレスをメインテーブルアドレスとして登録する(ステップS35)。それから、当該テーブルデータを管理テーブル領域(0)に複写するテーブルコピー処理(ステップS40)へ移行する。一方の管理テーブル領域のデータが破壊されてしまったような場合に他方の管理テーブル領域のデータを複写することにより、両方の管理テーブル領域に有効なテーブルデータがなくなってしまう事態を回避するためである。
【0052】
上記ステップS22で、識別コードを調べて管理テーブル領域(0)内に有効な管理テーブルデータがあると判定したときは、ステップS23へ移行して管理テーブル領域(0)の全セクタから管理ヘッダを読み出し、管理ヘッダが最大値であるテーブルのデータをワークRAMへロードし、当該テーブルのアドレスをメインテーブルアドレスとして登録する(ステップS24)。次に、管理テーブル領域(1)を検索する(ステップS25)。そして、識別コードを調べて有効な管理テーブルデータがあるか否か判定する(ステップS26)。ここで、管理テーブル領域(1)内に有効な管理テーブルデータがないときは、ステップS40のテーブルコピー処理へ移行して管理テーブル領域(1)に管理テーブル領域(0)から読み出したデータをコピーする。
【0053】
ステップS26で管理テーブル領域(1)内に有効な管理テーブルがあると判定するとステップS27へ移行して、管理テーブル領域(1)の全セクタから管理ヘッダを読み出し、管理テーブル領域(1)の管理ヘッダのうち最大値のものと管理テーブル領域(0)の管理ヘッダのうち最大値のものとを比較する(ステップS28)。そして、管理テーブル領域(1)の管理ヘッダの最大値の方が大きい時はステップS29からステップS30へ移行して管理テーブル領域(1)内の管理ヘッダが最大値であるセクタのテーブルデータをワークRAMへロードし、当該テーブルのアドレスをメインテーブルアドレスとして登録するとともに、管理テーブル領域(0)内の管理ヘッダが最大値であるセクタのテーブルのアドレスを予備テーブルアドレスとして登録する(ステップS31)。一方、ステップS29で管理テーブル領域(0)の管理ヘッダの最大値の方が管理テーブル領域(1)の管理ヘッダの最大値よりも大きいと判定したときは、ステップS32へ移行して管理テーブル領域(1)内の管理ヘッダが最大値であるセクタのテーブルのアドレスを予備テーブルアドレスとして登録する。
【0054】
図13には、図12のフローチャートのステップS40におけるテーブルコピー処理の詳細な手順が示されている。
【0055】
このテーブルコピー処理では、先ず発見したテーブルが管理テーブル領域(0)にあるか判定する(ステップS41)。そして、発見したテーブルが管理テーブル領域(0)にあるときはステップS42で領域設定情報の管理テーブル領域(1)の先頭アドレスをフラッシュ・メモリアレイ内のテーブル格納先頭アドレスとする。また、発見したテーブルが管理テーブル領域(1)にあるときはステップS43で領域設定情報の管理テーブル領域(0)の先頭アドレスをフラッシュ・メモリアレイ内のテーブル格納先頭アドレスとする。それから、既にワークRAMにロードされているテーブルデータを上記格納先頭アドレスからフラッシュ・メモリアレイに書き込む(ステップS44)。
【0056】
そして、正常に書込みが終了したか否か判定し、正常に書込みが終了したときは当該先頭アドレスを予備テーブルアドレスとしてワークRAMの予備テーブルアドレス欄に登録する(ステップS45,S46)。また、ステップS44で正常に書込みが終了しなかったときは、ステップS47で同一管理テーブル領域内における次のセクタをテーブルデータを格納するアドレスとし、ステップS44へ戻ってワークRAMにロードされているテーブルデータを書き込む。そして、管理テーブル領域内の全セクタに対して書込みをトライしても正常にテーブルデータを書き込めなかったときは書込みエラーとして処理を終了する(ステップS48)。
【0057】
図14には、ワークRAM135からフラッシュ・メモリアレイ121へ管理テーブル領域のデータを格納する処理の手順が示されている。
【0058】
このテーブル格納処理では、先ずワークRAM上のテーブル管理ヘッダをインクリメント(+1)する(ステップS51)。次に、予備テーブルアドレスの次のアドレスをフラッシュ・メモリアレイ内のテーブル格納先アドレスとする(ステップS52)。それから、ワークRAM上にあるテーブルデータをフラッシュ・メモリアレイの上記格納先アドレスに書き込む(ステップS53)。
【0059】
そして、正常に書込みが終了したか否か判定し、正常に書込みが終了したときはテーブルアドレスを入れ替える。つまり、メインテーブルアドレスを予備テーブルアドレスとしてワークRAMの予備テーブルアドレス欄に登録し、フラッシュ・メモリアレイの最新テーブルアドレスをメインテーブルアドレスとしてワークRAMの予備テーブルアドレス欄に登録する(ステップS54,S55)。また、ステップS54で正常に書込みが終了しなかったときは、ステップS56で同一管理テーブル領域内における次のセクタをテーブルデータを格納するアドレスとし、ステップS53へ戻ってワークRAMに記憶されているテーブルデータをフラッシュ・メモリアレイに書き込む。そして、管理テーブル領域内の全セクタに対して書込みをトライしても正常にテーブルデータを書き込めなかったときは書込みエラーとして処理を終了する(ステップS57)。なお、電源遮断時に上記テーブル格納処理を実行するときはステップS55のテーブルアドレスの入替えは不要である。
【0060】
図15には、本実施例のフラッシュメモリにおけるアドレス変換処理の手順が示されている。該アドレス変換処理は、アクセスアドレスを伴うデータの読出し、書込みまたは消去コマンドが入力されると実行される。
【0061】
アドレス変換処理では、先ず書換え回数平均化処理の管理情報をワークRAMから読み出ししてアクセスアドレスに対応するブロックシフト数を選択する(ステップS61)。次に、選択したブロックシフト数に従って前記アクセスアドレスを変換する(ステップS62)。それから、変換後のアドレスに基づいてオフセット値を計算しそのオフセット値を用いて不良管理テーブル上の対応セグメントの管理情報を選択する(ステップS63)。そして、管理テーブルを検索して当該アドレスのセクタが不良セクタとして登録されているか判定する(ステップS64)。ここで、アクセスしようとするセクタが不良セクタとして登録されていれば、対応する代替セグメントの代替セクタアドレスを得る代替アドレス変換を行なう(ステップS65)。一方、ステップS64でアクセスしようとするセクタが不良セクタとして登録されていないときは、代替アドレス変換をせずに最終アドレスとする(ステップS66)。
【0062】
次に、本実施例のフラッシュメモリの電源投入時の動作について、図16を用いて説明する。この実施例のフラッシュメモリには、特に制限されないが、電源電圧のレベルを検出する電源電圧検出回路がホストインタフェース部101に設けられており、この電源電圧検出回路による電源電圧の立ち上がり検出信号がインタフェース制御部110に供給され、内部回路が起動される(ステップS71)。インタフェース制御部110が立ち上がり検出信号を受けると管理部130に対して起動コマンドを発行する(ステップS72)。
【0063】
すると、管理部130では、シーケンサ132が初期化され、フラッシュ部120からワークRAM135へ管理テーブルデータをロードする処理を実行する(ステップS73,S74)。管理テーブルデータのロードが終了すると、管理部130からインタフェース制御部110に対して終了信号が送られ、インタフェース制御部110は外部デバイスから入力されているPRE(プリロードイネーブル)信号が有効レベル(例えばハイレベル)にアサートされているか否かを判定し、PRE信号がアサートされていないときは外部からのコマンド入力を待つスタンバイ状態に移行する(ステップS75,S76)。
【0064】
一方、PRE信号がアサートされているときはフラッシュ・メモリアレイ121のアドレス0番地のセクタのデータをバッファメモリ123Aを介して外部へ出力可能な自動読出し状態へ移行する(ステップS77)。なお、ステップS76のスタンバイ状態または自動読出し状態に移行すると、所定の外部端子から出力される本動作のレディまたはビジーを示す信号/MRESがレディ状態を示すハイレベル(もしくはロウレベル)に変化されるように構成されている。
【0065】
図17には、パワーオン時に自動読出しを行なう場合のタイミングが示されている。この自動読み出しは、電源投入時に外部デバイスがPRE信号をハイレベルにアサートしておくことにより実行される。
【0066】
電源投入時にPRE信号がハイレベルにアサートされた状態でフラッシュメモリが起動されると、管理部130へ起動コマンドが送られて管理部が初期化された後、管理テーブルのロードが行なわれ、ロード完了後にインタフェース制御部110から管理部130に対して自動読出しコマンドと0番地を示すアドレスが供給される。すると、シーケンサ132はこの管理テーブルを参照して必要があるときはアドレス変換を行なって変換後のアドレスとリードコマンドとをフラッシュ部120へ供給する。これによって、フラッシュ・メモリアレイ121の0番地のセクタのデータが読み出されてバッファメモリ123Aに格納される。
【0067】
次に、シーケンサ132は読み出されたデータをECC回路136へ送ってエラーチェックと訂正を行なわせ、ECC処理が終了すると管理部130からインタフェース制御部110に対して転送可能を示す信号が送られ、インタフェース制御部110はホストインタフェース部101から出力される本動作のレディまたはビジーを示す信号/MRESをハイレベルに変化させる。外部デバイスが、この信号/MRESの変化を検出してリードクロックRCKをフラッシュメモリに入力すると、上記バッファメモリ113Aに保持されているデータがホストインタフェース部101を介して外部デバイスへ転送される。
【0068】
図18には、書込み処理で書込み異常が発生した場合の手順が示されている。なお、この明細書においては、1セクタのデータ領域の全メモリセルに対してデータを書き込む場合を書込みと称し、1セクタのデータ領域の一部のメモリセルに対してデータを書き込む場合を書換えと称し、書込みと書換えを区別して扱う。
【0069】
外部デバイスからの書込みコマンドに応じて書込み動作(ステップS81)が終了し、ベリファイ動作によって書込み異常が検出されると記憶部120から管理部130に対して異常終了を知らせる信号が送られる(ステップS82)。すると、管理部は、当該書込みアドレスを不良アドレスとしてワークRAM135内の管理テーブルに登録する(ステップS83)。そして、代替領域の正常セクタと置き換えるアドレス変換を行ない、変換後のアドレスを書込みアドレスとして、記憶部120へ書込みコマンドとアドレスを送る(ステップS84)。すると、記憶部では、代替されたセクタに対して書込みを実行する(ステップS85)。そして、書込みが正常に終了すると記憶部から管理部に対して正常終了を知らせる信号が送られる。
【0070】
次に、管理部は、消去エラーフラグが立っているかチェックし、フラグが立っている時はワークRAMにある管理テーブルをフラッシュ・メモリアレイに格納する(ステップS86,S87)。消去エラーフラグが立っていないときまたは管理テーブルをフラッシュ・メモリアレイに格納後、管理テーブルの書換えを行なったセクタの書換え回数をチェックして所定回数に達していないときはインタフェース制御部に終了信号を送り、インタフェース制御部はホストインタフェース部を制御してチップ外部へ終了信号を出力する(ステップS88)。書換え回数が所定回数以上になっていたときは、書換え回数平均化処理によってブロックシフトを行なってからインタフェース制御部に終了信号を送り、インタフェース制御部はホストインタフェース部を制御してチップ外部へ終了信号を出力する(ステップS89)。
【0071】
なお、消去フラグに関しては、ステップS81の書込み動作で先ず書込み対象のセクタのデータ消去を行なうので、そのデータ消去の際に異常が発生すると消去フラグが立てられるとともに代替処理が行なわれてワークRAM内の管理テーブルが更新される。そこで、この実施例では、書込み終了後に消去エラーフラグが立っているかチェックし、消去フラグが立っている時はワークRAMにある管理テーブルをフラッシュ・メモリアレイに格納するようにしている。
【0072】
図19には、本実施例のフラッシュメモリにおけるデータ消去処理で消去異常が発生した場合の手順が示されている。なお、この消去処理には、外部デバイスからの消去コマンドと書込みコマンドによる書込み前の一旦消去が含まれる。
【0073】
外部デバイスからの消去コマンドまたは書込みコマンドに応じて指定されたセクタのデータ消去動作(ステップS91)が終了し、ベリファイ動作によって消去異常が検出されると記憶部120から管理部130に対して異常終了を知らせる信号が送られる(ステップS92)。すると、管理部は、当該消去アドレスまたは書込みアドレスを不良アドレスとしてワークRAM内の管理テーブルに登録する(ステップS93)。そして、代替領域の正常セクタと置き換えるアドレス変換を行ない、変換後のアドレスを消去アドレスとして、記憶部へ消去コマンドとアドレスを送る(ステップS94)。すると、記憶部では、代替されたセクタに対して消去を実行する(ステップS95)。そして、消去が正常に終了すると記憶部から管理部に対して正常終了を知らせる信号が送られる。特に制限されないが、管理部はステップS92で異常終了を知らせる信号が送られてきた場合、当該消去動作を行ったセクタのメモリセルのしきい値電圧を高くする処理を行い、しきい値電圧が0v以下(デプリート状態)になっているメモリセルのしきい値電圧を0v以上にするようにしても良い。
【0074】
次に、管理部は、消去エラーフラグを立ててから、インタフェース制御部に終了信号を送り、インタフェース制御部はホストインタフェース部を制御してチップ外部へ終了信号を出力する(ステップS96)。なお、書込みコマンドに応じて消去を行なったときは、終了信号を出力せずに図18の書込み処理へ移行する。
【0075】
図20には、本実施例のフラッシュメモリにおける通常のデータ読出し動作の流れが示されている。この通常データ読出しは、外部デバイスからフラッシュメモリに対して読出しコマンドと読出しアドレスが入力されることにより開始される。読出しアドレスはセクタアドレスSAとセクタ内の任意のバイトデータを指定するカラムアドレスCAとからなる。
【0076】
入力された読出しコマンドはインタフェース制御部を制御して管理部へ送られ、管理部では管理テーブルを用いてアドレス変換を行なう。このアドレス変換には書換え回数平均化処理でブロックシフトされたアドレスと不良アドレス代替処理で代替されたアドレスとが含まれる。アドレス変換後、管理部から記憶部に対して読出しコマンドと変換後のアドレスSA’,CAが送られる。すると、記憶部ではフラッシュ・メモリアレイ121の指定されたセクタのデータとその次のセクタのデータが読み出されてバッファメモリ123Aと123Bにそれぞれ保持される。
【0077】
バッファメモリへのデータの読出しが完了すると完了を知らせる信号が記憶部から管理部へ送られ、この信号に応じて管理部はDMA制御回路137とECC回路136を制御して先ずバッファメモリ123Aのデータに関してエラー検出訂正処理を行ない、該ECC処理が終了するとインタフェース制御部に対して転送可能を知らせ、インタフェース制御部はレディ/ビジーを示す信号/RBを用いてレディ状態になったことを外部デバイスへ知らせる。
【0078】
すると、外部デバイスからのクロックの入力に応じてバッファメモリ123A内のデータがチップ外部へ出力され、外部デバイスへ転送される。また、上記データ転送と並行してバッファメモリ123Bのデータに関してエラー検出訂正処理が実行される。このECC処理が終了するとインタフェース制御部に対してバッファメモリ123Bのデータの転送可能が知らされ、バッファメモリ123Aのデータの転送完了が終了すると、外部デバイスからの要求に応じてバッファメモリ123Bのデータの転送が開始される。
【0079】
図21には、本実施例のフラッシュメモリにおけるシーケンシャル読出し動作の流れが示されている。このシーケンシャル読出しは、外部デバイスからフラッシュメモリに対してシーケンシャル読出しコマンドと読出しアドレスが入力されることにより開始され、外部デバイスがクロックを入力し続ける限り読出しアドレス以降のすべてのデータを読み出せるようにした機能である。シーケンシャル読出しは図20の通常読出しと類似した手順で行なわれる。
【0080】
図20の通常読出しとの違いは、図20の通常読出しでは最初に第1のバッファメモリ123Aと第2のバッファメモリ123Bにデータを読み出して一方のバッファメモリ123Aのデータを外部へ転送している間に他方のバッファメモリ123Bのデータに対するエラー訂正処理を行なうのに対し、シーケンシャル読出しでは、一方のバッファメモリ123Aへのデータ読出しとエラー訂正を行ない外部デバイスへ転送可能を知らせている間に他方のバッファメモリ123Bへのデータ読出しを行なうとともに、一方のバッファメモリ123Aのデータを外部へ転送している間に他方のバッファメモリ123Bのデータに対するエラー訂正処理を行なう点と、シーケンシャル読出しでは、一方のバッファメモリのデータ転送終了後にインタフェース制御部から管理部に対してその都度シーケンシャル読出しコマンドを送る点にある。
【0081】
図22には、本実施例のフラッシュメモリにおけるデータの書換え動作の流れが示されている。データの書換えは、外部デバイスからフラッシュメモリに対して書換えコマンドと書換えアドレスおよび書換えデータが入力されることにより開始される。書込みアドレスはセクタを指定するセクタアドレスSAのみであるが、書換えアドレスはセクタアドレスSAとセクタ内の任意のバイトデータを指定するカラムアドレスCAとからなる。入力された書換えデータは第1のバッファメモリ123Aに一旦格納される。インタフェース制御部は、書換えコマンドを受けると管理部に対して読出しコマンドを発行するとともに、入力される書換えデータのバイト数を計数して管理部に対して転送データサイズを知らせる。
【0082】
すると、管理部は管理テーブルを用いてアドレス変換を行ない、読出しコマンドと変換後のアドレスSA’,CAを記憶部へ送る。記憶部ではフラッシュ・メモリアレイ121の指定されたセクタのデータ領域のデータ(2096バイト)とセクタ管理領域の管理データ(16バイト)が読み出されて第2のバッファメモリ123Bに保持される。バッファメモリ123Bへのデータの読出しが完了すると完了を知らせる信号が記憶部から管理部へ送られ、この信号に応じて管理部はDMA制御回路137とECC回路136を制御してバッファメモリ123Bのデータに関してエラー検出訂正処理を行なう。
【0083】
そして、該ECC処理が終了すると管理部はDMA制御回路137を制御して第1のバッファメモリ123Aに保持されている書換えデータを第2のバッファメモリ123Bへ転送してデータを合成する。具体的には、フラッシュ・メモリアレイから読み出された1セクタの21162バイトのデータのうち外部デバイスがカラムアドレスCAで指定した位置のデータを、第1のバッファメモリ123Aに保持されている書換えデータに置き換える。それから、管理部はDMA制御回路137とECC回路136を制御して、書換え後の第2のバッファメモリ123B内のデータに対してECCコードの生成を行なう。
【0084】
その後、記憶部に対して消去コマンドとアドレスを送って書換え対象のセクタのデータ消去を行なわせる。消去が終了すると記憶部から管理部へ終了信号が出力されるので、管理部は記憶部に対して書込みコマンドとアドレスを送って書換え対象のセクタにバッファメモリ123Bのデータを書き込ませる。書込みが終了すると記憶部から管理部へ終了信号が出力されるので、管理部はインタフェース制御部に終了信号を送り、インタフェース制御部はホストインタフェース部を制御して外部デバイスへ終了信号を出力する。
【0085】
図23には、本実施例のフラッシュメモリにおけるデータの消去動作の流れが示されている。データの消去は、外部デバイスからフラッシュメモリに対して消去コマンドと消去アドレスが入力されることにより開始される。なお、この実施例では、消去はセクタ単位で行なわれる。
【0086】
消去コマンドが入力されると、インタフェース制御部110から第1のバッファメモリ123Aに対してクリア信号を送って全データをクリアさせるとともに、管理部12に対して読出しコマンドとアドレスを送る。このアドレスは消去対象のセクタを指定するアドレスである。読出しコマンドを送るのは、図6に示されているように、各セクタには本来のデータを記憶するデータ領域の他にセクタ管理情報を記憶する管理領域が設けられており、セクタ単位で消去を実行すると、この管理情報も消去されてしまうので、予めバッファメモリに退避させておくためである。
【0087】
読出しコマンドを受けると管理部は管理テーブルを用いてアドレス変換を行ない、読出しコマンドと変換後のアドレスSA’,CAを記憶部へ送る。記憶部ではフラッシュ・メモリアレイ121の指定されたセクタのデータ領域のデータ(2096バイト)とセクタ管理領域の管理データ(16バイト)が読み出されて第2のバッファメモリ123Bに保持される。バッファメモリ123Bへのデータの読出しが完了すると完了を知らせる信号が記憶部から管理部へ送られ、この信号に応じて管理部はDMA制御回路137とECC回路136を制御してバッファメモリ123Bのデータに関してエラー検出訂正処理を行なう。
【0088】
そして、該ECC処理が終了すると管理部はDMA制御回路137を制御して第1のバッファメモリ123Aに保持されているクリアデータ(メモリセルの消去状態に対応したデータ)を第2のバッファメモリ123Bへ転送してデータを合成する。具体的には、フラッシュ・メモリアレイから読み出された1セクタの21162バイトのデータのうちセクタ管理領域に記憶されている16バイトのセクタ管理情報を除く2096バイトのデータを、第1のバッファメモリ123Aに保持されているクリアデータに置き換える。それから、管理部はDMA制御回路137とECC回路136を制御して、書換え後の第2のバッファメモリ123B内のデータに対してECCコードの生成を行なう。
【0089】
その後、記憶部に対して消去コマンドとアドレスを送って消去対象のセクタのデータ消去を行なわせる。消去が終了すると記憶部から管理部へ終了信号が出力されるので、管理部は記憶部に対して書込みコマンドとアドレスを送って書換え対象のセクタにバッファメモリ123Bのデータを書き込ませる。これによって、指定されたセクタにはECCコードと第2のバッファメモリ123Bに退避されていたセクタ管理情報が書き込まれる。書込みが終了すると記憶部から管理部へ終了信号が出力されるので、管理部はインタフェース制御部に終了信号を送り、インタフェース制御部はホストインタフェース部を制御して外部デバイスへ終了信号を出力する。
【0090】
図24には、本実施例のフラッシュメモリにおけるディープスタンバイモードへの移行とディープスタンバイモードから通常動作モードへの復帰動作の流れが示されている。
【0091】
本実施例のフラッシュメモリには、記憶部120の電源回路122内の昇圧用チャージポンプを完全にオフ状態にさせるディープスタンバイモードと、チップを該ディープスタンバイモードへ移行させるためのコマンドとディープスタンバイモードから復帰させるためのコマンドが用意されている。外部デバイスからフラッシュメモリに対してディープスタンバイ移行コマンドが入力されると、インタフェース制御部から記憶部へディープスタンバイモードへの移行を指令するディープスタンバイ信号がアサートされる。
【0092】
すると、記憶部は電源回路122内の昇圧用チャージポンプへ供給されるクロックを遮断もしくはクロック生成回路の動作を停止させてチャージポンプをオフ状態にさせる。これにより、フラッシュメモリは、消費電力が非常に少ない状態にされる。また、外部デバイスからフラッシュメモリに対してディープスタンバイからの復帰コマンドが入力されると、インタフェース制御部から記憶部へ供給されるディープスタンバイ信号がネゲートされる。すると、記憶部は電源回路122内の昇圧用チャージポンプへのクロックの供給を再開もしくはクロック生成回路を起動させてチャージポンプをオン状態にさせる。これにより、メモリアレイへの書込みや消去に必要な高電圧が発生されるようになる。
【0093】
図25には、本実施例のフラッシュメモリにおけるいわゆるホットリスタートと呼ばれる電源投入時に行なわれる動作(図17参照)と類似の動作の流れが示されている。
【0094】
図17のパワーオン時の自動読出しでは、管理テーブルのロード完了後にインタフェース制御部110から管理部130に対して読出しコマンドとメモリアレイ121の0番地を示すアドレスが供給されてメモリアレイの先頭番地のデータが読み出されて外部へ出力されるのに対し、図25のホットリスタートでは、フラッシュメモリの所定の外部端子に入力されるPRE信号がロウレベルに変化されると、本動作のレディまたはビジーを示す信号/MRESをビジー状態を示すロウレベルに変化させた後、管理テーブルをロードせずに管理部に対してリードコマンドとメモリアレイの0番地を示すアドレスが送られてメモリアレイの先頭番地のデータが読み出されて外部へ出力される。管理テーブルをロードしないのは、ホットリスタートは電源投入中に行なわれる動作であり、電源投入時にロードされた管理テーブルがすでにワークRAMに保持されているためである。
【0095】
PRE信号はホストCPUのような外部デバイスがロウレベルに変化させるようにしてもよいが、図26に示すように、フラッシュメモリ100のPRE信号が入力される外部端子にリセットスイッチR−SWを接続し、フラッシュメモリ100から出力されるレディまたはビジーを示す信号/MRESをホストCPU200のリセット端子に入力させるようにシステムを構成するとともに、フラッシュメモリのメモリアレイの先頭(0番地)にシステムの起動時に最初に実行するプログラムを格納しておくことにより、フラッシュメモリをブートデバイスとして機能させることができる。
【0096】
例えばリセットスイッチR−SWを図26のように電源電圧端子Vcc側に設定した状態で図示しないパワースイッチをオンさせてシステムの電源を立ち上げると、図27(A)のように電源電圧Vccの上昇とともにPRE信号がハイレベルに立ち上がる。そのため、このときフラッシュメモリは、図17の動作に従ってメモリアレイの0番地のデータを自動的に読み出し、チップ外部へ出力可能な状態になるとレディまたはビジーを示す信号/MRESをレディ状態を示すハイレベルに変化させる。図26のシステムでは、この信号がホストCPUのリセット端子に入力されるため、CPUのリセットが解除されてCPUがフラッシュメモリからデータを読み出すブート動作を開始することができる。
【0097】
また、電源オン中に、リセットスイッチR−SWをグランド側に切り換えると、図27(B)のようにPRE信号がロウレベルに立ち下がるため、このときフラッシュメモリは、図25のホットリスタートの動作に従って先ず信号/MRESをロウレベルに変化させてから、メモリアレイの0番地のデータを自動的に読み出する。そして、読み出したチップ外部へ出力可能な状態になると、信号/MRESをハイレベルに変化させる。図26のシステムでは、この信号がホストCPUのリセット端子に入力されるため、CPUのリセットが解除されてCPUがフラッシュメモリからデータを読み出すブート動作を開始することができる。
【0098】
次に、本実施例のフラッシュメモリに設けられている他の機能について説明する。
【0099】
本実施例のフラッシュメモリは、複数のテスト用コマンドを備えている。図28には、そのうち2つのテスト用コマンドが入力されたときの動作の手順が示されている。第1のテスト用コマンドが入力されると、図28(A)のように、管理部130がフラッシュ・メモリアレイ121内の管理テーブルの予備代替領域管理情報(図7(C))を参照してエントリ数を加算することにより代替セクタの合計数を算出(ステップS101)し、代替領域のうち使用済みの代替セクタ数をフラッシュ・メモリアレイの通常領域に書き込む(ステップS102)。従って、製品選別の際にこの使用済みの代替セクタ数を読み出すことにより、未使用の代替セクタ数が所定数以下の製品は不良品と判定することにより、通常使用状態で発生する不良セクタを代替できる数をある値以上保証して製品の信頼性を向上させることができる。
【0100】
また、第2のテスト用コマンドが入力されると、図28(B)のように、管理部130がフラッシュ・メモリアレイ121内の管理テーブルの予備代替領域管理情報(図7(C))を参照してエントリ数を加算することにより代替セクタの合計数を算出する(ステップS111)とともに、第1のテスト用コマンドの入力でメモリアレイに書き込まれた使用済みの代替セクタ数を読み出して(ステップS112)、使用済みの代替セクタ数が増加したか否か判定(ステップS113)し、増加した時はフラグをセット(ステップS114)し、増加していないときはフラグをセットせずに終了する。このフラグは、例えばエージング試験を行なう場合に、試験前に第1のテスト用コマンドを入力し、試験後に第2のテスト用コマンドを入力してフラグを確定させ、その後の選別の際にフラグを参照しフラグが立っている製品は不良品と判定することにより、短時間で不良セクタが増加するような製品が良品として出荷されるのを防止することができる。
【0101】
なお、図28(A)のステップS102で、使用済みの代替セクタ数をフラッシュ・メモリアレイに書き込む代わりにワークRAM135に書き込むようにしてもよい。また、図28(B)のステップS114でセットするフラグも、フラッシュ・メモリアレイ121に設けても良いし、ワークRAM135に設けても良い。また、図28(B)のステップS113で行なう使用済みの代替セクタ数が増加したか否かの判定は、単に増加したか否かの判定でもよいが、所定個数以上増加したか否かを判定するようにしても良い。
【0102】
次に、本発明のフラッシュメモリの他の実施例を説明する。この実施例は、電源立上がり時にフラッシュ・メモリアレイからワークRAMにロードする管理テーブルが正常に読み出せなかった場合にはメモリアレイへのアクセスを拒否するようにしたものである。これを実現するための手段としては、例えば管理テーブルが正常に読み出せたか否かを判定して正常に読み出せたときにフラグをセットする処理と、図29に示されているように、フラッシュ・メモリアレイへのアクセスコマンドが入力(ステップS121)されたときに管理テーブルロード済みフラグを参照(ステップS122)して正常にロードされているか判定(ステップS123)し、正常にロードされている場合にのみフラッシュ・メモリアレイへのアクセスを許可(ステップS124)し、正常にロードされていない場合にはフラッシュ・メモリアレイへのアクセスを拒否してテーブルエラーを示す信号を出力(ステップS125)またはステータスレジスタの所定のビットをセットする処理とを管理部が実行できるように構成する方法が考えられる。
【0103】
以上本発明者によってなされた発明を実施例に基づき具体的に説明したが、本発明は上記実施例に限定されるものではなく、その要旨を逸脱しない範囲で種々変更可能であることはいうまでもない。例えば、実施例においては、1つの記憶素子(メモリセル)に1ビットのデータを記憶可能な2値のフラッシュメモリについて説明したが、本発明は1つの記憶素子に2ビット以上のデータを記憶する多値のフラッシュメモリに対しても適用することができる。
【0104】
さらに、前記実施例においては、メモリアレイの具体的な構成については説明を省略したが、本発明は複数の記憶素子がビット線とソース線との間に並列に接続されたいわゆるAND型もしくはNOR型のフラッシュメモリはもちろん、記憶素子が直列に接続されたいわゆるNAND型のフラッシュメモリに対しても適用することができる。更にはフローティングゲートとコントロールゲートを有する2層ゲート型のメモリセルに限られず、コントロールゲートとチャネルの間に窒化膜からなる電荷蓄積層を有するMONOS型のメモリセルであっても良い。この場合電荷蓄積層全体に電荷を蓄積し1ビット情報を格納するものであっても、電荷蓄積層の部分的に電荷を蓄積し2ビット以上の情報を格納するものであっても良い。
【0105】
以上の説明では主として本発明者によってなされた発明をその背景となった利用分野であるフラッシュメモリに適用した場合について説明したが、この発明はそれに限定されるものでなく、本発明は、電圧を印加してしきい値電圧を変化させて情報の記憶を行なう不揮発性記憶素子を有する半導体メモリに広く利用することができる。
【0106】
【発明の効果】
本願において開示される発明のうち代表的なものによって得られる効果を簡単に説明すれば下記のとおりである。
【0107】
すなわち、本発明に従うと、不揮発性半導体記憶装置が代替処理機能やエラー訂正機能を備えているため外部のコントローラによって代替処理やエラー訂正処理を行なう必要がなくなり、システム開発者の負担が軽減されるとともに、アドレス変換情報が複数個記憶されているため、いずれかのアドレス変換情報が失われても他のアドレス変換情報を代用することでシステムが動作しなくなるような異常な状態を回避できるようになる。
【0108】
また、複数のアドレス変換情報が2つ以上の領域に順繰りに記憶されるため、アドレス変換情報を記憶するいずれかの領域のデータが書込みまたは消去動作によって失われても他の領域に記憶されているアドレス変換情報は失われることがなく、システムが動作しなくなるような異常な状態を確実に回避できるようになる。
【図面の簡単な説明】
【図1】本発明を適用して有効な不揮発性半導体記憶装置の一例としてのフラッシュメモリの実施例を示すブロック図である。
【図2】実施例のフラッシュメモリにおける第1方式の代替処理の概念を示す説明図である。
【図3】実施例のフラッシュメモリにおける第2方式の代替処理の概念を示す説明図である。
【図4】実施例のフラッシュメモリの全体の構成を示す説明図である。
【図5】実施例のフラッシュメモリにおける管理部の処理手順を示すフローチャートである。
【図6】実施例のフラッシュメモリにおける通常領域と代替領域の各セクタの構成例を示すもので、(A)はデータ領域の構成、(B)はフラッシュメモリがANDまたはNAND仕様に設定された場合のセクタ管理領域の構成、(C)はフラッシュメモリがSAND仕様に設定された場合のセクタ管理領域の構成をそれぞれ示す説明図である。
【図7】実施例のフラッシュメモリにおける管理テーブルの概略構成例を示す説明図である。
【図8】実施例のフラッシュメモリにおける管理テーブルを構成する各領域の詳細な構成例を示す説明図である。
【図9】実施例のフラッシュメモリにおける書換え回数平均化処理の概念を示す説明図である。
【図10】実施例のフラッシュメモリにおける管理テーブルの履歴管理の仕方を示す説明図である。
【図11】実施例のフラッシュメモリにおけるワークRAMの構成例を示す説明図である。
【図12】実施例のフラッシュメモリにおける電源投入時におけるフラッシュ・メモリアレイからワークRAMへ管理テーブル領域のデータを読み出す処理の手順を示すフローチャートである。
【図13】図12のフローチャートにおけるテーブルコピー処理の詳細な手順を示すフローチャートである。
【図14】実施例のフラッシュメモリにおけるワークRAMからフラッシュ・メモリアレイへ管理テーブル領域のデータを格納する処理の手順を示すフローチャートである。
【図15】本実施例のフラッシュメモリにおけるアドレス変換処理の手順を示すフローチャートである。
【図16】本実施例のフラッシュメモリにおける電源投入時の処理の手順を示すフローチャートである。
【図17】パワーオン時に自動読出しを行なう場合のタイミングを示すタイミングチャートである。
【図18】本実施例のフラッシュメモリにおける書込み処理で書込み異常が発生した場合の手順を示すフローチャートである。
【図19】本実施例のフラッシュメモリにおけるデータ消去処理で消去異常が発生した場合の手順を示すフローチャートである。
【図20】本実施例のフラッシュメモリにおける通常のデータ読出し動作の流れを示すタイミングチャートである。
【図21】本実施例のフラッシュメモリにおけるシーケンシャル読出し動作の流れを示すタイミングチャートである。
【図22】本実施例のフラッシュメモリにおけるデータの書換え動作の流れを示すタイミングチャートである。
【図23】本実施例のフラッシュメモリにおけるデータの消去動作の流れを示すタイミングチャートである。
【図24】本実施例のフラッシュメモリにおけるディープスタンバイモードへの移行とディープスタンバイモードから通常動作モードへの復帰動作の流れを示すタイミングチャートである。
【図25】本実施例のフラッシュメモリにおけるホットリスタートと呼ばれる電源投入時に行なわれる動作の流れを示すタイミングチャートである。
【図26】本実施例のフラッシュメモリを用いたシステムの構成例を示すシステム構成図である。
【図27】図26のシステムにおけるCPUとフラッシュメモリ間の信号のタイミングを示すタイミングチャートである。
【図28】本実施例のフラッシュメモリにおけるテスト用コマンドが入力されたときの動作の手順を示すフローチャートである。
【図29】本発明のフラッシュメモリの他の実施例における電源立上がり時の処理の手順を示すフローチャートである。
【符号の説明】
101 ホストインタフェース部
110 インタフェース制御部
120 記憶部
121 フラッシュ・メモリアレイ
122 電源回路
123 バッファメモリ
130 管理部
132 シーケンサ
136 エラー検出訂正回路
Claims (12)
- 記憶情報を電気的に書込み、消去可能であってしきい値電圧に対応して情報を記憶する複数の不揮発性記憶素子を含むメモリアレイを備え、所定の単位で書込みおよび消去を行なうように構成された不揮発性半導体記憶装置であって、
正常な書込みまたは消去が不能な不良メモリセルを含むメモリセル群と不良メモリセルを含まないメモリセル群と置き換える代替処理機能と、各メモリセル群に対するデータ書換え回数を把握して複数のメモリセル群間で書換え回数に大きな差が生じないようにメモリセル群を置き換える書換え回数平均化処理機能と、
上記メモリアレイに記憶されたデータの誤りを検出し訂正するエラー訂正機能とを備え、
上記代替処理機能による第1のアドレス変換情報および上記書換え回数平均化処理機能による第2のアドレス変換情報をそれぞれ上記メモリアレイの所定の領域に記憶し、
同一のメモリセル群に関する上記第1のアドレス変換情報および第2のアドレス変換情報を時系列的に複数個記憶するように構成されていることを特徴とする不揮発性半導体記憶装置。 - 上記複数個の第1のアドレス変換情報および第2のアドレス変換情報は、書込みが別個に行なわれる複数の第1領域のいずれかに記憶されるように構成されていることを特徴とする請求項1に記載の不揮発性半導体記憶装置。
- 上記メモリアレイはいずれかのメモリセル群への書込みまたは消去動作の途中で電源が遮断されたときに互いに影響を及ぼすことがない第2領域を2つ以上備え、上記複数個の第1のアドレス変換情報および第2のアドレス変換情報は、2つ以上の第2領域に順に記憶されるように構成されていることを特徴とする請求項2に記載の不揮発性半導体記憶装置。
- 上記第1のアドレス変換情報および第2のアドレス変換情報の時系列順序を示す情報が、対応するアドレス変換情報が記憶される上記第1領域に記憶されるように構成されていることを特徴とする請求項2または3に記載の不揮発性半導体記憶装置。
- 電源投入時に上記時系列情報を参照して時系列的に最も新しいアドレス変換情報を使用して上記代替処理および書換え平均化処理を実行するように構成されていることを特徴とする請求項4に記載の不揮発性半導体記憶装置。
- 揮発性メモリセルからなる記憶回路を備え、上記時系列的に最も新しいアドレス変換情報が電源投入時に上記記憶回路に読み出され、該記憶回路に保持されているアドレス変換情報を使用して上記代替処理および書換え平均化処理が実行されるように構成されていることを特徴とする請求項5に記載の不揮発性半導体記憶装置。
- 上記記憶回路に保持されているアドレス変換情報は電源遮断時に上記メモリアレイに書き込まれるように構成されていることを特徴とする請求項6に記載の不揮発性半導体記憶装置。
- 上記書換え回数平均化処理は、上記メモリアレイを複数のブロックに分け、いずれかのブロック内のメモリセル群の書換え回数が所定回数に達した場合に、他のブロック内のブロック先頭位置からのオフセット値が同一であるメモリセル群同士で書込み対象をローテーションさせるように構成されていることを特徴とする請求項1〜7のいずれかに記載の不揮発性半導体記憶装置。
- 同一のワード線に接続された複数の記憶素子群が書込みの単位とされ、少なくとも該書込みの単位よりも大きな記憶容量を有し上記メモリアレイから読み出されたデータを保持可能な第1のバッファメモリと第2のバッファメモリとを備え、これらのバッファメモリを交互に使用した並列読出しが可能に構成されていることを特徴とする請求項1〜8のいずれかに記載の不揮発性半導体記憶装置。
- 外部から所定の信号が入力された状態で電源が投入された場合に、上記メモリアレイの所定の領域のデータが読み出されて所定の端子より出力可能に構成されていることを特徴とする請求項1〜9のいずれかに記載の不揮発性半導体記憶装置。
- 電源が投入されている状態で外部から所定の信号が入力された場合に、上記メモリアレイの所定の領域のデータが読み出されて所定の端子より出力可能に構成されていることを特徴とする請求項10に記載の不揮発性半導体記憶装置。
- 上記メモリアレイの書込みおよび消去動作に必要な電圧を発生する内部電源回路を備え、外部からの所定のコマンドコードの入力に応じて上記内部電源回路の動作が停止可能に構成されていることを特徴とする請求項1〜11のいずれかに記載の不揮発性半導体記憶装置。
Priority Applications (10)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2002278952A JP4129381B2 (ja) | 2002-09-25 | 2002-09-25 | 不揮発性半導体記憶装置 |
US10/667,505 US6788575B2 (en) | 2002-09-25 | 2003-09-23 | Nonvolatile memory |
US10/914,363 US6868032B2 (en) | 2002-09-25 | 2004-08-10 | Nonvolatile memory |
US11/053,423 US7012845B2 (en) | 2002-09-25 | 2005-02-09 | Nonvolatile memory with control circuit adapted to distinguish between command signal interface specifications and having an error correction function |
US11/330,233 US7230859B2 (en) | 2002-09-25 | 2006-01-12 | Nonvolatile memory |
US11/797,842 US7366034B2 (en) | 2002-09-25 | 2007-05-08 | Nonvolatile memory |
US12/048,208 US7525852B2 (en) | 2002-09-25 | 2008-03-13 | Nonvolatile memory |
US12/409,386 US7817480B2 (en) | 2002-09-25 | 2009-03-23 | Nonvolatile memory |
US12/896,016 US7933158B2 (en) | 2002-09-25 | 2010-10-01 | Nonvolatile memory |
US13/086,383 US8223563B2 (en) | 2002-09-25 | 2011-04-13 | Nonvolatile memory |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2002278952A JP4129381B2 (ja) | 2002-09-25 | 2002-09-25 | 不揮発性半導体記憶装置 |
Related Child Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2008103121A Division JP2008251154A (ja) | 2008-04-11 | 2008-04-11 | 不揮発性半導体記憶装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2004118407A JP2004118407A (ja) | 2004-04-15 |
JP4129381B2 true JP4129381B2 (ja) | 2008-08-06 |
Family
ID=31987080
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2002278952A Expired - Lifetime JP4129381B2 (ja) | 2002-09-25 | 2002-09-25 | 不揮発性半導体記憶装置 |
Country Status (2)
Country | Link |
---|---|
US (9) | US6788575B2 (ja) |
JP (1) | JP4129381B2 (ja) |
Families Citing this family (105)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP3875570B2 (ja) * | 2001-02-20 | 2007-01-31 | 株式会社東芝 | 半導体記憶装置のデータ書き込み方法及び半導体記憶装置 |
JP4129381B2 (ja) * | 2002-09-25 | 2008-08-06 | 株式会社ルネサステクノロジ | 不揮発性半導体記憶装置 |
US6906961B2 (en) * | 2003-06-24 | 2005-06-14 | Micron Technology, Inc. | Erase block data splitting |
JP4347707B2 (ja) * | 2004-01-09 | 2009-10-21 | パナソニック株式会社 | 情報記録媒体のフォーマット方法および情報記録媒体 |
US20080082736A1 (en) * | 2004-03-11 | 2008-04-03 | Chow David Q | Managing bad blocks in various flash memory cells for electronic data flash card |
WO2005094281A2 (en) * | 2004-03-25 | 2005-10-13 | Riverstone Networks, Inc. | Device-level address translation within a programmable non-volatile memory device |
GB2427731B (en) * | 2004-04-21 | 2007-11-21 | Spansion Llc | Non-volatile semiconductor device and method for automatically recovering erase failure in the device |
TW200608402A (en) * | 2004-08-20 | 2006-03-01 | Renesas Tech Corp | Semiconductor integrated device, and IC card and portable information terminal using the semiconductor integrated device |
US7970984B2 (en) * | 2004-12-23 | 2011-06-28 | Sandisk Il Ltd. | Method for using a multi-bit cell flash device in a system not designed for the device |
US7877566B2 (en) * | 2005-01-25 | 2011-01-25 | Atmel Corporation | Simultaneous pipelined read with multiple level cache for improved system performance using flash technology |
US7424648B2 (en) * | 2005-03-10 | 2008-09-09 | Matsushita Electric Industrial Co., Ltd. | Nonvolatile memory system, nonvolatile memory device, data read method, and data read program |
JP2006285600A (ja) * | 2005-03-31 | 2006-10-19 | Tokyo Electron Device Ltd | 記憶装置、メモリ管理装置、メモリ管理方法及びプログラム |
US7849253B2 (en) * | 2005-04-04 | 2010-12-07 | Standard Microsystems Corporation | Method for fast access to flash-memory media |
JP2006294143A (ja) | 2005-04-12 | 2006-10-26 | Toshiba Corp | 不揮発性半導体記憶装置 |
US8244958B2 (en) * | 2005-05-09 | 2012-08-14 | Sandisk Il Ltd. | Method and system for facilitating fast wake-up of a flash memory system |
JP4503500B2 (ja) * | 2005-06-29 | 2010-07-14 | シャープ株式会社 | 記録装置、並びに、そのプログラムおよび記録媒体 |
US7743409B2 (en) | 2005-07-08 | 2010-06-22 | Sandisk Corporation | Methods used in a mass storage device with automated credentials loading |
KR100712596B1 (ko) | 2005-07-25 | 2007-04-30 | 삼성전자주식회사 | 플래시 메모리 장치의 리페어 및 트리밍 방법 및 장치 |
US7536540B2 (en) | 2005-09-14 | 2009-05-19 | Sandisk Corporation | Method of hardware driver integrity check of memory card controller firmware |
US7934049B2 (en) * | 2005-09-14 | 2011-04-26 | Sandisk Corporation | Methods used in a secure yet flexible system architecture for secure devices with flash mass storage memory |
JP4301227B2 (ja) * | 2005-09-15 | 2009-07-22 | セイコーエプソン株式会社 | 電気光学装置及びその製造方法、電子機器並びにコンデンサー |
US7631245B2 (en) * | 2005-09-26 | 2009-12-08 | Sandisk Il Ltd. | NAND flash memory controller exporting a NAND interface |
US8291295B2 (en) | 2005-09-26 | 2012-10-16 | Sandisk Il Ltd. | NAND flash memory controller exporting a NAND interface |
US7599242B2 (en) * | 2005-09-28 | 2009-10-06 | Hynix Semiconductor Inc. | Test circuit for multi-port memory device |
US7681109B2 (en) * | 2005-10-13 | 2010-03-16 | Ramot At Tel Aviv University Ltd. | Method of error correction in MBC flash memory |
TW200723289A (en) * | 2005-12-09 | 2007-06-16 | A Data Technology Co Ltd | Non-volatile memory storage device and controller thereof |
JP4895264B2 (ja) * | 2005-12-27 | 2012-03-14 | 株式会社メガチップス | 記憶装置および情報処理装置 |
US7352627B2 (en) * | 2006-01-03 | 2008-04-01 | Saifon Semiconductors Ltd. | Method, system, and circuit for operating a non-volatile memory array |
JP2007272943A (ja) * | 2006-03-30 | 2007-10-18 | Matsushita Electric Ind Co Ltd | 不揮発性半導体記憶装置 |
US8027212B2 (en) * | 2006-03-31 | 2011-09-27 | Kristopher Chad Breen | Method and apparatus for a dynamic semiconductor memory with compact sense amplifier circuit |
JP5019567B2 (ja) * | 2006-08-04 | 2012-09-05 | ソニーモバイルコミュニケーションズ株式会社 | メモリ管理方法および携帯端末装置 |
KR100802059B1 (ko) * | 2006-09-06 | 2008-02-12 | 삼성전자주식회사 | 읽기 디스터브로 인한 배드 블록의 생성을 억제할 수 있는메모리 시스템 및 그것의 동작 방법 |
KR100809320B1 (ko) * | 2006-09-27 | 2008-03-05 | 삼성전자주식회사 | 이종 셀 타입을 지원하는 비휘발성 메모리를 위한 맵핑정보 관리 장치 및 방법 |
KR100780963B1 (ko) * | 2006-11-03 | 2007-12-03 | 삼성전자주식회사 | 메모리 카드 및 메모리 카드의 구동 방법 |
US8745315B2 (en) * | 2006-11-06 | 2014-06-03 | Rambus Inc. | Memory Systems and methods supporting volatile and wear-leveled nonvolatile physical memory |
EP2092530B1 (en) * | 2006-12-07 | 2012-10-31 | Nxp B.V. | Method and device for reconfiguration of reliability data in flash eeprom storage pages |
US7710777B1 (en) | 2006-12-20 | 2010-05-04 | Marvell International Ltd. | Semi-volatile NAND flash memory |
KR100877609B1 (ko) * | 2007-01-29 | 2009-01-09 | 삼성전자주식회사 | 버퍼 메모리의 플래그 셀 어레이를 이용하여 데이터 오류 정정을 수행하는 반도체 메모리 시스템 및 그 구동 방법 |
JP2008310896A (ja) * | 2007-06-15 | 2008-12-25 | Spansion Llc | 不揮発性記憶装置、不揮発性記憶システムおよび不揮発性記憶装置の制御方法 |
US7788550B2 (en) * | 2007-12-17 | 2010-08-31 | Atmel Rousset S.A.S. | Redundant bit patterns for column defects coding |
TWI367486B (en) * | 2007-12-25 | 2012-07-01 | Ind Tech Res Inst | Memory device and refresh method thereof |
JP2009158015A (ja) | 2007-12-26 | 2009-07-16 | Toshiba Corp | 不揮発性半導体記憶装置 |
JP4987962B2 (ja) * | 2008-02-29 | 2012-08-01 | 株式会社東芝 | 情報処理装置及び不揮発性半導体メモリドライブ |
US20100188880A1 (en) * | 2009-01-23 | 2010-07-29 | Analog Devices, Inc. | Power switching for portable applications |
JP5209535B2 (ja) * | 2009-02-24 | 2013-06-12 | ルネサスエレクトロニクス株式会社 | Usbホストコントローラ及びusbホストコントローラの制御方法 |
JP4719802B2 (ja) * | 2009-03-09 | 2011-07-06 | 富士通株式会社 | ストレージ管理装置、ストレージ管理方法およびストレージシステム |
KR101543245B1 (ko) * | 2009-03-18 | 2015-08-11 | 삼성전자주식회사 | 에러 교정 장치와 이를 포함하는 메모리 장치와 데이터 처리 시스템 |
US20110002169A1 (en) | 2009-07-06 | 2011-01-06 | Yan Li | Bad Column Management with Bit Information in Non-Volatile Memory Systems |
JP5347779B2 (ja) * | 2009-07-07 | 2013-11-20 | ソニー株式会社 | メモリ装置、メモリ制御方法、およびプログラム |
JP5413060B2 (ja) * | 2009-08-28 | 2014-02-12 | 富士通株式会社 | メモリ診断方法及びメモリ回路 |
US8489803B2 (en) * | 2009-12-14 | 2013-07-16 | Smsc Holdings S.A.R.L. | Efficient use of flash memory in flash drives |
US8725935B2 (en) * | 2009-12-18 | 2014-05-13 | Sandisk Technologies Inc. | Balanced performance for on-chip folding of non-volatile memories |
TWI424438B (zh) * | 2009-12-30 | 2014-01-21 | Asolid Technology Co Ltd | 非揮發性記憶體控制裝置及其多階重新排序方法 |
JP5473623B2 (ja) * | 2010-01-15 | 2014-04-16 | キヤノン株式会社 | データ記録装置及びその制御方法 |
JP5455689B2 (ja) * | 2010-02-03 | 2014-03-26 | キヤノン株式会社 | 記録装置及び方法 |
JP5523128B2 (ja) * | 2010-02-03 | 2014-06-18 | キヤノン株式会社 | 記録装置及びその制御方法 |
JP2011197819A (ja) * | 2010-03-17 | 2011-10-06 | Toshiba Corp | 半導体装置 |
US9342446B2 (en) | 2011-03-29 | 2016-05-17 | SanDisk Technologies, Inc. | Non-volatile memory system allowing reverse eviction of data updates to non-volatile binary cache |
US9058288B2 (en) | 2011-04-03 | 2015-06-16 | Apple Inc. | Redundant storage in non-volatile memory by storing redundancy information in volatile memory |
JP5341947B2 (ja) * | 2011-04-25 | 2013-11-13 | 株式会社東芝 | Icカード、icカードの制御方法、および携帯可能電子装置の制御方法 |
FR2977047B1 (fr) * | 2011-06-22 | 2013-08-16 | Starchip | Procede de gestion de l'endurance de memoires non volatiles. |
JP5754292B2 (ja) | 2011-08-15 | 2015-07-29 | 富士通株式会社 | ストレージ装置、およびストレージ装置制御方法 |
US8892828B2 (en) * | 2011-11-18 | 2014-11-18 | Micron Technology, Inc. | Apparatuses and methods for storing validity masks and operating apparatuses |
US9069719B2 (en) * | 2012-02-11 | 2015-06-30 | Samsung Electronics Co., Ltd. | Method and system for providing a smart memory architecture |
ITMI20120595A1 (it) * | 2012-04-12 | 2013-10-13 | St Microelectronics Srl | Gestione della cancellazione di pagine operative di un dispositivo di memoria flash tramite pagine di servizio |
TWI467379B (zh) * | 2012-04-23 | 2015-01-01 | Phison Electronics Corp | 系統運作方法、記憶體控制器與記憶體儲存裝置 |
CN103383663B (zh) * | 2012-05-04 | 2016-06-29 | 群联电子股份有限公司 | 系统运作方法、存储器控制器与存储器 |
US9128822B2 (en) * | 2012-06-22 | 2015-09-08 | Winbond Electronics Corporation | On-chip bad block management for NAND flash memory |
US8910018B2 (en) * | 2012-07-17 | 2014-12-09 | Macronix International Co., Ltd. | Memory with dynamic error detection and correction |
TWI482014B (zh) * | 2012-08-10 | 2015-04-21 | Macronix Int Co Ltd | 具有動態錯誤偵測及更正的記憶體 |
US9442840B2 (en) * | 2012-12-19 | 2016-09-13 | Qualcomm Incorporated | Virtual boundary codes in a data image of a read-write memory device |
US9430339B1 (en) | 2012-12-27 | 2016-08-30 | Marvell International Ltd. | Method and apparatus for using wear-out blocks in nonvolatile memory |
JP6047033B2 (ja) * | 2013-02-25 | 2016-12-21 | ルネサスエレクトロニクス株式会社 | Lsiおよび情報処理システム |
JP6190462B2 (ja) * | 2013-09-04 | 2017-08-30 | 東芝メモリ株式会社 | 半導体記憶装置 |
US9146809B2 (en) | 2013-10-07 | 2015-09-29 | Macronix International Co., Ltd. | ECC method for double pattern flash memory |
US20150128000A1 (en) * | 2013-11-05 | 2015-05-07 | Samsung Electronics Co., Ltd. | Method of operating memory system |
KR102178833B1 (ko) * | 2013-12-12 | 2020-11-13 | 삼성전자주식회사 | 메모리 시스템 및 이를 포함하는 컴퓨팅 시스템 |
JP2015118499A (ja) * | 2013-12-18 | 2015-06-25 | ソニー株式会社 | 記憶装置、メモリコントローラ、記憶装置の制御方法、および、プログラム |
WO2015104841A1 (ja) | 2014-01-10 | 2015-07-16 | 株式会社 日立製作所 | 多重系システムおよび多重系システム管理方法 |
US9535785B2 (en) | 2014-01-17 | 2017-01-03 | Macronix International Co., Ltd. | ECC method for flash memory |
US9542268B2 (en) | 2014-01-29 | 2017-01-10 | Macronix International Co., Ltd. | Dynamic data density ECC |
US9659137B2 (en) * | 2014-02-18 | 2017-05-23 | Samsung Electronics Co., Ltd. | Method of verifying layout of mask ROM |
WO2016033539A1 (en) | 2014-08-29 | 2016-03-03 | Memory Technologies Llc | Control for authenticated accesses to a memory device |
US20180101457A1 (en) * | 2014-10-29 | 2018-04-12 | International Business Machines Corporation | Retrying failed write operations in a dispersed storage network |
US9934872B2 (en) | 2014-10-30 | 2018-04-03 | Sandisk Technologies Llc | Erase stress and delta erase loop count methods for various fail modes in non-volatile memory |
CN104407814B (zh) * | 2014-11-21 | 2017-10-17 | 华为技术有限公司 | 双写数据的方法和装置 |
KR20160075165A (ko) * | 2014-12-19 | 2016-06-29 | 에스케이하이닉스 주식회사 | 메모리 시스템 및 메모리 시스템의 동작 방법 |
US9224502B1 (en) | 2015-01-14 | 2015-12-29 | Sandisk Technologies Inc. | Techniques for detection and treating memory hole to local interconnect marginality defects |
US10032524B2 (en) | 2015-02-09 | 2018-07-24 | Sandisk Technologies Llc | Techniques for determining local interconnect defects |
TWI512462B (zh) | 2015-02-11 | 2015-12-11 | Phison Electronics Corp | 記憶體管理方法、記憶體控制電路單元及記憶體儲存裝置 |
US9940455B2 (en) * | 2015-02-25 | 2018-04-10 | International Business Machines Corporation | Programming code execution management |
JP2016161729A (ja) * | 2015-02-28 | 2016-09-05 | Nltテクノロジー株式会社 | 表示用半導体集積回路及び表示装置 |
RU2682387C1 (ru) * | 2015-03-09 | 2019-03-19 | Тосиба Мемори Корпорейшн | Полупроводниковое запоминающее устройство |
US9564219B2 (en) | 2015-04-08 | 2017-02-07 | Sandisk Technologies Llc | Current based detection and recording of memory hole-interconnect spacing defects |
US9269446B1 (en) | 2015-04-08 | 2016-02-23 | Sandisk Technologies Inc. | Methods to improve programming of slow cells |
US9875053B2 (en) | 2015-06-05 | 2018-01-23 | Western Digital Technologies, Inc. | Scheduling scheme(s) for a multi-die storage device |
US10289327B2 (en) | 2015-06-05 | 2019-05-14 | Western Digital Technologies, Inc. | Scheduling scheme(s) for a multi-die storage device |
US20170075758A1 (en) * | 2015-09-10 | 2017-03-16 | Kabushiki Kaisha Toshiba | Memory system and method of controlling nonvolatile memory |
KR102420897B1 (ko) * | 2016-03-17 | 2022-07-18 | 에스케이하이닉스 주식회사 | 메모리 모듈, 이를 포함하는 메모리 시스템 및 그의 동작 방법 |
KR20180047329A (ko) * | 2016-10-31 | 2018-05-10 | 에스케이하이닉스 주식회사 | 메모리 시스템 및 메모리 시스템의 동작방법 |
JP6306777B2 (ja) * | 2017-05-10 | 2018-04-04 | 東芝メモリ株式会社 | 半導体記憶装置 |
KR20190052315A (ko) * | 2017-11-08 | 2019-05-16 | 에스케이하이닉스 주식회사 | 메모리 장치 및 그것을 포함하는 메모리 시스템 |
KR102651129B1 (ko) * | 2018-12-21 | 2024-03-26 | 삼성전자주식회사 | 메모리 장치의 데이터 재기입 방법, 상기 메모리 장치를 제어하는 메모리 컨트롤러 및 상기 메모리 컨트롤러의 제어 방법 |
FR3138536A1 (fr) * | 2022-07-28 | 2024-02-02 | Idemia Identity & Security France | Procédé de gestion d’une mémoire d’un élément sécurisé |
CN116540947B (zh) * | 2023-07-04 | 2023-10-13 | 苏州萨沙迈半导体有限公司 | 数据擦写的方法、装置、存储介质和单片机 |
Family Cites Families (41)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5784327A (en) * | 1991-06-12 | 1998-07-21 | Hazani; Emanuel | Memory cell array selection circuits |
US5361227A (en) * | 1991-12-19 | 1994-11-01 | Kabushiki Kaisha Toshiba | Non-volatile semiconductor memory device and memory system using the same |
JP3485938B2 (ja) * | 1992-03-31 | 2004-01-13 | 株式会社東芝 | 不揮発性半導体メモリ装置 |
KR970008188B1 (ko) * | 1993-04-08 | 1997-05-21 | 가부시끼가이샤 히다찌세이사꾸쇼 | 플래시메모리의 제어방법 및 그것을 사용한 정보처리장치 |
JP3301047B2 (ja) * | 1993-09-16 | 2002-07-15 | 株式会社日立製作所 | 半導体メモリシステム |
SG49632A1 (en) * | 1993-10-26 | 1998-06-15 | Intel Corp | Programmable code store circuitry for a nonvolatile semiconductor memory device |
JP3670041B2 (ja) | 1993-12-10 | 2005-07-13 | アドバンスト・マイクロ・ディバイシズ・インコーポレイテッド | 不揮発性メモリチップイネーブル符号化方法、コンピュータシステム、およびメモリコントローラ |
JPH08221993A (ja) * | 1994-03-25 | 1996-08-30 | Seiko Instr Inc | 半導体集積回路装置、その製造方法及びその駆動方法 |
US6081878A (en) * | 1997-03-31 | 2000-06-27 | Lexar Media, Inc. | Increasing the memory performance of flash memory devices by writing sectors simultaneously to multiple flash memory devices |
US5786587A (en) | 1995-08-10 | 1998-07-28 | American Bank Note Holographics, Inc. | Enhancement of chip card security |
US6335878B1 (en) * | 1998-07-28 | 2002-01-01 | Hitachi, Ltd. | Non-volatile multi-level semiconductor flash memory device and method of driving same |
US5754567A (en) * | 1996-10-15 | 1998-05-19 | Micron Quantum Devices, Inc. | Write reduction in flash memory systems through ECC usage |
US5864569A (en) * | 1996-10-18 | 1999-01-26 | Micron Technology, Inc. | Method and apparatus for performing error correction on data read from a multistate memory |
US5784237A (en) * | 1996-11-29 | 1998-07-21 | S&C Electric Company | Control method and apparatus for power distribution network |
KR20010006400A (ko) * | 1997-04-16 | 2001-01-26 | 가나이 쓰토무 | 반도체 집적 회로 및 메모리의 검사 방법 |
US6076137A (en) * | 1997-12-11 | 2000-06-13 | Lexar Media, Inc. | Method and apparatus for storing location identification information within non-volatile memory devices |
JP4090570B2 (ja) * | 1998-06-02 | 2008-05-28 | 株式会社ルネサステクノロジ | 半導体装置、データ処理システム及び不揮発性メモリセルの閾値変更方法 |
KR100308479B1 (ko) | 1998-08-11 | 2001-11-01 | 윤종용 | 컴퓨터 시스템 내에서 부트-업 메모리로 사용되는 플래시 메모리 장치 및 그것의 데이터 읽기 방법 |
US6324103B2 (en) * | 1998-11-11 | 2001-11-27 | Hitachi, Ltd. | Semiconductor integrated circuit device, memory module, storage device and the method for repairing semiconductor integrated circuit device |
US6299153B1 (en) * | 1999-07-26 | 2001-10-09 | Discreet Industries Corporation | Wafer latch with a ball bearing assembly |
JP2000251484A (ja) | 1999-02-26 | 2000-09-14 | Sony Corp | 不揮発性半導体記憶装置 |
JP2000285001A (ja) | 1999-03-31 | 2000-10-13 | Seiko Epson Corp | 半導体フラッシュメモリ装置及びその制御方法 |
JP4074029B2 (ja) | 1999-06-28 | 2008-04-09 | 株式会社東芝 | フラッシュメモリ |
JP3863330B2 (ja) * | 1999-09-28 | 2006-12-27 | 株式会社東芝 | 不揮発性半導体メモリ |
JP2001109629A (ja) | 1999-10-05 | 2001-04-20 | Toshiba Corp | Cpuのブート制御装置及びブート制御方法 |
JP3940544B2 (ja) * | 2000-04-27 | 2007-07-04 | 株式会社東芝 | 不揮発性半導体メモリのベリファイ方法 |
US6678788B1 (en) * | 2000-05-26 | 2004-01-13 | Emc Corporation | Data type and topological data categorization and ordering for a mass storage system |
US6328639B1 (en) * | 2000-06-15 | 2001-12-11 | Marlon Pujol | System for abrasively cleaning small parts and a container for holding small parts undergoing abrasive cleaning |
JP2002015584A (ja) | 2000-06-29 | 2002-01-18 | Sanyo Electric Co Ltd | 不揮発性メモリのリードプロテクト回路 |
JP2002208274A (ja) * | 2000-11-10 | 2002-07-26 | Hitachi Ltd | 半導体記憶装置 |
JP3816788B2 (ja) | 2001-11-22 | 2006-08-30 | 株式会社東芝 | 不揮発性半導体記憶装置 |
US6700809B1 (en) * | 2002-02-01 | 2004-03-02 | Netlogic Microsystems, Inc. | Entry relocation in a content addressable memory device |
US7382637B1 (en) * | 2002-02-01 | 2008-06-03 | Netlogic Microsystems, Inc. | Block-writable content addressable memory device |
JP4129381B2 (ja) * | 2002-09-25 | 2008-08-06 | 株式会社ルネサステクノロジ | 不揮発性半導体記憶装置 |
JP4325275B2 (ja) * | 2003-05-28 | 2009-09-02 | 株式会社日立製作所 | 半導体装置 |
US6930909B2 (en) * | 2003-06-25 | 2005-08-16 | Micron Technology, Inc. | Memory device and methods of controlling resistance variation and resistance profile drift |
JP4637512B2 (ja) * | 2003-11-13 | 2011-02-23 | ルネサスエレクトロニクス株式会社 | 半導体集積回路装置 |
US7158411B2 (en) * | 2004-04-01 | 2007-01-02 | Macronix International Co., Ltd. | Integrated code and data flash memory |
US7106636B2 (en) * | 2004-06-22 | 2006-09-12 | Intel Corporation | Partitionable memory device, system, and method |
JP2008065971A (ja) * | 2006-08-10 | 2008-03-21 | Fujitsu Ltd | 半導体メモリおよびメモリシステム |
US8407395B2 (en) * | 2006-08-22 | 2013-03-26 | Mosaid Technologies Incorporated | Scalable memory system |
-
2002
- 2002-09-25 JP JP2002278952A patent/JP4129381B2/ja not_active Expired - Lifetime
-
2003
- 2003-09-23 US US10/667,505 patent/US6788575B2/en not_active Expired - Lifetime
-
2004
- 2004-08-10 US US10/914,363 patent/US6868032B2/en not_active Expired - Lifetime
-
2005
- 2005-02-09 US US11/053,423 patent/US7012845B2/en not_active Expired - Lifetime
-
2006
- 2006-01-12 US US11/330,233 patent/US7230859B2/en not_active Expired - Lifetime
-
2007
- 2007-05-08 US US11/797,842 patent/US7366034B2/en not_active Expired - Lifetime
-
2008
- 2008-03-13 US US12/048,208 patent/US7525852B2/en not_active Expired - Fee Related
-
2009
- 2009-03-23 US US12/409,386 patent/US7817480B2/en not_active Expired - Lifetime
-
2010
- 2010-10-01 US US12/896,016 patent/US7933158B2/en not_active Expired - Lifetime
-
2011
- 2011-04-13 US US13/086,383 patent/US8223563B2/en not_active Expired - Lifetime
Also Published As
Publication number | Publication date |
---|---|
US20110283054A1 (en) | 2011-11-17 |
US20050007860A1 (en) | 2005-01-13 |
US20090187702A1 (en) | 2009-07-23 |
US6868032B2 (en) | 2005-03-15 |
US6788575B2 (en) | 2004-09-07 |
US20040057316A1 (en) | 2004-03-25 |
US20050141300A1 (en) | 2005-06-30 |
US7366034B2 (en) | 2008-04-29 |
US20060114726A1 (en) | 2006-06-01 |
US7933158B2 (en) | 2011-04-26 |
JP2004118407A (ja) | 2004-04-15 |
US8223563B2 (en) | 2012-07-17 |
US7012845B2 (en) | 2006-03-14 |
US7817480B2 (en) | 2010-10-19 |
US7230859B2 (en) | 2007-06-12 |
US20070206418A1 (en) | 2007-09-06 |
US20110022913A1 (en) | 2011-01-27 |
US20080158963A1 (en) | 2008-07-03 |
US7525852B2 (en) | 2009-04-28 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP4129381B2 (ja) | 不揮発性半導体記憶装置 | |
JP4524309B2 (ja) | フラッシュメモリ用のメモリコントローラ | |
CN111078149B (zh) | 存储器管理方法、存储器存储装置及存储器控制电路单元 | |
JP4034949B2 (ja) | 不揮発性半導体記憶装置 | |
CN104765568A (zh) | 数据存储方法、存储器控制电路单元与存储器存储装置 | |
TWI591482B (zh) | 資料保護方法、記憶體控制電路單元及記憶體儲存裝置 | |
TWI611410B (zh) | 資料寫入方法、記憶體控制電路單元與記憶體儲存裝置 | |
TWI509615B (zh) | 資料儲存方法、記憶體控制器與記憶體儲存裝置 | |
TWI616807B (zh) | 資料寫入方法以及儲存控制器 | |
JP2008251154A (ja) | 不揮発性半導体記憶装置 | |
JP4661369B2 (ja) | メモリコントローラ | |
US9760456B2 (en) | Memory management method, memory storage device and memory control circuit unit | |
CN112394883B (zh) | 数据整并方法、存储器存储装置及存储器控制电路单元 | |
CN111949321A (zh) | 固件码执行方法、存储器存储装置及存储器控制电路单元 | |
JP2005316793A (ja) | フラッシュメモリシステム及びフラッシュメモリの制御方法 | |
TWI749704B (zh) | 韌體碼的執行方法、記憶體儲存裝置及記憶體控制電路單元 | |
JP4304167B2 (ja) | メモリコントローラ、フラッシュメモリシステム及びフラッシュメモリの制御方法 | |
JP2022040856A (ja) | メモリ制御装置及びメモリ制御方法 | |
CN116225993A (zh) | 存储器操作管控方法、存储装置及存储器控制电路单元 | |
CN111858389A (zh) | 数据写入方法、存储器控制电路单元以及存储器存储装置 | |
CN112965670A (zh) | 主机存储器缓冲区管理方法、存储装置与控制电路单元 | |
CN114003523A (zh) | 用来进行配置管理的方法以及数据存储装置及其控制器 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20050819 |
|
RD01 | Notification of change of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7421 Effective date: 20070427 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20080212 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20080219 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20080411 |
|
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: 20080513 |
|
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: 20080519 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110523 Year of fee payment: 3 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 4129381 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: 20110523 Year of fee payment: 3 |
|
S111 | Request for change of ownership or part of ownership |
Free format text: JAPANESE INTERMEDIATE CODE: R313111 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110523 Year of fee payment: 3 |
|
R350 | Written notification of registration of transfer |
Free format text: JAPANESE INTERMEDIATE CODE: R350 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120523 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120523 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130523 Year of fee payment: 5 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20140523 Year of fee payment: 6 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
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 |
|
EXPY | Cancellation because of completion of term |