[go: up one dir, main page]
More Web Proxy on the site http://driver.im/

JP5547741B2 - データをメモリ装置に再入力することなくページをプログラムするためのページバッファプログラムコマンド及び方法 - Google Patents

データをメモリ装置に再入力することなくページをプログラムするためのページバッファプログラムコマンド及び方法 Download PDF

Info

Publication number
JP5547741B2
JP5547741B2 JP2011533210A JP2011533210A JP5547741B2 JP 5547741 B2 JP5547741 B2 JP 5547741B2 JP 2011533210 A JP2011533210 A JP 2011533210A JP 2011533210 A JP2011533210 A JP 2011533210A JP 5547741 B2 JP5547741 B2 JP 5547741B2
Authority
JP
Japan
Prior art keywords
data
page
address
write
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.)
Expired - Fee Related
Application number
JP2011533210A
Other languages
English (en)
Other versions
JP2012507070A (ja
Inventor
ルカ ファゾーリ
ユーハン チャン
ゴピナス バラクリシュナン
Original Assignee
サンディスク スリーディー,エルエルシー
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 サンディスク スリーディー,エルエルシー filed Critical サンディスク スリーディー,エルエルシー
Publication of JP2012507070A publication Critical patent/JP2012507070A/ja
Application granted granted Critical
Publication of JP5547741B2 publication Critical patent/JP5547741B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • 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
    • G11C16/102External programming circuits, e.g. EPROM programmers; In-circuit programming or reprogramming; EPROM emulators
    • 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

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Read Only Memory (AREA)
  • Techniques For Improving Reliability Of Storages (AREA)
  • Memory System Of A Hierarchy Structure (AREA)

Description

本願は、参照によって本明細書に組み込まれる、2008年10月25日に出願された米国仮特許出願第61/108,507号(文書番号:SAND−01388US0)の優先権を主張する。
本発明は、データの記憶のための技術に関する。
半導体メモリは、様々な電子装置で用いるため益々人気が高くなっている。例えば、不揮発性半導体メモリは、携帯電話、デジタルカメラ、個人情報端末、モバイル・コンピューティング装置、非携帯コンピューティング装置、及び、他の装置で用いられる。電気的消去可能読み出し専用メモリ(EEPROM)と、NANDメモリのようなフラッシュメモリとは、とりわけ最も人気のある不揮発性半導体メモリである。
可逆的抵抗スイッチング素子から形成される不揮発性メモリもまた知られている。例えば、参照によって本明細書に組み込まれ、発明の名称が“Rewriteable Memory Cell Comprising A Diode And A Resistance−Switching Material”である米国特許出願公開第2006/0250836号は、金属酸化物又は金属窒化物のような可逆的抵抗スイッチング材料と直列に連結されたダイオードを含む再書き込み可能な不揮発性メモリセルについて記載する。これらの可逆的抵抗スイッチング材料は、不揮発性メモリアレイで用いるため注目されている。一方の抵抗状態は、例えば、データ「0」に対応することがあり、もう一方の抵抗状態は、データ「1」に対応する。これらの材料のうちのいくつかは、3つ以上の安定抵抗状態であることがある。このようなスイッチング素子は、いわゆる3次元メモリ装置内の複数の層に配置されることがよくある。さらに、DRAMのような様々なタイプの不揮発性メモリ装置が知られている。再書き込み可能メモリ及び追記型メモリの両方が知られている。
メモリ装置は、挿入することができるか、又は、そうでなければ、ホスト携帯電話、デジタルカメラ、又は、他の装置のようなホスト/ユーザ装置に接続することができるカード、又は、他のコンポーネントの形をとることができる。他の場合、メモリ装置は、ホスト装置内に永続的に取り付けられる。リムーバブル媒体形式をもつメモリ装置の例は、COMPACTFLASH(登録商標)、SMARTMEDIA、SECURE DEGITAL、MEMORY STICK、XD−PICTURE CARDといった様々な商標名で販売されている。小さいフォームファクタをもつ新世代のメモリカード形式は、RS−MMC、MINISD AND MICROSD、及び、INTELLIGENT STICKといった商標名で販売されている。
書き込み処理中に、ページと称されるデータの単位がメモリアレイ内の指定された場所に書き込まれる。例えば、ホスト装置は、データを書き込むメモリアレイのアドレスと共に、書き込まれるべきデータをメモリ装置に供給する。メモリ装置は、データを指定されたアドレスに書き込む回路を含む。しかし、例えば、指定されたアドレスと関連付けられたメモリ素子又は回路に関連する問題に起因して、書き込み動作が失敗する場合、失敗を解決することを試みる結果として行われる入出力動作は、過度の帯域幅を使い尽くすことがある。
米国特許出願公開第2006/0250836号
メモリ装置において書き込み動作失敗を効率的に取り扱う技術が必要である。
メモリ装置において書き込み動作失敗を効率的に取り扱う技術が提供される。
一実施形態では、メモリ装置を動作させる方法は、(a)外部ホストから、少なくとも1ページ分のデータと、メモリ装置における第1のアドレスと、を受信すること、(b)少なくとも1ページ分のデータを、メモリ装置のページバッファに記憶すること、(c)ページバッファから、第1のアドレスによって特定される場所におけるメモリ装置のメモリアレイに、少なくとも1ページ分のデータを書き込むことを試行すること、(d)少なくとも1ページ分のデータを書き込む試行が失敗であったことを決定すること、(e)少なくとも1ページ分のデータを書き込む試行が失敗であったことを外部ホストに通知すること、(f)外部ホストから、メモリ装置における第2のアドレスを受信すること、及び、(g)外部ホストが少なくとも1ページ分のデータをメモリ装置に再送信することなく、ページバッファから、第2のアドレスによって特定される場所におけるメモリアレイに、少なくとも1ページ分のデータを書き込むことを試行すること、を備える。
別の実施形態では、メモリ装置を動作させる方法は、(a)外部ホストから、少なくとも第1のページのデータと、メモリ装置における第1のアドレスを受信すること、(b)メモリ装置のメモリアレイの外部で、少なくとも第1のページのデータをメモリ装置の第1の記憶場所に記憶すること、(c)第1の書き込みコマンドを受信すること、(d)第1の書き込みコマンドに応じて、第1の記憶場所から、第1のアドレスによって特定される場所におけるメモリアレイに、少なくとも第1のページのデータを書き込むことを試行すること、(e)外部ホストから、メモリ装置における第2のアドレスを受信すること、(f)少なくとも第1のページのデータを第1の記憶場所に保持したままの状態で、メモリアレイの外側で少なくとも第2のページのデータをメモリ装置内の第2の記憶場所へ取り出すために、第2のアドレスによって特定される場所におけるメモリアレイを読み出すこと、(g)少なくとも第2のページのデータを第2の記憶場所から外部ホストへ供給すること、(h)少なくとも第1のページのデータを書き込む試行が失敗であったことを決定すること、(i)少なくとも第1のページのデータを書き込む試行が失敗であったことを外部ホストに通知すること、(j)外部ホストから第2のアドレスをメモリ装置で受信すること、及び、(k)外部ホストが少なくとも第1のページのデータをメモリ装置に再送信することなく、第1の記憶場所から第2のアドレスによって特定される場所におけるメモリアレイに、少なくとも第1のページのデータを書き込むことを試行すること、を備える。
別の実施形態では、メモリ装置の外部ホストを動作させる方法は、(a)外部ホストからメモリ装置へ、少なくとも1ページ分のデータと、第1のアドレスと、少なくとも1つの第1のコマンドと、を送信すること(少なくとも1つの第1のコマンドは、少なくとも1ページ分のデータをメモリ装置のページバッファに記憶すること、及び、ページバッファから第1のアドレスによって特定される場所におけるメモリ装置のメモリアレイに、少なくとも1ページ分のデータを書き込むことを試行することをメモリ装置に知らせる)、(b)メモリ装置から外部ホストで、第1のアドレスによって特定された場所に少なくとも1ページ分のデータを書き込む試行が失敗であったことを示す状態通信を受信すること、及び、(c)外部ホストが少なくとも1ページ分のデータをメモリ装置に再送信することなく、状態通信に応じて、外部ホストからメモリ装置へ、第2のアドレスと、少なくとも第2のコマンドと、を送信すること(第2のコマンドは、少なくとも1ページ分のデータをページバッファから第2のアドレスによって特定される場所におけるメモリアレイに書き込むことを試行するようにメモリ装置に知らせる)、を備える。
別の実施形態では、メモリ装置は、基板に形成された不揮発性記憶素子のメモリアレイと、データキャッシュと、ページバッファと、外部ホストへのインターフェイスと、1つ以上の制御回路と、を含む。1つ以上の制御回路は、(a)外部ホストから、少なくとも1ページ分のデータと、第1のアドレスと、を受信し、(b)少なくとも1ページ分のデータをページバッファに記憶し、(c)ページバッファから、第1のアドレスによって特定される場所におけるメモリアレイに、少なくとも1ページ分のデータを書き込むことを試行し、(d)少なくとも1ページ分のデータを書き込む試行が失敗であったことを決定し、(e)少なくとも1ページ分のデータを書き込む試行が失敗であったことを外部ホストに通知し、(f)外部ホストから、メモリ装置における第2のアドレスを受信し、(g)外部ホストが少なくとも1ページ分のデータをメモリ装置に再送信することなく、ページバッファから第2のアドレスによって特定される場所におけるメモリアレイに、少なくとも1ページ分のデータを書き込むことを試行する。
別の実施形態では、メモリ装置は、基板に形成された不揮発性記憶装置をもつメモリアレイと、ページバッファと、データキャッシュと、外部ホストへのインターフェイスと、メモリアレイ、ページバッファ、データキャッシュ及びインターフェイスと通信する1つ以上の制御回路と、を備える。ページバッファは、第1のページデータを受信し、1つ以上の制御回路は、ページバッファからメモリアレイへ第1のページデータを書き込む試行が行われるようにする。さらに、データキャッシュは、ページバッファを迂回するメモリアレイから第2のページデータを受信し、その間に、ページバッファは、第1のページデータを記憶している。1つ以上の制御回路は、第2のページデータがデータキャッシュから外部ホストへ供給されるようにする。さらに、1つ以上の制御回路は、ページバッファからメモリアレイへ第1のページデータを再書き込みする試行が行われるようにする。
対応する方法、システム、及び、本明細書に提示された方法を実行するため実行可能なコードを有しているコンピュータ又はプロセッサ読み取り可能な記憶装置が同様に提供される。
メモリシステムの一実施形態のブロック図である。 ページのデータをメモリアレイに書き込む際のホストとメモリ装置との間の通信のシーケンスを表す図である。 図2aのシーケンスに対応するデータキャッシュ、ページバッファ及びメモリアレイ内のデータの移動を表す図である。 図2aのシーケンスに対応するデータキャッシュ、ページバッファ及びメモリアレイ内のデータの移動を表す図である。 図2aのシーケンスに対応するデータキャッシュ、ページバッファ及びメモリアレイ内のデータの移動を表す図である。 図2aのシーケンスに対応するプロセスを表す図である。 図2eのプロセスに対応するホスト側プロセスを表す図である。 ページのデータをメモリアレイに書き込み、その間に別のページのデータをデータキャッシュに受信する際のホストとメモリ装置との間の通信のシーケンスを表す図である。 図3aのシーケンスに対応するデータキャッシュ、ページバッファ及びメモリアレイ内のデータの移動を表す図である。 図3aのシーケンスに対応するデータキャッシュ、ページバッファ及びメモリアレイ内のデータの移動を表す図である。 図3aのシーケンスに対応するデータキャッシュ、ページバッファ及びメモリアレイ内のデータの移動を表す図である。 図3aのシーケンスに対応するデータキャッシュ、ページバッファ及びメモリアレイ内のデータの移動を表す図である。 図3aのシーケンスに対応するデータキャッシュ、ページバッファ及びメモリアレイ内のデータの移動を表す図である。 図3aのシーケンスに対応するデータキャッシュ、ページバッファ及びメモリアレイ内のデータの移動を表す図である。 図3aのシーケンスに対応するデータキャッシュ、ページバッファ及びメモリアレイ内のデータの移動を表す図である。 図3aのシーケンスに対応するプロセスを表す図である。 メモリアレイからコピーされたページのデータをメモリアレイに書き込む際のホストとメモリ装置との間の通信のシーケンスを表す図である。 図4aのシーケンスに対応するデータキャッシュ、ページバッファ及びメモリアレイ内のデータの移動を表す図である。 図4aのシーケンスに対応するデータキャッシュ、ページバッファ及びメモリアレイ内のデータの移動を表す図である。 図4aのシーケンスに対応するデータキャッシュ、ページバッファ及びメモリアレイ内のデータの移動を表す図である。 図4aのシーケンスに対応するデータキャッシュ、ページバッファ及びメモリアレイ内のデータの移動を表す図である。 図4aのシーケンスに対応するデータキャッシュ、ページバッファ及びメモリアレイ内のデータの移動を表す図である。 図4aのシーケンスに対応するプロセスを表す図である。 メモリアレイからコピーされたページのデータをメモリアレイに書き込み、その間に別のページのデータをデータキャッシュに受信する際のホストとメモリ装置との間の通信のシーケンスの第1の部分を表す図である。 図5aのシーケンスの後に続く通信のシーケンスの第2の部分を表す図である。 図5a及び5bのシーケンスに対応するデータキャッシュ、ページバッファ及びメモリアレイ内のデータの移動を表す図である。 図5a及び5bのシーケンスに対応するデータキャッシュ、ページバッファ及びメモリアレイ内のデータの移動を表す図である。 図5a及び5bのシーケンスに対応するデータキャッシュ、ページバッファ及びメモリアレイ内のデータの移動を表す図である。 図5a及び5bのシーケンスに対応するデータキャッシュ、ページバッファ及びメモリアレイ内のデータの移動を表す図である。 図5a及び5bのシーケンスに対応するデータキャッシュ、ページバッファ及びメモリアレイ内のデータの移動を表す図である。 図5a及び5bのシーケンスに対応するデータキャッシュ、ページバッファ及びメモリアレイ内のデータの移動を表す図である。 図5a及び5bのシーケンスに対応するデータキャッシュ、ページバッファ及びメモリアレイ内のデータの移動を表す図である。 図5a及び5bのシーケンスに対応するデータキャッシュ、ページバッファ及びメモリアレイ内のデータの移動を表す図である。 図5a及び5bのシーケンスに対応するデータキャッシュ、ページバッファ及びメモリアレイ内のデータの移動を表す図である。 図5a及び5bのシーケンスに対応するデータキャッシュ、ページバッファ及びメモリアレイ内のデータの移動を表す図である。 図5a及び5bのシーケンスに対応するプロセスを表す図である。 データキャッシュがメモリアレイ又はホストから直接的にデータを受信するため接続されている回路を表す図である。 ページバッファがメモリアレイ又はホストから直接的にデータを受信するため接続されている回路を表す図である。 図6及び7の回路によって提供される機能を表す図である。
メモリ装置において書き込み動作失敗を効率的に取り扱う技術が提供される。
図1は、本明細書に記載された技術を実施するメモリシステムの一例を表すブロック図である。メモリシステムは、一つの可能なアプローチでは、ダイに形成された部分101と、入出力回路又はインターフェイス134を介して外部ホスト136と通信するコントローラ130と、を含む、カード又は他のパッケージとして構成されることがあるメモリ装置100を備える。コントローラ130は、本明細書に記載される機能を実施する、システム制御ロジック132を含む。コントローラ130は、図に表されるように、部分101内に組み込まれてもよく、又は、チップ外にあってもよい。
メモリアレイ102は、記憶素子と称されることもあるメモリセルの2次元アレイでもよく、又は、3次元メモリアレイでもよい。一実施では、メモリアレイ102は、モノリシック3次元アレイである。モノリシック3次元メモリアレイは、複数のメモリレベルが介在基板なしにウェハのような単一基板の上に形成されるメモリアレイである。1つのメモリレベルを形成する層は、既存の1つ又は複数のレベルの層の上に直接的に堆積又は成長させられる。これに反して、積層メモリは、発明の名称が“Three Dimensional Structure Memory”であるLeedyによる米国特許第5915167号のように別個の基板にメモリレベルを形成し、メモリレベルを互いの上に付着することにより構築されている。基板は、接合前に、薄膜化されるか、又は、メモリレベルから除去されることがあるが、メモリレベルは最初に別個の基板の上に形成されるので、このようなメモリは、本当のモノリシック3次元メモリアレイではない。
別の可能な実施例では、メモリアレイは、NANDストリングのようなストリング内に直列接続される不揮発性記憶素子の2次元アレイである。各ストリングは、ドレイン側選択ゲートとソース側選択ゲートとの間の列に延在する。ワード線は、行内の記憶素子の制御ゲートと通信する。ビット線は、各ストリングのドレイン端部と通信し、センシングコンポーネントは、選択された記憶素子が導通状態であるか、又は、非導通状態であるかを決定するためビット線に連結される。
メモリアレイ102のアレイ端子線は、行として編成されたワード線の(複数の)様々な層と、列として編成されたビット線の(複数の)様々な層とを含む。しかし、他の方向が実施されることもある。
メモリシステム100は、出力108がメモリアレイ102のそれぞれのワード線に接続されている行制御回路120を含む。行制御回路120は、システム制御論理回路130から1群の行アドレス信号及び1つ以上の様々な制御信号を受信し、典型的に、読み出し動作及び書き込み動作の両方のための行デコーダ122、アレイ端子ドライバ124、及び、ブロック選択回路126のような回路を含むことがある。メモリシステム100は、入出力106がメモリアレイ102のそれぞれのビット線に接続されている列制御回路110をさらに含む。列制御回路110は、システム制御ロジック132から一群の列アドレス信号及び1つ以上の様々な制御信号を受信し、典型的に、列デコーダ112、アレイ端子レシーバ又はドライバ114、ブロック選択回路116、その他に、読み出し/書き込み回路、及び、入出力マルチプレクサを含むことがある。システム制御ロジック132は、ホスト136からデータ及びコマンドを受信し、出力データをホストに供給する。他の実施形態では、システム制御ロジック132は、別個のコントローラ回路からデータ及びコマンドを受信し、出力データをホストと通信しているこのコントローラ回路に供給する。システム制御ロジック132は、1つ以上の状態機械、レジスタ、及び、本明細書に記載されているようにメモリシステム100の動作を制御する他の制御ロジックを含むことがある。
列制御回路110は、センスアンプの一部でもよいページバッファ111及びデータキャッシュ113をさらに含む。ページバッファは、メモリアレイに書き込まれ、若しくは、メモリアレイから読み取られるデータを記憶する記憶場所であり、又は、書き込み動作中に書き込み検証結果をさらに維持することがある。1つ以上のページバッファが使用されることがある。ページバッファは、1ページ分以上のデータを記憶することができる。ワード線が1ページ分のデータのみを記憶する場合、1ページ分のデータを記憶するだけのページバッファで十分である。ワード線が複数ページ分のデータを記憶する場合、1ページ分以上のデータを記憶することができる1つ以上のページバッファが設けられることが可能である。ページバッファ111は、ビット線と、読み出し、検証、プログラム(書き込み)、及び、消去動作のための電源線電圧とに接続されている。書き込み検証に関して、メモリアレイ内の記憶素子のワード線がページバッファ111内に記憶されたデータで書き込まれた後、ワード線はリードバックされ、読み出されたデータがページバッファ内に記憶されたデータと比較される。不一致は、不良(又は他のタイプの誤り)がワード線に存在し、データが別のワード線に再度書き込まれるべきであることを示唆する。さらなる情報については、例えば、参照によって本明細書に組み込まれる米国特許第7,317,636号を参照のこと。
別の可能なアプローチでは、ワード線の内容がワード線単位でページバッファの内容と一致するかどうかを決定するため、別個の読み出し動作を使用する代わりに、各メモリセルの書き込み/非書き込み状態が検知可能であり、その間にメモリセルの書き込みを試行する。この書き込み時の検知技術は、参照によって本明細書に組み込まれる、発明の名称が“Memory device and method for sensing while programming a non−volatile memory cell”である米国特許第6,574,145号に詳細に記載されている。
データキャッシュ113は、読み出し動作中にページバッファによって読み出されるデータと、書き込み動作の間にページバッファに供給されるべきデータと、を保持する。さらに後述されるように、ダイ101から離れた外部ホストは、コマンド及びデータをメモリ装置100に送信し、データは、第1の記憶場所及び第2の記憶場所としてデータキャッシュ及びページバッファの組み合わせを用いて記憶される。有利な点として、メモリアレイに書き込まれるべきデータは、書き込み試行がメモリアレイ内の一方のアドレスで失敗し、そして、ホストがデータをメモリ装置へ再入力することなく、メモリアレイ内の別のアドレスに再書き込みされた後、メモリ装置内に保持することができる。さらに、この再書き込み能力は、付加データがメモリ装置内に受信され、その間に、再書き込みプロセスが行われるシナリオ、再書き込みされたデータがメモリアレイ内の一方の場所から別の場所へコピーされる(そして、場合によっては変更される)シナリオ、及び、付加データがメモリ装置内に受信され、その間に、再書き込みプロセスが行われ、再書き込みされたデータがメモリアレイ内の一方の場所から別の場所へコピーされる(そして、場合によっては変更される)シナリオのような様々なシナリオで実現可能である。このページベースの再書き込み能力は、例えば、誤り訂正を使用して、数バイトのようなページの一部分を変更するためメモリ装置によって実行される技術と区別することができる。
一実施形態では、図1に表されたコンポーネントのすべては、単一の集積回路に配置されている。例えば、システム制御ロジック132、列制御回路110、及び、行制御回路120は、基板の表面に形成される。さらに、メモリアレイ102は、基板の上に(つまり、システム制御ロジック132、列制御回路110、及び、行制御回路120の上に)形成されたモノリシック3次元メモリアレイでもよい。一部の場合、制御回路の一部分は、メモリアレイの一部と同じ層に形成されることができる。
メモリアレイを組み込む集積回路は、通常は、アレイをある程度の数のサブアレイ又はブロックに分割する。ブロックは、例えば、16個、32個、又は、様々な個数のブロックを格納するベイにさらに集めることができる。頻繁に使用されるように、サブアレイは、一般に、デコーダ、ドライバ、センスアンプ、及び、入出力回路によって切断されない連続するワード線及びビット線を有しているメモリセルの連続するグループである。これには、種々の理由がある。例えば、ワード線及びビット線を下方に辿るこのような線の抵抗及び容量から生じる信号遅延(即ち、RC遅延)は、大型アレイでは非常に顕著であることがある。これらのRC遅延は、各ワード線及び/又は各ビット線の長さが短縮されるように大型アレイをより小型のサブアレイに分割することにより縮小されることがある。別の例として、一群のメモリセルと関連付けられた電力は、所与のメモリサイクルの間に同時にアクセスされることがあるメモリセルの個数の上限を決定付けることがある。その結果、大型メモリアレイは、多くの場合に、同時にアクセスされるメモリセルの個数を削減するため、より小型のサブアレイに分割される。それにもかかわらず、説明を簡単にするため、アレイは、デコーダ、ドライバ、センスアンプ、及び、入出力回路によって一般に切断されない連続するワード線及びビット線を有しているメモリセルの連続するグループを指し示すためにサブアレイと同意語として使用されることもある。集積回路が1つ以上のメモリアレイを含むことがある。コントローラ130及び他のコンポーネントのうちのいずれかは、メモリアレイ102に加えて、制御回路であると考えられることがある。
冒頭で指摘したように、書き込み動作が失敗した場合、結果として生じる入出力動作は、メモリ装置で用いられるプロセッササイクル及びメモリ装置に転送されるデータの量の点で、過度の帯域幅を使い尽くすことがある。例えば、ページのデータは、例えば、2KB又は4KBのデータを格納することがある。典型的に、書き込みプロセスが失敗した場合、メモリ装置は、外部ホストが状態をポーリングするときを外部ホストに通知し、このホストは、新書き込みコマンドを発行し、このページのデータをメモリ装置に再送信することにより応答する。このホストは、各ページの書き込みが成功したかどうかを突き止めるため、書き込み後にあらゆるページをポーリングすることがある。
具体的には、メモリカード又は他の媒体形式のインターフェイスにおいて、失敗したページ書き込み試行は、典型的に、メモリアレイ内の別の物理的な場所に再マッピングされるべきである。ホストは、典型的に、書き込み後に状態をチェックし、新アドレスを書き込み、このページのデータを再送信することにより書き込みシーケンスを再開する。これは、入出力を内部動作と重ね合わせるデータキャッシュを用いて書き込みが行われる場合、特に非効率的である。
本明細書に提示される技術は、ページデータを再入力する必要がないようにしながら、失敗したページをメモリアレイ内の別の物理的な場所に再書き込みするようにする。この技術は、ホスト/ユーザが別の物理アドレスを入力し、新しい場所に書き込まれるべきであり、メモリ装置内に一時記憶されていたデータを書き込むことを可能にする。この技術は、単一ページ内に、又は、データキャッシュを用いて書き込む際に使用することができ、そして、ページコピー動作(単一ページ又はキャッシュ)でも同様に使用することができる。この技術は、例えば、複雑にならないように、そして、標準化、及び、様々なホスト装置を両立する必要があるので、限られたコマンドコードの語彙を使用するメモリシステムと両立する。これは、特に、データ・キャッシュ・モードを用いる書き込み中に帯域幅の不利な条件を著しく軽減する。その結果として、書き込み速度性能は、著しく改善することができる。
一実施形態では、この技術は、インターフェイスプロトコルに新セットアップコマンドを導入する。このコマンドを使用し、そして、新アドレスを送信することにより、ホストは、ページバッファ内に残存するページデータを再送信することなく、メモリ装置に書き込むことができる。既存の書き込みフローを僅かに変更するだけでよい。
図2aは、1ページ分のデータをメモリアレイに書き込む際のホストとメモリ装置との間の通信のシーケンスを表す。このシナリオでは、1ページ分のデータは、他のデータを入力することなく再書き込みされ、データは、メモリアレイ内の別の場所からコピーされない。時間軸は、ホストからメモリ装置へ、及び、メモリ装置からホストへ、送信されるメッセージのシーケンス表す。ホストによって監視されるメモリ装置のレディ/ビジー状態線もまた提供される。状態がレディである場合、ホストは、例えば、先行の書き込み動作の状態を要求するため、又は、ユーザデータ及びアドレスをメモリ装置へ供給するためメモリ装置と通信することができる。状態がビジーである場合、ホストは、メモリ装置のレディ/ビジー状態をチェックする又はメモリ装置をリセットする以外の何らかの必要性がある場合、メモリ装置との通信を待つことが必要である。
さらに、時点t0、t1、t2、...は、時間的に等間隔にされていないが、事象のシーケンスを表すように意図されている。いくつかの実施例では、ページバッファ書き込みコマンド(8Dh)は、書き込みプロセスがページで失敗した場合に入出力時間を節約するため導入される。これが行われると、ホストは、同じページをメモリアレイ内の別の物理的な場所、例えば、別のワード線、又は、複数のページを有しているワード線上の別のページに再書き込みすることを試行する。この新コマンドを使ってページバッファからメモリ内の別のページへの書き込みすることができる。ホストとメモリ装置との間で通信されるユーザデータは、ページ単位であり、同時に1又は複数ページである。
なお、スマートメディア不揮発性メモリカードを含む特有の実施に適した例示的なコマンドコード(例えば、8Dh、10h、70h)が指摘されている。しかし、これらの考え方は一般に様々な媒体形式及びプロトコルのため適しているので、これらのコマンドコードは、例示のためだけに提示されている。
単一ページ書き込みプロセスでは、t0において、データ入力コマンド(80h)がホストからメモリ装置へ供給され、その後に続いて、t1において、アドレスNが供給され、次いで、t2において、書き込まれるべき1ページ以上のユーザデータ(データX)が供給される。メモリ装置は、作業メモリ内にアドレスNを保持し、データXをデータキャッシュ113内に記憶する(図1)。ホストは、t3において、書き込みコマンド(10h)を供給する。コマンド10hは、付加ページのデータが現在ページに続かないことを示唆する。応答中に、メモリ装置は、データXをページバッファ111にコピーし(図1)、その後、データXをメモリアレイのアドレスNに書き込むために、書き込み動作を開始する。データがページバッファにコピーされることなく、キャッシュからメモリアレイへ直接的に書き込まれることができるように、又は、データがページバッファを通過することなく、メモリアレイからキャッシュへ直接的に読み出されるように、データキャッシュとメモリアレイとの間に直接的な経路を設けることができると考えられる。さらなる情報については、図6〜8を参照のこと。一般に、書き込みプロセスは、書き込みコマンドを実行するさらなる命令をホストから受信することなくメモリ装置によって自動的に行われる。即ち、メモリ装置は、ホストから独立して書き込みを実行する。
この時点で、ビジー状態はセットされる。t4において、レディ状態がセットされ、これに応じて、ホストは、状態要求コマンド(70h)を供給する。具体的には、レディ/ビジー信号がレディ状態であることを示唆するために上昇する場合、ホストは、この状態を見つけるために、メモリ装置をポーリングする。メモリ装置は、例えば、t5において、失敗状態メッセージを使って応答する。
これに応じて、ホストは、t6において、書き込みプロセスが失敗したデータを使って再書き込み試行が行われるべきこと、及び、この再書き込みを実行するアドレスが後に続くこと、をメモリ装置に知らせるコマンド(8Dh)を供給する。新アドレスN’は、t7において、ホストによって供給され、その後に続いて、t8において、書き込みコマンド(10h)が供給される。よって、第1の書き込みコマンドコードの第1のインスタンス及び第2のインスタンスが、t3及びt8において、それぞれ供給される。しかし、t8でのインスタンスは、t6での第2のコマンドコードのインスタンスによって先行されるので、メモリ装置では、t8でのインスタンスがt3でのインスタンスとは異なって解釈されることが分かる。
場合によっては、t7.1において、データX’と呼ばれるデータXのための変更済みデータがホストによって通信される。例えば、データX’は、ページバッファにある間にデータX内のバイトを置換する数バイトのデータを含み得る。このように、ページバッファ・データをメモリアレイに書き込む前に、所定の位置にあるページバッファ・データを変更することができる。これは、ページデータがこのページデータが書き込まれるメモリアレイ内のアドレスに依存するときのような様々なシナリオで役に立つ可能性がある。アドレスN’は、データX’によって置換されるべきデータXの一部分を特定するバイトと、さらに、メモリアレイ・アドレスN’を特定するバイトと、を含み得る。書き込みコマンド8Dhは、データX’をページバッファへ直接的に書き込むことであると解釈される。
t8において、メモリ装置は、場合によってはX’によって変更されているようなデータX(X(X’)で示される)を、アドレスN’によって特定されるメモリアレイ内の場所に書き込むことを試行し、ビジー状態がセットされる。具体的には、レディ/ビジー信号が下降してビジー状態を示唆する場合、書き込み動作が起こる。t9において、レディ状態がセットされ、これに応じて、ホストが状態要求コマンド(70h)の第2のインスタンスを供給する。具体的には、レディ/ビジー信号が上昇してレディ状態を示唆する場合、ホストは、この状態を見つけるためメモリ装置をポーリングする。メモリ装置は、例えば、t10において、成功状態メッセージを使って応答する。
図2b〜cは、図2aのシーケンスに対応するデータキャッシュ、ページバッファ、及び、メモリアレイ内のデータの移動を表す。図2bでは、ホスト136によって送信されたデータXは、t2において、データキャッシュ113に記憶される。図2cでは、t3において、書き込みコマンドに基づく書き込みプロセスの間に、データXがデータキャッシュ113からページバッファ111へ転送され、失敗した試行がデータXをページバッファ111からメモリアレイ102のアドレスNへ書き込むために行われる。図2dでは、t8において、書き込みコマンドに基づく再書き込みプロセス中に、データXがページバッファ111からメモリアレイ102のアドレスN’に書き込まれ、結果として成功する。場合によっては、指摘したように、ホスト136は、データXの一部分を置換するため、データX’をページバッファ111へ直接的に供給することができ、メモリアレイ102のアドレスN’に書き込まれる変更済みデータX(X’)を提供する。ホスト・ページバッファ間の直接的な通信能力を提供する回路のさらなる詳細については図6〜8を参照のこと。
図2eは、図2aのシーケンスに対応するプロセスを表す。ステップ250は、ユーザデータ、第1のアドレス、及び、書き込みコマンドをメモリ装置に入力することを含む。ステップ252は、第1のアドレスを用いてデータを書き込むことを試行することを含む。決定ステップ254は、書き込み試行が成功したか否かを決定する。書き込み試行が成功した場合、プロセスは、ステップ264で終了する。ステップ256は、書き込み試行が成功していないことをホストに通知することを含む。ステップ257は、再書き込みコマンド及び第2のアドレスを入力することを含む。ステップ258は、場合によっては、ページバッファ内にあるデータを変更するために置換バイトを入力することを含む。ステップ259は、書き込みコマンドを入力する。ステップ260は、第2のアドレスを用いてデータを書き込むことを試行することを含む。ステップ262は、再書き込み試行が成功したことをホストに示唆する。このプロセスは、ステップ264で終了する。
図2fは、図2eのプロセスに対応するホスト側プロセスを表す。ステップ270は、ユーザデータ、第1のアドレス、及び、書き込みコマンドをメモリ装置に送信することを含む。ステップ272は、書き込み試行が失敗したという通知を受信することを含む。ステップ273は、再書き込みコマンド及び第2のアドレスを送信することを含む。ステップ274は、場合によっては、ページバッファ内にあるデータを変更するために置換バイトを送信することを含む。ステップ275は、書き込みコマンドを送信する。ステップ276は、書き込み試行が成功したという通知を受信することを含む。プロセスは、ステップ278で終了する。
図3aは、1ページのデータをメモリアレイに書き込み、その間に別のページのデータをデータキャッシュに受信する際のホストとメモリ装置との間の通信のシーケンスを表す。このシーケンスは、以前のデータの書き込み要求が保留されている間に付加データがメモリ装置で受信され記憶されることを可能にする。このキャッシュ書き込みシーケンスの間に、コマンド8Dhは、状態失敗がページ書き込みに対して検出された後に用いることができる。この場合、書き込みに成功したページの場合と同様に、書き込み動作後に、データキャッシュからページバッファへのコピーが行われない。コマンド8Dhは、新ページアドレス及びキャッシュ書き込みコマンド(例えば、15h)が後に続けられて、発行することができる。コマンド15hは、付加ページのデータが受信され、データキャッシュに入り、同時に、現在ページがメモリアレイに書き込まれることを示唆する。
この場合、ページデータは、新アドレスに書き込まれる。再マッピングを省略するため、キャッシュシーケンスがそのまま再開される。キャッシュシーケンスを再開するため、コマンド80hと、後続ページのためのページアドレスとが再発行される。なお、コマンド80hは、この場合、データキャッシュ内のバイトを自動的にセットしない。失敗のない通常の書き込み動作では、ユーザがデータを入力し始める前に、キャッシュ内のすべての先行データは、FF(11111111)にセットされる。なぜならば、書き込みが成功し、旧データが既にメモリ内に記憶されているからである。失敗の場合、キャッシュ内のデータは、依然として書き込まれるべきデータである。本発明者らは、データがキャッシュに留まることを望み、ユーザ/ホストがデータを変更すべきか、又は、データをキャッシュに維持すべきかを決定できるようにする。
t0においてデータ入力コマンド(80h)が、その後に続いて、t1においてアドレスNが、そして、t2において書き込まれるべきデータ(データX)がホストからメモリ装置に供給される。メモリ装置は、アドレスNを作業メモリ内に維持し、データXをデータキャッシュ113内に記憶する(図1)。ホストは、書き込まれたいずれかの先行ページが書き込みに成功したことを仮定して、t3で書き込みコマンド(15h)を供給する。これに応じて、メモリ装置は、データXをメモリアレイのアドレスNに書き込むために書き込み動作を始動する。なお、これは、ホストとメモリ装置との間の付加通信と同時に行われることができる。
t3において、ビジー状態がセットされる。t4において、レディ状態がセットされ、これに応じて、ホストがデータ入力コマンドを供給し、その後に続いて、t5においてアドレスM、そして、t6においてデータYが供給される。データYは、データキャッシュ内に記憶される。このようにして、データXのための書き込み試行が行われている間に付加データがメモリ装置に入力される。これは、帯域幅の効率的な使用をもたらす。t7においてデータYを書き込む書き込みコマンドが供給されるが、このコマンドの実施は、先行データの書き込みが成功するまで待たなければならない。この書き込みコマンドは、t16においてY’のための書き込みコマンドによって後で入れ替えられる。ホストは、レディ信号を待つ。t8において、レディ状態がセットされ、これに応じて、ホストがデータX書き込み試行の状態を見つけるためメモリ装置をポーリングする。メモリ装置は、例えば、t9において、失敗状態メッセージを使って応答する。データキャッシュからページバッファへのデータコピーはなく、そうでなければ、失敗したページのデータは無効にされるであろう。メモリは、中断し、ページバッファ内のデータを書き込むことを試行する8Dコマンド、又は、失敗を無視し、(失敗したページを格納した)ページバッファ内のこのデータを無効化し、キャッシュ動作を再開するためにデータキャッシュからページバッファへデータをコピーする80コマンドのいずれかを待つ。
t9での失敗状態通信に応じて、ホストは、t10において、書き込みプロセスが失敗したデータを使って再書き込み試行が行われるべきであること、及び、この再書き込みを実行するアドレスが後に続くようになることをメモリ装置に知らせるコマンド(8Dh)を供給する。t11において、新アドレスN’がホストによって供給され、t12において、書き込みコマンド(15h)が後に続けられる。
場合によっては、t11.1において、データX’と呼ばれるデータXのための変更済みデータは、前述されているように、ページバッファ内にあるデータXの一部分を変更するためにホストによって通信される。ページバッファ・データをメモリアレイに再書き込みする前に、所定の位置でページバッファ・データを変更することができる。アドレスN’は、データX’によって置換されるべきデータXの一部分を特定するバイトと、メモリアレイ・アドレスN’を特定するバイトと、を含むことができる。
レディ/ビジー信号は、t12において、ビジーにセットされ、その後に、t13において、レディにセットされる。この場合も、メモリ装置は、t12において、書き込みコマンドは、t10におけるコマンドによって先行されるので、ページバッファからの再書き込みとして解釈されることが分かる。t12において、データX又はX(X’)をアドレスN’に書き込むために試行が行われる。
この時点で、ホストは、再書き込み試行がメモリ装置によって実行されるべきであることが分かる。ホストは、先に送信されたデータYの代わりにメモリ装置内に記憶されるべき変更済みデータY’を供給する選択肢をもつ。さらに、データY’を記憶する新アドレスM’は、選択されることができる。例えば、データYは、再書き込みが試行されるようになる新アドレスM’に基づいて変更されることがある。データYは、メモリアレイ内のデータXの場所を指し示す情報を格納することがあり、この場合、データYは、データXの新しい場所に基づいて変更することができる。例えば、データYは、データXのアドレスを指し示すデータを格納することができる。このデータは変更されるべきである。これはありそうもないとしても、起こり得る。さらに、ページ失敗に応答して、様々なデータが後続のページ書き込みで必要とされることがある(様々なデータは、失敗したページのためさらに必要とされることもある)。この例は、ページの物理アドレスが連続していないとしても、ページがチェーン内に配置される「リンクリスト」構造体である。その代わりに、各ページは、このページの先行ページのアドレスを格納するので、ソフトウェア又はファームウェアは、チェーン全体を追跡することができる。データXの場所がNからN’に変化する場合、データYは、Xのためのアドレスの部分をNからN’に更新する必要がある。データYが変更されない場合、データYはデータキャッシュ内に留まることができる。
ホストは、t13でデータ入力コマンドと、引き続いてt14で変更済みアドレスM’と、t15で変更済みデータY’と、t16でデータY’のための新書き込みコマンドと、を供給することを選択することができ、レディ/ビジー信号はビジーになる。ホストは、失敗状態がt9で受信された場合、データYをデータY’に変更し始めることができる。しかし、効率をよくするために、ホストが8Dhコマンド、アドレスN’、及び、データX’を発行し、その後、データYを変更するようになる前に、次の10h/15hコマンドを発行する場合、データYの変更は、データX又はX(X’)が書き込まれるのと並列に行うことができる。ホストがデータYを変更することを意図していない場合、データサイクルは省略することができる。さらに、ユーザがアドレスMを変化させることを意図しないとしても、アドレスサイクルは依然として必要とされ、この場合、ホストは、アドレスMを再入力する。
この書き込みコマンドは、データXの書き込みが未だ承認されていないので、実施されるのを待つ。t17で、アドレスN’にあるデータX又はX(X’)は、書き込みを無事に終了し、レディ/ビジー信号は上昇してこのレディ状態を示唆し、そして、ホストは、この状態を見つけるためメモリ装置をポーリングする。メモリ装置は、t18で成功状態メッセージを使ってデータX又はX(X’)のための書き込み状態に応答する。続いて、データY’がアドレスM’においてメモリアレイに書き込まれる。
ホストは、メモリアレイに書き込まれるべき次ページのデータのための別のデータ入力コマンド(図示せず)を発行することができ、キャッシュ書き込みプロセスが継続する。
なお、ホストがt9での失敗通知を無視することを選択した場合、t10での再書き込みコマンドは、省略することができる。この場合、コマンド15hがt16で発行された後に、データキャッシュからページバッファへのコピーが行われる。
図3b〜hは、図3aのシーケンスに対応するデータキャッシュ、ページバッファ、及び、メモリアレイ内のデータの移動を表す。図3bで、データXは、ホスト136によって送信され、t2において、データキャッシュ113内に記憶される。図3cでは、t3での書き込みコマンドに基づく書き込みプロセスの間に、データXがデータキャッシュ113からページバッファ111へ転送され、ページバッファ111からメモリアレイ102のアドレスNへ書き込まれ始める。図3dでは、書き込みプロセスの間に、データYは、t6において、キャッシュで受信され、データXのための書き込み試行が失敗する。図3eでは、データYはデータキャッシュ内にあり、データXはページバッファ内にある(t8)。図3fでは、データXは、t12で書き込みコマンドに基づいてアドレスN’に再書き込みされ始める。場合によっては、前述されているように、ホスト136は、データXの一部分を置換し、メモリアレイ102のアドレス’に書き込まれる変更済みデータX(X’)を提供するため、データX’をページバッファ111に直接的に供給することができる。図3gでは、再書き込みプロセスが継続し、試行が成功する。さらに、並行して、t15において、変更済みデータY’がデータキャッシュに記憶される。図3hでは、データY’がデータキャッシュからページバッファへ転送される(t18の後、図示せず)。
図3iは、図3aのシーケンスに対応するプロセスを表す。ステップ350は、第1のユーザデータ、第1のアドレス、及び、書き込みコマンドをメモリ装置に入力することを含む。ステップ352は、第1のアドレスを用いて第1のデータを書き込むことを試行することを含む。ステップ354は、第2のデータ、第2のアドレス、及び、書き込みコマンドをメモリ装置に入力することを含む。決定ステップ356は、第1のデータの書き込み試行が成功したかどうかを決定する。書き込み試行が成功した場合、データ・キャッシュ・フローを続行するので、プロセスがステップ370で継続する。ステップ358は、第1のデータの書き込み試行が不成功であったことをホストに通知することを含む。
ステップ360は、再書き込みコマンド及び第3のアドレスを入力することを含む。ステップ362は、場合によっては、ページバッファ内にある第1のデータ(X)を変更するために置換バイトを送信することを含む。ステップ363は、書き込みコマンドを入力する。ステップ364は、第3のアドレスを用いて(場合によっては変更された)第1のデータを書き込むことを試行することを含む。なお、ホストは、データY’を供給するためにこの時点で第2のデータを変更することができる。ステップ362〜364は、ユーザが上記のことをすると選択した場合、省略することができる。ステップ366は、例えば、数バイトだけを変更することができる変更済み第2のデータと、第4のアドレスと、書き込みコマンドと、をメモリ装置に入力することを含む。ステップ368は、第1のデータの再書き込み試行が成功したことをホストに通知することを含む。ステップ366の後、ホストは、データX又はX(X’)の書き込みが完了するまで低状態(ビジー)に留まるレディ/ビジー信号を待つ。プロセスは、ステップ370で継続する。
図4aは、メモリアレイからコピーされたページのデータをメモリアレイに書き込む際のホストとメモリ装置との間の通信のシーケンスを表す。このシーケンスは、メモリアレイから、場合によっては変更済みデータがコピーされ、メモリアレイにライトバックされることを可能にする。ページ・コピー・シーケンスの間に、失敗状態の後に、コマンド8Dh及び新ページアドレスと、再度書き込みコマンド(例えば、10h)とを続けることができる。結果として、同じページのデータを新しいページ場所に書き込む。
読み出しデータ入力コマンド(00h)は、t0でホストからメモリ装置に供給され、その後に、t1において、アドレスNが続けられ、t2において、読み出しコマンド(30h)が続けられ、これに応じて、アドレスNにあるデータXが読み出される。t2において、レディ/ビジー信号は、ビジー状態になり、アドレスNにあるページのデータがページバッファにロードされ、その後、キャッシュにコピーされる。レディ/ビジー信号がレディ状態になる場合、t3において、データXがデータキャッシュからホストへ出力される。データXは、トグルアウトされてもよい。
ホストは、データXがメモリアレイにコピーされる/ライトバックされる前にデータXを変更する選択肢をもっている。ホストは、t4において、コピーデータ入力コマンド(8Ch)を供給し、その後に続けて、t5でアドレスM、t6で変更済みデータ、即ち、データX’を供給する。t7において、書き込みコマンド(10h)に応じて、データX’をアドレスMに書き込む試行が行われる。具体的には、t7において、レディ/ビジー信号がビジー状態になり、データX’がデータキャッシュからページバッファにコピーされ、その後、メモリアレイ内のMによって指定された物理的な場所に書き込まれる。t8において、レディ/ビジー信号は上昇してレディ状態を示唆し、ホストがこの状態を見つけるためメモリ装置をポーリングする。メモリ装置は、例えば、t9において、失敗状態メッセージを使ってデータX’のための書き込み状態に応答する。
失敗状態通信に応答して、ホストは、t10において、書き込みプロセスが失敗し、依然としてページバッファ内にあるデータを使って再書き込み試行が行われたこと、及び、この再書き込みを実行するアドレスが後に続くことをメモリ装置に知らせるコマンド(8Dh)を供給する。新アドレスM’は、t11でホストによって供給され、その後に続いて、t12で書き込みコマンド(10h)が供給される。この場合も同様に、メモリ装置は、t10でのコマンドが先行しているので、t12での書き込みコマンドがページバッファからの再書き込みとして解釈されることが分かる。場合によっては、t11.1で、データX’’と呼ばれるデータX’の変更済みデータが、既に検討されているように、ページバッファ内にあるデータX’の一部分を変更するためにホストによって通信される。このようにして、ページバッファ・データをメモリアレイに再書き込みする前に、所定の位置でページバッファ・データを変更することができる。アドレスM’は、データX’によって置換されるべきデータXの一部分を特定するバイトと、メモリアレイ・アドレスM’を特定するバイトとを含むことができる。
t12において、レディ/ビジー信号は、ビジー状態になり、ページバッファ内のデータX’又はX’(X’’)は、メモリアレイ内のM’によって指定された物理的な場所への書き込みが成功する。t13において、レディ/ビジー信号が上昇してレディ状態を示唆し、これに応じて、アドレスM’へのデータX’又はX’(X’’)の試行された書き込みに関係する状態要求コマンドがホストによって供給される。成功状態メッセージは、t14でメモリ装置によってホストに供給される。
図4b〜fは、図4aのシーケンスに対応するデータキャッシュ、ページバッファ、及び、メモリアレイ内のデータの移動を表す。図4bでは、データXは、t2での読み出しコマンドに基づいて読み出される。データXは、メモリアレイからページバッファ、及び、ページバッファからデータキャッシュへロードされる。図4cでは、t3において、データXは、ホスト136へ出力される。データXのコピーは、ページバッファ111内に留まることができる。図4dでは、変更済みデータ、即ち、t6において、データX’がデータキャッシュによって受信される。図4eでは、t7において、書き込みコマンドに応じて、データX’がページバッファにコピーされ、このデータX’をアドレスMでメモリアレイに書き込む試行が行われ、失敗する。図4fでは、t12において、書き込みコマンドに応じて、代替的なアドレスM’でメモリアレイへのデータX’の書き込みに成功する。場合によっては、指摘されているように、ホスト136は、データX’の一部分を置換し、変更済みデータX’(X’’)を提供するために、データX’’をページバッファ111へ直接的に供給することができ、このデータX’’がメモリアレイ102のアドレスM’に書き込まれる。
図4gは、図4aのシーケンスに対応するプロセスを表す。ステップ450は、第1の読み出しアドレス及び読み出しコマンドをメモリ装置へ入力することを含む。ステップ452は、第1の読み出しアドレスで第1のデータを読み出し、このデータをホストに出力することを含む。ステップ454で、ホストは、場合によっては、第1のデータを変更する。ステップ456は、第1の書き込みアドレス、変更済みデータ、及び、書き込みコマンドをメモリ装置に入力することを含む。ステップ458は、第1の書き込みアドレスを用いて変更済みデータを書き込むことを試行することを含む。決定ステップ460で、試行された書き込みが成功した場合、プロセスがステップ468で終了する。
決定ステップ460で試行された書き込みが成功しなかった場合、ホストは、ステップ462で通知される。ステップ463は、再書き込みコマンド及び第2の書き込みアドレスを入力することを含む。ステップ464は、場合によっては、ページバッファ内にある変更済みデータ(X’)をさらに変更するために置換バイトを送信することを含む。ステップ465は、書き込みコマンドを入力する。ステップ466は、第2の書き込みアドレスを用いて(場合によってはさらに変更された)変更済みデータX’又はX’(X’’)を書き込むことを試行することを含む。プロセスは、ステップ468で終了する。
図5aは、メモリアレイからコピーされたページのデータをメモリアレイに書き込み、その間に別のページのデータをデータキャッシュに受信する際のホストとメモリ装置との間の通信のシーケンスの第1部分を表す。このシーケンスは、データがメモリアレイからコピーされること、場合によっては、変更されること、そして、メモリアレイにライトバックされ、その間に、付加データをさらに受信することを可能にする。
データ・キャッシュ・シーケンスに関するページコピーでは、ページ書き込みが失敗した場合、キャッシュ書き込みの場合と同様に、データキャッシュ内のデータはページバッファにコピーされないであろう。この場合、ホストは、失敗したページを別のアドレスに書き込むため、又は、失敗したページを無視し、シーケンスを継続するためコマンド8Dhを使用することができる。失敗したページを別のアドレスに書き込むため、ホストは、コマンド8Dhを送信し、その後に続けて、新ページアドレス及びキャッシュ書き込みコマンド(例えば、15h)を送信する。失敗したページを無視するため、ホストは、そのまま次のステップに進み、キャッシュコピー・シーケンスを再開し、コマンド8Chと、その後に続く、後続のページのアドレス(変更許可済み)、及び、おそらくデータバイト変更と、その後に、後続ページのため意図されたキャッシュ書き込みコマンドとがメモリ装置に入力される。
t0において、読み出しデータ入力コマンド(00h)が、ホストからメモリ装置へ供給され、その後に続いて、t1でアドレスN、及び、t2で読み出しコマンド(30h)が供給され、これに応じて、アドレスNでデータXが読み出される。具体的には、t2において、レディ/ビジー信号がビジー状態になり、データXがページバッファにロードされ、その後、データキャッシュにコピーされる。データXは、レディ/ビジー信号がレディ状態になる場合、t3において、ホストに出力される。ホストは、データXがメモリアレイにコピーされる/ライトバックされる前にデータXを変更する選択肢をもっている。t4において、ホストは、コピーデータ入力コマンド(8Ch)を供給し、その後に続いて、t5でアドレスM、及び、t6で変更済みデータ、即ち、データX’を供給する。t7において、書き込みコマンド(15h)に応じて、アドレスMでデータX’を書き込む試行が行われる。具体的には、レディ/ビジー信号がビジー状態になり、データX’がデータキャッシュからページバッファへコピーされ、その後に、メモリアレイ内の場所Mに書き込まれる。t8において、レディ/ビジー信号が上昇してレディ状態を示唆し、ホストは、付加データX1のための別の読み出し動作を開始する。ページバッファ内のデータX’をアレイ内のアドレスMに書き込む試行が行われる。
読み出すべき別のページのための読み出しデータ入力コマンド(00h)は、t8において、ホストからメモリ装置に供給され、その後に続いて、t9でアドレスN1、及び、t10で読み出しコマンド(3Ah)が供給され、これに応じて、レディ/ビジー信号がビジー状態になるので、アドレスN1にあるデータX1が読み出される。データX1は、直接的にデータキャッシュにロードされ、t11でホストへ出力されるので、データX’は、後続の再書き込み試行のためページバッファ内に留まることができる。さらなる情報については図6〜8を参照のこと。ホストは、データX1がメモリアレイにコピーされる/ライトバックされる前に、データX1を変更する選択肢をもっている。t12において、ホストは、コピーデータ入力コマンド(8Ch)を供給し、その後に続いて、t13で新アドレスM1、及び、t14で変更済みページのデータ、即ち、データX1’を供給する。アドレスM1でデータX1’を書き込むためのt15での書き込みコマンド(15h)は、アドレスMへの先行するデータX’の書き込み試行が未だ完了していないので、待つ必要がある。この書き込みコマンドは、t24でのアドレスM1’への書き込みコマンドによって後で入れ替えられる。
図5bは、図5aのシーケンスの後に続く通信のシーケンスの第2部分を表す。t16において、レディ/ビジー信号は上昇してレディ状態を示唆し、これに応答して、ホストは、アドレスM書き込み試行でのデータX’の状態を見つけるためメモリ装置をポーリングする。メモリ装置は、例えば、t17において、MへのX’の書き込み失敗を特定する失敗状態メッセージに応答する。この書き込み失敗のため、データキャッシュからページバッファへのデータX1’のコピーはない。失敗状態通信に応答して、ホストは、t18において、書き込みプロセスが失敗し、かつ、依然としてページバッファ内にあるデータを使って再書き込み試行が行われるべきであること、及び、この再書き込みを実行するアドレスが後に続くことをメモリ装置に信号で知らせるコマンド(8Dh)を供給する。t19において、新アドレスM’がホストによって供給され、その後に続いて、t20において、書き込みコマンド(15h)が供給される。この場合も同様に、メモリ装置は、t18でのコマンドが先行するので、t20での書き込みコマンドがページバッファからの再書き込みとして解釈されることが分かる。t20において、レディ/ビジー信号はビジー状態になり、ページバッファ内のデータX’は、メモリアレイに書き込まれ始める。場合によっては、t19.1において、データX’’と称されるデータX’の変更済みデータは、検討されているように、ページバッファ内にあるデータX’の一部分を変更するために、ホストによって通信される。このようにして、ページバッファ・データをメモリアレイに再書き込みする前に、所定の場所でページバッファ・データを変更することができる。アドレスM’は、データX’’によって置換されるべきデータX’の一部分を特定するバイトと、メモリアレイ・アドレスM’を特定するバイトと、を含むことができる。
この時点で、変更済みデータX1’’は、元のメモリ装置へ供給される。ホストは、データX1’をデータX1’’に変更することができる。これは、リトライが開始され、そして、メモリの準備ができる直後に行われる。具体的には、t21において、コピーデータ入力コマンドが供給され、その後に続いて、t22で新アドレスM1’、t23でデータ1X’’、及び、t24で書き込みコマンドが供給される。ホストがデータX1’をX1’’に変化させることを意図しない場合、データサイクルは省略することができる。さらに、ユーザがアドレスM1を変化させることを意図しない場合、アドレスサイクルが依然として必要とされ、この場合、ホストはアドレスM1を再入力する。
データX1’’をアドレスM1’に書き込むt24での書き込みコマンドは、データX’又はX’(X’’)の先行の書き込み試行が未だ完了していないので、待つことが必要である。M’へのデータX’又はX’(X’’)の書き込みは、状態要求コマンドがアドレスM’へのデータX’又はX’(X’’)の書き込み試行に関係するホストに供給された場合、t25までに無事に終了する。データX1’’は、データキャッシュからページバッファにコピーされる。t26において、成功状態メッセージがメモリ装置によってホストに供給され、シーケンスが継続する。
なお、t18での再書き込みコマンドは、ホストがt17で失敗通知を無視することを選択した場合、省略することができる。この場合、コピー(データキャッシュからページバッファへの転送)は、コマンド15hがt20で発行された後に行うことができる。
図5c〜lは、図5a及び5bのシーケンスに対応するデータキャッシュ、ページバッファ、及び、メモリアレイ内のデータの移動を表す。図5cでは、アドレスNからのデータXの読み出しは、t2において、データがページバッファ111内にロードされ、データキャッシュ113にコピーされることを含む。図5dでは、変更済みデータ、即ち、データX’が、t6において、ホスト136からデータキャッシュに受信される。図5eでは、t7において、書き込みコマンドに基づいて、データX’がページキャッシュ113からページバッファ111に供給され、データXを無効にする。図5fでは、同様に、t7において、書き込みコマンドに基づいて、ページバッファ111からメモリアレイへのアドレスMでの書き込みが試行され、失敗する。図5gでは、t8において、読み出しコマンドに基づいて、データX1がアドレスN1でメモリアレイからデータキャッシュ113へ直接的に読み出されるので、データX’が後続の再書き込み試行のためページバッファ内に留まる。図5hでは、データX1がデータキャッシュから出力される。
図5iでは、t14において、変更済みデータX1’がデータキャッシュ113に受信される。図5jでは、データX1’がデータキャッシュ内にあり、データX’がページバッファ内にある。図5kでは、t20で書き込みコマンドに基づいて、書き込み試行がアドレスM’のデータX’のため行われる。場合によっては、指摘されているように、ホスト136は、データX’の一部分を置換し、変更済みデータX’(X’’)を提供するために、データX’’をページバッファ111へ直接的に供給することができ、変更済みデータがメモリアレイ102のアドレスM’に書き込まれる。図5lでは、t23において、データX’又はX’(X’’)の再書き込みと並行して、付加データX1’’がデータキャッシュで受信される。このようにして、本発明者らは、データが、データX及びデータX1の形式で、メモリアレイから読み出され、変更され、元のメモリアレイ内に記憶される少なくとも部分的に重なり合う動作を存在させることができる。
図5mは、図5a及び5bのシーケンスに対応するプロセスを表す。ステップ550は、第1の読み出しアドレス及び読み出しコマンドをメモリ装置に入力することを含む。ステップ552は、第1の読み出しアドレスで第1のデータを読み出すことと、第1のデータをホストへ出力することとを含む。ステップ554では、ホストは、場合によっては、第1のデータを変更してX’を提供する。ステップ556は、第1の書き込みアドレス、第1の変更済みデータ、及び、書き込みコマンドをメモリ装置へ入力することを含む。ステップ558は、第1の書き込みアドレスにおいて、第1の変更済みデータを書き込むことを試行することを含む。ステップ560は、第2の読み出しアドレス及び読み出しコマンドをメモリ装置へ入力することを含む。ステップ562は、第2の読み出しアドレスにおいて、第2のデータを読み出すこと、及び、第2のデータをホストへ出力することを含む。ステップ564では、ホストは、場合によっては、第2のデータを変更する。ステップ566は、第2の書き込みアドレス、第2の変更済みデータ、及び、書き込みコマンドをメモリ装置へ入力することを含む。ステップ568は、第1の変更済みデータを第1の書き込みアドレスに書き込む試行が失敗したことをホストに通知することを含む。ステップ569は、再書き込みコマンドと後に続く第3の書き込みアドレスとを入力することを含む。ステップ570は、場合によっては、ページバッファ内にある第1の変更済みデータ(X’)をさらに変更するために置換バイトを送信することを含む。ステップ571は、書き込みコマンドを入力する。ステップ572は、(場合によってはさらに変更される)第1の変更済みデータを第3の書き込みアドレスで書き込むことを試行することを含む。ステップ574で、ホストは、場合によっては、X1’を供給するために第2のデータをさらに変更する。ステップ576は、第4の書き込みアドレスと、さらなる変更済みの第2のデータと、書き込みコマンドとをメモリ装置に入力することを含む。ステップ578で、第3の書き込みアドレスへの第1の変更済みデータの書き込み試行が成功し、ステップ580で、ホストはこれに応じて通知される。
前述の検討が示唆するように、ページ書き込みが失敗した後にコマンド8Dhが使用される。この特徴を使用するため、ホストは、ページが書き込まれる毎に、書き込まれた状態をチェックする。ページの書き込みがキャッシュ動作の間に失敗した場合、データキャッシュからページバッファへのコピーが停止される。ホストは、その後、(a)データをデータバッファ内で再マッピングするためにコマンド8Dhシーケンス(8Dh→新アドレス→(任意的な)新データ→(キャッシュ)書き込みコマンド)を使用するか、又は、(b)再マッピングを省略し、何も実行しないことが可能である。いずれの場合でも、ホストは、以下の通り継続することができる。第一に、単一ページモードでは、(a)が選択された場合、再びレディ状態になるためレディ/ビジー信号を待つ。第二に、キャッシュモードでは、後続のページのためのコマンドシーケンス(80h−アドレス−データ−書き込みコマンド)は、キャッシュフローを再開するため繰り返される。この場合、アドレス及びデータは、元のフローから変更されることが可能である。その後、レディ/ビジー信号が再びレディ状態になるのを待つ。このステップの後、ホストは、(a)が選択された場合、状態をチェックすべきである。状態が別の失敗である場合、ホストは、前述のフロート同様に、コマンド8Dhを再度使用することにより別のページ場所を選択すること、又は、再マッピングを省略することを選ぶことができる。リトライ限界(許容される再マッピングの最大回数)は、無限ループを回避するため使用できる。
図6は、メモリアレイ又はホストから直接的にデータを受信するためデータキャッシュ620が接続されている回路600を表す。データは、「データ出力」経路を介して適切な回路を使用するだけでなく、データキャッシュからメモリアレイ又はホストへ出力することができる。既に指摘されたように、データは、ページバッファを迂回して、メモリアレイから直接的にデータキャッシュにロードし、ホストへ出力するができるので、他のデータが後続の再書き込み試行のためページバッファ内に留まることができる。このことは、データキャッシュを迂回し、ページバッファに直接的にアクセスすることにより、ホストがページバッファ内に位置している失敗したページを変更することをさらに可能にする。これは、前に検討されているように、コマンド8Dh、及び、後に続けられる(例えば、置換されるべき開始バイトのバイトアドレスを提供することによって)置換バイトを使ってページバッファ内で変更すべきデータバイトを示唆するアドレスと、変更済みのページバッファ・データを書き込むメモリアレイ・アドレス、及び、後に続けられる置換データビットとを用いて実現することができる。
一般に、本明細書に提示された回路を使って、データキャッシュは、ページバッファを迂回して、メモリアレイ又はホストへ直接的に接続することができ、そして、ページバッファは、データキャッシュを迂回して、メモリアレイ又はホストへ直接的に接続することができる。提示された実施は、様々な可能性のうちの1つの可能性である。
回路の左半分はメモリアレイとインターフェイスを取り、回路の右半分はホスト/ユーザとインターフェイスを取る。回路は、データキャッシュ620と、ANDゲート608、610、632及び634と、インバータ606及び640と、nMOSトランジスタ613、623、633及び643と、トライ・ステート・バッファ612、614、626及び630とを含む。入力信号INは、トランジスタ613のゲートにおいて、線618と通信するバッファ612の出力に供給される。反転信号XINは、線627と通信する線631上で、トランジスタ623のゲートにおいて、バッファ614及び630の出力に供給される。トランジスタ633及び643は、線629上で、これらのトランジスタのゲートにおいて信号ENB5を受信し、それぞれ、トランジスタ613及び623に接続されている。イネーブル信号は、1つ以上の制御回路によって供給される。
トライ・ステート・バッファは、回路からバッファを効率的に取り除く高インピーダンス又はフローティング状態に加えて、従来型の0レベル及び1レベルを取ることができる出力ポートを有している。線616上のイネーブル信号ENB1がバッファ612及び614を制御し、線628上のイネーブル信号ENB2がバッファ626及び630を制御する。さらに、メモリアレイ側で、制御信号Cが線602に供給され、メモリアレイからのデータ、即ちデータ1が線604上に供給される。ホスト側で、制御信号Cが線636に供給され、ユーザからのデータ、即ちデータ2が線638上に供給される。線618は、バッファ626の出力をトランジスタ613のゲートに接続する。線622上のデータXQは、線624上のデータQの反転である。データキャッシュ620と、トランジスタ613及び623とがラッチを形成する。
メモリアレイからデータキャッシュにデータを書き込むため、本発明者らは、C=1、ENB1=1、ENB2=0及びENB5=1をセットする。C=1をセットすると、ANDゲート608がデータ1をバッファ612内に通すようになり、ENB1=1をセットすると、バッファ612がデータ1を通すようになり、ENB2=0をセットすると、バッファ626がフロートする。ENB5=1をセットすると、データをデータキャッシュ620内に書き込むことができるようになる。
ホストからデータキャッシュにデータを書き込むため、本発明者らが、C=1をセットすると、ANDゲート632がデータ2をバッファ626へ渡すようになり、ENB1=0をセットすると、バッファ612がフロートし、ENB2=1をセットすると、バッファ626がデータ2を通すようになる。同様に、前述の通り、ENB5=1である。
データキャッシュは、ページバッファに書き込む場合、ENB1=0、ENB2=0、及び、ENB5=0をセットすることにより、停止させることができる。ENB5=0をセットすることは、トランジスタ613及び623へのフローティング入力がデータキャッシュ内のデータを改ざんすることを阻止する。
図7は、ページバッファ720がメモリアレイ又はホストから直接的にデータを受信するため接続されている回路700を表す。データは、同様に「データ出力」経路を介して適切な回路を用いて、ページバッファからメモリアレイ又はホストへ出力することができる。コンポーネント702、704、706、708、710、712、713、714、716、718、722、723、724、726、727、728、729、730、731、732、733、734、736、738、740及び743は、図6において、それぞれ、コンポーネント602、604、606、608、610、612、613、614、616、618、622、623、624、626、627、628、629、630、631、632、633、634、636、638、640及び643に対応する。付加的に、イネーブル信号ENB3及びENB4は、1つ以上の制御回路によって、それぞれ、バッファ712/714及び726/730に供給され、ENB6は、ライン729上に供給される。ページバッファ720とトランジスタ713及び723とがラッチを形成する。
メモリアレイからページバッファにデータを書き込むため、本発明者らが、D=1をセットすると、ANDゲート708がデータ1をバッファ712へ渡すようになり、ENB3=1をセットすると、バッファ712がデータ1を通すようになり、ENB4=0をセットすると、バッファ726がフロートする。さらに、ENB6=1をセットすると、データをページバッファ720に書き込むことができるようになる。
ホストからページバッファにデータを書き込むため、本発明者らが、D=1をセットすると、ANDゲート732がデータ2をバッファ726へ渡すようになり、ENB3=0をセットすると、バッファ712がフロートし、ENB4=1をセットすると、バッファ726がデータ2を通すことができるようになる。同様に、前述の通り、ENB6=1である。
ページバッファは、データキャッシュに書き込む場合、ENB3=0、ENB4=0、及び、ENB6=0をセットすることにより、停止させることができる。ENB6=0をセットすることは、トランジスタ713及び723へのフローティング入力がページバッファ内のデータを改竄することを阻止する。
図8は、図6及び7の回路によって提供される機能を表す。ページバッファ111とホスト136とは、データを直接的に交換することができ、一方、ページバッファ111は、メモリアレイとさらに直接的に通信する。ページバッファとデータキャッシュ113とは、さらに通信することができる。さらにデータキャッシュ113とメモリアレイ102とは、データを直接的に交換することができ、一方、データキャッシュ113は、ホスト136とさらに通信する。指摘されたように、これは、独立にデータキャッシュ及びページバッファにデータを書き込み、又は、データキャッシュ及びページバッファからデータを読み出す能力を可能にする。
発明の前述の詳細な説明は、例示及び解説の目的のため提示されている。網羅的であること、及び、発明を開示された形式そのままに限定することは意図されていない。多数の変更及び変形が前述の開示を考慮して可能である。記載された実施形態は、発明の原理及び発明の実際的な用途を最良に説明し、それによって、当業者が様々な実施形態で、かつ、検討された特有の使用に適しているような様々な変形と共に発明を最良に利用できるようにするため選ばれた。発明の範囲は、添付の特許請求の範囲によって規定されることが意図されている。

Claims (15)

  1. メモリ装置を動作させる方法であって、
    外部ホスト(136)から、少なくとも1ページ分のデータ(X)と、メモリ装置(100)における第1のアドレス(N)と、を受信すること、
    前記少なくとも1ページ分のデータ(X)を、前記メモリ装置のデータキャッシュ(113)に記憶すること、
    前記少なくとも1ページ分のデータ(X)を、前記データキャッシュ(113)から、前記メモリ装置のページバッファ(111)に転送すること、
    前記ページバッファ(111)から、前記第1のアドレス(N)によって特定される場所における前記メモリ装置のメモリアレイ(102)に、前記少なくとも1ページ分のデータ(X)を書き込むことを試行すること、
    前記ページバッファ(111)から、前記第1のアドレス(N)によって特定される場所における前記メモリアレイ(102)に、前記少なくとも1ページ分のデータ(X)を書き込むことを試行することの間に、前記外部ホスト(136)から、前記第1のアドレス(N)を指し示すデータを備える少なくとも付加的な1ページ分のデータ(Y)を受信すること、
    前記少なくとも付加的な1ページ分のデータ(Y)を、前記メモリ装置のデータキャッシュ(113)に記憶すること、
    前記少なくとも1ページ分のデータ(X)を書き込む前記試行が失敗であったことを決定すること、
    前記少なくとも1ページ分のデータ(X)を書き込む前記試行が失敗であったことを前記外部ホスト(136)に通知すること、
    前記外部ホスト(136)から、前記メモリ装置における第2のアドレス(N’)を受信すること、
    前記外部ホスト(136)から、前記少なくとも付加的な1ページ分のデータの変更(Y’)を受信することであって、前記少なくとも付加的な1ページ分のデータの前記変更(Y’)は、前記第2のアドレス(N’)を指し示すデータを備える、前記受信すること、
    前記少なくとも付加的な1ページ分のデータの前記変更(Y’)を、前記少なくとも付加的な1ページ分のデータ(Y)に代えて、前記データキャッシュ(113)に記憶すること、及び
    前記外部ホスト(136)が前記少なくとも1ページ分のデータ(X)を前記メモリ装置に再送信することなく、前記ページバッファ(111)から、前記第2のアドレス(N’)によって特定される場所における前記メモリアレイ(102)に、前記少なくとも1ページ分のデータ(X)を書き込むことを試行すること、
    を備える方法。
  2. 前記外部ホストから、前記メモリ装置における置換バイトを受信すること、
    前記置換バイトによって置換されるべき、前記ページバッファ内の前記少なくとも1ページ分のデータの部分の標識を受信すること、及び、
    前記ページバッファから、前記第2のアドレスによって特定される場所における前記メモリアレイに、前記少なくとも1ページ分のデータを書き込むことを試行する前に、前記標識に基づいて、前記ページバッファ内の前記少なくとも1ページ分のデータの前記部分を前記置換バイトで置換すること、をさらに備える、請求項1に記載の方法。
  3. 前記ページバッファから、前記第1のアドレスによって特定される場所における前記メモリアレイに、前記少なくとも1ページ分のデータを書き込むことを試行することは、前記外部ホストから初期書き込みコマンドを受信することに応じて実行され、
    前記外部ホストが前記少なくとも1ページ分のデータを前記メモリ装置に再送信することなく、前記ページバッファから、前記第2のアドレスによって特定される場所における前記メモリアレイに、前記少なくとも1ページ分のデータを書き込むことを試行することは、前記外部ホストから、ページバッファ書き込みコマンドと、その後に続く前記第2のアドレス(N’)と、その後に続く付加書き込みコマンドと、を受信することに応じて実行され、
    前記ページバッファ書き込みコマンドは、再書き込み試行が前記ページバッファ内のデータを用いて実行されるべきこと、及び、前記再書き込み試行が行われるべきアドレスが後に続くことを、前記メモリ装置に知らせる、請求項1又は2に記載の方法。
  4. 前記メモリ装置は、前記外部ホストから前記ページバッファ書き込みコマンド及び前記付加書き込みコマンド以外のコマンドを受信することなしに、前記ページバッファから、前記第2のアドレスによって特定される前記場所における前記メモリアレイに、前記少なくとも1ページ分のデータを書き込むことを自動的に試行する、請求項3に記載の方法。
  5. 記転送は、前記外部ホストから初期書き込みコマンドを受信することに応じて実行され、
    前記ページバッファから、前記第1のアドレスによって特定される場所における前記メモリアレイに、前記少なくとも1ページ分のデータを書き込むことを試行することは、前記初期書き込みコマンドを受信することに応じて実行される、請求項1から4のうちのいずれか1項に記載の方法。
  6. 前記ページバッファから、前記第1のアドレスによって特定される場所における前記メモリアレイに、前記少なくとも1ページ分のデータを書き込むことを試行することは、前記外部ホストから、書き込みプロセスを実行することを前記メモリ装置に知らせる第1のコマンドコードの第1のインスタンスを受信することに応じて実行され、
    前記ページバッファから、前記第2のアドレスによって特定される場所における前記メモリアレイに、前記少なくとも1ページ分のデータを書き込むことを試行することは、前記外部ホストから、第2のコマンドコードのインスタンスと、その後に続く前記第2のアドレスと、その後に続く前記第1のコマンドコードの第2のインスタンスと、を受信することに応じて実行され、
    前記第2のコマンドコードの前記インスタンスは、新アドレスが、前記ページバッファ内のデータを用いる再書き込み試行のために供給されていることを、前記メモリ装置に知らせ、
    前記第1のコマンドコードの前記第2のインスタンスは、前記書き込みプロセスを実行することを前記メモリ装置に知らせる、請求項1から5のうちのいずれか1項に記載の方法。
  7. 前記少なくとも付加的な1ページ分のデータを記憶するために、前記外部ホストからアドレス(M)を受信すること、及び、
    前記少なくとも付加的な1ページ分のデータの前記変更を記憶するために、前記外部ホストから新たなアドレス(M’)を受信すること、をさらに備え、
    前記少なくとも付加的な1ページ分のデータの前記変更は、前記新たなアドレス(M’)に基づくものである、請求項1から6のうちのいずれか1項に記載の方法。
  8. 前記少なくとも1ページ分のデータと、前記少なくとも付加的な1ページ分のデータと、はチェーン内に配置されるページを備える、請求項1から7のうちのいずれか1項に記載の方法。
  9. 前記少なくとも1ページ分のデータは、前記メモリアレイから読み出されたデータであって、前記メモリ装置によって受信される前に前記第2のアドレスに基づいて前記外部ホストによって変更された前記データを含む、請求項1から8のうちのいずれか1項に記載の方法。
  10. メモリ装置であって、
    外部ホスト(136)から、少なくとも1ページ分のデータ(X)と、メモリ装置(100)における第1のアドレス(N)と、を受信する手段、
    前記少なくとも1ページ分のデータ(X)を、前記メモリ装置のデータキャッシュ(113)に記憶する手段、
    前記少なくとも1ページ分のデータ(X)を、前記データキャッシュ(113)から、前記メモリ装置のページバッファ(111)に転送する手段、
    前記ページバッファ(111)から、前記第1のアドレス(N)によって特定される場所における前記メモリ装置のメモリアレイ(102)に、前記少なくとも1ページ分のデータ(X)を書き込むことを試行する手段、
    前記ページバッファ(111)から、前記第1のアドレス(N)によって特定される場所における前記メモリアレイ(102)に、前記少なくとも1ページ分のデータ(X)を書き込むことを試行することの間に、前記外部ホスト(136)から、前記第1のアドレス(N)を指し示すデータを備える少なくとも付加的な1ページ分のデータ(Y)を受信する手段、
    前記少なくとも付加的な1ページ分のデータ(Y)を、前記メモリ装置のデータキャッシュ(113)に記憶する手段、
    前記少なくとも1ページ分のデータ(X)を書き込む試行が失敗であったことを決定する手段、
    前記少なくとも1ページ分のデータ(X)を書き込む試行が失敗であったことを前記外部ホスト(136)に通知する手段、
    前記外部ホスト(136)から、前記メモリ装置における第2のアドレス(N’)を受信する手段、
    前記外部ホスト(136)から、前記少なくとも付加的な1ページ分のデータの変更(Y’)を受信する手段であって、前記少なくとも付加的な1ページ分のデータの前記変更(Y’)は、前記第2のアドレス(N’)を指し示すデータを備える、前記受信する手段、
    前記少なくとも付加的な1ページ分のデータの前記変更(Y’)を、前記少なくとも付加的な1ページ分のデータ(Y)に代えて、前記データキャッシュ(113)に記憶する手段、及び
    前記外部ホスト(136)が前記少なくとも1ページ分のデータ(X)を前記メモリ装置に再送信することなく、前記ページバッファ(111)から、前記第2のアドレス(N’)によって特定される場所における前記メモリアレイ(102)に、前記少なくとも1ページ分のデータ(X)を書き込むことを試行する手段、
    を備えるメモリ装置。
  11. 前記外部ホストから、前記メモリ装置における置換バイトを受信する手段、
    前記置換バイトによって置換されるべき、前記ページバッファ内の前記少なくとも1ページ分のデータの部分の標識を受信する手段、及び、
    前記ページバッファから、前記第2のアドレスによって特定される場所における前記メモリアレイに、前記少なくとも1ページ分のデータを書き込むことを試行する前に、前記標識に基づいて、前記ページバッファ内の前記少なくとも1ページ分のデータの前記部分を前記置換バイトで置換する手段、をさらに備える、請求項10に記載のメモリ装置。
  12. 前記ページバッファから、前記第1のアドレスによって特定される場所における前記メモリアレイに、前記少なくとも1ページ分のデータを書き込むことを試行することは、前記外部ホストから初期書き込みコマンドを受信することに応じて実行され、
    前記外部ホストが前記少なくとも1ページ分のデータを前記メモリ装置に再送信することなく、前記ページバッファから、前記第2のアドレスによって特定される場所における前記メモリアレイに、前記少なくとも1ページ分のデータを書き込むことを試行することは、前記外部ホストから、ページバッファ書き込みコマンドと、その後に続く前記第2のアドレス(N’)と、その後に続く付加書き込みコマンドと、を受信することに応じて実行され、
    前記ページバッファ書き込みコマンドは、再書き込み試行が前記ページバッファ内のデータを用いて実行されるべきこと、及び、前記再書き込み試行が行われるべきアドレスが後に続くことを、前記メモリ装置に知らせる、請求項10又は11に記載のメモリ装置。
  13. 前記メモリ装置は、前記外部ホストから前記ページバッファ書き込みコマンド及び前記付加書き込みコマンド以外のコマンドを受信することなしに、前記ページバッファから、前記第2のアドレスによって特定される前記場所における前記メモリアレイに、前記少なくとも1ページ分のデータを書き込むことを自動的に試行する、請求項12に記載のメモリ装置。
  14. 記転送は、前記外部ホストから初期書き込みコマンドを受信することに応じて実行され、
    前記ページバッファから、前記第1のアドレスによって特定される場所における前記メモリアレイに、前記少なくとも1ページ分のデータを書き込むことを試行することは、前記初期書き込みコマンドを受信することに応じて実行される、請求項10から13のうちのいずれか1項に記載のメモリ装置。
  15. 前記ページバッファから、前記第1のアドレスによって特定される場所における前記メモリアレイに、前記少なくとも1ページ分のデータを書き込むことを試行することは、前記外部ホストから、書き込みプロセスを実行することを前記メモリ装置に知らせる第1のコマンドコードの第1のインスタンスを受信することに応じて実行され、
    前記ページバッファから、前記第2のアドレスによって特定される場所における前記メモリアレイに、前記少なくとも1ページ分のデータを書き込むことを試行することは、前記外部ホストから、第2のコマンドコードのインスタンスと、その後に続く前記第2のアドレスと、その後に続く前記第1のコマンドコードの第2のインスタンスと、を受信することに応じて実行され、
    前記第2のコマンドコードの前記インスタンスは、新アドレスが、前記ページバッファ内のデータを用いる再書き込み試行のために供給されていることを、前記メモリ装置に知らせ、
    前記第1のコマンドコードの前記第2のインスタンスは、前記書き込みプロセスを実行すべきことを前記メモリ装置に知らせる、請求項10から14のうちのいずれか1項に記載のメモリ装置。
JP2011533210A 2008-10-25 2009-09-23 データをメモリ装置に再入力することなくページをプログラムするためのページバッファプログラムコマンド及び方法 Expired - Fee Related JP5547741B2 (ja)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
US10850708P 2008-10-25 2008-10-25
US61/108,507 2008-10-25
US12/414,925 US8397024B2 (en) 2008-10-25 2009-03-31 Page buffer program command and methods to reprogram pages without re-inputting data to a memory device
US12/414,925 2009-03-31
PCT/US2009/057992 WO2010047911A1 (en) 2008-10-25 2009-09-23 Page buffer program command and methods to reprogram pages without re-inputting data to a memory device

Publications (2)

Publication Number Publication Date
JP2012507070A JP2012507070A (ja) 2012-03-22
JP5547741B2 true JP5547741B2 (ja) 2014-07-16

Family

ID=42118598

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2011533210A Expired - Fee Related JP5547741B2 (ja) 2008-10-25 2009-09-23 データをメモリ装置に再入力することなくページをプログラムするためのページバッファプログラムコマンド及び方法

Country Status (7)

Country Link
US (2) US8397024B2 (ja)
EP (1) EP2351040B1 (ja)
JP (1) JP5547741B2 (ja)
KR (1) KR101579555B1 (ja)
CN (1) CN102203873B (ja)
TW (1) TW201027557A (ja)
WO (1) WO2010047911A1 (ja)

Families Citing this family (48)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8694714B2 (en) * 2008-01-18 2014-04-08 Spansion Llc Retargeting of a write operation retry in the event of a write operation failure
US8397024B2 (en) 2008-10-25 2013-03-12 Sandisk 3D Llc Page buffer program command and methods to reprogram pages without re-inputting data to a memory device
US8386736B2 (en) 2008-12-18 2013-02-26 Spansion Llc Rapid memory buffer write storage system and method
EP2273373A1 (en) * 2009-07-02 2011-01-12 Vodafone Holding GmbH Storing of frequently modified data in an IC card
KR20110119406A (ko) * 2010-04-27 2011-11-02 삼성전자주식회사 동작 모드 전환기능을 갖는 불휘발성 반도체 메모리 장치 및 동작 모드 전환방법
US10282320B2 (en) * 2010-08-03 2019-05-07 Continental Teves Ag & Co. Ohg Three-stage memory arrangement
KR102154296B1 (ko) 2012-12-18 2020-09-14 삼성전자 주식회사 저항체를 이용한 비휘발성 메모리 장치의 구동 방법 및 비휘발성 메모리 장치
US10014070B2 (en) * 2013-01-14 2018-07-03 Micron Technology, Inc. Data path integrity verification in memory devices
US9053810B2 (en) 2013-03-08 2015-06-09 Sandisk Technologies Inc. Defect or program disturb detection with full data recovery capability
US8947972B2 (en) 2013-03-15 2015-02-03 Sandisk 3D Llc Dynamic address grouping for parallel programming in non-volatile memory
US8947944B2 (en) 2013-03-15 2015-02-03 Sandisk 3D Llc Program cycle skip evaluation before write operations in non-volatile memory
US9710226B1 (en) 2013-07-16 2017-07-18 Rambus Inc. Unsuccessful write retry buffer
KR102163872B1 (ko) 2013-08-09 2020-10-13 삼성전자 주식회사 멀티 비트 메모리 장치, 그것의 온칩 버퍼 프로그램 방법 및 멀티 비트 메모리 시스템
CN104423888B (zh) * 2013-08-23 2017-10-03 群联电子股份有限公司 数据写入方法、存储器控制电路单元与存储器存储装置
TWI498899B (zh) * 2013-08-23 2015-09-01 Phison Electronics Corp 資料寫入方法、記憶體控制電路單元與記憶體儲存裝置
US9026699B2 (en) 2013-09-23 2015-05-05 Seagate Technology Llc Command execution using existing address information
US9711225B2 (en) 2013-10-16 2017-07-18 Sandisk Technologies Llc Regrouping and skipping cycles in non-volatile memory
US9218282B2 (en) * 2013-10-31 2015-12-22 Micron Technology, Inc. Memory system data management
JP2015176309A (ja) 2014-03-14 2015-10-05 株式会社東芝 半導体記憶装置
US9418751B1 (en) 2015-01-23 2016-08-16 Sandisk Technologies Llc Pre-program detection of threshold voltages of select gate transistors in a memory device
KR102438552B1 (ko) * 2015-02-04 2022-09-01 에스케이하이닉스 주식회사 메모리 시스템 및 그 동작방법
US9564215B2 (en) 2015-02-11 2017-02-07 Sandisk Technologies Llc Independent sense amplifier addressing and quota sharing in non-volatile memory
US9442839B1 (en) * 2015-05-26 2016-09-13 Sandisk Technologies Llc Nonvolatile storage with automated response to program faults
US10284232B2 (en) * 2015-10-28 2019-05-07 Pure Storage, Inc. Dynamic error processing in a storage device
US9880783B2 (en) 2015-10-28 2018-01-30 Sandisk Technologies Llc System and method for utilization of a shadow data buffer in a host where the shadow data buffer is controlled by external storage controller
US20170123991A1 (en) * 2015-10-28 2017-05-04 Sandisk Technologies Inc. System and method for utilization of a data buffer in a storage device
CN106973073A (zh) * 2016-01-13 2017-07-21 杭州海康威视系统技术有限公司 多媒体数据的传输方法及设备
KR102565918B1 (ko) * 2016-02-24 2023-08-11 에스케이하이닉스 주식회사 데이터 저장 장치 및 그것의 동작방법
US9990300B2 (en) * 2016-04-28 2018-06-05 Everspin Technologies, Inc. Delayed write-back in memory
KR20180044635A (ko) 2016-10-24 2018-05-03 삼성전자주식회사 저장 시스템 및 그것의 동작 방법
US10019332B1 (en) 2017-03-10 2018-07-10 Western Digital Technologies, Inc. Non-volatile memory with program failure recovery
TWI615711B (zh) * 2017-03-28 2018-02-21 群聯電子股份有限公司 資料寫入方法、記憶體控制電路單元與記憶體儲存裝置
US10620879B2 (en) * 2017-05-17 2020-04-14 Macronix International Co., Ltd. Write-while-read access method for a memory device
JP2019045910A (ja) * 2017-08-29 2019-03-22 東芝メモリ株式会社 半導体記憶装置
US11354058B2 (en) 2018-09-06 2022-06-07 Pure Storage, Inc. Local relocation of data stored at a storage device of a storage system
CN108536475B (zh) * 2017-12-27 2023-08-15 贵阳忆芯科技有限公司 完整编程命令处理方法与装置
DE102018126051A1 (de) 2018-01-12 2019-07-18 Taiwan Semiconductor Manufacturing Co. Ltd. Neuartige Speichervorrichtung
US10643722B2 (en) * 2018-01-12 2020-05-05 Taiwan Semiconductor Manufacturing Co., Ltd. Memory device
KR102576849B1 (ko) * 2018-07-13 2023-09-14 에스케이하이닉스 주식회사 메모리 장치
KR20200010933A (ko) 2018-07-23 2020-01-31 에스케이하이닉스 주식회사 메모리 시스템 및 그것의 동작방법
US10964392B2 (en) * 2018-08-27 2021-03-30 SK Hynix Inc. Memory system performing cache program and operating method thereof
KR102637478B1 (ko) * 2018-12-05 2024-02-15 삼성전자주식회사 오픈 채널 솔리드 스테이트 드라이브, 이를 포함하는 비휘발성 메모리 시스템 및 오픈 채널 솔리드 스테이트 드라이브의 파워 로스 프로텍션 방법
US11157202B2 (en) * 2018-12-28 2021-10-26 Micron Technology, Inc. Memory management utilizing buffer reset commands
KR20200120113A (ko) * 2019-04-11 2020-10-21 에스케이하이닉스 주식회사 메모리 시스템 및 그것의 동작방법
KR20210017264A (ko) 2019-08-07 2021-02-17 에스케이하이닉스 주식회사 메모리 시스템 및 그것의 동작방법
JP7458740B2 (ja) * 2019-10-21 2024-04-01 キオクシア株式会社 メモリシステム及び制御方法
US11237768B2 (en) * 2019-12-17 2022-02-01 SK Hynix Inc. Memory device changing memory area in which data is stored and operating method thereof
US11990200B2 (en) * 2021-01-28 2024-05-21 Micron Technology, Inc. Bit retiring to mitigate bit errors

Family Cites Families (27)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5418940A (en) * 1993-08-04 1995-05-23 International Business Machines Corporation Method and means for detecting partial page writes and avoiding initializing new pages on DASD in a transaction management system environment
US5825782A (en) * 1996-01-22 1998-10-20 Micron Technology, Inc. Non-volatile memory system including apparatus for testing memory elements by writing and verifying data patterns
US6070229A (en) * 1997-12-02 2000-05-30 Sandcraft, Inc. Cache memory cell with a pre-programmed state
JP3883687B2 (ja) 1998-02-16 2007-02-21 株式会社ルネサステクノロジ 半導体装置、メモリカード及びデータ処理システム
US6333871B1 (en) * 1998-02-16 2001-12-25 Hitachi, Ltd. Nonvolatile semiconductor memory including a controller for providing an improved reprogram operation
US6034882A (en) * 1998-11-16 2000-03-07 Matrix Semiconductor, Inc. Vertically stacked field programmable nonvolatile memory and method of fabrication
JP4031190B2 (ja) * 2000-09-29 2008-01-09 株式会社東芝 メモリカード、不揮発性メモリ、不揮発性メモリのデータ書き込み方法及びデータ書き込み装置
US6563743B2 (en) * 2000-11-27 2003-05-13 Hitachi, Ltd. Semiconductor device having dummy cells and semiconductor device having dummy cells for redundancy
US20020108054A1 (en) 2001-02-02 2002-08-08 Moore Christopher S. Solid-state memory device storing program code and methods for use therewith
JP4004811B2 (ja) * 2002-02-06 2007-11-07 株式会社東芝 不揮発性半導体記憶装置
WO2003085677A1 (fr) * 2002-04-05 2003-10-16 Renesas Technology Corp. Memoire non volatile
KR100519793B1 (ko) * 2003-01-06 2005-10-10 삼성전자주식회사 플래쉬 메모리 장치 및 이 장치의 프로그램 방법
US7526598B2 (en) * 2003-03-03 2009-04-28 Sandisk Il, Ltd. Efficient flash memory device driver
US7076598B2 (en) * 2003-09-09 2006-07-11 Solid State System Co., Ltd. Pipeline accessing method to a large block memory
KR100572328B1 (ko) * 2004-07-16 2006-04-18 삼성전자주식회사 배드 블록 관리부를 포함하는 플래시 메모리 시스템
JP2006309829A (ja) * 2005-04-27 2006-11-09 Nec Electronics Corp 不揮発性半導体記憶装置及びその制御方法
JP4961693B2 (ja) * 2005-07-29 2012-06-27 ソニー株式会社 コンピュータシステム
US7631162B2 (en) * 2005-10-27 2009-12-08 Sandisck Corporation Non-volatile memory with adaptive handling of data writes
US7644224B2 (en) * 2005-11-15 2010-01-05 Sandisk Il Ltd. Flash memory device and method
JP4761959B2 (ja) * 2005-12-26 2011-08-31 株式会社東芝 半導体集積回路装置
JP2007199905A (ja) 2006-01-25 2007-08-09 Toshiba Corp 半導体記憶装置の制御方法
JP2007310680A (ja) 2006-05-18 2007-11-29 Matsushita Electric Ind Co Ltd 不揮発性記憶装置およびそのデータ転送方法
US7457167B2 (en) * 2006-10-26 2008-11-25 Atmel Corporation Method for preventing over-erasing of unused column redundant memory cells in a flash memory having single-transistor memory cells
US7539062B2 (en) * 2006-12-20 2009-05-26 Micron Technology, Inc. Interleaved memory program and verify method, device and system
JP2008234723A (ja) 2007-03-19 2008-10-02 Toshiba Corp メモリシステム
KR100888823B1 (ko) * 2007-06-27 2009-03-17 삼성전자주식회사 비휘발성 메모리 시스템, 및 비휘발성 메모리 시스템의프로그램 방법
US8397024B2 (en) 2008-10-25 2013-03-12 Sandisk 3D Llc Page buffer program command and methods to reprogram pages without re-inputting data to a memory device

Also Published As

Publication number Publication date
WO2010047911A1 (en) 2010-04-29
JP2012507070A (ja) 2012-03-22
EP2351040B1 (en) 2013-08-14
US8397024B2 (en) 2013-03-12
KR101579555B1 (ko) 2015-12-22
EP2351040A1 (en) 2011-08-03
US20100106893A1 (en) 2010-04-29
USRE46154E1 (en) 2016-09-20
KR20110094289A (ko) 2011-08-23
TW201027557A (en) 2010-07-16
CN102203873A (zh) 2011-09-28
CN102203873B (zh) 2014-07-09

Similar Documents

Publication Publication Date Title
JP5547741B2 (ja) データをメモリ装置に再入力することなくページをプログラムするためのページバッファプログラムコマンド及び方法
JP3979486B2 (ja) 不揮発性記憶装置およびデータ格納方法
US7409473B2 (en) Off-chip data relocation
CN106598479B (zh) 闪速存储器的故障安全擦除的方法和装置
US20070214309A1 (en) Nonvolatile storage device and data writing method thereof
US7193923B2 (en) Semiconductor memory device and access method and memory control system for same
CN102096647A (zh) 多芯片存储器系统和相关的数据传送方法
US20130046918A1 (en) Method writing meta data with reduced frequency
US11113202B2 (en) Operating method forcing the second operation to fail using a scatter-gather buffer and memory system thereof
US8154925B2 (en) Semiconductor memory device and system capable of executing an interleave programming for a plurality of memory chips and a 2-plane programming at the respective memory chips
TW201415462A (zh) 半導體記憶體裝置
US9507710B2 (en) Command execution using existing address information
US10754552B2 (en) Data storage device and operating method thereof
US20080025095A1 (en) Flash memory device and program method thereof
CN110837339A (zh) 数据整并方法、存储器存储装置及存储器控制电路单元
US20200073701A1 (en) Data storage device, operation method thereof and storage system having the same
KR20120131487A (ko) 플래시 메모리 장치 및 그것의 프로그램 방법
CN112783428A (zh) 包括交换存储器的数据存储设备及其操作方法
KR20190069966A (ko) 비휘발성 메모리 장치, 이를 이용하는 메모리 시스템 및 그것의 동작 방법

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20120404

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20120907

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20130619

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20130723

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20131002

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20140515

R150 Certificate of patent or registration of utility model

Ref document number: 5547741

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313113

S531 Written request for registration of change of domicile

Free format text: JAPANESE INTERMEDIATE CODE: R313531

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

S533 Written request for registration of change of name

Free format text: JAPANESE INTERMEDIATE CODE: R313533

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

LAPS Cancellation because of no payment of annual fees