JP2009282923A - Semiconductor storage device and nonvolatile memory - Google Patents

Semiconductor storage device and nonvolatile memory Download PDF

Info

Publication number
JP2009282923A
JP2009282923A JP2008137059A JP2008137059A JP2009282923A JP 2009282923 A JP2009282923 A JP 2009282923A JP 2008137059 A JP2008137059 A JP 2008137059A JP 2008137059 A JP2008137059 A JP 2008137059A JP 2009282923 A JP2009282923 A JP 2009282923A
Authority
JP
Japan
Prior art keywords
data
page
parity
pages
memory
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
Application number
JP2008137059A
Other languages
Japanese (ja)
Inventor
Keiichiro Endo
敬一郎 遠藤
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Toshiba Corp
Original Assignee
Toshiba Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Toshiba Corp filed Critical Toshiba Corp
Priority to JP2008137059A priority Critical patent/JP2009282923A/en
Publication of JP2009282923A publication Critical patent/JP2009282923A/en
Pending legal-status Critical Current

Links

Images

Landscapes

  • Techniques For Improving Reliability Of Storages (AREA)
  • Read Only Memory (AREA)

Abstract

<P>PROBLEM TO BE SOLVED: To provide a semiconductor storage device and a nonvolatile memory for effectively allocating the number of bits used for parity among a plurality of pages to perform error correction of high correction ability to a page where a bit error occurrence ratio is high. <P>SOLUTION: The semiconductor storage device 300 includes a memory controller 100 and a nonvolatile memory 200. The nonvolatile memory comprises a plurality of pages and stores data and their parity. The memory controller has a function to add the parity to data input by host equipment and store them in the nonvolatile memory when writing data to the nonvolatile memory and, when reading the data, read the data and their parity from the nonvolatile memory to detect an error part and perform data error correction. The memory controller allocates the number of bits of all the parities available on the prescribed number of pages among the plurality of pages storable to the nonvolatile memory to each page in accordance with error occurrence ratio on each page. <P>COPYRIGHT: (C)2010,JPO&INPIT

Description

本発明は、半導体記憶装置に係り、特に不揮発性メモリとメモリコントローラとを備えた半導体記憶装置及び不揮発性メモリに関する。   The present invention relates to a semiconductor memory device, and more particularly to a semiconductor memory device and a nonvolatile memory including a nonvolatile memory and a memory controller.

メモリカード等への利用により、NAND型フラッシュメモリの需要が年々高まっている。用途が拡大するにつれ、より大容量かつ高速に動作するメモリカードが求められている。その要求に応えるため、より微細なプロセスを使用したNAND型フラッシュメモリが開発されている。   The demand for NAND flash memories is increasing year by year due to the use of memory cards and the like. As the application expands, a memory card that operates at a higher capacity and at a higher speed is required. In order to meet the demand, a NAND flash memory using a finer process has been developed.

NAND型フラッシュメモリはメモリコントローラによりデータの書込み及び読出し時の動作が制御される。ECC回路を有するメモリコントローラは、データの書込み時は、ホスト機器から入力したデータにパリティを付加してNAND型フラッシュメモリに記憶させ、データの読出し時は、NAND型フラッシュメモリからデータをそのパリティと共に読み出し、誤り箇所(アドレス等)を検出し、データの誤り訂正を行う。   In the NAND flash memory, operations at the time of data writing and reading are controlled by a memory controller. A memory controller having an ECC circuit adds parity to data input from the host device when data is written and stores it in the NAND flash memory, and stores data from the NAND flash memory together with the parity when data is read. Read, detect error location (address, etc.) and correct data error.

NAND型フラッシュメモリの記憶領域に記憶されるデータは、複数のブロック(消去単位)で構成され、各ブロックのデータは所定数(例えば128)のページで構成される。NAND型フラッシュメモリに対するデータの書込み/読出しの単位は、1ページ分のデータ(ページデータ)または1ページ分のデータを幾つかに同等に分割したデータに対してパリティを付加したデータとされる。   The data stored in the storage area of the NAND flash memory is composed of a plurality of blocks (erase units), and the data in each block is composed of a predetermined number (for example, 128) pages. The unit for writing / reading data to / from the NAND flash memory is data for one page (page data) or data obtained by adding parity to data obtained by equally dividing data for one page into several.

ECC回路に入力するデータ長とパリティのビット数はNAND型フラッシュメモリの1ページのビット数に依存する。1ページのビット数はNAND型フラッシュメモリに設定可能な、データ長とそれに付加されるパリティ長との和で規定される。NAND型フラッシュメモリにおいて、従来は一定のデータ長を有するデータに対して付加されるパリティビット数は一定(固定)であるために、どのページデータ(またはその分割データ)に対してもパリティとして1ページの記憶領域に収まる最大のパリティビット数を付加すると、ページ毎にビットエラー発生率が異なる場合は、ページによってエラー訂正能力が過剰になったり、足りなかったりする。つまり、ページによって、パリティビット数が多過ぎたり、少なかったりする。特に、単体のNAND型フラッシュメモリにページごとに評価試験を行い、エラー発生率の最も悪い(高い)評価値に合わせてパリティ数を決めていると、エラーが起きにくいページには過剰にパリティが付れられることになる。   The data length and the number of parity bits input to the ECC circuit depend on the number of bits in one page of the NAND flash memory. The number of bits per page is defined by the sum of the data length and the parity length added to the data length that can be set in the NAND flash memory. In the NAND flash memory, conventionally, the number of parity bits added to data having a constant data length is constant (fixed), so that any page data (or its divided data) has a parity of 1 If the maximum number of parity bits that can be stored in the page storage area is added, if the bit error occurrence rate varies from page to page, the error correction capability may be excessive or insufficient depending on the page. That is, depending on the page, the number of parity bits may be too much or too little. In particular, if an evaluation test is performed for each page in a single NAND flash memory and the number of parities is determined according to the evaluation value with the worst (high) error rate, excessive parity will be generated on pages where errors are unlikely to occur. It will be attached.

先行技術としては、多値セルメモリに対する読み出しデータのエラーをECCコードを利用して訂正するメモリコントローラがある(例えば、特許文献1参照)。
特開2003−67260号公報
As a prior art, there is a memory controller that corrects an error in read data for a multi-level cell memory using an ECC code (see, for example, Patent Document 1).
JP 2003-67260 A

本発明は上記の問題に鑑み、ページ毎にビットエラー発生率が異なる不揮発性メモリにおいて、複数のページ間でパリティに使用するビット数を有効に割り当てることにより、ビットエラー発生率が高いページに対して、より訂正能力の高い誤り訂正を行うことができる半導体記憶装置及び不揮発性メモリを提供することを目的とするものである。   In view of the above problems, the present invention effectively allocates the number of bits used for parity among a plurality of pages in a non-volatile memory having a different bit error occurrence rate for each page, thereby enabling a page having a high bit error occurrence rate. An object of the present invention is to provide a semiconductor memory device and a nonvolatile memory that can perform error correction with higher correction capability.

本願発明の一態様によれば、複数のページで構成され、データとそのパリティを記憶する不揮発性メモリと、前記不揮発性メモリへのデータの書込み時は、ページデータにパリティを付加して前記不揮発性メモリに記憶させ、データの読出し時は、前記不揮発性メモリからページデータとそのパリティを読み出し、誤り箇所を検出し、データの誤り訂正を行う機能を備えたメモリコントローラと、を具備し、前記メモリコントローラは、前記不揮発性メモリに記憶可能な複数のページのうちの所定数のページで使用可能な全てのパリティのビット数を、各ページのエラー発生率の大きさに応じて各ページに割り振ることを特徴とする半導体記憶装置が提供される。   According to one aspect of the present invention, the nonvolatile memory is composed of a plurality of pages and stores data and the parity thereof, and when writing data to the nonvolatile memory, the parity is added to the page data and the nonvolatile memory is added. A memory controller having a function of reading page data and its parity from the nonvolatile memory, detecting an error location, and correcting the error of the data, The memory controller allocates, to each page, the number of all parity bits that can be used in a predetermined number of pages that can be stored in the nonvolatile memory according to the error occurrence rate of each page. A semiconductor memory device is provided.

本願発明の他の態様によれば、メモリ領域が、同一長のページデータそれぞれを記憶可能な複数のデータ領域と、この複数のデータ領域それぞれに連接して設けられる、互いに同一長の複数のパリティ領域とを備えて構成される不揮発性メモリであって、データ記憶可能な前記複数のデータ領域のうちの所定数のデータ領域に対応して前記複数のパリティ領域のうちの所定数のパリティ領域で使用可能な全てのパリティ領域を、各ページのエラー発生率の大きさに応じて各ページ毎に割り振ることを特徴とする不揮発性メモリが提供される。   According to another aspect of the present invention, a memory area includes a plurality of data areas that can store page data of the same length, and a plurality of parities that are connected to each of the plurality of data areas and have the same length. And a predetermined number of parity areas in the plurality of parity areas corresponding to the predetermined number of data areas in the plurality of data areas capable of storing data. There is provided a non-volatile memory characterized in that all usable parity areas are allocated for each page according to the error occurrence rate of each page.

本発明によれば、ページ毎にビットエラー発生率が異なる不揮発性メモリにおいて、複数のページ間でパリティに使用するビット数を有効に割り当てることにより、ビットエラー発生率が高いページに対して、より訂正能力の高い誤り訂正を行うことができる不揮発性半導体記憶装置及び不揮発性メモリを提供することが可能となる。   According to the present invention, in a non-volatile memory having a different bit error rate for each page, by effectively allocating the number of bits used for parity among a plurality of pages, a page with a higher bit error rate is more It is possible to provide a nonvolatile semiconductor memory device and a nonvolatile memory that can perform error correction with high correction capability.

発明の実施の形態について図面を参照して説明する。
図11は、本発明の関連技術の半導体記憶装置におけるNAND型フラッシュメモリの記憶領域にページ単位に記憶されたデータの構成を示している。NAND型フラッシュメモリは例えばページ番号0〜127の128ページ分のデータを記憶する領域を備えている。1ページ分のデータは、例えば2つのECCの訂正単位(この単位は書込み時及び読出し時の単位でもある)で構成され、各訂正単位はデータとそのパリティ(斜線にて示す)で構成されている。
Embodiments of the invention will be described with reference to the drawings.
FIG. 11 shows the configuration of data stored in units of pages in the storage area of the NAND flash memory in the semiconductor memory device according to the related art of the present invention. The NAND flash memory has an area for storing data for 128 pages of page numbers 0 to 127, for example. One page of data is composed of, for example, two ECC correction units (this unit is also a unit for writing and reading), and each correction unit is composed of data and its parity (shown by diagonal lines). Yes.

NAND型フラッシュメモリからデータを読み出す際には、メモリコントローラの制御によってNAND型フラッシュメモリからECCの訂正単位の一組のデータ及びパリティが読み出されてECC回路に入力され、誤り検出及び訂正が行われる。   When data is read from the NAND flash memory, a set of data and parity of the ECC correction unit is read from the NAND flash memory and input to the ECC circuit under the control of the memory controller, and error detection and correction are performed. Is called.

ところで、この例ではNAND型フラッシュメモリからECC回路に入力するデータ長とパリティビット数(データ長とパリティ長でECCの訂正単位を構成する)が、全てのページにおいて同じである。従って、1ページにECC訂正単位が2つ(2フレームという)あるとして、1ページで使用できるパリティのビット数がnビットだとすると、全てのページでECC回路に入力するパリティのビット数はn/2ビットとなる。   In this example, the data length and the number of parity bits (the ECC correction unit is constituted by the data length and the parity length) input from the NAND flash memory to the ECC circuit are the same for all pages. Therefore, assuming that there are two ECC correction units (referred to as two frames) in one page and the number of parity bits that can be used in one page is n bits, the number of parity bits input to the ECC circuit in all pages is n / 2. A bit.

データ長に対するパリティビット数は一定(固定)であるために、1ページに収まる最大のパリティビット数を設定したとき、ページ毎にビットエラー発生率が異なる場合は、ページによってエラー訂正能力が過剰になったり、足りなかったりする問題が生ずる。   Since the number of parity bits with respect to the data length is constant (fixed), when the maximum number of parity bits that can fit on one page is set, if the bit error occurrence rate varies from page to page, the error correction capability is excessive depending on the page. The problem of becoming missing or missing arises.

そこで、本発明の実施形態においては、ページ毎にビットエラー発生率が異なるNAND型フラッシュメモリにおいて、複数のページ間でパリティのビット数を割り振るようにし、各ページに使用するパリティビット数を、ビットエラー発生率が高いページに対してより多く割り当て、ビットエラー発生率が低いページに対してより少なく割り当てることにより、限られたパリティビット数をより有効に使用し、ビットエラー発生率が高いページに対してはより訂正能力の高い誤り訂正を行えるようにしたものである。   Therefore, in the embodiment of the present invention, in the NAND flash memory in which the bit error occurrence rate is different for each page, the number of parity bits is allocated among a plurality of pages, and the number of parity bits used for each page is set to the bit number. By assigning more to pages with a high error rate and assigning less to pages with a low bit error rate, the limited number of parity bits can be used more effectively and pages with a high bit error rate On the other hand, error correction with higher correction capability can be performed.

[第1の実施形態]
図1は本発明の第1の実施形態の半導体記憶装置のブロック図を示している。
図1において、半導体記憶装置300は、メモリコントローラ100と、不揮発性メモリであるNAND型フラッシュメモリ200とを備えている。
[First Embodiment]
FIG. 1 is a block diagram of a semiconductor memory device according to the first embodiment of the present invention.
In FIG. 1, a semiconductor memory device 300 includes a memory controller 100 and a NAND flash memory 200 that is a nonvolatile memory.

NAND型フラッシュメモリ200は、複数のページで構成され、データとそのパリティを一組とする訂正単位で記憶する。訂正単位は、書込み単位又は読出し単位と同じであって、1ページ分であってもよいし、1/2ページ分、又は1/4ページ分であってもよい。   The NAND flash memory 200 is composed of a plurality of pages, and stores the data and its parity in a unit of correction. The correction unit is the same as the writing unit or the reading unit, and may be one page, one half page, or one quarter page.

メモリコントローラ100は、SRAMバッファ101と、ECC回路102を備えている。
SRAMバッファ101は、ホスト機器400からのデータを一時保持し、所定長(例えば訂正単位)のデータとなったらNAND型フラッシュメモリ200に書き込むためと、NAND型フラッシュメモリ200から読み出したデータを一時保持し、所定長(例えば訂正単位)のデータにつき誤り訂正を行った後にホスト機器400へ出力するためにある。
The memory controller 100 includes an SRAM buffer 101 and an ECC circuit 102.
The SRAM buffer 101 temporarily holds data from the host device 400, and writes data to the NAND flash memory 200 when the data has a predetermined length (for example, correction unit), and temporarily holds data read from the NAND flash memory 200. In order to output the data to the host device 400 after performing error correction on data of a predetermined length (for example, correction unit).

ECC回路102は、NAND型フラッシュメモリ200に書き込む前に、SRAMバッファ101に保持した所定長のデータにつきこのECC回路102を通して該データの訂正に必要なパリティを付けてからNAND型フラッシュメモリ200に書き込む。NAND型フラッシュメモリ200からデータを読み出すときは、SRAMバッファ101に一時保持し同時にこのデータをECC回路102へも入力し、ECC回路102は取り込んだデータのパリティを用いて該データの誤り箇所を検出し、SRAMバッファ101内のデータ(ECC回路102に取り込んだデータと同じもの)を訂正しにいく。   Before writing to the NAND flash memory 200, the ECC circuit 102 adds parity necessary for correcting the data to the data of a predetermined length held in the SRAM buffer 101, and then writes the data to the NAND flash memory 200. . When reading data from the NAND flash memory 200, the data is temporarily stored in the SRAM buffer 101 and simultaneously input to the ECC circuit 102. The ECC circuit 102 detects the error location of the data using the parity of the fetched data. Then, the data in the SRAM buffer 101 (the same as the data fetched into the ECC circuit 102) is corrected.

なお、データ書き込み時にSRAMバッファ101へのデータが所定長に満たない時はNAND型フラッシュメモリ200が足らない分のデータをSRAMバッファ101に書き込んで所定長のデータとした上でECC回路102へ送り、ECC回路102でパリティを付加してNAND型フラッシュメモリ200へ書き込むようにしている。   When the data to the SRAM buffer 101 is less than the predetermined length when writing data, the data for the shortage of the NAND flash memory 200 is written to the SRAM buffer 101 and sent to the ECC circuit 102. The ECC circuit 102 adds parity to the NAND flash memory 200 for writing.

従って、メモリコントローラ100内のSRAMバッファ101及びECC回路102は、NAND型フラッシュメモリ200へのデータの書込み時は、ホスト機器400から入力したデータにパリティを付加してNAND型フラッシュメモリ200に記憶させ、NAND型フラッシュメモリ200からのデータの読出し時は、NAND型フラッシュメモリ200からデータとそのパリティを読み出し、誤り箇所を検出し、データの誤り訂正を行う機能を有する。   Therefore, the SRAM buffer 101 and the ECC circuit 102 in the memory controller 100 add the parity to the data input from the host device 400 and store it in the NAND flash memory 200 when writing data to the NAND flash memory 200. When reading data from the NAND flash memory 200, it has a function of reading data and its parity from the NAND flash memory 200, detecting an error location, and correcting the error of the data.

尚、ここでは、ホスト機器400と半導体記憶装置300が別構成の例を示しているが、半導体記憶装置300はホスト機器400内に組み込まれた態様であってもよい。   Here, an example in which the host device 400 and the semiconductor storage device 300 are configured separately is shown, but the semiconductor storage device 300 may be incorporated in the host device 400.

メモリコントローラ100内のECC回路102は、データの書き込み時に、NAND型フラッシュメモリ200に記憶可能な複数のページのうちの連続する所定数のページで使用可能な全てのパリティのビット数を、各ページのエラー発生率の大きさに応じて各ページ(このときのページは1つの訂正単位に相当する)に割り当てる。或いは、メモリコントローラ100内のECC回路102は、NAND型フラッシュメモリ200に記憶する複数のページの各ページを構成する複数の訂正単位ごとに付加される各パリティを、各ページのエラー発生率に応じて各ページの訂正単位に割り当ててもよい。これらについては後で述べる。   The ECC circuit 102 in the memory controller 100 calculates the number of bits of all the parity that can be used in a predetermined number of consecutive pages among a plurality of pages that can be stored in the NAND flash memory 200 when data is written. Is assigned to each page (a page at this time corresponds to one correction unit) according to the size of the error occurrence rate. Alternatively, the ECC circuit 102 in the memory controller 100 determines the parity added for each of a plurality of correction units constituting each page of the plurality of pages stored in the NAND flash memory 200 according to the error occurrence rate of each page. May be assigned to the correction unit of each page. These will be described later.

図2は図1における読み出し時の動作を説明する図である。NAND型フラッシュメモリ200から読み出されたデータはSRAMバッファ101及びECC回路102へ時間t1で同時に入力され、取り込まれる。ECC回路102では、データの取り込みが終わった後に時間t2にて取り込んだデータの誤り(エラー)訂正の計算を開始する。この計算では、訂正単位のデータに付加されているパリティを用いてデータの何処が壊れているかを解析する。そして、ECC回路102は、エラーの解析の計算が終了した時点t3でその解析結果に基づいてSRAMバッファ101内のデータ(このデータはECC回路102に取り込んだデータと同じものであるのでエラー箇所も同様である)を訂正しにいき、時間t4にてエラー訂正を完了する。   FIG. 2 is a diagram for explaining the operation at the time of reading in FIG. Data read from the NAND flash memory 200 is simultaneously input to the SRAM buffer 101 and the ECC circuit 102 at time t1 and taken in. The ECC circuit 102 starts calculation of error correction of the data taken in at time t2 after the data fetching is finished. In this calculation, the parity of the correction unit data is used to analyze where the data is broken. Then, the ECC circuit 102 receives the data in the SRAM buffer 101 based on the analysis result at the time t3 when the error analysis calculation is completed (since this data is the same as the data fetched into the ECC circuit 102, the error location is also The same is true) and the error correction is completed at time t4.

図3はNAND型フラッシュメモリ200における、消去単位であるブロック領域(以下、単にブロック)と、訂正単位(書込み単位又は読出し単位に同じ)であるページ領域(以下、単にページ)を説明する図である。
NAND型フラッシュメモリ200のメモリ領域は、図3(A)に示すように複数のブロックで構成されている。そして、各ブロックは、図3(B)に示すように複数のページで構成されている。NAND型フラッシュメモリ200は、消去単位のブロックでデータを消去可能であるが、ブロックを構成する訂正単位のページでは消去することができない。
FIG. 3 is a diagram for explaining a block area (hereinafter simply referred to as a block) that is an erase unit and a page area (hereinafter simply referred to as a page) that is a correction unit (same as a write unit or a read unit) in the NAND flash memory 200. is there.
The memory area of the NAND flash memory 200 is composed of a plurality of blocks as shown in FIG. Each block is composed of a plurality of pages as shown in FIG. In the NAND flash memory 200, data can be erased in blocks of erase units, but cannot be erased in pages of correction units constituting the blocks.

1ブロックは、所定数の複数のページ、例えば1ページ分2kbyteのページが128ページ(=256kbyte)分のデータ領域で構成されるが、実際にはこのデータ領域に+αして、余りの領域を設けている。この余り領域は、データ領域を構成する全てのページのそれぞれのページの一定長のデータに対して誤り訂正を行うためにパリティデータを記憶したり、メモリ制御するために制御データを記憶したりするのに用いることが可能である。この実施形態では、この余り領域を図3(C)に示すようにパリティ領域と呼び、パリティビット(パリティ長Zbyte)を記憶するためのみに使用する場合について説明する。   One block is composed of a data area of 128 pages (= 256 kbytes) of a predetermined number of pages, for example, a page of 2 kbytes for one page. Provided. This extra area stores parity data for performing error correction on data of a certain length of each page of all pages constituting the data area, and stores control data for memory control. Can be used. In this embodiment, the remainder area is called a parity area as shown in FIG. 3C, and a case where it is used only for storing a parity bit (parity length Zbyte) will be described.

図4は訂正単位の構成を示している。訂正単位は、データとそのパリティで構成されている。データは例えば2kbyte,1kbyte(=1024byte),又は512byteなどである。図3(C)に示したように1ページのデータ部分が2kbyteであれば、訂正単位のデータ部分が2kbyte,1kbyte,512byteはそれぞれ、ページデータ部分を分割無し、2分割、4分割したものに相当している。なお、現在では、1ページのデータ部分が8kbyteのものも出現している。   FIG. 4 shows the configuration of the correction unit. The correction unit is composed of data and its parity. The data is, for example, 2 kbytes, 1 kbyte (= 1024 bytes), or 512 bytes. As shown in FIG. 3 (C), if the data portion of one page is 2 kbytes, the data portion of the correction unit is 2 kbytes, 1 kbyte, and 512 bytes, respectively. It corresponds. At present, a data portion of one page is 8 kbytes.

図5はデータに付加するパリティのサイズによって訂正可能なデータのビット数を示している。例えば、8bit訂正するのに10byteのパリティが必要である。
図6は第1の実施形態の半導体記憶装置における不揮発性メモリの記憶領域における、2つのページ間で使用するパリティのビット数を割り振った状態の一例を説明する図である。
FIG. 5 shows the number of bits of data that can be corrected by the size of the parity added to the data. For example, 10-byte parity is required to correct 8 bits.
FIG. 6 is a diagram illustrating an example of a state in which the number of parity bits used between two pages is allocated in the storage area of the nonvolatile memory in the semiconductor storage device of the first embodiment.

従来は全てのページでパリティに使用するビット数は均等であった。つまり、1ページで使用できるパリティのビット数がnビットだとすると、1ページに訂正単位が2フレームある場合は、全てのページでECC回路102に入力するパリティの訂正単位のビット数はn/2ビットとなる。   Conventionally, the number of bits used for parity in all pages is uniform. In other words, assuming that the number of parity bits that can be used in one page is n bits, when there are two correction units in one page, the number of parity correction units input to the ECC circuit 102 in all pages is n / 2 bits. It becomes.

2つの連続するページ間でパリティに使用するビット数を割り振る場合、2つの連続する奇偶ページのうちの偶数ページのパリティビット数n/2からsビットを奇数ページのパリティとして使用すると、奇数ページのパリティ数はn/2+sとなり、従来のn/2ビット使用したエラー訂正より訂正能力を大きくできる。その分、偶数ページのパリティビット数はn/2−sと少なくなる。しかも、2つの連続する奇偶ページ間のパリティビット数は、1ページで使用できるパリティのビット数nビットで変わらず一定であることは勿論である。従って、図6の例は、奇数ページのエラー発生率が高い場合に有用となる。   When allocating the number of bits to be used for parity between two consecutive pages, if the parity bit number n / 2 to s of the even page of the two consecutive odd / even pages is used as the parity of the odd page, the odd page The number of parity is n / 2 + s, and the correction capability can be increased compared to the conventional error correction using n / 2 bits. Accordingly, the number of parity bits of the even page is reduced to n / 2−s. Moreover, of course, the number of parity bits between two consecutive odd / even pages is constant without changing with the number of parity bits n bits that can be used in one page. Therefore, the example of FIG. 6 is useful when the error rate of odd pages is high.

なお、図6の例では、偶数ページと奇数ページとで奇数ページをエラーが起きやすいページとしてパリティビット数を増やすように構成しているが、偶数ページをエラーが起きやすいページとしてパリティビット数を増やすように構成してもよい。   In the example of FIG. 6, the odd-numbered page is configured to increase the parity bit number as an error-prone page between the even-numbered page and the odd-numbered page. You may comprise so that it may increase.

図7は書き込み時に図6の2つの連続する奇偶ページ間でパリティに使用するビット数を割り振る場合のECC回路での動作を説明する図である。
図1のECC回路102において偶数ページ内の訂正単位のデータa又はbについては、図7(A)に示すようにデータa又はbがECC回路102に入力されると、ECC回路102はそのデータに対してビット数n/2−sのパリティを付加して出力する。また、奇数ページ内の訂正単位のデータc又はdについては、図7(B)に示すようにデータc又はdがECC回路102に入力されると、ECC回路102はそのデータに対してビット数n/2+sのパリティを付加して出力する。
FIG. 7 is a diagram for explaining the operation in the ECC circuit when the number of bits used for parity is allocated between two consecutive odd / even pages in FIG. 6 at the time of writing.
With respect to the correction unit data a or b in the even page in the ECC circuit 102 of FIG. 1, when the data a or b is input to the ECC circuit 102 as shown in FIG. Are added with a parity of n / 2−s bits. As for the correction unit data c or d in the odd page, when the data c or d is input to the ECC circuit 102 as shown in FIG. 7B, the ECC circuit 102 determines the number of bits for the data. Output with n / 2 + s parity added.

次に、2つの連続する奇偶ページとして、ページ0とページ1についてNAND型フラッシュメモリ200に対する書き込み及び読み出しの動作例を説明する。
書き込み時は、ホスト機器400からのページ0に対応する訂正単位のデータとして例えば1kbyteの生データ(パリティが付く前のデータ)a,bをSRAMバッファ101に順次に保持した後、これらのデータa,bをECC回路102に順次に取り込み、ECC回路102にてデータa,bにそれぞれパリティ数n/2−sを順次に付加した状態で保持する。次に、ページ1に対応する訂正単位のデータc,dについても同様にしてSRAMバッファ101に順次に保持した後、これらのデータc,dをECC回路102に順次に取り込み、ECC回路102にてデータc,dにそれぞれパリティ数n/2+sを順次に付加した状態で保持する。これらのECC回路102で保持したデータを、ECC回路102で図6のページ0及び1のようにページ0の領域の一部にページ1のパリティビット数の一部(斜線にて示す部分)が組み込まれるような形に組み替えを行った後、NAND型フラッシュメモリ200の記憶領域にページ0についてはページ長の半分ずつを順次書き込み、次にページ1についてもページ長の半分ずつを順次書き込む。なお、組み替えの動作はSRAMバッファ101において行うことも可能である。
Next, description will be given of an example of writing and reading operations with respect to the NAND flash memory 200 for page 0 and page 1 as two consecutive odd / even pages.
At the time of writing, for example, 1 kbytes of raw data (data before parity is added) a and b are sequentially held in the SRAM buffer 101 as correction unit data corresponding to page 0 from the host device 400, and then the data a , B are sequentially fetched into the ECC circuit 102, and the ECC circuit 102 holds the data a, b with the parity numbers n / 2-s sequentially added thereto. Next, the correction units of data c and d corresponding to page 1 are also sequentially held in the SRAM buffer 101 in the same manner, and then the data c and d are sequentially taken into the ECC circuit 102 and then stored in the ECC circuit 102. The data c and d are held with the parity number n / 2 + s sequentially added thereto. The data held in the ECC circuit 102 is converted into a part of the page 0 area (part indicated by hatching) in the part of the page 0 area as shown in pages 0 and 1 of FIG. After the rearrangement is performed so that it is incorporated, half of the page length is sequentially written in the storage area of the NAND flash memory 200, and then half of the page length is sequentially written for page 1 as well. The rearrangement operation can also be performed in the SRAM buffer 101.

読み出し時は、NAND型フラッシュメモリ200からECC回路102に図6と同様なページ0についてはページ長の半分ずつ順次読み込み、次にページ1についてもページ長の半分ずつを順次読み込んだ後に、ページ0及びページ1間でパリティビット数の組み替えを行って、図6右側に示したページ0及びページ1のECCの訂正単位を得、これらの訂正単位のデータをSRAMバッファ101にも書き込み、図2で示したようにECC回路102内で訂正単位毎にデータの誤り(エラー)を検出して、SRAMバッファ101に保持しているデータの同じエラー箇所を訂正することになる。   At the time of reading, the NAND flash memory 200 sequentially reads the page 0, which is the same as FIG. 6 by half the page length, and then sequentially reads the page 1 by half the page length, and then page 0. And the number of parity bits between page 1 are rearranged to obtain the ECC correction units of page 0 and page 1 shown on the right side of FIG. 6, and the data of these correction units are also written in the SRAM buffer 101. As shown, data error (error) is detected for each correction unit in the ECC circuit 102, and the same error portion of the data held in the SRAM buffer 101 is corrected.

図8はNAND型フラッシュメモリの記憶領域において、2つの連続する奇偶ページ間において、(A)各ページのページ長を4分割して訂正単位とした場合、(B)各ページのページ長を2分割して訂正単位とした場合、(C)各ページのページ長を分割せずにそのページ長ままで訂正単位とした場合、の各場合について2ページ間の上下の訂正単位間でパリティビット数を奇数ページ2m+1に多く割り当て、偶数ページ2mに少なく割り当てた3つの例を示している。図8(A)〜(C)において、mは0以上の整数である。勿論、パリティビット数を偶数ページ2mに多く割り当て、奇数ページ2m+1に少なく割り当てて用いる構成も可能である。   FIG. 8 shows a storage area of a NAND flash memory, in which (A) the page length of each page is divided into four correction units between two consecutive odd / even pages, and (B) the page length of each page is 2 When divided into correction units, (C) When the page length of each page is not divided and is used as the correction unit, the number of parity bits between the upper and lower correction units between the two pages in each case Three examples are shown in which a large number is assigned to odd pages 2m + 1 and a small number is assigned to even pages 2m. 8A to 8C, m is an integer of 0 or more. Of course, a configuration in which a larger number of parity bits are allocated to the even page 2m and a smaller number is allocated to the odd page 2m + 1 is also possible.

図8(A)でページ長をX、データ長をy1、パリティ長をz1と文字変数で表すと、X=(y1+z1)×4 の関係となる。1ページ内のデータ長を例えば2kbyteとすると、データ長y1は512byteである。図8(B)でページ長をX、データ長をy2、パリティ長をz2と文字変数で表すと、X=(y2+z2)×2 の関係となる。1ページ内のデータ長を2kbyteとすると、データ長y2は1kbyteである。図8(C)でページ長をX、データ長をy3、パリティ長をz3と文字変数で表すと、X=y3+z3 の関係となる。1ページ内のデータ長を2kbyteとすると、データ長y3は2kbyteである。   In FIG. 8A, when the page length is represented by X, the data length is represented by y1, the parity length is represented by z1, and a character variable, X = (y1 + z1) × 4. If the data length in one page is 2 kbytes, for example, the data length y1 is 512 bytes. In FIG. 8B, when the page length is represented by X, the data length is represented by y2, the parity length is represented by z2 and a character variable, the relationship is X = (y2 + z2) × 2. If the data length in one page is 2 kbytes, the data length y2 is 1 kbyte. In FIG. 8C, when the page length is represented by X, the data length is represented by y3, the parity length is represented by z3, and a character variable, the relationship is X = y3 + z3. If the data length in one page is 2 kbytes, the data length y3 is 2 kbytes.

第1の実施形態によれば、不揮発性メモリであるNAND型フラッシュメモリの複数のページの内の2ページからなる記憶領域のパリティ領域をビットエラー発生率に応じて割り振ることにより、ビットエラー発生率が高いページに対してより多くのビット数をパリティに割り当て、ビットエラー発生率が低いページに対してより少なく割り当て、限られた所定のパリティビット数をより有効に利用することが可能となる。   According to the first embodiment, a bit error occurrence rate is obtained by allocating a parity area of a storage area composed of two of a plurality of pages of a NAND flash memory which is a nonvolatile memory in accordance with a bit error occurrence rate. It is possible to allocate a larger number of bits to parity for a page with a high bit rate and to allocate a smaller number to a page with a low bit error occurrence rate, and to more effectively use a limited number of parity bits.

[第2の実施形態]
本発明の第2の実施形態の半導体記憶装置の構成は図1と同様である。
図9は第2の実施形態の半導体記憶装置における不揮発性メモリの記憶領域における3ページ間でパリティに使用するビット数を割り振った状態の一例を説明する図である。1ページで使用できるパリティのビット数がnビットとして説明する。
[Second Embodiment]
The configuration of the semiconductor memory device according to the second embodiment of the present invention is the same as that shown in FIG.
FIG. 9 is a diagram illustrating an example of a state in which the number of bits used for parity is allocated among three pages in the storage area of the nonvolatile memory in the semiconductor storage device of the second embodiment. In the following description, the number of parity bits that can be used in one page is n bits.

3つの連続するページ間でパリティに使用するビット数を割り振る場合、3つの連続するページのうちのページ3m(mは0以上の整数)のパリティビット数n/2からsビット、ページ3m+1からtビットをページ3m+2のパリティとして使用すると、ページ3m+2のパリティはn/2+s+tビットとなり、従来のn/2ビット使用したエラー訂正より訂正能力を大きくできる。その分、ページ3mのパリティビット数はn/2−sとなり、ページ3m+1のパリティビット数はn/2−tとなる。しかも、3つの連続するページ間で使用できるパリティビット数は、1ページで使用できるパリティのビット数nビットの3倍であり総パリティビット数が変わらず一定であることは勿論である。従って、図9の例は、ページ3m+2のエラー発生率が高い場合に有用となる。   When allocating the number of bits to be used for parity between three consecutive pages, the number of parity bits n / 2 to s bits of page 3m (m is an integer of 0 or more) of the three consecutive pages, pages 3m + 1 to t When bits are used as the parity of page 3m + 2, the parity of page 3m + 2 is n / 2 + s + t bits, and the correction capability can be increased compared to the conventional error correction using n / 2 bits. Accordingly, the number of parity bits of page 3m is n / 2−s, and the number of parity bits of page 3m + 1 is n / 2−t. In addition, the number of parity bits that can be used between three consecutive pages is three times the number of parity bits n that can be used in one page, and the total number of parity bits remains unchanged. Therefore, the example of FIG. 9 is useful when the error occurrence rate of the page 3m + 2 is high.

なお、図9の例では、3つのページ0,1,2のうちの3番目のページ2をエラーが最も起きやすいページとしてパリティビット数を最も増やすように構成しているが、ページ0又は1の1番目又は2番目のページをエラーが最も起きやすいページとしてパリティビット数を最も増やすように構成することも可能である。   In the example of FIG. 9, the third page 2 of the three pages 0, 1, and 2 is configured to increase the number of parity bits as the page where the error is most likely to occur. It is also possible to configure the first or second page as the page where errors are most likely to occur so that the number of parity bits is increased most.

図10は書き込み時に図9の3つの連続するページ間でパリティに使用するビット数を割り振る場合のECC回路での動作を説明する図である。
図1のECC回路102においてページ3m内の訂正単位のデータa又はbについては、図10(A)に示すようにデータa又はbがECC回路102に入力されると、ECC回路102はそのデータに対してビット数n/2−sのパリティを付加して出力する。また、ページ3m+1内の訂正単位のデータc又はdについては、図10(B)に示すようにデータc又はdがECC回路102に入力されると、ECC回路102はそのデータに対してビット数n/2−tのパリティを付加して出力する。さらに、ページ3m+2内の訂正単位のデータe又はfについては、図10(C)に示すようにデータe又はfがECC回路102に入力されると、ECC回路102はそのデータに対してビット数n/2+s+tのパリティを付加して出力する。
FIG. 10 is a diagram for explaining the operation in the ECC circuit when the number of bits used for parity is allocated between three consecutive pages in FIG. 9 at the time of writing.
With respect to the correction unit data a or b in the page 3m in the ECC circuit 102 of FIG. 1, when the data a or b is input to the ECC circuit 102 as shown in FIG. Are added with a parity of n / 2−s bits. As for the correction unit data c or d in the page 3m + 1, when the data c or d is input to the ECC circuit 102 as shown in FIG. 10B, the ECC circuit 102 determines the number of bits for the data. Output with n / 2-t parity added. Further, for the correction unit data e or f in the page 3m + 2, when the data e or f is input to the ECC circuit 102 as shown in FIG. 10C, the ECC circuit 102 determines the number of bits for the data. Output with parity of n / 2 + s + t added.

次に、3つの連続するページとして、ページ0とページ1とページ2についてNAND型フラッシュメモリ200に対する書き込み及び読み出しの動作例を説明する。
書き込み時は、ホスト機器400からのページ0に対応する訂正単位のデータとして例えば1kbyteの生データ(パリティが付く前のデータ)a,bをSRAMバッファ101に順次に保持した後、これらのデータa,bをECC回路102に順次に取り込み、ECC回路102にてデータa,bにそれぞれパリティ数n/2−sを順次に付加した状態で保持する。次に、ページ1に対応する訂正単位のデータc,dについても同様にしてSRAMバッファ101に順次に保持した後、これらのデータc,dをECC回路102に順次に取り込み、ECC回路102にてデータc,dにそれぞれパリティ数n/2−tを順次に付加した状態で保持する。更に、ページ2に対応する訂正単位のデータe,fについても同様にしてSRAMバッファ101に順次に保持した後、これらのデータe,fをECC回路102に順次に取り込み、ECC回路102にてデータe,fにそれぞれパリティ数n/2+s+tを順次に付加した状態で保持する。これらのECC回路102で保持したデータを、ECC回路102で図9のページ0,1及び2のようにページ0の領域の一部にページ2のパリティビット数の一部(斜線にて示す部分)が組み込まれ、かつページ1の領域の一部にページ2のパリティビット数の一部(斜線にて示す部分)が組み込まれような形に組み替えを行った後、NAND型フラッシュメモリ200の記憶領域にページ0についてはページ長の半分ずつを順次書き込み、次にページ1についてもページ長の半分ずつを順次書き込み、更にページ2についてもページ長の半分ずつを順次書き込む。なお、組み替えの動作はSRAMバッファ101において行うことも可能である。
Next, an operation example of writing and reading with respect to the NAND flash memory 200 for page 0, page 1, and page 2 as three consecutive pages will be described.
At the time of writing, for example, 1 kbytes of raw data (data before parity is added) a and b are sequentially held in the SRAM buffer 101 as correction unit data corresponding to page 0 from the host device 400, and then the data a , B are sequentially fetched into the ECC circuit 102, and the ECC circuit 102 holds the data a, b with the parity numbers n / 2-s sequentially added thereto. Next, the correction units of data c and d corresponding to page 1 are also sequentially held in the SRAM buffer 101 in the same manner, and then the data c and d are sequentially taken into the ECC circuit 102 and then stored in the ECC circuit 102. The data c and d are held in a state where the parity number n / 2-t is sequentially added. Further, the correction unit data e and f corresponding to page 2 are also sequentially stored in the SRAM buffer 101 in the same manner, and then the data e and f are sequentially taken into the ECC circuit 102 and the ECC circuit 102 receives the data. Each of e and f is held with the parity number n / 2 + s + t sequentially added. The data held in the ECC circuit 102 is converted into a part of the parity bit number of page 2 (part shown by hatching) in part of the area of page 0 as shown in pages 0, 1 and 2 in FIG. ) And a part of the page 1 area in which part of the parity bit number of page 2 (part indicated by hatching) is incorporated, and then stored in the NAND flash memory 200 Half of the page length is sequentially written in the area for page 0, then half of the page length is sequentially written for page 1, and half of the page length is sequentially written for page 2 as well. The rearrangement operation can also be performed in the SRAM buffer 101.

読み出し時は、NAND型フラッシュメモリ200からECC回路102に図9と同様なページ0についてはページ長の半分ずつ順次読み込み、次にページ1についてもページ長の半分ずつを順次読み込み、更にページ2についてもページ長の半分ずつを順次読み込んだ後に、ページ0,1及び2間でパリティビット数の組み替えを行って、図9右側に示したページ0,1及び2のECCの訂正単位を得、これらの訂正単位のデータをSRAMバッファ101にも書き込み、図2で示したようにECC回路102内で訂正単位毎にデータの誤り(エラー)を検出して、SRAMバッファ101に保持しているデータの同じエラー箇所を訂正することになる。   At the time of reading, the NAND flash memory 200 sequentially reads the page 0 in the same manner as in FIG. 9 by half of the page length, and then sequentially reads the page 1 by half of the page length. After half of the page length is read sequentially, the number of parity bits is rearranged between pages 0, 1 and 2 to obtain ECC correction units for pages 0, 1 and 2 shown on the right side of FIG. The correction unit data is also written to the SRAM buffer 101, and as shown in FIG. 2, an error in the data is detected for each correction unit within the ECC circuit 102, and the data held in the SRAM buffer 101 is detected. The same error part will be corrected.

第2の実施形態によれば、不揮発性メモリであるNAND型フラッシュメモリの複数のページの内の3ページからなる記憶領域のパリティ領域をビットエラー発生率に応じて割り振ることにより、ビットエラー発生率が高いページに対してより多くのビット数をパリティに割り当て、ビットエラー発生率が低いページに対してより少なく割り当て、限られた所定のパリティビット数をより有効に利用することが可能となる。   According to the second embodiment, a bit error rate is obtained by allocating a parity area of a storage area composed of three pages among a plurality of pages of a NAND flash memory which is a nonvolatile memory according to the bit error rate. It is possible to allocate a larger number of bits to parity for a page with a high bit rate and to allocate a smaller number to a page with a low bit error occurrence rate, and to more effectively use a limited number of parity bits.

尚、以上述べた実施形態では、図6や図9に示されるように連続する複数のページ(例えば2ページ、3ページ)からなる記憶領域のパリティ領域をビットエラー発生率に応じて割り振るものであったが、本発明はこれに限定されることなく、連続することなく飛び飛びに存在する複数のページからなる記憶領域のパリティ領域をビットエラー発生率に応じて割り振る場合に対しても応用することができる。   In the embodiment described above, as shown in FIGS. 6 and 9, the parity area of the storage area consisting of a plurality of continuous pages (for example, 2 pages and 3 pages) is allocated according to the bit error occurrence rate. However, the present invention is not limited to this, and can be applied to the case of allocating the parity area of the storage area composed of a plurality of pages that exist without being consecutively arranged according to the bit error occurrence rate. Can do.

本発明の第1の実施形態の半導体記憶装置のブロック図。1 is a block diagram of a semiconductor memory device according to a first embodiment of the present invention. 図1における読み出し時の動作を説明する図。FIG. 2 is a diagram illustrating an operation at the time of reading in FIG. 1. NAND型フラッシュメモリにおける、消去単位であるブロック領域と、訂正単位であるページ領域を説明する図。The figure explaining the block area | region which is an erasing unit and the page area | region which is a correction unit in NAND flash memory. 訂正単位の構成を示す図。The figure which shows the structure of a correction unit. データに付加するパリティのサイズによって訂正可能なデータのビット数を示す図。The figure which shows the bit number of the data which can be corrected with the size of the parity added to data. 第1の実施形態の半導体記憶装置における不揮発性メモリの記憶領域におけるページ間でパリティに使用するビット数を割り振った状態の一例を説明する図。FIG. 3 is a diagram for explaining an example of a state in which the number of bits used for parity is allocated between pages in the storage area of the nonvolatile memory in the semiconductor storage device of the first embodiment. 書き込み時に図6の2つの連続する奇偶ページ間でパリティに使用するビット数を割り振る場合のECC回路での動作を説明する図。FIG. 7 is a diagram for explaining the operation in the ECC circuit when the number of bits used for parity is allocated between two consecutive odd / even pages in FIG. 6 during writing. 第1の実施形態におけるNAND型フラッシュメモリの記憶領域において、2つの連続する奇偶ページ間で各ページの一定ページ長を複数分割して訂正単位とした場合の3つの例を示す図。FIG. 6 is a diagram showing three examples in the case where a fixed page length of each page is divided into a plurality of correction units between two consecutive odd / even pages in the storage area of the NAND flash memory according to the first embodiment. 本発明の第2の実施形態の半導体記憶装置における不揮発性メモリの記憶領域における3ページ間でパリティに使用するビット数を割り振った状態の一例を説明する図。The figure explaining an example of the state which allocated the bit number used for a parity between three pages in the storage area of the non-volatile memory in the semiconductor memory device of the 2nd Embodiment of this invention. 書き込み時に図9の3つの連続するページ間でパリティに使用するビット数を割り振る場合のECC回路での動作を説明する図。FIG. 10 is a diagram for explaining the operation in the ECC circuit when the number of bits used for parity is allocated between three consecutive pages in FIG. 9 during writing. 本発明の関連技術の半導体記憶装置におけるNAND型フラッシュメモリの記憶領域にページ単位に記憶されたデータの構成を示す図。The figure which shows the structure of the data memorize | stored per page in the storage area of the NAND type flash memory in the semiconductor memory device of the related technology of this invention.

符号の説明Explanation of symbols

100…メモリコントローラ
101…SRAMバッファ
102…ECC回路(誤り訂正回路)
200…NAND型フラッシュメモリ(不揮発性メモリ)
300…半導体記憶装置
400…ホスト機器
DESCRIPTION OF SYMBOLS 100 ... Memory controller 101 ... SRAM buffer 102 ... ECC circuit (error correction circuit)
200 ... NAND flash memory (nonvolatile memory)
300 ... Semiconductor memory device 400 ... Host equipment

Claims (4)

複数のページで構成され、データとそのパリティが記憶される不揮発性メモリと、
前記不揮発性メモリへのデータの書込み時は、ページデータにパリティを付加して前記不揮発性メモリに記憶させ、データの読出し時は、前記不揮発性メモリからページデータとそのパリティを読み出し、誤り箇所を検出し、データの誤り訂正を行う機能を備えたメモリコントローラと、を具備し、
前記メモリコントローラは、前記不揮発性メモリに記憶可能な複数のページのうちの所定数のページで使用可能な全てのパリティのビット数を、各ページのエラー発生率の大きさに応じて各ページ毎に割り振ることを特徴とする半導体記憶装置。
A non-volatile memory composed of a plurality of pages and storing data and its parity;
When writing data to the non-volatile memory, parity is added to page data and stored in the non-volatile memory, and when reading data, page data and its parity are read from the non-volatile memory, and the error location is A memory controller having a function of detecting and correcting data errors;
The memory controller sets the number of bits of all parity that can be used in a predetermined number of pages out of a plurality of pages that can be stored in the nonvolatile memory for each page according to the error occurrence rate of each page. A semiconductor memory device characterized by being allocated to
前記ページデータは複数の訂正単位のデータで構成され、
前記メモリコントローラは、前記不揮発性メモリに記憶する前記所定数のページの各ページを構成する複数の訂正単位ごとに付加される各パリティを、各ページのエラー発生率に応じて各ページの訂正単位に割り振ることを特徴とする請求項1に記載の半導体記憶装置。
The page data is composed of a plurality of correction unit data,
The memory controller is configured to calculate each parity added to each of a plurality of correction units constituting each page of the predetermined number of pages stored in the nonvolatile memory according to an error occurrence rate of each page. The semiconductor memory device according to claim 1, wherein the semiconductor memory device is assigned to each other.
メモリ領域が、同一長のページデータそれぞれを記憶可能な複数のデータ領域と、この複数のデータ領域それぞれに連接して設けられる、互いに同一長の複数のパリティ領域とを備えて構成される不揮発性メモリであって、
データ記憶可能な前記複数のデータ領域のうちの所定数のデータ領域に対応して前記複数のパリティ領域のうちの所定数のパリティ領域で使用可能な全てのパリティ領域を、各ページのエラー発生率の大きさに応じて各ページ毎に割り振ることを特徴とする不揮発性メモリ。
A non-volatile configuration in which a memory area includes a plurality of data areas that can store page data of the same length and a plurality of parity areas that are connected to each of the plurality of data areas and have the same length. Memory,
Corresponding to a predetermined number of data areas of the plurality of data areas that can store data, all parity areas that can be used in the predetermined number of parity areas of the plurality of parity areas are set to error occurrence rates of each page. A non-volatile memory characterized by being allocated to each page according to the size of the memory.
前記ページデータは複数の訂正単位のデータで構成され、
前記複数のデータ領域のうちの所定数のデータ領域に対応した各ページを構成する複数の訂正単位ごとに付加される各パリティ領域が、各ページのエラー発生率に応じて各ページの訂正単位に割り振られることを特徴とする請求項3に記載の不揮発性メモリ。
The page data is composed of a plurality of correction unit data,
Each parity area added to each of a plurality of correction units constituting each page corresponding to a predetermined number of data areas among the plurality of data areas is used as a correction unit for each page according to the error occurrence rate of each page. The nonvolatile memory according to claim 3, wherein the nonvolatile memory is allocated.
JP2008137059A 2008-05-26 2008-05-26 Semiconductor storage device and nonvolatile memory Pending JP2009282923A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2008137059A JP2009282923A (en) 2008-05-26 2008-05-26 Semiconductor storage device and nonvolatile memory

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2008137059A JP2009282923A (en) 2008-05-26 2008-05-26 Semiconductor storage device and nonvolatile memory

Publications (1)

Publication Number Publication Date
JP2009282923A true JP2009282923A (en) 2009-12-03

Family

ID=41453279

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2008137059A Pending JP2009282923A (en) 2008-05-26 2008-05-26 Semiconductor storage device and nonvolatile memory

Country Status (1)

Country Link
JP (1) JP2009282923A (en)

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2012094132A (en) * 2010-10-01 2012-05-17 Siglead Inc Non-volatile semiconductor memory device and data error correction method
WO2012098897A1 (en) 2011-01-20 2012-07-26 パナソニック株式会社 Nonvolatile latch circuit and nonvolatile flip-flop circuit
JP2012146129A (en) * 2011-01-12 2012-08-02 Mega Chips Corp Memory access control apparatus
CN103827833A (en) * 2011-07-22 2014-05-28 桑迪士克科技股份有限公司 Systems and methods of storing data
GB2511202A (en) * 2013-02-11 2014-08-27 Advanced Risc Mach Ltd An apparatus and method for controlling access to a memory device
JP2014522075A (en) * 2011-08-12 2014-08-28 マイクロン テクノロジー, インク. Memory device and configuration method for memory device
KR20140133593A (en) * 2012-03-06 2014-11-19 마이크론 테크놀로지, 인크. Apparatuses and methods including error correction code organization
US8898545B2 (en) 2012-05-18 2014-11-25 Hitachi, Ltd. Semiconductor storage device and control method of nonvolatile memory
US12056007B2 (en) 2021-08-17 2024-08-06 Samsung Electronics Co., Ltd. Storage devices and methods of operating storage devices

Cited By (24)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2012094132A (en) * 2010-10-01 2012-05-17 Siglead Inc Non-volatile semiconductor memory device and data error correction method
JP2012146129A (en) * 2011-01-12 2012-08-02 Mega Chips Corp Memory access control apparatus
WO2012098897A1 (en) 2011-01-20 2012-07-26 パナソニック株式会社 Nonvolatile latch circuit and nonvolatile flip-flop circuit
JP2014523595A (en) * 2011-07-22 2014-09-11 サンディスク テクノロジィース インコーポレイテッド System and method for accumulating data
CN103827833A (en) * 2011-07-22 2014-05-28 桑迪士克科技股份有限公司 Systems and methods of storing data
CN103827833B (en) * 2011-07-22 2017-08-08 桑迪士克科技有限责任公司 The system and method for data storage
US10891187B2 (en) 2011-08-12 2021-01-12 Micron Technology, Inc. Memory devices having differently configured blocks of memory cells
US9594676B2 (en) 2011-08-12 2017-03-14 Micron Technology, Inc. Configuring and reconfiguring blocks of memory cells to store user data and ECC data
US10891188B2 (en) 2011-08-12 2021-01-12 Micron Technology, Inc. Memory devices having differently configured blocks of memory cells
US10409673B2 (en) 2011-08-12 2019-09-10 Micron Technology, Inc. Memory devices having differently configured blocks of memory cells
JP2014522075A (en) * 2011-08-12 2014-08-28 マイクロン テクノロジー, インク. Memory device and configuration method for memory device
KR101574033B1 (en) 2011-08-12 2015-12-02 마이크론 테크놀로지, 인크. Memory devices and configuration methods for a memory device
US9983928B2 (en) 2012-03-06 2018-05-29 Micron Technology, Inc. Apparatuses and methods including error correction code organization
JP2016219092A (en) * 2012-03-06 2016-12-22 マイクロン テクノロジー, インク. Device and method for formation of error correction code
JP2015509640A (en) * 2012-03-06 2015-03-30 マイクロン テクノロジー, インク. Apparatus and method including organization of error correction codes
KR20140133593A (en) * 2012-03-06 2014-11-19 마이크론 테크놀로지, 인크. Apparatuses and methods including error correction code organization
KR102230584B1 (en) * 2012-03-06 2021-03-23 마이크론 테크놀로지, 인크. Apparatuses and methods including error correction code organization
KR20210033062A (en) * 2012-03-06 2021-03-25 마이크론 테크놀로지, 인크. Apparatuses and methods including error correction code organization
KR102403171B1 (en) * 2012-03-06 2022-05-30 마이크론 테크놀로지, 인크. Apparatuses and methods including error correction code organization
US8898545B2 (en) 2012-05-18 2014-11-25 Hitachi, Ltd. Semiconductor storage device and control method of nonvolatile memory
US8918700B2 (en) 2013-02-11 2014-12-23 Arm Limited Apparatus and method for controlling access to a memory device
GB2511202A (en) * 2013-02-11 2014-08-27 Advanced Risc Mach Ltd An apparatus and method for controlling access to a memory device
GB2511202B (en) * 2013-02-11 2021-03-24 Advanced Risc Mach Ltd An apparatus and method for controlling access to a memory device
US12056007B2 (en) 2021-08-17 2024-08-06 Samsung Electronics Co., Ltd. Storage devices and methods of operating storage devices

Similar Documents

Publication Publication Date Title
JP2009282923A (en) Semiconductor storage device and nonvolatile memory
KR100546348B1 (en) Flash memory system and data writing method there-of
US8555143B2 (en) Flash memory controller and the method thereof
JP4734033B2 (en) Storage device
US20080052446A1 (en) Logical super block mapping for NAND flash memory
KR101371516B1 (en) The operation method of flash memory device and memory system including the same
US20150019933A1 (en) Memory controller, storage device, and memory control method
JP4171749B2 (en) Memory controller and flash memory system
JPWO2007000862A1 (en) MEMORY CONTROLLER, NONVOLATILE MEMORY DEVICE, NONVOLATILE MEMORY SYSTEM, AND DATA WRITE METHOD
JP2008108297A (en) Nonvolatile semiconductor memory device
US20160283319A1 (en) Data storage device and encoding method thereof
US7310262B2 (en) Ferroelectric memory capable of continuously fast transferring data words in a pipeline
JP5592478B2 (en) Nonvolatile storage device and memory controller
JP2007305105A (en) Memory controller
JP2008123241A (en) Memory controller, flash memory system equipped with memory controller, and method for controlling flash memory
JP4641338B2 (en) Nonvolatile semiconductor memory device and system
JP4710918B2 (en) MEMORY CONTROLLER, FLASH MEMORY SYSTEM HAVING MEMORY CONTROLLER, AND FLASH MEMORY CONTROL METHOD
JP4582078B2 (en) Memory controller, flash memory system, and flash memory control method
JP4235646B2 (en) Memory controller and flash memory system
JP4636046B2 (en) MEMORY CONTROLLER, FLASH MEMORY SYSTEM HAVING MEMORY CONTROLLER, AND FLASH MEMORY CONTROL METHOD
JP4697146B2 (en) MEMORY CONTROLLER, FLASH MEMORY SYSTEM HAVING MEMORY CONTROLLER, AND FLASH MEMORY CONTROL METHOD
JP2005292925A (en) Memory controller, flash memory system, and control method for flash memory
JP6260395B2 (en) Memory controller, memory system, and memory control method
JP2011060415A (en) Nonvolatile semiconductor storage device and data storage system
JP2014134843A (en) Memory system