JP2021163352A - 半導体記憶装置および読出し方法 - Google Patents

半導体記憶装置および読出し方法 Download PDF

Info

Publication number
JP2021163352A
JP2021163352A JP2020066573A JP2020066573A JP2021163352A JP 2021163352 A JP2021163352 A JP 2021163352A JP 2020066573 A JP2020066573 A JP 2020066573A JP 2020066573 A JP2020066573 A JP 2020066573A JP 2021163352 A JP2021163352 A JP 2021163352A
Authority
JP
Japan
Prior art keywords
data
error
page
output
circuit
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
JP2020066573A
Other languages
English (en)
Other versions
JP7018089B2 (ja
Inventor
真言 妹尾
Shingen Senoo
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 JP2020066573A priority Critical patent/JP7018089B2/ja
Priority to TW110103826A priority patent/TWI792168B/zh
Priority to CN202110201670.XA priority patent/CN113496755B/zh
Priority to KR1020210027392A priority patent/KR102560902B1/ko
Priority to US17/191,670 priority patent/US11487614B2/en
Publication of JP2021163352A publication Critical patent/JP2021163352A/ja
Application granted granted Critical
Publication of JP7018089B2 publication Critical patent/JP7018089B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/14Handling requests for interconnection or transfer
    • G06F13/16Handling requests for interconnection or transfer for access to memory bus
    • G06F13/1668Details of memory controller
    • 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/26Sensing or reading circuits; Data output circuits
    • 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/34Determination of programming status, e.g. threshold voltage, overprogramming or underprogramming, retention
    • G11C16/3436Arrangements for verifying correct programming or erasure
    • 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/08Error detection or correction by redundancy in data representation, e.g. by using checking codes
    • G06F11/10Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's
    • G06F11/1008Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's in individual solid state devices
    • G06F11/1048Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's in individual solid state devices using arrangements adapted for a specific error detection or correction feature
    • 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/08Error detection or correction by redundancy in data representation, e.g. by using checking codes
    • G06F11/10Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's
    • G06F11/1008Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's in individual solid state devices
    • G06F11/1068Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's in individual solid state devices in sector programmable memories, e.g. flash disk
    • 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/24Bit-line control circuits
    • 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/32Timing circuits
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C29/00Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
    • G11C29/04Detection or location of defective memory elements, e.g. cell constructio details, timing of test signals
    • G11C29/08Functional testing, e.g. testing during refresh, power-on self testing [POST] or distributed testing
    • G11C29/12Built-in arrangements for testing, e.g. built-in self testing [BIST] or interconnection details
    • G11C29/38Response verification devices
    • G11C29/42Response verification devices using error correcting codes [ECC] or parity check
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C7/00Arrangements for writing information into, or reading information out from, a digital store
    • G11C7/06Sense amplifiers; Associated circuits, e.g. timing or triggering circuits
    • G11C7/065Differential amplifiers of latching type

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Microelectronics & Electronic Packaging (AREA)
  • Quality & Reliability (AREA)
  • Techniques For Improving Reliability Of Storages (AREA)
  • Read Only Memory (AREA)
  • Detection And Correction Of Errors (AREA)
  • Measurement Of Radiation (AREA)
  • Transforming Light Signals Into Electric Signals (AREA)

Abstract

【課題】 読出し動作時のECCの処理時間の短縮を図ることができる半導体記憶装置を提供する。
【解決手段】 本発明のフラッシュメモリ100は、メモリセルアレイ110と、
メモリセルアレイ110の選択ページから読み出されたデータを保持するページバッファ/センス回路170と、ページバッファ/センス回路170からデータを受け取り、当該データのエラー位置情報を保持するエラーレジスタ136と、列アドレスに基づきページバッファ/センス回路170からデータを選択し、選択したデータをデータバス200に出力する出力手段と、エラー位置情報に基づきデータバス200のデータを訂正するエラー訂正部138とを有する。
【選択図】 図5

Description

本発明は、NAND型フラッシュメモリ等の半導体記憶装置に関し、特に、読出し時のエラー検出・訂正に関する。
外部クロック信号に同期してデータを入出力するシリアルペリフェラルインターフェース(SPI)を搭載したNAND型のフラッシュメモリでは、ページを連続的に読み出す機能を備えるものがある。ページの連続読出しでは、メモリセルアレイの選択ページから読出したデータをページバッファ/センス回路の一方のラッチに保持する間に、他方のラッチ回路に保持された前ページの読出しデータの出力を可能にしている(例えば、特許文献1、2、3等)。
特許5323170号公報 特許5667143号公報 米国特許出願US2014/0104947A1
NAND型フラッシュメモリでは、データのプログラムや消去が繰り返されることで、トンネル絶縁膜の劣化等により電荷保持特性が悪化したり、トンネル絶縁膜にトラップされた電荷によりしきい値変動が生じ、ビットエラーを引き起こす。このようなビットエラー対策として、エラー検出訂正回路(ECC回路)が搭載されている。
図1に、従来のオンチップECC機能を搭載したNAND型フラッシュメモリの概略構成を示す。フラッシュメモリ10は、メモリセルアレイ20と、ページバッファ/センス回路30と、エラー検出訂正回路(以下、ECC回路)40と、入出力回路50とを含む。ECC回路40は、転送回路42、ECCコア44、エラーレジスタ46および書込み回路48を含む。
読出し動作では、メモリセルアレイ20の選択ページから読み出されたデータがページバッファ/センス回路30に保持され、ページバッファ/センス回路30に保持されたバイト単位のデータが転送回路42を介してECCコア44へ転送される。ECCコア44は、転送されたデータのECC演算を行い、その演算から得られたエラー情報がエラーレジスタ46に保持される。書込み回路48は、エラーレジスタ46に保持されたエラー情報に基づき、訂正されたデータをページバッファ/センス回路30に書き戻す。こうして、1ページのECC処理の終了後、ページバッファ/センス回路30に保持されたデータが列アドレスに従いデータバス60に読み出され、読み出されたデータが外部入出力回路50に提供される。入出力回路50は、図示しない入出力端子から読出しデータを出力する。
図2A、図2Bに、ページの連続読出しを行うときのタイミングチャートを示す。ページバッファ/センス回路30は、2つのラッチL1、L2(1つのラッチは、例えば2KBのページデータを保持)を含み、ラッチL1、L2は、それぞれ第1のキャッシュC0と第2のキャッシュC1(1つのキャッシュは、例えば1KB)とを含む。ラッチL1の第1のキャッシュC0および第2のキャッシュC1で保持されたデータは、ラッチL2の第1のキャッシュC0および第2のキャッシュC1にそれぞれ独立して転送される。
最初に、ページ0のアレイ読出しが行われ、ページ0のデータがラッチL1の第1および第2のキャッシュC0、C1に保持される(P0C0、P0C1)。次に、ラッチL1の第1および第2のキャッシュC0、C1のデータがラッチL2の第1および第2のキャッシュC0、C1に転送され、第1および第2のキャッシュC0、C1のデータがECCコア42によりECC処理される。誤りが検出された場合には、書込み回路48は、エラーレジスタ46に保持されたエラー情報に従い訂正されたデータをラッチL2の第1、第2のキャッシュC0、C1に書込む。
連続読出しでは、行アドレスカウンタが自動的にインクリメントされ、次のページ1の読出しが行われ、読み出されたデータがラッチL1の第1および第2のキャッシュC0、C1に転送される。この間、ラッチL2の第1のキャッシュC0のデータが入出力回路50へ転送され、入出力回路50に保持されたデータは、外部から供給される外部クロック信号ExCLKに同期して出力される。次に、ラッチL2の第2のキャッシュC1のデータが入出力回路50から外部クロック信号ExCLKに同期して出力され、この間、ラッチL1の第1のキャッシュC0のデータがラッチL2に転送され、かつECC回路40によりECC処理が行われる。
ラッチL1の第2のキャッシュC1のデータがラッチL2に転送され、ラッチL2の第1のキャッシュC0のデータが入出力回路50から出力される間に、第2のラッチL2の第2のキャッシュC1のデータがECC処理され、次いで、ラッチL2の第2のキャッシュC1のデータが入出力回路50から出力される間に、次のページ2がアレイから読み出され、ラッチL1の第1および第2のキャッシュC0、C1に転送され、かつ第1のキャッシュC0のデータがラッチL2に転送され、ECC処理される。
こうして、ラッチL2からデータを出力しながらメモリセルアレイのページの連続読出しが行われ、その間、第1のキャッシュC0のデータを出力する間に第2のキャッシュC1のECC処理が行われ、第2のキャッシュC1のデータを出力する間に第1のキャッシュC0のECC処理が行われる。
メモリセルアレイの読出しは、決められたタイミングにより内部クロック信号に同期して行われ、他方、読出しデータの出力は、内部クロック信号と非同期の外部クロック信号ExCLKに同期して行われる。それ故、ページの連続読出し動作には、以下の数式(1)で示される制約がある。
tPRE+tDIS+tECC<tDOUT・・・(1)
tPRE:ビット線のプリチャージ時間、
tDIS:メモリセルの放電時間
tECC;1/2ページのECC処理時間
tDOUT:1ページのデータ出力時間である。
tPREとtDISは一定であり、高速読出しのために外部クロック信号ExCLKの周波数を高くすると、tDOUTが小さくなり、それに応じてtECCを小さくしなければならない。例えば、2KBのページデータを読み出すとき、tPRE+tDISは、約16.2μsである。外部クロック信号ExCLKの周波数が166MHzであり、×4の外部端子から1ページのデータを出力する場合、tDOUTは、約24.6μsである。
数式(1)より、ECC処理時間は、数式(2)の制約を有する。
tECC<8.4μs・・・(2)
ECC回路が1ビットのエラー検出・訂正を行う場合にはハミングコードを用いることができ、この処理時間は比較的短いため、外部クロック信号ExCLKの周波数には余裕がある。他方、複数ビットのエラー検出・訂正を行う場合には、BCHコードを必要とし、BCHコードの処理には、ハミングコードの処理よりも長い時間を必要とする。この場合、数式(2)のECC処理時間(tECC)がボトルネックになり得る。
図3は、従来のBCHコードをデコードするときのフローを例示する。一例として、1ページ(2KB)は、2つのキャッシュC0、C1から構成され、1つのキャッシュは、2つのセクターから構成される。ECCは、セクター単位(例えば、512バイト)で行われ、1つのキャッシュは、2回のECC処理を必要とし、BCHコードにより1キャッシュ当たり4ビットのエラー検出・訂正を可能にする。また、ECC処理は、ECCクロック信号に同期して行われ、そのクロック周波数を50MHzとする。
ステップ1:第1および第2のセクターから読み取ったデータのシンドロームを評価する。このステップは、転送回路42を介してページバッファ/センス回路30をアクセスし、そこからデータを読み出す処理を含み、セクター当たり140のクロックサイクルを要する。
ステップ2:第1のセクターのシンドロームの評価後、第1のセクターのエラー位置多項式(ELP)を計算し、第2のセクターのシンドロームの評価後に第2のセクターの第2のエラー位置多項式(ELP)を計算する。この計算には、それぞれ81クロックサイクルを要する。
ステップ3:第1のセクターのELPの根を計算し、そのエラー位置を決定し、第2のセクターのELPの根を計算し、そのエラー位置を決定する。これらの計算には、それぞれ135クロックサイクルを要する。
ステップ4:エラー位置に基づき、ページバッファ/センス回路に訂正されたデータを書き戻す。この処理に20クロックサイクルを要する。
第1および第2のセクターのステップ1ないしステップ4の処理は、同一のステップが重複しなければ並列に行うことができる。1つのキャッシュのECC処理には、516クロックサイクルを必要とし、時間に換算すると、tECC=10.32μsである。
ハミングコードを用いる場合には、BCHコードのときのステップ2、3は不要であり、全体として288のクロックサイクル(ECC=5.8μs)を必要とする。従って、ハミングコードであれば、数式(2)に示すtECC<8.4μsの制約を満足することができる。しかしながら、BCHコードの場合には、tECC(=10.32)>8.4μsとなり、tECC<8.4μsの制約を満足することができない。つまり、tECC=10.32μsのときの外部クロック信号ExCLKの最大周波数は、154.4MHzであり、166MHzの外部クロック信号ExCLKを用いた高速読出しを行うことはできない。図2Bに示すハッチングで示す矩形領域は、tECC=10.32μsが制約を満足していない状態を示している。
このように、従来のフラッシュメモリにおいて連続読出しを行うとき、ECC処理時間が長いと、外部クロック信号ExCLKの周波数に制約が生じ、高速読出しを行うことができないという課題がある。
本発明は、このような従来の課題を解決し、読出し動作時のECCの処理時間の短縮を図ることができる半導体記憶装置および読出し方法を提供することを目的とする。
本発明に係る半導体記憶装置は、NAND型のメモリセルアレイと、前記メモリセルアレイの選択ページから読み出されたデータを保持するページバッファ/センス回路と、ページバッファ/センス回路に保持されたデータを受け取り、当該データのエラー位置を検出し、検出したエラー位置に関するエラー位置情報を保持するエラー検出手段と、列アドレスに基づき前記ページバッファ/センス回路からデータを選択し、選択したデータをデータバスに出力する出力手段と、前記エラー位置情報に基づき前記データバス上のデータを訂正する訂正手段とを有する。
ある実施態様では、前記訂正手段は、前記エラーの位置情報に基づきデータバス上のデータを反転する。ある実施態様では、前記訂正手段は、前記エラーの位置情報と前記列アドレスとを比較し、比較結果に基づきエラービット位置に対応する前記データバス上のデータを訂正する。ある実施態様では、前記エラー検出手段は、複数ビットのエラーの位置を検出する。ある実施態様では、前記訂正手段は、ページの連続読出しが行われるときに実施される。ある実施態様では、前記ページバッファ/センス回路は、前記メモリセルアレイから読み出されたページデータを保持する第1の保持手段と、第1の保持手段で保持されたページデータを受け取る第2の保持手段とを有し、第1および第2の保持手段の各々は、独立にデータ転送可能な第1の部分と第2の部分とを含み、第1の部分および第2の部分は、1/2ページのデータを保持可能であり、ページの連続読出しが行われるとき、前記第2の保持手段の第1の部分のデータが外部に出力される間に前記第2の保持手段の第2の部分のデータのエラー検出および訂正が行われ、前記第2の保持手段の第2の部分のデータが外部に出力される間に前記第2の保持手段の第1の部分のデータのエラー検出および訂正が行われる。ある実施態様では、ページの連続読出しが行われるとき、外部から入力されたクロック信号に同期してデータが外部に出力される。ある実施態様では、ページの連続読出しは、tPRE+tDIS+tECC<tDOUTの条件を満足する(tPREは、ビット線のプリチャージ時間、tDISは、メモリセルの放電時間、tECCは、1/2ページのエラー検出および訂正の時間、tDOUTは、1ページのデータ出力時間)。ある実施態様では、前記出力手段は、ページバッファ/センス回路から選択されたnビットのデータをn個の差動センスアンプに提供し、前記訂正手段は、前記差動センスアンプから出力されるデータを反転する。
本発明に係るNAND型フラッシュメモリの読出し方法は、読出し動作時に、ページバッファ/センス回路に保持されたデータを受け取り、当該データのエラー位置を検出するステップと、検出したエラー位置に関するエラー位置情報を保持するステップと、列アドレスに基づき前記ページバッファ/センス回路からデータを選択し、選択したデータをデータバスに出力するステップと、前記エラー位置情報に基づき前記データバス上のデータを訂正するステップと、訂正されたデータを外部に出力するステップとを含む。
ある実施態様では、前記訂正するステップは、前記エラー位置情報と前記列アドレスとを比較し、比較結果に基づきエラービット位置に対応する前記データバス上のデータを反転する。ある実施態様では、前記読出し動作は、ページの連続読出しである。ある実施態様では、前記エラー位置は、複数のエラー位置である。
本発明によれば、ページバッファ/センス回路から出力されたデータバス上のデータをエラー位置情報に基づき訂正するようにしたので、従来と比較してエラー検出・訂正に要する時間を短縮させ、これにより読出し時間を短縮することができる。また、ページの連続読出しを行う場合には、従来と比較して読出し速度を向上させることができる。
従来のオンチップECCを搭載するNAND型フラッシュメモリの概略構成を示す図である。 従来のNAND型フラッシュメモリにおいて連続読出しを行うときのタイミングチャートである。 従来のNAND型フラッシュメモリにおいて連続読出しを行うときのタイミングチャートである。 従来のECC回路のBCHのデコードのフローを例示する図である。 本発明の実施例に係るNAND型フラッシュメモリの構成を示すブロック図である。 本発明の第1の実施例に係るECC回路の概略構成を示す図である。 本発明の第1の実施例に係るECC回路のエラー訂正部の詳細を説明する図である。 本発明の第1の実施例に係るECC回路のBCHのデコードのフローを例示する図である。 本発明の第1の実施例による連続読出しを行うときのタイミングチャートである。 本発明の第2の実施例に係るエラー検出・訂正方法を説明する図である。 本発明の第2の実施例によるエラー検出・訂正方法の動作フローである。
次に、本発明の実施の形態について図面を参照して詳細に説明する。本発明に係る半導体記憶装置は、例えば、NAND型フラッシュメモリ、あるいはこのようなフラッシュメモリを埋め込むマイクロプロセッサ、マイクロコントローラ、ロジック、ASIC、画像や音声を処理するプロセッサ、無線信号等の信号を処理するプロセッサなどである。
図4は、本発明の実施例に係るNAND型フラッシュメモリの構成を示す図である。本実施例に係るフラッシュメモリ100は、複数のメモリセルが行列状に配列されたメモリアレイ110と、SPIに対応したデータの入出力が可能な入出力回路120と、プログラムすべきデータや読み出されたデータのエラー検出・訂正を行うECC回路130と、入出力回路120を介してアドレスデータを受け取るアドレスレジスタ140と、入出力回路120を介して受け取ったコマンドデータや制御端子に印加された制御信号に基づき各部を制御するコントローラ150と、アドレスレジスタ140から行アドレス情報Axを受け取り、行アドレス情報Axのデコード結果に基づきブロックの選択やワード線の選択等を行うワード線選択回路160と、ワード線選択回路160によって選択されたページから読み出されたデータを保持したり、選択されたページへプログラムするデータを保持するページバッファ/センス回路170と、アドレスレジスタ140から列アドレス情報Ayのデコード結果に基づきページバッファ/センス回路170内の列の選択等を行う列選択回路180と、データの読出し、プログラムおよび消去等のために必要な種々の電圧(書込み電圧Vpgm、パス電圧Vpass、読出しパス電圧Vread、消去電圧Versなど)を生成する内部電圧生成回路190とを含んで構成される。
メモリセルアレイ110は、m個の複数のブロックBLK(0)、BLK(1)、・・・、BLK(m-1)を含む。1つのブロックには、複数のNANDストリングが形成される。メモリセルアレイ110は、基板表面に2次元的に形成されるものであってもよいし、基板表面から垂直方向に3次元的に形成されるものであってもよい。また、メモリセルは、1ビット(2値データ)を記憶するSLCタイプでもよいし、多ビットを記憶するMLCタイプであってもよい。
ECC回路130は、コマンドまたは出荷時の設定等により動作または非動作にすることが可能である。ECC回路130は、メモリセルアレイ110から読出したデータのエラー検出・訂正を行い、あるいはメモリセルアレイ110にプログラムすべきデータの符号生成を行う。ECC回路130は、シングルビットのエラー検出・訂正を行うものであってもよいし、マルチビットのエラー検出・訂正を行うものであってもよい。ECC回路130の詳細は後述する。
コントローラ150は、ステートマシンあるいはマイクロコントローラを含み、フラッシュメモリの各動作を制御する。読出し動作では、ビット線に或る正の電圧を印加し、選択ワード線に或る電圧(例えば0V)を印加し、非選択ワード線にパス電圧を印加し、ビット線側選択トランジスタおよびソース線側選択トランジスタをオンし、ソース線に0Vを印加する。プログラム動作では、選択ワード線に高電圧のプログラム電圧Vpgmを印加し、非選択のワード線に中間電位を印加し、ビット線側選択トランジスタをオンさせ、ソース線側選択トランジスタをオフさせ、「0」または「1」のデータに応じた電位をビット線に供給する。消去動作では、ブロック内の全ての選択ワード線に0Vを印加し、Pウエルに高電圧の消去電圧を印加し、フローティングゲートの電子を基板に引き抜き、ブロック単位でデータを消去する。
ページバッファ/センス回路170は、図2に示したように2つのラッチL1、L2を含み、ラッチL1、L2は、それぞれが独立して動作可能な第1のキャッシュC0と第2のキャッシュC1とを含んで構成される。ラッチL1とラッチL2との間には、双方向のデータ転送を可能にする転送ゲートが接続され、転送ゲートをオンすることでラッチL1からラッチL2、あるいはラッチL2からラッチL1にデータが転送される。
メモリセルアレイの選択ページから読み出されたデータは、センスノードで感知され、感知されたデータがラッチL1に転送され、そこで保持される。ページの連続読出しを行うとき、メモリセルアレイの読出しおよびラッチL1とラッチL2との間のデータ転送は、内部クロック信号に同期して行われ、ラッチL2と入出力回路120との間のデータ転送、入出力回路120からのデータ出力は、外部から供給される外部クロック信号ExCLKに同期して行われ、ラッチL2とECC回路130との間のデータ転送およびECC回路の動作は、別の内部クロック信号もしくは外部から供給される外部クロック信号ExCLKを分周したクロックに同期して行われる。
列選択回路180は、列アドレスAyに基づきページ内のデータの読出し開始位置を選択したり、あるいは列アドレスを用いることなくページの先頭位置からデータを自動的に読み出す。さらに列選択回路180は、クロック信号に応答して列アドレスをインクリメントする列アドレスカウンタを含むようにしてもよい。
図5に、本実施例のECC回路130の構成を示す。ECC回路130は、ページバッファ/センス回路170に保持されたデータを読み出すための転送回路132、転送回路132で読み出されたデータを処理し、エラーを検出するECCコア134、ECCコア134により検出されたエラーのエラー位置情報を保持するエラーレジスタ136、エラーレジスタ136に保持されたエラー位置情報に基づきデータバス200上に出力されたデータを訂正するエラー訂正部138を含む。エラーレジスタ136が保持するエラー位置情報は、エラーが存在するカラム位置とビット位置を識別することができる情報である。
本実施例のECC回路130は、従来のようにページバッファ/センス回路をアクセスし、書込み回路により訂正されたデータをページバッファ/センス回路170に書き込むことで訂正を行うのではなく、ページバッファ/センス回路をアクセスすることなくページバッファ/センス回路170からデータバス200に出力されたデータを反転することにより訂正を行う。
図6に、エラー訂正部138の構成例を示す。エラー訂正部138は、列アドレスAyとエラーレジスタ136が保持するエラー位置情報とを比較するアドレス比較部138Aと、アドレス比較部138Aから出力される反転制御信号に基づきデータバス200上のデータを反転する機能を備えた反転回路138Bとを備える。
ページバッファ/センス回路170に保持されたデータを出力するとき、ページバッファ170に保持されたページデータの中からnビットのデータが列アドレスAyをデコードした列選択信号YSにより選択される。列選択信号YSは、列選択回路180の列デコーダ182により生成される。ページバッファ/センス回路170から選択されたnビットのデータは、差動データとしてn個の差動センスアンプ184のビット線対BT/BBに入力され、差動センスアンプ184は、ビット線対BT/BBの差動データを感知(センス)する。差動センスアンプ184により感知されたnビットのデータは、反転回路138Bの対応するn個のExOR回路の一方にそれぞれ入力される。ExORの他方の入力には、アドレス比較部138Aからの反転制御信号がそれぞれ入力される。
アドレス比較部138Aは、エラーレジスタ136のエラー位置情報と、ページバッファ/センス回路170からデータを出力させるときの列アドレスAyとを比較し、両アドレスが一致する場合には、エラーレジスタ136のエラービット位置に対応するビット(ExOR)には、Hレベルの反転制御信号を出力し、エラービット位置に対応しないビット(ExOR)には、Lレベルの反転制御信号を出力する。また、両アドレスが一致しない場合には、全てのビット(ExOR)について、Lレベルの反転制御信号を出力する。こうして、ページバッファ/センス回路170から読み出されたデータは、エラーがある場合には、反転回路138Bで反転されることでエラーの訂正が行われ、読み出されたデータにエラーがない場合には、反転回路138Bで反転されることなくそのまま出力される。
反転回路138BのExORから出力されるnビットのデータは、入出力回路120に供給される。入出力回路120は、複数のフリップフロップが接続されたパラレル/シリアル変換回路を含み、パラレル/シリアル変換回路は、入力されたnビットのデータをm
個の直列データに変換し、変換された直列データは、ドライバ122を介してmビットの入出力端子I/Oから外部に出力される。
ページの連続読出しでは、クロック端子に外部クロック信号ExCLKが供給され、外部クロック信号ExCLKは、図示しないタイミング制御回路に供給される。タイミング制御回路は、外部クロック信号ExCLKに同期する内部クロック信号を生成し、この内部クロック信号は、入出力回路120や差動センスアンプ184等に供給される。
列デコーダ182により1度に選択されるビット数nは、データバス200のビット幅、すなわちビット線対BT/BBの数に等しい。I/Oの端子数は任意であるが、I/Oの端子数がmビットのとき、m≦nであり、かつ、nは、mのk倍の関係にある(m、kは、それぞれ1以上の整数)。
図7に、本実施例のECC回路130のBCHコードをデコードするフローを例示する。このフローは、図3に示す従来のBCHコードのデコードのフローに対応し、ECC回路130は、50MHzのクロック信号を用いてECC処理を実行し、1つのキャッシュは、第1および第2のセクターから構成される。ステップ1ないしステップ3までは、図3のフローと同様であるが、本実施例では、ステップ4を行わず、ステップ5を実施する。
ステップ5:ページバッファ/センス回路170からデータバス200に出力されたデータを反転することでエラー訂正を実施する。
本実施例では、ステップ4のページバッファ/センス回路への書き戻しを行わない。つまり、ページバッファ/センス回路170をアクセスしない。それ故、ECC回路130は、ステップ3の第1のセクターのELPの根までの処理をフォアグラウンドで行い、第2のセクターのELPの根の処理を、第1のセクターのエラー訂正期間中にバックグラウンドで行うことができる。ステップ1でページバッファ/センス回路170をアクセスした後は、ページバッファ/センス回路170への書込みは行われないため、ページバッファ/センス回路からのデータの読出しは、ECC回路によるアクセスと競合しない。さらに、ステップ3で第1のセクターのエラー位置が決定されていれば、そのエラー位置情報を用いて即座にデータバス上のデータを訂正することができる。従って、ステップ3の第1のセクターのエラー位置の算出までをフォアグラウンドで処理し、その後、ページバッファ/センス回路170からデータバス200へ第1のセクターのデータを出力させ、エラー訂正を行っている間に、ステップ3の第2のセクターのエラー位置の算出をバックグラウンドで処理する。
そうすると、ECC回路130のフォアグラウンドの処理時間tECC_FGは356クロックサイクルを必要とし、tECC_FG=7.12μsであり、バックグラウンドの処理時間tECC_BGは140サイクルを必要とし、tECC_BG=2.8μsとなる。tECC_FG=7.12μsは、数式(2)で示すtECC<8.4μsの制約を満足する。tECC_FG=7.12μsのとき、tPRE+tDIS+tECC_FG=23.32μsであり、これを外部クロック信号ExCLKの周波数に換算すると、外部クロック信号ExCLKの周波数を175.6MHzまで早くすることができる。言い換えれば、175.6MHzの外部クロック信号ExCLKを用いて、マルチビットECCを行いながらページの連続読出しを行うことが可能になる。
図8は、本実施例によるページの連続読出しを行うときのタイミングチャートを示す図である。コントローラ150は、入出力回路120を介して連続読出し動作のコマンドを受け取ると、開始アドレスから複数のページの連続読出し動作を制御し、連続読出し動作終了のコマンドを受け取ると、終了アドレスで連続読出し動作を終了する。連続読出し動作では、ページバッファ/センス回路170の一方のラッチL2からデータが出力されている間に他方のラッチL1にメモリセルアレイの選択ページから読み出されたデータが転送される。ラッチL1からラッチL2へのデータ転送は、第1または第2のキャッシュC0、C1で行なわれ、ラッチL2の一方のキャッシュのデータが入出力回路120に転送される間にラッチL2の他方のキャッシュのデータがECC回路130で処理される。入出力回路120に転送されたデータは、外部クロック信号ExCLKに同期して外部入出力端子から出力される。
同図に示すように、外部クロック信号ExCLKが166MHzであるときのtDOUTは24.6μsであり、本実施例による読出し時間(tPRE+tDIS+tECC)は、tDOUTよりも小さい。図中のハッチングで示す矩形領域は、ECC回路130のバックグラウンド処理(第2のセクターのELPの処理等)を示している。
このように本実施例によれば、ページバッファ/センス回路170からデータバス200に出力されたデータを訂正するようにしたので、エラー訂正のためにページバッファ/センス回路へのアクセスが不要となり、ECC回路の処理の一部をバックグラウンドで実行することが可能となり、結果としてECC回路の処理時間を短縮させることができる。これにより、連続読出しの高速化を図ることができる。上記実施例では、連続読出し動作にECC回路130を適用する例を示したが、これに限らず、ECC回路130を通常のページ読出しに適用することも勿論可能である。
次に、本発明の第2の実施例について説明する。図9は、第2の実施例に係るフラッシュメモリのECC回路を示す図である。同図に示すように、ECC回路130は、第1の実施例の構成に加えてさらに、書込み回路139を含んでいる。コントローラ150は、入力された読出しコマンドに基づきページ読出しまたは連続読出しを識別し、識別結果に基づきイネーブル信号EN1、EN2を介してエラー訂正部138または書込み回路139を選択的に動作させる。
図10は、第2の実施例のECC回路の動作フローである。コントローラ150は、読出しコマンドを受け取ると(S100)、連続読出しまたはページ読出しかを識別する(S110)。連続読出しである場合には、コントローラ150は、イネーブル信号EN1を介してエラー訂正部138をイネーブルし、イネーブル信号EN2を介して書込み回路139をディスエーブルする。これにより、第1の実施例のときと同様に、エラー訂正部138は、ページバッファ/センス回路170からデータバス200に出力されたデータを訂正する(S120)。
一方、ページ読出しの場合には、コントローラ150は、イネーブル信号EN1を介してエラー訂正部138をディスエーブルにし、イネーブル信号EN2を介して書込み回路139をイネーブルする。エラー訂正部138は、ディスエーブルされたとき、反転制御信号を全てLレベルにし、データバス200のデータをそのまま通過させる。一方、書込み回路139は、図1に示すように、エラー位置情報に基づきページバッファ/センス回路170に訂正されたデータを書き戻す(S130)。
このように本実施例によれば、連続読出しの場合には、読出し速度を重視したECC処理を行い、ページ読出しの場合には、IDM(Internal Date Move)の機能を利用したデータの信頼性の向上を図ることができる。IDMは、ページバッファ/センス回路のページデータを別のブロックのページにコピーする機能であり、ページバッファ/センス回路に保持されたデータをECC処理した後にページバッファ/センス回路に書き戻し、このECC処理されたページデータを他のブロックのページにプログラムする。つまり、ページバッファ/センス回路がECC回路により訂正されたデータを保持している必要がある。
上記実施例では、マルチビットECCによるBCHコードをデコードするフローを図3、図7に示したが、これらのフロー(アルゴリズム)は例示であり、BCHコードを他のフローによりデコードするようにしてもよい。さらに本発明は、マルチビットECCに限定されず、1ビットのエラー検出・訂正を行うECC回路やBCHコード以外のコードを用いるエラー検出・訂正にも適用することができる。
本発明の好ましい実施の形態について詳述したが、本発明は、特定の実施形態に限定されるものではなく、特許請求の範囲に記載された本発明の要旨の範囲内において、種々の変形・変更が可能である。
100:フラッシュメモリ
110:メモリセルアレイ
120:入出力回路
130:ECC回路
132:転送回路
134:ECCコア
136:エラーレジスタ
138:エラー訂正部
138A:アドレス比較部
138B:反転回路
139:書込み回路
140:アドレスレジスタ
150:コントローラ
160:ワード線選択回路
170:ページバッファ/センス回路
180:列選択回路
190:内部電圧発生回路
200:データバス

Claims (13)

  1. NAND型のメモリセルアレイと、
    前記メモリセルアレイの選択ページから読み出されたデータを保持するページバッファ/センス回路と、
    ページバッファ/センス回路に保持されたデータを受け取り、当該データのエラー位置を検出し、検出したエラー位置に関するエラー位置情報を保持するエラー検出手段と、
    列アドレスに基づき前記ページバッファ/センス回路からデータを選択し、選択したデータをデータバスに出力する出力手段と、
    前記エラー位置情報に基づき前記データバス上のデータを訂正する訂正手段と、
    を有する半導体記憶装置。
  2. 前記訂正手段は、前記エラーの位置情報に基づきデータバス上のデータを反転する、請求項1に記載の半導体記憶装置。
  3. 前記訂正手段は、前記エラーの位置情報と前記列アドレスとを比較し、比較結果に基づきエラービット位置に対応する前記データバス上のデータを訂正する、請求項1または2に記載の半導体記憶装置。
  4. 前記エラー検出手段は、複数ビットのエラーの位置を検出する、請求項1に記載の半導体記憶装置。
  5. 前記訂正手段は、ページの連続読出しが行われるときに実施される、請求項1に記載の半導体記憶装置。
  6. 前記ページバッファ/センス回路は、前記メモリセルアレイから読み出されたページデータを保持する第1の保持手段と、第1の保持手段で保持されたページデータを受け取る第2の保持手段とを有し、第1および第2の保持手段の各々は、独立にデータ転送可能な第1の部分と第2の部分とを含み、第1の部分および第2の部分は、1/2ページのデータを保持可能であり、
    ページの連続読出しが行われるとき、前記第2の保持手段の第1の部分のデータが外部に出力される間に前記第2の保持手段の第2の部分のデータのエラー検出および訂正が行われ、前記第2の保持手段の第2の部分のデータが外部に出力される間に前記第2の保持手段の第1の部分のデータのエラー検出および訂正が行われる、請求項5に記載の半導体記憶装置。
  7. ページの連続読出しが行われるとき、外部から入力されたクロック信号に同期してデータが外部に出力される、請求項6に記載の半導体記憶装置。
  8. ページの連続読出しは、tPRE+tDIS+tECC<tDOUTの条件を満足する(tPREは、ビット線のプリチャージ時間、tDISは、メモリセルの放電時間、tECCは、1/2ページのエラー検出および訂正の時間、tDOUTは、1ページのデータ出力時間)、請求項7に記載の半導体記憶装置。
  9. 前記出力手段は、ページバッファ/センス回路から選択されたnビットのデータをn個の差動センスアンプに提供し、前記訂正手段は、前記差動センスアンプから出力されるデータを反転する、請求項1に記載の半導体記憶装置。
  10. NAND型フラッシュメモリの読出し方法であって、
    読出し動作時に、ページバッファ/センス回路に保持されたデータを受け取り、当該データのエラー位置を検出するステップと、
    検出したエラー位置に関するエラー位置情報を保持するステップと、
    列アドレスに基づき前記ページバッファ/センス回路からデータを選択し、選択したデータをデータバスに出力するステップと、
    前記エラー位置情報に基づき前記データバス上のデータを訂正するステップと、
    訂正されたデータを外部に出力するステップと、
    を含む読出し方法。
  11. 前記訂正するステップは、前記エラー位置情報と前記列アドレスとを比較し、比較結果に基づきエラービット位置に対応する前記データバス上のデータを反転する、請求項9に記載の読出し方法。
  12. 前記読出し動作は、ページの連続読出しである、請求項11に記載の読出し方法。
  13. 前記エラー位置は、複数のエラー位置である、請求項10に記載の読出し方法。
JP2020066573A 2020-04-02 2020-04-02 半導体記憶装置および読出し方法 Active JP7018089B2 (ja)

Priority Applications (5)

Application Number Priority Date Filing Date Title
JP2020066573A JP7018089B2 (ja) 2020-04-02 2020-04-02 半導体記憶装置および読出し方法
TW110103826A TWI792168B (zh) 2020-04-02 2021-02-02 半導體存儲裝置以及讀出方法
CN202110201670.XA CN113496755B (zh) 2020-04-02 2021-02-23 半导体存储装置以及读出方法
KR1020210027392A KR102560902B1 (ko) 2020-04-02 2021-03-02 반도체 기억 장치 및 독출 방법
US17/191,670 US11487614B2 (en) 2020-04-02 2021-03-03 Semiconductor storing apparatus and readout method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2020066573A JP7018089B2 (ja) 2020-04-02 2020-04-02 半導体記憶装置および読出し方法

Publications (2)

Publication Number Publication Date
JP2021163352A true JP2021163352A (ja) 2021-10-11
JP7018089B2 JP7018089B2 (ja) 2022-02-09

Family

ID=77921613

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2020066573A Active JP7018089B2 (ja) 2020-04-02 2020-04-02 半導体記憶装置および読出し方法

Country Status (5)

Country Link
US (1) US11487614B2 (ja)
JP (1) JP7018089B2 (ja)
KR (1) KR102560902B1 (ja)
CN (1) CN113496755B (ja)
TW (1) TWI792168B (ja)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TWI748507B (zh) * 2020-06-08 2021-12-01 瑞昱半導體股份有限公司 資料存取系統及操作資料存取系統的方法
JP2022047393A (ja) * 2020-09-11 2022-03-24 キオクシア株式会社 メモリシステム、半導体記憶装置及びデータ読み出し方法

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2014033364A (ja) * 2012-08-03 2014-02-20 Samsung Electronics Co Ltd 誤り検出訂正回路、及びメモリ装置
JP2016035795A (ja) * 2014-08-01 2016-03-17 華邦電子股▲ふん▼有限公司 内部ecc処理を有するnand型フラッシュメモリおよびその動作方法

Family Cites Families (23)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS5323170B2 (ja) 1973-08-20 1978-07-13
JPS5543183Y2 (ja) 1976-08-05 1980-10-09
US6957378B2 (en) * 2001-06-04 2005-10-18 Kabushiki Kaisha Toshiba Semiconductor memory device
JP2005086683A (ja) * 2003-09-10 2005-03-31 Fanuc Ltd 誤り復号回路、データバス制御方法、及びデータバスシステム
JP4820795B2 (ja) * 2007-10-04 2011-11-24 パナソニック株式会社 半導体記憶装置
JP4643667B2 (ja) 2008-03-01 2011-03-02 株式会社東芝 メモリシステム
KR101655306B1 (ko) * 2010-02-24 2016-09-07 삼성전자주식회사 메모리 시스템 및 그것의 액세스 방법
CN102693758B (zh) * 2011-03-22 2015-05-06 群联电子股份有限公司 数据读取方法、存储器储存装置及其存储器控制器
JP5323170B2 (ja) 2011-12-05 2013-10-23 ウィンボンド エレクトロニクス コーポレーション 不揮発性半導体メモリおよびそのデータの読出し方法
US9600359B2 (en) * 2012-05-31 2017-03-21 Hewlett Packard Enterprise Development Lp Local error detection and global error correction
TWI497495B (zh) 2012-07-02 2015-08-21 Winbond Electronics Corp 用於讀取nand快閃記憶體的方法和設備
US8990667B2 (en) * 2012-08-03 2015-03-24 Samsung Electronics Co., Ltd. Error check and correction circuit, method, and memory device
JP5667143B2 (ja) * 2012-10-11 2015-02-12 ウィンボンド エレクトロニクス コーポレーション 不揮発性半導体メモリ
JP6131207B2 (ja) * 2014-03-14 2017-05-17 ウィンボンド エレクトロニクス コーポレーション 半導体記憶装置
US9952925B2 (en) * 2016-01-06 2018-04-24 Micron Technology, Inc. Error code calculation on sensing circuitry
JP6178909B1 (ja) * 2016-09-15 2017-08-09 ウィンボンド エレクトロニクス コーポレーション 不揮発性半導体記憶装置
TWI625620B (zh) 2017-05-12 2018-06-01 威盛電子股份有限公司 非揮發性記憶體裝置及其讀取方法
KR102326659B1 (ko) * 2017-07-19 2021-11-16 삼성전자주식회사 비휘발성 메모리의 ecc 제어 방법 및 이를 수행하는 메모리 시스템
KR20190088790A (ko) * 2018-01-19 2019-07-29 에스케이하이닉스 주식회사 메모리 시스템 및 그것의 동작 방법
KR102453437B1 (ko) * 2018-01-25 2022-10-12 삼성전자주식회사 반도체 메모리 장치, 이를 포함하는 메모리 시스템 및 반도체 메모리 장치의 동작 방법
KR102442216B1 (ko) * 2018-04-19 2022-09-08 에스케이하이닉스 주식회사 메모리 장치 및 그 동작 방법
US10877687B2 (en) * 2018-06-29 2020-12-29 Micron Technology, Inc. Erasure of multiple blocks in memory devices
KR102461099B1 (ko) * 2018-08-07 2022-11-01 에스케이하이닉스 주식회사 메모리 장치 및 이를 포함하는 저장 장치 및 그 동작 방법

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2014033364A (ja) * 2012-08-03 2014-02-20 Samsung Electronics Co Ltd 誤り検出訂正回路、及びメモリ装置
JP2016035795A (ja) * 2014-08-01 2016-03-17 華邦電子股▲ふん▼有限公司 内部ecc処理を有するnand型フラッシュメモリおよびその動作方法

Also Published As

Publication number Publication date
KR20210124030A (ko) 2021-10-14
TW202139005A (zh) 2021-10-16
CN113496755B (zh) 2024-03-22
US20210311826A1 (en) 2021-10-07
US11487614B2 (en) 2022-11-01
CN113496755A (zh) 2021-10-12
KR102560902B1 (ko) 2023-07-28
TWI792168B (zh) 2023-02-11
JP7018089B2 (ja) 2022-02-09

Similar Documents

Publication Publication Date Title
US5864569A (en) Method and apparatus for performing error correction on data read from a multistate memory
US8161355B2 (en) Automatic refresh for improving data retention and endurance characteristics of an embedded non-volatile memory in a standard CMOS logic process
US8218365B2 (en) Flash memory device having dummy cells and method of operating the same
US8214725B2 (en) Memory access system
JP6258399B2 (ja) 半導体装置
KR102281441B1 (ko) 반도체 장치 및 연속 독출 방법
US10395753B2 (en) Semiconductor memory device and programming method thereof
JP2006079808A (ja) Nandフラッシュメモリ装置及びそれのコピーバックプログラム方法
JP2020155180A (ja) メモリ読み出し方法及びメモリシステム並びにコンピュータ・プログラム
JP5657079B1 (ja) 半導体記憶装置
TW201810285A (zh) 半導體記憶裝置及記憶體系統
CN111986724B (zh) 半导体装置及连续读出方法
TW201535399A (zh) 半導體記憶裝置及nand型快閃記憶體的程式化方法
KR102560902B1 (ko) 반도체 기억 장치 및 독출 방법
US20120159284A1 (en) Semiconductor memory device capable of transferring various types of data
JP2023120450A (ja) 半導体記憶装置および誤り検出訂正方法
KR101001446B1 (ko) 불휘발성 메모리 장치 및 그것의 동작 방법
TWI753814B (zh) 半導體儲存裝置以及錯誤檢測糾正相關資訊的讀出方法
TWI539465B (zh) 半導體儲存裝置及其冗餘方法
TW202209315A (zh) 半導體記憶裝置及半導體記憶裝置之動作方法
JP2023141376A (ja) メモリシステム及び不揮発性メモリ
TWI505278B (zh) Semiconductor memory device
JP5710815B1 (ja) 半導体記憶装置
JP2006127441A (ja) メモリコントローラ、フラッシュメモリシステム及びフラッシュメモリの制御方法

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20200402

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20210616

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20210907

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20220128

R150 Certificate of patent or registration of utility model

Ref document number: 7018089

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150