特許第6164712号(P6164712)IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ ウィンボンド エレクトロニクス コーポレーションの特許一覧

<>
  • 特許6164712-フラッシュメモリ 図000002
  • 特許6164712-フラッシュメモリ 図000003
  • 特許6164712-フラッシュメモリ 図000004
  • 特許6164712-フラッシュメモリ 図000005
  • 特許6164712-フラッシュメモリ 図000006
  • 特許6164712-フラッシュメモリ 図000007
  • 特許6164712-フラッシュメモリ 図000008
  • 特許6164712-フラッシュメモリ 図000009
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B1)
(11)【特許番号】6164712
(24)【登録日】2017年6月30日
(45)【発行日】2017年7月19日
(54)【発明の名称】フラッシュメモリ
(51)【国際特許分類】
   G11C 16/26 20060101AFI20170710BHJP
   G06F 12/06 20060101ALI20170710BHJP
【FI】
   G11C16/26 100
   G11C16/26 110
   G06F12/06 520F
【請求項の数】16
【全頁数】14
(21)【出願番号】特願2016-160378(P2016-160378)
(22)【出願日】2016年8月18日
【審査請求日】2016年8月18日
(73)【特許権者】
【識別番号】511062254
【氏名又は名称】ウィンボンド エレクトロニクス コーポレーション
(74)【代理人】
【識別番号】100098497
【弁理士】
【氏名又は名称】片寄 恭三
(72)【発明者】
【氏名】山内 一貴
(72)【発明者】
【氏名】水藤 克年
【審査官】 後藤 彰
(56)【参考文献】
【文献】 特開2013−235642(JP,A)
【文献】 特開2007−133683(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
G11C 16/26
G06F 12/06
(57)【特許請求の範囲】
【請求項1】
メモリセルアレイから読み出されたデータを保持する第1のデータ保持部と、第1のデータ保持部から転送されたデータを保持可能な第2のデータ保持部とを有するページバッファを含み、第2のデータ保持部に保持されたデータを外部クロックに応答して出力可能なNAND型フラッシュメモリの読出し方法であって、
電源投入直後またはリセット直後、メモリセルアレイの特定ページに記憶されたデータを第2のデータ保持部に保持し、かつユーザーによりプログラム使用できない領域に記憶されたデバイスに関するパラメータデータを第1のデータ保持部に保持し、
入力されるコマンドに応じて、パラメータデータまたは特定ページのデータの読出しを制御する、読出し方法。
【請求項2】
前記パラメータデータを読出すコマンドが入力された場合、第1のデータ保持部に保持されたパラメータデータを第2のデータ保持部に転送する、請求項1に記載された読出し方法。
【請求項3】
前記特定ページを読出すコマンドが入力された場合、第2のデータ保持部に保持された特定ページのデータを出力する、請求項1に記載の読出し方法。
【請求項4】
読出し方法はさらに、第2のデータ保持部に保持された特定ページのデータをECC処理することを含む、請求項1ないし3いずれか1つに記載の読出し方法。
【請求項5】
前記特定ページを読出すコマンドの後に前記パラメータデータを読出すコマンドが入力された場合、第2のデータ保持部に保持された特定ページのデータの出力後に第1のデータ保持部に保持されたパラメータデータを第2のデータ保持部に転送する、請求項1ないし4いずれか1つに記載の読出し方法。
【請求項6】
第2のデータ保持部は、第1のデータ保持領域と第2のデータ保持領域とを含み、第2のデータ保持領域に保持された特定ページのデータを出力する間に、第1のデータ保持領域に保持されたパラメータデータをECC処理する、請求項5に記載の読出し方法。
【請求項7】
メモリセルアレイから読み出されたデータを保持する第1のデータ保持部と、第1のデータ保持部から転送されたデータを保持可能な第2のデータ保持部とを有するページバッファを含み、第2のデータ保持部に保持されたデータを外部クロックに応答して出力可能なNAND型フラッシュメモリの読出し方法であって、
電源投入直後またはリセット直後、ユーザーによりプログラム使用できない領域に記憶されたパラメータデータを第2のデータ保持部に保持し、かつメモリアレイの特定ページに記憶されたデータを第1のデータ保持部に保持し、特定ページのデータの読出し期間中に、前記パラメータデータをECC処理し、
入力されるコマンドに応じて、パラメータデータまたは特定ページのデータの読出しを制御する、読出し方法。
【請求項8】
パラメータデータを読出すコマンドが入力された場合、第2のデータ保持部に保持されたECC処理済みのパラメータデータを出力する、請求項7に記載の読出し方法。
【請求項9】
特定ページを読出すコマンドが入力された場合、第1のデータ保持部に保持されたデータを第2のデータ保持部に転送する、請求項7に記載された読出し方法。
【請求項10】
メモリセルアレイと、
メモリセルアレイから読み出されたデータを保持する第1のデータ保持部と、第1のデータ保持部から転送されたデータを保持可能な第2のデータ保持部とを有するページバッファと、
第2のデータ保持部に保持されたデータを外部に読出すための制御を行う読出し制御手段とを有し、
前記読出し制御手段は、電源投入直後またはリセット直後に、メモリセルアレイの特定ページに記憶されたデータを第2のデータ保持部に保持させ、かつユーザーによりプログラム使用できない領域に記憶されたパラメータデータを第1のデータ保持部に保持させ、入力されるコマンドに応じて、パラメータデータまたは特定ページのデータの読出しを制御する、NAND型フラッシュメモリ。
【請求項11】
前記読出し制御手段は、パラメータデータを読出すコマンドが入力された場合、第1のデータ保持部に保持されたパラメータデータを第2のデータ保持部に転送する、請求項10に記載されたフラッシュメモリ。
【請求項12】
前記特定ページの読出しコマンドが入力された場合、第2のデータ保持部に保持されたデータを出力する、請求項10に記載のフラッシュメモリ。
【請求項13】
メモリセルアレイと、
メモリセルアレイから読み出されたデータを保持する第1のデータ保持部と、第1のデータ保持部から転送されたデータを保持する第2のデータ保持部とを有するページバッファと、
第2のデータ保持部に保持されたデータをECC処理可能なECC処理手段と、
第2のデータ保持部に保持されたデータを外部に読出すための制御を行う読出し制御手段とを有し、
前記読出し制御手段は、電源投入直後またはリセット直後に、ユーザーによりプログラム使用できない領域に記憶されたパラメータデータを第2のデータ保持部に保持させ、かつメモリセルアレイの特定ページに記憶されたデータを第1のデータ保持部に保持する間に、前記パラメータデータをECC処理させ、入力されるコマンドに応じて、パラメータデータまたは特定ページのデータの読出しを制御する、NAND型フラッシュメモリ
【請求項14】
前記読出し制御手段は、パラメータデータを読出すコマンドが入力された場合、第2のデータ保持部に保持されたECC済みのパラメータデータを出力する、請求項13に記載のフラッシュメモリ。
【請求項15】
特定ページを読出すコマンドが入力された場合、第1のデータ保持部に保持されたデータを第2のデータ保持部に転送する、請求項13に記載されたフラッシュメモリ。
【請求項16】
第2のデータ保持部は、第1のデータ格納部と第2のデータ格納部とを含み、第1のデータ格納部のデータをECC処理する間に第2のデータ格納部のデータを出力可能であり、第2のデータ格納部のデータをECC処理する間に第1のデータ格納部のデータを出力可能であり、第2のデータ格納部にパラメータデータが保持され、第1のデータ格納部に特定ページのデータが保持される、請求項13ないし15いずれか1つに記載のフラッシュメモリ。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、NAND型フラッシュメモリに関し、特に、SFDP(Serial Flash Discoverable Parameter)読出しに関する。
【背景技術】
【0002】
NAND型フラッシュメモリでは、集積度が年々増加し、不良または欠陥のない記憶素子を製造することは難しい。このため、メモリチップ上には、製造工程中に発生する記憶素子の物理的な欠陥を見かけ上救済するための冗長スキームが利用される。例えば、ある冗長スキームでは、冗長メモリを設けることで、物理的な欠陥のある記憶素子を救済している。また、冗長メモリによる物理的な救済以外に、ソフトエラー対策として誤り検出訂正回路(ECC:Error Checking Correction)がある。
【0003】
特許文献1のNAND型フラッシュメモリは、キャッシュレジスタを2つの部分から構成し、一方のキャッシュレジスタからデータを出力すると同時に、他方のキャッシュレジスタのデータの誤り訂正符号演算を行うことで、誤り訂正符号演算の遅延を出力から取り除き、高速の読出しを可能にしている。
【先行技術文献】
【特許文献】
【0004】
【特許文献1】特開2013−235642号公報
【発明の概要】
【発明が解決しようとする課題】
【0005】
SPI(Serial Peripheral Interface)機能を搭載するNOR型フラッシュメモリでは、ユーザーがプログラムに利用することができないアドレス空間に、デバイスID、機能、コンフィギュレーション情報等のパラメータ(以下、便宜上、SFDPデータまたはパラメータデータという)を格納し、外部からSFDPデータの読出しが可能である。NOR型フラッシュメモリは、その構造上、読出し速度が速く、SFDP読出しは、待ち時間なし(”No Latency”)または非常に短いアクセス遅延時間でSFDPデータをシリアルクロックSCKに同期して出力させることができる。
【0006】
一方、NAND型フラッシュメモリにもSPI機能を搭載するものがあり、このようなNAND型フラッシュメモリには、NOR型フラッシュメモリのSFDP読出しとの互換性が求められる。しかしながら、NAND型フラッシュメモリは、NOR型フラッシュメモリと異なり、メモリアレイからのデータ読出し速度が遅いため、待ち時間なしでSFDPデータを出力することは難しい。
【0007】
本発明は、このような課題を解決するものであり、デバイスに関するパラメータデータを遅延時間なしもしくはごく短い遅延時間で読み出しが可能なNAND型フラッシュメモリとその読出し方法を提供することを目的とする。
【課題を解決するための手段】
【0008】
本発明に係るNAND型フラッシュメモリの読出し方法は、メモリセルアレイから読み出されたデータを保持する第1のデータ保持部と、第1のデータ保持部から転送されたデータを保持可能な第2のデータ保持部とを有するページバッファを含み、第2のデータ保持部に保持されたデータを外部クロックに応答して出力可能なフラッシュメモリにおいて、電源投入直後またはリセット直後、メモリセルアレイの特定ページに記憶されたデータを第2のデータ保持部に保持し、かつユーザーによりプログラム使用できない領域に記憶されたデバイスに関するパラメータデータを第1のデータ保持部に保持し、入力されるコマンドに応じて、パラメータデータまたは特定ページのデータの読出しを制御する。
【0009】
好ましくは前記パラメータデータを読出すコマンドが入力された場合、第1のデータ保持部に保持されたパラメータデータを第2のデータ保持部に転送する。好ましくは前記特定ページを読出すコマンドが入力された場合、第2のデータ保持部に保持された特定ページのデータを出力する。
【0010】
本発明に係るNAND型フラッシュメモリの読出し方法は、メモリセルアレイから読み出されたデータを保持する第1のデータ保持部と、第1のデータ保持部から転送されたデータを保持可能な第2のデータ保持部とを有するページバッファを含み、第2のデータ保持部に保持されたデータを外部クロックに応答して出力可能なフラッシュメモリにおいて、電源投入直後またはリセット直後、ユーザーによりプログラム使用できない領域に記憶されたパラメータデータを第2のデータ保持部に保持し、かつメモリアレイの特定ページに記憶されたデータを第1のデータ保持部に保持し、特定ページのデータの読出し期間中に、前記パラメータデータをECC処理し、入力されるコマンドに応じて、パラメータデータまたは特定ページのデータの読出しを制御する。
【0011】
好ましくはパラメータデータを読出すコマンドが入力された場合、第2のデータ保持部に保持されたECC処理済みのパラメータデータを出力する。好ましくは特定ページを読出すコマンドが入力された場合、第1のデータ保持部に保持されたデータを第2のデータ保持部に転送する。
【0012】
本発明に係るNAND型フラッシュメモリは、メモリセルアレイと、メモリセルアレイから読み出されたデータを保持する第1のデータ保持部と、第1のデータ保持部から転送されたデータを保持可能な第2のデータ保持部とを有するページバッファと、第2のデータ保持部に保持されたデータを外部に読出すための制御を行う読出し制御手段とを有し、前記読出し制御手段は、電源投入直後またはリセット直後に、メモリセルアレイの特定ページに記憶されたデータを第2のデータ保持部に保持させ、かつユーザーによりプログラム使用できない領域に記憶されたパラメータデータを第1のデータ保持部に保持させ、入力されるコマンドに応じて、パラメータデータまたは特定ページのデータの読出しを制御する。
【0013】
本発明に係るNAND型フラッシュメモリは、メモリセルアレイと、メモリセルアレイから読み出されたデータを保持する第1のデータ保持部と、第1のデータ保持部から転送されたデータを保持する第2のデータ保持部とを有するページバッファと、第2のデータ保持部に保持されたデータをECC処理可能なECC処理手段と、第2のデータ保持部に保持されたデータを外部に読出すための制御を行う読出し制御手段とを有し、 前記読出し制御手段は、電源投入直後またはリセット直後に、ユーザーによりプログラム使用できない領域に記憶されたパラメータデータを第2のデータ保持部に保持させ、かつメモリセルアレイの特定ページに記憶されたデータを第1のデータ保持部に保持する間に、前記パラメータデータをECC処理させ、入力されるコマンドに応じて、パラメータデータまたは特定ページのデータの読出しを制御する。
【発明の効果】
【0014】
本発明によれば、電源投入後またはリセット後の動作開始までの期間を利用してメモリセルアレイからデバイスに関するパラメータデータをページバッファに保持するようにしたので、パラメータデータを遅延時間なしでまたは非常に短時間で読出すことができる。また、NOR型フラッシュメモリのパラメータデータの読出し機能に互換性を持たせることができる。
【図面の簡単な説明】
【0015】
図1】本発明の実施例に係るNAND型フラッシュメモリの構成を示す図である。
図2】メモリセルアレイのブロック内のNANDストリングの構成を示す回路図である。
図3】NAND型フラシュメモリの動作時に印加されるバイアス電圧を示すテーブルである。
図4】ページバッファ/センス回路の第1のラッチ回路および第2のラッチ回路の動作を説明する図である。
図5】本発明の第1の実施例に係るSFDP読出し動作のフローである。
図6】本発明の第1の実施例における第1のラッチ回路および第2のラッチ回路に保持されるデータの遷移を示す図である。
図7】本発明の第2の実施例に係るSFDP読出し動作のフローである。
図8】本発明の第2の実施例における第1のラッチ回路および第2のラッチ回路に保持されるデータの遷移を示す図である。
【発明を実施するための形態】
【0016】
以下、本発明の実施の形態について図面を参照して詳細に説明する。なお、図面は、説明を分かり易くするために各部を強調して示してあり、実際のデバイスのスケールとは同一ではないことに留意すべきである。
【実施例】
【0017】
図1は、本発明の実施例に係るNAND型フラッシュメモリの構成を示す図である。本実施例のフラッシュメモリ100は、複数のメモリセルが行列状に配列されたメモリアレイ110と、外部入出力端子I/Oに接続され入出力データを保持する入出力バッファ120と、メモリアレイ110にプログラムするデータやそこから読み出されたデータの誤り検出・訂正を行うECC回路130と、入出力バッファ120からのアドレスデータを受け取るアドレスレジスタ140と、外部ホスト装置からのコマンドデータや制御信号に基づき各部を制御するコントローラ150と、アドレスレジスタ140から行アドレス情報Axを受け取り、行アドレス情報Axをデコードし、デコード結果に基づきブロックの選択やワード線の選択等を行うワード線選択回路160と、ワード線選択回路160によって選択されたページから読み出されたデータを保持したり、選択されたページへプログラムするデータを保持するページバッファ/センス回路170と、アドレスレジスタ140から列アドレス情報Ayを受け取り、列アドレス情報Ayをデコードし、当該デコード結果に基づきページバッファ/センス回路170内の列の選択等を行う列選択回路180と、データの読出し、プログラムおよび消去等のために必要な種々の電圧(書込み電圧Vpgm、パス電圧Vpass、読出しパス電圧Vread、消去電圧Versなど)を生成する内部電圧発生回路190とを含んで構成される。
【0018】
メモリアレイ110は、列方向に配置されたm個のメモリブロックBLK(0)、BLK(1)、・・・、BLK(m-1)を有する。1つのメモリブロックには、複数のメモリセルを直列に接続したNANDストリングが複数形成される。NANDストリングは、基板表面に形成された2次元アレイ状であってもよいし、基板表面上に形成された半導体層を利用する3次元アレイ状であってもよい。また、メモリセルは、1ビット(2値データ)を記憶するSLCタイプでもよいし、多ビットを記憶するMLCタイプであってもよい。
【0019】
1つのブロックには、図2に示すように、複数のメモリセルを直列に接続したNANDストリングNUが複数形成される。図の例では、1つのブロック内にn+1個のストリングユニットNUが行方向に配列されている。ストリングユニットNUは、直列に接続された複数のメモリセル(図の例では64個)と、一方の端部であるメモリセルのドレイン側に接続されたビット線側選択トランジスタと、メモリセルのソース側に接続されたソース線側選択トランジスタとを含む。ビット線側選択トランジスタのドレインは、対応する1つのビット線GBLに接続され、ソース線側選択トランジスタのソースは、共通のソース線SLに接続される。
【0020】
図3は、フラッシュメモリの各動作時に印加されるバイアス電圧の一例を示したテーブルである。読出し動作では、ビット線に或る正の電圧を印加し、選択されたワード線に或る電圧(例えば0V)を印加し、非選択ワード線にパス電圧Vpass(例えば4.5V)を印加し、選択ゲート線SGD、SGSに正の電圧(例えば4.5V)を印加し、NANDストリングのビット線側選択トランジスタ、ソース線側選択トランジスタをオンし、共通ソース線に0Vを印加する。プログラム(書込み)動作では、選択されたワード線に高電圧のプログラム電圧Vpgm(15〜20V)を印加し、非選択のワード線に中間電位(例えば10V)を印加し、ビット線側選択トランジスタをオンさせ、ソース線側選択トランジスタをオフさせ、「0」または「1」のデータに応じた電位をビット線に供給する。消去動作では、ブロック内の選択されたワード線に0Vを印加し、Pウエルに高電圧(例えば20V)を印加し、フローティングゲートの電子を基板に引き抜くことで、ブロック単位でデータを消去する。
【0021】
ECC回路130は、コマンドまたは出荷時の設定等によりイネーブルまたはディスエーブルにすることが可能である。オンチップECC機能がイネーブルされた場合、ECC回路130は、プログラム動作時に入出力バッファ120を介して入力されるプログラムデータがページバッファ/センス回路170にロードされると、ページバッファ/センス回路170から転送されたデータを演算し、誤り訂正符号を生成する。ECCの演算は、例えば、パリティチェック、ハミングコードやリード・ソロモンなどの公知の手法によって行われ、入力されたkビットまたはkバイトのデータをp=k+qに変換する。「q」は、データの誤り検出訂正に必要な誤り訂正符号またはパリティビットである。ECC回路130は、生成した誤り訂正符号をページバッファ/センス回路170のスペア領域に格納する。こうして、ページバッファ/センス回路170にセットされたデータと誤り訂正符号がメモリアレイ110の選択ページにプログラムされる。
【0022】
一方、読出し動作時、メモリアレイ110の選択ページから読み出されたデータがページバッファ/センス回路170に保持されると、ECC回路130は、ページバッファ/センス回路170から転送されたデータおよび誤り訂正符号に基づき読出しデータの誤りの検出を行い、誤りが検出された場合には訂正したデータをページバッファ/センス回路170にセットする。そして、ページバッファ/センス回路170に保持されたデータが入出力バッファ120を介して外部に出力される。
【0023】
次に、ページバッファ/センス回路170に含まれるラッチ回路の詳細について説明する。図4に示すように、ページバッファ/センス回路170は、メモリセルアレイから読み出されたデータを保持したり、メモリセルアレイにプログラムするデータを保持する第1のラッチ回路L1と、第1のラッチ回路L1と双方向のデータ転送が可能である第2のラッチ回路L2とを有する。第1のラッチ回路L1は、1ページ分のデータ(例えば、2KB)を保持することが可能であり、第1のラッチ回路L1は、第1のキャッシュ部分C0(例えば、1KB)と第2のキャッシュ部分C1(例えば、1KB)とを備える。
【0024】
第2のラッチ回路L2も同様に、1ページ分のデータを保持することが可能であり、第1のキャッシュ部分C0と第2のキャッシュ部分C1とを備える。第1のラッチ回路L1と第2のラッチ回路L2との間には、図示しない転送回路が設けられ、当該転送回路を介して第1のラッチ回路L1と第2のラッチ回路L2との間で双方向のデータ転送が可能になる。第1のラッチ回路L1および第2のラッチ回路L2のそれぞれの第1のキャッシュ部分C0と第2のキャッシュ部分C1は、それぞれ独立してデータの保持やデータの転送を行うことができる。例えば、第1のラッチ回路L1の第1のキャッシュ部分C0が保持するデータを第2のラッチ回路L2の第1のキャッシュ部分C0に転送したり、第1のラッチ回路L1の第2のキャッシュ部分C1が保持するデータを第2のラッチ回路L2の第2のキャッシュ部分C1に転送することができる。
【0025】
また、第2のラッチ回路L2、ECC回路130、および入出力バッファ120との間には、双方向のデータ転送を行う第1の転送回路132と第2の転送回路134とが設けられる。第1の転送回路132は、第2のラッチ回路L2の第1のキャッシュ部分C0とECC回路130および入出力バッファ120との間でのデータ転送を可能にし、第2の転送回路134は、第2のラッチ回路L2の第2のキャッシュ部分C1とECC回路130および入出力バッファ120との間でのデータ転送を可能にする。
【0026】
第1の転送回路132が第1のキャッシュ部分C0のデータをECC回路130に転送するとき、第2の転送回路134は、第2のキャッシュ部分C1のデータを入出力バッファ120に転送可能であり、これとは反対に、第1の転送回路132が第1のキャッシュ部分C0のデータを入出力バッファ120に転送するとき、第2の転送回路134が第2のキャッシュ部分C1のデータをECC回路130に転送可能である。すなわち、第2のラッチ回路L2の半ページのデータを出力する間に残りの半ページのデータをECC処理することで、ECC済みのページデータを連続的に出力させることができる。
【0027】
フラッシュメモリ100のシリアルインターフェース機能として、入出力バッファ120は、外部のシリアルクロック信号SCKに同期してシリアル入力およびシリアル出力することができる。シリアル入力またはシリアル出力されるビット幅は、×1、×2、×4、×8など任意である。
【0028】
次に、本実施例によるSFDPデータの読出しについて説明する。本実施例のフラッシュメモリ100は、SFDPの読出しコマンドに対応しており、外部ホスト装置からSFDPの読出しコマンドが入力されたとき、SFDPの読出しを行う。SFDPは、デバイスID、機能およびコンフィギュレーション等のデバイスに関するパラメータデータであり、当該パラメータデータは、ユーザーによってプログラムに利用されないアドレス空間に記憶される。
【0029】
通常、このようなSFDPデータは、フラッシュメモリ100の電源投入直後、またはフラッシュメモリ100をリセットしたときに外部ホスト装置によって利用される。言い換えれば、フラッシュメモリ100の動作中においてSFDPデータの読出しが行われることは一般的ではない。そこで、本実施例では、フラッシュメモリの電源投入直後、またはリセット直後に、SFDPデータの読出しを可能にする。電源投入直後、またはリセット直後、フラッシュメモリが動作を開始するまでの期間内に、SFDPデータを格納するアドレス空間からSFDPデータを自動的に読出し、これをページバッファ170にセットしておけば、フラッシュメモリの動作直後からレンテンシィがゼロまたは非常に短い遅延時間で、SFDPデータを読み出すことができる。これにより、NOR型フラッシュメモリにおいて要求されるSFDPデータの読出し時間に対して互換性を持たせることができる。
【0030】
しかしながら、NAND型フラッシュメモリでは、電源投入直後またはリセット直後、メモリセルアレイ110の特定ブロックの特定ページのデータ(例えば、ブロック0/ページ0のデータ)を即座に出力させなければならない仕様がある。この仕様が実行される場合には、ブロック0/ページ0のデータがページバッファ/センス回路170の第2のラッチ回路L2にセットされるため、SFDPデータを第2のラッチ回路L2にセットすることができない。以下、このような電源投入直後またはリセット直後に特定ブロックの特定ページから読み出されるデータを、便利上、「初期データ」という。
【0031】
そこで第1の実施例では、電源投入直後またはリセット直後に、初期データとSFDPデータとが競合しないように調整を図る。すなわち、第2のラッチ回路L2に初期データをセットし、第1のラッチ回路L1にSFDPデータをセットし、次に入力されるコマンドに応じて、SFDPデータまたは初期データの読出しを制御する。
【0032】
図5に、第1の実施例による読出し動作のフローを示す。また、図6に、第1のラッチ回路L1と第2のラッチ回路L2が保持するデータの遷移を示す。先ず、図6(A)に第1のラッチ回路L1と第2のラッチ回路L2の初期状態を示す。図の例では、1ページのデータサイズを2KBとし、第1のラッチ回路L1および第2のラッチ回路L2がそれぞれ2KBのデータを保持できるものとし、第1のキャッシュ部分C0および第2のキャッシュ部分C1は、それぞれ1/2ページ、すなわち1KBのデータを保持できるものとする。また、SFDPデータは、1/2ページ以下、つまり1KB以下であり、例えば、256Bである。
【0033】
コントローラ150は、フラッシュメモリ100に電源が投入されたとき、あるいはリセットコマンドが実行されたとき(S100)、SFDPデータまたは初期データを読出すシーケンスを実行する。電源投入直後またはリセット直後に、コントローラ150は、例えば、メモリセルアレイ110のブロック0/ページ0から初期データP0を読み出させる。読出された初期データP0は、第1のラッチ回路L1の第1および第2のキャッシュ部分C0、C1に保持される。この様子を図6(B)に示す。
【0034】
特定ページの初期データを読み出すと、次に、コントローラ150は、第1のラッチ回路L1の初期データP0を第2のラッチ回路L2に転送させ、転送が終了するや否や、SFDP空間のページからSFDPデータを読み出させる。読み出されたSFDPデータは、第1のラッチ回路L1の第1のキャッシュ部分C0に保持される(S120)。もし、初期データP0のECC処理が望まれる場合には、SFDPデータがメモリセルアレイから読み出される期間中に、第2のラッチ回路L2の第1のキャッシュ部分C0の初期データP0がECC処理され、それが終わると、第2のキャッシュ部分C1の初期データP0がECC処理される(この場合、メモリセルアレイからの読出し期間>1ページのデータのECC処理時間である)。この様子を図6(C)に示す。
【0035】
次に、コントローラ150は、入力されるコマンドを判定する(S130)。もし、初期データの読出しコマンドが入力されたならば、コントローラ150は、第2のラッチ回路L2の第1のキャッシュ部分C0の初期データP0を入出力バッファ120へ転送する。転送された初期データP0は、外部のシリアルクロックSCKに同期して外部に出力される(S140)。次に、第2のラッチ回路L2の第2のキャッシュ部分C1の初期データP0がシリアルクロックSCKに同期してシリアル出力される。この様子を図6(D)に示す。なお、外部ホスト装置から先頭の読出し列アドレスが入力された場合には、その列アドレスから初期データがシリアル出力される。
【0036】
一方、SFDP読出しコマンドが入力された場合、コントローラ150は、当該コマンドに応答して転送パルスを生成し、当該転送パルスにより第1のラッチ回路L1の第1のキャッシュ部分C0に保持されたSFDPデータを第2のラッチ回路L2の第1のキャッシュ部分C0に転送する(S150)。そして、第2のラッチ回路L2の第1のキャッシュ部分C0に保持されたSFDPデータが入出力バッファ120へ転送され、外部のシリアルクロックSCKに同期してシリアル出力される。この様子を図6(E)に示す。
【0037】
このように本実施例によれば、電源投入直後またはリセット直後の動作開始期間を利用して、メモリセルアレイからSFDPデータおよび特定ページの初期データをページバッファ170にセットするようにしたので、動作開始直後から入力コマンドに応じてSFDPデータまたはページ0のデータを事実上遅延時間なし(”No Latency”)で読み出すことができる。
【0038】
なお、上記の読出し動作において、初期データの読出しコマンドが入力された後に、SFDPの読出しコマンドが入力された場合、第2のラッチ回路L2の第2のキャッシュ部分C1の残り半分の初期データP0が出力されている期間中に、第1のラッチ回路L1の第1のキャッシュ部分C0のSFDPデータが第2のラッチ回路L2の第1のキャッシュ部分C0に転送され(初期データに上書きされ)、第2のキャッシュ部分C1の初期データP0の出力後に、第1のキャッシュ部分C0のSFDPデータを連続的に出力することができる。この様子を図6(F)に示す。この場合も、メモリセルアレイからSFDPデータを読み出す場合と比較して、非常に短い遅延時間でSFDPデータを出力させることができる。また、第2のキャッシュ部分C1から初期データP0の出力中に、SFDPデータのECC処理を行うことも可能である(この場合、第2のキャッシュ部分C1の初期データP0の出力期間>第1のキャッシュ部分C0のECC演算時間である)。
【0039】
次に、本発明の第2の実施例について説明する。第1の実施例では、SFDPデータを遅延時間なしで読み出す場合、SFDPデータをECC処理することができないが、第2の実施例では、ECC処理されたSFDPデータを遅延時間なしで読み出すことを可能にする。図7に、第2の実施例の読出し動作フローを示し、図8に、第1および第2のラッチ回路が保持するデータの遷移を示す。
【0040】
コントローラ150は、電源投入直後またはリセット直後を検出する(S200)。コントローラ150は、電源投入直後またはリセット直後の場合、メモリセリアレイ110からSFDPデータを読み出させる。読み出されたSFDPデータは、第1のラッチ回路L1の第2のキャッシュ部分C1に保持される(S210)。この様子を図8(A)に示す。
【0041】
SFDPの読出しを行った後、コントローラ150は、第1のラッチ回路L1の第2のキャッシュ部分C1のSFDPデータを第2のラッチ回路L2の第2のキャッシュ部分C1に転送する。転送されたSFDPデータは、ECC回路130によってECC処理される。SFDPデータの転送が終了するや否や、コントローラ150は、メモリセルアレイ110のブロック0/ページ0から初期データP0を読み出させる。読み出された初期データP0は、第1のラッチ回路L1に保持される(S220)。SFDPデータのECC処理は、初期データP0の読出し期間中に行われる。この様子を図8(B)に示す。
【0042】
次に、第1のラッチ回路L1の第1のキャッシュ部分C0の初期データP0が第2のラッチ回路L2の第1のキャッシュ部分C1に転送される(S230)。その結果、図8(C)に示すように、第2のラッチ回路L2の第1のキャッシュ部分C0には初期データP0が保持され、第2のキャッシュ部分C1には、ECC処理されたSFDPデータが保持される。なお、第2のラッチ回路L2の第1のキャッシュ部分C0の初期データP0を必要に応じてECC処理するようにしてもよい。
【0043】
次に、コントローラ150は、入力されるコマンドを判定する(S240)。もし、SFDPの読出しコマンドが入力された場合、第2のラッチ回路L2の第2のキャッシュ部分C1に保持されたECC済みのSFDPデータが外部シリアルクロックSCKに応答してシリアル出力される。この様子を図8(D)に示す。また、必要であれば、SFDPデータが出力されている間に、第2のラッチ回路L2の第1のキャッシュ部分C0の初期データP0がECC処理されるようにしてもよい。
【0044】
一方、初期データの読出しコマンドが入力された場合、コントローラ150は、第2のラッチ回路L2の第1のキャッシュ部分C0に保持された初期データP0を出力させる。また、読出しコマンドに応答して生成された転送パルスにより第1のラッチ回路L1の第2のキャッシュ部分C1に保持された残り半分の初期データP0を第2のラッチ回路L2の第2のキャッシュ部分C1に転送し、第1のキャッシュ部分C0の初期データP0の出力中に、第2のキャッシュ部分C1の初期データP0のECC処理を行う(S260)。第1のキャッシュ部分C0の初期データP0の出力後、第2のキャッシュ部分C1の初期データP0が連続的に出力される。この様子を図8(E)に示す。
【0045】
初期データの読出しコマンドの後に、SFDPの読出しコマンドが入力された場合、コントローラ150は、初期データP0の出力中に、メモリセルアレイ110からSFDPデータを読出し、これを第1のラッチ回路L1の第1のキャッシュ部分C0に保持させる。この様子を図8(F)に示す。次に、第2のラッチ回路L2の第2のキャッシュ部分C1の初期データP0を出力している間に、第1のラッチ回路L1の第1のキャッシュ部分C0のSFDPデータが第2のラッチ回路L2の第1のキャッシュ部分C0に転送され、かつECC処理される。次に、第2のキャッシュ部分C1の初期データP0の出力後に、ECC処理されたSFDPデータが出力される。
【0046】
このように第2の実施例によれば、電源投入直後またはリセット直後の動作開始期間を利用してメモリセルアレイからのSFDPデータを第2のラッチ回路L2にセットし、ECC処理をするようにしたので、動作開始直後にSFDP読出しコマンドが入力された場合に、ECC済みのSFDPデータを遅延時間ゼロで読み出すことができる。
【0047】
以上のように本発明の好ましい実施の形態について詳述したが、本発明は、特定の実施形態に限定されるものではなく、特許請求の範囲に記載された本発明の要旨の範囲内において、種々の変形・変更が可能である。例えば、メモリセルが2値データを記憶するフラッシュメモリ、あるいはメモリセルが多値データを記憶するフラッシュメモリのいずれにも本発明を適用することが可能である。さらに本発明は、メモリアレイのNANDストリングが基板表面に形成される2次元タイプのフラッシュメモリ、あるいはNANDストリングが基板表面上の導電層(例えば、ポリシリコン層)に形成される3次元タイプのフラッシュメモリのいずれにも適用することが可能である。
【符号の説明】
【0048】
100:フラッシュメモリ 110:入出力バッファ
120:アドレスレジスタ 130:ECC回路
140:アドレスレジスタ 150:コントローラ
160:ワード線選択回路 170:ページバッファ/センス回路
180:列選択回路 190:内部電圧発生回路
【要約】
【課題】 SFDPデータの高速読み出しが可能なNAND型フラッシュメモリを提供する。
【解決手段】 フラッシュメモリは、メモリセルアレイと、メモリセルアレイから読み出されたデータを保持する第1のラッチ回路L1と、第1のラッチ回路L1から転送されたデータを保持可能な第2のラッチ回路L2とを含むページバッファ/センス回路170と、コントローラ150とを含む。コントローラ150は、電源投入直後またはリセット直後に、メモリセルアレイのブロック0/ページ0のデータを第2のラッチ回路L2に保持させ、SFDPデータを第1のラッチ回路L1に保持させる。そして、入力されるコマンドに応じて、SFDPデータまたはブロック0/ページ0のデータをシリアル出力する。
【選択図】 図6
図1
図2
図3
図4
図5
図6
図7
図8