JP2020123023A - 半導体記憶装置 - Google Patents

半導体記憶装置 Download PDF

Info

Publication number
JP2020123023A
JP2020123023A JP2019013019A JP2019013019A JP2020123023A JP 2020123023 A JP2020123023 A JP 2020123023A JP 2019013019 A JP2019013019 A JP 2019013019A JP 2019013019 A JP2019013019 A JP 2019013019A JP 2020123023 A JP2020123023 A JP 2020123023A
Authority
JP
Japan
Prior art keywords
address
page
block
logical address
memory device
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.)
Granted
Application number
JP2019013019A
Other languages
English (en)
Other versions
JP6708762B1 (ja
Inventor
規男 服部
Norio Hattori
規男 服部
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.)
Winbond Electronics Corp
Original Assignee
Winbond Electronics Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Winbond Electronics Corp filed Critical Winbond Electronics Corp
Priority to JP2019013019A priority Critical patent/JP6708762B1/ja
Priority to TW108134999A priority patent/TWI700702B/zh
Priority to CN201911092557.1A priority patent/CN111488292B/zh
Priority to US16/681,751 priority patent/US11030091B2/en
Priority to KR1020190146374A priority patent/KR102338009B1/ko
Application granted granted Critical
Publication of JP6708762B1 publication Critical patent/JP6708762B1/ja
Publication of JP2020123023A publication Critical patent/JP2020123023A/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/14Error detection or correction of the data by redundancy in operation
    • G06F11/1402Saving, restoring, recovering or retrying
    • G06F11/1415Saving, restoring, recovering or retrying at system level
    • G06F11/1441Resetting or repowering
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/0223User address space allocation, e.g. contiguous or non contiguous base addressing
    • G06F12/023Free address space management
    • G06F12/0238Memory management in non-volatile memory, e.g. resistive RAM or ferroelectric memory
    • G06F12/0246Memory management in non-volatile memory, e.g. resistive RAM or ferroelectric memory in block erasable memory, e.g. flash memory
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/0614Improving the reliability of storage systems
    • G06F3/0619Improving the reliability of storage systems in relation to data integrity, e.g. data losses, bit errors
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/0671In-line storage system
    • G06F3/0683Plurality of storage devices
    • G06F3/0688Non-volatile semiconductor memory arrays
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C16/00Erasable programmable read-only memories
    • G11C16/02Erasable programmable read-only memories electrically programmable
    • G11C16/04Erasable programmable read-only memories electrically programmable using variable threshold transistors, e.g. FAMOS
    • G11C16/0483Erasable programmable read-only memories electrically programmable using variable threshold transistors, e.g. FAMOS comprising cells having several storage transistors connected in series
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C16/00Erasable programmable read-only memories
    • G11C16/02Erasable programmable read-only memories electrically programmable
    • G11C16/06Auxiliary circuits, e.g. for writing into memory
    • G11C16/10Programming or data input circuits
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2212/00Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
    • G06F2212/10Providing a specific technical effect
    • G06F2212/1032Reliability improvement, data loss prevention, degraded operation etc
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2212/00Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
    • G06F2212/10Providing a specific technical effect
    • G06F2212/1056Simplification
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2212/00Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
    • G06F2212/72Details relating to flash memory management
    • G06F2212/7201Logical to physical mapping or translation of blocks or pages
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Human Computer Interaction (AREA)
  • Microelectronics & Electronic Packaging (AREA)
  • Computer Security & Cryptography (AREA)
  • Quality & Reliability (AREA)
  • Read Only Memory (AREA)
  • Techniques For Improving Reliability Of Storages (AREA)
  • Power Sources (AREA)
  • Retry When Errors Occur (AREA)
  • Memory System (AREA)

Abstract

【課題】プログラムの信頼性を改善する半導体記憶装置を提供する。【解決手段】本発明のフラッシュメモリは、メモリコントローラ200と、NAND型のメモリ装置300とを含む。メモリコントローラ200は、電源電圧が一定電圧に降下したことを検出する電圧検出部210と、論理アドレスを物理アドレスに変換する変換テーブルを記憶するSRAM230と、プログラム中に電圧検出部210により一定電圧が検出されたとき、プログラムされているブロックおよびページの論理アドレスと、当該論理アドレスを他の物理アドレスに変換するための変換情報を記憶する抵抗変化型メモリ240と、変換テーブルまたは抵抗変化型メモリ240の変換情報に基づき入力された論理アドレスを物理アドレスに変換する書込み/セレクタ220とを含む。変換された物理アドレスに従い、選択されたブロックのページにデータをプログラムさせる。【選択図】図3

Description

本発明は、半導体記憶装置に関し、特に、NAND型フラッシュメモリのプログラムに関する。
通常、NAND型フラッシュメモリは、パッケージ内に、メモリチップと当該メモリチップを制御するためのメモリコントローラとを含んで構成される。メモリコントローラに、メモリチップのエラー訂正やバッドブロックの管理等の一定の負荷を負わせることで、ホスト側のコンピュータの負荷を軽減させることができる。
例えば、特許文献1のフラッシュメモリシステムは、図1に示すように、フラッシュメモリ10と、ホストデバイス40とを含み、フラッシュメモリ10は、メモリコントローラ20とメモリチップ30とを含む。メモリコントローラ20は、ホストデバイス40との間でデータの転送を行うホストインターフェース22、メモリチップ30との間でデータの転送を行うメモリインターフェース24、データ転送やメモリチップの動作を制御するMPU、プログラムやデータを記憶するROM、RAMなどを備えている。メモリチップ30は、例えばNAND型フラッシュメモリのチップである。
特開2009−175877号公報
NAND型のフラッシュメモリでは、読出しおよびプログラムはページ単位で行われ、消去はブロック単位で行われる。ホストデバイスは、これらの動作を指示するとき、読み出し、プログラム、消去のためのアドレスをメモリコントローラに出力する。ホストデバイスからのアドレスは論理アドレスであり、メモリコントローラは、この論理アドレスを物理アドレスに変換するため、SRAMに保持された変換テーブルを参照する。変換テーブルは、電源投入時に、メモリセルアレイに用意された領域からSRAMにロードされる。
ホストデバイスは、プログラムを指示するとき、各種制御信号(ALE、CLE等)に加えて、プログラム命令、書込みデータおよび論理アドレスLADをメモリコントローラへ出力する。論理アドレスLADは、論理ブロックアドレスLBA、論理ページアドレスLPAおよび論理カラムアドレスLCAを含む。メモリコントローラは、上記したように変換テーブルを参照し、論理ブロックアドレスLBAを物理ブロックアドレスPBAに変換し、物理ブロックアドレスPBAで指定されたブロックのページにデータをプログラムする。ブロック内のページは、論理ページアドレスLPAで指定される。
このようなプログラムの最中に、何らかの理由により電源電圧が降下したり、電源が喪失すると、プログラムが途中で中断されることがある。メモリコントローラは、正常にプログラムが終了すれば、Ready信号をホストデバイスに送信し、ホストデバイスは、正常にプログラムが終了したことを認識し、次の動作に備えるが、プログラムが途中で中断された場合には、Ready信号を受け取ることができず(例えば、Busy信号のまま)、ホストデバイスは、プログラムを正常に終了できなかったことを認識する。この場合、ホストデバイスは、電源が再投入されたとき、あるいは電源復旧後に、メモリコントローラに対してプログラムのやり直しを指示する。
プログラムのやり直しの場合でも、メモリコントローラは、論理ブロックアドレスを物理ブロックアドレスに変換し、物理ブロックアドレスで指定されたブロックの同一ページにデータをプログラムするが、プログラムが中断されたページに再度データをプログラムするとプログラムの信頼性が低下する。つまり、NAND型フラッシュメモリのプログラムは、消去状態のメモリセルにデータをプログラムするが、一度、プログラムされたページは必ずしも全てのメモリセルが消去状態にあるわけではないので、プログラムされたデータのしきい値分布幅が期待のものよりも広がる可能性がある。他方、プログラムが中断されたページを含むブロックを消去して再度プログラムをすることも可能であるが、その場合には、ブロックの他のページに格納されているデータを他のブロックに退避させなければならず、煩雑な処理が必要になってしまう。
本発明は、上記したような従来の課題を解決するものであり、プログラムの信頼性を改善する半導体記憶装置を提供することを目的とする。
本発明に係る半導体記憶装置は、複数のブロックを含むNAND型のメモリセルアレイと、電源電圧が一定電圧に降下したことを検出する検出手段と、論理アドレスを物理アドレスに変換する変換テーブルを記憶する揮発性メモリと、物理アドレスに従い選択されたブロックのページにデータをプログラムするプログラム手段と、前記プログラム手段によりプログラムされている間に前記検出手段により一定電圧が検出されたとき、プログラムされているブロックおよびページの論理アドレスと、当該論理アドレスを他の物理アドレスに変換するための変換情報を記憶する不揮発性メモリと、前記揮発性メモリの変換テーブルまたは前記不揮発性メモリの変換情報に基づき入力された論理アドレスを物理アドレスに変換する変換手段とを有する。
ある実施態様では、前記他の物理アドレスは、プログラムが中断されたページを退避させるために用意された専用のブロックを選択するためのアドレスである。ある実施態様では、前記他の物理アドレスは、ブロックを選択するためのブロックアドレスと、ページを選択するためのページアドレスとを含む。ある実施態様では、前記検出手段により一定電圧が検出されたことに応答して、前記変換情報を不揮発性メモリに書込む手段を含む。ある実施態様では、前記一定電圧は、半導体記憶装置が動作可能な最小電圧よりも大きい。ある実施態様では、前記書込み手段は、電源電圧が喪失する前、または半導体記憶装置が動作できなくなる前に、前記変換情報を不揮発性メモリに書込む。ある実施態様では、前記不揮発性メモリは、可変抵抗型メモリである。ある実施態様では、前記変換手段は、前記不揮発性メモリの変換情報を先に選択する。ある実施態様では、前記変換手段は、入力された論理アドレスが前記不揮発性メモリに記憶された論理アドレスを比較し、両者が一致する場合には、前記他の物理アドレスに変換する。
本発明によれば、プログラムされている間に電源電圧が降下した一定電圧が検出されたとき、プログラムされているブロックおよびページの論理アドレスと、当該論理アドレスを他の物理アドレスに変換するための変換情報を記憶する不揮発性メモリを設けるようにしたので、プログラムをやり直すときに信頼性の高いページにプログラムすることが可能になる。
従来の半導体メモリの一例を示す図である。 本発明の実施例に係るフラッシュメモリの全体構成を示す図である。 本発明の実施例に係るメモリコントローラの内部構成を示すブロック図である。 本発明の実施例に係るメモリセルアレイのブロックの内部構成を示す図である。 SRAMに保持された変換テーブルによりホストデバイスからの論理アドレスを物理アドレスに変換する動作を説明する図である。 本発明の実施例に係る電源降下時のプログラムリカバリー動作を説明するフローである。 図7(A)は、プログラムのターゲットである選択ブロックおよび選択ページを示し、図7(B)は、ページ退避用ブロックとそのページを示す図である。 RRAMに格納されるプログラムのターゲットの論理アドレスとページ退避用ブロックの物理アドレスを示す図である。 本発明の実施例に係る電源復旧後に再プログラムをするときの論理アドレスの変換動作を説明するフローである。
次に、本発明の実施の形態について図面を参照して詳細に説明する。本発明のフラッシュメモリは、NAND型ストリングのメモリセルを有するメモリ装置と、メモリ装置を制御するメモリコントローラとを含んで構成される。メモリコントローラは、メモリ装置を形成するチップと同一のチップ上に形成されてもよいし、異なるチップ上に形成されてもよい。また、フラッシュメモリが複数のチップから構成されるとき、複数のチップは積層されるように構成されてもよい。
図2は、本発明の実施例に係るフラッシュメモリ100の構成を示す図である。本実施例のフラッシュメモリ100は、メモリコントローラ200と、1つまたは複数のNAND型メモリ装置300とを含んで構成される。メモリコントローラ200は、ホストデバイスから各種制御信号(コマンドラッチイネーブル信号CLE、アドレスラッチイネーブル信号ALEなど)、データ、コマンド等を受け取り、これらの信号等に基づきメモリ装置300の読出し、プログラム(書込み)、消去等を制御する。また、メモリコントローラ200は、メモリ装置の動作状態を示すReady信号やBusy信号をホストデバイス40に出力する。
図3に、メモリコントローラ200の内部構成を示す。本実施例のメモリコントローラ200は、電圧検出部210、書込み/セレクタ220、SRAM230、RRAM(抵抗変化型メモリ)240を含んで構成される。なお、メモリコントローラ200は、図3に示す構成以外にも、マイクロプロセッサ(MPU)やROMなどを含み、ROMに格納されたソフトウエアプログラムを実行することで、メモリ装置300の種々の動作を制御したり、電圧検出部210、書込み/セレクタ220、SRAN230、RRAM240の制御を行う。
電圧検出部210は、フラッシュメモリ100あるいはフラッシュメモリ100を含むシステムに供給される電源電圧Vccを監視し、電源電圧Vccが一定電圧Vdに降下したか否かを検出する。一定電圧Vdは、フラッシュメモリ100の動作を保証する最低電圧Vminよりも高い電圧、またはメモリコントローラ200が実行するパワーダウンシーケンスのトリガーとなる電圧Vpwdより高い電圧に設定される。従って、電源電圧Vccが一定電圧Vdに降下した時点で、フラッシュメモリ100は未だ動作可能であり、また、パワーダウンシーケンスは未だ実行されない。電源電圧Vccが電圧Vpwdまで降下すると、パワーダウンシーケンスが実行され、例えば、昇圧された電圧が急激に放電されることなく、フラッシュメモリ100の動作が正常に終了される。電圧検出部210は、一定電圧Vdを検出すると、書込み/セレクタ220等の各部にアラート信号を出力する。
書込み/セレクタ220は、ホストデバイス40から出力される論理アドレスLADを受け取ったとき、論理アドレスLADを物理アドレスPDAに変換する。変換された物理アドレスは、メモリ装置300をアクセスするために使用される。第1の態様では、書込み/セレクタ220は、SRAM230に保持された変換テーブルを参照し、論理アドレスLDAを物理アドレスPDAに変換する。第2の態様では、書込み/セレクタ220は、入力された論理アドレスLADがRRAM240に格納された論理アドレスLDAと一致する場合には、RRAM240に格納された変換テーブルに従い、論理アドレスをページ退避用の物理アドレスに変換する。
書込み/セレクタ220は、プログラム中に電圧検出部210からアラート信号を受け取ると、プログラム中の論理アドレスLDAと、これに関連付けしてページ退避用ブロックの物理アドレスとをRRAM240に書込む。書込み/セレクタ220によりRRAM240への書込みが行われると、書込み/セレクタ220は、第2の態様でRRAM240の変換テーブルを参照して物理アドレスへの変換を行うことが可能になる。
SRAM230は、メモリ装置300の動作に必要な種々のデータを保持する。例えば、上記した論理アドレスと物理アドレスとの関係を規定する変換テーブル、メモリ装置のブロックの各ページのステータス(データが書込まれている、消去されている、無効であるなど)を表すテーブルである。これらのデータは、電源投入時にパワーオンシーケンスが実行されたとき、メモリ装置300のメモリセルアレイに用意された領域からロードされる。
RRAM240は、可逆的かつ不揮発性の可変抵抗素子にデータを記憶することができる可変抵抗型ランダムアクセスメモリである。RRAM240は、SRAM230と同様に高速でデータの書きが可能でり、かつ電源が喪失してもデータを保持することができる不揮発性のメモリである。
RRAM240は、プログラム中に電圧検出部210により電圧Vdが検出されたとき、プログラムのターゲットの論理アドレスLADとページ退避用の物理アドレスPDAとを格納する。電圧Vdの検出から電源喪失までの時間は非常に短く、それ故、非常に高速な書込みが可能なRRAMが用いられる。
メモリ装置300は、NAND型ストリングから構成される複数のブロックを有するメモリセルアレイ、行アドレス(物理ブロックアドレスPBA+論理ページアドレスLPA)に基づきメモリセルアレイのワード線を選択するワード選択回路、列アドレスに基づきビット線を選択する列選択回路、選択ワード線により読み出されたデータをセンスしたり、プログラムするデータを保持するページバッファ/センス回路等を含む。
1つのブロックには、図4に示すように、複数のメモリセルを直列に接続したNANDストリングが行方向にn個(例えば、2KB)配列されている。1つのNANDストリングNUは、直列に接続された複数のメモリセルMCi(i=1、2、3・・・、64)と、一方の端部であるメモリセルMC64のドレイン側に接続されたビット線側選択トランジスタTdと、メモリセルMC0のソース側に接続されたソース線側選択トランジスタTsとを含む。ビット線側選択トランジスタTdのドレインは、対応する1つのビット線BLに接続され、ソース線側選択トランジスタTsのソースは、共通のソース線SLに接続される。
読出し動作では、ビット線に或る正の電圧を印加し、選択されたワード線に或る電圧(例えば0V)を印加し、非選択ワード線にパス電圧(例えば4.5V)を印加し、選択ゲート線SGD、SGSに正の電圧(例えば4.5V)を印加し、ビット線側選択トランジスタTd、ソース線側選択トランジスタTsをオンし、共通ソース線SLを0Vにする。プログラム動作では、選択されたワード線に高電圧のプログラム電圧(例えば、15〜20V)を印加し、非選択のワード線に中間電位(例えば10V)を印加し、ビット線側選択トランジスタTdをオンさせ、ソース線側選択トランジスタTsをオフさせ、データ「0」または「1」に応じた電位をビット線BLに供給する。消去動作では、ブロック内の選択されたワード線に0Vを印加し、Pウエルに高電圧(例えば20V)を印加し、フローティングゲートの電子を基板に引き抜くことで、ブロック単位でデータを消去する。
次に、フラッシュメモリ100のプログラム動作について説明する。ホストデバイス40は、フラッシュメモリ100へのプログラムを行うとき、各種制御信号に加えて、プログラム命令、データ、論理アドレスLADをフラッシュメモリ100に出力する。ホストデバイスから入力される論理アドレスLADは、図5に示すように、論理ブロックアドレスLBA、論理ページアドレスLPAおよび論理カラムアドレスLCAを含んで構成される。
書込み/セレクタ220は、論理アドレスLADを受け取ると、SRAM230に保持された変換テーブルを参照し、論理ブロックアドレスLBAを物理ブロックアドレスPBAに変換する。本例では、メモリ装置300をアクセスするための行アドレスは18ビットであり、列アドレスは12ビットである。行アドレスの上位12ビットがブロックを指定するアドレスであり、下位6ビットがページを指定するアドレスである。論理ページアドレスLPAおよび論理列アドレスLACは、変換されることなくそのまま物理アドレスを構成する。こうして、論理アドレスLADが、メモリ装置をアクセスするための物理アドレスPDA(=PBA+LAP+LCA)に変換される。
メモリコントローラ200は、変換された物理アドレスをメモリ装置300のワード線選択回路や列選択回路に供給し、ワード線選択回路によりブロック/ページが選択され、列選択回路によりビット線が選択され、これにより選択ページの選択メモリセルにデータがプログラムされる。選択メモリセルにプログラム電圧が印加され、選択メモリセルにデータが正常にプログラムされたか否かのプログラムベリファイが行われる。メモリコントローラ200は、プログラムベリファイが合格であれば、Ready信号をホストデバイス40に出力し、プログラム中であれば、Busy信号をホストデバイス40に出力する。
次に、プログラム動作中の電源電圧Vccが降下したときのリカバリー動作について図6のフローを参照して説明する。メモリコントローラ200によって選択ページへのプログラムが実行され(S100)、その間、電圧検出部210は、フラッシュメモリ100に供給される電源電圧Vccを監視し続ける(S102)。電圧検出部210が電源電圧Vccの降下、すなわち一定電圧Vdを検出すると(S104)、電圧検出部210は、その検出に応答してアラート信号を出力する(S106)。
書込み/セレクタ220は、アラート信号が出力されると、現在プログラム中の論理ブロックアドレスLBAおよび論理ページアドレスLPAと、これを物理アドレスに変換するためのページ退避用ブロックの物理ブロックアドレスPBAおよび物理ページアドレスPPAとをRRAM240に書込む(S108)。この書込みは、電源が喪失されるまでに行われる。
この様子を図7を参照して説明する。図7(A)に示すように、選択ブロックPの選択ページ#nにプログラムが行われているものとする。このとき、電源電圧Vccが一定電圧Vdに降下すると、書込み/セレクタ220は、SRAMに保持されたステータステーブルのブロックPのページ#nを「Invalid」に書換える。さらに、書込み/セレクタ220は、ステータステーブルのページ退避用ブロックを参照し、使用可能なページを識別し、RRAM240に、プログラム中の論理ブロックアドレスLBA、論理ページアドレスLPAと、これを変換するためのページ退避用ブロックの物理ブロックアドレスPBAおよび物理ページアドレスPPAとを書込む。
図7(B)は、ページ退避用のブロックの一例である。ページ#0〜#3は、既に他のページの退避用として使用されており、ページ#3〜#3Fが使用可能(Erase状態)である。書込み/セレクタ220は、ステータステーブルを参照し、ブロックQの使用可能なページ(この例では、ページ#3)を識別する。こうして、図8に示すように、プログラム中の論理ブロックアドレスLBAおよび論理ページアドレスLPAと、ページ退避用ブロックQの物理アドレスPBAとページ#3の物理ページPPAとがRRAM240に書込まれる。
メモリコントローラ200は、RRAM240への論理アドレスおよび物理アドレスの書込みが終了された時点で、現在行っているプログラムを中断する(S110)。その後、電源電圧Vccがさらに降下すると、パワーダウンシーケンスが開始され、フラッシュメモリ100の動作が停止される。プログラムが中断された場合、ホストデバイス40にReady信号が出力されないか、あるいはホストデバイス40にとって認識不能な信号が出力され得る。他方、電源電圧Vccが一定電圧Vdに降下しなければ、プログラムは正常に終了され、ホストデバイス40にReady信号が出力される(S112)。
次に、中断したプログラムが再開されるときの動作について図9を参照して説明する。電源電圧Vccが復旧すると、フラッシュメモリ100は、パワーアップシーケンスが実行され、動作可能な状態になる。ホストデバイス40は、前回のプログラムの指示に対するReady信号を受け取っていない場合、プログラムが正常に終了されなかったと認識し、再度のプログラムをフラッシュメモリ100に指示する。従って、メモリコントローラ200は、ホストデバイス40からプログラム命令、論理アドレスLDA_IN、データを受け取る(S200)。
書込み/セレクタ220は、最初にRRAM240を選択し、RRAM240に格納された論理アドレスLAD_RRと入力された論理アドレスLDA_INとを比較する(S202)。両者の論理アドレスが一致する場合には(S204)、書込み/セレクタ220は、論理アドレスLAD_INをRRAM240に格納されたページ退避用ブロックの物理アドレスに変換し(S206)、メモリコントローラ200は、ページ退避用ブロックのページにプログラムを実行させる(S208)。
他方、論理アドレスLAD_INがRRAM240に存在しない場合には(S204)、書込み/セレクタ220は、次にSRAM220の変換テーブルを参照し、論理アドレスLAD_INを物理アドレスPDAに変換し(S210)、メモリコントローラ200は、変換された物理アドレスで指定されたページにプログラムを実行させる(S212)。
このように本実施例によれば、プログラム中に電源電圧の降下等の不具合によりプログラムをやり直す場合に、信頼性の高いプログラムを行うことができる。また、RRAMは、SRAMと同様に高速でデータの読み書きが可能であるため、電源が完全に喪失する前の非常に限られた時間内で、プログラム中のページのアドレスと退避用ブロックのアドレスとをRRAMに保持させることができる。
なお、上記実施例では、不揮発性メモリとしてRRAMを使用したが、NAND型メモリよりも高速にデータを書込むことができるものであれば、RRAM以外にもMRAM(磁性体メモリ)を使用することも可能である。
さらに上記実施例では、RRAMに論理アドレスと物理アドレスとを格納したが、RRAMにプログラムすべきデータを一緒に格納するようにしてもよい。NAND型メモリのページのデータサイズは比較的大きいが、このようなデータを、電源が喪失する前にRRAMに書込むことが可能であれば、退避用ブロックの物理アドレスと一緒に格納し、電源が復旧したときに、RRAMに格納されたデータを退避用ブロックの物理アドレスにプログラムするようにしてもよい。この場合には、RRAMに、プログラムデータを格納した時点で、Ready信号をホストデバイス40に出力し、プログラムが正常に終了したことを認識させ、ホストデバイス40からのプログラムのやり直しを不要にすることが望ましい。
さらに上記実施例では、再プログラムを行うとき、書込み/セレクタ220は、先にRRAM240を選択し、そこで入力された論理アドレスLAD_INと格納された論理アドレスLAD_MMとを比較するようにしたが、これ以外にも、RRAM240に論理アドレスが格納されている場合にのみRRAM240を先に選択し、それ以外の場合には、SRAM230を選択するようにしてもよい。例えば、メモリコントローラ200は、プログラムを中断するときに、コントローラ内に不揮発性メモリに、RRAM240に論理アドレスの書込みを行ったこと、あるいはプログラムを中断したことを示すフラグ情報を記憶させ、電源復旧後に、そのフラグを参照して、RRAMを先に選択するか否かを判定するようにしてもよい。
本発明の好ましい実施の形態について詳述したが、本発明は、特定の実施形態に限定されるものではなく、特許請求の範囲に記載された本発明の要旨の範囲内において、種々の変形・変更が可能である。
100:フラッシュメモリ
200:メモリコントローラ
210:電圧検出部
220:書込み/セレクタ
230:SRAM
240:RRAM
300:メモリ装置

Claims (9)

  1. 複数のブロックを含むNAND型のメモリセルアレイと、
    電源電圧が一定電圧に降下したことを検出する検出手段と、
    論理アドレスを物理アドレスに変換する変換テーブルを記憶する揮発性メモリと、
    物理アドレスに従い選択されたブロックのページにデータをプログラムするプログラム手段と、
    前記プログラム手段によりプログラムされている間に前記検出手段により一定電圧が検出されたとき、プログラムされているブロックおよびページの論理アドレスと、当該論理アドレスを他の物理アドレスに変換するための変換情報を記憶する不揮発性メモリと、
    前記揮発性メモリの変換テーブルまたは前記不揮発性メモリの変換情報に基づき入力された論理アドレスを物理アドレスに変換する変換手段と、
    を有する半導体記憶装置。
  2. 前記他の物理アドレスは、プログラムが中断されたページを退避させるために用意された専用のブロックを選択するためのアドレスである、請求項1に記載の半導体記憶装置。
  3. 前記他の物理アドレスは、ブロックを選択するためのブロックアドレスと、ページを選択するためのページアドレスとを含む、請求項1または2に記載の半導体記憶装置。
  4. 前記検出手段により一定電圧が検出されたことに応答して、前記変換情報を不揮発性メモリに書込む手段を含む、請求項1に記載の半導体記憶装置。
  5. 前記一定電圧は、半導体記憶装置が動作可能な最小電圧よりも大きい、請求項1ないし4いずれか1つに記載の半導体記憶装置。
  6. 前記書込み手段は、電源電圧が喪失する前、または半導体記憶装置が動作できなくなる前に、前記変換情報を不揮発性メモリに書込む、請求項4または5に記載の半導体記憶装置。
  7. 前記不揮発性メモリは、可変抵抗型メモリである、請求項1に記載の半導体記憶装置。
  8. 前記変換手段は、前記不揮発性メモリの変換情報を先に選択する、請求項1に記載の半導体記憶装置。
  9. 前記変換手段は、入力された論理アドレスが前記不揮発性メモリに記憶された論理アドレスを比較し、両者が一致する場合には、前記他の物理アドレスに変換する、請求項8に記載の半導体記憶装置。
JP2019013019A 2019-01-29 2019-01-29 半導体記憶装置 Active JP6708762B1 (ja)

Priority Applications (5)

Application Number Priority Date Filing Date Title
JP2019013019A JP6708762B1 (ja) 2019-01-29 2019-01-29 半導体記憶装置
TW108134999A TWI700702B (zh) 2019-01-29 2019-09-27 半導體儲存裝置
CN201911092557.1A CN111488292B (zh) 2019-01-29 2019-11-11 半导体存储装置
US16/681,751 US11030091B2 (en) 2019-01-29 2019-11-12 Semiconductor storage device for improved page reliability
KR1020190146374A KR102338009B1 (ko) 2019-01-29 2019-11-15 반도체 기억 장치

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2019013019A JP6708762B1 (ja) 2019-01-29 2019-01-29 半導体記憶装置

Publications (2)

Publication Number Publication Date
JP6708762B1 JP6708762B1 (ja) 2020-06-10
JP2020123023A true JP2020123023A (ja) 2020-08-13

Family

ID=70976391

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2019013019A Active JP6708762B1 (ja) 2019-01-29 2019-01-29 半導体記憶装置

Country Status (5)

Country Link
US (1) US11030091B2 (ja)
JP (1) JP6708762B1 (ja)
KR (1) KR102338009B1 (ja)
CN (1) CN111488292B (ja)
TW (1) TWI700702B (ja)

Citations (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002169729A (ja) * 2000-12-04 2002-06-14 Toshiba Corp 不揮発性メモリユニットのコントローラ、同コントローラを有するメモリシステム及び不揮発性メモリユニットの制御方法
JP2003167795A (ja) * 2001-11-16 2003-06-13 Samsung Electronics Co Ltd フラッシュメモリの管理方法
JP2004127185A (ja) * 2002-10-07 2004-04-22 Renesas Technology Corp メモリカード
JP2004310477A (ja) * 2003-04-08 2004-11-04 Renesas Technology Corp メモリカード
JP2005108304A (ja) * 2003-09-29 2005-04-21 Toshiba Corp 半導体記憶装置及びその制御方法
WO2006126445A1 (ja) * 2005-05-23 2006-11-30 Matsushita Electric Industrial Co., Ltd. メモリコントローラ、不揮発性記憶装置、不揮発性記憶システム及びメモリ制御方法
WO2007119267A1 (ja) * 2006-03-13 2007-10-25 Matsushita Electric Industrial Co., Ltd. フラッシュメモリ用のメモリコントローラ
JP2008003684A (ja) * 2006-06-20 2008-01-10 Matsushita Electric Ind Co Ltd 不揮発性記憶装置及び不揮発性記憶システム
JP2008251154A (ja) * 2008-04-11 2008-10-16 Renesas Technology Corp 不揮発性半導体記憶装置
JP2010086009A (ja) * 2008-09-29 2010-04-15 Hitachi Ltd 記憶装置およびメモリ制御方法
JP2013016125A (ja) * 2011-07-06 2013-01-24 Panasonic Corp 不揮発性メモリのページ管理方法
JP2013061799A (ja) * 2011-09-13 2013-04-04 Toshiba Corp 記憶装置、記憶装置の制御方法およびコントローラ

Family Cites Families (21)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005258851A (ja) * 2004-03-12 2005-09-22 Renesas Technology Corp メモリカード
WO2006067923A1 (ja) * 2004-12-22 2006-06-29 Matsushita Electric Industrial Co., Ltd. メモリコントローラ、不揮発性記憶装置、不揮発性記憶システム及びメモリ制御方法
JP5066894B2 (ja) 2006-11-07 2012-11-07 富士ゼロックス株式会社 記憶媒体制御装置
JP2008251063A (ja) * 2007-03-29 2008-10-16 Fujifilm Corp 記憶装置
JP2009175877A (ja) 2008-01-22 2009-08-06 Toshiba Corp 半導体メモリ
JP2010211734A (ja) * 2009-03-12 2010-09-24 Toshiba Storage Device Corp 不揮発性メモリを用いた記憶装置
US8296503B2 (en) * 2009-05-26 2012-10-23 Mediatek Inc. Data updating and recovering methods for a non-volatile memory array
JP2011154548A (ja) 2010-01-27 2011-08-11 Kyocera Corp 記憶装置
TWI479493B (zh) 2011-04-25 2015-04-01 Silicon Motion Inc 快閃記憶裝置及其斷電處理方法
KR101810932B1 (ko) * 2011-04-27 2017-12-20 시게이트 테크놀로지 엘엘씨 주소 사상 정보 관리 방법, 디스크 드라이브에서의 액세스 방법, 저장 장치, 컴퓨터 시스템, 네트워크를 통한 주소 사상 정보 관리 방법 및 컴퓨터로 읽을 수 있는 저장 매체
KR102024523B1 (ko) * 2012-12-26 2019-09-24 삼성전자 주식회사 저항체를 이용한 비휘발성 메모리 장치 및 그 구동 방법
US9684568B2 (en) * 2013-12-26 2017-06-20 Silicon Motion, Inc. Data storage device and flash memory control method
GB2527529B (en) * 2014-06-24 2021-07-14 Advanced Risc Mach Ltd A device controller and method for performing a plurality of write transactions atomically within a non-volatile data storage device
TWI546666B (zh) * 2014-11-03 2016-08-21 慧榮科技股份有限公司 資料儲存裝置以及快閃記憶體控制方法
US10019326B2 (en) * 2015-07-15 2018-07-10 Toshiba Memory Corporation Memory system
JP6479608B2 (ja) 2015-08-28 2019-03-06 東芝メモリ株式会社 メモリ装置およびメモリ制御方法
US9880770B2 (en) * 2015-09-02 2018-01-30 SK Hynix Inc. Supporting invalidation commands for non-volatile memory
KR102625637B1 (ko) * 2016-02-01 2024-01-17 에스케이하이닉스 주식회사 데이터 저장 장치 및 그것의 동작 방법
KR102680421B1 (ko) * 2016-08-29 2024-07-03 삼성전자주식회사 불휘발성 메모리 및 불휘발성 메모리 시스템
TWI591533B (zh) * 2016-11-25 2017-07-11 慧榮科技股份有限公司 可用於資料儲存裝置之資料儲存方法與資料回復程序、以及採用這些方法的資料儲存裝置
CN107403644B (zh) 2017-05-22 2020-01-10 宜鼎国际股份有限公司 具备异常电源保护的闪存装置

Patent Citations (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002169729A (ja) * 2000-12-04 2002-06-14 Toshiba Corp 不揮発性メモリユニットのコントローラ、同コントローラを有するメモリシステム及び不揮発性メモリユニットの制御方法
JP2003167795A (ja) * 2001-11-16 2003-06-13 Samsung Electronics Co Ltd フラッシュメモリの管理方法
JP2004127185A (ja) * 2002-10-07 2004-04-22 Renesas Technology Corp メモリカード
JP2004310477A (ja) * 2003-04-08 2004-11-04 Renesas Technology Corp メモリカード
JP2005108304A (ja) * 2003-09-29 2005-04-21 Toshiba Corp 半導体記憶装置及びその制御方法
WO2006126445A1 (ja) * 2005-05-23 2006-11-30 Matsushita Electric Industrial Co., Ltd. メモリコントローラ、不揮発性記憶装置、不揮発性記憶システム及びメモリ制御方法
WO2007119267A1 (ja) * 2006-03-13 2007-10-25 Matsushita Electric Industrial Co., Ltd. フラッシュメモリ用のメモリコントローラ
JP2008003684A (ja) * 2006-06-20 2008-01-10 Matsushita Electric Ind Co Ltd 不揮発性記憶装置及び不揮発性記憶システム
JP2008251154A (ja) * 2008-04-11 2008-10-16 Renesas Technology Corp 不揮発性半導体記憶装置
JP2010086009A (ja) * 2008-09-29 2010-04-15 Hitachi Ltd 記憶装置およびメモリ制御方法
JP2013016125A (ja) * 2011-07-06 2013-01-24 Panasonic Corp 不揮発性メモリのページ管理方法
JP2013061799A (ja) * 2011-09-13 2013-04-04 Toshiba Corp 記憶装置、記憶装置の制御方法およびコントローラ

Also Published As

Publication number Publication date
JP6708762B1 (ja) 2020-06-10
CN111488292A (zh) 2020-08-04
CN111488292B (zh) 2023-03-10
KR102338009B1 (ko) 2021-12-10
US11030091B2 (en) 2021-06-08
KR20200094621A (ko) 2020-08-07
TWI700702B (zh) 2020-08-01
US20200242023A1 (en) 2020-07-30
TW202029207A (zh) 2020-08-01

Similar Documents

Publication Publication Date Title
KR101986872B1 (ko) 메모리 칩 전력 관리
JP3938309B2 (ja) リードディスターブを緩和したフラッシュメモリ
KR102187521B1 (ko) 불휘발성 메모리 및 메모리 컨트롤러를 포함하는 메모리 시스템 및 불휘발성 메모리에 데이터를 프로그램하는 프로그램 방법
KR20210057355A (ko) 메모리 장치, 메모리 컨트롤러, 메모리 시스템 및 그 동작 방법
US8755230B2 (en) Semiconductor memory device
US9244835B2 (en) Control circuit of semiconductor device and semiconductor memory device
KR20210157544A (ko) 메모리 시스템, 메모리 컨트롤러 및 메모리 시스템의 동작 방법
KR20210101785A (ko) 메모리 시스템, 메모리 컨트롤러 및 메모리 시스템의 동작 방법
US9484108B2 (en) Integrated circuit, semiconductor memory device, and operating method thereof
CN109841253B (zh) 半导体存储装置及其复位方法
KR20220001137A (ko) 메모리 시스템, 메모리 장치 및 메모리 장치의 동작 방법
US9159429B2 (en) Data storage system and method of operating the same
US10937492B2 (en) Semiconductor storage apparatus
JP6708762B1 (ja) 半導体記憶装置
US11237767B2 (en) Memory system, memory controller and method for operating memory controller
US11221945B2 (en) Semiconductor memory device
US12068039B2 (en) Memory device and method of operating the same
US11640263B2 (en) Memory system and operating method thereof
US20240203505A1 (en) Memory device and method of managing temperature of the same
KR20220142660A (ko) 메모리 시스템 및 메모리 시스템의 동작 방법
KR20210155467A (ko) 메모리 시스템, 메모리 컨트롤러 및 메모리 시스템의 동작 방법
KR20210073754A (ko) 시스템, 컨트롤러 및 시스템의 동작 방법

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20190129

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20191220

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20200121

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20200414

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20200521

R150 Certificate of patent or registration of utility model

Ref document number: 6708762

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250