JP6237202B2 - Semiconductor memory device and control method thereof - Google Patents
Semiconductor memory device and control method thereof Download PDFInfo
- Publication number
- JP6237202B2 JP6237202B2 JP2013263386A JP2013263386A JP6237202B2 JP 6237202 B2 JP6237202 B2 JP 6237202B2 JP 2013263386 A JP2013263386 A JP 2013263386A JP 2013263386 A JP2013263386 A JP 2013263386A JP 6237202 B2 JP6237202 B2 JP 6237202B2
- Authority
- JP
- Japan
- Prior art keywords
- block
- data
- blocks
- address
- 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.)
- Expired - Fee Related
Links
Images
Landscapes
- Techniques For Improving Reliability Of Storages (AREA)
- For Increasing The Reliability Of Semiconductor Memories (AREA)
Description
本発明は、半導体記憶装置に関するものであり、特にフラッシュメモリを用いた半導体記憶装置の動作不良を抑制する技術に関するものである。 The present invention relates to a semiconductor memory device, and more particularly to a technique for suppressing malfunction of a semiconductor memory device using a flash memory.
情報端末装置などの電子装置の小型化や高性能化に伴い、不揮発性の半導体記憶素子を用いた半導体記憶装置が電子装置のデータの記憶用として広く使われるようになっている。大容量のデータの記憶用としては磁気ディスク等が主流であったが、素子形成技術の発達により半導体記憶装置においても大容量化が可能となっている。不揮発性の半導体記憶素子を用いた大容量の半導体記憶装置は、SSD(Solid State Drive)とも呼ばれる。半導体記憶素子は、機械的な駆動部を持たないので、半導体記憶装置は磁気ディスク等に比べて高速でのデータの読み書きが可能であり、また、電力消費量を抑制することができる。 As electronic devices such as information terminal devices become smaller and higher in performance, semiconductor memory devices using nonvolatile semiconductor memory elements are widely used for storing data in electronic devices. A magnetic disk or the like has been the mainstream for storing large-capacity data. However, with the development of element formation technology, it is possible to increase the capacity of a semiconductor memory device. A large-capacity semiconductor memory device using a nonvolatile semiconductor memory element is also called an SSD (Solid State Drive). Since the semiconductor memory element does not have a mechanical drive unit, the semiconductor memory device can read and write data at a higher speed than a magnetic disk or the like, and can suppress power consumption.
大容量の半導体記憶装置の記憶素子としては、NAND型フラッシュメモリが用いられることが多い。フラッシュメモリは、繰り返しデータの書き込みや読み出しを行うことができるが、動作原理上、繰り返しの動作により記憶素子を形成している絶縁膜の劣化が生じる。絶縁膜の劣化が進んだ記憶素子が増えるとエラー訂正機能等で補えなくなるため、動作不良が発生することがある。そのため、フラッシュメモリを用いた半導体記憶装置は、継続的な使用による不良の発生に対応するための予備の記憶領域を備えていることがある。NAND型のフラッシュメモリでは、書き込まれたデータの消去はブロックと呼ばれる一定数の素子で形成された領域単位で行われる。そのため、NAND型フラッシュメモリでは、不良の発生した不良ブロックに対応する予備の記憶領域も代替ブロックとしてブロック単位で備えられている。しかし、記憶領域全体での記憶容量は限りがあるため、予備の記憶領域である代替ブロックを多く備えると、通常、用いることのできる記憶容量が減少する。よって、代替ブロックのための予備の記憶領域の大きさはできるだけ抑制されることが望ましい。一方で、代替ブロックが全て使用状態となると半導体記憶装置が使用不可となる恐れがある。使用不可となる状態を避けるために、フラッシュメモリを用いる半導体記憶装置においては、代替ブロックの不足を抑制するための技術が盛んに検討されている。代替ブロックの不足を抑制するための技術としては、例えば、特許文献1のような技術が開示されている。
A NAND flash memory is often used as a memory element of a large-capacity semiconductor memory device. The flash memory can repeatedly write and read data, but due to the operation principle, the insulating film forming the memory element is deteriorated by the repeated operation. If the number of storage elements whose deterioration of the insulating film has progressed increases, it cannot be compensated by an error correction function or the like, and an operation failure may occur. Therefore, a semiconductor memory device using a flash memory may have a spare storage area for dealing with the occurrence of defects due to continuous use. In the NAND flash memory, the written data is erased in units of areas formed by a certain number of elements called blocks. Therefore, in the NAND flash memory, a spare storage area corresponding to a defective block in which a defect has occurred is also provided in block units as an alternative block. However, since the storage capacity of the entire storage area is limited, the storage capacity that can normally be used is reduced if a large number of alternative blocks that are spare storage areas are provided. Therefore, it is desirable that the size of the spare storage area for the substitute block is suppressed as much as possible. On the other hand, if all the substitute blocks are in use, the semiconductor memory device may be unusable. In order to avoid an unusable state, in a semiconductor memory device using a flash memory, a technique for suppressing the shortage of alternative blocks has been actively studied. As a technique for suppressing the shortage of substitute blocks, for example, a technique as disclosed in
特許文献1は、フラッシュメモリにおいて代替ブロックの使用数を抑制し、代替ブロックの不足を防止する技術に関するものである。特許文献1では、データの読み出し時のエラーの発生数が所定の数を超えたブロックが不良ブロックとして判定されている。不良ブロックであるかを判定するためのエラー発生数は、代替ブロックの残りの数によって変更される。特許文献1では、代替ブロックの残りの数が設定値よりも少なくなったとき、不良ブロックであるかの判定に用いるエラー発生数を大きく設定することにより、代替ブロックを利用する数を抑制する。その結果、代替ブロックの急激な減少を抑制して、急にフラッシュメモリが使用不可になる状態を防ぐことが出来るとしている。
特許文献2は、フラッシュメモリにおいて通常のブロックを代替ブロックに変更することにより、代替ブロックの数を確保する技術に関するものである。特許文献2では、不良と判断されたブロックを再度、テストして不良が一時的なものであるか恒久的なものであるかの判断が行われる。恒久的な不良であると判断されたとき、代替ブロックの残り数が所定の数以下である場合には、通常ブロックが代替ブロックに変更される。特許文献2では、通常のブロックを代替ブロックに変換し、一定数以上の代替ブロックを確保することによりフラッシュメモリが動作できなくなる状態を避けることが可能になるとしている。
しかしながら、特許文献1の技術は次のような点で十分ではない。特許文献1では、ブロックを不良と判定するためのエラー発生数の閾値が、代替ブロックの残り数に応じて変更されている。特許文献1では、不良と判定する条件を緩和することによりエラー発生数が多いブロックも正常なブロックとして扱い、予備の記憶領域である代替ブロックの数の減少を抑制している。そのため、正常なブロックとして扱われているブロックにおいても、書き込みや読み出しの際にエラーが多く発生する可能性がある。また、エラー発生数が条件を緩和した閾値も超えるブロックが多発した際には、代替ブロックを使用することになるため代替ブロックの減少を抑制することはできない。そのため、条件を緩和した閾値を超えるエラーが多発した際にも対応するために、十分な数の代替ブロックを備える必要がある。よって、特許文献1では代替ブロックのための予備の記憶領域を十分に確保する必要があり、特許文献1の技術は予備の記憶領域を抑制しつつ使用不可となる状態を避けるための技術としては十分ではない。
However, the technique of
また、特許文献2の技術では、予備の記憶領域である代替ブロックの残り数が所定の数以下である場合に、通常の記憶領域のブロックが代替ブロックに変更されている。そのため、代替ブロックの残り数が所定の数以下になった場合に、予備の記憶領域を確保するために通常の記憶領域の記憶容量が減少する恐れがある。よって、特許文献2の技術では半導体記憶装置の通常の記憶容量を維持したまま、代替ブロックの減少を抑制することができない。半導体記憶装置は当初、設定されている記憶容量のまま利用できることが望ましい。そのため、特許文献2はフラッシュメモリを用いる半導体記憶装置に用いるための技術としては十分ではない。
Further, in the technique of
本発明は、予備の記憶領域の大きさを抑制しつつ、不良ブロックが多く発生した場合でも動作の継続が可能な半導体記憶装置を得ることを目的としている。 An object of the present invention is to obtain a semiconductor memory device capable of continuing the operation even when many defective blocks occur while suppressing the size of the spare storage area.
上記の課題を解決するため、本発明の半導体記憶装置は記憶手段と、アドレス管理手段と、代替ブロック形成手段と、制御手段とを備える。記憶手段は、所定の記憶容量ごとの複数のブロックに分割された記憶領域にデータを保存する。アドレス管理手段は、ブロックのうち、異常が発生した不良ブロックを複数の領域に分割して正常な領域のアドレスを管理する。代替ブロック形成手段は、不良ブロックの正常な領域を前記所定の記憶容量を満たすように組わせて、1つのブロックとみなして扱う第2の代替ブロックを形成する。制御手段は、所定の条件を満たしたときに、第2の代替ブロックを形成するブロックの正常な領域を連続した領域にデータを書き込む。 In order to solve the above problems, the semiconductor memory device of the present invention includes a storage unit, an address management unit, a substitute block forming unit, and a control unit. The storage means stores data in a storage area divided into a plurality of blocks for each predetermined storage capacity. The address management means manages the address of a normal area by dividing a defective block in which an abnormality has occurred among the blocks into a plurality of areas. The substitute block forming means forms a second substitute block that is treated as one block by combining normal areas of defective blocks so as to satisfy the predetermined storage capacity. When the predetermined condition is satisfied, the control means writes data in a continuous area from the normal area of the block forming the second alternative block.
本発明の半導体記憶装置の制御方法は、所定の記憶容量ごとの複数のブロックに分割された記憶領域のブロックのうち、異常が発生した不良ブロックを複数の領域に分割して正常な領域のアドレスを管理する。本発明の半導体記憶装置の制御方法は、不良ブロックの正常な領域を所定の記憶容量を満たすように組み合わせて、1つのブロックとみなして扱う第2の代替ブロックを形成する。また、本発明の半導体記憶装置の制御方法は、所定の条件を満たしたときに、第2の代替ブロックを形成するブロックの正常な領域にデータを書き込む。 According to the method for controlling a semiconductor memory device of the present invention, a defective block in which an abnormality has occurred among a plurality of blocks divided into a plurality of blocks for each predetermined storage capacity is divided into a plurality of areas, and addresses of normal areas Manage. The method for controlling a semiconductor memory device of the present invention forms a second alternative block that is treated as one block by combining normal areas of defective blocks so as to satisfy a predetermined storage capacity. In the semiconductor memory device control method of the present invention, data is written to a normal area of the block forming the second alternative block when a predetermined condition is satisfied.
本発明によると、予備の記憶領域の大きさを抑制しつつ、不良ブロックが多く発生した場合でも動作の継続が可能となる。 According to the present invention, it is possible to continue the operation even when many bad blocks occur while suppressing the size of the spare storage area.
本発明の第1の実施形態について図を参照して詳細に説明する。図1は本実施形態の半導体記憶装置の構成の概要を示したものである。本実施形態の半導体記憶装置は、記憶手段1と、アドレス管理手段2と、代替ブロック形成手段3と、制御手段4とを備える。
A first embodiment of the present invention will be described in detail with reference to the drawings. FIG. 1 shows an outline of the configuration of the semiconductor memory device of this embodiment. The semiconductor memory device of this embodiment includes a
記憶手段1は、所定の記憶容量ごとの複数のブロックに分割された記憶領域にデータを保存する。アドレス管理手段2は、ブロックのうち、異常が発生した不良ブロックを複数の領域に分割して正常な領域のアドレスを管理する。代替ブロック形成手段3は、不良ブロックの正常な領域を所定の記憶容量を満たすように組み合わせて、1つのブロックとみなして扱う第2の代替ブロックを形成する。また、制御手段4は、所定の条件を満たしたときに、第2の代替ブロックを形成するブロックの正常な領域にデータを書き込む。
The
本実施形態の半導体記憶装置は、異常が発生した不良ブロックを複数の領域に分割し、正常な領域を所定の記憶容量となるように組み合わせて、仮想的なブロックである第2の代替ブロックを形成している。第2の代替ブロックを不良ブロックの代わりに用いることにより、代替として用いるブロックに連続した領域からなる通常のブロックを割り当てなくても動作を継続することができる。その結果、本実施形態の半導体記憶装置では、予備の記憶領域の大きさを抑制しつつ、不良ブロックが多く発生した場合でも動作の継続が可能となる。 The semiconductor memory device according to the present embodiment divides a defective block in which an abnormality has occurred into a plurality of areas, and combines the normal areas so as to have a predetermined storage capacity, thereby obtaining a second alternative block that is a virtual block. Forming. By using the second substitute block instead of the defective block, the operation can be continued without assigning a normal block composed of a continuous area to the block used as a substitute. As a result, in the semiconductor memory device of this embodiment, the operation can be continued even when many defective blocks occur while suppressing the size of the spare storage area.
本発明の第2の実施形態について図を参照して詳細に説明する。図2は本実施形態の半導体記憶装置の構成の概要を示したものである。本実施形態の半導体記憶装置の記憶素子はNAND型フラッシュメモリとして形成されている。NAND型フラッシュメモリを用いた半導体記憶装置の記憶領域は、所定の記憶容量ごとの複数の領域に分割されていて、分割された1つの領域をブロックと呼ぶ。本実施形態の半導体記憶装置は、ブロックの一部に異常が発生した際に、異常が発生したブロックである不良ブロックを分割して、不良ブロックのうち異常が発生してない領域を記憶領域として用いる。また、本実施形態の半導体記憶装置において、不良ブロックを分割して記憶領域として用いる際には、複数の不良ブロックの正常な領域が組み合わされて用いられる。本実施形態の半導体記憶装置は、複数の不良の正常な領域を組み合わせて、正常なブロック1つと同じ記憶容量のブロックを仮想的に作ることによって、不良ブロックを記憶領域に用いる。 A second embodiment of the present invention will be described in detail with reference to the drawings. FIG. 2 shows an outline of the configuration of the semiconductor memory device of this embodiment. The memory element of the semiconductor memory device of this embodiment is formed as a NAND flash memory. A storage area of a semiconductor memory device using a NAND flash memory is divided into a plurality of areas for each predetermined storage capacity, and one divided area is called a block. In the semiconductor memory device of this embodiment, when an abnormality occurs in a part of a block, a defective block which is a block in which an abnormality has occurred is divided, and an area in which no abnormality has occurred is determined as a storage area. Use. In the semiconductor memory device of this embodiment, when a defective block is divided and used as a storage area, normal areas of a plurality of defective blocks are used in combination. The semiconductor memory device of this embodiment uses a defective block as a storage area by virtually creating a block having the same storage capacity as one normal block by combining a plurality of defective normal areas.
本実施形態の半導体記憶装置は、図2に示す通り、メモリ部10と、制御部21と、バッファメモリ部22と、不良ブロック管理部23と、2次代替領域管理部24とを備えている。本実施形態の半導体記憶装置には、制御信号の入出力を行うためのコントロールバスが接続されている。また、本実施形態の半導体記憶装置には、外部とのデータの入出力を行うためのデータバスが接続されている。コントロールバスは、制御部21に接続されている。また、データバスを介して入出力されるデータはバッファメモリ部22に一時保存される。
As shown in FIG. 2, the semiconductor memory device of this embodiment includes a
メモリ部10は、複数のブロックに分割されている。メモリ部10の各ブロックは、通常記憶領域11の通常ブロックと予備記憶領域12の代替ブロックとに分けられている。通常ブロックは、データの書き込みおよび読み出しに使用されるブロックである。代替ブロックは、異常が発生して使用できない通常ブロックが生じた際に、通常ブロックの代わりに使用されるブロックである。本実施形態では、ブロックを構成している素子に異常が発生して使用できないブロックを不良ブロックと呼ぶ。メモリ部10の全ブロックのうち、所定の数または割合のブロックが予備記憶領域12の代替ブロックとして設定されている。
The
各ブロックは、所定の数のページで構成されている。各ページは制御用の配線を共有している所定の数のメモリセルの組み合わせにより構成されている。メモリセルは、1ビットの情報を蓄積する単位である。NAND型フラッシュメモリにおいて、メモリセルに蓄積されているデータの消去はブロック単位で行われる。また、データの書き込みおよび読み出しは、ページ単位で行われる。 Each block is composed of a predetermined number of pages. Each page is composed of a combination of a predetermined number of memory cells sharing control wiring. A memory cell is a unit for storing 1-bit information. In the NAND flash memory, data stored in the memory cell is erased in units of blocks. Data writing and reading are performed in units of pages.
制御部21は、メモリ部10のデータの書き込み、読み出しおよび消去に関する制御全般を行う機能を有する。制御部21は、外部から送られてくる書き込み要求に従って、メモリ部10の書き込み先に指定されたアドレスのブロックにデータの書き込みを行う。書き込みを行うデータはデータバスを介して、バッファメモリ部22に入力されて一時保存される。また、制御部21は読み出し要求に従って、読み出し元に指定されたメモリ部10のブロックからデータの読み出しを行う。制御部21は、読み出したデータをバッファメモリ部22に一時保存し、データバスを介して出力する。
The
制御部21は、アドレス変換機能を備える構成とすることもできる。アドレス変換機能を備える構成とした場合には、制御部21は、書き込み先として指定されたアドレスを、所定のアルゴリズムに基づいて空いている通常ブロックのアドレスへと変換する。所定のアルゴリズムは、ブロックごとの使用回数に偏りが生じることを防ぐため、ブロックごとの使用回数が平準化するように設定されている。制御部21は、変換前のアドレスと変換後のアドレスを関連付けてアドレス変換テーブルに保存する。アドレスの変換を行った場合は、制御部21は、変換後のアドレスを指定されたアドレスとみなして各処理を行う。変換前のアドレスからの読み出しを指定された場合には、制御部21は、アドレス変換テーブルに基づいて変換後のアドレスからデータを読み出して、読み出したデータの出力を行う。以上に説明したブロックごとの使用回数を平準化する技術は、ウェアレベリングとも呼ばれる。
The
バッファメモリ部22は、入力されたデータを一時的に保存する機能を有する。バッファメモリ部22に外部からデータバスを介して入力されて保存されたデータは、制御部21からの指示に基づいてメモリ部10へと送られる。また、バッファメモリ部22は、メモリ部10から呼び出されたデータを外部に送る際に、データを一時的に保存するためにも用いられる。バッファメモリ部22は、制御部21からの指示に基づいて一時保存したデータをデータバスを介して外部に出力する。
The
不良ブロック管理部23は、不良ブロックのアドレスと、不良ブロックの代わりに使用される代替ブロックのアドレスを管理する機能を有する。また、不良ブロック管理部23は、代替ブロックとしての2次代替ブロックの使用の有無を保存する機能を有する。2次代替ブロックは、不良ブロックの正常な領域を組み合わせて形成したものである。不良ブロック管理部23は、不良ブロックのアドレスと不良ブロックの代わりに使用される代替ブロックのアドレスを関連付けて保存するデータテーブルを備えている。本実施形態では、不良ブロックと代替ブロックが関連付けられて保存されたデータデーブルを、不良ブロック管理テーブルと呼ぶ。
The defective
2次代替領域管理部24は、不良ブロックを分割した際に、分割したブロックの領域のうち使用できる領域のアドレスを管理する機能を有する。2次代替領域管理部24は、複数の不良ブロックの使用できる領域を組み合わせて管理する。例えば、不良ブロックを2分割する場合には、2次代替領域管理部24は、2つの不良ブロックの各々の使用できる領域を組み合わせて管理する。2次代替領域管理部24は、組み合われた不良ブロックのうち使用する領域の先頭アドレスを関連づけて保存するデータテーブルを備えている。本実施形態では、使用する領域の先頭アドレスを関連づけて保存するデータテーブルを2次代替領域管理テーブルと呼ぶ。また、本実施形態では、複数のブロックの使用できる領域を組み合わせて形成する仮想的なブロックを2次代替ブロックと呼ぶ。また、本実施形態では、2次代替ブロックに用いられている領域を2次代替領域と呼ぶ。
The secondary replacement
本実施形態における不良ブロック管理テーブルおよび2次代替領域管理テーブルについて説明する。本実施形態のメモリ部10の各ブロックは、図3に示すようにアドレスが割り当てられているとする。図3は、本実施形態の説明のために各ブロックに割り当てられたアドレスを模式的に示したものである。図3におけるアドレスの表記は、説明を簡略化するためにアルファベットと数字で代替して簡易的に示したものである。例えば、図3に示す予備記憶領域12で「S1」および「S2」のアドレスから構成されるブロックは、ブロックの先頭のアドレスが「S1」、ブロックを2分割した場合の後側の領域の先頭のアドレスが「S2」であることを示している。図4は、図3に示したようにアドレスを割り当てた場合において、いくつかのブロックで異常発生した例を示したものである。図4では、アドレス「M3」で始まるブロックの前側の領域と、アドレス「A9」で始まるブロックの後側の領域において書き込み等が出来ないページが発生した例を示している。図4の例では、アドレス「M3」および「A9」で始まるブロックが不良ブロックとなる。また、図4の例では、アドレス「M3」で始まるブロックのうち。後側のアドレス「M4」で始まる領域が使用可能であるとする。図4の例では、アドレス「A9」で始まるブロックのうち、前側のアドレス「A9」で始まる領域が使用可能で、後側のアドレス「A10」で始まる領域が使用不可であるとする。
A defective block management table and a secondary replacement area management table in this embodiment will be described. Assume that each block of the
本実施形態の半導体記憶装置の不良ブロック管理テーブルについて説明する。図5は、本実施形態の不良ブロック管理テーブルの例を示したものである。図5の不良ブロック管理テーブルの「不良ブロックアドレス」の項目は、異常が発生して不良ブロックとして扱われているブロックの先頭アドレスが登録されている。図5の例では、図4で示したアドレス「M3」および「A9」で始まるブロックの他に、アドレス「N5」で始まるブロックも不良ブロックとして扱われている例を示している。図5の「代替ブロックアドレス」は、不良ブロックの代わりにデータの保存先として用いられる代替ブロックの先頭のアドレスを示している。図5では、アドレス「M3」、「A9」のブロックの代替として、予備記憶領域12のアドレス「S1」、「S3」のブロックが割り当てられている例を示している。図5の「2次代替ブロック使用有無」の項目は、代替ブロックとして2次代替ブロックを使用しているかについて登録されている。図5では、代替ブロックとして2次代替ブロックを使用している場合は「1」、使用していない場合は「0」として登録されている。2次代替ブロックを使用している場合は、不良ブロック管理テーブルの「代替ブロックアドレス」に登録されているアドレスが、2次代替ブロックの先頭アドレスとして用いられる。
A defective block management table of the semiconductor memory device of this embodiment will be described. FIG. 5 shows an example of the bad block management table of this embodiment. In the item of “bad block address” in the bad block management table of FIG. 5, the head address of a block that has been treated as a bad block due to an abnormality is registered. In the example of FIG. 5, in addition to the blocks starting with the addresses “M3” and “A9” shown in FIG. 4, the block starting with the address “N5” is treated as a bad block. “Alternative block address” in FIG. 5 indicates the head address of an alternative block used as a data storage destination instead of a defective block. FIG. 5 shows an example in which the blocks with the addresses “S1” and “S3” in the
次に2次代替領域管理テーブルについて説明する。図6は本実施形態の2次代替領域管理テーブルの例を示したものである。図6の「2次代替ブロック先頭アドレス」は、2次代替ブロックとして用いるブロックのうち、前側の領域として用いる記憶領域の先頭アドレスを示したものである。「2次代替ブロック先頭アドレス」は、不良ブロック管理テーブルの「代替ブロックアドレス」としても登録されている。「2次代替ブロック副アドレス」は、2次代替ブロックとして用いるブロックのうち、後側の領域として用いる記憶領域の先頭アドレスを示したものである。図6の例では、アドレス「M3」および「M8」で始まる記憶領域が、仮想的に1つのブロックを形成しているものとして扱われる。図6のアドレス「H2」は、組み合わせて用いる後側の記憶領域が未登録の状態を示している。図6の例では、アドレス「H2」で始まる記憶領域は、組み合わせて用いる記憶領域が未登録のため2次代替ブロックとしては使用できない状態である。 Next, the secondary alternative area management table will be described. FIG. 6 shows an example of the secondary alternative area management table of the present embodiment. “Secondary alternative block start address” in FIG. 6 indicates the start address of the storage area used as the front area among the blocks used as the secondary alternative block. The “secondary alternative block head address” is also registered as the “substitute block address” in the defective block management table. “Secondary alternative block subaddress” indicates the head address of the storage area used as the rear area among the blocks used as the secondary alternative block. In the example of FIG. 6, the storage areas starting with addresses “M3” and “M8” are treated as virtually forming one block. The address “H2” in FIG. 6 indicates a state in which the rear storage area used in combination is unregistered. In the example of FIG. 6, the storage area starting with the address “H2” is in a state where it cannot be used as a secondary replacement block because the storage area used in combination is not registered.
本実施形態の半導体記憶装置において、データの書き込みが行われる際の動作について説明する。図7は本実施形態の半導体記憶装置においてデータの書き込みが行われる際のフローの概要を示したものである。始めに、半導体記憶装置に、外部から書き込みの要求、書き込み先のアドレスおよび書き込むデータが送られてくる(ステップ101)。半導体記憶装置にデータバスを介して送られてきたデータは、バッファメモリ部22に入力される。バッファメモリ部22にデータが入力されると、バッファメモリ部22は、入力されたデータを保存する(ステップ102)。
An operation when data is written in the semiconductor memory device of this embodiment will be described. FIG. 7 shows an outline of a flow when data is written in the semiconductor memory device of this embodiment. First, a write request, a write destination address, and data to be written are sent from the outside to the semiconductor memory device (step 101). Data sent to the semiconductor memory device via the data bus is input to the
制御部21は、不良ブロック管理部23の不良ブロック管理テーブルを確認して、データの書き込み先として指定されたアドレスが不良ブロック管理テーブルに含まれていないかを確認する(ステップ103)。データの書き込み先のアドレスが不良ブロック管理テーブルに含まれている場合は、制御部21は2次代替ブロックの使用の有無を確認する。2次代替領域を使用している場合には、制御部21は2次代替領域管理テーブルを確認する。制御部21は、2次代替領域管理テーブルにおいて、不良ブロック管理テーブルに登録されているアドレスと組み合わされて登録されているアドレスの領域と合わせてデータの書き込み先として決定する。書き込み先のアドレスが不良ブロック管理テーブルには登録されているが、2次代替領域を使用していない場合には、制御部21は、代替ブロックのアドレスを書き込み先として決定する。また、データの書き込み先のアドレスが不良ブロック管理テーブルに含まれていない場合は、制御部21は、書き込み先のアドレスとアドレスの一致する通常記憶領域11のブロックを書き込み先として決定する(ステップ104)。
The
制御部21は、データの書き込み先を決定すると、書き込み先のブロックが正常なブロックか不良ブロックかを確認する。書き込み先のブロックが正常であるかの確認は、例えば、ページごとに共有しているソース線に電圧を印加して、正常に電圧が印加できるかにより行われる。また、書き込み先のブロックに以前のデータが残っている場合には、制御部21は書き込み動作を行う前に書き込み先のブロックに保存されているデータを一括で消去する。書き込み先が2次代替ブロックの場合は、ブロック単位で消去が行われるので異常が発生した領域と判断されて使用していない領域に対しても消去の処理が加えられる。
When determining the data write destination, the
書き込み先のブロックが正常なブロックの場合には(ステップ105でNo)、制御部21は、バッファメモリ部22に保存されているデータを書き込み先として決定したブロックに保存する(ステップ113)。書き込み先のブロックに異常が発生して不良ブロックである場合には(ステップ105でYes)、制御部21は、異常が発生したブロックである不良ブロックのアドレスを不良ブロック管理テーブルに追加して保存する(ステップ106)。
When the write destination block is a normal block (No in step 105), the
制御部21は、不良ブロックのアドレスを不良ブロック管理テーブルに追加すると、使用している代替ブロックの数が所定の数以下であるかを判断する。使用している代替ブロックの数が所定の数以下の場合は(ステップ107でYes)、制御部21は、バッファメモリ部22に保存している不良ブロックに書き込む予定だったデータを、予備記憶領域12の代替ブロックに書き込むと判断する。代替ブロックに書き込むと判断すると、制御部21は、空いている代替ブロックから書き込み先の代替ブロックのアドレスを決定する(ステップ111)。書き込み先の代替ブロックのアドレスを決定すると、制御部21は決定した代替ブロックのアドレスを、異常の発生した不良ブロックのアドレスに関連付けて、不良ブロック管理テーブルに保存する(ステップ112)。使用する代替ブロックの情報等を不良ブロック管理テーブルに保存すると、制御部21はバッファメモリ部22に保存されているデータを選択した代替ブロックに書き込む(ステップ113)。
When the address of the defective block is added to the defective block management table, the
使用している代替ブロックの数が所定の数より多い場合は(ステップ107でNo)、制御部21はデータの書き込み先として2次代替ブロックの使用が可能かを判断する。制御部21は2次代替領域管理テーブルを確認して、使用できる2次代替ブロックがあるかにより2次代替ブロックの使用が可能かを判断する(ステップ108)。使用可能な2次代替ブロックが無い場合は(ステップ109でNo)、制御部21は、空いている代替ブロックから書き込み先の代替ブロックのアドレスを決定する(ステップ111)。書き込み先の代替ブロックのアドレスを決定すると、制御部21は決定した代替ブロックのアドレスを、異常の発生した不良ブロックのアドレスに関連付けて、不良ブロック管理テーブルに保存する(ステップ112)。使用する代替ブロックの情報等を不良ブロック管理テーブルに保存すると、制御部21はバッファメモリ部22に保存されているデータを選択した代替ブロックに書き込む(ステップ113)。
If the number of replacement blocks being used is greater than the predetermined number (No in step 107), the
使用可能な2次代替ブロックがある場合は(ステップ109でYes)、制御部21は2次代替領域管理テーブルからデータの書き込みに使用する2次代替ブロックを決定する(ステップ110)。制御部21は、2次代替領域管理テーブルに登録されている2つのアドレスの組み合わせから、2次代替ブロックとして未使用の1つの組を選び、使用する2次代替ブロックとして決定する。制御部21は、使用する2次代替ブロックを決定する際に、不良ブロック管理テーブルを参照して2次代替ブロックとしての使用の有無を判断する。使用する2次代替ブロックを決定すると、制御部21は、不良ブロック管理テーブルに、2次代替ブロックの先頭アドレスを不良ブロックのアドレスに関連関連付けて保存する。また、制御部21は、不良ブロック管理テーブルに2次代替ブロックを使用していることを示す情報を保存する。データの書き込みに使用する2次代替ブロックを決定すると、制御部21は選択した2次代替ブロックに、バッファメモリ部22に保存されているデータの書き込みを行う(ステップ113)。制御部21は、組み合わされた2つのブロックのうち片方のブロックにデータの書き込み行った後に、バッファメモリ部22に保存されている残りのデータのもう一方のブロックへの書き込みように制御を行う。以上で、本実施形態の半導体記憶装置におけるメモリ部10へのデータの書き込み動作は完了する。
If there is a usable secondary replacement block (Yes in step 109), the
次に、本実施形態の半導体記憶装置において、保存されているデータの読み出しを行う際の動作について説明する。図8は、本実施形態の半導体記憶装置に保存されているデータの読み出しを行う際の動作フローの概要を示したものである。 Next, in the semiconductor memory device of this embodiment, an operation when reading stored data will be described. FIG. 8 shows an outline of an operation flow when data stored in the semiconductor memory device of this embodiment is read.
外部から読み出し元のアドレスとともに、保存されているデータの読み出し要求が送られてきて制御部21に入力されたとする(ステップ121)。制御部21は、データの読み出し要求を受け取ると、読み出し元となるアドレスが代替アドレスかを確認するために、不良ブロック管理テーブルを確認する(ステップ122)。
It is assumed that a read request for stored data is sent from the outside together with the read source address and is input to the control unit 21 (step 121). Upon receiving the data read request, the
読み出し元となるアドレスが代替ブロックでない場合には(ステップ123でNo)、制御部21は読み出し元として指定されたブロックのデータの読み出しを行う(ステップ124)。制御部21は、アドレスに対応するメモリ部10のブロックから順次バッファメモリ部22にデータを読み出す。メモリ部10から読み出されたデータはバッファメモリ部22に保存される。
If the read source address is not an alternative block (No in step 123), the
制御部21はデータの読み出しを行う際にデータの読み出しエラーが発生したメモリセルの数を計測する(ステップ125)。本実施形態では制御部21は、1つのブロックを2分割して、分割してできた領域1つごとにエラーの発生数を計測する。制御部21は1ブロックのデータの読み出しを終えると、分割してできた領域ごとにエラーの発生したメモリセル数が所定の数未満であるかを判断する。エラーの発生したメモリセルの数が2つの領域とも所定の数未満の場合は(ステップ126でYes)、制御部21はデータの読み出しを行ったブロックが正常であると判断する。制御部21は、データの読み出しを行ったブロックが正常なブロックであると判断すると、バッファメモリ部22に保存されているデータをデータバスを介して出力する。バッファメモリ部22のデータを出力すると、データの読み出しの動作は完了となる。さらに、読み出すデータの要求がある場合には、ステップ121からの動作が繰り返し行われる。
The
データを読み出した際のエラーが、いずれか一方の領域または両方の領域において所定の数以上である場合(ステップ126でNo)、制御部21はデータを読み出したブロックが不良ブロックであると判断する。制御部21は、データを読み出したブロックが不良ブロックであると判断すると、そのブロックのアドレスを不良ブロックとして保存する(ステップ128)。制御部21は不良ブロックの情報を保存する際に、不良ブロックのうち正常な領域の先頭アドレスも保存する。データを読み出したブロックが不良ブロックであると判断すると、制御部21は不良ブロックと判断したデータを他のブロックに移行する(ステップ129)。制御部21は、データの読み込みや書き込み要求がないときに不良ブロックのデータの移し替えを行う。データの移し替えを行う際は、制御部21は図7のステップ107からの動作を行うように制御することにより、他のブロックへのデータの書き込みを行う。
When the number of errors in reading data is equal to or greater than a predetermined number in one or both areas (No in step 126), the
読み出し元となるアドレスが代替ブロックの場合には(ステップ123でYes)、制御部21は、読み出し元となるアドレスが2次代替ブロックのものであるかを確認する。制御部21は、不良ブロック管理テーブルを確認して読み出し元となるアドレスが2次代替ブロックのものであるかを判断する。読み出し元のアドレスが2次代替ブロックのものでない場合は(ステップ130でNo)、制御部21は読み出し元のアドレスと対応する代替ブロックのアドレスを確認する。制御部21は、代替ブロックのアドレスを確認すると、アドレスに対応するメモリ部10のメモリセルから順次バッファメモリ部22にデータを読み出し、ステップ124からの動作を行う。
When the read source address is an alternative block (Yes in step 123), the
読み出し元のアドレスが2次代替ブロックのものでない場合は(ステップ130でYes)、制御部21は2次代替領域管理テーブルを参照して読み出し元となる2次代替ブロックのアドレスを確認する。制御部21は、2次代替ブロックのアドレスを確認すると2次代替ブロックからデータの読み出しを行う(ステップ133)。制御部21は2次代替ブロックとして組み合わせて用いられているブロックのうち先頭ブロック側のアドレスから順次データを読み出してバッファメモリ部22に保存する。制御部21は、次に、もう一方のブロックのデータを読み出して、連続したデータとなるようにバッファメモリ部22に保存する。2次代替ブロックからデータを読み出してバッファメモリ部22に保存する際には、制御部21はエラーの発生数を計測しステップ125からの動作を行う。
If the read source address is not that of the secondary replacement block (Yes in step 130), the
次に、異常が発生している不良ブロックのうち正常な領域を組み合わせて、仮想的なブロックを2次代替ブロックとして形成して登録する際の動作について説明する。図9は、本実施形態の半導体記憶装置において、異常が発生しているブロックの正常な部分を2次代替ブロックとして登録する際のフローの概要を示したものである。 Next, an operation when a virtual block is formed and registered as a secondary alternative block by combining normal areas among defective blocks in which an abnormality has occurred will be described. FIG. 9 shows an outline of a flow when a normal part of a block in which an abnormality has occurred is registered as a secondary alternative block in the semiconductor memory device of this embodiment.
書き込みや読み込みの動作を行っていないときに、制御部21が不良ブロックが発生し、分割した場合に正常な領域があることを検知したとする(ステップ201)。制御部21は、異常が発生したブロックを2分割した場合の、異常がない側、すなわち正常な側の領域の先頭アドレスの情報を抽出する。次に、制御部21は、既に登録されているアドレスのうち、他のアドレスと組み合わされてないアドレスが登録されているかを判断するために2次代替領域管理テーブルを確認する(ステップ202)。
It is assumed that when the writing or reading operation is not performed, the
他と組み合わされていないアドレスが存在しない場合には(ステップ203でNo)、制御部21は新たなアドレスを他のアドレスと組み合わせずに2次代替ブロック管理テーブルに登録する。他のアドレスと組み合わせない場合は、制御部21は新たに登録するアドレスを2次代替ブロックの先頭アドレスとして登録する(ステップ204)。他のアドレスと組み合わせずに登録されたアドレスは、新たに不良ブロックは生じたときに、新たに生じた不良ブロックの使用可能な側のアドレスと組み合わされる。他と組み合わされていないアドレスが登録されている場合には(ステップ203でYes)、制御部21は新たなアドレスと既に登録されているアドレスを組み合わせて登録する(ステップ205)。制御部21は、2次代替ブロックの先頭アドレスとして既に登録されているアドレスに、新たなアドレスを関連付けて登録する。
If there is no address that is not combined with another (No in Step 203), the
本実施形態の半導体記憶装置は、不良ブロックを2つに分割して正常な領域どうしを組み合わせて2次代替ブロックとして2次代替領域管理テーブルで管理している。代替ブロックが所定の数以下となったときに不良ブロックが生じると、制御部は、2次代替ブロックの使用の可否を判断して使用可能な場合は、2次代替ブロックを使用するように制御を行っている。また、2次代替ブロックを使用する際には、制御部は、複数のブロックにまたがった領域を連続した1つの領域とみなしてデータの書き込みおよび読み出しを行っている。このように、不良ブロックのうち、正常な領域を組み合わせた2次代替ブロックを用いることにより、連続した領域からなる通常の代替ブロックを使用する数を少なくすることができる。そのため、代替ブロックを形成するための予備の記憶領域の大きさを抑制することが可能となる。また、代替ブロックの数が減少しても、2次代替ブロック使用することにより動作の継続が可能となり得る。以上より、本実施形態の半導体記憶装置では、予備の記憶領域の大きさを抑制しつつ、不良ブロックが多く発生した場合でも動作の継続が可能となる。 In the semiconductor memory device of this embodiment, a defective block is divided into two and normal areas are combined and managed as a secondary replacement block in the secondary replacement area management table. If a defective block occurs when the number of replacement blocks reaches a predetermined number or less, the control unit determines whether or not the secondary replacement block can be used and, if it can be used, controls to use the secondary replacement block. It is carried out. When using the secondary substitute block, the control unit regards an area extending over a plurality of blocks as one continuous area, and writes and reads data. As described above, by using the secondary substitute block in which the normal areas are combined among the defective blocks, it is possible to reduce the number of normal substitute blocks made up of continuous areas. Therefore, it is possible to suppress the size of the spare storage area for forming the substitute block. Further, even if the number of alternative blocks decreases, it may be possible to continue the operation by using secondary alternative blocks. As described above, in the semiconductor memory device of this embodiment, it is possible to continue the operation even when many defective blocks occur while suppressing the size of the spare storage area.
本発明の第3の実施形態について詳細に説明する。第2の実施形態では半導体記憶装置は、データの書き込みや読み込みを行っていないときに2次代替ブロックの形成に関する動作を行った。本実施形態では、データの書き込み動作の中でも、2次代替ブロックを形成して記録領域として用いる。 The third embodiment of the present invention will be described in detail. In the second embodiment, the semiconductor memory device performs the operation related to the formation of the secondary substitute block when data is not written or read. In the present embodiment, a secondary replacement block is formed and used as a recording area even during a data write operation.
本実施形態の半導体記憶装置の構成は第2の実施形態と同様である。以下では、本実施形態の半導体記憶装置におけるデータの書き込み動作について説明する。また、本実施形態の半導体記憶装置と構成が同じであるため、第2の実施形態の半導体記憶装置の構成に関する図2も参照して説明する。 The configuration of the semiconductor memory device of this embodiment is the same as that of the second embodiment. Hereinafter, a data write operation in the semiconductor memory device of this embodiment will be described. Further, since the configuration is the same as that of the semiconductor memory device of the present embodiment, a description will be given with reference to FIG. 2 regarding the configuration of the semiconductor memory device of the second embodiment.
図10は本実施形態の半導体記憶装置においてデータの書き込みが行われる際のフローの概要を示したものである。始めに、半導体記憶装置に、外部から書き込みの要求、書き込み先のアドレスおよび書き込むデータが送られてくる(ステップ141)。半導体記憶装置に送られてきたデータは、バッファメモリ部22に入力される。バッファメモリ部22にデータが入力されると、バッファメモリ部22は、入力されたデータを保存する(ステップ142)。
FIG. 10 shows an outline of a flow when data is written in the semiconductor memory device of this embodiment. First, a write request, a write destination address, and write data are sent from the outside to the semiconductor memory device (step 141). The data sent to the semiconductor memory device is input to the
制御部21は、不良ブロック管理部23の不良ブロック管理テーブルを参照して、データの書き込み先として指定されたアドレスが不良ブロック管理テーブルに含まれていないかを確認する(ステップ143)。データの書き込み先のアドレスが不良ブロック管理テーブルに含まれている場合は、制御部21は、2次代替ブロックの使用の有無を確認する。2次代替ブロックを使用している情報が登録されている場合は、制御部21は2次代替領域管理テーブルを確認して該当する2次代替ブロックのアドレスをデータの書き込み先として決定する。書き込み先のアドレスが不良ブロック管理テーブルには登録されているが、2次代替ブロックを使用している情報が登録されていない場合は、制御部21は、代替ブロックのアドレスを書き込み先として決定する。また、データの書き込み先のアドレスが不良ブロック管理テーブルに含まれていない場合は、制御部21は、書き込み先のアドレスとアドレスが一致する通常記憶領域11のブロックを書き込み先として決定する(ステップ144)。
The
制御部21は、データの書き込み先を決定すると、書き込み先のブロックが正常なブロックか不良ブロックかを確認する。書き込み先のブロックの確認は第2の実施形態のデータの書き込み時と同様に行うことができる。書き込み先のブロックが正常なブロックの場合には(ステップ145でNo)、制御部21は、バッファメモリ部22に保存されているデータを書き込み先として決定したブロックに保存する(ステップ146)。書き込み先のブロックが正常であるかの確認は、例えば、ページごとに共有しているソース線に電圧を印加して、正常に電圧が印加できるかにより行われる。また、書き込み先のブロックに以前のデータが残っている場合には、制御部21は書き込み動作を行う前に書き込み先のブロックに保存されているデータを一括で消去する。
When determining the data write destination, the
書き込み先のブロックに異常が発生している場合には(ステップ145でYes)、制御部21は、異常が発生したブロックである不良ブロックのアドレスを不良ブロック管理テーブルに追加して保存する(ステップ147)。制御部21は、不良ブロックのアドレスを保存すると、不良ブロックを2つに分割し、正常な領域のアドレスを2次代替領域管理テーブルに登録する(ステップ148)。正常な領域が無い場合は、2次代替領域管理テーブルへ登録する動作は行われない。既に2次代替ブロックを使用している場合は、正常な側のみ再度、登録して異常が発生している側は削除する。
If an abnormality has occurred in the write destination block (Yes in step 145), the
制御部21は、正常な領域を2次代替領域管理テーブルに登録すると、使用している代替ブロックの数が所定の数以下であるかを判断する。使用している代替ブロックの数が所定の数以下の場合は(ステップ149でYes)、制御部21は、バッファメモリ部22に保存しているデータを、予備記憶領域12の代替ブロックに書き込むと判断する。代替ブロックに書き込むと判断すると、制御部21は、空いている代替ブロックから書き込み先の代替ブロックのアドレスを決定する(ステップ150)。書き込み先の代替ブロックのアドレスを決定すると、制御部21は決定した代替ブロックのアドレスを、異常の発生した不良ブロックのアドレスに関連付けて、不良ブロック管理テーブルに保存する(ステップ151)。使用する代替ブロックの情報等を不良ブロック管理テーブルに保存すると、制御部21はバッファメモリ部22に保存されているデータを書き込み先として決定した代替ブロックに書き込む(ステップ146)。
When the normal area is registered in the secondary replacement area management table, the
使用している代替ブロックの数が所定の数より多い場合は(ステップ149でNo)、制御部21はデータの書き込み先として2次代替ブロックの使用が可能かを判断するために2次代替領域管理テーブルを確認する(ステップ152)。制御部21は2次代替領域管理テーブルを確認して2次代替ブロックの使用が可能かを判断する。使用可能な2次代替ブロックが無い場合は(ステップ153でNo)、制御部21は、空いている代替ブロックから書き込み先の代替ブロックのアドレスを決定する(ステップ150)。書き込み先の代替ブロックのアドレスを決定すると、制御部21は決定した代替ブロックのアドレスに、異常の発生した不良ブロックのアドレスに関連付けて、不良ブロック管理テーブルに保存する(ステップ151)。使用する代替ブロックの情報等を不良ブロック管理テーブルに保存すると、制御部21はバッファメモリ部22に保存されているデータを書き込み先として決定した代替ブロックに書き込む(ステップ146)。
If the number of used replacement blocks is greater than the predetermined number (No in step 149), the
使用可能な2次代替ブロックがある場合は(ステップ153でYes)、制御部21は2次代替領域管理テーブルからデータの書き込みに使用する2次代替ブロックを決定する。2次代替ブロックを決定すると、制御部21は、2次代替ブロックの先頭側のブロックのアドレスを、データの書き込み要求で指定されていたアドレスと組み合わせて不良ブロック管理テーブルに保存する(ステップ154)。また、制御部21は、不良ブロック管理テーブルに2次代替ブロックを使用していることを示す情報を保存する。データの書き込みに使用する2次代替ブロックを決定して保存すると、制御部21は選択した2次代替ブロックに、バッファメモリ部22のデータの書き込みを行う(ステップ146)。制御部21は、組み合わされた2つのブロックのうち片方のブロックにデータの書き込みを行った後に、バッファメモリ部22に保存されている残りのデータのもう一方のブロックへの書き込むように制御を行う。以上で、本実施形態の半導体記憶装置におけるメモリ部10へのデータの書き込み動作は完了する。
If there is a usable secondary replacement block (Yes in step 153), the
本実施形態の半導体記憶装置において、データの読み出しを行う際の動作フローは第2の実施形態と同様である。また、本実施形態の半導体記憶装置において、データの書き込みおよび読み取りをしていないときに、2次代替ブロックを形成する際の動作フローも第2の実施形態と同様である。 In the semiconductor memory device of this embodiment, the operation flow when reading data is the same as that of the second embodiment. In the semiconductor memory device of this embodiment, the operation flow when forming the secondary alternative block when data is not written or read is the same as that of the second embodiment.
本実施形態の半導体記憶装置では、データの書き込み時にブロックの異常を検知すると、制御部は、書き込みのフローの中で2次代替ブロックを形成し、所定の条件を満たしたときに2次代替ブロックへデータを書き込むように制御している。本実施形態では、書き込みとして使用予定であったブロックの正常領域も2次代替ブロックとして使用することが可能となるため、使用可能な2次代替ブロックが存在する可能性が高くなる。そのため、不良ブロックが発生した際に、通常の代替ブロックを使用する数を抑制することができる機会が第2の実施形態よりも増加し得る。そのため、本実施形態の半導体記憶装置では、代替ブロックの使用の数をより効果的に抑制することができるので、代替ブロックの不足による動作の停止をより避けることが可能になる。 In the semiconductor memory device of the present embodiment, when a block abnormality is detected during data writing, the control unit forms a secondary replacement block in the write flow, and the secondary replacement block is satisfied when a predetermined condition is satisfied. It is controlled to write data to. In the present embodiment, the normal area of a block that was scheduled to be used for writing can also be used as a secondary substitute block, and therefore there is a high possibility that a usable secondary substitute block exists. For this reason, when a defective block occurs, the opportunity to reduce the number of normal replacement blocks used can be increased as compared to the second embodiment. Therefore, in the semiconductor memory device according to the present embodiment, the number of alternative blocks used can be more effectively suppressed, so that it is possible to further avoid the operation stop due to the shortage of alternative blocks.
第2の実施形態および第3の実施形態では、未使用の代替ブロックの残りが所定の数以下のときに2次代替ブロックを使用したが、未使用の代替ブロックの残りの数によらずに2次代替ブロックを使用する構成とすることもできる。未使用の代替ブロックの残り数によらずに2次代替ブロックを使用する場合は、書き込み先のブロックに異常が発生した際に、制御部は使用できる2次代替ブロックの有無を確認する。使用できる2次代替ブロックがある場合は、制御部は2次代替ブロックにデータの書き込み等を行う。未使用の代替ブロックの残り数によらずに2次代替ブロックを使用することにより、代替ブロックの数の減少を抑制することができる。その結果、代替ブロックの不足による動作の停止をより避けることができる。 In the second embodiment and the third embodiment, the secondary replacement block is used when the remaining number of unused replacement blocks is equal to or less than a predetermined number. However, regardless of the remaining number of unused replacement blocks. A configuration using a secondary replacement block may also be used. When the secondary replacement block is used regardless of the remaining number of unused replacement blocks, when an abnormality occurs in the write destination block, the control unit checks whether there is a usable secondary replacement block. If there is a secondary replacement block that can be used, the control unit writes data to the secondary replacement block. By using the secondary replacement block regardless of the remaining number of unused replacement blocks, a decrease in the number of replacement blocks can be suppressed. As a result, it is possible to avoid the stoppage of the operation due to the shortage of alternative blocks.
第2の実施形態および第3の実施形態では、不良ブロックを2つの領域に分割したが3つ以上の複数の領域に分割することもできる。3つ以上の領域に分割する場合は、2次代替領域管理テーブルで、ブロックを分割した数に対応する数のアドレスの管理が行われる。また、3つ以上の領域に分割する場合は、1つの不良ブロックから複数の正常な領域が2次代替領域管理テーブルに登録されることもある。NAND型フラッシュメモリでは、データの消去をブロック単位で行うため、1つの不良ブロックの複数の正常な領域を用いる場合は、1つの不良ブロック内の各領域は同じ2次代替ブロックに含まれるようにする必要がある。 In the second embodiment and the third embodiment, the defective block is divided into two regions. However, the defective block may be divided into three or more regions. When dividing into three or more areas, the number of addresses corresponding to the number of divided blocks is managed in the secondary alternative area management table. When dividing into three or more areas, a plurality of normal areas from one defective block may be registered in the secondary replacement area management table. In the NAND flash memory, data is erased in units of blocks, so that when using a plurality of normal areas of one defective block, each area in one defective block is included in the same secondary replacement block. There is a need to.
第2の実施形態および第3の実施形態では、1つの不良ブロックを複数に分割した際に、分割してできる各々の領域の記憶容量が同じ大きさになるように、不良ブロックの分割が行われている。また、2次代替ブロックを形成する際に、1ブロック分と同じ記憶容量となるように不良ブロックの正常な領域が組み合わされている。このような構成に代えて、不良ブロックを分割せずに、不良ブロックを組み合わせて2次代替ブロックを構成とすることもできる。不良ブロックを分割しないで組み合わせる場合は、各不良ブロックの正常な領域の記憶容量の合計が、1つのブロック分の記憶容量を満たすように不良ブロックが組み合わされて2次代替ブロックが形成される。このような構成とすることにより、異常の発生した領域が大きい不良ブロックと小さい不良ブロックの組み合わせによる2次代替ブロックを形成することができる。また、異常の発生した領域が大きく、正常な領域が小さい不良ブロックを複数、組み合わせて1ブロック分の記憶容量を確保することも可能となる。不良ブロックを分割しない場合は、2次代替ブロックの形成やデータの書き込み等の制御が複雑になり得るが、異常の発生した領域が大きい不良ブロックも有効に活用して2次代替ブロックを形成することができる。その結果、代替ブロックの減少を抑制することができる。 In the second and third embodiments, when one defective block is divided into a plurality of areas, the defective blocks are divided so that the storage capacity of each divided area is the same. It has been broken. Further, when forming the secondary substitute block, normal areas of defective blocks are combined so as to have the same storage capacity as that of one block. Instead of such a configuration, it is possible to configure a secondary replacement block by combining defective blocks without dividing the defective block. When combining the defective blocks without dividing them, the defective blocks are combined so that the total storage capacity of the normal areas of the defective blocks satisfies the storage capacity of one block to form a secondary replacement block. By adopting such a configuration, it is possible to form a secondary replacement block by a combination of a defective block having a large abnormality area and a small defective block. It is also possible to secure a storage capacity for one block by combining a plurality of defective blocks having a large abnormality area and a small normal area. If the defective block is not divided, the control of the formation of the secondary replacement block and the data writing may be complicated, but the secondary replacement block is formed by effectively utilizing the defective block having a large abnormality area. be able to. As a result, it is possible to suppress the decrease in the replacement block.
第3の実施形態において、データの書き込み時に異常を検知した際には、書き込み動作の中で組み合わせを行った2次代替ブロックもデータの書き込み先の候補として用いられる。このような構成に代えて、バッファメモリ部に保存されたデータ量を検出し、不良ブロックを分割した際の正常な領域の容量以下であった場合には、不良ブロックの正常な領域を一時的なデータの書き込み先として用いる構成とすることもできる。このような構成とすることにより、不良ブロックの正常な領域を一時的な書き込み先として使用した場合には、書き込みの動作を行っていないときに、2次代替ブロックを形成して不良ブロックへの割り当てが行われる。代替ブロックが設定された後は、一時的に保存されたデータは設定された代替ブロックへ移行される。このように、データの量により不良ブロックの正常な領域を一時的に使用して代替ブロックを設定する処理を保留することにより、書き込み時の処理速度の低下を抑制することができる。 In the third embodiment, when an abnormality is detected at the time of data writing, a secondary alternative block that has been combined in the writing operation is also used as a data writing destination candidate. Instead of such a configuration, when the amount of data stored in the buffer memory unit is detected and the capacity of the defective block is less than the normal area capacity, the normal area of the defective block is temporarily stored. It can also be configured to be used as a data write destination. With such a configuration, when a normal area of a defective block is used as a temporary write destination, a secondary replacement block is formed and a defective block is transferred to the defective block when a write operation is not performed. Allocation is done. After the substitute block is set, the temporarily stored data is transferred to the set substitute block. As described above, by temporarily suspending the process of setting a substitute block by using a normal area of a defective block according to the amount of data, it is possible to suppress a decrease in the processing speed at the time of writing.
本発明は、半導体記憶装置の記憶領域を管理する技術として利用することができ、特にNAND型フラッシュメモリを用いた半導体記憶装置に利用することができる。 The present invention can be used as a technique for managing a storage area of a semiconductor memory device, and in particular, can be used for a semiconductor memory device using a NAND flash memory.
1 記憶手段
2 アドレス管理手段
3 代替ブロック形成手段
4 制御手段
10 メモリ部
11 通常記憶領域
12 予備記憶領域
21 制御部
22 バッファメモリ部
23 不良ブロック管理部
24 2次代替領域管理部
101−113 データの書き込みのステップ
121−133 データの読み出しのステップ
141−154 データの書き込みのステップ
201−204 2次代替ブロックの形成のステップ
DESCRIPTION OF
Claims (8)
前記ブロックのうち、異常が発生した不良ブロックを複数の領域に分割して正常な領域のアドレスを管理するアドレス管理手段と、
前記不良ブロックの正常な領域のアドレスを前記所定の記憶容量を満たすように組み合わせて、1つのブロックとみなして扱う第2の代替ブロックを形成する代替ブロック形成手段と、
所定の条件を満たしたときに、前記第2の代替ブロックを形成するブロックの正常な領域にデータを書き込む制御手段と
を備え、
前記記憶手段は、前記複数のブロックのうち所定の数または割合のブロックを、予備のブロックである第1の代替ブロックとして備え、
前記制御手段は、前記第1の代替ブロック以外のブロックが書き込み先として使用できないときに、前記第1の代替ブロックまたは前記第2の代替ブロックの少なくとも一方にデータを書き込むことを特徴とする半導体記憶装置。 Storage means for storing data in a storage area divided into a plurality of blocks for each predetermined storage capacity;
Among the blocks, an address management means for managing a normal area address by dividing a defective block in which an abnormality has occurred into a plurality of areas;
An alternative block forming means for combining the addresses of normal areas of the defective blocks so as to satisfy the predetermined storage capacity and forming a second alternative block that is treated as one block;
Control means for writing data to a normal area of a block forming the second substitute block when a predetermined condition is satisfied ,
The storage means includes a predetermined number or percentage of the plurality of blocks as a first substitute block that is a spare block,
The control means writes data in at least one of the first alternative block and the second alternative block when a block other than the first alternative block cannot be used as a write destination. apparatus.
前記異常検知手段が書き込み先のブロックの異常を検知した場合に、前記制御手段は、前記第1の代替ブロックまたは前記第2の代替ブロックの少なくとも一方にデータを書き込むことを特徴とする請求項1に記載の半導体記憶装置。The control means writes data in at least one of the first alternative block or the second alternative block when the abnormality detection means detects an abnormality in a write destination block. The semiconductor memory device described in 1.
前記複数のブロックのうち所定の数または割合のブロックを、予備のブロックである第1の代替ブロックとし、A predetermined number or percentage of the plurality of blocks is a first substitute block that is a spare block,
前記不良ブロックの正常な領域のアドレスを前記所定の記憶容量を満たすように組み合わせて、1つのブロックとみなして扱う第2の代替ブロックを形成し、Combining addresses of normal areas of the defective blocks so as to satisfy the predetermined storage capacity to form a second alternative block that is treated as one block,
前記第1の代替ブロック以外のブロックが書き込み先として使用できないときに、前記第1の代替ブロックまたは前記第2の代替ブロックの少なくとも一方にデータを書き込み、When a block other than the first substitute block cannot be used as a write destination, data is written to at least one of the first substitute block or the second substitute block;
所定の条件を満たしたときに、前記第2の代替ブロックを形成するブロックの正常な領域にデータを書き込むことを特徴とする半導体記憶装置の制御方法。A method for controlling a semiconductor memory device, wherein data is written to a normal area of a block forming the second substitute block when a predetermined condition is satisfied.
書き込み先のブロックの異常を検知した場合に、前記第1の代替ブロックまたは前記第2の代替ブロックの少なくとも一方にデータを書き込むことを特徴とする請求項5記載の半導体記憶装置の制御方法。6. The method of controlling a semiconductor memory device according to claim 5, wherein when an abnormality in a write destination block is detected, data is written to at least one of the first substitute block or the second substitute block.
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2013263386A JP6237202B2 (en) | 2013-12-20 | 2013-12-20 | Semiconductor memory device and control method thereof |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2013263386A JP6237202B2 (en) | 2013-12-20 | 2013-12-20 | Semiconductor memory device and control method thereof |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| JP2015118664A JP2015118664A (en) | 2015-06-25 |
| JP6237202B2 true JP6237202B2 (en) | 2017-11-29 |
Family
ID=53531291
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP2013263386A Expired - Fee Related JP6237202B2 (en) | 2013-12-20 | 2013-12-20 | Semiconductor memory device and control method thereof |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JP6237202B2 (en) |
Families Citing this family (3)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| KR102628239B1 (en) | 2016-05-02 | 2024-01-24 | 삼성전자주식회사 | Storage device, operating method of storage device and operating method of computing system including storage device and host device |
| USRE50129E1 (en) | 2016-05-02 | 2024-09-17 | Samsung Electronics Co., Ltd. | Storage device having various recovery methods and recovery modes |
| US10445200B2 (en) | 2016-05-02 | 2019-10-15 | Samsung Electronics Co., Ltd. | Storage device having various recovery methods and recovery modes |
Family Cites Families (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JPH10171719A (en) * | 1996-12-10 | 1998-06-26 | Xing:Kk | Storage area management method and storage device |
-
2013
- 2013-12-20 JP JP2013263386A patent/JP6237202B2/en not_active Expired - Fee Related
Also Published As
| Publication number | Publication date |
|---|---|
| JP2015118664A (en) | 2015-06-25 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US8015371B2 (en) | Storage apparatus and method of managing data storage area | |
| US9875027B2 (en) | Data transmitting method, memory control circuit unit and memory storage device | |
| JP2018160195A (en) | Memory system and control method for nonvolatile memory | |
| US10303367B2 (en) | Mapping table updating method without updating the first mapping information, memory control circuit unit and memory storage device | |
| JP2013222435A (en) | Semiconductor storage device and method of controlling the same | |
| US11954364B2 (en) | Memory system and method of writing data to storage areas constituting group | |
| JP4930556B2 (en) | Evacuation processing apparatus, evacuation processing method, and storage system | |
| US20190073298A1 (en) | Memory management method, memory control circuit unit and memory storage apparatus | |
| JP5300496B2 (en) | Semiconductor memory device, host device, and semiconductor memory system | |
| KR20130069364A (en) | Non-volatile semiconductor memory device and method of controlling the same | |
| JP4702387B2 (en) | MEMORY CONTROLLER, FLASH MEMORY SYSTEM HAVING MEMORY CONTROLLER, AND FLASH MEMORY CONTROL METHOD | |
| JP5592478B2 (en) | Nonvolatile storage device and memory controller | |
| JP6237202B2 (en) | Semiconductor memory device and control method thereof | |
| JP5691311B2 (en) | Save processing device, save processing method, and save processing program | |
| JP6707939B2 (en) | Control device, storage device, control method, and program | |
| WO2016051599A1 (en) | Memory controller and data control method | |
| JP4710918B2 (en) | MEMORY CONTROLLER, FLASH MEMORY SYSTEM HAVING MEMORY CONTROLLER, AND FLASH MEMORY CONTROL METHOD | |
| US20110010580A1 (en) | Memory apparatus, memory controlling method and program | |
| JP6012432B2 (en) | Semiconductor memory device | |
| WO2016139774A1 (en) | Information processing device and information processing system | |
| JPWO2016001962A1 (en) | Storage system and storage control method | |
| JP6260395B2 (en) | Memory controller, memory system, and memory control method | |
| JP3934659B1 (en) | Memory controller and flash memory system | |
| JP4661809B2 (en) | MEMORY CONTROLLER, FLASH MEMORY SYSTEM PROVIDED WITH MEMORY CONTROLLER, AND FLASH MEMORY CONTROL METHOD | |
| JP2012033045A (en) | Electronic equipment and data reading method |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20161115 |
|
| A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20170714 |
|
| A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20170725 |
|
| A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20170919 |
|
| 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: 20171003 |
|
| A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20171016 |
|
| R150 | Certificate of patent or registration of utility model |
Ref document number: 6237202 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
| LAPS | Cancellation because of no payment of annual fees |