JP2014137834A - Semiconductor storage device - Google Patents
Semiconductor storage device Download PDFInfo
- Publication number
- JP2014137834A JP2014137834A JP2013006364A JP2013006364A JP2014137834A JP 2014137834 A JP2014137834 A JP 2014137834A JP 2013006364 A JP2013006364 A JP 2013006364A JP 2013006364 A JP2013006364 A JP 2013006364A JP 2014137834 A JP2014137834 A JP 2014137834A
- Authority
- JP
- Japan
- Prior art keywords
- data
- page buffer
- ecc
- circuit
- unit
- 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.)
- Pending
Links
Images
Landscapes
- Read Only Memory (AREA)
- For Increasing The Reliability Of Semiconductor Memories (AREA)
Abstract
Description
本発明は、半導体記憶装置に関する。 The present invention relates to a semiconductor memory device.
NAND型フラッシュメモリ等に代表される半導体記憶装置は、その集積度が向上するにつれ、複数のメモリセルの間の干渉(interference)が増加するため、誤ったデータ読み出し動作や、誤ったデータ書き込み動作を行う可能性が高くなってきている。そのため、例えば特許文献1記載のフラッシュメモリでは、入力データパターン(data pattern)にデータ1とデータ0とが確率的に一定に保持されるように、入力データパターンを変える機能を実行するランダマイザを備えている。
A semiconductor memory device represented by a NAND flash memory or the like has an increase in the degree of integration, so that an interference between a plurality of memory cells increases. Therefore, an erroneous data read operation or an incorrect data write operation is performed. The possibility to do is getting higher. Therefore, for example, the flash memory described in
特許文献1記載のフラッシュメモリは、データ書き込み動作においては、ランダムシード発生回路によって発生したランダムシードRS(シード)と、入力バッファを通じて入力されたオリジナルデータOD(入力データ)とをXOR(排他的論理和)演算する。特許文献1記載のフラッシュメモリは、XOR演算によりランダムデータRDを生成し(ランダマイズ;Randomize)、このランダムデータRDをメモリセルアレイのメモリセルにプログラムする。また、特許文献1記載のフラッシュメモリは、データ読み出し動作においては、ランダムデータRDと、ランダムシードRSとをXOR演算して、ランダムデータRDをオリジナルデータODに復元、すなわち、デランダマイズ(De−Randomize)し、外部へ出力する。
In the flash memory described in
一方、従来のNAND型フラッシュメモリでは、多数回の書き換えに伴うトンネル酸化膜の劣化等に起因して、データ保持中に記憶素子(メモリセルトランジスタ)の保持特性が失われ、エラービットの発生率(エラー率)が大きくなる傾向がある。特に、NAND型フラッシュメモリでは、メモリセルの大容量化、すなわち製造プロセスにおける微細化が進むとエラー率は上昇してしまう傾向にある。そのため、記憶すべきデータに誤り訂正符号(Error Correcting Code)の冗長データ(パリティデータ)を付加してデータ列としてフラッシュメモリに書込むと共に、読み出し時には誤り訂正符号の冗長データを基にしてデータの訂正を行うことで、エラービットが発生したときのデータの補償を行っている。 On the other hand, in the conventional NAND flash memory, the retention characteristics of the memory element (memory cell transistor) are lost during data retention due to deterioration of the tunnel oxide film accompanying many rewrites, etc., and the error bit occurrence rate (Error rate) tends to increase. In particular, in the NAND flash memory, the error rate tends to increase as the capacity of the memory cell increases, that is, the miniaturization in the manufacturing process proceeds. Therefore, error correction code (Error Correcting Code) redundant data (parity data) is added to the data to be stored and written to the flash memory as a data string. At the time of reading, the data of the error correction code is stored based on the redundant data of the error correction code. Correction is performed to compensate for data when an error bit occurs.
このデータの補償は、NAND型フラッシュメモリの内部においてECC回路により演算処理してもよく、或いは、NAND型フラッシュメモリの外部、例えばメモリコントローラにおいてECC処理を行ってもよい。特許文献1記載のフラッシュメモリでは、外部のコントローラにおいてECC処理を行っている。
This data compensation may be performed by an ECC circuit inside the NAND flash memory, or ECC processing may be performed outside the NAND flash memory, for example, in a memory controller. In the flash memory described in
従って、特許文献1記載のフラッシュメモリでは、データ書き込み動作においては、外部のコントローラにおいて、ホストインターフェースを通じて入力されるデータに対してエラー訂正エンコーディング(Error Correction Encoding)を行う。これにより、外部のコントローラは、パリティビット(Parity Bit)が付け加われたデータ、すなわち、エンコードされたデータを形成する。このエンコードされたデータが、NAND型フラッシュメモリに入力され、上述の様にランダマイズ処理された後に、メモリセルに書き込まれる。
一方、データ読み出し動作においては、NAND型フラッシュメモリにおいて、上述の様にランダマイズ処理された後に、復元されたオリジナルデータが、外部のコントローラのECCデコーダに入力される。このECCデコーダは、復元されたオリジナルデータのエラーを検出し、訂正する(Error Correction Decoding)。
Therefore, in the flash memory disclosed in
On the other hand, in the data read operation, in the NAND flash memory, after the randomization process is performed as described above, the restored original data is input to the ECC decoder of the external controller. This ECC decoder detects and corrects an error in the restored original data (Error Correction Decoding).
ところが、特許文献1記載のフラッシュメモリでは、シード(Seed)をページバッファ(Page Buffer)に送り、ランダマイズ(Randomize)処理をする方式を採用している。そのため、たとえばデータ読み出し(Read)動作の時に、ECCのデコード(Decode)処理を行う時間と、デランダマイズ(De−Randomize)処理を行う時間を要するため、復元、かつ訂正されたデータの読み出し時間が増大してしまうという問題がある。
However, the flash memory described in
そこで本発明が解決しようとする課題は、データ読み出し動作の時に、復元、かつ訂正されたデータの読み出し時間を短縮することにある。 Therefore, the problem to be solved by the present invention is to shorten the time for reading the restored and corrected data during the data reading operation.
本発明の半導体記憶装置は、第1のデータバスと、第1の動作モードによりメモリセルとの間でデータを転送する場合、複数のビット線のうち前記第1のデータバスと同じ本数のビット線と、前記第1のデータバスとを接続してデータを転送するデータ転送部と、を備え、前記データ転送部は、通常メモリセルに接続されるビット線に出力される出力データをラッチする第1のページバッファと、パリティメモリセルに接続されるビット線に出力される出力データをラッチする第2のページバッファと、を含んで構成され、前記第1のデータバスは、前記第1のページバッファ、及び前記第2のページバッファと接続され、さらに、前記第1のデータバスに接続されるとともに、前記第2のページバッファの出力データに基づき、前記第1のページバッファの出力データの誤りを訂正するECC回路と、前記第1のデータバスに接続され、予め設定されたシードデータに基づいて、前記第1のページバッファから入力されるデータをランダマイズし、前記ECC回路から入力されるデータをデランダマイズするランダマイザと、を備える、ことを特徴とする。 When transferring data between the first data bus and the memory cell in the first operation mode, the semiconductor memory device of the present invention has the same number of bits as the first data bus among the plurality of bit lines. And a data transfer unit for transferring data by connecting the first data bus, and the data transfer unit latches output data output to a bit line connected to a normal memory cell A first page buffer; and a second page buffer that latches output data output to a bit line connected to a parity memory cell. The first data bus includes the first page buffer Connected to the page buffer and the second page buffer, further connected to the first data bus, and based on the output data of the second page buffer, An ECC circuit that corrects an error in the output data of the page buffer, and is connected to the first data bus, and randomizes the data input from the first page buffer based on preset seed data, and the ECC And a randomizer for derandomizing data input from the circuit.
また、本発明の半導体記憶装置において、前記第1のページバッファのうちメモリセルまたはビット線に不良が有るページバッファの出力を固定されたデータとするページバッファ制御回路を有し、前記ページバッファ制御回路は、メモリセルまたはビット線に不良が有る場合、前記第1のデータバスからの書き込みを許可しないことを特徴とする。 The semiconductor memory device according to the present invention further includes a page buffer control circuit that uses, as the fixed data, an output of a page buffer having a defect in a memory cell or a bit line in the first page buffer. The circuit does not permit writing from the first data bus when a memory cell or a bit line has a defect.
また、本発明の半導体記憶装置において、前記第1のデータバスと異なる本数から構成され、前記第1のデータバスとは独立して設けられる第2のデータバスを備え、前記データ転送部は、第2の動作モードによりメモリセルとの間でデータを転送する場合、複数のビット線のうち前記第2のデータバスと同じ本数のビット線と、前記第2のデータバスとを接続してデータを転送し、前記第1の動作モードでは、前記第1のページバッファのうち、メモリセルまたはビット線に不良が有るページバッファと、前記第2の動作モードでの救済置換を前提として存在する第3のページバッファとの間において救済置換を行わずに、前記ECC回路、及び前記ランダマイザの入力データとして取り扱うことを特徴とする。 Further, in the semiconductor memory device of the present invention, the semiconductor memory device includes a second data bus that is configured in a different number from the first data bus and is provided independently of the first data bus, and the data transfer unit includes: When data is transferred between the memory cells in the second operation mode, the same number of bit lines as the second data bus among the plurality of bit lines are connected to the second data bus for data In the first operation mode, a page buffer having a defect in a memory cell or a bit line in the first page buffer and a replacement replacement in the second operation mode are presupposed. 3 is handled as input data to the ECC circuit and the randomizer without performing repair replacement with the third page buffer.
また、本発明の半導体記憶装置において、前記第1の動作モードのデータ書き込み動作において、前記ランダマイザは、前記第1のページバッファの出力データをランダマイズして前記ECC回路に入力し、前記ECC回路は、前記ランダマイザから入力されるデータに基づいて、パリティデータを生成して前記第2のページバッファにパリティデータを書き込み、一方、前記第1の動作モードのデータ読み出し動作において、前記ECC回路は、前記第2のページバッファのパリティデータに基づいて、前記第1のページバッファのデータを誤り訂正し、前記ランダマイザは訂正後のデータをデランダマイズして前記第1のページバッファに書き戻す、第1のランダマイズ及びECC処理を実行することを特徴とする。 In the semiconductor memory device of the present invention, in the data write operation in the first operation mode, the randomizer randomizes and outputs the output data of the first page buffer to the ECC circuit, and the ECC circuit , Generating parity data based on the data input from the randomizer and writing the parity data to the second page buffer, while in the data read operation of the first operation mode, the ECC circuit The first page buffer data is error-corrected based on the parity data of the second page buffer, and the randomizer derandomizes the corrected data and writes it back to the first page buffer. Randomization and ECC processing are executed.
また、本発明の半導体記憶装置において、前記第1のランダマイズ及びECC処理に替えて、前記第1の動作モードのデータ書き込み動作において、前記ランダマイザは、前記第1のページバッファの出力データをランダマイズして前記第1のページバッファに書き戻し、前記ECC回路は、前記第1のページバッファに書き戻されたデータに基づいて前記第2のページバッファにパリティデータを書き込み、一方、前記第1の動作モードのデータ読み出し動作において、前記ECC回路は、前記第2のページバッファのパリティデータに基づいて、前記第1のページバッファのデータを誤り訂正し、前記ランダマイザは訂正後のデータをデランダマイズして前記第1のページバッファに書き戻す、第2のランダマイズ及びECC処理を実行することを特徴とする。 In the semiconductor memory device of the present invention, the randomizer randomizes the output data of the first page buffer in the data write operation in the first operation mode instead of the first randomization and ECC processing. The ECC circuit writes parity data to the second page buffer based on the data written back to the first page buffer, while the first operation is performed. In the mode data read operation, the ECC circuit corrects the error of the data of the first page buffer based on the parity data of the second page buffer, and the randomizer derandomizes the corrected data. Execute second randomization and ECC processing to write back to the first page buffer And wherein the Rukoto.
また、本発明の半導体記憶装置において、前前記第2のランダマイズ及びECC処理に替えて、前記第1の動作モードのデータ書き込み動作において、前記ランダマイザは、ランダマイズ処理に先立って取り込んだ前記第1のページバッファの不良情報に基づいて、前記第1のページバッファの出力データのうち、前記固定されたデータを除く、前記第1のページバッファの出力データをランダマイズして前記ECC回路に入力し、前記ECC回路は、前記ランダマイザから入力されるデータに基づいて、パリティデータを生成して前記第2のページバッファにパリティデータを書き込み、一方、前記第1の動作モードのデータ読み出し動作において、前記ECC回路は、前記第2のページバッファのパリティデータに基づいて、前記第1のページバッファのデータを誤り訂正し、前記ランダマイザは訂正後のデータをデランダマイズして前記第1のページバッファに書き戻す、第3のランダマイズ及びECC処理を実行することを特徴とする。 In the semiconductor memory device of the present invention, in the data write operation in the first operation mode, instead of the second randomization and ECC processing, the randomizer captures the first fetched prior to the randomization processing. Randomize the output data of the first page buffer, excluding the fixed data, out of the output data of the first page buffer based on the defect information of the page buffer, and input it to the ECC circuit, The ECC circuit generates parity data based on the data input from the randomizer and writes the parity data to the second page buffer. On the other hand, in the data read operation of the first operation mode, the ECC circuit Is based on the parity data of the second page buffer. Data Jibaffa error correction, the randomizer and Derandamaizu the corrected data is written back to the first page buffer, and executes the third randomization and ECC processing.
また、本発明の半導体記憶装置において、前記ビット線は、n(nはpとqの公倍数であり、p、及びqはp>qである自然数)本のビット線であり、前記第1のデータバスはp本であり、前記第2のデータバスはq本であって、前記データ転送部は、前記第1の動作モードでは、(n/p)本のアドレス信号が入力されると、p本のビット線とp本の第1のデータバスとの接続を行い、一方、前記第2の動作モードでは、(n/q)本のアドレス信号が入力されると、q本ビット線と第2のデータバスとの接続を行う、ことを特徴とする。なお、上記構成は、論理的空間においての概念を前提としており、物理的ビット線数nがpとqの公倍数でなくてもよく、余りをダミービット線として処理するなどで対応できる。 In the semiconductor memory device of the present invention, the bit lines are n (n is a common multiple of p and q, p and q are natural numbers where p> q), and the first The number of data buses is p, the number of second data buses is q, and the data transfer unit receives (n / p) address signals in the first operation mode. The p bit lines and the p first data buses are connected. On the other hand, in the second operation mode, when (n / q) address signals are input, q bit lines and A connection with the second data bus is performed. The above configuration is based on the concept of a logical space, and the number of physical bit lines n may not be a common multiple of p and q, and can be dealt with by processing the remainder as a dummy bit line.
本発明の半導体記憶装置は、第1のデータバスと、第1の動作モードによりメモリセルとの間でデータを転送する場合、複数のビット線のうち第1のデータバスと同じ本数のビット線と、第1のデータバスとを接続してデータを転送するデータ転送部と、を備える。半導体記憶装置は、さらに、第1のデータバスに接続されるECC回路と、第1のデータバスに接続されるランダマイザと、を備える。 When transferring data between the first data bus and the memory cell in the first operation mode, the semiconductor memory device of the present invention has the same number of bit lines as the first data bus among the plurality of bit lines. And a data transfer unit that connects the first data bus and transfers data. The semiconductor memory device further includes an ECC circuit connected to the first data bus, and a randomizer connected to the first data bus.
これにより、ページバッファの出力に接続されるECCのデータバス(第1のデータバス)を、第1動作モード(ECCモード)用に用いることができる。また、このECCのデータバスには、ランダマイザ、及びECC回路が設けられる。そのため、本発明の半導体記憶装置によれば、ECC回路、及びランダマイザを内蔵した半導体記憶装置において、ECC処理におけるデコード(Decode)動作とデランダマイズ(De−Randomize)動作を同時に実行でき、復元、かつ訂正されたデータの読み出し時間を短縮することができる。 Accordingly, the ECC data bus (first data bus) connected to the output of the page buffer can be used for the first operation mode (ECC mode). The ECC data bus is provided with a randomizer and an ECC circuit. Therefore, according to the semiconductor memory device of the present invention, in a semiconductor memory device incorporating an ECC circuit and a randomizer, a decoding operation and a de-randomizing operation in the ECC process can be executed simultaneously, restored, and The read time of corrected data can be shortened.
また、半導体記憶装置は、第1のページバッファのうちメモリセルまたはビット線に不良が有るページバッファの出力を固定されたデータとするページバッファ制御回路を有する。半導体記憶装置は、第1の動作モードでは、第1のページバッファのうち、メモリセルまたはビット線に不良が有るページバッファと、第2の動作モードでの救済置換を前提として存在する第3のページバッファとの間において救済置換を行わずに、ECC回路、及びランダマイザの入力データとして取り扱う。また、半導体記憶装置は、以下の第1のランダマイズ及びECC処理を実行する。すなわち、半導体記憶装置では、第1の動作モードのデータ書き込み動作において、ランダマイザは、第1のページバッファの出力データをランダマイズしてECC回路に入力し、ECC回路は、ランダマイザから入力されるデータに基づいて、パリティデータを生成して第2のページバッファにパリティデータを書き込む。一方、第1の動作モードのデータ読み出し動作において、ECC回路は、第2のページバッファのパリティデータに基づいて、第1のページバッファのデータを誤り訂正し、ランダマイザは訂正後のデータをデランダマイズして第1のページバッファに書き戻す。 The semiconductor memory device also includes a page buffer control circuit that uses the output of the page buffer having a defect in the memory cell or the bit line in the first page buffer as fixed data. In the first operation mode, the semiconductor memory device has a page buffer in which a memory cell or a bit line has a defect in the first page buffer and a third buffer existing on the premise of repair replacement in the second operation mode. The data is handled as input data of the ECC circuit and the randomizer without performing replacement replacement with the page buffer. In addition, the semiconductor memory device executes the following first randomization and ECC processing. That is, in the semiconductor memory device, in the data write operation in the first operation mode, the randomizer randomizes the output data of the first page buffer and inputs it to the ECC circuit, and the ECC circuit converts the data input from the randomizer to Based on this, parity data is generated and written to the second page buffer. On the other hand, in the data read operation in the first operation mode, the ECC circuit corrects the error in the data in the first page buffer based on the parity data in the second page buffer, and the randomizer derandomizes the corrected data. Then, write back to the first page buffer.
これにより、第1のページバッファのうちメモリセルまたはビット線に不良が有るページバッファについては、ランダマイザ、及びECC回路により誤りが訂正される。そのため、本発明の半導体記憶装置によれば、ECCのデコード処理とデランダマイズ処理とを高速に実行することができる。また、第1のページバッファのうちメモリセルまたはビット線に不良が有るページバッファについては、ECC回路により誤りが訂正されるので、救済機能を省略することができる。 As a result, for the page buffer in which the memory cell or the bit line is defective among the first page buffers, the error is corrected by the randomizer and the ECC circuit. Therefore, according to the semiconductor memory device of the present invention, ECC decoding processing and derandomization processing can be executed at high speed. Further, for the page buffer having a defect in the memory cell or the bit line in the first page buffer, the error is corrected by the ECC circuit, so that the relief function can be omitted.
また、半導体記憶装置は、第1のランダマイズ及びECC処理に替えて、以下の第2のランダマイズ及びECC処理を実行する。すなわち、半導体記憶装置では、第1の動作モードのデータ書き込み動作において、ランダマイザは、第1のページバッファの出力データをランダマイズして第1のページバッファに書き戻し、ECC回路は、第1のページバッファに書き戻されたデータに基づいて第2のページバッファにパリティデータを書き込む。一方、第1の動作モードのデータ読み出し動作において、ECC回路は、第2のページバッファのパリティデータに基づいて、第1のページバッファのデータを誤り訂正し、ランダマイザは訂正後のデータをデランダマイズして第1のページバッファに書き戻す。 In addition, the semiconductor memory device executes the following second randomization and ECC processing instead of the first randomization and ECC processing. That is, in the semiconductor memory device, in the data write operation in the first operation mode, the randomizer randomizes the output data of the first page buffer and writes it back to the first page buffer, and the ECC circuit outputs the first page buffer. Parity data is written to the second page buffer based on the data written back to the buffer. On the other hand, in the data read operation in the first operation mode, the ECC circuit corrects the error in the data in the first page buffer based on the parity data in the second page buffer, and the randomizer derandomizes the corrected data. Then, write back to the first page buffer.
これにより、第1のページバッファのうちメモリセルまたはビット線に不良が有るページバッファについては、誤りが発生しないように処理される。そのため、本発明の半導体記憶装置によれば、ECC処理の訂正処理能力を下げずに、ECCのデコード処理とデランダマイズ処理とを高速に実行することができる。 As a result, the page buffer having a defect in the memory cell or the bit line in the first page buffer is processed so as not to cause an error. Therefore, according to the semiconductor memory device of the present invention, ECC decoding processing and derandomization processing can be executed at high speed without reducing the correction processing capability of ECC processing.
以下、図面を参照して、本発明の実施の形態について説明する。なお、以下の説明において、同一の機能及び構成を有する要素については、同一符号を付し、重複説明は必要な場合にのみ行う。 Embodiments of the present invention will be described below with reference to the drawings. In the following description, elements having the same function and configuration are denoted by the same reference numerals, and redundant description will be given only when necessary.
図1は、本実施形態におけるNAND型フラッシュメモリのブロック構成を示す図である。図1に示すNAND型フラッシュメモリ10は、メモリアレイ101、PB(Page Buffer;ページバッファ)102、Column Coding Circuit(カラムコーディング回路)103、Main Column Repair MUX(カラム救済回路)104を備えている。また、NAND型フラッシュメモリ10は、Parity CR MUX(パリティカラム置換回路)105、ECC Column Coding Circuit(ECCカラムコーディング回路)108、I/O PAD(I/Oパッド)106を備えている。また、NAND型フラッシュメモリ10は、ECC Engine(ECC回路)107a、及びRandomize Mixer(ランダマイザ)107bを備えている。本実施形態においては、以下、ECC回路107a、及びランダマイザ107bを、一体化してランダマイザ、及びECC回路107と呼ぶことがある。
FIG. 1 is a diagram showing a block configuration of a NAND flash memory according to this embodiment. A
図1において、Data Bus_1、Data Bus_2、及びData Bus_3(第2のデータバス)は、データの受け渡しをページバッファ102とI/Oパッド106との間において行なう配線であり、以下、単にData_Busと呼ぶこともある。
I/Oパッド106(インターフェース部)は、例えばNAND型フラッシュメモリ10の制御を行なうナンドコントローラとの間で上記データの受け渡しを行なう外部端子である。
また、ECC Bus_1、ECC Bus_2、及びECC Bus_3(第1のデータバス)は、データの受け渡しをページバッファ102とランダマイザ、及びECC回路107との間において行なう配線であり、以下、単にECC_Busと呼ぶこともある。
In FIG. 1, Data Bus_1, Data Bus_2, and Data Bus_3 (second data bus) are wirings for transferring data between the
The I / O pad 106 (interface unit) is an external terminal that exchanges the data with, for example, a NAND controller that controls the
ECC Bus_1, ECC Bus_2, and ECC Bus_3 (first data bus) are wirings for transferring data between the
メモリアレイ101は、複数のメモリセルトランジスタを含んで構成される。これらの複数のメモリセルトランジスタ各々は、1ビットのデータを記憶する。メモリアレイ101において、同一のワード線に接続される複数のメモリセルトランジスタがページを構成する。1つのページにおけるメモリセルトランジスタへのデータの書き込み、及びメモリセルからのデータの読み出しは、一括して実行される。
The
NAND型フラッシュメモリ10は、図1に示すように、カラムコーディング回路103、及びECCカラムコーディング回路108を有する。カラムコーディング回路103とECCカラムコーディング回路108とでは、別系統のカラムアドレス(Coding)が入力される。また、カラムコーディング回路103とECCカラムコーディング回路108とは、後述するように、ページバッファ102のPB制御回路60に選択信号Sel_Aまたは選択信号Sel_Bを出力する。カラムコーディング回路103とECCカラムコーディング回路108は、ページバッファ102に直結した部分(図4(b)に示すマルチプレクサ52_b、及びPB制御回路60の部分)から、ページバッファの出力を、ECC Bus_1とData Bus_1とのいずれか一方のデータバスに接続する。
As shown in FIG. 1, the
カラムコーディング回路103は、図1において不図示のアドレス制御回路から入力されるカラムアドレスに基づいて、カラムアドレス信号(図4(b)に示すSub BL Coding、及びCoding)を生成し、このカラムアドレス信号に対応するページバッファ102のページバッファユニットを選択する。これにより、I/Oパッド106、Data Bus_3、Data Bus_2、及びData Bus_1、ビット回路(後述)、及びビット線を介してメモリセルトランジスタへデータが書きこまれる。また、メモリセルからのデータがビット線、ビット回路、Data Bus_1、Data Bus_2、及びData Bus_3を介してI/Oパッド106の外部へ読み出される。
The
一方、ECCカラムコーディング回路108は、ECC回路107aからカラムアドレス(以下、カラムアドレスAddress Bとする)が入力される。ECCカラムコーディング回路108は、不図示のアドレス制御回路からカラムコーディング回路103に入力されるカラムアドレス(以下、カラムアドレスAddress Aとする)とは独立して、PB制御回路60に対して選択信号Sel_Bを出力して、ページバッファ102の出力とECC Bus_1とを接続する。これにより、ページバッファ102の出力と、ECC Bus_1またはData Bus_1との接続におけるアドレス制御を独立して実行することができる。
On the other hand, the ECC
また、従来のNAND型フラッシュメモリでは、ページバッファの出力(データバスを以下、区別のためIOバスとする)を、第1の動作モードと第2の動作モードとにおいて共有している。これに対して、NAND型フラッシュメモリ10では、ページバッファの出力であるIOバスを、第1の動作モードと第2の動作モードとにおいて共有することなく、独立に設けている。
In the conventional NAND flash memory, the output of the page buffer (the data bus is hereinafter referred to as an IO bus for distinction) is shared in the first operation mode and the second operation mode. On the other hand, in the
これにより、ページバッファの出力からランダマイザ、及びECC回路107への入力までの径路において、後述するカラム置換回路104等の高速なデータ転送に悪影響を及ぼす回路は不要となり、データ転送を高速に行うことができる。また、第2のデータバスを、従来の救済効率に応じたバス幅にしておくことができる。これにより、カラム置換回路104の回路規模は増大しないので、チップサイズの増加を抑制できる。さらに、NAND型フラッシュメモリ10を、ECC回路を内蔵しないNAND型フラッシュメモリに設計変更する場合であっても、ECCカラムコーディング回路108、パリティカラム置換回路105、ECC Bus_1〜ECC Bus_3、ランダマイザ、及びECC回路107を削除すればよいので、容易に設計することができる。
As a result, in the path from the output of the page buffer to the input to the randomizer and the
ページバッファ102は、メモリアレイ101のページと同じ個数のデータを保持できるように構成されている。ページバッファ102は、図1に示すように、PB(Page Buffer)_Data102aと、PB_CR102bと、PB_Parity102cと、PB_PCR102dとから構成される。以下、PB(Page Buffer)_Data102aをページバッファ102aと、PB_CR102bをページバッファ102bと、PB_Parity102cをページバッファ102cと、PB_PCR102dをページバッファ102dと、それぞれ呼ぶものとする。
ページバッファ102aは、通常メモリセルに接続されるビット線の電位を増幅し、増幅結果をラッチするページバッファ(第1のページバッファ)である。また、ページバッファ102aは、通常モード(第2の動作モード)におけるデータ読み出し時に、カラムコーディング回路103から選択信号Sel_Aが入力される。ページバッファ102aは、増幅結果を読み出しデータData_Out_Aとして、Data Bus_1、Data Bus_2、及びData Bus_3(第2のデータバス)を介して、I/Oパッド106から出力する。
一方、ページバッファ102aは、ECCモード(第1の動作モード)におけるデータ読み出し時に、ECCカラムコーディング回路108から選択信号Sel_Bが入力される。ページバッファ102aは、増幅結果を読み出しデータData_Out_BとしてECC Bus_1、ECC Bus_2、及びECC Bus_3(第1のデータバス)を介して、ランダマイザ、及びECC回路107に対して出力する。
The
The
On the other hand, the
また、ページバッファ102aは、通常モードにおけるデータ書込み時に、カラムコーディング回路103から選択信号Sel_Aが入力される。ページバッファ102aは、I/Oパッド106から入力される書き込みデータがData Bus_3、Data Bus_2、及びData Bus_1を介して書き込みデータData_In_Aとして入力される。一方、ページバッファ102aは、ECCモードにおけるデータ書き込み時に、ECCカラムコーディング回路108から選択信号Sel_Bが入力される。ページバッファ102aは、ランダマイザ、及びECC回路107におけるECC回路107aのECC処理の結果がECC Bus_3、ECC Bus_2、及びECC Bus_1を介して書き込みデータData_In_Bとして入力される。
The
ページバッファ102bは、ページバッファ102aに接続される通常メモリセルまたはビット線に不良が有る場合に、通常メモリセル、及びビット線とともに置換されるページバッファ(第3のページバッファ)である。すなわち、ページバッファ102aを構成するページバッファユニットの1つに不良があった場合、このページバッファユニットは、ページバッファ102bを構成するページバッファユニットの1つに置換される。なお、ページバッファ102bの動作は、上述したページバッファ102aと同じ動作であるので、説明を省略する。
The
このページバッファ102aからページバッファ102bへのページバッファユニットの置換を行なうのが、カラム置換回路104である。カラム置換回路104は、ページバッファ102aにおける不良のページバッファユニットを選択するカラムアドレス(後述する選択信号Sel_A)がカラムコーディング回路103に入力される場合、カラムコーディング回路103がページバッファ102bにおけるページバッファユニットを選択するように制御を実行する。
The
ページバッファ102cは、パリティメモリセル(ECC処理用のメモリセルトランジスタ。ただし、構成は通常メモリセルと同じ)に接続されるビット線の電位を増幅し、増幅結果をラッチするページバッファ(第2のページバッファ)である。なお、パリティメモリセルが記憶するパリティデータは、通常モードでは、I/Oパッド106を介して外部に出力されない。ページバッファ102cは、ECCモードにおけるデータ読み出し時に、ECCカラムコーディング回路108から選択信号Sel_Bが入力される。ページバッファ102cは、増幅結果を読み出しデータData_Out_Bとして、ECC Bus_1、ECC Bus_2、及びECC Bus_3を介してECC回路107に対して出力する。
The
また、パリティメモリセルが記憶するパリティデータは、通常モードでは、I/Oパッド106を介して外部から入力されない。
ページバッファ102cは、ECCモードにおけるデータ書き込み時に、ECCカラムコーディング回路108から選択信号Sel_Bが入力される。ページバッファ102cは、ECC回路107のECC処理の結果であるパリティデータがECC Bus_3、ECC Bus_2、及びECC Bus_1を介して書き込みデータData_In_Bとして入力される。
The parity data stored in the parity memory cell is not input from the outside via the I /
The
ページバッファ102dは、ページバッファ102cに接続されるパリティメモリセルまたはビット線に不良が有る場合に、パリティメモリセル、及びビット線とともに置換されるページバッファ(第4のページバッファ)である。すなわち、ページバッファ102cを構成するページバッファユニットの1つに不良があった場合、このページバッファユニットは、ページバッファ102dを構成するページバッファユニットの1つに置換される。なお、ページバッファ102dの動作は、上述したページバッファ102cと同じ動作であるので、説明を省略する。
The
このページバッファ102cからページバッファ102dへのページバッファユニットの置換を行なうのが、パリティカラム置換回路105である。パリティカラム置換回路105は、ページバッファ102cにおける不良のページバッファユニットを選択するカラムアドレス(後述する選択信号Sel_B)がECCカラムコーディング回路108に入力される場合、ECCカラムコーディング回路108がページバッファ102dにおけるページバッファユニットを選択するように制御を実行する。
It is the parity
次に、図2は、ランダマイザ、及びECC回路107の詳細な構成例を示す図である。
本実施形態においては、ランダマイザ、及びECC回路107として、BCH符号(Bose−Chaudhuri Hocquenghem code)で代表されるガロア体演算を利用したECC回路を例にとって説明する。なお、BCH符号の替りに、例えばHamming符号(Hamming code)、リードソロモン符号(Reed−Solomon code)を用いることも可能である。なお、以下の説明では、情報データ長511ビットを訂正単位とし、それぞれの訂正単位のうちの4ビットのデータの訂正が可能なBCH符号を用いたECC回路について説明する。
ランダマイザ、及びECC回路107のうち、図1に示すECC回路107aは、データの復号を司るデコーダ部と、パリティデータを生成するエンコーダ部とを含んで構成される。
Next, FIG. 2 is a diagram illustrating a detailed configuration example of the randomizer and the
In the present embodiment, an explanation will be given by taking an ECC circuit using Galois field arithmetic represented by a BCH code (Bose-Chudhuri Hocquechem code) as an example of the randomizer and the
Of the randomizer and the
ECC回路107aのうち、デコーダ部は、Syndrome Calculation Circuit(シンドローム算出回路)31、Error−Coefficient Calculation Circuit(誤り係数算出回路)32、及びChien Search Circuit(チェン探索回路)33を含んで構成される。
シンドローム算出回路31は、NAND型フラッシュメモリ10のECCモードでのデータ読み出し時に、ページバッファ102に読み出されたメモリセルからのデータが、符号データLoad Data<510:0>として、例えばセクタ毎に入力される。シンドローム算出回路31は、この符号データLoad Data<510:0>を独立な最小多項式で除算することによりシンドロームを計算する。4ビットのデータの誤り訂正が可能なBCH符号で使用される独立な最小多項式は、4つである。シンドローム算出回路31は、これら4つの最小多項式に対応して、4つのシンドローム算出部を備えている。これらのシンドローム算出部は、それぞれシンドローム(ここではシンドロームS1、S3、S5、S7とする)を計算する。
In the
When the
誤り係数算出回路32は、これらのシンドロームS1、S3、S5、S7を使用して、セクタ毎のエラー位置探索方程式の係数(ここでは係数e4、e3、e2、e1、及びe0とする)を計算する。係数e4、e3、e2、e1、及びe0は、エラー位置探索方程式Λ(x)=e4x4+e3x3+e2x2+e1x1+e0の係数である。エラー位置探索方程式Λ(x)は、ページバッファ102からセクタ毎に読み出されたビットに誤りがあるか否かを探索する際にチェン探索回路33において用いられる。
The error
チェン探索回路33では、誤り係数算出回路32が算出する係数(エラー位置探索方程式の係数e0〜e4)を用いて、エラー位置探索方程式Λ(x)に、代入値xとして符号データLoad Data<510:0>の位置を示すアドレス(カラムアドレス)を代入して、エラー位置探索方程式Λ(x)が0になるか否かをチェックされる。また、チェン探索回路33は、このチェック結果に応じてエラー位置(Error Position)を示す信号であるエラー検出信号EP<510:0>を出力する。チェン探索回路33は、エラー検出信号EP<510:0>において、符号データLoad Data<510:0>のビットのうち、誤りがあったビットに対してはデータ1、誤りのなかったビットに対してはデータ0とする。
The
ランダマイザ107bには、NAND型フラッシュメモリ10のECCモードでのデータ読み出し時に、ECCカラムコーディング回路108がページバッファ102に選択信号Sel_B(カラムアドレス)を入力することにより、このカラムアドレスが示す位置のページバッファ102の符号データLoad Data<510:0>が入力される。ランダマイザ107bは、符号データLoad Data<510:0>とエラー検出信号EP<510:0>とを排他的論理和演算(EXOR)することにより、誤りのあったビットを反転し、誤りのなかったビットは反転されず、誤りのないデータを得ることができる。
In the
また、ランダマイザ107bは、排他的論理和演算により得られた誤りのないデータと、不図示のランダムシード発生回路によって発生したランダムシードRS<510:0>(シード)とを、更に排他的論理和演算することにより、すなわちデランダマイズ(De−Randomize)する。ランダマイザ107bは、符号データLoad Data<510:0>をエンコード前の状態に復元する。ランダマイザ107bは、符号データLoad Data<510:0>を復元したデータである、復元済の符号データStore Data<510:0>をページバッファ102に書き込む。
The
以上説明したECCモードでのデータ読み出し動作(デコード、及びデランダマイズ)におけるデータの流れは、図2において、実線(Decodeでのデータの流れを示す)、及び一点鎖線(Encode/Decode共通のデータの流れを示す)により示される。また、ECCモードでのデータ読み出し動作における処理において、ページバッファ102への書き込みデータである符号データStore Dataは、数学的に下記の式で表される。なお、この式では、排他的論理和演算をXORで表すこととして、ページバッファ102からの読み出しデータである符号データLoad Data、エラー検出信号EP、及びランダムシードRSを用いている。
すなわち、
Store Data=(Load Data)XOR(EP)XOR(RS)
で表わされる。
なお、この符号データStore Dataは、通常モードのデータ読み出し動作においては、カラムコーディング回路103から選択信号Sel_A(カラムアドレス)をページバッファ102に与えることにより、パリティデータを除くデータを、I/Oパッド106を介して外部に出力することができる。
The data flow in the data read operation (decoding and derandomization) in the ECC mode described above is shown in FIG. Shows the flow). In the processing in the data read operation in the ECC mode, the code data Store Data that is the write data to the
That is,
Store Data = (Load Data) XOR (EP) XOR (RS)
It is represented by
In the normal mode data read operation, this code data Store Data is supplied with a selection signal Sel_A (column address) from the
また、ECC回路107aのうち、エンコーダ部40は、Parity Generation Circuit(パリティ生成回路)41を有する。パリティ生成回路41は、ランダマイザ107bから入力されるランダマイズ処理後のデータを生成多項式で除算して、パリティデータを生成し、生成したパリティデータを、ページバッファ102(後述するページバッファ102c)に対して出力する。
ECCモードでのデータ書込み動作(エンデコード、及びランダマイズ)では、ランダマイザ107bは、ページバッファ102から入力される、符号データLoad Data<510:0>をランダマイズする処理を行う。この際、ランダマイザ107bでは、エラー検出信号EP<510:0>を固定データ(オール0)とし、すなわちエラー検出信号EP<510:0>=0とする。ランダマイザ107bは、符号データLoad Data<510:0>と、ランダムシードRS<510:0>と、エラー検出信号EP<510:0>との排他的論理和演算を実行し、パリティ生成回路41に対して出力する符号データStore Dataを生成する。
In the
In the data write operation (end decoding and randomization) in the ECC mode, the
このパリティ生成回路41への書き込みデータである符号データStore Dataは、数学的に下記の式で表される。なお、この式では、排他的論理和演算をXORで表すこととして、ページバッファ102からの読み出しデータである符号データLoad Data、エラー検出信号EP、及びランダムシードRSを用いている。
すなわち、デコード時と同じく、
Store Data=(Load Data)XOR(EP)XOR(RS)
で表わされる。
また、パリティ生成回路41は、ランダマイザ107bから入力される符号データStore Dataからパリティデータを生成する。
ランダマイザ107bは、パリティデータを除く符号データStore Dataを、パリティ生成回路41は、パリティデータを、ページバッファ102に対して出力する。これらの合成したデータが符号データStore Dataとして、ページバッファ102に書き込まれる。
The code data Store Data, which is data to be written to the
That is, as with decoding,
Store Data = (Load Data) XOR (EP) XOR (RS)
It is represented by
In addition, the
The
このように、ECC回路107aとランダマイザ107bとを一体的に構成し、図1に示す様にECC Busに設けたので、ECCのエンコード時にランダマイズ、及びエンコードを、デコード時にデコード、及びデランダマイズを、それぞれ同時に実行することができる。
In this way, the
図1に戻って、ページバッファ102を構成するページバッファ102a〜102dは、全て同一の回路構成からなり、以下にその回路構成について、図3〜図7を用いて詳細に説明する。図3は、図1に示すページバッファ102、カラムコーディング回路103、及びECCカラムコーディング回路108に対応する部分の簡略的な構成を示す図である。また、図4は、図2に示すPB 4IO ユニットの内部の構成、及びPB ユニットの内部の構成を示す図である。また、図5は、PB ユニットの内部の回路構成を示す図である。また、図6は、PB ユニットの内部の他の回路構成を示す図である。また、図7は、図5、及び図6に示すビット内部回路50_i(i=0〜7の整数)の回路構成を示す図である。
Returning to FIG. 1, the
図3を参照して、図1に示すページバッファ102、カラムコーディング回路103、及びECCカラムコーディング回路108に対応する部分は、4本分のIO線からの4つのデータをラッチし、4本分のIO線に対してデータを書き込むPB 4IO ユニットを有する。
Referring to FIG. 3, portions corresponding to
図3においては、10個のPB 4IOとして、PB0 IO 0123、PB0 IO 4567、PB1IO 0123、PB1 IO 4567、PB2 IO 0123、PB2 IO 4567、PB3 IO 0123、PB3 IO 4567、PB4 IO 0123、PB4 IO 4567を示している。以下、PB0 IO 0123をPB 4IO ユニット30_0、PB0 IO 4567をPB 4IO ユニット30_1、PB1IO 0123をPB 4IO ユニット30_2、PB1 IO 4567をPB 4IO ユニット30_3、PB2 IO 0123をPB 4IO ユニット30_4、と呼ぶことがある。また、PB2 IO 4567をPB 4IO ユニット30_5、PB3 IO 0123をPB 4IO ユニット30_6、PB3 IO 4567をPB 4IO ユニット30_7、PB4 IO 0123をPB 4IO ユニット30_8、PB4 IO 4567をPB 4IO ユニット30_9と呼ぶことがある。
In FIG. 3, as 10 PB 4IOs,
ここで、IO線とは、後述するPBユニットにおいて、マルチプレクサ52_bとPB制御回路60との間に設けられる入出力線である。このIO線は、本実施形態では、マルチプレクサ52_bと8個のビット回路51_0a〜51_7aとを介して、8本のビット線のいずれか一本と電気的に接続される。すなわち、IO線は、メモリセルトランジスタに書き込むデータ或いはメモリセルトランジスタから読み出されるデータが行き来する信号線である。
Here, the IO line is an input / output line provided between the multiplexer 52_b and the
図4(a)を参照して、図3に示すPB 4IO ユニットは、同一の構成を有している。図4(a)では、図3に示すPB 4IO ユニット30_0を代表として、その構成を示している。PB 4IO ユニット30_0は、4個のPBユニット30_00〜30_03から構成される。
PBユニット30_00〜30_03各々は、活性レベル(以下、例としてHレベルとする)の選択信号Sel_A<0>がカラムコーディング回路103から供給されると、自身に接続される1本のIO線とData Bus(第2のデータバス;後述するデータバスData_A<7:0>)とを接続する。これにより、図4(a)に示すように、4本のIO線からデータバスData_A<3:0>へ、4ビットの読み出しデータData_Out_A<0>〜Data_Out_A<3>が読み出される。
Referring to FIG. 4A, the PB 4IO unit shown in FIG. 3 has the same configuration. FIG. 4A shows the configuration of the PB 4IO unit 30_0 shown in FIG. 3 as a representative. The PB 4IO unit 30_0 includes four PB units 30_00 to 30_03.
Each of the PB units 30_00 to 30_03 is supplied with one IO line connected to itself and Data when a selection signal Sel_A <0> of an active level (hereinafter referred to as H level) is supplied from the
また、PBユニット30_00〜30_03各々は、活性レベル(以下、例としてHレベルとする)の選択信号Sel_B<0>がECCカラムコーディング回路108から供給されると、自身に接続される1本のIO線とECC Bus(第1のデータバス;後述するデータバスData_B<19:0>)とを接続する。これにより、図4(a)に示すように、4本のIO線からデータバスData_B<3:0>へ、4ビットの読み出しデータData_Out_B<0>〜Data_Out_B<3>が読み出される。
Each of the PB units 30_00 to 30_03 is supplied with an IO level selection signal Sel_B <0> from the ECC
図4(b)を参照して、図4(a)に示すPBユニット各々は、回路構成が同一である8個のビット回路51_0a〜51_7aと、マルチプレクサ52_bと、本願に特徴的部分であるPB Control Cirucuit(ページバッファ制御回路)60とから構成される。
MUX(マルチプレクサ)52_bは、図1に示すカラムコーディング回路103またはECCカラムコーディング回路108からカラムアドレス信号(Sub BL Coding)が入力される。MUX(マルチプレクサ)52_bは、このカラムアドレス信号(図5において選択信号DIO<i>で示す)に基づいて、ビット回路51_0a〜ビット回路51_7aのうちいずれか一つを選択する。すなわち、マルチプレクサ52_bは、8本のビット線のうちのいずれか一本のビット線を、PB Control Circuit(PB制御回路)60と接続する。
Referring to FIG. 4B, each of the PB units shown in FIG. 4A includes eight bit circuits 51_0a to 51_7a having the same circuit configuration, a multiplexer 52_b, and a PB which is a characteristic part of the present application. It is composed of a control circuit (page buffer control circuit) 60.
The MUX (multiplexer) 52_b receives a column address signal (Sub BL Coding) from the
まず、図5、及び図7を参照して、1つのPBユニットの詳細な回路構成について説明する。
図7では、図5に示すビット内部回路50_0〜50_7各々の回路における、書き込み動作におけるデータのセンシング部、及びラッチ部、読み出し動作における信号線を駆動するドライバ部の構成を、具体的にトランジスタ、及びインバータ回路を用いて記載している。なお、図4(b)に示すビット回路51_0a〜51_7aとマルチプレクサ52_bとを合わせた回路が、ビット内部回路50_0〜50_7に相当する。すなわち、ビット内部回路は、選択信号DIOにより選択されるので、ビット回路とマルチプレクサ52_bの一部の機能を有している。
First, a detailed circuit configuration of one PB unit will be described with reference to FIGS. 5 and 7.
In FIG. 7, in each of the bit
図7に示すように、ビット内部回路50_i(iを整数として、i=0〜7の8台は同一構成の回路である)は、インバータ回路511、インバータ回路512、トランジスタ513、トランジスタ514、トランジスタ515、トランジスタ521、及びトランジスタ522から構成される。ここで、トランジスタ513、トランジスタ514、トランジスタ515、トランジスタ521、及びトランジスタ522は、Nチャネル型MOS(Metal Oxide Semiconductor)トランジスタである。
As shown in FIG. 7, the bit
ビット内部回路50_iにおいて、ラッチ部は、インバータ回路511とインバータ回路512とから構成されている。ここで、インバータ回路511は、出力端子が接続点N2においてインバータ回路512の入力端子に接続され、入力端子が接続点N1においてインバータ回路512の出力端子に接続されている。
この接続点N1は、不図示のメモリセルトランジスタにビット線を介して接続される。接続点N1は、読み出し動作において、メモリセルトランジスタが記憶するデータがData_iとして現れ、書き込み動作においてはメモリセルに書き込むべきデータがData_iとして現れる。例えば、メモリセルトランジスタがL(ロウ)レベル(データ0とする)を記憶するとき、Data_iの電位はLレベルとなり、一方、メモリセルトランジスタがH(ハイ)レベル(データ1とする)を記憶するとき、Data_iの電位はHレベルとなる。
In the bit internal circuit 50_i, the latch unit includes an
This connection point N1 is connected to a memory cell transistor (not shown) via a bit line. At the connection point N1, data stored in the memory cell transistor appears as Data_i in the read operation, and data to be written in the memory cell appears as Data_i in the write operation. For example, when the memory cell transistor stores L (low) level (data 0), the potential of Data_i is L level, while the memory cell transistor stores H (high) level (data 1). At this time, the potential of Data_i becomes H level.
ビット内部回路50_iにおいて、ドライバ部は、トランジスタ515、及びトランジスタ522から構成される。
トランジスタ522は、ドレインが読み出し信号RDの配線に接続され、ゲートが選択信号DIO<i>の配線に接続され、ソースがトランジスタ515のドレインに接続されている。
トランジスタ515は、ドレインがトランジスタ522のソースに接続され、ゲートが接続点N2に接続され、ソースが接地されている。
ここで、選択信号DIO<i>(i=0〜7)は、図4(b)に示すSub BL Codingである。例えば、カラムコーディング回路103は不図示のアドレス制御回路から入力される3ビットのアドレス信号に基づいて、或いはECCカラムコーディング回路108はECC回路107から入力される3ビットのアドレス信号に基づいて、選択信号DIO<i>のうちの1つの信号をHレベルとする。これにより、図5に示すビット内部回路50_0〜50_7の1つのビット内部回路が選択される。
In the bit internal circuit 50_i, the driver unit includes a transistor 515 and a
The
The transistor 515 has a drain connected to the source of the
Here, the selection signal DIO <i> (i = 0 to 7) is Sub BL Coding shown in FIG. For example, the
以上の構成により、メモリセルトランジスタからのデータ読み出し動作において、選択信号DIO<i>がHレベルになると、読み出し信号RDの論理レベルはData_iの論理レベルと同じ論理レベルとなる。つまり、例えば読み出し信号RDをHレベルにプリチャージしておくことにより、Data_iがHレベルのときは、トランジスタ515がオフ(非導通状態)、トランジスタ522がオン(導通状態)であり、ビット内部回路50_iは、読み出し信号RDをHレベルに維持する。一方、Data_iがLレベルのときは、トランジスタ515がオン、トランジスタ522がオンであり、ビット内部回路50_iは、読み出し信号RDをHレベルからLレベルに変化させる。
読み出し信号RDの配線は、図5に示すように、PB制御回路60に接続される。
第1の動作モード(ECCモード)では、選択信号Sel_B(ECCカラムコーディング回路108が出力するカラムアドレス)が入力されると、読み出し信号RDの配線はECC Busに接続される。これにより、ECC Busには、ビット内部回路50_iのData_iがデータ読み出し信号Data_Out_Bとして読み出される。
With the above configuration, in the data read operation from the memory cell transistor, when the selection signal DIO <i> becomes H level, the logical level of the read signal RD becomes the same logical level as that of Data_i. That is, for example, by precharging the read signal RD to H level, when Data_i is at H level, the transistor 515 is off (non-conducting state), the
The wiring of the read signal RD is connected to the
In the first operation mode (ECC mode), when the selection signal Sel_B (column address output from the ECC column coding circuit 108) is input, the wiring of the read signal RD is connected to the ECC Bus. As a result, Data_i of the bit internal circuit 50_i is read out to the ECC Bus as the data read signal Data_Out_B.
一方、第2の動作モード(通常モード)では、選択信号Sel_A(カラムコーディング回路103が出力するカラムアドレス)が入力されると、読み出し信号RDの配線は、Data Busに接続される。これにより、Data Busには、ビット内部回路50_iのData_iがデータ読み出し信号Data_Out_Aとして読み出される。 On the other hand, in the second operation mode (normal mode), when the selection signal Sel_A (column address output from the column coding circuit 103) is input, the wiring of the read signal RD is connected to the Data Bus. As a result, Data_i of the bit internal circuit 50_i is read to the Data Bus as the data read signal Data_Out_A.
図7に戻って、ビット内部回路50_iにおいて、センシング部は、トランジスタ513、トランジスタ514、トランジスタ521から構成される。
トランジスタ513は、ドレインが接続点N1に接続され、ゲートが書き込み信号DIの配線に接続され、ソースがトランジスタ521のドレインに接続されている。
トランジスタ514は、ドレインが接続点N2に接続され、ゲートが書き込み信号nDIの配線に接続され、ソースがトランジスタ521のドレインに接続されている。
トランジスタ521は、ドレインがトランジスタ513のソース、及びトランジスタ514のソースに接続され、ゲートが選択信号DIO<i>の配線に接続され、ソースが接地されている。
Returning to FIG. 7, in the bit
The
The
The
書き込み信号DI、及び書き込み信号nDIの配線は、図5に示すように、PB制御回路60に接続される。後述するように、第1の動作モードでは選択信号Sel_BによりデータバスECC Busに接続され、ECC Busからデータ書き込み信号Data_In_Bが入力される。これにより、PB制御回路60では、このデータ書き込み信号Data_In_Bのレベルに応じて書き込み信号DI、及び書き込み信号nDIのいずれか一方をLレベルからHレベルに変化させ、他方をLレベルに維持する。
一方、第2の動作モードでは、選択信号Sel_AによりData Busに接続され、Data Busからデータ書き込み信号Data_In_Aが入力される。これにより、PB制御回路60は、このデータ書き込み信号Data_In_Aのレベルに応じて書き込み信号DI、及び書き込み信号nDIのいずれか一方をLレベルからHレベルに変化させ、他方をLレベルに維持する。
The wiring for the write signal DI and the write signal nDI is connected to the
On the other hand, in the second operation mode, the selection signal Sel_A is connected to the Data Bus, and the data write signal Data_In_A is input from the Data Bus. Thus, the
以上の構成により、メモリセルトランジスタへのデータ書き込み動作において、選択信号DIO<i>がHレベルになると、書き込み信号DI、及び書き込み信号nDIのレベルに応じて、ビット内部回路50_iのData_iのレベルが決定する。具体的には、データ書き込み信号Data_In_A,またはデータ書き込み信号Data_In_BがLレベル(データ0)のとき、PB制御回路60は、書き込み信号DIをHレベル、書き込み信号nDIをLレベルとする。これにより、ビット内部回路50_iでは、トランジスタ513がオンし、トランジスタ514がオフする。そして、接続点N1はLレベル、接続点N2はHレベルとなり、Data_iの論理は、データバスの論理と同じくLレベル(データ0)となる。
With the above configuration, when the selection signal DIO <i> becomes H level in the data write operation to the memory cell transistor, the level of Data_i of the bit internal circuit 50_i is set according to the level of the write signal DI and the write signal nDI. decide. Specifically, when the data write signal Data_In_A or the data write signal Data_In_B is at L level (data 0), the
一方、データ書き込み信号Data_In_A,またはデータ書き込み信号Data_In_BがHレベル(データ1)のとき、PB制御回路60は、書き込み信号DIをLレベル、書き込み信号nDIをHレベルとする。これにより、ビット内部回路50_iでは、トランジスタ513がオフし、トランジスタ514がオンする。そして、接続点N1はHレベル、接続点N2はLレベルとなり、Data_iの論理は、データバスの論理と同じくHレベル(データ1)となる。
On the other hand, when the data write signal Data_In_A or the data write signal Data_In_B is at the H level (data 1), the
図7に戻って、PB制御回路60(転送部)の構成を説明する。
PB制御回路60は、データバスからページバッファへのデータ転送を実行する書き込み部と、ページバッファからデータバスへのデータ転送を実行する読み出し部とからなる。
このうち、PB制御回路60の読み出し部は、トランジスタ61a、及びトランジスタ61bから構成される。
トランジスタ61a、及びトランジスタ61bは、NMOSトランジスタである。
トランジスタ61aは、ドレインが読み出し信号RDの配線に接続され、ゲートが選択信号Sel_Aの配線に接続され、ソースがData Bus(第2のデータバス)に接続されている。トランジスタ61bは、ドレインが読み出し信号RDの配線に接続され、ゲートが選択信号Sel_Bの配線に接続され、ソースがECC Bus(第1のデータバス)に接続されている。
Returning to FIG. 7, the configuration of the PB control circuit 60 (transfer unit) will be described.
The
Among these, the reading unit of the
The
The transistor 61a has a drain connected to the wiring for the read signal RD, a gate connected to the wiring for the selection signal Sel_A, and a source connected to the Data Bus (second data bus). The
ここで、選択信号Sel_Aは、カラムコーディング回路103が、図1において不図示のアドレス制御回路から入力されるAddress A、例えば複数ビットのアドレスに基づいて生成するカラムアドレス信号である。また、選択信号Sel_Bは、ECCカラムコーディング回路108が、図1に示すECC回路107から入力されるAddress B、例えば上記複数ビットのうちの一部のビットのアドレスに基づいて生成するカラムアドレス信号である。
Here, the selection signal Sel_A is a column address signal generated by the
このように、PB制御回路60の読み出し部は、ECCモード(第1の動作モード)のデータ読み出し時において、Hレベルの選択信号Sel_BがECCコーディング回路108から入力されると、トランジスタ61bをオンさせて読み出し信号RDの配線とECC Busとを接続する。これにより、ビット内部回路50_0〜50_7に格納されたメモリセルトランジスタのデータ(ビット内部回路ではData_i)が、ECC Busにデータ読み出し信号Data_Out_Bとして出力される。
As described above, when the H-level selection signal Sel_B is input from the
また、PB制御回路60の読み出し部は、通常モード(第2の動作モード)のデータ読み出し時において、Hレベルの選択信号Sel_Aがコーディング回路103から入力される。PB制御回路60の読み出し部は、トランジスタ61aをオンさせて読み出し信号RDの配線とData Busとを接続する。これにより、ビット内部回路50_0〜50_7に格納されたメモリセルトランジスタのデータが、Data Busにデータ読み出し信号Data_Out_Aとして出力される。
In addition, the reading unit of the
また、PB制御回路60の読み出し部は、ページバッファ102a、及びページバッファ102cにおいて、メモリセルトランジスタ、またはメモリセルトランジスタに接続されるビット線に不良がある場合、次の構成を有している。すなわち、ECCモードのデータ読み出し時において、ECC回路107に入力するデータが固定データ(この場合はデータ0に固定する)となるように、PB制御回路60の読み出し部は、図5に示すように、不良情報格納部90a、及びデータ固定部90bを有している。
The read unit of the
不良情報格納部90aは、インバータ回路92、インバータ回路93、トランジスタ94、トランジスタ95、及びトランジスタ96から構成される。ここで、トランジスタ94、トランジスタ95、及びトランジスタ96は、Nチャネル型MOSトランジスタである。
不良情報格納部90aにおいて、ラッチ部は、インバータ回路92とインバータ回路93とから構成されている。ここで、インバータ回路92は、出力端子が接続点N4においてインバータ回路93の入力端子に接続され、入力端子が接続点N3においてインバータ回路93の出力端子に接続されている。
この接続点N3は、アンド回路91の第1入力端子に接続される。接続点N3は、ラッチ部が記憶するデータが、欠陥を示す欠陥信号PB_Defcetとして現れる。また、接続点N4は、ラッチ部が記憶するデータが、欠陥を示す欠陥信号nPB_Defcetとして現れる。
The defect
In the defect
The connection point N3 is connected to the first input terminal of the AND
不良情報格納部90aにおいて、センシング部は、トランジスタ94、トランジスタ95、トランジスタ96から構成される。
トランジスタ94は、ドレインが接続点N3に接続され、ゲートが不良情報信号SDIの配線に接続され、ソースがトランジスタ96のドレインに接続されている。
トランジスタ95は、ドレインが接続点N4に接続され、ゲートが不良情報信号nSDIの配線に接続され、ソースがトランジスタ96のドレインに接続されている。
トランジスタ96は、ドレインがトランジスタ94のソース、及びトランジスタ95のソースに接続され、ゲートがパワーオンリセット信号POR_Modeの配線に接続され、ソースが接地されている。
In the defect
The
The
The
ここで、不良情報信号SDI、及び不良情報信号nSDIは、PB制御回路60に接続されるビット線、当該ビット線に接続されるメモリセルトランジスタに不良が有るか否かを示す信号である。これらの不良情報信号は、製造後のテストにおいて、PB制御回路60に接続されるビット線等に不良が有る場合、不良情報信号SDIがデータ0(Lレベル)、不良情報信号nSDIがデータ1(Hレベル)とされる。一方、PB制御回路60に接続されるビット線等に不良がない場合、不良情報信号SDIがHレベル、不良情報信号nSDIがLレベルとされる。そして、これらの不良情報信号は、テスト後の製品出荷前において、PB制御回路60の位置を示す選択信号Sel_Bに関連付けられて、NAND型フラッシュメモリ10の例えばシステム用記憶領域に格納される。
また、パワーオンリセット信号POR_Modeは、NAND型フラッシュメモリ10の電源投入後の所定期間(不良情報信号をシステム用記憶領域からPB制御回路60に転送する期間)、Hレベルを維持する信号である。
Here, the defect information signal SDI and the defect information signal nSDI are signals indicating whether or not there is a defect in the bit line connected to the
The power-on reset signal POR_Mode is a signal that maintains the H level for a predetermined period after the power to the
以上の構成により、不良情報格納部90aは、NAND型フラッシュメモリ10の電源投入後に、PB制御回路60に接続されるビット線等に不良が有る場合、パワーオンリセット信号POR_ModeがHレベルとなることにより、トランジスタ94がオフ、トランジスタ95がオンする。これにより、ノードN3がHレベル、ノードN4がLレベルとなり、欠陥信号PB_DefcetがHレベルとなる。そして、不良情報格納部90aは、転送期間終了後、パワーオンリセット信号POR_ModeがLレベルとなることにより、以降のNAND型フラッシュメモリ10に電源が投入されている期間、欠陥信号PB_DefcetをHレベルに維持する。
With the above configuration, the defect
また、不良情報格納部90aは、NAND型フラッシュメモリ10の電源投入後に、PB制御回路60に接続されるビット線等に不良がない場合、パワーオンリセット信号POR_ModeがHレベルとなることにより、トランジスタ94がオン、トランジスタ95がオフする。これにより、ノードN3がLレベル、ノードN4がHレベルとなり、欠陥信号PB_DefcetがLレベルとなる。そして、不良情報格納部90aは、転送期間終了後、パワーオンリセット信号POR_ModeがLレベルとなることにより、以降のNAND型フラッシュメモリ10に電源が投入されている期間、欠陥信号PB_DefcetをLレベルに維持する。
In addition, when the
また、データ固定部90bは、アンド回路91、トランジスタ61cを有している。ここで、トランジスタ61cは、NMOSトランジスタである。
アンド回路91は、2入力1出力の論理積回路であり、第1入力端子が接続点N3に接続され、第2入力端子が選択信号Sel_Aの配線に接続され、出力端子は、トランジスタ61cのゲートに接続される。
トランジスタ61cは、ドレインが読み出し信号RDの配線に接続され、ゲートがアンド回路91の出力端子に接続され、ソースが接地されている。
The
The AND
The
以上の構成により、PB制御回路60に接続されるビット線等に不良がない場合、データ固定部90bは、欠陥信号PB_DefcetがLレベルであるから、アンド回路91の出力信号は常にLレベルであり、トランジスタ61cはオフする。このため、データ固定部90bは実質何の動作も行わない。
一方、PB制御回路60に接続されるビット線等に不良が有る場合、欠陥信号PB_DefcetがHレベルとなっている。ECC使用時、すなわちECCモードではアンド回路91にHレベルの選択信号Sel_Bが入力されると、アンド回路91の出力信号がHレベルとなり、トランジスタ61cがオンするので、ECC Bus_1は接地され、読み出しデータData_Out_BはLレベル(GNDレベル)に固定される。つまり、PB制御回路60に接続されるビット線等に不良がある場合、ECCモードではPB制御回路は、ECC Bus_1に固定レベル(Lレベル)の読み出しデータData_Out_Bを出力するデータ固定回路として動作する。
With the above configuration, when there is no defect in the bit line or the like connected to the
On the other hand, when the bit line connected to the
なお、通常モードでのデータ読み出し時は、PB制御回路60は選択信号Sel_Aで選択されるので、アンド回路91の出力はLレベルとなり、この追加回路であるデータ固定部90bは実質動作しないことになる。もっとも、このアンド回路91を使用せず、欠陥信号PB_Defectを直接トランジスタ91cのゲートに入力すれば、PB制御回路60に接続されるビット線等に不良が有る場合、読み出し信号RDはLレベルに固定される。つまり、PB制御回路60は、通常モードで選択信号Sel_Aが入力されると、Data Bus_1に固定レベル(Lレベル)の読み出しデータData_Out_Aを出力し、ECCモードで選択信号Sel_Bが入力されると、Lレベルの読み出しデータData_Out_Bを出力するデータ固定回路として動作する。
Note that when reading data in the normal mode, the
なお、図5に示す不良情報格納部90a、及びデータ固定部90bの構成は、図6に示す構成であってもよい。図6は、PB ユニットの内部の他の回路構成を示す図である。
なお、図6において図5と同一の部分には同一の符号を付し、その説明を省略する。
図6において、不良情報格納部90aついては図5に示すものと同じ構成だが、データ固定部90bについては、データ固定部90b’としている。なお、不良情報格納部90aついて、接続点N4に現れる信号を欠陥信号nPB_Defectとしている。
データ固定部90b’は、トランジスタ61cのみから構成される。トランジスタ61cは、ソースがECC Bus(第1のデータバス)に接続されている。また、これにより、トランジスタ61bは、ドレインが読み出し信号RDの配線に接続され、ゲートが選択信号Sel_Bの配線に接続され、ソースがトランジスタ61cのドレインに接続されている。
The configuration of the defect
In FIG. 6, the same parts as those in FIG.
In FIG. 6, the defect
The
この構成により、PB制御回路60に接続されるビット線等に不良が有る場合、欠陥信号nPB_DefectがLレベルとなるので、トランジスタ61cがオフとなり、読み出し信号RDのECC Bus_1への伝送パスが断たれることになる。このため、読み出しデータData_Out_Bは、Pull Up回路によりHレベルに固定される。一方、PB制御回路60に接続されるビット線等に不良がない場合、欠陥信号nPB_DefectはHレベルとなり、トランジスタ61cが常時オンとなる。これにより、読み出し信号RD、つまりメモリセルトランジスタのデータを、ECC Bus_1へ読み出しデータData_Out_Bとして読み出すことができる。
データ固定部90b’は、図6に示すデータ固定部90bと比較して、読み出し信号RDの配線とECC Bus_1との間で、トランジスタ61bとトランジスタ61cとが
直列回路となるが、アンド回路を不要とできるメリットがある。
With this configuration, when the bit line connected to the
Compared with the
また、図6に示すデータ固定部90b’において、例えばトランジスタ61cを、読み出し信号RDの配線とトランジスタ61a、及びトランジスタ61bのドレインとの間、すなわち読み出し信号RDの配線とPB制御回路60との間に挿入する。このようにすれば、PB制御回路60は、通常モードで選択信号Sel_Aが入力されると、Data Bus_1に固定レベル(Hレベル)の読み出しデータData_Out_Aを出力する。一方、PB制御回路60は、ECCモードで選択信号Sel_Bが入力されると、Hレベルの読み出しデータData_Out_Bを出力するデータ固定回路として動作する。
以上のような回路構成により、PB制御回路60に接続されるビット線等に不良が有る場合、データData_Out_AまたはBデータData_Out_BをLレベルまたはHレベルの固定値とすることができる。
In the
With the circuit configuration as described above, when a bit line connected to the
図5に戻って、PB制御回路60の書き込み部は、インバータ回路62、インバータ回路63、ナンド回路64、ナンド回路65、オア回路66、インバータ回路67、スイッチ68、及びスイッチ69から構成される。
インバータ回路62は、論理反転回路であり、出力端子が書き込み信号DIの配線に接続され、入力端子がナンド回路64の出力端子に接続される。インバータ回路63は、論理反転回路であり、出力端子が書き込み信号nDIの配線に接続され、入力端子がナンド回路65の出力端子に接続される。
Returning to FIG. 5, the writing unit of the
The
ナンド回路64は、3入力1出力の否定的論理積回路であり、第1入力端子が書き込みイネーブル信号fDinEnableの配線に接続され、第2入力端子がオア回路66の出力端子に接続され、第3入力端子がインバータ回路67の出力端子に接続される。また、ナンド回路64の出力端子は、インバータ回路62の入力端子に接続される。
ナンド回路65は、3入力1出力の否定的論理積回路であり、第1入力端子が書き込みイネーブル信号fDinEnableの配線に接続され、第2入力端子がオア回路66の出力端子に接続され、第3入力端子がスイッチ68の第1入出力端子、及びスイッチ69の第1入出力端子に接続される。また、ナンド回路65の出力端子は、インバータ回路63の入力端子に接続される。
The
The
オア回路66は、2入力1出力の論理和回路であり、第1入力端子がアンド回路71の出力に接続され、第2入力端子が選択信号Sel_Aの配線に接続される。また、オア回路66の出力端子は、ナンド回路64の第2入力端子、及びナンド回路65の第2入力端子に接続される。アンド回路71は、選択信号Sel_Bと欠陥信号nPB_Defectとの論理積を演算する。これにより、欠陥信号nPB_DefectがHレベルの場合(不良でない場合)は、選択信号Sel_BがHレベルになることにより、ナンド回路65の第2入力端子がHレベルとなり、書き込みの条件の1つを満たすことができる。一方、欠陥信号nPB_DefectがLレベルの場合(不良ページバッファである)は選択信号Sel_Bの動作モードにおいて、ナンド回路65の第2入力端子がHレベルになることはなく、書き込みが行われなくなる。
インバータ回路67は、論理反転回路であり、入力端子がスイッチ68の第1入出力端子、及びスイッチ69の第1入出力端子に接続され、出力端子がナンド回路64の第3入力端子に接続される。
The OR
The
スイッチ68は、双方向に信号を伝達するスイッチであり、第1入出力端子がインバータ回路67の入力端子、及びナンド回路65の第3入力端子に接続され、第2入出力端子がData Busに接続される。
スイッチ69は、双方向に信号を伝達するスイッチであり、第1入出力端子がインバータ回路67の入力端子、及びナンド回路65の第3入力端子に接続され、第2入出力端子がECC Busに接続される。なお、上記双方向スイッチがどちらも非選択の場合にインバータ回路67の入力が不定にならないように、インバータ回路67の入力がPMOSトランジスタによりPull Up(プルアップ)処理される。
The
The
以上の構成により、PB制御回路60の書き込み部は、ECCモード(第1の動作モード)のデータ書き込み時において、書き込みイネーブル信号fDinEnableがHレベルに、選択信号Sel_BがHレベルになると、スイッチ69がオンする。これにより、PB制御回路60の書き込み部は、ECC Busから入力されるデータ書き込み信号Data_In_Bのレベルに応じて、書き込み信号DI、及び書き込み信号nDIのいずれか一方をLレベルからHレベルに変化させる。具体的には、データ書き込み信号Data_In_BがLレベル(データ0)のとき、書き込み信号DIをHレベルに変化させる。これにより、ビット内部回路50_0〜50_7のうち、いずれか1つのビット内部回路のData_iが、Lレベルになり、その後のプログラム処理により、メモリセルトランジスタにデータ0が書き込まれる。
With the above configuration, the writing unit of the
一方、データ書き込み信号Data_In_BがHレベル(データ1)のとき、書き込み信号nDIをHレベルに変化させる。これにより、ビット内部回路50_0〜50_7のうち、いずれか1つのビット内部回路のData_iが、Hレベルになり、その後のプログラム処理により、メモリセルトランジスタにデータ1が書き込まれる。
On the other hand, when the data write signal Data_In_B is at the H level (data 1), the write signal nDI is changed to the H level. Thereby, Data_i of any one of the bit internal circuits 50_0 to 50_7 becomes H level, and
また、PB制御回路60の書き込み部は、通常モード(第2の動作モード)のデータ書き込み時において、書き込みイネーブル信号fDinEnableがHレベルに、選択信号Sel_AがHレベルになると、スイッチ68がオンする。これにより、PB制御回路60の書き込み部は、Data Busから入力されるデータ書き込み信号Data_In_Aのレベルに応じて、書き込み信号DI、及び書き込み信号nDIのいずれか一方をLレベルからHレベルに変化させる。具体的には、データ書き込み信号Data_In_AがLレベル(データ0)のとき、書き込み信号DIをHレベルに変化させる。これにより、ビット内部回路50_0〜50_7のうち、いずれか1つのビット内部回路のData_iが、Lレベルになり、その後のプログラム処理により、メモリセルトランジスタにデータ0が書き込まれる。
In the writing unit of the
一方、データ書き込み信号Data_In_AがHレベル(データ1)のとき、書き込み信号nDIをHレベルに変化させる。これにより、ビット内部回路50_0〜50_7のうち、いずれか1つのビット内部回路のData_iが、Hレベルになり、その後のプログラム処理により、メモリセルトランジスタにデータ1が書き込まれる。
On the other hand, when the data write signal Data_In_A is at the H level (data 1), the write signal nDI is changed to the H level. Thereby, Data_i of any one of the bit internal circuits 50_0 to 50_7 becomes H level, and
このように、PB制御回路60は、ページバッファ102のPBユニットを構成するビット内部回路50_0〜50_7のうち、選択信号DIO<i>により選択されたビット内部回路にビット線を介して接続されるメモリセルトランジスタと、データバス(第1のデータバス、および第2のデータバス)との間のデータ転送を制御する回路である。
As described above, the
また、上述した読み出し信号RDの配線、書き込み信号DIの配線、及び書き込み信号nDIの配線(IO線)は、PBユニットを構成するビット内部回路50_0〜50_7とPB制御回路60とを接続する配線であり、これらの配線はPBユニットのデータ転送用の入出力配線である。従って、本実施形態において、PB制御回路60は、ページバッファ102の入出力部と、第1、及び第2のデータバス(ECC Bus、Data Bus)との間で、書き込みデータ、及び読み出しデータを転送する。
Further, the wiring of the read signal RD, the wiring of the write signal DI, and the wiring (IO line) of the write signal nDI described above are wirings that connect the bit internal circuits 50_0 to 50_7 and the
図4(a)に戻って、以上のPB制御回路60の構成により、PB 4IOユニット30_0は次に説明する動作を実行する。
PB 4IO ユニット30_0は、Hレベルの選択信号Sel_A<0>がカラムコーディング回路103から入力されると、4本分のページバッファの入出力線(図5に示すデータ読み出し線RD;IO線IO_0〜IO_3とする)を、4ビット分のData Bus(ここではデータバスData_A<3:0>とする)にそれぞれ接続する。これにより、PB 4IO ユニット30_0は、データバスData_A<3:0>にデータ読み出し信号Data_Out_A<0>〜A<3>(以下、データ読み出し信号Data_Out_A<3:0>とする)を出力する。
Returning to FIG. 4A, the PB 4IO unit 30_0 executes the operation described below by the configuration of the
When the H level selection signal Sel_A <0> is input from the
また、PB 4IO ユニット30_0は、Hレベルの選択信号Sel_B<0>がECCカラムコーディング回路108から入力されると、4本分のページバッファの入出力線IO線IO_0〜IO_3を、4ビット分のECC Bus(ここでは、データバスData_B<3:0>とする)にそれぞれ接続する。これにより、PB 4IO ユニット30_0は、データバスData_B<3:0>にデータ読み出し信号Data_Out_B<0>〜B<3>(以下、データ読み出し信号Data_Out_B<3:0>とする)を出力する。
In addition, when the H level selection signal Sel_B <0> is input from the ECC
図3に戻って、以上のPB 4IOユニット30_0の構成により、図3に示すデータ読み出し動作において、ページバッファ102、及びカラムコーディング回路103、及びECCカラムコーディング回路108(ここでは、データ読み出しモデルとする)は、次に説明する動作を実行する。
なお、図3に示すPB 4IOユニット30_1〜30_9に接続されるページバッファの入出力線(図5、及び図6に示すデータ読み出し線RD)を、これらのPB 4IOユニットの順番に、それぞれ次のように呼ぶ。すなわち、IO線IO_4〜IO_7、IO線IO_8〜IO_11、IO線IO_12〜IO_15、IO線IO_16〜IO_19、IO線IO_20〜IO_23、IO線IO_24〜IO_27、IO線IO_28〜IO_31、IO線IO_32〜IO_35、IO線IO_36〜IO_39とする。
また、Data Busは、8ビット幅のバスであり、これらをデータバスData_A<7:0>とする。また、ECC Busは、20ビット幅のバスであり、これらをデータバスData_B<19:0>とする。
Returning to FIG. 3, with the above-described configuration of the PB 4IO unit 30_0, in the data read operation shown in FIG. 3, the
Note that the page buffer input / output lines (data read lines RD shown in FIGS. 5 and 6) connected to the PB 4IO units 30_1 to 30_9 shown in FIG. Call it like this. That is, IO lines IO_4 to IO_7, IO lines IO_8 to IO_11, IO lines IO_12 to IO_15, IO lines IO_16 to IO_19, IO lines IO_20 to IO_23, IO lines IO_24 to IO_27, IO lines IO_28 to IO_31, IO lines IO_32 to IO_35, The IO lines are IO_36 to IO_39.
Data Bus is an 8-bit bus, which is a data bus Data_A <7: 0>. The ECC Bus is a 20-bit bus, and these are data bus Data_B <19: 0>.
通常モード(第2の動作モード)では、カラムコーディング回路103は、選択信号Sel_A<0>〜Sel_A<4>の5つのカラムアドレスのうち1つのカラムアドレスをHレベル、残りの4つのカラムアドレスをLレベルに維持して、データ読み出しモデルに対して出力する。
例えば、通常モードにおいて、選択信号Sel_A<0>〜Sel_A<4>の順番に、選択信号を5回、データ読み出しモデルに与えると、次のようにIO線IO_0〜IO_39の40ビットのデータがデータバスData_A<7:0>に順次読み出される。
In the normal mode (second operation mode), the
For example, when the selection signal is given to the data read model five times in the order of the selection signals Sel_A <0> to Sel_A <4> in the normal mode, the 40-bit data of the IO lines IO_0 to IO_39 is data as follows: The data is sequentially read to the bus Data_A <7: 0>.
選択信号Sel_A<0>がHレベルになると、PB 4IOユニット30_0、及びPB 4IOユニット30_1は、それぞれのPB制御回路60におけるトランジスタ61aがオンし、IO線IO_0〜IO_7とデータバスData_A<7:0>とを接続する。これにより、PB 4IOユニット30_0、及びPB 4IOユニット30_1は、データバスData_A<7:0>に、読み出しデータData_Out_A<7:0>(IO線IO_0〜IO_7のデータ)を出力する。
When the selection signal Sel_A <0> becomes H level, in the PB 4IO unit 30_0 and the PB 4IO unit 30_1, the transistor 61a in each
次に、選択信号Sel_A<1>がHレベルになると、PB 4IOユニット30_2、及びPB 4IOユニット30_3は、それぞれのPB制御回路60におけるトランジスタ61aがオンし、IO線IO_8〜IO_15とデータバスData_A<7:0>とを接続する。これにより、PB 4IOユニット30_2、及びPB 4IOユニット30_3は、データバスData_A<7:0>に、読み出しデータData_Out_A<7:0>(IO線IO_8〜IO_15のデータ)を出力する。
Next, when the selection signal Sel_A <1> becomes H level, the PB 4IO unit 30_2 and the PB 4IO unit 30_3 turn on the transistors 61a in the respective
次に、選択信号Sel_A<2>がHレベルになると、PB 4IOユニット30_4、及びPB 4IOユニット30_5は、それぞれのPB制御回路60におけるトランジスタ61aがオンし、IO線IO_16〜IO_23とデータバスData_A<7:0>とを接続する。これにより、PB 4IOユニット30_4、及びPB 4IOユニット30_5は、データバスData_A<7:0>に、読み出しデータData_Out_A<7:0>(IO線IO_16〜IO_23のデータ)を出力する。
Next, when the selection signal Sel_A <2> is set to the H level, in the PB 4IO unit 30_4 and the PB 4IO unit 30_5, the transistor 61a in each
次に、選択信号Sel_A<3>がHレベルになると、PB 4IOユニット30_6、及びPB 4IOユニット30_7は、それぞれのPB制御回路60におけるトランジスタ61aがオンし、IO線IO_24〜IO_31とデータバスData_A<7:0>とを接続する。これにより、PB 4IOユニット30_6、及びPB 4IOユニット30_7は、データバスData_A<7:0>に、読み出しデータData_Out_A<7:0>(IO線IO_24〜IO_31のデータ)を出力する。
Next, when the selection signal Sel_A <3> becomes H level, the PB 4IO unit 30_6 and the PB 4IO unit 30_7 turn on the transistors 61a in the respective
最後に、選択信号Sel_A<4>がHレベルになると、PB 4IOユニット30_8、及びPB 4IOユニット30_9は、それぞれのPB制御回路60におけるトランジスタ61aがオンし、IO線IO_32〜IO_39とデータバスData_A<7:0>とを接続する。これにより、PB 4IOユニット30_8、及びPB 4IOユニット30_9は、データバスData_A<7:0>に、読み出しデータData_Out_A<7:0>(IO線IO_32〜IO_39のデータ)を出力する。
Finally, when the selection signal Sel_A <4> becomes H level, the PB 4IO unit 30_8 and the PB 4IO unit 30_9 turn on the transistors 61a in the respective
このようにして、選択信号Sel_Aを5回、データ読み出しモデルに供給すると、PB 4IOユニット30_0〜30_9は、PB制御回路60により、IO線IO_0〜IO_39を8本ずつ、データバスData_A<7:0>に接続する。これにより、合計40ビットのメモリセルトランジスタの記憶するデータを、ビット線、及びIO線IO_0〜IO_39を介してData Busに読み出すことができる。
In this way, when the selection signal Sel_A is supplied to the data read model five times, the PB 4IO units 30_0 to 30_9 use the
また、ECCモード(第1の動作モード)では、ECCカラムコーディング回路108は、選択信号Sel_B<0>〜Sel_B<1>の2つのカラムアドレスのうち1つのカラムアドレスをHレベル、残りの1つのカラムアドレスをLレベルに維持して、データ読み出しモデルに対して出力する。
例えば、ECCモードにおいて、選択信号Sel_B<0>〜Sel_B<1>の順番に、選択信号を2回、データ読み出しモデルに与えると、次のようにIO線IO_0〜IO_39の40ビットのデータがデータバスData_B<19:0>に順次読み出される。
In the ECC mode (first operation mode), the ECC
For example, in the ECC mode, when the selection signal is given to the data read model twice in the order of the selection signals Sel_B <0> to Sel_B <1>, the 40-bit data of the IO lines IO_0 to IO_39 is data as follows: The data is sequentially read to the bus Data_B <19: 0>.
選択信号Sel_B<0>がHレベルになると、PB 4IOユニット30_0、30_2、30_4、30_6、及び30_8は、それぞれのPB制御回路60におけるトランジスタ61bがオンする。PB 4IOユニット30_0、30_2、30_4、30_6、及び30_8は、それぞれIO線IO_0〜IO_3、IO_8〜IO_11、IO_16〜IO_19、IO_24〜IO_27、IO_32〜IO_35とデータバスData_B<19:0>とを接続する。これにより、PB 4IOユニット30_0、30_2、30_4、30_6、及び30_8は、データバスData_B<19:0>に、読み出しデータData_Out_B<19:0>(IO線IO_0〜IO_3、IO_8〜IO_11、IO_16〜IO_19、IO_24〜IO_27、IO_32〜IO_35のデータ)を出力する。
When the selection signal Sel_B <0> becomes H level, in the PB 4IO units 30_0, 30_2, 30_4, 30_6, and 30_8, the
次に、選択信号Sel_B<1>がHレベルになると、PB 4IOユニット30_1、30_3、30_5、30_7、及び30_9は、それぞれのPB制御回路60におけるトランジスタ61aがオンする。PB 4IOユニット30_1、30_3、30_5、30_7、及び30_9は、それぞれIO線IO_4〜IO_7、IO_12〜IO_15、IO_20〜IO_23、IO_28〜IO_31、IO_36〜IO_39とデータバスData_B<19:0>とを接続する。これにより、PB 4IOユニット30_1、30_3、30_5、30_7、及び30_9は、データバスData_B<19:0>に、読み出しデータData_Out_B<19:0>(IO線IO_4〜IO_7、IO_12〜IO_15、IO_20〜IO_23、IO_28〜IO_31、IO_36〜IO_39のデータ)を出力する。
Next, when the selection signal Sel_B <1> becomes H level, in the PB 4IO units 30_1, 30_3, 30_5, 30_7, and 30_9, the transistor 61a in each
このようにして、選択信号Sel_Bを2回、データ読み出しモデルに供給すると、PB 4IOユニット30_0〜30_9は、PB制御回路60により、IO線IO_0〜IO_39を20本ずつ、データバスData_B<19:0>に接続する。これにより、合計40ビットのメモリセルトランジスタの記憶するデータを、ビット線、及びIO線IO_0〜IO_39を介してECC Busに読み出すことができる。
例えば、通常モードでは、IO線IO_0〜IO_3、IO_8〜IO_11、IO_16〜IO_19、IO_24〜IO_27、IO_32〜IO_35のデータは、選択信号を5回与えなければ、Data Busに読み出すことができなかった。これに対して、ECCモードでは、選択信号を1回与えれば(選択信号Sel_B<0>を与えれば)、IO線IO_0〜IO_3、IO_8〜IO_11、IO_16〜IO_19、IO_24〜IO_27、IO_32〜IO_35のデータを、ECC Busに読み出すことができる。
When the selection signal Sel_B is supplied to the data read model twice in this manner, the PB 4IO units 30_0 to 30_9 use the
For example, in the normal mode, the data of the IO lines IO_0 to IO_3, IO_8 to IO_11, IO_16 to IO_19, IO_24 to IO_27, and IO_32 to IO_35 cannot be read to the data bus unless the selection signal is given five times. On the other hand, in the ECC mode, if the selection signal is given once (if the selection signal Sel_B <0> is given), the IO lines IO_0 to IO_3, IO_8 to IO_11, IO_16 to IO_19, IO_24 to IO_27, IO_32 to IO_35 Data can be read into ECC Bus.
また、図8は、図1に示すページバッファ102、カラムコーディング回路103、及びECCカラムコーディング回路108に対応する部分のデータ書き込み動作を説明するための図である。
データ書き込み動作においても、PB 4IOユニット30_0の動作により、ページバッファ102、及びカラムコーディング回路103、及びECCカラムコーディング回路108(ここでは、データ書き込みモデルとする)は、データ書き込み動作を実行する。
データ書き込みモデルでは、データの転送を図3に示す方向と逆方向に処理を行なうだけであるので、詳細な説明は省略する。
FIG. 8 is a diagram for explaining a data write operation in a portion corresponding to the
Also in the data write operation, the
In the data writing model, only data transfer is performed in the direction opposite to that shown in FIG.
データ書き込みモデルでは、例えば、通常モードでは、IO線IO_0〜IO_3、IO_8〜IO_11、IO_16〜IO_19、IO_24〜IO_27、IO_32〜IO_35へ与えるデータは、選択信号を5回与えなければ、Data Busから書き込むことができなかった。これに対して、ECCモードでは、選択信号を1回与えれば(選択信号Sel_B<0>を与えれば)、IO線IO_0〜IO_3、IO_8〜IO_11、IO_16〜IO_19、IO_24〜IO_27、IO_32〜IO_35へ与えるデータを、ECC Busから書き込むことができる。 In the data writing model, for example, in the normal mode, data to be given to the IO lines IO_0 to IO_3, IO_8 to IO_11, IO_16 to IO_19, IO_24 to IO_27, and IO_32 to IO_35 is written from the Data Bus unless the selection signal is given five times. I couldn't. On the other hand, in the ECC mode, if the selection signal is given once (if the selection signal Sel_B <0> is given), to the IO lines IO_0 to IO_3, IO_8 to IO_11, IO_16 to IO_19, IO_24 to IO_27, and IO_32 to IO_35. The given data can be written from ECC Bus.
このように、本実施形態のNAND型フラッシュメモリ10(半導体記憶装置)は、第1のデータバス(データバスData_B<19:0>)と、第1のデータバスと異なる本数から構成され、第1のデータバスとは独立して設けられる第2のデータバス(データバスData_A<7:0>)と、を備える。また、NAND型フラッシュメモリ10は、データ転送部(PB 4IOユニット30_0〜30_9各々におけるPB制御回路60)を備える。データ転送部は、第1の動作モードによりメモリセルとの間でデータを転送する場合、複数のビット線のうち第1のデータバスと同じ本数のビット線と、第1のデータバスとを接続してデータを転送する。一方、データ転送部は、第2の動作モードによりメモリセルとの間でデータを転送する場合、複数のビット線のうち第2のデータバスと同じ本数のビット線と、第2のデータバスと、を接続してデータを転送する。
As described above, the NAND flash memory 10 (semiconductor memory device) of the present embodiment includes the first data bus (data bus Data_B <19: 0>) and a different number from the first data bus. And a second data bus (data bus Data_A <7: 0>) provided independently of one data bus. The
また、ビット線を、n(nはpとqの公倍数であり、p、及びqはp>qである自然数)本のビット線とすると、次の構成となっている。すなわち、第1のデータバスはp本であり、第2のデータバスはq本であって、データ転送部は、第1の動作モードでは、(n/p)本のアドレス信号が入力されると、p本のビット線とp本の第1のデータバスとの接続を行い、一方、第2の動作モードでは、(n/q)本のアドレス信号が入力されると、q本ビット線と第2のデータバスとの接続を行う。 Further, when the bit lines are n (n is a common multiple of p and q, and p and q are natural numbers where p> q), the configuration is as follows. That is, there are p first data buses, q second data buses, and the data transfer unit receives (n / p) address signals in the first operation mode. And p bit lines and p first data buses are connected, while in the second operation mode, when (n / q) address signals are input, q bit lines are connected. Are connected to the second data bus.
また、NAND型フラッシュメモリ10は、メモリアレイ101と、メモリアレイ101からページ単位でデータを読み出し、メモリアレイ101から読み出された読み出しデータを格納するページバッファ102を備える。また、NAND型フラッシュメモリ10は、ページバッファ102から転送された読み出しデータに対して誤りを訂正し、この訂正された読み出しデータをページバッファ102に書き戻すECC回路107(ECC部)と、ページバッファに書き戻された読み出しデータを出力するI/Oパッド106(インターフェース部)と、を備える。このECC Busは、ECC回路107に接続され、Data Busは、I/Oパッド106に接続される。
The
また、NAND型フラッシュメモリ10において、ページバッファ102は、I/Oパッド106に入力された書き込みデータを格納し、ECC回路107は、ページバッファから転送された書き込みデータに対してパリティデータを生成し、パリティデータ及び書き込みデータをページバッファに書き戻す。
In the
これにより、ページバッファ102から複数のデータバス(本実施形態ではECC Bus、Data Bus)を用意し、それぞれについて独立したカラムコーディング(Column Coding)、すなわちアドレス制御を可能にすることができる。
本実施形態では、ページバッファ102の入出力線(上記例で言えばIO_0〜IO_39)から、すなわちページバッファに直結した部分から独立なデータバスの構成、および独立なアドレス制御としているところが特徴である。
そのため、本実施形態における半導体記憶装置では、以下に述べる特徴的な効果を奏することができる。
Thus, a plurality of data buses (ECC Bus and Data Bus in this embodiment) are prepared from the
The present embodiment is characterized in that the data bus configuration is independent from the input / output lines (IO_0 to IO_39 in the above example) of the
Therefore, the semiconductor memory device according to this embodiment can exhibit the following characteristic effects.
(1)第1の動作モード(本実施形態ではECCモード)において、バス幅を広げ、高速化できる。
本実施形態の説明では、1回のカラムアドレス入力により、第2の動作モード(通常モード)では、Data Busに8ビットのデータを転送し、ECCモードでは20ビットのデータを転送する場合に説明した。このように、Address_Bの入力(選択信号Sel_BのPB制御回路60への入力)次第では、すなわちページバッファ102へのカラムコーディング次第では、簡単にバス幅を広げることができる。例えば、1024個のPBユニットでカラムアドレスを2アドレスとすれば、ECCモードではECC Busを512bitのバス幅に広げてデータ転送できる。
また、ページバッファに直結した部分から独立なデータバスの構成、および独立なアドレス制御としている。そのため、従来のように、Data Busの一部を共有してECC回路へデータ転送する場合に比べて、高速なデータ転送が可能になる。
特に、不良のPBユニットについては、PB制御回路60が固定データをECC Busを介してECC回路107へ転送するので、ECC処理においてカラム置換回路104で救済処理した後のデータをECC Busを介してECC回路107に転送する必要はなくなる。そのため、バス幅の拡大されたECC Busの径路にカラム置換回路104を配置する必要が無くなる。このため、カラム置換回路104での救済処理に要する時間だけ、ECC処理の際のページバッファからECC回路へのデータ転送の時間を短縮できる。また、ECC処理に際してData Bus(第2のデータバス)のバス幅を拡大する必要はないので、カラム置換回路104の回路規模の増大を抑制できる。
(1) In the first operation mode (ECC mode in this embodiment), the bus width can be increased and the speed can be increased.
In the description of the present embodiment, a case where 8-bit data is transferred to Data Bus in the second operation mode (normal mode) and 20-bit data is transferred in the ECC mode by one column address input. did. As described above, depending on the input of Address_B (input of the selection signal Sel_B to the PB control circuit 60), that is, depending on the column coding to the
In addition, the data bus is independent from the portion directly connected to the page buffer, and the address control is independent. Therefore, as compared with the conventional case, data transfer can be performed at a higher speed than when a part of Data Bus is shared to transfer data to the ECC circuit.
In particular, for a defective PB unit, the
(2)アドレス制御、アドレスマップの自由度の向上
本実施形態の説明では、通常モードにおいて、1つのカラムアドレスで8ビットのデータ転送する際、例えばPB 4IOユニット30_0、と30_1に選択信号Sel_A<0>を供給して、IO線IO_0〜IO_7のデータをData Busに転送した。これに対して、ECCモードでは、PB 4IOユニット30_0、と30_1に選択信号Sel_B<0>、Sel_B<1>と別々のアドレスを割り当てて、全アドレスについて一括でECC回路にデータ転送をすることができる。例えば、通常データとパリティデータとが、通常モードにおいて選択信号Sel_Aの異なるアドレスに割り付けられていた場合であっても、ECCモードにおいて選択信号Sel_Bの同じアドレスに割り付けることができ、通常データとパリティデータを一括してECC回路に入力することができる。このように、第2の動作モードにおけるアドレス制御が第1の動作モードにおけるアドレス制御に対して独立性が非常に高く、アドレスマップの自由度を高くすることができる。
(2) Improving the degree of freedom of address control and address map In the description of this embodiment, when transferring 8-bit data with one column address in the normal mode, for example, the selection signal Sel_A <is sent to the PB 4IO units 30_0 and 30_1 0> is supplied, and the data of the IO lines IO_0 to IO_7 is transferred to the Data Bus. On the other hand, in the ECC mode, the selection signals Sel_B <0> and Sel_B <1> and different addresses are assigned to the PB 4IO units 30_0 and 30_1, and data is transferred to the ECC circuit for all addresses at once. it can. For example, even when normal data and parity data are assigned to different addresses of the selection signal Sel_A in the normal mode, they can be assigned to the same address of the selection signal Sel_B in the ECC mode. Can be collectively input to the ECC circuit. Thus, the address control in the second operation mode is very independent of the address control in the first operation mode, and the degree of freedom of the address map can be increased.
また、通常モードではカラムアドレスは選択信号Sel_A<0>〜Sel_A<4>の5つに対し、ECCモードではカラムアドレスは選択信号Sel_B<0>、Sel_B<1>の2つとなった。このことは、通常モードにおける規格(User Spec)では、カラムアドレスが2のn乗でない(所謂きりのよくない)値で定められていたとしても、ECCモードではアドレス空間を2のn乗などのきりのよい単位空間へ変換可能であることを意味している。
これにより、ECC回路107のコード構成、たとえばコード長をいくつにするか、積符号化する場合のコード長構成の最適化などの過程において、自由度をもって設計することができ、より最適なパフォーマンスを引き出すことができる。
In the normal mode, the column address has five selection signals Sel_A <0> to Sel_A <4>, whereas in the ECC mode, the column address has two selection signals Sel_B <0> and Sel_B <1>. This means that even if the column address is defined by a value that is not 2 to the nth power (so-called unsatisfactory) in the standard (User Spec) in the normal mode, the address space is set to a power of 2n in the ECC mode. It means that it can be converted into a unit space with a good quality.
As a result, the code configuration of the
(3)設計変更の容易化
またECC回路を内蔵した製品を設計する場合、仮に当該製品の派生製品であってECC回路の内蔵が不要な製品を別途設計するような場合、データバス(ECCバス)、アドレス制御に係るカラムコーディング回路がECCモードと通常モードでは独立している。これにより、ECCモードに係る回路と通常モードに係る回路の切り分けが明確であるため、不要なECCモードに係る回路の削減が容易となり、設計変更が容易になる。
(3) Ease of design change When designing a product incorporating an ECC circuit, if a product that is a derivative product of the product and does not require the incorporation of an ECC circuit is designed separately, a data bus (ECC bus) ), The column coding circuit for address control is independent in the ECC mode and the normal mode. Thereby, since the separation between the circuit related to the ECC mode and the circuit related to the normal mode is clear, it is easy to reduce the circuits related to the unnecessary ECC mode, and the design change is facilitated.
続いて、図1に示すNAND型フラッシュメモリの第1の動作モード、及び第2の動作モードでの動作について、ページバッファ102の概略構成、及び動作フローチャートを参照して説明する。図9は、ページバッファ102を構成する各ページバッファを説明するための図である。また、図10は、ページバッファ102の動作を説明するためのフローチャートである。
図9(a)には、ページバッファ102を構成するMain Data(通常データ)用のページバッファ102a、Column Repair for Main Data(通常データの置換データ)用のページバッファ102bを模式的に示している。また、図9(a)には、ECC Parity(パリティデータ)用のページバッファ102c、及びParity’s Column Repair(パリティデータの置換データ)用のページバッファ102dを模式的に示している。
図9(a)には、これらページバッファ102a〜102dを構成するPB ユニット(図5、及び図6に示すPB制御回路60、及びビット内部回路50_0〜50_7を単位とする回路)に番号を付して示している。この番号は、図4(b)に示すCodelinng、すなわちPB ユニットの位置を示す選択信号Sel_Aの番号である。
Next, operations in the first operation mode and the second operation mode of the NAND flash memory shown in FIG. 1 will be described with reference to a schematic configuration of the
FIG. 9A schematically shows a
In FIG. 9A, numbers are assigned to the PB units (the
すなわち、ページバッファ102aは、通常データ用のPB ユニットとして、256個のPB ユニット0〜PB ユニット255を有し、ページバッファ102bは、通常データの置換用のPB ユニットとして8個のPB ユニット256〜PB ユニット263を有する。
また、ページバッファ102cは、パリティデータ用のPB ユニットとして、36個のPB ユニット264〜PB ユニット299を有し、ページバッファ102dは、パリティデータの置換用のPB ユニットとして8個のPB ユニット300〜PB ユニット307を有する。
That is, the
The
また、ここでは、図9(b)に示す様に、ページバッファ102aのPB ユニット1に接続される8本のビット線、或いは当該8本のビット線に接続されるメモリセルトランジスタに不良があった場合に、ページバッファ102bのPB ユニット256に置換される例を示している。また、図9(b)では、ページバッファ102cのPB ユニット265に接続される8本ビット線、或いは当該8本のビット線に接続されるメモリセルトランジスタに不良があった場合に、ページバッファ102dのPB ユニット300に置換される例を示している。
なお、図9(b)において斜線を施して示しているページバッファ102bにおけるPB ユニット257〜263は使用されないので、これらはカラム置換回路104の制御によりカラムコーディング回路103が選択することはなく、すなわち不活性状態となっている。また、同じく図9(b)において斜線を施して示しているページバッファ102dにおけるPB ユニット301〜307は使用されないので、これらはパリティカラム置換回路105の制御によりECCカラムコーディング回路108が選択することはなく、すなわち不活性状態となっている。
Further, here, as shown in FIG. 9B, there are defects in the eight bit lines connected to the
Since the
また、ページバッファ102aにおけるPB ユニット1は、通常モードでは選択されず、置換先のPB ユニット256が選択信号Sel_Aにより選択される。これにより、読み出しデータData_Out_A(PB ユニット1から読み出すはずのデータ)が、Data Bus_1、Data Bus_2、及びData Bus_3(第2のデータバス)を介してI/Oパッド106から出力される。また、通常モードでは、書き込みデータがI/Oパッド106から入力されると、Data Bus_3、Data Bus_2、及びData Bus_1を介してPB ユニット255に、書き込みデータData_A_In(PB ユニット1に書き込むはずのデータ)として入力される。このように、ユーザがカラムアドレスを供給して使用できるページバッファの領域はページバッファ102aのPB ユニット0〜255までである。つまり、ページバッファ102bのPB ユニット256〜263、ページバッファ102cのPB ユニット264〜299、及びページバッファ102dのPB ユニット300〜307は、ユーザがアクセスすることのできないページバッファの領域である。
Further, the
また、ページバッファ102aにおけるPB ユニット1は、ECCモードで選択信号Sel_Bにより選択され、LレベルまたはHレベルのいずれか一方に固定された読み出しデータData_Out_Bが、ECC Bus_1、及びECC Bus_2(第1のデータバス)を介してECC回路107まで転送され、ECC処理に用いられる。また、置換先のPB ユニット256も選択信号Sel_Bにより選択され、読み出しデータData_Out_Bが、ECC Bus_1、ECC Bus_2、及びECC Bus_3を介してECC回路107まで転送され、ユーザから見たPB ユニット1の読み出しデータとしてECC処理に用いられる。また、ECCモードでは、ECC処理が終了すると、PB ユニット1に書き戻すべきデータがECC Bus_3、ECC Bus_2、およびECC Bus_1(第1のデータバス)を介してPB ユニット255に、書き込みデータData_A_Inとして入力される。なお、これらのECC処理後のデータのうちPB ユニット0〜255のデータは、上述の様に、データバスData_Aを介して外部へ誤りのないデータ(Clear Data)として読み出される。
The
また、ページバッファ102aにおけるPB ユニット265は、ECCモードで選択信号Sel_Bにより選択され、LレベルまたはHレベルのいずれか一方に固定された読み出しデータData_Out_Bが、ECC Bus_1、及びECC Bus_2(データバスData_B)を介してパリティカラム置換回路105まで転送される。また、置換先のPB ユニット300も選択信号Sel_Bにより選択され、読み出しデータData_Out_Bが、ECC Bus_1、及びECC Bus_2を介してパリティカラム置換回路105まで転送され、置換処理が行われる。こうして、PB ユニット300の出力するデータが、PB ユニット265の読み出しデータとしてECC Bus_3を介してECC回路107に転送され、ECC処理に用いられる。また、ECCモードでは、ECC処理が終了すると、PB ユニット265に書き戻すべきデータがECC Bus_3を介してパリティカラム置換回路105まで転送され、置換処理した後、ECC Bus_2、およびECC Bus_1(第1のデータバス)を介してPB ユニット300に、書き込みデータData_B_Inとして入力される。なお、これらのECC処理後のデータは、上述の様に、データバスData_Aを介して外部へ読み出されることはない。
Further, the
図10に示すフローチャートを参照して、メモリセルトランジスタへのデータ書き込み動作、メモリセルトランジスタからのデータ読み出し動作について説明する。なお、図10(a)はデータ書込み動作(Data In)、図10(b)は、データ読み出し動作(Data Out)を、それぞれ示している。また、図10(c)は、図2に示すランダマイザ、及びECC回路107におけるデータランダマイズ(Data Randomize)、及びエンコード(Encode)処理動作を示している。また、図10(d)は、ランダマイザ、及びECC回路107におけるデコード(Decode)、及びデータデランダマイズ(Data De−Randomize)処理動作を示している。なお、以下に説明する動作において、図10(c)に示すエンコード処理、及び図10(d)に示すデコード処理は、ECCモード(第1の動作モード)における第1のランダマイズ及びECC処理(欠陥ビットに関してECC回路により不良救済する処理)である。本実施形態のNAND型フラッシュメモリ10は、ECCモードにおいて、第1のランダマイズ及びECC処理と、第2のランダマイズ及びECC処理(欠陥ビットに関して誤りが発生しないように処理され、ECC処理の訂正処理能力を下げない処理)とを切り替えて実行することが可能である。第2のランダマイズ及びECC処理の構成、及び動作については後述することとする。ここでは、第1のランダマイズ及びECC処理を用いるものとして、また、救済置換処理を中心に、ページバッファ102のECCモードにおける動作の詳細について説明する。
A data write operation to the memory cell transistor and a data read operation from the memory cell transistor will be described with reference to the flowchart shown in FIG. 10A shows a data write operation (Data In), and FIG. 10B shows a data read operation (Data Out). FIG. 10C shows data randomization and encoding processing in the randomizer and
[データ書き込み動作]
ユーザがI/Oパッド106を介してNAND型フラッシュメモリ10に、所定のコマンド(ライトコマンド)を入力し、アドレス(ここでは、PB ユニット1を選択するカラムアドレス)入力をし、引き続いて、書き込みデータを入力する(ステップST1)。
次に、通常データの置換が実行される(ステップST2)。具体的には、カラム置換回路104の制御によりカラムコーディング回路103は、PB ユニット1を選択せず、代わりにPB ユニット256を選択し、PB ユニット256には外部からのデータが格納される。
[Data write operation]
A user inputs a predetermined command (write command) to the
Next, normal data replacement is executed (step ST2). Specifically, under the control of the
次に、ユーザが所定時間経過後に、プログラム実行コマンド(Program Executuion Command)を与える(Invoke)と、通常モード(第2の動作モード)であれば、ステップST6に進みプログラム処理(ページバッファからビット線を介してメモリセルトランジスタへデータを与える)を実行する。ECCモード(第1の動作モード)であれば、ステップST5に進みECCのエンコード処理を実行する。(ステップST5)。具体的には次の処理を実行する。 Next, when the user gives a program execution command (Program Execution Command) after a predetermined time has passed (Invoke), if it is the normal mode (second operation mode), the process proceeds to step ST6 and program processing (from the page buffer to the bit line). The data is supplied to the memory cell transistor via the. If the mode is the ECC mode (first operation mode), the process proceeds to step ST5, and the ECC encoding process is executed. (Step ST5). Specifically, the following processing is executed.
ここで、図9(c)は、ECC処理でのコード構成を示している。ECCとしてのData部は、PB ユニット0〜PB ユニット263に格納されたデータであり、パリティ部(ECC Parity)は、PB ユニット264〜PB ユニット299に格納されたデータからなる。なお、PB ユニット1に書き込むべきデータは、PB ユニット256に書き込まれて格納され、PB ユニット1以外のPB ユニット0、PB ユニット2〜255には、それぞれに接続されるビット線を介してメモリセルトランジスタが記憶するデータが読み出されて格納されている。
PB ユニット0〜PB ユニット263に格納されたデータが、ECC Bus_1、ECC Bus_2、及びECC Bus_3(第1のデータバス)を介して、ランダマイザ、及びECC回路107に入力(Data Load)される(ステップST31)。
Here, FIG. 9C shows a code configuration in the ECC process. The Data part as ECC is data stored in the
The data stored in the
なお、このとき、上述したように、ランダマイザ107bには、PB ユニット1からは固定データ(図5に示すPB制御回路60であればLデータ、図6に示すPB制御回路60であればHデータ)が入力される。また、ランダマイザ107bには、PB ユニット256からは、PB ユニット1に書き込むべきだったが実際はPB ユニット256に書き込まれたデータが入力される。
ランダマイザ107bは、ランダマイズ(Data Randomize)処理を実行し(ステップST32a)、ランダマイズ処理後のデータをECC回路107aに対して出力する。
ECC回路107aは、入力されるランダマイズ処理後のデータに対してエンコード(Encode)処理を実行し、パリティデータを生成(Parity Generation)する(ステップST32b)。
At this time, as described above, the
The
The
続いて、ランダマイザ、及びECC回路107は、PB ユニット0〜307にECC処理後のデータを書き戻す(Data Store)処理を実行する(ステップST33)。ここで、図2に示すランダマイザ107bがPB ユニット0〜263に、パリティ生成回路41がPB ユニット264〜307に、それぞれデータを書き戻す。
なお、このとき、ECCコーディング回路108は、パリティカラム置換回路105の制御により、PB ユニット265を非選択とし、PB ユニット300を選択する。これにより、PB ユニット265に書き戻すべきパリティデータがPB ユニット300に書き戻される。また、PB ユニット0〜263には、ステップST32aでランダマイズ処理した後のデータが書き込まれ、PB ユニット264〜307にはパリティデータが書き込まれる。このように、図9(b)において斜線を施して示している不活性状態ページバッファには、図5または図6に示す回路により、書き込みがされないようになっている。
Subsequently, the randomizer and the
At this time, the
続いて、各PBユニットにおいて、図7に示すラッチ部にメモリセルに書き込むべきデータ(Data_i)がラッチされたので、メモリセルトランジスタへのデータ書込み(Program to Memory Cell)処理が開始される(ステップST6)。
各PB ユニットでは、書込みが成功するまで、ラッチ部からメモリセルへのデータ印加が繰り返される(ステップST7)。書き込みが成功すれば、繰り返し処理は終了し(ステップST7−Yes)、書き込みが成功しなければ、書込みが成功する、まで、ステップST6に戻ってプログラム処理が実行される(ステップST7−No)。
Subsequently, in each PB unit, the data (Data_i) to be written in the memory cell is latched in the latch unit shown in FIG. ST6).
In each PB unit, the data application from the latch unit to the memory cell is repeated until the writing is successful (step ST7). If the writing is successful, the repetitive processing ends (step ST7-Yes), and if the writing is not successful, the program processing is executed by returning to step ST6 until the writing is successful (step ST7-No).
[データ読み出し動作]
ユーザがI/Oパッド106を介して所定のコマンド(リードコマンド)を入力し、アドレス(ここでは、PB ユニット1を選択するカラムアドレス)を入力する(ステップST11)。
次に、各PB ユニットにおいて、図6に示すビット内部回路の接続点N1に、メモリセルトランジスタからのデータ(Data_i)がセンシングされラッチ部へ読み出される(ステップST12)。
また、ビット内部回路のラッチ部にData_iがラッチされる(ステップST13)。
その後、通常モード(第2の動作モード)であれば、ステップST15に進みセンシング処理が終了する。ECCモード(第1の動作モード)では、ステップST14に進み、ECCのデコード(Decode)処理を実行する。(ステップST14)。具体的には次の処理を実行する。
[Data read operation]
The user inputs a predetermined command (read command) via the I /
Next, in each PB unit, data (Data_i) from the memory cell transistor is sensed at the connection point N1 of the bit internal circuit shown in FIG. 6 and read to the latch unit (step ST12).
Data_i is latched in the latch portion of the bit internal circuit (step ST13).
Then, if it is a normal mode (2nd operation mode), it will progress to step ST15 and will complete | finish a sensing process. In the ECC mode (first operation mode), the process proceeds to step ST14, and ECC decoding (Decode) processing is executed. (Step ST14). Specifically, the following processing is executed.
PB ユニット0〜PB ユニット299に格納されたデータが、ECC Bus_1、ECC Bus_2、及びECC Bus_3(第1のデータバス)を介して、ランダマイザ、及びECC回路107に入力(Data Load)される(ステップST41)。
なお、このとき、上述したように、図2に示すECC回路107aのシンドローム算出回路31には、PB ユニット1からは固定データ(図5に示すPB制御回路60であればLデータ、図6に示すPB制御回路60であればHデータ)が入力される。また、ECC回路107aのシンドローム算出回路31には、PB ユニット256からは、PB ユニット1に書き込むべきだったが実際はPB ユニット256に書き込まれたデータが入力される。また、パリティカラム置換回路105には、PB ユニット300からは、PB ユニット265に書き込むべきだったが実際はPB ユニット300に書き込まれたパリティデータがECC Bus_1、及びECC Bus_2を介して入力され、置換処理した後、ECC Bus_3を介してECC回路107aのシンドローム算出回路31に入力する。
ランダマイザ、及びECC回路107は、デコード(Decode)処理を実行し、パリティデータに基づいて、PB ユニット0〜PB ユニット263に格納されたデータの誤りを訂正(Error Correction)する(ステップST42a)。
ランダマイザ107bは、ECC処理による訂正後のデータを、デランダマイズ(De−Randomize)処理を実行する(ステップST42b)。
The data stored in the
At this time, as described above, the
The randomizer and the
The
続いて、ランダマイザ、及びECC回路107は、PB ユニット0〜307にデランダマイズ処理後のデータを書き戻す(Data Store)処理を実行する(ステップST43)。ここで、図2に示すランダマイザ107bがPB ユニット0〜307にデータを書き戻す。
PB ユニット0〜263には、ECC処理後のデータ(誤り訂正されたデータ)がそのまま書き戻される。PB ユニット264〜307のパリティデータ部についてはユーザーが使用しないため、ECC処理後のデータ(誤り訂正されたデータ)を書き戻す必要はないが、書き戻してもよい。パリティカラム置換回路105の制御により、PB ユニット265を非選択とし、PB ユニット300を選択する。これにより、PB ユニット265に書き戻すべき誤り訂正後のパリティデータをPB ユニット300に書き戻す。このように、図9(b)において斜線を施して示している不活性状態ページバッファには図5または図6に示す回路により、書き込みがされないようになっている。
Subsequently, the randomizer and the
In the
続いて、各PBユニットにおいて、図7に示すラッチ部にメモリセルに書き込むべきデータ(Data_i)がラッチされたので、センシング(Sensing)処理が終了すし、読み出し可能な状態へ移行する(ステップST15)。
PB ユニット0〜PB ユニット255には、選択信号Sel_Aが入力され、格納されたデータが、Data Bus_1、Data Bus_2、及びData Bus_3を介して、読み出される。このとき、カラムコーディング回路103は、カラム置換回路104の制御により、PB ユニット1を非選択とし、PB ユニット256を選択する。PB ユニット256は、PB ユニット1に書き込むべきだったが実際はPB ユニット256に書き込まれたデータを出力する。つまり、不良を有するカラムの置換(Defect Column Repair)が実行される(ステップST16)。
このようにして、ユーザがPB ユニット1を介してメモリセルトランジスタへ書き込んだ書き込みデータが、不良救済されて他のメモリセルトランジスタに書き込まれ、更に書き込まれたデータが誤り訂正されて、I/Oパッド106から出力される(ステップST17)。
Subsequently, in each PB unit, since the data (Data_i) to be written in the memory cell is latched in the latch unit shown in FIG. 7, the sensing process is terminated and the state shifts to a readable state (step ST15). .
The selection signal Sel_A is input to the
In this way, the write data written to the memory cell transistor by the user via the
以上説明したように、本発明のNAND型フラッシュメモリ10(半導体記憶装置)は、ECC Bus_1〜3(第1のデータバス)と、第1のデータバスと異なる本数から構成され、第1のデータバスとは独立して設けられるData Bus_1〜3(第2のデータバス)と、ページバッファ102(データ転送部)と、を備える。ページバッファ102は、ECCモード(第1の動作モード)によりメモリセルとの間でデータを転送する場合、複数のビット線のうち第1のデータバスと同じ本数のビット線と、第1のデータバスとを接続してデータを転送する。一方、ページバッファ102は、通常モード(第2の動作モード)によりメモリセルとの間でデータを転送する場合、複数のビット線のうち第2のデータバスと同じ本数のビット線と、第2のデータバスとを接続してデータを転送する
また、データ転送部は、通常メモリセルに接続されるビット線の電位を増幅し、増幅結果をラッチするページバッファ102a(第1のページバッファ)と、第1のページバッファに接続される通常メモリセルまたはビット線に不良が有る場合に、通常メモリセル、及びビット線とともに置換されるページバッファ102b(第3のページバッファ)と、を含んで構成される。また、データ転送部は、パリティメモリセルに接続されるビット線の電位を増幅し、増幅結果をラッチするページバッファ102c(第2のページバッファ)を含んで構成される。また、第2のデータバスは、第1のページバッファ、及び第3のページバッファと接続され、第1のデータバスは、第1のページバッファ、第3のページバッファ、及び第2のページバッファと接続される。
As described above, the NAND flash memory 10 (semiconductor memory device) of the present invention is composed of ECC Bus_1 to 3 (first data bus) and a different number from the first data bus, and the first data Data Bus_1 to 3 (second data bus) provided independently of the bus, and a page buffer 102 (data transfer unit). When transferring data to and from the memory cell in the ECC mode (first operation mode), the
また、半導体記憶装置は、第1のデータバスに接続され、第2のページバッファに接続されるパリティメモリセルまたはビット線に不良が有る場合に、パリティメモリセル、及びビット線とともに置換されるページバッファ102d(第4のページバッファ)を備える。また、半導体記憶装置は、第2のデータバスに接続されるとともに、第1のページバッファのうちメモリセルまたはビット線に不良が有るページバッファを第3のページバッファに置換するカラム置換回路104(第1の救済置換回路)を備える。また、半導体記憶装置は、第1のデータバスに接続されるとともに、第2のページバッファのうちメモリセルまたはビット線に不良が有るページバッファを第4のページバッファに置換するパリティカラム置換回路105(第2の救済置換回路)を備える。また、半導体記憶装置は、第1のデータバスに接続されるとともに、第2のページバッファ、及び前記第4のページバッファの出力データに基づき、前記第1のページバッファ、及び第3のページバッファの出力データの誤りを訂正するECC回路107a(ECC回路)を備える。
In addition, the semiconductor memory device is connected to the first data bus, and when there is a defect in the parity memory cell or bit line connected to the second page buffer, the page replaced together with the parity memory cell and the bit line. A
また、半導体記憶装置は、第1のページバッファのうちメモリセルまたはビット線に不良が有るページバッファの出力を固定されたデータとするPB制御回路60(ページバッファ制御回路)を有する。 The semiconductor memory device also includes a PB control circuit 60 (page buffer control circuit) that uses the output of the page buffer having a defect in the memory cell or bit line in the first page buffer as fixed data.
また、ページバッファ制御回路は、メモリセルまたはビット線に不良が有る場合、第1のデータバスからの書き込みを許可しない。 The page buffer control circuit does not permit writing from the first data bus when a memory cell or a bit line has a defect.
また、第1の動作モードでは、第1のページバッファと、第2の動作モードでの救済置換を前提として存在する第3のページバッファとのうち、メモリセルまたはビット線に不良が有るページバッファについては救済置換を行わずに、ECC回路の入力データとして取り扱う。 In the first operation mode, the page buffer having a defect in the memory cell or the bit line out of the first page buffer and the third page buffer existing on the premise of the repair replacement in the second operation mode. Are handled as input data of the ECC circuit without performing repair replacement.
また、ビット線を、n(nはpとqの公倍数であり、p、及びqはp>qである自然数)本のビット線とすると、第1のデータバスはp本であり、第2のデータバスはq本である。また、データ転送部は、第1の動作モードでは、(n/p)本のアドレス信号が入力されると、p本のビット線とp本の第1のデータバスとの接続を行い、一方、第2の動作モードでは、(n/q)本のアドレス信号が入力されると、q本ビット線と第2のデータバスとの接続を行う。なお、上記構成は、論理的空間においての概念を前提としており、物理的ビット線数nがpとqの公倍数でなくてもよく、余りをダミービット線として処理するなどで対応できる。 Further, if the bit lines are n (n is a common multiple of p and q, and p and q are natural numbers where p> q), the first data bus is p, There are q data buses. In the first operation mode, the data transfer unit connects the p bit lines and the p first data buses when (n / p) address signals are input. In the second operation mode, when (n / q) address signals are input, the q bit lines are connected to the second data bus. The above configuration is based on the concept of a logical space, and the number of physical bit lines n may not be a common multiple of p and q, and can be dealt with by processing the remainder as a dummy bit line.
このように、本発明によれば、ECC回路107aへのECC Bus(第1のデータバス)のバス幅を広くしやすいことから(上記説明では、ECC回路へのバス幅は300ビット)、また、Main Data部の置換回路(カラム置換回路104)がこのECC Busの途中には不要となるため、ECC処理でのデータ転送を高速化することができる。また、Main Data部の置換回路は従来の様に増大しないことから、チップサイズの増大を抑制でき、従来に比べて製造の際のコストを低減できる効果がある。
なお、上記実施形態では、Main Data部の置換回路と比較して、規模が小さいParity部に専用のPCR置換システム(パリティカラム置換回路105)を用いて説明したが、この構成は必須ではない。もっとも、パリティカラム置換回路105は、Parity部の不良を救済する方法として有用である。パリティカラム置換回路105を用いない場合には、カラム1ビットあたり50%(0か1か)の確率で1エラー分の訂正ができなくなってしまい、ECC処理における訂正能力を損なってしまう。これに対して、上記説明の様に、パリティカラム置換回路105を用いてParity部の不良を救済すると、ECC訂正能力を向上できる。
As described above, according to the present invention, the bus width of the ECC Bus (first data bus) to the
In the above-described embodiment, the description has been made using the dedicated PCR replacement system (parity column replacement circuit 105) for the Parity section, which is smaller in scale than the replacement circuit of the Main Data section, but this configuration is not essential. However, the parity
[第1のランダマイズ及びECC処理]
続いて、ECCモード(第1の動作モード)における第1のランダマイズ及びECC処理(欠陥ビットに関してECC回路により不良救済する処理)の詳細について説明する。
なお、ここでは、上述した処理フローのうち、図10(c)に対応するランダマイズ、及びエンコード処理、及び図10(d)に対応するデコード、及びデランダマイズ処理について詳述する。また、以下では、ページバッファ102c(第2のページバッファ)におけるページバッファユニット、ページバッファユニットに接続されるビット線、及びメモリセルトランジスタには不良がないものとして、すなわち、上述したパリティカラム置換回路105による置換処理はないものとして説明をする。
[First randomization and ECC processing]
Next, details of the first randomization and ECC processing (processing for repairing a defective bit by the ECC circuit for defects) in the ECC mode (first operation mode) will be described.
Here, the randomization and encoding processing corresponding to FIG. 10C and the decoding and derandomization processing corresponding to FIG. 10D in the processing flow described above will be described in detail. In the following description, it is assumed that the page buffer unit in the
また、説明を簡単にするため、上述したページバッファ102a(第1のページバッファ)を構成するPB ユニットのうち4個のPB ユニット、及び、ページバッファ102c(第2のページバッファ)を構成するPB ユニットのうち1個のPB ユニットを例にとって、ECCモード(第1の動作モード)における動作を説明する。以下では、この4個のPB ユニットをPB ユニット0〜3とし、1個のPB ユニットをPB ユニット4とする。
For the sake of simplicity, four PB units among the PB units constituting the
ここでは、ECCモードにおける動作として、ランダマイザ、及びECC回路107が、PB ユニット0〜3に格納されているデータに基づいてパリティデータを生成し、生成したパリティデータをPB1 ユニット4に書き戻す処理(ランダマイズ、及びECCエンコード処理)について説明する。また、PB ユニット4に格納されたパリティデータに基づいてPB ユニット0〜3に格納されているデータを、誤り訂正し、かつ、復元する処理(ECCデコード、及びデランダマイズ処理)について説明する。
図11は、ECCモードにおける第1のランダマイズ及びECC処理について説明するための図である。また、図12は、第1のランダマイズ及びECC処理のフローチャートである。なお、以下では、ユーザが、通常モード(第1の動作モード)において、PB ユニット0〜3に、Data D0〜D3を書き込んだものとする。また、PB ユニット4には、これらのData D0〜D3の誤り訂正に使用されるパリティデータが格納されるが、このパリティデータをParity Pxとする。
Here, as an operation in the ECC mode, the randomizer and the
FIG. 11 is a diagram for describing the first randomization and ECC processing in the ECC mode. FIG. 12 is a flowchart of first randomization and ECC processing. In the following, it is assumed that the user has written Data D0 to D3 in the
図11は、第1のランダマイズ及びECC処理を、(1)〜(5)に示す処理により時系列に示し、各処理におけるData D0〜D3、及びParity Pxの論理データ(論理値)を示している。ここで、図11(a)には、Page Buffer(ページバッファ102)に格納されるデータの(1)〜(5)における変化が示されている。また、図11(b)には、Randomizer(ランダマイザ107b)における演算結果の(1)〜(5)における変化が示されている。また、図11(c)には、ECC Engine(ECC回路107a)への入力データ、及びECC処理後のデータの(1)〜(5)における変化が示されている。
また、図12(a)は、第1のランダマイズ及びECC処理におけるランダマイズ、及びエンコード処理のフローを、図12(b)は、デコード処理、及びデランダマイズ処理のフローを示している。
FIG. 11 shows the first randomization and ECC processing in time series by the processing shown in (1) to (5), and shows the logical data (logical values) of Data D0 to D3 and Parity Px in each processing. Yes. Here, FIG. 11A shows changes in data (1) to (5) of data stored in the page buffer (page buffer 102). FIG. 11B shows changes in the calculation results (1) to (5) in the randomizer (
FIG. 12A shows the flow of randomization and encoding processing in the first randomization and ECC processing, and FIG. 12B shows the flow of decoding processing and derandomization processing.
ここで、PB ユニット1は、不良のユニットであり、PB ユニット自身、或いはPB ユニットに接続されるビット線、またはメモリセルトランジスタのいずれかに不良のあるPB ユニットであるものとする。PB ユニット1は、図5に示す回路において、欠陥信号PB_DectがHレベル、欠陥信号nPB_DefectがLレベルであり、Data D1としてデータ0が格納されている。このため、PB ユニット1は、ECCモードのデータ読み出し動作では固定データであるデータ0を出力し、ECCモードのデータ書込み動作では、データを書き込むことはできない。以下では、このPB ユニットと置換されるページバッファ102b(第3のページバッファ)におけるPB ユニット 1の動作については、すなわち、上述したパリティカラム置換回路105の動作については、ここでの説明に直接関係しないため、省略する。
Here, the
なお、PB ユニット1は、通常モード(第2の動作モード)において、ページバッファ102bにおけるPB ユニットに置換される。この置換先のPB ユニットのデータ(本来、ユーザから見てPB ユニット1に書き込むはずのデータ)はECCモード(第1の動作モード)の書き込み動作においてランダマイズ処理、及びエンコード処理され、PB ユニットに書き戻される。また、置換先のPB ユニットのデータは、ECCモードの読み出し動作において、デコード処理、及びデランダマイズ処理され、PB ユニットに書き戻される。この書き戻されたデータは、通常モードにおいて、カラム置換回路104が、PB ユニット1に換えて置換先のPB ユニットを選択することにより、Data Bus(第2のデータバス)を介してI/Oパッド106に読み出される。
The
また、ランダマイザ107bは、一般的には入力したDataをランダム(Random)に符号化する機能を有するが、ここでは説明を簡単にするため、例示として簡易的に奇数番目のビット(ここではData D1、及びData D3)の論理を反転させる機能を有するものとする。また、ECC回路107a(ECC Engine)は、誤り訂正機能を有するが、例示として簡易的に、エンコード(Encode)時には入力されたData D0〜D3に対してParity Pxを生成し、デコード(Decode)時にはParity Pxを基にData D0〜D3の誤り訂正を行うものとする。
The randomizer 107b generally has a function of encoding input data randomly (Random). However, for the sake of simplicity of explanation, the
以下、図10(a)、図10(b)、図11、及び図12を参照しつつ、第1のランダマイズ及びECC処理について詳述する。
メモリセルトランジスタへのデータ書込み動作では、まず、ユーザがI/Oパッド106を介してNAND型フラッシュメモリ10に、所定のコマンド(ライトコマンド)を入力し、アドレス(ここでは、PB ユニット0〜3を選択するカラムアドレス)入力をし、引き続いて、書き込みデータを入力する(図10(a)に示すフローのステップST1)。これにより、図11(a)における(1)Data Inに示す様に、PB ユニット0〜3に格納されるData D0〜D3は、Data“0011”となる。
Hereinafter, the first randomization and ECC processing will be described in detail with reference to FIGS. 10 (a), 10 (b), 11, and 12. FIG.
In the data write operation to the memory cell transistor, the user first inputs a predetermined command (write command) to the
ページバッファ102のPB ユニット0〜PBユニット3は、Data D0〜D3(Data“0011”)を、ECC Bus_1、ECC Bus_2、及びECC Bus_3(第1のデータバス)を介して、ランダマイザ、及びECC回路107に入力(Data Load)する(図12(a)のフローに示すステップST51)。
まず、ランダマイザ107bは、データランダマイズ(Data Randomize)処理を行う(ステップST52a)。ここでは、ランダマイザ107bは、図11(b)における(2)Randomize&ECC Enocodeに示す様に、ランダマイズ処理により、Data“0011”をData“0110”へと変換する。
The
First, the
ECC回路107aは、エンコード(Encode)処理を実行し、パリティデータを生成(Parity Generation)する(ステップST52b)。
ここでは、ECC回路107aは、ランダマイズ処理後の、すなわち変換後のData“0110”に基づいて、Data“0110”に対応するParity Px(Parity Data“P(0110)”とする)を生成する。
The
Here, the
続いて、ランダマイザ、及びECC回路107は、PB ユニット0〜3に、ランダマイズ処理、及びECC処理後のデータを書き戻す(Data Store)処理を実行する(ステップST53)。
ここでは、ECC回路107aは、図11(c)における(3)Randomize&ECC Enocodeに示す様に、PB ユニット0〜PBユニット3にData“0110”を、PB ユニット4にParity Data“P(0110)”を書き戻す。しかしながら、PB ユニット1は、”0”に固定しているため、データ1を書き込むことはできない。そのため、図11(a)における(3)Randomize&ECC Enocodeに示す様に、PB ユニット0〜PBユニット3が格納するデータはData“0010”となる。しかしながら、PB ユニット4が格納するデータは、このData“0110”に基づいて生成されるので、Parity Data“P(0110)”となる。
Subsequently, the randomizer and the
Here, the
以降、PB ユニット0、2〜4において、図7に示すラッチ部にメモリセルに書き込むべきデータ(Data_i)がラッチされ、メモリセルトランジスタへのデータ書込み(Program to Memory Cell)処理が開始される(図10に示すフローのステップST6)。なお、PB ユニット1では、図5に示す回路のうち、オア回路66の出力がLレベルであり、メモリセルトランジスタにデータは書き込まれない。
Thereafter, in the
メモリセルトランジスタからのデータ読み出し動作では、PB ユニット0〜PB ユニット4に格納されたデータが、ECC Bus_1、ECC Bus_2、及びECC Bus_3(第1のデータバス)を介して、ランダマイザ、及びECC回路107に入力(Data Load)される(ステップST61)。
ここでは、図11(c)における(4)Data Loadに示す様に、ECC回路107aには、PB ユニット0〜PB ユニット4に格納されたData“0010”、Parity Data“P(0110)”が、ランダマイザ107bを介さずに直接入力される。
In the data read operation from the memory cell transistor, the data stored in the
Here, as shown in (4) Data Load in FIG. 11C, the
ECC回路107aは、デコード(Decode)処理を実行し、Parity Data“P(0110)”に基づいて、PB ユニット0〜PB ユニット3に格納されたData“0010”の誤りを訂正(Error Correction)する(ステップST62a)。
ここでは、上記ステップST53においてPBユニット 1にデータ1を書きこむことができなかったため、PB ユニット4に格納されたデータであるParity Data“P(0110)”に基づいて、PB ユニット1のデータ0のみが誤り訂正されてデータ1となる。つまり、ECC回路107aは、図11(c)における(5)ECC Decode、De−Randomize&Data Storeに示す様に、PB ユニット0〜PB ユニット3の訂正後のデータをData“0110”とする。
The
Here, since
ランダマイザ107bは、訂正後のData“0110”をランダマイズ処理(De−Randomize)する(ステップST62b)。ここでは、ランダマイザ107bは、図11(b)における(5)ECC Decode、De−Randomize&Data Storeに示す様に、ランダマイズ処理により、Data“0110”の奇数番目のビットの論理を反転させて、Data“0011”へと変換する。
The
続いて、ランダマイザ、及びECC回路107は、PB ユニット0〜4にECC処理後のData“0011”を書き戻す(Data Store)処理を実行する(ステップST63)。
このようにして、ランダマイザ、及びECC回路107により、真のData“0011”(ユーザが、図11(a)における(1)Data Inに示す様に、PB ユニット0〜3に書き込んだはずのデータ)がページバッファ102へ格納される。
Subsequently, the randomizer and the
In this manner, the true data “0011” (the data that the user should have written in the
以降、第2の動作モードにおいて、選択信号Sel_Aを与えることにより、ユーザがPB ユニット0〜3を介して各メモリセルトランジスタへ書き込んだ書き込みデータが、誤り訂正されて、I/Oパッド106から出力される(図10に示すフローのステップST17)。なお、この際、PB ユニット1(不良を有するカラム)の置換(Defect Column Repair)が実行される(ステップST16)。これにより、PB ユニット1に書き込むべきであったが、実際はページバッファ102bのPBユニットに書き込まれたデータ(このデータも上述した第1のランダマイズ及びECC処理により誤り訂正されてPB ユニットに格納されている)が、I/Oパッド106から出力される。
Thereafter, in the second operation mode, when the selection signal Sel_A is given, the write data written by the user to each memory cell transistor via the
このように、NAND型フラッシュメモリ10(半導体記憶装置)は、第1のランダマイズ及びECC処理を実行する。第1のランダマイズ及びECC処理では、ECCモード(第1の動作モード)のデータ書き込み動作において、ランダマイザ107b(ランダマイザ)は、ページバッファ102a(第1のページバッファ)の出力データをランダマイズしてECC回路107a(ECC回路)に入力する。ECC回路107aは、ランダマイザ107bから入力されるデータ(上記例ではData“0011”)に基づいて、パリティデータ(Parity Data“P(0110)”)を生成してページバッファ102c(第2のページバッファ)にパリティデータを書き込む。一方、第1のランダマイズ及びECC処理では、第1の動作モードのデータ読み出し動作において、ECC回路107aは、ページバッファ102cのパリティデータに基づいて、ページバッファ102aのデータ(上記例ではData“0010”)を誤り訂正する。ランダマイザ107bは訂正後のデータ(上記例ではData“0110”)をデランダマイズしてページバッファ102aに書き戻す。
As described above, the NAND flash memory 10 (semiconductor memory device) performs the first randomization and ECC processing. In the first randomization and ECC processing, in the data write operation in the ECC mode (first operation mode), the
これにより、ページバッファ102a(第1のページバッファ)のうちメモリセルまたはビット線に不良が有るPB ユニット(ページバッファ)については、ランダマイザ、及びECC回路107(ECC回路)により誤りが訂正される。そのため、本発明のNAND型フラッシュメモリ10(半導体記憶装置)によれば、ECCのデコード処理とデランダマイズ処理とを高速に実行することができるとともに、救済機能を省略することができる。
As a result, the error is corrected by the randomizer and the ECC circuit 107 (ECC circuit) for the PB unit (page buffer) having a defective memory cell or bit line in the
[第2のランダマイズ及びECC処理]
ところで、上述した第1のランダマイズ及びECC処理では、不良のあるPB ユニット1に対して、ECCの訂正処理能力を使用している。これに対して、不良のあるPB ユニットに対してECC回路107aによる誤り訂正を不要とする、第2のランダマイズ及びECC処理について、以下に詳述する。
なお、ここでは、第1のランダマイズ及びECC処理と同様に、図10(c)に対応するランダマイズ、及びエンコード処理、及び図10(d)に対応するデコード、及びデランダマイズ処理について詳述する。また、第1のランダマイズ及びECC処理と同様に、ページバッファ102c(第2のページバッファ)におけるページバッファユニット、ページバッファユニットに接続されるビット線、及びメモリセルトランジスタには不良がないものとして、すなわち、上述したパリティカラム置換回路105による置換処理はないものとして説明をする。
[Second randomization and ECC processing]
By the way, in the first randomization and ECC processing described above, the ECC correction processing capability is used for the
Here, as in the first randomization and ECC processing, the randomization and encoding processing corresponding to FIG. 10C and the decoding and derandomization processing corresponding to FIG. 10D will be described in detail. Similarly to the first randomization and ECC processing, the page buffer unit in the
また、第1のランダマイズ及びECC処理と同様に、ページバッファ102aを構成するPB ユニットのうち4個のPB ユニット0〜PB ユニット3、及び、ページバッファ102c(第2のページバッファ)を構成するPB ユニットのうち1個のPB ユニット4を例にとって、ECCモード(第1の動作モード)における動作を説明する。
図13は、ECCモードにおける第2のランダマイズ及びECC処理について説明するための図である。また、図14は、第2のランダマイズ及びECC処理のフローチャートである。なお、以下では、第1のランダマイズ及びECC処理と同様に、ユーザが、通常モード(第1の動作モード)において、PB ユニット0〜3に、Data D0〜D3を書き込んだものとする。また、PB ユニット4には、これらのData D0〜D3の誤り訂正に使用されるパリティデータが格納されるが、このパリティデータをParity Pxとする。
Similarly to the first randomization and ECC processing, four
FIG. 13 is a diagram for describing the second randomization and ECC processing in the ECC mode. FIG. 14 is a flowchart of the second randomization and ECC process. In the following description, it is assumed that the user writes Data D0 to D3 in the
図13は、第2のランダマイズ及びECC処理を、(1)〜(7)に示す処理により時系列に示し、各処理におけるData D0〜D3、及びParity Pxの論理データ(論理値)を示している。ここで、図13(a)には、Page Buffer(ページバッファ102)に格納されるデータの(1)〜(7)における変化が示されている。図13(b)には、Randomizer(ランダマイザ107b)における演算結果の(1)〜(7)における変化が示されている。また、図13(c)には、ECC Engine(ECC回路107a)への入力データ、及びECC処理後のデータの(1)〜(7)における変化が示されている。
また、図14は、第2のランダマイズ及びECC処理におけるランダマイズ、及びエンコード処理のフローを示している。なお、デコード処理、及びデランダマイズ処理のフローについては、第1のランダマイズ及びECC処理と同じであるので、図12(b)を用いて説明する。
FIG. 13 shows the second randomization and ECC processing in time series by the processing shown in (1) to (7), and shows the logical data (logical values) of Data D0 to D3 and Parity Px in each processing. Yes. Here, FIG. 13A shows changes in data (1) to (7) of data stored in the page buffer (page buffer 102). FIG. 13B shows changes in the calculation results (1) to (7) in the randomizer (
FIG. 14 shows a flow of randomization and encoding processing in the second randomization and ECC processing. The flow of the decoding process and the derandomization process is the same as the first randomization and ECC process, and will be described with reference to FIG.
ここで、PB ユニット1は、第1のランダマイズ及びECC処理と同様に、不良のユニットであり、PB ユニット自身、或いはPB ユニットに接続されるビット線、またはメモリセルトランジスタのいずれかに不良のあるPB ユニットであるものとする。このため、PB ユニット1は、ECCモードのデータ読み出し動作では固定データであるデータ0を出力し、ECCモードのデータ書込み動作では、データを書き込むことはできない。なお、以下では、このPB ユニットと置換されるページバッファ102b(第3のページバッファ)におけるページバッファユニットの動作については、すなわち、上述したパリティカラム置換回路105の動作については、第1のランダマイズ及びECC処理と同様に、ここでの説明に直接関係しないため、省略する。
また、ランダマイザ107b、及び、ECC回路107aの機能は、第1のランダマイズ及びECC処理と同様の機能を有するものとする。
Here, the
The functions of the
以下、図10(a)、図10(b)、図12(b)、図13、及び図14を参照しつつ、第2のランダマイズ及びECC処理について詳述する。
メモリセルトランジスタへのデータ書込み動作では、まず、ユーザがI/Oパッド106を介してNAND型フラッシュメモリ10に、所定のコマンド(ライトコマンド)を入力し、アドレス(ここでは、PB ユニット0〜3を選択するカラムアドレス)入力をし、引き続いて、書き込みデータを入力する(図10(a)に示すフローのステップST1)。図13(a)における(1)Data Inに示す様に、PB ユニット0〜PBユニット3に格納されるData D0〜D3は、Data“0011”となる。
Hereinafter, the second randomization and ECC processing will be described in detail with reference to FIGS. 10 (a), 10 (b), 12 (b), 13, and 14. FIG.
In the data write operation to the memory cell transistor, the user first inputs a predetermined command (write command) to the
ページバッファ102のPB ユニット0〜PBユニット3は、Data D0〜D3(Data“0011”)を、ECC Bus_1、ECC Bus_2、及びECC Bus_3(第1のデータバス)を介して、ランダマイザ、及びECC回路107に入力(Data Load)する(ステップST71)。
まず、ランダマイザ107bは、データランダマイズ(Data Randomize)処理を行う(ステップST72a)。ここでは、ランダマイザ107bは、図13(b)における(2)Randomizeに示す様に、ランダマイズ処理により、Data“0011”をData“0110”へと変換する。
The
First, the
続いて、ランダマイザ、及びECC回路107は、第1のランダマイズ及びECC処理と相違して、PB ユニット0〜3に、ランダマイズ処理後のデータを書き戻す(Data Store)処理を実行する(ステップST81)。
ここでは、ランダマイザ107bは、図13(b)における(3)Randomize&Data Storeに示す様に、PB ユニット0〜PBユニット3にData“0110”を書き戻す。しかしながら、PB ユニット1は、”0”に固定しているため、データ1を書き込むことはできない。そのため、図13(a)における(3)Randomize&ECC Enocodeに示す様に、PB ユニット0〜PBユニット3が格納するデータはData“0010”となる。
Subsequently, unlike the first randomization and ECC processing, the randomizer and
Here, the
続いて、ページバッファ102のPB ユニット0〜PBユニット3は、Data D0〜D3(Data“0010”)を、ECC Bus_1、ECC Bus_2、及びECC Bus_3(第1のデータバス)を介して、ランダマイザ、及びECC回路107に入力(Data Load)する(ステップST82)。
ECC回路107aは、エンコード(Encode)処理を実行し、パリティデータを生成(Parity Generation)する(ステップST72b)。
ここでは、ECC回路107aは、第1のランダマイズ及びECC処理と相違して、PB ユニット0〜3に格納されたData“0010”に基づいて、Data“0010”に対応するParity Px(Parity Data“P(0010)”とする)を生成する。
Subsequently, the
The
Here, unlike the first randomization and ECC processing, the
続いて、ランダマイザ、及びECC回路107は、PB ユニット0〜3に、ECC処理後のデータを書き戻す(Data Store)処理を実行する(ステップST73)。
ここでは、ECC回路107aは、図13(a)における(5)Data Storeに示す様に、PB ユニット0〜PBユニット3にData“0010”を、PB ユニット4にParity Data“P(0010)”を書き戻す。ここで、PB ユニット1は、”0”に固定しているため、第1のランダマイズ及びECC処理と相違して、ユーザが図13(a)における(1)Data Inにおいて書いたデータと同じデータ0が書き込まれたことと同等の状態となる。つまり、図13(a)における(5)Data Storeに示す様に、PB ユニット0〜PBユニット3が格納するデータはData“0010”となる。また、PB ユニット4が格納するデータは、Data“0010”に基づいて生成されたParity Data“P(0010)”となる。なお、ページバッファに書き戻す際、PB ユニット4にParity Data“P(0010)”を書き戻し、PB ユニット0〜PBユニット3にはデータを書き戻さなくてもよい。
Subsequently, the randomizer and the
Here, the
以降、第1のランダマイズ及びECC処理と同様に、PB ユニット0、2〜4において、図7に示すラッチ部にメモリセルに書き込むべきデータ(Data_i)がラッチされ、メモリセルトランジスタへのデータ書込み(Program to Memory Cell)処理が開始される(図10に示すフローのステップST6)。なお、PB ユニット1では、図5に示す回路のうち、オア回路66の出力がLレベルであり、メモリセルトランジスタにデータは書き込まれない。
Thereafter, similarly to the first randomization and ECC processing, in the
メモリセルトランジスタからのデータ読み出し動作では、PB ユニット0〜PB ユニット4に格納されたデータが、ECC Bus_1、ECC Bus_2、及びECC Bus_3(第1のデータバス)を介して、ランダマイザ、及びECC回路107に入力(Data Load)される(図12(b)に示すフローのステップST61)。
ここでは、図13(c)における(6)Data Loadに示す様に、ECC回路107aには、PB ユニット0〜PB ユニット4に格納されたData“0010”、Parity Data“P(0010)”が、ランダマイザ107bを介さずに直接入力される。
In the data read operation from the memory cell transistor, the data stored in the
Here, as shown in (6) Data Load in FIG. 13C, the
ECC回路107aは、デコード(Decode)処理を実行し、Parity Data“P(0010)”に基づいて、PB ユニット0〜PB ユニット3に格納されたData“0010”の誤りを訂正(Error Correction)する(ステップST62a)。
ここでは、上記ステップST73においてPBユニット 1において、データ0が書き込まれたことと同等の状態となるので、PB ユニット1のデータ0は誤り訂正されない。ECC回路107aは、図13(c)における(7)ECC Decode、De−Randomize&Data Storeに示す様に、PB ユニット0〜PB ユニット3のデータに誤りがないので、出力データをData“0010”とする。
The
Here, since the
ランダマイザ107bは、ECC回路107aの出力データであるData“0010”をランダマイズ処理(De−Randomize)する(ステップST62b)。ここでは、ランダマイザ107bは、図13(b)における(7)ECC Decode、De−Randomize&Data Storeに示す様に、ランダマイズ処理により、Data“0010”の奇数番目のビットの論理を反転させて、Data“0111”へと変換する。
The
続いて、ランダマイザ、及びECC回路107は、PB ユニット0〜4にECC処理後のData“0111”を書き戻す(Data Store)処理を実行する(ステップST63)。しかしながら、PB ユニット1は、”0”に固定しているため、データ1を書き込むことはできない。そのため、図13(a)における(7)ECC Decode、De−Randomize&Data Storeに示す様に、PB ユニット0〜PBユニット3が格納するデータはData“0010”となる。
このようにして、ランダマイザ、及びECC回路107により、真のData“0011”(ユーザが、図13(a)における(1)Data Inに示す様に、PB ユニット0〜3に書き込んだはずのデータ)がページバッファ102へ格納される。
Subsequently, the randomizer and the
In this manner, the true data “0011” (the data that the user should have written to the
以降、第2の動作モードにおいて、選択信号Sel_Aを与えることにより、ユーザがPB ユニット0〜3を介して各メモリセルトランジスタへ書き込んだ書き込みデータが、誤り訂正されて、I/Oパッド106から出力される(図10に示すフローのステップST17)。なお、この際、PB ユニット1(不良を有するカラム)の置換(Defect Column Repair)が実行される(ステップST16)。これにより、PB ユニット1に書き込むべきであったが、実際はページバッファ102bのPBユニットに書き込まれたデータ(このデータも上述した第2のランダマイズ及びECC処理により誤り訂正されている)が、I/Oパッド106から出力される。
Thereafter, in the second operation mode, when the selection signal Sel_A is given, the write data written by the user to each memory cell transistor via the
このように、NAND型フラッシュメモリ10(半導体記憶装置)は、第1のランダマイズ及びECC処理に替えて、第2のランダマイズ及びECC処理を実行する。第2のランダマイズ及びECC処理では、ECCモード(第1の動作モード)のデータ書き込み動作において、ランダマイザ107b(ランダマイザ)は、ページバッファ102a(第1のページバッファ)の出力データをランダマイズしてページバッファ102aに書き戻す。ECC回路107a(ECC回路)は、ページバッファ102aに書き戻されたデータに基づいてページバッファ102c(第2のページバッファ)にパリティデータを書き込む。一方、第2のランダマイズ及びECC処理では、第1の動作モードのデータ読み出し動作において、ECC回路107aは、ページバッファ102cのパリティデータに基づいて、ページバッファ102aのデータを誤り訂正する。ランダマイザ107bは訂正後のデータをデランダマイズしてページバッファ102aに書き戻す。
In this manner, the NAND flash memory 10 (semiconductor memory device) executes the second randomization and ECC processing instead of the first randomization and ECC processing. In the second randomization and ECC processing, in the data write operation in the ECC mode (first operation mode), the
これにより、ページバッファ102a(第1のページバッファ)のうちメモリセルまたはビット線に不良が有るPB ユニット(ページバッファ)については、誤りが発生しないように処理される。そのため、本発明のNAND型フラッシュメモリ10(半導体記憶装置)によれば、ECC処理の訂正処理能力を下げずに、ECCのデコード処理とデランダマイズ処理とを高速に実行することができる。
As a result, the PB unit (page buffer) having a defect in the memory cell or the bit line in the
[第3のランダマイズ及びECC処理]
なお、上述した第2のランダマイズ及びECC処理に替えて、第3のランダマイズ及びECC処理を実行することにより、上述した第2のランダマイズ及びECC処理の効果に加えて、更に、エンコード処理においてページバッファへのデータ書き戻し処理(Data Store)を1回にでき、エンコード処理の高速化を図ることができる効果を奏する。
以下、第3のランダマイズ及びECC処理について、図15、及び図16を用いて説明する。図15は、ランダマイザ107b_1の回路構成を示す図であり、図16は、第3のランダマイズ及びECC処理のフローチャートである。
ここでは、第3のランダマイズ及びECC処理として、前述のページバッファに格納されている不良情報をランダマイザ107bに転送し、ランダマイザ107b側では転送された不良ビット情報をもとに、不良ビットに対してランダマイズ処理をせず、固定データとする機構について説明する。
[Third randomization and ECC processing]
In addition to the effects of the second randomization and ECC processing described above, by executing the third randomization and ECC processing instead of the second randomization and ECC processing described above, a page buffer is further used in the encoding processing. Data write-back processing (Data Store) can be performed once, and the speed of encoding processing can be increased.
Hereinafter, the third randomization and ECC processing will be described with reference to FIGS. 15 and 16. FIG. 15 is a diagram illustrating a circuit configuration of the randomizer 107b_1, and FIG. 16 is a flowchart of third randomization and ECC processing.
Here, as the third randomization and ECC processing, the failure information stored in the page buffer is transferred to the
図15に示すランダマイザ107bの1ビット分の回路(以下、ランダマイザ107b_1とする)は、排他的論理和回路151、DFF(D型フリップフロップ)152、及びアンド回路153を含んで構成される。
排他的論理和回路151において、第1入力端子が、不図示のランダムシード発生回路に接続され、ランダムシードデータRSの1ビット分のデータが入力される。また、第2入力端子が、ECC Busを介してPB ユニットに接続され、読み出しデータData_Out_Bが入力される。また、排他的論理和回路151は、出力端子がアンド回路153の第1入力端子に接続され、出力信号(ランダムシードデータRSの1ビット分のデータと読み出しデータData_Out_Bとの排他的論理和)をアンド回路153に対して出力する。
A circuit for one bit of the
In the exclusive OR
DFF152において、データ入力端子Dは、ECC Busを介してPB ユニットに接続され、読み出しデータData_Out_Bが入力される。また、クロック端子CKは、例えばECC回路107aが内蔵するクロック信号発生回路に接続され、クロック信号Flag_Latch_Clockが入力される。クロック信号Flag_Latch_Clockは、ランダマイズ処理期間において、選択信号Sel_Bが切り替わる毎に発生する信号である。つまり、DFF152は、クロック端子CKにクロック信号Flag_Latch_Clockのトグル(Toggle)入力されるたびに、PB ユニットが出力する読み出しデータData_Out_BがD端子に取り込まれる。
また、DFF152において、データ出力端子Qは、アンド回路153の第1入力端子に接続される。
In the
In the
また、アンド回路153は、第1入力端子が排他的論理和回路151の出力端子に接続され、第2入力端子がDFF152のデータ出力端子Qに接続され、出力端子は、ランダマイザ、及びECC回路107のパリティ生成回路41とPBユニットに接続される。
ここで、図5または図6に示すPB制御回路60を参照して、ECCのエンコード処理時に、選択信号DIO<0>〜<7>をすべてLレベルとし、ビット内部回路50_0〜50_7を非選択状態とすれば、読み出し信号RDの配線から見てビット側(ビット線、及びメモリセルトランジスタ側)はハイインピーダンス状態となる。そこで、選択信号Sel_BをHレベルとしてPB ユニットのPB制御回路60を選択すれば、不良ビット情報が(トランジスタ90bを通して)、ECC Busに読み出しデータData_Out_Bとして現れる。つまり、不良ビット情報をランダマイザ107b_1のDFF152(不良ビット情報格納部)に転送することができる。
In the AND
Here, referring to
詳細に説明すると、PB ユニットが不良であれば、欠陥信号PB_DefectがHレベルであるので、トランジスタ61cがオンし、読み出しデータData_Out_BはLレベルとなる。そこで、ランダマイザ107b_1において、不良ビット情報が読み出しデータData_Out_BとしてPB ユニットから出力されたら、クロック信号Flag_Latch_Clockをトグル入力することにより、不良情報をDFF152にラッチすることができる。PB ユニットが不良であればLレベルがDFF152にラッチされ、データ出力端子QもLレベルとなる。これにより、アンド回路153の出力信号である“Randomized Data”、ランダマイザ107b_1の出力は、Lレベルに固定される。一方、PB ユニットが不良ではない場合、読み出しデータData_Out_Bの配線はプルアップされているため、HレベルがDFF152にラッチされる。これにより、データ出力端子QはHレベルとなり、ランダムシードRSと読み出しデータData_Out_Bの排他的論理和が、アンド回路153から“Randomized Data”として出力され、ランダマイザ107b_1がランダマイザとして機能する。
More specifically, if the PB unit is defective, the defect signal PB_Defect is at the H level, so that the
続いて、図16を用いて、第3のランダマイズ及びECC処理について説明する。なお、ここでは、第2のランダマイズ及びECC処理との比較を行うため、図13を用いて説明した第2のランダマイズ及びECC処理と同様に、PB ユニット0〜PB ユニット3のうちPB ユニット1が不良ユニットであるものとして説明する。
まず、PB ユニット0〜PBユニット3から不良情報(Defect Bit Information)をランダマイザ107bに転送する(ステップST91a)。
具体的には、ページバッファ102のPB ユニット0〜PBユニット3に対して、選択信号DIOを全てLレベルにし、PB ユニット0〜PBユニット3各々において、読み出し信号RDの配線から見てビット側をハイインピーダンス状態とする。次に、選択信号Sel_BをHレベルにして、読み出し信号RDの配線とECC Busとを接続する。PB ユニット0〜PBユニット3のうち、PB ユニット1のPB制御回路60においては、トランジスタ61c、及び61bがオンして、読み出しデータData_Out_BがLレベルとなる。一方、PB ユニット0、2、3については、読み出しデータData_Out_Bの配線に接続されたプルアップ回路(Pull Up)により、読み出しデータData_Out_Bは、Hレベルに維持される。つまり、ランダマイザ107bのDFF152(ここでは、PB ユニット0〜PBユニット3に対応させて4個ある)には、ECC Bus_1、ECC Bus_2、及びECC Bus_3(第1のデータバス)を介して、Data D0〜D3としてData“1011”が格納される。
Next, the third randomization and ECC process will be described with reference to FIG. Here, in order to make a comparison with the second randomization and ECC processing, the
First, defect information (Detect Bit Information) is transferred from the
Specifically, all the selection signals DIO are set to L level with respect to the
次に、Data D0〜D3(Data“0011”)を、ECC Bus_1、ECC Bus_2、及びECC Bus_3(第1のデータバス)を介して、ランダマイザ107bに入力(Data Load)する(ステップST91b)。
このとき、選択信号DIOはいずれか一本が選択されるので、ページバッファ102のPB ユニット0〜PBユニット3から、Data D0〜D3(Data“0011”)が、ECC Bus_1、ECC Bus_2、及びECC Bus_3を介して、ランダマイザ107bに入力される。
Next, Data D0 to D3 (Data “0011”) are input (Data Load) to the
At this time, any one of the selection signals DIO is selected, so that the data D0 to D3 (Data “0011”) from the
次に、ランダマイザ107bは、データランダマイズ(Data Randomize)処理を行う(ステップST92)。ここでは、ランダマイザ107bのDFF152(不良ビット情報格納部)には、Data“1011”が格納されている。また、ここでは、ランダムシードRSは、第2のランダマイズ及びECC処理と同様、奇数番目のビットを反転させるため、Data D0〜D3に対応してData“0101”である。
PB ユニット0〜PBユニット3のうちPB ユニット1が出力するデータD1(“0”)は、DFF152に格納されているデータが“0”であるため、排他的論理和演算の結果はアンド回路153から出力されず、アンド回路153の出力信号である“Randomized Data”は“0”となる。
一方、PB ユニット0、2、3が出力するデータD0(“0”)、D2(“1”)、D3(“1”)は、それぞれランダムシードRS“0”、“0”、“1”と排他的論理和演算され、すなわち、奇数番目のデータのみ反転され、“0”、“1”、“0”となる。また、データD0、D2、D3は、DFF152に格納されているデータが全て“1”であるため、排他的論理和演算の結果がアンド回路153から出力され、アンド回路153の出力信号である“Randomized Data”は、データD0、D2、D3に対応して、それぞれ“0”、“1”、“0”となる。
つまり、固定データを出力するPB ユニット1のデータは、奇数番目のビットであるが、第2のランダマイズ及びECC処理のときのように、ランダマイズ処理(ここでは論理反転処理)されて“1”となることはない。一方、固定データではない、データD0、D2、D3は、ランダマイズ処理される。
Next, the
Since the data D1 (“0”) output from the
On the other hand, the data D0 (“0”), D2 (“1”), and D3 (“1”) output from the
That is, the data of the
以上のような固定データを除く、ランダマイズ処理の結果、ランダマイザ107bは、Data“0010”をECC回路107aに対して出力する。
これは、第2のランダマイズ及びECC処理において、ページバッファ102のPB ユニット0〜PBユニット3から、Data D0〜D3(Data“0010”)を、ECC Busを介して、ECC回路107aに入力(Data Load)する状態と同じである(図13(a)における(4)Data Load&ECC Encode参照)。
その後は、第2のランダマイズ及びECC処理と同様、下記の処理が行われる。
すなわち、ECC回路107aは、エンコード(Encode)処理を実行し、パリティデータを生成(Parity Generation)する(ステップST72b)。
ここでは、ECC回路107aは、ランダマイザ107bから入力されるData“0010”に基づいて、Data“0010”に対応するParity Px(Parity Data“P(0010)”)を生成する。
As a result of the randomizing process excluding the fixed data as described above, the
In the second randomization and ECC processing, Data D0 to D3 (Data “0010”) are input from the
Thereafter, the following processing is performed as in the second randomization and ECC processing.
That is, the
Here, the
続いて、ランダマイザ、及びECC回路107は、PB ユニット0〜3に、ECC処理後のデータを書き戻す(Data Store)処理を実行する(ステップST73)。
ここでは、ECC回路107aは、図13(a)における(5)Data Storeに示す様に、PB ユニット0〜PBユニット3にData“0010”を、PB ユニット4にParity Data“P(0010)”を書き戻す。ここで、PB ユニット1は、”0”に固定しているため、第2のランダマイズ及びECC処理と同様、ユーザが図13(a)における(1)Data Inにおいて書いたデータと同じデータ0が書き込まれたことと同等の状態となる。つまり、図13(a)における(5)Data Storeに示す様に、PB ユニット0〜PBユニット3が格納するデータはData“0010”となる。また、PB ユニット4が格納するデータは、Data“0010”に基づいて生成されたParity Data“P(0010)”となる。
Subsequently, the randomizer and the
Here, the
このように、第3のランダマイズ及びECC処理においては、ランダマイザ(ランダマイザ107b)は、ランダマイズ処理に先立って不良ビット情報格納部(DFF152)に取り込んだ第1のページバッファ(ページバッファ102a)の不良情報に基づいて、第1のページバッファの出力データ(Data D0〜D3)のうち、固定されたデータ(Data D1)を除く、第1のページバッファの出力データをランダマイズしてECC回路107aに入力する。これにより、第2のランダマイズ及びECC処理と同様に、ECC処理の訂正処理能力を下げずに、ECCのデコード処理とデランダマイズ処理とを高速に実行することができる。また、第2のランダマイズ及びECC処理に比べて、ページバッファにデータを書き戻すData Store処理(図14に示すステップST81)、ページバッファからECC回路へデータを入力するData Load処理(図14に示すステップST82)を不要とすることができる。そのため、第2のランダマイズ及びECC処理に比べて、ECC処理のエンコード処理を高速に実行することができる。
As described above, in the third randomization and ECC processing, the randomizer (
また、本発明のNAND型フラッシュメモリ10(半導体記憶装置)は、ECC Bus_1〜3(第1のデータバス)と、ECCモード(第1の動作モード)によりメモリセルとの間でデータを転送する場合、複数のビット線のうちECC Busと同じ本数のビット線と、ECC Busとを接続してデータを転送するページバッファ102(データ転送部)と、を備える。また、データ転送部は、通常メモリセルに接続されるビット線に出力される出力データをラッチするページバッファ102a(第1のページバッファ)と、パリティメモリセルに接続されるビット線に出力される出力データをラッチするページバッファ102c(第2のページバッファ)と、を含んで構成される。そして、第1のデータバスは、第1のページバッファ、及び第2のページバッファと接続され、第1のデータバスに接続されるとともに、第2のページバッファの出力データに基づき、第1のページバッファの出力データの誤りを訂正するECC回路107a(ECC回路)を備える。また、第1のデータバスに接続され、予め設定されたシードデータに基づいて、第1のページバッファから入力されるデータをランダマイズし、ECC回路から入力されるデータをデランダマイズするランダマイザ107b(ランダマイザ)を備える。
Also, the NAND flash memory 10 (semiconductor memory device) of the present invention transfers data between ECC Bus_1 to 3 (first data bus) and memory cells in the ECC mode (first operation mode). In this case, the same number of bit lines as the ECC bus among a plurality of bit lines and a page buffer 102 (data transfer unit) for transferring data by connecting the ECC bus are provided. The data transfer unit outputs data to a
これにより、ページバッファ102の出力に接続されるECC Bus(第1のデータバス)を、ECCモード(第1動作モード)用に用いることができる。また、ECC Busには、ランダマイザ107b(ランダマイザ)、及びECC回路107a(ECC回路)が設けられる。そのため、本発明のNAND型フラッシュメモリ10によれば、ECC回路、及びランダマイザ107(ECC回路、及びランダマイザ)を内蔵したNAND型フラッシュメモリ10(半導体記憶装置)において、ECC処理におけるデコード(Decode)動作とデランダマイズ(De−Randomize)動作を同時に実行でき、復元、かつ訂正されたデータの読み出し時間を短縮することができる。
Thereby, the ECC Bus (first data bus) connected to the output of the
例えば、従来のNAND型フラッシュメモリにおいては、所定のデータ長のデータについてランダマイズ処理、及びECCデコード処理する場合、ページバッファにおけるデータのセットアップとセンシング処理とに20μs(マイクロ秒)、デランダマイズ処理に10μs、ECCのデコード処理に20μs、それぞれ要しており、データの読み出し時間が50μsであった。これに対し、本実施形態のNAND型フラッシュメモリ10では、デコード(Decode)動作とデランダマイズ(De−Randomize)動作をランダマイザ、及びECC回路107において同時に実行できるため、ECCデコード、及びデランダマイズ処理に要する時間を20μsまで短縮でき、データの読み出し時間を40μsまで短縮することができる。
For example, in a conventional NAND flash memory, when randomizing processing and ECC decoding processing are performed on data of a predetermined data length, 20 μs (microseconds) is required for data setup and sensing processing in the page buffer, and 10 μs is required for derandomizing processing. The ECC decoding process required 20 μs, and the data read time was 50 μs. On the other hand, in the
以上、この発明の実施形態を、図面を参照して詳述してきたが、具体的な構成はこの実施形態に限られるものではなく、この発明の要旨を逸脱しない範囲の設計等も含まれる。 The embodiment of the present invention has been described in detail with reference to the drawings. However, the specific configuration is not limited to this embodiment, and includes a design and the like within the scope not departing from the gist of the present invention.
10…NAND型フラッシュメモリ、101…メモリアレイ、102,102a,102b,102c,102d…ページバッファ、103,108…カラムコーディング回路、104…カラム置換回路、105…パリティカラム置換回路、107a…ECC回路、107b…ランダマイザ、106,106c…I/Oパッド
DESCRIPTION OF
Claims (7)
第1の動作モードによりメモリセルとの間でデータを転送する場合、複数のビット線のうち前記第1のデータバスと同じ本数のビット線と、前記第1のデータバスとを接続してデータを転送するデータ転送部と、を備え、
前記データ転送部は、
通常メモリセルに接続されるビット線に出力される出力データをラッチする第1のページバッファと、
パリティメモリセルに接続されるビット線に出力される出力データをラッチする第2のページバッファと、を含んで構成され、
前記第1のデータバスは、前記第1のページバッファ、及び前記第2のページバッファと接続され、
さらに、前記第1のデータバスに接続されるとともに、前記第2のページバッファの出力データに基づき、前記第1のページバッファの出力データの誤りを訂正するECC回路と、
前記第1のデータバスに接続され、予め設定されたシードデータに基づいて、前記第1のページバッファから入力されるデータをランダマイズし、前記ECC回路から入力されるデータをデランダマイズするランダマイザと、を備える、
ことを特徴とする半導体記憶装置。 A first data bus;
When data is transferred between memory cells in the first operation mode, the same number of bit lines as the first data bus among a plurality of bit lines and the first data bus are connected to each other. A data transfer unit for transferring
The data transfer unit is
A first page buffer for latching output data output to a bit line normally connected to a memory cell;
A second page buffer that latches output data output to a bit line connected to the parity memory cell,
The first data bus is connected to the first page buffer and the second page buffer,
An ECC circuit that is connected to the first data bus and corrects an error in the output data of the first page buffer based on the output data of the second page buffer;
A randomizer connected to the first data bus, for randomizing data input from the first page buffer based on preset seed data, and derandomizing data input from the ECC circuit; Comprising
A semiconductor memory device.
前記ページバッファ制御回路は、メモリセルまたはビット線に不良が有る場合、前記第1のデータバスからの書き込みを許可しないことを特徴とする請求項1に記載の半導体記憶装置。 A page buffer control circuit configured to fix the output of the page buffer having a defect in a memory cell or a bit line in the first page buffer;
The semiconductor memory device according to claim 1, wherein the page buffer control circuit does not permit writing from the first data bus when a memory cell or a bit line has a defect.
前記データ転送部は、第2の動作モードによりメモリセルとの間でデータを転送する場合、複数のビット線のうち前記第2のデータバスと同じ本数のビット線と、前記第2のデータバスとを接続してデータを転送し、
前記第1の動作モードでは、前記第1のページバッファのうち、メモリセルまたはビット線に不良が有るページバッファと、前記第2の動作モードでの救済置換を前提として存在する第3のページバッファとの間において救済置換を行わずに、前記ECC回路、及び前記ランダマイザの入力データとして取り扱うことを特徴とする請求項1または請求項2いずれかに記載の半導体記憶装置。 The second data bus is configured with a different number from the first data bus, and is provided independently of the first data bus,
When the data transfer unit transfers data to or from a memory cell in the second operation mode, the same number of bit lines as the second data bus among the plurality of bit lines, and the second data bus And transfer data,
In the first operation mode, among the first page buffers, a page buffer having a defect in a memory cell or a bit line, and a third page buffer existing on the premise of repair replacement in the second operation mode 3. The semiconductor memory device according to claim 1, wherein the semiconductor memory device is handled as input data of the ECC circuit and the randomizer without performing repair replacement between the first and second circuits.
前記ランダマイザは、前記第1のページバッファの出力データをランダマイズして前記ECC回路に入力し、前記ECC回路は、前記ランダマイザから入力されるデータに基づいて、パリティデータを生成して前記第2のページバッファにパリティデータを書き込み、
一方、前記第1の動作モードのデータ読み出し動作において、
前記ECC回路は、前記第2のページバッファのパリティデータに基づいて、前記第1のページバッファのデータを誤り訂正し、前記ランダマイザは訂正後のデータをデランダマイズして前記第1のページバッファに書き戻す、
第1のランダマイズ及びECC処理を実行することを特徴とする請求項3に記載の半導体記憶装置。 In the data write operation in the first operation mode,
The randomizer randomizes the output data of the first page buffer and inputs it to the ECC circuit, and the ECC circuit generates parity data based on the data input from the randomizer to generate the second data Write parity data to the page buffer,
On the other hand, in the data read operation in the first operation mode,
The ECC circuit corrects the error of the data of the first page buffer based on the parity data of the second page buffer, and the randomizer derandomizes the corrected data to the first page buffer. Write back,
4. The semiconductor memory device according to claim 3, wherein the first randomization and ECC processing is executed.
前記第1の動作モードのデータ書き込み動作において、
前記ランダマイザは、前記第1のページバッファの出力データをランダマイズして前記第1のページバッファに書き戻し、前記ECC回路は、前記第1のページバッファに書き戻されたデータに基づいて前記第2のページバッファにパリティデータを書き込み、
一方、前記第1の動作モードのデータ読み出し動作において、
前記ECC回路は、前記第2のページバッファのパリティデータに基づいて、前記第1のページバッファのデータを誤り訂正し、前記ランダマイザは訂正後のデータをデランダマイズして前記第1のページバッファに書き戻す、
第2のランダマイズ及びECC処理を実行することを特徴とする請求項4に記載の半導体記憶装置。 Instead of the first randomization and ECC processing,
In the data write operation in the first operation mode,
The randomizer randomizes the output data of the first page buffer and writes it back to the first page buffer, and the ECC circuit sets the second page buffer based on the data written back to the first page buffer. Write parity data to the page buffer
On the other hand, in the data read operation in the first operation mode,
The ECC circuit corrects the error of the data of the first page buffer based on the parity data of the second page buffer, and the randomizer derandomizes the corrected data to the first page buffer. Write back,
5. The semiconductor memory device according to claim 4, wherein a second randomization and ECC process is executed.
前記第1の動作モードのデータ書き込み動作において、
前記ランダマイザは、ランダマイズ処理に先立って取り込んだ前記第1のページバッファの不良情報に基づいて、前記第1のページバッファの出力データのうち、前記固定されたデータを除く、前記第1のページバッファの出力データをランダマイズして前記ECC回路に入力し、前記ECC回路は、前記ランダマイザから入力されるデータに基づいて、パリティデータを生成して前記第2のページバッファにパリティデータを書き込み、
一方、前記第1の動作モードのデータ読み出し動作において、
前記ECC回路は、前記第2のページバッファのパリティデータに基づいて、前記第1のページバッファのデータを誤り訂正し、前記ランダマイザは訂正後のデータをデランダマイズして前記第1のページバッファに書き戻す、
第3のランダマイズ及びECC処理を実行することを特徴とする請求項5に記載の半導体記憶装置。 Instead of the second randomization and ECC processing,
In the data write operation in the first operation mode,
The randomizer removes the fixed data from the output data of the first page buffer based on the defect information of the first page buffer fetched prior to the randomizing process. The output data is randomized and input to the ECC circuit, and the ECC circuit generates parity data based on the data input from the randomizer and writes the parity data to the second page buffer.
On the other hand, in the data read operation in the first operation mode,
The ECC circuit corrects the error of the data of the first page buffer based on the parity data of the second page buffer, and the randomizer derandomizes the corrected data to the first page buffer. Write back,
6. The semiconductor memory device according to claim 5, wherein third randomization and ECC processing are executed.
前記データ転送部は、
前記第1の動作モードでは、(n/p)本のアドレス信号が入力されると、p本のビット線とp本の第1のデータバスとの接続を行い、
一方、前記第2の動作モードでは、(n/q)本のアドレス信号が入力されると、q本ビット線と第2のデータバスとの接続を行う、
ことを特徴とする請求項3から請求項6いずれか一項に記載の半導体記憶装置。 The bit lines are n (n is a common multiple of p and q, and p and q are natural numbers where p> q), the first data bus is p, There are q data buses,
The data transfer unit is
In the first operation mode, when (n / p) address signals are input, the p bit lines are connected to the p first data buses.
On the other hand, in the second operation mode, when (n / q) address signals are input, the q bit lines are connected to the second data bus.
The semiconductor memory device according to claim 3, wherein the semiconductor memory device is a semiconductor memory device.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2013006364A JP2014137834A (en) | 2013-01-17 | 2013-01-17 | Semiconductor storage device |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2013006364A JP2014137834A (en) | 2013-01-17 | 2013-01-17 | Semiconductor storage device |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2014137834A true JP2014137834A (en) | 2014-07-28 |
Family
ID=51415255
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2013006364A Pending JP2014137834A (en) | 2013-01-17 | 2013-01-17 | Semiconductor storage device |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2014137834A (en) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2019114313A (en) * | 2017-12-25 | 2019-07-11 | ラピスセミコンダクタ株式会社 | Semiconductor integrated circuit |
US10720945B2 (en) | 2016-05-12 | 2020-07-21 | Samsung Electronics Co., Ltd. | Nonvolatile memory device and read and copy-back methods thereof |
US11194656B2 (en) | 2019-06-04 | 2021-12-07 | Kioxia Corporation | Memory system |
-
2013
- 2013-01-17 JP JP2013006364A patent/JP2014137834A/en active Pending
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10720945B2 (en) | 2016-05-12 | 2020-07-21 | Samsung Electronics Co., Ltd. | Nonvolatile memory device and read and copy-back methods thereof |
US11362685B2 (en) | 2016-05-12 | 2022-06-14 | Samsung Electronics Co., Ltd. | Nonvolatile memory device and read and copy-back methods thereof |
JP2019114313A (en) * | 2017-12-25 | 2019-07-11 | ラピスセミコンダクタ株式会社 | Semiconductor integrated circuit |
US11194656B2 (en) | 2019-06-04 | 2021-12-07 | Kioxia Corporation | Memory system |
US11740965B2 (en) | 2019-06-04 | 2023-08-29 | Kioxia Corporation | Memory system |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20140169092A1 (en) | Semiconductor memory device | |
US9424953B2 (en) | Semiconductor memory device including repair circuit | |
JP4135680B2 (en) | Semiconductor memory device and signal processing system | |
US9336078B1 (en) | Memory error detection circuitry | |
TWI269155B (en) | Method and checker of checking for errors in an error correction code (ECC) protected mechanism and a computer system including the checker | |
US7610542B2 (en) | Semiconductor memory in which error correction is performed by on-chip error correction circuit | |
TW556203B (en) | Semiconductor memory device having ECC type error recovery circuit | |
JP3272903B2 (en) | Error correction detection circuit and semiconductor memory device | |
WO2010004664A1 (en) | Semiconductor memory device | |
KR102146071B1 (en) | Semiconductor memory device | |
JP2009104757A (en) | Semiconductor storage device | |
JP4602246B2 (en) | Semiconductor integrated circuit | |
US20080034253A1 (en) | Ferroelectric memory with spare memory cell array and ecc circuit | |
US8990667B2 (en) | Error check and correction circuit, method, and memory device | |
US9362007B2 (en) | Semiconductor memory device | |
JP2014137834A (en) | Semiconductor storage device | |
JP6018508B2 (en) | Nonvolatile semiconductor memory device and test method thereof | |
KR102146080B1 (en) | Semiconductor memory device | |
JP2014033364A (en) | Error detection and correction circuit and memory device | |
JP5617776B2 (en) | MEMORY CIRCUIT, MEMORY DEVICE, AND MEMORY DATA ERROR CORRECTION METHOD | |
JP2014142976A (en) | Semiconductor storage device | |
JP4582078B2 (en) | Memory controller, flash memory system, and flash memory control method | |
JP4534639B2 (en) | Semiconductor memory device | |
KR20070112953A (en) | Error checking and correcting control circuit, method thereof and semiconductor memory device | |
JP2014116049A (en) | Semiconductor memory device |