JP7291640B2 - 半導体記憶装置及び半導体記憶装置のリフレッシュ方法 - Google Patents

半導体記憶装置及び半導体記憶装置のリフレッシュ方法 Download PDF

Info

Publication number
JP7291640B2
JP7291640B2 JP2020009681A JP2020009681A JP7291640B2 JP 7291640 B2 JP7291640 B2 JP 7291640B2 JP 2020009681 A JP2020009681 A JP 2020009681A JP 2020009681 A JP2020009681 A JP 2020009681A JP 7291640 B2 JP7291640 B2 JP 7291640B2
Authority
JP
Japan
Prior art keywords
data
storage unit
block
page
written
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.)
Active
Application number
JP2020009681A
Other languages
English (en)
Other versions
JP2021118011A (ja
Inventor
元輝 上田
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Lapis Semiconductor Co Ltd
Original Assignee
Lapis Semiconductor Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Lapis Semiconductor Co Ltd filed Critical Lapis Semiconductor Co Ltd
Priority to JP2020009681A priority Critical patent/JP7291640B2/ja
Publication of JP2021118011A publication Critical patent/JP2021118011A/ja
Application granted granted Critical
Publication of JP7291640B2 publication Critical patent/JP7291640B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Memory System (AREA)
  • Read Only Memory (AREA)

Description

本発明は、半導体記憶装置及び半導体記憶装置のリフレッシュ方法に関する。
近年、SSD(Solid State Drive)、SD(Secure Digital)カード等のストレージデバイスやモバイル機器等において、NANDフラッシュメモリの需要が高まっている。それに伴って、NANDフラッシュメモリの大容量化も進んでいる。
NANDフラッシュメモリでは、ゲート絶縁膜の物理的な劣化によるデータ保持の不良やリードディスターブ等による電荷の移動等により、正しいデータ値が読み取れなくなる現象(以下、データの劣化と称する)が生じる。このようなデータの劣化に対処するため、NANDフラッシュメモリでは、メモリ領域のリフレッシュ処理が行われている(例えば、特許文献1)。
リフレッシュ処理は、NANDフラッシュメモリのブロックに書き込まれているデータをブロック内の全てのページについて一旦読み出し、他のブロックに新たに書き直す処理である。リフレッシュ処理は、例えばデータの読み出し時にデータの劣化が発見された場合に行われる。通常、NANDフラッシュメモリのデータの読み出しはページ単位で行われ、データの消去はブロック毎に行われる。リフレッシュ処理はデータの消去を伴う処理であるため、ブロック単位で行われる。
特開2009-87509号公報
メモリセルへのデータ記録方式として、1つのメモリセルに1ビットのデータを記録するSLC(Single Level Cell)方式、2ビットのデータを記録するMLC(Multiple Level Cell)方式、3ビットのデータを記録するTLC(Triple Level Cell)方式がある。近年では、1つのメモリセルに複数ビットのデータを記録できるMLC方式やTLC方式の採用が増加している傾向にある。しかし、これらのデータ記録方式には、1つのメモリセルに記録するデータのビット数が大きくなればなるほど、データの書き換え可能回数が少なくなるというデメリットが存在する。従って、MLC方式やTLC方式では、NANDフラッシュメモリを長寿命化するため、消去回数を抑える制御が特に必要となる。
上記の通り、NANDフラッシュメモリの特性上、データの読み出しはページ単位で行われる。このため、例えばブロック内の1ページのみが劣化していた場合でも、そのブロックはリフレッシュ対象となってしまう。従って、データが劣化していない正常なページについてまでデータのコピーを行うことになり、無駄な処理が発生してしまう。そして、リフレッシュ処理はデータの消去を伴うため、少数のエラーページのためにNANDフラッシュメモリの寿命を縮めてしまうという問題があった。
本発明は、上記問題点に鑑みてなされたものであり、データ消去の回数を抑えてメモリを長寿命化することが可能な半導体記憶装置を提供することを目的とする。
本発明に係る半導体記憶装置は、各々が複数のセルからなるm個のページを夫々含むn個のブロック(m,nは2以上の整数)を有する第1の記憶部と、複数のセルを有する第2の記憶部と、前記第1の記憶部及び前記第2の記憶部に対するデータの書き込み、読み出し及び消去を制御する制御部と、を有し、前記制御部は、前記第1の記憶部からページ毎にデータを読み出して誤り検出を行い、当該誤り検出において、前記第1の記憶部内でデータの誤りを含むページが検出された場合には、当該誤りを含むページのデータに誤り訂正を施したデータを前記第2の記憶部に書き込み、前記第1の記憶部の1のブロック内の所定数のページに記憶されていたデータが前記第2の記憶部に書き込まれた場合に、前記1のブロックのリフレッシュ処理を実行することを特徴とする。
また、本発明に係るリフレッシュ方法は、各々が複数のセルからなるm個のページを夫々含むn個のブロック(m,nは2以上の整数)を有する第1の記憶部と、複数のセルを有する第2の記憶部と、データの書き込み、読み出し、消去及び誤り検出訂正処理を制御する制御部と、を有する半導体記憶装置が実行するブロックのリフレッシュ方法であって、前記第1の記憶部からページ毎にデータを読み出して誤り検出を行うステップと、前記誤り検出において前記第1の記憶部にデータの誤りを含むページが検出された場合に、当該誤りを含むページのデータに誤り訂正を施したデータを前記第2の記憶部に書き込むステップと、前記第1の記憶部の1のブロックの所定数のページに記憶されていたデータが前記第2の記憶部に書き込まれた場合に、前記1のブロックのリフレッシュ処理を実行するステップと、を含むことを特徴とする。
本発明の半導体記憶装置によれば、データ消去の回数を抑えてメモリの長寿命化を図ることが可能となる。
実施例1のNANDフラッシュ制御システムの構成を示すブロック図である。 データ検査処理の処理ルーチンを示すフローチャートである。 冗長メモリへのデータの書き込みを模式的に示す図である。 リフレッシュ処理の処理ルーチンを示すフローチャートである。 リフレッシュ処理におけるデータの読み出し及び書き込みを模式的に示す図である。 実施例2のNANDフラッシュ制御システムの構成を示すブロック図である。 実施例2のNANDフラッシュメモリの第2の領域へのデータの書き込みを模式的に示す図である。 実施例2の変形例によるNANDフラッシュメモリの第2の領域へのデータの書き込みを模式的に示す図である。
以下に本発明の好適な実施例を詳細に説明する。なお、以下の各実施例における説明及び添付図面においては、実質的に同一または等価な部分には同一の参照符号を付している。
図1は、本発明に係るNANDフラッシュ制御システム100の概略構成を示すブロック図である。NANDフラッシュ制御システム100は、ホストコンピュータ10及び半導体記憶装置11から構成されている。
ホストコンピュータ10及び半導体記憶装置11は互いに通信接続されている。ホストコンピュータ10は、データの読み出しや書き込みを指示するコマンドを半導体記憶装置11に送信する。半導体記憶装置11は、ホストコンピュータ10からのコマンドを受信し、これに応じてデータの書き込み動作や読み出し動作を実行する。
半導体記憶装置11は、コントローラ12、NANDフラッシュメモリ13、RAM(Random Access Memory)14及び冗長メモリ15を有する。
コントローラ12は、半導体記憶装置11の動作を制御する制御部であり、例えばCPU(Central Processing Unit)から構成されている。コントローラ12は、NANDフラッシュメモリ13、RAM14及び冗長メモリ15にアクセスし、データの書き込み、読み出し及び消去等の各種のデータ処理を実行する。
また、コントローラ12は、ECC(Error Check and Correct)回路を含み、NANDフラッシュメモリ13から読み出したデータに対する誤り検出訂正処理を実行する。本実施例では、例えばNANDフラッシュメモリ13に設けられたゲート絶縁膜(図示せず)の物理的な劣化によるデータ保持の不良やリードディスターブによる電荷の移動等に起因する所謂データの劣化がエラーとして検出される。
また、コントローラ12は、誤り検出訂正処理におけるエラー検出の結果に基づいて、冗長メモリ15へのデータの書き込み及びNANDフラッシュメモリ13のリフレッシュ処理を実行する。
NANDフラッシュメモリ13は、例えばEEPROM(Electrically Erasable Programmable Read-Only Memory)等からなる不揮発性の半導体メモリである。NANDフラッシュメモリ13は、記憶領域としてn個のブロック(nは2以上の整数)を有する。n個のブロックの各々は、m個のページ(mは2以上の整数)から構成されている。m個のページの各々は、複数のセルから構成されている。本実施例では、各々のページへのデータの書き込みは、セル毎に2ビットのデータを記録するMLC(Multiple Level Cell)方式で行われる。
NANDフラッシュメモリ13へのデータの書き込み及びNANDフラッシュメモリ13からのデータの読み出しは、ページ毎に行われる。一方、NANDフラッシュメモリ13に記憶されているデータの消去は、ブロック単位で行われる。なお、NANDフラッシュメモリ13には、誤り訂正符号ECC(Error Correction Code)が付加されたデータが書き込まれる。
RAM14は、NANDフラッシュメモリ13のリフレッシュ処理におけるキャッシュメモリとして機能する揮発性メモリである。例えば、リフレッシュ処理では、NANDフラッシュメモリ13及び冗長メモリ15から読み出されたデータがRAM14にいったん格納される。そして、RAM14から当該データが読み出され、NANDフラッシュメモリ13に書き込まれる。
冗長メモリ15は、半導体記憶装置11にNANDフラッシュメモリ13とは別に設けられた不揮発性の半導体メモリである。冗長メモリ15は、各々が複数のセルからなる複数のページを有する。冗長メモリ15へのデータの書き込みは、セル毎に1ビットのデータを記録するSLC(Single Level Cell)方式によって行われる。
本実施例では、誤り検出によりデータの劣化が進んだページが検出された場合に、当該ページのデータが誤り訂正を経て冗長メモリ15に記録される。以後、ブロックのリフレッシュ処理が行われるまでの間、当該ページのデータを読み出す際には、冗長メモリ15からデータの読み出しが行われる。なお、ブロックのリフレッシュ処理が行われると、当該ブロックに対応するデータは冗長メモリ15から消去される。
次に、本実施例に係る半導体記憶装置11のエラー検出処理及びリフレッシュ処理の処理動作について、図2及び図4のフローチャートを参照して説明する。
コントローラ12は、例えば半導体記憶装置11の電源が投入された直後のタイミングで、NANDフラッシュメモリ13のエラー検出処理を実行する。本実施例のエラー検出処理は、誤り訂正符号ECCを用いた誤り検出訂正処理であり、n個のブロックの各々についてページ毎に行われる。以下の説明では、NANDフラッシュメモリ13のn個のブロックを第1ブロック~第nブロック、m個のページを第1ページ~第mページとする。
コントローラ12は、NANDフラッシュメモリ13のn個のブロックのうち、エラー検出の対象となるブロックを示す“k”の値をk=1にセットする(STEP101)。
コントローラ12は、NANDフラッシュメモリ13の第kブロックを対象としてデータ検査を実行する(STEP102)。具体的には、第1~第mページの各々から順次データを読み出し、読み出したデータに対して誤り検出訂正を行うことにより、各ページのデータの劣化の有無を検出する。
コントローラ12は、データ検査(誤り検出訂正処理)の結果、データの劣化したページが発見されたか否かを判定する(STEP103)。
データの劣化したページが発見されたと判定すると(STEP103:Yes)、コントローラ12は、誤り訂正を経たNANDフラッシュメモリ13の当該ページのデータを、冗長メモリ15に書き込む(STEP104)。一方、データの劣化したページが発見されたと判定されなかった場合(STEP103:No)、STEP107に進む。
図3は、STEP104で行われる冗長メモリへのデータの書き込みを模式的に示す図である。例えば、NANDフラッシュメモリ13の「ブロック2」の「ページ1」でデータの劣化が検出された場合、ブロック2のページ1(図4に斜線で示す)に記録されていたデータである「データ2,1」が誤り訂正を経て冗長メモリ15に書き込まれる。
再び図2を参照すると、コントローラ12は、第kブロックの閾値以上のページ数のデータが冗長メモリ15に格納されたか否か(すなわち、第kブロックの所定以上のデータ量のデータが冗長メモリ15に書き込まれたか否か)を判定する(STEP105)。
第kブロックの閾値以上のページ数のデータが冗長メモリ15に格納されたと判定すると(STEP105:Yes)、コントローラ12は、NANDフラッシュメモリ13のリフレッシュ処理を実行する(STEP106)。
図4は、リフレッシュ処理の処理ルーチンを示すフローチャートである。まず、コントローラ12は、リフレッシュ処理におけるデータの書き込み先として用いるブロック(以下、リフレッシュ先ブロックと称する)を空きブロックとするため、当該ブロックに書き込まれているデータを消去する(STEP201)。
コントローラ12は、NANDフラッシュメモリ13の第kブロックのm個のページのうち、リフレッシュ処理におけるデータ移動の対象となるページを示す“j”の値をj=1にセットする(STEP202)。
コントローラ12は、jページ目のデータが冗長メモリ15に格納されているか否か、すなわち図2のフローチャートのSTEP104で冗長メモリ15に書き込まれたデータであるか否かを判定する(STEP203)。
jページ目のデータが冗長メモリ15に格納されていると判定すると(STEP203:Yes)、コントローラ12は、jページ目のデータを冗長メモリ15から読み出す(STEP204)。
一方、jページ目のデータが冗長メモリ15に格納されていないと判定すると(STEP203:No)、コントローラ12は、jページ目のデータをNANDフラッシュメモリ13の第kブロックの第jページから読み出す(STEP205)。
コントローラ12は、STEP204又はSTEP205で読み出されたjページ目のデータを、NANDフラッシュメモリ13のリフレッシュ先ブロックのメモリ領域に書き込む(STEP206)。
図5は、STEP204~206で行われるデータの読み出し及び書き込みを模式的に示す図である。ここでは、NANDフラッシュメモリ13の「ブロック2」を対象とするエラー検出処理(図2のSTEP102~104を参照)において、「ページ1、3、4、5及びm」でデータのエラーが検出された場合を例として示している。
ページ1、3、4、5及びmでデータのエラーが検出された場合、当該ページに記憶されていたデータが誤り訂正を経て冗長メモリ15にコピーされる。このため、図5に示すように、冗長メモリ15には、NANDフラッシュメモリ13のブロック2のページ1、3、4、5及びmの各々に対応するデータである「データ2,1」、「データ2,3」、「データ2,4」、「データ2,5」及び「データ2,m」が格納されている。従って、コントローラ12は、これらのデータを読み出し、リフレッシュ先のブロックである「ブロックX」に書き込む。
一方、ブロック2のページ1、3、4、5及びm以外のページに書き込まれているデータについては、データエラーが検出されていないため、対応するデータが冗長メモリ15に格納されていない。このため、コントローラ12は、これらのデータをNANDフラッシュメモリ13のブロック2から読み出し、リフレッシュ先のブロックであるブロックXに書き込む。
これにより、ブロックXには、ページ1~mに対応するデータ2,1、データ2,2データ2,3、・・・データ2,mが書き込まれ、ブロック2についてのリフレッシュ処理が完了する。
再び図4を参照すると、コントローラ12は、STEP203~206の一連の処理が第kブロックのmページ目まで行われたか否かを判定する(STEP207)。
一連の処理がmページ目まで行われていないと判定すると(STEP207:No)、jの値を“+1”だけインクリメントし(STEP208)、STEP203に戻る。
一方、一連の処理がmページ目まで行われたと判定すると(STEP207:Yes)、冗長メモリ15に記録されている第kブロックのデータを消去し(STEP209)、リフレッシュ処理を終了する。
再び図2を参照すると、STEP103においてデータの劣化したページが発見されたと判定されなかった場合(STEP103:No)、STEP105において第kブロックの閾値以上のページ数のデータが冗長メモリ15に格納されていないと判定された場合(STEP105:No)、及びSTEP106の第kブロックのリフレッシュ処理が終了した場合、コントローラ12は、STEP102~106の一連の処理が第nブロックまで行われたか否かを判定する(STEP107)。
一連の処理が第nブロックまで行われていないと判定すると(STEP107:No)、kの値を“+1”だけインクリメントし(STEP108)、STEP102に戻る。
一方、一連の処理が第nブロックまで行われたと判定すると(STEP107:Yes)、NANDフラッシュメモリ13についてのエラー検出処理を終了する。
以上のように、本実施例の半導体記憶装置11では、NANDフラッシュメモリ13からデータを読み出して誤り検出訂正を行い、エラーが検出されたページのデータを冗長メモリ15に書き込む。そして、特定のブロック内の一定以上のページ数のデータが冗長メモリ15に記録された場合に、当該ブロックのリフレッシュ処理を実行する。
本実施例の半導体記憶装置11によれば、データの劣化が発見されたページの数が1つのブロックにつき所定数以上に達した場合に当該ブロックのリフレッシュ処理を行うため、データが劣化したページが発見される度にリフレッシュ処理を行う場合と比べて、データの消去回数を抑えることができる。従って、NANDフラッシュメモリ13を長寿命化することが可能となる。
次に、本発明の実施例2について説明する。図6は、本実施例のNANDフラッシュ制御システム200の概略構成を示すブロック図である。NANDフラッシュ制御システム200は、ホストコンピュータ20及び半導体記憶装置21から構成されている。
半導体記憶装置21は、コントローラ12、RAM14及びNANDフラッシュメモリ23を有する。
本実施例のNANDフラッシュメモリ23は、複数のブロックからなる第1の領域と、これとは異なるブロックからなる第2の領域と、から構成されている。
第1の領域は、NANDフラッシュメモリ23に対する通常のデータの書き込みに用いられるメモリ領域である。第1の領域は、各々がm個のページからなるp個のブロック(pはp<nを満たす自然数)から構成されている。本実施例では、第1の領域へのデータの書き込みはMLC方式によって行われる。
第2の領域は、第1の領域においてデータが劣化したページが検出された場合に、当該ページのデータを書き込むためのメモリ領域である。すなわち、本実施例では、実施例1の冗長メモリ15(図1を参照)の代わりに、通常のメモリ領域として用いる第1の領域と同一のチップ内に、冗長領域として用いる第2の領域が設けられている。第2の領域は、各々がr個のページ(rはr<mを満たす自然数)からなるq個のブロック(qはq=n-pを満たす自然数)から構成されている。本実施例では、第2の領域へのデータの書き込みはSLC方式によって行われる。
コントローラ12は、NANDフラッシュメモリ13の第1の領域のp個のブロックに対してページ毎に誤り検出訂正処理を行い、各ページにおけるデータの劣化の有無を検出する。データの劣化したページを発見すると、コントローラ12は、誤り訂正を経た当該ページのデータをNANDフラッシュメモリ13の第2の領域に書き込む。
図7は、第2の領域へのデータの書き込みを模式的に示す図である。例えば、NANDフラッシュメモリ13の第1の領域のブロック2において、ページ1、3及び4でデータの劣化が検出された場合、これらのページに記録されていたデータである「データ2,1」、「データ2,3」及び「データ2,4」が誤り訂正を経てNANDフラッシュメモリ13の第2の領域に書き込まれる。以後、ブロックのリフレッシュ処理が行われるまでの間、当該ページのデータを読み出す際には、第2の領域からデータの読み出しが行われる。そして、第1の領域のブロックのリフレッシュ処理が行われると、当該ブロックに対応するデータは第2の領域から消去される。
なお、第2の領域の1つのブロックには第1の領域の1つのブロックのページのデータが書き込まれるように、管理及び制御がなされる。すなわち、第1の領域の同一のブロックに記録されていたデータは、第2の領域の同一のブロックに書き込まれる。そして、第1の領域の互いに異なるブロックに記録されていたデータは、第2の領域の互いに異なるブロックにそれぞれ書き込まれる。
コントローラ12は、第2の領域の1つのブロックの全ページ(すなわち、r個のページ)にデータが書き込まれた場合に、そのデータの元の記録場所であるページを含む第1の領域のブロックについて、リフレッシュ処理を実行する。
リフレッシュ処理では、コントローラ12は、第2の領域に記録されているデータ(すなわち、データの劣化が発見されたページのデータ)については、第2の領域から読み出したデータをリフレッシュ先のブロックに書き込む。一方、第2の領域に記録されていないデータ(すなわち、データの劣化が発見されなかったページのデータ)については、コントローラ12は、第1の領域から読み出したデータをリフレッシュ先のブロックに書き込む。
このように、本実施例の半導体記憶装置21では、NANDフラッシュメモリ13にSLC方式でデータを書き込む第2の領域を設け、データエラーが検出されたページのデータの移動先となる退避用のメモリとして使用する。SLC方式は、MLC方式やTLC方式と比べてデータの消去可能回数が多いため、データが繰り返し消去されることを前提とする退避用のメモリとして使用しても、NANDフラッシュメモリ13の寿命の低下を抑えることができる。従って、本実施例の半導体記憶装置21によれば、実施例1のような冗長メモリを別途設けることなく、NANDフラッシュメモリ13を長寿命化することが可能となる。
なお、本発明は上記実施例で示したものに限られない。例えば、上記実施例では、半導体記憶装置11の電源投入の直後にNANDフラッシュメモリ13の第1~第nのブロックの各々のページについて順次エラー検出処理を行う例について説明した。しかし、エラー検出処理を行うタイミングはこれに限られない。例えば、あるブロックに対してアクセスがあった場合に、そのブロックについてのみエラー検出処理を行ってもよい。この場合、当該ブロックのみを対象として、図2のフローチャートのSTEP103~106の処理(すなわち、冗長メモリ15へのデータの書き込み及びリフレッシュ処理)が実行される。
また、電源投入直後にエラー検出処理を行う場合であっても、必ずしも1回のエラー検出処理で全てのブロックに対して処理を行わなくてもよい。例えば、1回の電源投入につきk個(kはn未満の自然数)のブロックを対象としてエラー検出処理を行い、対象となるブロックを電源投入毎に順次遷移させるようにしてもよい。
また、上記実施例2では、NANDフラッシュメモリ23が、通常のデータの書き込みを行う第1の領域と、エラーを含むページが検出された際に当該ページのデータの書き込みを行う第2の領域と、から構成されている場合について説明した。しかし、第1の領域及び第2の領域の区分は、予めなされていなくてもよい。すなわち、通常の状態ではNANDフラッシュメモリ23の全てのメモリ領域を第1の領域として使用し、データの劣化が検出された場合に、その時点で空いているブロックを第2の領域として使用するように構成されていてもよい。
また、上記実施例2では、MLC方式で第1の領域へのデータの書き込みを行い、SLC方式で第2の領域へのデータの書き込みを行う場合を例として説明した。しかし、データ記録方式はこれに限られない。例えば、第1の領域にはTLC(Triple Level Cell)方式でデータを記録し、第2の領域にはMLC方式でデータを記録するようにしてもよい。ただし、第2の領域は、データエラーが検出された第1の領域のページのデータを一時的に移す退避用のメモリとして用いる領域であり、繰り返し消去が行われることを前提とする記憶領域であるため、第1の領域よりも消去可能回数の多いデータ記録方式を採用することが望ましい。
また、上記実施例では、リフレッシュ処理の最初の段階(図4のSTEP201)でリフレッシュ先ブロックに書き込まれているデータを消去する場合を例として説明した。しかし、リフレッシュ先ブロックのデータの消去のタイミングはこれに限られず、リフレッシュ処理を行う段階でリフレッシュ先ブロックにデータが記録されていない状態が実現されていればよい。例えば、予め空きブロックとなっているブロックをリフレッシュ先ブロックとして用いてもよい。また、リフレッシュ処理を行った後に元のデータが記録されていたブロックの消去を行うことにより、一定の空きブロックが常に確保されるようにしてもよい。
また、上記実施例2では、第2の領域の1つのブロックの全ページにデータが格納された場合にリフレッシュ処理を行う場合を例として説明した。しかし、リフレッシュ処理を行わず、エラー検出時のデータの移動先(退避先)である第2領域のブロックを、そのままデータのコピー先のブロックとして用いてもよい。例えば、図8に示すように、劣化したデータを含むページを発見した際に当該ページのデータを第2の領域のブロックに順次書き込み、第2の領域の1のブロックの全てのページにデータが格納された場合には、当該1のブロックに隣接するブロックにデータを順次書き込む。第2の領域の複数のブロックに亘ってデータを記録することにより、最終的には第1の領域の1のブロックの全てのページのデータを第2領域に移すことができる。そして、第1の領域の1のブロックに対応するデータを第2の領域の複数のブロックで管理することにより、リフレッシュ処理を行うことなくデータの書き直しを完了することができる。従って、リフレッシュ処理に付随するデータの消去を行う必要がないため、NANDフラッシュメモリを長寿命化することが可能となる。
また、本発明の半導体記憶装置は、NANDフラッシュメモリ以外の他の種類の不揮発性メモリにも適用することが可能である。例えば、NANDフラッシュメモリはページ毎にデータの書き込み及び読み出しを行い、ブロック毎にデータの消去を行うことを前提としているが、これとは異なり、ページ毎にデータの消去を行うことが可能な不揮発性メモリに本発明を適用することも可能である。このような不揮発性メモリにおいても、誤りを含むページの数が一定以上に達した場合にリフレッシュ処理を実行することにより、その都度リフレッシュ処理を実行する場合と比べて、少ない機会に集中してリフレッシュ処理を行うことが可能となる。
100、200 NANDフラッシュ制御システム
10 ホストコンピュータ
11、21 半導体記憶装置
12 コントローラ
13 NANDフラッシュメモリ
14 RAM
15 冗長メモリ

Claims (10)

  1. 各々が複数のセルからなるm個のページを夫々含むn個のブロック(m,nは2以上の整数)を有する第1の記憶部と、
    複数のセルを有する第2の記憶部と、
    前記第1の記憶部及び前記第2の記憶部に対するデータの書き込み、読み出し及び消去を制御する制御部と、
    を有し、
    前記制御部は、前記第1の記憶部からページ毎にデータを読み出して誤り検出を行い、
    当該誤り検出において、前記第1の記憶部内でデータの誤りを含むページが検出された場合には、当該誤りを含むページのデータに誤り訂正を施したデータを前記第2の記憶部に書き込み、
    前記第1の記憶部の1のブロック内の所定数のページに記憶されていたデータが前記第2の記憶部に書き込まれた場合に、前記1のブロックのリフレッシュ処理を実行することを特徴とする半導体記憶装置。
  2. 前記制御部は、前記リフレッシュ処理において、前記1のブロックのm個のページに記憶されているデータのうち、前記第2の記憶部に書き込まれた前記データを前記第1の記憶部の1の空きブロックに書き込み、前記第2の記憶部に書き込まれた前記データ以外のデータを前記第1の記憶部の前記1のブロックから読み出して前記1の空きブロックに書き込むことを特徴とする請求項1に記載の半導体記憶装置。
  3. 前記制御部は、前記第1の記憶部の前記1のブロック以外のブロックのうちの1つのブロックに記録されているデータを消去することにより、前記1の空きブロックを生成することを特徴とする請求項2に記載の半導体記憶装置。
  4. 前記制御部は、セル毎に複数ビットのデータを記録する方式である第1のデータ記録方式で前記第1の記憶部にデータを書き込み、
    セル毎に記録されるデータのビット数が前記第1のデータ記録方式よりも少ない第2のデータ記録方式で前記第2の記憶部にデータを書き込むことを特徴とする請求項1乃至3のいずれか1に記載の半導体記憶装置。
  5. 前記第1のデータ記録方式は、MLC(Multiple Level Cell)方式又はTLC(Triple Level Cell)方式であり、
    前記第2のデータ記録方式は、SLC(Single Level Cell)方式であることを特徴とする請求項4に記載の半導体記憶装置。
  6. 前記第1の記憶部は、前記第1のデータ記録方式でデータが記録される第1の不揮発性メモリから構成され、
    前記第2の記憶部は、前記第2のデータ記録方式でデータが記録される第2の不揮発性メモリから構成されていることを特徴とする請求項4又は5に記載の半導体記憶装置。
  7. 前記第1の記憶部は、1の不揮発性メモリ内のn個のブロックからなるブロック群として構成され、
    前記第2の記憶部は、前記1の不揮発性メモリ内の前記n個のブロックとは異なるブロックから構成されていることを特徴とする請求項1乃至5のいずれか1に記載の半導体記憶装置。
  8. 各々が複数のセルからなるm個のページを夫々含むn個のブロック(m,nは2以上の整数)を有する第1の記憶部と、複数のセルを有する第2の記憶部と、データの書き込み、読み出し、消去及び誤り検出訂正処理を制御する制御部と、を有する半導体記憶装置が実行するブロックのリフレッシュ方法であって、
    前記第1の記憶部からページ毎にデータを読み出して誤り検出を行うステップと、
    前記誤り検出において前記第1の記憶部にデータの誤りを含むページが検出された場合に、当該誤りを含むページのデータに誤り訂正を施したデータを前記第2の記憶部に書き込むステップと、
    前記第1の記憶部の1のブロックの所定数のページに記憶されていたデータが前記第2の記憶部に書き込まれた場合に、前記1のブロックのリフレッシュ処理を実行するステップと、
    を含むことを特徴とするリフレッシュ方法。
  9. 前記リフレッシュ処理を実行するステップは、
    前記1のブロックのm個のページに記憶されているデータのうち、前記第2の記憶部に書き込まれた前記データを前記第1の記憶部の1の空きブロックに書き込むステップと、
    前記1のブロックのm個のページに記憶されているデータのうち、前記第2の記憶部に書き込まれた前記データ以外のデータを前記第1の記憶部の前記1のブロックから読み出して前記1の空きブロックに書き込むステップと、
    を含むことを特徴とする請求項8に記載のリフレッシュ方法。
  10. 前記第1の記憶部の前記1のブロック以外のブロックのうちの1つのブロックに記録されているデータを消去することにより、前記1の空きブロックを生成するステップを含むことを特徴とする請求項9に記載のリフレッシュ方法。
JP2020009681A 2020-01-24 2020-01-24 半導体記憶装置及び半導体記憶装置のリフレッシュ方法 Active JP7291640B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2020009681A JP7291640B2 (ja) 2020-01-24 2020-01-24 半導体記憶装置及び半導体記憶装置のリフレッシュ方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2020009681A JP7291640B2 (ja) 2020-01-24 2020-01-24 半導体記憶装置及び半導体記憶装置のリフレッシュ方法

Publications (2)

Publication Number Publication Date
JP2021118011A JP2021118011A (ja) 2021-08-10
JP7291640B2 true JP7291640B2 (ja) 2023-06-15

Family

ID=77175092

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2020009681A Active JP7291640B2 (ja) 2020-01-24 2020-01-24 半導体記憶装置及び半導体記憶装置のリフレッシュ方法

Country Status (1)

Country Link
JP (1) JP7291640B2 (ja)

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2004326867A (ja) 2003-04-22 2004-11-18 Toshiba Corp データ記憶システム
JP2005243183A (ja) 2004-02-27 2005-09-08 Toshiba Corp データ記憶システム
JP2009205578A (ja) 2008-02-29 2009-09-10 Toshiba Corp 半導体記憶装置

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2004326867A (ja) 2003-04-22 2004-11-18 Toshiba Corp データ記憶システム
JP2005243183A (ja) 2004-02-27 2005-09-08 Toshiba Corp データ記憶システム
JP2009205578A (ja) 2008-02-29 2009-09-10 Toshiba Corp 半導体記憶装置

Also Published As

Publication number Publication date
JP2021118011A (ja) 2021-08-10

Similar Documents

Publication Publication Date Title
JP5505922B2 (ja) メモリシステム及びその読み出し方法
US8271515B2 (en) System and method for providing copyback data integrity in a non-volatile memory system
US9852032B2 (en) Data storage devices and data maintenance methods
US20120072798A1 (en) Semiconductor device
TWI388982B (zh) 包含具有電荷累積層及控制閘極之記憶胞的半導體記憶裝置及記憶系統
JPWO2007119267A1 (ja) フラッシュメモリ用のメモリコントローラ
US10410738B2 (en) Memory system and control method
US20170162267A1 (en) Data Storage Device and Data Maintenance Method
US9361221B1 (en) Write amplification reduction through reliable writes during garbage collection
US11138070B2 (en) Memory system and method performed thereby
JP5592478B2 (ja) 不揮発性記憶装置及びメモリコントローラ
US10714193B2 (en) Data storage apparatus and method for preventing data error using the same
JP5494086B2 (ja) 不揮発性記憶装置および不揮発性メモリコントローラ
US20210034541A1 (en) Memory system, memory control device, and memory control method
JP7291640B2 (ja) 半導体記憶装置及び半導体記憶装置のリフレッシュ方法
US11487655B2 (en) Method for managing flash memory module and associated flash memory controller and electronic device based on timing of dummy read operations
US11249838B2 (en) Memory system, memory controller, and method of operating memory controller
JP2010128697A (ja) メモリシステム
US8885406B2 (en) Memory device, memory control device, and memory control method
US10777297B2 (en) Age-based refresh of firmware
JP2005292925A (ja) メモリコントローラ、フラッシュメモリシステム、並びに、フラッシュメモリの制御方法
US11367472B2 (en) Semiconductor storage device
US11656790B2 (en) Memory system, memory controller, and operation method of memory system
TWI823649B (zh) 快閃記憶體控制器的控制方法、快閃記憶體控制器以及電子裝置
JP4304167B2 (ja) メモリコントローラ、フラッシュメモリシステム及びフラッシュメモリの制御方法

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20220907

TRDD Decision of grant or rejection written
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20230428

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20230509

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20230605

R150 Certificate of patent or registration of utility model

Ref document number: 7291640

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150